:root{--ink:#152e24;--muted:#56675e;--paper:#f7f4ec;--green:#173f32;--gold:#b38a43;--line:#d7d0bf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.75 Georgia,'Times New Roman',serif}a{color:#245b44;text-underline-offset:3px}a:hover{color:#805d22}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a87a32;outline-offset:4px}.skip{position:absolute;left:-10000px}.skip:focus{left:20px;top:10px;background:white;z-index:10;padding:10px}.site-header{max-width:1300px;padding:20px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.logo{height:48px;width:auto;mix-blend-mode:multiply}.wordmark{height:36px;width:auto;max-width:250px;object-fit:contain;mix-blend-mode:multiply}.site-header nav{display:flex;gap:24px;flex-wrap:wrap;font:13px/1.5 Arial,sans-serif}.site-header nav a{text-decoration:none}.draft-bar{padding:8px 30px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#ede7d8;color:#4d594f;font:11px/1.5 Arial,sans-serif;letter-spacing:.08em}.hero{background:var(--green);color:#fff8e9;padding:62px 32px}.hero>div{max-width:1140px;margin:auto}.eyebrow{font:11px/1.5 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#86672f;margin:0 0 15px}.hero .eyebrow{color:#d5bc81}.hero h1{font-weight:400;font-size:clamp(40px,5.5vw,76px);line-height:1.06;letter-spacing:-.025em;margin:15px 0 25px}.hero p:last-child{font-size:22px;max-width:760px;color:#e0e8de}.layout{max-width:1280px;display:grid;grid-template-columns:250px minmax(0,800px);gap:65px;margin:auto;padding:50px 32px 85px}.layout aside{font:13px/1.5 Arial,sans-serif}.layout aside nav{display:flex;flex-direction:column;border-top:1px solid var(--line)}.layout aside nav a{padding:13px 10px;border-bottom:1px solid var(--line);text-decoration:none}.layout aside nav a[aria-current]{background:#e9e9de;border-left:3px solid var(--green)}.layout aside small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.print-link{display:block;margin:20px 10px;font-size:12px}.page-title{font-weight:400;font-size:42px;line-height:1.14;margin:12px 0 28px;letter-spacing:-.02em}article{max-width:780px}h2{font-size:28px;line-height:1.25;font-weight:400;margin:42px 0 18px;scroll-margin-top:24px}h3{font-size:22px;line-height:1.3;font-weight:400;margin:28px 0 15px}p{margin:0 0 20px;overflow-wrap:anywhere}.standfirst{font-size:22px;line-height:1.55;color:#334a3e;margin-bottom:28px}.on-page{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:0 0 30px;font:13px/1.65 Arial,sans-serif}.on-page summary{cursor:pointer}.on-page ul{padding-left:20px;columns:2;column-gap:25px}.on-page li{break-inside:avoid;margin:9px 0}.pillars{padding-left:26px}.pillars li{margin:17px 0;padding-left:6px}blockquote{border-left:3px solid var(--gold);font-size:26px;line-height:1.4;margin:35px 0;padding:10px 0 10px 23px}.related,.source-note{font:14px/1.7 Arial,sans-serif;background:#eae8dc;padding:20px;margin:28px 0}.reference{font:11px Arial,sans-serif}.table-scroll{overflow-x:auto;margin:25px 0}table{border-collapse:collapse;width:100%;font:14px/1.6 Arial,sans-serif;min-width:460px}th,td{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}th{background:#eae5d7;font-weight:600}.diagram-line{font:12px/1.2 monospace;white-space:pre-wrap;margin:0;overflow-wrap:anywhere}.sequence{margin-top:45px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font:14px/1.6 Arial,sans-serif}footer{background:#102d24;color:#e0e7df;padding:32px;text-align:center;font:13px/1.8 Arial,sans-serif}footer span{font-family:Georgia,serif;font-size:17px}.complete{max-width:850px;padding:45px 30px;margin:auto}.complete h1{font-size:38px;line-height:1.2;font-weight:400}.chapter{border-top:1px solid var(--line);margin-top:65px;padding-top:40px}.button{display:inline-block;padding:12px 18px;background:var(--green);color:white;border:0;font:14px/1.5 Arial,sans-serif;text-decoration:none}.contents{margin-top:35px}.contents li{margin:10px 0}@media(max-width:800px){.site-header{padding:18px 22px;flex-wrap:wrap}.site-header nav{gap:18px}.layout{grid-template-columns:1fr;gap:32px;padding:30px 22px}.layout aside nav{display:grid;grid-template-columns:1fr 1fr}.layout aside small{display:none}.page-title{font-size:34px}.hero{padding:38px 22px}.on-page ul{columns:1}.wordmark{max-width:200px;height:30px}.logo{height:42px}.standfirst{font-size:20px}.hero p:last-child{font-size:19px}}@media(max-width:380px){.wordmark{max-width:170px}.layout aside nav{grid-template-columns:1fr}.site-header nav{font-size:12px}.page-title{font-size:30px}}@media print{body{background:white;color:black;font-size:11pt;line-height:1.5}.site-header,.draft-bar,aside,.hero,.sequence,footer,.on-page,.print-control,.skip{display:none}.layout{display:block;padding:0}.complete{padding:0;max-width:none}.chapter{break-before:page;border:0;margin:0;padding:0}h1,h2,h3{break-after:avoid}p{orphans:3;widows:3}a{color:inherit;text-decoration:none}table{font-size:9pt;min-width:0}.table-scroll{overflow:visible}.related,.source-note{background:none;border-top:1px solid #ccc}.page-title,.complete h1{font-size:26pt}@page{margin:20mm}}

/* Shared main-site footer */
.site-footer{background:#102d24;color:#dce5e1;padding:60px 28px 0;text-align:left;font:16px/1.65 Arial,sans-serif}
.site-footer .footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:40px;padding-bottom:45px}
.site-footer .footer-inner strong{font:500 24px Georgia,'Times New Roman',serif}
.site-footer .footer-inner p{color:#aebeb7;max-width:600px;margin:16px 0}
.site-footer .footer-links{display:flex;flex-direction:column;gap:8px}
.site-footer .footer-links a{color:#dce5e1;font-size:13px;text-decoration:none}
.site-footer .footer-links a:hover{text-decoration:underline}
.site-footer .copyright{max-width:1180px;margin:auto;padding:20px 0;border-top:1px solid rgba(255,255,255,.14);font-size:12px;color:#91a69d}
@media(max-width:900px){.site-footer .footer-inner{flex-direction:column}}
