@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Serif:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=IBM+Plex+Sans:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@300;400;500;600&display=swap');

:root{
  --paper:#f4f1ea; --paper-soft:#ece8de; --card:#fbf9f4; --card-elev:#ffffff;
  --rule:#d6d0c1; --rule-soft:#e4dfd2;
  --ink:#11202e; --ink-strong:#000814; --ink-mid:#4a5a6b; --ink-soft:#7a8794; --ink-faint:#a8b1bb;
  --navy:#1a2f4f; --navy-2:#0e1c2f; --brass:#3d7a55; --gold:#b08828; --radar:#7dd49a;
  --pos:#1f6f44; --caut:#a06a10; --neg:#9c3838; --energy:#a64a17;
  --pos-tint:rgba(31,111,68,0.08); --caut-tint:rgba(160,106,16,0.09); --neg-tint:rgba(156,56,56,0.08);
  --serif:'IBM Plex Serif',Georgia,serif; --sans:'IBM Plex Sans',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
  /* backward-compat aliases for legacy inline styles retained in page source */
  --muted:var(--ink-mid); --green:var(--brass); --green-dim:#2f6042; --greend:var(--brass);
  --line:var(--rule); --panel:var(--card-elev); --panel-2:var(--paper-soft); --red:var(--neg); --amber:var(--caut);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);background:var(--paper);color:var(--ink);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;}
body::before{content:'';position:fixed;inset:0;background:radial-gradient(1200px 800px at 18% -12%,rgba(26,47,79,0.05),transparent 60%),radial-gradient(900px 620px at 100% 108%,rgba(61,122,85,0.05),transparent 60%);pointer-events:none;z-index:0;}
::-webkit-scrollbar{width:8px;height:8px;}::-webkit-scrollbar-thumb{background:var(--rule);border-radius:4px;}
a{color:var(--brass);text-decoration:none;}
a:hover{color:var(--navy);text-decoration:underline;text-underline-offset:3px;}
.wrap{max-width:1180px;margin:0 auto;padding:0 40px;position:relative;z-index:1;}

