/* Kaji Mindworks website. Brand palette:
   Charcoal #1E2328 · Graphite #3B3F45 · Copper #B87333 · Light Copper #D9A574 · Steel Blue #2E6B8F
   Off White #F8F7F5 · Light Gray #DADADA · Warm Gray #A7A7A7 · Black #0F1113
   Gradient: Copper -> Steel Blue for metallic accents and circular elements.
   Panel, deep and label tones are blends of these; green/red are status colors only. */
:root{
  --charcoal:#1E2328;
  --graphite:#3B3F45;
  --black:#0F1113;
  --ground:#1E2328;      /* page background: Charcoal */
  --deep:#16191D;        /* console interiors: Charcoal toward Black */
  --panel:#272B31;       /* cards: Charcoal toward Graphite */
  --panel-2:#31353B;
  --line:#3B3F45;        /* borders: Graphite */
  --copper:#B87333;
  --copper-hi:#D9A574;   /* Light Copper */
  --steel:#2E6B8F;
  --steel-hi:#6A9CBD;    /* Steel Blue tint, for text on dark */
  --gradient:linear-gradient(90deg,#B87333,#2E6B8F);
  --gray:#85888C;        /* labels: Warm Gray toward Graphite */
  --mist:#F8F7F5;        /* Off White */
  --light-gray:#DADADA;
  --text:#F8F7F5;
  --muted:#A7A7A7;       /* Warm Gray */
  --ok:#6FBF7A;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--ground);color:var(--text);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--copper);outline-offset:3px}
.wrap{width:min(1120px,100% - 40px);margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--copper);color:#fff;padding:8px 12px;z-index:99}
.skip-link:focus{left:8px}
.t-dim{color:var(--gray)}
.t-cu,.cu{color:var(--copper)}
.t-bl{color:var(--steel-hi)}
.t-ok{color:var(--ok)}

h1,h2,h3{margin:0;letter-spacing:-.025em;line-height:1.1}
h2{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:700;max-width:24ch}
h3{font-size:1.15rem;font-weight:600}
p{margin:0}
.eyebrow{font:500 .78rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--copper);margin-bottom:18px}
.label{font:500 .72rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gray);margin-bottom:12px}
.section-sub{color:var(--muted);font-size:1.1rem;max-width:62ch;margin-top:18px}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--copper);color:#fff;text-decoration:none;font:600 .88rem/1 var(--sans);padding:12px 18px;border-radius:8px;transition:background .15s}
.btn:hover{background:var(--copper-hi)}
.btn-sm{padding:9px 14px;font-size:.82rem;white-space:nowrap}
.nav-links a{white-space:nowrap}
@media (max-width:1280px){.nav-stat{display:none}}

/* ---------- nav ---------- */
.nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--gradient);opacity:.55}
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(30,35,40,.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;gap:28px;min-height:62px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;font:700 1rem/1 var(--sans);letter-spacing:.12em}
.brand-mark{width:34px;height:34px;border-radius:50%;display:block}
.hero-logo{width:clamp(150px,18vw,200px);height:auto;border-radius:20px;margin-bottom:36px;box-shadow:0 0 0 1px rgba(248,247,245,.15),0 20px 60px -20px rgba(184,115,51,.45)}
.footer-logo img{display:block;width:130px;height:auto;border-radius:12px}
.brand-sub{font-weight:400;font-size:.7rem;letter-spacing:.3em;color:var(--muted)}
.nav-links{display:flex;gap:4px;font-size:.9rem}
.nav-links a{text-decoration:none;color:var(--muted);padding:8px 12px;border-radius:6px}
.nav-links a:hover{color:var(--text);background:var(--panel)}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:12px}
.nav-stat{white-space:nowrap;display:inline-flex;align-items:center;gap:8px;font:500 .76rem var(--mono);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 12px}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 rgba(111,191,122,.6);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 7px rgba(111,191,122,0)}100%{box-shadow:0 0 0 0 rgba(111,191,122,0)}}
.nav-toggle{display:none;width:40px;height:36px;background:none;border:1px solid var(--line);border-radius:6px;position:relative;cursor:pointer}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{position:absolute;left:10px;right:10px;height:2px;background:var(--text);content:""}
.nav-toggle span{top:17px}.nav-toggle span::before{top:-6px;left:0;right:0}.nav-toggle span::after{top:6px;left:0;right:0}

/* ---------- hero ---------- */
.hero{padding:clamp(64px,10vw,120px) 0 clamp(56px,8vw,96px);
  background:radial-gradient(ellipse 60% 50% at 50% 0%,rgba(184,115,51,.16),transparent 70%),
             radial-gradient(ellipse 50% 40% at 80% 30%,rgba(46,107,143,.18),transparent 70%)}
.hero-inner{text-align:center;display:flex;flex-direction:column;align-items:center}
.hero h1{font-size:clamp(2.6rem,7.4vw,5.4rem);font-weight:800;letter-spacing:-.04em;line-height:1.02}
.hero h1 em{font-style:italic;font-weight:800;background:linear-gradient(90deg,var(--copper-hi),var(--copper) 55%,var(--steel-hi));-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.hero-sub{max-width:60ch;color:var(--muted);font-size:clamp(1.02rem,1.6vw,1.2rem);margin-top:24px}
.hero-note{font:400 .8rem var(--mono);color:var(--gray);margin-top:14px}

/* call-to-action buttons */
.cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px}
.btn-lg{padding:15px 24px;font-size:1rem;border-radius:9px}
.btn-ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}
.btn-ghost:hover{background:var(--panel);box-shadow:inset 0 0 0 1px var(--gray)}

