@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/caslon-400.woff2') format('woff2')}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/caslon-700.woff2') format('woff2')}
@font-face{font-family:'Libre Caslon Text';font-style:italic;font-weight:400;font-display:swap;src:url('/assets/fonts/caslon-400-italic.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/archivo.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/plexmono-400.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500 600;font-display:swap;src:url('/assets/fonts/plexmono-500.woff2') format('woff2')}

:root{
  --bg:#1c1a18; --bg-2:#171513; --panel:#242120; --panel-2:#2b2826;
  --line:rgba(244,238,228,.12); --line-2:rgba(244,238,228,.07);
  --fg:#f3efe6; --fg-2:#c4bdb0; --fg-3:#9a9285; --fg-4:#7c756a;
  --crimson:#c4122e; --crimson-bright:#e3604f; --gold:#c2a868;
  --serif:'Libre Caslon Text', Georgia, serif;
  --sans:'Archivo', system-ui, -apple-system, Segoe UI, sans-serif;
  --mono:'IBM Plex Mono', ui-monospace, monospace;
  --r-xs:2px; --r-sm:4px;
  --maxw:1180px; --gutter:32px; --header-h:60px;
  --ease:cubic-bezier(.2,.6,.2,1);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--fg-2);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
a{color:inherit;text-decoration:none;}
a:hover{color:var(--fg);}
img{max-width:100%;display:block;}
::selection{background:var(--crimson);color:#fff;}
[id]{scroll-margin-top:84px;}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.gm-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter);}
@media(max-width:600px){:root{--gutter:20px;}}

.gm-h1{font-family:var(--serif);font-weight:700;font-size:clamp(2.6rem,6.4vw,4.6rem);line-height:1.0;letter-spacing:-.015em;color:var(--fg);margin:0;text-wrap:balance;}

.gm-notice{background:var(--bg-2);border-bottom:1px solid var(--line-2);}
.gm-notice-inner{padding:10px var(--gutter);display:flex;gap:7px 16px;align-items:baseline;flex-wrap:wrap;}
.gm-notice-k{font-family:var(--mono);font-weight:600;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--crimson-bright);flex:none;}
.gm-notice-t{font-size:.8rem;color:var(--fg-3);line-height:1.5;max-width:98ch;}

