/* SORTED funnel: styles shared by every page. Matches the Leovolution website:
   white and pale cream sections, navy text and buttons, gold only as an accent. */
:root{
  --navy:#06243C; --gold:#C89143; --gold-deep:#996124;
  --paper:#FFF9E8; --white:#FFFFFF; --muted:#3F566A;
  --head:'Fraunces',Georgia,serif; --body:'Figtree',system-ui,sans-serif;
  --side:clamp(20px,3.4vw,48px);
  --g:clamp(32px,4vw,64px);
  --gap:clamp(48px,6.5vw,96px);
  --after-head:clamp(32px,4.5vw,56px);
  --s-display:clamp(2.4rem,5.4vw,4.5rem);
  --s-heading:clamp(1.9rem,3.8vw,3.25rem);
  --s-title:clamp(1.35rem,2vw,1.75rem);
  --s-lead:clamp(1.125rem,1.4vw,1.25rem);
  --ease-out:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%}
body{font:400 1.125rem/1.6 var(--body);color:var(--navy);background:var(--white);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
[hidden]{display:none!important}
::selection{background:var(--navy);color:#fff}
:focus-visible{outline:3px solid var(--gold-deep);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:var(--navy);color:#fff;padding:10px 16px;z-index:100}
.skip:focus{left:8px}

.wrap{width:100%;max-width:1344px;margin-inline:auto;padding-inline:var(--side)}
h1,h2,h3,h4{font-family:var(--head);color:inherit;text-wrap:balance;line-height:1.1;letter-spacing:-.018em}
h1{font-size:var(--s-display);font-weight:800;line-height:1.06;letter-spacing:-.025em}
h2{font-size:var(--s-heading);font-weight:800;line-height:1.06;letter-spacing:-.022em}
h3{font-size:var(--s-title);font-weight:700;line-height:1.14;letter-spacing:-.015em}
h4{font-size:1.25rem;font-weight:700;line-height:1.2}
main p,footer p{max-width:36em}
p+p{margin-top:1em}
strong,b{font-weight:700}

/* chapters: short sections that alternate white and pale cream */
.chapter{padding:var(--gap) 0}
.white{background:var(--white)}
.cream{background:var(--paper)}
.panel{background:var(--paper);padding:clamp(24px,3.4vw,40px)}
.cream .panel{background:var(--white)}

/* gold only as an accent: lead-in line above a heading, underline, prices */
.lead-in{font:600 var(--s-title)/1.15 var(--head);letter-spacing:-.012em;color:var(--gold-deep);margin-bottom:.5em}
.lede{font-size:var(--s-lead);max-width:36em}
h1+.lede,h2+.lede{margin-top:24px}
.ck-body{padding-bottom:0}
.note{margin-top:16px;font-size:1rem;font-weight:500}
.mark,.hl{font-style:normal;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:.09em;text-underline-offset:.16em;text-decoration-skip-ink:none}

/* buttons: the arrow-shaped navy button from the website */
.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;font:700 1rem var(--body);padding:15px 36px 15px 26px;text-decoration:none;border:2px solid var(--navy);background:var(--navy);color:#fff;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);cursor:pointer;border-radius:0;transition:background-color .15s ease-out,border-color .15s ease-out,transform .15s ease-out}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.6;cursor:default}
.btn.line{background:transparent;color:var(--navy);clip-path:none;padding-right:26px}
@media(hover:hover){
  .btn:hover{background:var(--gold-deep);border-color:var(--gold-deep);transform:translateX(3px)}
  .btn.line:hover{background:var(--navy);border-color:var(--navy);color:#fff;transform:none}
}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:28px}
.link{font-weight:700;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:.2em;transition:text-decoration-color .15s}
.link:hover{text-decoration-color:currentColor}
p a:not(.btn),li a:not(.btn){text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:.2em}
p a:not(.btn):hover,li a:not(.btn):hover{text-decoration-color:currentColor}

/* header */
.site-head{position:sticky;top:0;z-index:60;background:var(--white)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;height:74px}
.logo{display:block;padding-block:5px}
.logo img{width:166px;height:34px}
.nav .btn{min-height:44px;padding:8px 30px 8px 18px;font-size:.9375rem;white-space:nowrap}

/* footer: navy, like the website */
.site-foot{background:var(--navy);color:#C7D2DC;padding:56px 0 40px}
.site-foot a,.site-foot p{color:#C7D2DC}
.foot{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:var(--g)}
.foot img{width:166px;height:34px;margin-bottom:16px}
.foot h3{font:600 1.125rem/1.2 var(--head);letter-spacing:0;color:#E9BD70;margin-bottom:6px}
.foot ul{list-style:none}
.foot li a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.foot li a:hover{color:#E9BD70}
.legal{margin-top:40px;font-size:.9375rem}

/* gentle arrival: content stays visible if the script never runs */
.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .45s var(--ease-out),transform .45s var(--ease-out)}
.js .reveal.in{opacity:1;transform:none}

/* forms */
.field{display:grid;gap:6px;margin-bottom:18px}
.field label{font-weight:600;font-size:1rem}
.field input{font:400 1rem var(--body);min-height:52px;padding:0 14px;border:2px solid var(--navy);border-radius:0;background:var(--white);color:var(--navy);width:100%}
.field input:focus{outline:3px solid var(--gold-deep);outline-offset:2px}
.field input[aria-invalid="true"]{border-color:var(--gold-deep);outline:3px solid var(--gold-deep);outline-offset:2px}
.err{margin:0;color:var(--gold-deep);font-weight:700;font-size:1rem}
.err:not(:empty){margin:-4px 0 14px}
.form-small{font-size:1rem;margin-top:16px}
form .btn{margin-top:6px}

/* ============ INDEX ============ */
.hero{padding:clamp(40px,5vw,72px) 0 var(--gap)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:var(--g);align-items:center}
.hero h1{max-width:12em}
.hero .lede{margin-top:28px}
.chan-title{font:600 1.125rem/1.3 var(--head);color:var(--gold-deep)}
.chan-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;margin:16px 0}
.chan-list li{display:flex;gap:12px;align-items:baseline;padding:6px 0;font-weight:600}
.chan-list .n{font:700 1.125rem var(--head);color:var(--gold-deep);min-width:1ch}
.chan-title.end{color:var(--navy);font-size:1.25rem}

.intro-half{margin-top:var(--after-head);align-items:start}
.half{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);align-items:start}
.half+.half{margin-top:var(--gap)}
.half>div>h3{margin-bottom:.5em}
@media(min-width:961px){.half>div:first-child{position:sticky;top:100px}}
.pull{font:600 var(--s-title)/1.25 var(--head);letter-spacing:-.012em}
.pull blockquote p{max-width:none}
.pull figcaption{margin-top:20px;font-weight:600;color:var(--gold-deep)}
.thoughts{list-style:square;padding-left:1.1em;margin-top:12px;font-size:1.125rem;max-width:36em}
.thoughts li{margin-top:10px}
.thoughts li::marker{color:var(--gold-deep)}
.tl{list-style:none;display:grid;gap:24px}
.tl li{display:grid;grid-template-columns:8.5em minmax(0,1fr);gap:16px;align-items:baseline}
.tl .when{font:700 1.25rem/1.2 var(--head);color:var(--gold-deep)}
.rows{list-style:none;display:grid;gap:28px}
.rows li{display:grid;grid-template-columns:3.2em minmax(0,1fr);column-gap:8px}
.rows .n{grid-row:1/3;font:700 1.25rem/1.3 var(--head);color:var(--gold-deep)}
.rows h4{font-family:var(--head);font-size:var(--s-title);letter-spacing:-.015em;margin-bottom:6px}
.closer{font:800 var(--s-heading)/1.06 var(--head);letter-spacing:-.022em;max-width:14em;text-wrap:balance;margin-top:var(--after-head)}
.closer .hl{white-space:normal}

.steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--after-head) var(--g);margin-top:var(--after-head)}
.steps h3{margin-bottom:10px}
.num{display:block;font:800 var(--s-title)/1 var(--head);color:var(--gold-deep);margin-bottom:8px}
.why-order{margin-top:var(--after-head);max-width:46rem}
.why-order .k{display:block;font:600 1.25rem var(--head);color:var(--gold-deep);margin-bottom:6px}

.calc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);margin-top:var(--after-head);align-items:start}
.sliders{display:grid;gap:36px}
.slider-top{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin-bottom:10px}
.slider-top label{font-weight:600}
.slider-top output{font:700 1.5rem var(--head);white-space:nowrap}
.slider input[type=range]{width:100%;height:28px;accent-color:var(--navy);cursor:pointer}
.range-ends{display:flex;justify-content:space-between;font-size:1rem;color:var(--muted)}
.res-big .k,.res-sm .k{display:block;font-weight:600;color:var(--gold-deep)}
.res-big .v{display:block;font:800 clamp(2.6rem,5.4vw,4.25rem)/1.05 var(--head);letter-spacing:-.025em;margin:6px 0}
.res-big .sub,.res-sm .sub{display:block}
.res-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);margin-top:32px}
.res-sm .v{display:block;font:800 clamp(1.75rem,3vw,2.5rem)/1.1 var(--head);letter-spacing:-.02em;margin-top:4px}
.res-sm .v small{font:600 1.125rem var(--body);letter-spacing:0}
.readback{font:700 var(--s-title)/1.3 var(--head);letter-spacing:-.012em;margin-top:var(--after-head);max-width:34em}
.honest{margin-top:16px;margin-bottom:28px}

