:root{--ink:#191816;--paper:#f8f5ef;--white:#fffcf7;--muted:#625d55;--line:#d7cbb9;--gold:#a28a5b;--dark:#111110;--soft:#ece5d9;--good:#37614c;--red:#9a3e36;color-scheme:light;font-family:Montserrat,Arial,sans-serif;font-size:16px;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.22em}a:hover{color:#74582e}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:12px 22px;border:1px solid var(--ink);border-radius:2px;background:var(--ink);color:var(--white);font-size:.81rem;font-weight:500;line-height:1.4;letter-spacing:.025em;text-decoration:none;cursor:pointer;gap:8px}button:hover,.button:hover{background:#39332b;color:#fff}button:disabled{opacity:.5;cursor:not-allowed}.secondary,.button.secondary{color:var(--ink);background:transparent;border-color:var(--line)}.text-button{display:inline;min-height:44px;padding:10px 4px;border:0;background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:4px}.text-button:hover{background:transparent;color:#74582e}:focus-visible{outline:3px solid #977538;outline-offset:4px}label{display:block;font-size:.84rem;font-weight:500;line-height:1.6;margin:17px 0 7px}input,textarea,select{display:block;width:100%;padding:12px 13px;min-height:46px;background:var(--white);color:var(--ink);border:1px solid #bcb09e;border-radius:2px}textarea{resize:vertical;min-height:120px;line-height:1.65}input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:20px;accent-color:var(--ink);flex:0 0 20px;margin:2px 0}input[type=file]{background:transparent}label.check,.choice{display:flex;align-items:flex-start;gap:12px;font-weight:400}.choice{padding:15px;border:1px solid var(--line);background:var(--white);cursor:pointer}.choice:has(input:checked){border-color:var(--gold);background:#eee5d4}h1,h2,h3,h4{font-family:Cinzel,Georgia,serif;font-weight:400;line-height:1.22;margin:0 0 22px}h1{font-size:clamp(2rem,4.2vw,4.25rem)}h2{font-size:clamp(1.55rem,2.4vw,2.35rem)}h3{font-size:1.22rem}h4{font-size:1.04rem}p,li{font-size:.95rem;line-height:1.9}p{margin:0 0 20px}ul,ol{padding-left:23px;margin:18px 0 26px}li{padding-left:5px;margin:6px 0}.eyebrow{font-size:.65rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase;line-height:1.7;margin:0 0 18px;color:var(--muted)}.note{font-size:.76rem;line-height:1.75;color:var(--muted)}.lead{font-size:1.08rem;line-height:1.85;max-width:64ch}.skip{position:absolute;left:15px;top:-70px;padding:12px;background:var(--white);z-index:100}.skip:focus{top:8px}.academy-header{min-height:86px;padding:20px clamp(20px,4vw,65px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:var(--paper)}.academy-header .wordmark{font:400 2.35rem Cinzel,serif;letter-spacing:.12em;text-decoration:none}.academy-header nav{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.academy-header nav a{font-size:.74rem;text-decoration:none}.academy-header nav a[aria-current=page]{text-decoration:underline}.academy-footer{border-top:1px solid var(--line);padding:35px clamp(20px,4vw,65px);display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.academy-footer p,.academy-footer a{font-size:.7rem;margin:0}.academy-footer .eyebrow{font-size:.64rem}.narrow{max-width:900px;margin:0 auto;padding:70px 25px 100px}.notice{margin:18px auto;padding:15px 22px;background:#e8edde;border:1px solid #acb49a;max-width:1200px;font-size:.85rem;line-height:1.6}.notice.error{background:#f4e8df;border-color:#b76e59}.notice[hidden],[hidden]{display:none!important}.card{background:var(--white);border:1px solid var(--line);padding:28px;margin:0 0 22px;overflow-wrap:anywhere}.card p:last-child{margin-bottom:0}.card h2{font-size:1.6rem}.card h3{font-size:1.2rem}.card.dark{background:var(--dark);color:var(--paper);border-color:#363028}.card.dark .eyebrow,.card.dark .note{color:#c1b49e}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:24px 0}.badge{display:inline-flex;align-items:center;padding:5px 10px;background:#ece6da;color:#625137;border:1px solid #ccbaa0;font-size:.62rem;letter-spacing:.045em;line-height:1.5;white-space:normal}.badge.good{color:#315743;background:#e7eee6;border-color:#b2c4b0}.grid{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid>.card{margin:0}.table-scroll{overflow:auto;max-width:100%;margin:20px 0}table{border-collapse:collapse;width:100%;font-size:.8rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:14px 12px;vertical-align:top;line-height:1.7}th{font-weight:600;background:var(--soft)}dl{display:grid;grid-template-columns:180px 1fr;gap:10px 20px;font-size:.85rem;line-height:1.75}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:.92rem;line-height:1.55;cursor:pointer;padding:3px 30px 3px 0}details[open]>summary{margin-bottom:20px}blockquote{margin:28px 0;padding:5px 0 5px 22px;border-left:2px solid var(--gold);font-size:1.02rem;line-height:1.8}.rule{height:1px;background:var(--line);margin:35px 0}.sale-hero{display:grid;grid-template-columns:1.06fr 1fr;background:var(--dark);color:var(--paper);min-height:680px}.sale-intro{padding:clamp(45px,7vw,100px) clamp(25px,6vw,90px);align-self:center}.sale-intro h1{font-size:clamp(2.25rem,4.2vw,4.6rem);letter-spacing:.005em;line-height:1.14}.sale-intro .eyebrow{color:#c2b091}.sale-intro p{color:#d9d2c6}.sale-intro .button{background:#e7dcc8;color:#1c1813;border-color:#e7dcc8}.sale-intro .secondary{color:#eee3d0;background:transparent;border-color:#746954}.hero-art{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 30px;background:radial-gradient(ellipse at 35% 25%,#dfd3c0 0%,#a89b85 65%,#837763 100%);position:relative;overflow:hidden}.hero-art:after{content:'';position:absolute;inset:20px;border:1px solid #77684c;opacity:.5;pointer-events:none}.hero-art img{width:95%;height:auto;mix-blend-mode:multiply;max-width:700px}.hero-art .art-caption{color:#2e291f;font-size:.63rem;letter-spacing:.2em;position:absolute;bottom:45px;text-align:center;padding:0 30px}.sale-section{max-width:1260px;margin:auto;padding:85px 45px}.sale-section .section-head{max-width:760px;margin-bottom:38px}.sale-strip{background:#e9e1d3;padding:25px;display:flex;gap:28px;justify-content:center;flex-wrap:wrap;font-size:.67rem;letter-spacing:.09em;text-align:center}.module-overview{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.module-overview details{padding:21px 0}.module-overview summary{display:flex;gap:20px;align-items:baseline;font-size:.83rem}.module-overview summary span{font-family:Cinzel,serif;font-size:1.4rem;color:#9a8157}.module-overview p{font-size:.84rem}.teacher{background:#e8e0d3}.teacher .sale-section{display:grid;grid-template-columns:1fr 1.6fr;gap:65px;align-items:center}.teacher-mark{font:400 clamp(4rem,8vw,8rem) Cinzel,serif;text-align:center;color:#5e503d;line-height:1.3}.teacher-mark small{display:block;font:500 .65rem Montserrat,sans-serif;letter-spacing:.2em}.package{position:relative;display:flex;flex-direction:column}.package .actions{margin-top:auto;padding-top:12px}.package .eyebrow{color:#806841}.package .price{font-size:1.5rem;font-family:Cinzel,serif}.package ul{flex:1}.sale-preview{background:#ebe5da}.preview-sample{border-left:2px solid var(--gold);padding-left:28px;max-width:700px}.sticky-sale{position:sticky;bottom:0;background:#f8f5eff5;padding:12px 25px;border-top:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:25px;z-index:10;backdrop-filter:blur(10px)}.sticky-sale span{font-size:.76rem}.academy-layout{display:grid;grid-template-columns:280px minmax(0,1fr);max-width:1500px;margin:auto;min-height:75vh}.course-sidebar{padding:35px 24px;border-right:1px solid var(--line);background:#f0eadf}.course-sidebar>div{position:sticky;top:22px;max-height:calc(100vh - 40px);overflow:auto}.course-sidebar h2{font-size:1.04rem;margin-bottom:14px}.course-sidebar nav{display:grid;gap:5px;margin:20px 0}.course-sidebar button{display:block;text-align:left;background:transparent;color:var(--ink);border-color:transparent;padding:12px 10px;font-size:.74rem;min-height:43px}.course-sidebar button[aria-current=true]{background:#e0d6c5;border-color:#cabb9f}.course-sidebar details{padding:13px 0}.course-sidebar summary{font-size:.74rem;padding-right:5px;margin-bottom:0}.course-sidebar details[open]>summary{margin-bottom:10px}.course-sidebar .lesson-nav{font-size:.7rem;width:100%;line-height:1.6;padding:8px 3px 8px 12px;border-left:1px solid #b2a288;border-radius:0}.course-sidebar .lesson-nav.done:before{content:'✓ ';color:#41664b}.course-main{padding:50px clamp(24px,4vw,65px) 90px;min-width:0;max-width:1120px}.course-main h1{font-size:clamp(1.8rem,3vw,3rem)}.course-banner{border-bottom:1px solid #c6b793;background:#e8ddc6;padding:15px 30px;text-align:center;font-size:.76rem;line-height:1.7}.course-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}.course-tabs button{font-size:.7rem;padding:10px 14px}.lesson-body{max-width:76ch}.lesson-body h2,.lesson-body h3{font-size:1.36rem;line-height:1.45;margin:38px 0 17px}.lesson-body p{font-size:.91rem;line-height:1.95}.lesson-body a,.source-list a{overflow-wrap:anywhere}.lesson-meta{display:flex;justify-content:space-between;gap:20px;font-size:.72rem;color:var(--muted);margin:0 0 25px}.lesson-figure{margin:35px 0;border:1px solid var(--line);background:#fff;padding:15px}.lesson-figure img{width:100%;height:auto;max-height:620px;object-fit:contain}.lesson-figure figcaption{padding:15px 8px 4px;font-size:.72rem;line-height:1.8;color:var(--muted)}.learning-callout{background:#eae4d8;border-left:2px solid var(--gold);padding:25px 28px;margin:30px 0}.learning-callout h2{font-size:1.3rem}.source-list{padding-left:18px}.source-list li{font-size:.73rem;line-height:1.8;margin-bottom:12px}.source-list small{display:block;color:var(--muted)}.progress-track{height:5px;background:#d6cabb;overflow:hidden;margin:12px 0}.progress-track span{display:block;height:100%;background:#856c43;transition:width .3s}progress{width:100%;height:8px;accent-color:#856c43}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.stat strong{display:block;font:400 2.1rem Cinzel,serif;margin-bottom:7px}.stat span{font-size:.72rem;line-height:1.7;color:var(--muted)}.quiz-question{padding:28px 0;border-bottom:1px solid var(--line)}.quiz-question legend{font-family:Cinzel,serif;font-size:1.17rem;line-height:1.55;margin-bottom:14px}.quiz-question fieldset{border:0;padding:0;margin:0;min-width:0}.answer-feedback{padding:18px 20px;background:#ede5d7;border-left:3px solid #957c50;margin:14px 0}.answer-feedback.correct{background:#e5ece2;border-color:#567851}.answer-feedback p{font-size:.84rem;margin:10px 0 0}.tool-canvas{width:100%;height:auto;border:1px solid var(--line);background:#fff;touch-action:none}.tool-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.tool-controls label{margin:0;font-size:.74rem}.tool-controls select{min-width:150px}.swatches{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.swatch{height:140px;display:flex;align-items:flex-end;padding:12px;color:#fff;text-shadow:0 1px 4px #000;font-size:.74rem;border:1px solid #65503d}.tool-feedback{padding:25px;background:var(--soft);margin-top:20px}.image-row{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.image-row a{max-width:180px}.image-row img{width:160px;height:110px;object-fit:contain;background:#fff;border:1px solid var(--line)}video{display:block;width:100%;max-height:600px;background:#1d1b18}.admin-layout{max-width:1480px;margin:auto;padding:38px 35px 85px}.admin-layout h1{font-size:2.65rem}.admin-tabs{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:15px;margin:24px 0 35px}.admin-tabs button{font-size:.67rem;padding:9px 13px;min-height:40px}.admin-tabs button[aria-selected=true]{background:#756041;border-color:#756041;color:#fff}.editor-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:30px}.editor-layout>aside{max-height:75vh;overflow:auto}.editor-layout textarea.long{min-height:520px;font-size:.87rem;line-height:1.8}.editor-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:15px 0;border-bottom:1px solid var(--line);margin-bottom:20px}.editor-toolbar p{margin:0}.admin-panel{min-width:0}.code-editor{font-family:ui-monospace,monospace;font-size:.77rem;min-height:420px}.review-list{list-style:none;padding:0}.review-list li{border-bottom:1px solid var(--line);padding:13px 0;font-size:.83rem}.review-list li:before{content:'○ ';color:#97713c}.admin-item{margin:22px 0;padding:24px;border:1px solid var(--line);background:var(--white)}.admin-item h3{font-size:1.16rem}.admin-item .meta{font-size:.7rem;color:var(--muted);overflow-wrap:anywhere}.login-card{max-width:600px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.link-card{display:block;text-decoration:none;padding:28px;border:1px solid var(--line);background:var(--white)}.link-card:hover{background:#eee6d8;color:inherit}.link-card h3{margin-bottom:10px}.empty{padding:40px 25px;border:1px dashed #b8aa92;text-align:center}.empty h2{font-size:1.5rem}.empty p{max-width:60ch;margin:0 auto 18px}.mobile-course-menu{display:none}dialog{border:1px solid var(--line);max-width:760px;width:calc(100% - 30px);max-height:90vh;padding:30px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#111b}dialog .dialog-close{float:right}.consent-text{font-size:.81rem;line-height:1.8;white-space:pre-wrap;max-height:45vh;overflow:auto;background:var(--white);padding:22px;border:1px solid var(--line)}.serial{font-family:ui-monospace,monospace;font-size:.75rem}.nowrap{white-space:nowrap}@media(min-width:1600px){.sale-hero{max-height:850px}.hero-art img{max-width:760px}}@media(max-width:1050px){.academy-layout{grid-template-columns:245px minmax(0,1fr)}.course-main{padding:35px 28px}.grid.three{grid-template-columns:1fr}.sale-section{padding:65px 30px}.editor-layout{grid-template-columns:220px minmax(0,1fr)}.sale-intro{padding:55px 35px}.sale-hero{min-height:570px}}@media(max-width:740px){.academy-header{padding:17px 21px;gap:15px;min-height:78px}.academy-header .wordmark{font-size:1.85rem}.academy-header nav{gap:12px}.academy-header nav a{font-size:.64rem}.academy-header nav .desktop{display:none}.sale-hero{grid-template-columns:1fr}.sale-intro{padding:53px 26px 44px}.sale-intro h1{font-size:2.65rem}.hero-art{min-height:275px;padding:30px 23px}.hero-art img{max-width:440px}.hero-art .art-caption{bottom:26px;font-size:.56rem}.hero-art:after{inset:13px}.sale-section{padding:58px 25px}.sale-strip{gap:15px;font-size:.6rem}.module-overview{grid-template-columns:1fr}.teacher .sale-section{grid-template-columns:1fr;gap:35px}.teacher-mark{font-size:3.8rem}.grid,.grid.three,.two-fields{grid-template-columns:1fr}.card{padding:24px 21px}.narrow{padding:48px 23px 70px}.academy-layout{display:block}.mobile-course-menu{display:block;width:calc(100% - 36px);margin:18px}.course-sidebar{display:none;border:0;border-bottom:1px solid var(--line);padding:24px}.course-sidebar.visible{display:block}.course-sidebar>div{position:static;max-height:none}.course-main{padding:28px 24px 65px}.course-tabs{gap:6px}.course-tabs button{font-size:.66rem;padding:9px 12px}.course-banner{padding:14px 20px;font-size:.7rem}.stats{gap:15px}.stat strong{font-size:1.65rem}.stat span{font-size:.66rem}.lesson-meta{flex-wrap:wrap;gap:9px}.lesson-body p{font-size:.88rem}.lesson-body h2{font-size:1.3rem}.learning-callout{padding:24px 22px}.admin-layout{padding:30px 20px 65px}.admin-layout h1{font-size:2rem}.editor-layout{grid-template-columns:1fr}.editor-layout>aside{max-height:250px;border-bottom:1px solid var(--line);padding-bottom:20px}.admin-tabs{gap:6px}.admin-tabs button{font-size:.64rem;padding:8px 11px}.editor-layout textarea.long{min-height:400px}.swatches{gap:8px}.swatch{height:115px;padding:9px;font-size:.64rem}dl{grid-template-columns:1fr;gap:3px}dd{margin-bottom:12px}.sticky-sale{gap:12px;padding:11px 16px}.sticky-sale span{font-size:.65rem}.sticky-sale .button{font-size:.67rem;padding:11px 15px}.academy-footer{padding:28px 24px}.actions>button,.actions>.button{flex-grow:1}.tool-controls button{padding:10px 15px}.quiz-question legend{font-size:1.04rem}dialog{padding:23px}th,td{padding:11px 9px}.admin-item{padding:22px 17px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{.academy-header,.academy-footer,.course-sidebar,.course-tabs,.mobile-course-menu,.actions,button,#academy-notice{display:none!important}body{background:#fff;color:#000}.course-main,.narrow{padding:0;max-width:none}.academy-layout{display:block}.card,.learning-callout{break-inside:avoid}a{color:#000}.lesson-body{max-width:none}}

.teacher-portrait{margin:0;max-width:390px;border:1px solid var(--gold);padding:10px;background:var(--paper)}.teacher-portrait img{display:block;width:100%;height:auto}.teacher-portrait figcaption{padding:13px 4px 4px;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}@media(max-width:740px){.teacher-portrait{width:min(100%,340px);margin:0 auto}}