/* ── Masthead ── */
.masthead{background:linear-gradient(180deg,#0e1c2f 0%,#1a2f4f 100%);color:#e8eef7;position:relative;overflow:hidden;}
.masthead::after{content:'';position:absolute;top:-60px;right:-30px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(125,212,154,0.10),transparent 65%);pointer-events:none;}
.mh-meta{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:9.5px;letter-spacing:0.22em;text-transform:uppercase;color:#9fb2c9;border-bottom:1px solid rgba(255,255,255,0.10);padding:9px 0 8px;}
.mh-body{display:flex;justify-content:space-between;align-items:center;padding:20px 0 20px;gap:32px;}
.mh-left{display:flex;align-items:center;gap:18px;}
.mh-mark{width:54px;height:54px;border:1.5px solid var(--radar);background:rgba(125,212,154,0.05);border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}
.mh-mark::before{content:'';position:absolute;inset:5px;border:1px solid rgba(125,212,154,0.55);border-radius:50%;}
.mh-mark::after{content:'';width:6px;height:6px;background:var(--radar);border-radius:50%;box-shadow:0 0 12px rgba(125,212,154,0.85);z-index:2;}
.mh-mark .sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from -20deg,rgba(125,212,154,0.42) 0deg,rgba(125,212,154,0) 55deg,transparent 360deg);animation:radar-sweep 4.5s linear infinite;}
@keyframes radar-sweep{to{transform:rotate(360deg);}}
.mh-firm{font-family:var(--serif);font-size:27px;font-weight:400;letter-spacing:-0.01em;line-height:1.05;color:#fff;}
.mh-firm .amp{color:var(--radar);font-style:italic;font-weight:300;}
.mh-tagline{font-family:var(--serif);font-size:12.5px;font-style:italic;color:#9fb2c9;margin-top:3px;}
.mh-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:flex-end;}
.mh-nav a{font-family:var(--mono);font-size:10.5px;letter-spacing:0.12em;text-transform:uppercase;color:#9fb2c9;}
.mh-nav a:hover{color:#fff;text-decoration:none;}
.mh-nav a.cta{color:var(--navy-2);background:var(--radar);padding:8px 16px;font-weight:500;}
.mh-nav a.cta:hover{background:#95e0af;color:var(--navy-2);}

/* ── Buttons ── */
.btn-row{display:flex;gap:14px;flex-wrap:wrap;}
.btn{display:inline-flex;align-items:center;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;padding:13px 24px;border:1px solid transparent;transition:background .15s,color .15s,border-color .15s;}
.btn-primary{background:var(--navy);color:#eef3f9;}
.btn-primary:hover{background:var(--navy-2);color:#fff;text-decoration:none;}
.btn-ghost{background:transparent;border-color:var(--ink);color:var(--ink);}
.btn-ghost:hover{background:var(--ink);color:var(--paper);text-decoration:none;}

/* ── Section framing ── */
section{padding:66px 0;position:relative;z-index:1;}
section.alt{background:var(--paper-soft);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);}
.section-head{display:flex;align-items:baseline;gap:16px;padding-bottom:10px;border-bottom:1px solid var(--ink);margin-bottom:34px;}
.sh-num{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--brass);letter-spacing:0.18em;}
.sh-label{font-family:var(--serif);font-size:15px;font-weight:500;color:var(--ink-strong);flex:1;letter-spacing:0.01em;}
.sh-meta{font-family:var(--mono);font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-soft);}
.kicker{font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:var(--brass);}
h1{font-family:var(--serif);font-weight:400;}
h2{font-family:var(--serif);font-size:30px;font-weight:400;line-height:1.14;letter-spacing:-0.01em;color:var(--ink-strong);margin:12px 0 16px;}
h3{font-family:var(--serif);font-size:19px;font-weight:500;color:var(--ink-strong);}
.section-lede{font-family:var(--serif);font-size:18px;font-weight:300;color:var(--ink-mid);max-width:720px;margin-bottom:32px;line-height:1.55;}

/* ── Hero ── */
.hero{padding:70px 0 74px;border-bottom:1px solid var(--rule);}
.hero-grid{display:grid;grid-template-columns:1.35fr 0.85fr;gap:48px;align-items:center;}
.hero-kick{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--brass);}
.hero h1{font-size:clamp(38px,4.6vw,56px);line-height:1.05;letter-spacing:-0.015em;color:var(--ink-strong);margin:16px 0 0;max-width:14ch;}
.hero h1 .accent{color:var(--brass);font-style:italic;font-weight:300;}
.hero .lede{font-family:var(--serif);font-size:19px;font-weight:300;color:var(--ink-mid);line-height:1.6;margin:22px 0 32px;max-width:52ch;}
.hero .lede b{color:var(--ink-strong);font-weight:500;}
.hero-panel{border:1px solid var(--rule);border-top:3px solid var(--navy);background:var(--card-elev);padding:26px 24px 22px;}
.hp-label{font-family:var(--mono);font-size:9.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--ink-soft);display:flex;align-items:center;gap:8px;}
.hp-label::after{content:'';flex:1;height:1px;background:var(--rule);}
.hp-live{width:7px;height:7px;border-radius:50%;background:var(--brass);box-shadow:0 0 0 0 rgba(61,122,85,.5);animation:pulse 2.2s ease-out infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(61,122,85,.45);}70%{box-shadow:0 0 0 8px rgba(61,122,85,0);}100%{box-shadow:0 0 0 0 rgba(61,122,85,0);}}
.hp-radar-wrap{display:flex;justify-content:center;padding:14px 0 6px;}
.hp-caption{font-family:var(--mono);font-size:10px;letter-spacing:0.1em;color:var(--ink-mid);text-align:center;line-height:1.7;border-top:1px solid var(--rule);padding-top:14px;}
.hp-caption b{color:var(--ink-strong);}

