
:root{
  color-scheme: light;
  --chili:#D8231B; --chili-deep:#A9140F; --char:#140C0B; --char-2:#241816;
  --flame:#FFB81C; --paper:#FAF5EF; --paper-2:#F1E7DB; --stem:#4E9A2A;
  --smoke:#6E5E5A; --ink:#140C0B; --line:rgba(20,12,11,.14);
  --display:"Archivo","Arial Black",Impact,sans-serif;
  --body:"Hanken Grotesk","Helvetica Neue",Arial,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
  --script:"Shrikhand","Cooper Black",Georgia,serif;
  --wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
h1,h2,h3{font-family:var(--display);font-stretch:112%;font-weight:900;line-height:.95;letter-spacing:-.01em;text-wrap:balance;margin:0}
.eyebrow{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.script{font-family:var(--script);font-weight:400}
:focus-visible{outline:3px solid var(--flame);outline-offset:3px}
.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--display);font-stretch:100%;font-weight:800;font-size:16px;text-decoration:none;padding:15px 22px;border-radius:999px;border:2px solid var(--char);cursor:pointer;transition:transform .15s ease, box-shadow .15s ease}
.btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--char)}
.btn-flame{background:var(--flame);color:var(--char)}
.btn-char{background:var(--char);color:var(--paper)}
.btn-ghost{background:transparent;color:var(--paper);border-color:var(--paper)}
.btn-ghost:hover{box-shadow:4px 4px 0 var(--paper)}

/* ---------- header ---------- */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--char);color:var(--paper)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{height:46px;width:auto;display:block}
.brand b{font-family:var(--display);font-stretch:100%;font-weight:900;font-size:21px;letter-spacing:-.02em}
.brand b span{color:var(--chili)}
.nav{display:flex;gap:26px;align-items:center}
.nav a{text-decoration:none;font-weight:500;font-size:15px;opacity:.85}
.nav a:hover{opacity:1;color:var(--flame)}
.nav .btn{padding:10px 16px;font-size:14px;border-color:var(--flame);opacity:1}
@media (max-width:860px){.nav a:not(.btn){display:none}}

.ticker{background:var(--flame);color:var(--char);overflow:hidden;border-block:2px solid var(--char)}
.ticker-track{display:flex;width:max-content;animation:tick 38s linear infinite}
.ticker span{font-family:var(--display);font-stretch:125%;font-weight:900;font-size:14px;text-transform:uppercase;padding:9px 0;white-space:nowrap}
.ticker i{font-style:normal;color:var(--chili);padding-inline:18px}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- hero ---------- */
.hero{background:var(--chili);color:var(--paper);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 78% 70%, rgba(255,184,28,.35), transparent 42%),
  repeating-linear-gradient(135deg, rgba(0,0,0,.05) 0 2px, transparent 2px 14px);pointer-events:none}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:end;padding-top:clamp(40px,6vw,72px)}