.offer-head{max-width:46rem}
.fact{margin-top:32px}
.fact b{display:block;font:800 clamp(2rem,3.6vw,3rem)/1.05 var(--head);letter-spacing:-.025em;color:var(--gold-deep);margin-bottom:8px}
.items{list-style:none;display:grid;gap:var(--after-head);margin-top:var(--after-head)}
.item{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px var(--g);align-items:start}
.sk{display:block;font:800 2rem/1 var(--head);color:var(--gold-deep);margin-bottom:8px}
.val{font:800 clamp(1.5rem,2.2vw,2.125rem)/1 var(--head);letter-spacing:-.025em;color:var(--gold-deep)}
.item .val{display:block;margin-top:12px}
.so b{color:var(--gold-deep)}
.so{margin-top:12px}
.sub-head{margin-top:var(--gap)}
.sub-head p{margin-top:6px;font-weight:600;color:var(--gold-deep)}
.bonus .tagline{font-weight:600;color:var(--gold-deep);margin-bottom:8px}
.b-ask{display:block;margin-top:20px;font-weight:600;color:var(--gold-deep)}
.b-q{font:600 1.25rem/1.3 var(--head);margin-top:4px;max-width:30em}
.totals{margin-top:var(--gap);max-width:34rem;display:grid;gap:10px}
.t-line{display:flex;justify-content:space-between;gap:20px;align-items:baseline;font-weight:600}
.t-line .val{font-size:1.5rem}
.t-line.strike .val,.t-line.strike .lbl{text-decoration:line-through;text-decoration-thickness:2px}
.price-block{margin-top:var(--after-head);max-width:46rem}
.price-block .k{display:block;font:600 1.25rem var(--head);color:var(--gold-deep)}
.price-block .price{display:block;font:800 clamp(2.75rem,6vw,4.5rem)/1.05 var(--head);letter-spacing:-.025em;color:var(--gold-deep);margin:4px 0 6px}
.price-block .plan{font:700 var(--s-title) var(--head)}
.price-block .tiny{font-size:1rem;margin-top:10px}
.offer-cta{margin-top:var(--after-head)}
.offer-cta .btn-note{display:block;margin-top:16px;font-weight:500}
.fit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);margin-top:var(--gap)}
.fit h3{margin-bottom:16px}
.fit ul{list-style:none;display:grid;gap:14px}
.fit li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start}
.fit svg{width:24px;height:24px;margin-top:3px;fill:none;stroke:var(--gold-deep);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.fit .no svg{stroke:var(--navy)}

.guar-body{margin-top:var(--after-head)}
.cond{margin-top:24px}
.track-head{margin-top:var(--gap)}
.track-head h3{margin-bottom:0}
.track{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--after-head) var(--g);margin-top:var(--after-head)}
.wk{display:block;font:800 var(--s-title)/1 var(--head);color:var(--gold-deep);margin-bottom:10px}