/* ── Radar mark ── */
.radar{width:210px;height:210px;position:relative;}
.radar .ring{position:absolute;border:1px solid rgba(61,122,85,0.30);border-radius:50%;inset:0;}
.radar .ring.r2{inset:18%;}.radar .ring.r3{inset:36%;}
.radar .cross{position:absolute;background:rgba(61,122,85,0.14);}
.radar .cross.h{left:0;right:0;top:50%;height:1px;}.radar .cross.v{top:0;bottom:0;left:50%;width:1px;}
.radar .sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgba(61,122,85,0.40),rgba(61,122,85,0.05) 60deg,transparent 90deg);animation:radarspin 4.5s linear infinite;}
@keyframes radarspin{to{transform:rotate(360deg);}}
.radar .blip{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--brass);animation:blip 4.5s ease-out infinite;}
.radar .blip.warn{background:var(--neg);}
@keyframes blip{0%,18%{opacity:0}22%{opacity:1}65%{opacity:.85}100%{opacity:0}}
.radar .core{position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4.5px;border-radius:50%;background:var(--brass);box-shadow:0 0 14px rgba(61,122,85,.7);}

/* ── Statement pull-quote ── */
.statement{background:var(--card);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:center;padding:64px 0;}
.statement .q{font-family:var(--serif);font-size:clamp(28px,3.6vw,42px);font-weight:400;line-height:1.14;letter-spacing:-0.01em;color:var(--ink-strong);}
.statement .q .g{color:var(--brass);font-style:italic;font-weight:300;}
.statement p{font-family:var(--serif);font-size:16px;font-weight:300;color:var(--ink-mid);max-width:660px;margin:22px auto 0;line-height:1.65;}

/* ── Beats (numbered columns) ── */
.beats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0;border:1px solid var(--rule);background:var(--rule);}
.beat{background:var(--card-elev);padding:26px 26px 28px;}
.beat .n{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:0.2em;color:var(--brass);border-bottom:1px solid var(--rule);padding-bottom:10px;margin-bottom:14px;display:block;}
.beat h3{margin-bottom:10px;}
.beat p{color:var(--ink-mid);font-size:14.5px;line-height:1.65;}
.beat p b{color:var(--ink-strong);font-weight:600;}

/* ── Pipeline ── */
.pipeline{display:flex;gap:0;flex-wrap:wrap;border:1px solid var(--rule);background:var(--rule);margin-bottom:22px;}
.stage{flex:1 1 190px;background:var(--card-elev);padding:20px 20px 22px;position:relative;}
.stage .tag{font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:var(--brass);}
.stage .name{font-family:var(--serif);font-size:24px;font-weight:400;margin:6px 0 8px;color:var(--ink-strong);}
.stage p{color:var(--ink-mid);font-size:13px;line-height:1.55;}
/* ── Pillars ── */
.pillars-demo{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:16px;}
.pd{background:var(--card-elev);border:1px solid var(--rule);border-top:3px solid var(--brass);padding:22px;}
.pd .letter{font-family:var(--serif);font-size:34px;font-weight:300;color:var(--brass);line-height:1;}
.pd .pts{font-family:var(--mono);font-size:10px;color:var(--ink-soft);margin-left:8px;letter-spacing:0.12em;text-transform:uppercase;}
.pd h4{font-family:var(--serif);font-size:16px;font-weight:500;margin:10px 0 8px;color:var(--ink-strong);}
.pd p{color:var(--ink-mid);font-size:13px;line-height:1.55;}
.pd p b{color:var(--ink-strong);}
.pd .bar{height:6px;background:var(--paper-soft);margin-top:16px;overflow:hidden;}
.pd .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--brass),var(--pos));transition:width 1.1s cubic-bezier(.2,.7,.2,1);}
.pd.in .bar i{width:var(--w);}

