:root{--c-bg:#fafaf8;--c-bg-alt:#f2f1ed;--c-surface:#ffffff;--c-surface-hover:#edeee8;--c-border:#d4d8d1;--c-border-light:#e0e3dc;--c-text:#1a211c;--c-text-secondary:#505b52;--c-text-muted:#5b665d;--c-accent:#246b38;--c-accent-hover:#19532b;--c-accent-light:#e8f2e6;--c-accent-glow:rgba(36,107,56,.12);}
@media(prefers-color-scheme:dark){:root{--c-bg:#0c110e;--c-bg-alt:#111a14;--c-surface:#151e18;--c-surface-hover:#1e2b21;--c-border:#3c5041;--c-border-light:#2e4033;--c-text:#f4f3eb;--c-text-secondary:#bac3bb;--c-text-muted:#adb8af;--c-accent:#b6ed98;--c-accent-hover:#caf7b1;--c-accent-light:#223b27;--c-accent-glow:rgba(182,237,152,.12);}}
/* Shared reading preferences across the public site. */
html[data-theme="light"]{--c-bg:#fafaf8;--c-bg-alt:#f2f1ed;--c-surface:#ffffff;--c-surface-hover:#edeee8;--c-border:#d4d8d1;--c-border-light:#e0e3dc;--c-text:#1a211c;--c-text-secondary:#505b52;--c-text-muted:#5b665d;--c-accent:#246b38;--c-accent-hover:#19532b;--c-accent-light:#e8f2e6;--c-accent-glow:rgba(36,107,56,.12);}
html[data-theme="dark"]{--c-bg:#0c110e;--c-bg-alt:#111a14;--c-surface:#151e18;--c-surface-hover:#1e2b21;--c-border:#3c5041;--c-border-light:#2e4033;--c-text:#f4f3eb;--c-text-secondary:#bac3bb;--c-text-muted:#adb8af;--c-accent:#b6ed98;--c-accent-hover:#caf7b1;--c-accent-light:#223b27;--c-accent-glow:rgba(182,237,152,.12);}
html{--bg:var(--c-bg);--alt:var(--c-bg-alt);--surface:var(--c-surface);--border:var(--c-border);--border-light:var(--c-border-light);--text:var(--c-text);--secondary:var(--c-text-secondary);--muted:var(--c-text-muted);--accent:var(--c-accent);--accent-light:var(--c-accent-light);--accent-hover:var(--c-accent-hover);--glow:var(--c-accent-glow);scroll-padding-top:90px}
html[data-theme] .nav,html[data-theme] .pf-nav{background:var(--c-bg)}
html[data-theme] .btn-primary,html[data-theme] .pf-nav-cta,html[data-theme] .btn,html[data-theme] .filter-pill.active{color:var(--c-bg)!important}
:focus-visible{outline:2px solid var(--c-accent);outline-offset:4px}
input,textarea,select{font-size:16px}
.hero-description,.section-description{font-size:16px;line-height:1.75}
.case-summary{font-size:15px;line-height:1.75}
.featured-kicker,.featured-metric span,.filter-status,.portrait-caption span{font-size:13px}
.hero-eyebrow,.section-eyebrow{font-size:13px;letter-spacing:.03em;text-transform:none}
.intro h1{font-size:clamp(3rem,5.4vw,5rem);line-height:1.08;max-width:760px}
html[data-theme] .updated{color:var(--c-text-muted)}
@media(max-width:599px){.intro .hero-portrait{display:block;max-width:230px;justify-self:start}.intro h1{font-size:clamp(2.8rem,11vw,3.8rem)}.hero-description{font-size:16px}.intro-proof span{font-size:13px}.pf-nav-inner{flex-wrap:wrap;height:auto;min-height:70px;gap:8px;padding:10px 0}.pf-nav-brand{font-size:12px}.pf-nav-cta{font-size:12px}.nav-actions{gap:6px}.nav-actions .nav-actions .btn-primary{font-size:11px;padding:10px 8px}.nav-title{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-canvas,.hero-orbits{display:none!important}}
@media(max-width:599px){.pf-nav-brand span{display:none}.pf-nav-inner{flex-wrap:nowrap}.pf-nav-cta{padding:12px 10px}.pf-nav .hero-actions{gap:18px}.pf-nav-brand img{width:38px;height:auto}}
@media(max-width:599px){.nav-brand .nav-name{display:none}.nav-brand{flex-shrink:0}.nav-actions{flex-shrink:0}.nav-logo{width:40px;height:40px;object-fit:contain}}

@media(max-width:599px){.pf-nav-brand span,.nav-brand .nav-name{display:block}.nav-brand .nav-name{font-size:13px}}
