:root{color-scheme:light;--mochi:#fbfaf7;--paper:#fff;--ink:#221b29;--ink-soft:#5f5667;--purple:#684493;--purple-deep:#442263;--purple-soft:#eee6f6;--lilac:#d9c5eb;--peach:#f5bca8;--sun:#f5cf67;--mint:#bfe3d6;--line:#e4dde8;--shadow-soft:0 16px 50px #37214514;--shadow-card:0 26px 80px #37214521;--radius-sm:12px;--radius:22px;--radius-lg:34px;--shell:1160px;font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}html{background:var(--mochi);color:var(--ink);scroll-behavior:smooth}body{background:var(--mochi);min-width:320px;margin:0;font-size:1rem;line-height:1.7}body.home-page{--shell:1040px}body,button,input{font-family:inherit}img,svg,video{max-width:100%;height:auto;display:block}a{color:var(--purple);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--purple-deep)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--sun);outline-offset:4px}h1,h2,h3{letter-spacing:-.045em;margin:0 0 .65em;font-family:Georgia,Times New Roman,serif;font-weight:600;line-height:1.06}h1{font-size:clamp(2.8rem,7vw,5.8rem)}h2{font-size:clamp(2rem,4.5vw,3.7rem)}h3{font-size:1.4rem}p{margin:0 0 1.2em}::selection{background:var(--lilac);color:var(--purple-deep)}.shell{width:min(calc(100% - 2.5rem), var(--shell));margin-inline:auto}.narrow-shell{max-width:940px}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--ink);color:#fff;padding:.7rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--purple);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.8rem;font-size:.75rem;font-weight:850}.button-link{border:1px solid var(--purple);background:var(--purple);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:.72rem 1.15rem;font-weight:750;text-decoration:none;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex}.button-link:hover{background:var(--purple-deep);color:#fff;transform:translateY(-2px);box-shadow:0 10px 25px #44226333}.button-secondary{color:var(--purple);background:0 0}.button-secondary:hover{background:var(--purple-soft);color:var(--purple-deep)}.text-link{color:var(--ink);align-items:center;gap:.45rem;font-weight:750;text-decoration:none;display:inline-flex}.text-link span{color:var(--purple);transition:transform .16s}.text-link:hover span{transform:translate(4px)}.site-header{z-index:20;backdrop-filter:blur(18px);background:#fbfaf7e6;border-bottom:1px solid #e4dde8cc;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:88px;display:flex}.brand{color:var(--ink);align-items:center;gap:.8rem;text-decoration:none;display:flex}.brand:hover{color:var(--ink)}.brand-mark{border:1px solid var(--line);background:var(--paper);border-radius:17px;place-items:center;width:50px;height:50px;display:grid;box-shadow:0 8px 24px #37214514}.brand-mark img{width:38px}.brand>span:last-child{line-height:1.2;display:grid}.brand strong{letter-spacing:-.025em;font-family:Georgia,Times New Roman,serif;font-size:1.25rem}.brand small{color:var(--ink-soft);letter-spacing:.11em;text-transform:uppercase;margin-top:.18rem;font-size:.7rem;font-weight:750}.desktop-nav{border:1px solid var(--line);background:#ffffffc7;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem;display:flex}.desktop-nav a{color:var(--ink-soft);border-radius:999px;padding:.48rem .9rem;font-size:.88rem;font-weight:750;text-decoration:none}.desktop-nav a[aria-current=page],.desktop-nav a:hover{background:var(--purple-soft);color:var(--purple-deep)}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;border:1px solid var(--line);background:var(--paper);border-radius:50%;place-content:center;gap:4px;width:46px;height:46px;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{background:var(--ink);border-radius:2px;width:18px;height:2px;display:block}.mobile-menu nav{border:1px solid var(--line);background:var(--paper);width:220px;box-shadow:var(--shadow-card);border-radius:18px;padding:.55rem;display:grid;position:absolute;top:calc(100% + .75rem);right:0}.mobile-menu nav a{color:var(--ink);border-radius:11px;padding:.75rem .85rem;font-weight:700;text-decoration:none}.mobile-menu nav a:hover{background:var(--purple-soft);color:var(--purple-deep)}.hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 16% 14%, #f5cf6742, transparent 25rem), radial-gradient(circle at 86% 35%, #d9c5eb73, transparent 31rem), var(--mochi);position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:radial-gradient(#6844931f 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0;mask-image:linear-gradient(#000,#0000 78%)}.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);align-items:center;gap:clamp(3rem,7vw,7rem);min-height:min(720px,100vh - 88px);padding-block:clamp(5rem,10vw,8rem);display:grid;position:relative}.hero-copy{z-index:2;position:relative}.hero h1{max-width:11ch}.hero h1 em{color:var(--purple);font-weight:inherit;position:relative}.hero h1 em:after{background:var(--peach);content:"";border-radius:999px;height:.12em;position:absolute;bottom:-.08em;left:0;right:0;transform:rotate(-1.5deg)}.hero-lede{max-width:57ch;color:var(--ink-soft);font-size:clamp(1.08rem,2vw,1.28rem)}.hero-actions,.course-actions{flex-wrap:wrap;align-items:center;gap:1.2rem;margin-top:2rem;display:flex}.hero-visual{min-height:480px;position:relative}.archive-card{z-index:2;width:min(92%,400px);box-shadow:var(--shadow-card);backdrop-filter:blur(10px);background:#ffffffeb;border:1px solid #6844932e;border-radius:26px;padding:2rem;display:grid;position:absolute}.archive-card span{color:var(--purple);letter-spacing:.12em;font-size:.72rem;font-weight:850}.archive-card strong{margin:.35rem 0;font-family:Georgia,Times New Roman,serif;font-size:1.55rem}.archive-card small{color:var(--ink-soft)}.archive-card-one{top:7%;right:5%;transform:rotate(3deg)}.archive-card-two{bottom:7%;right:12%;transform:rotate(-4deg)}.hero-orbit{border-radius:50%;position:absolute}.hero-orbit-one{background:var(--sun);opacity:.75;width:120px;height:120px;top:0;left:2%}.hero-orbit-two{background:var(--mint);width:92px;height:92px;bottom:2%;right:0}.section{padding-block:clamp(4.5rem,9vw,8rem)}.section-heading{justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2.8rem;display:flex}.section-heading h2{max-width:14ch;margin-bottom:0}.section-intro{max-width:42ch;color:var(--ink-soft);margin:0}.courses-section,.syllabus-section{border-top:1px solid var(--line);background:linear-gradient(#ffffffc7, #ffffffc7), radial-gradient(circle at 10% 20%, var(--purple-soft), transparent 25rem)}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.course-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-soft);transition:transform .18s,box-shadow .18s;overflow:hidden}.course-card:hover{box-shadow:var(--shadow-card);transform:translateY(-5px)}.course-image{border-bottom:1px solid var(--line);background:var(--purple-soft);display:block;overflow:hidden}.course-image img{aspect-ratio:16/9;object-fit:cover;width:100%;transition:transform .35s}.course-card:hover .course-image img{transform:scale(1.015)}.course-content{padding:clamp(1.6rem,4vw,2.4rem)}.course-content h2{margin:1rem 0 .7rem;font-size:clamp(1.65rem,3vw,2.35rem)}.course-content h2 a{color:var(--ink);text-decoration:none}.course-content h2 a:hover{color:var(--purple)}.course-content>p{color:var(--ink-soft)}.course-labels{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:1rem;font-size:.78rem;font-weight:750;display:flex}.pill{background:var(--purple-soft);color:var(--purple-deep);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:.2rem .65rem;font-size:.68rem;font-weight:850;display:inline-flex}.archive-notice{border-radius:var(--radius);box-shadow:var(--shadow-soft);background:#fff9e5;border:1px solid #e1c565;grid-template-columns:auto 1fr;gap:1rem;padding:clamp(1.4rem,4vw,2rem);display:grid}.archive-notice.compact{box-shadow:none;margin-bottom:2.4rem;padding:1.3rem}.archive-icon{background:var(--sun);color:#55430b;border-radius:50%;place-items:center;width:32px;height:32px;font-family:Georgia,serif;font-weight:800;display:grid}.archive-notice strong{font-size:1.05rem}.archive-notice p{color:#625532;margin:.25rem 0 0}.course-hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 86% 35%, #d9c5eb80, transparent 31rem), var(--mochi);overflow:hidden}.course-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:clamp(3rem,7vw,7rem);padding-block:clamp(5rem,10vw,8rem);display:grid}.course-hero h1{max-width:11ch;font-size:clamp(2.8rem,6.5vw,5.4rem)}.course-lede{max-width:57ch;color:var(--ink-soft);font-size:clamp(1.08rem,2vw,1.28rem)}.course-hero-art{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-card);overflow:hidden}.course-hero-art>img{aspect-ratio:16/9;object-fit:cover;width:100%}.course-hero-art dl{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.course-hero-art dl div{border-left:1px solid var(--line);padding:1.1rem}.course-hero-art dl div:first-child{border-left:0}.course-hero-art dt{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-weight:800}.course-hero-art dd{margin:.25rem 0 0;font-family:Georgia,serif;font-size:1.25rem;font-weight:700}.archive-copy{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.5rem,7vw,6rem);margin-top:clamp(4rem,8vw,6rem);display:grid}.archive-copy h2{font-size:clamp(2rem,4.5vw,3.5rem)}.archive-copy>div:last-child{color:var(--ink-soft);font-size:1.06rem}.syllabus-shell{max-width:980px}.lesson-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.lesson-list li{border-bottom:1px solid var(--line)}.lesson-list a{color:var(--ink);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:1.2rem;padding:1.25rem 0;text-decoration:none;display:grid}.lesson-list a:hover strong{color:var(--purple)}.lesson-number{color:var(--purple);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem}.lesson-title{display:grid}.lesson-title strong{line-height:1.35}.lesson-title small{color:var(--ink-soft);margin-top:.2rem}.lesson-access{background:var(--mint);color:#285c4b;letter-spacing:.08em;text-align:center;text-transform:uppercase;border-radius:999px;min-width:55px;padding:.3rem .65rem;font-size:.67rem;font-weight:850}.lesson-access.locked{background:var(--purple-soft);color:var(--purple-deep)}.lesson-shell{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:clamp(3rem,7vw,6rem);padding-block:clamp(3rem,7vw,6rem);display:grid}.lesson-sidebar{max-height:calc(100vh - 145px);padding-right:.6rem;position:sticky;top:116px;overflow-y:auto}.lesson-course-back{color:var(--ink);gap:.45rem;margin-bottom:1rem;font-weight:800;text-decoration:none;display:inline-flex}.lesson-progress{color:var(--ink-soft);font-size:.78rem;font-weight:750}.lesson-sidebar ol{border-top:1px solid var(--line);margin:1.2rem 0 0;padding:0;list-style:none}.lesson-sidebar a{border-bottom:1px solid var(--line);color:var(--ink-soft);grid-template-columns:28px minmax(0,1fr) 8px;gap:.55rem;padding:.68rem .35rem;text-decoration:none;display:grid}.lesson-sidebar a[aria-current=page]{color:var(--purple-deep)}.lesson-sidebar a[aria-current=page] strong{font-weight:850}.lesson-sidebar a>span,.lesson-sidebar a>small{color:var(--purple);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.67rem}.lesson-sidebar a>strong{font-size:.76rem;font-weight:650;line-height:1.35}.lesson{min-width:0;max-width:810px}.lesson-header{margin-bottom:2.5rem}.lesson-header h1{margin-bottom:.4rem;font-size:clamp(2.5rem,6vw,4.8rem)}.lesson-header>p:last-child{color:var(--ink-soft)}.video-embed{border-radius:var(--radius);width:100%;box-shadow:var(--shadow-card);aspect-ratio:16/9;background:#120f15;margin:0 0 2.7rem;position:relative;overflow:hidden}.video-embed iframe,.video-embed video{border:0;width:100%;height:100%;position:absolute;inset:0}.video-embed video{object-fit:contain}.video-consent{color:#fff;place-items:center;display:grid}.video-consent-copy{text-align:center;max-width:540px;padding:clamp(1.5rem,5vw,3rem);display:grid}.video-consent-copy>span{color:var(--lilac);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:850}.video-consent-copy>strong{margin-top:.45rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,4vw,2.4rem)}.video-consent-copy>p{color:#ddd5e5;margin:.7rem 0 1.2rem}.video-consent-copy>div,.footer-meta>div{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.video-consent-copy a:not(.button-link){color:#fff;align-self:center}.prose{font-size:clamp(1rem,1.5vw,1.08rem)}.prose>:first-child{margin-top:0}.prose h2,.prose h3{margin-top:2.2em}.prose h2{font-size:clamp(1.9rem,4vw,2.8rem)}.prose h3{font-size:clamp(1.45rem,3vw,2rem)}.prose p,.prose li{color:#38313e}.prose a{font-weight:650}.prose pre{color:#f5eff9;background:#24202a;border:1px solid #34263d;border-radius:15px;margin:2rem 0;padding:1.3rem;font-size:.84rem;line-height:1.65;overflow-x:auto;box-shadow:0 14px 40px #180e1e24}.prose :not(pre)>code{background:var(--purple-soft);color:var(--purple-deep);border-radius:.3rem;padding:.13em .38em;font-size:.9em}.prose table{border-collapse:collapse;width:max-content;max-width:100%;margin:2rem 0;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;padding:.65rem .85rem}.objective{border-left:4px solid var(--purple);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--purple-soft);margin-bottom:2rem;padding:1.15rem 1.3rem}.objective p{color:var(--purple-deep);margin:0}.objective span{font-weight:850}.lesson-pagination{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:clamp(4rem,8vw,7rem);padding-top:2rem;display:grid}.lesson-pagination a{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);padding:1.2rem;text-decoration:none;display:grid}.lesson-pagination a:hover{border-color:var(--lilac);box-shadow:var(--shadow-soft)}.lesson-pagination .next{text-align:right}.lesson-pagination small{color:var(--purple);margin-bottom:.35rem;font-weight:800}.lesson-pagination strong{font-size:.9rem;line-height:1.4}.page-hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 80% 30%, #d9c5eb99, transparent 26rem), var(--mochi);min-height:500px;padding-block:clamp(6rem,12vw,10rem)}.page-hero h1{max-width:12ch}.page-hero p:not(.eyebrow){max-width:58ch;color:var(--ink-soft);font-size:1.15rem}.access-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-soft);margin-top:2rem;padding:clamp(2rem,6vw,4rem)}.access-card h2{max-width:13ch}.access-card>p:not(.eyebrow){max-width:62ch;color:var(--ink-soft)}.site-footer{border-top:1px solid var(--line);background:var(--paper)}.footer-inner{justify-content:space-between;align-items:center;gap:3rem;padding-block:3rem;display:flex}.footer-brand{align-items:center;gap:1rem;display:flex}.footer-brand img{width:44px}.footer-brand strong{font-family:Georgia,Times New Roman,serif;font-size:1.1rem}.footer-brand p{color:var(--ink-soft);margin:.15rem 0 0;font-size:.82rem}.footer-inner nav,.footer-meta{align-items:center;gap:1.2rem;display:flex}.footer-inner nav a,.footer-meta{color:var(--ink-soft);font-size:.8rem;font-weight:700}.footer-meta{border-top:1px solid var(--line);justify-content:space-between;padding-block:1.2rem}.footer-meta p{margin:0}.footer-meta a{color:var(--ink-soft);text-decoration:none}.footer-meta a:hover{color:var(--purple)}@media (width<=900px){.desktop-nav{display:none}.mobile-menu{display:block}.hero-grid,.course-hero-grid,.archive-copy{grid-template-columns:1fr}.hero-grid{min-height:auto}.hero-visual{min-height:420px}.course-hero-art{max-width:620px}.lesson-shell{grid-template-columns:1fr}.lesson-sidebar{max-height:none;position:static}.lesson-sidebar nav{display:none}}@media (width<=680px){.shell{width:min(calc(100% - 1.5rem), var(--shell))}.header-inner{min-height:74px}.brand-mark{width:44px;height:44px}.hero h1,.course-hero h1,.page-hero h1{font-size:clamp(2.5rem,13vw,4rem)}.hero-visual{min-height:360px}.archive-card{padding:1.4rem}.course-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:start;gap:1rem}.course-hero-art dl{grid-template-columns:1fr}.course-hero-art dl div{border-top:1px solid var(--line);border-left:0}.course-hero-art dl div:first-child{border-top:0}.lesson-list a{grid-template-columns:34px minmax(0,1fr)}.lesson-access{display:none}.lesson-pagination{grid-template-columns:1fr}.lesson-pagination .next{text-align:left}.footer-inner,.footer-meta{flex-direction:column;align-items:flex-start;gap:1.4rem}.footer-inner nav{flex-direction:column;align-items:flex-start;gap:.6rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
