/* ═══════════════════════════════════════════════════════════════
   WebTrustEngine R50 — Design System v2.0 "Evidence Engine"
   Palette: deep navy nights · restrained gold · paper neutrals
   Motif: layered evidence surfaces · verification lines · ledger
   ═══════════════════════════════════════════════════════════════ */
:root{
  --navy-950:#071527;--navy-900:#0B1F33;--navy-800:#122B47;--navy-700:#1B3A5C;
  --gold-500:#C9A227;--gold-400:#D9B54A;--gold-100:#F3E7C4;
  --teal-600:#1E7F74;--teal-100:#DFF1EE;
  --amber-600:#B07C1F;--amber-100:#F6ECD6;
  --ink-900:#161D26;--ink-600:#3D4854;--ink-700:#233447;--ink-400:#6B7683;
  --paper-0:#FBFAF7;--paper-1:#F4F2EC;--paper-2:#ECE9E0;--line:#DFDBD0;
  --card:#FFFFFF;--r-lg:18px;--r-md:12px;--r-sm:8px;
  --shadow-1:0 1px 2px rgba(11,31,51,.06),0 6px 18px rgba(11,31,51,.07);
  --shadow-2:0 2px 4px rgba(11,31,51,.08),0 14px 34px rgba(11,31,51,.12);
  --maxw:1160px;--maxw-text:74ch;
  --grid-line:rgba(201,162,39,.07);
  --paper-dim:#9FB0C4;
  --font-sans:"Helvetica Neue","Segoe UI",Arial,system-ui,sans-serif;
  --font-serif:Georgia,"Times New Roman",serif;
  --font-mono:"SF Mono","Cascadia Code",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--paper-0);color:var(--ink-900);font-family:var(--font-serif);font-size:1.02rem;line-height:1.7}
h1,h2,h3,h4,h5,nav,button,summary,.btn,.chip,.tag,.eyebrow,.crumbs,table{font-family:var(--font-sans)}
img{max-width:100%;height:auto}
a{color:var(--navy-700)}
code,.mono,.sha{font-family:var(--font-mono);font-size:.86em}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.skip{position:absolute;left:-999px;z-index:100}
.skip:focus{left:14px;top:12px;background:var(--gold-500);color:var(--navy-950);padding:9px 16px;border-radius:var(--r-sm);font-weight:700}
:focus-visible{outline:3px solid var(--gold-500);outline-offset:2px;border-radius:4px}

/* ── verification hairline (motif) ── */
.vline{height:3px;background:linear-gradient(90deg,var(--gold-500) 0,var(--gold-500) 46%,var(--teal-600) 46%,var(--teal-600) 54%,var(--gold-500) 54%);border:0}

