@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css");


.grid-container {
  container-name: grid-container;
  container-type: inline-size;
  max-width: 600px;
  margin-inline: auto;
}

.section-a {
  background-color: #090f08;
  .wrapper {
    position: relative;
    padding-block: 23cqw 15.333cqw;
    background-image: url(https://english.yanadoocdn.com/upload/yafit/images/web/mybike/bg_section_a.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;

    &::before {
      content: '';
      width: 100%;
      height: 100%;
      background-image: url(https://english.yanadoocdn.com/upload/yafit/images/web/mybike/bg_section_a_dim.webp);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center bottom;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 0;
    }
  }

  .cycle {
    position: absolute;
    z-index: 2;
    left: 0;
    bottom: 0;
    img {
      width: 100%;
    }
  }

  .carousel01 {
    top: 77.167cqw;
  }

  .carousel02 {
    top: 90.5cqw;
  }

  .carousel01,
  .carousel02 {
    position: absolute;
    z-index: 1;

    .swiper-wrapper {
      transition-timing-function: linear;
    }

    .swiper-slide {
      width: auto;
    }

    img {
      display: block;
      width: 149.333cqw;
      height: 9cqw;
    }
  }

  hgroup {
    position: relative;
    z-index: 1;
    text-align: center;
    h3 {
      color: #fff;
      font-size: 9.667cqw;
      font-weight: 700;
      letter-spacing: -0.29cqw;
    }
    h4 {
      color: #fff;
      font-family: 'Pretendard Variable';
      font-size: 8cqw;
      font-weight: 700;
      letter-spacing: -0.16cqw;
      margin-top: 1.333cqw;

      strong {
        background: linear-gradient(90deg, #adff33 0%, #2fff48 100%);
        background-clip: text;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
      }
    }
    p {
      margin-top: 6.667cqw;
      color: #fff;
      font-family: 'Pretendard Variable';
      font-size: 4.333cqw;
      line-height: 153.846%;
      letter-spacing: -0.087cqw;
    }
  }

  button {
    position: relative;
    z-index: 3;
    margin-top: 86.333cqw;
    display: block;
    width: 84.333cqw;
    height: 14cqw;
    margin-inline: auto;
    border-radius: 2cqw;
    background: linear-gradient(90deg, #56ed68 0%, #18d52e 100%);
    font-family: 'Pretendard Variable';
    font-size: 5cqw;
    font-weight: 700;
    letter-spacing: -0.1cqw;
    color: #000;
  }
}

.section-b {
  background-color: #12171b;

  .wrapper {
    padding-block: 24.167cqw 27.667cqw;
  }

  hgroup {
    text-align: center;
    h3 {
      color: #fff;
      font-size: 9cqw;
      font-weight: 700;
      line-height: 133%;
      letter-spacing: -0.36cqw;
    }
    p {
      color: #fff;
      font-size: 5cqw;
      font-weight: 400;
      line-height: 160%;
      letter-spacing: -0.2cqw;
      margin-top: 7.167cqw;
    }
  }

  button {
    display: block;
    width: 84.333cqw;
    height: 14cqw;
    margin-inline: auto;
    font-family: 'Pretendard Variable';
    font-size: 5cqw;
    font-weight: 700;
    letter-spacing: -0.1cqw;
    border-radius: 2cqw;
    background: #18d52e;
    margin-top: 8.5cqw;
    color: #000;
  }

  .carousel {
    margin-top: 11.667cqw;
    .swiper-wrapper{
      transition-timing-function: linear;
    }
    .swiper-slide {
      width: 44.667cqw;
      margin-inline: calc(3.333cqw / 2);
    }
  }

  .dropdown {
    margin-top: 16cqw;
    width: 84.333cqw;
    margin-inline: auto;
    box-sizing: border-box;
    padding: 11.667cqw 6.333cqw;
    border-radius: 3.333cqw;
    background: #2f3b44;

    li:not(:last-child) {
      margin-bottom: 10cqw;
    }

    label {
      color: #e5e5e5;
      font-size: 4.667cqw;
      font-weight: 500;
      letter-spacing: -0.187cqw;
      margin-bottom: 2.5cqw;
      display: block;
    }

    select {
      width: 100%;
      height: 13cqw;
      border-radius: 1.333cqw;
      border: 0.233cqw solid #415565;
      background: #1c2831;
      color: #fff;
      font-size: 4.667cqw;
      font-weight: 400;
      letter-spacing: -0.187cqw;
      padding-inline: 4.333cqw 11.667cqw;
      box-sizing: border-box;
      background-image: url(https://english.yanadoocdn.com/upload/yafit/images/web/mybike/ico_down-arrow.svg);
      background-repeat: no-repeat;
      background-position: 93% 50%;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background-size: 3.333cqw;

      &::-ms-expand {
        display: none;
      }
    }
  }

  .desc {
    margin-top: 8.5cqw;
    color: #626262;
    text-align: center;
    font-size: 3.667cqw;
  }
}

.section-c {
  .wrapper {
    padding-block: 9.5cqw 17.833cqw;
  }
  hgroup {
    img {
      width: 33.333cqw;
      display: block;
      margin-inline: auto;
    }
    h3 {
      margin-top: 6.167cqw;
      text-align: center;
      font-size: 9cqw;
      font-style: normal;
      font-weight: 700;
      line-height: 133%;
      letter-spacing: -0.45cqw;
    }
    p {
      margin-top: 6.333cqw;
      text-align: center;
      font-size: 5cqw;
      font-style: normal;
      font-weight: 400;
      line-height: normal;
      letter-spacing: -0.2cqw;
    }
  }
  .carousel {
    margin-top: 18.667cqw;

    .swiper-slide {
      width: 72.167cqw;
      margin-inline: calc(7.167cqw / 2);
    }
  }
}

.section-d {
  background-color: #e1f5df;
  .wrapper {
    padding-block: 21.667cqw 5.667cqw;
  }

  hgroup {
    text-align: center;
    h3 {
      font-size: 9cqw;
      font-style: normal;
      font-weight: 700;
      line-height: 133%;
      letter-spacing: -0.36cqw;
    }
    p {
      font-size: 5.333cqw;
      font-weight: 400;
      line-height: 133%;
      letter-spacing: -0.213cqw;
      margin-top: 5.833cqw;
    }
  }

  .card {
    width: 84.333cqw;
    margin-inline: auto;
    margin-top: 13.333cqw;
    border-radius: 3.333cqw;
    background-color: #fff;
    padding-bottom: 12.5cqw;
    padding-top: 7cqw;

    video {
      display: block;
      width: 48.333cqw;
      margin-inline: auto;
    }

    .radio-container {
      width: 73cqw;
      margin-inline: auto;
      margin-top: 12.667cqw;
      > div {
        &:not(:last-child) {
          padding-bottom: 7.167cqw;
          margin-bottom: 5.333cqw;
          border-bottom: 0.333cqw solid #e9e9e9;
        }
      }

      p {
        font-size: 4.333cqw;
        font-weight: 700;
        letter-spacing: -0.173cqw;
      }

      ul {
        display: flex;
        margin-top: 3.5cqw;
        gap: 6.667cqw;
      }

      input[type='radio'] {
        width: 0;
        padding: 0;
        margin: 0;
        border: 0;
        position: absolute;
        visibility: hidden;
        &:checked + em {
          background-image: url(https://english.yanadoocdn.com/upload/yafit/images/web/mybike/ico_check-on.svg);
        }
      }

      em {
        display: block;
        width: 4.667cqw;
        height: 4.667cqw;
        background-image: url(https://english.yanadoocdn.com/upload/yafit/images/web/mybike/ico_check-off.svg);
        background-repeat: no-repeat;
        background-size: 4.667cqw 4.667cqw;
        background-position: center;
      }

      label {
        cursor: pointer;
        font-size: 4cqw;
        letter-spacing: -0.16cqw;
        display: flex;
        align-items: center;
        gap: 1.5cqw;
        position: relative;
      }
    }

    button {
      display: block;
      width: 73cqw;
      height: 14cqw;
      margin-inline: auto;
      margin-top: 16.333cqw;
      gap: 1.333cqw;
      border-radius: 2cqw;
      background: #1b1b1b;
      color: #fff;
      text-align: center;
      font-family: 'Pretendard Variable';
      font-size: 5cqw;
      font-style: normal;
      font-weight: 700;
      line-height: normal;
      letter-spacing: -0.1cqw;
    }
  }

  .result-container {
    margin-top: 14.167cqw;
    width: 73cqw;
    margin-inline: auto;
    display: none;

    .result-card {
      border-radius: 2cqw;
      background: #f7f7fc;
      height: 78.333cqw;
      padding: 7.333cqw;
      box-sizing: border-box;
      padding-top: 28.667cqw;
      background-image: url(https://english.yanadoocdn.com/upload/yafit/images/web/mybike/img_section_d_01.webp);
      background-repeat: no-repeat;
      background-size: 30.5cqw;
      background-position: top right;

      span {
        display: flex;
        width: 29.333cqw;
        height: 7.333cqw;
        justify-content: center;
        align-items: center;
        gap: 1.333cqw;
        border-radius: 16.667cqw;
        background: #e0e0e0;
        text-align: center;
        font-size: 4cqw;
        font-weight: 500;
        letter-spacing: -0.16cqw;
      }

      .result-mileage {
        margin-top: 1cqw;
        font-size: 9.333cqw;
        font-weight: 700;
        letter-spacing: -0.373cqw;
        margin-top: 3.333cqw;
        display: block;
      }

      p {
        margin-top: 2.667cqw;
        color: #969dac;
        font-size: 3.667cqw;
        font-weight: 400;
        letter-spacing: -0.147cqw;
        line-height: 1.6;
      }
    }

    button {
      margin-top: 6cqw;
      background: #24c14c;
      color: #000;
    }

    .desc {
      margin-top: 9.167cqw;
      color: #ababab;
      font-size: 3.667cqw;
      letter-spacing: -0.11cqw;
      text-align: center;
      line-height: 1.4;
    }
  }
}

.section-e {
  background-color: #12171b;
  .img-box {
    position: relative;
    img {
      display: block;
      width: 100%;
      height: 100%;
    }
    .money {
      position: absolute;
      width: 35.5cqw;
      top: -9.333cqw;
      left: 6.833cqw;
    }
  }
}

.section-f {
  .wrapper {
    padding-block: 17.667cqw 16.667cqw;
    hgroup {
      text-align: center;
      img {
        width: 20cqw;
      }
      h3 {
        font-size: 9cqw;
        font-weight: 700;
        line-height: 133%;
        letter-spacing: -0.45cqw;
        margin-top: 8.167cqw;
      }
      p {
        margin-top: 7.167cqw;
        font-size: 5.333cqw;
        line-height: 143%;
        letter-spacing: -0.213cqw;
      }
    }
    .carousel {
      margin-top: 13.5cqw;

      .swiper-slide {
        padding-inline: 10.833cqw;
        width: 100%;
        display: block;
      }

      img {
        display: block;
      }

      p {
        text-align: center;
        margin-top: 5cqw;
        font-size: 4.167cqw;
        letter-spacing: -0.167cqw;
        line-height: 1.5;
      }

      .swiper-pagination {
        position: static;
        margin-top: 9.667cqw;
        display: flex;
        justify-content: center;
        gap: 4.333cqw;
        >span{
          width: 3.333cqw;
          height: 3.333cqw;
          border-radius: 50%;
          background-color: #D9D9D9;
          opacity: 1;
          margin: 0;

          &.swiper-pagination-bullet-active {
            background-color: #63D835;
          }
        }
      }
    }

    .video-box {
      position: relative;
      video{
        position: absolute;
        width: 75.5cqw;
        height: 55.6cqw;
        left: 50%;
        top: 1.5cqw;
        transform: translateX(-50%);
        border-radius: 2cqw;
        object-fit: cover;
      }
    }
  }
}

.section-g {
  background-color: #161c32;
  .wrapper {
    position: relative;
    img {
      width: 100%;
    }

    button {
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      bottom: 15.5cqw;
      display: block;
      width: 84.333cqw;
      height: 14cqw;
      border-radius: 2cqw;
      background: linear-gradient(90deg, #56ed68 0%, #18d52e 100%);
      font-family: 'Pretendard Variable';
      font-size: 5cqw;
      font-weight: 700;
      letter-spacing: -0.1cqw;
      color: #000;
    }
  }
}

#mybike-popup {
  .pop-content {
    container-type: inline-size;
  }
  .pop-top {
    height: 36.364cqw;
  }
}