/* ============================================================
   AI FranchiseOps — franchise.akontec.com
   Design: NETWORK ATLAS with BRAND-MANUAL discipline.
   Bone paper, full-bleed black chapter panels, oversized
   outlined chapter numerals, wayfinding red, territory tiles,
   spec-sheet tables. Shares nothing with the eCommOps console.
   ============================================================ */

:root{
  --bone:#FAF9F7; --bone2:#FFFFFF; --bone3:#EFECE6; --bone4:#E2DDD4;
  --ink:#101010; --ink2:#2E2E2E; --ink3:#5C5A57; --ink4:#8E8B85;
  --rule:#DCD7CE; --rule2:#C2BBAF;
  --red:#C00000; --red2:#960000; --red-wash:#FBECEA;
  --disp:'Syne',Impact,sans-serif;
  --sans:'Public Sans',Helvetica,Arial,sans-serif;
  --mono:'DM Mono',ui-monospace,monospace;
  --pad:clamp(20px,5vw,60px);
  --maxw:1300px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--bone);color:var(--ink);
  font-family:var(--sans);font-size:16.5px;line-height:1.62;font-weight:400;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}

h1,h2,h3{font-family:var(--disp);font-weight:800;line-height:1.04;letter-spacing:-.022em;margin:0;overflow-wrap:break-word}
h1{font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.02}
h2{font-size:clamp(1.5rem,2.7vw,2.25rem)}
h3{font-size:clamp(1.1rem,1.5vw,1.32rem);font-weight:700;letter-spacing:-.015em}
h4{font-family:var(--sans);font-size:1.02rem;font-weight:700;margin:0;line-height:1.35;letter-spacing:-.005em}
p{margin:0 0 1.05em}

