:root{--paper:#f3f1eb;--raised:#e9e6dd;--ink:#16201c;--soft:#4a5450;--accent:#13315c;--rule:rgba(22,32,28,.14);--serif:"Source Serif 4",Georgia,serif;--sans:"Inter",system-ui,-apple-system,sans-serif}
*{box-sizing:border-box}html{scroll-padding-top:16px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 var(--serif);font-optical-sizing:auto}
a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:8px;background:#fff;padding:8px 12px;z-index:9}
.wrap{max-width:1240px;margin:0 auto;padding:0 16px}
@media(min-width:768px){.wrap{padding:0 32px}}
/* edition strip */
.edition{background:var(--accent);color:#f3f1eb;font:13px/1.4 var(--sans)}
.edition .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding-top:8px;padding-bottom:8px}
.edition a{color:inherit}
/* header */
.masthead .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;padding-bottom:20px}
.brand{font:600 20px/1.15 var(--serif);color:var(--ink);text-decoration:none;letter-spacing:-.01em;max-width:24ch}
.brand span{display:block;font:400 13px/1.4 var(--sans);color:var(--soft);margin-top:4px;letter-spacing:0}
.cta{flex:none;font:500 15px/1 var(--sans);background:var(--ink);color:var(--paper);padding:12px 16px;text-decoration:none}
.cta:hover{background:var(--accent)}
.topnav{display:none;gap:24px;font:15px var(--sans)}.topnav a{color:var(--ink);text-decoration:none}
@media(min-width:960px){.topnav{display:flex}}
.crumbs ol{list-style:none;margin:0;padding:12px 0;display:flex;flex-wrap:wrap;gap:4px 8px;font:13px var(--sans);color:var(--soft);border-top:1px solid var(--rule)}
.crumbs li+li:before{content:"›";margin-right:8px}.crumbs a{color:inherit}
/* layout */
.grid{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;padding-top:24px;padding-bottom:96px}
@media(min-width:1024px){.grid{grid-template-columns:200px minmax(0,1fr);gap:56px}}
.rail{font:15px/1.5 var(--sans);order:2}
@media(min-width:1024px){.rail{order:0;position:sticky;top:16px;align-self:start}}
.rail h2{font:600 15px var(--sans);margin:24px 0 8px}.rail h2:first-child{margin-top:0}
.rail ul{list-style:none;margin:0;padding:0}.rail li{margin:6px 0}.rail a{color:var(--ink);text-decoration:none}.rail a:hover{color:var(--accent);text-decoration:underline}
article{min-width:0;max-width:780px}
.kicker{font:500 15px var(--sans);color:var(--accent);margin:0 0 12px}
h1{font:600 clamp(34px,6vw,60px)/1.04 var(--serif);letter-spacing:-.03em;margin:0 0 20px;text-wrap:balance}
.byline{font:14px/1.5 var(--sans);color:var(--soft);margin:0 0 32px}.byline time{color:var(--ink)}
h2{font:600 clamp(26px,3.4vw,34px)/1.15 var(--serif);letter-spacing:-.02em;margin:72px 0 16px;text-wrap:balance}
h3{font:600 20px/1.3 var(--serif);margin:32px 0 8px}
p,li{max-width:68ch}p{margin:0 0 18px}
.brief{background:var(--raised);padding:24px;margin:0 0 32px}
.brief h2{font:600 15px var(--sans);margin:0 0 8px;letter-spacing:0;color:var(--accent)}
.brief p{font-size:21px;line-height:1.5;margin:0}
@media(min-width:768px){.brief{padding:32px}.brief p{font-size:23px}}
.toc{font:15px/1.5 var(--sans);margin:0 0 16px}.toc h2{font:600 15px var(--sans);margin:0 0 8px;letter-spacing:0}
.toc ol{margin:0;padding-left:20px;columns:1}@media(min-width:768px){.toc ol{columns:2;column-gap:40px}}
.toc li{margin:4px 0;break-inside:avoid}
.draft{border-left:4px solid #8a5a00;padding-left:16px}
.draft-tag{display:inline-block;font:600 12px/1 var(--sans);background:#8a5a00;color:#fff;padding:4px 8px;margin-bottom:12px}
/* table */
.tablewrap{overflow-x:auto;margin:24px -16px;padding:0 16px;-webkit-overflow-scrolling:touch}
@media(min-width:768px){.tablewrap{margin:24px 0;padding:0}}
table{border-collapse:collapse;font:14px/1.45 var(--sans);min-width:1080px;width:100%;background:#fbfaf6}
caption{text-align:left;font:600 15px var(--sans);padding:0 0 12px;caption-side:top}
th,td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule)}
thead th{background:var(--ink);color:var(--paper);font-weight:500;white-space:nowrap}
tbody th{font-weight:600;white-space:nowrap}
tr.opus{background:#e4e8f0}
.np{color:var(--soft)}
.tablenote{font:14px/1.5 var(--sans);color:var(--soft)}
/* q&a */
details{border-top:1px solid var(--rule);padding:16px 0}details:last-of-type{border-bottom:1px solid var(--rule)}
summary{font:600 19px/1.35 var(--serif);cursor:pointer;list-style-position:outside;margin-left:20px}
details p{margin:12px 0 0}
.sources{font:15px/1.55 var(--sans);padding-left:20px}.sources li{margin:8px 0}
.next{display:grid;gap:16px;list-style:none;padding:0}@media(min-width:768px){.next{grid-template-columns:1fr 1fr}}
.next a{display:block;background:var(--raised);padding:20px;text-decoration:none;color:var(--ink);font:600 18px/1.3 var(--serif)}
.next a span{display:block;font:400 14px/1.5 var(--sans);color:var(--soft);margin-top:6px}.next a:hover{background:#dfdbd0}
.cite{background:var(--ink);color:var(--paper);padding:24px;margin-top:72px;font:15px/1.6 var(--sans)}
.cite h2{color:var(--paper);margin:0 0 12px;font-size:24px}.cite a{color:#c8d6ee}
.cite blockquote{margin:12px 0;padding:16px;background:rgba(255,255,255,.07);font:15px/1.6 var(--serif)}
footer{background:var(--raised);font:14px/1.6 var(--sans)}
footer .wrap{padding-top:40px;padding-bottom:40px;display:grid;gap:24px}
footer .name{font:600 clamp(26px,5vw,44px)/1.1 var(--serif);letter-spacing:-.02em;margin:0}
footer .disclosure{font-size:16px;color:var(--ink);margin:0}
footer nav{display:flex;flex-wrap:wrap;gap:8px 20px}footer nav a{color:var(--ink)}
main{min-width:0}
article,.brand,footer .name{overflow-wrap:anywhere}
