/* The home page, 2026-10-20 redesign (docs/redesign-2026-10, direction 1 "current, sharpened"). Loaded after style.css; every rule here is scoped to body.home and a
   hx- class so the other pages keep the shared rules. Ryan: "remove all design eyebrows ... information density/clarity": no kicker or label above any heading, one
   fact once. Scale: 4 8 12 16 24 32 48 72 · display 40 · h2 30 · body 16/18 · small 14 · mono 12. */
body.home{--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:72px;--hx-display:40px;--hx-h2:30px}
@media(max-width:600px){body.home{--hx-display:28px;--hx-h2:24px}}
body.home .blur{filter:blur(5px);user-select:none}
body.home .hx-h2{font:400 var(--hx-h2)/1.15 'Archivo Black';letter-spacing:0;text-transform:uppercase;text-wrap:balance}

/* hero: copy left, a real run right */
body.home .hx-hero{padding:var(--s7) 0 var(--s7)}
body.home .wrap{max-width:1160px;padding-inline:24px}
body.home .hx-hgrid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--s7);align-items:start}
body.home .hx-copy h1{font:400 var(--hx-display)/1.1 'Archivo Black';letter-spacing:.005em;text-transform:uppercase;max-width:none;text-wrap:balance;overflow-wrap:break-word}
body.home .hx-copy .sub{max-width:34em;margin:var(--s5) 0 0;font-size:18px;line-height:1.55;color:var(--mute)}
body.home .hx-copy .runform{display:flex;gap:var(--s2);max-width:none;margin:var(--s6) 0 0}
body.home .hx-copy .runform input{flex:1;min-width:0;height:56px;padding:0 var(--s4);font-size:16px}
body.home .hx-copy .runform .btn{height:56px;padding:0 28px;font-size:15px;white-space:nowrap}
body.home .hx-copy .err{margin:var(--s3) 0 0;font:600 14px/1.4 Archivo,sans-serif}
body.home .hx-proof{margin:var(--s4) 0 0;font-size:15px;color:var(--mute)}
body.home .hx-proof b{font:400 22px 'Archivo Black';color:var(--ink);margin-right:var(--s1);font-variant-numeric:tabular-nums}
body.home .hx-checks{list-style:none;margin:var(--s4) 0 0;display:grid;gap:var(--s2);font-size:15px}
body.home .hx-checks li{display:flex;gap:10px;align-items:center}
body.home .hx-checks svg{flex:none}
body.home .hx-demo{display:inline-flex;align-items:center;gap:var(--s2);margin-top:var(--s4);min-height:44px;padding:0;background:none;border:0;font:600 14px Archivo,sans-serif;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer;touch-action:manipulation}
body.home .hx-demo .tri{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent var(--accent)}
body.home .hx-vis{min-width:0}
body.home .hx-card{background:var(--card);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:var(--s5)}
body.home .hx-h{font:400 22px/1.2 'Archivo Black';letter-spacing:0;text-transform:none;text-wrap:balance}
body.home .hx-s{margin:var(--s2) 0 var(--s4);font-size:15px;color:var(--mute)}
body.home .hx-rows{list-style:none;border-top:1px solid var(--soft)}
body.home .hx-row{display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--soft);align-items:start;font-size:14px;line-height:1.35}
body.home .hx-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}
body.home .hx-row b{font-size:15px;font-weight:600;overflow-wrap:anywhere}
body.home .hx-row .mono{color:var(--mute);text-transform:none;letter-spacing:.02em;overflow-wrap:anywhere}
body.home .hx-row.locked{background:#f1eee5;border-bottom:0;padding-inline:0}
body.home .hx-row .lk{display:inline-flex;gap:6px;align-items:center;color:var(--ink)}
body.home .hx-link{margin-top:var(--s4);font-size:14px}
body.home .hx-link a{font-weight:600;text-underline-offset:3px}

/* live numbers + the case study */
body.home .hx-band{padding:0 0 var(--s7);border:0;background:none}
body.home .hx-bgrid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:var(--s6);align-items:stretch}
body.home .hx-bgrid.hx-solo{grid-template-columns:minmax(0,760px)}
body.home .hx-counters{background:var(--card);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:var(--s5);display:flex;flex-direction:column;justify-content:space-between;gap:var(--s5)}
body.home .hx-counters .livegrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s5) var(--s4)}
body.home .hx-counters .livegrid.n3{grid-template-columns:repeat(3,minmax(0,1fr))}
body.home .hx-counters .stat{border:0;box-shadow:none;background:none;padding:0;gap:var(--s2)}
body.home .hx-counters .stat b{font:400 30px/1.1 'Archivo Black';letter-spacing:0}
body.home .hx-counters .stat span{font-size:14px;line-height:1.35;color:var(--mute)}
body.home .hx-counters .livenote{margin:0;font-size:12px;line-height:1.4;color:var(--mute)}
body.home .casebox{margin:0;max-width:none;padding:var(--s5);background:var(--card);border:2px solid var(--ink);border-left:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);display:flex;flex-direction:column;gap:var(--s3)}
body.home .casebox blockquote p{font:600 19px/1.35 Archivo,sans-serif;letter-spacing:0}
body.home .casebox figcaption{font-size:14px;color:var(--mute)}
body.home .casebox figcaption b{color:var(--ink)}
body.home .casebox .case-facts{margin:0;padding:0;font-size:14px;line-height:1.45;color:var(--mute)}

