:root{
--black:#000000;
--grey-950:#0A0A0A;
--grey-900:#111111;
--grey-850:#161616;
--grey-800:#1C1C1C;
--grey-700:#262626;
--grey-600:#333333;
--grey-500:#4D4D4D;
--grey-400:#7A7976;
--grey-300:#A6A4A0;
--grey-200:#CFCDC9;
--grey-100:#ECEAE6;
--white:#F5F4F1;
--red-500:#FC2722;
--red-400:#FF4D47;
--red-600:#D81B16;
--red-900:#2A0907;
--bg-0:var(--black);
--bg-1:var(--grey-950);
--bg-2:var(--grey-900);
--bg-3:var(--grey-850);
--surface-page:var(--bg-1);
--surface-section:var(--bg-0);
--surface-card:var(--grey-900);
--surface-card-hover:var(--grey-850);
--surface-media:var(--grey-800);
--fg-1:var(--white);
--fg-2:var(--grey-300);
--fg-3:var(--grey-400);
--fg-on-accent:var(--black);
--text-heading:var(--fg-1);
--text-body:var(--grey-200);
--text-muted:var(--fg-2);
--text-meta:var(--fg-3);
--line-1:var(--grey-700);
--line-2:var(--grey-600);
--line-strong:var(--grey-500);
--accent:var(--red-500);
--accent-hover:var(--red-400);
--accent-press:var(--red-600);
--accent-tint:var(--red-900);
--focus-ring:var(--red-500);
}
:root{
--font-display:'Bebas Neue','Zen Dots',sans-serif;
--font-mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
--font-body:var(--font-mono);
--fs-display-xl:clamp(44px,6.2vw,96px); 
--fs-display-l:clamp(36px,4.4vw,68px); 
--fs-h1:clamp(32px,3.6vw,52px); 
--fs-h2:clamp(26px,2.6vw,38px); 
--fs-h3:22px; 
--fs-h4:18px; 
--fs-lead:19px; 
--fs-body:16px; 
--fs-small:14px; 
--fs-label:12px; 
--fs-micro:11px; 
--lh-display:1.08; 
--lh-heading:1.2; 
--lh-body:1.65; 
--lh-tight:1.35; 
--tracking-display:-0.01em; 
--tracking-label:0.14em; 
--fw-regular:400; 
--fw-medium:500; 
--fw-bold:700; 
}
:root{
--space-1:4px;
--space-2:8px;
--space-3:12px;
--space-4:16px;
--space-5:24px;
--space-6:32px;
--space-7:48px;
--space-8:64px;
--space-9:96px;
--space-10:128px;
--space-11:176px;
--section-y:clamp(72px,14vw,224px); 
--gutter:clamp(24px,5vw,80px); 
--container:1360px; 
--measure:62ch; 
--nav-h:76px; 
}
:root{
--radius-0:0px;
--radius-1:2px;
--radius-pill:999px;
--border-hair:1px solid var(--line-1); 
--border-strong:1px solid var(--line-2); 
--bracket-size:22px; 
--bracket-weight:2px; 
--shadow-none:none;
--shadow-lift:0 24px 60px -24px rgba(0,0,0,.8);
--scrim-bottom:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.55) 55%,rgba(0,0,0,.92) 100%); 
--scrim-left:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,0) 100%); 
--scrim-full:rgba(0,0,0,.45); 
--blur-nav:saturate(140%) blur(14px); 
--ease-out:cubic-bezier(.2,.7,.2,1); 
--ease-in-out:cubic-bezier(.65,0,.35,1); 
--dur-fast:140ms; 
--dur-base:240ms; 
--dur-slow:600ms; 
}
html{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}
body{margin:0}
a{color:var(--fg-1);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px;text-decoration-thickness:1px;transition:color var(--dur-fast) var(--ease-out)}
a:hover{color:var(--accent)}
::selection{background:var(--accent);color:var(--fg-on-accent)}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}
body{background:var(--surface-page)}.rv{opacity:0;transform:translateY(28px);transition:opacity 900ms var(--ease-out),transform 900ms var(--ease-out),background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.rv.in{opacity:1;transform:none}h1.rv,h2.rv{transform:translateY(40px);filter:blur(6px);transition:opacity 1000ms var(--ease-out),transform 1000ms var(--ease-out),filter 1000ms var(--ease-out)}h1.rv.in,h2.rv.in{filter:none}@media (prefers-reduced-motion:reduce){.rv{opacity:1!important;transform:none!important;clip-path:none!important}}
.cookie-banner{position:fixed;right:24px;bottom:24px;z-index:900;width:min(380px,calc(100vw - 32px));box-sizing:border-box;padding:24px;background:rgba(10,10,10,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(245,244,241,.2);color:var(--fg-1);font-family:var(--font-mono);font-size:var(--fs-small);line-height:1.6;opacity:0;transform:translateY(16px);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}
.cookie-banner.is-in{opacity:1;transform:none}
.cookie-banner p{margin:0 0 20px}
.cookie-banner a{color:var(--fg-1);text-decoration:underline;text-underline-offset:3px}
.cookie-banner a:hover{color:var(--accent)}
.cookie-banner__actions{display:flex;gap:10px}
.cookie-banner button{flex:1;cursor:pointer;height:44px;padding:0 16px;font:inherit;font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;border:1px solid var(--fg-1);background:transparent;color:var(--fg-1);transition:background .25s,color .25s,border-color .25s}
.cookie-banner button:hover{background:var(--fg-1);color:var(--black)}
.cookie-banner button[data-v="accept"]{background:var(--accent);border-color:var(--accent);color:var(--black)}
.cookie-banner button[data-v="accept"]:hover{background:var(--fg-1);border-color:var(--fg-1)}
@media (max-width:520px){.cookie-banner{right:16px;bottom:16px;padding:20px}}
@media (prefers-reduced-motion:reduce){.cookie-banner{transition:none}}
