/* The magazine's reading room and local working dossier. */
:root{--knowledge-warm:#f8f4ed;--knowledge-warm-line:#e6dccd;--knowledge-blue:#eaf0f5;--knowledge-soft-ink:#42546a;--knowledge-success:#eaf3ed}
.knowledge-nav,.lab-mast,.lab-workspace,.lab-case-library,.lab-learning-paths,.lab-faq,.case-heading,.case-reading-layout,.term-article,.knowledge-filter,.term-grid,.cpv-heading,.cpv-result-grid,.cpv-child-list,.location-grid,.location-detail{min-width:0;max-width:100%}
.knowledge-nav{display:flex;flex-wrap:wrap;gap:0 26px;border-block:1px solid var(--line);margin:25px 0 36px;padding:3px 0;font-size:12px;font-weight:650;line-height:1.6}
.knowledge-nav a{display:block;padding:13px 0 11px;border-bottom:3px solid transparent;overflow-wrap:anywhere}
.knowledge-nav a[aria-current=page]{color:var(--navy);border-bottom-color:var(--accent)}
.knowledge-nav a:hover{border-bottom-color:var(--line)}
.lab-mast{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.8fr);gap:65px;align-items:center;padding:47px 0 38px}
.lab-mast>div{min-width:0}.lab-mast h1{font-size:clamp(39px,4.2vw,65px);line-height:1.03;letter-spacing:-1.5px;margin:13px 0 22px;overflow-wrap:anywhere;hyphens:auto}
.lab-mast p{max-width:760px;font-size:15px;color:var(--knowledge-soft-ink);line-height:1.85}
.lab-mast.simple{display:block;max-width:970px;padding:8px 0 36px}.lab-mast.simple h1{max-width:900px}.lab-mast.simple p{max-width:800px}
.lab-mast-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px 25px;margin:26px 0}.lab-mast-links a{max-width:100%;overflow-wrap:anywhere}
.lab-method{background:var(--knowledge-warm);border-top:3px solid var(--accent);padding:32px 28px;position:relative}
.lab-method>span{font-size:10px;line-height:1.8;letter-spacing:.4px;color:var(--knowledge-soft-ink);display:block;margin-bottom:28px}
.lab-method strong{display:block;font-family:var(--serif);font-size:34px;font-weight:550;line-height:1.12;letter-spacing:-.6px}
.lab-method p{font-size:12px;line-height:1.85;margin-top:19px}
.lab-workspace{border:1px solid var(--line);background:#fff;padding:32px;scroll-margin-top:90px}
.lab-toolbar{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr);gap:30px;align-items:start}.lab-toolbar>div{min-width:0}
.lab-toolbar h2{font-size:35px;line-height:1.16;max-width:720px;margin:9px 0 15px;hyphens:auto;overflow-wrap:anywhere}
.lab-toolbar p{font-size:12px;line-height:1.85;color:var(--knowledge-soft-ink);max-width:680px}
.lab-file-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.lab-workspace button,.lab-file-button,.case-quiz>button,.case-aside button{border:1px solid #b8c3d0;background:#fff;color:var(--navy);font-size:11px;font-weight:650;line-height:1.5;padding:10px 13px;min-height:42px;border-radius:0;max-width:100%;white-space:normal}
.lab-workspace button:hover,.lab-file-button:hover,.case-aside button:hover{background:var(--knowledge-blue);border-color:var(--navy)}
.lab-file-actions [data-lab-export],.case-quiz>button{background:var(--navy);color:#fff;border-color:var(--navy)}
.lab-file-actions [data-lab-export]:hover,.case-quiz>button:hover{background:#1d3867;color:#fff}
.lab-file-button{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden}
.lab-file-button input{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer}
.lab-file-button:focus-within{outline:3px solid var(--accent);outline-offset:3px}
.lab-save-status{font-size:11px;line-height:1.75;color:var(--green);border-top:1px solid var(--line);padding-top:14px;margin:22px 0 26px;min-height:34px;overflow-wrap:anywhere}
.lab-project-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin:25px 0}
.lab-project-fields label,.lab-factor-fields label,.knowledge-filter label{display:flex;flex-direction:column;min-width:0;gap:8px;font-size:11px;font-weight:650;line-height:1.55;color:var(--ink)}
.lab-project-fields input,.lab-project-fields textarea,.lab-factor-fields input,.knowledge-filter input,.knowledge-filter select,.lab-faq input{width:100%;min-width:0;max-width:100%;min-height:45px;border:1px solid #b9c4cf;background:#fff;color:var(--ink);border-radius:0;padding:11px 12px;font-size:13px;font-weight:400;line-height:1.5}
.lab-project-fields textarea{resize:vertical;min-height:76px}.lab-project-fields input::placeholder,.lab-project-fields textarea::placeholder,.knowledge-filter input::placeholder{color:#6b7786;opacity:1}
.lab-span-two{grid-column:span 2}.lab-project-fields .lab-span-two{grid-column:1/-1;grid-row:auto}
.lab-state-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:28px 0}
.lab-state-grid>div{background:var(--wash);padding:20px 18px;min-width:0;display:flex;flex-direction:column-reverse;gap:9px}
.lab-state-grid span{font-size:10px;line-height:1.6;color:var(--knowledge-soft-ink)}.lab-state-grid strong{font-family:var(--serif);font-size:36px;font-weight:550;line-height:1;color:var(--navy)}
.lab-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;border-bottom:2px solid var(--navy);padding-bottom:9px;margin-top:34px}
.lab-tabs button{min-width:0;min-height:48px;font-size:11px;line-height:1.5;text-align:left;border-color:var(--line);background:var(--wash);padding:11px 13px}
.lab-tabs button[aria-selected=true]{background:var(--navy);border-color:var(--navy);color:#fff}.lab-tabs button[aria-selected=true]:hover{background:#1d3867}
.lab-panel{padding:27px 0 0;min-width:0}.lab-panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:20px}.lab-panel-heading>div{min-width:0;max-width:820px}
.lab-panel-heading h3{font-size:31px;line-height:1.17;margin:9px 0 13px;overflow-wrap:anywhere;hyphens:auto}.lab-panel-heading p{font-size:12px;line-height:1.85;color:var(--knowledge-soft-ink)}.lab-panel-heading>button{flex:0 0 auto;margin-top:6px}
.lab-table-scroll{overflow-x:auto;overflow-y:visible;max-width:100%;width:100%;min-width:0;border:1px solid #cbd3dd;overscroll-behavior-inline:contain;scrollbar-color:#7d8ea3 #edf0f3;scrollbar-width:auto}
.lab-table{width:100%;min-width:1050px;table-layout:fixed;border-collapse:collapse;text-align:left;font-size:11px}
.lab-table th{font-size:10px;font-weight:650;letter-spacing:.15px;background:var(--knowledge-blue);padding:12px 10px;border-bottom:1px solid #cbd3dd;vertical-align:bottom}
.lab-table td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top;background:#fff}
.lab-table tbody tr:nth-child(even) td{background:#fafbfc}.lab-table tbody tr:last-child td{border-bottom:0}.lab-table th:first-child{width:230px}.lab-table th:last-child{width:52px}.lab-table td:last-child{text-align:center;padding:8px 4px}
.lab-table input,.lab-table select{display:block;width:100%;min-width:0;max-width:100%;min-height:41px;padding:9px 8px;border:1px solid #b6c1ce;border-radius:0;background:#fff;color:var(--ink);font-size:12px;line-height:1.5}
.lab-table input:focus-visible,.lab-table select:focus-visible{outline-offset:-2px}.lab-table .lab-remove{border:1px solid transparent;background:transparent;min-width:36px;min-height:40px;padding:4px;font-size:23px;font-weight:400;color:#85503b;line-height:1.2}.lab-table .lab-remove:hover{background:#f8eee8;border-color:#dbbdaa}
.lab-factor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,200px));gap:18px;padding:18px;background:var(--knowledge-warm);border:1px solid var(--knowledge-warm-line);margin-bottom:20px}.lab-factor-fields input{min-height:42px}
.lab-row-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.lab-row-actions button{background:var(--wash)}
.lab-calculation{display:flex;flex-wrap:wrap;gap:1px;background:var(--knowledge-warm);border-left:3px solid var(--accent);padding:19px 21px;margin-top:24px;font-size:12px;line-height:1.85;color:var(--knowledge-soft-ink);overflow-wrap:anywhere;min-width:0}
.lab-calculation>div{flex:1 1 190px;min-width:0;padding:2px 18px 2px 0}.lab-calculation span{display:block;font-size:10px;line-height:1.7;color:var(--knowledge-soft-ink);margin-bottom:8px}.lab-calculation strong{display:block;font-family:var(--serif);font-size:29px;font-weight:550;line-height:1.2;color:var(--navy);overflow-wrap:anywhere}
.lab-case-library,.lab-learning-paths,.lab-faq{margin-top:55px;padding-top:26px;border-top:2px solid var(--navy)}
.lab-case-library .section-heading{align-items:baseline;flex-wrap:wrap;gap:15px}.lab-case-library h2,.lab-learning-paths>h2,.lab-faq>h2{font-size:37px;line-height:1.15;overflow-wrap:anywhere;hyphens:auto}
.case-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:25px 0 40px}
.case-card{min-width:0;border:1px solid var(--line);border-top:3px solid var(--navy);padding:27px 28px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;position:relative}
.case-card:nth-child(4n+2),.case-card:nth-child(4n+3){background:var(--knowledge-warm);border-top-color:#9c6349}.case-card .kicker{font-size:9px;line-height:1.8}.case-card h3{font-size:31px;line-height:1.14;letter-spacing:-.45px;margin:14px 0 17px;overflow-wrap:anywhere;hyphens:auto}.case-card p{font-size:11px;line-height:1.8;color:var(--knowledge-soft-ink);margin-bottom:24px}.case-card .text-link{font-size:11px;line-height:1.7;margin-top:auto}
.lab-learning-paths>h2,.lab-faq>h2{margin:10px 0 26px}.lab-learning-paths>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.lab-learning-paths article{padding:25px;border:1px solid var(--line);background:var(--wash);min-width:0}.lab-learning-paths article h3{font-size:28px;line-height:1.17;margin:12px 0 17px;overflow-wrap:anywhere;hyphens:auto}.lab-learning-paths article>p{font-size:12px;line-height:1.85;color:var(--knowledge-soft-ink)}.lab-learning-paths ol{padding-left:19px;margin:24px 0 0}.lab-learning-paths li{padding:0 0 17px 5px;line-height:1.8}.lab-learning-paths li::marker{font-size:11px;color:var(--accent);font-weight:700}.lab-learning-paths li a{font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#b9c4cf}.lab-learning-paths li p{font-size:11px;color:var(--knowledge-soft-ink);line-height:1.85;margin-top:8px}
.lab-faq>.field{display:block;max-width:650px;font-size:11px;font-weight:650;margin:25px 0}.lab-faq>.field input{display:block;margin-top:9px}
.lab-faq details{border-top:1px solid var(--line);padding:0}.lab-faq details:last-child{border-bottom:1px solid var(--line)}.lab-faq summary{cursor:pointer;font-family:var(--sans);font-weight:650;font-size:14px;line-height:1.65;padding:20px 28px 20px 3px;overflow-wrap:anywhere;hyphens:auto}.lab-faq summary::marker{color:var(--accent)}.lab-faq details[open] summary{color:var(--navy)}.lab-faq details>div{max-width:910px;padding:0 27px 24px;font-size:14px;line-height:1.9;color:var(--knowledge-soft-ink)}.lab-source-links{font-size:11px;line-height:1.9}.lab-source-links a{text-decoration:underline;text-underline-offset:3px}
.case-heading{max-width:1050px;padding:9px 0 33px;border-bottom:1px solid var(--line)}.case-heading h1{font-size:clamp(38px,4.2vw,62px);line-height:1.07;letter-spacing:-1.2px;margin:17px 0 20px;overflow-wrap:anywhere;hyphens:auto}.case-heading>p{font-family:var(--serif);font-size:25px;line-height:1.5;color:var(--knowledge-soft-ink);max-width:890px}.case-byline{font-size:11px;line-height:1.85;color:var(--muted);margin-top:22px}
.case-reading-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(230px,1fr);gap:65px;margin-top:35px}.case-reading{min-width:0;font-size:16px;line-height:1.95;color:#30425a}.case-reading>.editorial-photo{display:block;width:100%;height:auto;max-height:300px;background:var(--wash);margin-bottom:28px}.case-reading h2{font-size:34px;line-height:1.18;color:var(--ink);margin:10px 0 21px;overflow-wrap:anywhere;hyphens:auto}.case-reading h3{font-size:25px;line-height:1.2;color:var(--ink)}.case-reading p+p{margin-top:18px}
.case-scenario{background:var(--knowledge-warm);border-left:3px solid var(--accent);padding:27px 29px;margin-bottom:25px;font-size:15px;line-height:1.9}.case-scenario>.kicker{display:block;margin-bottom:14px}
.case-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:25px 0 37px}.case-inputs>div{min-width:0;background:#fff;padding:20px}.case-inputs dt{font-size:10px;font-weight:700;line-height:1.65;color:var(--knowledge-soft-ink);margin-bottom:9px}.case-inputs dd{font-size:13px;line-height:1.75;margin:0;color:var(--ink);overflow-wrap:anywhere}
.case-chapter{border-top:1px solid var(--line);padding-top:26px;margin-top:30px;scroll-margin-top:90px}.case-number{font-family:var(--serif);font-size:30px;color:#8d7060;line-height:1;display:inline-block;margin-bottom:6px}
.case-worked{background:var(--knowledge-blue);padding:28px 30px;margin:35px 0}.case-worked ol{padding-left:24px;margin-bottom:0;counter-reset:none}.case-worked li{padding:9px 0 16px 8px}.case-worked li::marker{font-size:13px;font-weight:700;color:var(--navy)}.case-worked li h3{font-family:var(--sans);font-size:13px;font-weight:700;line-height:1.6;margin-bottom:8px}.case-worked li p{font-size:14px;line-height:1.9}
.case-deliverables{border-top:2px solid var(--navy);padding-top:23px;margin:35px 0}.case-deliverables ul{padding-left:20px;font-size:14px;line-height:1.9}.case-deliverables li{padding-left:4px;margin-bottom:10px}.case-deliverables li::marker{color:var(--accent)}
.case-quiz{margin:36px 0;border:1px solid var(--line);padding:27px 28px;background:#fafbfc}.case-quiz fieldset{min-width:0;border:0;border-top:1px solid var(--line);padding:22px 0 12px;margin:22px 0}.case-quiz legend{font-family:var(--sans);font-size:14px;line-height:1.7;color:var(--ink);font-weight:650;max-width:100%;padding:0 12px 0 0;overflow-wrap:anywhere}.case-quiz label{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.85;padding:10px 12px;margin:6px 0;background:#fff;border:1px solid var(--line);cursor:pointer}.case-quiz input{flex:0 0 auto;margin-top:6px;accent-color:var(--navy);width:16px;height:16px}.case-quiz label:has(input:checked){border-color:var(--navy);background:var(--knowledge-blue)}.case-quiz .quiz-explanation{font-size:12px;line-height:1.85;margin:16px 0 0;padding:13px 15px;border-left:3px solid var(--accent);background:#fff}.case-quiz .quiz-correct .quiz-explanation{border-color:var(--green);background:var(--knowledge-success)}.case-quiz [data-quiz-result]{font-size:12px;line-height:1.85;margin-top:17px;color:var(--ink)}
.case-sources{font-size:12px;line-height:1.9;padding-top:24px;border-top:1px solid var(--line);margin-top:36px}.case-sources h2{font-family:var(--sans);font-size:12px;line-height:1.6;letter-spacing:0;font-weight:700}.case-sources ul{padding-left:18px}.case-sources a{text-decoration:underline;text-decoration-color:#a5b3c3;text-underline-offset:3px;overflow-wrap:anywhere}
.case-aside{min-width:0}.case-aside>div{position:sticky;top:90px;background:var(--navy);color:#fff;padding:28px}.case-aside .kicker{color:#e1c6a0;font-size:9px;line-height:1.8}.case-aside h2{font-size:30px;line-height:1.17;margin:12px 0 17px;overflow-wrap:anywhere;hyphens:auto}.case-aside p{font-size:12px;line-height:1.9;color:#d5dfeb}.case-aside .button{display:block;background:#fff;color:var(--navy);margin:24px 0 12px;max-width:100%;text-align:center;white-space:normal;line-height:1.6;overflow-wrap:anywhere}.case-aside button{display:block;width:100%;border-color:#b0bed1;background:transparent;color:#fff}.case-aside button:hover{background:#fff;color:var(--navy)}.case-aside .text-link{display:block;font-size:11px;margin-top:20px;color:#e3d5bd;overflow-wrap:anywhere}
.knowledge-filter{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end;padding:23px;background:var(--wash);border:1px solid var(--line);margin:0 0 22px}.knowledge-filter .button{font-size:12px;min-height:45px;line-height:1.6;white-space:normal;max-width:100%;padding:11px 19px}.knowledge-filter select{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.knowledge-filter.cpv-filter{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto}.knowledge-count{font-size:12px;line-height:1.8;color:var(--knowledge-soft-ink);margin:20px 0}
.term-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;margin:18px 0 30px}.term-grid article{border-top:1px solid var(--line);padding:20px 0;min-width:0}.term-grid h2{font-family:var(--sans);font-size:15px;line-height:1.55;font-weight:650;letter-spacing:0;overflow-wrap:anywhere;hyphens:auto}.term-history{display:inline-block;font-size:9px;color:#6a5545;background:var(--knowledge-warm);padding:4px 7px;margin-top:9px;line-height:1.65}
.term-article{max-width:900px;padding:12px 0 35px}.term-article>h1{font-size:clamp(37px,4.4vw,63px);line-height:1.08;letter-spacing:-1.1px;margin:18px 0 30px;overflow-wrap:anywhere;hyphens:auto}.term-article section{font-size:16px;line-height:1.95;color:#30425a;margin:26px 0}.term-article section h2{font-size:32px;line-height:1.2;margin-bottom:18px;hyphens:auto;overflow-wrap:anywhere}.term-article .term-sources{font-size:12px;border-top:1px solid var(--line);padding-top:22px}.term-sources h2{font-family:var(--sans);font-size:12px!important;letter-spacing:0;font-weight:650}.term-sources ul{padding-left:18px}.term-sources a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.knowledge-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:32px 0}.knowledge-pagination a,.knowledge-pagination strong{border:1px solid var(--line);display:flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:8px 12px;font-size:12px;font-weight:500}.knowledge-pagination strong{background:var(--navy);border-color:var(--navy);color:#fff}.knowledge-pagination a:hover{background:var(--knowledge-blue);color:var(--ink)}
.cpv-heading{padding:12px 0 26px;max-width:1040px}.cpv-large{font-family:var(--sans);font-size:13px;font-weight:650;letter-spacing:.8px;line-height:1.7;color:var(--accent);margin:22px 0 9px}.cpv-heading h1{font-size:clamp(35px,4vw,57px);line-height:1.11;letter-spacing:-.8px;margin:0 0 20px;overflow-wrap:anywhere;hyphens:auto}.cpv-heading p[lang]{font-size:14px;line-height:1.85;color:var(--knowledge-soft-ink)}
.cpv-trail{display:flex;flex-direction:column;gap:8px;max-width:900px;border-left:2px solid #c9d4df;padding:8px 0 8px 18px;margin:0 0 27px}.cpv-trail a{font-size:11px;line-height:1.8;overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:#c2ccd6;text-underline-offset:3px}
.cpv-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.cpv-result-grid article{padding:23px;border:1px solid var(--line);background:#fff;min-width:0}.cpv-result-grid article>span{display:block;font-size:10px;font-weight:650;letter-spacing:.6px;color:var(--accent);margin-bottom:13px;line-height:1.6}.cpv-result-grid h2{font-family:var(--sans);font-weight:650;font-size:16px;letter-spacing:0;line-height:1.5;margin-bottom:12px;overflow-wrap:anywhere;hyphens:auto}.cpv-result-grid p{font-size:11px;line-height:1.85;color:var(--knowledge-soft-ink);overflow-wrap:anywhere;hyphens:auto}
.cpv-child-list{margin-top:35px;max-width:1000px}.cpv-child-list h2{font-size:32px;line-height:1.2;margin-bottom:22px;overflow-wrap:anywhere;hyphens:auto}.cpv-child-list>a{display:grid;grid-template-columns:130px minmax(0,1fr);gap:22px;border-top:1px solid var(--line);padding:17px 0;font-size:13px;line-height:1.75}.cpv-child-list>a:last-child{border-bottom:1px solid var(--line)}.cpv-child-list strong{font-size:11px;letter-spacing:.25px;font-weight:650}.cpv-child-list span{min-width:0;overflow-wrap:anywhere;hyphens:auto}
.classification-source{font-size:11px;line-height:1.9;color:var(--knowledge-soft-ink);border-top:1px solid var(--line);padding-top:22px;margin-top:35px;max-width:1000px;overflow-wrap:anywhere}.classification-source a{text-decoration:underline;text-underline-offset:3px}
.location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}.location-grid>a{min-width:0;background:#fff;padding:23px;display:block}.location-grid>a:hover{background:var(--knowledge-warm);color:var(--ink)}.location-grid strong{font-family:var(--serif);font-size:27px;line-height:1.17;font-weight:550;display:block;overflow-wrap:anywhere;hyphens:auto}.location-grid span{font-size:10px;line-height:1.8;color:var(--knowledge-soft-ink);display:block;margin-top:12px}
.location-detail>h2{font-size:39px;line-height:1.17;margin:10px 0 15px;overflow-wrap:anywhere;hyphens:auto}.location-detail>p{font-size:12px;line-height:1.9;color:var(--knowledge-soft-ink)}.location-notices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 29px;margin:28px 0}.location-notices article{border-top:1px solid var(--line);padding:23px 0;min-width:0}.location-notices article>span{font-size:10px;line-height:1.7;color:var(--accent)}.location-notices h3{font-size:27px;line-height:1.18;margin:12px 0 16px;overflow-wrap:anywhere;hyphens:auto}.location-notices p{font-size:11px;line-height:1.8;color:var(--knowledge-soft-ink)}
.lab-workspace [hidden],.lab-faq [hidden],.case-quiz [hidden]{display:none!important}
:where(.lab-workspace,.case-quiz,.lab-faq,.knowledge-filter) :where(button,input,textarea,select,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:1100px){.lab-mast{gap:35px;grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr)}.lab-mast h1{font-size:53px}.lab-workspace{padding:25px}.lab-toolbar{grid-template-columns:minmax(0,1.5fr) minmax(210px,1fr);gap:24px}.lab-toolbar h2{font-size:32px}.lab-project-fields{gap:16px}.lab-learning-paths>div{grid-template-columns:1fr}.lab-learning-paths article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);column-gap:35px;padding:27px}.lab-learning-paths article>.kicker{grid-column:1}.lab-learning-paths article>h3{grid-column:1}.lab-learning-paths article>p{grid-column:1}.lab-learning-paths article>ol{grid-column:2;grid-row:1/4;margin:0}.case-reading-layout{gap:35px;grid-template-columns:minmax(0,2.4fr) minmax(220px,1fr)}.case-aside>div{padding:23px}.case-aside h2{font-size:28px}.knowledge-filter.cpv-filter{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cpv-filter .button{grid-column:1/-1;justify-self:start}.term-grid{gap:0 19px}.cpv-result-grid{gap:15px}}
@media(max-width:820px){.lab-mast{grid-template-columns:1fr;gap:25px;padding-top:30px}.lab-mast h1{font-size:49px}.lab-method{max-width:none;padding:25px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px 28px}.lab-method>span{margin:0;grid-column:1/-1}.lab-method strong{font-size:31px}.lab-method p{margin:0}.lab-toolbar{grid-template-columns:1fr;gap:21px}.lab-file-actions{justify-content:flex-start}.lab-project-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-project-fields .lab-span-two{grid-column:1/-1;grid-row:auto}.lab-state-grid>div{padding:17px 14px}.lab-state-grid span{font-size:9px}.lab-tabs{gap:4px}.lab-tabs button{font-size:10px;padding:10px 9px}.lab-panel-heading{gap:18px}.lab-panel-heading h3{font-size:29px}.case-card{padding:24px}.case-card h3{font-size:29px}.case-reading-layout{grid-template-columns:1fr}.case-reading{max-width:760px}.case-aside>div{position:static;max-width:760px;padding:27px}.case-aside .button,.case-aside button{max-width:340px}.case-inputs{margin-bottom:30px}.term-grid,.cpv-result-grid,.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-nav{gap:0 22px;font-size:11px}.case-heading h1{font-size:47px}.case-heading>p{font-size:24px}.term-article section{font-size:15px}}
@media(max-width:520px){.knowledge-nav{gap:0 15px;margin:21px 0 27px;font-size:10px}.knowledge-nav a{padding:11px 0 9px}.lab-mast{padding:27px 0 25px;gap:22px}.lab-mast h1{font-size:39px;letter-spacing:-1px;margin:12px 0 20px;line-height:1.06}.lab-mast p{font-size:13px;line-height:1.85}.lab-mast.simple{padding:4px 0 28px}.lab-mast-links{align-items:flex-start;flex-direction:column;gap:15px;margin:22px 0}.lab-mast-links .button,.lab-mast-links .button-outline{font-size:11px;line-height:1.6;max-width:100%;white-space:normal}.lab-method{display:block;padding:23px}.lab-method>span{font-size:9px;margin-bottom:18px}.lab-method strong{font-size:32px}.lab-method p{font-size:12px;margin-top:16px}.lab-workspace{padding:20px 16px}.lab-toolbar h2{font-size:30px;line-height:1.15}.lab-toolbar p{font-size:11px}.lab-file-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}.lab-workspace button,.lab-file-button{font-size:10px;padding:10px;line-height:1.6}.lab-file-button{text-align:center}.lab-save-status{font-size:10px;margin:20px 0}.lab-project-fields{grid-template-columns:1fr;gap:15px;margin:20px 0}.lab-project-fields .lab-span-two{grid-column:auto}.lab-project-fields label,.lab-factor-fields label,.knowledge-filter label{font-size:10px}.lab-project-fields input,.lab-project-fields textarea,.knowledge-filter input,.knowledge-filter select,.lab-faq input{font-size:13px}.lab-state-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:23px 0}.lab-state-grid>div{padding:17px 13px}.lab-state-grid span{font-size:10px}.lab-state-grid strong{font-size:32px}.lab-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:26px}.lab-tabs button{font-size:10px;padding:11px;min-height:43px}.lab-tabs button:last-child{grid-column:1/-1}.lab-panel{padding-top:23px}.lab-panel-heading{flex-direction:column;gap:12px}.lab-panel-heading h3{font-size:28px;line-height:1.17}.lab-panel-heading p{font-size:11px}.lab-panel-heading>button{margin:0}.lab-table{min-width:1020px}.lab-table th:first-child{width:220px}.lab-table-scroll{max-width:100%}.lab-row-actions{gap:8px}.lab-row-actions button{max-width:100%;text-align:left}.lab-factor-fields{padding:15px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.lab-factor-fields input{font-size:13px;padding:10px}.lab-calculation{padding:16px;font-size:11px;gap:16px}.lab-calculation>div{flex-basis:100%;padding:0}.lab-calculation strong{font-size:28px}.lab-case-library,.lab-learning-paths,.lab-faq{margin-top:38px;padding-top:22px}.lab-case-library h2,.lab-learning-paths>h2,.lab-faq>h2{font-size:32px}.case-card-grid{grid-template-columns:1fr;gap:17px;margin-top:22px}.case-card{padding:24px 22px}.case-card h3{font-size:30px}.case-card p{font-size:11px}.lab-learning-paths article{display:block;padding:22px}.lab-learning-paths article h3{font-size:29px}.lab-learning-paths article>ol{margin-top:23px}.lab-learning-paths article>p{font-size:12px}.lab-learning-paths li p{font-size:11px}.lab-faq summary{font-size:13px;line-height:1.75;padding:18px 7px 18px 1px}.lab-faq details>div{padding:0 4px 22px 18px;font-size:13px;line-height:1.9}.lab-faq>.field{font-size:10px}.case-heading{padding:5px 0 26px}.case-heading h1{font-size:37px;letter-spacing:-.9px;line-height:1.08}.case-heading>p{font-size:22px;line-height:1.45}.case-byline{font-size:10px}.case-reading-layout{margin-top:27px;gap:28px}.case-reading{font-size:14px;line-height:1.95}.case-reading>.editorial-photo{margin-bottom:23px;max-height:220px}.case-reading h2{font-size:30px;line-height:1.19}.case-scenario{padding:22px 20px;font-size:14px}.case-inputs{grid-template-columns:1fr}.case-inputs>div{padding:18px 20px}.case-inputs dd{font-size:12px}.case-chapter{padding-top:23px;margin-top:27px}.case-number{font-size:28px}.case-worked{padding:23px 20px;margin:28px 0}.case-worked ol{padding-left:19px}.case-worked li{padding-left:4px}.case-worked li p{font-size:13px}.case-deliverables ul{font-size:13px}.case-quiz{padding:23px 18px}.case-quiz legend{font-size:13px;line-height:1.75}.case-quiz label{font-size:12px;gap:9px;padding:10px}.case-quiz input{margin-top:5px}.case-quiz .quiz-explanation{font-size:11px;padding:12px}.case-quiz>button{font-size:11px;width:100%;padding:11px}.case-sources{font-size:11px}.case-aside>div{padding:24px}.case-aside h2{font-size:30px}.case-aside .button{font-size:12px}.knowledge-filter,.knowledge-filter.cpv-filter{grid-template-columns:1fr;padding:18px;gap:15px}.knowledge-filter .button,.cpv-filter .button{grid-column:auto;justify-self:stretch;font-size:11px;min-height:44px}.knowledge-count{font-size:11px}.term-grid,.cpv-result-grid,.location-grid,.location-notices{grid-template-columns:1fr}.term-grid{gap:0}.term-grid article{padding:18px 0}.term-grid h2{font-size:15px}.term-article>h1{font-size:38px;line-height:1.08;margin-bottom:25px}.term-article section{font-size:14px;line-height:1.95}.term-article section h2{font-size:29px}.cpv-heading h1{font-size:35px;line-height:1.13}.cpv-heading p[lang]{font-size:12px}.cpv-trail{padding-left:13px}.cpv-trail a{font-size:10px}.cpv-result-grid{gap:15px}.cpv-result-grid article{padding:22px}.cpv-result-grid h2{font-size:16px}.cpv-child-list h2{font-size:29px}.cpv-child-list>a{grid-template-columns:1fr;gap:5px;padding:17px 0;font-size:12px}.cpv-child-list strong{font-size:11px}.classification-source{font-size:10px;line-height:1.9}.location-grid>a{padding:22px}.location-grid strong{font-size:28px}.location-detail>h2{font-size:34px}.location-detail>p{font-size:11px}.location-notices{gap:0}.location-notices h3{font-size:28px}.knowledge-pagination{gap:7px}.knowledge-pagination a,.knowledge-pagination strong{min-width:39px;min-height:41px;padding:7px 11px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.lab-table-scroll{scroll-behavior:auto}}
@media print{.knowledge-nav,.lab-mast-links,.lab-file-actions,.lab-tabs,.lab-row-actions,.lab-panel-heading>button,.case-aside,.case-quiz>button{display:none!important}.lab-workspace{border:0;padding:0}.lab-panel[hidden]{display:block!important}.lab-project-fields,.lab-state-grid,.case-inputs{break-inside:avoid}.lab-table-scroll{overflow:visible;border-color:#999}.lab-table{min-width:0;font-size:8pt}.lab-table th:first-child{width:auto}.lab-table th:last-child,.lab-table td:last-child{display:none}.lab-table input,.lab-table select{font-size:8pt;padding:4px;min-height:25px;border-color:#bbb}.lab-table th,.lab-table td{padding:4px}.lab-state-grid strong{font-size:22pt}.case-reading-layout{display:block}.case-reading{font-size:11pt;max-width:none}.case-reading h2{font-size:22pt}.case-reading>.editorial-photo{max-height:150px}.case-scenario,.case-worked,.case-quiz{background:#fff;border:1px solid #bbb;padding:15px;break-inside:avoid}.case-chapter{break-before:auto}.case-heading h1{font-size:30pt}.knowledge-filter{display:none}.lab-learning-paths>div,.case-card-grid{display:block}.lab-learning-paths article,.case-card{break-inside:avoid;margin-bottom:18px}.lab-save-status{color:#333}}