/* what you do and what we do */
body.home .hx-steps{padding:0 0 var(--s7)}
body.home .hx-steps ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);margin-top:var(--s5);counter-reset:hx}
body.home .hx-steps li{counter-increment:hx;padding:var(--s5);background:var(--card);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);font-size:16px;line-height:1.45}
body.home .hx-steps li::before{content:counter(hx) ". ";font:400 18px 'Archivo Black';color:var(--accent)}
body.home .hx-steps li b{font-weight:700}

/* plans (markup from pages/home-pricing.js, shared .plan rules in style.css) */
body.home .hx-plans{padding:0 0 var(--s7);border:0}
body.home .hx-plans .h2{font:400 var(--hx-h2)/1.15 'Archivo Black';letter-spacing:0}
body.home .hx-plans .plans-intro{margin-top:var(--s3);font-size:16px;color:var(--mute);max-width:46em}
body.home .hx-plans .plans{gap:var(--s5);margin-top:var(--s6)}
body.home .hx-plans .plan{padding:var(--s5)}
body.home .hx-plans .plan h3{font-size:22px;letter-spacing:0}
body.home .hx-plans .plan .price{margin-top:var(--s1)}
body.home .hx-plans .plan .price b{font-size:32px}
body.home .hx-plans .plan .per{margin-top:var(--s2);min-height:0;font-size:14px;color:var(--mute)}
body.home .hx-plans .plan ul{margin:var(--s4) 0 var(--s5)}
body.home .hx-plans .plan li{padding:6px 0;border-bottom:0;font-size:15px}
body.home .hx-plans .plans-foot{margin-top:var(--s5)}

/* questions and the last button */
body.home .hx-faq,body.home .hx-final{padding:0 0 var(--s7);border:0}
body.home .hx-faq .faq{margin-top:var(--s4)}
body.home .hx-final .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);flex-wrap:wrap;border-top:2px solid var(--ink);padding-top:var(--s6)}
body.home footer{margin-top:0}

@media(max-width:1100px){body.home .hx-bgrid{grid-template-columns:1fr}}
@media(max-width:900px){
  body.home .hx-hgrid{grid-template-columns:1fr;gap:var(--s7)}
  body.home .hx-hero{padding-top:var(--s5)}
  body.home .hx-steps ol,body.home .hx-plans .plans{grid-template-columns:1fr}
  body.home .hx-counters .livegrid,body.home .hx-counters .livegrid.n3{grid-template-columns:1fr 1fr}
  body.home .hx-copy .sub{font-size:16px}
}
@media(max-width:600px){
  body.home .wrap{padding-inline:16px}
  body.home .hx-copy .runform{flex-direction:column}
  body.home .hx-copy .runform input,body.home .hx-copy .runform .btn{width:100%;flex:none}
  body.home .hx-card,body.home .hx-counters,body.home .casebox{padding:var(--s4)}
  body.home .hx-h{font-size:19px}
  body.home .hx-row{grid-template-columns:1fr 1fr;gap:var(--s2) var(--s3)}
  body.home .hx-row>div:nth-child(3){grid-column:1/-1}
  body.home .hx-row.locked>div:nth-child(2){display:none}
  body.home .hx-row.locked{grid-template-columns:1fr auto}
  body.home .hx-row.locked>div:nth-child(3){grid-column:auto}
  body.home .hx-counters .stat b{font-size:26px}
  body.home .hx-final .btn{width:100%}
}
