/* Use the full desktop hero after the image carousel was removed. */
@media (min-width: 1280px) {
  .hero {
    grid-template-columns: minmax(0, 1fr);
    min-height: min(790px, 100svh);
    padding: clamp(158px, 11vw, 188px) clamp(28px, 5vw, 110px) clamp(76px, 7vw, 112px);
  }
  .hero-copy {
    width: 100%;
    max-width: 1480px;
    display: grid;
    grid-template-columns: minmax(210px, 280px) minmax(0, 1fr);
    column-gap: clamp(38px, 5vw, 90px);
    align-items: start;
  }
  .hero .hero-brand-seal {
    grid-column: 1;
    grid-row: 1 / 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
  }
  .hero .hero-brand-mark-image {
    width: clamp(205px, 16vw, 270px);
    height: clamp(205px, 16vw, 270px);
  }
  .hero-copy > :not(.hero-brand-seal) { grid-column: 2; min-width: 0; }
  .hero-copy > .eyebrow { margin-top: 4px; }
  .hero h1 {
    max-width: 1040px;
    font-size: clamp(3.5rem, 5.1vw, 6.5rem);
    line-height: 1.01;
  }
  .hero-lead { max-width: 780px; }
  .hero-philosophy { max-width: 850px; }
}
/* At medium widths retain a single, comfortably wide reading column. */
@media (min-width: 701px) and (max-width: 1279px) {
  .hero { min-height: auto; padding: 155px 6vw 90px; }
  .hero-copy { max-width: 1000px; }
  .hero .hero-brand-mark-image { width: 170px; height: 170px; }
  .hero h1 { max-width: 950px; font-size: clamp(3.5rem, 6vw, 5.6rem); }
}
@media (max-width: 700px) {
  .hero-copy { width: 100%; max-width: none; }
  .hero h1 { font-size: clamp(2.7rem, 10vw, 4.3rem); line-height: 1.04; }
  .hero .hero-brand-mark-image { width: 132px; height: 132px; }
}
/* Full navigation fits on genuinely wide screens when the link gaps shrink. */
@media (min-width: 1520px) {
  .site-header { grid-template-columns: max-content minmax(0, 1fr) max-content; column-gap: clamp(12px, 1.3vw, 26px); }
  .site-header .primary-nav { display: flex; justify-self: center; min-width: 0; gap: clamp(8px, .75vw, 14px); }
  .site-header .primary-nav a { font-size: clamp(9px, .59vw, 10px); line-height: 1.3; white-space: normal; }
  .site-header .header-cta { white-space: nowrap; padding-inline: 12px; }
  .site-header .menu-toggle, .site-header .mobile-navigation { display: none; }
}
