/* base.css: design tokens, reset, typography */
:root{--navy:#0A1330;--deep:#060C20;--panel:#111C42;--line:#1D2A58;--gold:#D6A84A;--gold-hi:#E6BC65;--ivory:#F2EEE4;--mute:#A9B5D0;--radius:10px;--page:1200px;--gutter:max(5vw,calc((100vw - var(--page))/2))}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:5rem}
body{margin:0;background:var(--deep);color:var(--ivory);font:400 1.0625rem/1.65 Manrope,system-ui,sans-serif}
h1,h2,h3{font-family:Fraunces,Georgia,serif;line-height:1.15;margin:0 0 .6em}
h1{font-size:clamp(2.2rem,5vw,3.8rem)}
h2{font-size:clamp(1.6rem,3.2vw,2.4rem)}
h3,.h3{font-size:1.25rem;color:var(--gold)}
.h3{font-family:Fraunces,Georgia,serif;line-height:1.15;margin:0 0 .5em}
p{max-width:62ch;margin:0 0 1em}
a{color:var(--gold)}
img{max-width:100%;height:auto;display:block}
address{font-style:normal}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--deep);padding:.6rem 1rem;z-index:20}
.skip:focus{left:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
