/* Home (/) · page-specific layout on top of core.css */

/* ① hero */
.home-hero{padding-top:clamp(120px,14vw,150px)}
.hh-grid{display:grid;gap:56px;align-items:center}
@media (min-width:1000px){.hh-grid{grid-template-columns:1.05fr .95fr}}
.home-hero h1{max-width:13ch;margin-top:4px;font-size:clamp(2.7rem,5.6vw,4.9rem)}
.home-hero .lead{margin-top:22px}
.hh-collage{position:relative;min-height:420px;max-width:560px;width:100%;justify-self:center}
.hc{position:absolute;margin:0;border-radius:24px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.9);border:1px solid rgba(255,255,255,.08)}
.hc img{width:100%;height:100%;object-fit:cover}
.hc-a{inset:0 18% 8% 14%;animation:hcIn 1.1s var(--ease) both}
.hc-a img{animation:kb 16s ease-out both}
.hc-b{width:40%;aspect-ratio:1;left:0;bottom:-2%;animation:hcIn 1.1s .2s var(--ease) both}
.hc-c{width:46%;aspect-ratio:4/3;right:0;top:10%;animation:hcIn 1.1s .35s var(--ease) both}
.hc-badge{position:absolute;right:4%;bottom:6%;display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.96);color:var(--ink);
  border-radius:18px;padding:12px 18px 12px 12px;box-shadow:var(--sh-lg);animation:hcIn 1s .6s var(--ease) both}