.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.sec{padding:clamp(52px,7.5vw,110px) 0;border-top:1px solid var(--rule);position:relative}
.sec--flush{border-top:0}
.sec--tint{background:var(--bone3)}
.sec--dark{background:var(--ink);color:var(--bone);border-top:0}
.sec--dark h2,.sec--dark h3,.sec--dark h4{color:var(--bone)}
.sec--dark .lede,.sec--dark .dim{color:#B8B4AE}
.sec--dark .kick{color:#8E8B85}

/* --- wayfinding furniture ----------------------------------- */
.kick{
  font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.22em;
  text-transform:uppercase;color:var(--ink4);margin:0 0 20px;
  display:flex;align-items:center;gap:12px
}
.kick::before{content:"";width:9px;height:9px;background:var(--red);flex:none}
.no{font-family:var(--disp);font-size:.95rem;font-weight:800;color:var(--red)}
.lede{font-size:clamp(1.06rem,1.6vw,1.26rem);line-height:1.55;color:var(--ink2);max-width:62ch}
.dim{color:var(--ink3)}

/* --- header -------------------------------------------------- */
.nav{position:sticky;top:0;z-index:60;background:rgba(250,249,247,.94);backdrop-filter:blur(12px);border-bottom:2px solid var(--ink)}
.nav__in{display:flex;align-items:center;gap:22px;height:70px;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;flex:none}
.brand__mk{width:34px;height:34px;flex:none}
.brand__tx{font-family:var(--disp);font-weight:800;font-size:17px;letter-spacing:-.04em;line-height:1;display:block}
.brand__sub{font-family:var(--mono);font-size:8.5px;letter-spacing:.2em;color:var(--ink4);text-transform:uppercase;display:block;margin-top:4px}
.nav__links{display:flex;margin-left:auto;align-items:center;gap:0}
.nav__links a{
  font-size:13px;font-weight:500;color:var(--ink2);padding:9px 11px;text-decoration:none;
  position:relative;transition:color .18s
}
.nav__links a::after{content:"";position:absolute;left:11px;right:11px;bottom:4px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .22s}
.nav__links a:hover::after,.nav__links a[aria-current="page"]::after{transform:scaleX(1)}
.nav__links a[aria-current="page"]{color:var(--red)}
.nav__cta{
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  background:var(--ink);color:var(--bone)!important;padding:12px 17px;margin-left:12px;
  text-decoration:none;transition:background .18s
}
.nav__cta::after{display:none!important}
.nav__cta:hover{background:var(--red)}
.burger{display:none;margin-left:auto;background:none;border:2px solid var(--ink);color:var(--ink);width:42px;height:38px;cursor:pointer;font-size:16px}

/* --- index strip --------------------------------------------- */
.strip{background:var(--ink);color:var(--bone);overflow:hidden}
.strip__t{display:flex;width:max-content;animation:sl 54s linear infinite}
.strip__t span{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;padding:10px 26px;white-space:nowrap;color:#8E8B85;position:relative}
.strip__t span::after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:5px;height:5px;background:var(--red)}
.strip__t b{color:var(--bone);font-weight:400}
@keyframes sl{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.strip__t{animation:none}}

/* --- chapter opener ------------------------------------------ */
.chapter{background:var(--ink);color:var(--bone);padding:clamp(40px,6vw,84px) 0;border-top:0}
.chapter__in{display:grid;grid-template-columns:auto 1fr;gap:clamp(22px,4vw,58px);align-items:start}
.chapter__no{
  font-family:var(--disp);font-weight:800;font-size:clamp(2.6rem,6.5vw,5rem);
  line-height:.82;color:transparent;-webkit-text-stroke:2px var(--red);letter-spacing:-.04em
}
.chapter h1,.chapter h2{color:var(--bone)}
.chapter .lede{color:#B8B4AE}
.chapter__meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#8E8B85;margin-bottom:16px}

/* --- hero / atlas -------------------------------------------- */
.hero{background:var(--ink);color:var(--bone);padding:clamp(38px,5vw,64px) 0 0;overflow:hidden}
.hero h1{color:var(--bone);font-size:clamp(2rem,3.6vw,3.1rem);max-width:15ch}
.hero h1 em{font-style:normal;color:var(--red)}
.hero__g{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,56px);align-items:center}
.hero .lede{color:#B8B4AE}
.pills{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 26px}
.pill{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;border:1px solid #3A3A3A;padding:5px 10px;color:#B8B4AE}
.pill--red{background:var(--red);border-color:var(--red);color:#fff}

.atlas{width:100%;max-width:440px;height:auto;overflow:visible;margin:0 auto}
.atlas .lk{stroke:#3A3A3A;stroke-width:1;stroke-dasharray:200;stroke-dashoffset:200;animation:draw 1.6s ease forwards}
.atlas .nd{opacity:0;animation:pop .5s ease forwards}
.atlas .hub{fill:var(--red)}
.atlas .ring{fill:none;stroke:#2A2A2A;stroke-width:1}
.atlas .pulse{fill:none;stroke:var(--red);stroke-width:1.5;opacity:.5;animation:rad 3.6s ease-out infinite}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes pop{to{opacity:1}}
@keyframes rad{0%{r:26;opacity:.55}100%{r:158;opacity:0}}
@media(prefers-reduced-motion:reduce){
  .atlas .lk{stroke-dashoffset:0;animation:none}
  .atlas .nd{opacity:1;animation:none}
  .atlas .pulse{display:none}
}

/* --- spec rail ------------------------------------------------ */
.rail{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--red);margin-top:clamp(34px,5vw,58px)}
.rail>div{padding:24px 26px 30px;border-right:1px solid #2A2A2A;background:#151515}
.rail>div:last-child{border-right:0}
.rail__k{font-family:var(--mono);font-size:9.5px;letter-spacing:.19em;text-transform:uppercase;color:var(--ink4);margin-bottom:12px}
.rail__v{font-family:var(--disp);font-size:clamp(1.5rem,2.4vw,2rem);font-weight:800;letter-spacing:-.03em;line-height:1.05;color:var(--ink);overflow-wrap:break-word}
.rail__n{font-size:13px;color:var(--ink3);margin-top:10px;line-height:1.45}
/* dark rail (hero / commercials) repaints the three tokens */
.rail .rail__k{color:#8E8B85}
.rail .rail__v{color:var(--bone)}
.rail .rail__n{color:#8E8B85}
.rail--hot{background:var(--red)!important;border-right-color:var(--red)!important}
.rail--hot .rail__k{color:#FFC9C9}
.rail--hot .rail__v{color:#fff}
.rail--hot .rail__n{color:#FFD9D9}

/* --- buttons ------------------------------------------------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);
  font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  padding:16px 26px;background:var(--red);color:#fff;border:2px solid var(--red);
  transition:background .2s,color .2s,border-color .2s;cursor:pointer
}
.btn:hover{background:var(--red2);border-color:var(--red2)}
.btn--o{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn--o:hover{background:var(--ink);color:var(--bone)}
.btn--l{background:var(--bone);color:var(--ink);border-color:var(--bone)}
.btn--l:hover{background:var(--ink);color:var(--bone);border-color:var(--ink)}
.btn--gh{background:transparent;color:var(--bone);border-color:#4A4A4A}
.btn--gh:hover{background:var(--bone);color:var(--ink);border-color:var(--bone)}
.btns{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}

/* --- layout -------------------------------------------------- */
.lead-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(22px,3.2vw,48px);align-items:start}
.lead-split>*:first-child{position:sticky;top:92px}
.even{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,56px)}
.cols2{column-count:2;column-gap:clamp(26px,3.4vw,48px)}
.cols2 p{break-inside:avoid}

/* --- territory tiles ----------------------------------------- */
.deck{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--rule2)}
.deck--2{grid-template-columns:repeat(2,1fr)}
.deck--4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--bone2);padding:clamp(22px,2.5vw,32px);position:relative;transition:background .22s}
.card::before{content:"";position:absolute;left:0;top:0;width:0;height:3px;background:var(--red);transition:width .3s ease}
.card:hover::before{width:100%}
.card--t{background:var(--bone3)}
.card__no{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--red);margin-bottom:14px}
.card h4{margin-bottom:9px}
.card p{font-size:14.3px;color:var(--ink3);margin:0}
.card p+p{margin-top:.75em}
.sec--dark .deck{background:#2A2A2A}
.sec--dark .card{background:var(--ink)}
.sec--dark .card p{color:#9C9993}

/* --- lists --------------------------------------------------- */
.tick{list-style:none;padding:0;margin:0}
.tick li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid var(--rule);font-size:15px;color:var(--ink2)}
.tick li::before{content:"";position:absolute;left:0;top:20px;width:12px;height:2px;background:var(--red)}
.tick li:last-child{border-bottom:0}
.tick b{color:var(--ink);font-weight:700}
.cross{list-style:none;padding:0;margin:0}
.cross li{position:relative;padding:13px 0 13px 30px;border-bottom:1px solid var(--rule);font-size:15px;color:var(--ink2)}
.cross li::before{content:"\00D7";position:absolute;left:1px;top:11px;color:var(--red);font-family:var(--mono);font-size:17px;font-weight:700}
.cross li:last-child{border-bottom:0}
.sec--dark .tick li,.sec--dark .cross li{border-color:#2A2A2A;color:#B8B4AE}
.sec--dark .tick b{color:#fff}

.roman{list-style:none;padding:0;margin:0;counter-reset:r}
.roman li{counter-increment:r;position:relative;padding:24px 0 24px 68px;border-bottom:1px solid var(--rule)}
.roman li::before{
  content:counter(r,decimal-leading-zero);position:absolute;left:0;top:20px;
  font-family:var(--disp);font-size:1.6rem;font-weight:800;color:transparent;
  -webkit-text-stroke:1.5px var(--red);letter-spacing:-.04em
}
.roman li:last-child{border-bottom:0}
.roman h4{margin-bottom:7px}
.roman p{font-size:14.4px;color:var(--ink3);margin:0}
.sec--dark .roman li{border-color:#2A2A2A}
.sec--dark .roman p{color:#9C9993}

/* --- spec sheet tables --------------------------------------- */
.tw{overflow-x:auto;border-top:3px solid var(--ink);background:var(--bone2)}
table.t{width:100%;border-collapse:collapse;min-width:560px}
table.t th{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink4);text-align:left;padding:13px 16px;border-bottom:1px solid var(--rule2);
  white-space:nowrap;font-weight:500;background:var(--bone2)
}
table.t th.n{text-align:right}
table.t td{padding:14px 16px;border-bottom:1px solid var(--rule);font-size:14.4px;color:var(--ink2);vertical-align:top}
table.t tr:last-child td{border-bottom:0}
table.t td:first-child{color:var(--ink);font-weight:600}
table.t .n{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:13.5px}
table.t tr.tot td{background:var(--ink);color:var(--bone);font-weight:700;border-bottom:0}
table.t tr.tot td:first-child{color:var(--bone)}
table.t tr.alt td{background:var(--bone3)}
.sec--dark .tw{background:#151515;border-top-color:var(--red)}
.sec--dark table.t th{background:#151515;color:#8E8B85;border-bottom-color:#3A3A3A}
.sec--dark table.t td{color:#B8B4AE;border-bottom-color:#2A2A2A}
.sec--dark table.t td:first-child{color:#fff}
.sec--dark table.t tr.tot td{background:var(--red);color:#fff}

/* --- badges -------------------------------------------------- */
.tagx{font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;padding:3px 8px;border:1px solid var(--rule2);white-space:nowrap;color:var(--ink3)}
.tagx--s{border-color:var(--ink);color:var(--ink);background:var(--bone3)}
.tagx--d{border-color:var(--red);color:var(--red);background:var(--red-wash)}
.sec--dark .tagx{border-color:#3A3A3A;color:#B8B4AE}
.sec--dark .tagx--s{border-color:#6A6A6A;color:#fff;background:transparent}
.sec--dark .tagx--d{border-color:var(--red);color:#FF8A8A;background:transparent}

/* --- statement panel ----------------------------------------- */
.pull{
  background:var(--ink);color:var(--bone);padding:clamp(28px,4vw,52px);
  margin:40px 0;font-family:var(--disp);font-weight:700;
  font-size:clamp(1.12rem,1.9vw,1.55rem);line-height:1.3;letter-spacing:-.02em;
  border-left:8px solid var(--red)
}
.sidenote{border-left:3px solid var(--red);padding:4px 0 4px 18px;font-size:14.2px;color:var(--ink3)}
.box{background:var(--bone2);border-top:3px solid var(--ink);padding:clamp(24px,3vw,38px)}
.box--ink{background:var(--ink);color:#B8B4AE;border-top-color:var(--red)}
.box--ink h3{color:var(--bone)}
.box--red{background:var(--red);color:#FFE2E0;border-top-color:var(--ink)}
.box--red h3{color:#fff}
.box--red .cross li{color:#FFD6D3;border-color:rgba(255,255,255,.22)}
.box--red .cross li::before{color:#fff}

/* --- console plate ------------------------------------------- */
.net{border-top:3px solid var(--red);background:var(--ink);color:var(--bone)}
.net__h{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #2A2A2A}
.net__h b{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:#B8B4AE}
.net__h i{margin-left:auto;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;font-style:normal;color:var(--red)}
.net__b{padding:18px}
.net__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:1px;background:#2A2A2A;margin-bottom:16px}
.net__u{padding:12px;background:var(--ink)}
.net__u span{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:#8E8B85;display:block}
.net__u b{font-family:var(--disp);font-size:1.1rem;font-weight:800;display:block;margin-top:6px;color:var(--bone)}
.net table{width:100%;border-collapse:collapse}
.net th{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:#8E8B85;text-align:left;padding:8px;border-bottom:1px solid #3A3A3A;font-weight:500}
.net td{padding:8px;border-bottom:1px solid #232323;font-size:12px;color:#B8B4AE}
.net tr:last-child td{border-bottom:0}
.net td:first-child{color:#fff;font-weight:500}
.net__c{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:#6A6A6A;margin:14px 0 0}

/* --- 24 hours timeline --------------------------------------- */
.hours{border-top:3px solid var(--ink);margin-top:34px}
.hour{display:grid;grid-template-columns:118px 1fr;gap:clamp(16px,2.4vw,34px);padding:22px 0;border-bottom:1px solid var(--rule);align-items:start}
.hour__t{font-family:var(--disp);font-size:1.28rem;font-weight:800;letter-spacing:-.04em;color:var(--red);line-height:1}
.hour__t span{display:block;font-family:var(--mono);font-size:9.5px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--ink4);margin-top:8px}
.hour h4{margin-bottom:6px}
.hour p{font-size:14.4px;color:var(--ink3);margin:0}
.hour__who{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink4);margin-top:10px}
.hour--h{background:var(--bone3);padding-left:20px;padding-right:20px}

/* --- lifecycle ----------------------------------------------- */
.life{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--rule2);border-top:3px solid var(--ink);margin-top:34px}
.life__s{background:var(--bone2);padding:26px 22px}
.life__s>span{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:12px}
.life__s h4{margin-bottom:10px}
.life__s p{font-size:13.8px;color:var(--ink3);margin:0 0 14px}
.life__s ul{list-style:none;padding:0;margin:0}
.life__s li{font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;color:var(--ink2);padding:5px 0;border-top:1px solid var(--rule)}

/* --- verticals ----------------------------------------------- */
.vert{display:grid;grid-template-columns:190px 1fr;gap:clamp(18px,3vw,40px);padding:32px 0;border-bottom:1px solid var(--rule);align-items:start}
.vert__n{font-family:var(--disp);font-size:1.2rem;font-weight:800;letter-spacing:-.03em;line-height:1.05}
.vert__n span{display:block;font-family:var(--mono);font-size:9.5px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-top:9px}
.vert__g{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.vert__g h5{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink4);margin:0 0 7px;font-weight:500}
.vert__g p{font-size:13.9px;color:var(--ink2);margin:0}

/* --- sticky section rail ------------------------------------- */
.srail{position:sticky;top:92px;align-self:start}
.srail ol{list-style:none;padding:0;margin:0;border-top:2px solid var(--ink)}
.srail li{border-bottom:1px solid var(--rule)}
.srail a{display:block;padding:11px 0;font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink3);text-decoration:none;transition:color .18s,padding-left .18s}
.srail a:hover{color:var(--red);padding-left:8px}

/* --- faq ----------------------------------------------------- */
.qa{border-top:3px solid var(--ink)}
.qa details{border-bottom:1px solid var(--rule)}
.qa summary{
  padding:22px 52px 22px 0;cursor:pointer;list-style:none;position:relative;
  font-family:var(--disp);font-size:1.02rem;font-weight:700;letter-spacing:-.015em
}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";position:absolute;right:4px;top:20px;color:var(--red);font-family:var(--mono);font-size:19px}
.qa details[open] summary::after{content:"\2013"}
.qa summary:hover{color:var(--red)}
.qa__a{padding:0 40px 24px 0;font-size:14.8px;color:var(--ink3);max-width:76ch}
.qa__a p:last-child{margin-bottom:0}

/* --- form ---------------------------------------------------- */
.form{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.fi{display:flex;flex-direction:column;gap:6px}
.fi--w{grid-column:1/-1}
.fi label{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink4)}
.fi input,.fi select,.fi textarea{
  background:var(--bone2);border:1px solid var(--rule2);color:var(--ink);padding:13px;
  font-family:var(--sans);font-size:15px;border-radius:0;width:100%
}
.fi input:focus,.fi select:focus,.fi textarea:focus{outline:none;border-color:var(--red);box-shadow:inset 0 -2px 0 var(--red)}
.fi textarea{min-height:114px;resize:vertical}
.fi--c{flex-direction:row;align-items:flex-start;gap:10px}
.fi--c input{width:17px;height:17px;flex:none;margin-top:3px;accent-color:var(--red)}
.fi--c label{font-family:var(--sans);font-size:13.5px;letter-spacing:0;text-transform:none;color:var(--ink3)}

/* --- cta ----------------------------------------------------- */
.cta{background:var(--red);color:#fff}
.cta__in{padding:clamp(46px,6vw,84px) 0;display:grid;grid-template-columns:1.3fr .7fr;gap:36px;align-items:center}
.cta h2{color:#fff}
.cta .lede{color:#FFDDDB}

/* --- footer -------------------------------------------------- */
.ft{background:var(--ink);color:#B8B4AE;padding:clamp(46px,6vw,72px) 0 28px}
.ft__g{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px}
.ft .brand__tx{color:var(--bone)}
.ft h5{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:#6A6A6A;margin:0 0 14px;font-weight:500}
.ft ul{list-style:none;padding:0;margin:0}
.ft li{margin-bottom:8px}
.ft a{font-size:13.8px;color:#B8B4AE;text-decoration:none}
.ft a:hover{color:var(--red)}
.ft__d{margin-top:38px;padding:18px;border-top:2px solid var(--red);background:#171717;font-size:12.4px;color:#8E8B85;line-height:1.6}
.ft__d strong{color:#B8B4AE}
.ft__b{margin-top:22px;padding-top:18px;border-top:1px solid #2A2A2A;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-family:var(--mono);font-size:10.5px;color:#6A6A6A;letter-spacing:.08em}

/* --- page head ----------------------------------------------- */
.ph{padding:clamp(40px,5.5vw,80px) 0 clamp(32px,4vw,52px);border-bottom:3px solid var(--ink)}
.bc{font-family:var(--mono);font-size:10.5px;color:var(--ink4);letter-spacing:.11em;margin-bottom:22px}
.bc a{color:var(--ink3);text-decoration:none}
.bc a:hover{color:var(--red)}

/* --- reveal -------------------------------------------------- */
.rv{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* --- responsive ---------------------------------------------- */
@media(max-width:1060px){
  .lead-split>*:first-child{position:static}
  .nav__links{
    position:fixed;inset:70px 0 auto 0;background:var(--bone);border-bottom:2px solid var(--ink);
    flex-direction:column;align-items:stretch;padding:10px var(--pad) 18px;display:none;
    max-height:calc(100vh - 70px);overflow-y:auto
  }
  .nav__links.open{display:flex}
  .nav__links a{padding:13px 2px;border-bottom:1px solid var(--rule)}
  .nav__cta{margin:12px 0 0;justify-content:center;display:flex}
  .burger{display:block}
  .deck,.deck--4,.life{grid-template-columns:repeat(2,1fr)}
  .lead-split,.even,.cta__in,.hero__g{grid-template-columns:1fr}
  .chapter__in{grid-template-columns:1fr}
  .vert{grid-template-columns:1fr}
  .srail{position:static}
  .ft__g{grid-template-columns:1fr 1fr}
}
@media(max-width:740px){
  .cols2{column-count:1}
  .rail,.deck,.deck--2,.deck--4,.life,.vert__g{grid-template-columns:1fr}
  .rail>div{border-right:0;border-bottom:1px solid #2A2A2A}
  .hour{grid-template-columns:1fr;gap:10px}
  .form{grid-template-columns:1fr}
  .ft__g{grid-template-columns:1fr}
}
