*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#252525;font:16px/1.6 var(--course-ui,Arial,sans-serif)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible{outline:3px solid var(--course-accent,#f25f35);outline-offset:4px}[hidden]{display:none!important}h1,h2,h3{font-family:var(--course-heading,Arial,sans-serif);line-height:1.2;letter-spacing:-.025em;margin:0 0 24px}h1{font-size:clamp(32px,4vw,52px)}h2{font-size:28px}h3{font-size:23px}p{margin:0 0 24px}p,li,h1,h2,h3,button{overflow-wrap:anywhere}.text,blockquote,.process-copy{font:19px/1.85 var(--course-text,Georgia,serif);white-space:pre-wrap}.skip-link{position:fixed;top:-100px;z-index:20;padding:12px;background:#fff;color:#222}.skip-link:focus{top:0}
.course-outline{position:fixed;width:280px;inset:0 auto 0 0;overflow-y:auto;background:#fafafa;border-right:1px solid #eee;z-index:10;transition:transform .25s ease}.outline-cover{padding:40px 26px 28px;background:var(--course-accent,#f25f35);color:var(--course-accent-text,#fff)}.outline-brand{font-size:10px;letter-spacing:2px}.outline-cover h2{font-size:22px;margin:28px 0 22px;line-height:1.35}.outline-cover #progress{font-size:11px}.outline-progress{height:3px;background:#ffffff55;margin-top:12px}.outline-progress span{height:100%;display:block;width:0;background:currentColor;transition:width .3s}.outline-overview,.outline-lesson{border:0;background:transparent;text-align:left;width:100%;color:#353535;padding:22px 24px;display:flex;gap:12px;align-items:center}.outline-overview{font-size:13px;border-bottom:1px solid #e8e8e8}.outline-lesson{font-size:13px;line-height:1.5;border-bottom:1px solid #eee;border-left:3px solid transparent}.outline-lesson[aria-current=step]{background:#fff;border-left-color:var(--course-accent,#f25f35);font-weight:700}.outline-number{font-size:11px;color:#777}.outline-check{margin-left:auto;color:var(--course-accent,#f25f35)}.player-topbar{height:62px;position:sticky;top:0;margin-left:280px;display:flex;gap:20px;align-items:center;padding:0 30px;border-bottom:1px solid #eee;background:#fffffff2;z-index:8;font-size:12px}.player-topbar button{border:0;background:none;font-size:20px}.player-brand{margin-left:auto;font-size:11px;color:#888}main{margin-left:280px;min-width:0}.outline-collapsed .course-outline{transform:translateX(-100%)}.outline-collapsed main,.outline-collapsed .player-topbar{margin-left:0}
.cover{position:relative;min-height:510px;display:flex;overflow:hidden;background:linear-gradient(135deg,var(--course-cover-start,#071a38),var(--course-cover-middle,#0d315d),var(--course-cover-end,#0d5b73));color:var(--course-cover-text,#fff)}.cover-copy{position:relative;padding:80px clamp(28px,7vw,100px);max-width:900px;align-self:center;z-index:1}.cover-copy small,.section-label{font-size:10px;font-family:var(--course-ui,Arial,sans-serif);letter-spacing:2px;text-transform:uppercase}.cover h1{font-size:clamp(36px,5.5vw,70px);margin:28px 0}.cover-author{font-size:12px;opacity:.85}.start-button{border:0;border-radius:30px;background:#fff;color:#222;padding:15px 28px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.start-button span{margin-left:26px}.overview-image{width:100%;height:100%;object-fit:cover;display:block}.cover-gradient .overview-image,.cover-photo .overview-image{position:absolute;inset:0;opacity:.38}.cover-photo:has(.overview-image){background:#111;color:white}.cover-split{background:var(--course-accent,#f25f35);color:var(--course-accent-text,#fff);display:grid;grid-template-columns:1fr 1fr}.cover-split .overview-image{grid-column:2;grid-row:1;min-height:540px}.cover-split .cover-copy{grid-column:1;grid-row:1;padding:65px 45px}.cover-split h1{font-size:clamp(32px,4vw,56px)}.cover-image{flex-direction:column;background:#fff;color:#222}.cover-image .overview-image{height:360px}.cover-minimal{background:#fff;color:#222;min-height:340px}.cover-minimal .overview-image{width:40%;object-fit:cover}.cover-minimal .start-button,.cover-image .start-button{background:var(--course-accent,#f25f35);color:var(--course-accent-text,#fff)}.overview-introduction{max-width:850px;margin:auto;padding:76px 45px 85px}.overview-introduction>.section-label{display:block;margin-bottom:28px}.overview-introduction h2{font-size:22px;margin-top:60px}.overview-lessons button{display:flex;align-items:center;gap:24px;width:100%;padding:24px 0;border:0;border-top:1px solid #eee;background:#fff;text-align:left;font-size:14px}.overview-lessons button>span:first-child{color:#aaa;font-size:11px}.overview-lessons button>span:last-child{margin-left:auto}.overview-lessons button:hover{color:var(--course-accent,#f25f35)}
.lesson-heading{max-width:850px;margin:auto;padding:75px 45px 68px}.lesson-heading h1{margin:24px 0}.lesson-author{font-size:12px;color:#888}.lesson-rule{height:3px;width:72px;display:block;margin-top:34px;background:var(--course-accent,#f25f35)}.block{padding:30px 45px;position:relative;scroll-margin-top:85px;background-position:center;background-size:cover}.block-content{max-width:var(--block-width,760px);margin:auto;position:relative}.block .text:last-child{margin-bottom:0}.block h2{margin-bottom:20px}.block img,.block video,.block iframe{max-width:100%;border:0}.block img{display:block;width:100%;height:auto}.block video,.block iframe{width:100%;aspect-ratio:16/9;background:#111}.block figure{margin:0}.block figcaption{text-align:center;color:#777;font-size:12px;margin-top:16px}.block li{margin-bottom:12px}.block pre{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.8 monospace}.statement{font-size:26px;text-align:center;line-height:1.6;border-left:0;padding:24px 0}.block blockquote{border-left:3px solid var(--course-accent,#f25f35);margin:0;padding:12px 0 12px 30px}.block blockquote footer{font-size:13px;margin-top:18px}.block hr{border:0;border-top:1px solid #ddd;margin:0}.continue-block{display:block;min-width:220px;margin:0 auto;border:0;border-radius:4px;background:var(--course-accent,#f25f35);color:var(--course-accent-text,#fff);padding:17px 40px;font-size:11px;letter-spacing:1.5px;font-weight:700;text-transform:uppercase;transition:filter .2s}.continue-block:hover:enabled{filter:brightness(.92)}.continue-block:disabled{background:#eee;color:#666;opacity:1}.section-revealed{animation:reveal .45s ease-out both}@keyframes reveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.studio-flashcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.studio-flip-card{font:18px/1.65 var(--course-text,Georgia,serif);border:0;background:transparent;color:#252525;width:100%;min-width:0;perspective:1200px;padding:0;text-align:center}.card-turn{display:grid;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.6,.25,1);min-height:300px;width:100%}.studio-flip-card[aria-pressed=true] .card-turn{transform:rotateY(180deg)}.card-front,.card-back{grid-area:1/1;display:flex;align-items:center;justify-content:center;flex-direction:column;white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;padding:26px;border:1px solid #e5e5e5;box-shadow:0 4px 18px #00000009;backface-visibility:hidden;-webkit-backface-visibility:hidden;min-height:300px;border-top:3px solid var(--course-accent,#f25f35)}.card-back{transform:rotateY(180deg);background:#fff}.card-front img,.card-back img{max-height:220px;object-fit:cover;margin-bottom:16px}.card-face-image:has(img):not(:has(.card-face-copy:not(:empty))){padding:0}.card-face-image:has(img):not(:has(.card-face-copy:not(:empty))) img{max-height:none;height:300px;margin:0;object-fit:cover}.card-side-label{display:none}.card-hint{display:block;margin-top:12px;font:11px var(--course-ui,Arial,sans-serif);color:#888}.studio-tabs [role=tablist]{display:flex;gap:0;border-bottom:1px solid #ddd}.studio-tabs [role=tab]{flex:1;border:0;border-bottom:3px solid transparent;background:#fafafa;padding:18px 12px;font-size:13px;color:#444}.studio-tabs [aria-selected=true]{border-bottom-color:var(--course-accent,#f25f35);background:#fff;color:#111;font-weight:700}.studio-tabs [role=tabpanel]{padding:38px 30px;background:#fff;border:1px solid #eee;border-top:0;min-height:170px;font:19px/1.85 var(--course-text,Georgia,serif);white-space:pre-wrap;animation:reveal .3s ease-out}
.studio-process{background:#f8f8f8;padding:25px}.process-stage{position:relative;background:#fff;box-shadow:0 4px 20px #00000009;min-height:280px}.process-step{padding:48px;text-align:center;animation:reveal .3s ease-out}.process-step h3{margin:18px 0}.process-step-count{font:10px var(--course-ui,Arial,sans-serif);letter-spacing:2px;color:#888}.process-copy{font-size:17px;min-height:54px}.process-step-start{border:0;border-radius:30px;background:var(--course-accent,#f25f35);color:var(--course-accent-text,#fff);padding:12px 28px;font-size:11px;letter-spacing:1px}.process-controls{display:flex;justify-content:center;align-items:center;gap:12px;padding-top:22px}.process-controls button{border:0;background:none;padding:8px;font-size:12px}.process-controls button[aria-current=step]{border-bottom:2px solid var(--course-accent,#f25f35);font-weight:700}.process-controls .process-arrow{background:#fff;border:1px solid #eee;border-radius:50%;width:36px;height:36px;padding:0;font-size:19px}.block fieldset{border:1px solid #e5e5e5;padding:30px;background:#fff}.block legend{font-size:21px;font-weight:700;padding:0 10px}.block fieldset label{display:block;padding:15px 10px;border-bottom:1px solid #eee;font-size:15px}.block input[type=radio]{accent-color:var(--course-accent,#f25f35);margin-right:10px}
.lesson-navigation{max-width:850px;margin:auto;padding:65px 45px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px}.lesson-navigation button{border:0;background:none;font-size:13px;padding:14px 0;color:#333}.lesson-navigation .next{font-weight:700;color:var(--course-accent,#f25f35)}.gate-note{width:100%;font-size:12px;color:#888;text-align:right;margin:0}.lesson-navigation:not(:has(.next:disabled)) .gate-note{display:none}.course-footer{padding:28px;text-align:center;border-top:1px solid #eee;color:#999;font-size:11px}#playerStatus{padding:10px 30px;color:#88531f;font-size:13px}#outlineBackdrop{position:fixed;inset:62px 0 0;z-index:9;background:#0004;border:0}
@media(max-width:1000px){.course-outline{width:245px}main,.player-topbar{margin-left:245px}.studio-flashcards{gap:12px}.card-front,.card-back{padding:20px;min-height:260px}.cover-split .cover-copy{padding:50px 28px}.cover-split .overview-image{min-height:460px}}
@media(max-width:760px){.course-outline{transform:translateX(-100%);top:62px;width:280px}.outline-open .course-outline{transform:none}main,.player-topbar{margin-left:0}.player-topbar{padding:0 18px;gap:14px}.player-topbar>span:first-of-type{max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-brand{display:none}.cover{min-height:380px}.cover-copy{padding:54px 28px}.cover-split{grid-template-columns:1fr}.cover-split .overview-image{grid-column:1;grid-row:1;height:240px;min-height:0}.cover-split .cover-copy{grid-column:1;grid-row:2;padding:38px 28px}.cover-image .overview-image{height:240px}.cover-minimal .overview-image{display:none}.overview-introduction{padding:50px 25px}.lesson-heading{padding:50px 25px 36px}.block{padding:24px 25px}.text,blockquote{font-size:18px;line-height:1.85}.studio-flashcards{grid-template-columns:1fr;max-width:370px;margin:auto;gap:28px}.card-turn,.card-front,.card-back{min-height:280px}.studio-tabs [role=tab]{padding:14px 8px}.studio-tabs [role=tabpanel]{padding:25px 20px;font-size:18px}.process-step{padding:30px 20px}.studio-process{padding:14px}.process-controls{gap:6px}.lesson-navigation{padding:40px 25px}.overview-lessons button{gap:14px}.block fieldset{padding:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.card-turn{height:330px}.card-front,.card-back{min-height:0;height:330px;overflow:auto}.card-front img,.card-back img{max-height:165px}.card-face-image:has(img):not(:has(.card-face-copy:not(:empty))) img{height:326px}.card-hint{display:inline-block;background:#ffffffdd;color:#555;border-radius:20px;padding:6px 12px}.studio-flip-card{align-self:start}

.preview-unfinished{padding:24px;border:1px dashed #ddd;color:#777;background:#fafafa;font-size:13px}.preview-unfinished p{margin:8px 0 0}

/* Keep resource spacing predictable; custom inline spacing still takes precedence. */
.block-content>:first-child{margin-top:0}.block-content>:last-child{margin-bottom:0}
.studio-accordion details{border:1px solid #ddd;border-radius:6px;margin:0 0 12px;background:#fff;color:#252525;overflow:hidden}
.studio-accordion details:last-child{margin-bottom:0}
.studio-accordion summary{cursor:pointer;padding:18px 22px;font:600 16px/1.5 var(--course-ui,Arial,sans-serif);overflow-wrap:anywhere}
.studio-accordion summary:focus-visible{outline:2px solid var(--course-accent,#f25f35);outline-offset:-3px}
.studio-accordion details[open] summary{border-bottom:1px solid #eee}
.studio-accordion .accordion-copy{padding:20px 22px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}