.hc-badge .ico{width:44px;height:44px;background:var(--red-grad);color:#fff}
.hc-badge b{display:block;font:900 1.2rem/1.1 var(--display);font-stretch:112%}
.hc-badge small{color:var(--muted);font-size:.85rem}
@keyframes hcIn{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
@media (min-width:1000px){.hh-collage{min-height:600px}}
@media (max-width:600px){.hh-collage{min-height:360px}.hc-a{inset:0 12% 12% 8%}}

/* ② problem */
.stat .num{font-size:clamp(2.4rem,3.6vw,3.1rem)}
.punch{margin:clamp(40px,5vw,64px) auto 0;max-width:880px;text-align:center;font:850 clamp(1.4rem,2.6vw,2.1rem)/1.2 var(--display);font-stretch:110%;letter-spacing:-.015em}

/* ③ answer */
.answer h2{max-width:22ch;margin-inline:auto}

/* ④ proof */
.proof-top{margin-bottom:clamp(36px,5vw,56px);display:grid;gap:40px}
@media (min-width:1000px){.proof-top{grid-template-columns:1fr 1fr;align-items:end}}
.proof-strip{background:#fff;border-radius:var(--r);padding:28px;box-shadow:var(--sh)}
.proof-strip .num{color:var(--red)}
.proof-strip p{color:var(--muted)}
.outcomes{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.outcomes .pcard{aspect-ratio:3/4}
.outcomes .pcard:first-child{grid-column:span 2;aspect-ratio:4/3}
@media (min-width:760px){.outcomes{grid-template-columns:repeat(5,1fr);gap:18px}.outcomes .pcard:first-child{grid-column:auto;aspect-ratio:3/4}
  .outcomes .pcard:nth-child(even){transform:translateY(28px)}.outcomes .pcard:nth-child(even).in{transform:translateY(28px)}}
.on-bone .link{color:var(--red-deep)}

/* ⑤ night */
.night-photos{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;align-items:end}
.night-photos .pcard{border-radius:var(--r)}
.aside{display:flex;gap:12px;align-items:flex-start;margin-top:26px;padding:18px 20px;border-radius:16px;background:var(--bone);font-weight:600;color:var(--text)}
.aside .ic{color:var(--red);margin-top:2px}
.night-steps{list-style:none;padding:0;margin:clamp(48px,6vw,80px) 0 0}
.night-steps .ico{margin-bottom:6px}

/* ⑥ programs */
.book-ph{background:linear-gradient(135deg,#2550A8,#16336f);display:grid;place-items:center}
.book-ph img{width:auto!important;height:82%!important;object-fit:contain!important;border-radius:6px;box-shadow:0 24px 48px -16px rgba(0,0,0,.7)}

/* ⑦ FORGED spotlight */
.forged-spot{overflow:hidden}
.forged-spot .eyebrow{background:rgba(255,122,26,.12);color:#B4500A}
.forged-spot .eyebrow::before{background:var(--ember);box-shadow:0 0 0 4px rgba(255,122,26,.2)}
.fs-list{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:16px}
.fs-list li{display:flex;gap:16px;align-items:flex-start}
.fs-list b{display:block;font-weight:800;margin-bottom:2px}
.fs-list span:last-child{color:var(--muted)}
.fs-list .ico{width:46px;height:46px;background:rgba(255,122,26,.12);color:#D9620E}
.fg-count{display:flex;gap:10px;margin-top:30px}
.fg-count>div{background:var(--ink);color:#fff;border-radius:14px;min-width:72px;padding:12px 10px;text-align:center}
.fg-count b{display:block;font:900 1.7rem/1 var(--display);font-variant-numeric:tabular-nums}
.fg-count span{display:block;margin-top:6px;font:800 .66rem/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--ember)}
.fs-phone{position:relative;display:grid;place-items:center;min-height:520px}
.fs-phone img{width:min(300px,70%);position:relative;z-index:1;filter:drop-shadow(0 40px 60px rgba(0,0,0,.45))}
.fs-glow{position:absolute;width:80%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,122,26,.35),rgba(215,38,46,.12) 45%,transparent 70%);filter:blur(10px)}

/* ⑩ help cards */
.help{text-decoration:none;color:inherit;display:flex;flex-direction:column}
.help p{flex:1}
.help .link{margin-top:18px}

.pcard figcaption small{display:block;font-weight:500;opacity:.82;font-size:.82rem;margin-top:2px}
@media (max-width:620px){.stat-grid{grid-template-columns:1fr}.stat-grid .stat{display:grid;grid-template-columns:auto 1fr;column-gap:18px;align-items:center}.stat-grid .stat .num{margin-top:0!important}.stat-grid .stat p,.stat-grid .stat .src{grid-column:1/-1}}

/* ③ the progression: what we did → what we learned → what's next */
.prog-path{list-style:none;margin:0;padding:0;display:grid;gap:22px;counter-reset:pp}
@media (min-width:900px){.prog-path{grid-template-columns:repeat(3,1fr);gap:26px}}
.prog-path li{background:#fff;border-radius:var(--r);padding:14px 14px 26px;box-shadow:var(--sh);position:relative}
.prog-path li h3{margin:6px 12px 10px}
.prog-path li p{margin:0 12px;color:var(--muted)}
.prog-path .pcard{border-radius:14px;margin-bottom:18px;box-shadow:none}
.pp-n{display:block;margin:0 12px;font:800 .78rem/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--red)}
.prog-path li.pp-now{background:var(--ink);color:#fff}
.prog-path li.pp-now p{color:var(--muted-ink)}
.prog-path li.pp-now .pp-n{color:var(--ember)}
.pp-phone{background:radial-gradient(circle at 50% 60%,rgba(255,122,26,.35),rgba(215,38,46,.10) 50%,#141416 75%)!important;display:grid;place-items:center}
.pp-phone img{width:auto!important;height:88%!important;object-fit:contain!important;margin-top:10%}
@media (min-width:900px){.prog-path li:not(:last-child)::after{content:"";position:absolute;top:28%;right:-20px;width:14px;height:14px;z-index:2;
  border-top:3px solid var(--red);border-right:3px solid var(--red);transform:rotate(45deg)}}

/* ⑤ then → now cards */
.learned .then{display:inline-block;margin-top:18px;font:800 .74rem/1 var(--body);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);
  padding:6px 10px;border:1px solid var(--line-ink);border-radius:var(--r-pill)}
.learned h3{margin-top:12px}

/* ⑦ Chris band */
.chris-band .pcard{box-shadow:0 40px 70px -30px rgba(60,0,0,.8)}
.chris-band em{font-style:italic}
