/* Mobile hero typography. Keep the original three-line heading above the mobile breakpoint. */
.banner-description-mobile {
  display: none;
}
.banner-description-restored {
  display: none;
}

@media (min-width: 992px) {
  /* Clip desktop orbit decorations so they cannot overlap the brand strip. */
  .nsv-landing.mobile-type .banner-section {
    overflow: clip;
  }
}

@media (max-width: 991.98px) {
  .nsv-landing.mobile-type .banner-description-restored {
    display: block;
    margin-top: 12px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: -0.02em;
    color: #68676b;
    word-break: keep-all;
  }
  .nsv-landing.mobile-type .banner-section {
    /* GNB 오프셋은 nsv-mobile-handoff-fix(.nsv-landing padding-top)에서 처리 */
    padding-top: 20px;
    padding-bottom: 36px;
  }
  .nsv-landing.mobile-type.mobile-type-list .banner-section {
    padding-bottom: 16px;
  }
  .nsv-landing.mobile-type.mobile-type-list .banner-cta {
    margin-top: 16px;
  }

  .nsv-landing.mobile-type
    .banner-section
    .section-wrapper
    .banner-content
    .subtitle {
    margin: 0 0 12px;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: -0.35px;
    word-break: keep-all;
  }

  .nsv-landing.mobile-type
    .banner-section
    .section-wrapper
    .banner-content
    .title {
    display: none;
  }

  .nsv-landing.mobile-type .banner-description-original {
    display: none;
  }

  .nsv-landing.mobile-type .banner-description-mobile {
    display: block;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: -0.04em;
    color: #111;
  }

  .nsv-landing.mobile-type
    .banner-section
    .section-wrapper
    .banner-content
    .desc {
    margin: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: -0.02em;
    color: #68676b;
    word-break: keep-all;
  }

  .nsv-landing.mobile-type .banner-content .mobile-features {
    margin-top: 28px;
  }

  .nsv-landing.mobile-type .banner-content .previous-cards .mobile-feature {
    border-radius: 14px;
    background: linear-gradient(
      155deg,
      rgb(255 231 209 / 62%),
      rgb(255 241 222 / 30%)
    );
    box-shadow: none;
  }

  .nsv-landing.mobile-type
    .banner-content
    .previous-cards
    .mobile-feature--diagnosis {
    background: linear-gradient(
      155deg,
      rgb(231 223 251 / 64%),
      rgb(240 234 253 / 30%)
    );
  }

  .nsv-landing.mobile-type
    .banner-content
    .mobile-features:not(.previous-cards) {
    border-radius: 14px;
    background: linear-gradient(
      145deg,
      rgb(255 239 222 / 55%),
      rgb(240 233 250 / 48%)
    );
    box-shadow: none;
  }

  .nsv-landing.mobile-type
    .banner-content
    .mobile-features:not(.previous-cards)
    .mobile-feature
    + .mobile-feature {
    border-top-color: rgb(91 75 66 / 10%);
  }

  .nsv-landing.mobile-type
    .banner-content
    .mobile-features:not(.previous-cards)
    .mobile-feature__top {
    background: rgb(255 223 195 / 45%);
  }

  .nsv-landing.mobile-type
    .banner-content
    .mobile-features:not(.previous-cards)
    .mobile-feature--diagnosis
    .mobile-feature__top {
    background: rgb(226 215 249 / 50%);
  }
}
