.consent-panel{position:fixed;z-index:100;left:1rem;right:1rem;bottom:1rem;max-width:70rem;margin:auto;background:#fff;color:#172529;border:1px solid #ccd6d3;border-radius:.8rem;box-shadow:0 8px 40px #14232530;padding:1.25rem;display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center}
.consent-panel[hidden]{display:none}.consent-panel h2{font-size:1.25rem;margin:0 0 .5rem}.consent-panel p{font-size:.875rem;line-height:1.5;margin:0 0 .5rem;max-width:70ch}.consent-panel a{font-size:.875rem;text-decoration:underline}.consent-actions{display:flex;gap:.75rem;flex-wrap:wrap}.consent-actions button{font:inherit;font-size:.875rem;font-weight:650;min-height:44px;padding:.7rem 1rem;border:1px solid #172529;border-radius:.35rem;color:#172529;background:#f4f8f6;cursor:pointer}.consent-actions button:focus-visible,.consent-settings:focus-visible{outline:3px solid #357a68;outline-offset:3px}.consent-settings{font:inherit;font-size:inherit;padding:0;border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer}
@media(max-width:800px){.consent-panel{grid-template-columns:1fr;gap:.8rem;max-height:80vh;overflow:auto}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-actions button{padding:.7rem .4rem}}
.consent-panel{font-family:var(--sans)}

.academy-page{max-width:1180px}.academy-page .page-intro{max-width:1100px}.academy-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 42px}.button-outline{background:transparent;color:var(--ink);border-color:var(--control)}.academy-page .section{margin-block:46px}.academy-page .section-heading{align-items:end}.academy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;border-top:1px solid var(--ink)}.academy-card{padding:24px 12px 26px 0;border-bottom:1px solid var(--rule);min-width:0}.academy-card .eyebrow{color:var(--rust);margin-bottom:12px}.academy-card h2{font-size:clamp(24px,2.4vw,32px);margin:0 0 12px}.academy-card h2 a{text-decoration:none}.academy-card h2 a:hover{text-decoration:underline}.academy-card p:not(.eyebrow){font-size:17px;line-height:1.45;margin:0 0 13px;color:#3f4842}.academy-card .text-link,.text-link{font:14px/1.45 var(--sans);color:var(--mint-ink);min-height:38px;display:inline-flex;align-items:center}.academy-home-links{border-top:1px solid var(--rule);padding-top:12px}.academy-home-links>p{max-width:760px;margin:0 0 24px}.academy-home-links .academy-grid{grid-template-columns:repeat(4,minmax(0,1fr));border-top:0}.academy-home-links .academy-card{padding:18px 15px 18px 0}.academy-home-links .academy-card h2{font-size:25px}.academy-home-links .academy-card p:not(.eyebrow){font-size:16px}.academy-crosslink{border-block:1px solid var(--rule);padding-block:20px}.academy-crosslink p{margin:10px 0}.academy-crosslink a{color:var(--mint-ink)}.academy-method,.academy-note,.compare-conclusion,.lesson-example,.path-summary,.project-summary{background:var(--surface);padding:24px;border-left:3px solid var(--mint-ink)}.academy-method h2,.academy-note h2,.compare-conclusion h2{font-size:32px;margin-bottom:14px}.academy-method p,.academy-note p{margin:12px 0}.academy-diagram{margin:32px 0;padding:18px 0;border-block:1px solid var(--rule)}.academy-diagram svg{display:block;width:100%;height:auto;min-width:570px}.academy-diagram{overflow-x:auto}.academy-diagram figcaption{font:14px/1.5 var(--sans);margin:12px 0}.diagram-text{display:flex;gap:26px;flex-wrap:wrap;margin:10px 0;padding-left:22px;font:14px/1.5 var(--sans)}.diagram-text li{padding-right:12px}.tool-panel{margin:32px 0 44px;padding:22px 0;border-block:1px solid var(--ink)}.tool-panel>p{max-width:900px;margin:12px 0}.filter-bar{align-items:end}.filter-bar label{flex:1 1 190px}.filter-bar .button{min-width:max-content}.tool-result{min-height:54px;padding:16px 0;font:16px/1.5 var(--sans)}.tool-result p{margin:6px 0}.tool-result ul{padding-left:22px}.tool-result li{margin:9px 0}.tool-result a{color:var(--mint-ink)}.academy-page .table-wrap{border:1px solid var(--rule)}.academy-page table{min-width:680px}.academy-page th,.academy-page td{vertical-align:top}.academy-page caption{padding:12px;text-align:left;font:14px/1.5 var(--sans);color:var(--muted)}.academy-page table a{color:var(--mint-ink)}.model-meta,.profile-updated,.academy-citation,.lesson-kicker{font:12px/1.5 var(--mono);color:var(--muted)}.model-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:24px 0 30px;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}.model-facts>div{padding:14px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);min-width:0}.model-facts dt{font:12px/1.4 var(--mono);text-transform:uppercase;color:var(--muted);margin-bottom:7px}.model-facts dd{margin:0;font:16px/1.4 var(--sans);overflow-wrap:anywhere}.profile-reading{max-width:850px;font-size:18px}.profile-reading h2{margin:32px 0 12px;font-size:34px}.profile-reading h3{margin:25px 0 8px;font-size:25px}.profile-reading p,.profile-reading ul{margin:12px 0}.profile-reading li{margin-bottom:7px}.academy-sources{padding-left:22px;font:15px/1.5 var(--sans)}.academy-sources li{margin:8px 0}.academy-sources a{overflow-wrap:anywhere}.compare-conclusion{margin:12px 0 35px}.compare-conclusion .eyebrow{color:var(--rust)}.compare-conclusion>p{max-width:900px;margin:8px 0 18px}.lesson-card{padding:26px 0 30px;border-top:1px solid var(--rule);scroll-margin-top:20px}.lesson-card:first-child{border-top:0}.lesson-card h2{font-size:clamp(28px,3vw,38px);margin:6px 0 18px}.lesson-card h3{font-size:23px;margin:22px 0 8px}.lesson-card p{max-width:880px;margin:9px 0}.lesson-goal{font-size:19px}.lesson-example{max-width:900px;margin:22px 0;padding:18px 22px}.lesson-example h3{margin:0 0 8px}.hint-box{max-width:900px;margin:17px 0;padding:13px 18px;border:1px solid var(--rule);background:var(--surface)}.hint-box summary{min-height:38px;display:flex;align-items:center;cursor:pointer;font:15px/1.4 var(--sans);font-weight:700}.hint-box p{padding:8px 0}.common-mistake{border-left:3px solid var(--rust);padding-left:12px}.check-off{border-left:3px solid var(--mint-ink);padding-left:12px}.lesson-check{display:flex;align-items:center;gap:10px;max-width:600px;margin-top:16px;font:15px/1.4 var(--sans);cursor:pointer}.next-lesson{margin-top:16px}.path-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px 30px}.path-summary p{margin:6px 0}.path-summary .button{justify-self:start;align-self:center}.progress-box{margin:32px 0;padding:20px;border:1px solid var(--rule);background:var(--surface)}.progress-box h2{font-size:29px;margin-bottom:10px}.progress-box p{max-width:850px;margin:10px 0}.text-button{min-height:44px;margin:10px 14px;border:0;padding:8px 0;background:none;color:var(--mint-ink);text-decoration:underline;text-underline-offset:4px}.academy-next{display:flex;flex-wrap:wrap;gap:10px 25px;margin:35px 0 55px;padding:18px 0;border-block:1px solid var(--rule);font:15px/1.5 var(--sans)}.academy-next a{min-height:44px;display:inline-flex;align-items:center;color:var(--mint-ink)}.academy-related{margin:34px 0;padding:20px 0;border-block:1px solid var(--rule)}.academy-related h2,.project-summary h2{font-size:27px;margin:12px 0}.academy-related p,.project-summary p{margin:8px 0}.academy-related a,.glossary-list a{color:var(--mint-ink)}.project-summary{display:grid;grid-template-columns:200px 1fr;gap:10px 20px}.project-summary h2{margin:0;font-size:24px}.project-steps{padding-left:30px;max-width:950px}.project-steps li{padding:0 0 18px 8px;font-size:18px}.glossary-index{display:flex;flex-wrap:wrap;gap:6px 14px;padding:16px 0;border-block:1px solid var(--rule);font:14px/1.5 var(--sans)}.glossary-index a{min-height:36px;display:inline-flex;align-items:center;color:var(--mint-ink)}.glossary-item{padding:22px 0;border-bottom:1px solid var(--rule);scroll-margin-top:20px}.glossary-item h2{font-size:30px;margin-bottom:10px}.glossary-item p{max-width:900px;margin:9px 0;font-size:18px}.profile-updated a{color:var(--mint-ink)}.lesson-card [data-lesson]:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
@media(max-width:900px){.academy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-home-links .academy-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.model-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.path-summary{grid-template-columns:1fr 1fr}.project-summary{grid-template-columns:160px 1fr}}
@media(max-width:650px){.academy-page .section{margin-block:32px}.academy-actions{display:grid;grid-template-columns:1fr}.academy-actions .button{width:100%}.academy-grid,.academy-home-links .academy-grid{display:block}.academy-card{padding:20px 0}.academy-home-links .academy-card{padding:18px 0}.academy-page .page-intro{padding-top:25px}.academy-page .page-intro h1{font-size:clamp(36px,10vw,48px)}.tool-panel{margin:24px 0 32px;padding:18px 0}.filter-bar{display:grid;grid-template-columns:1fr;align-items:stretch}.filter-bar label{width:100%}.filter-bar input,.filter-bar select{width:100%}.filter-bar .button{width:100%}.model-facts{grid-template-columns:1fr 1fr}.model-facts>div{padding:11px}.model-facts dd{font-size:14px}.path-summary{display:block;padding:18px}.path-summary .button{width:100%;margin-top:14px}.lesson-card{padding:23px 0}.lesson-card h2{font-size:30px}.lesson-card h3{font-size:22px}.academy-method,.academy-note,.compare-conclusion,.lesson-example,.project-summary{padding:18px}.academy-method h2,.academy-note h2,.compare-conclusion h2{font-size:29px}.project-summary{display:block}.project-summary h2{margin-top:18px}.project-summary h2:first-child{margin-top:0}.academy-next{display:grid;grid-template-columns:1fr;gap:0}.academy-next a{border-bottom:1px solid #ddd;padding:5px 0}.academy-next a:last-child{border-bottom:0}.academy-diagram svg{min-width:640px}.diagram-text{display:block}.glossary-index{gap:2px 12px}.glossary-item h2{font-size:28px}.academy-home-links{margin-top:30px}.academy-home-links .academy-card{border-bottom:1px solid var(--rule)}}
@media(max-width:350px){.model-facts{grid-template-columns:1fr}.academy-card h2{font-size:25px}.diagram-text{font-size:13px}}
