
@font-face{font-family:Montserrat;src:url('assets/montserrat-600.ttf');font-weight:600}@font-face{font-family:Montserrat;src:url('assets/montserrat-900.ttf');font-weight:900}@font-face{font-family:Source;src:url('assets/source-serif-regular.ttf');font-weight:400}
:root{--navy:#0a233f;--teal:#00a2ae;--gold:#ffcd00;--paper:#f5f7f6;--ink:#122f46;--muted:#576f7c;--line:#d5e0e3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font:600 16px/1.6 Montserrat,Arial,sans-serif}button,input,textarea{font:inherit}a{color:inherit;text-underline-offset:4px}button,a,textarea{touch-action:manipulation}button,a:focus-visible,textarea:focus-visible{outline-offset:4px}:focus-visible{outline:3px solid var(--teal)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.skip{position:absolute;left:16px;top:-100px;background:var(--gold);color:var(--navy);padding:10px;z-index:5}.skip:focus{top:10px}.header{background:var(--navy);border-top:5px solid var(--teal);color:white}.bar{max-width:1280px;padding:24px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:220px;max-width:55vw;height:auto}.header a{text-decoration:none}.header nav{display:flex;gap:24px;font-size:13px}.hero{background:var(--navy);color:#fff;padding:46px 32px 60px}.wrap{max-width:1216px;margin:auto}.hero h1{font:900 clamp(35px,5.2vw,66px)/1.08 Montserrat;letter-spacing:-.035em;margin:16px 0 22px;max-width:880px}.hero h1 span{display:block}.hero .accent{color:var(--gold)}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}.hero .eyebrow{color:#67d5dc}.lede{font:400 24px/1.5 Source,Georgia,serif;max-width:690px;margin:0}.meta{font-size:12px;color:var(--muted);margin-top:18px}.hero .meta{color:#b9ccd5}.subnav{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.subnav a,.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border-radius:5px;text-decoration:none;font:600 13px/1.4 Montserrat;border:1px solid transparent;background:var(--navy);color:white}.subnav a{background:#16364f;border-color:#416071}.subnav a:first-child{background:var(--gold);color:var(--navy)}.button.light{background:#e4f1f2;color:var(--navy)}main{max-width:1280px;padding:44px 32px 70px;margin:auto}h2{font:900 clamp(25px,3vw,34px)/1.2 Montserrat;letter-spacing:-.025em;margin:0 0 16px}h3{font:900 20px/1.35 Montserrat;margin:0 0 12px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.section-head p{font-size:12px;color:var(--muted)}.library{margin-bottom:48px}.library-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:24px}.player-shell{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white}.screen{position:relative;background:#071b2e;aspect-ratio:16/9;display:grid;place-items:center;overflow:hidden}.screen video{width:100%;height:100%;max-height:460px;object-fit:contain;background:#071b2e}.screen img{height:100%;width:100%;object-fit:contain;position:absolute;inset:0;opacity:.44}.pending{z-index:1;color:#fff;background:rgba(7,27,46,.94);border:1px solid #416071;border-radius:8px;max-width:340px;padding:24px;text-align:center}.pending strong{display:block;font-size:22px;margin-bottom:8px}.pending p{font:400 19px/1.5 Source;margin:0}.player-info{padding:24px}.player-info p{font:400 21px/1.5 Source;margin:0 0 14px}.player-info .video-context{font:600 12px/1.6 Montserrat;color:var(--muted);margin:0 0 6px}.player-info .fiction{font:400 15px/1.5 Source;color:var(--muted);margin:0 0 20px}.versions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.versions button{border:1px solid var(--line);border-radius:4px;padding:10px 14px;background:white;color:var(--navy);min-height:44px;font-size:13px}.versions button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.versions button small{display:block;font-size:10px;font-weight:600}.playlist{padding:0;margin:0;list-style:none;border-top:1px solid var(--line)}.playlist li{border-bottom:1px solid var(--line)}.playlist button{display:flex;align-items:flex-start;gap:14px;width:100%;padding:17px 14px;text-align:left;border:0;background:transparent;color:var(--navy)}.playlist button[aria-current=true]{background:#e1eff0;border-left:4px solid var(--teal);padding-left:10px}.playlist .n{font:900 15px/1.5 Montserrat;color:#00727c}.playlist strong{display:block;font-size:14px;line-height:1.4}.playlist small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.playlist .read-link{display:block;margin:0 14px 12px 45px;font-size:12px}.body-copy{font:400 22px/1.6 Source,Georgia,serif;max-width:760px}.contents{padding:26px;background:white;border:1px solid var(--line);margin:36px 0 42px}.contents ol{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:14px 0 0;padding:0}.contents a{display:flex;gap:13px;min-height:44px;align-items:center;font-size:14px;text-decoration:none}.contents span{color:#00727c;font-weight:900}.lesson{background:white;border:1px solid var(--line);border-top:4px solid var(--teal);padding:32px;margin:0 0 26px;scroll-margin-top:25px;border-radius:8px}.lesson-grid{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:36px}.lesson h2{font-size:28px}.lesson .number{color:#00727c;font-size:12px;letter-spacing:.13em;margin:0 0 12px}.lesson p{font:400 21px/1.65 Source,Georgia,serif}.lesson blockquote{margin:22px 0;padding:4px 0 4px 20px;border-left:3px solid var(--gold);font:400 24px/1.5 Source}.poster-link img{width:100%;height:auto;display:block;box-shadow:0 8px 20px #0a233f12}.poster-link{display:block;text-decoration:none}.poster-link span{font-size:12px;display:block;margin-top:10px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}details{border-top:1px solid var(--line);margin-top:24px;padding-top:15px}summary{cursor:pointer;min-height:44px;font-size:14px}details pre{white-space:pre-wrap;font:400 19px/1.6 Source;margin:12px 0;max-width:750px}.practice{background:#f1f6f6;padding:18px 22px;margin-top:22px}.practice strong{font-size:13px}.practice p{margin:6px 0;font-size:20px}.notes{background:#e8f0f1;padding:30px;border-radius:8px;margin-top:40px}.notes label{display:block;margin-bottom:10px;font-size:14px}.notes textarea{display:block;width:100%;min-height:150px;background:white;border:1px solid #8da7b0;padding:16px;border-radius:4px;resize:vertical;font:400 21px/1.5 Source}.notes p{font:400 19px/1.5 Source;margin:10px 0}.notes output{font-size:12px;color:var(--muted)}.downloads{margin:42px 0}.download-item{padding:24px 0;border-bottom:1px solid var(--line)}.download-item .actions{margin-top:10px}.footer{padding:26px 32px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);max-width:1280px;margin:auto}.folder{padding:32px;background:white;border-left:5px solid var(--teal);max-width:750px}.folder p{font:400 22px/1.6 Source}.crumb{font-size:13px;margin-bottom:28px}.art-detail{display:grid;grid-template-columns:minmax(0,660px) minmax(260px,1fr);gap:36px}.art-detail img{width:100%;height:auto}.art-detail aside{padding:28px;background:#e7eff0;align-self:start}.nav{display:flex;justify-content:space-between;gap:18px;margin-top:30px;font-size:14px}[hidden]{display:none!important}@media(max-width:900px){.library-grid{grid-template-columns:1fr}.playlist{display:grid;grid-template-columns:1fr 1fr}.playlist li{border:1px solid var(--line)}.lesson-grid{grid-template-columns:minmax(0,1fr) 190px}.art-detail{grid-template-columns:1fr}}@media(max-width:600px){.bar{padding:20px}.header nav{gap:12px;font-size:11px}.hero{padding:32px 20px 38px}.hero h1{font-size:38px}.lede{font-size:22px}main{padding:30px 20px 46px}.section-head{display:block}.playlist{grid-template-columns:1fr}.contents{padding:20px}.contents ol{grid-template-columns:1fr}.lesson{padding:24px 20px}.lesson-grid{grid-template-columns:1fr}.poster-link{max-width:220px;margin:8px auto}.lesson h2{font-size:25px}.player-info{padding:20px}.notes{padding:22px}.footer{padding:24px 20px}.screen{aspect-ratio:4/3}.header nav a:last-child{display:none}.logo{width:180px}.art-detail{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