.hero-copy{padding-bottom:clamp(40px,6vw,76px)}
.hero .eyebrow{display:inline-flex;gap:10px;align-items:center;background:var(--char);color:var(--flame);padding:7px 12px;border-radius:4px}
.hero h1{font-size:clamp(46px,7.4vw,104px);margin-top:22px;text-transform:uppercase;font-stretch:118%}
.hero h1 em{font-style:normal;color:var(--char);display:inline-block;background:var(--flame);padding:0 .12em;transform:rotate(-2deg);line-height:1.05}
.hero-sub{font-size:clamp(18px,1.7vw,21px);max-width:34ch;margin:24px 0 30px;color:#FFE9E3}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}
.hero-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:34px;font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:#FFD9D0}
.hero-meta b{color:var(--paper)}
.chris-wrap{position:relative;align-self:end;justify-self:center;width:min(100%,430px)}
.chris-wrap img{display:block;width:100%;height:auto;filter:drop-shadow(-14px 0 0 var(--char))}
.bubble{position:absolute;top:7%;left:-18%;background:var(--paper);color:var(--char);font-family:var(--display);font-stretch:100%;font-weight:900;font-size:clamp(17px,1.8vw,22px);line-height:1.05;padding:14px 16px;border:3px solid var(--char);border-radius:18px;transform:rotate(-6deg);max-width:210px;box-shadow:5px 5px 0 var(--char)}
.bubble::after{content:"";position:absolute;right:-18px;bottom:16px;border:12px solid transparent;border-left:20px solid var(--char)}
.bubble small{display:block;font-family:var(--body);font-weight:500;font-size:13px;margin-top:6px;color:var(--smoke)}
.seal{position:absolute;right:-6px;bottom:18%;width:128px;height:128px;border-radius:50%;background:var(--flame);color:var(--char);display:grid;place-items:center;text-align:center;border:3px solid var(--char);transform:rotate(12deg);box-shadow:4px 4px 0 var(--char)}
.seal div{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.3}
.seal .script{font-size:26px;letter-spacing:0;text-transform:none;display:block;line-height:1;margin:3px 0}
.caption-tag{position:absolute;left:0;bottom:12px;background:var(--char);color:var(--paper);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px}
@media (max-width:860px){
  .hero .wrap{grid-template-columns:1fr}
  .hero-copy{padding-bottom:0}
  .chris-wrap{width:min(78%,340px);margin-top:10px}
  .bubble{left:-8%;top:2%;max-width:160px;font-size:16px}
  .seal{width:104px;height:104px;right:-14%}
  .seal .script{font-size:21px}
}

/* ---------- proof strip ---------- */
.proof{background:var(--char);color:var(--paper)}
.proof .wrap{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding-block:26px}
.proof .big{font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(34px,4vw,52px);color:var(--flame);line-height:1}
.proof .big small{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--paper);text-transform:uppercase;margin-top:6px;font-stretch:100%}
.proof q{font-size:17px;color:#EADBD6;quotes:"\201C" "\201D"}
.proof cite{font-style:normal;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#B9A7A2;white-space:nowrap}
@media (max-width:760px){.proof .wrap{grid-template-columns:1fr;gap:12px}}

/* ---------- sections ---------- */
section{padding-block:clamp(64px,9vw,120px)}
.sec-head{display:grid;gap:14px;max-width:760px;margin-bottom:clamp(34px,5vw,56px)}
.sec-head h2{font-size:clamp(38px,5.4vw,72px);text-transform:uppercase}
.sec-head p{font-size:19px;color:var(--smoke);max-width:58ch;margin:0}
.eyebrow.red{color:var(--chili)}

/* ---------- where they look / AEO demo ---------- */
.look-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
@media (max-width:900px){.look-grid{grid-template-columns:1fr}}
.name-row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;background:var(--paper-2);border:2px dashed rgba(20,12,11,.25);border-radius:14px;padding:16px 18px}
.name-row label{font-weight:700}
.name-row input{flex:1 1 220px;min-width:0;font:inherit;font-size:17px;padding:11px 14px;border:2px solid var(--char);border-radius:10px;background:#fff;color:var(--char)}
.name-row .hint{font-size:14px;color:var(--smoke);flex-basis:100%}
.screen{background:#fff;border:2px solid var(--char);border-radius:18px;overflow:hidden;box-shadow:8px 8px 0 var(--char)}
.screen-bar{display:flex;align-items:center;gap:10px;background:var(--char);color:var(--paper);padding:10px 14px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.screen-bar i{width:9px;height:9px;border-radius:50%;background:var(--chili);display:inline-block}
.screen-bar i+i{background:var(--flame)} .screen-bar i+i+i{background:var(--stem)}
.screen-body{padding:18px}
.q{display:flex;align-items:center;gap:10px;border:1.5px solid #D9D0CC;border-radius:999px;padding:10px 16px;font-size:15px;color:#3b302e;margin-bottom:16px}
.q svg{flex:none}
.map{height:120px;border-radius:12px;background:
  linear-gradient(90deg, transparent 48%, #fff 48% 52%, transparent 52%) 0 0/90px 100%,
  linear-gradient(0deg, transparent 46%, #fff 46% 54%, transparent 54%) 0 0/100% 70px,
  #E9EFE3;position:relative;margin-bottom:12px;overflow:hidden}
.pin{position:absolute;width:22px;height:22px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#9C918E;border:2px solid #fff}
.pin.you{background:var(--chili);width:30px;height:30px;box-shadow:0 0 0 6px rgba(216,35,27,.2)}
.listing{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid #EEE6E2;font-size:15px}
.listing:last-child{border-bottom:0}
.listing .n{font-family:var(--mono);font-weight:700;color:var(--smoke)}
.listing .stars{color:#E3A008;font-size:13px;letter-spacing:1px}
.listing small{display:block;color:var(--smoke);font-size:13px}
.listing.you{background:#FFF1E0;border-radius:10px;padding-inline:8px}
.listing.you b{color:var(--chili-deep)}
.tag{font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 7px;border-radius:5px;background:var(--char);color:var(--flame)}
.chat-q{margin-left:auto;background:var(--char);color:var(--paper);padding:11px 15px;border-radius:16px 16px 4px 16px;max-width:86%;font-size:15px;width:fit-content}
.chat-a{margin-top:14px;display:grid;grid-template-columns:30px 1fr;gap:12px;font-size:15px}
.chat-a .av{width:30px;height:30px;border-radius:8px;background:var(--paper-2);display:grid;place-items:center;font-family:var(--mono);font-weight:700;font-size:12px}
.chat-a p{margin:0 0 10px}
.chat-a ol{margin:0 0 10px;padding-left:20px}
.chat-a li{margin-bottom:6px}
.chat-a mark{background:#FFE3B0;color:var(--char);padding:0 3px;border-radius:3px;font-weight:700}
.chat-a .src{display:flex;flex-wrap:wrap;gap:6px}
.chat-a .src span{font-family:var(--mono);font-size:11px;border:1px solid #DDD3CF;border-radius:999px;padding:3px 9px;color:var(--smoke)}
.surfaces{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:2px solid var(--char);margin-top:12px}
.surfaces div{padding:18px 18px 0 0}
.surfaces b{font-family:var(--display);font-stretch:112%;font-size:19px;display:block;margin-bottom:4px}
.surfaces p{margin:0;font-size:15px;color:var(--smoke)}
@media (max-width:900px){.surfaces{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.surfaces{grid-template-columns:1fr}}

/* ---------- menu ---------- */
.menu{background:var(--char);color:var(--paper);position:relative}
.menu .sec-head p{color:#C9B8B3}
.menu .eyebrow.red{color:var(--flame)}
.menu-card{background:var(--paper);color:var(--char);border-radius:22px;padding:clamp(22px,4vw,48px);position:relative;box-shadow:0 0 0 2px var(--char),0 0 0 8px var(--chili)}
.menu-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:3px double var(--char);padding-bottom:16px;margin-bottom:8px}
.menu-top .script{font-size:clamp(30px,4vw,44px);color:var(--chili)}
.menu-top .legend{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--smoke);display:flex;align-items:center;gap:8px}
.menu-cols{display:grid;grid-template-columns:1fr 1fr;column-gap:56px}
@media (max-width:860px){.menu-cols{grid-template-columns:1fr}}
.dish{padding:20px 0;border-bottom:1px dashed rgba(20,12,11,.25)}
.dish-head{display:flex;align-items:baseline;gap:10px}
.dish h3{font-size:22px;font-stretch:108%;text-transform:uppercase;white-space:nowrap}
.dish .dots{flex:1;border-bottom:2px dotted rgba(20,12,11,.35);transform:translateY(-5px);min-width:20px}
.heat{display:inline-flex;gap:2px;flex:none}
.heat svg{width:14px;height:18px}
.dish p{margin:8px 0 8px;font-size:15.5px;color:#4a3e3b;max-width:52ch}
.dish .pairs{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--smoke)}
.dish .pairs b{color:var(--chili)}
.dish.new h3::after{content:"New";font-family:var(--script);font-size:15px;font-stretch:100%;text-transform:none;color:var(--paper);background:var(--chili);padding:1px 8px 3px;border-radius:999px;margin-left:8px;vertical-align:4px;letter-spacing:0}
@media (max-width:420px){.dish h3{white-space:normal;font-size:19px}}

/* ---------- heat check ---------- */
.heatcheck{background:var(--paper-2)}
.hc{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(24px,4vw,56px);align-items:start}
@media (max-width:900px){.hc{grid-template-columns:1fr}}
.checks{display:grid;gap:10px}
.check{display:grid;grid-template-columns:30px 1fr auto;gap:14px;align-items:center;background:#fff;border:2px solid var(--char);border-radius:14px;padding:14px 16px;cursor:pointer;transition:background .15s, transform .15s}
.check:hover{transform:translateX(3px)}
.check input{position:absolute;opacity:0;pointer-events:none}
.box{width:28px;height:28px;border:2px solid var(--char);border-radius:8px;display:grid;place-items:center;background:#fff}
.box svg{opacity:0;transition:opacity .15s}
.check:has(input:checked){background:#FFF3DC}
.check:has(input:checked) .box{background:var(--chili);border-color:var(--chili)}
.check:has(input:checked) .box svg{opacity:1}
.check:has(input:focus-visible){outline:3px solid var(--flame);outline-offset:2px}
.check b{display:block;font-size:16px}
.check small{color:var(--smoke);font-size:14px}
.check .svc{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke);text-align:right}
.example-note{font-family:var(--mono);font-size:12px;color:var(--smoke);margin:0 0 12px;letter-spacing:.04em}
.gauge{position:sticky;top:90px;background:var(--char);color:var(--paper);border-radius:22px;padding:26px;display:grid;grid-template-columns:64px 1fr;gap:22px}
.thermo{position:relative;width:64px;height:360px;display:flex;justify-content:center}
.tube{position:absolute;top:0;bottom:44px;width:22px;border-radius:12px;background:#3a2b28;overflow:hidden}
.fill{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(to top,var(--stem),var(--flame) 45%,var(--chili) 85%);transition:height .6s cubic-bezier(.2,.8,.2,1)}
.bulb{position:absolute;bottom:0;width:52px;height:52px;border-radius:50%;background:var(--chili);border:4px solid var(--char);box-shadow:0 0 0 3px #3a2b28}
.ticks{position:absolute;left:44px;top:0;bottom:44px;display:flex;flex-direction:column;justify-content:space-between;font-family:var(--mono);font-size:9px;color:#9d8a85;white-space:nowrap}
.readout .eyebrow{color:var(--flame)}
.readout .pepper{font-family:var(--display);font-stretch:118%;font-weight:900;font-size:clamp(32px,3.4vw,44px);text-transform:uppercase;line-height:.95;margin:10px 0 6px}
.readout .shu{font-family:var(--mono);font-weight:700;font-size:15px;color:var(--flame);font-variant-numeric:tabular-nums}
.readout .verdict{font-size:15.5px;color:#E3D3CE;margin:14px 0}
.readout .fix-h{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#9d8a85;margin:16px 0 8px}
.readout ul{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:6px}
.readout li{font-size:14.5px;display:flex;gap:8px}
.readout li::before{content:"";flex:none;width:8px;height:8px;margin-top:7px;border-radius:50%;background:var(--chili)}
@media (max-width:900px){.gauge{position:static}.thermo{height:300px}}
@media (max-width:420px){.gauge{grid-template-columns:44px 1fr;padding:20px;gap:14px}.thermo{width:44px}.ticks{display:none}}

/* ---------- recipe ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s;border:2px solid var(--char);border-radius:20px;overflow:hidden;background:#fff}
.step{padding:28px 24px 30px;border-right:2px solid var(--char);position:relative}
.step:last-child{border-right:0}
.step .num{font-family:var(--script);font-size:54px;color:var(--chili);line-height:1}
.step h3{font-size:22px;text-transform:uppercase;margin:12px 0 10px;font-stretch:108%}
.step p{margin:0;font-size:15.5px;color:#4a3e3b}
.step .when{display:inline-block;margin-top:16px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:var(--paper-2);padding:5px 9px;border-radius:5px}
@media (max-width:900px){.steps{grid-template-columns:1fr 1fr}.step:nth-child(2){border-right:0}.step:nth-child(-n+2){border-bottom:2px solid var(--char)}}
@media (max-width:560px){.steps{grid-template-columns:1fr}.step{border-right:0;border-bottom:2px solid var(--char)}.step:last-child{border-bottom:0}}

/* ---------- plans ---------- */
.plans{background:var(--chili);color:var(--paper)}
.plans .sec-head p{color:#FFE1DA}
.plans .eyebrow.red{color:var(--flame)}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
@media (max-width:900px){.plan-grid{grid-template-columns:1fr}}
.plan{background:var(--paper);color:var(--char);border:3px solid var(--char);border-radius:26px 26px 18px 18px;padding:0 0 26px;display:flex;flex-direction:column;box-shadow:8px 8px 0 var(--char)}
.plan.hot{background:var(--flame)}
.plan-cap{background:var(--char);color:var(--paper);border-radius:22px 22px 0 0;padding:16px 22px;display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase}
.plan-cap .heat svg{width:13px;height:17px}
.plan-label{margin:22px 22px 0;border:2px solid var(--char);border-radius:14px;padding:18px;text-align:center;background:rgba(255,255,255,.55)}
.plan-label .script{font-size:40px;color:var(--chili);line-height:1}
.plan-label .shu{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;margin-top:6px;color:var(--smoke)}
.plan.hot .plan-label .shu{color:var(--char)}
.plan-for{margin:18px 22px 6px;font-weight:700;font-size:16.5px}
.plan ul{margin:0 22px 22px;padding:0;list-style:none;display:grid;gap:8px;flex:1}
.plan li{font-size:15px;display:grid;grid-template-columns:18px 1fr;gap:8px}
.plan li svg{margin-top:4px}
.plan .term{margin:0 22px 14px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-top:2px dashed rgba(20,12,11,.3);padding-top:14px}
.plan .btn{margin:0 22px;justify-content:center}
.plans-note{margin-top:26px;font-size:15px;color:#FFE1DA}

/* ---------- chris ---------- */
.chris{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:center}
@media (max-width:900px){.chris{grid-template-columns:1fr}}
.portrait{position:relative;background:var(--char);border-radius:26px;aspect-ratio:4/5;max-width:100%;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.portrait::before{content:"CHIEF\A PEPPER\A OFFICER";white-space:pre;position:absolute;top:22px;left:22px;font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(40px,5vw,64px);line-height:.88;color:var(--chili)}
.portrait img{position:relative;width:74%;height:auto;display:block}
.portrait .sig{position:absolute;right:18px;bottom:18px;font-family:var(--script);font-size:30px;color:var(--flame);transform:rotate(-8deg)}
.chris h2{font-size:clamp(38px,5vw,64px);text-transform:uppercase}
.chris .lede{font-size:20px;margin:22px 0}
.chris p{color:#4a3e3b}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border-block:2px solid var(--char);margin:28px 0}
.facts div{padding:16px 12px 16px 0}
.facts b{display:block;font-family:var(--display);font-stretch:118%;font-weight:900;font-size:26px;line-height:1.05}
.facts span{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--smoke)}
@media (max-width:480px){.facts{grid-template-columns:1fr}.facts div{border-bottom:1px dashed var(--line)}}
.crew{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:15px}
.crew b{font-weight:700}
.crew span{color:var(--smoke)}

/* ---------- receipts ---------- */
.receipts{background:var(--char);color:var(--paper)}
.receipts .sec-head p{color:#C9B8B3}
.receipts .eyebrow.red{color:var(--flame)}
.rgrid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px;align-items:start}
@media (max-width:980px){.rgrid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.rgrid{grid-template-columns:1fr}}
.receipt{background:#FFFDF8;color:var(--char);padding:26px 22px 30px;position:relative;font-size:15.5px;
  -webkit-mask:radial-gradient(circle 7px at 50% 100%, transparent 98%, #000) 0 0/18px 100% repeat-x;
          mask:radial-gradient(circle 7px at 50% 100%, transparent 98%, #000) 0 0/18px 100% repeat-x}
.receipt .rh{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke);border-bottom:1.5px dashed #CFC3BE;padding-bottom:10px;margin-bottom:14px}
.receipt blockquote{margin:0}
.receipt .who{margin-top:16px;border-top:1.5px dashed #CFC3BE;padding-top:12px;font-weight:700}
.receipt .who span{display:block;font-weight:400;color:var(--smoke);font-size:14px}
.receipt.feature{background:var(--flame);grid-row:span 2}
.receipt.feature .rh{color:var(--char);border-color:rgba(20,12,11,.35)}
.receipt.feature .who{border-color:rgba(20,12,11,.35)}
.receipt.feature .who span{color:#4a3a18}
.line-items{font-family:var(--mono);font-size:13px;margin:14px 0 0;display:grid;gap:4px}
.line-items div{display:flex;justify-content:space-between;gap:10px;font-variant-numeric:tabular-nums}
.line-items div b{font-weight:700}
.brands{margin-top:48px;border-top:1px solid rgba(250,245,239,.2);padding-top:26px}
.brands .eyebrow{color:#9d8a85}
.brand-row{display:flex;flex-wrap:wrap;gap:12px 34px;margin-top:14px;align-items:baseline}
.brand-row span{font-family:var(--display);font-weight:800;font-size:22px;color:#EADBD6;font-stretch:100%}
.brand-row span:nth-child(3n+2){font-stretch:125%;font-weight:900;font-size:19px;text-transform:uppercase}
.brand-row span:nth-child(3n){font-family:var(--script);font-weight:400;font-size:24px}

/* ---------- faq ---------- */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,5vw,72px)}
@media (max-width:900px){.faq-grid{grid-template-columns:1fr}}
details{border-bottom:2px solid var(--char);padding:18px 0}
details:first-of-type{border-top:2px solid var(--char)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;font-family:var(--display);font-stretch:106%;font-weight:800;font-size:19px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--mono);color:var(--chili);font-size:24px;line-height:1;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{margin:12px 0 2px;color:#4a3e3b;max-width:62ch}

/* ---------- order ticket ---------- */
.order{background:var(--chili);color:var(--paper);overflow:hidden}
.order-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
@media (max-width:900px){.order-grid{grid-template-columns:1fr}}
.order h2{font-size:clamp(44px,6.4vw,92px);text-transform:uppercase}
.order .grin{display:block;width:min(100%,460px);margin-top:28px;filter:drop-shadow(10px 10px 0 var(--char))}
.order .contact-line{font-family:var(--mono);font-size:13px;letter-spacing:.04em;margin-top:20px;color:#FFE1DA}
.order .contact-line b{color:var(--paper)}
.ticket{background:#FFFDF8;color:var(--char);padding:26px 24px 34px;transform:rotate(1.2deg);box-shadow:10px 12px 0 var(--char);
  -webkit-mask:radial-gradient(circle 8px at 50% 0, transparent 98%, #000) 0 0/20px 100% repeat-x;
          mask:radial-gradient(circle 8px at 50% 0, transparent 98%, #000) 0 0/20px 100% repeat-x}
.ticket-h{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--char);padding-bottom:12px;margin-bottom:16px}
.ticket-h .script{font-size:30px;color:var(--chili)}
.ticket-h span:not(.script){font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.field{display:grid;gap:4px;margin-bottom:12px}
.field label{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--smoke)}
.field input,.field select{font:inherit;font-size:16px;padding:10px 0;border:0;border-bottom:2px dashed #BCAEA9;background:transparent;color:var(--char);border-radius:0}
.field input:focus,.field select:focus{outline:none;border-bottom:2px solid var(--chili)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:480px){.row2{grid-template-columns:1fr;gap:0}}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 18px}
.chip{position:relative}
.chip input{position:absolute;opacity:0}
.chip span{display:inline-block;font-size:14px;font-weight:700;border:2px solid var(--char);border-radius:999px;padding:6px 12px;cursor:pointer}
.chip input:checked+span{background:var(--char);color:var(--flame)}
.chip input:focus-visible+span{outline:3px solid var(--flame);outline-offset:2px}
.ticket .btn{width:100%;justify-content:center;background:var(--chili);color:var(--paper)}
.ticket .fine{font-size:12.5px;color:var(--smoke);margin:12px 0 0;text-align:center}
.sent{text-align:center;padding:30px 0}
.sent .script{font-size:40px;color:var(--chili);display:block}

/* ---------- footer ---------- */
footer{background:var(--char);color:#C9B8B3;padding-block:48px 36px;font-size:15px}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
@media (max-width:820px){.foot{grid-template-columns:1fr 1fr}}
.foot h4,.foot .foot-h{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--flame);margin:0 0 12px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.foot a{text-decoration:none}.foot a:hover{color:var(--paper)}
.foot .big{font-family:var(--display);font-stretch:125%;font-weight:900;color:var(--paper);font-size:30px;line-height:1;text-transform:uppercase}
.legal{border-top:1px solid rgba(250,245,239,.15);margin-top:36px;padding-top:18px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:11.5px;letter-spacing:.05em}


/* ---------- mascot placements ---------- */
.menu-card .peeker{position:absolute;right:42px;top:0;width:260px;height:auto;transform:translateY(-79%);pointer-events:none;filter:drop-shadow(6px 6px 0 var(--chili))}
@media (max-width:860px){.menu-card{margin-top:96px}.menu-card .peeker{width:170px;right:16px}}
.gauge{position:sticky}
.hc-head{position:absolute;right:28px;top:0;transform:translateY(-78%);height:170px;width:auto;filter:drop-shadow(5px 5px 0 var(--chili));transition:transform .25s ease;pointer-events:none}
.hc-head.pop{animation:hcpop .45s ease}
@keyframes hcpop{0%{transform:translateY(-60%) scale(.7) rotate(-8deg)}60%{transform:translateY(-80%) scale(1.08) rotate(3deg)}100%{transform:translateY(-78%)}}
@media (max-width:900px){.gauge{margin-top:120px}}@media (max-width:860px){.hero .bubble{left:0}}@media (max-width:420px){.hc-head{height:130px;right:14px}}
.step .step-ico{position:absolute;right:12px;top:12px;width:80px;height:auto}
.step h3{padding-right:0}
.plan-label .plan-head{display:block;height:118px;width:auto;margin:-64px auto 8px;filter:drop-shadow(4px 4px 0 var(--char))}
.plan-label{margin-top:64px}
.faq-head{display:block;width:190px;height:auto;margin-top:28px;filter:drop-shadow(6px 6px 0 var(--chili))}
@media (max-width:900px){.faq-head{width:130px;margin-top:18px}}
.portrait{justify-content:flex-end}.portrait img{width:68%;margin-right:4%}
.order .grin{width:min(100%,400px)}
@media (prefers-reduced-motion:reduce){.hc-head.pop{animation:none}}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* =========================================================
   SITE-WIDE ADDITIONS (v2): buttons, nav, tool, inner pages
   ========================================================= */

/* ---------- Sizzle buttons ----------
   Rest: pill + hard char shadow (like the order ticket).
   Hover: flames rise from the bottom, a mini Reaper pops in beside the label.
   Press: button slams down like the order bell. */
.btn{position:relative;overflow:hidden;isolation:isolate;box-shadow:3px 3px 0 var(--char);transition:transform .16s ease,box-shadow .16s ease,color .25s ease}
.btn::before{content:"";position:absolute;left:-2px;right:-2px;bottom:-2px;height:175%;z-index:-1;
  background:linear-gradient(0deg,var(--chili-deep) 0%,var(--chili) 30%,#F2661D 62%,var(--flame) 100%);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 20' preserveAspectRatio='none'%3E%3Cpath d='M0 20V12C4 12 5 4 8 2c1 5 3 7 6 7 1-4 3-7 6-9 1 6 3 9 6 9 2-3 3-6 6-8 1 5 3 8 6 8 1-3 3-6 6-8 1 6 3 9 6 9 2-3 4-6 6-8 1 5 3 8 6 8 2-2 3-5 6-7 1 5 2 8 4 8V20z' fill='%23000'/%3E%3C/svg%3E") top/100% 26px no-repeat,linear-gradient(#000,#000) 0 25px/100% 100% no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 20' preserveAspectRatio='none'%3E%3Cpath d='M0 20V12C4 12 5 4 8 2c1 5 3 7 6 7 1-4 3-7 6-9 1 6 3 9 6 9 2-3 3-6 6-8 1 5 3 8 6 8 1-3 3-6 6-8 1 6 3 9 6 9 2-3 4-6 6-8 1 5 3 8 6 8 2-2 3-5 6-7 1 5 2 8 4 8V20z' fill='%23000'/%3E%3C/svg%3E") top/100% 26px no-repeat,linear-gradient(#000,#000) 0 25px/100% 100% no-repeat;
  transform:translateY(100%);transition:transform .42s cubic-bezier(.2,.8,.2,1)}
.btn::after{content:"";flex:none;width:0;height:22px;margin-left:-.6em;background:url("../assets/reaper-mini.webp") center/contain no-repeat;transform:rotate(-30deg) scale(.4);opacity:0;transition:width .22s ease,margin .22s ease,opacity .2s ease,transform .3s cubic-bezier(.3,1.6,.5,1)}
.btn:hover,.btn:focus-visible{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--char);color:var(--char)}
.btn:hover::before,.btn:focus-visible::before{transform:translateY(0)}
.btn:hover::after,.btn:focus-visible::after{width:12px;margin-left:0;opacity:1;transform:rotate(14deg) scale(1);animation:sizzle .5s .25s ease-in-out 2}
.btn:active{transform:translate(3px,3px);box-shadow:0 0 0 var(--char);transition-duration:.05s}
.btn-ghost{box-shadow:3px 3px 0 var(--char)}
.btn-ghost:hover{box-shadow:5px 5px 0 var(--char);border-color:var(--char)}
.btn.no-pep::after{display:none}
@keyframes sizzle{0%,100%{transform:rotate(14deg)}25%{transform:rotate(-6deg) translateY(-1px)}75%{transform:rotate(22deg)}}

/* ---------- Mobile nav ---------- */
.nav-toggle{display:none;background:transparent;border:2px solid rgba(250,245,239,.4);color:var(--paper);border-radius:10px;padding:8px 12px;font:700 13px var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.nav a[aria-current="page"]{color:var(--flame);opacity:1}
@media (max-width:980px){.nav{gap:18px}.nav a{font-size:14px}}
@media (max-width:860px){
  .nav-toggle{display:inline-block}
  .nav.open{position:absolute;top:100%;left:0;right:0;background:var(--char);display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 16px 18px;border-top:1px solid rgba(250,245,239,.12)}
  .nav.open a:not(.btn){display:block;padding:12px 4px;border-bottom:1px solid rgba(250,245,239,.08);font-size:17px}
  .nav.open .btn{margin-top:12px;justify-content:center}
  .top .wrap{position:relative}
}

/* ---------- Local visibility tool (home) ---------- */
.tool-controls{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;background:var(--paper-2);border:2px solid var(--char);border-radius:16px;padding:18px}
.tool-controls .fld{display:grid;gap:6px;min-width:0}
.tool-controls label{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--smoke)}
.tool-controls input{font:inherit;font-size:16.5px;padding:11px 14px;border:2px solid var(--char);border-radius:10px;background:#fff;color:var(--char);min-width:0;width:100%}
.tool-controls input:focus{outline:none;box-shadow:0 0 0 3px var(--flame)}
.tool-controls .hint{grid-column:1/-1;font-size:13.5px;color:var(--smoke);margin:0}
@media (max-width:760px){.tool-controls{grid-template-columns:1fr}}
.mapcv{display:block;width:100%;height:190px;border-radius:12px;margin-bottom:12px;background:#E9EFE3}
.map-wrap{position:relative}
.map-chip{position:absolute;left:10px;top:10px;background:rgba(255,255,255,.92);border:1px solid #D9D0CC;border-radius:8px;padding:4px 9px;font:700 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--char)}
.chat-a .typing{display:inline-block;width:7px;height:15px;background:var(--char);vertical-align:-2px;margin-left:2px;animation:blink .8s steps(2) infinite}
@keyframes blink{50%{opacity:0}}
.realcheck{grid-column:1/-1;background:var(--char);color:var(--paper);border-radius:16px;padding:22px;display:grid;grid-template-columns:1fr auto;gap:18px 28px;align-items:center}
.realcheck h3{font-size:22px;text-transform:uppercase;font-stretch:110%}
.realcheck p{margin:6px 0 0;color:#C9B8B3;font-size:15px;max-width:52ch}
.rc-links{display:flex;flex-wrap:wrap;gap:10px}
.rc-links a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:14px;background:var(--char-2);border:1px solid rgba(250,245,239,.18);color:var(--paper);padding:10px 14px;border-radius:10px;transition:border-color .15s,transform .15s}
.rc-links a:hover{border-color:var(--flame);transform:translateY(-2px)}
.rc-links a small{font-family:var(--mono);font-size:10px;color:var(--flame);letter-spacing:.08em;text-transform:uppercase}
.rc-verdict{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-top:1px solid rgba(250,245,239,.12);padding-top:16px}
.rc-verdict span{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#C9B8B3;margin-right:4px}
.rc-verdict button{font:700 14px var(--body);background:transparent;color:var(--paper);border:2px solid rgba(250,245,239,.35);border-radius:999px;padding:7px 14px;cursor:pointer}
.rc-verdict button[aria-pressed="true"]{background:var(--flame);color:var(--char);border-color:var(--flame)}
.rc-msg{grid-column:1/-1;margin:0;font-size:15.5px;color:var(--paper)}
.rc-msg a{color:var(--flame);font-weight:700}
@media (max-width:760px){.realcheck{grid-template-columns:1fr}}

/* ---------- Inner page hero ---------- */
.phero{background:var(--chili);color:var(--paper);position:relative;overflow:hidden;padding-block:0}
.phero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 80%,rgba(255,184,28,.32),transparent 45%),repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 2px,transparent 2px 14px);pointer-events:none}
.phero .wrap{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:end;padding-top:clamp(36px,5vw,64px)}
.phero .copy{padding-bottom:clamp(40px,5vw,72px)}
.phero .eyebrow{display:inline-flex;background:var(--char);color:var(--flame);padding:7px 12px;border-radius:4px}
.phero h1{font-size:clamp(40px,6vw,82px);text-transform:uppercase;font-stretch:118%;margin-top:18px}
.phero h1 em{font-style:normal;color:var(--char);background:var(--flame);padding:0 .12em;display:inline-block;transform:rotate(-2deg);line-height:1.05}
.phero .sub{font-size:clamp(17px,1.6vw,20px);max-width:44ch;margin:20px 0 26px;color:#FFE9E3}
.phero .art{justify-self:center;align-self:end;width:min(100%,380px)}
.phero .art img{display:block;width:100%;height:auto;filter:drop-shadow(-12px 0 0 var(--char))}
.phero.dark{background:var(--char)}
.phero.dark::before{background:radial-gradient(circle at 80% 80%,rgba(216,35,27,.35),transparent 50%)}
.phero.short .wrap{grid-template-columns:1fr}
.phero.short .copy{padding-bottom:clamp(40px,5vw,64px)}
@media (max-width:860px){.phero .wrap{grid-template-columns:1fr}.phero .copy{padding-bottom:0}.phero .art{width:min(70%,300px)}}
.crumbs{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#FFD9D0;margin-bottom:14px}
.crumbs a{color:#FFD9D0;text-decoration:none}.crumbs a:hover{color:var(--flame)}
.crumbs span{opacity:.6;margin:0 6px}

/* ---------- Generic content blocks ---------- */
.band-paper2{background:var(--paper-2)}
.band-char{background:var(--char);color:var(--paper)}
.band-char .sec-head p{color:#C9B8B3}
.band-char .eyebrow.red{color:var(--flame)}
.band-red{background:var(--chili);color:var(--paper)}
.band-red .sec-head p{color:#FFE1DA}
.band-red .eyebrow.red{color:var(--flame)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:start}
.two.center{align-items:center}
@media (max-width:900px){.two{grid-template-columns:1fr}}
.lede{font-size:20px;line-height:1.5}
.prose p,.prose li{color:#4a3e3b}
.prose h2{font-size:clamp(28px,3vw,38px);text-transform:uppercase;margin:48px 0 14px}
.prose h3{font-size:20px;text-transform:uppercase;margin:30px 0 10px;font-stretch:106%}
.prose ul{padding-left:20px}
.prose li{margin-bottom:6px}
.band-char .prose p,.band-char .prose li{color:#D9C9C4}

.cardgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cardgrid.four{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.cardgrid.four{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.cardgrid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.cardgrid,.cardgrid.four{grid-template-columns:1fr}}
.card{background:#fff;border:2px solid var(--char);border-radius:18px;padding:24px;box-shadow:6px 6px 0 var(--char);display:flex;flex-direction:column;gap:10px;position:relative}
.card h3{font-size:21px;text-transform:uppercase;font-stretch:108%}
.card p{margin:0;font-size:15.5px;color:#4a3e3b}
.card .k{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--chili)}
.card.flame{background:var(--flame)}
.card.flame p{color:#3a2a10}
.band-char .card{box-shadow:6px 6px 0 var(--chili)}

.ticklist{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.ticklist li{display:grid;grid-template-columns:22px 1fr;gap:10px;font-size:16px}
.ticklist li svg{margin-top:4px;color:var(--chili)}
.band-char .ticklist li svg{color:var(--flame)}

/* ---------- Services hub ---------- */
.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:40px}
@media (max-width:860px){.svc-grid{grid-template-columns:1fr}}
.svc{background:#fff;border:2px solid var(--char);border-radius:20px;padding:26px;box-shadow:6px 6px 0 var(--char);display:grid;grid-template-columns:1fr auto;gap:8px 18px;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease}
.svc:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--chili)}
.svc h3{font-size:26px;text-transform:uppercase;font-stretch:110%}
.svc .heat{align-self:start;color:var(--chili)}
.svc p{grid-column:1/-1;margin:0;color:#4a3e3b;font-size:15.5px}
.svc .inc{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.svc .inc span{font-family:var(--mono);font-size:11px;letter-spacing:.04em;background:var(--paper-2);border-radius:6px;padding:4px 8px}
.svc .go{grid-column:1/-1;font-family:var(--display);font-weight:800;color:var(--chili);margin-top:8px}
.svc.new h3::after{content:"New";font-family:var(--script);font-size:15px;font-stretch:100%;text-transform:none;color:var(--paper);background:var(--chili);padding:1px 8px 3px;border-radius:999px;margin-left:8px;vertical-align:5px}
.peek-wrap{position:relative;margin-top:150px}
.peek-wrap .peeker{position:absolute;right:48px;top:0;width:240px;transform:translateY(-97%);filter:drop-shadow(6px 6px 0 var(--chili));pointer-events:none}
@media (max-width:860px){.peek-wrap .peeker{width:160px;right:16px}.peek-wrap{margin-top:80px}}

/* ---------- Service detail ---------- */
.facts-row{display:grid;grid-template-columns:repeat(4,1fr);border:2px solid var(--char);border-radius:16px;background:#fff;overflow:hidden}
.facts-row div{padding:18px 20px;border-right:2px solid var(--char)}
.facts-row div:last-child{border-right:0}
.facts-row b{display:block;font-family:var(--display);font-stretch:112%;font-weight:900;font-size:22px;line-height:1.1}
.facts-row span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke)}
@media (max-width:760px){.facts-row{grid-template-columns:1fr 1fr}.facts-row div:nth-child(2){border-right:0}.facts-row div:nth-child(-n+2){border-bottom:2px solid var(--char)}}
.ministeps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media (max-width:900px){.ministeps{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.ministeps{grid-template-columns:1fr}}
.ministep{background:#fff;border:2px solid var(--char);border-radius:16px;padding:18px;position:relative;min-height:190px}
.ministep img{width:72px;height:auto;display:block;margin-bottom:8px}
.ministep b{display:block;font-family:var(--display);font-stretch:108%;font-weight:900;text-transform:uppercase;font-size:17px;margin-bottom:4px}
.ministep p{margin:0;font-size:14.5px;color:#4a3e3b}
.related{display:flex;flex-wrap:wrap;gap:10px}
.related a{text-decoration:none;font-weight:700;border:2px solid var(--char);border-radius:999px;padding:8px 14px;background:#fff}
.related a:hover{background:var(--flame)}

/* ---------- CTA band ---------- */
.cta-band{background:var(--chili);color:var(--paper);position:relative;overflow:hidden}
.cta-band .wrap{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}
.cta-band h2{font-size:clamp(34px,4.6vw,60px);text-transform:uppercase}
.cta-band p{color:#FFE4DF;font-size:18px;max-width:46ch;margin:14px 0 22px}
.cta-band img{width:min(100%,330px);height:auto;filter:drop-shadow(8px 8px 0 var(--char))}
.cta-band .reaper-bg{position:absolute;left:-4%;bottom:-30%;height:140%;opacity:.14;filter:brightness(.5);pointer-events:none}
@media (max-width:860px){.cta-band .wrap{grid-template-columns:1fr}.cta-band img{width:min(70%,260px)}}

/* ---------- Case studies ---------- */
.bigstats{display:grid;grid-template-columns:repeat(4,1fr);border-block:2px solid var(--char)}
.bigstats div{padding:22px 16px 22px 0}
.bigstats b{display:block;font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(34px,4vw,52px);color:var(--chili);line-height:1}
.bigstats span{display:block;font-size:15px;margin-top:6px}
.bigstats small{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke);margin-top:4px}
@media (max-width:860px){.bigstats{grid-template-columns:1fr 1fr}}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.filters button{font:700 14px var(--body);border:2px solid var(--char);background:#fff;color:var(--char);border-radius:999px;padding:8px 14px;cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--char);color:var(--flame)}
.cases{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media (max-width:900px){.cases{grid-template-columns:1fr}}
.case{background:#fff;border:2px solid var(--char);border-radius:18px;overflow:hidden;box-shadow:6px 6px 0 var(--char);display:flex;flex-direction:column}
.case.wide{grid-column:1/-1}
.case-top{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--char);color:var(--paper);padding:12px 18px;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
.case-top b{color:var(--flame)}
.case-body{padding:20px 20px 22px;display:grid;gap:10px}
.case h3{font-size:22px;text-transform:uppercase;font-stretch:108%}
.case .chart{display:block;width:100%;height:auto;border:1px solid #E6DDD8;border-radius:10px}
.case .charts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:700px){.case .charts{grid-template-columns:1fr}}
.case .delta{display:flex;flex-wrap:wrap;gap:8px 22px;font-family:var(--mono);font-size:13px}
.case .delta b{font-family:var(--display);font-stretch:112%;font-size:22px;color:var(--chili);display:block}
.case p{margin:0;font-size:15px;color:#4a3e3b}
.case[hidden]{display:none}
.legend-note{font-family:var(--mono);font-size:12px;color:var(--smoke);display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 20px}
.legend-note i{display:inline-block;width:18px;height:3px;border-radius:2px;vertical-align:middle;margin-right:6px}

/* ---------- About ---------- */
.timeline{list-style:none;padding:0;margin:0;border-left:3px solid var(--chili);display:grid;gap:26px}
.timeline li{position:relative;padding-left:26px}
.timeline li::before{content:"";position:absolute;left:-11px;top:4px;width:18px;height:18px;border-radius:50%;background:var(--flame);border:3px solid var(--char)}
.timeline b{font-family:var(--display);font-stretch:118%;font-weight:900;font-size:24px;display:block;line-height:1}
.timeline span{display:block;font-weight:700;margin:6px 0 4px}
.timeline p{margin:0;color:#4a3e3b;font-size:15.5px}
.band-char .timeline p{color:#C9B8B3}
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:860px){.team{grid-template-columns:1fr}}
.member{background:#fff;border:2px solid var(--char);border-radius:18px;padding:22px;display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center;box-shadow:6px 6px 0 var(--char)}
.member .mono{width:72px;height:72px;border-radius:50%;background:var(--chili);color:var(--paper);display:grid;place-items:center;font-family:var(--display);font-stretch:118%;font-weight:900;font-size:26px;border:3px solid var(--char);overflow:hidden}
.member .mono img{width:100%;height:100%;object-fit:cover;object-position:top}
.member b{font-family:var(--display);font-size:19px;display:block}
.member span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke)}
.member p{grid-column:1/-1;margin:0;font-size:15px;color:#4a3e3b}
.signoff{display:flex;align-items:center;gap:14px;margin-top:24px}
.signoff img{width:64px;height:64px;border-radius:50%;border:3px solid var(--char)}
.signoff .script{font-size:34px;color:var(--chili);line-height:1}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:start}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
.ticket.big{transform:none}
.field textarea,.field select{font:inherit;font-size:16px;padding:10px 0;border:0;border-bottom:2px dashed #BCAEA9;background:transparent;color:var(--char);border-radius:0;resize:vertical}
.field textarea:focus,.field select:focus{outline:none;border-bottom:2px solid var(--chili)}
.contact-card{background:var(--char);color:var(--paper);border-radius:18px;padding:24px;display:grid;gap:14px}
.contact-card .row{display:grid;grid-template-columns:110px 1fr;gap:10px;font-size:15.5px}
.contact-card .row span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--flame);padding-top:3px}
.contact-card a{color:var(--paper)}
.copybtn{font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;background:transparent;color:var(--flame);border:1px solid rgba(255,184,28,.5);border-radius:6px;padding:3px 8px;cursor:pointer;margin-left:8px}

/* ---------- Legal ---------- */
.legal-wrap{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:start}
@media (max-width:900px){.legal-wrap{grid-template-columns:1fr}}
.toc{position:sticky;top:96px;border:2px solid var(--char);border-radius:14px;padding:18px;background:#fff}
.toc b{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--smoke)}
.toc ol{margin:10px 0 0;padding-left:18px;display:grid;gap:6px;font-size:14.5px}
.toc a{text-decoration:none}.toc a:hover{color:var(--chili)}
@media (max-width:900px){.toc{position:static}}
.notice{background:var(--paper-2);border:2px dashed rgba(20,12,11,.3);border-radius:12px;padding:14px 16px;font-size:14.5px;color:#4a3e3b}
.prose.lgl h2{font-size:24px;margin:38px 0 10px;scroll-margin-top:96px}
.prose.lgl{max-width:760px}

/* ---------- 404 / thanks ---------- */
.center-page{text-align:center;padding-block:clamp(80px,10vw,140px)}
.center-page img{width:min(80%,360px);height:auto;margin:0 auto 24px;display:block;filter:drop-shadow(8px 8px 0 var(--chili))}
.center-page h1{font-size:clamp(44px,7vw,96px);text-transform:uppercase;font-stretch:118%}
.center-page p{font-size:19px;color:var(--smoke);max-width:46ch;margin:18px auto 28px}
.center-page .ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* footer additions */
.foot-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.foot-social a{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(250,245,239,.2);border-radius:6px;padding:5px 8px}
.foot-social a:hover{border-color:var(--flame);color:var(--flame)}
.legal a{text-decoration:none;margin-left:14px}.legal a:hover{color:var(--flame)}

@media (prefers-reduced-motion:reduce){.btn::before,.btn::after{transition:none!important;animation:none!important}}

/* v2 fixes */
.peek-wrap .peeker{height:auto}
.phero h1{font-size:clamp(34px,6vw,82px);overflow-wrap:anywhere}
@media (max-width:480px){.phero h1{font-size:clamp(30px,9vw,40px);font-stretch:108%}.sec-head h2{overflow-wrap:anywhere}}

/* chef chris B + AI SEO */
.order .grin{height:auto}
.chris-wrap img,.portrait img,.art img{height:auto}
.portrait img{width:58%;margin-right:4%}
.sec-badge{float:right;width:190px;height:auto;margin:0 0 12px 18px;filter:drop-shadow(6px 6px 0 var(--chili))}
#aeo .sec-head{max-width:none;display:block}
#aeo .sec-head>*{max-width:760px}
#aeo .sec-head .eyebrow{display:inline-block;margin-bottom:14px}
#aeo .sec-head h2{margin-bottom:14px}
.sec-link{margin-top:14px !important}
.sec-link a{font-weight:700;color:var(--chili)}
.special{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center;margin:0 0 26px;padding:14px 20px 14px 14px;border:2px solid var(--flame);border-radius:18px;background:#FFF3D6;color:inherit;text-decoration:none;transition:transform .2s ease,background .2s ease}
.special:hover{transform:translateY(-2px);background:#FFEBB8}
.special img{width:120px;height:auto;display:block}
.special .sp-copy{display:grid;gap:2px}
.special .script{color:var(--chili);font-size:22px}
.special b{font-family:var(--display);font-stretch:112%;font-weight:900;text-transform:uppercase;font-size:clamp(20px,2.4vw,28px);color:var(--char)}
.special .sp-copy>span:last-child{color:var(--smoke);font-size:15.5px}
.special .sp-go{font-weight:700;color:var(--chili);white-space:nowrap}
.svc.special-card{position:relative;border-color:var(--chili);box-shadow:6px 6px 0 var(--chili)}
.svc.special-card .svc-badge{position:absolute;right:10px;top:-34px;width:96px;height:auto}
.svc.special-card h3{padding-right:90px}
.svc.special-card::before{content:"House special";position:absolute;left:18px;top:-15px;font-family:var(--script);font-size:16px;color:var(--paper);background:var(--chili);padding:2px 12px 4px;border-radius:999px}
.ai-ingredients .ministep{min-height:0}
.cmp-table{width:100%;border-collapse:collapse;background:#fff;border:2px solid var(--char);font-size:15.5px}
.cmp-table th{background:var(--char);color:var(--paper);text-align:left;padding:12px 14px;font-family:var(--display);font-stretch:108%;text-transform:uppercase;font-size:14px}
.cmp-table th:last-child{background:var(--chili)}
.cmp-table td{padding:12px 14px;border-top:1px solid #E5D9CC;vertical-align:top}
.cmp-table td:first-child{color:var(--smoke)}
.cmp-table td:last-child{font-weight:600}
@media (min-width:861px){.phero h1{font-size:clamp(34px,4.6vw,64px);overflow-wrap:normal}}
@media (max-width:860px){
  .sec-badge{width:130px}
  .special{grid-template-columns:84px 1fr;padding:12px}
  .special img{width:84px}
  .special .sp-go{grid-column:1/-1}
  .chris-wrap{margin-top:70px}
  .hero .chris-wrap .bubble{z-index:3;top:-64px;left:-4%;max-width:200px;font-size:15px;padding:10px 12px}
  .hero .chris-wrap .bubble::after{right:auto;left:62%;bottom:-22px;border:11px solid transparent;border-top:16px solid var(--char)}
  .menu-card .peeker{width:130px;right:12px}
}

/* =========================================================
   v4: laptop fit pass (Sept 24). Smaller type scale, tighter
   rhythm, split section heads so each section reads in one screen.
   ========================================================= */
section{padding-block:clamp(48px,5vw,72px)}
.sec-head{gap:10px;margin-bottom:clamp(22px,2.4vw,34px)}
.sec-head h2{font-size:clamp(32px,3.9vw,56px);line-height:.96}
.sec-head p{font-size:17px;line-height:1.55}
.hero h1{font-size:clamp(42px,5.9vw,84px)}
.hero .wrap{padding-top:clamp(32px,3.6vw,52px)}
.hero-copy{padding-bottom:clamp(32px,3.6vw,52px)}
.hero-sub{font-size:clamp(17px,1.35vw,19px);margin:18px 0 24px;max-width:40ch}
.hero-meta{margin-top:22px}
.chris-wrap{width:min(100%,370px)}
.phero h1{font-size:clamp(34px,4.7vw,68px)}
.phero .wrap{padding-top:clamp(28px,3.4vw,48px)}
.phero .copy{padding-bottom:clamp(32px,3.6vw,52px)}
.phero .art{width:min(100%,330px)}
.order h2{font-size:clamp(38px,4.8vw,70px)}
.order .grin{width:min(100%,330px);margin-top:18px}
.cta-band h2{font-size:clamp(30px,3.6vw,50px)}
.chris h2,.about h2{font-size:clamp(32px,3.9vw,54px)}
.chris .lede{font-size:18px;margin:16px 0}
.facts{margin:20px 0}
.portrait{aspect-ratio:5/6}

/* split heads: title left, intro right (desktop) */
@media (min-width:1000px){
  #aeo .sec-head,.menu .sec-head,.heatcheck .sec-head,#recipe .sec-head,.plans .sec-head,.receipts .sec-head,
  .band-paper2 .sec-head,.band-char .sec-head,.hc-wrap .sec-head,#dishes .sec-head,#cases .sec-head{
    max-width:none;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:56px;align-items:end}
  #aeo .sec-head>*,.menu .sec-head>*,.heatcheck .sec-head>*,#recipe .sec-head>*,.plans .sec-head>*,.receipts .sec-head>*,
  .band-paper2 .sec-head>*,.band-char .sec-head>*,.hc-wrap .sec-head>*,#dishes .sec-head>*,#cases .sec-head>*{grid-column:1;max-width:none}
  #aeo .sec-head>p,.menu .sec-head>p,.heatcheck .sec-head>p,#recipe .sec-head>p,.plans .sec-head>p,.receipts .sec-head>p,
  .band-paper2 .sec-head>p,.band-char .sec-head>p,.hc-wrap .sec-head>p,#dishes .sec-head>p,#cases .sec-head>p{grid-column:2;grid-row:1 / span 3;align-self:end;margin:0}
  #aeo .sec-head>p.sec-link{grid-row:auto;align-self:start}
  #aeo .sec-head{position:relative;padding-right:0}
  #aeo .sec-head .sec-badge{position:absolute;right:0;top:-18px;width:132px;margin:0;float:none}
  #aeo .sec-head>p:not(.sec-link){padding-right:150px}
}

/* two screens tool: compact */
.tool-controls{padding:14px 16px;gap:12px}
.tool-controls .hint{display:none}
.screen-body{padding:14px 16px}
.q{margin-bottom:10px;padding:8px 14px}
.mapcv{height:150px;margin-bottom:8px}
.listing{padding:7px 6px;font-size:14.5px}
.chat-a{font-size:14.5px}
.realcheck{padding:16px 20px;gap:10px 24px}
.realcheck h3{font-size:19px}
.rc-verdict{padding-top:12px}
.surfaces{margin-top:20px;padding-top:16px;gap:18px}
.surfaces p{font-size:14px}
.look-grid{gap:20px}

/* menu: compact dishes */
.menu-card{padding:clamp(20px,3vw,36px)}
.menu-top{padding-bottom:10px}
.special{margin-bottom:12px;padding:10px 18px 10px 12px}
.special img{width:92px}
.dish{padding:12px 0}
.dish p{margin:4px 0;font-size:14.5px;line-height:1.45}
.dish h3{font-size:19px}
.menu-card .peeker{width:210px}

/* heat check: compact */
.checks{gap:7px}
.check{padding:9px 14px;gap:12px}
.check b{font-size:15px}
.check small{font-size:13px}
.gauge{padding:22px;top:84px}
.thermo{height:300px}
.readout .verdict{margin:10px 0}

/* recipe + plans */
.step{padding:22px 20px 24px}
.step .num{font-size:44px}
.plan-label{margin-top:52px;padding:12px 14px}
.plan-label .plan-head{height:92px;margin:-52px auto 4px}
.plan-label .script{font-size:34px}
.plan-for{margin:14px 22px 4px;font-size:15.5px}
.plan ul{gap:5px;margin-bottom:16px}
.plan li{font-size:14.5px}
.plan{padding-bottom:20px}
.plan-cap{padding:12px 20px}

/* reviews */
.receipt{padding:20px 20px 24px;font-size:14.5px}
.brands{margin-top:28px;padding-top:18px}

/* faq */
details{padding:14px 0}
summary{font-size:17px}
.faq-head{width:150px;margin-top:18px}

/* inner pages */
.facts-row div{padding:14px 18px}
.ministep{min-height:0;padding:16px}
.ministep img{width:64px}
.cta-band img{width:min(100%,280px)}
.bigstats div{padding:16px 16px 16px 0}

/* v4.1 layout fits */
@media (min-width:1000px){
  .hero .wrap{grid-template-columns:1.35fr .65fr;gap:12px}
  .hero h1{font-size:clamp(56px,5.4vw,80px)}
  .chris-wrap{width:min(100%,340px)}
}
.hero-sub b{color:#fff}
.tokens{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:22px}
.tokens .tk-l{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#FFD08A;margin-right:4px}
.tokens .tk{font-family:var(--display);font-stretch:104%;font-weight:800;font-size:13.5px;color:var(--char);background:var(--paper);border:2px solid var(--char);border-radius:999px;padding:5px 12px;box-shadow:2px 2px 0 var(--char)}
.tokens .tk:nth-child(3),.tokens .tk:nth-child(4){background:var(--flame)}
.hero-meta{margin-top:16px}

/* two screens: realcheck as third column */
@media (min-width:1100px){
  #vis-tool.look-grid{grid-template-columns:1fr 1fr 290px}
  #vis-tool .realcheck{grid-column:auto;grid-template-columns:1fr;align-self:stretch;align-content:start;padding:18px}
  #vis-tool .rc-links{display:grid;grid-template-columns:1fr;gap:8px}
  #vis-tool .rc-links a{justify-content:space-between}
  #vis-tool .rc-verdict{gap:6px}
  #vis-tool .rc-verdict span{flex-basis:100%}
  #vis-tool .rc-verdict button{padding:5px 11px;font-size:13px}
  #vis-tool .realcheck p{font-size:14px}
}

/* heat check: full-width head, 2-col checklist */
@media (min-width:1000px){
  .heatcheck .sec-head{display:grid;grid-template-columns:1fr;max-width:760px}
  .heatcheck .sec-head>p{grid-column:1;grid-row:auto}
  .checks{grid-template-columns:1fr 1fr}
  .check{grid-template-columns:24px 1fr;align-content:start}
  .check .svc{display:none}
  .box{width:24px;height:24px}
}

/* menu: dishes in 4 columns */
@media (min-width:1100px){
  .menu-cols{grid-template-columns:repeat(4,1fr);column-gap:28px}
  .menu-cols>div{display:contents}
  .dish-head{flex-wrap:wrap;row-gap:2px}
  .dish h3{white-space:normal;font-size:17px}
  .dish .dots{display:none}
  .dish .heat{margin-left:auto}
}

/* plans + reviews tighten */
.plans .sec-head{margin-bottom:18px}
.plans-note{margin-top:16px}
.rgrid{gap:14px}
.brand-row span{font-size:19px}

/* v4.2 laptop fit + overlap fixes */
.inl-link{font-weight:700;color:var(--chili);white-space:nowrap}
.plan ul{align-content:start}
@media (min-width:1000px){
  #aeo .sec-head{margin-bottom:22px}
  .menu .sec-head>p{align-self:start;padding-top:4px}
}
/* menu: keep pepper heat on the title line */
@media (min-width:1100px){
  .dish-head{flex-wrap:nowrap;align-items:flex-start}
  .dish h3{font-size:16.5px;line-height:1.1;flex:0 1 auto;min-width:0}
  .dish .heat{flex-shrink:0;margin-top:1px}
  .dish{padding:10px 0}
  .menu-top{padding-bottom:6px}
  .menu-card .peeker{width:196px}
}
/* two screens tool: a little tighter */
@media (min-width:1100px){
  .mapcv{height:132px}
  .listing{padding:6px}
}
/* recipe icon clear of the title */
.step .step-ico{width:70px;top:10px;right:10px}
.step h3{margin-top:18px;font-size:20px}
/* reviews: brands on one line */
.brands{margin-top:22px;padding-top:16px}
.brand-row{gap:10px 28px;margin-top:10px}
.brand-row span{font-size:18px}
.brand-row span:nth-child(3n+2){font-size:16px}
.brand-row span:nth-child(3n){font-size:21px}
@media (min-width:1100px){
  .menu-cols{column-gap:24px}
  .dish h3{font-size:16px;font-stretch:100%;letter-spacing:.01em}
  .dish .heat svg{width:11px;height:15px}
  .dish .heat{gap:1px}
  .dish p{font-size:14px;line-height:1.42}
  .menu-top .script{font-size:36px}
  .special .script{font-size:19px}
  .special b{font-size:24px}
  .special .sp-copy>span:last-child{font-size:14.5px}
  .special img{width:84px}
}
@media (min-width:1100px){
  .mapcv{height:120px}
  .tool-controls{padding:12px 16px}
  #vis-tool .realcheck{padding:16px}
}
@media (min-width:1100px){
  #vis-tool .rc-links{gap:6px}
  #vis-tool .rc-links a{padding:8px 12px}
}

/* v4.3 short laptop screens (browser viewport under ~860px tall) */
@media (min-width:1000px) and (max-height:860px){
  section{padding-block:clamp(36px,5vh,56px)}
  .sec-head{margin-bottom:clamp(16px,2.4vh,26px)}
  .sec-head h2{font-size:clamp(34px,6vh,50px)}
  .sec-head p{font-size:16px;line-height:1.5}
  .hero h1{font-size:clamp(50px,8.6vh,72px);margin-top:14px}
  .hero .wrap{padding-top:clamp(24px,3.4vh,40px)}
  .hero-sub{font-size:17px;margin:14px 0 18px}
  .tokens{margin-top:16px}
  .chris-wrap{width:min(100%,300px)}
  /* two screens */
  .screen-body{padding:12px 14px}
  .q{margin-bottom:8px}
  .chat-a,.listing{font-size:14px}
  /* menu */
  .menu-card{padding:22px 28px}
  .special{margin-bottom:8px;padding:8px 16px 8px 10px}
  .special img{width:72px}
  .dish{padding:8px 0}
  /* heat check */
  .check{padding:7px 12px}
  .thermo{height:260px}
  .gauge{padding:18px}
  /* plans */
  .plan-cap{padding:10px 20px}
  .plan-label{margin-top:44px;padding:10px 12px}
  .plan-label .plan-head{height:78px;margin:-44px auto 2px}
  .plan-label .script{font-size:30px}
  .plan-for{margin:10px 22px 4px;font-size:15px}
  .plan ul{gap:3px;margin-bottom:12px}
  .plan li{font-size:14px}
  .plan .btn{padding-block:12px}
  .plan{padding-bottom:16px}
  /* reviews */
  .receipt{padding:16px 18px 20px;font-size:14px}
  .brands{margin-top:16px;padding-top:12px;display:flex;align-items:baseline;gap:24px}
  .brands .brand-row{margin-top:0}
  /* faq + order */
  details{padding:11px 0}
}
@media (min-width:1100px) and (max-height:860px){
  .tool-controls{padding:10px 14px;gap:12px}
  .tool-controls input{padding:7px 12px;font-size:15.5px}
  .tool-controls .fld{gap:4px}
  .mapcv{height:100px}
  .listing{padding:5px 6px;font-size:13.5px}
  .look-grid{gap:14px}
  #vis-tool .realcheck{padding:14px;gap:8px}
  #vis-tool .realcheck p{font-size:13.5px}
  #vis-tool .rc-links a{padding:6px 10px}
  #vis-tool .rc-verdict{padding-top:8px}
  #vis-tool .rc-verdict button{padding:4px 9px;font-size:12.5px}
  #aeo .sec-badge{width:108px}
  #aeo .sec-head>p:not(.sec-link){padding-right:116px}
  .rgrid{gap:12px}
  .receipt{padding:14px 16px 18px;font-size:13.8px;line-height:1.5}
  .menu .sec-head{margin-bottom:14px}
  .menu-top .script{font-size:30px}
  .dish p{font-size:13.6px}
}
@media (min-width:1000px){
  .hero .chris-wrap .bubble{z-index:2;left:-128px;top:9%}
}
@media (min-width:1100px) and (max-height:860px){
  #aeo .sec-head p{font-size:15.5px}
  #aeo .sec-head h2{margin-bottom:8px}
}
/* very short laptop screens (1536x864 and 1366x768 in a browser) */
@media (min-width:1100px) and (max-height:760px){
  .sec-head h2{font-size:clamp(32px,5.4vh,42px)}
  .sec-head p{font-size:15px}
  #vis-tool{zoom:.94}
  .special .sp-copy>span:last-child{font-size:14px}
  .special b{font-size:21px}
  .menu-card{padding:18px 26px}
  .dish p{margin:3px 0}
  .plan-label .plan-head{height:68px;margin:-40px auto 0}
  .plan-label{margin-top:40px}
  .plan li{font-size:13.8px}
  .plan-for{font-size:14.5px}
  .receipt{font-size:13.6px}
  .receipt .who,.receipt footer{margin-top:10px}
}
@media (min-width:1100px) and (max-height:860px){
  #vis-tool.look-grid{gap:12px}
  #aeo .sec-head{margin-bottom:16px}
  .rgrid{gap:10px}
  .brands{margin-top:12px;padding-top:10px}
}
@media (min-width:1100px) and (max-height:760px){
  .dish{padding:7px 0}
  .receipt{padding:12px 16px 16px}
  .plan ul{margin-bottom:10px}
}
/* brands: one clean line on desktop */
@media (min-width:1100px){
  .brands{display:block}
  .brands .brand-row{flex-wrap:nowrap;justify-content:space-between;gap:18px;margin-top:8px}
  .brands .brand-row span{white-space:nowrap}
}

/* services hub: 3 columns on laptops so the menu reads in three rows */
@media (min-width:1100px){
  #dishes .svc-grid{grid-template-columns:repeat(3,1fr);gap:18px}
  #dishes .svc{padding:20px 22px;gap:6px 14px;align-content:start}
  #dishes .svc h3{font-size:21px}
  #dishes .svc p{font-size:14.5px;line-height:1.5}
  #dishes .svc .heat svg{width:11px;height:15px}
  #dishes .svc.special-card h3{padding-right:78px}
  #dishes .svc.special-card .svc-badge{width:84px;top:-30px}
  #dishes .peek-wrap{margin-top:118px}
  #dishes .peek-wrap .peeker{width:196px}
  #dishes .sec-head{margin-bottom:0}
}
/* contact ticket: tighter rows */
@media (min-width:1000px){
  .ticket.big{padding:22px 24px 26px}
  .ticket.big .field{margin-bottom:8px}
  .ticket.big .field input,.ticket.big .field select,.ticket.big .field textarea{padding:7px 0}
  .ticket.big .ticket-h{margin-bottom:10px;padding-bottom:8px}
  .ticket.big .chips{margin:4px 0 10px;gap:6px}
  .ticket.big .chip span{padding:5px 11px;font-size:13.5px}
}
@media (min-width:1000px) and (max-height:860px){
  .ticket.big textarea{height:60px}
}
@media (min-width:1000px) and (max-height:860px){
  .ticket.big{padding:16px 22px 18px}
  .ticket.big .ticket-h .script{font-size:26px}
  .ticket.big .field{margin-bottom:6px}
  .ticket.big .field input,.ticket.big .field select{padding:5px 0}
  .ticket.big textarea{height:48px}
  .ticket.big .fine{margin-top:8px}
}
@media (min-width:1000px) and (max-height:860px){
  .ministeps{gap:10px}
  .ministep{padding:10px 14px}
  .ministep img{width:54px}
  .contact-card{padding-block:14px}
}
@media (min-width:1100px){
  #dishes .svc{grid-template-rows:auto auto auto 1fr}
  #dishes .svc .go{align-self:end}
}
/* mobile: keep the house special card inside the screen */
@media (max-width:860px){
  .svc-grid{grid-template-columns:minmax(0,1fr)}
  .svc{grid-template-columns:minmax(0,1fr) auto}
}
@media (max-width:560px){
  .svc h3{font-size:21px}
  .svc.special-card h3{padding-right:0;margin-top:8px}
  .svc.special-card .svc-badge{display:none}
  .svc.special-card .heat{margin-top:8px}
}

/* mobile: seal fully on screen, peeker clear of the menu title */
@media (max-width:860px){
  .seal{right:2%}
  .menu-card{padding-top:44px}
}

/* v6 Chef Chris B fits */
.portrait img{width:54%;margin-right:5%}
.portrait .sig{right:auto;left:24px;bottom:22px;font-size:34px}
.menu-card .peeker{width:250px;transform:translateY(-80%)}
@media (min-width:1100px){.menu-card .peeker{width:240px}}
@media (min-width:1100px) and (max-height:860px){.menu-card .peeker{width:220px}}
@media (max-width:860px){.menu-card .peeker{width:190px}}
.peek-wrap .peeker{width:280px;transform:translateY(-94%)}
@media (min-width:1100px){#dishes .peek-wrap .peeker{width:250px}}
@media (max-width:860px){.peek-wrap .peeker{width:190px}}
/* heat check row labels share the .svc name with service cards: keep them plain labels */
.check .svc{display:block;background:none;border:0;border-radius:0;box-shadow:none;padding:0;grid-template-columns:none;transform:none}
@media (max-width:560px){.check{grid-template-columns:28px 1fr}.check .svc{display:none}}
@media (min-width:1000px){.check .svc{display:none}}

/* v7: prices, locations, maps */
.plan-label .shu.price{font-family:var(--display);font-stretch:108%;font-weight:900;font-size:19px;letter-spacing:0;text-transform:none;color:var(--char);margin-top:4px;line-height:1.1}
.plan-label .shu.price small{display:block;font-family:var(--mono);font-weight:700;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--smoke);margin-top:3px}
.plan.hot .plan-label .shu.price small{color:var(--char)}
@media (min-width:1100px) and (max-height:760px){.plan-label .shu.price{font-size:16px;margin-top:2px}.plan-label .shu.price small{margin-top:1px}.plan-label .script{font-size:28px}}

.foot{grid-template-columns:1.35fr 1fr 1fr 1.15fr 1fr}
@media (max-width:1000px){.foot{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:820px){.foot{grid-template-columns:1fr 1fr}}
.foot-loc li{line-height:1.35}
.foot-loc b{color:var(--paper);font-weight:700}

.kitchens .kgrid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.kcard{background:#fff;border:2px solid var(--char);border-radius:20px;overflow:hidden;box-shadow:6px 6px 0 var(--char);display:flex;flex-direction:column}
.kcard .kmap{position:relative;aspect-ratio:2/1;background:var(--paper-2)}
.kcard .kmap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.kcard .kbody{padding:16px 22px 20px;display:grid;gap:5px;align-content:start}
.kcard .ktag{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--chili)}
.kcard h3{font-size:26px;text-transform:uppercase;font-stretch:112%;line-height:1;margin:0}
.kcard address{font-style:normal;color:#4a3e3b;font-size:15px;line-height:1.5}
.kcard .kbtns{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.kcard .kbtns a{font-weight:700;font-size:14px;text-decoration:none;border:2px solid var(--char);border-radius:999px;padding:6px 14px;color:var(--char);background:var(--paper);box-shadow:2px 2px 0 var(--char);transition:transform .15s}
.kcard .kbtns a:hover{transform:translateY(-2px)}
.kcard .kbtns a.go{background:var(--flame)}
@media (min-width:1000px){.kitchens .sec-head{display:grid;grid-template-columns:1.1fr .9fr;column-gap:40px}.kitchens .sec-head>*{grid-column:1}.kitchens .sec-head>p{grid-column:2;grid-row:1/span 3;align-self:end;margin:0}}
@media (max-width:860px){.kitchens .kgrid{grid-template-columns:1fr}}

/* Marietta location page */
.areas{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.areas span{font-family:var(--display);font-stretch:104%;font-weight:800;font-size:14px;border:2px solid var(--char);border-radius:999px;padding:5px 12px;background:#fff;box-shadow:2px 2px 0 var(--char)}
.loc-map{display:grid;grid-template-columns:1.35fr .65fr;gap:26px;align-items:stretch}
.loc-map .kcard .kmap{aspect-ratio:auto;flex:1;min-height:320px}
@media (max-width:860px){.loc-map{grid-template-columns:1fr}.loc-map .kcard .kmap{min-height:260px}}

/* contact card: keep the column within one laptop screen */
@media (min-width:1000px) and (max-height:860px){.contact-card{gap:8px}.contact-card .row{font-size:14.5px}}
@media (min-width:1100px) and (max-height:760px){
  .plan-label{margin-top:34px}
  .plan-label .plan-head{height:58px;margin:-34px auto 0}
  .ministep{padding:8px 12px}
  .ministep img{width:46px}
  .contact-card{padding:12px 18px;gap:6px}
  .contact-card .row{font-size:14px;line-height:1.35}
}
.loc-map .contact-card{align-self:start}

/* blog (v8) */
.read-progress{position:fixed;inset:0 0 auto 0;height:4px;z-index:60;pointer-events:none}
.read-progress span{display:block;height:100%;background:var(--flame);transform:scaleX(0);transform-origin:0 50%}
.post-hero h1{font-size:clamp(30px,3.8vw,54px);max-width:20ch}
.post-hero .sub{max-width:58ch}
.post-hero .art{width:min(100%,330px)}
.post-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;margin:0}
.post-hero .post-meta{color:#FFD9D0;margin:-8px 0 0}
.post-hero .post-meta a{color:#fff}
.post{padding-top:clamp(36px,5vw,56px)}
.post-feature{margin:0 auto clamp(36px,5vw,56px);max-width:1100px}
.post-feature img{display:block;width:100%;height:auto;border:3px solid var(--char);border-radius:18px;box-shadow:-10px 10px 0 var(--char)}
.post-feature figcaption{font-family:var(--mono);font-size:12px;color:var(--smoke);margin-top:16px;text-align:right}

/* two columns: article + sticky sidebar */
.post-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(36px,4vw,64px);align-items:start;max-width:1100px;margin-inline:auto}
.post-side{position:sticky;top:92px;display:grid;gap:14px;max-height:calc(100vh - 108px);ove.post-flow:auto;padding:2px 2px 10px;scrollbar-width:thin}
.side-card{background:#fff;border:2px solid var(--char);border-radius:14px;padding:16px}
.side-k{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--chili);margin:0 0 6px;display:flex;justify-content:space-between;gap:8px}
.side-author{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center}
.side-author img{width:64px;height:64px;object-fit:cover;object-position:50% 12%;border-radius:50%;background:var(--paper-2);border:2px solid var(--char)}
.side-name{font-family:var(--display);font-weight:900;font-stretch:108%;text-transform:uppercase;font-size:17px;margin:0;line-height:1.05}
.side-small{font-size:13.5px;color:#4a3e3b;margin:4px 0 0;line-height:1.4}
.side-link{grid-column:1/-1;font-weight:700;font-size:14px;color:var(--chili-deep);text-decoration:none}
.side-link:hover{text-decoration:underline}
.toc-bar{height:4px;background:var(--paper-2);border-radius:4px;ove.post-flow:hidden;margin:8px 0 10px}
.toc-bar span{display:block;height:100%;background:var(--chili);transform:scaleX(0);transform-origin:0 50%}
.toc-pct{color:var(--smoke)}
.toc-list{list-style:none;counter-reset:toc;padding:0;margin:0;display:grid;gap:2px}
.toc-list li{counter-increment:toc;margin:0}
.toc-list a{display:grid;grid-template-columns:24px 1fr;gap:6px;padding:6px 8px;border-radius:8px;text-decoration:none;color:#4a3e3b;font-size:14.5px;line-height:1.3;border-left:3px solid transparent}
.toc-list a::before{content:counter(toc,decimal-leading-zero);font-family:var(--mono);font-size:11px;color:var(--smoke);padding-top:2px}
.toc-list a:hover{background:var(--paper-2)}
.toc-list a.on{background:#FFF1D1;color:var(--char);font-weight:700;border-left-color:var(--chili)}
.side-glance ul{list-style:none;padding:0;margin:4px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.side-glance li{background:var(--paper);border-radius:10px;padding:8px 10px}
.side-glance b{display:block;font-family:var(--display);font-weight:900;font-size:24px;line-height:1;color:var(--chili)}
.side-glance span{font-size:12.5px;color:#4a3e3b}
.side-cta{background:var(--char);color:var(--paper);box-shadow:-6px 6px 0 var(--chili)}
.side-cta .side-k{color:var(--flame)}
.side-cta-h{font-family:var(--display);font-weight:900;text-transform:uppercase;font-stretch:108%;font-size:19px;line-height:1.05;margin:2px 0 12px}
.side-cta .btn{width:100%;justify-content:center;font-size:14px;padding:12px 14px}
.side-share{display:flex;flex-wrap:wrap;gap:6px;padding:4px 2px}
.side-share .side-k{width:100%}
.side-share a,.side-share button{font:inherit;font-size:13px;font-weight:700;color:var(--char);text-decoration:none;border:2px solid var(--char);border-radius:999px;padding:5px 11px;background:#fff;cursor:pointer}
.side-share a:hover,.side-share button:hover{background:var(--flame)}
.toc-mobile{display:none}

/* article body */
.post-body{font-size:18px;line-height:1.7;min-width:0}
.post-body > p,.post-body li{font-size:18px}
.post-body .lede{font-size:21px;line-height:1.55;color:var(--ink)}
.post-body a{color:var(--chili-deep);text-underline-offset:3px}
.post-body h2{scroll-margin-top:96px}
.post-body > ul li{margin-bottom:12px}
.takeaways{position:relative;background:#FFF6DC;border:2px solid var(--char);border-radius:16px;padding:26px 24px 14px;margin:6px 0 34px}
.takeaways .tk-h{position:absolute;top:-15px;left:18px;margin:0;display:inline-flex;gap:8px;align-items:center;background:var(--char);color:var(--flame);font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:6px;transform:rotate(-2deg)}
.takeaways ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.post-body .takeaways li{position:relative;padding-left:28px;font-size:16.5px;line-height:1.5;margin:0;color:var(--ink)}
.takeaways li::before{content:"";position:absolute;left:2px;top:7px;width:14px;height:14px;border-radius:50%;background:var(--chili);box-shadow:inset 0 0 0 3px #FFF6DC,0 0 0 2px var(--chili)}
.pull{margin:34px 0;padding:6px 0 6px 26px;border-left:8px solid var(--chili)}
.post-body .pull p{font-family:var(--display);font-weight:800;font-stretch:104%;font-size:clamp(22px,2.4vw,28px);line-height:1.2;color:var(--char);margin:0}
.post-body .pull .pull-k{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--chili);margin-bottom:8px}
.pull mark{background:var(--flame);color:var(--char);padding:0 .15em}

.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0 28px}
.stat-card{background:#fff;border:2px solid var(--char);border-radius:16px;padding:20px;box-shadow:-6px 6px 0 var(--char)}
.post-body .stat-card .stat-n{font-family:var(--display);font-weight:900;font-stretch:118%;font-size:56px;line-height:.9;color:var(--chili);margin:0;display:flex;align-items:center;gap:6px}
.stat-card .stat-n small{font-size:.5em}
.post-body .stat-card .stat-icon{font-size:40px}
.post-body .stat-card .stat-src{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--smoke);margin:8px 0 10px;line-height:1.3}
.stat-card h3{font-size:18px;line-height:1.1;margin:0 0 8px;text-transform:uppercase}
.post-body .stat-card p:not(.stat-n):not(.stat-src){font-size:15.5px;line-height:1.55;margin:0}
.stat-card.hot{background:var(--char);color:var(--paper);box-shadow:-6px 6px 0 var(--chili)}
.post-body .stat-card.hot .stat-n{color:var(--flame)}
.stat-card.hot h3{color:var(--paper)}
.post-body .stat-card.hot p:not(.stat-n):not(.stat-src){color:#D9C9C4}
.post-body .stat-card.hot .stat-src{color:#B9A7A2}

.bars{margin:8px 0 30px;padding:18px 20px;background:#fff;border:2px solid #E5D9CC;border-radius:14px}
.post-body .bars-title{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:15px;margin:0 0 14px;color:var(--char)}
.bar-row,.bar-axis{display:grid;grid-template-columns:170px 1fr 56px;gap:12px;align-items:center}
.bar-row{margin-bottom:10px}
.bar-l{font-size:14.5px;color:var(--ink);font-weight:600;line-height:1.2}
.bar-track{height:16px;border-bottom:1px solid #D9CBBE;position:relative}
.bar-fill{position:absolute;left:0;top:0;bottom:2px;width:calc(var(--v) * 100%);background:var(--chili);border-radius:0 4px 4px 0;transition:filter .15s}
.bar-fill.muted{background:#9d8a85}
.bar-row:hover .bar-fill{filter:brightness(1.1)}
.bar-v{font-family:var(--mono);font-size:14px;color:var(--ink)}
.bar-axis span{grid-row:1;grid-column:2;font-family:var(--mono);font-size:11px;color:var(--smoke)}
.bar-axis span:nth-child(1){justify-self:start}
.bar-axis span:nth-child(2){justify-self:start;margin-left:calc(25% - .9em)}
.bar-axis span:nth-child(3){justify-self:center}
.bar-axis span:nth-child(4){justify-self:end;margin-right:calc(25% - 1.1em)}
.bar-axis span:nth-child(5){justify-self:end}
.bars figcaption{font-family:var(--mono);font-size:11.5px;color:var(--smoke);margin-top:12px}

.post-flow{margin:18px 0 34px}
.flow-svg{display:block;width:100%;height:auto}
.post-flow figcaption{font-family:var(--mono);font-size:12px;color:var(--smoke);text-align:center;margin-top:10px}

.tgroup{display:grid;grid-template-columns:1fr 112px;gap:16px;align-items:end;border-top:3px solid var(--char);margin:34px 0 16px;padding-top:4px}
.tgroup img{width:112px;height:auto;display:block;margin-bottom:-6px}
.post-body .tgroup-k{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--chili);margin:12px 0 4px}
.post-body .tgroup-h{font-family:var(--display);font-weight:900;font-stretch:118%;font-size:clamp(26px,3vw,36px);line-height:1;text-transform:uppercase;margin:0;color:var(--char)}
.post-body .tgroup-s{font-size:15.5px;color:var(--smoke);margin:6px 0 0}
.tactics{list-style:none;counter-reset:t;padding:0;margin:0 0 10px;display:grid;gap:14px}
.tactics[start="6"]{counter-reset:t 5}
.post-body .tactics > li{counter-increment:t;position:relative;background:#fff;border:2px solid #E5D9CC;border-radius:14px;padding:18px 20px 16px 74px;margin:0}
.tactics > li::before{content:counter(t);position:absolute;left:18px;top:18px;width:40px;height:40px;border-radius:50%;background:var(--char);color:var(--flame);font-family:var(--display);font-weight:900;font-size:18px;display:grid;place-items:center}
.tactics:not([start]) > li::before{background:var(--chili);color:#fff}
.post-body .tactics > li.lead-tactic{border:3px solid var(--chili);background:#FFF6DC}
.tactics .lead-tag{display:inline-block;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--flame);color:var(--char);border:2px solid var(--char);border-radius:999px;padding:3px 10px;margin-bottom:8px;line-height:1.3}
.tactics h3{margin:6px 0 8px;font-size:20px;line-height:1.1}
.post-body .tactics p{margin:0;font-size:17px}
.post-chips{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.post-body .post-chips li{font-size:13px;font-weight:700;margin:0;background:var(--paper-2);border-radius:999px;padding:4px 10px;color:var(--char);line-height:1.3}

.post-cta-box{background:var(--char);color:var(--paper);border-radius:18px;padding:26px 28px;margin:40px 0;box-shadow:-10px 10px 0 var(--chili)}
.post-cta-box.with-art{display:grid;grid-template-columns:1fr 150px;gap:14px;align-items:end;padding-bottom:0}
.post-cta-box.with-art > div{padding-bottom:26px}
.post-cta-box.with-art > img{width:150px;height:auto;display:block}
.post-cta-box h2,.post-cta-box h3{color:var(--paper);text-transform:uppercase;margin:14px 0 10px}
.post-cta-box h3{font-size:24px}
.post-cta-box h2{font-size:clamp(26px,3vw,36px)}
.post-body .post-cta-box p{color:#D9C9C4;font-size:17px}
.post-body .post-cta-box a:not(.btn){color:var(--flame)}
.post-cta-box .btn{margin-top:6px}
.post-body .post-cta-box .small{font-size:14.5px;margin:18px 0 0;color:#B9A7A2}
.post-cta-box .eyebrow{background:var(--chili);color:#fff}

.sec-split{display:grid;grid-template-columns:1fr 104px;gap:16px;align-items:end;margin-top:48px}
.post-body .sec-split h2{margin:0 0 6px}
.sec-split img{width:104px;height:auto;display:block}
.myths{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.post-body .myths li{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:start;background:var(--paper-2);border-radius:12px;padding:14px 16px;margin:0;font-size:16.5px;line-height:1.55}
.myths .x{width:30px;height:30px;border-radius:50%;background:var(--char);color:var(--flame);display:grid;place-items:center;font-size:14px;font-weight:900;margin-top:1px}
.myths b{color:var(--char)}

.msteps{list-style:none;padding:0;margin:20px 0;position:relative}
.msteps::before{content:"";position:absolute;left:21px;top:14px;bottom:14px;width:3px;background:repeating-linear-gradient(var(--char) 0 6px,transparent 6px 12px)}
.post-body .msteps > li{position:relative;display:grid;grid-template-columns:44px 1fr;gap:14px;margin:0 0 14px;font-size:16.5px;line-height:1.55}
.msteps .step-n{width:44px;height:44px;border-radius:50%;background:var(--char);color:var(--flame);font-family:var(--display);font-weight:900;font-size:18px;display:grid;place-items:center;border:3px solid var(--paper)}
.msteps > li > div{background:#fff;border:2px solid #E5D9CC;border-radius:12px;padding:12px 16px}
.msteps b{color:var(--char)}
.runs{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:10px}
.runs > div{display:flex;align-items:center;gap:10px}
.runs em{font-style:normal;font-family:var(--mono);font-size:12px;color:var(--smoke)}
.run-dots{position:relative;display:inline-block;width:144px;height:12px;background:radial-gradient(circle at 6px 6px,#E5D9CC 5px,transparent 5.5px) 0 0/16px 12px repeat-x}
.run-dots::before{content:"";position:absolute;inset:0 auto 0 0;width:calc(var(--n) * 16px);background:radial-gradient(circle at 6px 6px,var(--chili) 5px,transparent 5.5px) 0 0/16px 12px repeat-x}
.post-body .note-line{background:var(--paper-2);border-radius:12px;padding:14px 18px;font-size:16.5px}

.sprint{list-style:none;padding:0;margin:22px 0 26px;position:relative}
.sprint::before{content:"";position:absolute;left:37px;top:30px;bottom:30px;width:4px;background:linear-gradient(var(--flame),var(--chili-deep));border-radius:4px}
.post-body .sprint > li{position:relative;display:grid;grid-template-columns:78px 1fr;gap:16px;align-items:start;margin:0 0 14px}
.sprint .wk{width:78px;height:78px;border-radius:18px;border:3px solid var(--char);display:grid;place-content:center;text-align:center;line-height:1;color:var(--char);background:var(--flame);transform:rotate(-3deg)}
.sprint li:nth-child(2) .wk{background:#F59A1C}
.sprint li:nth-child(3) .wk{background:#EC5A1F;color:#fff}
.sprint li:nth-child(4) .wk{background:var(--chili);color:#fff}
.sprint .wk span{font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.sprint .wk b{font-family:var(--display);font-weight:900;font-size:32px}
.wk-card{background:#fff;border:2px solid var(--char);border-radius:14px;padding:14px 18px;box-shadow:-5px 5px 0 var(--char)}
.post-body .wk-focus{font-family:var(--display);font-weight:900;font-stretch:110%;text-transform:uppercase;font-size:19px;margin:0 0 6px;color:var(--char)}
.wk-card ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.post-body .wk-card li{position:relative;padding-left:24px;font-size:15.5px;line-height:1.45;margin:0}
.wk-card li::before{content:"✓";position:absolute;left:0;top:0;color:var(--chili);font-weight:900}

.post-sources{margin-top:44px;padding-top:6px;border-top:2px solid var(--line)}
.post-body .post-sources h2{font-size:22px}
.src-list{list-style:none;padding:0;margin:14px 0;display:grid;gap:10px}
.post-body .src-list li{display:grid;gap:2px;background:#fff;border:2px solid #E5D9CC;border-radius:12px;padding:12px 16px;margin:0;font-size:15px;line-height:1.45}
.src-list .src-d{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--smoke)}
.src-list a{font-weight:600}
.src-list li > span:last-child{color:#4a3e3b}
.post-body .small{font-size:14.5px;color:var(--smoke)}
.post-author{display:grid;grid-template-columns:96px 1fr;gap:20px;align-items:start;margin-top:44px;padding:22px;background:#fff;border:2px solid var(--char);border-radius:16px}
.post-author img{width:96px;height:96px;object-fit:cover;object-position:50% 12%;background:var(--paper-2);border-radius:50%;border:2px solid var(--char)}
.post-body .post-author p{font-size:16px;margin:0 0 12px}

/* blog index */
.post-list{display:grid;gap:28px;max-width:980px}
.post-card{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;text-decoration:none;color:inherit;background:#fff;border:3px solid var(--char);border-radius:18px;padding:18px;box-shadow:-10px 10px 0 var(--char);transition:transform .15s ease}
.post-card:hover{transform:translate(3px,-3px)}
.post-card img{display:block;width:100%;height:auto;border-radius:12px}
.post-card h2{font-size:clamp(24px,2.6vw,34px);text-transform:uppercase;margin:12px 0 10px}
.post-card p{color:#4a3e3b;margin:0 0 12px}
.post-card .post-meta{color:var(--smoke)}
.post-card .post-meta span{color:var(--chili);font-weight:700}

@media (max-width:1000px){
  .post-layout{grid-template-columns:1fr}
  .post-side{position:static;max-height:none;ove.post-flow:visible;grid-template-columns:1fr 1fr}
  .side-toc{display:none}
  .side-author,.side-share{grid-column:1/-1}
  .toc-mobile{display:block;background:#fff;border:2px solid var(--char);border-radius:14px;padding:12px 16px;margin:0 0 34px}
  .toc-mobile summary{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--chili);cursor:pointer}
  .toc-mobile .toc-list{margin-top:10px}
}
@media (max-width:860px){
  .post-card{grid-template-columns:1fr}
  .post-body,.post-body > p,.post-body li{font-size:17px}
  .post-body .lede{font-size:19px}
  .stat-grid{grid-template-columns:1fr}
  .post-cta-box{padding:22px 20px}
  .post-cta-box.with-art{grid-template-columns:1fr 96px}
  .post-cta-box.with-art > img{width:96px}
  .post-author{grid-template-columns:1fr}
  .post-hero .art{display:none}
}
@media (max-width:560px){
  .post-side{grid-template-columns:1fr}
  .post-body .tactics > li{padding:64px 16px 14px}
  .tactics > li::before{left:16px;top:14px}
  .tactics .lead-tag{position:absolute;top:22px;left:66px;margin:0}
  .bar-row,.bar-axis{grid-template-columns:92px 1fr 46px;gap:8px}
  .bar-l{font-size:13px}
  .tgroup{grid-template-columns:1fr 84px}.tgroup img{width:84px}
  .sec-split{grid-template-columns:1fr 76px}.sec-split img{width:76px}
  .post-cta-box.with-art{grid-template-columns:1fr}
  .post-cta-box.with-art > img{display:none}
  .post-cta-box.with-art > div{padding-bottom:22px}
  .sprint::before{left:27px}
  .post-body .sprint > li{grid-template-columns:58px 1fr;gap:12px}
  .sprint .wk{width:58px;height:58px;border-radius:14px}
  .sprint .wk b{font-size:24px}
}

/* site fix (v9): contact steps column overflowed 3px on 375px phones */
.contact-grid > *{min-width:0}

/* post 2 (v10): decision rows + audit cards */
.decide{display:grid;gap:10px;margin:20px 0 26px}
.decide-row{display:grid;grid-template-columns:1.3fr auto 1fr;gap:16px;align-items:center;background:#fff;border:2px solid var(--char);border-radius:14px;padding:14px 18px}
.post-body .decide-row p{margin:0;font-size:15.5px;line-height:1.45}
.post-body .decide-sit{font-weight:700;color:var(--char)}
.post-body .decide-why{color:#4a3e3b}
.decide-rec span{display:inline-block;font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:2px solid var(--char);border-radius:999px;padding:5px 11px;white-space:nowrap}
.decide-row.on .decide-rec span{background:#DDF0D2;color:#1f4d10}
.decide-row.off{border-color:var(--chili)}
.decide-row.off .decide-rec span{background:var(--chili);color:#fff;border-color:var(--chili)}
.decide-row.none .decide-rec span{background:var(--paper-2);color:var(--smoke)}
.audit-grid .stat-card h3{font-size:22px;margin-top:2px}
@media (max-width:760px){.decide-row{grid-template-columns:1fr;gap:6px}}
