@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Barlow+Condensed:wght@400;500;600;700;800;900&family=Space+Mono:wght@400;700&display=swap');
:root{--red:#c71916;--dark:#23190e;--yellow:#ffea00;--cream:#fff6d8;--gold:#d09a05}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#ffdb18;color:var(--dark);font-family:'Barlow Condensed',Impact,sans-serif;font-size:19px}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #026bd0;outline-offset:3px}.topline{display:flex;justify-content:space-between;gap:12px;background:#171717;color:white;font:700 10px 'Space Mono',monospace;padding:9px 3%;text-align:center}.blink{animation:blink 1.4s step-end infinite}@keyframes blink{50%{opacity:.2}}.marquee{background:var(--red);color:#fff;overflow:hidden;white-space:nowrap;border-bottom:5px solid #171717;border-top:5px solid #171717;font:900 21px 'Barlow Condensed',sans-serif}.marquee-track{width:max-content;animation:move 28s linear infinite;padding:6px 0}@keyframes move{to{transform:translateX(-50%)}}.masthead{max-width:1300px;margin:auto;padding:27px 25px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{text-decoration:none;display:flex;flex-direction:column}.brand-small{font:700 10px 'Space Mono',monospace}.brand-name{font:clamp(39px,6vw,83px)/.98 'Archivo Black',Impact,sans-serif;letter-spacing:-5px;text-shadow:3px 3px 0 white}.brand-name em{font-style:normal;color:var(--red);-webkit-text-stroke:1px #171717}.brand-name sup{font-size:15px;vertical-align:top;letter-spacing:0}.brand-line{font-size:17px;letter-spacing:3px;font-weight:900}.callbox{min-width:220px;background:#fff;color:#161616;border:4px solid #171717;box-shadow:6px 6px 0 var(--red);display:flex;flex-direction:column;padding:12px;text-align:center;transform:rotate(3deg)}.callbox b{font-size:15px}.callbox strong{color:var(--red);font:900 24px 'Barlow Condensed'}.callbox span{font:700 10px 'Space Mono'}.nav{background:#171717;display:flex;flex-wrap:wrap;justify-content:center;border-top:4px solid white;border-bottom:5px solid var(--red)}.nav a{padding:14px 20px;color:#fff;text-decoration:none;font-weight:900;font-size:16px;letter-spacing:1px;border-right:1px solid #555}.nav a:hover{background:var(--red)}.hero{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.4fr .65fr;gap:28px;padding:66px 36px 58px}.dotted{background-image:radial-gradient(#b67f08 1px,transparent 1px);background-size:22px 22px}.hero-copy{position:relative}.sticker{position:absolute;right:12px;top:-20px;background:#fff;border:5px dashed var(--red);border-radius:50%;width:145px;height:145px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;font-weight:900;font-size:25px;line-height:.94;box-shadow:6px 6px #171717}.sticker small{font:700 9px 'Space Mono';margin-top:8px}.rotate-left{transform:rotate(13deg)}.eyebrow{color:var(--red);font-weight:900;font-size:24px;margin:0 0 15px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Archivo Black',Impact,sans-serif;line-height:1.04}h1{font-size:clamp(43px,6.2vw,92px);letter-spacing:-3px;margin:0 0 24px;text-shadow:3px 3px white;max-width:830px}h1 span{color:var(--red);text-shadow:4px 4px #171717,-1px -1px #fff}.hero-lead{font-weight:800;font-size:clamp(24px,2.8vw,35px);line-height:1.06;max-width:700px}.pitch{background:white;border:4px solid #111;padding:18px;box-shadow:8px 8px var(--red);font-size:24px;font-weight:800;line-height:1.15;max-width:720px}.quote{color:var(--red)}.hero-actions,.machine-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.big-button,.secondary-button{border:4px solid #171717;display:inline-block;text-align:center;padding:14px 20px;font-weight:900;font-size:23px;text-decoration:none;line-height:1.05;transition:transform .12s,box-shadow .12s}.big-button{background:var(--red);color:white;box-shadow:5px 5px 0 #171717}.secondary-button{background:var(--yellow);color:#171717;box-shadow:4px 4px 0 #171717}.big-button:hover,.secondary-button:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 #171717}.micro{font:11px/1.55 'Space Mono',monospace;margin:18px 0 0}.hero-side{align-self:center}.expert-card{border:8px ridge #d2a527;background:#ffed83;box-shadow:10px 10px 0 #171717;transform:rotate(-2deg)}.expert-top{background:var(--red);color:white;text-align:center;font-size:20px;font-weight:900;padding:10px}.expert-portrait{position:relative;height:330px;display:grid;place-items:center;overflow:hidden;background:repeating-conic-gradient(from 0deg,#ffe600 0deg 15deg,#fff5b1 15deg 30deg)}.face{font-size:155px;filter:drop-shadow(8px 10px 0 #171717);z-index:1}.seal{position:absolute;right:3px;bottom:10px;background:#f5d027;border-radius:50%;width:115px;height:115px;display:grid;place-items:center;text-align:center;font-weight:900;font-size:19px;line-height:1;border:6px double #171717;transform:rotate(15deg);z-index:2}.expert-bottom{display:flex;flex-direction:column;gap:6px;text-align:center;padding:16px 6px;background:#fff}.expert-bottom strong{font:900 27px 'Archivo Black';line-height:1}.expert-bottom span,.expert-bottom b{font-size:14px}.stamp{text-align:center;color:var(--red);font-weight:900;border:5px solid var(--red);padding:8px;background:white;margin:32px 5px 0;transform:rotate(3deg)}.redband{background:#171717;color:var(--yellow);text-align:center;font-size:21px;font-weight:900;padding:14px 10px;border-block:6px solid var(--red)}.redband span{color:white}.section{padding:65px max(22px,calc((100vw - 1200px)/2));scroll-margin-top:20px}.section-head{text-align:center;max-width:900px;margin:0 auto 34px}.section-head>span{font:700 12px 'Space Mono';letter-spacing:2px}.section-head h2{font-size:clamp(33px,4.2vw,59px);margin:10px 0;color:var(--red);text-shadow:2px 2px #fff}.section-head p{font-size:23px;font-weight:600;line-height:1.2}.estimator{display:grid;grid-template-columns:1fr 1fr;border:6px solid #171717;background:#fff9dc;box-shadow:10px 10px 0 var(--red)}.estimator form{padding:27px;border-right:5px dashed #111}.estimator label,.booking-form label:not(.checkline){font-weight:900;display:block;font-size:19px;margin:0 0 8px}.estimator select,.booking-form select,.booking-form input:not([type=checkbox]),.booking-form textarea{width:100%;background:#fff;border:3px solid #171717;padding:12px;color:#171717;border-radius:0;min-height:49px;outline-offset:2px}.estimator select{margin-bottom:26px}.estimator input[type=range]{width:100%;accent-color:var(--red);margin:18px 0 3px}.range-labels{display:flex;justify-content:space-between;font:700 10px 'Space Mono';margin-bottom:26px}.estimator .big-button{width:100%}.estimate-result{background:#171717;color:#fff;min-height:345px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px}.result-kicker{color:var(--yellow);font:700 11px 'Space Mono'}.estimate-result p{font-size:26px;font-weight:900;line-height:1.1;margin:25px 0}.estimate-result strong{font:clamp(44px,6vw,76px) 'Archivo Black';color:var(--yellow)}.estimate-result small{font:10px/1.5 'Space Mono';max-width:340px;margin-top:25px}.paper{background:#fff7df;border-block:7px solid #171717}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;border:4px solid #171717;background:#fff;box-shadow:6px 6px 0 #cfc4a7;padding:19px;display:flex;flex-direction:column;min-height:255px}.service-card.premium{background:#ffef8b;box-shadow:6px 6px 0 var(--red)}.service-card h3{font:900 25px/1.05 'Barlow Condensed';margin:10px 0}.service-card .sku{font:700 10px 'Space Mono';color:#777}.service-card .description{font-size:17px;line-height:1.15;flex:1}.service-card .price{font:35px 'Archivo Black';color:var(--red)}.service-card button{margin-top:14px;border:3px solid #171717;background:#171717;color:white;padding:10px;font-weight:900;font-size:17px}.service-card button:hover{background:var(--red)}.tier{position:absolute;right:-9px;top:-15px;transform:rotate(8deg);background:var(--red);color:#fff;padding:4px 10px;border:2px solid #171717;font-weight:900;font-size:13px}.fine-note{font:12px/1.65 'Space Mono';margin-top:28px}.roast-section{background:var(--red);color:#fff}.roast-section .section-head h2{color:var(--yellow);text-shadow:3px 3px #171717}.roast-machine{border:7px solid #171717;max-width:860px;margin:auto;background:#d9d2bc;padding:17px;box-shadow:12px 12px 0 #640500;color:#111}.machine-header{background:#171717;color:#fff;padding:11px;font:700 13px 'Space Mono';display:flex;justify-content:space-between;gap:10px}.machine-header span{color:#3bff50}.machine-screen{background:#143019;color:#77ff7e;border:10px inset #555;margin-top:12px;min-height:245px;padding:22px;font:700 19px/1.35 'Space Mono';text-shadow:0 0 8px #23c62c}.machine-screen #roastText{font-size:clamp(18px,2.6vw,29px);margin:15px 0}.machine-label{font-size:12px;color:#aafab0}.machine-cursor{animation:blink .8s step-end infinite}.machine-actions{margin-top:18px}.machine-actions .big-button{flex:1}.machine-actions .secondary-button{font-size:17px}.roast-machine .micro{color:#444}.testimonials{background:#f7d644}.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.test-grid blockquote{margin:0;background:#fff;border:4px solid #171717;padding:23px;box-shadow:5px 5px var(--red)}.test-grid span{color:var(--red);font-size:27px}.test-grid p{font-size:25px;font-weight:800;line-height:1.1;margin:14px 0}.test-grid cite{font:700 11px 'Space Mono';font-style:normal}.booking-section{background:#fff6da;border-block:7px solid #171717}.booking-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:26px}.booking-form{background:white;border:5px solid #171717;padding:25px;box-shadow:7px 7px 0 var(--red)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-form label:not(.checkline){margin:0 0 8px}.booking-form input:not([type=checkbox]),.booking-form select,.booking-form textarea{margin-bottom:20px}.booking-form textarea{resize:vertical;min-height:120px}.charcount{text-align:right;font:11px 'Space Mono';margin-top:-17px;margin-bottom:20px}.checkline{display:flex;gap:12px;align-items:start;font:14px/1.45 'Space Mono';margin:17px 0}.checkline input{width:19px;height:19px;flex:none;accent-color:var(--red);margin-top:2px}.submit-btn{width:100%;margin-top:10px}.form-status{font-weight:800;color:var(--red);margin:14px 0 0}.booking-aside{display:flex;flex-direction:column;gap:22px}.receipt{background:#fff;border:3px dashed #171717;padding:25px;transform:rotate(2deg);font:14px/1.5 'Space Mono';box-shadow:8px 8px #bbb}.receipt h3{font:24px 'Archivo Black';text-align:center}.receipt-rule{border-top:2px dashed #171717;margin:15px 0}.receipt strong{font:24px 'Archivo Black';display:block;text-align:center;color:var(--red)}.receipt-small{text-align:center}.notice{border:4px solid var(--red);background:#fff4b5;padding:18px;font-size:19px;line-height:1.2}.notice p{margin:8px 0 0}.faq{background:#ffd936}.faq details{border:4px solid #171717;background:#fff;margin-bottom:10px}.faq summary{cursor:pointer;padding:17px;font-size:23px;font-weight:900;list-style-position:inside}.faq details p{padding:0 19px 20px;font-size:20px;margin:0}.legal-section{background:#e5e2d8;padding:70px max(22px,calc((100vw - 1100px)/2));border-top:8px solid #171717;scroll-margin-top:20px}.legal-section .section-head h2{color:#171717;text-shadow:none}.legal-controls{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.legal-controls .secondary-button{font-size:15px}.legal-controls span{font:10px/1.5 'Space Mono';text-align:right}.legal-content{background:#fff;border:2px solid #171717;padding:16px 28px;max-height:460px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--red) #ddd;transition:max-height .2s}.legal-content.expanded{max-height:none}.legal-content h3{font:700 15px 'Space Mono';margin:24px 0 12px}.legal-content p{font:12px/1.8 'Space Mono';margin-bottom:14px}.legal-content strong{font-weight:700}.privacy{margin-top:25px;border:2px solid #171717;padding:20px;background:#f6f5f0}.privacy h3{font:700 16px 'Space Mono'}.privacy p{font:12px/1.8 'Space Mono'}footer{background:#171717;color:white;padding:33px max(22px,calc((100vw - 1200px)/2));display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}footer>div{display:flex;flex-direction:column;gap:8px}footer strong{font:25px 'Archivo Black';color:var(--yellow)}footer span{font:11px 'Space Mono'}footer a{font-size:17px;font-weight:900;text-decoration:none}footer a:hover{color:var(--yellow)}footer p{width:100%;border-top:1px solid #555;padding-top:17px;font:11px 'Space Mono';margin:0}.popup{position:fixed;z-index:12;right:22px;bottom:22px;max-width:310px;background:#ffeb00;border:6px solid var(--red);box-shadow:9px 9px #111;padding:25px;transform:rotate(-2deg);text-align:center}.popup[hidden]{display:none}.popup>button{position:absolute;right:3px;top:0;border:0;background:transparent;font-size:30px;font-weight:900}.popup p{font-size:15px;font-weight:900;color:var(--red)}.popup strong{display:block;font:26px 'Archivo Black'}.popup span{display:block;font-weight:800;margin:10px 0}.popup a{display:block;padding:10px;background:var(--red);color:white;font-weight:900;text-decoration:none;border:3px solid #171717}
@media(max-width:950px){.hero{grid-template-columns:1fr;padding:45px 25px}.hero-side{max-width:420px;margin:auto}.sticker{right:0;top:-26px;width:105px;height:105px;font-size:19px}.service-grid{grid-template-columns:repeat(2,1fr)}.booking-layout{grid-template-columns:1fr}.booking-aside{display:grid;grid-template-columns:1fr 1fr}.topline span:last-child{display:none}}@media(max-width:630px){.topline{font-size:9px;display:block}.topline span:first-child{display:none}.masthead{padding:20px 16px;display:block}.brand-name{letter-spacing:-3px;font-size:clamp(36px,10.5vw,62px)}.brand-line{font-size:11px;letter-spacing:1px}.brand-small{font-size:8px}.callbox{display:none}.nav a{flex:1 1 32%;font-size:13px;padding:10px;text-align:center}.hero{padding:44px 17px}.sticker{position:static;margin-left:auto;margin-bottom:15px}h1{font-size:clamp(40px,11vw,68px)}.hero-lead{font-size:25px}.pitch{font-size:19px}.hero-actions{display:grid}.hero-actions a{font-size:20px}.expert-portrait{height:240px}.face{font-size:115px}.section{padding:45px 17px}.section-head h2{font-size:34px}.section-head p{font-size:19px}.estimator{grid-template-columns:1fr}.estimator form{border-right:0;border-bottom:5px dashed #111}.estimate-result{min-height:260px}.service-grid,.test-grid,.form-grid,.booking-aside{grid-template-columns:1fr}.service-card{min-height:220px}.machine-actions{display:grid}.machine-screen{padding:15px}.machine-header{font-size:10px}.booking-form{padding:17px}.legal-section{padding:43px 16px}.legal-controls{display:block}.legal-controls span{display:block;text-align:left;margin-top:14px}.legal-content{padding:13px;max-height:380px}.popup{right:12px;bottom:12px;max-width:265px}.redband{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}

/* V2 — deterministic marquee, actual pointer-enabled estimator, signup */
.marquee { width:100%; max-width:100%; position:relative; overflow:hidden; font-family:Impact,'Arial Narrow',sans-serif; font-size:21px; }
.marquee-track { display:flex; width:max-content; min-width:200%; padding:6px 0; gap:0; animation:advice-marquee 35s linear infinite; will-change:transform; transform:translate3d(0,0,0); }
.marquee-copy { display:block; flex:0 0 auto; min-width:100vw; white-space:nowrap; padding-right:1em; }
@keyframes advice-marquee { from{transform:translate3d(0,0,0)} to{transform:translate3d(-50%,0,0)} }
.estimator input[type=range] {display:block;position:relative; width:100%;height:38px; margin:13px 0 7px; cursor:pointer;appearance:none;-webkit-appearance:none;background:transparent;touch-action:pan-y;accent-color:var(--red);}
.estimator input[type=range]::-webkit-slider-runnable-track{height:12px;border:2px solid #171717;background:linear-gradient(90deg,var(--red) 0%,var(--red) var(--range-progress,50%),#e5d9a8 var(--range-progress,50%));border-radius:0;}
.estimator input[type=range]::-moz-range-track{height:12px;border:2px solid #171717;background:#e5d9a8;border-radius:0;}
.estimator input[type=range]::-moz-range-progress{height:12px;background:var(--red)}
.estimator input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:29px;background:#fff;border:4px solid #171717;border-radius:0;margin-top:-10px;box-shadow:3px 3px 0 var(--red);cursor:grab;}
.estimator input[type=range]::-moz-range-thumb{width:22px;height:25px;background:#fff;border:4px solid #171717;border-radius:0;box-shadow:3px 3px 0 var(--red);cursor:grab;}
.estimator input[type=range]:active::-webkit-slider-thumb{cursor:grabbing}
.honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.booking-form{position:relative}
.booking-form button:disabled{opacity:.65;cursor:wait}
.vip-notice{transform:rotate(-1deg)}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none!important}}

/* V3: oversized, edge-to-edge opening pitch. Overrides preserve lower sections. */
@media (min-width:951px) {
  .hero {
    max-width: 1600px;
    grid-template-columns: minmax(0, 1.1fr) minmax(390px, 0.95fr);
    gap: 22px;
    padding: 29px 25px 32px;
    align-items: stretch;
  }
  .hero-side {align-self:stretch; display:flex; flex-direction:column; justify-content:stretch; gap:12px; min-width:0;}
  .expert-card {flex:1; display:flex; flex-direction:column; transform:rotate(-1deg);}
  .expert-top {font-size:clamp(29px,2.65vw,43px); line-height:1; padding:21px 10px; letter-spacing:-.5px;}
  .expert-portrait {flex:1; min-height:380px; height:auto;}
  .face {font-size:clamp(210px,18vw,320px);}
  .expert-bottom {gap:10px; padding:24px 8px;}
  .expert-bottom strong {font-size:clamp(29px,2.6vw,42px);}
  .expert-bottom span {font-size:clamp(16px,1.45vw,23px); font-weight:900;}
  .stamp {margin:5px 8px 0; font-size:clamp(20px,1.8vw,28px); padding:14px 8px;}
  .hero h1 {font-size:clamp(50px,5.7vw,92px); margin-bottom:14px;}
  .hero .eyebrow {font-size:clamp(25px,2.1vw,34px); margin-bottom:9px;}
  .hero-lead {font-size:clamp(27px,2.55vw,38px); margin-bottom:15px; max-width:none;}
  .pitch {font-size:clamp(23px,1.95vw,30px); padding:19px; margin-bottom:12px; max-width:none;}
  .hero-actions {margin-top:17px; gap:12px;}
  .hero-actions a {font-size:clamp(19px,1.75vw,27px); flex:1;}
  .hero .micro {margin-top:13px;}
  .sticker {right:-4px; top:-14px; width:125px; height:125px; font-size:22px;}
}
@media (min-width:631px) and (max-width:950px) {
  .hero {padding:26px 20px 30px; gap:20px;}
  .hero-side {width:100%; max-width:650px;}
  .expert-top {font-size:32px; padding:18px;}
  .expert-portrait {height:400px;}
  .face {font-size:230px;}
  .expert-bottom strong {font-size:34px;}
  .expert-bottom span {font-size:18px; font-weight:900;}
  .stamp {margin-top:15px; font-size:22px;}
}
@media (max-width:630px) {
  .hero {padding:20px 12px 27px; gap:18px;}
  .hero h1 {margin-bottom:12px;}
  .hero .eyebrow {font-size:24px; margin-bottom:8px;}
  .hero-lead {margin-bottom:13px;}
  .pitch {padding:13px; margin-bottom:12px;}
  .hero-actions {margin-top:14px; gap:8px;}
  .hero .micro {margin-top:11px;}
  .hero-side {max-width:none; width:100%;}
  .expert-card {transform:none; box-shadow:5px 6px 0 #171717;}
  .expert-top {font-size:clamp(26px,8vw,39px); line-height:1; padding:18px 8px;}
  .expert-portrait {height:clamp(270px,80vw,410px);}
  .face {font-size:clamp(155px,46vw,240px);}
  .expert-bottom {padding:18px 6px; gap:9px;}
  .expert-bottom strong {font-size:clamp(25px,7vw,37px);}
  .expert-bottom span {font-size:clamp(15px,4vw,20px); font-weight:900;}
  .stamp {margin:15px 2px 0; padding:12px 7px; font-size:21px;}
}

/* V4 — intro text cleanup and lower real-opinions sticker */
@media (min-width:951px) {
  .hero .sticker { top:82px; }
}
@media (min-width:631px) and (max-width:950px) {
  .hero .sticker { top:70px; }
}
@media (max-width:630px) {
  .hero .sticker { margin-top:96px; }
}

/* V6 — keep the final phrases together instead of orphaning the last word. */
.hero .keep-together { white-space: nowrap; }

/* V7 — center and balance both opening paragraphs; avoid tapered/orphaned lines. */
.hero .hero-lead,
.hero .pitch {
  text-align: center;
  text-wrap: balance;
  margin-inline: auto;
}
/* Let the browser balance whole lines rather than pushing an oversized phrase
   onto the final line as the previous V6 nowrap rule did. */
.hero .hero-lead .keep-together,
.hero .pitch .keep-together {
  white-space: normal;
}

/* V8 — retain balanced centered text, align both text blocks with the headline. */
.hero .hero-lead,
.hero .pitch {
  margin-left: 0;
  margin-right: auto;
  width: fit-content;
  max-width: 100%;
  text-align: center;
  text-wrap: balance;
}
/* Advisor portrait photo uploaded in admin; keep the original illustration as fallback. */
.expert-portrait .advisor-photo {
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  object-position:center center; z-index:3; display:none;
}
.expert-portrait .advisor-photo.loaded {display:block;}

/* V9 — center the two-line GOT PROBLEMS / WE GOT OPINIONS hero headline only. */
.hero h1 {
  text-align: center;
  width: 100%;
}

/* V10 — centered attention line and a true side-by-side badge/headline layout. */
.hero .eyebrow { text-align:center; }
.hero .headline-row { display:grid; grid-template-columns:clamp(95px,11vw,145px) minmax(0,1fr); align-items:center; gap:12px; width:100%; margin-bottom:14px; }
.hero .headline-row .sticker { position:relative; top:auto; right:auto; margin:0; width:100%; height:auto; aspect-ratio:1; justify-self:center; transform:rotate(-9deg); font-size:clamp(16px,1.8vw,25px); }
.hero .headline-row h1 { margin:0; max-width:none; width:100%; font-size:clamp(37px,4.35vw,72px); letter-spacing:-2.5px; }
@media(max-width:950px){.hero .headline-row .sticker{top:auto;right:auto;}}
@media(max-width:630px){.hero .headline-row{grid-template-columns:83px minmax(0,1fr);gap:8px}.hero .headline-row .sticker{margin:0;font-size:14px;border-width:3px;box-shadow:3px 3px #171717}.hero .headline-row .sticker small{font-size:6px;margin-top:4px}.hero .headline-row h1{font-size:clamp(29px,7.3vw,47px);letter-spacing:-1.5px}}


/* V11 — cohesive hero composition. Keep the sticker beside a two-line title,
   not inside the title's available text width. */
.hero {
  grid-template-columns: minmax(0, 1.13fr) minmax(0, 1fr);
  gap: clamp(18px, 2.1vw, 34px);
  align-items: start;
}
.hero-copy, .hero-side { min-width: 0; }
.hero .eyebrow {
  text-align: center;
  margin: 0 0 14px;
  line-height: 1;
}
.hero .headline-row {
  display: grid;
  grid-template-columns: clamp(88px, 9vw, 135px) minmax(0, 1fr);
  gap: clamp(10px, 1.3vw, 20px);
  align-items: center;
  margin: 0 0 22px;
}
.hero .headline-row h1 {
  font-size: clamp(30px, 3.45vw, 57px);
  letter-spacing: -2px;
  line-height: 1.08;
  text-align: center;
  margin: 0;
  width: 100%;
}
.hero .headline-row h1 .headline-line {
  display: block;
  color: var(--dark);
  text-shadow: 3px 3px white;
  white-space: nowrap;
}
.hero .headline-row h1 .headline-line > span {
  color: var(--red);
  text-shadow: 4px 4px #171717, -1px -1px #fff;
}
.hero .headline-row .sticker {
  width: 100%;
  aspect-ratio: 1;
  font-size: clamp(14px, 1.55vw, 23px);
  line-height: 1;
}
.hero .hero-lead {
  width: 100%;
  max-width: none;
  text-align: center;
  text-wrap: balance;
  font-size: clamp(23px, 2.25vw, 34px);
  line-height: 1.09;
  margin: 0 0 18px;
}
.hero .pitch {
  width: 100%;
  max-width: none;
  text-align: center;
  text-wrap: balance;
  font-size: clamp(20px, 1.85vw, 28px);
  padding: 18px 20px;
  margin: 0;
}
.hero .hero-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 19px;
}
.hero .hero-actions a {
  display: grid;
  place-items: center;
  min-width: 0;
  padding: 14px 10px;
  font-size: clamp(17px, 1.55vw, 24px);
}
.hero-side { align-self: start; }
.hero .expert-card { transform: rotate(-0.6deg); }
@media (max-width: 1100px) and (min-width: 951px) {
  .hero .headline-row { grid-template-columns: 88px minmax(0,1fr); gap: 8px; }
  .hero .headline-row h1 { font-size: clamp(29px, 3.3vw, 37px); letter-spacing: -1.8px; }
}
@media (max-width: 950px) {
  .hero { grid-template-columns: minmax(0,1fr); }
  .hero .headline-row { grid-template-columns: clamp(80px, 14vw, 135px) minmax(0,1fr); }
  .hero .headline-row h1 { font-size: clamp(32px, 6vw, 60px); }
  .hero-side { width: 100%; max-width: 650px; margin: 0 auto; }
}
@media (max-width: 630px) {
  .hero .headline-row { grid-template-columns: 65px minmax(0,1fr); gap: 8px; }
  .hero .headline-row h1 { font-size: clamp(23px, 6.1vw, 39px); letter-spacing: -1.2px; }
  .hero .headline-row .sticker { font-size: 11px; }
  .hero .headline-row .sticker small { font-size: 5px; }
  .hero .hero-lead { font-size: clamp(22px, 5.8vw, 28px); }
  .hero .pitch { font-size: clamp(19px, 5vw, 24px); padding: 14px 12px; }
  .hero .hero-actions { grid-template-columns: 1fr; }
  .hero .keep-together { white-space: normal; }
}
@media (max-width: 390px) {
  .hero .headline-row { grid-template-columns: 53px minmax(0,1fr); gap: 5px; }
  .hero .headline-row h1 { font-size: 5.9vw; letter-spacing: -1px; }
  .hero .headline-row .sticker { font-size: 9px; }
}


/* V12 — advisor panel matches the complete height of the left hero column. */
@media (min-width: 951px) {
  .hero { align-items: stretch; }
  .hero .hero-copy { min-width: 0; }
  .hero .hero-side {
    align-self: stretch;
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .hero .expert-card {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
  }
  .hero .expert-portrait {
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
  }
  .hero .expert-top, .hero .expert-bottom { flex: 0 0 auto; }
  .hero .stamp { flex: 0 0 auto; margin: 0 8px; }
}

/* V13: remove warning below advisor panel. */
@media (min-width:951px) { .hero .expert-card { flex: 1 1 auto; } }
