@font-face{font-family:Lato;src:url('/assets/Lato-Regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Lato;src:url('/assets/Lato-Bold.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:Lato;src:url('/assets/Lato-Italic.ttf') format('truetype');font-style:italic;font-display:swap}@font-face{font-family:Mono;src:url('/assets/LiberationMono-Regular.ttf') format('truetype');font-display:swap}
:root{--navy:#003562;--ink:#16374c;--blue:#055a82;--sky:#43b5e7;--pale:#eaf5f9;--paper:#f5f6f2;--muted:#566c79;--line:#d5e1e7;--yellow:#ffde59;--white:#fff;--green:#236d58;--red:#a33232}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font:17px/1.6 Lato,Arial,sans-serif;background:white}button,input,textarea,select{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.13;font-weight:700;letter-spacing:-.035em}h2{font-size:clamp(32px,3.5vw,46px);color:var(--navy)}h3{font-size:26px}h4{font-size:22px}p{line-height:1.6}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #1b82b6;outline-offset:5px}button{border-radius:0}::selection{background:var(--yellow);color:var(--navy)}[hidden]{display:none!important}.shell{width:min(1200px,calc(100% - 96px));margin:auto}.section{padding-top:96px;padding-bottom:96px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--blue);line-height:1.5}.eyebrow.light{color:#b8ddeb}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:15px 23px;min-height:53px;font-size:14px;font-weight:700;letter-spacing:.01em;border:1px solid transparent;border-radius:4px;transition:transform .18s,background .18s;white-space:nowrap}.button:hover{transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.button.yellow{background:var(--yellow);color:var(--navy)}.button.navy{background:var(--navy);color:white}.button.navy:hover{background:var(--blue)}.button.outline{border-color:var(--line);background:white;color:var(--navy)}.text-link{font-size:14px;font-weight:700;color:var(--blue);display:inline-flex;align-items:center;gap:18px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.text-link.white{color:white}.quiet-button{font-size:12px;border:0;background:none;color:var(--muted);padding:6px}.small-button{border:1px solid var(--line);padding:9px 13px;border-radius:4px;background:white;font-size:12px;font-weight:700;white-space:nowrap}.small-button:hover{background:var(--pale)}.skip{position:fixed;left:16px;top:-80px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid #e3e9ed}.header-inner{height:91px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand img{object-fit:contain;width:46px;height:46px}.brand>span{font-size:15px;font-weight:700;letter-spacing:.08em;color:#161d41}.brand small{display:block;font-size:9px;letter-spacing:.2em;font-weight:400;margin-top:3px;color:var(--muted)}#main-nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:700}#main-nav>a:hover{color:var(--blue)}#main-nav .nav-download{padding:11px 17px;background:var(--pale);color:var(--navy);border-radius:3px}.nav-download span{margin-left:14px}.menu-toggle{display:none}.hero{background:var(--navy);color:white;overflow:hidden;position:relative}.hero:before{content:'';position:absolute;width:700px;height:700px;border:1px solid #ffffff09;border-radius:50%;left:-400px;top:40px}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;min-height:642px;gap:36px;padding-top:68px;padding-bottom:72px}.hero-copy{position:relative;z-index:1}.hero .eyebrow{font-size:10px;display:flex;align-items:center;gap:9px}.dot{background:var(--sky);height:5px;width:5px;border-radius:50%;display:inline-block}.hero h1{font-size:clamp(42px,4.8vw,65px);line-height:1.075;letter-spacing:-.05em;margin:28px 0 25px}.hero h1 em{font-style:normal;color:var(--yellow);position:relative}.hero h1 em:after{content:'';height:2px;background:var(--yellow);position:absolute;bottom:-5px;left:0;width:100%;transform:rotate(-3deg)}.hero-description{font-size:17px;color:#d1e1eb;max-width:455px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:31px}.hero-meta{font-size:11px;color:#b3cbdc;margin-top:27px}.hero-meta span{margin:0 9px;color:var(--sky)}.hero-visual{position:relative;min-height:460px;display:flex;align-items:center;justify-content:center}.orbit{position:absolute;border:1px solid #43b5e729;border-radius:50%;width:490px;height:490px;transform:rotate(-15deg)}.orbit-two{width:410px;height:410px;border-style:dashed;border-color:#43b5e72d}.visual-label{position:absolute;top:8px;right:13px;font-size:9px;letter-spacing:.18em;color:#a8d2e7}.paper{position:absolute;width:360px;height:337px;border-radius:7px}.paper-back{background:#aac9d8;transform:rotate(-8deg) translate(-13px,3px);box-shadow:0 20px 40px #00264740}.paper-front{background:#fffcf5;color:var(--navy);transform:rotate(4deg);box-shadow:0 25px 40px #00264750;z-index:2}.paper-heading{border-bottom:1px solid #dbe1dd;display:flex;align-items:center;gap:12px;padding:20px 24px;font-size:11px;font-family:Mono,monospace}.file-icon{border:1px solid #a0bfc6;border-radius:3px;padding:8px 5px;color:var(--blue);font-size:10px;font-weight:700}.paper-heading small{display:block;font-size:8px;font-family:Lato,sans-serif;color:var(--muted);margin-top:4px}.paper-dot{width:6px;height:6px;border-radius:50%;background:#5f9c88;margin-left:auto}.paper-body{padding:23px 31px}.paper-kicker{font-size:8px;color:#668396;letter-spacing:.15em}.paper-body p{font-size:27px;line-height:1.25;letter-spacing:-.025em;margin-top:11px}.paper-body strong{background:linear-gradient(transparent 63%,#ffde5980 63%);font-weight:400}.paper-rule{height:1px;background:#dbe1dd;margin-top:20px;margin-bottom:13px}.paper-note{font-size:11px;color:#526b78}.paper-note span{color:var(--blue);margin-right:9px;font-size:17px}.paper-bottom{display:flex;gap:21px;font-size:7px;letter-spacing:.12em;padding:0 30px;color:#678595}.visual-callout{position:absolute;z-index:3;right:-7px;bottom:11px;background:#e4f2f7;color:var(--navy);border-radius:5px;padding:16px 20px;display:flex;align-items:center;gap:13px;font-size:12px;line-height:1.65;box-shadow:0 12px 40px #00264730;transform:rotate(-2deg)}.callout-symbol{width:32px;height:32px;border:1px solid #afcfdc;border-radius:50%;display:grid;place-items:center;font-size:19px}.visual-caption{position:absolute;font-size:9px;color:#abc9db;left:33px;bottom:-16px}.overview-strip{border-bottom:1px solid var(--line);background:#f7fafb}.overview-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.6fr;padding:30px 0}.overview-grid>div{display:flex;align-items:center;gap:17px;border-right:1px solid var(--line);padding-left:30px}.overview-grid>div:first-child{padding-left:0}.overview-grid>div:last-child{border:0}.overview-grid>div>strong{font-size:35px;color:var(--navy);letter-spacing:-.04em}.overview-grid span{font-size:12px;line-height:1.55;color:var(--muted)}.overview-grid .mini-mark{font-size:38px;color:var(--blue)}.overview-note p{font-size:12px}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:47px}.section-heading h2{margin-top:15px}.section-intro{font-size:15px;color:var(--muted);max-width:365px}.learning-layout{display:grid;grid-template-columns:300px 1fr;gap:75px}.learning-aside{padding-top:13px}.section-number{font-size:12px;color:var(--blue);letter-spacing:.12em}.learning-aside h3{font-size:26px;line-height:1.23;margin:20px 0 17px}.learning-aside>p{font-size:14px;color:var(--muted)}.progress-label{margin-top:30px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.learning-aside progress{width:100%;height:5px;appearance:none;border:0;background:#e2e9ec;margin:11px 0 7px;border-radius:5px;overflow:hidden}.learning-aside progress::-webkit-progress-bar{background:#e2e9ec}.learning-aside progress::-webkit-progress-value{background:var(--blue)}.learning-aside progress::-moz-progress-bar{background:var(--blue)}.learning-aside>small{font-size:10px;color:var(--muted)}.learning-aside>.text-link{margin-top:35px;font-size:12px}.lesson-list{border-top:1px solid var(--line)}.lesson-row{width:100%;display:grid;grid-template-columns:37px 1fr 30px;gap:15px;align-items:center;text-align:left;padding:22px 8px;background:white;border:0;border-bottom:1px solid var(--line);transition:background .15s}.lesson-row:hover{background:#f3f8fa}.lesson-row .lesson-number{font-size:12px;color:#78919f}.lesson-row h3{font-size:19px;letter-spacing:-.025em;margin-bottom:5px}.lesson-row p{font-size:12px;color:var(--muted)}.lesson-arrow{width:30px;height:30px;display:grid;place-items:center;font-size:19px;color:var(--blue);border-radius:50%;background:#eff5f7}.lesson-row.done .lesson-arrow{background:#e2efe8;color:var(--green);font-size:14px}.materials-section{background:var(--paper)}.kit-banner{display:flex;align-items:center;gap:30px;padding:35px 36px;background:white;border:1px solid #dde4e5;border-radius:7px;margin-bottom:38px}.kit-illustration{position:relative;width:124px;min-width:124px;height:99px}.kit-illustration span{position:absolute;display:grid;place-items:center;width:58px;height:78px;border:1px solid #b9ced7;border-radius:4px;top:9px;font-size:10px;font-weight:700;background:#f0f7fa;color:var(--blue)}.kit-illustration span:nth-child(1){transform:rotate(-12deg);left:3px}.kit-illustration span:nth-child(2){left:37px;top:0;transform:rotate(4deg);background:var(--navy);color:white}.kit-illustration span:nth-child(3){left:70px;top:18px;transform:rotate(13deg);background:#fff5c8;border-color:#e7d888}.kit-copy{flex:1}.kit-copy h3{font-size:25px;margin:9px 0}.kit-copy p{font-size:13px;color:var(--muted);max-width:465px}.kit-copy .eyebrow{font-size:9px}.kit-banner .button{font-size:12px;gap:18px}.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.filter-group{display:flex;flex-wrap:wrap;gap:5px}.filter-group button{font-size:12px;border:1px solid transparent;background:none;padding:8px 14px;border-radius:4px;color:var(--muted)}.filter-group button[aria-pressed=true]{background:var(--navy);color:white}.filter-group button:hover{border-color:var(--line)}.search{display:flex;align-items:center;gap:10px;background:white;border:1px solid #d9e1e3;padding:9px 13px;border-radius:4px;color:var(--muted);min-width:228px}.search>span{font-size:22px;line-height:1}.search input{width:100%;border:0;background:transparent;font-size:12px;min-width:0;outline-offset:4px}.result-count{font-size:11px;color:var(--muted);margin:20px 0 12px}.materials-list{border-top:1px solid #d9e1e3}.material-row{display:grid;grid-template-columns:45px 1fr auto;gap:20px;align-items:center;border-bottom:1px solid #d9e1e3;padding:19px 6px}.format-badge{display:grid;place-items:center;width:40px;height:46px;font-size:10px;font-weight:700;color:var(--blue);border:1px solid #c4d6de;border-radius:4px;background:#ffffffa0}.format-badge.zip{background:#e7edf4}.material-copy h3{font-size:16px;letter-spacing:-.01em;line-height:1.4}.material-copy p{font-size:12px;color:var(--muted);margin-top:3px}.material-download{display:flex;align-items:center;gap:20px;font-size:12px;color:var(--navy);padding:8px}.material-download span{color:var(--muted);font-size:10px}.material-download b{width:30px;height:30px;border:1px solid #c7d7de;border-radius:50%;display:grid;place-items:center;font-size:15px;font-weight:400}.material-download:hover b{background:var(--navy);color:white}.material-extra{font-size:11px;margin-top:4px;color:var(--blue);display:inline-block;text-decoration:underline;text-underline-offset:3px}.library-footer{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);margin-top:24px}.library-footer a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.lab-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:2px solid var(--line)}.lab-tabs button{background:none;border:0;padding:17px 12px;text-align:left;font-size:10px;color:var(--muted);position:relative;display:flex;gap:9px;align-items:center}.lab-tabs button span{font-size:12px;font-weight:700}.lab-tabs button[aria-selected=true]{color:var(--blue)}.lab-tabs button[aria-selected=true]:after{position:absolute;content:'';background:var(--blue);height:3px;left:0;bottom:-2px;width:100%}.lab-panel{border:1px solid var(--line);border-top:0;border-radius:0 0 6px 6px;padding:38px;background:#fcfdfd}.context-intro{display:grid;grid-template-columns:1fr .9fr;gap:70px;margin-bottom:30px}.context-intro .eyebrow{font-size:9px}.context-intro h3{margin:14px 0;font-size:28px}.context-intro p{font-size:14px;color:var(--muted)}.context-gauge{align-self:center;background:#eef5f7;padding:26px;border-radius:5px}.context-gauge>div{display:flex;align-items:baseline;gap:7px}.context-gauge strong{font-size:41px;color:var(--navy);line-height:1}.context-gauge span{font-size:11px;color:var(--muted)}.context-gauge meter{width:100%;height:13px;margin:13px 0 9px;display:block}.context-gauge meter::-webkit-meter-bar{background:#d6e4ea;border:0;border-radius:3px}.context-gauge meter::-webkit-meter-optimum-value{background:var(--blue)}.context-gauge p{font-size:12px;min-height:39px}.context-gauge small{font-size:10px;display:block;margin-top:12px;color:var(--muted)}.context-gauge.over{background:#fbefeb}.context-gauge.over strong{color:var(--red)}.context-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.context-options label{display:flex;align-items:center;gap:13px;padding:16px;border:1px solid var(--line);background:white;border-radius:4px;cursor:pointer}.context-options label:has(input:checked){border-color:var(--blue);background:#edf6f9}.context-options input{width:17px;height:17px;accent-color:var(--blue)}.context-options span{flex:1}.context-options strong{display:block;font-size:13px}.context-options small{font-size:10px;color:var(--muted);display:block;margin-top:3px}.context-options b{font-size:11px;font-weight:400;color:var(--muted)}.button-reset{border:0;background:none;margin-top:20px;padding:0;font-size:11px}.panel-heading{display:flex;gap:30px;justify-content:space-between;align-items:center;margin-bottom:27px}.panel-heading .eyebrow{font-size:9px}.panel-heading h3{font-size:24px;margin:11px 0}.panel-heading p{font-size:13px;color:var(--muted);max-width:720px}.panel-heading .button{font-size:12px;padding:11px 15px;min-height:44px}.file-explorer{display:grid;grid-template-columns:250px 1fr;border:1px solid var(--line);border-radius:4px;overflow:hidden}.file-sidebar{background:#eef4f6;padding:18px 10px}.folder-label{display:block;font-size:8px;color:var(--muted);letter-spacing:.1em;margin:0 10px 15px}.file-sidebar button{font-family:Mono,monospace;font-size:10px;display:block;border:0;background:none;padding:10px 9px;text-align:left;width:100%;border-radius:3px;overflow-wrap:anywhere}.file-sidebar button[aria-pressed=true]{background:white;color:var(--blue);font-weight:700}.file-content{background:white;min-width:0}.file-content-heading{padding:12px 17px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.file-content-heading>span{font:10px Mono,monospace;flex:1}.file-content-heading .small-button{padding:5px 8px;font-size:10px}.file-content pre{height:405px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;padding:23px;margin:0;font:12px/1.8 Mono,monospace}.panel-footnote{font-size:12px;color:var(--muted);margin-top:22px;max-width:970px}.prompt-workspace{display:grid;grid-template-columns:250px 1fr;gap:25px}.prompt-list{max-height:550px;overflow:auto}.prompt-list button{display:block;text-align:left;border:0;border-left:2px solid transparent;padding:12px 15px;width:100%;font-size:12px;background:none;line-height:1.4}.prompt-list button[aria-pressed=true]{border-color:var(--blue);background:var(--pale);color:var(--navy);font-weight:700}.prompt-list button small{display:block;font-size:9px;color:var(--muted);margin-bottom:4px;font-weight:400}.prompt-detail{padding:25px;background:white;border:1px solid var(--line);border-radius:4px;min-width:0}.prompt-detail h4{font-size:23px;margin:13px 0 20px}.prompt-detail pre{white-space:pre-wrap;font:14px/1.8 Lato,sans-serif;overflow-wrap:anywhere;max-height:320px;overflow:auto;padding-right:8px}.prompt-check{background:#f2f6ed;padding:16px;margin:22px 0;font-size:12px;color:#425c44}.prompt-check p{font-size:12px;margin-top:6px}.prompt-detail .button{font-size:12px;min-height:43px;padding:10px 16px}.timer{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.timer>span{font:30px Mono,monospace;color:var(--navy)}.practice-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.practice-fields label{font-size:12px;font-weight:700}.practice-fields textarea{display:block;width:100%;margin-top:8px;resize:vertical;background:white;border:1px solid var(--line);border-radius:4px;padding:14px;font-size:13px;color:var(--ink);font-weight:400;line-height:1.6}.practice-fields textarea::placeholder{color:#71828b}.wide-field{grid-column:1/-1}.practice-footer{display:flex;align-items:center;gap:40px;margin-top:24px}.practice-footer p{font-size:11px;color:var(--muted);flex:1}.practice-footer .button{font-size:12px}.reflection-band{background:var(--navy);color:white}.reflection-grid{display:grid;grid-template-columns:1fr 300px;gap:20px 65px;padding-top:60px;padding-bottom:66px}.reflection-grid .eyebrow{grid-column:1/-1}.reflection-grid blockquote{margin:0;font-size:clamp(27px,3vw,41px);line-height:1.3;letter-spacing:-.02em}.reflection-grid blockquote em{font-style:normal;color:var(--yellow)}.reflection-grid>p:last-child{font-size:13px;align-self:center;color:#c2d7e4}.tools-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.tools-grid>a{border-top:1px solid var(--line);padding:25px 0;position:relative}.tool-letter{display:grid;place-items:center;width:42px;height:42px;font-size:18px;border-radius:9px;background:#eaf2f6;color:var(--blue);font-weight:700;margin-bottom:20px}.tools-grid strong{font-size:20px;display:block;color:var(--navy)}.tools-grid>a>span:not(.tool-letter){font-size:12px;color:var(--muted);display:block;max-width:190px;margin-top:10px}.tools-grid b{position:absolute;right:14px;top:25px;font-size:19px;font-weight:400}.tools-grid a:hover b{transform:translate(3px,-3px)}.tools-more{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:22px}.tools-more a{display:inline-block;margin-left:19px;color:var(--blue);text-decoration:underline;text-underline-offset:4px}.faq-section{background:#f3f7f8}.faq-grid{display:grid;grid-template-columns:1fr 1.65fr;gap:100px}.faq-grid h2{margin:16px 0 22px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-size:15px;padding:20px 35px 20px 0;list-style:none;position:relative;font-weight:700;color:var(--navy)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:5px;font-size:21px;top:15px;font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list details>p{font-size:13px;color:var(--muted);padding:0 25px 24px 0}.sources-list{display:grid;grid-template-columns:repeat(2,1fr);column-gap:50px}.source-row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:17px 0;font-size:13px}.source-row b{font-weight:400;flex-shrink:0}.source-row strong{font-weight:700}.source-row small{font-size:11px;display:block;color:var(--muted);line-height:1.6;margin-top:6px}.source-row:hover strong{text-decoration:underline;text-underline-offset:4px}.footer{border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:44px;padding-bottom:38px}.footer-top>p{font-size:14px;color:var(--navy)}.footer-top>p>span{font-size:11px;color:var(--muted)}.footer-top .text-link{font-size:12px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:19px;padding-bottom:22px;font-size:10px;color:var(--muted)}.footer-bottom .quiet-button{font-size:10px}.loading{padding:24px 0;color:var(--muted);font-size:14px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);padding:13px 22px;background:var(--navy);color:white;border:1px solid #ffffff30;box-shadow:0 4px 20px #00356220;border-radius:5px;font-size:13px;opacity:0;pointer-events:none;z-index:100;transition:.2s;max-width:calc(100% - 40px)}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{color:var(--ink);border:0;border-radius:8px;max-height:90dvh;box-shadow:0 20px 80px #00356250;padding:0}dialog::backdrop{background:#002744aa;backdrop-filter:blur(3px)}.lesson-dialog{width:min(860px,calc(100% - 40px))}.dialog-top{position:sticky;top:0;background:white;z-index:1;padding:19px 35px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.close-dialog{font-size:27px;line-height:1;width:32px;height:32px;background:#f0f5f6;border:0;border-radius:50%;color:var(--muted)}#lesson-article{padding:38px 48px}#lesson-title{font-size:36px;line-height:1.15}.dialog-summary{font-size:17px;color:var(--muted);margin-top:20px;line-height:1.7}#lesson-body h3{font-size:23px;margin:32px 0 14px}#lesson-body p{font-size:16px;margin:13px 0}#lesson-body ul{padding-left:23px;font-size:15px;line-height:1.8}#lesson-body li{padding-left:4px;margin:7px 0}.lesson-exercise{padding:25px;background:var(--pale);border-radius:5px;margin-top:33px}.lesson-exercise h3{margin-top:0!important}.lesson-exercise blockquote{margin:17px 0;padding-left:16px;border-left:2px solid var(--sky);font-size:15px;white-space:pre-wrap;line-height:1.7}.lesson-exercise>p{font-size:13px!important}.lesson-exercise button{margin-top:12px}.lesson-citations{margin-top:25px;font-size:11px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}.lesson-citations a{text-decoration:underline}.dialog-actions{position:sticky;bottom:0;padding:18px 30px;background:white;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-actions .button{font-size:12px;min-height:44px;padding:12px 18px}.dialog-actions button:disabled{opacity:.35;cursor:default}.privacy-dialog{width:min(600px,calc(100% - 35px));padding-bottom:25px}.privacy-dialog h2{font-size:28px;margin:28px 35px}.privacy-dialog p{font-size:14px;margin:17px 35px}.noscript{padding:20px;background:var(--yellow);text-align:center}.noscript a{text-decoration:underline}.error-title{font-size:56px;margin:40px 0 25px;color:var(--navy)}.error-title~.button{margin-top:25px}
@media(min-width:1500px){.hero-grid{min-height:690px}.hero h1{font-size:70px}}
@media(max-width:1100px){.shell{width:calc(100% - 64px)}#main-nav{gap:19px}.hero-grid{gap:10px}.hero h1{font-size:54px}.hero-visual{transform:scale(.88);transform-origin:right center}.hero-actions{gap:18px}.hero-actions .text-link{font-size:12px}.hero-actions .button{font-size:13px;gap:18px}.learning-layout{gap:45px;grid-template-columns:260px 1fr}.kit-banner{padding:26px;gap:20px}.kit-illustration{width:100px;min-width:100px;transform:scale(.8);transform-origin:left center}.kit-copy h3{font-size:23px}.lab-panel{padding:28px}.context-intro{gap:30px}.faq-grid{gap:55px}.file-explorer,.prompt-workspace{grid-template-columns:215px 1fr}.overview-grid>div{padding-left:20px;gap:12px}.overview-note p{font-size:11px}}
@media(max-width:850px){.header-inner{height:78px}.brand>span{font-size:12px}.brand small{font-size:8px}.brand img{width:38px;height:38px}#main-nav{gap:15px;font-size:11px}.nav-download{display:none!important}.hero-grid{grid-template-columns:1fr 1fr;min-height:590px}.hero h1{font-size:45px}.hero .eyebrow{font-size:8px}.hero-description{font-size:15px}.hero-visual{transform:scale(.73);transform-origin:center center;width:370px;margin-left:-40px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-meta{font-size:9px}.overview-grid{grid-template-columns:repeat(3,1fr)}.overview-grid .overview-note{display:none}.overview-grid>div:nth-child(3){border-right:0}.section{padding:70px 0}.section-heading{gap:35px}.section-intro{max-width:285px;font-size:14px}.learning-layout{grid-template-columns:210px 1fr;gap:30px}.learning-aside h3{font-size:23px}.lesson-row h3{font-size:17px}.kit-banner{flex-wrap:wrap}.kit-copy{min-width:60%}.kit-banner .button{margin-left:120px}.library-toolbar{align-items:flex-start;flex-direction:column}.search{width:100%}.file-explorer,.prompt-workspace{grid-template-columns:180px 1fr}.file-sidebar button{font-size:9px}.lab-tabs button{padding:15px 8px;gap:7px}.lab-tabs button span{font-size:10px}.reflection-grid{grid-template-columns:1fr 250px;gap:22px}.tools-grid{gap:25px}.faq-grid{grid-template-columns:1fr 1.4fr;gap:30px}.footer-top{flex-wrap:wrap}.footer-top>p{font-size:12px}.footer-top .text-link{font-size:11px}}
@media(max-width:640px){html{scroll-padding-top:78px}.shell{width:calc(100% - 40px)}.header-inner{height:73px}.brand>span{font-size:12px}.brand small{font-size:7px}.brand img{width:36px;height:36px}.menu-toggle{width:40px;height:40px;border:1px solid var(--line);background:white;border-radius:4px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px}.menu-toggle span{display:block;width:17px;height:1px;background:var(--navy)}#main-nav{display:none;position:absolute;top:73px;left:0;right:0;padding:15px 20px 23px;background:white;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #00356212}#main-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}#main-nav a{padding:13px;font-size:14px}#main-nav .nav-download{display:block!important;margin-top:5px}.hero-grid{grid-template-columns:1fr;padding-top:45px;padding-bottom:42px;gap:12px}.hero h1{font-size:48px;line-height:1.1;margin:26px 0 24px}.hero .eyebrow{font-size:8px;letter-spacing:.1em}.hero-description{font-size:15px;max-width:390px}.hero-actions{flex-direction:row;align-items:center;gap:22px;margin-top:27px}.hero-actions .button{padding:13px 17px;font-size:12px;gap:15px}.hero-actions .text-link{font-size:11px;gap:7px}.hero-meta{font-size:9px;margin-top:23px}.hero-meta span{margin:0 5px}.hero-visual{transform:none;min-height:330px;height:330px;width:100%;margin:18px 0 0}.paper{width:270px;height:264px}.paper-heading{padding:14px 18px;font-size:9px;gap:10px}.paper-heading small{font-size:7px}.paper-body{padding:17px 22px}.paper-body p{font-size:23px;margin-top:8px}.paper-kicker{font-size:7px}.paper-rule{margin-top:12px;margin-bottom:8px}.paper-note{font-size:9px}.paper-bottom{padding:0 23px;gap:16px;font-size:6px}.file-icon{font-size:8px;padding:6px 4px}.visual-label{top:-6px;right:10px;font-size:7px}.orbit-one{width:335px;height:335px}.orbit-two{width:300px;height:300px}.visual-callout{right:-2px;bottom:0;font-size:10px;padding:12px 15px;gap:10px}.callout-symbol{height:26px;width:26px;font-size:16px}.visual-caption{font-size:7px;left:0;bottom:-22px}.overview-grid{padding:23px 0;gap:0}.overview-grid>div{display:block;padding-left:17px}.overview-grid>div>strong{font-size:28px;display:block}.overview-grid span{font-size:9px;line-height:1.55;display:block;margin-top:4px}.section{padding:58px 0}.section-heading{display:block;margin-bottom:32px}h2{font-size:33px;line-height:1.14}.section-heading .section-intro{max-width:none;margin-top:23px;font-size:14px}.eyebrow{font-size:9px}.learning-layout{display:flex;flex-direction:column;gap:25px}.learning-aside{padding:0;background:#f4f8fa;border:1px solid var(--line);padding:22px;border-radius:5px}.learning-aside .section-number,.learning-aside h3,.learning-aside>p{display:none}.progress-label{margin-top:0}.learning-aside>.text-link{margin-top:15px;display:block}.learning-aside>small{font-size:9px}.lesson-row{padding:20px 2px;gap:10px;grid-template-columns:28px 1fr 27px}.lesson-row h3{font-size:17px}.lesson-row p{font-size:11px}.lesson-number{font-size:10px}.kit-banner{padding:22px;gap:17px}.kit-illustration{width:80px;min-width:80px;height:80px;transform:scale(.65);transform-origin:top left}.kit-copy{min-width:calc(100% - 100px)}.kit-copy h3{font-size:21px;line-height:1.2}.kit-copy p{font-size:12px}.kit-copy .eyebrow{font-size:7px}.kit-banner .button{margin-left:0;width:100%;margin-top:4px;font-size:12px}.filter-group{gap:3px}.filter-group button{padding:8px 10px;font-size:11px}.material-row{grid-template-columns:34px 1fr auto;gap:12px;padding:17px 0;align-items:start}.format-badge{width:32px;height:39px;font-size:8px;margin-top:3px}.material-copy h3{font-size:14px}.material-copy p{font-size:11px;line-height:1.6}.material-download{display:flex;flex-direction:column-reverse;gap:7px;font-size:0;padding:3px 0}.material-download span{font-size:9px}.material-download b{font-size:17px;width:28px;height:28px}.library-footer{flex-direction:column;font-size:10px;gap:12px}.lab-tabs{grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:4px 4px 0 0}.lab-tabs button{padding:14px 10px;gap:8px}.lab-tabs button span{font-size:10px}.lab-tabs button[aria-selected=true]{background:var(--pale)}.lab-tabs button[aria-selected=true]:after{height:2px;bottom:0}.lab-panel{padding:23px 18px}.context-intro{grid-template-columns:1fr;gap:24px}.context-intro .eyebrow{font-size:8px}.context-intro h3{font-size:25px}.context-intro p{font-size:13px}.context-gauge{padding:20px}.context-gauge p{font-size:12px}.context-options{grid-template-columns:1fr;gap:10px}.context-options label{padding:13px;gap:11px}.context-options strong{font-size:12px}.panel-heading{display:block}.panel-heading .eyebrow{font-size:8px}.panel-heading h3{font-size:24px;line-height:1.25}.panel-heading p{font-size:12px}.panel-heading>.button{margin-top:17px}.file-explorer,.prompt-workspace{display:block}.file-sidebar{padding:14px 10px}.folder-label{font-size:8px;margin-bottom:8px}.file-sidebar #file-list{display:flex;overflow-x:auto;gap:5px}.file-sidebar button{font-size:9px;min-width:max-content;width:auto;padding:11px 9px;border:1px solid var(--line);background:#f7fafb}.file-content-heading{padding:11px;gap:7px}.file-content-heading>span{font-size:9px;flex-basis:100%}.file-content pre{padding:16px;font-size:11px;height:360px}.panel-footnote{font-size:11px}.prompt-list{max-height:190px;margin-bottom:20px;border:1px solid var(--line);border-radius:4px;background:white}.prompt-detail{padding:20px}.prompt-detail h4{font-size:22px;line-height:1.2}.prompt-detail pre{font-size:13px;max-height:350px}.timer{margin-top:18px}.practice-fields{grid-template-columns:1fr;gap:19px}.practice-fields textarea{font-size:14px}.practice-footer{display:block}.practice-footer p{font-size:10px}.practice-footer .button{margin-top:20px;width:100%}.reflection-grid{grid-template-columns:1fr;padding-top:42px;padding-bottom:42px;gap:20px}.reflection-grid blockquote{font-size:29px}.reflection-grid>p:last-child{font-size:12px;max-width:350px}.tools-grid{grid-template-columns:1fr 1fr;gap:14px 25px}.tools-grid strong{font-size:18px}.tools-grid>a{padding-bottom:15px}.tools-grid>a>span:not(.tool-letter){font-size:11px}.tool-letter{margin-bottom:13px}.tools-more{font-size:11px;line-height:2.7}.tools-more a{margin-left:0;margin-right:17px}.faq-grid{display:block}.faq-grid>.faq-list{margin-top:30px}.faq-grid>div>.section-intro{max-width:100%;font-size:14px}.faq-list summary{font-size:14px}.faq-list details>p{font-size:13px}.sources-list{grid-template-columns:1fr}.source-row{font-size:12px}.source-row small{font-size:11px}.footer-top{padding-top:30px;padding-bottom:28px;display:block}.footer-top>p{margin:22px 0}.footer-top .text-link{font-size:12px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:14px;font-size:9px}.footer-bottom>span{flex-basis:100%}.footer-bottom .quiet-button{padding:0;margin-right:12px;font-size:9px}.lesson-dialog{width:calc(100% - 20px);max-height:94dvh}.dialog-top{padding:14px 20px}.dialog-top .eyebrow{font-size:9px}#lesson-article{padding:28px 24px}#lesson-title{font-size:30px}.dialog-summary{font-size:15px}#lesson-body h3{font-size:22px}#lesson-body p{font-size:15px}.lesson-exercise{padding:18px}.lesson-exercise blockquote{font-size:14px}.dialog-actions{padding:13px 12px;gap:7px}.dialog-actions .small-button{font-size:10px;padding:9px 8px}.dialog-actions .button{font-size:10px;padding:10px;min-height:39px}.privacy-dialog h2{font-size:25px;margin:25px}.privacy-dialog p{margin:17px 25px}.toast{font-size:12px;width:max-content}.error-title{font-size:42px}}
/* Library: catalog-driven folders and individual downloads. */
.books-section{background:#fbfcfa;border-bottom:1px solid var(--line)}
.books-archive{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;padding:32px 35px;background:var(--pale);border:1px solid #cddfe7;border-radius:7px;margin-bottom:32px}
.books-archive h3{font-size:27px;margin:10px 0 12px}
.books-archive p{font-size:14px;color:var(--muted);max-width:670px}
.books-archive .books-summary{font-size:12px;color:var(--navy);margin-top:17px;font-weight:700}
.books-archive-action{display:flex;flex-direction:column;align-items:center;gap:9px}
.books-archive-action .button{font-size:12px;gap:18px;white-space:normal;text-align:center;max-width:100%}
.books-archive-action>span{font-size:12px;color:var(--muted)}
.books-toolbar{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.8fr) auto;gap:17px;align-items:end}
.books-toolbar label{display:block;min-width:0;font-size:12px;font-weight:700}
.books-toolbar .search{min-width:0;min-height:45px;margin-top:7px;font-weight:400}
.books-toolbar .search input{font-size:13px}
.books-toolbar select{display:block;width:100%;min-width:0;min-height:45px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:9px 30px 9px 11px;margin-top:7px;font-size:12px;font-weight:400;text-overflow:ellipsis}
.books-toolbar select:focus-visible{outline:3px solid #1b82b6;outline-offset:5px}
.books-toolbar .quiet-button{min-height:45px;padding:9px 0;white-space:nowrap}
.books-status{font-size:14px;color:var(--muted);margin:20px 0}
.books-status:empty{display:none}
.books-list{border-top:1px solid var(--line)}
.books-empty{padding:25px 0;font-size:14px;color:var(--muted)}
.book-folder{border-bottom:1px solid var(--line);background:white}
.book-folder>summary{display:grid;grid-template-columns:32px minmax(0,1fr) 25px;gap:15px;align-items:center;list-style:none;cursor:pointer;padding:20px 23px;min-height:87px;color:var(--navy)}
.book-folder>summary::-webkit-details-marker{display:none}
.book-folder>summary:hover{background:#f0f6f8}
.book-folder[open]>summary{background:#edf4f6;border-bottom:1px solid var(--line)}
.book-folder-symbol{display:grid;place-items:center;font-size:23px;color:var(--blue);width:32px;height:32px;border:1px solid #c9dce4;border-radius:4px}
.book-folder-heading{min-width:0;overflow-wrap:anywhere;line-height:1.45}
.book-folder-heading strong{font-size:16px}
.book-folder-heading small{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.book-folder-toggle{font-size:24px;text-align:center;font-weight:400}
.book-folder-toggle:before{content:'+'}
.book-folder[open] .book-folder-toggle:before{content:'−'}
.book-folder-content{padding:0 23px}
.book-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:18px;padding:19px 0;border-bottom:1px solid #e3eaed}
.book-row:last-child{border-bottom:0}
.book-copy{min-width:0;overflow-wrap:anywhere}
.book-copy h3{font-size:16px;line-height:1.4;letter-spacing:-.01em}
.book-copy .book-filename{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.55}
.book-format.audio{background:#f4efe5;border-color:#ded3bb;color:#775b27}
.book-preview{font-size:11px;color:var(--blue);display:inline-block;margin-top:6px;text-decoration:underline;text-underline-offset:3px;padding:3px 0}
.book-download{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--navy);min-height:44px;padding:4px 0 4px 8px}
.book-download small{font-size:11px;color:var(--muted);white-space:nowrap}
.book-download b{width:30px;height:30px;border:1px solid #c7d7de;border-radius:50%;display:grid;place-items:center;font-size:16px;font-weight:400}
.book-download:hover b{background:var(--navy);color:white}
.book-more{display:block;margin:0 0 20px;min-height:44px;max-width:100%;white-space:normal;text-align:left}
@media(max-width:850px){
  .books-archive{padding:27px;gap:24px}
  .books-archive h3{font-size:24px}
  .books-archive-action .button{font-size:11px;padding:13px 16px;gap:12px}
  .books-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .books-toolbar .books-search-label{grid-column:1/-1}
  .books-toolbar .quiet-button{grid-column:1/-1;justify-self:start;min-height:36px}
  .book-download{gap:10px}
}
@media(max-width:640px){
  .books-archive{grid-template-columns:minmax(0,1fr);padding:23px;gap:24px}
  .books-archive h3{font-size:24px}
  .books-archive p{font-size:13px}
  .books-archive .books-summary{font-size:11px}
  .books-archive-action{align-items:stretch;text-align:center}
  .books-archive-action .button{font-size:12px;min-height:48px}
  .books-toolbar{grid-template-columns:minmax(0,1fr);gap:15px}
  .books-toolbar .books-search-label,.books-toolbar .quiet-button{grid-column:auto}
  .books-toolbar select,.books-toolbar .search input{font-size:16px}
  .book-folder>summary{padding:17px 14px;grid-template-columns:28px minmax(0,1fr) 20px;gap:12px}
  .book-folder-symbol{width:27px;height:29px;font-size:20px}
  .book-folder-heading strong{font-size:14px}
  .book-folder-heading small{font-size:10px}
  .book-folder-content{padding:0 14px}
  .book-row{grid-template-columns:32px minmax(0,1fr);gap:9px 12px;align-items:start;padding:18px 0}
  .book-copy h3{font-size:14px}
  .book-copy .book-filename{font-size:10px}
  .book-preview{font-size:12px;padding:7px 0}
  .book-download{grid-column:2;padding:0;gap:14px;justify-self:start}
  .book-download small{font-size:11px}
  .book-more{font-size:11px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.header,.hero-visual,.hero-actions,.lab-tabs,.dialog-actions,.footer,.toast,.menu-toggle{display:none}.shell{width:100%}.hero{color:var(--navy);background:white}.hero h1 em{color:var(--navy)}.hero-description{color:var(--ink)}.hero-grid{min-height:0;padding:20px 0;display:block}.section{padding:25px 0}.lesson-row,.materials-list,.kit-banner{break-inside:avoid}dialog[open]{position:absolute;max-height:none;width:100%;box-shadow:none}dialog::backdrop{background:white}}
