:root{--navy:#0B1E2D;--orange:#EE5A05;--slate:#3B4A57;--gravel:#657280;--silt:#DDE1E4;--pour:#F4F3EF;--white:#fff;
  --body:"IBM Plex Sans",Arial,Helvetica,sans-serif;--display:"Montserrat","Arial Black",Arial,sans-serif;--r:4px;--gut:clamp(16px,5vw,40px);}
*{box-sizing:border-box}
html{scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--slate);font:16px/1.65 var(--body)}
a{color:var(--navy);text-decoration-color:rgba(238,90,5,.6);text-underline-offset:2px}
a:hover{text-decoration-color:var(--orange)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.skip-link{position:absolute;left:16px;top:-80px;z-index:100;background:var(--navy);color:var(--white);padding:10px 16px;border-radius:var(--r);font-weight:600}
.skip-link:focus{top:12px}
main:focus{outline:none}
.lg-wrap{max-width:1120px;margin:0 auto;padding:0 var(--gut)}
.lg-head{position:sticky;top:0;z-index:10;background:var(--white);border-bottom:1px solid var(--silt)}
.lg-head-in{display:flex;align-items:center;justify-content:space-between;height:64px}
.lg-head img{display:block;height:24px;width:auto}
.lg-logo{display:inline-flex;align-items:flex-start;text-decoration:none}
.tm-logo{font:500 9px/1 var(--body);color:var(--gravel);margin-left:2px}
.lg-back{font:700 11px var(--display);letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.crumb{margin-top:36px;font-size:13.5px;color:var(--gravel)}
.crumb a{color:var(--gravel)}
h1{font:800 clamp(28px,4vw,40px)/1.15 var(--display);color:var(--navy);letter-spacing:-.01em;margin:10px 0 8px}
.lg-meta{margin:0;color:var(--gravel);font-size:14.5px}
.review-banner{margin:22px 0 0;padding:14px 16px;border:1px solid #E8C547;background:#FFF8D6;border-radius:var(--r);font-size:14.5px}
.lg-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px;margin-top:36px;align-items:start}
.toc{position:sticky;top:88px;max-height:calc(100vh - 110px);overflow:auto;font-size:14px;border-left:2px solid var(--silt);padding-left:16px}
.toc summary{font:700 11px var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--gravel);cursor:pointer;margin-bottom:8px}
.toc ol{list-style:none;margin:0;padding:0}
.toc li{margin:6px 0;line-height:1.35}
.toc li.part{margin-top:14px;font-weight:600}
.toc a{text-decoration:none;color:var(--slate)}
.toc a:hover{color:var(--navy);text-decoration:underline}
.lg-body{max-width:72ch}
.lg-body h2.part{font:800 20px/1.3 var(--display);color:var(--navy);margin:48px 0 8px;padding-top:24px;border-top:2px solid var(--navy)}
.lg-body h2.part:first-child{margin-top:0}
.lg-body h3{font:700 17px/1.35 var(--display);color:var(--navy);margin:36px 0 10px}
.lg-body h3:first-child{margin-top:0}
.lg-body p{margin:0 0 14px}
.lg-body p.caps{font-size:14.5px;letter-spacing:.01em}
.lg-body ul{margin:0 0 16px;padding-left:22px}
.lg-body li{margin:6px 0}
.lg-body strong{color:var(--navy);font-weight:600}
.table-wrap{overflow-x:auto;margin:6px 0 18px;border:1px solid var(--silt);border-radius:var(--r)}
table{border-collapse:collapse;width:100%;font-size:14.5px;min-width:520px}
th,td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--silt)}
th{background:var(--pour);color:var(--navy);font-weight:600}
tr:last-child td{border-bottom:0}
mark.todo{background:#FFE58A;color:var(--navy);padding:0 2px;border-radius:2px}
.draft-note{margin:4px 0 18px;padding:12px 14px;border-left:4px solid #C8352B;background:#FCEDEC;color:#5A1A15;font-size:14.5px;border-radius:0 var(--r) var(--r) 0}
.draft-note strong{color:#8E221A}
.lg-related{margin:56px 0 0;padding-top:20px;border-top:1px solid var(--silt);font-size:14.5px}
.lg-related span{color:var(--gravel);margin-right:6px}
.hub{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:1px;background:var(--silt);border:1px solid var(--silt);border-radius:var(--r);overflow:hidden;max-width:820px}
.hub li{background:var(--white);padding:18px 20px}
.hub a{font:700 17px var(--display);text-decoration:none}
.hub a:hover{text-decoration:underline}
.hub p{margin:4px 0 0;font-size:14.5px}
.hub .when{color:var(--gravel);font-size:13.5px}
.lg-foot{margin-top:72px;background:var(--navy);color:#BCC8D2;font-size:13.5px}
.lg-foot .lg-wrap{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between;align-items:center;padding-top:22px;padding-bottom:22px}
.lg-foot p{margin:0;max-width:70ch}
.lg-foot nav{display:flex;gap:20px}
.lg-foot a{color:var(--white);text-decoration:none}
.lg-foot a:hover{text-decoration:underline}
@media (max-width:880px){
  .lg-grid{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:24px}
  .toc{position:static;max-height:none;border-left:0;padding:12px 14px;background:var(--pour);border-radius:var(--r)}
}
@media print{
  .lg-head,.skip-link,.toc,.lg-related,.lg-foot,.crumb{display:none}
  .lg-grid{display:block}
  body{font-size:11pt;color:#000}
  a{color:#000;text-decoration:none}
  .draft-note,.review-banner{border:1px solid #000;background:none}
}
