:root {
  --ink: #081426;
  --ink-2: #10223d;
  --night: #06101d;
  --night-2: #0b1930;
  --cyan: #21c5f3;
  --cyan-soft: #a6edff;
  --violet: #7458ff;
  --mint: #82f0cf;
  --coral: #ff776d;
  --paper: #f5f7fa;
  --white: #fff;
  --muted: #617085;
  --line: #dce3ec;
  --dark-line: rgba(255,255,255,.14);
  --shadow: 0 20px 55px rgba(8,20,38,.12);
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --serif: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; opacity: 1; animation: none; color: var(--ink); background: var(--paper); font: 16px/1.65 var(--sans); -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .2em; }
a:focus-visible, button:focus-visible, input:focus-visible, summary:focus-visible { outline: 3px solid var(--cyan); outline-offset: 3px; }
img { display: block; max-width: 100%; height: auto; }
button, input { font: inherit; }
h1[id], h2[id], h3[id], section[id] { scroll-margin-top: 1.5rem; }
.container { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.narrow { width: min(1180px, calc(100% - 40px)); }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.skip-link { position: fixed; z-index: 1000; left: 1rem; top: -5rem; padding: .7rem 1rem; background: var(--white); color: var(--ink); border-radius: 4px; }
.skip-link:focus { top: 1rem; }
.muted { color: var(--muted); }
.contextual-flow { margin: 1.5rem 0 2.25rem; padding-left: 1rem; border-left: 3px solid #86cfe3; }
.contextual-flow.container { margin-inline: auto; }
.contextual-flow p, .contextual-link { color: #3c556d; }
.contextual-flow p { margin: .45rem 0; }
.contextual-flow a, .contextual-link a { color: #145f80; font-weight: 750; }

.site-header { position: relative; z-index: 210; height: 74px; background: var(--night); color: #eef8ff; }
.nav-row { height: 74px; display: flex; align-items: center; gap: 2rem; }
.brand { display: inline-flex; align-items: center; gap: .65rem; flex: none; text-decoration: none; color: white; font-weight: 850; letter-spacing: -.045em; font-size: 1.16rem; }
.brand img { width: 40px; height: 40px; object-fit: contain; }
.brand > span > span { color: var(--cyan); }
.brand small { margin-left: .08em; color: #8e9aad; font-size: .78em; font-weight: 600; }
.desktop-nav { display: flex; align-items: center; gap: 1.15rem; margin-left: auto; }
.desktop-nav a { position: relative; display: inline-flex; align-items: center; gap: .35rem; color: #c7d4e4; text-decoration: none; font-size: .78rem; font-weight: 700; }
.desktop-nav a::after { position: absolute; content: ""; left: 0; right: 100%; bottom: -.55rem; height: 2px; background: var(--cyan); transition: right .2s; }
.desktop-nav a:hover { color: white; }
.desktop-nav a:hover::after { right: 0; }
.nav-search { display: flex; align-items: center; width: 175px; border: 1px solid #2b3a50; border-radius: 4px; background: #0c192b; }
.nav-search input { min-width: 0; width: 100%; padding: .55rem .7rem; border: 0; outline: 0; color: white; background: transparent; font-size: .75rem; }
.nav-search button { padding: .45rem .65rem; border: 0; color: var(--cyan); background: transparent; cursor: pointer; }
.menu-toggle { display: none; width: 42px; height: 42px; padding: 10px; border: 1px solid #314057; border-radius: 4px; background: #0b192c; cursor: pointer; }
.menu-toggle span { display: block; height: 2px; margin: 4px 0; background: white; transition: .2s; }
.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

.mobile-panel { display: none; position: fixed; z-index: 200; inset: 74px 0 0; overflow-y: auto; color: #e9f4ff; background: var(--night); border-top: 1px solid var(--dark-line); }
.mobile-panel.open { display: block; }
.mobile-inner { padding-block: 1.5rem 4rem; }
.mobile-head { display: flex; justify-content: space-between; align-items: end; gap: 1rem; padding-bottom: 1.1rem; border-bottom: 1px solid var(--dark-line); }
.mobile-head strong { display: block; font: 700 1.2rem var(--sans); }
.mobile-head p { margin: .25rem 0 0; color: #899bb2; font-size: .8rem; }
.mobile-head > span { color: #7e91a9; font: 650 .75rem var(--sans); }
.mobile-search { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .65rem; margin-top: 1rem; padding: .4rem .4rem .4rem .8rem; border: 1px solid #26364b; border-radius: 6px; background: #0d1a2d; }
.mobile-search input { min-width: 0; padding: .35rem 0; border: 0; outline: 0; color: white; background: transparent; font-size: .84rem; }
.mobile-search button { min-height: 34px; padding: .4rem .8rem; border: 0; border-radius: 4px; background: var(--cyan); color: var(--night); font-weight: 850; font-size: .75rem; }
.mobile-featured { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 1.15rem; border-block: 1px solid var(--dark-line); }
.mobile-featured > div { display: flex; align-items: center; gap: .7rem; padding: .9rem .25rem; }
.mobile-featured > div + div { border-left: 1px solid var(--dark-line); padding-left: 1rem; }
.mobile-featured p { margin: 0; }
.mobile-featured a { display: block; text-decoration: none; color: white; font-size: .78rem; font-weight: 750; }
.mobile-featured small { display: block; color: #8294ab; font-size: .75rem; }
.mobile-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1.6rem 2rem; margin-top: 1.6rem; }
.mobile-grid .menu-heading { display: flex; align-items: center; gap: .45rem; margin: 0 0 .5rem; padding-bottom: .4rem; color: #a9bad0; border-bottom: 1px solid #25364d; font: 700 .75rem var(--sans); }
.mobile-grid a { display: flex; min-height: 44px; align-items: center; padding: .35rem 0; color: #dbe8f5; text-decoration: none; font-size: .75rem; font-weight: 650; }
.mobile-grid a:hover { color: var(--cyan); }
.mobile-utility { display: flex; flex-wrap: wrap; gap: .5rem 1.2rem; margin-top: 1.7rem; padding: 1rem; border: 1px solid #25354b; border-radius: 6px; background: #081322; }
.mobile-utility a { color: #a8b7c9; text-decoration: none; font-size: .75rem; font-weight: 700; }

.hero { position: relative; overflow: hidden; min-height: 720px; color: white; background: #04101e; }
.hero-background { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero::before { position: absolute; z-index: 1; content: ""; inset: 0; background: linear-gradient(90deg, rgba(4,13,25,.97) 0%, rgba(4,13,25,.9) 38%, rgba(4,13,25,.48) 70%, rgba(4,13,25,.24) 100%), linear-gradient(0deg, rgba(4,13,25,.75), transparent 45%), linear-gradient(180deg, rgba(3,10,20,.12), rgba(3,10,20,.36)); pointer-events: none; }
.hero-grid { position: relative; z-index: 2; display: flex; min-height: 720px; align-items: center; }
.hero-copy { position: relative; z-index: 2; width: 100%; padding: 5.25rem 0 5.75rem; }
.hero h1 { width: 100%; max-width: none; margin: 0; font: 750 clamp(3rem, 5vw, 4.7rem)/1.03 var(--sans); letter-spacing: -.035em; }
.hero-lede { width: 100%; max-width: none; margin: 1.35rem 0 2rem; color: #d1dceb; font-size: 1.15rem; }
.lookup-form { position: relative; z-index: 2; }
.lookup-form label { display: block; margin-bottom: .55rem; color: #e5eef8; font-size: .84rem; font-weight: 700; }
.lookup-form > div { display: flex; width: 100%; max-width: none; padding: 5px; border-radius: 7px; background: white; box-shadow: 0 13px 35px rgba(0,0,0,.28); }
.lookup-form input { min-width: 0; flex: 1; padding: .9rem 1rem; border: 0; outline: none; color: var(--ink); font-size: .95rem; }
.lookup-form button, .button { padding: .85rem 1.15rem; border: 0; border-radius: 4px; background: var(--cyan); color: #06111f; text-decoration: none; font-size: .76rem; font-weight: 850; cursor: pointer; }
.lookup-form button:hover, .button:hover { background: var(--mint); }
.lookup-form > p { margin: .65rem 0 0; color: #a9b9cc; font: 600 .78rem var(--sans); }
.tool-api-link { margin: .75rem 0 0; color: #b9c9db; font-size: .78rem; }
.tool-api-link a { display: inline-flex; align-items: center; gap: .35rem; color: var(--cyan-soft); font-weight: 750; text-decoration: none; }
.tool-api-link a:hover { text-decoration: underline; }
.lookup-privacy { display: flex; align-items: flex-start; gap: .5rem; color: #b9c9db; font-size: .8rem; line-height: 1.55; }
.lookup-privacy .site-icon { margin-top: .15rem; color: var(--cyan); }
.lookup-privacy a { color: var(--cyan-soft); font-weight: 750; }
.hero-form { width: 100%; max-width: none; padding: 1.25rem; border: 1px solid rgba(255,255,255,.2); border-radius: 14px; background: rgba(5,15,28,.82); box-shadow: 0 24px 70px rgba(0,0,0,.36); }
.hero-form > div { max-width: none; padding: 7px; border-radius: 9px; }
.hero-form input { padding: 1.2rem 1.25rem; font-size: 1.12rem; }
.hero-form button { padding: 1.1rem 1.6rem; font-size: .9rem; }
.hero-form .hero-form-support { margin-top: .75rem; color: #bdcada; font-size: .8rem; line-height: 1.55; }
.hero-form-support a { color: #79dcf4; font-weight: 750; }
.trust-strip { color: white; background: #0e1c30; border-block: 1px solid #22344d; }
.trust-strip .container { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); align-items: stretch; min-height: 72px; }
.trust-strip .container > * { min-width: 0; display: flex; align-items: center; gap: .65rem; margin: 0; padding: .75rem 1.5rem; line-height: 1.4; }
.trust-strip .container > :first-child { padding-left: 0; }
.trust-strip .container > * + * { border-left: 1px solid #293c55; }
.trust-strip span { color: #9aacc1; font: 700 .76rem var(--sans); }
.trust-strip p { color: #c5d2e1; font-size: .78rem; font-weight: 650; }

.section { padding-block: 5rem; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 3rem; margin-bottom: 2.4rem; }
.section-heading h2 { width: 100%; max-width: none; margin: 0; font: 750 clamp(2rem,4vw,3.35rem)/1.08 var(--sans); letter-spacing: -.03em; }
.section-heading > p { width: 100%; max-width: none; margin: 0; color: var(--muted); font-size: .9rem; }
.section-heading.full-width-heading { display: block; }
.section-heading.full-width-heading h2 { width: 100%; max-width: none; }
.direct-answer { width: 100%; max-width: none; }
.direct-answer strong { font-weight: 850; }
.section-answer { width: 100%; max-width: none; }
.tool-group { margin-top: 3.2rem; }
.group-intro { padding-bottom: 1rem; border-bottom: 1px solid #cfd8e4; }
.group-intro h2, .group-intro h3 { margin: 0; font: 750 1.2rem var(--sans); }
.group-intro p { margin: .15rem 0 0; color: var(--muted); font-size: .78rem; }
.tool-catalogue-note { display: flex; justify-content: space-between; align-items: center; gap: 2rem; padding: 1rem 0 1.25rem; }
.tool-catalogue-note p { width: auto; max-width: none; margin: 0; color: var(--muted); font-size: .85rem; }
.tool-catalogue-note .text-link { flex: none; margin: 0; }
.card-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; margin-top: 1rem; }
.tool-card { position: relative; min-height: 240px; padding: 1.25rem; background: white; border: 1px solid var(--line); box-shadow: 0 5px 18px rgba(8,20,38,.04); transition: border-color .2s; }
.tool-card:hover { border-color: #9fcade; }
.tool-card h3, .tool-card h4 { margin: 0 0 .65rem; font: 750 1.06rem var(--sans); }
.tool-card h3 a, .tool-card h4 a { text-decoration: none; }
.tool-card p { margin: 0 0 2rem; color: var(--muted); font-size: .76rem; line-height: 1.55; }
.card-action { position: absolute; left: 1.25rem; right: 1.25rem; bottom: 1.1rem; display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding-top: .65rem; border-top: 1px solid #e7edf3; color: #315e72; text-decoration: none; font: 700 .75rem var(--sans); }
.feature-band { padding-block: 4.5rem; color: white; background: #071426; }
.feature-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 4rem; align-items: center; }
.feature-image { overflow: hidden; border: 1px solid #28415e; box-shadow: 0 25px 70px rgba(0,0,0,.4); }
.feature-image img { aspect-ratio: 16/9; object-fit: cover; }
.feature-grid h2 { margin: 0 0 1.1rem; font: 750 clamp(2.15rem,4vw,3.6rem)/1.05 var(--sans); letter-spacing: -.03em; }
.feature-grid p { color: #b6c6d9; font-size: .9rem; }
.text-link { display: inline-block; margin-top: 1rem; color: var(--cyan); text-decoration: none; font-size: .75rem; font-weight: 800; }
.text-link.dark { color: #2f6e8b; }
.article-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.article-card { position: relative; min-height: 245px; padding: 1.45rem; background: white; border-top: 3px solid #264d68; box-shadow: 0 5px 18px rgba(8,20,38,.05); }
.article-card > p { margin: 0 0 1.25rem; color: #5f7487; font: 650 .75rem var(--sans); }
.article-card h2, .article-card h3 { margin: 0 0 .75rem; font: 750 1.2rem/1.25 var(--sans); }
.article-card h2 a, .article-card h3 a { text-decoration: none; }
.article-card > div { color: var(--muted); font-size: .78rem; }
.precise-link { position: absolute; z-index: 2; left: 1.45rem; bottom: 1.25rem; max-width: calc(100% - 2.9rem); overflow: hidden; color: #2c6078; font: 700 .75rem var(--sans); text-overflow: ellipsis; white-space: nowrap; }

.page-hero { padding-block: 5.5rem 2.5rem; }
.page-hero h1 { width: 100%; max-width: none; margin: 0; font: 750 clamp(2.8rem,6vw,4.7rem)/1.02 var(--sans); letter-spacing: -.035em; }
.page-hero > p { width: 100%; max-width: none; color: var(--muted); font-size: 1.08rem; }
.tools-page-hero { padding-bottom: 2rem; }
.tools-page-hero .direct-answer { margin: 1.5rem 0 0; }
.tools-intro { margin: 1.75rem 0 0; }
.tools-directory { padding-top: 0; }
.tools-directory .tool-group:first-child { margin-top: 0; }
.breadcrumb-bar { width: 100%; background: var(--night); color: #d8e3ef; }
.breadcrumbs { margin: 0; padding: .78rem 0 .9rem; font: 700 .75rem var(--sans); }
.breadcrumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.breadcrumbs li { display: inline-flex; min-width: 0; align-items: center; gap: .5rem; color: #93a5ba; }
.breadcrumbs a { color: var(--cyan-soft); text-decoration: none; }
.breadcrumbs a:hover { color: #fff; text-decoration: underline; }
.breadcrumb-separator { display: inline-flex; align-items: center; color: #61758d; }
.breadcrumb-separator .site-icon { flex: none; stroke-width: 2.2; }
.tool-hero { padding-block: 5rem; color: white; background: radial-gradient(circle at 85% 20%, #17346a, #071426 58%); }
.tool-hero h1 { margin: 0; font: 750 clamp(2.8rem,6vw,4.5rem)/1.03 var(--sans); letter-spacing: -.035em; }
.tool-hero .narrow > p { width: 100%; max-width: none; margin-bottom: 2rem; color: #b7c8da; }
.result-panel { margin-block: 2rem; padding: clamp(1.25rem,3vw,2.5rem); overflow-wrap: anywhere; background: white; border: 1px solid var(--line); border-top: 4px solid #237c9b; box-shadow: none; }
.result-panel h2 { margin: 0; font: 750 clamp(2rem,4vw,3rem)/1.05 var(--sans); letter-spacing: -.025em; }
.result-head { display: flex; justify-content: space-between; align-items: center; gap: 2rem; margin-bottom: 1.5rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--line); }
.result-observed { display: flex; align-items: center; gap: .4rem; margin: .55rem 0 0; color: var(--muted); font-size: .82rem; }
.result-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .55rem; margin: 0; padding: 0; border: 0; }
.result-actions a, .result-actions button, .workspace-actions button { display: inline-flex; min-height: 40px; align-items: center; justify-content: center; gap: .4rem; padding: .55rem .8rem; border: 1px solid #b9ceda; border-radius: 4px; color: #174c65; background: #f3fbfd; font: 750 .78rem var(--sans); text-decoration: none; cursor: pointer; }
.result-actions a:hover, .result-actions button:hover, .workspace-actions button:hover { border-color: #3987a4; background: #e8f7fb; }
.result-actions button:disabled, .workspace-actions button:disabled { cursor: not-allowed; opacity: .5; }
.action-status { display: block; min-height: 1px; color: #466176; font-size: .78rem; text-align: right; }
.result-digest { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(280px,.9fr); gap: 1rem; }
.result-conclusion { display: flex; align-items: flex-start; gap: .85rem; margin-bottom: 1rem; padding: 1.1rem 1.25rem; color: #173f54; background: #eef9fc; border: 1px solid #b9dfea; border-left: 4px solid #2384a4; }
.result-conclusion.good { color: #174f43; background: #effaf6; border-color: #b9e3d6; border-left-color: #19866c; }
.result-conclusion.warn { color: #70451d; background: #fff8eb; border-color: #ead5ad; border-left-color: #c5842d; }
.result-conclusion h3 { margin: 0; font: 750 1rem/1.25 var(--sans); }
.result-conclusion p { margin: .25rem 0 0; color: inherit; font-size: .9rem; }
.result-section, .result-source, .result-disclosures { padding: 1.3rem; background: #fbfcfe; border: 1px solid var(--line); }
.result-overview { grid-column: 1/-1; }
.result-panel > .result-overview { margin-bottom: 1rem; }
.result-groups .result-section:only-child { grid-column: 1/-1; }
.result-section-heading { display: flex; align-items: center; gap: .8rem; margin-bottom: 1.1rem; }
.result-section-heading h3 { margin: 0; font: 750 1.18rem/1.25 var(--sans); }
.result-facts { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: .65rem; }
.result-fact { min-width: 0; padding: .9rem 1rem; background: white; border-left: 3px solid #b8dce8; }
.result-fact > span, .result-label, .source-row span { display: block; color: #60778b; font-size: .7rem; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.result-fact strong { display: block; margin-top: .2rem; overflow-wrap: anywhere; font-size: .93rem; }
.result-fact small { display: block; margin-top: .35rem; color: var(--muted); font-size: .73rem; line-height: 1.4; }
.result-fact-protocol { border-left-color: var(--cyan); }
.result-statuses { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.result-status-item { display: flex; align-items: center; gap: .8rem; margin-top: .55rem; }
.result-status-item p { margin: 0; color: #40566d; font-size: .82rem; }
.status-pill { display: inline-flex; flex: none; align-items: center; gap: .35rem; padding: .35rem .55rem; color: #244f66; background: #eaf7fb; border: 1px solid #b9deea; border-radius: 999px; font-size: .73rem; font-weight: 800; }
.result-timeline { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; margin: 0; padding: 0; list-style: none; }
.result-timeline li { position: relative; min-width: 0; padding: .85rem .85rem .85rem 1.15rem; background: white; border-left: 3px solid #70cce5; }
.result-timeline strong, .result-timeline time, .result-timeline small { display: block; }
.result-timeline strong { font-size: .8rem; }
.result-timeline time { margin-top: .25rem; color: #253d55; font-size: .8rem; }
.result-timeline small { margin-top: .2rem; color: #7b8b9d; font-size: .68rem; text-transform: capitalize; }
.result-explainer { margin: 1rem 0 0; color: #566b80; font-size: .78rem; }
.nameserver-list { display: grid; gap: .55rem; margin: 0; padding: 0; list-style: none; }
.nameserver-list li { display: flex; align-items: center; gap: .55rem; min-width: 0; padding: .7rem .8rem; color: #1d566e; background: white; border: 1px solid #e2eaf0; }
.nameserver-list code { overflow-wrap: anywhere; font: 750 .79rem var(--sans); }
.result-record-grid { display: grid; gap: .65rem; }
.result-record { display: grid; grid-template-columns: minmax(110px,.27fr) minmax(0,1fr); gap: 1rem; padding: .8rem .9rem; background: white; border: 1px solid #e2eaf0; }
.result-record > div strong, .result-record > div small { display: block; }
.result-record > div strong { color: #24546b; font-size: .8rem; }
.result-record > div small { margin-top: .2rem; color: var(--muted); font-size: .7rem; }
.result-record ul { display: grid; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.result-record li { min-width: 0; overflow-wrap: anywhere; color: #273e53; font-size: .78rem; }
.result-record code { font: 650 .76rem/1.45 var(--mono); white-space: normal; }
.result-note-list { display: grid; gap: .65rem; margin: 0; padding: 0; list-style: none; }
.result-note-list li { display: flex; align-items: flex-start; gap: .55rem; padding: .75rem .85rem; color: #344e63; background: white; border-left: 3px solid #b8dce8; font-size: .82rem; line-height: 1.5; }
.result-note-list .site-icon { flex: none; margin-top: .15rem; color: #2384a4; }
.result-next-link { display: inline-flex; align-items: center; gap: .35rem; margin-top: .9rem; color: #176786; font-size: .76rem; font-weight: 800; text-decoration: none; }
.result-next-link:hover { text-decoration: underline; }
.result-source, .result-disclosures { margin-top: 1rem; }
.source-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; background: white; border: 1px solid #e2eaf0; }
.source-row strong { display: block; margin-top: .15rem; font-size: .9rem; }
.source-row a { display: inline-flex; flex: none; align-items: center; gap: .35rem; color: #176786; font-size: .76rem; font-weight: 800; }
.result-details-list { border-top: 1px solid var(--line); }
.result-details-list details { border-bottom: 1px solid var(--line); }
.result-details-list summary, .raw-result summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem .2rem; color: #21485e; font-size: .82rem; font-weight: 800; cursor: pointer; list-style: none; }
.result-details-list summary::-webkit-details-marker, .raw-result summary::-webkit-details-marker { display: none; }
.result-details-list details[open] summary .site-icon, .raw-result[open] summary > .site-icon { transform: rotate(90deg); }
.result-details-list p { max-width: 95ch; margin: 0; padding: 0 .2rem 1rem; color: #556b80; font-size: .8rem; }
.raw-result { margin-top: 1rem; padding: .15rem 1rem; color: #c8d9ea; background: #0a1729; border: 1px solid #233a53; }
.raw-result summary { color: #d9e8f5; }
.raw-result summary span { display: inline-flex; align-items: center; gap: .5rem; }
.raw-result pre { max-height: 520px; margin: 0 0 1rem; padding: 1rem; overflow: auto; color: #c6d6e7; background: #06101d; border: 1px solid #1c3047; font: .75rem/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; white-space: pre-wrap; }
.result-list { margin: 0; }
.result-list > div { display: grid; grid-template-columns: minmax(125px,.3fr) minmax(0,1fr); padding: .65rem 0; border-bottom: 1px solid #edf1f5; }
.result-list dt { color: #567086; font: 750 .75rem var(--mono); }
.result-list dd { margin: 0; font-size: .78rem; }
.result-list .result-list > div { grid-template-columns: minmax(105px,.25fr) minmax(0,1fr); }
.plain-list { margin: 0; padding-left: 1.1rem; }
.plain-list li { margin: .2rem 0; }
.status { display: inline-block; padding: .12rem .4rem; border-radius: 2px; font-size: .75rem; font-weight: 800; }
.status.good { color: #0c5e49; background: #dcf9ef; }
.status.warn { color: #7b3e1d; background: #fff0df; }
.alert { margin-block: 1.5rem; padding: 1rem 1.2rem; border-left: 4px solid var(--coral); background: #fff0ef; color: #792f2b; }
.explain-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 3rem; }
.explain-grid h2 { margin: .25rem 0 1rem; font: 750 2.5rem var(--sans); }
.explain-grid aside, .callout { padding: 1.5rem; color: #c8d8e9; background: var(--ink); border-left: 3px solid var(--cyan); }
.explain-grid aside a, .callout a { color: var(--cyan); }

.magazine-hero { overflow: hidden; color: white; background: #071426; }
.magazine-grid { display: grid; grid-template-columns: .75fr 1.25fr; min-height: 570px; align-items: center; }
.magazine-grid > div { position: relative; z-index: 2; padding: 4rem 0; }
.magazine-grid h1 { margin: 0; font: 750 clamp(2.8rem,5.5vw,4.5rem)/1.03 var(--sans); letter-spacing: -.035em; }
.magazine-grid p { color: #b7c7da; }
.magazine-grid img { align-self: stretch; width: 100%; height: 100%; object-fit: cover; mask-image: linear-gradient(90deg, transparent, black 20%); }
.feature-articles { grid-template-columns: repeat(2,1fr); }
.feature-articles .article-card { min-height: 260px; }
.article-header { display: grid; grid-template-columns: minmax(0,.8fr) minmax(480px,1.2fr); grid-template-areas: "heading heading" "summary cover"; gap: 2.25rem 3.5rem; align-items: start; padding-block: 4.5rem 3.5rem; }
.article-heading { grid-area: heading; width: 100%; }
.article-header h1 { width: 100%; max-width: none; margin: 0; font: 750 clamp(2.9rem,4.8vw,4.5rem)/1.03 var(--sans); letter-spacing: -.04em; text-wrap: balance; }
.article-summary { grid-area: summary; align-self: stretch; display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 2rem; background: white; border-top: 4px solid #257d9c; }
.article-summary > .direct-answer { margin: 0 0 1.5rem; color: #40566d; font: 1.12rem/1.6 var(--sans); }
.article-cover { grid-area: cover; align-self: stretch; width: 100%; margin: 0; border: 1px solid #ccd8e4; background: #071426; }
.article-cover img { aspect-ratio: 16/9; width: 100%; object-fit: cover; }
.article-scope, .topic-line { margin: 1rem 0 0; color: #617388; font-size: .8rem; }
.byline { padding-top: 1rem; border-top: 1px solid var(--line); color: #617388; font: 650 .75rem var(--mono); }
.article-layout { display: grid; grid-template-columns: 250px minmax(0,800px); gap: 4rem; justify-content: center; align-items: start; padding-bottom: 6rem; }
.article-layout.article-layout-single { display: block; width: min(900px, calc(100% - 40px)); }
.article-rail { position: sticky; top: 2rem; align-self: start; padding-top: 1.5rem; border-top: 2px solid #214d69; }
.article-rail strong { display: block; margin-bottom: .7rem; font: 800 .75rem var(--mono); text-transform: uppercase; letter-spacing: .08em; }
.article-rail a { display: block; padding: .45rem 0; color: #536b80; text-decoration: none; font-size: .75rem; font-weight: 650; border-bottom: 1px solid var(--line); }
.article-rail p, .rail-note { margin-top: 1.2rem; color: #5f7487; font-size: .75rem; line-height: 1.55; }
.article-toc { padding: 1.25rem; border: 1px solid var(--line); border-top: 3px solid #257d9c; background: white; }
.article-toc strong { display: flex; align-items: center; gap: .45rem; margin-bottom: .75rem; color: #173f56; }
.article-toc ol { margin: 0; padding: 0; list-style: none; }
.article-toc li + li { border-top: 1px solid #e5ebf1; }
.article-toc a { display: block; padding: .65rem 0; border-bottom: 0; color: #3f5a70; font-size: .78rem; line-height: 1.35; }
.article-toc a:hover { color: #126987; text-decoration: underline; }
.article-toc .rail-note { margin: .9rem 0 0; padding-top: .9rem; border-top: 1px solid var(--line); }
.article-body { min-width: 0; color: #1b2b3d; font: 1.02rem/1.75 var(--sans); }
.article-body p { margin: 0 0 1.25rem; }
.article-body ul, .article-body ol { margin: 0 0 1.5rem; padding-left: 1.35rem; }
.article-body li + li { margin-top: .45rem; }
.standfirst { margin: 0 0 3rem; padding-bottom: 2rem; border-bottom: 1px solid var(--line); color: #334b61; font: 1.25rem/1.55 var(--sans); }
.article-body section { position: relative; padding-top: 2.25rem; margin: 0 0 3.25rem; border-top: 1px solid var(--line); }
.article-body h2 { width: 100%; max-width: none; margin: 0 0 1.1rem; font: 750 clamp(1.75rem,3.2vw,2.25rem)/1.14 var(--sans); letter-spacing: -.025em; text-wrap: balance; }
.article-body h3 { margin: 1.8rem 0 .7rem; font: 750 1.15rem/1.3 var(--sans); }
.article-body a { color: #145b7d; }
.sources, .related { padding: 1.5rem !important; background: white; border-top: 3px solid #235c78; font-family: var(--sans); }
.sources li, .related p { font-size: .84rem; }
.source-note { padding-top: 1rem; border-top: 1px solid var(--line); font: .75rem var(--mono); }
.imported-body h1 { font-size: 2rem; }

.prose { font: 1.02rem/1.75 var(--sans); }
.prose h2 { margin-top: 3rem; font: 750 2rem var(--sans); }
.prose code, pre, .api-grid code { font-family: var(--mono); }
pre { overflow-x: auto; padding: 1.2rem; color: #c4f2ff; background: var(--ink); font-size: .76rem; }
.semantic-summary { margin: 2.5rem 0; padding: 2rem 0; border-block: 1px solid var(--line); }
.semantic-summary .content-heading h2 { margin: 0; font: 750 clamp(1.55rem,3vw,2rem)/1.2 var(--sans); }
.section-intro { margin: -.35rem 0 1.4rem; color: var(--muted); }
.semantic-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.semantic-grid article { padding: 1.25rem; background: #fff; border-top: 3px solid #26718f; }
.semantic-grid h3 { margin: 0 0 .55rem; font: 750 1.08rem/1.3 var(--sans); }
.semantic-grid p { margin: 0; color: #425970; font-size: .86rem; line-height: 1.65; }
.semantic-grid a { color: #145f80; font-weight: 750; }
.directory-guide > .content-heading h2 { margin: 0; font: 750 clamp(1.55rem,3vw,2rem)/1.2 var(--sans); }
.directory-list article { padding: 1.5rem 0; border-top: 1px solid var(--line); }
.directory-list h2, .directory-list h3 { margin: 0 0 .4rem; font: 750 1.4rem var(--sans); }
.directory-list p { margin: 0; color: var(--muted); }
.faq-list details { background: white; border-top: 1px solid var(--line); }
.faq-list summary { padding: 1.2rem; cursor: pointer; font: 750 1.12rem var(--sans); }
.faq-list summary h2, .faq-list summary h3 { display: inline; margin: 0; font: inherit; }
.faq-list details p { margin: 0; padding: 0 1.2rem 1.4rem; color: var(--muted); }
.api-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1rem; font-family: var(--sans); }
.api-grid article { padding: 1.2rem; background: white; border: 1px solid var(--line); }
.api-grid h3 { margin: .6rem 0 .3rem; font: 750 1.1rem var(--sans); }
.api-grid p { margin: 0; color: var(--muted); font-size: .8rem; }
.search-results article { padding: 1.3rem 0; border-top: 1px solid var(--line); }
.search-results span { color: #607d91; font: 700 .75rem var(--mono); }
.search-results h2 { margin: .25rem 0; font: 750 1.5rem var(--sans); }
.search-results h2 a { text-decoration: none; }
.search-results p { margin: 0; color: var(--muted); }
.empty-state { grid-column: 1/-1; padding: 3rem; text-align: center; background: white; border: 1px solid var(--line); }
.hub-standard { margin-top: 4rem; padding-top: 3rem; border-top: 1px solid var(--line); }
.not-found { padding-block: 8rem; }
.not-found h1 { margin: 0; font: 750 clamp(3rem,8vw,5.5rem)/1 var(--sans); }
.not-found > p { width: 100%; max-width: none; color: var(--muted); }

/* Original, code-native interface icon system. */
.site-icon { display: inline-block; flex: none; vertical-align: -.18em; }
.title-with-icon, .content-heading { display: flex; align-items: flex-start; gap: .8rem; }
.title-with-icon > .site-icon { margin-top: .45rem; color: #2c7899; }
.tool-title-icon > .site-icon, .magazine-hero .title-with-icon > .site-icon { color: var(--cyan); }
.title-with-icon h1, .content-heading h2, .content-heading h3 { margin-top: 0; }
.content-heading { align-items: center; margin-bottom: 1.15rem; }
.content-heading > .site-icon { color: #26718f; }
.example-disclaimer { margin: -.25rem 0 1.25rem; color: #5b7084; font-size: .84rem; }
.icon-badge { display: inline-grid; width: 52px; height: 52px; flex: none; place-items: center; color: #135f7e; background: #e7f7fc; border: 1px solid #b9e3ef; border-radius: 8px; }
.icon-badge.small { width: 40px; height: 40px; margin-bottom: .85rem; }
.icon-badge.dark { margin-bottom: 1rem; color: var(--cyan); background: #10243b; border-color: #2b526c; }
.icon-link, .byline, .footer-grid strong { display: inline-flex; align-items: center; gap: .4rem; }
.lookup-form button, .button { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; }
.article-card > p { display: flex; align-items: center; gap: .35rem; }

/* Tool editorial layer: useful before and after a live query. */
.tool-content { width: min(1180px, calc(100% - 40px)); }
.answer-panel { display: grid; grid-template-columns: 1.25fr .75fr; gap: 2.5rem; padding: 2rem; background: white; border: 1px solid var(--line); border-top: 4px solid #1b7899; }
.answer-copy { display: flex; align-items: flex-start; gap: 1rem; }
.answer-copy h2 { margin: 0 0 .75rem; font: 750 clamp(1.75rem,3vw,2.4rem)/1.15 var(--sans); }
.answer-copy p { margin: 0; color: #425971; }
.answer-list, .check-list { margin: 0; padding: 0; list-style: none; }
.answer-list li, .check-list li { display: flex; align-items: flex-start; gap: .65rem; padding: .7rem 0; border-bottom: 1px solid var(--line); color: #30475d; }
.answer-list li:first-child { padding-top: 0; }
.answer-list .site-icon, .check-list .site-icon { margin-top: .2rem; color: #167b69; }
.guide-section { margin-top: 4.5rem; }
.guide-section > .content-heading h2, .worked-example .content-heading h2 { margin: 0; font: 750 clamp(1.65rem,3vw,2.25rem)/1.18 var(--sans); }
.workflow-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.workflow-grid article { padding: 1.35rem; background: white; border: 1px solid var(--line); }
.workflow-grid h3 { margin: 0 0 .55rem; font: 750 1.05rem/1.3 var(--sans); }
.workflow-grid p { margin: 0; color: var(--muted); font-size: .85rem; }
.table-wrap { overflow-x: auto; border: 1px solid var(--line); background: white; }
.evidence-table { width: 100%; border-collapse: collapse; font-size: .84rem; }
.evidence-table th, .evidence-table td { padding: 1rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--line); }
.evidence-table thead th { color: #eaf7ff; background: #10243a; font-size: .75rem; }
.evidence-table tbody th { width: 20%; color: #173f56; background: #f0f8fb; }
.evidence-table tbody td:last-child { color: #674441; }
.evidence-table tbody tr:last-child > * { border-bottom: 0; }
.home-source-matrix .content-heading { align-items: flex-start; }
.home-source-matrix .content-heading p { margin: .35rem 0 0; color: var(--muted); font-size: .86rem; }
.home-source-matrix .evidence-table tbody th { width: 25%; }
.sitemap-group + .sitemap-group { margin-top: 4.5rem; }
.sitemap-group .content-heading { align-items: flex-start; }
.sitemap-group .content-heading p { margin: .35rem 0 0; color: var(--muted); font-size: .86rem; }
.sitemap-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.sitemap-entry { padding: 1.25rem; border: 1px solid var(--line); background: white; }
.sitemap-entry h3 { margin: 0 0 .5rem; font: 750 1rem/1.3 var(--sans); }
.sitemap-entry h3 a { color: var(--ink); text-decoration: none; }
.sitemap-entry h3 a:hover { color: #176f8e; text-decoration: underline; }
.sitemap-entry p { margin: 0; color: var(--muted); font-size: .77rem; }
.worked-example { margin-top: 4.5rem; padding: 2rem; background: #eaf8fc; border-left: 4px solid #20a9d3; }
.worked-example > p { margin-bottom: 0; color: #314e61; }
.article-body .editorial-summary { display: block; margin-bottom: 3.25rem; padding: 2rem; border: 1px solid var(--line); border-top: 4px solid #1b7899; background: white; }
.article-body .editorial-summary h2 { margin-bottom: .8rem; }
.article-body .editorial-summary > p { margin: 0 0 1.25rem; color: #273c50; font-size: 1.12rem; line-height: 1.55; }
.article-body .editorial-summary > ul { margin: 0; padding-left: 1.25rem; }
.article-body .worked-example { margin-top: 0; padding: 2rem; border-top: 0; }
.article-body .worked-example > p + p { margin-top: 1rem; }
.article-follow-up { margin: 1rem 0 2.5rem; }
.article-method-note { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(220px,.65fr); gap: 2rem; margin-top: 3rem; padding: 1.5rem; color: #c7d6e5; background: #0b1a2e; border-left: 4px solid var(--cyan); }
.article-method-note strong { display: flex; align-items: center; gap: .45rem; color: white; font-size: .82rem; }
.article-method-note p { margin: .65rem 0 0; color: #aebfd1; font-size: .82rem; line-height: 1.6; }
.article-method-note nav { display: grid; align-content: start; }
.article-method-note a { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .4rem 0; color: var(--cyan-soft); border-bottom: 1px solid rgba(255,255,255,.12); font-size: .78rem; font-weight: 700; text-decoration: none; }
.article-method-note a:hover { color: white; text-decoration: underline; }
.guide-split { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 4.5rem; }
.guide-split .guide-section { margin-top: 0; padding: 1.5rem; background: white; border: 1px solid var(--line); }
.guide-section.compact h2, .method-note h2 { margin: 0; font: 750 1.45rem var(--sans); }
.warning-list .site-icon { color: #b4583d; }
.method-note { padding: 1.5rem; color: #d9e8f5; background: #0c1c30; border-left: 4px solid var(--cyan); }
.method-note .content-heading > .site-icon { color: var(--cyan); }
.method-note p { color: #b8cadd; }
.method-note a { display: inline-flex; align-items: center; gap: .4rem; color: var(--cyan); }
.source-panel { padding: 1.5rem; background: white; border: 1px solid var(--line); border-top: 3px solid #235c78; }
.source-panel > p { color: var(--muted); }
.source-panel li { margin: .55rem 0; }
.related-tools > .content-heading { width: 100%; }
.related-tools > .content-heading h2 { width: 100%; max-width: none; }
.related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: .75rem; }
.related-resource { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: .7rem; padding: 1rem; color: #173f56; background: white; border: 1px solid var(--line); }
.related-resource > .site-icon { margin-top: .15rem; color: #26718f; }
.related-resource a { display: inline-flex; align-items: center; gap: .35rem; color: #173f56; text-decoration: none; }
.related-tools strong, .related-tools small { display: block; }
.related-tools small { margin-top: .2rem; color: var(--muted); font-size: .75rem; line-height: 1.4; }
.alert { display: flex; align-items: flex-start; gap: .75rem; }

/* Long-form editorial components. */
.key-takeaways { margin-bottom: 3.5rem !important; padding: 1.5rem; background: #edf8fb; border-top: 3px solid #2587a7; }
.key-takeaways h2 { margin: 0; }
.procedure-list { margin: 1.2rem 0; padding: 0; list-style: none; counter-reset: none; }
.procedure-list li { display: grid; grid-template-columns: 34px 1fr; gap: .55rem; margin: .7rem 0; }
.procedure-list li > span { display: grid; width: 32px; height: 32px; place-items: center; color: #176a88; background: white; border: 1px solid #bcdce7; border-radius: 50%; }
.procedure-list p { margin: .1rem 0 0; }
.example-outcome { padding-top: 1rem; border-top: 1px solid #bddce7; }
.check-list.two-column { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.5rem; }
.edge-case-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: .75rem; }
.edge-case-grid article { padding: 1.1rem; background: white; border: 1px solid var(--line); }
.edge-case-grid h3 { margin: 0 0 .45rem; font: 750 1rem var(--sans); }
.edge-case-grid p { margin: 0; color: var(--muted); font-size: .8rem; line-height: 1.55; }
.article-body .faq-list details { margin: 0; }
.article-body .faq-list summary { font-size: 1rem; }
.hub-intro { display: grid; grid-template-columns: .9fr 1.1fr; gap: 3rem; align-items: start; margin-bottom: 2.5rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--line); }
.hub-intro h2 { margin: 0; font: 750 1.7rem/1.2 var(--sans); }
.hub-intro > p { margin: 0; color: var(--muted); }
.callout { display: flex; align-items: flex-start; gap: .75rem; }
.directory-list article, .search-results article { display: flex; align-items: flex-start; gap: .8rem; }
.directory-list article > .site-icon, .search-results article > .site-icon { margin-top: .35rem; color: #26718f; }
.faq-list summary { display: flex; align-items: center; gap: .55rem; }
.api-grid .icon-badge { margin-right: .5rem; vertical-align: middle; }

/* Local evidence workspaces: useful without implying proprietary data collection. */
.research-workspace { margin: 4rem 0; padding: 2rem; border: 1px solid #b9d8e4; border-top: 4px solid #1b7899; background: #edf8fb; }
.research-workspace > .section-answer { margin-bottom: 1.5rem; color: #36546a; }
.workspace-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1.5rem; align-items: start; }
.workspace-form, .workspace-output { padding: 1.35rem; border: 1px solid #cbdde5; background: white; }
.workspace-form label { display: grid; gap: .4rem; margin-bottom: 1rem; color: #294b60; font-size: .8rem; font-weight: 750; }
.workspace-form input, .workspace-form select, .workspace-form textarea { width: 100%; padding: .72rem .8rem; border: 1px solid #b9cbd5; border-radius: 4px; color: var(--ink); background: white; font: 400 .9rem/1.45 var(--sans); }
.workspace-form textarea { resize: vertical; }
.workspace-form input:focus, .workspace-form select:focus, .workspace-form textarea:focus { outline: 3px solid rgba(32,185,226,.25); border-color: #1c7899; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem; }
.workspace-form .check-field { display: flex; align-items: flex-start; gap: .6rem; font-weight: 650; }
.workspace-form .check-field input { width: 18px; height: 18px; flex: none; margin-top: .1rem; }
.workspace-output h3 { display: flex; justify-content: space-between; gap: 1rem; margin: 0 0 1rem; font: 750 1.15rem var(--sans); }
.workspace-output h3 span { color: #5a7184; font-size: .78rem; font-weight: 650; }
.workspace-output > p { color: var(--muted); }
.workspace-output pre { max-height: 420px; min-height: 230px; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.timeline-list { max-height: 430px; overflow-y: auto; margin: 0; padding: 0; list-style: none; }
.timeline-list li { padding: 1rem 0; border-top: 1px solid var(--line); }
.timeline-list li:first-child { border-top: 0; padding-top: 0; }
.timeline-list strong { display: block; color: #173f56; font-size: .86rem; }
.timeline-list p { margin: .35rem 0 0; color: #536a7e; font-size: .8rem; }
.workspace-actions { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: 1rem; }
.workspace-actions + .action-status { min-height: 1.4em; margin-bottom: 0; }

.site-footer { padding-top: 4rem; color: #b5c4d5; background: #050c16; border-top: 1px solid #203148; }
.footer-grid { display: grid; grid-template-columns: 2fr repeat(3,1fr); gap: 3rem; }
.footer-grid > div:first-child p { max-width: 340px; color: #778ba4; font-size: .75rem; }
.footer-grid strong { display: flex; align-items: center; gap: .4rem; margin-bottom: .8rem; color: #92a5bc; font: 700 .75rem var(--sans); }
.footer-grid > div:not(:first-child) a { display: block; padding: .25rem 0; color: #b5c4d5; text-decoration: none; font-size: .75rem; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; margin-top: 3rem; padding-block: 1.2rem; border-top: 1px solid #1c2a3d; color: #7189a5; font: .75rem/1.5 var(--mono); }

@media (max-width: 1050px) {
  .desktop-nav { gap: .9rem; }
  .nav-search { display: none; }
  .card-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 900px) {
  .site-header, .nav-row { height: 66px; }
  .desktop-nav { display: none; }
  .menu-toggle { display: block; margin-left: auto; }
  .mobile-panel { inset-block-start: 66px; }
  .hero, .hero-grid { min-height: 650px; }
  .hero-grid { display: block; }
  .hero-copy { width: 100%; padding: 4.5rem 0; }
  .hero h1 { font-size: clamp(3rem,9vw,4.4rem); }
  .trust-strip .container { grid-template-columns: repeat(2,1fr); padding-block: .75rem; }
  .trust-strip span { grid-column: 1/-1; }
  .trust-strip .container > * { min-height: 46px; padding: .5rem 1rem; border-left: 0; }
  .trust-strip .container > :first-child { padding-left: 0; }
  .trust-strip .container > p { border-top: 1px solid #293c55; }
  .trust-strip .container > p:nth-child(odd) { border-left: 1px solid #293c55; }
  .feature-grid { grid-template-columns: 1fr; }
  .article-header { grid-template-columns: 1fr; grid-template-areas: "heading" "summary" "cover"; gap: 1.75rem; }
  .feature-grid { gap: 2rem; }
  .article-layout { display: block; }
  .article-rail { position: static; margin-bottom: 2.5rem; }
  .article-toc ol { columns: 2; column-gap: 2rem; }
  .article-toc li { break-inside: avoid; }
  .magazine-grid { grid-template-columns: 1fr; }
  .magazine-grid img { max-height: 400px; mask-image: linear-gradient(0deg, black, transparent); }
  .footer-grid { grid-template-columns: repeat(2,1fr); }
  .answer-panel { grid-template-columns: 1fr; }
  .article-method-note { grid-template-columns: 1fr; gap: 1rem; }
  .workflow-grid { grid-template-columns: 1fr; }
  .semantic-grid { grid-template-columns: 1fr; }
  .related-grid { grid-template-columns: 1fr; }
  .workspace-grid { grid-template-columns: 1fr; }
  .result-digest { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .container, .narrow { width: min(100% - 28px, 1180px); }
  .tool-catalogue-note { display: block; }
  .tool-catalogue-note .text-link { margin-top: .75rem; }
  .brand { font-size: 1rem; }
  .brand img { width: 36px; height: 36px; }
  .mobile-head > span { display: none; }
  .mobile-featured, .mobile-grid { grid-template-columns: 1fr; }
  .mobile-featured > div + div { padding-left: .25rem; border-left: 0; border-top: 1px solid var(--dark-line); }
  .hero-copy { padding: 3.5rem 0 4rem; }
  .hero, .hero-grid { min-height: 620px; }
  .hero { background-position: 62% center; }
  .hero-copy { width: 100%; }
  .hero h1 { font-size: clamp(2.5rem,12vw,3.7rem); }
  .hero-lede { font-size: .98rem; }
  .lookup-form > div { display: block; padding: 5px; }
  .lookup-form input, .lookup-form button { width: 100%; }
  .lookup-form button { margin-top: 4px; }
  .trust-strip .container { grid-template-columns: 1fr; }
  .trust-strip span { grid-column: auto; }
  .trust-strip .container > *, .trust-strip .container > :first-child { min-height: 0; padding: .45rem 0; border-left: 0; }
  .section { padding-block: 3.5rem; }
  .section-heading { display: block; }
  .section-heading > p, .section-heading > a { margin-top: 1rem; }
  .card-grid, .article-grid, .feature-articles, .api-grid, .sitemap-grid { grid-template-columns: 1fr; }
  .tool-card { min-height: 205px; }
  .page-hero { padding-block: 3.8rem 1.5rem; }
  .page-hero h1 { font-size: clamp(2.8rem,14vw,4.4rem); }
  .tool-hero { padding-block: 3.8rem; }
  .result-panel { padding: 1rem; }
  .result-head { display: block; }
  .result-actions { justify-content: flex-start; margin-top: 1rem; }
  .result-actions a, .result-actions button { flex: 1 1 auto; }
  .action-status { text-align: left; }
  .result-facts, .result-timeline { grid-template-columns: 1fr; }
  .result-status-item, .source-row { display: block; }
  .result-status-item p { margin-top: .5rem; }
  .source-row a { margin-top: .7rem; }
  .result-section, .result-source, .result-disclosures { padding: 1rem; }
  .result-record { grid-template-columns: 1fr; gap: .45rem; }
  .field-grid { grid-template-columns: 1fr; }
  .research-workspace { padding: 1.15rem; }
  .result-list > div, .result-list .result-list > div { display: block; }
  .result-list dt { margin-bottom: .2rem; }
  .explain-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .guide-split, .hub-intro { grid-template-columns: 1fr; gap: 1rem; }
  .check-list.two-column, .edge-case-grid { grid-template-columns: 1fr; }
  .answer-panel, .worked-example { padding: 1.25rem; }
  .answer-copy { display: block; }
  .answer-copy .icon-badge { margin-bottom: 1rem; }
  .evidence-table { min-width: 680px; }
  .magazine-grid { min-height: auto; }
  .magazine-grid > div { padding-block: 3.5rem 2rem; }
  .magazine-grid h1 { font-size: clamp(3rem,13vw,4.4rem); }
  .article-header { gap: 1.5rem; padding-block: 3rem 2rem; }
  .article-header h1 { font-size: clamp(2.45rem,12vw,4rem); }
  .article-summary > .direct-answer { font-size: 1rem; }
  .article-summary { padding: 1.35rem; }
  .article-rail { margin-bottom: 2rem; }
  .article-toc ol { columns: 1; }
  .article-body { font-size: 1rem; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem 1rem; }
  .footer-grid > div:first-child { grid-column: 1/-1; }
  .footer-bottom { display: block; }
  .footer-bottom span { display: block; margin-top: .35rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition: none !important; } }
