:root{--ink:#282332;--muted:#746d7e;--purple:#7656b4;--purple-soft:#f2edfa;--line:#e9e4ef;--green:#367b60;--sans:"DM Sans",Arial,sans-serif;--display:"Manrope",Arial,sans-serif;--serif:Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font-family:var(--sans);background:#fff;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.topline{min-height:54px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted);letter-spacing:.09em}.topline>a{color:var(--purple);font-weight:700;letter-spacing:0}.demo-tag{border:1px solid #d8c9eb;color:var(--purple);padding:7px 9px;font-size:9px;font-weight:700}.course-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr .8fr;gap:6%;align-items:center;padding:70px 10% 78px;background:linear-gradient(110deg,#fff 15%,#faf7fe 100%);border-bottom:1px solid var(--line)}.course-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#7656b40a 1px,transparent 1px),linear-gradient(90deg,#7656b40a 1px,transparent 1px);background-size:52px 52px;pointer-events:none}.hero-copy{position:relative;z-index:1;max-width:610px}.eyebrow,.section-label{font-size:10px;letter-spacing:.15em;color:#81788e;text-transform:uppercase}.eyebrow span{color:var(--purple)}h1,h2{font-family:var(--display);font-weight:600;letter-spacing:-.06em}h1{font-size:clamp(48px,6vw,78px);line-height:1.02;margin:24px 0}h1 em,h2 em{font-family:var(--serif);font-weight:400;color:var(--purple)}.hero-copy>p{max-width:520px;color:var(--muted);font-size:14px;line-height:1.9}.meta{display:flex;flex-wrap:wrap;gap:18px;margin:25px 0;color:#706779;font-size:11px}.primary-button,.secondary-button{min-height:46px;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:22px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;border:0}.primary-button{background:var(--purple);color:white}.primary-button:hover{background:#614396}.secondary-button{background:white;border:1px solid var(--line);color:var(--ink)}.secondary-button:disabled{opacity:.35;cursor:not-allowed}.hero-visual{min-height:290px;display:grid;place-items:center;position:relative}.visual-orbit{position:absolute;aspect-ratio:1;border:1px solid #7656b42c;border-radius:50%}.orbit-a{width:min(90%,310px);border-style:dashed}.orbit-b{width:min(66%,230px);box-shadow:0 0 50px #e7def5}.visual-symbol{font:clamp(110px,15vw,175px)/1 var(--serif);color:var(--purple);text-shadow:0 10px 50px #ded1f0}.visual-caption{position:absolute;bottom:4px;color:#9488a5;font-size:8px;letter-spacing:.17em}.layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:6%;padding:65px 8% 85px;align-items:start}.section-label{display:flex;gap:9px;align-items:center}.section-label span{color:#b0a6bd}.lesson-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:23px 0 18px}.module-label{color:var(--purple);font-size:9px;letter-spacing:.13em;font-weight:700}.lesson-heading h2,.syllabus h2{font-size:clamp(24px,3vw,34px);margin:8px 0 0}.lesson-count{font-size:10px;color:var(--muted);white-space:nowrap;padding-bottom:4px}.lesson-stage{min-height:300px;background:radial-gradient(circle at 50% 20%,#fff 0,#f7f2fc 58%,#eee6f8 100%);border:1px solid #e9e0f4;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px}.play-symbol{width:49px;height:49px;border:1px solid #c8b6e4;border-radius:50%;display:grid;place-items:center;color:var(--purple);font-size:23px;margin-bottom:16px}.stage-kicker{font-size:9px;letter-spacing:.17em;color:#857698}.lesson-stage h3{font:600 26px var(--display);letter-spacing:-.04em;margin:9px 0}.lesson-stage>p:not(.stage-kicker){font-size:12px;line-height:1.8;max-width:390px;color:#6f667a}.stage-note{font-size:8px;letter-spacing:.13em;color:#9a8cae;margin-top:17px}.lesson-content{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:25px 0 23px;border-bottom:1px solid var(--line)}.content-copy{max-width:540px}.content-copy h3{font:600 18px var(--display);margin:0 0 9px}.content-copy>p,.practice-box p{font-size:12px;line-height:1.85;color:var(--muted)}.practice-box{display:flex;gap:13px;background:#f8f6fb;border:1px solid #eee7f5;padding:15px;margin-top:17px}.practice-icon{color:var(--purple);font-size:20px}.practice-box b{font-size:11px}.practice-box p{margin:5px 0 0}.complete-button{background:#fff;color:var(--green);border:1px solid #b8d7c5;padding:11px 13px;font-size:10px;font-weight:700;white-space:nowrap}.complete-button.is-complete{background:#eaf5ee}.lesson-nav{display:flex;justify-content:space-between;gap:12px;padding-top:20px}.syllabus{border:1px solid var(--line);padding:24px;position:sticky;top:18px}.syllabus-head{display:flex;align-items:end;justify-content:space-between;gap:10px}.syllabus h2{font-size:25px}.duration{font-size:10px;color:var(--muted);white-space:nowrap}.syllabus-intro{font-size:12px;line-height:1.8;color:var(--muted);margin:13px 0 20px}.progress-wrap{padding:15px 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.progress-copy{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted)}.progress-copy b{color:var(--purple)}.progress-track{height:5px;background:#eee9f3;margin-top:12px;overflow:hidden}.progress-track span{height:100%;width:0;display:block;background:var(--purple);transition:width .2s}.module-list{padding-top:9px}.module-heading{font-size:9px;letter-spacing:.1em;color:#8b8296;margin:17px 0 8px}.lesson-item{display:flex;align-items:flex-start;gap:11px;padding:12px 10px;width:100%;text-align:left;border:1px solid transparent;background:#fff;color:var(--ink)}.lesson-item:hover{background:#faf8fd}.lesson-item.active{background:var(--purple-soft);border-color:#e4d9f2}.lesson-dot{width:23px;height:23px;flex:0 0 23px;border:1px solid #d8d0e1;border-radius:50%;display:grid;place-items:center;font-size:9px;color:#8a7b9c}.lesson-item.done .lesson-dot{background:#e5f2e9;color:var(--green);border-color:#c4dfce}.lesson-item b{display:block;font-size:11px;font-weight:600;line-height:1.5}.lesson-item small{display:block;font-size:9px;color:#92899d;margin-top:4px}.note-card{display:flex;gap:12px;background:#fbf9fd;padding:15px;margin-top:23px}.note-card>span{font:28px var(--serif);color:var(--purple)}.note-card b{font-size:10px}.note-card p{font-size:10px;line-height:1.7;color:var(--muted);margin:6px 0 0}.next-step{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:60px 10%;background:#faf8fc;border-top:1px solid var(--line)}.next-step h2{font-size:clamp(35px,4vw,50px);line-height:1.08;margin:14px 0 0}.secondary-link{font-size:10px;color:var(--purple);border-bottom:1px solid #cbb8e2;padding-bottom:9px;letter-spacing:.04em}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 7%;font-size:9px;letter-spacing:.12em;color:#8f8799;border-top:1px solid var(--line)}.footer-brand{display:flex;align-items:center;gap:10px;font:25px var(--serif);color:var(--purple)}.footer-brand b{font:600 10px var(--display);letter-spacing:.1em;color:var(--ink)}@media(max-width:850px){.course-hero{padding:55px 7%;grid-template-columns:1fr .65fr;gap:2%}.layout{padding:45px 5%;gap:4%;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr)}.syllabus{padding:17px}.lesson-content{flex-direction:column}.next-step{padding:50px 7%}}@media(max-width:650px){.topline{padding:13px 5%;flex-wrap:wrap}.topline>span:nth-child(2){display:none}.course-hero{grid-template-columns:1fr;padding:45px 6% 55px}.hero-visual{grid-row:1;min-height:200px}.hero-copy{grid-row:2}.hero-visual .orbit-a{width:190px}.hero-visual .orbit-b{width:140px}.visual-symbol{font-size:115px}.course-hero h1{font-size:55px}.layout{grid-template-columns:1fr;padding:42px 5%;gap:45px}.syllabus{position:static}.lesson-stage{min-height:260px;padding:25px 18px}.lesson-heading{align-items:start;flex-direction:column;gap:0}.lesson-content{gap:15px}.lesson-nav .primary-button,.lesson-nav .secondary-button{padding:0 11px;gap:8px;font-size:9px}.next-step{align-items:flex-start;flex-direction:column;padding:45px 6%}footer{padding:22px 5%;flex-wrap:wrap}footer>span{font-size:8px}}