@charset "UTF-8";
@font-face {
  font-family:Assistant;
  src:url("fonts/Assistant-Variable.266753a33324.ttf") format('truetype');
  font-weight:200 800;
  font-style:normal;
  font-display:swap;
}
:root {
  --ink:#17202d;
  --muted:#637082;
  --accent:#0161da;
  --brand-blue:#0161da;
  --brand-orange:#fc9500;
  --brand-navy:#09264c;
  --orange-ink:#9a5000;
  --line:#dce1e7;
  --paper:#f2f2f2;
  --soft:#edf4ff;
  --image-radius:9px;
}
* { box-sizing:border-box }
html { scroll-padding-top:100px }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.45 Assistant,Arial,sans-serif }
a { color:inherit; text-decoration:none; transition:color .18s ease }
a:hover { color:var(--accent) }
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible { outline:3px solid var(--accent); outline-offset:4px }
img { max-width:100%; display:block; height:auto }
h1,h2,h3,p { margin-top:0 }
h1,h2,h3 { line-height:1.1; letter-spacing:-.025em }
h1 { font-size:40px }
h2 { font-size:28px }
.container { width:min(1200px,calc(100% - 80px)); margin-inline:auto }
.skip { position:fixed; top:-100px; right:12px; z-index:30; background:white; padding:12px }
.skip:focus { top:8px }
/* A slim information strip above the single, persistent news navigation. */
.utility-bar { background:white }
.utility-inner,.utility-edition,.utility-links { display:flex; align-items:center }
.utility-inner { min-height:46px; justify-content:space-between; gap:20px; font-size:13px }
.utility-edition { gap:14px; font-weight:600; white-space:nowrap }
.utility-edition time { font-variant-numeric:tabular-nums }
.utility-edition>span { border-inline-start:1px solid #bfc7d1; padding-inline-start:14px }
.utility-links { gap:18px; color:var(--muted) }
.demo-label { font-size:12px }
.site-header { position:sticky; top:0; z-index:10; color:white; background:linear-gradient(105deg,var(--brand-navy),#084a9e 56%,var(--brand-blue)) }
.masthead { position:relative; display:flex; align-items:center; min-height:78px; gap:18px }
.brand { display:flex; align-items:center; direction:ltr; gap:6px; flex-shrink:0; color:white }
.brand-logo { width:138px; height:auto; object-fit:contain }
.brand-edition { font-size:24px; font-weight:600; line-height:1; padding-bottom:4px }
.brand:hover { color:white }
.site-menu { flex-shrink:0 }
.mobile-briefs { display:none }
.menu-toggle { cursor:pointer; list-style:none; width:36px; min-height:44px; display:grid; place-items:center }
.menu-toggle::-webkit-details-marker { display:none }
.menu-icon,.menu-icon::before,.menu-icon::after { display:block; width:30px; height:3px; background:white; border-radius:1px }
.menu-icon { position:relative }
.menu-icon::before,.menu-icon::after { content:""; position:absolute; right:0 }
.menu-icon::before { top:-9px }
.menu-icon::after { top:9px }
.menu-panel { position:absolute; top:100%; inset-inline-start:0; width:min(320px,100%); max-height:calc(100dvh - 140px); overflow:auto; padding:22px; background:white; color:var(--ink); border-radius:0 0 9px 9px; box-shadow:0 12px 25px #09264c20; border-top:3px solid var(--brand-orange) }
.menu-panel h2 { font-size:25px; margin-bottom:14px; color:var(--brand-blue) }
.menu-panel a { display:block; padding:11px 0; border-top:1px solid var(--line); font-weight:600 }
.menu-panel a[aria-current] { color:var(--brand-blue) }
.main-nav { min-width:0; flex:1; margin-inline-start:12px }
.nav-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; overflow-x:auto; scrollbar-width:none }
.nav-inner::-webkit-scrollbar { display:none }
.nav-inner a { flex-shrink:0; white-space:nowrap; font-size:16px; font-weight:700; padding:25px 0 23px; border-bottom:3px solid transparent }
.nav-inner a[aria-current] { border-color:var(--brand-orange) }
.nav-inner a:hover { color:white; border-color:white }
.site-header a:focus-visible,.site-header summary:focus-visible,.lead-story a:focus-visible { outline-color:white; outline-offset:-4px }
.menu-panel a:focus-visible { outline-color:var(--brand-blue); outline-offset:2px }
main.container { padding-top:16px }
/* Keep the editable page heading available to assistive technology without a second masthead. */
.edition-line,.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap }
.lead-story { display:grid; grid-template-columns:minmax(0,35fr) minmax(0,65fr); min-height:438px; background:var(--brand-navy); color:white; border-radius:var(--image-radius); overflow:hidden }
.lead-copy { padding:19px 19px 23px; display:flex; flex-direction:column; align-items:flex-start; background:linear-gradient(100deg,var(--brand-blue),var(--brand-navy)); min-width:0 }
.eyebrow { font-size:12px; color:var(--accent); font-weight:700; line-height:1.4 }
.lead-copy .eyebrow { color:#ffcf8a; border-inline-start:3px solid var(--brand-orange); padding-inline-start:8px }
.lead-copy h2 { font-size:44px; font-weight:800; line-height:1.04; margin:10px 0 17px; letter-spacing:-.035em; overflow-wrap:break-word }
.lead-copy h2 a:hover { color:white; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:5px }
.lead-copy p { font-size:18px; line-height:1.35; color:white; margin-bottom:14px }
.lead-image { display:block; min-width:0; min-height:0 }
.lead-image img { width:100%; height:100%; object-fit:cover; aspect-ratio:780/438 }
.story-meta { display:flex; gap:6px 10px; flex-wrap:wrap; color:var(--muted); font-size:12px; line-height:1.4; font-variant-numeric:tabular-nums }
.story-meta>span:first-child { font-weight:600 }
.lead-copy .story-meta { color:#d8e6fa; font-size:12px }
/* Match the reference's 790px news area, 16px gutters and 394px side rail. */
.news-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:16px; margin-top:16px; align-items:start }
.news-main { min-width:0 }
.supporting-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px }
.story-card { min-width:0; background:white; border-radius:var(--image-radius); display:flex; flex-direction:column }
.card-image { position:relative; display:block; overflow:hidden; border-radius:var(--image-radius) var(--image-radius) 0 0; background:#e1e6eb; flex-shrink:0 }
.card-image img { width:100%; aspect-ratio:1.62; object-fit:cover; transition:transform .25s ease }
.story-card:hover .card-image img { transform:scale(1.025) }
.image-label { position:absolute; inset-inline-start:0; bottom:0; padding:2px 7px 3px; color:white; background:var(--brand-blue); font-size:11px; font-weight:700; line-height:1.3; max-width:100% }
.card-copy { padding:8px 15px 16px; display:flex; flex-direction:column; flex:1 }
.card-copy .story-title { font-size:20px; margin:0 0 7px; font-weight:700; line-height:1.05; letter-spacing:-.02em; overflow-wrap:break-word }
.card-copy p { font-size:14px; line-height:1.3; color:#3c4652; margin:0 0 18px }
.card-copy .story-meta { margin-top:auto }
.briefing { background:white; border-radius:var(--image-radius); overflow:hidden }
.briefing-heading { color:var(--brand-blue); padding:15px 20px; display:flex; align-items:center; justify-content:space-between; gap:8px; border-bottom:2px solid var(--brand-blue) }
.briefing-heading h2 { font-size:26px; margin:0; display:flex; align-items:center; gap:9px }
.briefing-heading h2::before { content:""; width:7px; height:18px; background:var(--brand-orange); transform:skew(-12deg) }
.briefing-heading>span { font-size:12px; color:var(--muted) }
.brief-item { display:grid; grid-template-columns:48px minmax(0,1fr); column-gap:14px; margin:0 20px; padding:16px 0; border-bottom:1px solid var(--line) }
.brief-item:last-child { border:0 }
.brief-time { font-size:17px; font-weight:700; color:var(--brand-blue); line-height:1.2; font-variant-numeric:tabular-nums; padding-top:2px }
.brief-time small { display:block; font-size:11px; color:var(--muted); font-weight:400; margin-top:4px }
.brief-item h3 { font-size:20px; font-weight:700; line-height:1.16; margin:0 0 5px }
.brief-category { grid-column:2; font-size:12px; color:var(--muted) }
.section-heading { display:flex; align-items:center; justify-content:space-between; border-bottom:2px solid var(--brand-blue); padding:0 0 10px; margin:0 0 16px; gap:15px }
.section-heading h2 { font-size:29px; margin:0; color:var(--brand-blue); border-inline-start:6px solid var(--brand-orange); padding-inline-start:10px }
.section-heading>span,.section-all { font-size:14px; color:var(--muted) }
.section-all::after { content:" ‹"; font-size:20px; padding-inline-start:5px }
.section-all:hover { text-decoration:underline }
.latest-section,.section-module { margin-top:32px }
.latest-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px }
.latest-grid .card-copy { padding:10px 12px 15px }
.latest-grid .story-title { font-size:21px }
.latest-grid .card-copy p { font-size:14px }
.module-grid,.category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px }
.module-grid .card-copy { padding:12px 17px 17px }
.module-grid .card-copy .story-title,.category-grid .card-copy .story-title { font-size:26px }
.module-grid .card-copy p,.category-grid .card-copy p { font-size:17px }
.story-row { display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; padding:0 0 14px; margin-bottom:14px; border-bottom:1px solid var(--line) }
.row-image { border-radius:var(--image-radius); overflow:hidden }
.row-image img { width:110px; height:84px; object-fit:cover }
.story-row h3 { font-size:20px; line-height:1.15; margin:4px 0 7px }
.story-row .story-meta { font-size:11px; gap:5px }
.photo-placeholder { background:#e3e9f0; color:#52647a; aspect-ratio:1.62; display:grid; place-items:center; font-size:15px }
.lead-image .photo-placeholder { height:100%; aspect-ratio:auto }
.row-image .photo-placeholder { height:84px }
.category-heading { border-bottom:2px solid var(--brand-blue); padding:10px 0 20px; margin-bottom:24px }
.category-heading h1 { color:var(--brand-blue); border-inline-start:6px solid var(--brand-orange); padding-inline-start:12px; font-size:38px; margin-bottom:7px }
.category-heading p { margin-bottom:6px; color:var(--muted); font-size:17px }
.sample-note { font-size:13px; color:var(--orange-ink) }
.empty-state { padding:40px 0; grid-column:1/-1 }
.empty-state h2 { font-size:28px }
.empty-state p { color:var(--muted) }
.pagination { display:flex; justify-content:center; gap:24px; margin:35px 0 }
.pagination a { text-decoration:underline }
.breadcrumbs { font-size:14px; color:var(--muted); padding:4px 0 20px }
.article-alert { background:#fff4e4; border-inline-start:3px solid var(--brand-orange); color:#714719; padding:11px 15px; font-size:14px; margin-bottom:22px }
.article-layout { display:grid; grid-template-columns:minmax(0,3fr) minmax(240px,1fr); gap:30px }
.article-main { min-width:0 }
.article-header h1 { font-size:48px; line-height:1.08; margin:9px 0 17px; font-weight:800 }
.article-summary { font-size:23px; line-height:1.4; color:#3c4652 }
.article-byline { display:flex; flex-wrap:wrap; gap:10px 18px; border-block:1px solid var(--line); padding:13px 0; color:var(--muted); font-size:14px }
.small-pill { background:#e8edf3; padding:2px 6px }
.article-header>.story-meta { padding:11px 0; border-block:1px solid var(--line) }
.article-figure { margin:25px 0 }
.article-figure img { width:100%; aspect-ratio:1.6; object-fit:cover; border-radius:var(--image-radius) }
.article-figure figcaption { color:var(--muted); font-size:12px; padding-top:6px }
.article-figure figcaption a { text-decoration:underline }
.article-body { font-size:22px; line-height:1.7; max-width:760px }
.article-body p { margin-bottom:23px; overflow-wrap:anywhere }
.article-body h2 { font-size:29px; margin:30px 0 10px }
.article-inline-figure { width:100%; margin:32px 0 36px; min-width:0 }
.article-inline-figure img { display:block; width:100%; max-width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; border-radius:var(--image-radius); background:#edf2f7 }
.article-inline-figure--logo img { object-fit:contain; aspect-ratio:auto; height:clamp(160px,24vw,220px); padding:clamp(22px,4vw,36px); background:var(--brand-navy); border:1px solid var(--line) }
.article-inline-figure figcaption { display:flex; flex-direction:column; gap:3px; margin-top:9px; padding-inline:2px; font-size:13px; line-height:1.55; color:var(--muted) }
.article-image-caption { color:#3c4652; font-size:15px }
.article-image-credit,.article-image-disclosure { overflow-wrap:anywhere }
.aside-title { border-top:3px solid var(--brand-blue); padding-top:12px; font-size:26px; margin:0 0 20px }
.article-aside .story-card { margin-bottom:15px }
.article-aside .card-copy .story-title { font-size:23px }
.related-item { border-bottom:1px solid var(--line); padding:18px 0; font-size:20px; font-weight:700 }
.sources { margin-top:30px; padding:22px; background:white; border-top:2px solid var(--brand-blue); border-radius:0 0 var(--image-radius) var(--image-radius) }
.sources h2 { font-size:26px; margin-bottom:15px }
.sources p { font-size:16px; color:var(--muted) }
.sources>a,.source a { text-decoration:underline; font-size:16px; overflow-wrap:anywhere }
.source { border-bottom:1px solid var(--line); padding-top:12px }
.source p { margin:4px 0 16px }
.about-page { max-width:900px; padding:20px 0 }
.about-page h1 { font-size:42px; margin:12px 0 20px }
.principles { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; margin-top:30px }
.principles section { border-top:2px solid var(--brand-blue); padding-top:15px }
.principles section>span { color:var(--accent); font-size:18px }
.principles h2 { font-size:26px; margin:15px 0 }
.principles p { font-size:17px; color:var(--muted) }
footer { border-top:3px solid var(--brand-blue); margin-top:45px; background:white }
.footer-inner { display:flex; justify-content:space-between; gap:25px; padding:26px 0 }
.footer-inner strong { display:inline-block; color:var(--brand-blue); font-size:27px }
.footer-inner p { font-size:13px; color:var(--muted); margin:5px 0 }
.footer-links { display:flex; gap:25px; align-items:center; font-size:15px }
.fine-print { align-self:center }
@media(max-width:1100px) {
  .container { width:calc(100% - 40px) }
  .masthead { gap:12px }
  .brand-logo { width:118px }
  .brand-edition { font-size:21px }
  .main-nav { margin-inline-start:0 }
  .nav-inner { gap:18px }
  .nav-inner a { font-size:15px }
  .lead-story { min-height:380px; grid-template-columns:38fr 62fr }
  .lead-copy h2 { font-size:38px }
  .lead-copy p { font-size:17px }
  .news-grid { grid-template-columns:minmax(0,2.4fr) minmax(250px,1fr) }
  .supporting-grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .latest-grid { grid-template-columns:repeat(3,minmax(0,1fr)) }
  .brief-item { margin-inline:15px; column-gap:10px }
  .briefing-heading { padding-inline:15px; flex-wrap:wrap }
  .briefing-heading h2 { font-size:24px }
  .module-grid .card-copy .story-title { font-size:24px }
  .article-layout { gap:24px; grid-template-columns:minmax(0,1fr) 235px }
  .article-header h1 { font-size:42px }
  .footer-inner { flex-wrap:wrap }
}
@media(max-width:700px) {
  html { scroll-padding-top:116px }
  .container { width:calc(100% - 24px) }
  .utility-inner { min-height:31px; justify-content:center; font-size:11px }
  .utility-edition { display:none }
  .utility-links { gap:12px }
  .utility-links>a { display:none }
  .demo-label { font-size:11px }
  .masthead { min-height:0; flex-wrap:wrap; gap:0 12px; padding-top:4px }
  .brand { margin-inline-end:auto; gap:5px; min-height:59px }
  .brand-logo { width:112px }
  .brand-edition { font-size:23px }
  .menu-toggle { width:32px }
  .menu-icon,.menu-icon::before,.menu-icon::after { width:27px }
  .main-nav { flex-basis:100%; border-top:1px solid #ffffff30 }
  .nav-inner { gap:24px; justify-content:flex-start }
  .nav-inner a { font-size:15px; padding:10px 0 9px }
  .menu-panel { max-height:calc(100dvh - 145px) }
  main.container { padding-top:12px }
  .lead-story { display:flex; flex-direction:column; min-height:0 }
  .lead-image { order:-1 }
  .lead-image img { aspect-ratio:1.7; width:100%; height:auto; object-fit:cover }
  .lead-copy { padding:16px 17px 20px }
  .lead-copy h2 { font-size:34px; line-height:1.05; margin:8px 0 12px }
  .lead-copy p { font-size:17px; margin-bottom:14px }
  .lead-copy .story-meta { font-size:12px }
  .news-grid { display:flex; flex-direction:column; gap:24px; margin-top:16px }
  .news-main { width:100% }
  .supporting-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px }
  .card-copy { padding:9px 10px 13px }
  .card-copy .story-title { font-size:22px; line-height:1.08; margin-bottom:7px }
  .card-copy p { font-size:15px; line-height:1.3; margin-bottom:13px }
  .story-meta { font-size:11px; gap:3px 8px }
  .image-label { font-size:10px; padding:2px 5px }
  .briefing { width:100% }
  .briefing-heading { padding:14px 17px }
  .briefing-heading h2 { font-size:26px }
  .brief-item { margin-inline:17px; padding:15px 0; grid-template-columns:48px minmax(0,1fr); column-gap:13px }
  .brief-item h3 { font-size:22px }
  .section-heading { padding-bottom:10px; margin-bottom:14px }
  .section-heading h2 { font-size:27px }
  .section-all,.section-heading>span { font-size:12px }
  .latest-section,.section-module { margin-top:28px }
  .latest-grid,.module-grid,.category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px }
  .latest-grid .story-card:first-child,.module-grid .story-card:first-child { grid-column:1/-1 }
  .latest-grid .card-copy,.module-grid .card-copy { padding:10px 12px 14px }
  .latest-grid .story-title,.module-grid .card-copy .story-title,.category-grid .card-copy .story-title { font-size:22px }
  .latest-grid .card-copy p,.module-grid .card-copy p,.category-grid .card-copy p { font-size:15px }
  .latest-grid .story-card:first-child .story-title,.module-grid .story-card:first-child .story-title { font-size:28px }
  .latest-grid .story-card:first-child .card-image img,.module-grid .story-card:first-child .card-image img { aspect-ratio:1.8 }
  .category-heading { padding:8px 0 16px; margin-bottom:20px }
  .category-heading h1 { font-size:34px }
  .category-heading p { font-size:16px }
  .article-layout { display:block }
  .article-header h1 { font-size:37px; line-height:1.08 }
  .article-summary { font-size:22px }
  .article-alert { font-size:13px; padding:10px 13px }
  .article-body { font-size:21px; line-height:1.65 }
  .article-figure { margin:22px 0 }
  .article-aside { margin-top:35px }
  .article-aside .story-card { display:grid; grid-template-columns:120px minmax(0,1fr); gap:0 }
  .article-aside .card-image { border-radius:0 var(--image-radius) var(--image-radius) 0 }
  .article-aside .card-image img { height:100%; object-fit:cover }
  .article-aside .card-copy .story-title { font-size:22px }
  .article-aside .card-copy p { font-size:15px }
  .sources { padding:18px }
  .about-page h1 { font-size:36px }
  .principles { display:block }
  .principles section { margin-bottom:25px }
  .footer-inner { display:block; padding:23px 0 }
  .footer-links { margin:18px 0 }
}
@media(max-width:420px) {
  .supporting-grid,.category-grid { grid-template-columns:minmax(0,1fr) }
  .supporting-grid .card-image img,.category-grid .card-image img { aspect-ratio:1.8 }
  .supporting-grid .card-copy,.category-grid .card-copy { padding:12px 15px 15px }
  .supporting-grid .card-copy .story-title,.category-grid .card-copy .story-title { font-size:27px }
  .supporting-grid .card-copy p,.category-grid .card-copy p { font-size:17px }
  .latest-grid,.module-grid { grid-template-columns:minmax(0,1fr) }
  .latest-grid .story-title,.module-grid .card-copy .story-title { font-size:26px }
  .latest-grid .card-copy p,.module-grid .card-copy p { font-size:17px }
  .lead-copy h2 { font-size:32px }
}
.sources .source { overflow-wrap:anywhere }
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; transition:none!important }
}