.facts{list-style:square;padding-left:1.1em;max-width:36em;margin-top:var(--after-head)}
.facts li+li{margin-top:18px}
.facts li::marker{color:var(--gold-deep)}
.why-pull{font:600 var(--s-title)/1.25 var(--head);letter-spacing:-.012em;margin-top:24px}
.signoff{margin-top:var(--after-head);font:800 var(--s-title)/1.2 var(--head);letter-spacing:-.015em}
.signoff span{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:.12em;text-underline-offset:.2em}

.faq{max-width:52rem;margin-top:var(--after-head)}
.faq details{padding:0}
.faq details+details{margin-top:6px}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:48px;padding-block:10px;cursor:pointer;list-style:none;font:700 var(--s-title)/1.14 var(--head);letter-spacing:-.015em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.75rem;line-height:1;color:var(--gold-deep);flex:none}
.faq details[open] summary::after{content:"\2013"}
.faq .ans p{margin:4px 0 16px}

.join-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);align-items:start;margin-top:var(--after-head)}
.facts-mini{list-style:none;display:grid;gap:12px;margin-top:28px;max-width:30rem}
.facts-mini li{display:flex;justify-content:space-between;gap:16px}
.facts-mini li span:first-child{font-weight:500}
.facts-mini li span:last-child{font-weight:700;text-align:right}
.form-card h3{margin-bottom:20px}
.alt-link{margin-top:22px}

