/* Performance page — mobile first-view refinement. */
@media (min-width: 901px) {
  .page-performance .fv {
    grid-template-columns: 32% 68%;
  }

  .page-performance .fv__text {
    max-width: none;
    padding-right: clamp(32px, 4.2vw, 82px);
    padding-left: clamp(32px, 4.2vw, 82px);
  }

  .page-performance .fv__content {
    width: 100%;
    max-width: 900px;
  }

  .page-performance .fv__desc {
    max-width: none;
    font-size: clamp(11px, .74vw, 14px);
    letter-spacing: .025em;
    white-space: nowrap;
  }
}

@media (max-width: 900px) {
  .page-performance .fv {
    position: relative;
    display: block;
    min-height: 0;
    padding-bottom: 72px;
    overflow: hidden;
    background: linear-gradient(180deg, #eef4f7 0%, #f8f6f0 100%);
  }

  .page-performance .fv::after {
    position: absolute;
    right: -74px;
    bottom: 14px;
    width: 210px;
    aspect-ratio: 1;
    border: 1px solid rgba(57, 119, 157, .18);
    border-radius: 47% 53% 62% 38%;
    content: "";
    transform: rotate(22deg);
    pointer-events: none;
  }

  .page-performance .fv__image {
    position: relative;
    height: clamp(380px, 62svh, 560px);
    overflow: hidden;
    border-radius: 0 0 68px 0;
  }

  .page-performance .fv__image::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(57, 119, 157, .34) 0%, rgba(57, 119, 157, .03) 42%, rgba(57, 119, 157, .18) 100%);
    content: "";
    pointer-events: none;
  }

  .page-performance .fv__image .ph {
    height: 100%;
    min-height: 0;
    background-position: 56% center;
  }

  .page-performance .fv__text {
    position: relative;
    z-index: 3;
    display: block;
    width: calc(100% - 40px);
    max-width: none;
    margin: -62px 20px 0;
    padding: 33px 27px 37px;
    border: 1px solid rgba(57, 119, 157, .14);
    border-radius: 30px 0 30px 0;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 22px 56px rgba(57, 119, 157, .13);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }

  .page-performance .fv__content {
    position: relative;
    max-width: none;
    padding-top: 31px;
  }

  .page-performance .fv__content::before {
    position: absolute;
    top: 0;
    left: 0;
    color: #6b89a1;
    content: "PERFORMANCE / STANDARD";
    font-family: var(--site-en);
    font-size: 9px;
    letter-spacing: .2em;
  }

  .page-performance .fv__content::after {
    display: block;
    width: 58px;
    margin-top: 27px;
    border-top: 1px solid #39779d;
    content: "";
  }

  .page-performance .fv__lead {
    margin: 0;
    color: #6b879c;
    font-size: 11px;
    line-height: 1.7;
    letter-spacing: .1em;
  }

  .page-performance .fv__title {
    margin: 12px 0 0;
    color: #293b48;
    font-size: clamp(31px, 8.7vw, 39px);
    line-height: 1.45;
    letter-spacing: .11em;
  }

  .page-performance .fv__desc {
    max-width: 34em;
    margin: 21px 0 0;
    color: #495d6b;
    font-size: 13px;
    line-height: 2.05;
    letter-spacing: .045em;
  }

  .page-performance .fv__desc br {
    display: none;
  }

  .page-performance .site-header__logo-image--dark {
    opacity: 0 !important;
  }

  .page-performance .site-header__logo-image--light {
    opacity: 1 !important;
    filter: drop-shadow(0 2px 8px rgba(57, 119, 157, .42));
  }
}

@media (max-width: 480px) {
  .page-performance .fv {
    padding-bottom: 58px;
  }

  .page-performance .fv__image {
    height: clamp(360px, 57svh, 480px);
    border-radius: 0 0 48px 0;
  }

  .page-performance .fv__text {
    width: calc(100% - 32px);
    margin: -50px 16px 0;
    padding: 29px 22px 32px;
    border-radius: 24px 0 24px 0;
  }

  .page-performance .fv__content {
    padding-top: 29px;
  }

  .page-performance .fv__desc {
    font-size: 12.5px;
    line-height: 1.95;
  }
}
