:root{
  --black:#0B0B0B; --ink:#0F0F10; --white:#FFFFFF; --soft:#FAFAFA;
  --text:#3F3F46; --muted:#71717A; --muted-d:#A1A1AA; --line:#EDEDED; --line-d:#27272A;
  --amber:#F5A300; --amber-h:#FFB31A;
  --shadow:0 0 0 1px rgba(15,15,16,.06),0 24px 48px -16px rgba(15,15,16,.18);
  --shadow-sm:0 0 0 1px rgba(15,15,16,.06),0 10px 24px -10px rgba(15,15,16,.14);
  --font:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --wm:'Lilita One',var(--font);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);font-size:17px;line-height:1.65;color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--font);margin:0;color:var(--ink);letter-spacing:-.025em;line-height:1.12}
h1{font-size:clamp(2.2rem,5vw,3.7rem);font-weight:700;max-width:17ch;margin:0 auto}
h2{font-size:clamp(1.75rem,3.4vw,2.6rem);font-weight:600}
h3{font-size:1.15rem;font-weight:600;letter-spacing:-.01em;margin:18px 0 8px}
p{margin:0 0 14px}
.wrap{max-width:1120px;margin:0 auto;padding:0 28px}
.narrow{max-width:780px}
.center{text-align:center}
.mt{margin-top:48px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px 12px;z-index:100}
section{padding:112px 0;border-top:1px solid var(--line)}
.hero{border-top:0}
.head{margin-bottom:56px}
.label{font-size:.74rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.card{background:var(--white);border-radius:18px;box-shadow:var(--shadow)}
.pad{padding:32px}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.header-in{display:flex;align-items:center;justify-content:space-between;height:68px}
.wordmark{text-decoration:none;color:var(--ink)}
.wm-name{font-family:var(--wm);font-size:1.5rem;letter-spacing:.02em;line-height:1}
.wm-i{position:relative;display:inline-block}
.wm-flame{position:absolute;left:50%;top:-.42em;width:.42em;height:.56em;transform:translateX(-50%)}

/* buttons */
.btn{font-family:var(--font);font-weight:600;border:0;border-radius:999px;background:var(--amber);color:#111;cursor:pointer;transition:background .15s,transform .15s}
.btn:hover{background:var(--amber-h);transform:translateY(-1px)}
.btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.btn-sm{font-size:.84rem;padding:0 16px;height:36px;display:inline-flex;align-items:center}
.btn-lg{font-size:.98rem;padding:0 28px;height:48px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 26px -12px rgba(245,163,0,.6)}

/* hero */
.hero{padding:88px 0 112px}
.hero .sub{font-size:1.2rem;color:var(--text);max-width:44ch;margin:24px auto 56px;text-wrap:balance}
.video{position:relative;margin:0 auto;max-width:860px;overflow:hidden;aspect-ratio:16/9;background:#111}
.video img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;filter:brightness(.78)}
.video-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.play{width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.96);position:relative;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.play::after{content:"";position:absolute;left:34px;top:27px;border-left:22px solid #111;border-top:15px solid transparent;border-bottom:15px solid transparent}
.cta-block{margin-top:48px;display:flex;flex-direction:column;align-items:center;gap:16px}
.offer-text{margin:0;font-size:.95rem;color:var(--muted)}

/* why */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.why-grid p{margin:0;color:var(--text)}
.ico{display:inline-flex;width:44px;height:44px;border-radius:12px;background:#F4F4F5;color:var(--ink);align-items:center;justify-content:center}
.ico svg{width:22px;height:22px}

/* learn */
.learn{background:var(--soft)}
.learn-list{list-style:none;margin:0 auto;max-width:780px;padding:12px 36px}
.learn-list li{display:flex;gap:16px;align-items:flex-start;padding:20px 0;border-bottom:1px solid var(--line);font-size:1.06rem;color:var(--ink)}
.learn-list li:last-child{border-bottom:0}
.chk{flex:0 0 22px;width:22px;height:22px;margin-top:2px}

/* testimonials */
.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.t{margin:0;display:flex;flex-direction:column;justify-content:space-between}
.t blockquote{margin:0}
.t blockquote p{font-size:1.08rem;font-weight:500;line-height:1.55;color:var(--ink)}
.t .t-es{font-size:.86rem;font-weight:400;color:var(--muted);font-style:italic;margin-bottom:24px}
.t figcaption{font-size:.9rem;font-weight:600;color:var(--ink);padding-top:16px;border-top:1px solid var(--line)}

/* gallery */
.gallery{padding:0 0 112px;border-top:0}
.g-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.g-grid img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}

/* about (black band) */
.dark{background:var(--black);color:#D4D4D8;border-top:0}
.dark h2{color:var(--white);margin-bottom:24px}
.dark .label{color:var(--muted-d)}
.about-grid{display:grid;grid-template-columns:5fr 7fr;gap:72px;align-items:center}
.about-img{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;border-radius:18px}
.about p{font-size:1.05rem}
.creds-row{list-style:none;padding:0;margin:36px 0 24px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.creds-row li{background:#161618;border:1px solid var(--line-d);border-radius:14px;padding:18px 20px}
.creds-row strong{display:block;font-size:1.3rem;font-weight:700;color:var(--white);letter-spacing:-.02em}
.creds-row span{display:block;font-size:.86rem;color:var(--muted-d);line-height:1.4;margin-top:4px}
.dark .toggle{border-color:var(--line-d)}
.dark .toggle summary{color:var(--white)}
.dark .toggle ul{color:#D4D4D8}

/* toggles */
.toggle{border-bottom:1px solid var(--line)}
.toggle:last-child{border-bottom:0}
.toggle summary{cursor:pointer;list-style:none;padding:22px 40px 22px 0;font-weight:600;color:var(--ink);position:relative}
.toggle summary::-webkit-details-marker{display:none}
.toggle summary::after{content:"+";position:absolute;right:4px;top:17px;font-size:1.5rem;font-weight:300;color:var(--muted)}
.toggle[open] summary::after{content:"–"}
.toggle p,.toggle ul{margin:0 0 22px;color:var(--text)}
.toggle ul{padding-left:20px}
.toggle li{margin-bottom:6px}
.about .toggle{border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d)}
.faq-list{padding:6px 32px}

/* final */
.final{padding:120px 0 128px}
.final-flame{width:30px;height:40px;margin:0 auto 24px;display:block}
.final .sub{font-size:1.1rem;margin:16px 0 40px}
.final-price{color:var(--muted);font-size:.92rem;margin:20px 0 0}

.site-footer{background:var(--black);color:var(--muted-d);text-align:center;padding:32px 24px;font-size:.88rem}
.site-footer p{margin:0}

/* checkout */
.checkout{border:0;border-radius:20px;padding:0;max-width:440px;width:calc(100% - 32px);color:var(--ink);box-shadow:var(--shadow)}
.checkout::backdrop{background:rgba(10,10,10,.55);backdrop-filter:blur(3px)}
.c-form{padding:36px 30px 30px;display:flex;flex-direction:column}
.c-form h2{font-size:1.4rem;margin-bottom:6px}
.c-price{font-weight:600;color:var(--muted);margin-bottom:18px}
.c-form label{font-size:.85rem;font-weight:600;margin:10px 0 6px}
.c-form input{font:inherit;padding:12px 14px;border:1px solid #E4E4E7;border-radius:12px}
.c-form input:focus{outline:2px solid var(--amber);border-color:transparent}
.c-pay{margin-top:22px}
.c-error{color:#B42318;font-size:.9rem;margin:10px 0 0}
.c-msg{background:#F4F4F5;border-radius:12px;padding:12px 14px;margin:14px 0 0;font-size:.92rem}
.c-note{font-size:.82rem;color:var(--muted);margin:12px 0 0;text-align:center}
.c-close-form{position:absolute;right:10px;top:8px;margin:0}
.c-close{background:none;border:0;font-size:1.6rem;cursor:pointer;color:var(--muted);padding:6px 10px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}


/* ===== v4: rhythm, colour, motion ===== */
.dark{background:var(--black);color:#C9C9CF;border-top:0}
.dark h1,.dark h2,.dark h3{color:var(--white)}
.dark .label{color:#8E8E96}
.dark + .dark{border-top:1px solid #1C1C1F}

/* header on black */
.site-header{background:#0B0B0B;border-bottom:1px solid #1C1C1F}
.wordmark{color:var(--white)}
.wm-flame{filter:drop-shadow(0 0 4px rgba(245,163,0,.55));animation:flicker 4.5s ease-in-out infinite}
@keyframes flicker{0%,100%{filter:drop-shadow(0 0 3px rgba(245,163,0,.45))}50%{filter:drop-shadow(0 0 9px rgba(245,163,0,.9))}}

/* hero */
.hero{position:relative;overflow:hidden;padding:96px 0 120px}
.hero .wrap{position:relative}
.hero .sub{color:#B4B4BC}
.video{max-width:1000px;aspect-ratio:16/10;border-radius:20px;box-shadow:0 0 0 1px rgba(255,255,255,.07),0 40px 80px -30px rgba(0,0,0,.9)}
.video img{object-position:50% 38%;filter:brightness(.82) contrast(1.05)}

.g-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,min(26vw,440px));gap:4px;max-width:none;padding:0}
.g-grid img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;border-radius:0}
.g-a{grid-column:1;grid-row:1/3}
.g-b{grid-column:2/4;grid-row:1}
.g-c{grid-column:4;grid-row:1}
.g-d{grid-column:2;grid-row:2}
.g-e{grid-column:3;grid-row:2}
.g-f{grid-column:4;grid-row:2}

.about-img{box-shadow:0 0 0 1px rgba(255,255,255,.06)}

/* final */
.final{position:relative;overflow:hidden}
.final .sub{color:#B4B4BC}
.final-flame-wrap{position:relative;width:30px;height:40px;margin:0 auto 28px}
.final-flame{position:relative;width:30px;height:40px;margin:0;display:block}
.site-footer{border-top:1px solid #1C1C1F}


/* ===== v5 ===== */
section{padding:128px 0}
.head{margin-bottom:60px}
.head h2{max-width:22ch;margin-left:auto;margin-right:auto;text-wrap:balance}

/* hero: heading and subhead share one measure */
.hero{padding:104px 0 128px}
.hero-text{max-width:780px;margin:0 auto}
.hero h1{max-width:none;font-size:clamp(2.35rem,7.4vw,4.5rem);letter-spacing:-.035em;line-height:1.06;text-wrap:balance}
.hero .sub{max-width:none;font-size:clamp(1.06rem,1.55vw,1.3rem);line-height:1.55;margin:26px auto 60px;text-wrap:balance;color:#B9B9C1}
.video{max-width:850px;aspect-ratio:16/10}
.video img{object-position:50% 30%;filter:brightness(.9) contrast(1.03)}

/* price block, no outline */
.price{margin:0;text-align:center;line-height:1.3}
.price p{margin:0}
.price-main{display:flex;align-items:baseline;justify-content:center;gap:10px}
.price-main b{font-size:1.32rem;font-weight:700;letter-spacing:-.02em;color:var(--white)}
.price-main s{font-size:.9rem;color:#7C7C84;text-decoration-thickness:1px}
.price-note{margin-top:8px!important;display:inline-flex;align-items:center;gap:8px;font-size:.8rem;color:#9A9AA2;letter-spacing:.01em}
.dot{width:7px;height:7px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 3px rgba(245,163,0,.18);animation:pulse 3.2s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 3px rgba(245,163,0,.16)}50%{box-shadow:0 0 0 6px rgba(245,163,0,.05)}}
.cta-block{gap:20px}
.final .price{margin-top:24px}

/* amber details band */
.details{background:var(--amber);padding:72px 0;border-top:0;position:relative}
.details-row{display:grid;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:1040px;padding:0}
.details-row>div{padding:8px 26px;border-left:1px solid rgba(11,11,11,.16);text-align:left}
.details-row>div:first-child{border-left:0}
.d-ico{display:inline-flex;width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(11,11,11,.8);color:#0B0B0B;align-items:center;justify-content:center;margin-bottom:18px}
.d-ico svg{width:20px;height:20px}
.details dt{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(11,11,11,.62);margin-bottom:6px}
.details dd{margin:0;white-space:nowrap;font-size:clamp(1.2rem,1.9vw,1.6rem);font-weight:700;letter-spacing:-.025em;line-height:1.2;color:#0B0B0B}
.details dd.d-note{white-space:normal;font-size:.84rem;font-weight:500;letter-spacing:0;color:rgba(11,11,11,.7);margin-top:6px}

/* benefit cards */
.why{background:var(--white)}
.why-grid{gap:24px}
.why .card{box-shadow:0 0 0 1px rgba(15,15,16,.06),0 20px 44px -24px rgba(15,15,16,.16)}
.why h3{font-size:1.18rem}

/* about with soft warm light */
.about{position:relative;overflow:hidden}
.about .wrap{position:relative}
.pull{margin:22px 0 8px;padding:0 0 0 22px;border-left:2px solid var(--amber)}
.pull p{font-size:clamp(1.25rem,2vw,1.5rem);font-weight:500;line-height:1.35;letter-spacing:-.02em;color:var(--white);margin:0 0 10px}
.pull cite{font-style:normal;font-size:.8rem;letter-spacing:.06em;color:#8E8E96}

/* learn on white */
.learn{background:var(--soft)}
.learn-list{padding:12px 36px;max-width:800px}
.learn-list li{color:var(--ink)}
.chk circle{fill:var(--ink)}.chk path{stroke:#fff}

/* testimonials on black */
.testimonials .t{background:#121214;border:1px solid #232327;border-radius:18px}
.testimonials .t blockquote p{color:#EDEDF0}
.testimonials .t .t-es{color:#8E8E96}
.testimonials .t figcaption{color:var(--white);border-top-color:#232327}

/* natural-colour gallery */
.gallery{padding:0;background:var(--black)}
.g-grid img{filter:none}

/* faq on white */
.faq{background:var(--white)}

/* final */
.final{padding:136px 0 144px}
.final .sub{margin:18px 0 40px}

/* ===== v7: chalk, sage and sage-charcoal ===== */
:root{
  --chalk:#F3ECE0; --white:#FFFFFF; --sage:#7E8466; --sage-d:#6E7458; --sage-l:#A9AD98;
  --deep:#1F231B; --deep-2:#282D23; --deep-line:#343A2E; --deep-h:#2E3428;
  --ink:#1F231B; --text:#3B3F35; --muted:#6F665D; --muted-d:#A9AD98;
  --line:rgba(31,35,27,.1); --line-d:#343A2E; --soft:#F3ECE0; --black:#1F231B;
  --amber:#F2B10D;
  --shadow:0 0 0 1px rgba(31,35,27,.05),0 24px 48px -18px rgba(31,35,27,.16);
}
body{background:var(--chalk);color:var(--text)}
h1,h2,h3{color:var(--ink)}
section{border-top:0}

/* buttons: sage-charcoal on light, chalk on dark or sage */
.btn{background:var(--deep);color:var(--chalk)}
.btn:hover{background:var(--deep-h)}
.btn-lg{box-shadow:0 12px 28px -14px rgba(31,35,27,.55)}
.btn:focus-visible{outline:2px solid var(--sage-d)}
.site-header .btn,.dark .btn,.sage .btn{background:var(--chalk);color:var(--deep)}
.site-header .btn:hover,.dark .btn:hover{background:var(--white)}
.site-header .btn:focus-visible,.dark .btn:focus-visible{outline-color:var(--chalk)}

/* header */
.site-header{background:var(--deep);border-bottom:1px solid var(--deep-line)}
.wordmark{color:var(--white)}
.wm-flame{filter:none;animation:none}

/* dark sections: deep sage-charcoal */
.dark{background:var(--deep);color:#D9D4C8}
.dark h1,.dark h2,.dark h3{color:var(--chalk)}
.dark + .dark{border-top:1px solid var(--deep-line)}

/* hero on chalk */
.hero{background:var(--chalk)}
.hero h1{color:var(--ink)}
.hero .sub{color:#4A4E42}
.video{background:#DCD6C8;box-shadow:0 0 0 1px rgba(31,35,27,.06),0 40px 80px -34px rgba(31,35,27,.45)}

/* price */
.price-main b{color:var(--ink)}
.price-main s{color:var(--muted)}
.price-note{color:var(--muted)}
.dot{background:var(--sage);box-shadow:0 0 0 3px rgba(126,132,102,.22)}
@keyframes pulse{0%,100%{box-shadow:0 0 0 3px rgba(126,132,102,.22)}50%{box-shadow:0 0 0 6px rgba(126,132,102,.06)}}

/* details band in sage */
.details{background:var(--sage-d)}
.details-row>div{border-left-color:rgba(255,255,255,.22)}
.d-ico{border-color:rgba(255,255,255,.85);color:var(--white)}
.details dt{color:var(--white);opacity:1}
.details dd{color:var(--white)}
.details dd.d-note{color:var(--white)}

/* benefits on chalk, white cards */
.why{background:var(--chalk)}
.why .card{background:var(--white);box-shadow:0 0 0 1px rgba(31,35,27,.05),0 20px 44px -24px rgba(31,35,27,.18)}
.ico{background:#ECEEE5;color:var(--deep)}

/* about on sage-charcoal with a soft sage light */
.creds-row li{background:var(--deep-2);border-color:var(--deep-line)}
.creds-row strong{color:var(--chalk)}
.creds-row span{color:var(--sage-l)}
.pull{border-left-color:var(--sage-l)}
.pull p{color:var(--chalk)}
.pull cite{color:var(--sage-l)}
.dark .toggle summary{color:var(--chalk)}
.dark .toggle ul{color:#D9D4C8}
.dark .toggle summary::after{color:var(--sage-l)}
.about-img{box-shadow:0 0 0 1px rgba(243,236,224,.06)}

/* learn on chalk, white card */
.learn{background:var(--chalk)}
.learn-list{background:var(--white)}
.learn-list li{color:var(--ink);border-bottom-color:var(--line)}
.chk circle{fill:var(--sage-d)}.chk path{stroke:#fff}

/* testimonials on sage, white cards */
.testimonials.dark{background:var(--sage-d);color:var(--white)}
.testimonials.dark h2{color:var(--white)}
.testimonials .t{background:var(--white);border:0;box-shadow:0 22px 44px -26px rgba(31,35,27,.45)}
.testimonials .t blockquote p{color:var(--ink)}
.testimonials .t .t-es{color:var(--muted)}
.testimonials .t figcaption{color:var(--ink);border-top-color:var(--line)}

/* gallery and faq on chalk */
.gallery{background:var(--chalk)}
.faq{background:var(--chalk)}
.faq-list{background:var(--white)}

/* final on chalk with a soft light */
.final{background:var(--chalk);border-top:1px solid var(--line)}
.final h2{color:var(--ink)}
.final .sub{color:#4A4E42}

/* footer */
.site-footer{background:var(--deep);color:var(--sage-l);border-top:0}

/* checkout */
.checkout{background:var(--white);color:var(--ink)}
.checkout::backdrop{background:rgba(31,35,27,.55)}
.c-form input{border-color:#DCD6C8}
.c-form input:focus{outline:2px solid var(--sage-d)}
.c-msg{background:var(--chalk)}

/* ===== v8: Chalk, sage and orange ===== */
:root{--sage:#6E7458; --orange:#EE9306; --orange-h:#E08504; --orange-t:#C26A00}
/* orange buttons, dark text */
.btn,.site-header .btn,.dark .btn,.sage .btn{background:var(--orange);color:#1F231B;font-weight:600;
  box-shadow:0 6px 18px rgba(238,147,6,.38);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.btn:hover,.site-header .btn:hover,.dark .btn:hover{background:var(--orange-h);transform:translateY(-1px);box-shadow:0 10px 26px rgba(224,133,4,.48)}
.btn:active{transform:none;box-shadow:0 4px 12px rgba(238,147,6,.3)}
.btn:focus-visible,.dark .btn:focus-visible{outline:3px solid #1F231B;outline-offset:3px}
.site-header .btn:focus-visible{outline:3px solid #FFFFFF;outline-offset:3px}
.site-header .btn{box-shadow:0 2px 10px rgba(238,147,6,.22)}
.btn-lg{height:52px;padding:0 28px;font-size:1rem;letter-spacing:-.005em;gap:10px}
.btn-lg::after{content:"\2192"/"";display:inline-block;font-weight:500;transition:transform .15s ease}
.btn-lg:hover::after{transform:translateX(3px)}
/* hero key word underline */
.hl{background:linear-gradient(transparent 76%,rgba(238,147,6,.85) 76%,rgba(238,147,6,.85) 92%,transparent 92%);padding:0 .04em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
/* price value in orange */
.price-main b{color:var(--orange-t);font-size:1.5rem}
.dot{background:var(--orange);box-shadow:0 0 0 3px rgba(238,147,6,.22)}
/* white cards pop off Chalk */
.why .card,.learn-list,.faq-list{background:#FFFFFF;box-shadow:0 0 0 1px rgba(31,35,27,.05),0 22px 46px -24px rgba(31,35,27,.24)}
.ico{background:var(--orange);color:#1F231B;border-radius:50%;box-shadow:0 4px 12px rgba(238,147,6,.3)}
.learn-list .chk circle{fill:var(--orange)}
.learn-list .chk path{stroke:#1F231B}

/* fade-up */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.js .reveal.in{opacity:1;transform:none}


@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
  .js .reveal{opacity:1;transform:none}
}

@media (max-width:900px){
  section{padding:88px 0}
  .details{padding:56px 0}
  .details-row{grid-template-columns:1fr 1fr;row-gap:36px}
  .details-row>div{padding:4px 22px}
  .details-row>div:nth-child(3){border-left:0}
  .head{margin-bottom:40px}
  .why-grid,.t-grid{grid-template-columns:1fr;gap:20px}
  .about-grid{grid-template-columns:1fr;gap:40px}
  .about-img{max-width:420px}
  .g-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(4,52vw);gap:3px}
  .g-a{grid-column:1;grid-row:1/3}.g-c{grid-column:2;grid-row:1}.g-d{grid-column:2;grid-row:2}
  .g-b{grid-column:1/3;grid-row:3}.g-e{grid-column:1;grid-row:4}.g-f{grid-column:2;grid-row:4}
}
@media (max-width:560px){
  body{font-size:16px}
  .details-row>div{padding:4px 0 4px 18px}
  .details-row>div:nth-child(odd){padding-left:0}
  .details dd{font-size:1.2rem}
  .d-ico{width:36px;height:36px;margin-bottom:14px}
  .hero .sub{margin:20px auto 40px;font-size:1.16rem;line-height:1.5}
  .pull{padding-left:18px}
  .wrap{padding:0 20px}
  .hero{padding:56px 0 72px}
  .wm-name{font-size:1.3rem}
  .btn-sm{padding:0 14px;height:34px;font-size:.8rem}
  .video{aspect-ratio:1/1;border-radius:16px}
  .hero{padding:56px 0 80px}
  .cta-block{margin-top:32px}
  .pad{padding:26px}
  .learn-list{padding:6px 22px}
  .faq-list{padding:4px 22px}
  .creds-row{grid-template-columns:1fr 1fr;gap:10px}
  .creds-row li{padding:14px}
}

/* details band: white cards on sage */
.details{background:#6E7458;padding:80px 0}
.details-row{grid-template-columns:repeat(4,1fr);gap:20px;max-width:1080px}
.details-row>div,.details-row>div:first-child{background:#FFFFFF;border:0;border-radius:18px;padding:28px 26px 26px;text-align:left;
  box-shadow:0 10px 30px rgba(20,25,15,.18),0 2px 6px rgba(20,25,15,.08);transition:transform .2s ease,box-shadow .2s ease}
@media (hover:hover){.details-row>div:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(20,25,15,.22),0 3px 8px rgba(20,25,15,.08)}}
.d-ico{width:42px;height:42px;border:0;background:#EEF0E8;color:#6E7458;margin-bottom:20px}
.details dt{color:#5E6357}
.details dd{color:#1F231B}
.details dd.d-note{color:#5E6357}
@media (max-width:900px){
  .details{padding:56px 0}
  .details-row{grid-template-columns:1fr 1fr;gap:14px;row-gap:14px}
  .details-row>div,.details-row>div:first-child,.details-row>div:nth-child(odd){padding:22px 20px 20px}
}
@media (max-width:560px){
  .details dd{font-size:1.12rem}
  .d-ico{width:36px;height:36px;margin-bottom:14px}
}

.details-row>div:last-child dd:not(.d-note){color:#C26A00}
@media (max-width:560px){.details-row>div:last-child dd:not(.d-note){font-size:1.2rem}}

/* v8 hero: tighter top, headline about 10% smaller */
.hero{padding-top:80px}
.hero h1{font-size:clamp(2.1rem,6.65vw,4.05rem)}
.hero .sub{margin-top:22px}
@media (max-width:560px){.hero{padding-top:44px}.hero .sub{margin-top:16px}}
.hero-text{max-width:640px}
.hero .sub{font-size:clamp(1.06rem,1.45vw,1.2rem)}
/* one sage, equal cards, clean price note */
.details-row{align-items:stretch}
.details-row>div{display:flex;flex-direction:column;justify-content:flex-start;height:100%;margin:0}
.details dt,.details dd{margin-left:0}
.details dd.d-note{text-wrap:balance}
.details-row{grid-auto-rows:1fr}
.why h3{line-height:1.3}

/* v9 hero: longer Spanish headline, more video above the fold */
.hero{padding-top:32px}
.hero-text{max-width:760px}
.hero h1{font-size:clamp(1.85rem,3.75vw,3.3rem);line-height:1.08}
.hero .sub{font-size:clamp(1.04rem,1.38vw,1.2rem);margin:26px auto 22px;max-width:none}
.video{max-width:900px;aspect-ratio:16/9}
@media (max-width:560px){.hero{padding-top:30px}.hero h1{font-size:1.9rem}.hero .sub{margin:18px auto 18px;font-size:1.02rem}}
@media (max-width:900px){.video{aspect-ratio:1/1}}
@media (min-width:901px){.g-b{grid-row:2}.g-d{grid-row:1}.g-e{grid-row:1}}
.details dd{white-space:normal;text-wrap:balance}
.hero .sub{text-wrap:pretty}
@media (min-width:901px){.hero .sub{max-width:min(760px,54vw)}}
/* v11: even 3-line mobile headline (break after "del" only on phones) */
br.m{display:none}
@media (max-width:560px){br.m{display:inline}.hero h1{margin-left:-8px;margin-right:-8px;font-size:min(calc((100vw - 24px) / 14.2),1.85rem);letter-spacing:-.045em;line-height:1.16}.hero .sub{font-size:.97rem;margin:16px auto 20px;text-wrap:balance}}
/* v13: event details as one ticket card on the sage band */
.ticket{max-width:960px;margin:0 auto;background:#FFFFFF;border-radius:28px;overflow:hidden;display:grid;grid-template-columns:1.4fr 1fr;
  box-shadow:0 34px 70px -24px rgba(16,20,12,.55),0 10px 24px rgba(16,20,12,.14)}
.tk-facts{padding:52px 56px;display:flex;flex-direction:column;justify-content:center}
.tk-date{margin:0;font-size:clamp(2rem,3.3vw,2.85rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;color:#1F231B;text-wrap:balance}
.tk-rows{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.tk-rows li{display:flex;align-items:center;gap:14px;font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:600;letter-spacing:-.015em;line-height:1.2;color:#1F231B}
.tk-rows svg{width:26px;height:26px;flex:none;color:#EE9306}
.tk-buy{position:relative;padding:52px 48px;border-left:2px dashed #D3D6CA;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.tk-buy::before,.tk-buy::after{content:"";position:absolute;left:-15px;width:28px;height:28px;border-radius:50%;background:#6E7458}
.tk-buy::before{top:-14px}.tk-buy::after{bottom:-14px}
.tk-price{margin:0;font-size:clamp(2rem,3vw,2.6rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;color:#C26A00;white-space:nowrap}
.tk-note{margin:10px 0 26px;font-size:.95rem;line-height:1.45;color:#5E6357;text-wrap:balance}
.tk-buy .btn{white-space:nowrap}
.tk-spots{margin:14px 0 0;font-size:.88rem;line-height:1.4;color:#5E6357}
.tk-spots[hidden]{display:none}
@media (max-width:860px){
  .ticket{grid-template-columns:1fr;border-radius:24px}
  .tk-facts{padding:34px 28px 30px}
  .tk-buy{padding:30px 28px 32px;border-left:0;border-top:2px dashed #D3D6CA}
  .tk-buy::before,.tk-buy::after{top:-15px;bottom:auto}
  .tk-buy::before{left:-14px}.tk-buy::after{left:auto;right:-14px}
}
@media (max-width:560px){
  .tk-date{font-size:1.9rem}
  .tk-rows{margin-top:22px;gap:12px}
  .tk-rows li{font-size:1.15rem}
  .tk-price{font-size:2rem}
  .tk-note{margin:8px 0 22px}
  .tk-buy .btn{width:100%}
  .tk-spots{align-self:center}
}

/* v14: audit fixes */
/* 2. legible small text, 44px header tap area */
.price-note{font-size:.9rem;color:#5E6357}
.price-main s{font-size:1rem;color:#5E6357;text-decoration-thickness:1.5px}
.creds-row span{font-size:.9rem;line-height:1.45}
.site-header .btn-sm{position:relative}
.site-header .btn-sm::before{content:"";position:absolute;left:-4px;right:-4px;top:50%;height:44px;transform:translateY(-50%)}
/* 3. tablet: cap the hero video so the button shows */
@media (min-width:600px) and (max-width:1024px){.hero .video{max-height:50vh;aspect-ratio:auto;height:min(50vh,calc((100vw - 56px) * .75))}}
/* 4. motion */
.js .reveal{transform:translateY(12px);transition:opacity 450ms cubic-bezier(.23,1,.32,1),transform 450ms cubic-bezier(.23,1,.32,1)}
.js .reveal.in{transform:none}
.btn:active,.btn:hover:active{transform:scale(.97)}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none}.btn:active{transform:none}}
/* 5. no decorative hairlines */
.final{border-top:0}
.dark + .dark{border-top:0}
.t figcaption,.testimonials .t figcaption{border-top:0;padding-top:20px}
.about .toggle{border-top:0;border-bottom:0}
.about .toggle summary{padding-top:14px;padding-bottom:14px}
/* 6. testimonials: one featured, two smaller */
.t-grid{grid-template-columns:1.25fr 1fr;grid-template-rows:auto auto;gap:24px;max-width:1040px;margin:0 auto;align-items:start}
.t-feat{grid-row:1 / span 2;align-self:stretch;justify-content:center}
.t-feat blockquote p,.testimonials .t-feat blockquote p{font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:600;line-height:1.35;letter-spacing:-.02em}
.t blockquote p{margin:0}
@media (max-width:760px){.t-grid{grid-template-columns:1fr;gap:16px}.t-feat{grid-row:auto}.t-feat blockquote p,.testimonials .t-feat blockquote p{font-size:1.3rem}}
/* 7. benefits as a left-aligned split */
.why-split{display:grid;grid-template-columns:7fr 5fr;gap:72px;align-items:center}
.why-text h2{text-align:left;max-width:16ch;margin:0 0 40px;text-wrap:balance}
.why-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:30px}
.why-list h3{font-size:clamp(1.15rem,1.5vw,1.32rem);line-height:1.3;margin:0 0 8px;color:#1F231B}
.why-list p{margin:0;color:var(--text);max-width:52ch}
.why-img{width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;object-position:55% 50%;border-radius:20px;box-shadow:0 30px 60px -30px rgba(31,35,27,.45)}
@media (max-width:860px){
  .why-split{grid-template-columns:1fr;gap:36px}
  .why-img{order:-1;aspect-ratio:1/1;max-width:560px}
  .why-text h2{margin-bottom:28px}
  .why-list{gap:24px}
}
