
/* ===================================================================
   XSTOCKPAD — desk. One accent, hairlines, tabular numbers.
   =================================================================== */
:root{
  --bg:#f4f1e9; --panel:#fffefb; --panel-2:#efeae0;
  --ink:#141210; --body:#4a4438; --muted-c:#675f4f;
  --accent:#7d2c23; --accent2:#1f3b2e; --accent-soft:#f0e5e1;
  --line:#ded7c7; --line-2:#c9c0ab;
  --radius:2px; --wrap:1200px; --gut:24px;
  --font-display:'Inter Tight',Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-body:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --ok:#1e5a41; --warn:#8a5a12; --bad:#8c2f22;
  --shadow:none;
}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--bg); color:var(--body);
  font:16px/1.6 var(--font-body);
  letter-spacing:-.003em;
}
h1,h2,h3,h4{
  font-family:var(--font-display); color:var(--ink);
  line-height:1.06; letter-spacing:-.022em; font-weight:600;
}
h1{font-size:clamp(33px,4.6vw,54px)}
h2{font-size:clamp(23px,2.5vw,32px)}
h3{font-size:17px; line-height:1.3}
p{margin:0 0 14px}
strong,b{color:var(--ink)}
a{color:inherit; text-underline-offset:3px}
::selection{background:var(--accent-soft); color:var(--ink)}
.wrap{max-width:var(--wrap); padding:0 var(--gut)}
.mono,.num{font-family:var(--mono); font-variant-numeric:tabular-nums}
.muted{color:var(--muted-c); opacity:1}
.eyebrow{
  font-family:var(--mono); font-size:10.5px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--accent); margin:0 0 14px; font-weight:500;
}
.skip{position:absolute; left:-9999px}
.skip:focus{left:12px; top:10px; z-index:99; background:var(--ink); color:var(--bg); padding:9px 13px}
:focus-visible{outline:2px solid var(--accent); outline-offset:2px}