/* ============ LEAK FINDER (gift page) ============ */
.lf-hero{padding:clamp(40px,5vw,72px) 0 var(--gap)}
.lf-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--g);align-items:start}
.lf-hero h1{font-size:var(--s-heading)}
.echo{font:600 var(--s-title)/1.25 var(--head);letter-spacing:-.012em;margin-top:24px;max-width:22em}
.lf-hero .lede{margin-top:20px}
.lf-form h2{font-size:var(--s-title);font-weight:700;letter-spacing:-.015em;margin-bottom:8px}
.lf-form .intro{margin-bottom:22px}
.quiet{margin-top:22px}
.inside{list-style:none;display:grid;gap:26px;counter-reset:in}
.inside li{counter-increment:in;display:grid;grid-template-columns:3em minmax(0,1fr)}
.inside li::before{content:counter(in,decimal-leading-zero);font:700 1.25rem/1.3 var(--head);color:var(--gold-deep)}
.inside strong{display:block;font:700 var(--s-title)/1.15 var(--head);letter-spacing:-.015em;margin-bottom:4px}
.fit-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);align-items:center}
.tiles{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--after-head)}
.tile{position:relative;width:64px;height:64px;display:grid;place-items:center;background:var(--paper);font:800 1.75rem var(--head);color:var(--navy)}
.cream .tile{background:var(--white)}
.tile.on{color:var(--gold-deep)}
.tile .tk{position:absolute;right:-6px;bottom:-6px;width:24px;height:24px}
.stamp-cap{margin-top:20px}
.art-girl{justify-self:center}
.art-girl img{height:min(62svh,520px);width:auto;max-width:100%}

