
.library-tools{display:flex;align-items:end;justify-content:space-between;gap:24px;border-bottom:1px solid #c9ccc3;padding-bottom:24px;margin-bottom:28px}.library-tools label{display:block;font-size:12px;max-width:520px;width:100%}.library-tools input{display:block;width:100%;margin-top:10px;border:1px solid #bbc1b4;background:#fffefa;border-radius:3px;padding:16px;color:var(--ink)}.library-tools p{font-size:12px;color:#58634f;padding-bottom:16px}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.library-card{display:flex;flex-direction:column;min-width:0;background:#fbfcf6;border:1px solid #cdd1c3;padding:28px;transition:background .2s,transform .2s,border-color .2s}.library-card:hover{background:#edf3df;border-color:#839567;transform:translateY(-3px)}.library-card-top{display:flex;align-items:center;gap:12px;margin-bottom:44px;color:#637155}.library-number{font-family:STIX,Georgia,serif;font-size:29px;color:#7f8e6d}.library-card-top .eyebrow{font-size:8px}.library-code{margin-left:auto;min-width:38px;height:38px;display:grid;place-items:center;background:#17251d;color:#d8fb78;font-size:11px}.library-card>h3{font-size:28px;letter-spacing:-.045em;line-height:1.12;margin:15px 0}.library-card>p{color:#586053;font-size:13px}.library-card-bottom{display:grid;gap:18px;border-top:1px solid #d8ddcf;margin-top:auto;padding-top:20px}.library-card>p{margin-bottom:28px}.library-card-bottom small{font-size:10px;color:#637155}.library-card-bottom .text-link{font-size:12px}.library-empty{padding:30px 0}.lab-hero{background:#141d19;color:#f5f5ef;padding:36px 0 64px}.lab-hero .breadcrumb{font-size:11px;margin-bottom:46px;color:#c1ccba;display:flex;gap:16px;flex-wrap:wrap}.lab-hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:64px;align-items:center}.lab-hero h1{font-size:clamp(40px,4.9vw,72px);line-height:1.03;letter-spacing:-.06em;max-width:700px;margin-top:20px}.lab-hero .standfirst{font-size:16px;max-width:560px;color:#c4cebd;margin:24px 0}.lab-hero .btn{margin-top:6px}.lab-meta{display:flex;gap:24px;margin-top:38px;font-size:10px;color:#a8bb97}.lab-hero-art{min-width:0}.lab-hero-art>p{font-size:10px;color:#a8b39e;margin-top:18px;line-height:1.6}.lab-hero-art .teaching-graphic{border:1px solid #405038}.lab-body{display:grid;grid-template-columns:290px minmax(0,1fr);gap:90px;padding-top:80px;padding-bottom:90px}.lab-brief{align-self:start;position:sticky;top:120px}.lab-brief h2{font-size:25px;letter-spacing:-.035em;line-height:1.35;margin-top:20px}.lab-brief p{font-size:12px;color:#56614f;margin:24px 0}.lab-brief .text-link{font-size:11px}.lab-brief .lab-boundary{font-size:10px;border-top:1px solid #c7cfbd;padding-top:20px;line-height:1.8}.lab-main{min-width:0}.lab-step{padding-bottom:42px;margin-bottom:42px;border-bottom:1px solid #cbd1c1}.lab-step-heading{display:flex;gap:20px;margin-bottom:24px}.lab-step-heading>span{font-family:STIX,Georgia,serif;font-size:42px;line-height:1;color:#798c64}.lab-step-heading h2{font-size:27px;letter-spacing:-.04em;line-height:1.25;margin-top:10px}.prediction-choices{display:grid;gap:12px}.prediction-choices button{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;border:1px solid #bac4ad;background:#fcfdf7;padding:22px;font-size:14px;line-height:1.5}.prediction-choices button[aria-pressed=true]{background:#e3eecf;border-color:#758859}.lab-feedback{font-size:13px;color:#425239;margin-top:20px;min-height:24px}.scenario-controls{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.scenario-controls button{padding:12px 17px;background:#e7ebdf;border:1px solid transparent;font-size:12px;text-align:left;line-height:1.4}.scenario-controls button[aria-pressed=true]{background:#17251d;color:#e7fbba;border-color:#17251d}.scenario-stage{background:#1b281f;color:#f3f7e9;padding:36px;position:relative;overflow:hidden}.scenario-stage::after{content:"";position:absolute;right:-65px;top:-95px;width:260px;height:260px;border:1px solid #a0be6f25;border-radius:50%;pointer-events:none;box-shadow:0 0 0 32px #a0be6f09,0 0 0 64px #a0be6f07}.scenario-stage .eyebrow{color:#bbd397;position:relative;z-index:1}.scenario-metric{display:block;position:relative;z-index:1;font-size:clamp(32px,4vw,58px);font-weight:500;letter-spacing:-.045em;line-height:1.12;margin:20px 0 8px;overflow-wrap:anywhere}.scenario-stage>p{font-size:12px;color:#b7c4a8}.scenario-stage dl{margin:32px 0 0;border-top:1px solid #506345}.scenario-stage dl>div{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 0;border-bottom:1px solid #35462f;font-size:12px;line-height:1.5}.scenario-stage dt{color:#b8c9aa}.scenario-stage dd{margin:0;text-align:right;max-width:55%}.scenario-explanation{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:26px 0 10px}.scenario-explanation p{font-size:14px;color:#47553c}.lab-options{padding:0;margin:0 0 24px;border:0;display:grid;gap:12px}.lab-options label{display:flex;align-items:start;gap:15px;padding:20px;border:1px solid #c9d0bf;background:#fbfcf6;cursor:pointer;font-size:13px;line-height:1.65}.lab-options label:has(input:checked){background:#e5edda;border-color:#82926e}.lab-options input{accent-color:#345723;margin-top:4px;width:18px;height:18px;flex-shrink:0}.lab-complete{padding:30px;background:#dfe9cd;margin-top:26px}.lab-complete h3{font-size:26px;letter-spacing:-.03em;margin:14px 0}.lab-complete p{font-size:13px;margin-bottom:22px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.workbook-feature{margin-top:80px;padding-top:40px;border-top:1px solid #c9ccc3;display:block}.workbook-feature-copy{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:32px}.workbook-feature h3{font-size:clamp(32px,3.5vw,48px);line-height:1.1;letter-spacing:-.045em;margin:14px 0 0}.workbook-feature p{font-size:15px;max-width:520px;margin-bottom:22px}.workbook-feature-media{display:block;max-width:1120px;margin:0 auto;border:1px solid #d5d9cf;transition:box-shadow .2s}.workbook-feature-media:hover{box-shadow:0 16px 42px #25351c12}.workbook-preview{width:100%;height:auto;display:block}.workbook-feature .eyebrow{color:#4b6437}
@media(max-width:1050px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-body{gap:40px;grid-template-columns:230px minmax(0,1fr)}.lab-hero-grid{gap:30px}.lab-meta{gap:15px}.workbook-feature-copy{gap:32px}}
@media(max-width:720px){.lab-hero-grid,.lab-body,.workbook-feature-copy{grid-template-columns:1fr}.lab-hero{padding:24px 0 40px}.lab-hero .breadcrumb{margin-bottom:30px}.lab-hero-art{margin-top:10px}.lab-body{padding-top:40px;gap:25px}.lab-brief{position:static}.lab-brief h2{font-size:23px}.lab-brief .lab-boundary{margin-bottom:0}.lab-step-heading h2{font-size:24px}.lab-step-heading>span{font-size:35px}.scenario-stage{padding:24px}.scenario-explanation{grid-template-columns:1fr;gap:12px}.library-tools{display:block}.library-tools p{padding:18px 0 0}.library-card{padding:24px}.library-card>h3{font-size:25px}.library-grid{gap:14px}.workbook-feature{margin-top:48px;padding-top:28px}.workbook-feature-copy{gap:20px}.scenario-stage dl>div{gap:14px}}
@media(max-width:520px){.library-grid{grid-template-columns:1fr}.library-card-top{margin-bottom:24px}.lab-meta{font-size:9px;gap:18px}.lab-hero h1{font-size:43px}.lab-step-heading{gap:14px}.scenario-controls button{flex:1;min-width:100px}.scenario-stage dl>div{font-size:11px}.prediction-choices button{padding:18px}.lab-complete{padding:22px}}
@media(prefers-reduced-motion:reduce){.library-card{transition:none}.library-card:hover{transform:none}}

.workbook-display{padding-top:52px}.workbook-display figure{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:center;gap:48px;margin:0;background:#e7eddb;padding:32px}.workbook-display img{display:block;width:100%;height:auto;box-shadow:0 12px 30px #22361e16}.workbook-display figcaption>span{font-size:10px;letter-spacing:.12em}.workbook-display figcaption p{font-size:19px;line-height:1.55;margin:24px 0}.workbook-display .text-link{font-size:12px}@media(max-width:760px){.workbook-display figure{grid-template-columns:1fr;padding:18px;gap:20px}.workbook-display figcaption p{font-size:16px;margin:14px 0}}


[data-course-stage][hidden],.player-completion[hidden]{display:none!important}
.lesson-navigation{scroll-margin-top:100px;margin-bottom:36px;padding:26px 0 0;border-top:1px solid #bbc7af}
.lesson-navigation-heading{display:flex;justify-content:space-between;gap:18px;font-size:13px;margin-bottom:20px;color:#4f6143}
.lesson-navigation ol{list-style:none;display:flex;padding:0;margin:0;gap:8px}
.lesson-navigation li{flex:1;min-width:0}
.lesson-navigation button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px 12px;background:#e8edde;border:1px solid transparent;color:#46573b;font-size:14px;cursor:pointer;text-align:left}
.lesson-navigation button>span{font-size:12px;color:#728464}
.lesson-navigation button[aria-current=step]{background:#17251d;color:#eef4e6}
.lesson-navigation button[aria-current=step]>span{color:#d8fb78}
.lesson-navigation button.is-passed:not([aria-current]){border-color:#81946d;background:#e1eaca}
.lesson-navigation [role=progressbar]{height:3px;background:#dce3d2;margin-top:20px;overflow:hidden}
.lesson-navigation [role=progressbar]>span{display:block;height:100%;background:#486936;transition:width .35s}
.lesson-player-footer{padding:28px 0 60px;border-top:1px solid #bbc7af}
.player-controls{display:flex;align-items:center;justify-content:space-between;gap:22px}
.player-controls>[data-player-prompt]{font-size:14px;color:#536247;flex:1;text-align:center}
.player-controls button:disabled{opacity:.45;cursor:not-allowed}
.player-storage{display:flex;justify-content:space-between;gap:24px;margin-top:24px;color:#5e6c53;font-size:12px}
.player-storage button{font-size:12px;background:none;border:0;padding:0;text-decoration:underline;cursor:pointer;color:inherit}
.player-completion{margin-top:35px;background:#e1eccd;padding:36px}
.player-completion h2{font-size:36px;line-height:1.15;letter-spacing:-.04em;margin:18px 0}
.player-completion p{font-size:17px;max-width:620px;margin-bottom:24px}
.player-completion .text-link{display:inline-block;margin:20px 0 0 24px}
.lab-body{grid-template-columns:260px minmax(0,1fr);gap:65px}
.lab-brief p{font-size:15px}.lab-brief .lab-boundary{font-size:12px}.lab-brief .text-link{font-size:14px}
.lab-step{border:0;margin-bottom:0;padding-bottom:40px;min-height:440px}
.lab-step-heading h2{font-size:clamp(28px,2.7vw,38px)}
.lesson-opening{font-size:19px;line-height:1.7;margin:20px 0 28px;max-width:760px}
.lesson-teaching{border-left:3px solid #627c43;padding:8px 0 8px 26px;margin:30px 0}
.lesson-teaching>p{font-size:20px;line-height:1.65;margin-top:14px;max-width:760px}
.lesson-method-title{font-size:20px;margin:34px 0 18px}
.lesson-method{counter-reset:method;list-style:none;padding:0;display:grid;gap:18px}
.lesson-method li{counter-increment:method;display:flex;gap:18px;font-size:17px;line-height:1.65}
.lesson-method li:before{content:counter(method,decimal-leading-zero);color:#70855b;font-size:13px;line-height:2.1;flex-shrink:0}
.lesson-hint{padding:20px 0;border-top:1px solid #ccd4c2;margin:24px 0;font-size:16px}.lesson-hint summary{cursor:pointer}.lesson-hint p{margin-top:16px;color:#536247}
.lesson-companion{display:flex;align-items:start;gap:20px;padding:28px;background:#e4ead9;margin:36px 0}.lesson-companion h3{font-size:23px;margin:0 0 14px}.lesson-companion p{font-size:16px;margin-bottom:20px}.lesson-companion img{flex-shrink:0}
.prediction-choices button,.lab-options label{font-size:17px}.lab-feedback,.scenario-explanation p{font-size:17px;line-height:1.65}.scenario-controls button{font-size:15px}.scenario-stage>p,.scenario-stage dl>div{font-size:15px}
.library-card>p{font-size:16px}.library-card-bottom small{font-size:12px}.library-card-bottom .text-link{font-size:14px}.library-card-top .eyebrow{font-size:10px}
.case-page .lesson-navigation,.case-page .lesson-player-footer{width:min(1280px,90%);margin-left:auto;margin-right:auto}
.case-page .lesson-navigation{margin-top:42px;margin-bottom:0}.case-page .lesson-navigation button{flex-direction:row;gap:16px;align-items:center;padding:20px}
.case-page .case-hero{padding:34px 0 48px}.case-page .case-hero-grid{align-items:center;gap:50px}.case-page .case-hero .case-hero-grid h1{font-size:clamp(38px,4.6vw,68px)}
.case-page .case-hero .lesson-photo{display:none}.case-page .lesson-orientation h2{font-size:22px}.case-page .lesson-orientation{padding:24px 0}.case-page .case-brief .case-lead{font-size:23px}
.case-page.has-course-player .cta-band{display:none}.case-page [data-course-stage]{min-height:440px}.case-page .lesson-player-footer{margin-top:32px}
@media(max-width:1050px){.lab-body{grid-template-columns:210px minmax(0,1fr);gap:35px}.lesson-navigation button{padding:14px 8px;font-size:12px}.player-controls{flex-wrap:wrap}.player-controls>[data-player-prompt]{order:3;flex-basis:100%;text-align:left}}
@media(max-width:720px){.lab-body{grid-template-columns:1fr}.lab-brief{border-bottom:1px solid #cbd4c1;padding-bottom:18px}.lab-brief .lab-boundary{display:none}.lab-brief p{margin:14px 0}.lesson-navigation{margin-bottom:28px}.lesson-navigation ol{gap:4px}.lesson-navigation button{padding:14px 6px;font-size:11px;gap:8px}.lesson-navigation-heading{font-size:11px}.lesson-opening{font-size:17px}.lesson-teaching>p{font-size:18px}.lab-step{min-height:360px}.lesson-companion{padding:20px}.lesson-method li,.prediction-choices button,.lab-options label{font-size:16px}.player-storage{flex-direction:column;align-items:start;gap:14px}.player-controls{gap:14px}.player-controls .btn{font-size:13px;padding:16px}.player-completion{padding:24px}.player-completion .text-link{margin-left:0}.case-page .lesson-navigation button{flex-direction:column;align-items:start;padding:14px 8px;gap:8px}.case-page .case-hero-grid{gap:26px}}
@media(prefers-reduced-motion:reduce){.lesson-navigation [role=progressbar]>span{transition:none}}
.library-card[hidden]{display:none!important}


.section-courses .page-body{padding-top:40px}
.course-selection .section-head{margin-bottom:22px}
.course-selection .section-head h2{font-size:clamp(30px,3.4vw,44px)}
.library-tools{margin:0 0 18px;padding-bottom:18px}
.library-grid{gap:14px}
.library-card{padding:24px;min-height:0;gap:0}
.library-card>h3{font-size:23px;line-height:1.25;margin:10px 0 12px;letter-spacing:-.025em}
.library-card>.library-task{font-size:17px;line-height:1.4;color:#1b2a20;margin-bottom:8px}
.library-card>p{font-size:15px;line-height:1.6;margin:0 0 12px}
.library-card-bottom{margin-top:auto;padding-top:18px;gap:12px}
.library-card-bottom small{max-width:150px;line-height:1.5}
.section-courses .section-gap{margin-top:64px}
.section-courses .workbook-feature{margin-top:38px}
.section-courses .team-evaluation{gap:28px}
@media(max-width:800px){.section-courses .page-body{padding-top:30px}.library-card{padding:22px}.library-card>h3{font-size:24px}.section-courses .section-gap{margin-top:48px}}