/* ── Sector strip (dashboard tick idiom) ── */
.demo-note{font-family:var(--mono);font-size:11px;color:var(--ink-mid);letter-spacing:0.04em;margin-bottom:16px;}
.mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);}
.mini-tile{background:var(--card-elev);padding:14px 16px;cursor:pointer;transition:background .12s;}
.mini-tile:hover{background:var(--card);}
.mini-tile.sel{background:var(--caut-tint);outline:2px solid var(--caut);outline-offset:-2px;position:relative;z-index:1;}
.mini-head{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--serif);font-size:15px;font-weight:500;color:var(--ink-strong);}
.mini-dir{font-family:var(--mono);font-size:11px;font-weight:500;}
.mini-dir.up{color:var(--pos);}.mini-dir.down{color:var(--neg);}.mini-dir.flat{color:var(--caut);}
.mini-sub{font-family:var(--mono);font-size:10.5px;color:var(--ink-mid);margin-top:6px;letter-spacing:0.02em;}
.mini-conf{height:3px;background:var(--paper-soft);margin-top:10px;overflow:hidden;}
.mini-conf i{display:block;height:100%;background:linear-gradient(90deg,var(--brass),var(--pos));}
.mini-detail{grid-column:1/-1;background:var(--card);border-top:2px solid var(--brass);padding:16px 20px;font-size:13.5px;color:var(--ink-mid);line-height:1.6;display:none;}
.mini-detail.show{display:block;}
.mini-detail b{color:var(--ink-strong);font-family:var(--serif);font-size:15px;}

/* ── Gateways index ── */
.gates{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);}
.gate{background:var(--card-elev);padding:26px 24px 24px;display:flex;flex-direction:column;color:var(--ink-mid);transition:background .14s;position:relative;}
.gate:hover{background:var(--card);text-decoration:none;}
.gate .gi{width:46px;height:46px;border:1px solid var(--brass);display:flex;align-items:center;justify-content:center;margin-bottom:16px;background:var(--pos-tint);}
.gate h3{color:var(--ink-strong);font-size:18px;margin-bottom:8px;}
.gate p{font-size:13.5px;line-height:1.6;flex:1;}
.gate .go{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--brass);margin-top:16px;}
.gate:hover .go{text-decoration:underline;text-underline-offset:3px;}
.badge{display:inline-block;background:var(--pos-tint);color:var(--brass);border:1px solid var(--brass);font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:0.12em;padding:2px 8px;text-transform:uppercase;vertical-align:middle;}

/* ── Trust ── */
.trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);}
.trust .tr{background:var(--card-elev);padding:22px 24px;}
.trust .tr b{font-family:var(--serif);color:var(--ink-strong);display:block;font-size:16px;font-weight:500;margin-bottom:8px;}
.trust .tr p{color:var(--ink-mid);font-size:13.5px;line-height:1.6;margin:0;}

/* ── Stats (market-strip idiom) ── */
.stats-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-top:3px solid var(--navy);}
.stat{background:var(--card-elev);padding:20px 18px;text-align:left;}
.stat .num{font-family:var(--serif);font-size:42px;font-weight:300;color:var(--navy);line-height:1;letter-spacing:-0.02em;}
.stat .lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-soft);margin-top:8px;}

