/* Homepage polish layer.
   Kept separate from the shared site styles so legal/support pages remain stable. */

.feature-layout > *,
.hero-grid > * {
  min-width: 0;
}

.feature-copy h2 {
  text-wrap: balance;
}

@media (min-width: 981px) {
  .feature-section .feature-layout {
    gap: 72px;
  }

  .feature-section .feature-copy h2 {
    font-size: clamp(2.8rem, 4.15vw, 4.35rem);
    line-height: 1.01;
  }

  .discover-section {
    padding-top: 96px;
    padding-bottom: 96px;
  }

  .discover-section .feature-layout {
    grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
    gap: 68px;
  }

  .discover-section .feature-copy h2 {
    font-size: clamp(2.9rem, 3.8vw, 3.7rem);
    max-width: 10.5em;
    letter-spacing: -.04em;
  }

  .discover-section .feature-copy p:not(.eyebrow) {
    max-width: 520px;
  }

  .discover-section .feature-visual {
    min-height: 420px;
  }

  .discover-section .discover-preview {
    width: 100%;
    max-width: 560px;
    justify-self: end;
    gap: 14px;
  }

  .discover-section .discover-item {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 16px;
    padding: 18px 20px;
    border-radius: 20px;
  }

  .discover-section .discover-icon {
    width: 54px;
    height: 54px;
    border-radius: 17px;
  }

  .discover-section .discover-item strong {
    font-size: 1.02rem;
    line-height: 1.25;
  }

  .discover-section .discover-item p {
    line-height: 1.45;
  }
}

@media (min-width: 981px) and (max-width: 1180px) {
  .feature-section .feature-layout {
    gap: 54px;
  }

  .feature-section .feature-copy h2 {
    font-size: clamp(2.65rem, 4.5vw, 3.55rem);
  }

  .discover-section .feature-layout {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 48px;
  }

  .discover-section .feature-copy h2 {
    font-size: clamp(2.7rem, 4.2vw, 3.3rem);
  }
}

@media (max-width: 980px) {
  .feature-copy h2 {
    max-width: 12ch;
  }

  .discover-section .feature-visual {
    min-height: auto;
  }

  .discover-section .discover-preview {
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
  }
}

@media (max-width: 760px) {
  .feature-copy h2 {
    max-width: none;
    text-wrap: pretty;
  }

  .discover-section .discover-preview {
    gap: 10px;
  }

  .discover-section .discover-item {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    padding: 15px 16px;
    border-radius: 18px;
  }

  .discover-section .discover-icon {
    width: 48px;
    height: 48px;
    border-radius: 15px;
    font-size: 1.15rem;
  }
}
