@font-face{font-family:Atkinson;src:url('./fonts/atkinson-next.woff2') format('woff2');font-display:swap;font-weight:200 800}
:root{color-scheme:light;--paper:#f5f7f7;--surface:#fff;--ink:#0f1d2e;--slate:#4c6275;--rule:#c9d6dc;--route:#a8196f;--shoal:#e3ecef;--route-hover:#86105a;--on-route:#fff;--marker-fill:var(--paper);--mark-filter:none;font-family:Atkinson,system-ui,sans-serif;font-size:17px;background:var(--paper);color:var(--ink)}
/* Follow the system even without JavaScript; an explicit choice takes priority. */
@media(prefers-color-scheme:dark){
  :root:where(:not([data-theme="light"])){color-scheme:dark;--paper:#0b1826;--surface:#132334;--ink:#e4edf2;--slate:#a5b9c8;--rule:#334858;--route:#ef86bd;--shoal:#172b3a;--route-hover:#ffadd4;--on-route:#201322}
}
:root:where([data-theme="dark"]){color-scheme:dark;--paper:#0b1826;--surface:#132334;--ink:#e4edf2;--slate:#a5b9c8;--rule:#334858;--route:#ef86bd;--shoal:#172b3a;--route-hover:#ffadd4;--on-route:#201322}
*,*::before,*::after{box-sizing:border-box}
body{margin:0}
a{color:inherit;text-underline-offset:4px}
button,input,select{font:inherit}
button,select{cursor:pointer}
button:disabled{cursor:default;opacity:.45}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--route);outline-offset:5px}
button{border:0}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(3rem,6vw,5.6rem);font-weight:500;letter-spacing:-.055em;line-height:1.02;margin-bottom:1.6rem}
h2{font-size:2rem;font-weight:500;line-height:1.1;letter-spacing:-.035em}
h3{font-size:1.35rem;font-weight:500}
p{line-height:1.6}
.brand{text-decoration:none;font-weight:650}
.brand span{font-weight:400;color:var(--slate);margin-left:.7rem}
nav{display:flex;gap:1.6rem}
nav a{text-decoration:none;font-size:.9rem}
.eyebrow{font-size:.68rem;letter-spacing:.16em;font-weight:650;color:var(--slate)}
.dot{display:inline-block;width:7px;height:7px;background:var(--route);border-radius:50%;margin-right:8px}
.lede{max-width:580px;font-size:1.3rem;line-height:1.5;color:var(--slate)}
.primary,.secondary{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1.1rem;border-radius:4px;width:100%;background:var(--route);color:var(--on-route);font-weight:550}
.skip{position:fixed;left:1rem;top:-100px;background:var(--surface);padding:1rem;z-index:10}
.skip:focus{top:1rem}
@font-face{font-family:Atkinson;src:url('./fonts/atkinson-next-italic.woff2') format('woff2');font-display:swap;font-weight:200 800;font-style:italic}
.mast,.masthead{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 2.5rem;border-bottom:1px solid var(--rule)}
.mast-actions{display:flex;align-items:center;gap:1.2rem;min-width:0}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:10px;border-radius:50%;background:transparent;color:var(--ink)}
.theme-toggle:hover{background:var(--shoal)}
.theme-toggle[hidden]{display:none}
.theme-toggle svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .theme-sun{display:none}
[data-theme="dark"] .theme-toggle .theme-sun{display:block}
[data-theme="dark"] .theme-toggle .theme-moon{display:none}
.button{display:inline-flex;align-items:center;min-height:3rem;padding:.8rem 1.1rem;border-radius:4px;background:var(--route);color:var(--on-route);font-weight:550;text-decoration:none}
.button:hover,.primary:hover{background:var(--route-hover);color:var(--on-route)}
@media(max-width:850px){.mast,.masthead{padding:1.5rem;flex-wrap:wrap}.mast-actions{flex:1;justify-content:space-between;gap:.75rem}nav{gap:1rem;flex-wrap:wrap}.brand span{display:none}}
@media print{.theme-toggle{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
