
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#F6F9F5;color:#1A1A1A;font:400 26px/1.6 'Open Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
/* ---- layout tokens (guide 1-6) ---- */
.s{padding:44px 20px;background:#F6F9F5}.s.sage{background:#E8EFE6}
.in{max-width:1120px;margin:0 auto}.in.nar{max-width:960px}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:700;line-height:1.18;color:#26382C;margin:0}
h1{font-size:40px}h2{font-size:34px;margin-bottom:28px}h3{font-size:30px}
p{margin:0}
.card{background:#fff;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:0 4px 20px rgba(52,76,61,.08)}
@media(min-width:600px){.s{padding:56px 40px}}
@media(min-width:1024px){.s{padding:64px 64px}
 h1{font-size:60px}h2{font-size:48px;margin-bottom:44px}}
/* ---- buttons (STYLE 15, guide 8) ---- */
.rpd-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:22px 48px;border:0;border-radius:14px;background:#344C3D;color:#fff;font:700 28px/1.2 'Open Sans',sans-serif;text-decoration:none;white-space:nowrap;cursor:pointer;box-shadow:0 6px 0 #1f2f25,0 10px 24px rgba(0,0,0,.18);transition:transform .1s,box-shadow .1s,background .15s}
.rpd-btn:hover,.rpd-btn:focus-visible{background:#26382C;transform:translateY(3px);box-shadow:0 3px 0 #1f2f25,0 6px 14px rgba(0,0,0,.16)}
.rpd-btn:active{transform:translateY(6px);box-shadow:0 0 0 #1f2f25}
.rpd-arr{flex:none;display:inline-flex;line-height:0;transition:transform .2s;animation:rpdNudge 2.6s ease-in-out infinite}
.rpd-btn:hover .rpd-arr{animation:none;transform:translateX(8px)}
@keyframes rpdNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
@media(prefers-reduced-motion:reduce){.rpd-arr{animation:none}}
.rpd-btn .sm{display:none}
@media(max-width:599px){.rpd-btn{display:flex;width:100%;padding:20px 24px;font-size:26px}.rpd-btn .lg{display:none}.rpd-btn .sm{display:inline}}
.cta{margin-top:48px;display:flex;flex-direction:column;align-items:center}
.cta.left{align-items:flex-start}
.cap{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font:400 20px/1.45 'Open Sans',sans-serif;color:#3C4A41}
.cap .sh{flex:none;margin-top:2px}
@media(min-width:1024px){.cta{margin-top:56px}.cap{white-space:nowrap}}
/* ---- day card (approved signup day card, dressed up; thumbnail is the largest part) ---- */
.dc{background:#fff;border:1px solid rgba(20,32,24,.12);border-radius:16px;box-shadow:0 6px 24px rgba(52,76,61,.12);padding:10px 10px 0}
.dc .th{position:relative;border-radius:10px;overflow:hidden}
.dc .th img{width:100%;aspect-ratio:16/9;object-fit:cover}
.dc .tm{position:absolute;right:8px;bottom:8px;background:rgba(26,26,26,.42);color:#fff;border-radius:6px;padding:0 7px;font:400 20px/1.35 'Open Sans',sans-serif}
.dc .dl{display:flex;gap:10px;align-items:baseline;padding:10px 6px 12px;font:400 20px/1.3 'Open Sans',sans-serif;color:#3C4A41;white-space:nowrap;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
.dc .dl b{color:#26382C;font-weight:700}
/* DECK (variant a): Day 1 in front; Day 2 and Day 3 sit behind it, each showing its labelled top strip; Day 3 fades */
.stk{position:relative}
.stk.deck{padding-top:96px}
.stk.deck .dc{display:flex;flex-direction:column;padding:0 10px 10px}
.stk.deck .dc .dl{order:-1;padding:12px 6px 10px;height:48px;-webkit-mask-image:none;mask-image:none;white-space:nowrap;overflow:hidden}
.stk.deck .k1{position:relative;z-index:3}
.stk.deck .k2,.stk.deck .k3{position:absolute;bottom:auto}
.stk.deck .k2{z-index:2;top:48px;left:4%;right:4%;opacity:.92}
.stk.deck .k3{z-index:1;top:0;left:8%;right:8%;opacity:.5}
.stk.deck .k2 .tm,.stk.deck .k3 .tm{display:none}
/* ROW (variant b): three separate labelled cards side by side, Day 3 fades */
.stk.row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.stk.row .k3{-webkit-mask-image:linear-gradient(90deg,#000 15%,transparent 95%);mask-image:linear-gradient(90deg,#000 15%,transparent 95%)}
@media(max-width:599px){.stk.row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -24px;padding:4px 24px 8px;scroll-padding:0 24px}.stk.row .dc{flex:0 0 80%;scroll-snap-align:start}.stk.row::-webkit-scrollbar{display:none}}
/* ---- 1 hero: one full screen ---- */
.hero{background:linear-gradient(180deg,#E8EFE6 0%,#F6F9F5 360px);min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:64px;padding-bottom:64px}
.hero .in{width:100%}
.hg{display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
.hero .lead{margin-top:16px;color:#3C4A41;max-width:440px}
.hero .cta{margin-top:8px}
.hero .stk{--bg:#F6F9F5;max-width:440px;width:100%;margin:0 auto}

@media(max-width:599px){.dc .dl{white-space:normal;-webkit-mask-image:none;mask-image:none;flex-wrap:wrap;row-gap:0}.hero .stk,.close .stk{max-width:none}.dc .dl{gap:8px}}
@media(min-width:1024px){.hg{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);column-gap:80px;align-items:center}
 .hero .ht{grid-column:1}.hero .hv{grid-column:2;grid-row:1/span 2}.hero .cta{grid-column:1;align-items:flex-start;margin-top:0}
 .hero .stk{max-width:none}.hero h1{font-size:64px}
 .hero.v-b .hg{grid-template-columns:1fr;text-align:left}.hero.v-b .hv{grid-row:auto;grid-column:1;order:0}
}
/* hero B: one column, title, button, then the three day cards in a row */
@media(min-width:1024px){.hero.v-b .hg{grid-template-columns:minmax(0,1fr);row-gap:40px}.hero.v-b .ht,.hero.v-b .cta,.hero.v-b .hv{grid-column:1;grid-row:auto}.hero.v-b .stk.row{max-width:none}.hero.v-b h1{font-size:60px}.hero.v-b .lead{max-width:none}}
/* ---- 2 video ---- */
.vid .in{text-align:center}
.vid h2{margin-bottom:32px}
.rpd-video{position:relative;width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#000;box-shadow:0 6px 28px rgba(52,76,61,.14)}
.rpd-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vwrap{max-width:820px;margin:0 auto}
.vid.v-b .vbox{background:#fff;border-radius:20px;padding:32px 24px 40px;box-shadow:0 4px 20px rgba(52,76,61,.08);max-width:1040px;margin:0 auto}
.vid.v-b h2{text-align:left;font-size:30px}
@media(min-width:1024px){.vid.v-b .vbox{padding:48px 56px 56px}.vid.v-b h2{font-size:40px}.vid h2{margin-bottom:40px}.vid .cta{margin-top:48px}}
/* ---- 3 is this for me: one container per item, stacked, marker on the left ---- */
.qx{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.qx li{display:flex;align-items:center;gap:20px;background:#fff;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:0 4px 20px rgba(52,76,61,.08);padding:20px 24px}
.qx p{font:600 26px/1.4 'Open Sans',sans-serif;color:#1A1A1A}
.qx .mk{flex:none;display:flex;align-items:center;justify-content:center;line-height:1}
.qx.m-emo .mk{width:56px;height:56px;border-radius:14px;background:#E8EFE6;font-size:30px}
.qx.m-chk .mk{width:40px;height:40px}
.qx.m-fill .mk{width:40px;height:40px}
.qx.m-num .mk{width:48px;height:48px;border-radius:50%;background:#344C3D;color:#fff;font:700 24px/1 Georgia,serif}
.qx.m-bar li{border-left:8px solid #344C3D;padding-left:24px}
.qx.m-pill li{border-radius:999px;padding:16px 32px 16px 18px}
.qx.m-pill .mk{width:44px;height:44px}
.qx li{padding:16px 18px;gap:16px}@media(max-width:599px){.qx p{font-size:24px;line-height:1.35}.qx.m-emo .mk{width:48px;height:48px;font-size:26px}.qx.m-pill li{padding:14px 24px 14px 14px}}
.fitnote{margin-top:32px;background:#E8EFE6;border-left:4px solid #344C3D;border-radius:10px;padding:20px 24px;font-weight:600}
@media(min-width:1024px){.qx{gap:14px}.qx li{padding:16px 28px}.qx.m-emo .mk{width:52px;height:52px}.qx.m-pill li{padding:18px 40px 18px 22px}.fitnote{margin-top:40px}}
/* ---- 4 Robbie: image LEFT and large ---- */
.rob{display:grid;gap:32px}
.rob .ph img{width:100%;max-width:420px;aspect-ratio:1/1.08;object-fit:cover;object-position:50% 18%;border-radius:20px;border:8px solid #fff;box-shadow:0 8px 32px rgba(52,76,61,.18)}
.rob.v-b .ph img{border-radius:50%;aspect-ratio:1/1;max-width:340px}
.rob h2{margin-bottom:24px}
.rob .tx p+p{margin-top:20px}
.rob .cta{margin-top:40px}
@media(min-width:1024px){.rob{grid-template-columns:minmax(0,480px) minmax(0,1fr);gap:80px;align-items:center}.rob .ph img{max-width:480px}.rob.v-b .ph img{max-width:440px}.rob .tx p{font-size:28px}}
/* ---- 5 what you get back: tall image carousel, text inside image, small mid arrows ---- */
.car{position:relative}
.track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:20px}
.track::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:center;position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/5;background:#E8EFE6}
.slide .photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.slide .art{position:absolute;inset:0;width:100%;height:100%;display:block}
.slide .tag{position:absolute;top:16px;left:16px;z-index:3;background:rgba(255,255,255,.85);border-radius:999px;padding:2px 12px;font:600 20px/1.4 'Open Sans',sans-serif;color:#3C4A41}
.slide.has .art,.slide.has .tag{display:none}
.slide .ov{position:absolute;z-index:2;left:0;right:0;top:0;padding:56px 64px 110px;background:linear-gradient(0deg,rgba(38,56,44,0),rgba(38,56,44,.8) 40%,rgba(38,56,44,.92));color:#fff}
.slide .tag{top:12px;bottom:auto;left:auto;right:12px}
.slide .ov h3{color:#fff;font-size:32px}
.slide .ov p{margin-top:8px;font-size:24px;line-height:1.45;color:#fff}
.arw{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:48px;height:72px;border:0;border-radius:12px;background:rgba(255,255,255,.92);color:#26382C;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.arw.prev{left:8px}.arw.next{right:8px}@media(max-width:599px){.arw{width:44px;height:64px}}
.arw[disabled]{opacity:0;pointer-events:none}
.car.v-b .arw{background:#344C3D;color:#fff}
@media(min-width:1024px){.slide{aspect-ratio:21/10}.slide .ov{top:0;bottom:0;right:auto;width:62%;padding:0 56px 56px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(90deg,rgba(38,56,44,.9) 0,rgba(38,56,44,.7) 45%,rgba(38,56,44,0) 100%)}.slide .tag{left:24px;bottom:auto;right:auto;top:20px}.slide .ov h3{font-size:44px}.slide .ov p{font-size:26px}.arw{width:56px;height:88px}.arw.prev{left:20px}.arw.next{right:20px}
 .car.v-b{padding:0 88px}.car.v-b .arw.prev{left:0}.car.v-b .arw.next{right:0}}
.concept{margin-top:16px;background:#fff;border:2px dashed #344C3D;border-radius:14px;padding:20px 24px;font-size:20px;line-height:1.5}
.concept code{font-size:20px;background:#E8EFE6;padding:0 6px;border-radius:6px;overflow-wrap:anywhere}.concept b{display:block;font-size:22px;color:#26382C;margin-bottom:6px}
.concept textarea{width:100%;min-height:150px;margin-top:10px;font:400 20px/1.45 'Open Sans',sans-serif;border:1px solid rgba(20,32,24,.2);border-radius:10px;padding:12px;color:#1A1A1A;background:#F6F9F5}
.concept button{margin-top:10px;font:700 20px/1 'Open Sans',sans-serif;padding:12px 18px;border-radius:10px;border:2px solid #344C3D;background:#fff;color:#344C3D;cursor:pointer}
/* ---- 6 emails: quality = two-line cards, quantity = five-line cards with fade + extension ---- */
.qual{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -24px;padding:4px 24px 12px;scroll-padding:0 24px}
.qual::-webkit-scrollbar{display:none}
.qc{flex:0 0 84%;scroll-snap-align:start;display:flex;flex-direction:column;justify-content:space-between;gap:16px;text-align:left;font:inherit;color:inherit;cursor:pointer;padding:22px 24px}
.qc q{quotes:none;font:700 24px/1.4 Georgia,serif;color:#26382C}
.qc q u,.qe u{text-decoration-color:#344C3D;text-decoration-thickness:2px;text-underline-offset:4px}
.who{display:flex;align-items:center;gap:12px;font-size:20px;color:#3C4A41}
.av{flex:none;width:40px;height:40px;border-radius:50%;background:#344C3D;color:#fff;display:flex;align-items:center;justify-content:center;font:700 20px/1 'Open Sans',sans-serif}
.see{margin-left:auto;font-weight:600;font-size:20px;color:#344C3D}
.more-h{margin:40px 0 20px;font:700 28px/1.2 Georgia,serif;color:#26382C}
.wall{position:relative}
.wall .cols{columns:1;column-gap:20px}
.qe{display:flex;flex-direction:column;gap:10px;width:100%;break-inside:avoid;margin:0 0 20px;padding:20px 22px;border:1px solid rgba(20,32,24,.10);background:#fff;border-radius:14px;box-shadow:0 4px 20px rgba(52,76,61,.08);cursor:pointer;text-align:left;font:inherit;color:#1A1A1A}
.qe{background:#1c1c1e;border:0;padding:0;overflow:hidden;gap:0}.qe .who{padding:14px 18px 6px;color:#fff}.qe .av{background:#E8EFE6;color:#26382C}.qe .see{margin-left:auto;color:#E8EFE6;font-weight:600}.qe .shot{display:block;max-height:340px;overflow:hidden}.qe .shot img{width:100%}.qe .shot.long{-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}.qe.hid{display:none}
.qe .see{margin-left:0}
.wall.clip::after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;background:linear-gradient(180deg,rgba(232,239,230,0),#E8EFE6 90%);pointer-events:none}
.ext{display:flex;flex-direction:column;align-items:center;gap:4px;margin:-8px auto 0;position:relative;z-index:2;border:0;background:none;cursor:pointer;color:#26382C;font:600 22px/1.2 'Open Sans',sans-serif;padding:8px 24px}
.ext .tab{width:64px;height:44px;border-radius:0 0 999px 999px;background:#344C3D;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 0 #1f2f25}
.ext .ln{display:block;width:2px;height:28px;background:linear-gradient(180deg,rgba(52,76,61,0),#344C3D)}
.ext:hover .tab{background:#26382C}.ext[hidden]{display:none}
@media(min-width:600px){.qual{margin:0 -48px;padding:4px 48px 12px;scroll-padding:0 48px}.qc{flex-basis:46%}.wall .cols{columns:2}}
@media(max-width:599px){.qc .who{flex-wrap:wrap}.qc .see{flex-basis:100%;margin-left:0}}
@media(min-width:1024px){.wall .cols{columns:2!important}.qual{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;overflow:visible}.qc{padding:20px 20px}.qc q{font-size:21px;letter-spacing:-.005em}.wall .cols{columns:3}}
.emails.v-b .qc{background:#26382C;border:0}.emails.v-b .qc q{color:#fff;font-style:italic}.emails.v-b .qc q u{text-decoration-color:#E8EFE6}.emails.v-b .qc .who{color:#E8EFE6}.emails.v-b .qc .see{color:#fff}.emails.v-b .qc .av{background:#E8EFE6;color:#26382C}
/* full email viewer: readable text, never full page length */
.mv{position:fixed;inset:0;z-index:60;background:rgba(10,15,12,.72);display:none;align-items:center;justify-content:center;padding:16px}
.mv.on{display:flex}
.mv .box{position:relative;background:#fff;border-radius:20px;max-width:680px;width:100%;max-height:min(80vh,640px);overflow:auto;padding:28px 24px 28px;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.mv .box .who{margin-bottom:16px;font-weight:600;color:#26382C;font-size:22px}
.mv .box p{font-size:22px;line-height:1.55;margin:0 0 14px}
.mv .x{position:sticky;top:0;float:right;width:48px;height:48px;border-radius:50%;border:0;background:#E8EFE6;color:#26382C;font:700 26px/48px 'Open Sans',sans-serif;cursor:pointer;margin:-8px -6px 0 12px}
.mv .orig{display:inline-block;margin-top:6px;font-size:20px;color:#344C3D;background:none;border:0;padding:8px 0;text-decoration:underline;cursor:pointer}
@media(min-width:1024px){.mv .box{padding:40px 44px}}
.lb{position:fixed;inset:0;background:rgba(10,15,12,.88);display:none;align-items:flex-start;justify-content:center;z-index:70;overflow:auto;padding:24px 16px}
.lb.on{display:flex}.lb img{max-width:640px;width:100%;border-radius:14px;margin-top:56px}
.lb .x{position:fixed;top:16px;right:16px;width:52px;height:52px;border-radius:50%;border:0;background:#fff;color:#26382C;font:700 28px/52px 'Open Sans',sans-serif;cursor:pointer}
/* ---- 7 plan and price ---- */
.drow{display:flex;align-items:flex-start;gap:20px;scroll-padding:0 24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -24px 48px;padding:4px 24px 12px}
.drow::-webkit-scrollbar{display:none}
.drow .dc{flex:0 0 42%;scroll-snap-align:start}@media(max-width:599px){.drow{gap:10px}.drow .dc{flex:0 0 38%!important;min-width:0;width:38%;overflow:hidden}.drow .dc{padding:6px 6px 0}.drow .dc .dl{display:block;white-space:nowrap;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 80%,transparent);mask-image:linear-gradient(90deg,#000 80%,transparent);padding:8px 2px 10px;line-height:1.3}.drow .dc .dl b,.drow .dc .dl span{display:block}.drow .dc .tm{font-size:20px;padding:0 5px}}
.drow .dc.k3{-webkit-mask-image:linear-gradient(90deg,#000 10%,transparent 95%);mask-image:linear-gradient(90deg,#000 10%,transparent 95%)}
@media(min-width:600px){.drow{margin:0 -48px 48px;padding:4px 48px 12px;scroll-padding:0 48px}.drow .dc{flex-basis:44%}}
@media(min-width:1024px){.drow{margin:0 0 40px;padding:4px 0 12px;overflow:visible}.drow .dc{flex:1 1 0;min-width:0}}
.pp{display:grid;gap:32px;align-items:center;grid-template-columns:minmax(0,1fr)}
.bul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.bul{gap:18px}.bul li{display:flex;align-items:center;gap:16px;font-weight:600;font-size:24px;line-height:1.3;white-space:nowrap}@media(max-width:439px){.bul li{font-size:22px}}@media(max-width:379px){.bul li{white-space:normal}}@media(min-width:1024px){.bul{gap:22px}.bul li{font-size:28px}.bul li svg{width:36px;height:36px}}
.bul li svg{flex:none}
.price{padding:40px 28px;text-align:center;border:2px solid #344C3D;background:#fff;border-radius:20px;box-shadow:0 8px 32px rgba(52,76,61,.14)}
.price .amt{font:700 64px/1 'Open Sans',sans-serif;color:#26382C;letter-spacing:-.01em}
.price .amt small{font-size:30px;font-weight:700;margin-left:8px;color:#3C4A41}
.price .once{margin-top:16px;font-size:24px;color:#3C4A41}
.price .fx{display:inline-block;margin-top:14px;background:#E8EFE6;border-radius:999px;padding:4px 16px;font-size:20px;color:#26382C}
.price .fx:empty{display:none}
.price .cta{margin-top:32px}
.price .rpd-btn{width:100%;padding-left:24px;padding-right:24px}
.price .cap{justify-content:center;text-align:left}@media(min-width:1024px){.price .cap{white-space:nowrap}}
@media(max-width:399px){.price{padding:36px 20px}}
@media(min-width:1024px){.plan.s{padding-top:64px;padding-bottom:64px}.plan h2{font-size:40px;margin-bottom:32px}.plan .drow{margin-bottom:32px}.plan .drow .dc{padding:8px 8px 0}.pp{grid-template-columns:minmax(0,1fr) minmax(0,640px);gap:48px}.price{padding:32px 40px}.price .rpd-btn{padding-left:48px;padding-right:48px}.price .amt{font-size:64px}.price .once{margin-top:10px}.price .cta{margin-top:24px}.price .cap{margin-top:14px}}
.plan.v-b .pp{grid-template-columns:1fr}
.plan.v-b .price{display:grid;gap:0}
@media(min-width:1024px){.plan.v-b .pbox{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;text-align:left}.plan.v-b .price .cta{align-items:stretch}}

/* ---- 8 FAQ: arrow down / arrow up ---- */
.faq details{background:#fff;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:0 4px 20px rgba(52,76,61,.06)}
.faq details+details{margin-top:16px}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 24px;font:700 26px/1.35 Georgia,serif;color:#26382C;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary .chev{flex:none;width:44px;height:44px;border-radius:50%;background:#E8EFE6;display:flex;align-items:center;justify-content:center;transition:transform .2s}
.faq details[open] summary .chev{transform:rotate(180deg)}
.faq details p{padding:0 24px 28px;line-height:1.6;overflow-wrap:anywhere}
.faq.v-b .fq{background:#fff;border-radius:20px;padding:8px 24px;box-shadow:0 4px 20px rgba(52,76,61,.08)}
.faq.v-b details{background:none;border:0;border-radius:0;box-shadow:none;border-bottom:1px solid rgba(52,76,61,.18)}
.faq.v-b details:last-child{border-bottom:0}.faq.v-b details+details{margin-top:0}
.faq.v-b summary,.faq.v-b details p{padding-left:0;padding-right:0}
@media(min-width:1024px){.faq summary{padding:28px 32px}.faq details p{padding:0 32px 32px}.faq.v-b .fq{padding:8px 40px}}
/* ---- 9 closing CTA: CTA left, day stack right ---- */
.close .cg{display:grid;gap:40px;align-items:center;grid-template-columns:minmax(0,1fr)}
.close h2{margin-bottom:24px}
.close .pr{font:700 56px/1 'Open Sans',sans-serif;color:#26382C}
.close .pr small{font-size:28px;margin-left:8px;color:#3C4A41}
.close .once{margin-top:12px;font-size:24px;color:#3C4A41}
.close .fx{display:inline-block;margin-top:12px;background:#E8EFE6;border-radius:999px;padding:4px 16px;font-size:20px;color:#26382C}.close .fx:empty{display:none}
.close .cta{margin-top:40px;align-items:flex-start}
.close .stk{--bg:#F6F9F5;max-width:440px;width:100%;margin:0 auto}
@media(max-width:599px){.close .cta{align-items:stretch}}
@media(min-width:1024px){.close .cg{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:80px}.close .stk{max-width:none}.close .pr{font-size:72px}}
/* ---- disclaimer at the very bottom, then footer ---- */
.disc{background:#E8EFE6;padding:40px 24px}
.disc p{max-width:1120px;margin:0 auto;font:400 20px/1.55 'Open Sans',sans-serif;color:#3C4A41}
@media(min-width:600px){.disc{padding:48px}}@media(min-width:1024px){.disc{padding:48px 64px}}
footer{background:#26382C;color:#fff;padding:64px 24px;font-size:20px;line-height:1.6}footer .in p+p{margin-top:12px}footer a{color:#fff;display:inline-block;padding:6px 0}
@media(min-width:600px){footer{padding:64px 48px}}@media(min-width:1024px){footer{padding:64px}}
.noshot .sticky{display:none!important}
@media(min-width:1024px){.emails .more-h{margin:40px 0 20px}.emails .qc{padding:18px 32px}.emails h2{margin-bottom:32px}}
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:20;background:#fff;border-top:1px solid rgba(20,32,24,.14);padding:12px 24px 14px;box-shadow:0 -4px 20px rgba(52,76,61,.12);transform:translateY(110%);transition:transform .25s}
.sticky.on{transform:none}.sticky .rpd-btn{padding:16px 24px}
@media(min-width:600px){.sticky{display:none}}
/* ==== 10 Oct (Jeff): smaller text sitewide. Body = bullets = FAQ = refund line under the hero button. ==== */
body{font-size:20px;line-height:1.55}
h2{font-size:30px;margin-bottom:32px}
.cap{font-size:20px}
.hero .lead{font-size:24px;max-width:520px}
.qx p,.qx.m-chk p{font:400 20px/1.45 'Open Sans',sans-serif}
.qx li{padding:14px 18px}.qx.m-fill .mk,.qx.m-chk .mk{width:32px;height:32px}.qx .mk svg{width:32px;height:32px}
.fitnote{font-weight:600;font-size:20px;margin-top:24px;padding:16px 20px}
.rob .tx p{font-size:20px}
.bul li,.bul li span{font-size:20px!important;font-weight:400;white-space:normal}.bul li svg{width:26px!important;height:26px!important}
.price .once{font-size:20px}.close .once{font-size:20px}
.faq summary{font:700 20px/1.4 Georgia,serif;padding:18px 20px}.faq summary .chev{width:36px;height:36px}.faq summary .chev svg{width:20px;height:20px}
.faq details p{padding:0 20px 20px;font-size:20px}.faq details+details{margin-top:12px}
.slide .ov p{font-size:20px}
@media(min-width:1024px){body{font-size:22px}h2{font-size:42px;margin-bottom:40px}.cap{font-size:22px}.hero .lead{font-size:28px}
 .qx p,.qx.m-chk p{font-size:22px}.fitnote{font-size:22px}.rob .tx p{font-size:22px}.bul li,.bul li span{font-size:22px!important}
 .price .once,.close .once{font-size:22px}.faq summary{font-size:22px;padding:22px 28px}.faq details p{font-size:22px;padding:0 28px 24px}}
/* emails 2x2 grid, header always visible */
.eg2{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:16px}
.eg2 .eg.more{display:none}.eg2.all .eg.more{display:block}
.eg button{display:block;position:relative;width:100%;padding:0;border:0;border-radius:14px;overflow:hidden;background:#1c1c1e;cursor:pointer;height:340px;box-shadow:0 4px 20px rgba(52,76,61,.12)}
.eg img{width:100%;height:auto}
.eg .rd{position:absolute;left:0;right:0;bottom:0;padding:56px 18px 14px;background:linear-gradient(180deg,rgba(28,28,30,0),#1c1c1e 60%);color:#fff;font:600 20px/1.2 'Open Sans',sans-serif;text-align:left}
.egm{display:block;margin:24px auto 0;border:2px solid #344C3D;background:#fff;color:#26382C;border-radius:999px;font:600 20px/1.2 'Open Sans',sans-serif;padding:14px 28px;cursor:pointer}
.egm[hidden]{display:none}
@media(min-width:768px){.eg2{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.eg button{height:440px}}
/* conditions */
.cond .cg2{display:grid;gap:28px;align-items:center}
.tabl{background:#1A1A1A;border-radius:28px;padding:14px;box-shadow:0 12px 40px rgba(38,56,44,.25);max-width:520px}
.tabl .scr{border-radius:14px;overflow:hidden;background:#fff}
.tabl .scr p{font:700 20px/1.3 Georgia,serif;color:#26382C;padding:12px 14px}
.cl{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.cl li{display:flex;gap:12px;align-items:flex-start}.cl li svg{flex:none;margin-top:6px}
.cond .nt{margin-top:20px;font-size:20px;color:#3C4A41}.cond .qx.cq{gap:12px}.cond .qx.cq li{align-items:center}.cond .nt{margin-top:24px}.cond .cq2{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.cond .cqp{border-radius:20px;overflow:hidden;box-shadow:0 4px 20px rgba(52,76,61,.08);aspect-ratio:4/3}.cond .cqp img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 40%}@media(min-width:600px){.cond .cqp{aspect-ratio:auto;height:300px}.cond .cqp img{object-position:50% 30%}.cond .qx.cq{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}}@media(min-width:1024px){.cond .cq2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:stretch}.cond .cqp{height:auto;position:relative}.cond .cqp img{position:absolute;inset:0}.cond .qx.cq{grid-template-columns:minmax(0,1fr);gap:12px}.cond .nt{margin-top:20px}}
@media(min-width:1024px){.cond .cg2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px}}
/* timeline (what the program is about) */
.tl{list-style:none;margin:36px 0 0;padding:0;display:grid;gap:0;position:relative}
.tl li{position:relative;padding:0 0 24px 40px}
.tl li::before{content:"";position:absolute;left:9px;top:12px;bottom:-12px;width:2px;background:#344C3D;opacity:.35}
.tl li:last-child::before{display:none}
.tl .dot{position:absolute;left:0;top:6px;width:20px;height:20px;border-radius:50%;background:#344C3D;box-shadow:0 0 0 4px #E8EFE6}
.tl b{display:block;font:700 20px/1.3 Georgia,serif;color:#26382C}
.tl p{margin-top:4px}
@media(min-width:1024px){.tl{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:48px 0 0}
 .tl li{padding:40px 0 0}.tl li::before{left:20px;right:-24px;top:9px;bottom:auto;width:auto;height:2px}
 .tl .dot{top:0}.tl b{font-size:24px}}
.drow{margin-bottom:32px}
.easy{margin-top:24px;background:#E8EFE6;border-left:3px solid #344C3D;border-radius:10px;padding:16px 20px}
.plan .bul{gap:14px}
@media(min-width:1024px){.plan h2{font-size:42px}.pp{grid-template-columns:minmax(0,1fr) minmax(0,520px)}}
/* infinite scrollers: fade on BOTH sides, pause on hover/touch */
.mq{position:relative;overflow:hidden;margin:0 -20px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.mqt{list-style:none;margin:0;padding:8px 0 16px;display:flex;gap:20px;width:max-content;animation:mq 70s linear infinite}
.mq:hover .mqt,.mq:active .mqt,.mq:focus-within .mqt{animation-play-state:paused}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 10px))}}
@media(prefers-reduced-motion:reduce){.mqt{animation:none}.mq{overflow-x:auto}}
@media(min-width:600px){.mq{margin:0 -40px}}@media(min-width:1024px){.mq{margin:0 calc(50% - 50vw + 8px)}}
.tk{flex:none;width:260px;background:#fff;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:0 4px 20px rgba(52,76,61,.08);padding:12px 12px 20px}
.tk .pic{position:relative;height:150px;border-radius:10px;background:#E8EFE6;display:flex;align-items:center;justify-content:center;overflow:hidden}
.tk .emo{font-size:72px;line-height:1}
.tk .photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tk h3{font-size:22px;margin:16px 8px 6px;line-height:1.25}
.tk p{margin:0 8px;font-size:20px;line-height:1.45;color:#3C4A41}
.gb.v-b .tk{width:300px;background:#26382C;border:0}.gb.v-b .tk h3{color:#fff}.gb.v-b .tk p{color:#E8EFE6}.gb.v-b .tk .pic{background:#344C3D}
@media(min-width:1024px){.tk{width:320px}.tk .pic{height:180px}.tk h3{font-size:24px}.gb.v-b .tk{width:360px}}
.em .mqt{animation-duration:110s;align-items:flex-start}
.es{flex:none;width:280px}
.es button{display:block;width:100%;padding:0;border:0;background:none;border-radius:14px;overflow:hidden;cursor:zoom-in;box-shadow:0 4px 20px rgba(52,76,61,.12)}
.es img{width:100%;max-height:360px;object-fit:cover;object-position:top}
.em.v-a .es img{-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent);mask-image:linear-gradient(180deg,#000 80%,transparent)}
.em.v-b .es img{max-height:none}
@media(min-width:1024px){.es{width:380px}.es img{max-height:440px}}
/* journey */
.jy p{padding:20px 0;border-top:3px solid #344C3D;border-top-width:0;position:relative}
.jy p::before{content:"";display:block;width:56px;height:3px;background:#344C3D;margin-bottom:20px}
.jy .end,.journey .end{font-weight:700;color:#26382C}
.price .cap{white-space:normal!important}
.jc{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:14px}
.jc li{display:flex;gap:16px;align-items:center;padding:16px 20px}
.jc .n{flex:none;width:40px;height:40px;border-radius:50%;background:#344C3D;color:#fff;display:flex;align-items:center;justify-content:center;font:700 20px/1 Georgia,serif}
@media(min-width:1024px){.jc{grid-template-columns:repeat(3,minmax(0,1fr))}.jc li{flex-direction:column;align-items:flex-start}}
/* ==== R4 (10 Oct): ONE rhythm (Jeff "huge spacing" vs Josh "no padding"): 64px padding phone and laptop (gap about 128), 24px phone gutters ==== */
.s{padding:64px 24px}
@media(min-width:600px){.s{padding:64px 48px}}
@media(min-width:1024px){.s{padding:64px 64px}.plan.s{padding-top:64px;padding-bottom:64px}}
.mq{margin:0 -24px}@media(min-width:600px){.mq{margin:0 -48px}}@media(min-width:1024px){.mq{margin:0 calc(50% - 50vw + 8px)}}
.cl{gap:16px}.faq details+details{margin-top:16px}
@media(min-width:1024px){.hero .lead{font-size:26px}.tk p,.cond .nt,.tl p{font-size:22px}.tl b{font-size:22px}.cl li{font-size:22px}}
/* emails: shorter cards on laptop; on phone crop and scale so the sender header and first lines are readable */
.eg button{height:300px}
@media(min-width:768px){.eg button{height:300px}}
@media(max-width:599px){.eg button{height:320px}.eg img{width:165%;max-width:none}
 .eg button::after{content:"";position:absolute;top:0;right:0;bottom:0;width:56px;background:linear-gradient(90deg,rgba(28,28,30,0),#1c1c1e);pointer-events:none}}
.faq details:not([open]) p{display:none}
.tl li:last-child{padding-bottom:0}
.egm{padding:10px 28px;min-height:48px}
.eg button{font:inherit}
.eg img{height:100%;object-fit:cover;object-position:left top}
.sticky .cap{margin-top:8px;justify-content:center}
/* ==== R5 (Josh 10 Oct voice), merged single block ==== */
/* duration: inside the thumbnail, YouTube-like (BUILD-GUIDE token), never a badge */
.dc .tm{right:8px;bottom:8px;background:rgba(26,26,26,.42);color:#fff;border-radius:6px;padding:0 6px;font:400 20px/1.3 'Open Sans',sans-serif;border:0;box-shadow:none}
/* day stack: each card behind shifts right more than up; all three visible */
.stk.deck{padding-top:32px;width:auto;margin-right:48px}
.stk.deck .k2{top:16px;left:24px;right:-24px;opacity:.85}
.stk.deck .k3{top:0;left:48px;right:-48px;opacity:.5}
.stk.deck .k2 .dl,.stk.deck .k3 .dl{visibility:hidden}
@media(min-width:600px){.stk.deck{padding-top:40px;margin-right:64px}.stk.deck .k2{top:20px;left:32px;right:-32px}.stk.deck .k3{left:64px;right:-64px}}
/* one CTA style everywhere */
.cta .rpd-btn,.sticky .rpd-btn,.price .rpd-btn{border-radius:14px}
.price .fx,.close .fx{display:none}
/* what you get back: close-up photos, no emoji */
.tk .emo{display:none}.tk .pic{height:220px;background:#E8EFE6}.tk .photo{width:100%;height:100%;object-fit:cover;object-position:center}
@media(min-width:1024px){.tk .pic{height:260px}}
/* I'm Robbie: sage band, big circle photo, CTA, compact */
.rob.v-b .ph img{border-radius:50%;aspect-ratio:1/1;width:100%;max-width:300px;border:8px solid #fff}
.rob{gap:24px}
@media(min-width:1024px){.rob{grid-template-columns:440px minmax(0,1fr);gap:64px;align-items:center}.rob.v-b .ph img{max-width:440px}}
/* emails: cut off, fade to the band colour, full-width "Show me more" extension */
.eg2.cut{position:relative;overflow:hidden}
.eg2 .eg.hid{display:none!important}
.eg2.cut::after{content:"";position:absolute;left:0;right:0;bottom:0;height:220px;background:linear-gradient(180deg,rgba(246,249,245,0),#F6F9F5 88%);pointer-events:none}
.egm{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;margin:-28px 0 0;position:relative;z-index:2;border:0;background:none;border-radius:0;box-shadow:none;color:#26382C;font:600 20px/1.3 'Open Sans',sans-serif;padding:8px 0 36px;min-height:0;cursor:pointer}
@media(min-width:1024px){.egm{font-size:22px}}
.egm .ln{display:block;width:2px;height:32px;background:linear-gradient(180deg,rgba(52,76,61,0),#344C3D)}.egm .tab{width:72px;height:44px;border-radius:0 0 999px 999px;background:#E8EFE6;color:#344C3D;display:flex;align-items:center;justify-content:center}.egm:hover .tab{background:#dbe5d8}.egm .lbl{margin-top:8px}
.egm svg{animation:egB 2.2s ease-in-out infinite}@keyframes egB{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.egm[hidden]{display:none}
/* What you get: more air between the parts */
.plan .pp{gap:48px}.plan .bul{gap:24px}.plan .easy{margin-top:32px}.plan .tl{margin-top:64px}.plan h2{margin-bottom:48px}.plan .tl li{padding-bottom:32px}.plan .tl li:last-child{padding-bottom:0}
@media(min-width:1024px){.plan .pp{gap:80px}.plan .bul{gap:28px}.plan .tl{margin-top:80px;gap:40px}.plan .tl li{padding-bottom:0}}
/* ==== R6 (Jeff 10 Oct email) ==== */
/* hero: laptop no longer a full screen, next section peeks */
@media(min-width:1024px){.hero{min-height:0;padding-top:64px;padding-bottom:64px}}
/* phone: hero centred, refund lines centred under the centred button */
@media(max-width:1023px){.hero .ht{text-align:center}.hero .lead{margin-left:auto;margin-right:auto}.hero .cta{align-items:center;text-align:center}.hero .cap{justify-content:center;text-align:center}}
.cap{white-space:normal!important}
/* phone CTA a little smaller */
@media(max-width:599px){.rpd-btn{padding:14px 24px;font-size:22px}}
/* fit: line icons */
.qx.m-ico .mk{width:52px;height:52px;border-radius:14px;background:#E8EFE6;padding:8px}.qx.m-ico .mk svg{width:36px;height:36px}
/* what you get: four bullet cards as tall as the price box; smaller price box */
.bul.bx{gap:14px}.bul.bx li{background:#fff;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:0 4px 20px rgba(52,76,61,.08);padding:18px 20px}
.price{padding:28px 24px}.price .amt{font-size:52px}.price .cta{margin-top:20px}.price .cap{font-size:20px!important;margin-top:12px}
@media(min-width:1024px){.pp{grid-template-columns:minmax(0,1fr) minmax(0,420px)!important;align-items:stretch}.bul.bx{grid-template-rows:repeat(4,1fr);height:100%}.bul.bx li{padding:0 24px}.plan .tl{grid-template-columns:repeat(3,minmax(0,1fr))}.plan.s{padding-top:64px;padding-bottom:64px}}
/* emails: no load-images bar, cards 1.5x taller, phone shows the email unzoomed */
@media(min-width:1024px){.emails.s{padding-bottom:72px}}
.eg button{height:450px}.eg button{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}.eg img{display:block;flex:none;height:auto!important;width:100%!important;object-fit:initial}
@media(max-width:599px){.eg button{height:440px}.eg img{width:100%;max-width:100%}.eg button::after{display:none}}
/* Robbie: small face crop on phone */
@media(max-width:1023px){.rob.v-b .ph img{max-width:180px;margin:0 auto;display:block}.rob .ph{text-align:center}}
/* conditions: real photo */
.cph img{width:100%;max-width:440px;aspect-ratio:4/5;object-fit:cover;border-radius:20px;display:block;box-shadow:0 8px 32px rgba(52,76,61,.18)}
@media(max-width:1023px){.cph img{max-height:360px;aspect-ratio:auto;margin:0 auto}}
/* final CTA: no visual on phone */
@media(max-width:1023px){.close .cv{display:none}}
/* health note inside the footer */
footer .hn{font-size:20px;color:#E8EFE6;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.18)}
/* what you get back: slow auto-scroll on phone too */
@media(max-width:599px){.mqt{animation-duration:90s}}
/* R6 Josh live: day stack vertical enough that Day 2 and Day 3 titles show, fading out */
.stk.deck{padding-top:88px}
.stk.deck .k2{top:44px;opacity:.75}.stk.deck .k3{top:0;opacity:.45}
.stk.deck .k2 .dl,.stk.deck .k3 .dl{visibility:visible}
@media(min-width:600px){.stk.deck{padding-top:96px}.stk.deck .k2{top:48px}.stk.deck .k3{top:0}}
@media(max-width:599px){.stk.deck .dc .dl{white-space:nowrap;flex-wrap:nowrap}.cap{justify-content:center;text-align:center;margin-left:auto;margin-right:auto}.cta{align-items:center}}
/* ==== R7 (Jeff 10 Oct 11:26) ==== */
/* refund line: icon + text centred under the button, two lines, phone and laptop */
.cap{display:block!important;text-align:center!important;margin-left:auto;margin-right:auto}
.cap .t{display:inline-block;white-space:nowrap;text-align:center}
@media(max-width:359px){.cap .t{white-space:normal}}
.cap .sh{display:inline-block;vertical-align:-4px;margin:0 8px 0 0}
.cta.left{align-items:center;align-self:flex-start;width:max-content;max-width:100%}
@media(max-width:599px){.cta.left{width:100%}}
/* phone: day stack centred, cards behind peek straight up */
@media(max-width:599px){.stk.deck{margin-left:0;margin-right:0}.stk.deck .k2{left:14px;right:14px}.stk.deck .k3{left:28px;right:28px}}
/* phone: Hello I'm Robbie, everything centred, photo fills the column */
@media(max-width:1023px){.rob .tx{text-align:center}.rob .tx h2{text-align:center}
 .rob.v-b .ph img{max-width:100%;width:100%;aspect-ratio:4/3;border-radius:20px;object-position:50% 22%;border:0}}
/* phone: closing CTA centred like the hero */
@media(max-width:1023px){.close .ct{text-align:center}.close .pr{justify-content:center}}
/* sticky: at most a sixth of the phone screen, one refund line */
.sticky{padding:8px 20px 8px}.sticky .rpd-btn{padding:11px 24px;min-height:48px}.sticky .cap{margin-top:6px;line-height:1.35}
/* R7 Robbie + Josh: what you get back = finger-swipe scroller, no auto-scroll, arrows beside */
.gbw{position:relative;margin:0 -20px}@media(min-width:600px){.gbw{margin:0 -40px}}@media(min-width:1024px){.gbw{margin:0}}
.gbs{list-style:none;margin:0;padding:8px 20px 16px;display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 20px;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;scrollbar-width:none}
.gbs::-webkit-scrollbar{display:none}
.gbs .tk{scroll-snap-align:start;width:76%;max-width:320px}
@media(min-width:600px){.gbs{padding:8px 40px 16px;scroll-padding:0 40px}.gbs .tk{width:300px}}
@media(min-width:1024px){.gbs{padding:8px 4px 16px;scroll-padding:0 4px}.gbs .tk{width:340px}}
.gba{position:absolute;top:calc(50% - 28px);z-index:2;width:44px;height:72px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(20,32,24,.14);border-radius:12px;background:rgba(255,255,255,.94);color:#344C3D;box-shadow:0 4px 14px rgba(52,76,61,.16);cursor:pointer;padding:0}
.gba.prev{left:6px}.gba.next{right:6px}.gba:disabled{opacity:0;pointer-events:none}
@media(max-width:599px){.gba{width:48px;height:48px;border:0;border-radius:50%;background:rgba(38,56,44,.82);color:#fff;box-shadow:none}.gba.prev{left:10px}.gba.next{right:10px}}
@media(min-width:1024px){.gba.prev{left:-22px}.gba.next{right:-22px}}
/* animations keep running on phones: no tap-pause, no stuck hover */
.mq:hover .mqt,.mq:active .mqt,.mq:focus-within .mqt{animation-play-state:running}
@media(hover:hover){.mq:hover .mqt{animation-play-state:paused}}
.rpd-btn:hover .rpd-arr{animation:rpdNudge 2.6s ease-in-out infinite}
@media(hover:hover){.rpd-btn:hover .rpd-arr{animation:none;transform:translateX(8px)}}
@media(prefers-reduced-motion:reduce){.rpd-arr{animation:rpdNudge 2.6s ease-in-out infinite}.mqt{animation:mq 120s linear infinite}.mq{overflow:hidden}.em .mqt{animation-duration:160s}}
p,li,.tl p{text-wrap:pretty}
/* ---- R9 (11 Oct, Josh laptop) ---- */
@media(min-width:1024px){.rpd-btn{font-size:34px!important;padding:32px 72px!important;min-height:100px;gap:18px}.rpd-btn .rpd-arr svg{width:34px;height:17px}.price .rpd-btn{padding-left:32px!important;padding-right:32px!important}}

.bul.bx{display:grid;grid-auto-rows:1fr;gap:12px!important;height:auto!important;grid-template-rows:none!important}
.bul.bx li{min-height:72px;padding:16px 24px!important;white-space:normal!important}
@media(max-width:1023px){.bul.bx{grid-auto-rows:auto}.bul.bx li{min-height:64px}}
@media(min-width:1024px){.plan .pp{display:grid!important;grid-template-columns:1fr!important;gap:48px!important;justify-items:center}.plan .bul.bx{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.bul.bx li{min-height:104px;padding:20px 28px!important}.plan .pr2{width:100%;display:grid;grid-template-columns:500px minmax(0,1fr);gap:64px;align-items:center}.plan .bul.bx li{min-height:76px!important}.plan .pp{gap:32px!important}.plan h2{margin-bottom:32px}.plan .price .rpd-btn{padding-left:56px!important;padding-right:56px!important}
 .plan .pr2 .tl{grid-template-columns:1fr!important;gap:0!important;margin:0!important}.plan .pr2 .tl li{padding:0 0 10px 44px!important}.plan .pr2 .tl li:last-child{padding-bottom:0!important}.plan .pr2 .tl p{line-height:1.45}
 .plan .pr2 .tl li::before{left:9px!important;right:auto!important;top:14px!important;bottom:-14px!important;width:2px!important;height:auto!important}.plan .pr2 .tl .dot{top:6px!important}}
@media(max-width:599px){.plan .bul.bx{gap:10px!important}.plan .bul.bx li{min-height:0;padding:12px 18px!important}.plan .tl{margin-top:32px}.plan .pp{gap:28px!important}}
@media(min-width:768px){.eg2.all{display:block!important;columns:2;column-gap:20px}.eg2 .eg{break-inside:avoid;margin:0 0 20px}}
.faq .inst{display:block;width:max-content;margin-top:16px;padding:14px 28px;border-radius:14px;background:#344C3D;color:#fff;font-weight:700;text-decoration:none}
@media(min-width:1024px){.plan .tl{margin-top:56px}.plan .tl p{font-size:22px}}

/* ---- R8 (11 Oct, Josh iPhone + DROPPED-AUDIT) ---- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
/* guarantee: one clean centred block, a little smaller than body text */
.cap,.price .cap{display:block!important;margin:16px auto 0!important;max-width:34ch;text-align:center!important;font-size:18px!important;line-height:1.45!important;color:#3C4A41}
.cap .t{display:inline!important;white-space:normal!important;text-wrap:balance}
.cap .sh{display:inline-block;width:18px;height:18px;vertical-align:-3px;margin:0 6px 0 0}
.cap br.dk{display:none}
@media(min-width:600px){.cap,.price .cap{font-size:20px!important;max-width:none}.cap br.dk{display:inline}.hero .cap,.close .cap{text-align:left!important;margin-left:0!important}}
@media(min-width:600px) and (max-width:1023px){.hero .cap{text-align:center!important;margin-left:auto!important}}
/* phone CTA: one line at 320-430, even padding, arrow beside the label */
@media(max-width:599px){.rpd-btn{display:flex;width:100%;min-height:60px;padding:16px 24px!important;gap:12px;font-size:clamp(20px,6vw,24px)!important;line-height:1.2;white-space:nowrap}.rpd-btn .rpd-arr svg{width:24px;height:12px}}
/* sticky: just the button, safe-area aware, phone only */
.sticky{padding:10px 20px calc(10px + env(safe-area-inset-bottom))!important;background:rgba(246,249,245,.96);border-top:1px solid rgba(20,32,24,.12)}
.sticky .cap{display:none!important}
/* emails: natural heights, about half shown with a fade, expand in place */
.eg2{align-items:start}
.eg2.cut::after{display:none!important}.eg2.cut{overflow:visible!important;max-height:none!important}
@media(max-width:599px){.price{padding-left:14px!important;padding-right:14px!important}.price .cap{margin-left:-8px!important;margin-right:-8px!important;max-width:none}}
@media(min-width:1024px){.pp{grid-template-columns:minmax(0,1fr) 520px!important}.price{padding-left:28px!important;padding-right:28px!important}}
@media(max-width:599px){.rpd-btn{padding-left:24px!important;padding-right:24px!important}}
.eg button[data-full]{display:block!important;height:auto!important;max-height:none;overflow:hidden;position:relative;border-radius:14px 14px 0 0;-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent);mask-image:linear-gradient(180deg,#000 55%,transparent)}
.eg button[data-full]::after{display:none!important}
.eg button[data-full] img{width:100%!important;max-width:100%!important;height:auto!important;object-fit:initial!important}
.eg.open button[data-full],.eg.short button[data-full]{-webkit-mask-image:none;mask-image:none;border-radius:14px}
.eg .rd{display:none!important}
.eg .rdx{display:block!important;height:auto!important;box-shadow:none!important;overflow:visible;width:100%;margin:0;padding:14px 18px;min-height:52px;border:0;border-radius:0 0 14px 14px;background:#E8EFE6;color:#26382C;font:700 20px/1.3 'Open Sans',sans-serif;text-align:center;cursor:pointer}
.eg.short .rdx{display:none!important}.eg .rdx::after{display:none!important}
/* ---- R11 (Josh 11 Oct): laptop hero is one full screen, centred, generous gaps ---- */
@media(min-width:1024px){.hero{min-height:0!important;display:flex;flex-direction:column;justify-content:center;padding-top:88px!important;padding-bottom:88px!important}
 .hero .hg{align-items:center;row-gap:0}.hero .hv{align-self:center}.hero .lead{margin-top:28px}.hero .cta{margin-top:36px!important}.hero .cap{margin-top:20px!important}}
/* R11 (Josh 11 Oct): What you get is a LIST, one item per row, no grid */
.plan .bul.bx.wl{display:flex!important;flex-direction:column;gap:0!important;width:100%;max-width:840px;margin:0 auto;height:auto!important}
.plan .bul.bx.wl li{display:flex;align-items:center;gap:20px;background:none!important;border:0!important;border-bottom:1px solid rgba(20,32,24,.12)!important;border-radius:0!important;box-shadow:none!important;min-height:0!important;padding:22px 4px!important;font-size:22px;font-weight:700;line-height:1.35;color:#26382C}
.plan .bul.bx.wl li:last-child{border-bottom:0!important}.plan .bul.bx.wl li svg{flex:0 0 auto}
@media(min-width:1024px){.plan .bul.bx.wl{grid-template-columns:none!important}.plan .bul.bx.wl li{font-size:26px;padding:28px 8px!important}}
@media(max-width:599px){.plan .bul.bx.wl li{font-size:20px;padding:14px 0!important;gap:16px}.plan .bul.bx.wl li svg{width:26px;height:26px}}
@media(min-width:1024px){.plan .bul.bx.wl li{padding:20px 8px!important;font-size:24px}}
.plan .bul.bx.wl li span{font-size:inherit!important;font-weight:700!important;line-height:inherit!important;color:inherit!important}
/* ---- R12 (Josh 11 Oct) ---- */
/* What you get: one white rounded card per row, one column, same left edge as the heading, max 760px */
.plan .wy{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;max-width:760px;width:100%}
.plan .wy li{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:0 4px 20px rgba(52,76,61,.08);padding:20px 24px;font:700 21px/1.4 'Open Sans',sans-serif;color:#26382C;text-align:left}
.plan .wy li svg{flex:0 0 auto;width:28px;height:28px}
@media(min-width:1024px){.plan .wy li{font-size:22px;padding:22px 28px}}
/* timeline: horizontal below the list (phone stacks), short small text */
.plan .tlh{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:20px;max-width:760px}
.plan .tlh li{position:relative;padding:0 0 0 36px}
.plan .tlh li::before{content:"";position:absolute;left:9px;top:26px;bottom:-26px;width:2px;background:#344C3D;opacity:.35}
.plan .tlh li:last-child::before{display:none}
.plan .tlh .dot{position:absolute;left:0;top:5px;width:20px;height:20px;border-radius:50%;background:#344C3D;box-shadow:0 0 0 4px #F6F9F5}
.plan .tlh b{display:block;font:700 20px/1.3 Georgia,serif;color:#26382C}
.plan .tlh p{margin-top:4px;font-size:20px;line-height:1.5;color:#3C4A41}
@media(min-width:700px){.plan .tlh{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:none}
 .plan .tlh li{padding:36px 0 0}.plan .tlh li::before{left:20px;right:-28px;top:9px;bottom:auto;width:auto;height:2px}.plan .tlh .dot{top:0}}
.plan .tlm{display:none}
@media(max-width:699px){.plan .wyt .tlh{display:none!important}.plan .tlm{display:grid!important}}
.plan .pbx{display:flex;justify-content:center;margin-top:56px}
.plan .pbx .price{width:100%;max-width:520px}
@media(max-width:599px){.plan .tlh{margin-top:40px}.plan .pbx{margin-top:40px}.plan .wy{gap:12px}.plan .wy li{font-size:20px;padding:16px 18px;gap:14px}}
/* guarantee: centred under its button everywhere (hero, price, close) */
.hero .cta,.close .cta{width:max-content;max-width:100%;align-items:center!important}
.hero .cap,.close .cap{text-align:center!important;margin-left:auto!important;margin-right:auto!important;justify-content:center}
@media(max-width:599px){.hero .cta,.close .cta{width:100%}}
@media(max-width:1023px){.hero .cta,.close .cta{margin-left:auto!important;margin-right:auto!important}}
@media(min-width:1024px) and (max-width:1199px){.hero .cta,.close .cta{margin-left:0!important}.hero .rpd-btn,.close .rpd-btn{padding-left:36px!important;padding-right:36px!important}.hero .cap br.dk,.close .cap br.dk{display:none}.hero .cap,.close .cap{max-width:24em!important;text-wrap:balance}}
/* emails (r7 look): fade to the page background, small "Read the full email" link inside the fade, no bar */
.eg{position:relative}
.eg .rdx{position:relative!important;z-index:1;margin-top:-50px!important;background:none!important;border-radius:0!important;padding:10px 12px 14px!important;min-height:0!important;font:600 20px/1.3 'Open Sans',sans-serif!important;color:#26382C!important;text-decoration:underline;text-underline-offset:3px}
.eg .rdx::after{content:" \203A"!important;display:inline!important;position:static!important;background:none!important;text-decoration:none}
.eg button[data-full]{border-radius:14px!important;-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent calc(100% - 40px))!important;mask-image:linear-gradient(180deg,#000 55%,transparent calc(100% - 40px))!important}
.eg.open button[data-full]{-webkit-mask-image:none!important;mask-image:none!important}
.eg.open .rdx{margin-top:8px!important}
/* spacing pass (RAW 890805cb): sections at least 64px phone / 96px laptop top and bottom (hero stays one screen) */
.s:not(.hero){padding-top:64px!important;padding-bottom:64px!important}
@media(min-width:1024px){.s:not(.hero){padding-top:68px!important;padding-bottom:68px!important}}
/* ---- R13 (Josh 11 Oct 12:50) ---- */
/* 1. laptop: timeline top to bottom on the RIGHT of the checklist; phone/tablet stack below */
@media(min-width:1100px){.plan .wyt{display:grid;grid-template-columns:minmax(0,760px) minmax(0,1fr);column-gap:64px;align-items:stretch}
 .plan .wyt .tlh{margin:0!important;grid-template-columns:1fr!important;gap:0!important;max-width:440px;display:flex!important;flex-direction:column;height:100%;padding:8px 0 8px!important}
 .plan .wyt .tlh li{padding:0 0 0 44px!important;flex:1 1 0}.plan .wyt .tlh li:last-child{flex:0 0 auto}.plan .wyt .tlh .dot{top:6px!important}
 .plan .wyt .tlh li::before{left:9px!important;right:auto!important;top:28px!important;bottom:-6px!important;width:2px!important;height:auto!important}
 .plan .wyt .tlh li:last-child::before{display:none!important}
 .plan .wyt .tlh b{font-size:24px!important}.plan .wyt .tlh p{font-size:22px!important;line-height:1.45!important}}
/* 2. emails: no fade on the email; long ones cut cleanly with a footer button, short ones in full; independent columns */
.eg button[data-full]{-webkit-mask-image:none!important;mask-image:none!important;border-radius:14px 14px 0 0!important}
.eg.short button[data-full],.eg.open button[data-full]{border-radius:14px 14px 0 0!important}
.eg.short button[data-full]{border-radius:14px!important;max-height:none!important}
.eg .rdx{margin-top:0!important;background:#E8EFE6!important;border-top:1px solid rgba(20,32,24,.12)!important;border-radius:0 0 14px 14px!important;padding:14px 18px!important;min-height:52px!important;font:700 20px/1.3 'Open Sans',sans-serif!important;text-decoration:none!important}
.eg .rdx::after{content:" \2193"!important}.eg.open .rdx{margin-top:0!important}.eg.open .rdx::after{content:" \2191"!important}
.eg2.mas{display:flex!important;columns:auto!important;gap:20px;align-items:flex-start}
.eg2.mas>.ecol{flex:1 1 0;min-width:0;list-style:none}.eg2.mas>.ecol>ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px}
.eg2.mas .eg{margin:0!important}
/* 3. phone: swipe hint on the getback pictures */
.gbh{display:none!important}
@media(max-width:599px){.gbh{display:flex;position:absolute;right:0;top:130px;z-index:3;width:56px;height:96px;border-radius:0;background:none;color:#fff;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .3s}
 .gbh.on{opacity:1;animation:gbn 1.4s ease-in-out infinite}.gbh svg{width:32px;height:32px;margin-left:0;filter:drop-shadow(0 1px 4px rgba(0,0,0,.5))}}
@keyframes gbn{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}
@media(prefers-reduced-motion:reduce){.gbh.on{animation:none}}
/* 4. phone: Robbie photo a true circle, whole head visible */
@media(max-width:599px){.rob.v-b .ph img{width:220px!important;height:220px!important;max-width:220px!important;aspect-ratio:1/1!important;border-radius:50%!important;object-fit:cover!important;object-position:50% 8%!important;border:6px solid #fff!important;margin:0 auto;display:block}}
/* 5. tablet 600-1099: hero one centred column, stack centred, button and guarantee centred, never cut */
@media(min-width:600px) and (max-width:1099px){.hero{min-height:0!important;height:auto!important;padding-top:64px!important;padding-bottom:72px!important}
 .hero .hg{display:flex!important;flex-direction:column;align-items:center;text-align:center;row-gap:0}
 .hero .ht{text-align:center;width:100%;max-width:720px}.hero .ht h1{text-align:center}.hero .lead{margin-left:auto!important;margin-right:auto!important;text-align:center}
 .hero .hv{width:100%;max-width:min(560px,calc(100% - 72px));margin:40px auto 0!important;align-self:center}.hero .stk{max-width:560px!important;margin:0 auto}
 .hero .cta{margin:40px auto 0!important;align-items:center!important;width:max-content;max-width:100%}
 .hero .cap{text-align:center!important;margin-left:auto!important;margin-right:auto!important;max-width:32em!important}
 .close .cta{margin-left:auto!important;margin-right:auto!important}}
/* R14: why it works (s12) */
.why{background:#E8EFE6;overflow-x:clip}.why .in{max-width:1120px}
.why .wa{display:grid;gap:28px;align-items:stretch;text-align:left}.why .wa>*{min-width:0}
.why .wr{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.why .wr li{display:flex;align-items:flex-start;gap:18px;background:#F1F5F0;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:none;padding:24px;color:#26382C}
.why .wr li>div{flex:1 1 auto;min-width:0}.why .wr h3{font-size:24px;margin:2px 0 8px;color:#26382C}.why .wr p{margin:0;font:400 20px/1.5 'Open Sans',sans-serif;color:#26382C}
.why .wi{flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:#344C3D;color:#fff;display:flex;align-items:center;justify-content:center}.why .wi svg{width:26px;height:26px}
.why .wch{margin:0;background:#26382C;color:#fff;border-radius:16px;padding:24px 24px 26px;display:flex;flex-direction:column}
.why .wch svg{width:100%;height:auto;display:block}.why .wch rect{fill:#E8EFE6}.why .wch .ax{fill:#E8EFE6;font:600 20px 'Open Sans',sans-serif}
.why .wx{margin:14px 0 4px;font:700 30px/1.1 Georgia,serif;color:#fff}.why .wch figcaption{font:600 20px/1.45 'Open Sans',sans-serif;color:#E8EFE6}
@media(min-width:900px){.why .wa{grid-template-columns:1fr 1fr;gap:32px}.why .wch{padding:28px 32px 30px}}
.why .wvs{display:grid;gap:20px;max-width:960px;margin:0 auto}
.why .wc{border-radius:16px;padding:26px 24px;text-align:left}.why .wc h3{font-size:22px;margin:0 0 16px;text-wrap:balance}
.why .wc.no{background:#F1F5F0;border:1px solid rgba(20,32,24,.12);color:#3C4A41}.why .wc.no h3{color:#5A6A5F}
.why .wc.yes{background:#26382C;color:#fff}.why .wc.yes h3{color:#fff}
.why .wc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.why .wc li{display:flex;gap:14px;align-items:flex-start;font:600 19px/1.45 'Open Sans',sans-serif}
.why .wc li svg{flex:0 0 26px;width:26px;height:26px;margin-top:1px}.why .wc.no li svg{color:#9A6B5B}
.why .wc.yes li svg circle{fill:#E8EFE6}.why .wc.yes li svg path{stroke:#26382C}
@media(min-width:768px){.why .wvs{grid-template-columns:1fr 1fr}.why .wc{padding:32px}}
.why .wstrip{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 12px;margin:0 -4px;align-items:stretch}
.why .wstrip .dc{flex:0 0 62%;scroll-snap-align:start;background:#F1F5F0;border:1px solid rgba(20,32,24,.10);border-radius:14px;box-shadow:0 4px 18px rgba(52,76,61,.10);overflow:hidden;margin:0}
.why .wstrip .dc.f2{opacity:.8}.why .wstrip .dc.f3{opacity:.6}.why .wstrip .dc.f4{opacity:.4}
.why .wstrip .dl{padding:10px 14px;margin:0;display:block!important;white-space:normal!important}.why .wstrip .dl b,.why .wstrip .dl span{display:block!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:18px;line-height:1.35}
.why .wmore{flex:0 0 38%;display:flex;align-items:center;justify-content:center;font:700 20px 'Open Sans',sans-serif;color:#4A6553;border:2px dashed rgba(52,76,61,.3);border-radius:14px;opacity:.6}
.why .wsent{max-width:760px;margin:32px auto 0;font:600 22px/1.5 'Open Sans',sans-serif;color:#26382C;text-align:center}
@media(min-width:768px){.why .wstrip{overflow:visible}.why .wstrip .dc{flex:1 1 0}.why .wmore{flex:0 0 120px}}
/* R17: why it works as things you can do (Jeff 11 Oct, no graph) */
@media(max-width:599px){.why .wr2 li{flex-direction:column;gap:12px}.why .wr2 h3{font-size:21px!important}
 .wbars{display:flex!important;flex-direction:column;height:auto!important;gap:12px;align-items:flex-start!important}.wbars figure{width:calc(var(--h) * .8 + 20%);height:96px!important;position:relative}.wbars .wp{height:100%}
 .wbars figcaption{position:absolute;left:10px;bottom:10px;min-height:0!important;background:rgba(255,255,255,.94);border-radius:8px;padding:4px 10px;font-size:20px!important;text-align:left!important;white-space:nowrap}}
.why .wr2{max-width:1040px;margin:0 auto}.why .wsent{margin:24px auto 20px}
@media(min-width:1024px){.why.s{padding-bottom:64px!important}}
@media(min-width:900px){.why .wr2{flex-direction:row}.why .wr2 li{flex:1 1 0}}
.why .wv{max-width:1040px;margin:0 auto;padding:0;list-style:none;text-align:left}
.why .wp{display:block;width:100%;object-fit:cover;border-radius:12px;background:#E8EFE6}
.why figure{margin:0}.why figcaption,.why .wv b{font:700 20px/1.3 'Open Sans',sans-serif;color:#26382C}.why .wv p{margin:4px 0 0;font:400 19px/1.45 'Open Sans',sans-serif;color:#3C4A41}
.wbars{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:end;height:420px}.wbars figure{height:var(--h);display:flex;flex-direction:column;gap:8px}.wbars .wp{flex:1 1 auto;min-height:0}.wbars figcaption{font-size:20px!important;text-align:center;line-height:1.2!important}
@media(min-width:768px){.wbars{gap:20px;height:320px}}
.wstairs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}.wstairs .st{margin-bottom:calc(var(--n) * 44px);background:#F1F5F0;border:1px solid rgba(20,32,24,.10);border-radius:14px;padding:8px;display:flex;flex-direction:column;gap:8px;text-align:center}.wstairs .wp{aspect-ratio:1}.wstairs b{font-size:16px!important}
@media(min-width:768px){.wstairs{gap:20px}.wstairs .st{margin-bottom:calc(var(--n) * 64px);padding:12px}.wstairs b{font-size:20px!important}}
.wba{display:grid;gap:20px}@media(min-width:768px){.wba{grid-template-columns:1fr 1fr}}
.wbc{border-radius:16px;padding:26px 24px}.wbc h3{font-size:22px;margin:0 0 16px}.wbc.no{background:#F1F5F0;border:1px solid rgba(20,32,24,.12)}.wbc.yes{background:#26382C}.wbc.yes h3,.wbc.yes li{color:#fff}
.wbc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.wbc li{display:flex;gap:14px;align-items:flex-start;font:600 19px/1.45 'Open Sans',sans-serif;color:#26382C}.wbc li svg{flex:0 0 26px;width:26px;height:26px}.wbc.no li svg{color:#9A6B5B}.wbc.yes li svg circle{fill:#E8EFE6}.wbc.yes li svg path{stroke:#26382C}
.wchk{display:flex;flex-direction:column;gap:12px}.wchk li{display:flex;gap:16px;align-items:center;background:#F1F5F0;border:1px solid rgba(20,32,24,.10);border-radius:14px;padding:12px}.wchk .wp{flex:0 0 96px;width:96px;height:96px}.wchk li>div{flex:1 1 auto}.wchk li>svg{flex:0 0 32px;width:32px;height:32px}
.wlad{display:flex;flex-direction:column;gap:0;border-left:8px solid #344C3D;border-right:8px solid #344C3D;border-radius:6px;padding:0 16px}.wlad li{display:flex;gap:16px;align-items:center;padding:16px 0;border-bottom:6px solid #344C3D}.wlad li:last-child{border-bottom:0}.wlad .wp{flex:0 0 100px;width:100px;height:100px}
.wcards{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:600px){.wcards{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.wcards{grid-template-columns:repeat(4,1fr)}}
.wcd{background:#F1F5F0;border:1px solid rgba(20,32,24,.10);border-radius:14px;padding:12px}.wcd .wp{aspect-ratio:4/3;margin-bottom:10px}
.wpath{display:flex;flex-direction:column;gap:28px;position:relative;padding-left:0}.wpath::before{content:"";position:absolute;left:59px;top:40px;bottom:40px;border-left:4px dashed #8FA496}
.wpath li{display:flex;align-items:center;gap:20px;position:relative}.wpath li:nth-child(even){margin-left:40px}.wpath .rd{flex:0 0 120px;width:120px;height:120px;border-radius:50%;border:5px solid #fff;box-shadow:0 4px 16px rgba(52,76,61,.18)}
@media(min-width:768px){.wpath{flex-direction:row;justify-content:space-between}.wpath::before{left:60px;right:60px;top:64px;bottom:auto;border-left:0;border-top:4px dashed #8FA496}.wpath li{flex-direction:column;text-align:center;flex:1 1 0}.wpath li:nth-child(even){margin-left:0;margin-top:60px}.wpath .rd{width:128px;height:128px;flex:0 0 128px}}
.wtrack{display:flex;flex-direction:column;gap:22px;position:relative}.wtrack::before{content:"";position:absolute;left:31px;top:20px;bottom:20px;width:4px;background:#344C3D}
.wtrack li{display:flex;align-items:center;gap:18px;position:relative}.wtrack .ic{flex:0 0 66px;width:66px;height:66px;border-radius:50%;background:#E8EFE6;border:4px solid #344C3D;display:flex;align-items:center;justify-content:center;font-size:32px}
@media(min-width:768px){.wtrack{flex-direction:row;justify-content:space-between}.wtrack::before{left:40px;right:40px;top:31px;bottom:auto;width:auto;height:4px}.wtrack li{flex-direction:column;text-align:center;flex:1 1 0}}
.wfilm{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;background:#26382C;border-radius:16px;padding:16px;max-width:1040px}.wfilm figure{flex:0 0 170px;scroll-snap-align:start}.wfilm .wp{aspect-ratio:3/4}.wfilm figcaption{color:#fff!important;font-size:17px!important;margin-top:8px}
.wmag{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.wmag .big{grid-column:1/-1;position:relative}.wmag .big .wp{aspect-ratio:16/9}.wmag .big figcaption{margin-top:10px}.wmag .big figcaption b{display:block}.wmag .wp{aspect-ratio:1}.wmag figcaption b{font-size:16px!important}
@media(min-width:900px){.wmag{grid-template-columns:2fr 1fr;grid-template-rows:repeat(3,auto)}.wmag .big{grid-column:1;grid-row:1/4}.wmag .big .wp{aspect-ratio:auto;height:440px}.wmag figure:not(.big){display:flex;gap:12px;align-items:center}.wmag figure:not(.big) .wp{width:120px;flex:0 0 120px}.wmag figcaption b{font-size:20px!important}}
/* R18 (11 Oct): 1 curved arrow up the bars; 2 laptop carousel edge fades; 3 full email lightbox */
.why .wv.wbars,.why .wv.wstairs{position:relative}.why .wv.wbars{padding-top:56px;box-sizing:content-box}.why .wv.wstairs{padding-top:56px}
@media(min-width:768px){.why .wsent{margin-bottom:0!important}.why .wv.wbars{height:296px}}
@media(min-width:1024px){.why.s{padding-bottom:40px!important}}
.warr{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:2}
.warr path{fill:none;stroke:#344C3D;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:599px){.why .wv.wbars{padding-top:0;padding-bottom:48px;box-sizing:border-box}.wbars figure{width:calc(var(--h) * .7 + 8%)}}
.gbs{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%)}
@media(min-width:1024px){.gbs{padding-left:64px;padding-right:64px;scroll-padding:0 64px;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 120px,#000 calc(100% - 120px),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 120px,#000 calc(100% - 120px),transparent 100%)}}
/* R18: Why it works + getback merged */
.getback.merged{margin-top:56px}@media(min-width:1024px){.why.v-k.s{padding-bottom:72px!important}}
.why.v-k .wsub{font:600 22px/1.45 'Open Sans',sans-serif;color:#4A6553;margin:12px 0 28px;text-align:left}
.getback .wlead{font:700 22px/1.4 'Open Sans',sans-serif;color:#4A6553;text-align:center;margin:8px 0 16px}
@media(min-width:1100px){.why.v-k .wtop{display:block}.why.v-k .wl h2{text-align:left;margin-bottom:32px}.why.v-k .wr2{flex-direction:row;gap:24px;margin:0}.why.v-k .wr2 li{flex:1 1 0}}
/* R25 Josh: align boxes + slider to the same column edges as the title */
.why.v-k .wr2{width:100%;max-width:none;margin:0}
@media(min-width:900px){.why.v-k .wr2{flex-direction:row;gap:24px}.why.v-k .wr2 li{flex:1 1 0}}
@media(min-width:1024px){.why .getback .gbs{padding-left:0!important;padding-right:0!important;scroll-padding:0!important;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 120px),transparent 100%)!important;mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 120px),transparent 100%)!important}
 .why .getback .gbs.scl{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 100px,#000 calc(100% - 120px),transparent 100%)!important;mask-image:linear-gradient(to right,transparent 0,#000 100px,#000 calc(100% - 120px),transparent 100%)!important}
 .why .getback .gbs.end{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 100px,#000 100%)!important;mask-image:linear-gradient(to right,transparent 0,#000 100px,#000 100%)!important}}
.eg .rdx::after{content:""!important}.eg.open .rdx::after{content:""!important}
/* R22 Josh: emails fade into the email's own dark background; label is white text inside the dark fade, nothing pops out */
.eg .rdx{display:block!important;position:relative!important;z-index:2;width:100%!important;margin:-110px 0 0!important;padding:70px 18px 20px!important;min-height:0!important;height:auto!important;border:0!important;border-radius:0 0 14px 14px!important;background:linear-gradient(to bottom,rgba(24,24,24,0) 0%,rgba(24,24,24,.88) 55%,#181818 100%)!important;color:#fff!important;font:600 20px/1.3 'Open Sans',sans-serif!important;text-align:center!important;text-decoration:none!important;box-shadow:none!important;cursor:pointer}
.eg .rdx::after{content:" \203A"!important;display:inline!important}
.eg.short .rdx{display:none!important}
.elb{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;background:rgba(10,15,12,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:24px}
.elb.on{display:flex}.elb .sh{position:relative;max-width:720px;width:100%;max-height:90vh;overflow:auto;border-radius:14px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.4);overscroll-behavior:contain}
.elb .sh img{display:block;width:100%;height:auto}
.elb .x{position:fixed;top:16px;right:16px;width:52px;height:52px;border-radius:50%;border:0;background:#fff;color:#26382C;font:700 30px/52px 'Open Sans',sans-serif;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.3);z-index:2}
body.elb-lock{overflow:hidden}
@media(max-width:599px){.elb{padding:72px 12px 24px;align-items:center}.elb .sh{max-width:none;max-height:calc(100vh - 96px);border-radius:14px}}
/* R32: GHL wrappers add 10px sides and 40px top around the page; remove them (no effect outside GHL) */
.c-section:has(.pg),.c-row:has(.pg),.c-column:has(.pg),.c-section:has(.pg)>.inner,.c-row:has(.pg)>.inner,.c-column:has(.pg)>.inner{padding:0!important;margin:0!important;max-width:none!important}
/* R34: 2.5 fade */
.eg2 .eg.half{max-height:190px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent 98%);mask-image:linear-gradient(180deg,#000 30%,transparent 98%);pointer-events:none}
.egm{margin-top:-8px!important}
/* R33: sticky CTA is just a floating button: no white bar, lifted clear of Safari's bottom toolbar */
@media(max-width:599px){.sticky{background:transparent!important;border-top:0!important;box-shadow:none!important;pointer-events:none;bottom:calc(20px + env(safe-area-inset-bottom))!important;padding:0 28px!important}.sticky .rpd-btn{pointer-events:auto;box-shadow:0 6px 18px rgba(38,56,44,.28)}
 .sticky{visibility:hidden;opacity:0;transform:translateY(160%);transition:transform .45s ease,opacity .45s ease,visibility 0s linear .45s}.sticky.on{visibility:visible;opacity:1;transform:none;transition-delay:0s}.sticky:not(.on) .rpd-btn{pointer-events:none}}
/* R32: phone side padding 24 -> 28, more top, scrollers bleed to the new edge */
@media(max-width:599px){.s{padding:68px 28px 60px!important}.s.hero{padding-top:64px!important}
 .stk.row,.qual,.drow{margin-left:-28px!important;margin-right:-28px!important;padding-left:28px!important;padding-right:28px!important;scroll-padding:0 28px!important}
 .drow{margin-bottom:48px!important}.mq{margin:0 -28px}
 .gbw{margin:0 -28px}.gbs{padding-left:28px;padding-right:28px;scroll-padding:0 28px}}
@media(min-width:600px) and (max-width:1023px){.rob .cta.left{align-self:center;align-items:center;margin-left:auto;margin-right:auto}.rob .cap{justify-content:center;text-align:center!important;margin-left:auto!important;margin-right:auto!important}.rob.v-b .ph img{width:320px;max-width:100%;aspect-ratio:1/1;border-radius:50%;object-fit:cover;object-position:50% 12%;border:8px solid #fff;margin:0 auto;display:block}}
