:root{--text: #082e53;--bg: #ffffff;--accent: #0876bd;--accent-hover: #005a98;--muted: #36536b;--border: #bddcf0;--card-bg: #f1f9ff;--heading-font: Inter, -apple-system, system-ui, sans-serif;--body-font: "Inter", -apple-system, system-ui, sans-serif;--teal: #0876bd;--mustard: #ffd83d;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--body-font);color:var(--text);background:var(--bg);line-height:1.65;font-size:1.125rem}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}a:focus-visible{outline:3px solid #ef5a3c;outline-offset:3px;border-radius:6px}img{max-width:100%;height:auto;display:block}.container{max-width:780px;margin:0 auto;padding-left:1.25rem;padding-right:1.25rem}@media(min-width:640px){.container{padding-left:2rem;padding-right:2rem}}.skip-link{position:absolute;top:-100%;left:1rem;background:var(--accent);color:#fff;padding:.5rem 1rem;border-radius:0 0 4px 4px;font-size:.85rem;font-weight:600;z-index:100}.skip-link:focus{top:0;outline:none}header{background:#0876bd;padding:.75rem 0}header .container{display:flex;justify-content:space-between;align-items:center;gap:1rem}.site-name{font-family:var(--heading-font);font-size:1.4rem;font-weight:900;white-space:nowrap}.site-name a{color:#fff;text-decoration:none}.site-name a:hover{text-decoration:none;opacity:.85}.site-name a:focus-visible{outline-color:var(--mustard)}header nav{display:flex;gap:.5rem;flex-wrap:wrap}header nav a{color:#fff;font-size:1rem;font-weight:800;margin:0}header nav a:hover{color:#fff;text-decoration:none}header nav a:focus-visible{outline-color:var(--mustard)}.accent-bar{height:8px;background:#ffd83d}main{padding:3.5rem 0 6rem}footer{background:#082e53;padding:3rem 0 2rem;color:#e2f2fd;font-size:1rem}.footer-label{font-family:var(--body-font);color:#fff;font-size:1.25rem;margin-bottom:var(--space-sm);font-weight:850}.footer-guides{columns:3;column-gap:2rem;margin-bottom:var(--space-lg)}.footer-guides a{color:#e2f2fd;display:block;padding:.2rem 0;font-size:1rem;break-inside:avoid}.footer-guides a:hover{color:#fff;text-decoration:none}.footer-guides a:focus-visible{outline-color:var(--mustard)}.footer-bottom{border-top:1px solid #333;padding-top:var(--space-md)}.footer-links{display:flex;justify-content:center;gap:1.5rem;margin-bottom:.75rem}.footer-links a{color:#e2f2fd;display:inline-flex;align-items:center;min-height:48px;font-size:1rem}.footer-links a:hover{color:#fff;text-decoration:none}.footer-copy{text-align:center;color:#bddcf0}@media(max-width:640px){.footer-guides{columns:2}}@media(max-width:420px){.footer-guides{columns:1}}article h1{font-family:var(--heading-font);font-size:clamp(2.5rem,6vw,4.5rem);line-height:1;margin-bottom:var(--space-sm);font-weight:900;color:var(--text)}article h2{font-family:var(--heading-font);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:900;margin-top:3rem;margin-bottom:1rem;color:var(--text);padding-bottom:.5rem;border-bottom:4px solid var(--accent)}article h3{font-family:var(--heading-font);font-size:1.5rem;font-weight:850;margin-top:2.25rem;margin-bottom:.75rem}article p{margin-bottom:1.3rem;max-width:65ch;font-size:1.1rem}article ul,article ol{margin:.5rem 0 1.5rem 1.25rem;max-width:65ch}article li{margin-bottom:.5rem;padding-left:.25rem}article li::marker{color:var(--accent)}article strong{font-weight:800;color:var(--text)}article a:visited{color:var(--accent-hover)}.featured-image{width:100%;height:auto;border-radius:16px;border:3px solid var(--border);margin-bottom:2rem}.bookmark{display:grid;grid-template-columns:minmax(0,1fr) 190px;position:relative;isolation:isolate;background:#fff;border:3px solid var(--border);border-radius:16px;margin:1.25rem 0 1.75rem;box-shadow:0 4px 0 var(--border);transition:border-color .15s,box-shadow .15s,transform .15s}.bookmark:hover{border-color:var(--accent);box-shadow:0 7px 0 var(--accent);transform:translateY(-2px)}.bookmark:focus-within{outline:3px solid #ef5a3c;outline-offset:3px}.bookmark-content{padding:1.35rem;min-width:0}.bookmark-title{display:flex;align-items:baseline;gap:.6rem;color:var(--text);font-size:1.3rem;font-weight:850;line-height:1.4;text-decoration:none}.bookmark-title:after{content:"";position:absolute;inset:0;z-index:1;border-radius:8px}.bookmark-title:visited{color:var(--text)}.bookmark-title:focus-visible{outline:none}.bookmark-title:hover{color:var(--accent);text-decoration:none}article .bookmark-desc{margin:.6rem 0 .9rem;font-size:1.05rem;line-height:1.5;color:#243c51}.bookmark-desc a{position:relative;z-index:2;text-decoration:underline;text-underline-offset:3px}.bookmark-desc a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.bookmark-url{display:block;color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}.bookmark-preview{border-left:2px solid var(--border);background:#dff2ff;border-radius:0 12px 12px 0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px}.bookmark-preview img{width:100%;height:100%;max-height:280px;object-fit:contain}.bookmark-monogram{font-family:var(--heading-font);color:#7c705f;font-size:2.6rem;line-height:1}@media(max-width:480px){.bookmark{grid-template-columns:minmax(0,1fr) 100px}.bookmark-content{display:contents}.bookmark-title{grid-column:1;grid-row:1;align-self:center;padding:1rem;font-size:1.1rem;overflow-wrap:anywhere}article .bookmark-desc{grid-column:1 / -1;grid-row:2;margin:.8rem 1rem;font-size:1rem}.bookmark-url{grid-column:1 / -1;grid-row:3;margin:0 1rem 1rem;font-size:.9rem}.bookmark-preview{grid-column:2;grid-row:1;height:100px;min-height:100px;border-radius:0 12px 0 0;border-bottom:2px solid var(--border)}.bookmark-preview img{max-height:100px}.bookmark-monogram{font-size:2rem}}.breadcrumbs{margin-bottom:var(--space-md)}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.25rem;margin:0;padding:0;font-size:1rem;color:var(--muted)}.breadcrumbs li:not(:last-child):after{content:"/";margin-left:.4rem;color:var(--border)}.breadcrumbs li{min-height:44px;display:flex;align-items:center}.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--accent)}.breadcrumbs span{color:var(--text)}.toc{background:#dff2ff;border:3px solid var(--accent);border-radius:16px;padding:var(--space-md) var(--space-md) var(--space-md) var(--space-md);margin-bottom:2.5rem}.toc-label{font-family:var(--body-font);font-size:1.15rem;font-weight:850;color:var(--text);margin-bottom:.6rem}.toc ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.5rem}.toc li{margin:0;padding:0}.toc a{font-size:1rem;color:var(--muted);padding:.6rem 0;min-height:44px;display:inline-flex;align-items:center;text-decoration:none}.toc a:hover{color:var(--accent);text-decoration:underline}article h2{position:relative}article h2:hover .anchor-link,article h2:focus-within .anchor-link{opacity:1}article h1+p,article h1+.featured-image+p{font-size:1.2rem;line-height:1.65;margin-bottom:1.5rem}article>*:last-child{margin-bottom:0}@media(max-width:640px){article h1{font-size:clamp(2.6rem,12vw,4rem)}article h2{font-size:1.8rem;margin-top:2.25rem}main{padding:3.5rem 0 5rem}}.footer-directory summary{cursor:pointer;padding:.75rem 0}.footer-directory{margin-bottom:1rem}.container-wide{max-width:1220px}header .container,footer .container{max-width:1140px}header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.5rem .8rem;border:2px solid #fff;border-radius:10px}article :is(h2,h3){scroll-margin-top:1.5rem}article p a,article li a{text-decoration:underline;text-underline-offset:3px}.footer-copy{color:#d2e9f8}article table{display:block;overflow-x:auto;border-collapse:collapse;margin:1.5rem 0;font-size:1rem}article th,article td{text-align:left;padding:1rem;border:2px solid var(--border);min-width:150px}article th{background:var(--card-bg)}.related-guides{border-top:4px solid var(--accent);margin-top:3rem;padding-top:1.5rem}.related-guides ul{display:grid;gap:1rem;list-style:none;margin:1rem 0}.related-guides a{display:flex;align-items:center;min-height:64px;padding:1rem 1.25rem;background:#dff2ff;border:3px solid #0876bd;border-radius:14px;font-size:1.1rem;font-weight:800}@media(max-width:640px){header .container{flex-direction:column;align-items:flex-start;gap:.25rem}header nav{gap:1rem}main{padding-top:2rem}}