/* ═══ HEADER ═══ */
.hdr{position:sticky;top:0;z-index:60;background:linear-gradient(180deg,var(--navy-950),var(--navy-900));border-bottom:1px solid rgba(201,162,39,.35)}
.hdr::after{content:"";display:block;height:2px;background:linear-gradient(90deg,transparent,var(--gold-500) 30%,var(--gold-500) 70%,transparent)}
.nav{display:flex;align-items:center;gap:14px;padding:13px 22px;max-width:var(--maxw);margin:0 auto}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:700;font-size:1.06rem;letter-spacing:.2px;white-space:nowrap}
.brand b{color:var(--gold-400);font-weight:800}
.mark{width:32px;height:32px;flex:none}
.topnav{display:flex;flex-wrap:wrap;gap:1px 13px;margin-left:auto;font-size:.83rem}
.topnav a{color:#CBD6E4;text-decoration:none;padding:5px 1px;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
.topnav a:hover{color:#fff;border-color:rgba(201,162,39,.5)}
.topnav a[aria-current]{color:#fff;border-color:var(--gold-500)}
.lang{color:var(--gold-400);text-decoration:none;font-weight:800;border:1.5px solid var(--gold-500);border-radius:var(--r-sm);padding:4px 11px;font-size:.78rem;letter-spacing:.5px}
.lang:hover{background:var(--gold-500);color:var(--navy-950)}
.mnav{display:none}
.mnav>button{background:none;border:1.5px solid var(--gold-500);color:var(--gold-400);border-radius:var(--r-sm);font-size:1.15rem;line-height:1;padding:6px 11px;cursor:pointer}
.mnav-panel{position:absolute;left:0;right:0;top:100%;background:var(--navy-800);border-bottom:3px solid var(--gold-500);display:none;flex-direction:column;padding:8px 22px 18px;max-height:min(72vh,560px);overflow:auto}
.mnav-panel a{color:#EAF0F7;text-decoration:none;padding:11px 2px;border-bottom:1px solid rgba(255,255,255,.08);font-size:.97rem}
.mnav.open .mnav-panel{display:flex}
/* no-JS fallback: details variant */
.mnav-nojs{display:none}
.mnav-nojs>summary{list-style:none;cursor:pointer;border:1.5px solid var(--gold-500);color:var(--gold-400);border-radius:var(--r-sm);font-size:1.15rem;padding:5px 11px}
.mnav-nojs>summary::-webkit-details-marker{display:none}
.mnav-nojs[open] .mnav-panel{display:flex}

/* ═══ HERO — data-led evidence composition ═══ */
.hero{position:relative;color:#fff;padding:64px 0 56px;overflow:hidden;
  background:radial-gradient(1200px 500px at 78% -10%,rgba(201,162,39,.14),transparent 60%),
             linear-gradient(155deg,var(--navy-950) 0%,var(--navy-900) 55%,var(--navy-800) 100%)}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);
  background-size:44px 44px;mask-image:radial-gradient(900px 480px at 30% 20%,#000 40%,transparent 78%)}
.hero .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:44px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.76rem;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold-400)}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--gold-500)}
.hero h1{margin:12px 0 14px;font-size:clamp(1.9rem,4.2vw,3.05rem);line-height:1.14;letter-spacing:.2px;max-width:16ch}
.hero .lede{margin:0 0 24px;color:#C7D3E2;font-size:1.12rem;max-width:56ch}
.contract{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}
.chip{display:inline-flex;align-items:baseline;gap:7px;background:rgba(255,255,255,.06);border:1px solid rgba(201,162,39,.45);border-radius:999px;padding:7px 15px;font-size:.82rem;color:#E7EDF5;backdrop-filter:blur(2px)}
.chip b{font-size:1.02rem;color:var(--gold-400)}
.chip .neq{color:#94A6BB;font-weight:700}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--gold-500);color:var(--navy-950);font-weight:800;text-decoration:none;padding:12px 22px;border-radius:var(--r-md);font-size:.94rem;box-shadow:0 4px 14px rgba(201,162,39,.28);transition:transform .12s,box-shadow .12s}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(201,162,39,.36)}
.btn.alt{background:transparent;color:var(--gold-400);border:1.6px solid var(--gold-500);box-shadow:none}
.btn.alt:hover{background:rgba(201,162,39,.12)}
.btn.ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.25);box-shadow:none}
/* hero evidence panel */
.hpanel{position:relative;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.03));border:1px solid rgba(201,162,39,.4);border-radius:var(--r-lg);padding:20px 20px 16px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.hpanel::before{content:"";position:absolute;left:-1px;top:18px;bottom:18px;width:3px;background:linear-gradient(180deg,var(--gold-500),var(--teal-600));border-radius:3px}
.hpanel h2{margin:0 0 4px;font-size:.8rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-400)}
.hpanel .sub{margin:0 0 14px;font-size:.8rem;color:#9FB0C4}
.hchain{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.hchain li{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;background:rgba(7,21,39,.55);border:1px solid rgba(255,255,255,.09);border-radius:var(--r-sm);padding:9px 12px;font-family:var(--font-sans);font-size:.84rem;color:#E4EAF2}
.hchain .n{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.72rem;background:rgba(201,162,39,.18);color:var(--gold-400);border:1px solid rgba(201,162,39,.5)}
.hchain .out{font-family:var(--font-mono);font-size:.7rem;color:var(--teal-100);background:rgba(30,127,116,.22);border:1px solid rgba(30,127,116,.5);padding:2px 8px;border-radius:999px;white-space:nowrap}
.hpanel .foot{margin:13px 2px 0;font-size:.72rem;color:#8FA2B8}
.hero.slim{padding:50px 0 42px}
.hero.slim .wrap{display:block}
.hero.slim h1{max-width:24ch}
.crumbs{position:relative;font-size:.78rem;color:#9AB0C6;margin:0 0 10px}
.crumbs a{color:#C6D4E4;text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.crumbs span{margin:0 7px;color:#5F7690}
.crumbs .sep{margin:0 7px;color:#5F7690}

/* ═══ SECTIONS ═══ */
main{padding:0 0 34px}
.sec{padding:52px 0 8px}
.sec.tint{background:linear-gradient(180deg,var(--paper-1),var(--paper-0));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sec.dark{background:linear-gradient(160deg,var(--navy-900),var(--navy-800));color:#E8EEF6}
.sec.dark h2,.sec.dark h3{color:#fff}
.sec .wrap>h2{font-size:clamp(1.35rem,2.6vw,1.85rem);color:var(--navy-900);margin:0 0 6px;letter-spacing:.2px}
.sec.dark .wrap>h2{color:#fff}
.kicker{font-size:.74rem;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold-500);margin:0 0 6px}
.secdesc{max-width:var(--maxw-text);color:var(--ink-600);margin:0 0 26px;font-size:1.03rem}
.sec.dark .secdesc{color:#B9C7D8}
.prose{max-width:var(--maxw-text)}
.prose p{margin:0 0 16px}
.prose h3{margin:32px 0 10px;color:var(--navy-900);font-size:1.18rem}
.prose h3{margin:26px 0 8px;color:var(--navy-800);font-size:1.03rem}
.prose ul{padding-left:22px;margin:0 0 16px}
.prose li{margin:5px 0}
.lead{font-size:1.12rem;color:var(--ink-600);max-width:var(--maxw-text)}

/* layered evidence surface */
.surface{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 28px;box-shadow:var(--shadow-1)}
.surface::before{content:"";position:absolute;left:0;top:22px;bottom:22px;width:3px;border-radius:3px;background:linear-gradient(180deg,var(--gold-500),var(--teal-600))}
.surface.grid-bg{background-image:linear-gradient(rgba(11,31,51,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(11,31,51,.035) 1px,transparent 1px);background-size:34px 34px;background-color:var(--card)}

/* ═══ CARDS ═══ */
.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(205px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--gold-500);border-radius:var(--r-md);padding:19px 21px;box-shadow:var(--shadow-1);transition:transform .14s,box-shadow .14s}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.card h3{margin:0 0 8px;font-size:1.02rem;color:var(--navy-900)}
.card p{margin:0;color:var(--ink-600);font-size:.93rem;line-height:1.6}
.card .tag{display:inline-block;margin-top:11px;font-size:.68rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--teal-600);background:var(--teal-100);border-radius:999px;padding:3px 10px}

/* premium stat card */
.stat{position:relative;background:linear-gradient(165deg,var(--navy-900),var(--navy-800));color:#fff;border:1px solid rgba(201,162,39,.35);border-radius:var(--r-md);padding:18px 19px 15px;overflow:hidden;transition:transform .14s,box-shadow .14s}
.stat:hover,.stat:focus-within{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.stat::after{content:"";position:absolute;right:-24px;top:-24px;width:84px;height:84px;border:1.5px solid rgba(201,162,39,.25);border-radius:20px;transform:rotate(18deg)}
.stat .micro{font-size:.64rem;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:#93A7BD}
.stat .n{font-size:2.05rem;font-weight:800;color:var(--gold-400);line-height:1.12;margin:3px 0 2px;font-family:var(--font-sans)}
.stat .l{font-size:.9rem;color:#E7EDF5;font-family:var(--font-sans);font-weight:600}
.stat .s{font-size:.76rem;color:#9DB0C5;margin-top:5px;line-height:1.45}
.stat.hi{border-color:var(--gold-500);background:linear-gradient(165deg,#12263E,var(--navy-800))}
.stat.hi .micro{color:var(--gold-100)}

/* decision panel */
.decide{background:var(--navy-900);color:#EAF0F8;border-radius:var(--r-lg);border:1px solid rgba(201,162,39,.4);padding:24px 26px;box-shadow:var(--shadow-2)}
.decide h3{margin:0 0 16px;color:var(--gold-400);font-size:.86rem;letter-spacing:1.5px;text-transform:uppercase}
.decide .rows{display:grid;gap:12px}
.decide .row{display:grid;grid-template-columns:150px 1fr;gap:14px;padding:12px 14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:var(--r-sm)}
.decide .q{font-family:var(--font-sans);font-weight:700;font-size:.82rem;color:var(--gold-100)}
.decide .a{font-size:.9rem;color:#D7E0EC;line-height:1.55}

/* matrix card */
.matrix{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1)}
.matrix table{width:100%;border-collapse:collapse;min-width:620px}
.matrix th{background:var(--navy-900);color:#fff;text-align:left;padding:12px 15px;font-size:.82rem;letter-spacing:.4px}
.matrix td{padding:12px 15px;border-top:1px solid var(--line);font-size:.9rem;vertical-align:top}
.matrix tr:nth-child(even) td{background:var(--paper-1)}
.badge{display:inline-block;font-family:var(--font-sans);font-size:.68rem;font-weight:800;letter-spacing:.6px;border-radius:999px;padding:3px 10px}
.badge.ok{background:var(--teal-100);color:var(--teal-600)}
.badge.gold{background:var(--gold-100);color:var(--amber-600)}
.badge.dim{background:var(--paper-2);color:var(--ink-400)}
.badge.warn{background:var(--amber-100);color:var(--amber-600)}

/* timeline / pipeline */
.timeline{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0;counter-reset:tl}
.timeline li{position:relative;padding:18px 20px 16px 20px;counter-increment:tl}
.timeline li::before{content:counter(tl,decimal-leading-zero);position:absolute;left:20px;top:-13px;background:var(--gold-500);color:var(--navy-950);font-family:var(--font-sans);font-weight:800;font-size:.72rem;border-radius:999px;padding:4px 10px;box-shadow:var(--shadow-1)}
.timeline li::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--gold-500),var(--teal-600))}
.timeline h3{margin:10px 0 6px;font-size:.98rem;color:var(--navy-900)}
.timeline p{margin:0;font-size:.86rem;color:var(--ink-600)}
.timeline .out{display:inline-block;margin-top:9px;font-family:var(--font-mono);font-size:.68rem;color:var(--teal-600);background:var(--teal-100);border-radius:6px;padding:3px 8px}
.timeline .rvs{display:inline-block;margin-top:9px;margin-left:6px;font-family:var(--font-sans);font-size:.66rem;font-weight:700;color:var(--amber-600);background:var(--amber-100);border-radius:6px;padding:3px 8px}

/* evidence ledger */
.ledger{background:linear-gradient(180deg,#0D2238,var(--navy-900));border:1px solid rgba(201,162,39,.4);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-2)}
.ledger .lhead{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 22px;border-bottom:1px solid rgba(201,162,39,.3);color:var(--gold-400);font-family:var(--font-sans);font-weight:800;letter-spacing:1.2px;font-size:.8rem;text-transform:uppercase}
.ledger .lrow{display:grid;grid-template-columns:minmax(220px,1.4fr) auto auto minmax(210px,1fr) auto;gap:14px;align-items:center;padding:15px 22px;border-bottom:1px solid rgba(255,255,255,.07);color:#E5EBF3}
.ledger .lrow:last-child{border-bottom:0}
.ledger .doc{font-family:var(--font-sans);font-weight:600;font-size:.92rem}
.ledger .doc small{display:block;font-weight:400;color:#9DB0C5;font-size:.76rem;margin-top:3px}
.ledger .meta{font-family:var(--font-sans);font-size:.74rem;color:#AEBFD2;white-space:nowrap}
.ledger .sha{font-size:.68rem;color:#8FD6CB;word-break:break-all;line-height:1.5}
.ledger .dl a{font-family:var(--font-sans);font-size:.76rem;font-weight:700;color:var(--gold-400);text-decoration:none;border:1px solid rgba(201,162,39,.55);border-radius:var(--r-sm);padding:6px 12px;white-space:nowrap;display:inline-block;margin:2px 3px}
.ledger .dl a:hover{background:rgba(201,162,39,.15)}
.copysha{background:none;border:1px solid rgba(143,214,203,.5);color:#8FD6CB;border-radius:6px;font-size:.62rem;padding:3px 8px;cursor:pointer;font-family:var(--font-sans);margin-left:8px}
.copysha:hover{background:rgba(30,127,116,.2)}

/* callout / claim-safety */
.callout{display:grid;grid-template-columns:auto 1fr;gap:14px;background:var(--paper-1);border:1px solid var(--line);border-left:4px solid var(--teal-600);border-radius:var(--r-md);padding:16px 19px;margin:26px 0}
.callout .ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--teal-100);color:var(--teal-600);font-weight:800;font-family:var(--font-sans)}
.callout h3{margin:1px 0 5px;font-size:.92rem;color:var(--navy-900)}
.callout p{margin:0;font-size:.88rem;color:var(--ink-600)}
.callout.claim{border-left-color:var(--gold-500);background:linear-gradient(180deg,#FBF6E8,var(--paper-1))}
.callout.claim .ic{background:var(--gold-100);color:var(--amber-600)}
.callout.limit{border-left-color:var(--amber-600)}
.callout.limit .ic{background:var(--amber-100);color:var(--amber-600)}

/* visual spotlight */
.spot{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.9fr);gap:30px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow-1)}
.spot figure{margin:0}
.spot img{border-radius:var(--r-md);border:1px solid var(--line);display:block;box-shadow:var(--shadow-1)}
.spot figcaption{margin-top:10px;font-size:.82rem;color:var(--ink-400);font-family:var(--font-sans)}
.spot .side h3{margin:0 0 10px;color:var(--navy-900);font-size:1.12rem}
.spot .side p{margin:0 0 12px;font-size:.93rem;color:var(--ink-600)}
.spot.rev{grid-template-columns:minmax(260px,.9fr) minmax(0,1.25fr)}
.spot.rev figure{order:2}
figure.visual{margin:34px 0;text-align:center}
figure.visual img{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1)}
figure.visual figcaption{margin-top:10px;color:var(--ink-400);font-size:.85rem;font-family:var(--font-sans)}

/* FAQ */
.qa{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);margin:10px 0;overflow:hidden}
.qa summary{cursor:pointer;font-weight:700;padding:14px 18px;color:var(--navy-900);font-size:.95rem;list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";font-size:1.25rem;color:var(--gold-500);font-weight:800;transition:transform .15s}
.qa[open] summary::after{transform:rotate(45deg)}
.qa[open] summary{border-bottom:1px solid var(--line);background:var(--paper-1)}
.qa .ans{padding:13px 18px 16px;color:var(--ink-600);font-size:.93rem}
.qa .ans p{margin:0}
.minifaq h2,.minifaq h3{color:var(--navy-900)}
.faqtools{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 20px}
.faqtools input[type=search]{flex:1;min-width:230px;padding:11px 15px;border:1.5px solid var(--line);border-radius:var(--r-md);font-size:.95rem;font-family:var(--font-sans);background:var(--card)}
.faqcats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.faqcats a{font-family:var(--font-sans);font-size:.76rem;font-weight:700;text-decoration:none;color:var(--navy-800);background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:6px 13px}
.faqcats a:hover{background:var(--gold-100);border-color:var(--gold-500)}
.catdesc{max-width:var(--maxw-text);color:var(--ink-600);font-size:.92rem;margin:4px 0 14px}

/* asset gallery */
.assets{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:18px}
.asset{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-1);display:flex;flex-direction:column;transition:transform .14s,box-shadow .14s}
.asset:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.asset .thumb{aspect-ratio:16/9;background:var(--navy-900) center/cover no-repeat;display:block}
.asset .thumb.contain{background-size:contain;background-color:var(--paper-2)}
.asset .body{padding:13px 15px 14px;display:flex;flex-direction:column;gap:7px;flex:1}
.asset h3{margin:0;font-size:.86rem;color:var(--navy-900);line-height:1.35}
.asset .note{font-size:.76rem;color:var(--ink-400);line-height:1.5;flex:1}
.asset .rowtags{display:flex;flex-wrap:wrap;gap:6px}
.asset .dls{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}
.asset .dls a{font-family:var(--font-sans);font-size:.7rem;font-weight:700;color:var(--navy-800);border:1px solid var(--line);border-radius:6px;padding:4px 9px;text-decoration:none}
.asset .dls a:hover{border-color:var(--gold-500);background:var(--gold-100)}
.filterbar{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 22px}
.filterbar button{font-family:var(--font-sans);font-size:.76rem;font-weight:700;color:var(--navy-800);background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:7px 14px;cursor:pointer}
.filterbar button[aria-pressed=true]{background:var(--navy-900);color:var(--gold-400);border-color:var(--navy-900)}
.nojs-note{font-size:.78rem;color:var(--ink-400);margin:0 0 14px}

/* doc / feature cards */
.doccard{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--gold-500);border-radius:var(--r-md);padding:18px 19px;box-shadow:var(--shadow-1);display:flex;flex-direction:column;gap:8px}
.doccard h3{margin:0;font-size:.95rem;color:var(--navy-900)}
.doccard .meta{font-family:var(--font-sans);font-size:.72rem;color:var(--ink-400)}
.doccard p{margin:0;font-size:.86rem;color:var(--ink-600);flex:1}
.doccard .sha{font-size:.64rem;color:var(--teal-600);word-break:break-all}
.doccard .dls{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.doccard .dls a{font-family:var(--font-sans);font-size:.74rem;font-weight:700;color:var(--navy-950);background:var(--gold-500);border-radius:6px;padding:6px 12px;text-decoration:none}
.doccard .dls a.alt{background:var(--paper-2);color:var(--navy-800);border:1px solid var(--line)}

/* CTA band */
.ctaband{background:linear-gradient(135deg,var(--navy-900),var(--navy-800));color:#fff;border-radius:var(--r-lg);padding:34px 34px;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;border:1px solid rgba(201,162,39,.4);box-shadow:var(--shadow-2);margin:44px 0 10px}
.ctaband h2{margin:0 0 6px;font-size:1.35rem}
.ctaband p{margin:0;color:#B9C7D8;font-size:.95rem;max-width:60ch}

/* tables generic */
table.plain{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
table.plain th{background:var(--navy-900);color:#fff;text-align:left;padding:11px 14px;font-size:.82rem}
table.plain td{padding:11px 14px;border-top:1px solid var(--line);font-size:.9rem}
table.plain caption{caption-side:top;text-align:left;font-family:var(--font-sans);font-size:.8rem;color:var(--ink-400);padding:0 2px 8px}

/* footer */
.ftr{background:linear-gradient(180deg,var(--navy-900),var(--navy-950));color:#AFC0D3;margin-top:56px;border-top:3px solid var(--gold-500)}
.ftr .wrap{padding:34px 22px 26px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}
.ftr h3{margin:0 0 12px;color:#fff;font-size:.85rem;letter-spacing:1px;text-transform:uppercase}
.ftr a{color:#C9D6E5;text-decoration:none;display:block;padding:4px 0;font-size:.86rem;font-family:var(--font-sans)}
.ftr a:hover{color:var(--gold-400)}
.ftr .disc{font-size:.8rem;line-height:1.65;color:#93A7BD}
.truststrip{border-top:1px solid rgba(255,255,255,.1);padding:14px 22px;text-align:center;font-size:.74rem;color:#7E93AB;font-family:var(--font-sans)}
.truststrip b{color:var(--gold-400)}

/* utility */
.note{color:var(--ink-400);font-size:.88rem;border-left:3px solid var(--gold-500);padding-left:13px;max-width:var(--maxw-text)}
.hide{display:none!important}
.anchor-offset{scroll-margin-top:86px}

/* ═══ RESPONSIVE ═══ */
@media(max-width:1023px){.topnav{display:none}.mnav{display:block;margin-left:auto}.mnav-fallback .mnav{display:none}.mnav-fallback .mnav-nojs{display:block;margin-left:auto}}
@media(max-width:900px){
  .hero .wrap{grid-template-columns:1fr}.hpanel{max-width:560px}
  .spot,.spot.rev{grid-template-columns:1fr}.spot.rev figure{order:0}
  .ctaband{grid-template-columns:1fr}
  .ftr .wrap{grid-template-columns:1fr 1fr}
  .decide .row{grid-template-columns:1fr}
}
@media(max-width:640px){
  .hero{padding:46px 0 40px}.hero h1{font-size:1.72rem}
  .sec{padding:40px 0 6px}
  .ledger .lrow{grid-template-columns:1fr;gap:8px}
  .ledger .meta{white-space:normal}
  .ftr .wrap{grid-template-columns:1fr}
  .timeline{grid-template-columns:1fr}
  .timeline li{border-left:2px solid var(--gold-500);margin-left:12px}
  .timeline li::after{display:none}
  .timeline li::before{left:-14px;top:16px}
  .surface{padding:20px 18px}
  .contract{gap:8px}.chip{font-size:.76rem;padding:6px 12px}
}
@media(min-width:1440px){.wrap{max-width:1200px}.hero{padding:76px 0 66px}}

/* ═════════ v2.1 LAYER ═════════ */
/* header */
.hd{position:sticky;top:0;z-index:60;background:linear-gradient(180deg,var(--navy-950),rgba(9,20,36,.94));backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.hdrow{display:flex;align-items:center;gap:22px;min-height:62px}
.hd .brand{display:flex;align-items:center;gap:10px;color:var(--paper-0);font-weight:800;letter-spacing:.02em;white-space:nowrap}
.hd .brand b{color:var(--gold-400)}
.dnavwrap{flex:1;display:flex;justify-content:center}
.dnav{display:flex;gap:4px;list-style:none;margin:0;padding:0;flex-wrap:nowrap}
.dnav>li{position:relative}
.dnav a,.dnav button{display:flex;align-items:center;gap:7px;padding:9px 13px;border-radius:9px;color:var(--paper-0);background:none;border:0;font:inherit;font-size:.83rem;font-weight:600;letter-spacing:.02em;cursor:pointer;white-space:nowrap}
.dnav>li>a:hover,.dnav button:hover,.dnav button[aria-expanded="true"]{background:rgba(201,164,92,.14);color:var(--gold-400)}
.dnav .sub{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);min-width:250px;background:var(--navy-900);border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 22px 50px rgba(0,0,0,.45);opacity:0;visibility:hidden;translate:0 -6px;transition:.18s}
.dnav li.dd{position:relative}
.dnav li.dd:hover>.sub,.dnav .sub.open{opacity:1;visibility:visible;translate:0 0}
.dnav .sub .gdesc{font-size:.72rem;color:var(--paper-dim);margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.dnav .sub ul{list-style:none;margin:0;padding:0}
.dnav .sub a{display:block;padding:8px 10px;border-radius:8px;font-weight:500}
.dnav .sub a:hover{background:rgba(201,164,92,.12);color:var(--gold-400)}
.hdright{display:flex;align-items:center;gap:10px}
.hd .lang{border:1px solid var(--line);border-radius:9px;padding:7px 12px;color:var(--gold-400);font-weight:700;font-size:.8rem}
.mbtn{display:none;flex-direction:column;justify-content:center;gap:4px;width:42px;height:38px;border:1px solid var(--line);border-radius:9px;background:none;cursor:pointer;padding:0 9px}
.mbtn span{height:2px;background:var(--paper-0);border-radius:2px;transition:.2s}
.mbtn[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.mbtn[aria-expanded="true"] span:nth-child(2){opacity:0}
.mbtn[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mnavp{background:var(--navy-950);border-top:1px solid var(--line);padding:10px 18px 22px;max-height:calc(100vh - 62px);overflow:auto}
.mnavp[hidden]{display:none}
.macc{border-bottom:1px solid var(--line)}
.macc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:14px 4px;color:var(--paper-0);font-weight:700;cursor:pointer}
.macc summary::after{content:"+";color:var(--gold-400);font-size:1.2rem}
.macc[open] summary::after{content:"–"}
.mlinks{display:grid;gap:2px;padding:0 4px 12px}
.mlinks a,.msolo{display:block;padding:10px 12px;border-radius:8px;color:var(--paper-dim)}
.msolo{border-bottom:1px solid var(--line);color:var(--paper-0);font-weight:700;padding:14px 4px}
.mlinks a:hover{background:rgba(201,164,92,.1);color:var(--gold-400)}
.mnav-nojs{background:var(--navy-950)}
.mnav-nojs>summary{padding:12px 18px;color:var(--gold-400);cursor:pointer}
@media(max-width:1080px){.dnavwrap{display:none}.mbtn{display:flex}}
@media(min-width:1081px){.mbtn,.mnavp,.mnav-nojs{display:none!important}}
/* footer */
.ft{background:var(--navy-950);border-top:1px solid var(--line);padding:52px 0 30px;margin-top:70px}
.fgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:26px}
.fcol h3{font-size:.72rem;letter-spacing:.14em;color:var(--gold-400);margin:0 0 12px;text-transform:uppercase}
.fcol a{display:block;color:var(--paper-dim);font-size:.83rem;padding:4px 0}
.fcol a:hover{color:var(--gold-400)}
.fbase{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:34px;padding-top:20px;color:var(--paper-dim);font-size:.8rem}
.fnums{font-family:var(--font-mono);color:var(--gold-500)}
@media(max-width:980px){.fgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.fgrid{grid-template-columns:repeat(2,1fr)}.fbase{flex-direction:column}}
/* hero engine */
.hero .wrap-hero{display:block}
.hero-eng{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:44px;align-items:center}
.engine{width:100%;height:auto}
.engine .ring{fill:none;stroke:var(--line)}
.engine .r2{stroke-dasharray:3 6}
.engine .core circle{fill:var(--navy-900);stroke:var(--gold-400);stroke-width:1.6}
.engine .eh1{font:800 14px var(--font-sans);fill:var(--gold-400);letter-spacing:.14em}
.engine .eh2{font:600 9.5px var(--font-sans);fill:var(--paper-dim);letter-spacing:.06em}
.engine .eh3{font:800 10px var(--font-sans);fill:var(--gold-400);letter-spacing:.12em}
.engine .cmp rect{fill:var(--navy-800);stroke:var(--gold-400);stroke-opacity:.45;stroke-width:1.2}
.engine .cl{font:800 9.5px var(--font-sans);fill:var(--paper-0);letter-spacing:.08em}
.engine .cd{font:500 8.5px var(--font-sans);fill:var(--paper-dim)}
.engine .neqb circle{fill:var(--navy-900);stroke:var(--gold-400);stroke-width:2}
.engine .c0{font:800 12px var(--font-mono);fill:var(--gold-400)}
.engine .ringlab{font:600 8.6px var(--font-sans);fill:var(--paper-0)}
.engine .ncard rect{fill:var(--navy-800);stroke:var(--line);stroke-opacity:.35}
.engine .nv{font:800 9.5px var(--font-mono);fill:var(--gold-400)}
.engine .nl{font:600 8.2px var(--font-sans);fill:var(--paper-0)}
.engine .evh{font:800 9px var(--font-sans);fill:var(--gold-400);letter-spacing:.1em}
.engine .evd{font:600 8.6px var(--font-sans);fill:var(--paper-0)}
.engine .evx{font:500 7.2px var(--font-mono);fill:var(--paper-dim)}
.engine .mnum{font:800 8px var(--font-mono);fill:var(--gold-400)}
.engine .flowarr{fill:var(--gold-400)}
.engine .c1{font:800 30px var(--font-mono);fill:var(--gold-400)}
.engine .cneq{font:700 20px var(--font-mono);fill:var(--paper-0)}
.engine .c2{font:800 26px var(--font-mono);fill:var(--paper-0)}
.engine .node circle{fill:var(--navy-800);stroke:var(--gold-400);stroke-width:1.3}
.engine .node text{font:700 10px var(--font-mono);fill:var(--gold-400)}
.engine .ticker rect{fill:var(--navy-900);stroke:var(--line)}
.engine .ticker text{font:10px var(--font-mono);fill:var(--paper-dim)}
.engine .mod rect{fill:var(--navy-800);stroke:var(--gold-400);stroke-opacity:.5}
.engine .mod text{font:700 9px var(--font-sans);fill:var(--paper-0);letter-spacing:.06em}
.engine .flowline{stroke:var(--gold-400);stroke-width:2}
@media(prefers-reduced-motion:no-preference){.engine.desk .r1{animation:spin 80s linear infinite;transform-origin:260px 250px}}
@keyframes spin{to{transform:rotate(360deg)}}
.engine.mob{display:none}
@media(max-width:900px){.hero-eng{grid-template-columns:1fr}.engine.desk{display:none}.engine.mob{display:block;max-width:420px;margin:0 auto}}
/* signatures */
.sig{margin:6px 0 26px}
.sig svg{width:100%;height:auto;display:block}
/* flow beats + deep */
hr.beat{border:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-400),transparent);opacity:.45;margin:26px auto;max-width:220px}
details.deep{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,rgba(14,33,58,.05),transparent);margin:26px 0}
details.deep>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;cursor:pointer;font-weight:700;color:var(--navy-900)}
details.deep>summary em{font-style:normal;font-family:var(--font-mono);font-size:.74rem;color:var(--ink-400)}
details.deep>summary::before{content:"▸";color:var(--gold-500)}
details.deep[open]>summary::before{content:"▾"}
.deepin{padding:0 20px 18px}
/* ten surface */
.tensurface{--n:10}
.tensurface>input{position:absolute;opacity:0;pointer-events:none}
.tensurface label{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid var(--line);border-radius:11px;margin:0 8px 8px 0;cursor:pointer;font-size:.82rem;font-weight:600;background:var(--card,#fff)}
.tensurface label b{font-family:var(--font-mono);color:var(--gold-500)}
.tensurface .dpanels{border:1px solid var(--line);border-radius:16px;padding:26px;background:var(--card,#fff);margin-top:6px}
.tensurface .dpanel{display:none}
.tensurface .dpanel h3{margin-top:0;color:var(--navy-900)}
.tensurface dl{display:grid;grid-template-columns:170px 1fr;gap:9px 18px;margin:0}
.tensurface dt{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-500);font-weight:700}
.tensurface dd{margin:0;color:var(--ink-600)}
.tensurface #domtr0:checked~.dpanels .p0{display:block}
.tensurface #domtr0:checked~label[for="domtr0"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr0:checked~.dpanels .p0{display:block}
.tensurface #dommtr0:checked~label[for="dommtr0"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen0:checked~.dpanels .p0{display:block}
.tensurface #domen0:checked~label[for="domen0"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen0:checked~.dpanels .p0{display:block}
.tensurface #dommen0:checked~label[for="dommen0"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr1:checked~.dpanels .p1{display:block}
.tensurface #domtr1:checked~label[for="domtr1"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr1:checked~.dpanels .p1{display:block}
.tensurface #dommtr1:checked~label[for="dommtr1"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen1:checked~.dpanels .p1{display:block}
.tensurface #domen1:checked~label[for="domen1"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen1:checked~.dpanels .p1{display:block}
.tensurface #dommen1:checked~label[for="dommen1"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr2:checked~.dpanels .p2{display:block}
.tensurface #domtr2:checked~label[for="domtr2"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr2:checked~.dpanels .p2{display:block}
.tensurface #dommtr2:checked~label[for="dommtr2"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen2:checked~.dpanels .p2{display:block}
.tensurface #domen2:checked~label[for="domen2"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen2:checked~.dpanels .p2{display:block}
.tensurface #dommen2:checked~label[for="dommen2"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr3:checked~.dpanels .p3{display:block}
.tensurface #domtr3:checked~label[for="domtr3"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr3:checked~.dpanels .p3{display:block}
.tensurface #dommtr3:checked~label[for="dommtr3"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen3:checked~.dpanels .p3{display:block}
.tensurface #domen3:checked~label[for="domen3"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen3:checked~.dpanels .p3{display:block}
.tensurface #dommen3:checked~label[for="dommen3"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr4:checked~.dpanels .p4{display:block}
.tensurface #domtr4:checked~label[for="domtr4"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr4:checked~.dpanels .p4{display:block}
.tensurface #dommtr4:checked~label[for="dommtr4"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen4:checked~.dpanels .p4{display:block}
.tensurface #domen4:checked~label[for="domen4"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen4:checked~.dpanels .p4{display:block}
.tensurface #dommen4:checked~label[for="dommen4"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr5:checked~.dpanels .p5{display:block}
.tensurface #domtr5:checked~label[for="domtr5"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr5:checked~.dpanels .p5{display:block}
.tensurface #dommtr5:checked~label[for="dommtr5"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen5:checked~.dpanels .p5{display:block}
.tensurface #domen5:checked~label[for="domen5"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen5:checked~.dpanels .p5{display:block}
.tensurface #dommen5:checked~label[for="dommen5"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr6:checked~.dpanels .p6{display:block}
.tensurface #domtr6:checked~label[for="domtr6"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr6:checked~.dpanels .p6{display:block}
.tensurface #dommtr6:checked~label[for="dommtr6"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen6:checked~.dpanels .p6{display:block}
.tensurface #domen6:checked~label[for="domen6"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen6:checked~.dpanels .p6{display:block}
.tensurface #dommen6:checked~label[for="dommen6"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr7:checked~.dpanels .p7{display:block}
.tensurface #domtr7:checked~label[for="domtr7"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr7:checked~.dpanels .p7{display:block}
.tensurface #dommtr7:checked~label[for="dommtr7"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen7:checked~.dpanels .p7{display:block}
.tensurface #domen7:checked~label[for="domen7"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen7:checked~.dpanels .p7{display:block}
.tensurface #dommen7:checked~label[for="dommen7"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr8:checked~.dpanels .p8{display:block}
.tensurface #domtr8:checked~label[for="domtr8"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr8:checked~.dpanels .p8{display:block}
.tensurface #dommtr8:checked~label[for="dommtr8"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen8:checked~.dpanels .p8{display:block}
.tensurface #domen8:checked~label[for="domen8"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen8:checked~.dpanels .p8{display:block}
.tensurface #dommen8:checked~label[for="dommen8"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domtr9:checked~.dpanels .p9{display:block}
.tensurface #domtr9:checked~label[for="domtr9"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommtr9:checked~.dpanels .p9{display:block}
.tensurface #dommtr9:checked~label[for="dommtr9"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #domen9:checked~.dpanels .p9{display:block}
.tensurface #domen9:checked~label[for="domen9"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
.tensurface #dommen9:checked~.dpanels .p9{display:block}
.tensurface #dommen9:checked~label[for="dommen9"]{background:var(--navy-900);color:var(--paper-0);border-color:var(--gold-500)}
@media(max-width:760px){
.tensurface label{display:flex;margin:0 0 6px;justify-content:flex-start}
.tensurface dl{grid-template-columns:1fr}
.tensurface dt{margin-top:8px}
}
/* evidence layers / bridges / bands */
.evlayers .lay{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;background:var(--card,#fff)}
.evlayers summary{display:flex;gap:14px;align-items:center;padding:13px 16px;cursor:pointer;list-style:none}
.evlayers summary code{font-family:var(--font-mono);color:var(--gold-500);font-weight:700;min-width:170px}
.evlayers summary span{color:var(--ink-400);font-size:.86rem}
.evlayers .layin pre{margin:0;padding:12px 16px;border-top:1px dashed var(--line);font-family:var(--font-mono);font-size:.75rem;color:var(--ink-400)}
.bstrip{display:flex;gap:10px;flex-wrap:wrap;list-style:none;padding:0;margin:14px 0}
.bstrip li{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:.8rem;font-weight:600;color:var(--navy-900);background:var(--card,#fff)}
.bstrip svg{color:var(--gold-500)}
.vband{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:14px;overflow-x:auto;padding:6px 2px 14px;scroll-snap-type:x mandatory}
.vband .vb{scroll-snap-align:start;border-radius:12px;overflow:hidden;border:1px solid var(--line);display:block}
.vband img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
/* gallery v2 */
.ggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:1020px){.ggrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.ggrid{grid-template-columns:1fr}}
.gcard{margin:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--card,#fff);display:flex;flex-direction:column}
.gcard .gopen{display:block;position:relative}
.gcard .gopen::after{content:"⤢";position:absolute;right:10px;bottom:10px;background:rgba(9,20,36,.75);color:var(--gold-500);border-radius:8px;padding:3px 9px;font-size:.85rem}
.gcard img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.gcard figcaption{padding:15px 16px 17px}
.gcard h3{margin:0 0 4px;font-family:var(--font-mono);color:var(--navy-900);font-size:.95rem}
.gcard .cap{margin:0 0 6px;font-size:.85rem;color:var(--ink-600)}
.gcard .use{margin:0 0 10px;font-size:.76rem;color:var(--ink-400)}
.gcard .dls{display:flex;flex-wrap:wrap;gap:8px}
.gcard .dls a,.gcard .copy{border:1px solid var(--line);border-radius:8px;padding:6px 11px;font-size:.74rem;font-weight:700;background:none;cursor:pointer;color:var(--navy-900)}
.gcard .dls a:hover,.gcard .copy:hover{border-color:var(--gold-500);color:var(--gold-500)}
.gcard .copy.done{background:var(--gold-500);color:var(--navy-950);border-color:var(--gold-500)}
.lightbox{position:fixed;inset:0;background:rgba(6,13,24,.92);display:none;z-index:120;padding:4vh 4vw;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.lightbox:target{display:flex}
.lightbox img{max-width:min(1100px,92vw);max-height:74vh;width:auto;height:auto;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.lightbox p{color:var(--paper-0);font-size:.9rem;text-align:center;max-width:760px}
.lbx{position:absolute;top:18px;right:26px;color:var(--gold-500);font-size:2rem;line-height:1;text-decoration:none}
/* banner gallery */
.bgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media(max-width:900px){.bgrid{grid-template-columns:1fr}}
.bcard{margin:0;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--card,#fff)}
.bframe{display:flex;justify-content:center;align-items:center;background:repeating-conic-gradient(rgba(14,33,58,.06) 0 25%,transparent 0 50%) 0 0/18px 18px;border:1px dashed var(--line);border-radius:10px;padding:14px;overflow-x:auto}
.bframe img{width:min(100%,calc(var(--bw)*1px));height:auto;aspect-ratio:var(--bw)/var(--bh);display:block}
.bcard figcaption{padding-top:12px}
.bcard h3{margin:0 0 8px;font-family:var(--font-mono);color:var(--navy-900)}
/* logo gallery */
.lgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media(max-width:820px){.lgrid{grid-template-columns:1fr}}
.lcard{margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card,#fff)}
.ldual{display:grid;grid-template-columns:1fr 1fr}
.lbg{display:flex;align-items:center;justify-content:center;padding:22px;min-height:140px}
.lbg.dark{background:var(--navy-950)}
.lbg.light{background:#fff;border-left:1px solid var(--line)}
.lbg img{max-width:82%;height:auto}
.lcard figcaption{padding:14px 16px 16px}
.donts{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:12px 0 0}
.donts li{display:inline-flex;align-items:center;gap:8px;border:1px solid #c25757;color:#c25757;border-radius:999px;padding:7px 12px;font-size:.76rem;font-weight:700}

.ncfig{margin:0}.ncfig img{width:100%;max-width:760px;height:auto;display:block;margin:0 auto;border:1px solid var(--line);border-radius:14px}.ncfig figcaption{text-align:center;font-size:.82rem;color:var(--ink-400);margin-top:10px}

.capcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.capcard{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px 20px}
.capcard .capnum{font:800 1.9rem var(--font-mono);color:var(--gold-500)}
.capcard h3{margin:.35rem 0 .5rem;font-size:1.02rem}
.capcard p{margin:0;font-size:.93rem;color:var(--ink-600)}
.capcard .caplimit{margin-top:.6rem;font-size:.86rem;color:var(--ink-400)}
.scopegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.scopebox{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--gold-500);border-radius:12px;padding:18px}
.scopebox h3{margin:0 0 .4rem;font-size:.98rem}.scopebox p{margin:0;font-size:.9rem;color:var(--ink-600)}
.ctaline{margin-top:14px}

.dsumgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.dsum{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 14px 12px}
.dsum b{font:800 11px var(--font-mono);color:var(--gold-500)}
.dsum h3{margin:6px 0 4px;font-size:.92rem;color:var(--navy-900)}
.dsum p{margin:0;font-size:.8rem;color:var(--ink-400);line-height:1.45}
@media(max-width:1000px){.dsumgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.dsumgrid{grid-template-columns:1fr}}

.tdgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-top:14px}
.tdcard{background:var(--paper-1,#fff);border:1px solid var(--line);border-radius:14px;padding:16px 16px 12px;display:flex;flex-direction:column;gap:8px}
.tint .tdcard{background:rgba(255,255,255,.55)}
.tdtop{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.tdtop h3{margin:0;font-size:1rem;line-height:1.25}
.tdstage{flex:none;font-size:.66rem;font-weight:800;letter-spacing:.06em;color:var(--navy-800);background:var(--gold-100,#F3E8C8);border:1px solid var(--gold-400);border-radius:999px;padding:3px 9px;white-space:nowrap}
.tddesc{margin:0;font-size:.9rem;color:var(--ink-700)}
.tdrel{margin:0;font-size:.8rem;color:var(--ink-400)}
.tdfoot{margin:auto 0 0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:6px}
.tdbtn{font-weight:700;font-size:.86rem}
.tdext{font-size:.68rem;letter-spacing:.05em;color:var(--ink-400);border:1px solid var(--line);border-radius:6px;padding:2px 7px}
@media(max-width:560px){.tdgrid{grid-template-columns:1fr}}