/* ============ CHECKLIST ============ */
.ck-hero{padding:clamp(40px,5vw,72px) 0 var(--gap)}
.ck-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:var(--g);align-items:end}
.how{list-style:none;counter-reset:hw;display:grid;gap:12px;margin-bottom:24px}
.how li{counter-increment:hw;display:grid;grid-template-columns:2.4em minmax(0,1fr);font-weight:600}
.how li::before{content:counter(hw);font:700 1.25rem/1.3 var(--head);color:var(--gold-deep)}
.ck-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--g);align-items:start}
.ck-sec{margin-bottom:var(--after-head)}
.ck-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.ck-sec-head h2{font-size:clamp(1.75rem,3vw,2.5rem)}
.sec-no{display:block;font:600 var(--s-title)/1.15 var(--head);color:var(--gold-deep);margin-bottom:.4em}
.sec-count{white-space:nowrap;font-weight:600}
.sec-count b{font:800 1.5rem var(--head)}
.sec-sub{margin:8px 0 14px}
.cklist{list-style:none;display:grid;gap:4px;margin-inline:-12px}
.item-ck{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;align-items:start;padding:14px 12px;min-height:68px;cursor:pointer;transition:background-color .15s}
.item-ck:hover,.item-ck:has(input:checked){background:var(--paper)}
.item-ck input{position:absolute;left:12px;top:12px;width:44px;height:44px;margin:0;opacity:0;cursor:pointer}
.box{width:36px;height:36px;display:grid;place-items:center;border:2px solid var(--navy);background:#fff;margin-top:2px}
.box svg{width:24px;height:24px}
.box path{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:30;stroke-dashoffset:30}
.item-ck input:checked + .box{background:var(--navy)}
.item-ck input:checked + .box path{stroke-dashoffset:0;transition:stroke-dashoffset .3s .05s var(--ease-out)}
.item-ck input:focus-visible + .box{outline:3px solid var(--gold-deep);outline-offset:3px}
.txt{padding-top:4px;font-size:1.1875rem;line-height:1.4;font-weight:500}
.item-ck input:checked ~ .txt .t{font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:3px;text-underline-offset:.2em}
.stampcount{display:inline-flex;align-items:baseline;gap:10px;font-family:var(--head);font-weight:800}
.stampcount b{font-size:4rem;line-height:1;letter-spacing:-.03em}
.stampcount span{font-size:1.25rem;font-weight:700}
.ck-aside{position:sticky;top:94px}
.tally .label{font:600 1.125rem var(--head);color:var(--gold-deep);margin-bottom:8px}
.meter{display:flex;gap:3px;margin:16px 0}
.meter i{flex:1;height:10px;background:#F1E4BC}
.meter i.on{background:var(--navy)}
.tally .res{font:700 1.3125rem/1.25 var(--head);margin:0 0 20px}
.tally .btn{width:100%;justify-content:flex-start}
.tally .btn.line{margin-top:12px}
.tally-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:20;align-items:center;justify-content:space-between;gap:12px;background:var(--paper);border-top:1px solid rgba(6,36,60,.12);padding:8px var(--side);padding-bottom:calc(8px + env(safe-area-inset-bottom))}
.tally-bar .tb-l{font-weight:600}
.tally-bar .stampcount b{font-size:2rem}
.tally-bar .stampcount span{font-size:1rem}
.tally-bar a{font-weight:700;display:inline-flex;align-items:center;min-height:44px;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:.2em}
.res-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);align-items:start}
.res-count{display:flex;align-items:baseline;gap:14px;margin:0 0 16px;max-width:none;font-family:var(--head);font-weight:800}
.res-count b{font-size:clamp(4.5rem,10vw,8rem);line-height:.9;letter-spacing:-.04em}
.res-count span{font-size:var(--s-title);font-weight:700}
.res-grid h2{font-size:var(--s-title);font-weight:700;letter-spacing:-.015em;line-height:1.25}
.next-list{list-style:none;counter-reset:nx;display:grid;gap:22px;margin:20px 0 28px}
.next-list li{counter-increment:nx;display:grid;grid-template-columns:2.4em minmax(0,1fr)}
.next-list li::before{content:counter(nx);font:700 1.25rem/1.3 var(--head);color:var(--gold-deep)}
.next-list strong{display:block;font:700 var(--s-title)/1.15 var(--head);letter-spacing:-.015em;margin-bottom:4px}
.res-actions{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
.linkbtn{background:none;border:0;padding:8px 2px;min-height:44px;font:inherit;font-weight:600;color:inherit;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:.2em;cursor:pointer}
.print-only{display:none}

/* ============ THANK YOU ============ */
.ty{padding:clamp(40px,5vw,72px) 0 var(--gap)}
.ty-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--g);align-items:start}
.ty .tick-big{width:72px;height:72px;margin-bottom:28px}
.ty .lede{margin-top:20px}
.ty-cta{margin-top:8px}
.ty-steps{list-style:none;counter-reset:st;display:grid;gap:26px;margin-top:20px}
.ty-steps li{counter-increment:st;display:grid;grid-template-columns:2.4em minmax(0,1fr)}
.ty-steps li::before{content:counter(st);font:800 var(--s-title)/1.1 var(--head);color:var(--gold-deep)}
.ty-steps strong{display:block;font:700 var(--s-title)/1.15 var(--head);letter-spacing:-.015em;margin-bottom:4px}
.wait{margin-top:var(--after-head)}
.wait h2{font-size:var(--s-title);font-weight:700;letter-spacing:-.015em;margin:4px 0 12px}
.wait p{margin-bottom:20px}

