:root{--ink:#102e34;--muted:#53676a;--teal:#176653;--mint:#e1f0e9;--paper:#f5f6f1;--line:#dce3dd;--navy:#0e3037;--amber:#8a5514}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'Segoe UI',Arial,sans-serif}a{color:var(--teal);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #c77c28;outline-offset:4px}header{height:94px;background:#fff;display:flex;align-items:center;padding:0 42px;gap:40px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font-size:19px;line-height:1.15;font-weight:700;min-width:237px}.brand-bottom{display:block}.logo{display:grid;place-items:center;width:40px;height:44px;background:var(--teal);color:white;border-radius:10px 10px 20px 20px;font-size:27px}header nav{display:flex;gap:28px;font-size:14px}header nav a{color:var(--ink);text-decoration:none}.course-tag{font-size:10px;letter-spacing:1.4px;margin-left:auto;white-space:nowrap;color:var(--muted)}aside{position:fixed;left:0;top:94px;bottom:0;width:270px;padding:32px 22px;background:#fff;border-right:1px solid var(--line);overflow-y:auto;z-index:15}.side-label,.eyebrow{font-size:11px;letter-spacing:1.9px;font-weight:700}.side-label{color:var(--muted);padding-left:10px;margin-bottom:20px}#lessons a{display:flex;gap:11px;align-items:center;padding:10px 12px;margin-bottom:4px;text-decoration:none;font-size:13px;line-height:1.4;color:#405457;border-radius:6px}#lessons a[aria-current=page]{background:var(--mint);color:#124d3e;font-weight:700}#lessons a:hover{background:#f1f5f0}.num{font-size:10px;color:#465e57;min-width:22px}#lessons .group{margin:18px 12px 6px;font-size:10px;letter-spacing:1.5px;color:#657873}.side-progress{border-top:1px solid var(--line);margin:25px 10px 0;padding-top:20px;font-size:12px}.side-progress p{font-size:11px;color:var(--muted);line-height:1.6}progress{width:100%;height:5px;border:0;accent-color:var(--teal)}progress::-webkit-progress-bar{background:#e4eae3}progress::-webkit-progress-value{background:var(--teal)}.text-button{background:none;border:0;padding:0;color:var(--teal);text-decoration:underline;font-size:12px}.side-note{font-size:10px;margin:30px 10px;color:var(--muted)}.dot{display:inline-block;width:6px;height:6px;background:var(--teal);border-radius:100%;margin-right:5px}main{margin-left:270px;min-height:80vh;padding:40px 48px 60px;max-width:1800px}.crumb{color:var(--muted);font-size:11px;display:flex;gap:10px;align-items:center;margin-bottom:26px}.crumb a{text-decoration:none;color:var(--muted)}.hero{background:var(--navy);border-radius:12px;color:#fff;display:grid;grid-template-columns:1.25fr 1fr;min-height:443px;overflow:hidden;position:relative}.hero-copy{padding:45px 0 45px 42px;z-index:1}.eyebrow{color:#9ccab8;margin-bottom:18px}.hero h1{font-family:Georgia,serif;font-size:49px;line-height:1.1;font-weight:400;letter-spacing:-1.5px;margin:0 0 22px}.hero h1 em{font-style:normal;color:#a8d7c4}.hero p{max-width:450px;color:#d2e2df;font-size:14px;line-height:1.8}.primary,.secondary,.outline{display:inline-flex;align-items:center;justify-content:center;gap:16px;text-decoration:none;border:1px solid transparent;border-radius:5px;padding:11px 19px;font-weight:600;font-size:13px;line-height:1.5}.primary{background:var(--teal);color:white}.hero .primary{background:#d4ebac;color:#14382e}.secondary{background:#fff;color:var(--ink);border-color:var(--line)}.outline{background:transparent;color:var(--ink);border-color:#a4b6ae}.hero .outline{border-color:#56747a;color:#fff}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.hero-art{display:flex;align-items:center;justify-content:center;position:relative;padding:20px}.hero-art svg{width:100%;max-width:360px;filter:drop-shadow(0 15px 25px #051d2580)}.hero-art:before{content:'';position:absolute;inset:-30px;background-image:linear-gradient(#658d8b15 1px,transparent 1px),linear-gradient(90deg,#658d8b15 1px,transparent 1px);background-size:28px 28px;transform:perspective(450px) rotateY(-15deg);mask-image:radial-gradient(ellipse,black,transparent 70%)}.hero-foot{margin-top:27px;display:flex;gap:19px;font-size:10px;color:#b6ceca;letter-spacing:.5px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0;border-bottom:1px solid var(--line);margin-bottom:36px}.metric{padding:0 26px;border-right:1px solid var(--line)}.metric:first-child{padding-left:3px}.metric:last-child{border:0}.metric strong{font-family:Georgia,serif;font-size:29px;line-height:1}.metric p{font-size:11px;color:var(--muted);margin:7px 0 0}h2{font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.25;letter-spacing:-.5px;margin:0 0 13px}h3{font-size:17px;line-height:1.4;margin:0 0 10px}h1{font-family:Georgia,serif;font-weight:400;line-height:1.15;font-size:43px;margin:8px 0 18px;letter-spacing:-1px}p{margin:0 0 16px}.muted,.intro{color:var(--muted)}.intro{font-size:17px;max-width:780px}.section{margin-top:38px}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px;gap:20px}.section-top p{margin:0;font-size:13px;color:var(--muted)}.section-top a{font-size:12px;white-space:nowrap}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:#fff;border:1px solid var(--line);padding:25px;border-radius:8px}.card p{font-size:13px;color:var(--muted)}.card p:last-child{margin-bottom:0}.lesson-card{position:relative;text-decoration:none;color:var(--ink);transition:transform .15s}.lesson-card:hover{transform:translateY(-3px);border-color:#90afa1}.icon{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:#eef4eb;font-size:21px;margin-bottom:24px;color:var(--teal)}.small-label{display:block;font-size:10px;letter-spacing:1.3px;color:var(--muted);text-transform:uppercase;margin-bottom:9px}.lesson-card h3{font-size:15px}.card-arrow{display:block;margin-top:21px;font-size:12px;color:var(--teal)}.callout{border-left:3px solid var(--teal);background:#e9f0e8;border-radius:0 7px 7px 0;padding:21px 25px;margin:26px 0}.callout p{margin:0;font-size:14px}.callout strong{display:block;margin-bottom:6px}.caution{background:#f7eedf;border-color:#a56a22}.caution p{color:#664515}.label{display:inline-block;border-radius:4px;background:var(--mint);color:#18543f;padding:4px 8px;font-size:10px;font-weight:700;letter-spacing:.5px}.lesson-head{margin-bottom:26px;max-width:850px}.lesson-head .eyebrow{color:var(--teal)}.lesson-head h1{max-width:850px}.rule{border:0;border-top:1px solid var(--line);margin:30px 0}.prose{max-width:850px}.prose p{color:#405659}.source-line{font-size:12px;color:var(--muted);margin-top:20px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;margin:20px 0;background:white}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{background:#eaf0e9;color:#34554e;font-size:11px;text-transform:uppercase;letter-spacing:.6px}th,td{padding:16px 19px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border:0}td small{display:block;color:var(--muted);margin-top:5px}.beforeafter{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white;margin:23px 0}.beforeafter>div{padding:27px}.beforeafter>div+div{background:var(--mint);border-left:1px solid var(--line)}.beforeafter strong{font-size:37px;font-family:Georgia,serif;font-weight:400;display:block;margin:6px 0}.beforeafter p{font-size:13px;max-width:460px;margin:0}.evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.evidence{margin:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.evidence button{padding:0;border:0;background:#152327;width:100%;display:block}.evidence img{display:block;width:100%;height:230px;object-fit:contain}.evidence figcaption{padding:15px 18px;font-size:12px;overflow-wrap:anywhere}.evidence figcaption b{display:block;margin-bottom:5px}.evidence figcaption small{display:block;color:var(--muted);margin-top:8px;font-size:10px}details{background:white;border:1px solid var(--line);border-radius:7px;margin:13px 0;padding:17px 21px}summary{cursor:pointer;font-weight:600;font-size:14px}details>div{margin-top:18px;font-size:14px}code{font-size:12px;background:#e8ede8;padding:3px 5px;overflow-wrap:anywhere}pre{white-space:pre-wrap;background:#122e35;color:#d0ebe0;padding:20px;border-radius:7px;font-size:12px;overflow-wrap:anywhere}pre code{background:transparent;padding:0;color:inherit}.quiz{background:#fff;border:1px solid var(--line);border-radius:8px;padding:25px;margin-top:30px}.quiz legend{font-size:16px;font-weight:600;margin-bottom:16px}.quiz fieldset{border:0;padding:0;margin:0}.quiz label{display:block;border:1px solid var(--line);padding:12px 15px;margin:8px 0;border-radius:5px;font-size:14px;cursor:pointer}.quiz label:has(input:checked){border-color:var(--teal);background:#edf4ed}.quiz input{margin-right:9px}.feedback{font-size:14px;margin-top:15px;color:#254e3e}.page-nav{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:45px;padding-top:25px;gap:10px}.page-nav a{font-size:13px}.complete-row{display:flex;gap:15px;align-items:center;margin-top:30px;font-size:13px;flex-wrap:wrap}.complete-row button{border:1px solid #8ba79c;background:#e3ede3;border-radius:5px;color:var(--ink);padding:10px 18px}.topology{background:#fff;padding:25px;border:1px solid var(--line);border-radius:8px}.topology svg{display:block;max-height:380px;width:100%}.topology figcaption{font-size:12px;color:var(--muted);text-align:center}.pathway{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:26px 0}.pathway div{background:#e6ece6;padding:16px 12px;border-top:3px solid #6c9683;border-radius:4px;font-size:12px}.pathway b{display:block;margin-bottom:6px}.checklist label{display:flex;gap:12px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px;align-items:start}.checklist input{margin-top:6px}.checklist label:has(input:checked){color:#1a6550}.scenario-answers{display:grid;gap:10px;margin-top:20px}.scenario-answers button{text-align:left;padding:15px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink);font-size:14px}.scenario-answers button:hover{border-color:var(--teal);background:#f0f6ef}.scenario-step{font-size:11px;color:var(--teal);font-weight:700;letter-spacing:1px}.reference{padding:20px 0;border-bottom:1px solid var(--line);font-size:14px;overflow-wrap:anywhere}.reference p{margin-bottom:7px}.reference span{font-size:11px;color:var(--muted)}footer{margin-left:270px;padding:30px 48px;display:flex;justify-content:space-between;border-top:1px solid var(--line);gap:25px;background:#edf0e9;font-size:11px;color:var(--muted)}footer strong{font-size:14px;color:var(--ink)}footer p{margin:7px 0 0}.menu{display:none}.skip{position:fixed;top:-80px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}dialog{border:1px solid var(--line);border-radius:10px;max-width:90vw;max-height:94vh;padding:22px;background:#fff;color:var(--ink)}dialog::backdrop{background:#061d28c9}#lightbox img{max-width:85vw;max-height:75vh;display:block;object-fit:contain}#lightbox p{font-size:12px;overflow-wrap:anywhere;max-width:900px}#lightbox button{display:block;margin-left:auto;margin-bottom:15px;padding:7px 14px;background:var(--navy);color:white;border:0;border-radius:4px}#reset-dialog{max-width:420px}#reset-dialog button{margin:5px;border-radius:5px;padding:8px 16px;border:1px solid #91aaa0}.hidden{display:none!important}@media(min-width:1600px){main{padding-left:70px;padding-right:70px}.hero h1{font-size:64px}}@media(max-width:1200px){header{padding:0 24px;gap:20px}.course-tag{display:none}aside{width:230px;padding:25px 14px}main,footer{margin-left:230px;padding-left:30px;padding-right:30px}.hero h1{font-size:40px}.hero-copy{padding-left:30px}.grid4{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){header{height:77px;padding:0 20px;justify-content:space-between}.brand{min-width:0;font-size:17px}header nav{display:none}.menu{display:block;background:#fff;border:1px solid var(--line);border-radius:4px;padding:6px 12px;font-size:13px}aside{display:none;top:77px;width:270px;box-shadow:15px 0 30px #082b3520}aside.open{display:block}main,footer{margin-left:0}main{padding:25px 24px 45px}.hero{min-height:400px}.hero h1{font-size:44px}.grid3{grid-template-columns:1fr}.pathway{grid-template-columns:1fr}.pathway div{padding:12px 16px}.hero-art{padding:0 10px}.hero-copy{padding:35px 0 35px 28px}footer{padding:25px}}@media(max-width:560px){body{font-size:15px}main{padding:23px 18px 40px}.crumb{margin-bottom:20px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:31px 26px 15px}.hero h1{font-size:42px}.hero-art{height:210px}.hero-art svg{max-height:240px;width:245px}.hero-foot{gap:12px;font-size:9px}.metrics{gap:0;padding:23px 0}.metric{padding:0 15px}.metric strong{font-size:23px}.metric p{font-size:10px}.grid2,.grid4,.evidence-grid{grid-template-columns:1fr}.section-top{align-items:start;flex-direction:column;gap:10px}.section-top h2{font-size:26px}.card{padding:22px}.lesson-card{display:grid;grid-template-columns:44px 1fr;column-gap:16px}.lesson-card .icon{grid-row:span 4;margin:0}.lesson-card .card-arrow{margin-top:9px}h1{font-size:34px}h2{font-size:26px}.beforeafter>div{padding:20px}.beforeafter strong{font-size:31px}.beforeafter p{font-size:12px}.page-nav{flex-wrap:wrap}.page-nav .primary{max-width:62%}footer{flex-direction:column}.table-wrap table{min-width:580px}.topology{padding:12px}.topology svg{min-height:250px}.lesson-head .eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{header,aside,.page-nav,.complete-row,.quiz,.actions,.menu,footer{display:none!important}main{margin:0;padding:0}.hero{color:#102e34;background:#fff}.hero p,.eyebrow{color:#102e34}.hero-art{display:none}.hero{display:block}.card,.callout,details{break-inside:avoid}body{background:white}a{color:#102e34}}

.mapping-stack{display:grid;gap:16px;margin-bottom:24px}.mapping-stack h3{border-bottom:1px solid var(--line);padding-bottom:12px}.mapping-stack dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}.mapping-stack dl div{min-width:0}.mapping-stack dt{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.mapping-stack dd{font-size:14px;margin:4px 0 0}.footer-index{background:transparent;min-width:180px;margin:0;padding:0;border:0}.footer-index summary{font-size:12px}.footer-index nav{display:grid;gap:8px;margin-top:12px}.reference{padding-left:24px;text-indent:-24px}.reference a{font-size:12px}@media(max-width:560px){.mapping-stack dl{grid-template-columns:1fr}.metric strong{font-size:21px}.hero-foot{gap:8px}.hero-foot span{white-space:nowrap}.topology svg{font-size:14px}}

/* Phone layout: keep briefing cards full-width and label table values per row. */
@media (max-width:560px){
 .lesson-card{display:block;min-width:0}
 .lesson-card .icon{margin-bottom:16px}
 .lesson-card .small-label,.lesson-card h3,.lesson-card p{width:auto;min-width:0}
 .table-wrap{overflow:visible}
 .table-wrap table{min-width:0;width:100%;table-layout:fixed}
 .table-wrap thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:100%}
 .table-wrap tr{padding:14px 16px;border-bottom:2px solid var(--line)}
 .table-wrap tr:last-child{border-bottom:0}
 .table-wrap td{padding:9px 0;border:0;overflow-wrap:anywhere}
 .table-wrap td::before{content:attr(data-label);display:block;margin-bottom:4px;font-size:10px;line-height:1.4;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#34554e}
 .table-wrap td:first-child{padding-top:0}
 .table-wrap td:last-child{padding-bottom:0}
 .menu{color:var(--ink)}
}

/* Approved navigation clarity updates. */
.completion-check{margin-left:auto;color:var(--teal);font-weight:700;flex-shrink:0}.completion-check:empty{display:none}
@media(min-width:901px){header nav{gap:20px;flex-shrink:0}}

/* Approved footer: readable text and balanced responsive columns. */
footer{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);align-items:start;gap:28px;font-size:14px;line-height:1.65}
footer> *{min-width:0;overflow-wrap:anywhere}
footer strong{font-size:16px}
footer .footer-index{min-width:0}
footer .footer-index summary{font-size:14px;min-height:32px}
footer .footer-index nav{gap:10px}
@media(max-width:1100px){footer{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}footer .footer-index{grid-column:1/-1}}
@media(max-width:560px){footer{grid-template-columns:minmax(0,1fr);gap:22px}footer .footer-index{grid-column:auto}}