.gm-header{position:sticky;top:0;z-index:200;height:var(--header-h);display:flex;align-items:center;background:rgba(28,26,24,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.gm-nav{display:flex;align-items:center;justify-content:space-between;width:100%;}
.gm-brand{display:flex;align-items:center;gap:11px;}
.gm-mark{height:26px;width:auto;flex:none;}
.gm-wordmark{white-space:nowrap;font-family:var(--sans);font-weight:700;font-size:1.12rem;letter-spacing:-.02em;color:var(--fg);}
.gm-wordmark .d{color:var(--crimson-bright);}
.gm-navlinks{display:flex;gap:24px;list-style:none;margin:0;padding:0;}
.gm-navlinks a{font-family:var(--sans);font-weight:600;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--fg-3);transition:color .18s;white-space:nowrap;}
.gm-navlinks a:hover{color:var(--fg);}
.gm-navlinks a.active{color:var(--crimson-bright);}
.gm-navtoggle{display:none;background:none;border:0;color:var(--fg);cursor:pointer;padding:6px;margin:-6px -6px -6px 0;line-height:0;}
@media(max-width:1000px){.gm-navlinks{gap:16px;}}
@media(max-width:760px){.gm-navlinks{gap:15px;}.gm-navlinks a{font-size:.68rem;letter-spacing:.03em;}.gm-nav{padding-right:var(--gutter);}}
@media(max-width:680px){
  .gm-navtoggle{display:inline-flex;align-items:center;}
  #gm-navmenu{position:absolute;top:var(--header-h);left:0;right:0;display:none;background:var(--bg);border-bottom:1px solid var(--line);}
  #gm-navmenu.is-open{display:block;}
  .gm-navlinks{flex-direction:column;gap:0;padding:6px 0;}
  .gm-navlinks a{display:block;padding:13px var(--gutter);font-size:.85rem;letter-spacing:.04em;}
}

.gm-hero{position:relative;padding:44px 0 34px;overflow:hidden;border-bottom:1px solid var(--line-2);}
.gm-hero-glow{position:absolute;left:-8%;bottom:0;width:58vw;max-width:820px;height:74%;background:radial-gradient(ellipse 58% 78% at 34% 100%,rgba(196,18,46,.26),transparent 70%);pointer-events:none;}
.gm-hero .gm-wrap{position:relative;z-index:1;}
.gm-hero-lead{margin:14px 0 0;white-space:nowrap;font-family:var(--serif);font-weight:400;font-size:clamp(.9rem,2.1vw,1.5rem);line-height:1.3;color:var(--fg);}
@media(max-width:600px){.gm-hero-lead{white-space:normal;}}
.gm-hero-intro{margin:14px 0 0;max-width:78ch;font-size:.92rem;line-height:1.6;color:var(--fg-3);text-wrap:pretty;}

.gm-sec{padding:48px 0;}

.gm-ref{font-family:var(--sans);font-weight:700;font-size:.62em;line-height:0;vertical-align:super;}
.gm-ref a{color:var(--crimson-bright);padding:0 1px;}
.gm-ref a:hover{text-decoration:underline;}

.cs-tag{display:inline-block;white-space:nowrap;flex:none;margin:0;font-family:var(--mono);font-weight:700;font-size:.72rem;letter-spacing:.22em;line-height:1.55;text-transform:uppercase;color:#23252b;background:var(--gold);padding:5px 11px;border-radius:var(--r-xs);}

.cs-std-sum{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:12px;user-select:none;}
.cs-std-sum::-webkit-details-marker{display:none;}
.cs-std-chev{width:22px;height:22px;color:var(--gold);transition:transform .25s var(--ease);}
.cs-std[open] .cs-std-chev{transform:rotate(180deg);}
.cs-std-sum:hover .cs-tag{filter:brightness(1.1);}
.cs-rule{position:relative;margin-top:22px;padding:32px 36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 56px;}
.cs-rule::before,.cs-rule::after{content:"";position:absolute;width:26px;height:26px;border:2px solid var(--gold);pointer-events:none;}
.cs-rule::before{top:0;left:0;border-right:0;border-bottom:0;}
.cs-rule::after{right:0;bottom:0;border-left:0;border-top:0;}
.cs-rule-p{margin:0;font-size:1rem;line-height:1.65;color:var(--fg-2);text-wrap:pretty;}
.cs-rule-p strong{color:var(--fg);}
.cs-reqs{list-style:none;margin:0;padding:0;counter-reset:req;display:flex;flex-direction:column;}
.cs-reqs li{counter-increment:req;display:grid;grid-template-columns:3ch 1fr;gap:0 16px;padding:16px 0;border-bottom:1px solid var(--line-2);}
.cs-reqs li:first-child{padding-top:4px;}
.cs-reqs li::before{content:"0" counter(req);font-family:var(--mono);font-weight:600;font-size:.78rem;letter-spacing:.08em;color:var(--gold);padding-top:.3em;}
.cs-reqs b{display:block;font-family:var(--serif);font-weight:700;font-size:1.12rem;line-height:1.25;color:var(--fg);margin-bottom:4px;}
.cs-reqs span{font-size:.9rem;line-height:1.5;color:var(--fg-3);}
@media(max-width:820px){.cs-rule{grid-template-columns:1fr;padding:28px 24px;}}

.cs-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;line-height:1;padding:10px 14px;background:var(--fg);color:#1c1a18;border:1px solid var(--fg);border-radius:var(--r-xs);white-space:nowrap;}
.cs-badge::before{content:"";width:7px;height:7px;background:currentColor;flex:none;}

.cs-card{border:1px solid var(--line);border-top:2px solid var(--fg);border-radius:var(--r-sm);background:var(--panel);}
.cs-card-top{padding:clamp(22px,3vw,34px) clamp(22px,3.2vw,38px) 24px;display:flex;flex-direction:column;gap:16px;border-bottom:1px solid var(--line);}
.cs-title-row{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px 24px;}
.cs-title{font-family:var(--serif);font-weight:700;font-size:clamp(1.55rem,2.8vw,2.15rem);line-height:1.1;letter-spacing:-.01em;color:var(--fg);margin:0;text-wrap:balance;}
.cs-years{font-family:var(--mono);font-weight:500;font-size:.78rem;letter-spacing:.12em;color:var(--fg-3);white-space:nowrap;}
.cs-outcomes{display:flex;flex-direction:column;gap:12px;}
.cs-outcome{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;}
.cs-outcome .cs-badge{min-width:15.5em;justify-content:flex-start;}
@media(max-width:600px){.cs-outcome .cs-badge{min-width:0;}}
.cs-outcome-line{margin:0;font-family:var(--serif);font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.45;color:var(--fg);flex:1 1 32ch;min-width:0;text-wrap:pretty;}
.cs-outcome-line cite{font-style:italic;}

.cs-sites{padding:24px clamp(22px,3.2vw,38px) 28px;border-bottom:1px solid var(--line);background:rgba(194,168,104,.07);}
.cs-sites-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin:0 0 16px;}
.cs-sites-t{flex:1 1 20ch;font-size:.92rem;color:var(--fg-2);}
.cs-sites-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:10px;}
.cs-sites-grid a{display:flex;flex-direction:column;gap:8px;height:100%;padding:16px 18px;border:1px solid rgba(194,168,104,.45);border-radius:var(--r-sm);background:var(--panel-2);transition:border-color .18s,background .18s,transform .18s;}
.cs-sites-grid a:hover{border-color:var(--gold);background:#322e2b;transform:translateY(-2px);}
.cs-sites-grid b{font-family:var(--sans);font-weight:700;font-size:1.02rem;letter-spacing:-.01em;color:var(--fg);overflow-wrap:break-word;}
.cs-sites-grid span{font-family:var(--mono);font-weight:600;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}

.cs-main{padding:26px clamp(22px,3.2vw,38px) 30px;min-width:0;}
.cs-field-k{display:block;font-family:var(--mono);font-weight:600;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 12px;}
.cs-insts{display:flex;flex-wrap:wrap;gap:4px 8px;margin:0 0 26px;padding:0;list-style:none;}
.cs-insts li{white-space:nowrap;font-family:var(--sans);font-weight:600;font-size:1rem;color:var(--fg);}
.cs-insts li + li::before{content:"\00B7";margin-right:8px;color:var(--fg-4);}
.cs-record{list-style:none;margin:0;padding:0;}
.cs-record li{display:grid;grid-template-columns:10.5rem minmax(0,1fr);gap:4px 22px;padding:14px 0;border-top:1px solid var(--line-2);}
.cs-record li:first-child{border-top:0;padding-top:2px;}
.cs-date{font-family:var(--mono);font-weight:500;font-size:.76rem;letter-spacing:.04em;color:var(--fg-3);padding-top:.25em;}
.cs-act{margin:0;font-size:.98rem;line-height:1.55;color:var(--fg-2);text-wrap:pretty;}
.cs-act b{color:var(--fg);font-weight:700;}
.cs-verify{display:inline-block;margin-left:8px;font-family:var(--mono);font-weight:600;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:#1c1a18;background:var(--gold);padding:3px 7px;border-radius:var(--r-xs);vertical-align:2px;}
@media(max-width:600px){.cs-record li{grid-template-columns:1fr;}}
.cs-card-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;padding:14px clamp(22px,3.2vw,38px);border-top:1px solid var(--line);font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--fg-4);}
.cs-card-foot b{color:var(--fg-2);font-weight:600;}