/* ============ LEGAL PAGES ============ */
.doc-hero{padding:clamp(40px,5vw,72px) 0 var(--gap)}
.doc-hero h1{font-size:var(--s-display)}
.doc-hero .lede{margin-top:20px}
.notice{margin-top:28px;max-width:36em;font-weight:600}
.notice p{max-width:none}
.updated{margin-top:20px;font-size:1rem}
.doc-wrap{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--g);align-items:start}
.toc{position:sticky;top:94px}
.toc .t-h{font:600 1.125rem var(--head);color:var(--gold-deep);margin-bottom:8px}
.toc ol{list-style:none;counter-reset:t}
.toc a{display:grid;grid-template-columns:2.2em 1fr;text-decoration:none;font-size:1rem;line-height:1.35;padding:8px 0}
.toc a::before{counter-increment:t;content:counter(t,decimal-leading-zero);font:700 .9375rem var(--head);color:var(--gold-deep);padding-top:2px}
.toc a:hover{color:var(--gold-deep)}
.doc{counter-reset:sec;max-width:40rem}
.doc section{padding:0 0 var(--after-head)}
.doc h2{counter-increment:sec;font-size:var(--s-title);font-weight:700;letter-spacing:-.015em;line-height:1.15;margin-bottom:.6em}
.doc h2::before{content:counter(sec,decimal-leading-zero);display:block;font:600 1rem var(--head);color:var(--gold-deep);margin-bottom:6px}
.doc p,.doc li{max-width:none}
.doc ul{margin:0 0 1em;padding-left:1.2em}
.doc li{margin-bottom:.5em}
.doc li::marker{color:var(--gold-deep)}
.promise{margin:1.2em 0;padding:clamp(20px,3vw,28px);background:var(--paper);font:600 clamp(1.2rem,2.2vw,1.5rem)/1.3 var(--head);letter-spacing:-.012em}