/* ---------- nav ---------- */
.nav{
  position:sticky; top:0; z-index:40; background:rgba(244,241,233,.94);
  backdrop-filter:blur(8px) saturate(1.1); border-bottom:1px solid var(--line);
}
.nav .row{display:flex; align-items:center; gap:26px; padding:12px 0; min-height:64px}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; margin-right:auto}
.seal{width:34px; height:34px; display:block; flex:0 0 auto}
.seal-img{border-radius:50%; object-fit:contain}
.brand .wm{
  font-family:var(--font-display); font-weight:600; color:var(--ink); font-size:15px;
  letter-spacing:.16em; text-transform:uppercase;
}
.navmeta{
  font-family:var(--mono); font-size:10px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--muted-c); border-left:1px solid var(--line-2); padding-left:12px; margin-left:2px;
}
.nav-links{display:flex; align-items:center; gap:22px}
.nav-links a{
  font-size:13.5px; font-weight:500; text-decoration:none; color:var(--body); white-space:nowrap;
  padding-bottom:2px; border-bottom:1px solid transparent;
}
.nav-links a:hover{color:var(--ink); border-bottom-color:var(--line-2)}
.nav-links a[aria-current="page"]{color:var(--ink); border-bottom-color:var(--accent)}
.nav-links a.xlink{
  display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px;
  border:1px solid var(--line-2); border-radius:50%; color:var(--ink); text-decoration:none;
  padding-bottom:0;
}
.nav-links a.xlink:hover{border-color:var(--accent); color:var(--accent)}
.nav-links a.xlink svg{width:13px; height:13px; fill:currentColor}
.nav-links a.navcta{
  display:inline-flex; align-items:center; gap:7px; background:var(--accent); color:#fff;
  text-decoration:none; font-size:13px; font-weight:600; padding:9px 15px; border-radius:var(--radius);
  border:1px solid var(--accent); white-space:nowrap; border-bottom:1px solid var(--accent);
}
.nav-links a.navcta:hover{background:#6b241c; border-color:#6b241c; color:#fff}
.nav-links a.navcta span{font-family:var(--mono); font-size:12px}
.burger{
  display:none; background:none; border:1px solid var(--line-2); color:var(--ink);
  border-radius:var(--radius); padding:7px 10px; font:12px/1 var(--mono); letter-spacing:.1em;
  text-transform:uppercase; cursor:pointer;
}
@media(max-width:1000px){
  .navmeta{display:none}
}
@media(max-width:900px){
  .nav-links{
    position:fixed; inset:64px 0 auto; flex-direction:column; align-items:stretch; gap:0;
    background:var(--bg); border-bottom:1px solid var(--line); padding:6px var(--gut) 18px; display:none;
    box-shadow:0 22px 34px rgba(20,18,16,.07);
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:13px 0; font-size:16px; border-bottom:1px solid var(--line); width:100%}
  .nav-links a.xlink{display:none}
  .nav-links a.navcta{display:inline-flex; margin-top:14px; border-bottom:none; width:auto; align-self:flex-start}
  .burger{display:block}
  .brand .wm{font-size:14px; letter-spacing:.14em}
}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 19px; border:1px solid var(--line-2); background:transparent; color:var(--ink);
  text-decoration:none; border-radius:var(--radius); font:600 13.5px/1 var(--font-body);
  cursor:pointer; transition:background .14s ease, border-color .14s ease, color .14s ease;
}
.btn:hover{border-color:var(--ink)}
.btn.primary{background:var(--accent); border-color:var(--accent); color:#fff}
.btn.primary:hover{background:#6b241c; border-color:#6b241c}
.btn.dark{background:var(--ink); border-color:var(--ink); color:#f7f4ec}
.btn.dark:hover{background:#2b2721; border-color:#2b2721}
.btn.xbtn{gap:9px; font-weight:500}
.btn.xbtn svg{width:13px; height:13px; fill:currentColor}
.btn[aria-disabled="true"]{opacity:.55; cursor:default}
.btnrow{display:flex; flex-wrap:wrap; gap:10px; align-items:center}
.linkarrow{
  font-family:var(--mono); font-size:12px; letter-spacing:.06em; text-transform:uppercase;
  color:var(--accent); text-decoration:none;
}
.linkarrow:hover{text-decoration:underline}
a.plain{color:var(--accent)}

/* ---------- hero ---------- */
/* grid children holding a wide table must be allowed to shrink, or the table's
   min-content width pushes the whole page sideways (390px overflow) */
.hero-split > *, .band .grid > *, .band-dark .grid > *{min-width:0}
.tblwrap{max-width:100%}
.hero{padding:66px 0 58px; border-bottom:1px solid var(--line)}
.hero-split{display:grid; grid-template-columns:1.06fr .94fr; gap:52px; align-items:start}
.hero h1{margin:0 0 18px; max-width:17ch}
.hero .lede{font-size:17px; max-width:56ch; color:var(--body)}
.hero .cta{display:flex; gap:10px; flex-wrap:wrap; margin-top:26px}
.hero-meta{list-style:none; display:flex; flex-wrap:wrap; gap:8px 18px; margin:26px 0 0; padding:18px 0 0;
  border-top:1px solid var(--line)}
.hero-meta li{font-family:var(--mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted-c); display:flex; align-items:center; gap:8px}
.hero-meta li:before{content:""; width:5px; height:5px; background:var(--accent2); display:block}

/* desk panel (right column of the hero) */
.deskpanel{background:var(--panel); border:1px solid var(--line-2); border-radius:var(--radius);
  padding:18px 20px 16px}
.deskpanel-hd{display:flex; align-items:baseline; justify-content:space-between; gap:12px;
  padding-bottom:12px; border-bottom:1px solid var(--line); margin-bottom:14px}
.lbl{font-family:var(--mono); font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:var(--muted-c)}
.lbl.ink{color:var(--ink)}
.deskpanel canvas{display:block; width:100%; height:236px}
.deskpanel-ft{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px;
  padding-top:12px; border-top:1px solid var(--line); font-family:var(--mono); font-size:11.5px}
.deskpanel-ft .linkarrow{margin-top:0}
.legend{display:grid; grid-template-columns:1fr 1fr; gap:6px 14px; margin:14px 0 0; padding-top:12px;
  border-top:1px solid var(--line)}
.legend div{display:grid; grid-template-columns:8px 1fr auto; align-items:center; gap:8px;
  font-family:var(--mono); font-size:11.5px; color:var(--body)}
.legend i{width:8px; height:8px; display:block}
.legend b{font-weight:500; color:var(--ink); font-variant-numeric:tabular-nums}
.deskpanel-note{margin:12px 0 0; font-size:11.5px; color:var(--muted-c); font-family:var(--mono)}

/* ---------- section shell ---------- */
section{padding:58px 0}
section+section{border-top:1px solid var(--line)}
.sec-hd{max-width:64ch; margin-bottom:28px}
.sec-hd h2{margin:0 0 10px}
.sec-hd p{margin:0; font-size:15.5px}

/* numbered columns (how it works) */
.cols3{display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--line-2)}
.colx{padding:24px 26px 4px 0; border-right:1px solid var(--line)}
.colx:last-child{border-right:none; padding-right:0}
.colx .idx{font-family:var(--mono); font-size:11px; letter-spacing:.16em; color:var(--accent); display:block;
  margin-bottom:14px}
.colx h3{margin:0 0 8px}
.colx p{margin:0; font-size:14.5px}
.colx .note{font-family:var(--mono); font-size:11px; color:var(--muted-c); margin-top:12px}

/* ---------- KPI strip ---------- */
.strip-sec{padding:0}
.strip{display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.statcell{padding:22px 24px 22px 0; border-right:1px solid var(--line)}
.statcell:last-child{border-right:none; padding-right:0}
.statcell b{display:block; font-family:var(--mono); font-weight:500; font-size:27px; letter-spacing:-.02em;
  color:var(--ink); line-height:1.1}
.statcell span{display:block; font-size:13.5px; margin-top:8px; color:var(--body)}
.statcell em{display:block; font-style:normal; font-family:var(--mono); font-size:10.5px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--muted-c); margin-top:10px}
.strip-note{font-family:var(--mono); font-size:11px; color:var(--muted-c); margin:14px 0 0}

/* ---------- tables ---------- */
.sheet{margin:0}
.tblwrap{overflow-x:auto; margin-top:0}
table{width:100%; border-collapse:collapse; font-size:14px}
caption{caption-side:top; text-align:left; font-family:var(--mono); font-size:10.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--muted-c); padding-bottom:10px}
th,td{text-align:left; padding:11px 12px; border-bottom:1px solid var(--line); white-space:nowrap;
  vertical-align:middle}
th{font-family:var(--mono); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted-c);
  font-weight:500; border-bottom:1px solid var(--line-2)}
td{color:var(--body)}
td.sym,td.n,th.n{font-family:var(--mono); font-variant-numeric:tabular-nums}
td.sym{color:var(--ink); font-weight:500}
td.n,th.n{text-align:right}
tbody tr:hover td{background:var(--panel)}
tfoot td,tfoot th{border-bottom:none; border-top:1px solid var(--line-2); color:var(--ink);
  font-family:var(--mono); font-size:12.5px; letter-spacing:.06em; padding-top:13px}
.mini{display:block; height:6px; background:var(--accent2); min-width:3px}
.bar-cell{width:96px}
.table-note{font-family:var(--mono); font-size:11px; color:var(--muted-c); margin:12px 0 0}
.panel{background:var(--panel); border:1px solid var(--line-2); border-radius:var(--radius); padding:22px 24px}
.panel h3{margin:0 0 10px}
.panel p:last-child{margin-bottom:0}

/* ---------- dark band ---------- */
.band-dark{background:var(--ink); color:#e8e3d8; border-top:1px solid var(--ink); border-bottom:none;
  padding:56px 0}
.band-dark h2{color:#fbf8f1}
.band-dark .eyebrow{color:#d9a79f}
.band-dark .lbl{color:#a49b8a}
.band-dark p{color:#cfc8ba}
.band-dark .grid{display:grid; grid-template-columns:1fr 1.05fr; gap:44px; align-items:start}
.band-dark .btn{border-color:#4c463c; color:#f2eee4}
.band-dark .btn:hover{border-color:#8d8574}
.band-dark .btn.primary{background:var(--accent); border-color:var(--accent); color:#fff}
.band-dark .btn.primary:hover{background:#96382d; border-color:#96382d}
.band-dark .plain{color:#e9b3a9}
.darksheet{background:#1b1917; border:1px solid #302c27; border-radius:var(--radius); padding:16px 18px}
.darksheet table{font-size:13.5px}
.darksheet th{color:#9c9384; border-bottom-color:#3a342d}
.darksheet td{color:#d8d1c3; border-bottom-color:#26231f}
.darksheet tbody tr:hover td{background:#211e1b}
.darksheet td.sym,.darksheet tfoot td,.darksheet tfoot th{color:#f6f2e9}
.darksheet .mini{background:#c9a59d}
.darksheet .table-note{color:#9c9384}
.darksheet tfoot td,.darksheet tfoot th{border-top-color:#3a342d}

/* ---------- token band ---------- */
.band{padding:56px 0; background:var(--panel-2); border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.band .grid{display:grid; grid-template-columns:1.04fr .96fr; gap:40px; align-items:start}
.band h2{margin:12px 0 12px}
.tok-head{display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:6px}
.chip{display:inline-block; font-family:var(--mono); font-size:10.5px; letter-spacing:.14em;
  text-transform:uppercase; padding:4px 10px; border-radius:var(--radius); border:1px solid var(--line-2);
  color:var(--body); background:var(--panel)}
.chip.gate{border-color:var(--accent); color:var(--accent); background:#fbf2f0}
.chip.live{border-color:var(--ok); color:var(--ok); background:#eef4f0}
.badge{font-family:var(--mono); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase;
  border:1px solid var(--accent); color:var(--accent); border-radius:var(--radius); padding:4px 10px}
.well{display:flex; align-items:flex-start; gap:14px; flex-wrap:wrap; margin-top:18px; background:var(--bg);
  border:1px solid var(--line-2); border-radius:var(--radius); padding:15px 16px}
.well code{color:var(--ink); font-family:var(--mono); font-size:13px; word-break:break-all; flex:1 1 240px;
  padding-top:2px}
.well.compact{padding:13px 14px}
.tok-copy{border:1px solid var(--line-2); background:var(--panel); border-radius:var(--radius);
  color:var(--ink); font-family:var(--mono); font-size:11.5px; letter-spacing:.1em; text-transform:uppercase;
  display:inline-flex; align-items:center; gap:8px; cursor:pointer; padding:8px 12px; min-height:34px}
.tok-copy:hover{border-color:var(--ink)}
.tok-copy[aria-disabled="true"]{color:var(--muted-c); cursor:default; border-color:var(--line)}
.tok-copy[aria-disabled="true"]:hover{border-color:var(--line)}
.tok-copy.live{border-color:var(--accent); color:var(--accent)}
.tok-lock{width:12px; height:12px; display:inline-block}
.tok-buy{margin-top:16px}
.tok-buy[aria-disabled="true"]{opacity:.55}
.tok-note{font-size:13px; margin:12px 0 0; color:var(--muted-c); max-width:54ch}
.facts{display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line);
  border:1px solid var(--line-2); border-radius:var(--radius); overflow:hidden}
.facts div{background:var(--panel); padding:14px 16px}
.facts dt{font-family:var(--mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--muted-c)}
.facts dd{margin:5px 0 0; color:var(--ink); font-size:14.5px; font-family:var(--mono)}

/* ---------- faq ---------- */
details{border-bottom:1px solid var(--line); padding:18px 0}
summary{cursor:pointer; color:var(--ink); font-weight:600; font-size:15.5px; list-style:none;
  display:flex; gap:14px; align-items:baseline}
summary::-webkit-details-marker{display:none}
summary:before{content:"+"; font-family:var(--mono); color:var(--accent); font-size:15px; line-height:1}
details[open] summary:before{content:"\2013"}
details p{margin:12px 0 0; font-size:15px; max-width:78ch}
.faq-item{max-width:88ch}

/* ---------- app surface ---------- */
.app-panel{background:var(--panel); border:1px solid var(--line-2); border-radius:var(--radius);
  padding:24px 26px}
.app-panel h3{margin:22px 0 10px}
.field{display:flex; flex-direction:column; gap:8px; margin-bottom:14px; max-width:420px}
.field label{font-family:var(--mono); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--ink)}
input[type=text],textarea,select{width:100%; padding:12px 13px; background:var(--bg); border:1px solid var(--line-2);
  color:var(--ink); border-radius:var(--radius); font:15px var(--font-body)}
input[type=text]::placeholder{color:#8a8272}
.status{min-height:20px; font-family:var(--mono); font-size:12.5px; margin-top:12px; color:var(--muted-c)}
.status.err{color:var(--bad)}
.status.ok{color:var(--ok)}
.sliders{display:grid; gap:10px; margin-top:6px}
.slider-row{display:grid; grid-template-columns:150px 1fr 62px; align-items:center; gap:14px;
  padding:8px 0; border-bottom:1px solid var(--line)}
.slider-row .sym{font-family:var(--mono); font-size:13px; color:var(--ink)}
.slider-row .sym .muted{font-size:11px; letter-spacing:.02em}
.slider-row b{font-family:var(--mono); font-size:13px; text-align:right; color:var(--ink);
  font-variant-numeric:tabular-nums}
input[type=range]{width:100%; accent-color:var(--accent); margin:0; height:18px}
.kpis{display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:22px; border:1px solid var(--line-2)}
.kpi{padding:16px 18px; border-right:1px solid var(--line)}
.kpi:last-child{border-right:none}
.kpi b{display:block; font-family:var(--mono); font-weight:500; font-size:25px; letter-spacing:-.02em;
  color:var(--ink)}
.kpi span{font-size:12px; color:var(--muted-c); font-family:var(--mono); letter-spacing:.06em;
  text-transform:uppercase}
.app-panel canvas{display:block; width:100%; height:230px}
.verdict{border:1px solid var(--line-2); border-left:3px solid var(--accent); border-radius:var(--radius);
  padding:18px 20px; margin-top:18px; background:var(--panel)}
.verdict .v{font-family:var(--font-display); font-size:23px; color:var(--ink); font-weight:600;
  letter-spacing:-.02em}
.verdict .muted{margin:8px 0 14px}
.gauge{margin-bottom:16px}
.gauge .top{display:flex; justify-content:space-between; font-size:13.5px; margin-bottom:7px}
.gauge .top b{font-family:var(--mono); color:var(--ink)}
.bar{height:6px; background:var(--panel-2); overflow:hidden}
.bar i{display:block; height:100%; background:var(--accent2); width:0; transition:width .8s cubic-bezier(.2,.8,.2,1)}
.gauge .detail{font-size:12.5px; margin-top:7px; color:var(--muted-c)}

/* ---------- footer ---------- */
footer{background:var(--ink); color:#c9c2b4; padding:52px 0 44px; font-size:13.5px; border-top:none}
.foot-top{display:grid; grid-template-columns:1.15fr 2fr; gap:44px; padding-bottom:34px;
  border-bottom:1px solid #302c27}
.foot-brand{display:flex; gap:16px; align-items:flex-start}
.foot-brand .seal{width:52px; height:52px}
.wordmark{font-family:var(--font-display); font-weight:600; color:#f7f4ec; font-size:15px;
  letter-spacing:.16em; text-transform:uppercase; margin:0 0 6px}
.foot-brand p{margin:0 0 6px; font-size:12.5px; color:#a49b8a}
.foot-brand .mono{font-family:var(--mono); font-size:11.5px; color:#8d8574}
.foot-cols{display:grid; grid-template-columns:repeat(3,1fr); gap:28px}
.foot-col{display:flex; flex-direction:column; gap:9px}
.foot-col a{text-decoration:none; color:#c9c2b4}
.foot-col a:hover{color:#fff}
.foot-col h4{font-family:var(--mono); font-size:10px; letter-spacing:.18em; text-transform:uppercase;
  color:#8d8574; margin:0 0 2px; font-weight:500}
.foot-ca{margin-top:28px}
.foot-ca .well{background:#1b1917; border-color:#302c27; margin-top:0}
.foot-ca .well code{color:#efeadf}
.foot-ca .tok-copy{background:#1b1917; border-color:#3a342d; color:#cfc8ba}
.foot-ca .tok-copy:hover{border-color:#6d6557}
.foot-ca .status{color:#a49b8a}
.foot-ca .lbl{color:#8d8574; display:block; margin-bottom:10px}
.disc{margin:26px 0 0; font-size:11.5px; color:#8d8574; max-width:104ch; line-height:1.65}
.foot-legal{display:flex; gap:18px; flex-wrap:wrap; margin-top:18px; font-family:var(--mono); font-size:11px;
  color:#8d8574}
.foot-legal a{text-decoration:none}
.foot-legal a:hover{color:#fff}

/* ---------- legacy base classes (generator bodies: terms, privacy, 404) ---------- */
.card{background:var(--panel); border:1px solid var(--line-2); border-radius:var(--radius); padding:22px 24px}
.heroart{min-height:280px}
.heroart canvas{width:100%; display:block; height:260px}
.heroart .stat{display:flex; justify-content:space-between; gap:14px; margin-top:14px; font-family:var(--mono);
  font-size:11.5px}
.sec-head{max-width:64ch; margin-bottom:28px}
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--line-2)}
.step{padding:22px 26px 4px 0; border-right:1px solid var(--line); background:none; border-radius:0}
.step:last-child{border-right:none; padding-right:0}
.step .n{font-family:var(--mono); font-size:11px; letter-spacing:.16em; color:var(--accent)}
.step h3{margin:12px 0 8px}
.evidence{display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid var(--line)}
.ev{padding:20px 22px 20px 0; border-right:1px solid var(--line); border-left:none}
.ev:last-child{border-right:none; padding-right:0}
.ev b{display:block; font-family:var(--mono); font-weight:500; font-size:23px; letter-spacing:-.02em;
  color:var(--ink)}
.ev span{display:block; font-size:13px; margin-top:8px}
.ev em{display:block; font-style:normal; font-family:var(--mono); font-size:10.5px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--muted-c); margin-top:10px}
.reveal{opacity:1; transform:none}
.gauge .bar{border-radius:0}
.hero h1 .hi{color:var(--accent)}

/* ---------- responsive ---------- */
@media(max-width:1080px){
  .hero-split{grid-template-columns:1fr; gap:34px}
  .hero h1{max-width:22ch}
  .band .grid,.band-dark .grid{grid-template-columns:1fr; gap:30px}
}
@media(max-width:900px){
  .strip{grid-template-columns:repeat(2,1fr)}
  .statcell{border-bottom:1px solid var(--line); padding:18px 20px 18px 0}
  .statcell:nth-child(2n){border-right:none; padding-right:0}
  .statcell:nth-child(n+3){border-bottom:none}
  .statcell:nth-child(n+3){padding-top:20px}
  .cols3,.steps,.evidence{grid-template-columns:1fr}
  .colx,.step{border-right:none; border-bottom:1px solid var(--line); padding:20px 0}
  .colx:last-child,.step:last-child{border-bottom:none}
  .ev{border-right:none; border-bottom:1px solid var(--line); padding:18px 0}
  .ev:last-child{border-bottom:none}
  .foot-top{grid-template-columns:1fr; gap:30px}
  .foot-cols{grid-template-columns:repeat(2,1fr); gap:22px}
}
@media(max-width:700px){
  /* keep the sheet readable instead of letting it scroll sideways on a phone */
  th:nth-child(6),td:nth-child(6),th:nth-child(7),td:nth-child(7){display:none}
  .bar-cell{display:none}
}
@media(max-width:560px){
  th:nth-child(3),td:nth-child(3){display:none}   /* sleeve */
  table{font-size:13.5px}
  th,td{padding:10px 9px; white-space:normal}      /* wrap instead of clipping the sheet */
}
@media(max-width:640px){
  .wrap{padding:0 18px}
  .hero{padding:44px 0 40px}
  section{padding:44px 0}
  .kpis{grid-template-columns:1fr}
  .kpi{border-right:none; border-bottom:1px solid var(--line)}
  .kpi:last-child{border-bottom:none}
  .slider-row{grid-template-columns:1fr 58px; gap:6px 12px; padding:12px 0}
  .slider-row .sym{grid-column:1 / -1}
  .facts{grid-template-columns:1fr}
  .app-panel{padding:18px}
  .panel{padding:18px}
  .foot-cols{grid-template-columns:1fr}
  .btn{width:100%}
  .btnrow .btn{width:auto}
  .hero .cta .btn{width:auto; flex:1 1 auto}
  .navcta{font-size:12.5px; padding:8px 12px}
}
@media print{
  .nav,footer{display:none}
  body{background:#fff}
}
