*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-padding-top:var(--space-9)}
:root{font-synthesis:none}
body{margin:0;background:var(--bg-canvas);color:var(--fg-default);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-body);letter-spacing:var(--track-body);font-weight:var(--weight-regular);text-wrap:pretty}
h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--weight-regular);color:var(--fg-default);letter-spacing:var(--track-display)}
h1{font-size:var(--text-h1);line-height:var(--leading-h1)}
h2{font-size:var(--text-h2);line-height:var(--leading-h2)}
h3{font-size:var(--text-h3);line-height:var(--leading-h3);letter-spacing:var(--track-tight)}
h4{font-family:var(--font-mono);font-size:var(--text-meta);line-height:var(--leading-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--fg-muted)}
p{margin:0;max-width:var(--measure-prose)}
ul,ol{margin:0;padding:0;list-style:none}
img,video{display:block;max-width:100%;height:auto}
table{border-collapse:collapse}
a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:0.16em;transition:var(--transition-control)}
a:hover{color:var(--link-hover);text-decoration-thickness:2px}
button,input,select,textarea{font:inherit;letter-spacing:inherit;color:inherit}
:focus-visible{outline:none;box-shadow:var(--focus-shadow)}
::selection{background:var(--palette-slate-200);color:var(--fg-default)}
hr{border:none;border-top:var(--rule-hairline);margin:0}

/* Motion is opt-in, so the default — including in browsers without the query — is the
   calm one (MOTION.md §8.2, Comeau's pattern). FINDINGS.md: only 9% of 239 award sites
   and 10% of the top tier change anything at all under reduce. Honouring it puts this
   system ahead of nine tenths of prize-winning work, on a criterion the Awwwards
   developer jury also scores. Reduce, not zero (§8.3): colour and focus transitions
   stay; movement becomes opacity; stagger becomes 0. */
@media (prefers-reduced-motion: no-preference){
:root{--transition-move:transform var(--duration-base) var(--ease-out),opacity var(--duration-base) var(--ease-out)}
}
@media (prefers-reduced-motion: reduce){
:root{--duration-stagger:0ms; /* @kind other */ --travel:0px}
}