/* ============ RESPONSIVE ============ */
@media(max-width:1100px){
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:960px){
  .hero-grid,.half,.calc-grid,.item,.fit,.join-grid,.lf-grid,.fit-split,.ck-hero-grid,.res-grid,.ty-grid,.doc-wrap{grid-template-columns:minmax(0,1fr)}
  .half+.half{margin-top:var(--after-head)}
  .track{grid-template-columns:minmax(0,1fr)}
  .ck-layout{grid-template-columns:minmax(0,1fr)}
  .ck-aside{display:none}
  .tally-bar{display:flex}
  .site-foot{padding-bottom:110px}
  .toc{position:static}
  .art-girl{justify-self:start}
  .art-girl img{height:min(56svh,420px)}
}
@media(max-width:620px){
  .nav .logo img{width:116px;height:auto}
  .nav .btn{padding:8px 26px 8px 14px;font-size:.875rem}
  .foot{grid-template-columns:minmax(0,1fr)}
  .steps{grid-template-columns:minmax(0,1fr)}
  .cta-row .btn{width:100%;justify-content:flex-start}
  .tl li{grid-template-columns:minmax(0,1fr);gap:2px}
  .chan-list{grid-template-columns:minmax(0,1fr)}
  .res-row{grid-template-columns:minmax(0,1fr);gap:20px}
  .form-card .btn,.lf-form .btn{width:100%;justify-content:flex-start}
  .stampcount b{font-size:3.25rem}
  .tile{width:52px;height:52px;font-size:1.5rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal{opacity:1;transform:none;transition:none}
  .btn,.link{transition:none}
  .btn:hover,.btn:active{transform:none}
}
@media print{
  @page{margin:14mm}
  .site-head,.site-foot,.tally-bar,.ck-aside,.toc,.btn,.linkbtn,.how,.no-print{display:none!important}
  body{background:#fff!important;color:#000!important;font-size:14px}
  .js .reveal{opacity:1!important;transform:none!important}
  .chapter,.ck-hero,.cream{background:#fff!important;padding:0 0 12px}
  .print-only{display:block;margin:0 0 14px;font-size:13px;color:#000}
  .ck-hero h1{font-size:44px}
  .ck-layout{display:block}
  .ck-sec{break-inside:avoid;margin-bottom:18px}
  .ck-sec-head h2{font-size:22px}
  .item-ck{padding:7px 4px;min-height:0;break-inside:avoid;background:none!important}
  .box{border-color:#000;width:26px;height:26px}
  .box svg{width:18px;height:18px}
  .box path{stroke:#000!important}
  .item-ck input:checked + .box{background:#fff!important}
  .item-ck input:checked + .box path{stroke-dashoffset:0!important;transition:none}
  .txt{font-size:14px;padding-top:2px}
  .res-count b{font-size:44px}
  .res-count span{font-size:16px}
  .res-sec{break-inside:avoid}
  .notice{break-inside:avoid}
}
/* the girl looks up at the words from the bottom left */
.girl-col{display:flex;flex-direction:column;align-self:stretch}
.girl-peek{display:block;margin-top:auto;padding-top:32px;height:min(46vh,400px);width:auto;max-width:100%;mix-blend-mode:multiply;align-self:flex-start}
@media(max-width:900px){.girl-peek{height:260px;margin-top:24px}}
.girl-peek{mix-blend-mode:normal;height:min(52vh,440px)}

/* SORTED journey: a six-part ring that walks through the steps; tap any part to read it */
.sorted-journey{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--g);align-items:center;margin-top:48px}
.j-wheel{position:relative;width:min(100%,480px);margin-inline:auto}
.j-wheel svg{display:block;width:100%;height:auto;overflow:visible}
.seg{cursor:pointer;outline:none;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.seg path{fill:#FFF9E8;stroke:#C89143;stroke-width:1.5;transition:fill .45s ease-out,stroke .45s ease-out}
.seg text{text-anchor:middle;fill:#06243C;transition:fill .45s ease-out;pointer-events:none}
.seg-l{font:800 34px Fraunces,serif}
.seg-w{font:600 11.5px Figtree,sans-serif}
.seg.done path{fill:#E9BD70;stroke:#E9BD70}
.seg[aria-selected=true]{transform:translate(var(--dx),var(--dy))}
.seg[aria-selected=true] path{fill:#06243C;stroke:#06243C}
.seg[aria-selected=true] text{fill:#FFF3D1}
.seg:hover path{stroke:#06243C}
.seg:focus-visible path{stroke:#996124;stroke-width:4}
.j-hub{position:absolute;inset:30%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}
.j-hub-k{font:600 clamp(.8rem,1.3vw,1rem)/1.1 var(--head);color:var(--gold-deep)}
.j-hub-t{font:800 clamp(1.4rem,2.6vw,2rem)/1.05 var(--head);color:var(--navy)}
.j-hub-n{margin-top:8px;font:600 .875rem/1 var(--body);color:var(--navy)}
.j-step{font-weight:600;color:var(--gold-deep);margin-bottom:6px}
.j-panel h3{font-size:clamp(1.6rem,2.6vw,2.25rem);margin-bottom:12px}
.j-panel h3 span{color:var(--gold-deep)}
.j-panel p+p{margin-top:12px}
.j-get b{color:var(--navy)}
.j-so{font:700 clamp(1.15rem,1.6vw,1.35rem)/1.3 var(--head);color:var(--gold-deep)}
.j-cta{margin-top:28px}
.js .j-panel[hidden]{display:none}
.j-panel.show{animation:j-in .4s ease-out}
@keyframes j-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:900px){.sorted-journey{grid-template-columns:minmax(0,1fr)}.j-wheel{width:min(100%,360px)}}
@media(prefers-reduced-motion:reduce){.seg,.seg path,.seg text{transition:none}.j-panel.show{animation:none}}

/* bonuses: three easy cards */
.bonus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px}
.bonus-card{background:var(--cream);padding:28px}
.bonus-tag{font-weight:700;color:var(--gold-deep);font-size:.9375rem}
.bonus-card h4{font:700 clamp(1.25rem,1.8vw,1.5rem)/1.15 var(--head);color:var(--navy);margin:8px 0 12px}
.bonus-card p{font-size:1rem}
.bonus-worry{margin-top:16px;font:700 1.0625rem/1.35 var(--head);color:var(--navy)}
.bonus-worry span{display:block;font:600 .875rem/1.2 var(--body);color:var(--gold-deep);margin-bottom:4px}
.bonus-answer{margin-top:8px}
@media(max-width:900px){.bonus-grid{grid-template-columns:minmax(0,1fr)}}
/* founders */
.founders{display:flex;flex-wrap:wrap;align-items:center;gap:24px 32px;margin-top:40px}
.founders figure{margin:0;text-align:center}
.founders img{width:150px;height:150px;border-radius:50%;object-fit:cover;display:block}
.founders figcaption{margin-top:10px;font:700 1.125rem/1 var(--head);color:var(--navy)}
.founders-line{flex-basis:100%;font:600 1.125rem/1.3 var(--head);color:var(--gold-deep)}
/* founding places */
.founding{margin-top:28px;max-width:720px}
.founding-k{font-weight:700;color:var(--gold-deep)}
.founding-big{font:800 clamp(2.4rem,5vw,3.75rem)/1 var(--head);color:var(--navy);margin:6px 0 14px}
.founding p+p{margin-top:12px}
.founding .cta-row{margin-top:24px}
#proof .tiny{margin-top:20px}
/* bonus cards in the brand colour blocks */
.bonus-grid{gap:0}
.bonus-card{padding:32px}
.bc-1{background:#E9BD70}
.bc-2{background:#06243C;color:#FFF3D1}
.bc-3{background:#C89143}
.bc-1 .bonus-tag,.bc-3 .bonus-tag,.bc-1 .bonus-worry span,.bc-3 .bonus-worry span{color:#06243C}
.bc-1 h4,.bc-3 h4,.bc-1 .bonus-worry,.bc-3 .bonus-worry{color:#06243C}
.bc-2 h4,.bc-2 .bonus-worry{color:#FFF3D1}
.bc-2 .bonus-tag,.bc-2 .bonus-worry span{color:#E9BD70}
.why-warm{max-width:36em;margin-top:24px}
.why-warm p{font-size:clamp(1.125rem,1.5vw,1.3125rem);line-height:1.6}
.why-warm p+p{margin-top:16px}
.art-girl{justify-self:start}
@media(max-width:900px){.art-girl{order:2}}

/* language switch (ENG | ESP), same idea as the main website */
.langs{display:inline-flex;flex:none;border:2px solid var(--navy);color:var(--navy)}
.langs .lang{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:48px;padding:0 8px;font:700 .875rem var(--body);letter-spacing:.04em;text-decoration:none;color:inherit}
a.lang:hover{background:var(--navy);color:var(--white)}
.langs .lang.on{background:var(--navy);color:var(--white);cursor:default}
.nav .btn{margin-left:auto}
@media(min-width:1081px){.langs{margin-left:8px}}
@media(max-width:620px){.nav{gap:8px}.nav .logo{flex:none}}
@media(max-width:480px){.langs .lang{min-width:34px;padding:0 3px;font-size:.75rem;letter-spacing:0}}
