@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#132524;--muted:#61716d;--green:#0d7c66;--lime:#c9eeb5;--cream:#f8f9f4;--line:#e4eae3}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{text-decoration:none;color:inherit}.announcement{height:34px;background:#132c29;color:#d5ecdc;text-align:center;display:flex;align-items:center;justify-content:center;gap:16px;font-size:10px;font-weight:700;letter-spacing:2px}.announcement span{color:#b6df74}.header{min-height:84px;padding:0 max(5%,calc((100% - 1320px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);gap:25px}.brand{display:flex;align-items:center;gap:11px;font-family:'Space Grotesk',sans-serif;font-size:21px;font-weight:700;letter-spacing:-1.15px}.brand>span:last-child{line-height:.9}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:3.1px;color:#65877c;margin-top:7px}.brand-mark{height:42px;width:42px;border-radius:12px;background:#164f43;color:#fff;display:grid;place-items:center;font-size:23px;position:relative}.brand-mark span{font-size:12px;position:absolute;top:5px;right:6px;color:#b6ed99}.header nav{display:flex;gap:35px;font-size:13px;font-weight:700;color:#697973}.header nav a.active,.header nav a:hover{color:#0a785c}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;font-weight:700;font-size:13px;border-radius:8px;transition:transform .15s,background .15s}.header-cta{background:#183d36;color:#fff;padding:14px 20px}.header-cta:hover,.button:hover{transform:translateY(-2px)}.hero{max-width:1440px;margin:auto;min-height:625px;padding:60px 5%;display:grid;grid-template-columns:1.06fr .94fr;gap:40px;align-items:center}.eyebrow,.section-label{font-size:10px;font-weight:800;letter-spacing:2.2px;color:#177f68}.eyebrow i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#32b891;margin-right:10px}.hero h1,.interior-header h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(48px,5.1vw,78px);line-height:1.06;letter-spacing:-4px;margin:25px 0}.hero em,.section h2 em,.interior-header em{color:#198268;font-style:normal}.hero-copy>p,.interior-header p{max-width:550px;color:#5e706c;line-height:1.85;font-size:16px}.hero-actions{display:flex;gap:12px;margin:31px 0 55px}.button{padding:17px 22px}.primary{background:#147d64;color:#fff}.secondary{background:#fff;border:1px solid #dce7df}.hero-metrics{display:flex;gap:32px}.hero-metrics div{border-right:1px solid #d9e2da;padding-right:28px}.hero-metrics div:last-child{border:0}.hero-metrics b{font:700 20px 'Space Grotesk';display:block}.hero-metrics span{display:block;font-size:11px;color:#819088;margin-top:7px}.hero-visual{height:500px;border-radius:20px;background:radial-gradient(circle at 70% 20%,#275e52,#143d37 53%,#0d2c29);position:relative;overflow:hidden;color:white}.grid-glow{position:absolute;inset:0;background-image:linear-gradient(#ffffff0c 1px,transparent 1px),linear-gradient(90deg,#ffffff0c 1px,transparent 1px);background-size:37px 37px;mask-image:linear-gradient(90deg,transparent,#000)}.orb{position:absolute;border-radius:50%;border:1px solid #a0ffbc33}.orb-one{width:380px;height:380px;right:-65px;top:18px;box-shadow:0 0 0 40px #9ceeb008,0 0 0 85px #9ceeb008;background:radial-gradient(circle at 30% 30%,#83cc9d48,transparent 65%)}.orb-two{width:175px;height:175px;left:60px;bottom:-95px;background:#a8e9a61c}.hero-badge{position:absolute;top:68px;right:25px;transform:rotate(-9deg);font-size:14px;letter-spacing:3px;color:#bbebd0;line-height:2}.hero-badge strong{font-size:26px;letter-spacing:1px;color:white}.floating-card{position:absolute;left:45px;bottom:74px;background:#f6f9e9;color:#183f37;padding:28px 32px;width:290px;border-radius:14px;box-shadow:0 30px 65px #0004}.floating-card span{font-size:10px;letter-spacing:2px;font-weight:700;color:#4a866a}.floating-card b{font:700 35px/1.14 'Space Grotesk';display:block;letter-spacing:-1.5px;margin:20px 0 25px}.floating-card i{font-size:11px;letter-spacing:1.2px;font-style:normal;font-weight:800}.visual-footer{position:absolute;bottom:24px;right:28px;font-size:9px;letter-spacing:2px;color:#b4dbca}.section{max-width:1440px;margin:auto;padding:55px 5% 90px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}.section h2{font:700 clamp(30px,3vw,45px) 'Space Grotesk';letter-spacing:-2px;margin:15px 0 10px}.section-top p,.course-content p{color:var(--muted);line-height:1.65;font-size:14px}.text-link{font-size:13px;color:#087e62;font-weight:800;white-space:nowrap;padding-bottom:10px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.course-card{border:1px solid #e3e9e0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 30px #13252406}.course-art{height:190px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.course-art.teal{background:radial-gradient(circle at 75% 24%,#459d87,#14534b 60%,#0d3935)}.course-art.violet{background:radial-gradient(circle at 65% 20%,#8089c6,#3b457a 60%,#232c51)}.course-art.amber{background:radial-gradient(circle at 70% 15%,#ecbd72,#a96f37 60%,#6e4329)}.course-art b{font:700 92px 'Space Grotesk';color:#fff;z-index:1;text-shadow:0 12px 20px #0002}.course-art small{position:absolute;left:22px;bottom:18px;color:#ffffffae;letter-spacing:1.8px;font-size:8px;font-weight:700}.art-dots{position:absolute;width:250px;height:250px;border:1px solid #ffffff38;border-radius:50%;right:-50px;top:-70px;box-shadow:0 0 0 35px #ffffff0a,0 0 0 72px #ffffff08}.course-content{padding:26px}.tiny{font-size:10px;letter-spacing:1.7px;color:#21856d;font-weight:800}.course-content h3{font:700 24px/1.2 'Space Grotesk';letter-spacing:-.8px;margin:14px 0 11px}.course-content p{min-height:68px;margin:0 0 22px}.course-link{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;font-size:13px;font-weight:800;color:#176e59}.bottom-banner{max-width:1290px;margin:10px auto 80px;padding:65px;text-align:center;background:#dff1d7;border-radius:19px}.bottom-banner span{color:#377b63;font-size:10px;letter-spacing:2px;font-weight:800}.bottom-banner h2{font:700 43px 'Space Grotesk';letter-spacing:-2px;margin:15px 0}.bottom-banner p{color:#567365}.light{background:#174e40;color:white;margin-top:20px}.footer{background:#102b28;color:#fff;padding:45px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer p,.footer>span{font-size:12px;color:#a9c7bb}.interior-header{background:#eaf3e9;padding:85px max(5%,calc((100% - 1280px)/2));}.interior-header h1{font-size:clamp(40px,4.8vw,67px)}.dash-summary{border-radius:15px;background:#183f36;color:white;padding:38px;display:flex;justify-content:space-between;align-items:center}.dash-summary h2{margin:12px 0;font-size:32px}.dash-summary p{color:#a6cebf}.summary-number{font:700 58px 'Space Grotesk';color:#b5ed98}.summary-number small{display:block;font:700 10px 'DM Sans';letter-spacing:2px}.section h2.smaller{font-size:28px;margin:40px 0 0}.lesson-layout{display:grid;grid-template-columns:1fr 315px;gap:40px}.lesson-main h1{font:700 46px 'Space Grotesk';letter-spacing:-2px;margin:15px 0}.lesson-main>p{color:#66756d}.backlink{display:block;font-size:13px;color:#197b64;font-weight:700;margin-bottom:35px}.player-placeholder{height:420px;background:radial-gradient(circle at center,#29685b,#0d2e2b);border-radius:16px;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;text-align:center;margin-top:30px;padding:30px}.play-icon{width:76px;height:76px;border-radius:50%;background:#d3eebe;color:#1b6453;display:grid;place-items:center;font-size:27px;padding-left:4px}.player-placeholder span{font-size:12px;color:#b8d2c9;max-width:320px}.lesson-note{padding:30px;background:#fff;border:1px solid var(--line);border-radius:13px;margin-top:20px}.lesson-note p{font-size:14px;line-height:1.7;color:#65746d}.lesson-sidebar{background:white;border:1px solid var(--line);border-radius:15px;padding:28px;height:max-content}.lesson-sidebar h3{font:700 24px 'Space Grotesk'}.module{display:flex;gap:13px;align-items:center;border-top:1px solid var(--line);padding:20px 0;font-size:13px}.module>span:first-child{color:#198166;font-weight:800}.module div{flex:1}.module small{display:block;color:#94a39b;margin-top:6px}@media(max-width:900px){.header nav{display:none}.hero{grid-template-columns:1fr;padding-top:45px}.hero-visual{height:420px}.course-grid{grid-template-columns:repeat(2,1fr)}.lesson-layout{grid-template-columns:1fr}.footer{flex-wrap:wrap}}@media(max-width:620px){.header{min-height:75px;padding:0 5%}.brand{font-size:17px}.brand-mark{height:36px;width:36px}.header-cta{font-size:11px;padding:12px}.hero h1{letter-spacing:-2.5px}.hero-actions{flex-wrap:wrap;margin-bottom:35px}.hero-metrics{gap:12px}.hero-metrics div{padding-right:10px}.hero-metrics b{font-size:15px}.hero-metrics span{font-size:9px}.hero-visual{height:350px}.floating-card{left:25px;bottom:55px;width:245px;padding:23px}.floating-card b{font-size:29px}.section{padding:45px 5%}.section-top{align-items:flex-start;flex-direction:column}.course-grid{grid-template-columns:1fr}.bottom-banner{margin:10px 5% 50px;padding:45px 20px}.bottom-banner h2{font-size:32px}.interior-header{padding:55px 5%}.interior-header h1{letter-spacing:-2px}.dash-summary{align-items:flex-start;gap:15px}.summary-number{font-size:35px}.player-placeholder{height:260px}.lesson-main h1{font-size:35px}.footer{flex-direction:column;align-items:flex-start}}
/* Phase 5: outline and protected lesson player */
.outline-lesson{display:flex;align-items:flex-start;gap:10px;padding:11px 8px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.5;color:#50645d}
.outline-lesson span{color:#18866c;flex:none}.outline-lesson.current{background:#e9f5ee;color:#0a725b;font-weight:800;border-radius:7px}
.lesson-sidebar h4{font-size:14px;margin:27px 0 10px}.protected-viewer{max-width:1400px;margin:auto}.viewer-head{margin-bottom:30px}.viewer-head h1{font:700 clamp(30px,4vw,50px) 'Space Grotesk',sans-serif;margin:13px 0}.viewer-head p{color:var(--muted)}
.video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#102b28;border-radius:14px;overflow:hidden}.video-frame iframe{width:100%;height:100%;border:0;position:absolute;inset:0}
.lesson-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0;flex-wrap:wrap}.lesson-controls .button{border:0;cursor:pointer}.lesson-controls button:disabled{opacity:.6;cursor:default}
