* {
  box-sizing: border-box;
}

body {
  margin: 0;
}

.navbar-wrapper {
  background: #fff;
}

.navbar {
  max-width: 62.5vw;
  margin: auto;
  width: 100%;
  padding: 1.25vw 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo-container {
  display: flex;
  align-items: center;
}

.logo-container div + div {
  margin-left: 0.781vw;
}

.logo {
  background: url(/images/logo.png) no-repeat;
  background-size: contain;
  width: 2.448vw;
  height: 2.5vw;
}

.brand {
  font-size: 1.5vw;
  font-weight: bold;
  color: #323232;
  display: flex;
  align-items: center;
  height: 1.406vw;
}

.navbar nav ul {
  display: flex;
  align-items: center;
  list-style-type: none;
  margin: 0;
}

.navbar nav ul li {
  display: block;
}

.navbar nav ul li + li {
  margin-left: 2vw;
}

.navbar nav ul li a {
  font-size: 0.938vw;
  text-decoration: none;
  color: #333;
  padding: 0.75vw 1.5vw;
}

.navbar nav ul li a.active {
  color: #0762cb;
  border-bottom: 0.208vw solid #0762cb;
}

main {
  background: url(/images/banner.webp) no-repeat;
  background-size: cover;
  height: 39.063vw;
}

.section1-wrapper {
  background: #f5f5f5;
}

.section1,
.section2 {
  margin: auto;
  padding-top: 4.896vw;
  padding-bottom: 5.99vw;
  max-width: 62.5vw;
  width: 100%;
}

.section2 {
  padding-bottom: 0;
}

.title {
  font-size: 1.875vw;
  color: #111;
  text-align: center;
  font-weight: bold;
  margin-bottom: 3.75vw;
}

.options-container {
  display: flex;
  justify-content: center;
}

.option-item {
  transition: all 0.2s ease-in-out;
  width: 12.394vw;
  padding: 4.271vw 2.144vw;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  text-align: center;
  background: #fff;
  height: 18.75vw;
  cursor: pointer;
}

.option-item + .option-item {
  margin-left: 0.885vw;
}

.option-item:hover {
  background: #4871ff;
  color: #fff;
  width: 22.809vw;
}

.option-item img {
  width: 2.604vw;
  height: 2.604vw;
  object-fit: contain;
}

.option-item:hover img {
  transition: all 0.2s ease-in-out;
}

.option-item:hover img {
  filter: brightness(10);
}

.option-item .option-title {
  margin-top: 2.24vw;
  margin-bottom: 1.146vw;
  font-weight: bold;
  font-size: 1.042vw;
}

.option-item .option-description {
  font-size: 0.938vw;
}

.option-item:hover .option-description {
  color: #d7e5ff;
}

.adv-tabs {
  display: flex;
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 3.021vw;
}

.adv-tab {
  display: flex;
  align-items: center;
  flex: 1;
  cursor: pointer;
  position: relative;
}

.adv-tab:hover::after {
  content: '';
  position: absolute;
  width: 11.458vw;
  border-bottom: 0.208vw solid #4871ff;
  bottom: -3vw;
}

.adv-tab img {
  width: 2.552vw;
  height: 2.552vw;
  object-fit: contain;
  margin-right: 0.677vw;
}

.adv-tab .tab-title {
  font-size: 1.042vw;
  font-weight: bold;
  color: #111;
  margin-bottom: 0.1vw;
}

.adv-tab .tab-subtitle {
  font-size: 1.042vw;
  color: #555555;
}

.adv-container {
  /* margin-top: 4.375vw;
  margin-bottom: 6.927vw; */
  display: flex;
  transition: opacity 0.3s ease-in-out;
  overflow: hidden;
}

.adv-container .slogan {
  color: #6c422e;
  font-size: 1.042vw;
  display: flex;
  justify-content: center;
  padding: 0.781vw 0;
  background: linear-gradient(to right, #fff2d0, #e5be89);
  background: -webkit-linear-gradient(to right, #fff2d0, #e5be89);
}

.adv-container .banner-container {
  width: 31.25vw;
}

.adv-container .banner {
  width: 100%;
  height: 14.635vw;
  object-fit: cover;
}

.adv-container .slogan img {
  width: 1.563vw;
  height: 1.563vw;
  margin-right: 1.25vw;
}

.adv-container .content-container {
  background: url(/images/adv-bg.png) no-repeat;
  background-size: cover;
  width: 31.25vw;
  height: 17.708vw;
}

.adv-container .content-container .adv-content {
  font-size: 1.25vw;
  color: #fff;
  width: 24.063vw;
  margin-left: 2.344vw;
  margin-top: 7.344vw;
}

.adv-container {
  opacity: 0;
}

footer {
  background: #2c445c;
  height: 10.415vw;
  text-align: center;
  font-size: 0.833vw;
  line-height: 1.502vw;
  display: grid;
  place-items: center;
  color: #fff;
}

.about-page .section2 {
  padding-top: 6.354vw;
  padding-bottom: 6.667vw;
}

.about-page .about-container {
  display: flex;
}

.about-page .about-container .about-content-container {
  flex: 1;
  margin-right: 3.854vw;
  position: relative;
}

.about-page .about-container .about-title {
  color: #4871ff;
  font-weight: bold;
  font-size: 1.458vw;
  margin-bottom: 2.396vw;
}

.about-page .about-container .about-description {
  color: #333333;
  font-size: 0.938vw;
  line-height: 1.875vw;
}

.about-page .about-container .dummy {
  width: 100%;
  height: 4.167vw;
  background: linear-gradient(to right, #4265ff, #77b2ff);
  background: -webkit-linear-gradient(to right, #4265ff, #77b2ff);
  position: absolute;
  bottom: 0;
  width: 62.5vw;
}

.about-page .about-container .right-img {
  width: 21.875vw;
  height: 21.875vw;
  object-fit: cover;
  z-index: 1;
  position: relative;
}

.about-page .section3 {
  background: url(/images/about-section3.png) no-repeat;
  background-size: cover;
  height: 38.542vw;
}

.about-page .section3 .flex-wrapper {
  display: flex;
  padding-top: 7.76vw;
  width: 92.708vw;
  margin: auto;
}

.about-page .section3 .flex-item {
  position: relative; /* Ensure the container is positioned */
  width: 17.708vw;
  background: #fff;
  padding: 4.167vw 0.94vw;
  padding-bottom: 3.125vw;
}

.about-page .section3 .flex-item::after {
  content: ''; /* Add a pseudo-element to act as the overlay */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, #77b2ff, #4265ff);
  transition: opacity 0.25s ease-in-out; /* Transition the opacity */
  opacity: 0; /* Initially make it transparent */
}

.about-page .section3 .flex-item:hover::after {
  opacity: 1; /* On hover, make the overlay visible */
}

.about-page .section3 .flex-item + .flex-item {
  margin-left: 1.042vw;
}

.about-page .section3 .item-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

.about-page .section3 .item-title {
  color: #4871ff;
  font-size: 1.25vw;
  font-weight: bold;
}

.about-page .section3 .flex-item:hover .item-title {
  color: #fff;
}

.about-page .section3 .item-description {
  color: #555555;
  font-size: 0.833vw;
  margin-top: 2.083vw;
  margin-bottom: 2.708vw;
  text-align: center;
}

.about-page .section3 .flex-item:hover .item-description {
  color: #fff;
}

.about-page .section3 .item-icon {
  width: 6.852vw;
  height: 6.852vw;
  background: linear-gradient(to right, #4c73eb, #6897ff);
  background: -webkit-linear-gradient(to right, #4c73eb, #6897ff);
  border-radius: 50%;
  display: grid;
  place-items: center;
}

.about-page .section3 .flex-item:hover .item-icon {
  background: linear-gradient(to bottom, #fcfcff, #bad2ff);
  background: -webkit-linear-gradient(to bottom, #fcfcff, #bad2ff);
}

.about-page .section3 .item-icon .icon {
  width: 3.333vw;
  height: 3.333vw;
}

.about-page .section3 .item-icon .icon.one {
  background: url(/images/abouticon1.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .flex-item:hover .item-icon .icon.one {
  background: url(/images/abouticon1hover.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .item-icon .icon.two {
  background: url(/images/abouticon2.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .flex-item:hover .item-icon .icon.two {
  background: url(/images/abouticon2hover.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .item-icon .icon.three {
  background: url(/images/abouticon3.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .flex-item:hover .item-icon .icon.three {
  background: url(/images/abouticon3hover.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .item-icon .icon.four {
  background: url(/images/abouticon4.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .flex-item:hover .item-icon .icon.four {
  background: url(/images/abouticon4hover.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .item-icon .icon.five {
  background: url(/images/abouticon5.png) no-repeat;
  background-size: contain;
}

.about-page .section3 .flex-item:hover .item-icon .icon.five {
  background: url(/images/abouticon5hover.png) no-repeat;
  background-size: contain;
}

.rules-page .rules-container {
  margin: 6.302vw auto;
}

.rules-page .rules-container img {
  width: 62.604vw;
  height: 70.833vw;
  object-fit: contain;
  display: block;
  margin: auto;
}
