
/* Layout: marketing site in StoryBrand's order (hero, problem band, plan, three ways, bands), one page per offer, edit toolbar pinned to the bottom */
:root{
  --paper:#ffffff; --paper-2:#f4f4f4; --ink:#232323; --ink-2:#555555; --line:#e2e2e2;
  --blue:#5498ff; --blue-soft:#eaf1fc; --on-blue:#ffffff;
  --band:#2b2b2b; --on-band:#ffffff; --on-band-2:#b5b5b5; --teal-on-band:#5498ff;
  --teal:#5498ff; --rust:#b4552b; --rust-soft:#fbeee7;
  --display:"Josefin Sans", "Avenir Next", "Futura", system-ui, sans-serif;
  --body:"Public Sans", "Helvetica Neue", Arial, system-ui, sans-serif;
  --max:1120px; --r:10px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#1c1c1c; --paper-2:#242424; --ink:#f2f2f2; --ink-2:#a6a6a6; --line:#2a2a2a;
  --blue:#5498ff; --blue-soft:#14223a; --on-blue:#0b0b0b;
  --band:#2e2e2e; --on-band:#ffffff; --on-band-2:#b0b0b0;
  --teal:#5498ff; --rust:#e58a5c; --rust-soft:#2e1f17; color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#1c1c1c; --paper-2:#242424; --ink:#f2f2f2; --ink-2:#a6a6a6; --line:#2a2a2a;
  --blue:#5498ff; --blue-soft:#14223a; --on-blue:#0b0b0b;
  --band:#2e2e2e; --on-band:#ffffff; --on-band-2:#b0b0b0;
  --teal:#5498ff; --rust:#e58a5c; --rust-soft:#2e1f17; color-scheme:dark}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;padding-bottom:84px}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--paper)}
.wrap{max-width:var(--max);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);line-height:1.12;text-wrap:balance;margin:0;letter-spacing:-.005em}
h1{font-size:clamp(2.1rem,4.6vw,3.4rem);font-weight:700}
h2{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:700}
h3{font-size:1.25rem;font-weight:700}
p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:4px}
.kicker{font-family:var(--display);font-weight:600;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.lede{color:var(--ink-2);font-size:1.15rem;max-width:62ch}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:1rem;letter-spacing:.02em;text-decoration:none;padding:14px 22px 11px;border-radius:999px;border:2px solid var(--blue);cursor:pointer;background:none}
.btn.primary{background:var(--blue);color:var(--on-blue)}
.btn.ghost{color:var(--blue)}
.btn:hover{filter:brightness(1.07)}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* header */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--paper);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;gap:24px;padding-block:12px;flex-wrap:wrap}
.logo{display:block;height:30px;width:auto}
.logo.on-dark{display:none}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .logo.on-light{display:none}:root:not([data-theme="light"]) .logo.on-dark{display:block}}
:root[data-theme="dark"] .logo.on-light{display:none}:root[data-theme="dark"] .logo.on-dark{display:block}
nav.main{display:flex;gap:16px;flex-wrap:wrap;margin-left:auto;align-items:center}
nav.main a{text-decoration:none;font-weight:600;font-size:.95rem;color:var(--ink-2)}
nav.main a[aria-current="page"],nav.main a:hover{color:var(--ink)}
.navlinks{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--paper)}
.navlinks a{padding:9px 16px 8px;border-radius:999px;white-space:nowrap}
.navlinks a:hover{background:var(--blue-soft);color:var(--ink)}
.navlinks a[aria-current="page"]{background:var(--blue-soft);color:var(--blue)!important}
nav.main .btn{margin-left:12px}
nav.main .btn{padding:10px 18px 8px;font-size:.92rem}
@media (max-width:760px){nav.main{margin-left:0;width:100%;gap:10px}nav.main .btn{margin-left:auto}.navlinks{width:100%;justify-content:space-between}.navlinks a{padding:8px 10px 7px;flex:1;text-align:center}}

section{padding-block:72px}
section.alt{background:var(--paper-2)}
section .head{display:grid;gap:12px;margin-bottom:36px;max-width:780px}

