:root{--navy:#1f4875;--navy-dark:#163556;--yellow:#ffe400;--ink:#1f1f1f;--muted:#5b6573;--line:#e3e7ec;--soft:#f5f7fa;--bg:#fff;--radius:10px;--wrap:1120px;--measure:720px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);margin:0;font-family:Montserrat,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--navy)}a:hover{color:var(--navy-dark)}:focus-visible{outline:3px solid var(--navy);outline-offset:2px}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 16px}.measure{max-width:var(--measure);margin:0 auto;padding:0 16px}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:72px;display:flex}.logo{line-height:0;display:block}.logo img{width:128px;height:auto}.site-header nav{flex-wrap:wrap;gap:20px;display:flex}.site-header nav a{color:var(--ink);padding:4px 0;font-size:15px;font-weight:600;text-decoration:none}.site-header nav a:hover{box-shadow:inset 0 -3px 0 var(--yellow)}h1,h2,h3{color:var(--navy);line-height:1.25}h1{margin:0 0 12px;font-size:clamp(1.9rem,4vw,2.6rem);font-weight:700}.mark{box-shadow:inset 0 -.35em 0 var(--yellow)}.hero{padding-top:56px;padding-bottom:40px}.hero p{color:var(--muted);max-width:640px;margin:0;font-size:1.15rem}.section{padding-top:24px;padding-bottom:48px}.section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px;display:flex}.section-head h2{margin:0;font-size:1.5rem}.section-head a{font-size:15px;font-weight:600}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--bg);flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.card:hover{color:var(--ink);transform:translateY(-2px);box-shadow:0 6px 20px #1f48751f}.card .thumb{aspect-ratio:4/3;background:var(--soft);justify-content:center;align-items:center;display:flex;overflow:hidden}.card .thumb img{object-fit:cover;width:100%;height:100%}.card .body{padding:14px 16px 18px}.card h3{margin:0 0 6px;font-size:1.05rem}.card p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line)}.list a{padding:14px 0;font-weight:600;text-decoration:none;display:block}.list span{color:var(--muted);font-size:14px;font-weight:400;display:block}.post-head{padding-top:40px;padding-bottom:8px}.crumbs{margin-bottom:8px;font-size:14px;font-weight:600}.crumbs a{text-decoration:none}.meta{color:var(--muted);margin:0 0 20px;font-size:14px}.disclosure{background:var(--soft);border-left:4px solid var(--yellow);color:var(--muted);border-radius:4px;margin:0 0 24px;padding:10px 14px;font-size:14px}.hero-image{border-radius:var(--radius);width:100%;margin:0 0 8px}.prose{padding-bottom:48px}.prose h2{margin:2.2em 0 .5em;font-size:1.45rem}.prose h3{margin:1.8em 0 .4em;font-size:1.2rem}.prose h2 a,.prose h3 a{box-shadow:inset 0 -.3em 0 var(--yellow);text-decoration:none}.prose p,.prose ul,.prose ol{margin:0 0 1.1em}.prose a{text-underline-offset:3px}.prose img{border-radius:8px;width:auto;max-height:420px;margin:1.2em auto;display:block}.prose blockquote{border-left:4px solid var(--navy);color:var(--muted);margin:1.5em 0;padding:.2em 1.2em}.prose table{border-collapse:collapse;width:100%;font-size:15px}.prose th,.prose td{border:1px solid var(--line);text-align:left;padding:8px 10px}.related{border-top:1px solid var(--line);padding-top:32px;padding-bottom:56px}.related h2{margin:0 0 16px;font-size:1.3rem}.site-footer{background:var(--navy);color:#fff;padding:32px 0;font-size:14px}.site-footer a{color:#fff}.site-footer nav{flex-wrap:wrap;gap:8px 20px;margin:12px 0;display:flex}.footer-note{opacity:.9;max-width:640px;margin:0}.copyright{opacity:.7;margin:0}@media (width<=560px){body{font-size:16px}.header-row{min-height:0;padding:12px 16px}.site-header nav{gap:16px}.hero{padding-top:36px;padding-bottom:24px}}
