/* Shared smoked-glass foundation. Authentic project artwork keeps its colour. */
@font-face{font-family:Inter;src:url('../fonts/Inter-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--font:Inter,Arial,Helvetica,sans-serif;--font-body:var(--font);--font-display:var(--font);--surface:#191719;--surface-raised:#272322;--surface-2:var(--surface-raised);--surface-3:#37302f;--ink:#f4efeb;--body-ink:#ded5d0;--ink-2:var(--body-ink);--muted:#d4cbc7;--line:rgb(244 239 235/.23);--line-strong:rgb(244 239 235/.42);--accent:#777542;--accent-ink:#fff;--accent-readable:var(--ink);--accent-on:var(--accent-ink);--gutter:clamp(24px,4vw,100px);--header:clamp(88px,8.5dvh,144px);--ease:cubic-bezier(.22,.68,.2,1);color-scheme:dark;font-family:var(--font);scroll-padding-top:var(--header)}
html[data-theme=light]{--surface:#eeeae6;--surface-raised:#e5dfda;--surface-3:#d8d0cb;--ink:#242025;--body-ink:#443c3f;--ink-2:var(--body-ink);--muted:#3b3235;--line:rgb(36 32 37/.23);--line-strong:rgb(36 32 37/.42);color-scheme:light}
*{box-sizing:border-box}html,body{margin:0;min-width:0;background:var(--surface);color:var(--ink)}body{font:400 18px/1.6 var(--font);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit;text-underline-offset:6px}img,video{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}::selection{background:var(--accent);color:var(--accent-ink)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.skip-link{position:fixed;z-index:300;top:12px;left:24px;padding:12px 20px;background:var(--ink);color:var(--surface);transform:translateY(-160%)}.skip-link:focus{transform:none}.interface-icon{width:1.15em;height:1.15em;flex:0 0 auto;object-fit:contain;filter:invert(1)}html[data-theme=light] .interface-icon{filter:none}.icon-button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;border:0;background:transparent;text-decoration:none}.icon-button .interface-icon{width:22px;height:22px}
.a11y-underline-links a:not(.brand){text-decoration:underline;text-decoration-thickness:2px}.a11y-large-cursor,.a11y-large-cursor *{cursor:url('../icons/interface/cursor-large.svg') 4 4,auto!important}.a11y-high-contrast{--surface:#000;--surface-raised:#141414;--ink:#fff;--body-ink:#fff;--muted:#e2e2e2;--line:#aaa}html[data-theme=light] .a11y-high-contrast{--surface:#fff;--surface-raised:#eee;--ink:#000;--body-ink:#000;--muted:#222;--line:#555}.a11y-reduce-motion *,.a11y-reduce-motion *::before,.a11y-reduce-motion *::after,.a11y-focus-mode *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(hover:hover){.icon-button:hover{background:var(--surface-raised)}}
@media(forced-colors:active){html[data-theme] .interface-icon{filter:none!important}}
@media(forced-colors:active) and (prefers-color-scheme:dark){html[data-theme] .interface-icon{filter:invert(1)!important}}
