/* generated by src/build_page.py */
:root{--ink:#001E24;--navy:#063648;--mint:#06D29C;--mint-deep:#04916C;--mint-text:#037A5B;--paper:#fff;--off:#F5F7F8;--body:#21424B;--muted:#5E767E;--line:#DCE5E7;--warn-bg:#FFF6E0;--warn-line:#F2D27A;--maxw:1080px;--radius:12px}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{font-family:"IBM Plex Sans",system-ui,-apple-system,Segoe UI,sans-serif;color:var(--body);background:var(--paper);line-height:1.55;font-size:16px}
a{color:var(--navy)}
a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--mint);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--mint);color:var(--ink);padding:8px 14px;z-index:100}
.skip:focus{left:8px;top:8px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,4vw,32px)}
.hero{background:var(--off);border-bottom:1px solid var(--line);padding:clamp(28px,5vw,52px) 0 22px}
.crumbs{font-size:.84rem;color:var(--muted);margin-bottom:6px;display:block;position:static;max-width:none;padding:0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"\203A";margin-right:6px;color:var(--muted)}
.crumbs [aria-current]{color:var(--muted)}
.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mint-text);font-weight:600}
h1{font-family:"Schibsted Grotesk",sans-serif;font-weight:800;color:var(--navy);font-size:clamp(1.8rem,4.2vw,2.7rem);line-height:1.08;letter-spacing:-.02em;margin:8px 0 12px;max-width:28ch}
h2{font-family:"Schibsted Grotesk",sans-serif;font-weight:800;color:var(--navy);font-size:1.3rem;line-height:1.2;margin:0 0 10px}
.intro{max-width:66ch}
.label{display:inline-block;margin-top:14px;background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--ink);border-radius:8px;padding:6px 12px;font-size:.92rem;font-weight:600}
.label a{font-weight:400}
.byline{font-size:.88rem;color:var(--muted);margin-top:10px}
.filters{display:flex;flex-wrap:wrap;gap:18px;padding:20px 0 6px;align-items:flex-start}
.filters fieldset{border:0;min-width:0}
.filters legend{font-size:.8rem;font-weight:600;color:var(--navy);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font:inherit;font-size:.86rem;border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:999px;padding:4px 12px;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.chip:hover{border-color:var(--navy)}
.count{font-size:.88rem;color:var(--muted);margin:6px 0 4px}
.feed{list-style:none;padding:6px 0 10px}
.item{border-bottom:1px solid var(--line);padding:18px 0}
.item h3{font-size:1.08rem;line-height:1.35;color:var(--ink);margin:4px 0 6px;font-weight:600}
.item h3 a{color:var(--ink);text-decoration:none}
.item h3 a:hover{text-decoration:underline}
.meta{font-size:.84rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}
.tag{font-family:"IBM Plex Mono",monospace;font-size:.74rem;border:1px solid var(--line);border-radius:6px;padding:1px 7px;color:var(--navy);background:var(--off)}
.tag.region{background:#E7FAF4;border-color:#A9EBD6}
.item .sum{max-width:76ch;margin:4px 0 6px}
.item .foot{font-size:.84rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 14px}
.item .foot a{color:var(--mint-text);font-weight:600}
.state{background:var(--off);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin:16px 0}
.info{background:var(--off);border-top:1px solid var(--line);padding:32px 0;margin-top:24px}
.info .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}
.info ul{padding-left:20px}
.info li{margin:4px 0}
.info p{max-width:70ch;margin-bottom:8px}
.disclaim{font-size:.92rem;color:var(--body);max-width:76ch;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;margin-top:8px}
.built{font-size:.88rem;color:var(--muted);margin-top:14px}
@media (max-width:600px){.item h3{font-size:1rem}.filters{gap:12px}}
/* SITE-CHROME (generated by _shared/site_chrome.py) */
/* live header and footer: styled by /site.min.css; these are the site's own :root values, scoped */
/* :where() has zero specificity, so every live .topbar/.site-footer rule still wins; this only replaces what the tool body would pass down */
:where(.topbar,.site-footer){--ink:#063648;--body:#2B4D5A;--mint:#06D29C;--paper:#FFFFFF;--c-navy:var(--ink);--c-text:var(--body);--c-green:var(--mint);--c-bg:var(--paper);--ink-2:var(--ink);--ocean:var(--ink);--mint-deep:var(--ink);--muted:var(--body);--paper-2:color-mix(in srgb,var(--ink) 4%,var(--paper));--line:color-mix(in srgb,var(--ink) 14%,var(--paper));--line-dark:color-mix(in srgb,var(--paper) 16%,transparent);--maxw:1180px;font-family:"IBM Plex Sans","IBM Plex Sans Fallback",sans-serif;color:var(--ink);line-height:normal;font-size:16px;-webkit-font-smoothing:antialiased}
/* undo the tool-wide a{color} and focus outline rules inside the live header/footer (the live site has neither) */
:where(.topbar,.site-footer) a{color:revert}
:where(.topbar,.site-footer) :is(a,button,summary,input):focus-visible{outline:revert;outline-offset:revert}
/* keep generic site.min.css rules off the tool content */
nav.crumbs,nav.prevnext{position:static;max-width:none;margin-left:0;margin-right:0;align-items:normal}
nav.crumbs{display:block;justify-content:normal;padding:0}
nav.prevnext:not(.sec){padding:0}
h1{text-shadow:none}
.hero{position:static;overflow:visible}
/* /SITE-CHROME */
