/* Shared spacing for page gutters, sections, and boxed content. */
:root{--section-space:96px;--card-padding:36px 32px}
@media(max-width:960px){
  :root{--section-space:72px;--card-padding:28px 24px}
}
@media(max-width:600px){
  :root{--section-space:56px;--card-padding:28px 24px}
  body .wrap{padding-left:20px;padding-right:20px}
  body .person,body .team-card,body .adv-card,body .guard-cell,
  body .frame-cell,body .rd-card,body .scope-box,body .ba-chart,
  body .eq-note,body .su-note,body .gl-note,body .ask-band{padding:var(--card-padding)}
  body .hero-meta{flex-wrap:wrap;gap:24px}
  body .stats-grid,body .prin-grid,body .client-stats,body .guard-grid{grid-template-columns:1fr}
  body .stat,body .prin,body .client-stats>div,body .guard-cell{min-width:0}
  body .stat:nth-child(n),body .prin:nth-child(n),body .client-stats>div:nth-child(n),body .guard-cell:nth-child(n){border-left:none}
  body .stat:nth-child(n+2),body .prin:nth-child(n+2){border-top:1px solid rgba(250,248,244,.14)}
  body .client-stats>div:nth-child(n+2),body .guard-cell:nth-child(n+2){border-top:1px solid var(--stone)}
  body .client-stats>div{padding:var(--card-padding)}
  body .f-row{grid-template-columns:1fr;padding:16px 24px}
  body .eq-card dl div{flex-direction:column;gap:4px}
  body .hero,body .about-hero,body .cs-hero,body .ft-hero,
  body .ai-hero,body .eq-hero,body .su-hero,body .gl-hero,body .hp-hero{padding:128px 0 56px}
  body .about-cta,body .cs-cta,body .ft-cta,body .ai-cta,
  body .eq-cta,body .su-cta,body .gl-cta,body .hp-cta{padding:56px 0}
}

/* Keep the audit heading clear of the fixed navigation after anchor jumps. */
#audit{scroll-margin-top:96px}
