/* Scoped to the public About and Services pages. */
.site-header { border-bottom: 0; }
.public-hero { display: flex; align-items: center; height: 88svh; min-height: 640px; max-height: 1040px; }
.public-hero::after { background: rgba(4,7,8,.66); }
.public-hero img { object-fit: cover; object-position: 58% center; filter: saturate(.68) contrast(1.08); }
.public-hero.hero-product img { object-position: 62% center; }
.hero-inner { width: 90%; padding: 110px 0 125px; }
.public-hero h1 { max-width: 100%; font-size: 100px; line-height: 1.04; font-weight: 450; }
.hero-copy { margin: 18px 0 24px; max-width: 560px; font-size: 25px; line-height: 1.3; color: var(--white); }
.hero-index { right: 5%; bottom: 68px; left: auto; font-size: 10px; }
.chapter-link { position: absolute; bottom: 0; left: 0; right: 0; height: 56px; padding: 0 5%; display: flex; justify-content: space-between; align-items: center; gap: 20px; background: #101516; color: var(--white); border-block: 1px solid #343b3d; font-size: 12px; }
.chapter-link svg { width: 18px; height: 18px; }
.chapter-link:hover svg { transform: translateY(3px); }
.section-heading h2 { font-size: 52px; font-weight: 450; }
.section-heading p { font-size: 16px; }
.light-band { background: #101516; color: var(--white); }
.section-heading p, .metric p, .service-row p { color: #aeb7b4; }
.metric-strip, .metric, .service-list, .service-row { border-color: #343b3d; }
.metric span, .service-row > span { color: var(--accent); }
.metric h3 { font-size: 23px; font-weight: 450; }
.statement { font-size: 56px; }
.cta-band h2 { font-size: 44px; }
.service-row { grid-template-columns: 70px minmax(0,.85fr) minmax(0,1fr); }
.service-row h2 { font-size: 28px; }
.service-row:hover { padding-left: 0; background: transparent; }
.service-row:hover h2 { color: var(--accent); }
.button-link { flex-shrink: 0; }
@keyframes product-arrive { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 800px) {
  .site-nav { visibility: hidden; margin-left: 0; justify-content: stretch; }
  .site-nav.is-open { visibility: visible; }
  .public-hero { height: 84svh; min-height: 610px; max-height: 850px; }
  .public-hero::after { background: rgba(4,7,8,.72); }
  .hero-inner { padding: 100px 0 130px; }
  .public-hero h1 { font-size: 56px; }
  .hero-copy { font-size: 21px; max-width: 30ch; }
  .public-hero img { object-position: 58% center; }
  .hero-index { bottom: 67px; right: 5%; left: 5%; text-align: right; font-size: 9px; }
  .section-heading h2 { font-size: 36px; }
  .statement { font-size: 34px; }
  .cta-band h2 { font-size: 34px; }
  .service-row { grid-template-columns: 30px minmax(0,1fr); gap: 16px; }
  .service-row h2 { font-size: 24px; }
  .service-row p { grid-column: 2; }
  .section-heading { gap: 24px; }
}
@media (max-width: 360px) {
  .public-hero h1 { font-size: 46px; }
  .hero-copy { font-size: 19px; }
  .portal-link { gap: 5px; }
}