/* ── Final CTA (navy band) ── */
.cta-band{background:linear-gradient(180deg,#0e1c2f 0%,#1a2f4f 100%);color:#e8eef7;text-align:center;padding:80px 0;position:relative;overflow:hidden;}
.cta-band::after{content:'';position:absolute;top:-80px;left:50%;transform:translateX(-50%);width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(125,212,154,0.08),transparent 62%);pointer-events:none;}
.cta-band .kicker{color:var(--radar);}
.cta-band h2{color:#fff;font-size:clamp(26px,3.4vw,40px);margin-top:12px;}
.cta-band h2 .g{color:var(--radar);font-style:italic;font-weight:300;}
.cta-band p{color:#9fb2c9;font-family:var(--serif);font-size:17px;font-weight:300;max-width:560px;margin:16px auto 30px;}
.cta-band .btn-ghost{border-color:rgba(255,255,255,0.5);color:#eef3f9;}
.cta-band .btn-ghost:hover{background:#fff;color:var(--navy);}
.cta-band .fine-cta{color:#7f96b1;font-family:var(--mono);font-size:11px;letter-spacing:0.04em;margin-top:20px;}
.cta-band .fine-cta a{color:var(--radar);}

/* ── Footer / colofon ── */
footer{background:var(--paper-soft);border-top:1px solid var(--ink);padding:40px 0 52px;position:relative;z-index:1;}
footer .foot-top{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:baseline;}
footer strong{font-family:var(--serif);font-size:15px;letter-spacing:0.02em;color:var(--ink-strong);}
footer .links{display:flex;gap:22px;flex-wrap:wrap;}
footer .links a{font-family:var(--mono);font-size:10.5px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-mid);}
footer .fine{color:var(--ink-mid);font-size:12px;max-width:820px;line-height:1.6;margin-top:20px;padding-top:16px;border-top:1px solid var(--rule);}
footer .copyright{font-family:var(--mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-soft);margin-top:14px;}

/* ── Reveal ── */
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease;}
.rv.in{opacity:1;transform:none;}

@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:32px;}
  .hero-panel{max-width:420px;}
  .mh-body{flex-direction:column;align-items:flex-start;gap:16px;}
  .mh-nav{justify-content:flex-start;}
  .wrap{padding:0 22px;}
}
@media(max-width:640px){
  .mh-firm{font-size:22px;}
  .hero h1{font-size:34px;}
  h2{font-size:25px;}
}
/* ── OPTION F · NAVY FIELD — bold, dark institutional ── */
.hero{background:linear-gradient(180deg,#0b1930 0%,#1a2f4f 100%);border-bottom:none;color:#e8eef7;position:relative;overflow:hidden;padding:76px 0 82px;}
.hero::after{content:'';position:absolute;right:-140px;top:50%;transform:translateY(-50%);width:660px;height:660px;border-radius:50%;background:conic-gradient(from 0deg,rgba(125,212,154,0.15),rgba(125,212,154,0.02) 70deg,transparent 115deg);animation:radarspin 6s linear infinite;pointer-events:none;}
.hero .wrap{position:relative;z-index:1;}
.hero .hero-kick{color:var(--radar);}
.hero h1{color:#fff;}
.hero h1 .accent{color:var(--radar);}
.hero .lede{color:#b7c6da;}
.hero .lede b{color:#fff;}
.hero .btn-primary{background:var(--radar);color:var(--navy-2);}
.hero .btn-primary:hover{background:#95e0af;color:var(--navy-2);}
.hero .btn-ghost{border-color:rgba(255,255,255,0.45);color:#eef3f9;}
.hero .btn-ghost:hover{background:#fff;color:var(--navy);}
.hero-panel{background:rgba(255,255,255,0.045);border-color:rgba(125,212,154,0.28);border-top-color:var(--radar);}
.hp-label{color:#9fb2c9;}
.hp-label::after{background:rgba(255,255,255,0.14);}
.hp-live{background:var(--radar);}
.hp-caption{color:#9fb2c9;border-top-color:rgba(255,255,255,0.14);}
.hp-caption b{color:#fff;}
.hero .radar .ring{border-color:rgba(125,212,154,0.35);}
.hero .radar .cross{background:rgba(125,212,154,0.16);}
.hero .radar .sweep{background:conic-gradient(from 0deg,rgba(125,212,154,0.45),rgba(125,212,154,0.06) 60deg,transparent 90deg);}
.hero .radar .blip{background:var(--radar);}
.hero .radar .blip.warn{background:#ff8f7a;}
.hero .radar .core{background:var(--radar);box-shadow:0 0 14px rgba(125,212,154,.8);}
.statement{background:linear-gradient(180deg,#0e1c2f 0%,#1a2f4f 100%);border-color:rgba(255,255,255,0.08);}
.statement .q{color:#fff;}
.statement .q .g{color:var(--radar);}
.statement p{color:#9fb2c9;}
.stats-band{background:#2a4468;border:1px solid #2a4468;border-top:3px solid var(--radar);}
.stats-band .stat{background:var(--navy);}
.stats-band .stat .num{color:var(--radar);}
.stats-band .stat .lbl{color:#9fb2c9;}


/* ===================================================================
   MULTI-PAGE SHARED COMPONENTS — Theme F (Navy Field)
   Used by about / system / subscribe / sample-brief / merch / track-record
   =================================================================== */
.mh-left{text-decoration:none;color:inherit;}
.mh-nav a.active{color:#fff;border-bottom:2px solid var(--radar);padding-bottom:3px;}
footer .foot-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:baseline;}

/* ---- Prose ---- */
.prose{max-width:760px;}
.prose p{margin-bottom:18px;color:var(--ink-mid);font-size:15.5px;line-height:1.7;}
.prose strong{color:var(--ink-strong);font-weight:600;}
.prose a{font-weight:500;}
.prose h3{margin:26px 0 8px;}

/* ---- FAQ ---- */
.faq-item{border-bottom:1px solid var(--rule);padding:20px 0;}
.faq-item h3{color:var(--ink-strong);font-size:17px;}
.faq-item p{color:var(--ink-mid);font-size:14.5px;margin-top:6px;line-height:1.65;}

/* ---- Disclaimer box ---- */
.disclaimer-box{background:var(--card-elev);border:1px solid var(--rule);border-left:4px solid var(--caut);padding:20px 24px;margin:16px 0;font-size:13.5px;color:var(--ink-mid);line-height:1.65;}
.disclaimer-box strong{color:var(--ink-strong);font-family:var(--serif);font-weight:600;}

/* ---- Grid + card ---- */
.grid{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule);}
.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));}
.card{background:var(--card-elev);padding:26px;}
.card h3{color:var(--ink-strong);}
.card p{color:var(--ink-mid);font-size:14.5px;line-height:1.65;}
.card .big{font-family:var(--serif);color:var(--brass);font-size:32px;font-weight:300;}

/* ---- Pillars (system) ---- */
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:22px;}
.pillar{background:var(--card-elev);border-top:3px solid var(--brass);padding:22px;}
.pillar .letter{font-family:var(--serif);font-size:30px;font-weight:300;color:var(--brass);}
.pillar .pts{font-family:var(--mono);font-size:11px;color:var(--ink-soft);margin-left:8px;letter-spacing:.1em;text-transform:uppercase;}
.pillar p{color:var(--ink-mid);font-size:14px;margin-top:8px;line-height:1.6;}
.pillar em{color:var(--ink-strong);font-style:italic;}

/* ---- Regime ladder (system) ---- */
.ladder{margin:22px 0;border:1px solid var(--rule);}
.rung{display:flex;justify-content:space-between;padding:11px 18px;font-family:var(--mono);font-size:13px;border-bottom:1px solid var(--rule-soft);background:var(--card-elev);color:var(--ink);}
.rung:last-child{border-bottom:none;}
.rung .pct{color:var(--ink-soft);}
.rung.hot{border-left:4px solid var(--pos);}
.rung.warm{border-left:4px solid var(--caut);}
.rung.cold{border-left:4px solid var(--neg);}

/* ---- Pricing tiers (subscribe) ---- */
.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;align-items:stretch;}
.tier{background:var(--card-elev);border:1px solid var(--rule);padding:30px;display:flex;flex-direction:column;}
.tier.featured{border-top:3px solid var(--brass);background:linear-gradient(180deg,var(--pos-tint),transparent 42%),var(--card-elev);}
.tier .price{font-family:var(--serif);font-size:44px;font-weight:300;color:var(--ink-strong);margin:12px 0 2px;letter-spacing:-.02em;}
.tier .price .per{font-family:var(--mono);font-size:14px;color:var(--ink-soft);letter-spacing:0;}
.tier .per{font-family:var(--mono);color:var(--ink-soft);font-size:12px;letter-spacing:.03em;display:block;}
.tier ul{list-style:none;margin:22px 0 26px;flex:1;padding:0;}
.tier li{padding:8px 0 8px 26px;position:relative;color:var(--ink-mid);font-size:14px;line-height:1.55;border-bottom:1px solid var(--rule-soft);}
.tier li:last-child{border-bottom:none;}
.tier li::before{content:"\2713";position:absolute;left:0;color:var(--brass);font-weight:700;}
.tier li.no{color:var(--ink-soft);}
.tier li.no::before{content:"\2014";color:var(--ink-soft);}

/* ---- Clean table (sample-brief) ---- */
table.clean{width:100%;border-collapse:collapse;font-size:14.5px;margin:20px 0;}
table.clean th{text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);padding:11px 14px;border-bottom:1px solid var(--ink);}
table.clean td{padding:12px 14px;border-bottom:1px solid var(--rule-soft);color:var(--ink-mid);vertical-align:top;line-height:1.6;}
table.clean td:first-child{color:var(--ink-strong);font-weight:600;font-family:var(--serif);white-space:nowrap;}

/* ---- Merch ---- */
.merch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;}
.merch-card{background:var(--card-elev);border:1px solid var(--rule);overflow:hidden;}
.merch-art{height:190px;display:flex;align-items:center;justify-content:center;background:radial-gradient(420px 220px at 50% 120%,rgba(125,212,154,.14),transparent),linear-gradient(180deg,#0e1c2f,#1a2f4f);border-bottom:1px solid var(--rule);}
.merch-body{padding:16px 18px;}
.merch-body h3{font-size:16px;}
.merch-body .price{font-family:var(--serif);color:var(--brass);font-weight:500;font-size:18px;margin-top:4px;}
.merch-body .soon{font-family:var(--mono);color:var(--ink-soft);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;margin-top:4px;}

/* ---- Track record table ---- */
.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--rule);background:var(--card-elev);margin:6px 0;}
.pledge{background:var(--card-elev);border:1px solid var(--rule);border-left:4px solid var(--navy);padding:15px 20px;margin-bottom:12px;font-size:14px;color:var(--ink-mid);line-height:1.6;}
.pledge b{color:var(--ink-strong);}
.pledge.accent{border-left-color:var(--brass);background:var(--pos-tint);}
.stat-pos{color:var(--pos);font-weight:700;}
table.tr{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:12.5px;}
table.tr th{text-align:left;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);padding:11px 12px;border-bottom:1px solid var(--ink);background:var(--card);white-space:nowrap;}
table.tr td{padding:10px 12px;border-bottom:1px solid var(--rule-soft);color:var(--ink-mid);white-space:nowrap;}
table.tr tr:last-child td{border-bottom:none;}
table.tr td b{color:var(--ink-strong);}
table.tr tr:hover td{background:var(--paper);}
th.right,td.right{text-align:right;}
table.tr td.mut,.mut{color:var(--ink-soft);}
table.tr td.pos,.pos{color:var(--pos);}
table.tr td.neg,.neg{color:var(--neg);}
.delta{font-size:10.5px;margin-left:4px;}
.delta-pos{color:var(--pos);}
.delta-neg{color:var(--neg);}
.chip{display:inline-block;font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border:1px solid var(--rule);color:var(--ink-mid);}
.chip-mixed{color:var(--caut);border-color:var(--caut);background:var(--caut-tint);}
.fchip{display:inline-block;font-family:var(--mono);font-size:11px;font-weight:500;color:var(--navy);border:1px solid var(--rule);padding:2px 8px;background:var(--card);}
.fmp-mark{color:var(--brass);font-size:9px;}
.tr-note{font-size:12px;color:var(--ink-mid);line-height:1.65;margin-top:14px;max-width:920px;}
.tr-note b{color:var(--ink-strong);}