/* hero */
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:48px;align-items:center}
.hero .copy{display:grid;gap:22px;min-width:0}
.hero .price{font-family:var(--display);font-weight:600;font-size:1.05rem;color:var(--ink-2)}
.phone{justify-self:center;width:min(100%,330px);border:10px solid var(--band);border-radius:34px;background:var(--paper-2);padding:22px 16px 26px;display:grid;gap:12px;box-shadow:0 24px 50px -28px rgba(20,30,50,.45)}
.phone .tag{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);text-align:center}
.bubble{padding:12px 14px;border-radius:16px;font-size:.95rem;line-height:1.45}
.bubble.q{background:var(--blue);color:var(--on-blue);justify-self:end;border-bottom-right-radius:4px;max-width:88%}
.bubble.a{background:var(--paper);border:1px solid var(--line);border-bottom-left-radius:4px;max-width:92%}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr}}
.hero.photo{--hero-img:url("/assets/img/hero-construction-ai.jpg");padding-block:120px 110px;color:#fff;background-color:#1b1b1b;background-image:radial-gradient(circle at 0% 100%,rgba(0,0,0,.85) 0%,rgba(0,0,0,.3) 76%),var(--hero-img);background-size:max(100%,calc((100svh - 177px)*2.17)) auto;background-position:78% 100%}
.hero.photo .wrap{grid-template-columns:minmax(0,620px)}
.hero.solo .wrap{grid-template-columns:minmax(0,860px);justify-content:center;text-align:center}
.hero.solo .copy{justify-items:center}
.hero.solo .lede{margin-inline:auto}
.hero.solo .btns,.hero.solo .offer-row{justify-content:center}
.hero.photo h1{color:#fff}
.hero .hl{color:var(--blue)}
.hero.photo .lede,.hero.photo .price{color:rgba(255,255,255,.88)}
.hero.photo .kicker{color:#fff}
.hero.photo .btn.ghost{color:#fff;border-color:#fff}
.hero.photo:has(+.tiles-wrap){padding-bottom:110px}
/* above the fold: photo + bar fill the screen under the header (minus the draft toolbar) */
@media (min-width:761px){.hero.photo:has(+.tiles-wrap){min-height:calc(100svh - var(--hdr,89px) - var(--tb,88px));box-sizing:border-box;display:flex;align-items:center;padding-block:56px 124px}.hero.photo:has(+.tiles-wrap)>.wrap{width:100%}}
.tiles-wrap{position:relative;z-index:2;margin-top:-68px}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:linear-gradient(160deg,#3a3a3a 0%,#262626 50%,#0d0d0d 100%);box-shadow:0 -10px 30px -18px rgba(0,0,0,.5)}
.tile{display:flex;align-items:center;justify-content:center;gap:12px;min-height:68px;padding:12px 16px;box-sizing:border-box;text-decoration:none;color:#fff;font-weight:700;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;border-left:1px solid rgba(255,255,255,.12);text-align:center}
.tile:first-child{border-left:0}
.tile .ico{width:26px;height:26px;flex:none;color:var(--blue)}
.tile .tl{display:grid;gap:1px;text-align:left}
.tstep{font-size:.68rem;letter-spacing:.14em;color:var(--blue)}
@media (max-width:760px){.tile .tl{text-align:center}}

.tile.featured{box-shadow:inset 0 3px 0 var(--blue)}
@media (max-width:760px){.tile{flex-direction:column;gap:6px;font-size:.72rem;letter-spacing:.04em;padding:10px 6px}.hero.photo:has(+.tiles-wrap){padding-bottom:110px}}
@media (max-width:860px){.hero.photo{padding-block:72px;background-image:linear-gradient(rgba(0,0,0,.62),rgba(0,0,0,.62)),var(--hero-img);background-size:cover;background-position:72% center}}

/* dark problem band */
.band-dark{background:var(--band);color:var(--on-band)}
.band-dark .ticks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px 32px;list-style:none;margin:0;padding:0}
.band-dark .ticks li{display:flex;gap:14px;align-items:flex-start;color:var(--on-band-2)}
.band-dark .ticks li::before{content:"\2713";flex:none;width:24px;height:24px;margin-top:.1em;border-radius:50%;border:0;background:#2f9e44;color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:700;line-height:1;box-sizing:border-box}
.band-dark .close{margin-top:36px;font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.4vw,1.75rem);color:var(--on-band)}
.ticks li span{min-width:0}
.band-dark .close2{margin-top:2px;font-family:var(--display);font-weight:400;font-size:clamp(1.3rem,2.4vw,1.75rem);color:var(--on-band)}
body.theme-sb .band-dark .close,body.theme-sb .band-dark .close2{font-family:"Oswald","Bebas Neue",sans-serif;text-transform:uppercase;font-size:clamp(1.5rem,2.7vw,2rem);line-height:1.15;letter-spacing:.01em}
body.theme-sb .band-dark .close{font-weight:600}
body.theme-sb .band-dark .close2{font-weight:300}
.band-dark .hl{color:var(--blue)}
.band-dark .wrap{text-align:center}
.band-dark .head{margin-inline:auto}
.band-dark .ticks{max-width:900px;margin-inline:auto;text-align:left}
.band-dark .answer{flex-direction:column;justify-content:center}
.band-dark .answer p{margin-inline:auto}

.list-cta{margin-top:28px;display:flex;justify-content:center}
/* race plan */
.race{text-align:center}
.race-sub{color:var(--on-band-2);font-style:italic;margin-top:8px}
.race .race-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:34px;text-align:center}
@media (max-width:900px){.race .race-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.race .race-grid{grid-template-columns:1fr}}
.race .fcard,.race .fin{min-height:220px}
.race-letter{width:64px;height:64px;border-radius:50%;border:2px solid var(--blue);background:var(--blue);color:#2d3444;display:grid;place-items:center;font-family:var(--display);font-size:2.2rem!important;line-height:1}
.race-close{color:var(--on-band-2);max-width:60ch;margin:30px auto 0}
.race-cta{margin-top:20px}
/* lead magnet */
.magnet .wrap{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:48px;align-items:center;max-width:980px}
.magnet img{width:100%;height:auto}
.magnet-dark{padding-top:0}.magnet-dark .wrap{text-align:left}.magnet-dark .lede,.magnet-dark li{color:var(--on-band-2)}.magnet-dark h2{color:var(--on-band)}
.magnet .copy{display:grid;gap:14px;justify-items:start}
@media (max-width:760px){.magnet .wrap{grid-template-columns:1fr;justify-items:center}.magnet img{max-width:220px}}
/* trust (testimonials) */
.trust{text-align:center}
.trust .wrap{display:grid;justify-items:center}
.trust-badge{width:64px;height:64px;border-radius:50%;background:var(--on-band);color:var(--band);display:grid;place-items:center;margin-bottom:22px}
.trust-badge .ico{width:30px;height:30px}
.trust h2{max-width:20ch;margin-inline:auto}
.trust .hl{color:var(--blue)}
.trust-sub{color:var(--on-band-2);max-width:56ch;margin:14px auto 0;font-size:1.1rem}
.trust-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 44px;margin:40px 0 36px;width:100%}
.trust-logos img{height:44px;width:auto;max-width:170px;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}
.logo-ph{min-width:130px;padding:14px 18px;border:1px dashed var(--on-band-2);border-radius:8px;color:var(--on-band-2);font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}
.trust-ctas{display:grid;gap:14px;justify-items:center;margin-bottom:36px}
.trust .btn.ghost{color:var(--on-band);border-color:var(--on-band)}
.trust-quotes{display:grid;gap:14px;width:100%;max-width:760px;text-align:left}
.tq{margin:0;padding:22px 26px;border-radius:14px;background:rgba(255,255,255,.08)}
.tq blockquote{margin:0;font-size:1.05rem;color:var(--on-band)}
.tq blockquote::before{content:"\201C"}.tq blockquote::after{content:"\201D"}
.tq figcaption{margin-top:4px;font-weight:700;color:var(--on-band)}
.tq figcaption::before{content:"- "}
/* solution */
.solution .hl{color:var(--blue)}.solution.stack .sol-para{color:var(--ink-2);font-size:1.1rem;max-width:62ch;margin-inline:auto}
@media (min-width:600px){.solution .hl{white-space:nowrap}}
.sol-top{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px;align-items:center}
.sol-copy{display:grid;gap:16px}
.sol-copy p{color:var(--ink-2);font-size:1.05rem}
.sol-copy strong{color:var(--ink)}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.fcard{perspective:900px;min-height:170px;cursor:pointer;border-radius:6px}
.fin{position:relative;width:100%;height:100%;min-height:170px;transition:transform .5s;transform-style:preserve-3d}
.fcard.on .fin{transform:rotateY(180deg)}
@media (hover:hover){.fcard:hover .fin{transform:rotateY(180deg)}}
.ff,.fb{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:6px;background:#2d3444;color:#fff;display:grid;place-content:center;justify-items:center;text-align:center;padding:18px;gap:8px}
.fb{transform:rotateY(180deg)}
.fb p{font-size:.98rem;line-height:1.45;color:#e8ebf2}
.ff .ico{width:34px;height:34px;color:var(--blue)}
.ff span[data-k]{font-family:var(--display);font-weight:700;font-size:1.5rem;text-transform:uppercase;letter-spacing:.02em;line-height:1.05}
body.theme-sb .ff span[data-k]{font-weight:400;font-size:2.1rem}
.fhint{position:absolute;right:10px;bottom:6px;font-size:.95rem;color:#9aa3b5}
@media (max-width:860px){.sol-top{grid-template-columns:1fr}}
.sol-lead{font-size:1.15rem!important;color:var(--ink)!important;font-weight:600}.pillars{display:grid;gap:14px}.pillar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}.pillar .ico{width:26px;height:26px;color:var(--blue);margin-top:2px}.pillar h3{font-size:1.1rem}.pillar p{font-size:.98rem!important;margin-top:2px}
.closer .hl{color:var(--blue)}.head h2 .hl{color:var(--blue)}.closer-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:start}.closer-copy{display:grid;gap:16px}.closer-copy p{color:var(--ink-2);font-size:1.05rem}.closer-copy strong{color:var(--ink)}.promises{display:grid;gap:18px;margin-top:14px}.promise{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}.promise .ico{width:28px;height:28px;color:var(--blue);margin-top:2px}.promise h3{font-size:1.15rem}.promise p{font-size:1rem!important;margin-top:2px}.closer-form{display:grid;gap:16px;padding:28px 24px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);box-shadow:0 24px 50px -32px rgba(20,30,50,.35)}.closer-form h3{font-size:1.6rem;line-height:1.15}.inline-form{display:grid;gap:12px}.inline-form .field{font:inherit;font-size:1rem;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}.inline-form .btn{justify-self:stretch;justify-content:center}.closer-foot{color:var(--ink-2);font-size:.95rem;text-align:center}@media (max-width:860px){.closer-grid{grid-template-columns:1fr}}
.solution.stack{padding-block:72px}.solution.stack .sol-head{text-align:center;max-width:860px;margin:0 auto 36px;display:grid;gap:16px}.solution.stack .sol-lead{margin:0 auto}.pillars.row{grid-template-columns:repeat(3,minmax(0,1fr))}.pillar.dark{background:#2d3444;border:0;color:#fff;padding:18px}.pillar.dark h3{color:#fff;font-size:1.3rem}.pillar.dark p{color:#c9d1e0!important}.pillar.dark .ico{color:var(--blue)}.sol-get{margin:26px 0 12px;text-align:center;font-family:var(--display);font-weight:700;font-size:1.05rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}.fgrid.row4{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.fgrid.row4 .fcard,.fgrid.row4 .fin{min-height:118px}.fgrid.row4 .ff{padding:12px;gap:6px}.fgrid.row4 .ff .ico{width:28px;height:28px}body.theme-sb .fgrid.row4 .ff span[data-k]{font-size:1.7rem}.pillar.sb{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:32px 24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r)}.pillar.sb .pico{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--blue-soft)}.pillar.sb .pico .ico{width:30px;height:30px;color:var(--blue)}.pillar.sb h3{font-size:1.6rem}.pillar.sb p{color:var(--ink-2);font-size:1.02rem;max-width:26ch}.pillars.row{gap:20px}.solution.venn-l{padding-block:72px}.solution.venn-l .sol-head{text-align:center;margin:0 auto 32px}.venn-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center;margin-top:28px}.venn-copy{display:grid;gap:16px;justify-items:start;align-self:start;padding-top:56px}.venn-copy .sol-para{color:var(--ink-2);font-size:1.1rem}.venn-copy .sol-lead{margin:0}.venn-fig{display:grid;place-items:center}.venn{width:100%;max-width:440px;height:auto;overflow:visible}.venn .vcirc{stroke:var(--blue);stroke-width:1.5;stroke-opacity:.7;transition:fill-opacity .25s,stroke-width .25s}.venn .vset{cursor:pointer;outline:none;transition:opacity .25s;transform-box:fill-box;transform-origin:center}.venn .vset:focus-visible .vcirc{stroke-width:3}.venn.act .vset{opacity:.35}.venn.act .vset.on{opacity:1}.venn .vset.on .vcirc{stroke-width:3;filter:url(#vglow)}.venn .vl{font-family:var(--display);font-size:28px;fill:var(--ink);text-anchor:middle;letter-spacing:.03em;pointer-events:none}.venn .vc{font-family:var(--display);font-size:17px;letter-spacing:.14em;fill:var(--blue);text-anchor:middle;text-transform:uppercase}.venn .vorbit{fill:none;stroke:var(--blue);stroke-opacity:.35;stroke-width:1.5;stroke-dasharray:2 10}.venn .vdot{fill:var(--blue)}.venn .orbit{transform-origin:220px 215px;animation:vspin 48s linear infinite}.venn .vflow{stroke:var(--blue);stroke-width:1.5;stroke-opacity:.7;stroke-dasharray:3 7;animation:vflow 1.4s linear infinite}.venn .vnode{fill:var(--blue)}.venn .vnet{pointer-events:none}.venn .vcore{pointer-events:none}.venn .vcore-dot{fill:var(--blue)}.venn .vcore-glow{fill:var(--blue);opacity:.5;transform-box:fill-box;transform-origin:center;animation:vpulse 2.6s ease-in-out infinite}@keyframes vspin{to{transform:rotate(360deg)}}@keyframes vflow{to{stroke-dashoffset:-20}}@keyframes vpulse{0%,100%{transform:scale(1);opacity:.45}50%{transform:scale(1.35);opacity:.15}}@media (prefers-reduced-motion:reduce){.venn .orbit,.venn .vflow,.venn .vcore-glow{animation:none}}.venn-fig{position:relative}.vtruss .vcirc{stroke-linejoin:round}.vtruss .vl{font-size:24px}.vtruss .vchords{pointer-events:none;fill:none;stroke:var(--blue);stroke-width:5;stroke-linejoin:round;stroke-linecap:round}.vtruss .vchords .vweb{stroke-width:3.5;opacity:.85}.vtruss .vplate{fill:var(--paper);stroke:var(--blue);stroke-width:2.5}.venn.dim .vchords{opacity:.25;transition:opacity .25s}.venn.dim .vset,.venn.dim .vnet,.venn.dim .vcore,.venn.dim .vc{opacity:.18;transition:opacity .25s}.venn-pop{position:absolute;left:50%;top:calc(50% - 16px);transform:translate(-50%,-50%);width:min(360px,92%);background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:var(--r);box-shadow:0 18px 44px rgba(20,40,90,.18);padding:20px 22px 22px;text-align:left;z-index:2}.venn-pop[hidden]{display:none}.venn-pop.in{animation:vpopin .28s ease}.venn-pop strong{display:block;font-family:var(--display);font-weight:400;font-size:1.6rem;letter-spacing:.03em;color:var(--blue);text-transform:uppercase;padding-right:28px}.venn-pop span{display:block;color:var(--ink-2);font-size:1rem;margin-top:2px}.venn-pop ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}.venn-pop li{position:relative;padding-left:24px;color:var(--ink);font-size:.98rem}.venn-pop li::before{content:'';position:absolute;left:2px;top:.45em;width:12px;height:7px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}.venn-x{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;border:0;background:var(--blue-soft);color:var(--blue);font-size:1.3rem;line-height:1;cursor:pointer}.venn-hint{margin-top:10px;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);text-align:center}.venn-hint:empty{display:none}@keyframes vpopin{from{opacity:0;transform:translate(-50%,-50%) scale(.92)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media (prefers-reduced-motion:reduce){.venn-pop.in{animation:none}}.venn-fig{display:grid;justify-items:center}@media (max-width:860px){.venn-grid{grid-template-columns:1fr;gap:28px}.venn-copy{justify-items:stretch;padding-top:0}}.solution.stack .sol-foot{margin-top:36px;gap:12px}@media (max-width:860px){.pillars.row{grid-template-columns:1fr}.fgrid.row4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sol-foot{margin-top:28px;display:grid;gap:16px;justify-items:center;text-align:center}
.sol-note{font-weight:600;max-width:62ch}
.layers{margin-top:32px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;align-items:stretch;max-width:900px;margin-inline:auto}
.layer{display:grid;grid-template-rows:auto auto 1fr auto auto;gap:10px;padding:26px 24px;border-radius:var(--r);background:var(--paper);border:2px solid var(--blue)}
.layer p{color:var(--ink-2)}
.layer .price{font-family:var(--display);font-weight:700;font-size:1.15rem}
body.theme-sb .layer .price{font-weight:400;font-size:1.5rem}
.layer .btn{justify-content:center}
.layer-arrow{align-self:center;font-size:2rem;color:var(--blue);font-weight:700}
@media (max-width:700px){.layers{grid-template-columns:1fr}.layer-arrow{justify-self:center;transform:rotate(90deg)}}
/* plan */
.plan-road{padding-block:80px}.road .marker{position:relative;z-index:2}.road::after{content:"";position:absolute;top:43px;left:calc(16.6% + 66.8% * var(--rp,0) - 70px);width:70px;height:6px;border-radius:3px;background:linear-gradient(90deg,rgba(156,194,255,0) 0%,rgba(156,194,255,.35) 70%,rgba(255,255,255,.9) 100%);filter:drop-shadow(0 0 5px rgba(84,152,255,.8));opacity:calc(var(--rp,0) * 40);max-width:70px;pointer-events:none}@media (max-width:760px){.road::after{left:calc(50% - 1px);top:calc(44px + (100% - 88px) * var(--rp,0) - 70px);width:6px;height:70px;background:linear-gradient(180deg,rgba(156,194,255,0) 0%,rgba(156,194,255,.35) 70%,rgba(255,255,255,.9) 100%)}}
.plan-road .road-head{text-align:center;max-width:820px;margin:0 auto 48px;display:grid;gap:12px}.plan-road .road-head h2{color:var(--on-band)}
.road-head h2{white-space:pre-line}
.plan-road .road-head .lede{font-style:italic;font-size:.98rem;white-space:pre-line;color:var(--on-band-2);text-align:center;margin-inline:auto;justify-self:center}.plan-road .hl{color:var(--blue)}.plan-road .lede{color:var(--on-band-2)}.road{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.road::before{content:"";position:absolute;top:44px;left:16.6%;right:16.6%;border-top:4px dashed var(--blue);opacity:.55}.stop{position:relative;display:grid;justify-items:center;text-align:center;gap:10px;align-content:start}.stop .marker{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;background:var(--blue);color:#fff;box-shadow:0 0 0 8px var(--band)}.stop .marker .ico{width:38px;height:38px;color:#fff}.stop .stepn{margin-top:8px;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.stop h3{color:var(--on-band);font-size:1.5rem}.stop p{color:var(--on-band-2);max-width:32ch}.plan-road .sol-foot{margin-top:48px;display:flex;justify-content:center}@media (max-width:760px){.road{grid-template-columns:1fr;gap:36px}.road::before{top:44px;bottom:44px;left:50%;right:auto;border-top:0;border-left:4px dashed var(--blue)}.stop{background:var(--band)}}
.plan{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:28px;counter-reset:s}
.plan .step{display:grid;gap:10px;align-content:start}
.plan .num{font-family:var(--display);font-weight:700;font-size:2.6rem;line-height:1;color:var(--blue)}
.plan-note{margin-top:30px;padding:14px 18px;border-left:3px solid var(--teal);background:var(--paper-2);max-width:640px}
section.alt .plan-note{background:var(--paper)}

/* three ways */
.ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}.ways:has(> :nth-child(4)){grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.way{display:flex;flex-direction:column;gap:12px;padding:28px 24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);position:relative}
.way.featured{border:2px solid var(--blue)}
.way .flag{position:absolute;top:-13px;left:22px;background:var(--blue);color:var(--on-blue);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.way .price{font-family:var(--display);font-weight:700;font-size:1.6rem;margin-top:8px}.way .price .unit{font-family:var(--body);font-weight:400;font-size:.95rem;text-transform:none;letter-spacing:0;color:var(--ink-2)}
.way .fine{font-size:.88rem;color:var(--ink-2)}
.way .btn{justify-content:center;margin-top:8px}.way>div:empty{flex:1}
.more{margin-top:44px;display:grid;gap:16px}
.more-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.mini{display:grid;grid-template-rows:auto auto auto 1fr auto auto;gap:8px;padding:20px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.mini p{color:var(--ink-2);font-size:.95rem}
.mini .price{font-family:var(--display);font-weight:700;font-size:1.2rem}
.mini .btn{justify-content:center;text-align:center;padding:10px 16px 8px;font-size:.9rem}
body.theme-sb .mini .price{font-weight:400;font-size:1.5rem}

/* accent band */
.band-blue{background:var(--blue-soft)}
.band-blue .wrap{display:flex;gap:28px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.band-blue .copy{display:grid;gap:10px;max-width:720px;min-width:0}

/* guide */
.guide .wrap{display:grid;grid-template-columns:200px minmax(0,1fr);gap:40px;align-items:center}
.guide img{width:200px;height:200px;object-fit:cover;border-radius:50%;max-width:100%}
.guide .copy{display:grid;gap:14px}
.guide .who{font-size:.92rem;color:var(--ink-2)}
@media (max-width:640px){.guide .wrap{grid-template-columns:1fr}.guide img{width:140px;height:140px}}

/* text blocks */
.textblock{display:grid;gap:14px;max-width:780px}
.textblock p{font-size:1.15rem;color:var(--ink-2)}
section.accent{background:var(--band);color:var(--on-band)}
section.accent p{color:var(--on-band-2)}

/* features */
.feature .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;border-top:1px solid var(--line);padding-top:40px}
.feature .copy{display:grid;gap:12px;max-width:720px}
section.feature{padding-block:40px}
@media (max-width:700px){.feature .wrap{grid-template-columns:1fr}}

/* leads */
.leads{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px}
.lead{display:grid;gap:10px;padding:26px 24px;border:1px dashed var(--line);border-radius:var(--r);align-content:start;justify-items:start}

/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}
.card{display:grid;gap:8px;padding:22px;border-top:3px solid var(--blue);background:var(--paper)}
section:not(.alt) .card{background:var(--paper-2)}
.card p{color:var(--ink-2)}

/* timeline */
.timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;max-width:820px}
.timeline li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.timeline .when{font-family:var(--display);font-weight:700;color:var(--blue);font-variant-numeric:tabular-nums}
@media (max-width:560px){.timeline li{grid-template-columns:1fr;gap:4px}}

/* price */
.pricebox{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;padding:36px;border:2px solid var(--blue);border-radius:var(--r);background:var(--paper)}
.pricebox .amount{font-family:var(--display);font-weight:700;font-size:clamp(2.2rem,5vw,3.2rem);line-height:1}
.pricebox .terms{color:var(--ink-2);margin-top:8px}
.pricebox ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pricebox li{display:flex;gap:10px}
.pricebox li::before{content:"\2713";color:var(--teal);font-weight:700}
.pricebox .side{display:grid;gap:18px;align-content:start}
.pricebox .fine{font-size:.92rem;color:var(--ink-2)}
@media (max-width:760px){.pricebox{grid-template-columns:1fr;padding:24px}}

.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:18px;align-items:start}
.tier{display:grid;gap:8px;padding:24px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.tier .amount{font-family:var(--display);font-weight:700;font-size:1.8rem}
.tier p{color:var(--ink-2)}
.tier.featured{border:2px solid var(--blue);position:relative}.tiers{align-items:stretch}.flag-ph{visibility:hidden}.tier .tag{min-height:1.5em}.price-row{display:flex;align-items:baseline;flex-wrap:nowrap;gap:8px;min-height:2.1rem;margin-top:6px;white-space:nowrap}.price-note{display:flex;gap:10px;align-items:baseline}.price-note .pre{font-size:.8rem;font-weight:400;color:var(--ink-2);opacity:.8}.price-row .was{font-size:.95rem;color:var(--ink-2);opacity:.75}.price-note{min-height:1.2rem;margin-top:-4px}.price-note .save{font-family:var(--display);font-size:.95rem;letter-spacing:.04em;color:var(--blue)}.lead-ph{visibility:hidden}.lead-row{display:flex;align-items:flex-start;gap:8px;min-height:3.3em}.lead-row .itip{margin-top:3px}@media (max-width:860px){.lead-row{min-height:0}}.tier-lead{font-weight:600;font-size:1.05rem;color:var(--ink-2)}.tiers .tier>.kicker,body.theme-sb .tiers .tier>.kicker{font-family:var(--display);font-weight:400;font-size:clamp(1.7rem,2.4vw,2.1rem);line-height:1.05;letter-spacing:.02em;text-transform:uppercase;color:var(--ink);margin-top:2px}.tiers .tier.featured>.kicker{color:var(--blue)}.tiers .tier .amount,body.theme-sb .tiers .tier .amount{font-size:1.55rem}.tier{display:flex;flex-direction:column;gap:8px}.tier>.tier-cta{margin-top:auto;align-self:flex-start}.tier>.flag{align-self:flex-start}.tier>details.feat+.tier-cta{margin-top:auto}@media (min-width:861px){.tiers{padding-block:20px}.tier.featured{transform:scale(1.06);z-index:1;box-shadow:0 22px 50px rgba(20,40,90,.18)}}.tag-row{display:flex;align-items:center;gap:8px}.itip{position:relative;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--blue);color:var(--blue);font:700 12px/1 Georgia,serif;font-style:italic;cursor:help;flex:none}.itip-body{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);width:260px;padding:12px 14px;border-radius:10px;background:#2d3444;color:#fff;font:400 .88rem/1.45 var(--body,inherit);font-style:normal;text-align:left;box-shadow:0 12px 30px rgba(0,0,0,.2);opacity:0;visibility:hidden;transition:opacity .15s;z-index:5;pointer-events:none}.itip:hover .itip-body,.itip:focus .itip-body,.itip:focus-within .itip-body{opacity:1;visibility:visible}@media (max-width:600px){.itip-body{left:auto;right:-10px;transform:none;width:min(260px,80vw)}}
.tier .flag{justify-self:start;font-family:var(--display);font-weight:700;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;background:var(--blue);color:var(--on-blue);padding:4px 10px;border-radius:999px}
.tier .was{color:var(--ink-2);font-size:.85rem;opacity:.75}.tier .pre{color:var(--ink-2);font-size:.85rem;font-weight:600;margin-top:2px}.tier .save{font-family:var(--display);font-weight:700;color:var(--blue);font-size:.95rem}.tier .more{display:inline-block;margin-top:10px;font-weight:600;color:var(--blue);text-decoration:none}.tier .more:hover{text-decoration:underline}
.tier .tag{color:var(--ink-2);font-size:.85rem;font-weight:600;margin-top:-4px}.tier .benefits{font-weight:400;color:var(--ink);margin-top:4px}.tier .feat summary{cursor:pointer;font-weight:400;color:var(--blue);margin-top:4px}.tier .feat .checks{font-size:.95rem;color:var(--ink-2)}.tier .tier-cta{justify-self:start;margin-top:8px}.tier{align-content:start}
.tiers-foot{margin-top:24px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.tiers-foot .fine{color:var(--ink-2);max-width:640px}
/* StoryBrand-style offer cards (cardStyle: sb) */
.sbc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px;align-items:stretch}
.sbc{display:flex;flex-direction:column;gap:16px;padding:36px 32px 32px;border-radius:24px;background:var(--paper-2);color:var(--ink);border:2px solid transparent}
.sbc-feat{background:var(--paper);border-color:var(--blue);box-shadow:0 18px 44px -20px rgba(20,40,90,.25)}
.sbc-dark{background:#1f2125;color:#fff;box-shadow:0 22px 50px -18px rgba(0,0,0,.45)}
.sbc-for{font-family:var(--display);font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.sbc-name{font-family:var(--display);font-size:clamp(1.6rem,2.4vw,2rem);line-height:1.1;color:inherit}
.sbc-para{color:var(--ink-2);font-size:1.02rem;line-height:1.65}
.sbc-dark .sbc-para{color:#c9ccd2}
.sbc-foot{margin-top:auto;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}
.sbc-dark .sbc-foot{border-top-color:#3a3d43}
.sbc-plabel{font-size:.9rem;color:var(--ink-2)}
.sbc-dark .sbc-plabel{color:#a9adb5}
.sbc-amt{font-family:var(--display);font-weight:700;font-size:1.5rem;line-height:1.2}
.sbc-was{font-size:.95rem;font-weight:400;opacity:.6}
.sbc-save{font-size:.85rem;font-weight:600;color:var(--blue)}
.sbc-btn{background:var(--blue);color:#fff;border-color:var(--blue);padding:13px 20px 11px}
.sbc-for{min-height:2.6em}.sbc-name{min-height:2.2em}.sbc-para{flex:1}.sbc-foot{flex-wrap:nowrap;align-items:center}.sbc-btn{flex:none;min-width:168px;justify-content:center;white-space:nowrap}.sbc-price{min-width:0}.sbc-amt{white-space:nowrap}.sbc-ph{visibility:hidden}@media (max-width:420px){.sbc-foot{flex-wrap:wrap}.sbc-btn{width:100%}}@media (max-width:860px){.sbc-for,.sbc-name{min-height:0}}
.sbc-foot{flex-direction:column;align-items:stretch!important;flex-wrap:nowrap!important;gap:18px}.sbc-price{display:grid;gap:2px}.sbc-plabel{font-size:.88rem;line-height:1.3;min-height:1.3em}.sbc-amt{font-size:1.75rem;line-height:1.15}.sbc-note{display:flex;gap:10px;align-items:baseline;min-height:1.4em;font-size:.9rem}.sbc-was{font-size:.9rem;opacity:.6}.sbc-btn{width:100%;min-width:0;justify-content:center;padding:15px 20px 13px}.sbc-more{text-align:center;margin-top:-4px}
.sbc{position:relative}.sbc-flag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--blue);color:#fff;font-family:var(--display);font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px 5px;border-radius:999px;white-space:nowrap}
.sbc-white{background:var(--paper);border-color:var(--line);box-shadow:0 18px 44px -24px rgba(20,40,90,.18)}
.sbc-more{font-size:.92rem;color:var(--blue);text-decoration:none;font-weight:600}
.sbc-dark .sbc-more{color:#8fb8ff}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .sbc-dark{background:#0f1012}}
:root[data-theme="dark"] .sbc-dark{background:#0f1012}


.guarantee .wrap>div{display:grid;gap:10px;padding:28px 30px;border-left:5px solid var(--teal);background:var(--paper-2);max-width:780px}
.guarantee p{font-family:var(--display);font-weight:600;font-size:1.4rem;line-height:1.3}

.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px;counter-reset:st}
.steps li{counter-increment:st;display:grid;gap:8px;padding-top:14px;border-top:2px solid var(--line)}
.steps li::before{content:"Step " counter(st);font-family:var(--display);font-weight:700;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}

.faq{display:grid;gap:0;max-width:820px}
.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{cursor:pointer;font-weight:600;font-size:1.08rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";color:var(--blue);font-weight:700}
.faq details[open] summary::after{content:"\2013"}
.faq details p{margin-top:10px;color:var(--ink-2);max-width:68ch}

section.cta{background:var(--band);color:var(--on-band);text-align:left}
section.cta .wrap{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
section.cta .copy{display:grid;gap:8px;max-width:640px}
section.cta p{color:var(--on-band-2)}
section.cta .hl{color:var(--blue)}

footer{padding-block:40px;border-top:1px solid var(--line)}
footer .wrap{display:flex;flex-wrap:wrap;gap:18px 40px;justify-content:space-between;color:var(--ink-2);font-size:.92rem}
footer .links{display:flex;flex-wrap:wrap;gap:16px}
footer a{text-decoration:none}

/* draft-only: proof slots and notes */
.slot{display:none}
body.notes .slot{display:block}
.slot .wrap>div{border:2px dashed var(--rust);border-radius:var(--r);padding:24px;display:grid;gap:8px;background:var(--rust-soft)}
.slot h3{color:var(--rust)}
.notes-panel{display:none;background:var(--rust-soft);border-bottom:1px solid var(--line)}
body.notes .notes-panel{display:block}
.notes-panel .wrap{padding-block:18px;display:grid;gap:10px}
.notes-panel h3{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rust)}
.notes-panel ul{margin:0;padding-left:20px;display:grid;gap:6px}
.private-pill{display:inline-block;margin-left:10px;font-family:var(--body);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rust);border:1px solid var(--rust);border-radius:999px;padding:2px 8px;vertical-align:middle}

/* edit mode */
body.editing [data-k]{outline:1px dashed color-mix(in srgb,var(--blue) 55%,transparent);outline-offset:3px;border-radius:3px;cursor:text}
body.editing [data-k]:focus{outline:2px solid var(--blue);background:color-mix(in srgb,var(--blue) 8%,transparent)}
.arrctl{display:none}
body.editing .arrctl{display:inline-flex}
.rm,.add{font:600 .78rem var(--body);border:1px solid var(--rust);color:var(--rust);background:var(--paper);border-radius:999px;padding:2px 9px;cursor:pointer}
.rm{margin-left:8px;align-self:start}
.add{margin-top:12px}

/* v2 sections */
.offers{display:grid;gap:10px}
.offers .lbl{font-size:.9rem;color:var(--ink-2)}
.offer-row{display:flex;flex-wrap:wrap;gap:10px}
.offer-row a{position:relative;text-decoration:none;font-weight:600;font-size:.95rem;padding:10px 16px;border:1px solid var(--line);border-radius:8px;background:var(--paper-2)}
.offer-row a:hover{border-color:var(--blue)}
.offer-row .badge{position:absolute;top:-10px;right:10px;background:var(--blue);color:var(--on-blue);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px}
.proofslot{font-size:.95rem;color:var(--rust);border-left:3px solid var(--rust);padding-left:12px}
.answer{margin-top:28px;display:flex;flex-wrap:wrap;gap:18px 28px;align-items:center;padding-top:28px;border-top:1px solid color-mix(in srgb,var(--on-band) 20%,transparent)}
.answer p{max-width:62ch;font-size:1.1rem;color:var(--on-band)}
.freebie-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}
.video{aspect-ratio:16/9;max-width:100%;border-radius:var(--r);background:var(--band);color:var(--on-band);display:grid;place-items:center;text-align:center;gap:8px;padding:16px}
.video .play{width:64px;height:64px;border-radius:50%;background:var(--blue);display:grid;place-items:center;color:var(--on-blue);font-size:1.4rem;margin:0 auto 8px}
.freebie-side{display:grid;gap:16px}
.freebie-side:empty{display:none}
.freebie-grid:has(.freebie-side:empty){grid-template-columns:minmax(0,1fr);max-width:760px}
.freebie-main{display:grid;gap:18px;min-width:0}
.freebie-main h3{margin-bottom:6px}
.story-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start}.story-photo{display:grid;gap:12px;position:sticky;top:110px}.story-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:var(--r);box-shadow:0 16px 40px rgba(20,40,90,.16)}.story-photo .who{font-size:.9rem;color:var(--ink-2)}.story-body{display:grid;gap:16px;justify-items:start}.story-body h2{margin:0}.story-body h2 .hl{color:var(--blue)}.story-body .lede{margin:0;max-width:62ch}.story-more{display:none;white-space:pre-line}.story.open .story-more{display:inline}.see-more{border:0;background:none;padding:0;font:inherit;font-weight:700;font-size:.95rem;color:var(--blue);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.story-body .checks{margin:6px 0 0}
.story-dark .wrap{text-align:left}.story-dark h2,.story-dark .story-photo strong{color:var(--on-band)}.story-dark .lede,.story-dark .checks li,.story-dark .story-photo .who{color:var(--on-band-2)}.story-dark .story-photo img{box-shadow:0 16px 40px rgba(0,0,0,.45)}@media (max-width:820px){.story-grid{grid-template-columns:1fr;gap:24px}.story-photo{position:static;grid-template-columns:96px minmax(0,1fr);align-items:center}.story-photo img{width:96px;border-radius:50%}}
.facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px}
.facts-who,.facts-run{display:grid;gap:14px;align-content:start;padding:26px 24px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.facts-who{grid-template-columns:auto minmax(0,1fr);align-items:center}
.facts-who img{width:72px;height:72px;border-radius:50%;object-fit:cover}
.facts-who .checks,.facts-who .add{grid-column:1/-1}
.facts-who .who{font-size:.9rem;color:var(--ink-2)}
@media (max-width:820px){.freebie-grid{grid-template-columns:1fr}}
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}
.quote{display:grid;gap:10px;padding:22px;border:2px dashed var(--rust);border-radius:var(--r);background:var(--rust-soft)}
.quote blockquote{margin:0;font-family:var(--display);font-size:1.15rem;line-height:1.35}
.quote .who{font-size:.88rem;color:var(--ink-2)}
.proof-mid{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;margin-block:26px}
.logos{color:var(--rust);font-size:.92rem;border:1px dashed var(--rust);border-radius:8px;padding:14px 16px;flex:1;min-width:0}
.way .benefit{font-weight:600}
.way details{border-top:1px solid var(--line);padding-top:10px}
.way summary{cursor:pointer;color:var(--blue);font-weight:600;font-size:.92rem}
.checks{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:7px}
.checks li{display:flex;gap:10px;align-items:flex-start}
.for-who{font-size:.95rem;color:var(--ink-2);margin-top:-4px}.for-who strong{color:var(--ink)}
.way-feats{font-size:.98rem;color:var(--ink-2)}
.checks li::before{content:"\2713";color:var(--teal);font-weight:700;flex:none}
.fitbox{display:grid;gap:18px;padding:30px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);max-width:860px}
.fitbox .checks{gap:12px;font-size:1.08rem}
.fit-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px}
.fit-pair .fitbox{max-width:none;align-content:start}
.fitbox.not .checks li::before{content:"\2715";color:var(--ink-2)}
.compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}
.compare .col{display:grid;gap:12px;align-content:start;padding:24px;border-radius:var(--r);background:var(--paper)}
section:not(.alt) .compare .col{background:var(--paper-2)}
.compare .col.after{border:2px solid var(--teal)}
.compare ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.compare .before li::before{content:"\2715  ";color:var(--ink-2);font-weight:700}
.compare .after li::before{content:"\2713  ";color:var(--teal);font-weight:700}
.phases{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}
.phase{display:grid;gap:10px;align-content:start;padding:24px;border-radius:var(--r);border:1px solid var(--line);background:var(--paper)}
.phase .pn{font-family:var(--display);font-weight:700;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.phase p{color:var(--ink-2)}
.landing-cta{margin-left:auto}
.modal{position:fixed;inset:0;z-index:40;background:color-mix(in srgb,#000 55%,transparent);display:grid;place-items:center;padding:16px}
.modal form{width:min(100%,480px);max-height:calc(100% - 32px);overflow:auto;background:var(--paper);color:var(--ink);border-radius:12px;padding:26px;display:grid;gap:12px}
.modal label{font-size:.88rem;font-weight:600;display:grid;gap:5px}
.modal input,.modal textarea,.modal select{font:inherit;font-size:1rem;padding:9px 10px;border:1px solid var(--line);border-radius:6px;background:var(--paper-2);color:var(--ink)}
.modal .row{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:6px}


/* Theme: StoryBrand style (their layout language: condensed caps display, Montserrat body, black/white, one accent; our blue in place of their red) */
body.theme-sb{--display:"Bebas Neue","Oswald","Arial Narrow",sans-serif;--body:"Montserrat","Helvetica Neue",Arial,sans-serif;--band:#151515;--ink:#151515}
body.theme-sb h1,body.theme-sb h2,body.theme-sb h3{font-weight:400;letter-spacing:.01em;line-height:.95}
body.theme-sb h1{font-size:clamp(3rem,7.2vw,5.4rem)}
body.theme-sb .hero h1{font-size:clamp(2.3rem,4.6vw,3.7rem);line-height:1;letter-spacing:.015em}
.hero h1{font-size:clamp(1.9rem,3.6vw,2.7rem)}
body.theme-sb h2{font-size:clamp(2.3rem,4.6vw,3.6rem)}
body.theme-sb h3{font-size:1.7rem}
body.theme-sb .kicker{font-family:var(--body);font-weight:800;font-size:.78rem;letter-spacing:.16em}
body.theme-sb .btn{font-family:var(--body);font-weight:700;text-transform:uppercase;font-size:.9rem;letter-spacing:.06em;padding:16px 26px;box-shadow:0 2px 8px rgba(0,0,0,.14)}
body.theme-sb .btn.ghost{box-shadow:none}
body.theme-sb .way .price,body.theme-sb .tier .amount,body.theme-sb .pricebox .amount,body.theme-sb .plan .num{font-weight:400}
body.theme-sb .guarantee p{font-family:var(--display);font-weight:400;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1}
body.theme-sb .quote blockquote{font-family:var(--body);font-weight:600;font-size:1.05rem}
body.theme-sb nav.main a{font-family:var(--body);font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.08em}
/* Intervention option: hero plan card, annotated example, what-is block, investment cards */
.pcard{justify-self:center;width:min(100%,380px);background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px;display:grid;gap:14px;box-shadow:0 24px 50px -30px rgba(20,30,50,.45);text-align:left}
.pc-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.pc-h{font-family:var(--display);font-weight:700;font-size:1.1rem}
.pc-tag{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);background:var(--blue-soft);padding:4px 10px;border-radius:999px;white-space:nowrap}
.pc-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.pc-list li{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:.95rem;line-height:1.4}
.pc-when{font-weight:700;color:var(--blue);white-space:nowrap}
.pc-foot{font-size:.85rem;color:var(--ink-2)}
/* v264 (Craig): every hero above the fold, same height as the home hero */
@media (min-width:861px){section.hero:not(.photo){min-height:calc(100svh - var(--hdr,89px) - var(--tb,88px));box-sizing:border-box;display:flex;align-items:center;padding-block:48px}section.hero:not(.photo)>.wrap{width:100%}.cm-body{min-height:0;gap:6px;padding:12px 14px}.cm-msg{padding:8px 12px;font-size:.85rem}.cm-top{padding:10px 14px}}
/* v254: hero chat mockup (s.chat), plays once */
.chatm{justify-self:center;text-align:left;width:min(100%,380px);background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 50px -30px rgba(20,30,50,.45);overflow:hidden;display:grid;grid-template-rows:auto 1fr}
.cm-top{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line)}
.cm-av{width:34px;height:34px;border-radius:50%;background:var(--blue);display:grid;place-items:center;color:#fff;font-weight:700;font-size:.8rem}
.cm-name{font-weight:700;font-size:.95rem;line-height:1.2}
.cm-st{font-size:.75rem;color:var(--ink-2);display:flex;align-items:center;gap:6px}
.cm-st:before{content:"";width:7px;height:7px;border-radius:50%;background:#34c759}
.cm-body{display:flex;flex-direction:column;gap:8px;padding:16px;min-height:420px;background:var(--paper-2);justify-content:flex-end}
.cm-msg{max-width:84%;padding:9px 13px;border-radius:18px;font-size:.88rem;line-height:1.4;animation:cmIn .35s ease both}
.cm-msg.me{align-self:flex-end;background:var(--blue);color:#fff;border-bottom-right-radius:6px}
.cm-msg.ai{align-self:flex-start;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-bottom-left-radius:6px}
.cm-msg.hid{display:none}
.cm-typing{align-self:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:11px 14px;display:flex;gap:4px}
.cm-typing i{width:6px;height:6px;border-radius:50%;background:var(--ink-2);animation:cmDot 1s infinite}
.cm-typing i:nth-child(2){animation-delay:.15s}.cm-typing i:nth-child(3){animation-delay:.3s}
.cm-ex{font-size:.7rem;color:var(--ink-2);text-align:center;padding:0 0 10px;background:var(--paper-2)}
@keyframes cmIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes cmDot{0%,60%,100%{opacity:.3}30%{opacity:1}}
@media (prefers-reduced-motion:reduce){.cm-msg{animation:none}}
/* v266 */.iv-pre{font-size:.85rem;font-weight:600;color:var(--ink-2);margin-bottom:-6px}
/* v265: chat scrolls inside a fixed-height box; example section steps through its numbered pins */
.chatm .cm-body{height:420px;min-height:0;overflow-y:auto;justify-content:flex-start;scrollbar-width:thin;padding-bottom:16px}
.chatm .cm-body>:first-child{margin-top:auto}
.mk-row{transition:background .35s}
.mk-row.on{background:var(--blue-soft)}
.mk-row .pin,.callouts .pin{transition:transform .3s,box-shadow .3s}
.mk-row.on .pin{transform:translateY(-50%) scale(1.25);box-shadow:0 0 0 6px rgba(84,152,255,.22)}
.callouts li{transition:opacity .45s,transform .45s}
.ex-grid.play .callouts li{opacity:.28}
.ex-grid.play .callouts li.seen{opacity:1}
.callouts li.on{transform:translateX(6px)}
.callouts li.on .pin{transform:scale(1.25);box-shadow:0 0 0 6px rgba(84,152,255,.22)}
@media (prefers-reduced-motion:reduce){.ex-grid.play .callouts li{opacity:1}}
/* v252: animated weekly checklist (cohort hero card, card.anim) */
.pcard.anim{gap:16px;padding:24px}
.pcard.anim .pc-h{font-family:inherit;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.pcard.anim .pc-tag{display:inline-flex;align-items:center;gap:7px;text-transform:none;letter-spacing:0;font-size:.78rem;color:var(--ink);background:var(--paper-2)}
.pc-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);animation:pcPulse 1.6s ease-in-out infinite}
@keyframes pcPulse{0%,100%{box-shadow:0 0 0 0 rgba(84,152,255,.55)}50%{box-shadow:0 0 0 5px rgba(84,152,255,0)}}
.pc-bar{height:6px;border-radius:999px;background:var(--line);overflow:hidden}
.pc-bar i{display:block;height:100%;width:0;background:var(--blue);border-radius:inherit;transition:width .9s ease}
.pc-weeks{display:grid;grid-template-columns:repeat(4,1fr);font-size:.72rem;font-weight:600;color:var(--ink-2);margin-top:-8px}
.pc-weeks span{text-align:right}
.pcard.anim .pc-list{gap:4px}
.pcard.anim .pc-list li{grid-template-columns:28px 1fr auto;align-items:center;border-top:0;padding:10px 10px;border-radius:10px;transition:background .4s,opacity .4s}
.pc-ic{width:24px;height:24px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;box-sizing:border-box;transition:background .3s,border-color .3s}
.pc-ic svg{width:13px;height:13px;opacity:0;transform:scale(.4);transition:opacity .3s,transform .3s}
.pcard.anim li.todo{opacity:.5}
.pcard.anim li.now{background:var(--blue-soft)}
.pcard.anim li.now .pc-ic{border-color:var(--blue);border-right-color:transparent;animation:pcSpin .9s linear infinite}
.pcard.anim li.done .pc-ic{background:var(--blue);border-color:var(--blue)}
.pcard.anim li.done .pc-ic svg{opacity:1;transform:scale(1)}
.pcard.anim .pc-t strong{font-weight:700}
.pcard.anim .pc-when{font-size:.75rem;color:var(--ink-2)}
.pcard.anim li.done .pc-when,.pcard.anim li.now .pc-when{color:var(--blue)}
.pcard.anim .pc-foot{border-top:1px solid var(--line);padding-top:12px}
@keyframes pcSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pc-dot,.pcard.anim li.now .pc-ic{animation:none}.pc-bar i{transition:none}}
.ex-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:start}
.mock{border:1px solid var(--line);border-radius:12px;background:var(--paper);overflow:hidden;box-shadow:0 20px 44px -30px rgba(20,30,50,.45)}
.mk-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--paper-2);border-bottom:1px solid var(--line)}
.mk-bar i{width:9px;height:9px;border-radius:50%;background:var(--line)}
.mk-title{margin-left:8px;font-size:.82rem;color:var(--ink-2)}
.mk-body{display:grid}
.mk-row{position:relative;display:grid;grid-template-columns:150px 1fr;gap:12px;padding:12px 44px 12px 16px;border-bottom:1px solid var(--line);font-size:.92rem}
.mk-l{color:var(--ink-2)}
.mk-row .pin{position:absolute;right:12px;top:50%;transform:translateY(-50%)}
.mk-status{padding:10px 16px;font-size:.82rem;font-weight:600;color:var(--ink-2)}
.pin{flex:none;width:24px;height:24px;border-radius:50%;background:var(--blue);color:var(--on-blue);display:grid;place-items:center;font-size:.78rem;font-weight:700}
.callouts{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.callouts li{display:flex;gap:14px;align-items:flex-start}
.callouts strong{font-family:var(--display)}
.what-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;align-items:center}
.what-copy{display:grid;gap:16px}
.what-price{font-family:var(--display);font-weight:700;font-size:1.15rem}
.what-card{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:var(--r);padding:22px;background:var(--paper);display:grid;gap:8px}
.iv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.iv-grid .checks{margin-top:12px}
.iv-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px}
.iv-card{position:relative;border:1px solid var(--line);border-radius:var(--r);padding:22px;background:var(--paper);display:grid;gap:6px;align-content:start}
.iv-card.featured{border:2px solid var(--blue)}
.iv-card .flag{justify-self:start;background:var(--blue);color:var(--on-blue);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.iv-amt{font-family:var(--display);font-weight:700;font-size:2rem;line-height:1.1}
.iv-terms{font-size:.92rem;color:var(--ink-2)}
.iv-fine{margin-top:20px;font-size:.9rem;color:var(--ink-2)}
.iv-close{margin-top:28px;font-family:var(--display);font-weight:700;font-size:1.35rem;text-align:center}
.iv-btns{justify-content:center;margin-top:18px}
@media (max-width:860px){.ex-grid,.what-grid,.iv-grid{grid-template-columns:1fr}.mk-row{grid-template-columns:110px 1fr}}

/* toolbar */
.toolbar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--band);color:var(--on-band);padding-bottom:env(safe-area-inset-bottom,0px)}
.toolbar .wrap{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;padding-block:10px}
.toolbar label{font-size:.82rem;color:var(--on-band-2)}
.toolbar select{font:inherit;font-size:.9rem;padding:6px 8px;border-radius:6px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}
.tb{font:600 .9rem var(--body);padding:8px 14px;border-radius:999px;border:1px solid var(--on-band-2);background:none;color:var(--on-band);cursor:pointer}
.tb[aria-pressed="true"]{background:var(--on-band);color:var(--band)}
.tb.save{background:var(--blue);border-color:var(--blue);color:var(--on-blue)}
.tb:disabled{opacity:.45;cursor:default}
.toolbar .status{font-size:.85rem;color:var(--on-band-2);margin-left:auto}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:30;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:8px;font-size:.92rem;max-width:calc(100% - 32px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

.way .way-for{min-height:0;margin-bottom:-4px}

/* v234: R.A.C.E. grouped into steps (bars above the cards) */
.race-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px}
.race .race-grid.has-steps{margin-top:12px}
.race-step{background:none;color:#fff;font-family:var(--display);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;padding:0 0 6px;border-bottom:2px solid var(--blue);border-radius:0;text-align:center}
.race-step-m{display:none}
@media (max-width:900px){.race-steps{display:none}.race .race-grid.has-steps{margin-top:34px}.race-step-m{display:block;grid-column:1/-1}}
/* v235: faint R.A.C.E. tagline under offer card titles */
.sbc .sbc-tag{margin-top:-10px;font-size:.92rem;color:var(--ink-2);opacity:.75;letter-spacing:.02em}
/* v220: smaller offer card buttons so they sit inside the card */
.sbc .sbc-btn{font-size:.88rem;padding:11px 16px 9px!important;min-width:0!important;max-width:100%;box-sizing:border-box;white-space:normal;text-align:center;line-height:1.2}

/* production: no draft toolbar */
body{padding-bottom:0}.toolbar,.notes-panel{display:none!important}
/* Quick Score */
.qs{max-width:720px;margin:0 auto}.qs-bar{height:6px;background:var(--line);border-radius:99px;overflow:hidden;margin-bottom:22px}.qs-bar i{display:block;height:100%;background:var(--blue);width:0;transition:width .3s}
.qs-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:28px;display:grid;gap:12px}.qs-card:focus{outline:none}
.qs-eyebrow{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.qs-opt{text-align:left;font:inherit;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper-2);color:var(--ink);cursor:pointer}.qs-opt:hover,.qs-opt:focus-visible{border-color:var(--blue);background:var(--blue-soft)}
.qs-back{justify-self:start;font:inherit;background:none;border:0;color:var(--ink-2);cursor:pointer;text-decoration:underline;padding:4px 0}
.form-ok{margin-top:8px;color:var(--ink-2)}
.modal .cal-box{width:min(100%,1000px);height:min(calc(100vh - 32px),760px);background:var(--paper);color:var(--ink);border-radius:12px;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}.cal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.cal-head h3{margin:0}.cal-box iframe{width:100%;height:100%;border:0;background:#fff}.cal-alt{margin:0;padding:8px 16px;font-size:.85rem;color:var(--ink-2)}
@media (max-width:440px){.navlinks a{padding:8px 4px 7px;font-size:.78rem;letter-spacing:.02em}}
