/* Shared section accent and heading scale. */
.sustainability-kicker,
.reference-heading > span,
.about-block > p,
.about-statement > p,
.product-capabilities-header span,
.faq-section .section-heading > span {
  color: var(--yellow) !important;
}

.reference-heading h2 {
  font-size: clamp(42px, 4vw, 64px) !important;
}

/* Keep the green sustainability words continuously visible while rotating. */
.sustainability-words span {
  animation-timing-function: linear;
}

@keyframes sustainability-word {
  0%, 13.333% {
    opacity: 1;
    transform: translate3d(0, 0, 0) rotateX(0);
  }
  16.667%, 96.666% {
    opacity: 0;
    transform: translate3d(0, -.55em, -45px) rotateX(85deg);
  }
  96.667% {
    opacity: 0;
    transform: translate3d(0, .55em, -45px) rotateX(-85deg);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) rotateX(0);
  }
}

@media (max-width: 1024px) {
  .reference-heading h2 {
    font-size: clamp(38px, 6.5vw, 56px) !important;
  }
}

@media (max-width: 600px) {
  .reference-heading h2 {
    font-size: clamp(34px, 9vw, 44px) !important;
  }
}

/* Keep the final hero product at the same visual scale as the other items. */
.home-page .hero-card:last-child img {
  scale: 1;
}

/* Keep long product copy balanced instead of leaving a narrow empty column. */
@media (min-width: 1025px) {
  .product-detail .detail-copy {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-content: start;
  }

  .product-detail .detail-copy > h2 {
    grid-column: 1 / -1;
    position: static !important;
  }

  .product-detail .detail-copy > article {
    min-width: 0;
    border-top: 1px solid var(--line) !important;
    padding-top: clamp(22px, 2.5vw, 34px) !important;
  }

  .product-detail .detail-copy p {
    max-width: none !important;
  }
}