/* ---------- terminal demo ---------- */
.term{margin:clamp(48px,7vw,80px) 0 0;background:var(--deep);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 30px 80px -30px rgba(0,0,0,.6),0 0 0 1px rgba(184,115,51,.08)}
.term-bar{display:flex;align-items:center;gap:16px;padding:10px 14px;background:var(--panel);border-bottom:1px solid var(--line);font:500 .74rem var(--mono);color:var(--muted);flex-wrap:wrap}
.dots{display:flex;gap:6px}.dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.dots i:first-child{background:#d96c5f}.dots i:nth-child(2){background:#d9b45f}.dots i:nth-child(3){background:var(--ok)}
.term-legend{margin-left:auto;display:flex;gap:14px;flex-wrap:wrap}
.term-legend b{margin-right:5px}
.st{font-weight:700}
.st-ingest{color:var(--gray)}.st-extract{color:var(--steel-hi)}.st-review{color:var(--copper)}.st-done{color:var(--ok)}
.term-body{display:grid;grid-template-columns:190px 1fr;min-height:380px}
.term-side{border-right:1px solid var(--line);padding:14px 0;font:400 .8rem var(--mono)}
.side-h{color:var(--gray);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;padding:0 16px;margin:4px 0 8px}
.term-side ul{list-style:none;margin:0 0 18px;padding:0}
.term-side li{display:flex;justify-content:space-between;padding:6px 16px;color:var(--muted)}
.term-side li em{font-style:normal;color:var(--gray);font-size:.72rem}
.term-side li.active{background:rgba(184,115,51,.12);color:var(--text);box-shadow:inset 2px 0 0 var(--copper)}
.term-main{padding:14px 16px;display:flex;flex-direction:column;gap:14px;min-width:0;overflow-x:auto}
.jobs{width:100%;border-collapse:collapse;font:400 .78rem var(--mono);white-space:nowrap}
.jobs th{color:var(--gray);font-weight:500;text-align:left;padding:6px 10px;border-bottom:1px solid var(--line);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}
.jobs td{padding:7px 10px;border-bottom:1px solid rgba(59,63,69,.6);color:var(--muted)}
.jobs td:nth-child(2){color:var(--text);max-width:260px;overflow:hidden;text-overflow:ellipsis}
.jobs .num{text-align:right}
.jobs tr.flash td{animation:flash 1.2s ease-out}
@keyframes flash{from{background:rgba(184,115,51,.18)}to{background:transparent}}
.evidence{border:1px solid var(--line);border-radius:8px;background:var(--panel);font:400 .78rem var(--mono)}
.ev-h{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line);color:var(--text);flex-wrap:wrap}
.ev-row{display:grid;grid-template-columns:120px 1fr auto auto auto;gap:12px;align-items:center;padding:7px 12px;border-bottom:1px solid rgba(59,63,69,.6)}
.ev-row:last-child{border-bottom:0}
.ev-k{color:var(--gray)}.ev-v{color:var(--text)}
.ev-box{color:var(--steel-hi)}
.ev-ok{color:var(--ok);border:1px solid rgba(111,191,122,.35);border-radius:4px;padding:1px 6px}
.ev-flag{grid-column:span 2;color:var(--copper);border:1px solid rgba(184,115,51,.45);border-radius:4px;padding:1px 6px;justify-self:start}
.log{margin:0;font:400 .76rem/1.7 var(--mono);color:var(--muted);white-space:pre-wrap;min-height:5.2em}
.term-cap{text-align:center;color:var(--gray);font:400 .82rem var(--mono);margin-top:16px}

/* ---------- sections ---------- */
.section{padding:clamp(72px,10vw,120px) 0;border-top:1px solid var(--line)}