.gm-notes{border:1px solid var(--crimson-bright);border-radius:var(--r-sm);background:var(--panel);overflow:hidden;}
.gm-notes-sum{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 26px;user-select:none;transition:background .18s;}
.gm-notes-sum::-webkit-details-marker{display:none;}
.gm-notes-sum:hover{background:var(--panel-2);}
.gm-notes-sum-l{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;}
.gm-notes-sum-k{font-family:var(--mono);font-weight:600;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--crimson-bright);}
.gm-notes-sum-t{font-family:var(--serif);font-weight:700;font-size:1.15rem;color:var(--fg);}
.gm-notes-sum-c{font-size:.84rem;color:var(--fg-3);}
.gm-notes-chev{flex:none;width:22px;height:22px;color:var(--crimson-bright);transition:transform .25s var(--ease);}
details[open] .gm-notes-chev{transform:rotate(180deg);}
.gm-notes-body{padding:4px 26px 22px;border-top:1px solid var(--line);}
.gm-notes ol{list-style:none;margin:0;padding:0;counter-reset:gmn;}
.gm-notes li{counter-increment:gmn;display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line-2);font-size:.82rem;line-height:1.55;color:var(--fg-3);}
.gm-notes li:last-child{border-bottom:0;}
.gm-notes li::before{content:counter(gmn);font-family:var(--mono);font-weight:600;color:var(--crimson-bright);flex:none;width:2.2ch;text-align:right;font-size:.82rem;padding-top:1px;}
.gm-notes strong{color:var(--fg-2);font-weight:700;}
.gm-notes a{color:var(--gold);border-bottom:1px solid var(--line);overflow-wrap:anywhere;}
.gm-notes a:hover{color:var(--fg);border-color:var(--gold);}
.gm-back{margin-left:6px;color:var(--fg-4);border:none !important;}
.gm-currency{margin-top:24px;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-4);}
.cs-notes{border:0;border-top:1px solid var(--line);border-radius:0 0 var(--r-sm) var(--r-sm);}
.cs-notes .gm-notes-sum{padding:18px clamp(22px,3.2vw,38px);}
.cs-notes .gm-notes-body{padding:4px clamp(22px,3.2vw,38px) 22px;}

