:root{--navy:#243b60;--blue:#315f9f;--ink:#202632;--muted:#606978;--paper:#fbfaf7;--line:#dedbd2;--green:#e9f3ee}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.65}a{color:var(--blue)}.shell{width:min(1080px,calc(100% - 40px));margin:auto}.top{background:var(--navy);color:white}.top .shell{display:flex;align-items:center;justify-content:space-between;padding:19px 0}.brand{font-weight:800;font-size:20px;color:white;text-decoration:none}.top nav{display:flex;gap:20px;align-items:center}.top nav a{color:white;text-decoration:none;font-size:14px}.button{display:inline-block;border-radius:8px;padding:11px 17px;background:white;color:var(--navy)!important;font-weight:800}.hero{padding:74px 0 48px}.eyebrow{color:#9b514b;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800}.hero h1{font-size:clamp(38px,7vw,68px);line-height:1.04;letter-spacing:-.045em;margin:12px 0 20px;max-width:850px}.lede{font-size:20px;color:var(--muted);max-width:760px}.meta{font-size:13px;color:var(--muted);margin-top:20px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0}.tile,.card,.issue{background:white;border:1px solid var(--line);border-radius:14px;padding:20px}.tile strong{display:block;font-size:19px;color:var(--navy)}.tile span{font-size:13px;color:var(--muted)}.content{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:30px;padding-bottom:70px}.article h2{font-size:27px;line-height:1.25;margin:40px 0 10px}.article p{font-size:17px}.aside{align-self:start;position:sticky;top:20px}.aside h2{font-size:18px}.source-list{padding-left:20px}.notice{background:var(--green);border-left:4px solid #4b8267;padding:16px 18px;margin:26px 0}.archive{padding:55px 0}.issue h2{margin-top:5px}.footer{background:#eef0f3;padding:34px 0;color:#636b76;font-size:12px}.footer strong{color:var(--ink)}@media(max-width:760px){.top .shell{align-items:flex-start;gap:20px}.top nav a:not(.button){display:none}.hero{padding-top:48px}.grid{grid-template-columns:1fr 1fr}.content{grid-template-columns:1fr}.aside{position:static}.shell{width:min(100% - 28px,1080px)}}
