*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:#f7f8f5;color:#172735;font:18px/1.65 Arial,sans-serif}a{color:#275e67;text-underline-offset:.2em}a:hover{color:#553f79}button,input,select,textarea{font:inherit}button,a,input,textarea{outline-offset:5px}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,5.5vw,80px);line-height:1.06;letter-spacing:-.045em;font-weight:700;max-width:1150px;margin-bottom:24px}h2{font-size:clamp(26px,3vw,38px);line-height:1.2;letter-spacing:-.025em}h3{font-size:24px;line-height:1.3}.wrap{width:min(1340px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:10px;z-index:99;background:white;padding:12px}.header{position:sticky;top:0;z-index:20;background:rgba(247,248,245,.97);border-bottom:1px solid #d6dfdc}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:#172735;text-decoration:none;font-weight:700;line-height:1.15;max-width:320px;display:flex;align-items:center;gap:14px}.brand-mark{display:grid;place-items:center;background:#203b4c;color:white;width:48px;height:48px;border-radius:14px;flex-shrink:0}.main-nav{display:flex;gap:24px;align-items:center}.main-nav a{font-size:18px;text-decoration:none}.menu-button{border:1px solid #bdcfca;border-radius:99px;background:white;padding:8px 18px}.all-nav{border-top:1px solid #d6dfdc;padding:24px 0;background:#edf2ee}.all-nav[hidden]{display:none}.nav-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 24px}.nav-grid a{text-decoration:none;padding:8px}.nav-grid a[aria-current=page]{background:#dce9e1;border-radius:6px;font-weight:bold}.intro{padding:74px 0 42px}.eyebrow{font-size:18px;font-weight:bold;letter-spacing:.06em;text-transform:uppercase;color:#4f6468;margin-bottom:22px}.lead{font-size:clamp(22px,2.5vw,29px);line-height:1.45;max-width:1000px;color:#425861}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-block;text-decoration:none;background:#244e57;color:white!important;border:1px solid #244e57;border-radius:6px;padding:12px 20px;font-weight:bold}.button.secondary{background:transparent;color:#244e57!important}.hero{margin:0 auto 60px;width:min(1480px,100%)}.hero img{width:100%;height:auto;object-fit:contain}.hero figcaption{font-size:18px;padding:12px max(24px,calc((100vw - 1340px)/2));color:#526568;background:#edf1ed;line-height:1.5}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:70px;padding:0 0 60px}.reading{max-width:850px}.reading section{margin-bottom:40px}.reading p{margin-bottom:0}.reading h2{font-size:29px}.aside{border-left:1px solid #cbd8d2;padding-left:25px;align-self:start;position:sticky;top:125px}.aside a{display:block;padding:7px 0;text-decoration:none;font-size:18px}.aside h2{font-size:22px}.source-chips{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.chip{background:#e8eeea;padding:7px 12px;border-radius:5px;font-size:18px;text-decoration:none}.metrics{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #cbd8d2;border-radius:10px;overflow:hidden;margin-bottom:50px}.metric{padding:26px;background:#edf2ee;border-right:1px solid #cbd8d2}.metric:last-child{border:0}.metric strong{display:block;font-size:42px;line-height:1.15;letter-spacing:-.03em}.metric span{display:block;margin-top:10px}.route-nav{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:34px 0;border-top:1px solid #cbd8d2}.route-nav a{text-decoration:none}.route-nav a:last-child{text-align:right}.route-nav strong{display:block;font-size:24px}.footer{background:#e8efea;padding:0 0 40px}.footer-base{display:flex;justify-content:space-between;gap:30px;padding-top:28px}.footer-base p{margin:0;max-width:720px}.footer-links{display:flex;flex-wrap:wrap;gap:18px}.top{position:fixed;right:20px;bottom:20px;z-index:25;border:1px solid #c4d4cd;background:#244e57;color:white;width:52px;height:52px;border-radius:50%;font-size:24px}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.card{background:white;border:1px solid #d0ddd5;border-radius:8px;padding:28px;overflow-wrap:anywhere}.card h2,.card h3{font-size:25px}.card p:last-child{margin-bottom:0}.card .tag{color:#566e6e;margin-bottom:12px}.card .metadata{font-size:18px;color:#516467}.card[hidden]{display:none}.filter{display:flex;gap:14px;flex-wrap:wrap;margin:20px 0 30px}.filter input{flex:1;min-width:240px;padding:12px;border:1px solid #aabeb4;border-radius:6px}.wide-section{padding-bottom:60px}.notice{background:#eaf0eb;border-left:4px solid #6e938b;padding:22px 26px;margin:30px 0}.toc-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:0;list-style:none}.toc-list a{display:block;background:white;border:1px solid #cbd8d2;padding:20px;text-decoration:none;border-radius:6px}.toc-list strong{display:block}.hash{font:18px/1.4 monospace;overflow-wrap:anywhere}.calc{padding:28px;background:#e8efea;border-radius:8px;margin:35px 0}.calc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.calc label{display:block}.calc input{display:block;width:100%;padding:10px;border:1px solid #aabeb4;margin-top:8px}.calc output{display:block;font-size:27px;font-weight:bold;margin-top:20px}.reader{max-width:1000px;margin:0 auto;padding:30px 0 60px}.reader pre{white-space:pre-wrap;font:18px/1.65 Arial,sans-serif}.reader table{border-collapse:collapse;width:100%}.reader td{border:1px solid #cbd8d2;padding:10px;vertical-align:top}.table-scroll{overflow-x:auto}.page-label{padding:18px 0 8px;border-top:2px solid #cbd8d2;margin-top:36px}.presentation-card{background:#203b4c;color:white;padding:45px;border-radius:10px;margin-bottom:28px}.presentation-card a{color:#d3ede3}.presentation-card h2{color:white}.presentation-card p{font-size:24px}.presentation-mode .presentation-card{min-height:calc(100vh - 180px);display:none}.presentation-mode .presentation-card.active{display:flex;flex-direction:column;justify-content:center}.presentation-mode .intro,.presentation-mode .footer{display:none}.presentation-controls{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:28px}.presentation-mode .presentation-controls{position:sticky;top:88px;background:#f7f8f5;padding:12px 0;z-index:10}.presentation-controls button{padding:10px 18px;background:white;border:1px solid #9cb1a5;border-radius:5px}.empty{padding:20px;border:1px solid #cbd8d2}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:850px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:80px;gap:12px}.brand{font-size:18px;max-width:230px}.main-nav>a{display:none}.nav-grid{grid-template-columns:1fr 1fr}.intro{padding:40px 0 28px}.hero{margin-bottom:35px}.content-layout{grid-template-columns:1fr;gap:30px}.aside{position:static;border-left:0;border-top:1px solid #cbd8d2;padding:22px 0;grid-row:1}.aside a{display:inline-block;margin-right:14px}.card-grid{grid-template-columns:1fr}.metrics{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid #cbd8d2}.metric strong{font-size:36px}.footer-base{display:block}.footer-links{margin-top:22px}.toc-list{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}.presentation-card{padding:26px}.presentation-card p{font-size:22px}.route-nav strong{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}@media print{.header,.aside,.top,.filter,.actions,.route-nav,.presentation-controls{display:none!important}body{font-size:11pt;background:white;color:black}.wrap{width:100%}.intro{padding:0}h1{font-size:30pt}.lead{font-size:15pt}.hero{max-width:100%;margin-bottom:20px}.hero img{max-height:65mm;width:auto;margin:auto}.hero figcaption{font-size:10pt}.content-layout{display:block}.reading{max-width:none}.reading section{break-inside:avoid;margin-bottom:18px}.reading h2{font-size:16pt}.card{break-inside:avoid}.card-grid{display:block}.footer{background:white}.footer-base{font-size:10pt}.presentation-card{display:block!important;break-after:page;min-height:0!important;background:white;color:black}.presentation-card h2{color:black}.card,.notice{border-color:#aaa}}