/* Approved Home topic heading and supporting tagline. */
.hero .project-heading{font-size:36px;line-height:1.16;letter-spacing:-.7px;overflow-wrap:break-word}
.hero .hero-tagline{font-size:19px;color:#a8d7c4;font-family:Georgia,serif}
.hero-copy{padding-right:18px}
@media(min-width:1600px){.hero .project-heading{font-size:42px}}
@media(max-width:560px){.hero .project-heading{font-size:30px}.hero .hero-tagline{font-size:18px}.hero-copy{padding-right:26px}}

/* Stella identity: shield monogram, healthcare cue and management tagline. */
.brand{gap:11px;min-width:260px}.brand-mark{width:44px;height:48px;flex-shrink:0}.brand-wordmark{display:block}.brand-stella{display:block;color:var(--teal);font-family:Georgia,serif;font-size:27px;line-height:1}.brand .brand-bottom{font-size:14px;line-height:1.5}.brand-tagline{display:block;font-size:10px;font-weight:400;letter-spacing:.3px;color:var(--muted);line-height:1.4}.footer-mark{display:block;margin-bottom:12px}
@media(max-width:1200px){header{gap:16px}.brand{min-width:245px}header nav{gap:15px}}
@media(max-width:900px){.brand{min-width:0}.brand-stella{font-size:25px}.brand .brand-bottom{font-size:13px}.brand-tagline{font-size:9px}.brand-mark{width:38px;height:44px}}
@media(max-width:380px){header{padding:0 12px}.brand{gap:8px}.brand .brand-bottom{font-size:11px}.brand-tagline{font-size:8px}.menu{padding:8px}}

/* Page 2 layout; typography is shared across every route below. */
.risk-page .grid2,.risk-page .grid3{align-items:start}
.risk-page .governance-takeaway{margin-top:22px}

/* Shared typography scale. One role, one size on every page. */
:root{--text-body:1rem;--text-small:.875rem;--text-label:.75rem;--text-h1:2.5rem;--text-h2:1.875rem;--text-h3:1.125rem}
body{font-size:var(--text-body);line-height:1.65}
h1,.hero .project-heading{font-size:var(--text-h1);line-height:1.2;letter-spacing:-.7px}
h2,.section-top h2{font-size:var(--text-h2);line-height:1.3}
h3,.lesson-card h3{font-size:var(--text-h3);line-height:1.4}
.card p,.callout p,.beforeafter p,.section-top p,.pathway div,.quiz label,.checklist label,.scenario-answers button,.mapping-stack dd,details>div,.reference{font-size:var(--text-body);line-height:1.65}
.hero p{font-size:var(--text-body);line-height:1.65}
.intro,.hero .hero-tagline{font-size:var(--text-h3);line-height:1.65}
header nav,#lessons a,.menu,.primary,.secondary,.outline,.page-nav a,.complete-row,.complete-row button,.text-button,.card-arrow,.section-top a,.feedback{font-size:var(--text-small);line-height:1.5}
.crumb,.source-line,.metric p,.side-progress,.side-progress p,.side-note,.evidence figcaption,.topology figcaption,.reference a,.reference span,#lightbox p,footer,footer .footer-index summary{font-size:var(--text-small);line-height:1.65}
footer strong,.callout strong,.quiz legend,summary{font-size:var(--text-body);line-height:1.5}
.small-label,.label,.eyebrow,.side-label,#lessons .group,.num,.hero-foot,.scenario-step,.mapping-stack dt,th,.table-wrap td::before,.evidence figcaption small,.lesson-head .eyebrow{font-size:var(--text-label);line-height:1.5}
table{font-size:var(--text-body);line-height:1.6}
code,pre{font-size:var(--text-small);line-height:1.6}
.metric strong{font-size:var(--text-h2);line-height:1.2}
.beforeafter strong{font-size:var(--text-h1);line-height:1.2}
.pathway b{font-size:var(--text-small);line-height:1.5}
.hero-foot{flex-wrap:wrap;gap:10px}
.source-line,.reference a{overflow-wrap:anywhere}
.grid2>*,.grid3>*,.grid4>*{min-width:0;overflow-wrap:break-word}
.section-top a{white-space:normal}
@media(min-width:901px) and (max-width:1250px){.pathway{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.grid2{grid-template-columns:minmax(0,1fr)}}
@media(max-width:560px){
 :root{--text-h1:2rem;--text-h2:1.625rem}
 .metrics{grid-template-columns:1fr;gap:16px}
 .metric,.metric:first-child{padding:0 0 14px;border-right:0;border-bottom:1px solid var(--line)}
 .metric:last-child{padding-bottom:0;border-bottom:0}
 .beforeafter{grid-template-columns:1fr}
 .beforeafter>div+div{border-left:0;border-top:1px solid var(--line)}
 .page-nav .primary{max-width:100%}
}

/* Lab diagram uses a wide desktop view and a readable scrollable view on phones. */
.lab-topology{overflow-x:auto}
.lab-topology svg{max-height:none;max-width:1100px;margin:0 auto}
@media(max-width:700px){.lab-topology svg{min-width:720px;min-height:360px}.lab-topology figcaption{text-align:left;position:sticky;left:0}}

.diagram-hint{display:none}@media(max-width:700px){.diagram-hint{display:block}}

/* Clear evidence captions and reading rhythm across all control lessons. */
.evidence-grid{gap:28px;align-items:start;margin-top:24px}
.evidence figcaption{padding:24px;line-height:1.7;overflow-wrap:normal}
.evidence figcaption .evidence-title{display:block;font-size:16px;line-height:1.5;margin:0 0 14px}
.evidence figcaption .evidence-description{font-size:16px;line-height:1.75;margin:0 0 20px;color:var(--ink);max-width:65ch}
.evidence figcaption .evidence-file{display:block;border-top:1px solid var(--line);padding-top:14px;margin:0;font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.evidence-hint{display:block;font-size:14px;color:var(--teal);margin-top:10px}
#evidence-caption{line-height:1.75;padding:20px 4px}
#evidence-caption .evidence-title{display:block;font-size:18px;margin-bottom:12px}
#evidence-caption .evidence-description{margin:0 0 16px;font-size:16px}
#evidence-caption .evidence-file{display:block;font-size:14px;overflow-wrap:anywhere}
#evidence-caption .evidence-hint{display:none}
main .section{margin-top:48px}
main .section>h2{margin-bottom:22px}
main details>div{line-height:1.8;max-width:80ch}
main .topology{margin:24px 0}
main .topology figcaption{padding:18px 0 0;line-height:1.8;max-width:85ch;margin:auto}
@media(max-width:560px){.evidence-grid{gap:24px}.evidence figcaption{padding:20px}main .section{margin-top:36px}}

.recovery-evidence{grid-template-columns:minmax(0,1fr);max-width:960px}.recovery-evidence .evidence img{height:420px}@media(max-width:560px){.recovery-evidence .evidence img{height:300px}}

.recovery-evidence{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.recovery-evidence .evidence img{height:360px}@media(max-width:700px){.recovery-evidence{grid-template-columns:minmax(0,1fr)}}

.result-cards .card p{line-height:1.8;margin-bottom:18px}.result-cards .card a{display:inline-block;margin-top:6px}@media print{.checklist{break-inside:auto}tr{break-inside:avoid}.scenario-answers button{color:#102e34;background:white}.table-wrap{overflow:visible}}

.print-options{align-items:center;margin:28px 0}.print-options p{margin:0;max-width:65ch}
@media print{
 @page{margin:16mm 12mm}
 html,body,main{height:auto!important;min-height:0!important;overflow:visible!important}
 main{max-width:none!important;width:auto!important;margin:0!important;padding:0!important}
 .skip-link,.skip,body>a[href="#main"],header,aside,footer,.crumb,.page-nav,.complete-row,.actions,.print-options,.print-scenario-section{display:none!important}
 main .section{margin-top:20pt;break-inside:auto}
 h1,h2,h3,summary{break-after:avoid-page;page-break-after:avoid}
 p,li{orphans:3;widows:3}
 .card,.callout,.topology,.table-wrap,details,.checklist{overflow:visible!important;max-height:none!important;height:auto!important;break-inside:auto;page-break-inside:auto}
 .callout,.result-cards .card,.grid3 .card{break-inside:avoid-page;page-break-inside:avoid}
 .grid2,.grid3,.grid4,.result-cards{display:block!important}
 .grid2>.card,.grid2>article,.grid3>.card{margin-bottom:12pt}
 table{width:100%!important;table-layout:auto;min-width:0!important}
 thead{display:table-header-group}tr,.checklist label{break-inside:avoid-page;page-break-inside:avoid}
 th,td{padding:8pt!important;font-size:10pt!important;overflow-wrap:anywhere}
 details>div{display:block!important;max-width:none!important}
 .print-checklist-only main>*{display:none!important}
 .print-checklist-only main>.print-checklist-section{display:block!important;margin-top:0}
 .print-checklist-only .checklist{border:0;padding:0}
 input[type=checkbox]{appearance:auto!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

.print-site-footer{display:none}
@media print{
 body{padding-bottom:14mm}
 .print-site-footer{display:block!important;position:fixed;bottom:0;left:0;right:0;background:white;border-top:1pt solid #52665e;padding:6pt 0;text-align:center;font-size:9pt;color:#102e34}
 .print-site-footer a{color:#102e34;text-decoration:none}
 table{border-collapse:collapse!important;border:1.2pt solid #52665e!important}
 th,td{border:1pt solid #52665e!important}
 th{border-bottom:1.5pt solid #344d43!important;font-weight:700}
 thead{background:#e8eee9!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

/* Keep printed content in normal flow so the footer cannot cover it. */
@media print{
 @page{margin:16mm 12mm 20mm}
 body{padding-bottom:0!important}
 .print-site-footer{position:static!important;margin-top:12mm;padding:8pt 0 0!important;break-inside:avoid-page;page-break-inside:avoid;clear:both}
 th,td{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;padding:7pt!important}
 table{table-layout:auto!important}
 th:first-child,td:first-child{min-width:54pt}
 .print-checklist-section{break-before:page;page-break-before:always}
 .print-checklist-only .print-checklist-section{break-before:auto;page-break-before:auto}
 .checklist{break-inside:avoid-page!important;page-break-inside:avoid!important}
 .checklist label{padding:9pt 0!important;line-height:1.5!important}
 .checklist p{line-height:1.5!important}
 .result-cards .card,.callout{break-inside:avoid-page!important;page-break-inside:avoid!important}
}

/* Fit the checklist and closing notes without a nearly empty final sheet. */
@media print{
 .checklist{padding:12pt!important}
 .checklist label{padding:6pt 0!important;font-size:10.5pt!important;line-height:1.4!important}
 .checklist p{font-size:10.5pt!important;line-height:1.4!important;margin-bottom:10pt!important}
 .print-checklist-section>h2{margin-bottom:12pt!important}
 .print-checklist-section+.print-options+.section{display:none!important}
 main .section:last-of-type{margin-top:14pt!important;break-inside:avoid-page;page-break-inside:avoid}
 main .section:last-of-type h2{margin-bottom:10pt!important}
 main .section:last-of-type p{font-size:10.5pt!important;line-height:1.45!important;margin-bottom:9pt!important}
 main>.source-line{font-size:9pt!important;line-height:1.4!important;margin-top:8pt!important;break-before:avoid-page;page-break-before:avoid}
 .print-site-footer{margin-top:4mm!important;padding-top:5pt!important;break-before:avoid-page;page-break-before:avoid}
}

.evidence-name-example{overflow-wrap:anywhere;white-space:normal;}

/* Keep lesson controls in the same slots regardless of title length. */
@media screen and (max-width:700px){
 .page-nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:12px;margin-top:40px;padding-top:24px;}
 .page-nav>:first-child{grid-column:1;grid-row:1;justify-self:start;align-self:center;}
 .page-nav>:nth-child(2){grid-column:2;grid-row:1;justify-self:end;align-self:center;}
 .page-nav a{min-height:44px;display:inline-flex;align-items:center;}
 .page-nav>.primary{grid-column:1/-1;grid-row:2;justify-self:stretch;justify-content:center;width:100%;max-width:none;min-height:52px;text-align:center;white-space:normal;overflow-wrap:anywhere;padding:13px 18px;}
}
