*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
:root{--s4:4px;--s8:8px;--s12:12px;--s16:16px;--s24:24px;--s32:32px;--s40:40px;--s64:64px;--ground:#0b0b09;--surface:#121210;--surface2:#17161230;--ink:#e8e8dc;--muted:#aaaa9d;--accent:#ffb000;--accent-ink:#0b0b09;--line:#33332c;--max:1140px;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"DejaVu Sans Mono","Liberation Mono",monospace}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background-color:var(--ground);background-image:repeating-linear-gradient(180deg,rgba(255,255,255,.018) 0 1px,rgba(0,0,0,0) 1px 4px);color:var(--ink);font-family:var(--mono);font-size:1rem;line-height:1.65}
body.menu-open{overflow:hidden}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,table{margin:0}
h1,h2,h3,h4,p,li,dt,dd,td,th,a{overflow-wrap:anywhere}
h1,h2,h3,h4{font-weight:700;line-height:1.2;letter-spacing:.01em;text-transform:uppercase}
h1{font-size:clamp(1.5rem,4.4vw,2.5rem)}
h2{font-size:clamp(1.15rem,2.6vw,1.5rem)}
h3{font-size:1rem;letter-spacing:.06em}
a{color:var(--accent)}
a:hover{color:var(--ink)}
img{display:block;max-width:100%;height:auto}
.container{width:min(calc(100% - var(--s32)),var(--max));margin-inline:auto}
.skip-link{position:absolute;left:var(--s8);top:calc(var(--s40) * -2);z-index:90;background-color:var(--accent);color:var(--accent-ink);padding:var(--s8) var(--s16);font-size:.875rem;text-decoration:none}
.skip-link:focus{top:var(--s8)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.site-footer :focus-visible,.mobile-menu :focus-visible,.cookie-banner :focus-visible{outline-color:var(--ink)}
.colour-panel.p3 :focus-visible{outline-color:var(--accent-ink)}
.site-header{border-bottom:1px solid var(--line);background-color:var(--surface)}
.header-row{display:flex;align-items:center;gap:var(--s16);min-height:50px}
.header-row>*{min-width:0}
.brand{display:flex;align-items:center;gap:var(--s8);text-decoration:none;color:var(--ink);flex-shrink:0;white-space:nowrap}
.brand-mark{width:22px;height:22px;flex:0 0 auto}
.brand-name{font-size:.9rem;font-weight:700;letter-spacing:.02em}
.site-nav{display:none}
.site-nav ul{display:flex;align-items:center;gap:var(--s12);list-style:none;padding:0;margin:0}
.site-nav a{font-size:.875rem;text-decoration:none;color:var(--ink);white-space:nowrap;padding:var(--s4) 0;border-bottom:2px solid transparent}
.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent)}
.cta{display:none}
.nav-toggle{margin-left:auto;font:inherit;font-size:.875rem;letter-spacing:.08em;text-transform:uppercase;background-color:transparent;color:var(--ink);border:1px solid var(--line);padding:var(--s8) var(--s12);cursor:pointer}
.nav-toggle[aria-expanded=true]{background-color:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.mobile-menu{position:fixed;inset:50px 0 0;z-index:80;background-color:var(--ground);border-top:1px solid var(--line);overflow-y:auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:var(--s24) var(--s16)}
.mobile-menu[hidden]{display:none!important}
.mobile-menu ul{list-style:none;padding:0;margin-block:auto;display:flex;flex-direction:column;gap:var(--s8)}
.mobile-menu a{display:block;text-decoration:none;color:var(--ink);font-size:1.05rem;padding:var(--s12) 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.mobile-menu a.cta-inline{color:var(--accent-ink);background-color:var(--accent);border:0;padding:var(--s12) var(--s16);text-align:center;font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase}
main{display:block;padding-block:var(--s40) var(--s64)}
.eyebrow{font-size:.8125rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--s12)}
.eyebrow::before{content:"";display:inline-block;width:10px;height:10px;background-color:var(--accent);margin-right:var(--s8)}
.lede{font-size:clamp(1rem,1.6vw,1.125rem);color:var(--ink);margin-top:var(--s16);max-width:74ch}
.hero p+p{margin-top:var(--s12)}
.rule{border:0;border-top:1px solid var(--line);margin-block:var(--s40)}
.lead-media{width:100%;border:1px solid var(--line);margin-top:var(--s32);background-color:var(--surface)}
.section{margin-top:var(--s64)}
.section-head{border-top:2px solid var(--accent);padding-top:var(--s16);margin-bottom:var(--s24)}
.colour-panels{display:flex;flex-direction:column;gap:var(--s24)}
.colour-panel{border:1px solid var(--line);padding:var(--s40) var(--s24);text-align:center;background-color:var(--surface)}
.colour-panel .panel-idx{display:block;font-size:clamp(3rem,11vw,5.5rem);line-height:1;color:var(--accent);letter-spacing:.02em}
.colour-panel h3{margin-top:var(--s8);font-size:clamp(1.05rem,2.4vw,1.375rem);letter-spacing:.03em}
.colour-panel .panel-kicker{font-size:.8125rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:var(--s12)}
.colour-panel p.panel-sum{margin:var(--s16) auto 0;max-width:70ch;color:var(--ink)}
.colour-panel .panel-link{display:inline-block;margin-top:var(--s24);font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--accent);border:1px solid var(--accent);padding:var(--s8) var(--s16)}
.colour-panel .panel-link:hover{background-color:var(--accent);color:var(--accent-ink)}
.p1{background-color:#101010}
.p2{background-color:#16150f}
.p3{background-color:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.p3 .panel-idx{color:#5c4100}
.p3 .panel-kicker,.p3 p.panel-sum{color:#221800}
.p3 .panel-link{color:var(--accent-ink);border-color:var(--accent-ink)}
.p3 .panel-link:hover{background-color:var(--accent-ink);color:var(--accent)}
.p4{background-color:#0e1210}
.p5{background-color:#141011}
.prose{max-width:78ch}
.prose h2{margin-top:var(--s40);padding-top:var(--s16);border-top:1px solid var(--line)}
.prose h2::before{content:"";display:block;width:24px;height:6px;background-color:var(--accent);margin-bottom:var(--s12)}
.prose h3{margin-top:var(--s24);color:var(--accent)}
.prose p{margin-top:var(--s16)}
.prose ul,.prose ol{margin-top:var(--s16);padding-left:var(--s24)}
.prose li{margin-top:var(--s8)}
.prose li::marker{color:var(--accent)}
.note{border-left:6px solid var(--accent);background-color:var(--surface);padding:var(--s24);margin-top:var(--s24)}
.note p{margin-top:0}
.note p+p{margin-top:var(--s12)}
.defs{display:grid;grid-template-columns:1fr;gap:var(--s16);margin-top:var(--s24)}
.defs>*{min-width:0}
.def{border:1px solid var(--line);background-color:var(--surface);padding:var(--s24)}
.def dt{font-size:.8125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.def dd{margin-top:var(--s8);color:var(--ink);font-size:.9375rem}
.table-wrap{overflow-x:auto;margin-top:var(--s24);border:1px solid var(--line)}
table{border-collapse:collapse;width:100%;min-width:480px;font-size:.875rem}
caption{text-align:left;padding:var(--s12) var(--s16);color:var(--muted);font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase}
th,td{text-align:left;padding:var(--s12) var(--s16);border-top:1px solid var(--line);vertical-align:top}
th{background-color:var(--surface);color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:.8125rem}
.form{margin-top:var(--s32);max-width:60ch}
.field{margin-top:var(--s24)}
.field label{display:block;font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--s8)}
input,select,textarea{font:inherit;width:100%;background-color:var(--surface);color:var(--ink);border:1px solid var(--line);padding:var(--s12)}
textarea{min-height:150px;resize:vertical}
.hint{font-size:.8125rem;color:var(--muted);margin-top:var(--s8)}
.field-error{display:block;font-size:.8125rem;color:var(--accent);margin-top:var(--s8)}
.is-invalid{border-color:var(--accent);border-width:2px}
.form-status{margin-top:var(--s24);border-left:6px solid var(--accent);padding:var(--s12) var(--s16);background-color:var(--surface);font-size:.9375rem}
.btn{font:inherit;font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;background-color:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);padding:var(--s12) var(--s24);cursor:pointer}
.btn:hover{background-color:var(--ink);border-color:var(--ink);color:var(--accent-ink)}
.btn-ghost{background-color:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{background-color:var(--line);color:var(--ink)}
.two-col{display:grid;grid-template-columns:1fr;gap:var(--s32);margin-top:var(--s32)}
.two-col>*{min-width:0}
.site-footer{border-top:2px solid var(--accent);background-color:#0e0e0c;margin-top:var(--s64);padding-block:var(--s40) var(--s24)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--s32)}
.footer-grid>*{min-width:0}
.footer-brand{font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.footer-pub{margin-top:var(--s12);color:var(--ink)}
.site-footer address{font-style:normal;margin-top:var(--s8);color:var(--muted);font-size:.9375rem}
.site-footer a{color:var(--ink);text-decoration:none;font-size:.9375rem}
.site-footer a:hover{color:var(--accent)}
.footer-h{font-size:.8125rem;letter-spacing:.14em;color:var(--accent);margin-bottom:var(--s12)}
.site-footer ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--s8)}
.footer-base{border-top:1px solid var(--line);margin-top:var(--s32);padding-top:var(--s16)}
.footer-base p{font-size:.8125rem;color:var(--muted)}
.footer-base p+p{margin-top:var(--s8)}
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:70;background-color:var(--surface);border-top:2px solid var(--accent);padding-block:var(--s16)}
.cookie-row{display:flex;flex-direction:column;gap:var(--s12)}
.cookie-row>*{min-width:0}
.cookie-copy{font-size:.875rem}
.cookie-actions{display:flex;flex-direction:column;gap:var(--s8)}
.cookie-actions .btn{width:100%}
.cookie-prefs{border-top:1px solid var(--line);margin-top:var(--s16);padding-top:var(--s16)}
.cookie-prefs ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--s8);font-size:.875rem}
.cookie-prefs label{display:flex;gap:var(--s8);align-items:flex-start}
.cookie-prefs input{width:auto}
@media (min-width:480px){.cookie-actions{flex-direction:row;flex-wrap:wrap}.cookie-actions .btn{flex:1 1 auto;width:auto}}
@media (min-width:768px){main{padding-block:var(--s64)}.colour-panel{padding:var(--s64) var(--s40)}.defs{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:2fr 1fr;gap:var(--s40)}.footer-grid{grid-template-columns:2fr 1fr 1fr}.cookie-row{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--s24)}.cookie-actions{flex-direction:row;justify-content:flex-end;flex-wrap:nowrap}.cookie-actions .btn{flex:0 0 auto}}
@media (min-width:1024px){.header-row{min-height:60px}.nav-toggle{display:none}.mobile-menu{display:none!important}.site-nav{display:block;margin-inline:auto}.cta{display:inline-block;font-size:.875rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;background-color:var(--accent);color:var(--accent-ink);padding:var(--s8) var(--s12);white-space:nowrap;flex:0 0 auto}.cta:hover{background-color:var(--ink);color:var(--accent-ink)}.brand-name{font-size:.9375rem}}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}