.dk{border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;background:linear-gradient(rgba(23,21,19,.88),rgba(23,21,19,.92)),url('/assets/ice-texture.avif') center/cover,var(--bg-2);}
.dk-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px 20px;padding:10px 18px;background:rgba(16,15,14,.85);border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-4);}
.dk-bar b{color:var(--fg);font-weight:600;}
.dk-surface{display:grid;min-height:560px;padding:clamp(24px,4vw,48px);}
.dk-surface > *{grid-area:1 / 1;min-width:0;}
.dk-icons{display:flex;flex-wrap:wrap;align-content:flex-start;gap:32px 28px;list-style:none;margin:0;padding:0;}
.fd{appearance:none;background:none;border:1px solid transparent;border-radius:var(--r-sm);padding:14px 12px 16px;width:220px;display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;color:inherit;font:inherit;text-align:center;transition:background .18s,border-color .18s;}
.fd:hover{background:rgba(244,238,228,.05);border-color:var(--line);}
.fd:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
.fd[aria-expanded="true"]{background:rgba(194,168,104,.1);border-color:rgba(194,168,104,.4);}
.fd-icon{position:relative;width:128px;height:94px;margin-top:12px;}
.fd-icon::before{content:"";position:absolute;left:0;top:-11px;width:50px;height:16px;background:#a88d4f;border-radius:3px 3px 0 0;}
.fd-icon::after{content:"";position:absolute;inset:0;z-index:1;background:var(--gold);border-radius:0 3px 3px 3px;box-shadow:inset 0 10px 0 rgba(255,255,255,.08);}
.fd-paper{position:absolute;left:10px;right:10px;top:-5px;height:40px;background:var(--fg);border-radius:2px;z-index:0;}
.fd-tags{position:absolute;z-index:2;left:0;right:0;bottom:10px;display:flex;flex-direction:column;align-items:center;gap:4px;}
.fd-tag{font-family:var(--mono);font-weight:600;font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:#1c1a18;border:1px solid rgba(28,26,24,.5);padding:3px 6px;border-radius:var(--r-xs);white-space:nowrap;}
.fd--soon{cursor:default;opacity:.55;}
.fd--soon:hover{background:none;border-color:transparent;}
.fd--soon .fd-icon::before{background:transparent;border:1.5px dashed var(--fg-3);border-bottom:0;}
.fd--soon .fd-icon::after{background:transparent;border:1.5px dashed var(--fg-3);box-shadow:none;}
.fd-name{font-family:var(--serif);font-weight:700;font-size:1rem;line-height:1.25;color:var(--fg);text-wrap:balance;}
.fd-years{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;color:var(--fg-3);}
.dk-hint{align-self:end;justify-self:end;font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-4);pointer-events:none;}
.win{align-self:start;margin:48px 0 0 120px;max-width:960px;container-type:inline-size;border:1px solid rgba(244,238,228,.22);border-radius:var(--r-sm);background:var(--panel);box-shadow:0 30px 70px rgba(0,0,0,.55);position:relative;z-index:2;}
.win[hidden]{display:none;}
.win-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 10px 9px 16px;background:#2f2b28;border-bottom:1px solid var(--line);border-radius:var(--r-sm) var(--r-sm) 0 0;}
.win-path{font-family:var(--mono);font-size:.7rem;letter-spacing:.04em;color:var(--fg-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.win-path b{color:var(--fg);font-weight:600;}
.win-acts{display:flex;gap:8px;flex:none;}
.win-open{font-family:var(--mono);font-weight:600;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#1c1a18;background:var(--gold);padding:7px 10px;border-radius:var(--r-xs);white-space:nowrap;transition:.18s;}
.win-open:hover{color:#1c1a18;filter:brightness(1.1);}
.win-close{appearance:none;flex:none;background:none;border:1px solid var(--line);border-radius:var(--r-xs);color:var(--fg-2);font-family:var(--mono);font-weight:600;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;padding:6px 10px;cursor:pointer;transition:.18s;}
.win-close:hover{color:#fff;background:var(--crimson);border-color:var(--crimson);}
.win .cs-card{border:0;border-radius:0;}
@media(max-width:1180px){.win{margin:36px 0 0 0;}}
@media(max-width:880px){.win{margin:0;}.dk-hint{display:none;}}
@container (max-width:560px){.cs-record li{grid-template-columns:1fr;}}
@media(max-width:520px){.fd{width:100%;}}
@media(prefers-reduced-motion:no-preference){.win.is-opening{animation:winIn .22s var(--ease);}}
@keyframes winIn{from{opacity:0;transform:translateY(10px) scale(.985);}to{opacity:1;transform:none;}}

.cs-page .gm-hero{padding:74px 0 64px;}
.cs-page .gm-hero .gm-h1{max-width:20ch;font-size:clamp(2.2rem,5vw,3.8rem);}
.cs-crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-4);margin:0 0 22px;}
.cs-crumb a{color:var(--gold);}
.cs-crumb a:hover{color:var(--fg);}
.cs-page-years{display:block;margin-top:18px;font-family:var(--mono);font-size:.82rem;letter-spacing:.12em;color:var(--fg-3);}
.cs-page .cs-card{border-radius:var(--r-sm) var(--r-sm) 0 0;}
.cs-page .cs-notes{border:1px solid var(--line);border-top:0;border-radius:0 0 var(--r-sm) var(--r-sm);}
.cs-back{display:inline-flex;margin-top:28px;font-family:var(--mono);font-weight:600;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
.cs-back:hover{color:var(--fg);}

.gm-footer{background:#100f0e;border-top:1px solid var(--line);padding:60px 0 46px;}
.gm-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px;align-items:center;}
.gm-foot-brand{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.gm-foot-social{display:flex;gap:14px;flex-wrap:wrap;}
.gm-foot-social a{display:inline-flex;align-items:center;gap:7px;color:var(--fg-2);font-size:.84rem;font-weight:600;transition:color .18s;}
.gm-foot-social a:hover{color:var(--gold);}
.gm-footlinks{list-style:none;display:flex;flex-wrap:wrap;gap:8px 24px;margin:0;padding:0;}
.gm-footlinks a{font-size:.84rem;font-weight:600;color:var(--fg-3);}
.gm-footlinks a:hover{color:var(--fg);}
.gm-foot-disclaimer{margin-top:34px;padding-top:24px;border-top:1px solid var(--line-2);font-size:.8rem;line-height:1.65;color:var(--fg-4);max-width:98ch;}
.gm-foot-disclaimer p{margin:0 0 10px;}
.gm-foot-disclaimer p:last-child{margin:0;}
.gm-copy{margin-top:16px;font-family:var(--mono);font-size:.7rem;letter-spacing:.04em;color:var(--fg-4);}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*{transition:none !important;}}
