.landing-body{background:#f7f6f0;color:#243c39}
.landing-header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.landing-brand{display:inline-flex;align-items:center;flex:0 0 auto;line-height:1}
.landing-brand-logo{display:block;width:262px;height:auto;max-width:100%;object-fit:contain}
.landing-nav{display:flex;align-items:center;gap:28px;margin-left:auto}
.landing-nav a{font-size:13px;font-weight:750;color:#56716b;text-decoration:none;white-space:nowrap}
.landing-nav a:hover{color:#247964}
.landing-signin{white-space:nowrap}
@media(max-width:790px){.landing-brand-logo{width:205px}}
@media(max-width:380px){.landing-brand-logo{width:158px}}
.landing-hero-wrap{padding-top:12px}
.landing-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);min-height:528px;border-radius:34px;overflow:hidden;background:linear-gradient(128deg,#e8f1e7 2%,#e6eee1 51%,#eddfc9 100%);border:1px solid #d8e7d8;box-shadow:0 23px 60px rgba(53,82,65,.08)}
.landing-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(#547b64 1px,transparent 1px);background-size:28px 28px;opacity:.08;pointer-events:none}
.landing-hero-copy{padding:78px 20px 64px 65px;position:relative;z-index:3;align-self:center}
.landing-kicker{display:inline-flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.13em;font-weight:900;color:#41695c;background:#fffefaaf;border:1px solid #cbdfcb;border-radius:20px;padding:9px 13px}
.landing-kicker-dot{width:8px;height:8px;border-radius:50%;background:#74ac79;box-shadow:0 0 0 4px #e4efdd}
.landing-hero h1{font-size:clamp(47px,5.4vw,78px);max-width:690px;line-height:1.03;margin:23px 0;color:#264c44;letter-spacing:-.055em}
.landing-hero h1 em{font-family:Georgia,serif;font-weight:400;color:#cd8751;font-style:italic}
.landing-hero-copy>p{font-size:16px;color:#55746b;line-height:1.7;max-width:520px}
.landing-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.landing-main-cta{background:#277967;box-shadow:0 10px 22px #2779672a}
.landing-trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:29px;color:#4f6e65;font-size:11px;font-weight:800}
.landing-hero-art{position:relative;min-height:528px}
.landing-hero-halo{position:absolute;width:570px;height:570px;right:-88px;top:37px;border-radius:50%;background:radial-gradient(circle at 45% 40%,#fff8e6 0%,#f5d9aa 54%,#d5dfc4 72%,transparent 73%);opacity:.86}
.landing-hero-art>img{position:absolute;right:4%;bottom:-88px;width:min(108%,570px);height:auto;max-height:595px;object-fit:contain;filter:drop-shadow(0 23px 23px #715b4435)}
.landing-floating-pill{position:absolute;z-index:1;padding:11px 15px;border-radius:16px;font-weight:850;color:#3b6c5b;font-size:12px;background:#fffefaed;box-shadow:0 9px 25px #556c5230;border:1px solid #f7eed8}
.pill-one{top:84px;right:12px;transform:rotate(8deg)}.pill-two{bottom:92px;left:-36px;transform:rotate(-8deg)}
.landing-hero-paw{position:absolute;color:#f5bd80;font-size:40px;opacity:.65}.paw-one{top:43px;left:12px}.paw-two{bottom:32px;right:25px}
.landing-highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-top:26px}
.landing-highlight{display:flex;align-items:center;gap:14px;padding:19px;border:1px solid #e7e8dc;background:#fffefa;border-radius:18px;box-shadow:0 9px 22px #465c4710}
.highlight-ico{flex-shrink:0;width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#eaf2e6;font-size:23px}
.landing-highlight:nth-child(2) .highlight-ico{background:#fff0df}.landing-highlight:nth-child(3) .highlight-ico{background:#e8edef}.landing-highlight:nth-child(4) .highlight-ico{background:#fff1df}
.landing-highlight strong,.landing-highlight span:last-child{display:block}.landing-highlight strong{font-size:13px;color:#2b4b44}.landing-highlight span:last-child{font-size:11px;color:#78847d;margin-top:5px;line-height:1.5}
.landing-demo-section,.landing-courses,.landing-how{padding-top:100px}
.landing-section-intro{max-width:760px;margin-bottom:32px}.landing-section-intro h2{font-size:clamp(32px,4.5vw,50px);line-height:1.08;margin:13px 0 14px;color:#284e44}.landing-section-intro p{font-size:15px;line-height:1.7;color:#637971;max-width:720px}
.landing-demo-shell{display:grid;grid-template-columns:250px minmax(0,1fr);border:1px solid #dfe9db;border-radius:24px;overflow:hidden;background:#fffefa;box-shadow:0 18px 42px #52624e12}
.landing-demo-aside{background:linear-gradient(180deg,#eaf2e7,#f5f6ed);border-right:1px solid #dfe9db;padding:30px 25px}
.demo-live-badge{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:900;color:#37816e;background:#fffefa;border-radius:20px;padding:8px 11px;letter-spacing:.04em}
.demo-live-badge span{height:7px;width:7px;background:#5aaf84;border-radius:50%;box-shadow:0 0 0 3px #cbe6d6}
.demo-progress-ring{display:grid;place-items:center;margin:43px 0 20px;border:8px solid #c0dfca;border-top-color:#36866d;width:124px;height:124px;border-radius:50%;background:#fffefa;box-shadow:0 5px 23px #6e98732c}
.demo-progress-ring>span{font-family:Georgia,serif;font-size:43px;color:#28775f;line-height:1}.demo-progress-ring small{font-size:17px;color:#81938b}
.landing-demo-aside h3{font-family:Georgia,serif;font-size:23px;margin:0 0 10px;color:#2f574b}.landing-demo-aside>p{color:#6e8278;font-size:13px;line-height:1.6}
.demo-sidebar-steps{margin-top:24px;display:grid;gap:9px}.demo-sidebar-steps span{border:1px solid #dde9da;border-radius:12px;padding:12px 11px;background:#fffefa99;color:#798c7e;font-weight:750;font-size:12px}.demo-sidebar-steps span.current{background:#d6eade;border-color:#b4d6c2;color:#2e715e}
.demo-aside-note{margin-top:27px;background:#fff4d9;padding:15px;border-radius:13px;font-size:12px;color:#866c46;line-height:1.65}
.landing-demo-content{padding:32px 33px 30px;min-width:0}.landing-demo-head{margin:0 0 20px}.landing-demo-head h2{font-size:27px}.landing-demo-head p{font-size:13px}.demo-head-mark{border:1px solid #e1e9e0;border-radius:14px;padding:10px 14px;color:#2b7a63;font-size:23px;font-weight:850;white-space:nowrap}.demo-head-mark small{color:#80948a;font-size:12px}
.landing-demo-exercise{padding:24px;border-radius:15px;box-shadow:none}.landing-demo-exercise .mini-guide{margin-top:19px}.landing-demo-exercise .ex-goal{margin-top:11px}.landing-demo-exercise .feedback[hidden]{display:none}
.landing-demo-quiz{margin-top:16px;border-radius:15px;box-shadow:none}.landing-demo-quiz .quiz-feedback[hidden]{display:none}
.landing-demo-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:23px;background:#eaf3e7;border-radius:14px;padding:17px 20px}.landing-demo-bottom span{font-size:13px;font-weight:800;color:#436c5b}
.landing-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.course-tile{background:#fffefa;border-radius:20px;border:1px solid #e2e7dc;overflow:hidden;box-shadow:0 9px 26px #67746312;transition:transform .22s,box-shadow .22s}.course-tile:hover{transform:translateY(-4px);box-shadow:0 17px 36px #67746320}
.course-tile-image{width:100%;aspect-ratio:1/1;background-image:url('course-grid.webp');background-repeat:no-repeat;background-size:300% 300%;background-color:#e8e6d7}
.tile-one{background-position:0% 0%}.tile-two{background-position:50% 0%}.tile-three{background-position:100% 0%}.tile-four{background-position:0% 50%}.tile-five{background-position:50% 50%}.tile-six{background-position:100% 50%}.tile-seven{background-position:0% 100%}.tile-eight{background-position:50% 100%}.tile-nine{background-position:100% 100%}
.tile-ten,.tile-eleven,.tile-twelve{background-image:url('course-extra.webp');background-size:300% 100%}
.tile-ten{background-position:0% 50%}.tile-eleven{background-position:50% 50%}.tile-twelve{background-position:100% 50%}
.course-tile-text{padding:22px}.course-tile-text span{font-size:10px;color:#33816e;font-weight:900;letter-spacing:.1em}.course-tile-text h3{margin:8px 0 7px;font-family:Georgia,serif;font-size:23px;letter-spacing:-.02em;color:#2c5048}.course-tile-text p{font-size:13px;color:#71847b;line-height:1.6}
.landing-how{padding-bottom:65px}.landing-how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.landing-how-steps>div{background:#fffefa;border:1px solid #e1e7dc;padding:26px;border-radius:18px}.how-step-number{width:47px;height:47px;border-radius:15px;display:grid;place-items:center;background:#ddede0;color:#277a62;font-weight:900;font-size:19px;margin-bottom:20px}.landing-how-steps h3{font-family:Georgia,serif;font-size:23px;margin-bottom:10px}.landing-how-steps p{font-size:13px;color:#72827c;line-height:1.7}
.landing-final-cta{padding-bottom:80px}.landing-final-card{position:relative;min-height:290px;border-radius:25px;background:#dcebdd;display:flex;align-items:center;justify-content:space-between;overflow:hidden;padding:42px 62px;border:1px solid #d0e0d0}.landing-final-card h2{font-size:clamp(30px,4vw,45px);max-width:550px;margin:10px 0}.landing-final-card p{color:#667e72;font-size:14px;margin-bottom:24px}.landing-final-card img{position:absolute;max-width:35%;right:70px;bottom:-95px;height:auto;filter:drop-shadow(0 8px 15px #46694130)}
.landing-footer{border-top:1px solid #e5e6dc;padding-top:25px;padding-bottom:33px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:13px;font-size:12px;color:#788a7f}.landing-footer a{text-decoration:none;font-weight:800}
@media(max-width:1100px){.landing-hero{grid-template-columns:1.06fr .94fr}.landing-hero-copy{padding:60px 20px 55px 45px}.landing-hero-art>img{width:112%;right:-7%}.landing-highlights{grid-template-columns:repeat(2,1fr)}.landing-demo-shell{grid-template-columns:215px minmax(0,1fr)}.landing-demo-aside{padding:24px 17px}}
@media(max-width:790px){.landing-header{height:75px}.landing-nav{display:none}.landing-hero{grid-template-columns:1fr;min-height:0}.landing-hero-copy{padding:38px 28px 10px}.landing-hero h1{font-size:clamp(43px,8vw,65px)}.landing-hero-art{min-height:350px}.landing-hero-halo{width:460px;height:460px;right:5%;top:-9px}.landing-hero-art>img{width:min(76%,430px);right:12%;bottom:-122px}.pill-one{top:30px;right:5%}.pill-two{bottom:85px;left:9%}.landing-demo-section,.landing-courses,.landing-how{padding-top:75px}.landing-demo-shell{grid-template-columns:1fr}.landing-demo-aside{border-right:0;border-bottom:1px solid #dae8de;padding:20px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.landing-demo-aside>.demo-live-badge{grid-column:1}.demo-progress-ring{grid-column:2;grid-row:1/3;margin:0;height:68px;width:68px;border-width:5px}.demo-progress-ring>span{font-size:24px}.demo-progress-ring small{font-size:11px}.landing-demo-aside h3{grid-column:1;margin:0}.landing-demo-aside>p,.demo-sidebar-steps,.demo-aside-note{display:none}.landing-course-grid{grid-template-columns:repeat(2,1fr);gap:15px}.landing-final-card img{right:2%;opacity:.7}}
@media(max-width:540px){.landing-header{gap:10px}.landing-signin{font-size:11px}.landing-hero{border-radius:22px}.landing-hero-copy{padding:27px 21px 0}.landing-kicker{font-size:8px}.landing-hero h1{font-size:45px;margin:20px 0 13px}.landing-hero-copy>p{font-size:14px}.landing-hero-actions .btn{width:100%}.landing-trust{font-size:10px;gap:11px}.landing-hero-art{min-height:290px}.landing-hero-halo{right:-24%;top:0;width:410px;height:410px}.landing-hero-art>img{width:315px;max-width:85%;right:5%;bottom:-101px}.pill-one{right:6%;top:18px}.pill-two{bottom:53px;left:4%}.landing-highlights{grid-template-columns:1fr 1fr;gap:9px}.landing-highlight{padding:11px;gap:9px;align-items:flex-start}.highlight-ico{width:34px;height:34px;font-size:18px;border-radius:9px}.landing-highlight strong{font-size:11px}.landing-highlight span:last-child{font-size:10px}.landing-demo-section,.landing-courses,.landing-how{padding-top:62px}.landing-section-intro h2{font-size:34px}.landing-demo-content{padding:18px 13px}.landing-demo-head h2{font-size:23px}.demo-head-mark{display:none}.landing-demo-exercise{padding:15px}.landing-demo-bottom{flex-direction:column;align-items:stretch}.landing-course-grid{grid-template-columns:1fr;gap:14px}.course-tile-image{aspect-ratio:1.4/1}.landing-how-steps{grid-template-columns:1fr}.landing-final-card{padding:30px 20px;min-height:335px;align-items:flex-start}.landing-final-card>div{z-index:2;max-width:80%}.landing-final-card h2{font-size:32px}.landing-final-card img{max-width:none;width:160px;bottom:-65px;right:-26px;opacity:.55}.landing-footer{padding-top:19px}}
@media(prefers-reduced-motion:reduce){.course-tile{transition:none}}
/* The source sheet has nine SQUARE cells. Never stretch them into wide mobile tiles. */
@media(max-width:540px){.course-tile-image{aspect-ratio:1 / 1}}
/* Public one-time course offer, shown only when payments are configured. */
.landing-pricing{margin:24px auto 74px}.landing-pricing-card{background:#e3eee2;border:1px solid #bed5bc;border-radius:28px;padding:clamp(25px,5vw,51px);display:flex;align-items:center;justify-content:space-between;gap:35px}.landing-pricing-card h2{font-size:clamp(30px,4vw,45px);line-height:1.13;margin:10px 0 17px}.landing-pricing-card p{max-width:590px;color:#506e60;line-height:1.65}.landing-pricing-card small{color:#607a6d}.landing-pricing-side{display:grid;gap:16px;text-align:center;flex:none}.landing-pricing-side strong{font-size:40px;color:#285b48}.landing-pricing-side .btn{white-space:nowrap}@media(max-width:700px){.landing-pricing-card{flex-direction:column;align-items:stretch}.landing-pricing-side{text-align:left}.landing-pricing-side .btn{width:100%}}
/* Transparent evidence-based methodology, before the course purchase offer. */
.landing-method{padding-top:18px;padding-bottom:58px;scroll-margin-top:32px}
.landing-method-inner{padding:clamp(25px,5vw,52px);border:1px solid #d7e7d7;border-radius:28px;background:linear-gradient(135deg,#edf4e9,#faf8ef 80%)}
.landing-method .landing-section-intro{max-width:900px;margin-bottom:25px}
.landing-method .landing-section-intro p{max-width:850px}
.landing-method .landing-section-intro strong{color:#275f50}
.landing-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.landing-method-grid article{background:#fffefa;border:1px solid #dce8db;border-radius:17px;padding:21px;box-shadow:0 7px 18px #41624f0c}
.landing-method-grid article>span{font-size:28px;display:block;margin-bottom:12px}
.landing-method-grid h3{font-family:Georgia,serif;font-size:20px;line-height:1.2;color:#2b5549;margin-bottom:10px}
.landing-method-grid p{color:#617a6c;font-size:12px;line-height:1.65}
.landing-method-source{max-width:960px;margin:22px 0 0;color:#718377;font-size:12px;line-height:1.75}
.landing-method-source a{font-weight:750;text-underline-offset:3px}
.landing-faq{padding-top:20px;padding-bottom:80px;scroll-margin-top:25px}
.landing-faq .landing-section-intro{max-width:850px}
.landing-faq-list{max-width:920px;display:grid;gap:10px}
.landing-faq-list details{background:#fffefa;border:1px solid #dae6da;border-radius:15px;box-shadow:0 7px 20px #315a4610;overflow:hidden}
.landing-faq-list summary{padding:19px 24px;color:#29574a;font-weight:850;font-size:15px;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px}
.landing-faq-list summary::-webkit-details-marker{display:none}
.landing-faq-list summary::after{content:'+';font-size:24px;line-height:1;color:#8aa88f;flex-shrink:0}
.landing-faq-list details[open] summary::after{content:'−'}
.landing-faq-list details p{margin:0;padding:0 24px 21px;color:#5d786d;font-size:14px;line-height:1.75;max-width:860px}
.landing-faq-list details a{font-weight:750;text-underline-offset:3px}
@media(max-width:540px){.landing-faq{padding-top:5px;padding-bottom:55px}.landing-faq-list summary{font-size:13px;padding:16px 17px}.landing-faq-list details p{padding:0 17px 17px;font-size:12px}}
/* Price promise belongs to the opening offer and stays legible on phones. */
.landing-price-promo{display:flex;align-items:center;gap:12px;width:fit-content;max-width:100%;margin-top:19px;padding:14px 17px;border:1px solid #deb777;border-radius:17px;background:linear-gradient(120deg,#fff9e8,#ffedd2);box-shadow:0 7px 17px #b68f4a1c;color:#845b2e}
.landing-price-promo>span{font-size:22px;flex:none}
.landing-price-promo strong,.landing-price-promo small{display:block}
.landing-price-promo strong{font-family:Georgia,serif;font-size:clamp(17px,2vw,23px);line-height:1.2;color:#815626}
.landing-price-promo small{margin-top:5px;font-family:Arial,sans-serif;font-size:11px;font-weight:750;color:#95744b}
@media(max-width:540px){.landing-price-promo{margin-top:17px;padding:12px 13px;gap:9px}.landing-price-promo strong{font-size:19px}.landing-price-promo small{font-size:10px}}
@media(max-width:900px){.landing-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.landing-method{padding-top:0;padding-bottom:40px}.landing-method-inner{padding:25px 18px;border-radius:21px}.landing-method-grid{grid-template-columns:1fr}.landing-method-grid article{padding:17px}.landing-method .landing-section-intro h2{font-size:32px}}