/* problem flow */
.flow{display:grid;grid-template-columns:1fr auto 1.5fr auto 1fr;gap:18px;margin-top:48px;align-items:stretch}
.flow-col{display:flex;flex-direction:column}
.flow-arrow{align-self:center;color:var(--copper);font:700 1.6rem var(--mono);padding-top:24px}
.chips{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.chips li{font:500 .85rem var(--mono);color:var(--copper-hi);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:9px 12px}
.human{flex:1;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.human-top{background:var(--mist);color:var(--charcoal);font:600 .95rem/1.5 var(--sans);padding:18px}
.human-bot{flex:1;display:flex;align-items:center;justify-content:center;padding:18px;background:var(--panel);color:var(--muted);font:400 .85rem var(--mono);text-align:center}
.out{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid var(--steel);border-radius:8px;padding:18px;font:600 1.05rem/1.4 var(--sans);color:var(--steel-hi)}

/* 80/20 shift */
.shift{margin-top:64px;display:grid;gap:18px}
.shift-row{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center}
.shift-name{font:600 .92rem var(--sans)}
.bar{display:flex;border-radius:8px;overflow:hidden;min-height:78px;gap:2px}
.seg{flex:var(--w);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:10px 12px;min-width:0;color:#fff;transform-origin:left;animation:grow .9s cubic-bezier(.2,.8,.2,1) both}
.seg b{font:700 1.5rem/1.1 var(--sans)}
.seg span{font-size:.78rem;line-height:1.25;opacity:.92}
.seg-gray{background:var(--gray)}.seg-dark{background:var(--deep);border:1px solid var(--line)}
.seg-cu{background:var(--copper)}.seg-steel{background:var(--steel)}
.seg-cu span{font-size:.66rem}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.pull{margin-top:26px;font:600 clamp(1.1rem,2vw,1.35rem)/1.4 var(--sans);color:var(--steel-hi);border-left:3px solid var(--copper);padding-left:18px}

/* numbered features */
.features{list-style:none;margin:48px 0 0;padding:0;border-top:1px solid var(--line)}
.feature{display:grid;grid-template-columns:72px 1fr 48px;gap:24px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line);transition:background .2s}
.feature:hover{background:linear-gradient(90deg,rgba(184,115,51,.06),transparent 60%)}
.f-num{font:500 .95rem var(--mono);color:var(--copper);padding-top:4px}
.f-body h3{font-size:clamp(1.25rem,2.2vw,1.6rem);margin-bottom:8px}
.f-body p{color:var(--muted);max-width:64ch}
.f-link{justify-self:end;display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;text-decoration:none;color:var(--muted);font:500 1.1rem var(--mono);transition:all .15s}
.feature{position:relative;cursor:pointer}
.f-link::after{content:"";position:absolute;inset:0}
.feature:hover .f-link,.f-link:hover{border-color:var(--copper);color:var(--copper);transform:translateX(3px)}


/* pipeline */
.pipe{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:0;counter-reset:p}
.pipe li{position:relative;padding:22px 16px 20px;border:1px solid var(--line);margin-left:-1px;background:var(--panel);font:600 .95rem/1.3 var(--sans);min-height:120px}
.pipe li:first-child{border-radius:10px 0 0 10px;margin-left:0}
.pipe li:last-child{border-radius:0 10px 10px 0}
.pipe li span{display:block;font:500 .78rem var(--mono);color:var(--copper);margin-bottom:12px}
.pipe li:not(:last-child)::after{content:"→";position:absolute;right:-10px;top:50%;transform:translateY(-50%);z-index:1;background:var(--ground);color:var(--copper);font:700 .9rem var(--mono);width:20px;text-align:center}
.pipe-end{border-color:var(--steel)!important;background:rgba(46,107,143,.18)!important}

/* feedback loop arrow under pipeline */
.loopback{margin-top:10px;border:1px dashed rgba(184,115,51,.55);border-top:0;border-radius:0 0 12px 12px;height:34px;position:relative;margin-inline:8%}
.loopback span{position:absolute;left:50%;bottom:-11px;transform:translateX(-50%);background:var(--ground);padding:0 12px;font:500 .76rem var(--mono);color:var(--copper-hi);white-space:nowrap}

/* review + continuous learning demo */
.qc-intro{margin-top:clamp(64px,8vw,96px)}
.qc-title{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700}
.qc{margin-top:36px}
.qc-body{display:grid;grid-template-columns:1.35fr 1fr;min-height:430px}
.doc{position:relative;background:#F8F7F5;color:#1E2328;padding:18px 20px 22px;border-right:1px solid var(--line);overflow:hidden;font-family:Arial,Helvetica,sans-serif}
.doc-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px}
.doc-title{font-weight:700;font-size:.95rem;margin-inline:auto}
.doc-file{font-size:.62rem;color:#444}
.doc-grid{border:1px solid #222;border-left:6px solid #222}
.dr{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:4px 8px;border-bottom:1px solid #bbb;font-size:.72rem}
.dr:last-child{border-bottom:0}
.dl{font-size:.58rem;color:#555}
.dv{font-size:.74rem;padding:1px 4px;border:1px solid transparent;border-radius:2px;margin-right:6px}
.dv[data-f]{border-color:rgba(46,107,143,.35)}
.dv.done{border-color:rgba(111,191,122,.9);background:rgba(111,191,122,.12)}
.dv.fixed{border-color:rgba(184,115,51,.9);background:rgba(184,115,51,.12)}
.dr-sec{background:#DADADA;font-weight:700;font-size:.64rem;justify-content:center}
.doc-fade{-webkit-mask-image:linear-gradient(#000,transparent);mask-image:linear-gradient(#000,transparent)}
.cb{display:inline-block;width:9px;height:9px;border:1px solid #333;margin:0 3px 0 6px;vertical-align:-1px;position:relative}
.cb.x::before,.cb.x::after{content:"";position:absolute;left:-1px;right:-1px;top:3px;height:1px;background:#111;transform:rotate(45deg)}
.cb.x::after{transform:rotate(-45deg)}
.hl{position:absolute;border:2px solid var(--copper);border-radius:3px;box-shadow:0 0 0 4px rgba(184,115,51,.2);pointer-events:none;opacity:0;transition:left .45s cubic-bezier(.2,.8,.2,1),top .45s cubic-bezier(.2,.8,.2,1),width .45s,height .45s,opacity .25s,border-color .2s}
.hl.on{opacity:1}
.hl.bad{border-color:#d96c5f;box-shadow:0 0 0 4px rgba(217,108,95,.2);border-style:dashed}
.hl-tag{position:absolute;left:-2px;bottom:100%;margin-bottom:3px;background:var(--copper);color:#fff;font:600 .6rem/1 var(--mono);padding:3px 6px;border-radius:3px;white-space:nowrap}
.hl.bad .hl-tag{background:#d96c5f}

.rev{padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--deep);min-width:0}
.rev-top{display:flex;justify-content:space-between;font:600 .8rem var(--sans)}
.rev-count{font:500 .74rem var(--mono);color:var(--muted)}
.rev-count b{color:var(--ok)}
.rev-prog{height:4px;background:var(--line);border-radius:2px;overflow:hidden}
.rev-prog i{display:block;height:100%;width:0;background:var(--gradient);transition:width .4s}
.rev-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;font:400 .72rem var(--mono)}
.rev-list li{display:flex;gap:6px;align-items:center;color:var(--gray);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rev-list li b{width:12px;text-align:center;font-weight:700}
.rev-list li.cur{color:var(--text)}
.rev-list li.cur b{color:var(--copper)}
.rev-list li.ok b{color:var(--ok)}
.rev-list li.fx{color:var(--copper-hi)}
.rev-list li.fx b{color:var(--copper)}
.fcard{margin-top:auto;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px;transition:border-color .2s,box-shadow .2s}
.fcard.active{border-color:var(--copper);box-shadow:0 0 0 3px rgba(184,115,51,.15)}
.fcard-h{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.fname{font-weight:600}
.fpage{font:500 .66rem var(--mono);background:var(--line);color:var(--muted);padding:2px 6px;border-radius:4px}
.fbadge{margin-left:auto;font:500 .68rem var(--mono);color:var(--steel-hi);border:1px solid rgba(106,156,189,.5);border-radius:4px;padding:2px 7px}
.fval{background:var(--ground);border:1px solid var(--line);border-radius:6px;padding:9px 11px;font:500 .9rem var(--mono);min-height:2.4em;transition:border-color .2s,color .2s}
.fval.bad{border-color:#d96c5f;color:#e79a90;text-decoration:line-through}
.fval.fixed{border-color:var(--copper);color:var(--copper-hi)}
.fval.typing::after{content:"▍";color:var(--copper);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.flabel{font:500 .62rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--gray);margin:12px 0 6px}
.fbtns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fbtns button{font:600 .76rem var(--sans);padding:8px;border-radius:6px;background:transparent;cursor:default;transition:background .2s,color .2s,transform .15s}
.fbtns .ok{color:var(--ok);border:1px solid rgba(111,191,122,.4)}
.fbtns .no{color:#e08a7f;border:1px solid rgba(217,108,95,.4)}
.fbtns .ok.hit{background:var(--ok);color:#0F1113;transform:scale(.97)}
.fbtns .no.hit{background:#d96c5f;color:#fff;transform:scale(.97)}

.learn{display:grid;grid-template-columns:auto repeat(3,auto) 1fr;gap:14px 26px;align-items:center;padding:14px 16px;border-top:1px solid var(--line);background:var(--panel)}
.loop{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:0;font:500 .72rem var(--mono)}
.loop li{padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--gray);transition:all .25s}
.loop li+li{margin-left:18px;position:relative}
.loop li+li::before{content:"→";position:absolute;left:-15px;color:var(--gray)}
.loop li:last-child::after{content:"↺";position:absolute;right:-18px;color:var(--copper)}
.loop li.on{border-color:var(--copper);color:#fff;background:rgba(184,115,51,.25)}
.learn-stat{display:flex;flex-direction:column;gap:2px}
.ls-k{font:500 .6rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--gray)}
.ls-v{font:700 1.05rem var(--mono)}
.ls-v.bump{animation:bump .6s}
@keyframes bump{30%{transform:scale(1.18);color:var(--copper-hi)}}
.learn-acc{flex-direction:row;flex-wrap:wrap;align-items:flex-end;column-gap:10px}
.learn-acc .ls-k{flex-basis:100%}
.spark{display:flex;align-items:flex-end;gap:2px;height:20px}
.spark i{width:4px;background:var(--steel-hi);border-radius:1px;opacity:.8}
.spark i:last-child{background:var(--copper)}
.learn-log{grid-column:1/-1;min-height:3.4em;margin:0;padding-top:10px;border-top:1px dashed var(--line)}
.fly{position:fixed;z-index:60;pointer-events:none;font:600 .7rem var(--mono);background:var(--copper);color:#fff;padding:4px 8px;border-radius:999px;transition:transform .9s cubic-bezier(.5,0,.3,1),opacity .9s}

/* policy & guideline compliance demo */
.rules{margin-top:36px}
.rules-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:14px 16px 0}
.rs{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.rs-n{font:700 1.6rem/1.1 var(--mono)}
.rs-n.bump{animation:bump .5s}
.rs-l{font:500 .66rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--gray)}
.rules-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:14px 16px 8px;font:500 .8rem var(--mono)}
.rset b{color:var(--text)}
.rtags{display:flex;gap:6px}
.rtags span{font-size:.68rem;border:1px solid var(--line);border-radius:999px;padding:3px 9px;color:var(--muted)}
.rules-scroll{overflow-x:auto;padding:0 16px}
.rtable{width:100%;border-collapse:collapse;font:400 .78rem var(--mono);min-width:860px}
.rtable th{text-align:left;font:500 .66rem var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--gray);padding:8px 10px;border-bottom:1px solid var(--line)}
.rtable td{padding:9px 10px;border-bottom:1px solid rgba(59,63,69,.6);vertical-align:top;color:var(--muted);transition:background .3s}
.rtable td.q{color:var(--text);font-family:var(--sans);font-size:.84rem;max-width:300px}
.rtable tr.cur td{background:rgba(46,107,143,.14)}
.rtable tr.exc td{background:rgba(184,115,51,.1)}
.rtable tr.exc td:first-child{box-shadow:inset 2px 0 0 var(--copper)}
.dchip,.fchip{display:inline-block;font-size:.66rem;border-radius:4px;padding:2px 7px;margin:0 4px 3px 0;white-space:nowrap}
.dchip{background:rgba(46,107,143,.22);color:var(--steel-hi)}
.fchip{background:rgba(184,115,51,.18);color:var(--copper-hi)}
.ev{white-space:nowrap}
.ev .pg{color:var(--gray);font-size:.68rem;margin-left:6px}
.ev.pending{color:var(--line)}
.res{white-space:nowrap;font-weight:600}
.res.q0{color:var(--gray);font-weight:400}
.res.run{color:var(--steel-hi)}
.res.run b{display:inline-block;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.res.ok{color:var(--ok)}
.res.ex{color:var(--copper)}
.res small{display:block;font-weight:400;color:var(--copper-hi);font-size:.66rem;margin-top:2px}
.rules-log{margin:12px 16px 14px;padding-top:10px}

/* full auditability demo */
.audit{margin-top:36px}
.audit-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:14px 16px 0}
.audit-body{display:grid;grid-template-columns:1fr 1.05fr .95fr;gap:14px;padding:14px 16px 0;min-height:400px}
.pane-h{font:600 .74rem var(--mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
.rec,.lineage{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px}
.rec-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.rec-list li{display:grid;grid-template-columns:1fr auto 18px;gap:10px;align-items:center;padding:7px 9px;border-radius:6px;font:400 .76rem var(--mono);border:1px solid transparent;transition:background .25s,border-color .25s}
.rec-list .k{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rec-list .v{color:var(--text);white-space:nowrap}
.rec-list .s{text-align:center;color:var(--gray)}
.rec-list li.cur{background:rgba(46,107,143,.18);border-color:rgba(106,156,189,.5)}
.rec-list li.cur .s{color:var(--steel-hi);animation:spin 1s linear infinite}
.rec-list li.ok .s{color:var(--ok)}
.rec-list li.ok .v::after{content:" ↗";color:var(--steel-hi);font-size:.7rem}
.chain{list-style:none;margin:0;padding:0;position:relative}
.chain::before{content:"";position:absolute;left:11px;top:14px;bottom:14px;width:2px;background:var(--line)}
.chain::after{content:"";position:absolute;left:11px;top:14px;width:2px;height:var(--fill,0%);max-height:calc(100% - 28px);background:linear-gradient(var(--steel-hi),var(--ok));transition:height .35s}
.chain li{position:relative;display:flex;gap:12px;padding:6px 0;opacity:.35;transition:opacity .3s}
.chain li.on{opacity:1}
.chain .node{position:relative;z-index:1;flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--ground);border:1px solid var(--line);font-size:.7rem;color:var(--gray)}
.chain li.on .node{border-color:var(--steel-hi);color:var(--steel-hi)}
.chain li[data-k="src"].on .node{border-color:var(--ok);color:var(--ok)}
.chain b{display:block;font:600 .8rem var(--sans)}
.chain span:not(.node){display:block;font:400 .72rem/1.45 var(--mono);color:var(--muted)}
.verify{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);display:grid;gap:6px}
.vrow{font:400 .72rem var(--mono);color:var(--gray);display:flex;gap:8px;align-items:baseline;transition:color .25s}
.vrow .vi{width:12px;text-align:center}
.vrow.ok{color:var(--text)}
.vrow.ok .vi{color:var(--ok)}
.vbadge{margin-top:6px;justify-self:start;font:600 .76rem var(--mono);padding:6px 12px;border-radius:999px;border:1px solid var(--line);color:var(--gray);transition:all .3s}
.vbadge.run{border-color:var(--steel-hi);color:var(--steel-hi)}
.vbadge.ok{border-color:var(--ok);background:rgba(111,191,122,.14);color:var(--ok);box-shadow:0 0 0 4px rgba(111,191,122,.08)}
.src{display:flex;flex-direction:column}
.page{flex:1;background:#F8F7F5;color:#1E2328;border-radius:8px;padding:14px 14px 10px;font-family:Arial,Helvetica,sans-serif;box-shadow:0 10px 30px -12px rgba(0,0,0,.5);position:relative;overflow:hidden;transition:opacity .25s}
.page.swap{opacity:.2}
.page-h{font-weight:700;font-size:.8rem;text-align:center;padding-bottom:8px;margin-bottom:8px;border-bottom:2px solid #222}
.page-rows{display:flex;flex-direction:column;gap:9px}
.pr.ph{height:16px;align-items:center;flex:none}
.pr{display:flex;justify-content:space-between;gap:10px;font-size:.68rem;padding:2px 4px;border:1.5px solid transparent;border-radius:3px;transition:border-color .3s,background .3s,box-shadow .3s}
.pr .pl{color:#555}
.pr .pv{font-weight:600}
.pr.ph::before{content:"";flex:1 1 auto;height:6px;border-radius:3px;background:#DADADA}
.pr.ph::after{content:"";flex:0 0 22%;height:6px;border-radius:3px;background:#E6E5E2}
.pr.hit{border-color:var(--copper);background:rgba(184,115,51,.1)}
.pr.hit.ok{border-color:var(--ok);background:rgba(111,191,122,.14);box-shadow:0 0 0 3px rgba(111,191,122,.18)}
.page-cap{font:400 .68rem var(--mono);color:var(--gray);margin-top:8px;min-height:1.2em}
.audit-log{margin:12px 16px 14px;padding-top:10px}

/* cross-document calculations */
.calc{margin-top:36px}
.calc-body{display:grid;grid-template-columns:.9fr 1.3fr;gap:14px;padding:16px 16px 0}
.cdocs{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.cdocs li{display:flex;justify-content:space-between;gap:10px;align-items:center;font:400 .74rem var(--mono);color:var(--muted);padding:7px 10px;border:1px solid var(--line);border-radius:6px;transition:all .25s}
.cdocs li em{font-style:normal;font-size:.64rem;color:var(--gray)}
.cdocs li.on{border-color:var(--steel-hi);background:rgba(46,107,143,.2);color:var(--text)}
.cdocs li.on em{color:var(--steel-hi)}
.cwork{gap:10px}
.formula{font:500 .86rem/1.5 var(--mono);color:var(--text);background:var(--ground);border:1px solid var(--line);border-radius:6px;padding:10px 12px;min-height:2.6em}
.formula .op{color:var(--copper);padding:0 .35em}
.cinputs{list-style:none;margin:0;padding:0;display:grid;gap:5px;min-height:11.5em;align-content:start}
.cinputs li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:baseline;padding:6px 10px;border-radius:6px;background:rgba(46,107,143,.1);border-left:2px solid var(--steel-hi);font:400 .74rem var(--mono);animation:inslide .35s ease-out both}
.cinputs li.calcd{background:rgba(184,115,51,.1);border-left-color:var(--copper)}
.cinputs .ik{color:var(--muted)}
.cinputs .iv{color:var(--text);font-weight:600;text-align:right}
.cinputs .is{grid-column:1/-1;font-size:.64rem;color:var(--steel-hi)}
.cinputs li.calcd .is{color:var(--copper-hi)}
@keyframes inslide{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
.cresult{margin-top:auto;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;padding-top:10px;border-top:1px dashed var(--line)}
.cres-v{font:800 2.1rem/1 var(--sans);letter-spacing:-.03em;color:var(--steel-hi)}
.cres-v.ok{color:var(--ok)}
.cres-note{font:400 .72rem var(--mono);color:var(--muted)}
.cboard{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;padding:14px 16px 0}
.ctile{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:3px;transition:all .3s;min-width:0}
.ctile .cn{font:600 .64rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--gray)}
.ctile .cv{font:700 1.05rem var(--mono);color:var(--line)}
.ctile .cs{font:400 .6rem var(--mono);color:var(--gray)}
.ctile.cur{border-color:var(--copper);box-shadow:0 0 0 3px rgba(184,115,51,.15)}
.ctile.done .cv{color:var(--text)}
.ctile.done .cs{color:var(--ok)}
.ctile.mid .cn::after{content:" · input";color:var(--copper);text-transform:none;letter-spacing:0}
.cmore{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:14px 16px 0;font:400 .7rem var(--mono)}
.cmore span:not(.t-dim){border:1px dashed var(--line);border-radius:999px;padding:3px 9px;color:var(--muted)}
.cmore .cmore-own{border-style:solid!important;border-color:rgba(184,115,51,.6)!important;color:var(--copper-hi)!important}
.calc-log{margin:12px 16px 14px;padding-top:10px}

/* integration: API in, API out */
.inline-link{color:var(--copper-hi);text-decoration:none;white-space:nowrap}
.inline-link:hover{text-decoration:underline}
.integ{margin-top:40px}
.integ-body{display:grid;grid-template-columns:.85fr 84px 1fr 84px 1.15fr;align-items:stretch;padding:16px 16px 0}
.ipanel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px;min-width:0;display:flex;flex-direction:column}
.ipanel .pane-h{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ikaji{border-color:rgba(184,115,51,.55);box-shadow:0 0 0 1px rgba(184,115,51,.12),0 18px 40px -24px rgba(184,115,51,.5)}
.ikaji .pane-h img{border-radius:50%}
.src-list,.kstages{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.src-list li{display:flex;gap:8px;align-items:center;font:400 .76rem var(--mono);color:var(--muted);padding:8px 10px;border:1px solid var(--line);border-radius:6px;transition:all .25s}
.src-list .si{width:14px;text-align:center;color:var(--gray)}
.src-list li.on{border-color:var(--steel-hi);color:var(--text);background:rgba(46,107,143,.18)}
.src-list li.on .si{color:var(--steel-hi)}
.pane-foot{margin-top:auto;padding-top:10px;font:400 .68rem var(--mono);color:var(--gray)}
.pane-foot::before{content:"+ "}
.kstages{counter-reset:k}
.kstages li{counter-increment:k;display:flex;gap:10px;align-items:center;font:500 .76rem var(--mono);color:var(--gray);padding:8px 10px;border-radius:6px;border:1px solid transparent;transition:all .25s}
.kstages li::before{content:counter(k,decimal-leading-zero);color:var(--line);font-size:.68rem}
.kstages li.on{color:#fff;background:rgba(184,115,51,.2);border-color:rgba(184,115,51,.6)}
.kstages li.on::before{color:var(--copper-hi)}
.kstages li.done{color:var(--muted)}
.kstages li.done::before{content:"✓";color:var(--ok)}
.track{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.track-l{font:500 .62rem var(--mono);letter-spacing:.06em;color:var(--gray);white-space:nowrap}
.track-line{width:100%;height:2px;background:repeating-linear-gradient(90deg,var(--line) 0 6px,transparent 6px 11px)}
#in-track-out .track-line{background:repeating-linear-gradient(90deg,rgba(184,115,51,.5) 0 6px,transparent 6px 11px)}
.pkt{position:absolute;left:0;top:50%;margin-top:6px;z-index:2;font:600 .62rem/1 var(--mono);padding:4px 7px;border-radius:999px;white-space:nowrap;pointer-events:none}
.pkt.doc{background:var(--steel);color:#fff}
.pkt.data{background:var(--copper);color:#fff}
.los{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--ground);font:400 .74rem var(--mono)}
.los-h{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;background:var(--mist);color:var(--charcoal);font-weight:700;font-family:var(--sans);font-size:.78rem;flex-wrap:wrap}
.los-sync{font:500 .66rem var(--mono);color:#3B3F45}
.los-sync.ok{color:#2c7a3a}
.los-row{display:flex;justify-content:space-between;gap:10px;padding:6px 10px;border-bottom:1px solid rgba(59,63,69,.6)}
.los-row span{color:var(--gray)}
.los-row b{font-weight:500;color:var(--text);text-align:right}
.los-row.native b{color:var(--muted)}
.los-sep{padding:5px 10px;font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--copper);background:rgba(184,115,51,.08);border-bottom:1px solid rgba(59,63,69,.6)}
.los-row.new{animation:land 1.1s ease-out}
@keyframes land{from{background:rgba(184,115,51,.35)}to{background:transparent}}
.los-row .tag{display:block;font-size:.6rem;color:var(--steel-hi);font-weight:400;margin-top:1px}
.los-row.flag b{color:var(--copper-hi)}
.payload{margin:14px 16px 0;background:var(--black);border:1px solid var(--line);border-radius:10px;padding:12px 14px}
.payload pre{margin:0;font:400 .72rem/1.55 var(--mono);color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;min-height:11.5em}
.payload .jk{color:var(--steel-hi)}.payload .js{color:var(--copper-hi)}.payload .jn{color:var(--ok)}
.integ-log{margin:12px 16px 14px;padding-top:10px}
.integ-cols{margin-top:32px}

/* results */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:26px}
.stat-n{font:800 clamp(2.6rem,5vw,3.6rem)/1 var(--sans);letter-spacing:-.04em;color:var(--steel-hi)}
.stat-n.cu{color:var(--copper)}
.stat-l{font-weight:600;margin:10px 0 18px}
.mini-bars{display:flex;gap:18px;height:150px;align-items:flex-end;border-bottom:1px solid var(--line)}
.mini-bars div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative;font:500 .72rem var(--mono);color:var(--gray)}
.mini-bars b{color:var(--text);font:700 .95rem var(--sans);margin-bottom:4px}
.mini-bars i{display:block;width:100%;height:calc(var(--h) - 38px);background:var(--gray);border-radius:4px 4px 0 0}
.mini-bars .steel i{background:var(--steel)}.mini-bars .copper i{background:var(--copper)}
.mini-bars span{position:absolute;bottom:-22px}
.stat:has(.mini-bars){padding-bottom:44px}
.stat-list{list-style:none;margin:0;padding:0;display:grid;gap:12px;color:var(--muted);font-size:.92rem}
.stat-list b{display:block;font:700 1.4rem var(--sans);color:var(--text)}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.ba-col{border:1px solid var(--line);border-radius:12px;padding:24px}
.ba-after{border-color:var(--steel);background:rgba(46,107,143,.1)}
.ba ul{margin:0;padding-left:1.1em;display:grid;gap:8px;color:var(--muted)}
.ba-after ul{color:var(--text)}
.quote{margin:40px 0 0;padding:28px 0 0;border-top:1px solid var(--line)}
.quote p{font:600 italic clamp(1.25rem,2.4vw,1.7rem)/1.35 var(--sans);color:var(--steel-hi);max-width:40ch}
.quote footer{margin-top:12px;color:var(--gray);font-size:.9rem}
.disclaimer{margin-top:28px;font:italic 400 .76rem var(--mono);color:var(--gray)}

/* compare */
.table-scroll{overflow-x:auto;margin-top:40px;border:1px solid var(--line);border-radius:12px}
.compare{width:100%;border-collapse:collapse;min-width:640px}
.compare th,.compare td{padding:18px 20px;text-align:center;border-bottom:1px solid var(--line)}
.compare thead th{background:var(--graphite);font:600 .82rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--mist)}
.compare tbody th{text-align:left;font-weight:600}
.compare td{color:var(--gray);font-size:.92rem}
.compare .k{background:rgba(46,107,143,.18);color:var(--steel-hi);font-weight:700}
.compare thead .k{background:var(--steel);color:#fff}
.compare tbody tr:last-child>*{border-bottom:0}
.compare th:first-child{text-align:left}

/* cards */
.grid-4{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:48px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:26px}
.card h3{margin:14px 0 8px}
.card p{color:var(--muted)}
.c-num{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--copper);color:#fff;font:700 .85rem var(--mono)}
.c-num.steel{background:var(--steel)}

/* team */
.person{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:26px}
.avatar{position:relative;width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--copper),var(--steel));font:700 1.3rem var(--mono);margin-bottom:18px;overflow:hidden;box-shadow:0 0 0 2px var(--ground),0 0 0 3px var(--copper)}
.avatar::before{content:attr(data-initials)}
.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.role{font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--copper);margin:6px 0 14px}
.person>p{color:var(--muted);font-size:.93rem}
.person .meta{font-size:.84rem;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.person .meta b{display:block;font:500 .7rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--copper);margin-bottom:4px}

/* how we start callout (herdr "cloud coming soon") */
.callout{background:linear-gradient(135deg,rgba(184,115,51,.14),rgba(46,107,143,.14));border:1px solid var(--line);border-radius:16px;padding:clamp(28px,5vw,48px)}
.phases{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.phases li{background:var(--ground);border:1px solid var(--line);border-radius:10px;padding:22px}
.ph-w{font:500 .74rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--copper)}
.phases h3{margin:10px 0 8px}
.phases p{color:var(--muted);font-size:.93rem}
.closing{text-align:center;display:flex;flex-direction:column;align-items:center;margin-top:clamp(72px,10vw,120px)}
.closing h2{max-width:26ch}

/* footer */
.footer{border-top:1px solid var(--line);padding:40px 0 28px;background:var(--black)}
.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px}
.footer-tag{color:var(--gray);font:400 .8rem var(--mono);margin-top:8px}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.9rem}
.footer-links a{text-decoration:none;color:var(--muted)}
.footer-links a:hover{color:var(--text)}
.footer-legal{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);color:var(--gray);font:400 .76rem var(--mono);display:flex;flex-wrap:wrap;gap:8px 24px}
.footer-legal a{color:var(--muted)}
.footer-legal a:hover{color:var(--text)}

/* about */
.about{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:start}
.about-name{margin-top:24px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;color:var(--muted);max-width:62ch;font-size:.95rem}
.about-name span{font-size:1.3rem;color:var(--copper-hi);margin-right:6px;vertical-align:-2px}
.about-name b{color:var(--text)}
.facts{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:6px 20px}
.facts div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}
.facts div:last-child{border-bottom:0}
.facts dt{font:500 .7rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--gray);padding-top:3px}
.facts dd{margin:0;font-size:.95rem}
.todo{color:var(--copper-hi);border:1px dashed rgba(184,115,51,.6);border-radius:4px;padding:1px 6px;font:500 .82rem var(--mono)}

/* contact */
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:start}
.contact-alt{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:16px}
.contact-alt li{display:flex;flex-direction:column;gap:4px}
.contact-alt .label{margin:0}
.cform{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:26px;display:grid;gap:16px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field label{font:500 .78rem var(--sans);color:var(--muted)}
.field .opt{font:400 .7rem var(--mono);color:var(--gray);margin-left:6px}
.field input,.field select,.field textarea{font:400 .95rem var(--sans);color:var(--text);background:var(--ground);border:1px solid var(--line);border-radius:8px;padding:11px 12px;width:100%}
.field textarea{resize:vertical;min-height:120px}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--copper);box-shadow:0 0 0 3px rgba(184,115,51,.2)}
.field input[aria-invalid="true"]{border-color:#d96c5f}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.fsubmit{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.fsubmit button{border:0;cursor:pointer}
.fsubmit button:disabled{opacity:.6;cursor:wait}
.fnote{font-size:.8rem;color:var(--gray)}
.fstatus{font:500 .85rem var(--sans);min-height:1.3em}
.fstatus.ok{color:var(--ok)}
.fstatus.err{color:#e08a7f}


/* ---------- responsive ---------- */
@media (max-width:980px){
  .about,.contact{grid-template-columns:1fr;gap:32px}
  .calc-body{grid-template-columns:1fr}
  .cboard{grid-template-columns:repeat(4,1fr)}
  .integ-body{grid-template-columns:1fr;gap:0}
  .track{height:64px;flex-direction:row;gap:12px}
  .track-line{width:2px;height:100%;background:repeating-linear-gradient(180deg,var(--line) 0 6px,transparent 6px 11px)}
  #in-track-out .track-line{background:repeating-linear-gradient(180deg,rgba(184,115,51,.5) 0 6px,transparent 6px 11px)}
  .track-l{position:absolute;left:calc(50% + 14px)}
  .pkt{left:50%;top:0;margin:0}
  .audit-body{grid-template-columns:1fr 1fr}
  .audit-body .src{grid-column:1/-1}
  .page{max-width:420px}
  .pipe{grid-template-columns:repeat(3,1fr);gap:10px}
  .pipe li,.pipe li:first-child,.pipe li:last-child{border-radius:10px;margin-left:0}
  .pipe li::after{display:none}
  .stats,.grid-3,.phases{grid-template-columns:1fr}
  .flow{grid-template-columns:1fr}
  .flow-arrow{transform:rotate(90deg);justify-self:center;padding:0}
  .nav-stat{display:none}
}
@media (max-width:820px){
  .nav-toggle{display:block}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--ground);border-bottom:1px solid var(--line);padding:10px 20px 18px}
  .nav-links.open{display:flex}
  .term-body{grid-template-columns:1fr}
  .term-side{display:none}
  .ba,.grid-4{grid-template-columns:1fr}
  .shift-row{grid-template-columns:1fr;gap:8px}
  .feature{grid-template-columns:36px 1fr 34px;gap:12px}
  .f-link{width:34px;height:34px;font-size:.95rem}
  .ev-row{grid-template-columns:1fr 1fr;row-gap:4px}
  .ev-box{grid-column:1/-1}
  .rules-stats,.audit-stats{grid-template-columns:repeat(2,1fr)}
  .audit-body{grid-template-columns:1fr}
  .qc-body{grid-template-columns:1fr}
  .doc{border-right:0;border-bottom:1px solid var(--line)}
  .learn{grid-template-columns:repeat(3,auto)}
  .loop{grid-column:1/-1;flex-wrap:wrap;row-gap:8px}
  .loopback{margin-inline:4%}
  .loopback span{white-space:normal;text-align:center;width:max-content;max-width:90%}
}
@media (max-width:520px){
  .cboard{grid-template-columns:repeat(2,1fr)}
  .pipe{grid-template-columns:repeat(2,1fr)}
  .cta-row .btn{width:100%;justify-content:center}
  .frow{grid-template-columns:1fr}
  .facts div{grid-template-columns:1fr;gap:4px}
  .term-legend{margin-left:0}
  .seg span{display:none}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* ---------- privacy policy page ---------- */
.legal{max-width:760px;padding-block:clamp(48px,8vw,88px)}
.legal h1{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.035em;margin-bottom:12px}
.legal .meta-line{font:400 .8rem var(--mono);color:var(--gray);margin-bottom:28px}
.legal .scope{border:1px solid var(--steel);background:rgba(46,107,142,.12);border-radius:10px;padding:16px 18px;color:var(--text);margin-bottom:36px}
.legal h2{font-size:1.3rem;max-width:none;margin:40px 0 12px}
.legal p,.legal li{color:var(--muted);line-height:1.7;max-width:68ch}
.legal p+p{margin-top:12px}
.legal ul{padding-left:1.2em;display:grid;gap:8px;margin:12px 0 0}
.legal strong{color:var(--text);font-weight:600}
.legal .toc{list-style:none;padding:0;margin:0 0 8px;display:flex;flex-wrap:wrap;gap:6px 18px;font:400 .8rem var(--mono)}
.toc a{color:var(--muted);text-decoration:none}
.toc a:hover{color:var(--copper-hi)}
