/* Shared stylesheet, retained at the established asset URL. */
:root { color-scheme: light; --ink:#192c38; --muted:#50616b; --accent:#17636a; --accent-dark:#10494f; --paper:#f6f5f1; --surface:#fff; --tint:#eaf2f0; --line:#ced6d5; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; font-size:100%; line-height:1.65; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); }
a { color:var(--accent); text-underline-offset:.2em; text-decoration-thickness:1px; overflow-wrap:anywhere; }
a:hover { color:var(--accent-dark); text-decoration-thickness:2px; }
a:focus-visible, [tabindex]:focus-visible { outline:3px solid var(--accent); outline-offset:4px; border-radius:2px; }
p,ul,ol,dl { margin:0 0 1.25rem; }
ul,ol { padding-left:1.4rem; }
li + li { margin-top:.5rem; }
h1,h2,h3 { line-height:1.2; letter-spacing:-.025em; margin:0 0 1rem; text-wrap:balance; }
h1 { font-size:clamp(2rem,4vw,3.1rem); font-weight:750; }
h2 { font-size:clamp(1.45rem,2.4vw,1.85rem); }
h3 { font-size:1.25rem; }
strong { font-weight:700; }
.container { width:min(100% - 3rem,72rem); margin-inline:auto; }
.skip-link { position:absolute; left:1rem; top:.5rem; z-index:10; padding:.75rem 1rem; background:white; transform:translateY(-180%); }
.skip-link:focus { transform:translateY(0); }
.masthead { background:var(--surface); border-top:4px solid var(--accent); border-bottom:1px solid var(--line); }
.masthead-inner { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.75rem 2rem; padding-block:1.15rem; }
.wordmark { display:inline-block; color:var(--ink); font-size:1.35rem; font-weight:800; letter-spacing:-.045em; text-decoration:none; line-height:1.35; padding-block:.35rem; }
.brand-note { display:block; color:var(--muted); font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; margin-top:.1rem; }
.primary-nav ul,.footer-nav ul { list-style:none; display:flex; flex-wrap:wrap; gap:.25rem 1.5rem; padding:0; margin:0; }
.primary-nav li,.footer-nav li { margin:0; }
.primary-nav a { display:block; padding-block:.7rem; text-decoration:none; color:var(--ink); font-weight:600; }
.primary-nav a:hover,.primary-nav a[aria-current] { color:var(--accent); text-decoration:underline; text-decoration-thickness:2px; }
main { padding-block:2.75rem 4rem; }
.eyebrow { color:var(--accent); font-size:.75rem; font-weight:750; letter-spacing:.11em; text-transform:uppercase; margin-bottom:.9rem; }
.lead { color:var(--muted); font-size:1.15rem; max-width:65ch; }
.intro-grid { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:3.5rem; align-items:start; }
.intro h1 { max-width:19ch; }
.intro .lead { max-width:54ch; }
.actions { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1.5rem; margin-top:1.5rem; }
.button { display:inline-block; padding:.75rem 1.1rem; border:1px solid var(--accent); background:var(--accent); color:white; border-radius:3px; font-weight:650; text-decoration:none; }
.button:hover { color:white; background:var(--accent-dark); }
.text-link { display:inline-block; padding-block:.65rem; font-weight:650; }
.check-panel { background:var(--surface); border:1px solid var(--line); border-top:3px solid var(--accent); padding:1.5rem; }
.check-panel h2 { font-size:1.3rem; }
.check-panel ol { margin-bottom:0; }
.check-panel li { padding-left:.25rem; }
.check-panel li::marker { color:var(--accent); font-weight:700; }
.funding-note { border-left:3px solid var(--accent); padding:1rem 1.25rem; background:var(--tint); font-size:.9rem; margin-block:2rem; }
.funding-note p:last-child { margin-bottom:0; }
.section { margin-top:2.75rem; }
.section-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:.5rem 1.5rem; margin-bottom:1.25rem; }
.section-heading h2,.section-heading p { margin:0; }
.cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.card { display:flex; flex-direction:column; background:var(--surface); border:1px solid var(--line); border-radius:3px; padding:1.75rem; }
.card h2,.card h3 { font-size:1.5rem; max-width:30ch; }
.card h2 a,.card h3 a { color:var(--ink); text-decoration:none; }
.card h2 a:hover,.card h3 a:hover { color:var(--accent); text-decoration:underline; }
.card p:not(.eyebrow) { color:var(--muted); }
.card .card-detail { border-top:1px solid var(--line); padding-top:1rem; margin-top:auto; margin-bottom:0; font-size:.85rem; }
.split-section { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:3rem; border-top:1px solid var(--line); padding-top:2rem; }
.split-section p { color:var(--muted); }
.status-panel { background:var(--surface); border:1px solid var(--line); padding:1.75rem; max-width:75ch; }
.status-panel p:last-child { margin-bottom:0; }
.breadcrumb { font-size:.85rem; color:var(--muted); margin-bottom:1.25rem; }
.article-header { max-width:75ch; margin-bottom:2rem; }
.article-header h1 { font-size:clamp(2rem,3.8vw,2.8rem); }
.article-meta { font-size:.85rem; color:var(--muted); }
.article-layout { display:grid; grid-template-columns:minmax(0,75ch) minmax(0,1fr); gap:3rem; align-items:start; }
.prose { min-width:0; max-width:75ch; background:var(--surface); border:1px solid var(--line); padding:2rem; grid-column:1; grid-row:1; }
.prose h2 { margin-top:2.25rem; font-size:1.5rem; }
.prose h2:first-child { margin-top:0; }
.prose h3 { margin-top:1.5rem; }
.prose > :last-child { margin-bottom:0; }
.prose section + section { margin-top:2.25rem; }
.prose section > :last-child { margin-bottom:0; }
.prose section > h2 { scroll-margin-top:1.5rem; }
.contents { padding:1.25rem 0; border-top:2px solid var(--accent); grid-column:2; grid-row:1; }
.contents h2 { font-size:1rem; }
.contents ol { font-size:.9rem; }
.contents a { display:inline-block; padding-block:.3rem; }
.callout { background:var(--tint); border-left:3px solid var(--accent); padding:1rem 1.25rem; margin-block:1.5rem; }
.callout p:last-child { margin-bottom:0; }
.sources { border-top:1px solid var(--line); padding-top:1.5rem; font-size:.9rem; }
.sources h2 { margin-top:0; }
.related { border-top:1px solid var(--line); margin-top:2rem; padding-top:1.5rem; }
.ad-label { display:inline-block; background:var(--ink); color:white; font-size:.8rem; font-weight:750; padding:.15rem .5rem; border-radius:2px; vertical-align:baseline; }
.site-footer { border-top:1px solid var(--line); background:var(--surface); padding-block:2rem; font-size:.85rem; }
.footer-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem 2rem; }
.footer-title { font-weight:750; color:var(--ink); }
.site-footer p { color:var(--muted); max-width:72ch; }
.footer-nav a { display:inline-block; padding-block:.65rem; }
.footer-bottom { border-top:1px solid var(--line); padding-top:1rem; margin-top:1rem; }
.footer-bottom p { margin:0; }
@media (max-width:850px) {
  .intro-grid { gap:2rem; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); }
  .article-layout { grid-template-columns:minmax(0,1fr); gap:1.25rem; }
  .contents { grid-column:1; grid-row:1; max-width:75ch; }
  .contents + .prose { grid-row:2; }
  .contents ol { columns:2; column-gap:2rem; }
  .contents li { break-inside:avoid; }
}
@media (max-width:620px) {
  .container { width:calc(100% - 2rem); }
  .masthead-inner { gap:.25rem; padding-block:.8rem .35rem; }
  .primary-nav { width:100%; }
  .primary-nav ul { gap:.25rem 1.25rem; }
  main { padding-block:1.75rem 2.5rem; }
  .intro-grid,.cards,.split-section { grid-template-columns:minmax(0,1fr); gap:1.25rem; }
  .intro h1 { max-width:22ch; }
  .check-panel,.card,.status-panel { padding:1.25rem; }
  .funding-note { padding:.9rem 1rem; margin-block:1.5rem; }
  .section { margin-top:2rem; }
  .prose { padding:1.25rem; }
  .contents ol { columns:1; }
  .lead { font-size:1.05rem; }
  .footer-top { display:block; }
}
@media print {
  .masthead,.site-footer,.actions,.contents,.skip-link { display:none; }
  body,.prose { background:white; color:black; }
  .container,.prose { width:100%; max-width:none; padding:0; border:0; }
  .article-layout { display:block; }
  a { color:black; text-decoration:underline; }
}
