/* Dementia-Seizure Evidence Map. Builds on the Atlas tokens in evidence-guide.css (--navy, --orange, --ink, --muted, --line, --paper). */
.em-page { --em-base: #3d5470; --em-related: #1f6956; --em-review: #a7b3c2; --em-empty: #c9d3df; --em-net-dem: #4a8fd4; --em-net-rel: #2da870; --em-net-rev: #b8c3d1; }
.em-hero-meta { margin-top: 18px; color: #b9c6d6; font-size: .875rem; }
.em-hero-intro { max-width: 760px; margin-top: 18px; color: #dbe4ee; font-size: 1.0625rem; line-height: 1.6; }
.em-figures { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 16px; margin-top: 34px; max-width: 760px; }
.em-figure { border-top: 2px solid rgba(255,255,255,.18); padding-top: 12px; }
.em-figure b { display: block; color: #fff; font-size: clamp(2.2rem, 5vw, 3rem); font-weight: 700; line-height: 1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.em-figure span { display: block; margin-top: 6px; color: #b9c6d6; font-size: .9375rem; }
.em-figure.em-alert b { color: var(--orange); }

.em-section { padding-block: 72px; }
.em-section + .em-section { border-top: 1px solid var(--line); }
.em-section h2 { color: var(--navy); font-size: clamp(1.6rem, 3vw, 2.1rem); line-height: 1.15; letter-spacing: -.01em; }
.em-lede { max-width: 720px; margin-top: 12px; color: var(--ink); font-size: 1.0625rem; line-height: 1.6; }

.em-chapter { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr); gap: 40px; align-items: start; padding-block: 34px; border-top: 1px solid var(--line); }
.em-chapter:first-of-type { margin-top: 26px; }
@media (max-width: 860px) { .em-chapter { grid-template-columns: minmax(0, 1fr); gap: 18px; } }
.em-chapter h3 { color: var(--navy); font-size: 1.25rem; line-height: 1.3; }
.em-chapter p { margin-top: 10px; color: var(--ink); line-height: 1.6; }
.em-src { margin-top: 12px; color: var(--muted); font-size: .8125rem; line-height: 1.5; }
.em-src a { color: inherit; }
.em-chart { min-width: 0; }
.em-chart svg { display: block; width: 100%; height: auto; overflow: visible; }
.em-chart + .em-chart { margin-top: 26px; }
.em-chart h4 { color: var(--navy); font-size: .9375rem; font-weight: 600; margin-bottom: 8px; }
.em-axis { fill: var(--muted); font-size: 11px; }
.em-lab { fill: var(--ink); font-size: 13px; }
.em-val { fill: var(--navy); font-size: 13px; font-weight: 600; }
.em-grid { stroke: var(--line); }
.em-key { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 10px; color: var(--ink); font-size: .8125rem; }
.em-key span { display: inline-flex; align-items: center; gap: 7px; }
.em-sw { width: 11px; height: 11px; border-radius: 3px; display: inline-block; }
.em-ring { width: 11px; height: 11px; border-radius: 50%; display: inline-block; border: 2px solid var(--orange); }

.em-turn { padding-block: 56px; background: var(--navy); color: #fff; }
.em-turn p { max-width: 820px; font-size: clamp(1.35rem, 3vw, 1.9rem); font-weight: 600; line-height: 1.3; letter-spacing: -.01em; }
.em-turn p::before { content: ""; display: block; width: 48px; height: 4px; margin-bottom: 18px; background: var(--orange); }

.em-two { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 40px 48px; margin-top: 34px; }

.em-group { margin-top: 34px; }
.em-group h3 { color: var(--navy); font-size: 1.0625rem; margin-bottom: 14px; }
.em-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 14px; align-items: start; }
.em-card { background: var(--white); border: 1px solid var(--line); border-radius: 12px; padding: 18px 20px; }
.em-card.em-none { border-left: 4px solid var(--orange); }
.em-card summary { list-style: none; cursor: pointer; display: grid; gap: 6px; }
.em-card summary::-webkit-details-marker { display: none; }
.em-card summary:focus-visible { outline: 2px solid var(--orange); outline-offset: 4px; border-radius: 6px; }
.em-card-title { color: var(--navy); font-weight: 700; font-size: 1.0625rem; line-height: 1.3; }
.em-card-n { display: flex; align-items: baseline; gap: 8px; color: var(--ink); font-size: .9375rem; }
.em-card-n b { color: var(--navy); font-size: 1.9rem; line-height: 1; font-variant-numeric: tabular-nums; }
.em-none .em-card-n b { color: var(--orange); }
.em-card-epi { color: var(--em-related); font-size: .875rem; }
.em-card-more { color: var(--muted); font-size: .8125rem; }
.em-card[open] .em-card-more { display: none; }
.em-card-body { display: grid; gap: 10px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); font-size: .9375rem; line-height: 1.55; color: var(--ink); }
.em-card-body b { color: var(--navy); }

.em-explore-block { margin-top: 46px; }
.em-explore-block h3 { color: var(--navy); font-size: 1.25rem; }
.em-tools { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; margin-top: 14px; }
.em-tools label { color: var(--ink); font-size: .875rem; display: inline-flex; gap: 8px; align-items: center; }
.em-page select, .em-page input[type=search] { font: inherit; font-size: .875rem; color: var(--navy); background: var(--white); border: 1px solid #cbd3df; border-radius: 8px; padding: .5rem .7rem; }
.em-page input[type=search] { flex: 1 1 240px; min-width: 0; }
.em-page select:focus-visible, .em-page input:focus-visible, .em-page button:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; }
.em-scroll { overflow-x: auto; margin-top: 16px; -webkit-overflow-scrolling: touch; }
.em-map circle.c { cursor: pointer; }
.em-map circle.c:hover { stroke: var(--navy); stroke-width: 2; }
.em-map .sel { stroke: var(--orange); stroke-width: 3; }
.em-chip { font: inherit; font-size: .8125rem; border: 0; border-radius: 999px; padding: .4rem .8rem; background: var(--navy); color: #fff; cursor: pointer; }
.em-count { color: var(--muted); font-size: .875rem; }

.em-list { display: grid; gap: 10px; margin-top: 16px; }
.em-paper { background: var(--white); border: 1px solid var(--line); border-radius: 10px; padding: 14px 16px; }
.em-paper summary { list-style: none; cursor: pointer; display: grid; gap: 4px; }
.em-paper summary::-webkit-details-marker { display: none; }
.em-paper-title { color: var(--navy); font-weight: 600; line-height: 1.35; }
.em-paper-meta { color: var(--muted); font-size: .8125rem; }
.em-paper-find { color: var(--ink); font-size: .9375rem; line-height: 1.5; }
.em-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.em-tag { font-size: .75rem; padding: 2px 8px; border-radius: 999px; background: var(--paper); color: var(--ink); border: 1px solid var(--line); }
.em-tag.em-k { background: var(--blue-soft); }
.em-paper-body { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--line); display: grid; gap: 8px; font-size: .875rem; line-height: 1.55; color: var(--ink); }
.em-paper-body b { color: var(--navy); }
.em-paper-body a { color: var(--navy); font-weight: 600; }
.em-more { margin-top: 14px; }
.em-more button { font: inherit; font-size: .875rem; border: 1px solid #cbd3df; background: var(--white); color: var(--navy); border-radius: 8px; padding: .5rem .9rem; cursor: pointer; }

.em-net-wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 18rem); gap: 20px; margin-top: 16px; }
@media (max-width: 860px) { .em-net-wrap { grid-template-columns: minmax(0, 1fr); } }
.em-net { position: relative; border: 1px solid var(--line); border-radius: 12px; background: var(--white); overflow: hidden; min-height: 520px; touch-action: none; }
.em-net svg { display: block; cursor: grab; }
.em-net .lk { stroke: #d6dde7; stroke-width: .7; }
.em-net .nd { cursor: pointer; stroke: #fff; stroke-width: 1; }
.em-net .lab { font-size: 10.5px; fill: var(--navy); pointer-events: none; paint-order: stroke; stroke: #fff; stroke-width: 3px; }
.em-net-side { font-size: .875rem; color: var(--ink); line-height: 1.5; display: grid; gap: 10px; align-content: start; max-height: 520px; overflow: auto; }
.em-net-side h4 { color: var(--navy); font-size: 1rem; line-height: 1.3; }
.em-net-side ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 4px; }
.em-net-side button { all: unset; cursor: pointer; font-size: .8125rem; line-height: 1.4; }
.em-net-side button:hover { text-decoration: underline; }
.em-net-mobile { display: none; }
@media (max-width: 560px) { .em-net-wrap { display: none; } .em-net-mobile { display: block; } }

.em-tip { position: absolute; z-index: 20; pointer-events: none; max-width: 280px; background: var(--navy); color: #fff; font-size: .8125rem; line-height: 1.45; padding: 8px 10px; border-radius: 8px; box-shadow: 0 8px 24px rgba(10,22,40,.25); }
.em-tip[hidden] { display: none; }

.em-about { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 28px 40px; margin-top: 26px; }
.em-about h3 { color: var(--navy); font-size: 1.0625rem; margin-bottom: 8px; }
.em-about p, .em-about li { color: var(--ink); font-size: .9375rem; line-height: 1.6; }
.em-about ul { padding-left: 1.1rem; display: grid; gap: 6px; }
.em-cite { font-size: .875rem; background: var(--paper); border: 1px solid var(--line); border-radius: 8px; padding: 12px 14px; color: var(--ink); }
.em-cta { display: inline-block; margin-top: 10px; padding: .6rem 1rem; border-radius: 8px; background: var(--orange); color: #fff; font-weight: 600; text-decoration: none; }

@media (prefers-reduced-motion: no-preference) {
  .em-chart rect.bar { transform-box: fill-box; transform-origin: left; animation: emGrow .6s cubic-bezier(.2,.7,.2,1) both; }
  @keyframes emGrow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
}

/* Type scale for this page. The Atlas forces every paragraph in main to 17px (design-refinements.css), so the
   few deliberate exceptions below need !important. Scale: page title 56 · section 40 · chapter 22 · card/chart
   heading 17 · body 17 · small (sources, meta, keys, chart labels) 14. */
body main.em-page .em-turn p { font-size: clamp(1.5rem, 3vw, 2rem) !important; line-height: 1.3; font-weight: 700; }
body main.em-page p.em-src, body main.em-page .em-hero-meta, body main.em-page .em-key, body main.em-page .em-count, body main.em-page .em-paper-meta, body main.em-page .em-card-more { font-size: 14px !important; line-height: 1.5; }
body main.em-page .em-chart h4 { font-size: 17px !important; font-weight: 700; margin-bottom: 10px; }
body main.em-page .em-group h3 { font-size: 17px !important; text-transform: none; color: var(--muted); font-weight: 700; margin-bottom: 12px; }
body main.em-page .em-card-title { font-size: 17px; }
body main.em-page .em-card-n, body main.em-page .em-card-epi { font-size: 15px; }
body main.em-page .em-card-body p, body main.em-page .em-paper-body p, body main.em-page .em-paper-find { font-size: 15px !important; line-height: 1.6; }
body main.em-page .em-paper-title { font-size: 17px; }
.em-lab, .em-val { font-size: 14px; }
.em-axis { font-size: 12px; }

/* Collapsible "About the papers" and the connections section as a story section */
.em-fold { grid-column: 1 / -1; border: 1px solid var(--line); border-radius: 12px; padding: 14px 18px; background: var(--white); }
.em-fold summary { cursor: pointer; color: var(--navy); font-weight: 700; font-size: 17px; }
.em-fold[open] summary { margin-bottom: 14px; }
#connections-sec { background: var(--paper); }
#connections-sec .em-net { background: var(--white); }

/* ---------- Multi-page layout (2026-10-16) ---------- */
/* Landing: a report title page */
.em-titlepage { padding: clamp(80px, 12vw, 140px) 0 clamp(70px, 10vw, 120px); }
body main.em-page .em-titlepage h1 { font-size: clamp(2.6rem, 6vw, 4.2rem) !important; line-height: 1.04; letter-spacing: -.03em; max-width: 14ch; }
body main.em-page .em-subtitle { margin-top: 20px; max-width: none; color: #dbe4ee; font-size: clamp(1.2rem, 2.2vw, 1.5rem) !important; line-height: 1.4; font-weight: 400; }
.em-titlepage .em-hero-meta { margin-top: 40px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.18); max-width: 520px; }

.em-why-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 24px 56px; align-items: start; }
@media (max-width: 860px) { .em-why-grid { grid-template-columns: minmax(0, 1fr); } }
.em-why-grid p + p { margin-top: 14px; }

.em-doors-sec { background: var(--paper); }
.em-doors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
@media (max-width: 960px) { .em-doors { grid-template-columns: minmax(0, 1fr); } }
.em-door { display: grid; gap: 10px; align-content: start; background: var(--white); border: 1px solid var(--line); border-radius: 14px; padding: 24px; color: var(--ink); text-decoration: none; transition: border-color .2s, box-shadow .2s, transform .2s; }
.em-door:hover { border-color: var(--orange); box-shadow: 0 10px 28px rgba(10,22,40,.08); transform: translateY(-2px); }
.em-door:focus-visible { outline: 2px solid var(--orange); outline-offset: 3px; }
body main.em-page .em-door h2 { font-size: 22px !important; color: var(--navy); }
body main.em-page .em-door p { font-size: 15px !important; line-height: 1.6; }
.em-door-go { color: var(--orange); font-weight: 700; font-size: 15px; }
.em-door-feature { grid-column: 1 / -1; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 28px; align-items: center; }
@media (max-width: 960px) { .em-door-feature { grid-template-columns: minmax(0, 1fr); } }
.em-door-art { min-height: 200px; background: var(--paper); border-radius: 10px; overflow: hidden; }
.em-door-art svg { display: block; }
body main.em-page .em-door-about { margin-top: 22px; font-size: 15px !important; }
.em-door-about a { color: var(--navy); font-weight: 600; }

/* Subpages: compact hero with a page tab bar */
.em-subhero { padding: 46px 0 0; }
body main.em-page .em-subhero h1 { font-size: clamp(2.2rem, 4.5vw, 3rem) !important; }
body main.em-page .em-crumb { font-size: 14px !important; margin-bottom: 10px; }
.em-crumb a { color: #b9c6d6; text-decoration: none; }
.em-crumb a:hover { color: #fff; }
.em-subhero .em-hero-intro { margin-top: 12px; }
.em-tabs { display: flex; gap: 4px; margin-top: 30px; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.em-tabs a { flex: none; padding: 12px 16px; color: #b9c6d6; font-size: 15px; font-weight: 600; text-decoration: none; border-bottom: 3px solid transparent; }
.em-tabs a:hover { color: #fff; }
.em-tabs a[aria-current="page"] { color: #fff; border-bottom-color: var(--orange); }
.em-tabs a:focus-visible { outline: 2px solid var(--orange); outline-offset: -2px; }
.em-subhero { border-bottom-width: 0; }

/* Chart explanations on Findings */
body main.em-page .em-chapter p b { color: var(--navy); }

/* ---------- Papers explorer (Litmaps-style list + map) and About link (2026-10-16) ---------- */
.em-px-sec { padding-block: 34px 56px; }
.em-px { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 20px; margin-top: 16px; align-items: start; }
@media (max-width: 900px) { .em-px { grid-template-columns: minmax(0, 1fr); } .em-px-map { order: -1; } }
.em-px-list { max-height: 680px; overflow: auto; padding-right: 4px; }
.em-px-list .em-list { margin-top: 0; }
.em-px-map { position: sticky; top: 90px; border: 1px solid var(--line); border-radius: 12px; background: var(--white); overflow: hidden; min-height: 380px; }
@media (max-width: 900px) { .em-px-map { position: static; } .em-px-list { max-height: none; } }
.em-px-map svg { display: block; }
.em-net-lab { font-size: 11px; fill: var(--navy); pointer-events: none; paint-order: stroke; stroke: #fff; stroke-width: 3px; }
.em-paper-sel { border-color: var(--orange); box-shadow: inset 4px 0 0 var(--orange); }
.em-paper summary .em-paper-meta:first-child { color: var(--navy); font-weight: 600; }
.em-aboutlink { padding-block: 26px 40px; border-top: 1px solid var(--line); }
body main.em-page .em-aboutlink a { color: var(--muted); font-size: 14px; }

/* Findings: one card per finding. Big number, the claim and its sources, a simple picture; detail folded below */
.em-finding { display: grid; grid-template-columns: 260px minmax(0, 1fr) minmax(0, 1fr); gap: 12px 36px; align-items: start; padding-block: 36px; border-top: 1px solid var(--line); }
.em-finding:first-child { margin-top: 26px; }
body main.em-page p.em-big { font-size: 46px !important; white-space: nowrap; line-height: 1; font-weight: 800; color: var(--orange); letter-spacing: -0.02em; margin: 0; }
.em-finding h3 { color: var(--navy); line-height: 1.3; }
.em-finding-text p { margin-top: 10px; color: var(--ink); line-height: 1.6; }
.em-pic { align-self: center; }
.em-evidence { margin-top: 10px; }
.em-evidence > p { color: var(--ink); line-height: 1.6; max-width: 72ch; }
.em-evidence .em-chart { margin-top: 26px; max-width: 760px; }
@media (max-width: 980px) { .em-finding { grid-template-columns: minmax(0, 1fr); gap: 14px; } body main.em-page p.em-big { font-size: 44px !important; } }

/* Gaps: one card per gap, grouped. Number and what it counts, title, why it matters; evidence folded */
.em-group + .em-group { margin-top: 44px; }
body main.em-page .em-group h2 { font-size: 24px !important; color: var(--navy); margin-bottom: 14px; }
.em-gapcards { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 16px; align-items: start; }
.em-gap { background: var(--white); border: 1px solid var(--line); border-radius: 12px; padding: 20px 22px; display: grid; gap: 10px; }
.em-gap.em-none { border-top: 4px solid var(--orange); }
body main.em-page p.em-gap-n { display: flex; align-items: baseline; gap: 10px; margin: 0; color: var(--muted); font-size: 15px !important; line-height: 1.35; }
.em-gap-n b { color: var(--navy); font-size: 40px; line-height: 1; font-weight: 800; font-variant-numeric: tabular-nums; flex: none; }
.em-none .em-gap-n b { color: var(--orange); }
body main.em-page .em-gap h3 { font-size: 19px !important; color: var(--navy); line-height: 1.3; margin: 2px 0 0; }
body main.em-page .em-gap p.em-gap-why { margin: 0; color: var(--ink); line-height: 1.6; }
body main.em-page .em-gap p.em-gap-epi { margin: 0; color: var(--em-related, #1f6956); font-size: 15px !important; }
.em-gap .em-evidence { margin-top: 4px; padding: 10px 14px; }
body main.em-page .em-gap .em-evidence p { font-size: 15px !important; line-height: 1.6; margin-top: 8px; }
.em-seg { display: inline-flex; border: 1px solid var(--line); border-radius: 999px; padding: 3px; margin-top: 14px; background: var(--white); }
.em-seg button { border: 0; background: none; padding: 7px 16px; border-radius: 999px; font: inherit; font-size: 15px; color: var(--ink); cursor: pointer; }
.em-seg button[aria-pressed="true"] { background: var(--navy); color: #fff; }
.em-seg button:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; }
.em-dsslink { fill: #2c6fb5; text-decoration: underline; cursor: pointer; }

/* Gaps: what researchers call for (bars) and what this map reveals (numbered statements) */
.em-calls { margin-top: 22px; display: grid; gap: 6px; }
.em-call { border-bottom: 1px solid var(--line); }
.em-call summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: 92px minmax(120px, 220px) minmax(0, 1fr); gap: 6px 18px; align-items: center; padding: 12px 4px; }
.em-call summary::-webkit-details-marker { display: none; }
.em-call summary:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; border-radius: 6px; }
.em-call summary:hover .em-call-title { text-decoration: underline; }
body main.em-page .em-call-n { color: var(--muted); font-size: 14px; white-space: nowrap; }
.em-call-n b { color: var(--navy); font-size: 22px; font-weight: 800; margin-right: 2px; font-variant-numeric: tabular-nums; }
.em-call-bar { display: block; height: 12px; background: #eef2f7; border-radius: 3px; overflow: hidden; }
.em-call-bar i { display: block; height: 100%; background: var(--navy); border-radius: 3px; }
.em-call-txt { display: grid; gap: 2px; }
.em-call-title { color: var(--navy); font-weight: 700; font-size: 17px; line-height: 1.35; }
body main.em-page .em-call-desc { color: var(--muted); font-size: 15px; line-height: 1.45; }
.em-call-body { padding: 0 4px 16px; display: grid; gap: 8px; }
body main.em-page .em-call-body p { font-size: 15px !important; line-height: 1.6; color: var(--ink); margin: 0; }
.em-call-body b { color: var(--navy); }
.em-call-go { color: var(--navy); font-weight: 600; font-size: 15px; }
@media (max-width: 700px) { .em-call summary { grid-template-columns: 76px minmax(0, 1fr); } .em-call-txt { grid-column: 1 / -1; } }
.em-reveal { list-style: none; counter-reset: rev; margin: 22px 0 0; padding: 0; display: grid; gap: 14px; }
.em-rev { counter-increment: rev; position: relative; background: var(--white); border: 1px solid var(--line); border-radius: 12px; padding: 18px 22px 18px 70px; display: grid; gap: 8px; }
.em-rev::before { content: counter(rev); position: absolute; left: 20px; top: 16px; width: 34px; height: 34px; border-radius: 50%; background: var(--navy); color: #fff; font-weight: 700; font-size: 16px; display: grid; place-items: center; }
.em-rev.em-none::before { background: var(--orange); }
.em-rev-head { display: flex; justify-content: space-between; gap: 6px 18px; align-items: baseline; flex-wrap: wrap; }
body main.em-page .em-rev h3 { font-size: 19px !important; color: var(--navy); line-height: 1.35; margin: 0; flex: 1 1 320px; }
body main.em-page .em-rev-count { color: var(--muted); font-size: 15px; font-weight: 600; white-space: nowrap; }
body main.em-page .em-rev p.em-rev-why { margin: 0; color: var(--ink); line-height: 1.6; }
body main.em-page .em-rev p.em-rev-call { margin: 0; font-size: 15px !important; color: var(--muted); }
.em-rev-call a { color: var(--navy); font-weight: 600; }
.em-rev .em-evidence { margin-top: 4px; padding: 10px 14px; }
body main.em-page .em-rev .em-evidence p { font-size: 15px !important; line-height: 1.6; margin-top: 8px; }
@media (max-width: 600px) { .em-rev { padding: 16px 16px 16px 58px; } .em-rev::before { left: 14px; width: 30px; height: 30px; font-size: 15px; } }
.em-call, .em-rev { scroll-margin-top: 96px; }

/* Gaps matrix: larger type and circles, a count in every circle */
.em-map svg .em-maplab { font-size: 15px; fill: var(--ink); }
.em-map svg .em-maprow { font-size: 16px; font-weight: 600; fill: var(--navy); }
.em-map svg .em-mapnum { font-size: 15px; font-weight: 700; fill: #fff; pointer-events: none; }
.em-map g.c { cursor: pointer; }
.em-map g.c:hover circle { fill: var(--orange); }
.em-map .em-key { margin-top: 10px; }

/* Papers: permanent link to each paper */
body main.em-page p.em-paper-link { font-size: 14px !important; margin-top: 6px; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.em-paper-link a { color: var(--navy); font-weight: 600; }
.em-copy { font: inherit; font-size: 13px; border: 1px solid var(--line); background: var(--white); color: var(--ink); border-radius: 999px; padding: 3px 12px; cursor: pointer; max-width: 100%; overflow-wrap: anywhere; }
.em-copy:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; }

/* pointers to the Subtype Atlas */
body main.em-page p.em-atlas-note { font-size: 15px !important; color: var(--muted); margin-top: 18px; }
#px-atlas { margin-top: 8px; flex-basis: 100%; }
.em-atlas-note a { color: var(--navy); font-weight: 600; }

/* About: one section per row, heading left and text right (the Overview's "Why this map exists" layout) */
.em-about-row { padding-block: 30px; border-top: 1px solid var(--line); }
.em-about-row:first-child { border-top: 0; padding-top: 6px; }
body main.em-page .em-about-row h2 { font-size: 24px !important; color: var(--navy); line-height: 1.25; margin: 0; }
.em-about-row p, .em-about-list li { color: var(--ink); line-height: 1.65; max-width: 68ch; }
.em-about-list { margin: 0; padding-left: 1.1rem; display: grid; gap: 10px; }
.em-about-chart { max-width: 640px; }
.em-about-row .em-cite { max-width: 68ch; }
body main.em-page p.em-about-more { margin-top: 16px; font-size: 15px !important; } .em-about-more a { color: var(--navy); font-weight: 600; }

/* ===== 2026-10-20: one menu, the main site's left edge, and the new overview page ===== */
.container { width: min(calc(100% - 80px), 1100px); }
@media (max-width: 720px) { .container, .ad-guide .container { width: calc(100% - 44px); } }
.site-nav .nav-links a[aria-current="page"], .mobile-nav a[aria-current="page"] { color: var(--navy, #0a1628); box-shadow: inset 0 -2px 0 #ef7835; }

.em-home-hero { background: #0a1628; color: #fff; position: relative; overflow: hidden; }
.em-home-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(to right, #ef7835, transparent 62%); }
.em-home-hero .container { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 48px; align-items: center; padding: 72px 0 64px; }
@media (max-width: 960px) { .em-home-hero .container { grid-template-columns: 1fr; gap: 28px; padding: 44px 0 40px; } }
.em-home-hero h1 { margin: 0; color: #fff; font-size: clamp(34px, 4.6vw, 56px); line-height: 1.06; letter-spacing: -0.035em; font-weight: 800; text-wrap: balance; }
.em-home-hero h1 span { color: #ef7835; }
.em-home-lede { margin: 22px 0 0; color: #c9d3df; font-size: clamp(17px, 1.5vw, 19px); line-height: 1.65; max-width: 46ch; }
.em-home-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.em-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 50px; padding: 0 22px; border-radius: 10px; font-weight: 700; font-size: 15px; text-decoration: none; }
.em-btn-primary { background: #ef7835; color: #0a1628; }
.em-btn-ghost { border: 1px solid rgba(255, 255, 255, .35); color: #fff; }
.em-home-meta { margin: 26px 0 0; font-size: 14px; color: #9fb0c4; }
.em-home-meta b { color: #fff; }
.em-home-net { margin: 0; min-width: 0; }
.em-hnet { position: relative; width: 100%; aspect-ratio: 16 / 11; max-width: 100%; }
.em-hnet svg { display: block; width: 100%; height: 100%; }
.em-net-line { stroke: #5d7a9c; stroke-opacity: .16; stroke-width: .6; }
.em-net-line.on { stroke: #ef7835; stroke-opacity: .85; stroke-width: 1.1; }
.em-net-line.off { stroke-opacity: .05; }
.em-net-dem { fill: #7fb2e8; fill-opacity: .92; }
.em-net-rel { fill: #4a6a8e; fill-opacity: .92; }
.em-hnet circle.fade { fill-opacity: .22; }
.em-hnet circle.hit { fill: #ef7835; fill-opacity: 1; }
.em-net-label { fill: #fff; font-size: 12px; font-weight: 600; font-family: Inter, system-ui, sans-serif; pointer-events: none; }
.em-net-tip { position: absolute; pointer-events: none; background: #fff; color: #0a1628; border-radius: 10px; padding: 10px 12px; font-size: 13.5px; line-height: 1.45; width: min(280px, 80%); box-shadow: 0 12px 30px rgba(0, 0, 0, .35); z-index: 2; }
.em-net-tip b { display: block; font-size: 14px; }
.em-net-tip span { color: #526477; }
.em-home-net figcaption { margin-top: 12px; font-size: 14px; color: #9fb0c4; display: flex; flex-wrap: wrap; gap: 6px 18px; align-items: center; }
.em-hkey { display: inline-flex; align-items: center; gap: 7px; }
.em-hkey i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.em-hkey-dem { background: #7fb2e8; } .em-hkey-rel { background: #4a6a8e; }

.em-home-nums h2, .em-home-why h2 { margin: 0 0 28px; }
.em-nums, .em-ways { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
@media (max-width: 860px) { .em-nums, .em-ways { grid-template-columns: 1fr; } }
.em-num { display: flex; flex-direction: column; gap: 10px; padding: 26px 24px; background: #fff; border: 1px solid #e4eaf2; border-radius: 14px; }
.em-big { font-size: clamp(40px, 5vw, 56px); font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: #0a1628; }
.em-own .em-big { color: #98430f; }
.em-num h3 { margin: 0; font-size: 18px; line-height: 1.3; }
.em-num p { margin: 0; color: #2d3f52; font-size: 15.5px; line-height: 1.6; }
.em-num .em-src { font-size: 13px; color: #526477; }
.em-more { margin-top: auto; font-weight: 700; font-size: 15px; text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; gap: 6px; color: #0a1628; }
.em-more span { color: #98430f; }
.em-tag { align-self: flex-start; font-size: 13px; font-weight: 700; color: #98430f; background: #fff4ec; border-radius: 999px; padding: 3px 10px; }
.em-home-why { background: #f6f8fb; border-block: 1px solid #e4eaf2; }
.em-why-text { max-width: 62ch; color: #2d3f52; margin: 0 0 32px; }
.em-way { display: flex; flex-direction: column; gap: 8px; text-decoration: none; padding: 24px; border-radius: 14px; border: 1px solid #e4eaf2; background: #fff; color: #0a1628; }
.em-way:hover { border-color: #c9d3df; }
.em-way h3 { margin: 0; font-size: 20px; }
.em-way p { margin: 0; color: #2d3f52; font-size: 15.5px; }
.em-way .em-door-go { margin-top: auto; padding-top: 8px; }
.em-btn:focus-visible, .em-way:focus-visible, .em-more:focus-visible { outline: 3px solid #ef7835; outline-offset: 2px; }
.mobile-menu:not([open]) .mobile-nav { display: none; }
/* readable orange on light backgrounds (the brand orange stays on navy) */
.em-way .em-door-go { color: #0a1628; }
.em-way .em-door-go span { color: #98430f; }
.em-big { color: #98430f; }
.em-home-nums .em-num:not(.em-own) .em-big { color: #0a1628; }
.em-cta { color: #0a1628; }  /* navy on orange, as on the main site buttons */
body main.em-page p.em-big { color: #98430f; }
main.em-page { overflow-x: clip; }  /* chart labels on narrow phones must not widen the page */

/* ===== 2026-10-21: Gaps page: overview tiles, "called for, but not done", one row per gap, explorer ===== */
.eg-alt { background: #f6f8fb; border-block: 1px solid #e4eaf2; }
body main.em-page .em-subhero .em-hero-intro { max-width: 62ch; }
.eg-glance { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
@media (max-width: 1000px) { .eg-glance { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .eg-glance { grid-template-columns: 1fr; } }
body main.em-page .eg-theme h3 { margin: 0 0 10px; font-size: 14px !important; letter-spacing: .06em; text-transform: uppercase; color: #526477; }
.eg-tiles { display: grid; gap: 10px; }
.eg-tile { display: grid; gap: 6px; text-align: left; width: 100%; font: inherit; color: #0a1628; background: #fff; border: 1px solid #e4eaf2; border-radius: 12px; padding: 12px 14px; cursor: pointer; min-height: 44px; }
.eg-tile:hover { border-color: #c9d3df; }
.eg-tile:focus-visible, .eg-btn-small:focus-visible, #em-ex-type:focus-visible, .eg-ex-seg button:focus-visible, .eg-gap > summary:focus-visible { outline: 3px solid #ef7835; outline-offset: 2px; }
.eg-tile-t { font-weight: 700; font-size: 15.5px; line-height: 1.3; }
.eg-level { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; color: #2d3f52; }
.eg-level.none b { color: #98430f; }
.eg-dots { display: inline-flex; gap: 3px; }
.eg-dots i { width: 10px; height: 10px; border-radius: 50%; background: #e4eaf2; display: block; }
.eg-dots i.on { background: #0a1628; }
.eg-dots.none i { background: transparent; border: 1.5px dashed #98430f; }
.eg-scale { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 22px 0 0; font-size: 14px; color: #526477; }
.eg-db-key { display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 14px; color: #2d3f52; margin: 0 0 14px; }
.eg-db-key span { display: inline-flex; align-items: center; gap: 8px; }
.eg-db-key i { width: 12px; height: 12px; border-radius: 50%; display: inline-block; }
.eg-dumbbell svg { display: block; width: 100%; }
.eg-db-axis { font-size: 12px; fill: #526477; }
.eg-db-lab { font-size: 14px; font-weight: 600; fill: #0a1628; }
@media (max-width: 640px) { .eg-db-lab { font-size: 12.5px; } }
.eg-dumbbell a:hover .eg-db-lab, .eg-dumbbell a:focus .eg-db-lab { fill: #98430f; text-decoration: underline; }
.eg-db-ask { font-size: 12.5px; font-weight: 700; fill: #98430f; }
.eg-db-done { font-size: 12.5px; font-weight: 700; fill: #0a1628; }
body main.em-page p.eg-note { font-size: 14px !important; color: #526477; margin: 14px 0 0; max-width: 70ch; }
.eg-group { margin-top: 40px; }
.eg-group-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; border-bottom: 2px solid #0a1628; padding-bottom: 8px; margin-bottom: 4px; }
body main.em-page .eg-group-head h3 { margin: 0; font-size: 22px !important; color: #0a1628; text-transform: none; letter-spacing: -0.01em; }
.eg-group-head span { font-size: 14px; color: #526477; font-weight: 600; white-space: nowrap; }
.eg-gap { border-bottom: 1px solid #e4eaf2; scroll-margin-top: 90px; }
.eg-gap.eg-flash { background: #fff4ec; }
.eg-gap > summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: minmax(0, 1fr) auto 22px; gap: 14px; align-items: center; padding: 16px 4px; min-height: 56px; }
.eg-gap > summary::-webkit-details-marker { display: none; }
.eg-gap-t { font-size: 18px; font-weight: 700; color: #0a1628; line-height: 1.3; }
.eg-chev { width: 10px; height: 10px; border-right: 2px solid #526477; border-bottom: 2px solid #526477; transform: rotate(45deg); justify-self: center; transition: transform .15s; }
.eg-gap[open] .eg-chev { transform: rotate(-135deg); }
.eg-chip { display: inline-flex; align-items: center; gap: 7px; font-size: 13.5px; font-weight: 700; color: #0a1628; background: #f6f8fb; border: 1px solid #e4eaf2; border-radius: 999px; padding: 4px 10px; white-space: nowrap; }
.eg-chip.none { color: #98430f; background: #fff4ec; border-color: #f6d3bd; }
@media (max-width: 560px) { .eg-gap > summary { grid-template-columns: minmax(0, 1fr) 22px; } .eg-chip { grid-column: 1; grid-row: 2; justify-self: start; } .eg-chev { grid-row: 1 / span 2; grid-column: 2; } }
.eg-gap-body { padding: 0 4px 20px; max-width: 72ch; }
body main.em-page .eg-gap-body p { margin: 0 0 10px; color: #2d3f52; font-size: 16px !important; }
body main.em-page .eg-gap-body p.eg-gap-stmt { font-size: 17px !important; font-weight: 600; color: #0a1628; }
body main.em-page .eg-gap-body p.eg-gap-count { font-size: 14.5px !important; color: #526477; }
.eg-gap-call a { color: #98430f; font-weight: 700; }
.eg-gap-ev { border-left: 3px solid #e4eaf2; padding-left: 14px; margin: 12px 0; }
body main.em-page .eg-gap-ev p { font-size: 15px !important; }
.eg-gap-ev b { color: #0a1628; }
.eg-gap-acts { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin-top: 8px; }
.eg-btn-small { font: inherit; font-size: 14.5px; font-weight: 700; background: #fff; color: #0a1628; border: 1px solid #c9d3df; border-radius: 9px; padding: 0 14px; min-height: 44px; cursor: pointer; }
.eg-copied { font-size: 14px; color: #98430f; }
.eg-ex-tools { display: flex; flex-wrap: wrap; gap: 12px 18px; align-items: center; margin-bottom: 18px; }
.eg-ex-tools label { font-weight: 600; }
#em-ex-type { font: inherit; font-size: 16px; padding: 8px 10px; border: 1px solid #c9d3df; border-radius: 9px; min-height: 44px; background: #fff; color: #0a1628; }
.eg-ex-seg { display: inline-flex; border: 1px solid #c9d3df; border-radius: 9px; overflow: hidden; }
.eg-ex-seg button { font: inherit; font-size: 15px; font-weight: 600; border: 0; background: #fff; color: #0a1628; padding: 0 14px; min-height: 44px; cursor: pointer; }
.eg-ex-seg button[aria-pressed="true"] { background: #0a1628; color: #fff; }
.eg-bars { display: grid; gap: 4px; max-width: 760px; }
.eg-bar { display: grid; grid-template-columns: minmax(120px, 210px) minmax(0, 1fr) 72px; gap: 12px; align-items: center; font-size: 15px; color: #0a1628; text-decoration: none; min-height: 40px; border-radius: 8px; padding: 0 6px; }
a.eg-bar:hover { background: #fff; }
.eg-bar-track { height: 12px; background: #e8eef6; border-radius: 6px; overflow: hidden; }
.eg-bar-track i { display: block; height: 100%; background: #0a1628; border-radius: 6px; }
.eg-bar-n { font-variant-numeric: tabular-nums; font-weight: 700; text-align: right; }
.eg-bar.zero .eg-bar-n { color: #98430f; }
@media (max-width: 520px) { .eg-bar { grid-template-columns: minmax(0, 1fr) 64px; padding: 6px; } .eg-bar-track { grid-column: 1 / -1; grid-row: 2; } }
.eg-calls-all { margin-top: 34px; }
.eg-calls-all > summary { cursor: pointer; font-weight: 700; min-height: 44px; display: flex; align-items: center; }
.eg-calls-list { margin: 8px 0 0; padding-left: 22px; color: #2d3f52; display: grid; gap: 8px; max-width: 72ch; }
.eg-calls-list a { color: #98430f; font-weight: 600; }
.em-aboutlink a { display: inline-flex; align-items: center; min-height: 44px; }
.eg-glance, .eg-db-key, #em-detail, .eg-ex-tools { margin-top: 24px; }

/* ===== 2026-10-21: Findings: long headline figures, linked sources, the gap each finding leaves, citations ===== */
body main.em-page p.em-big.em-big-long { font-size: 34px !important; white-space: normal; line-height: 1.1; }
@media (max-width: 980px) { body main.em-page p.em-big.em-big-long { font-size: 32px !important; } }
.em-finding { scroll-margin-top: 90px; }
.em-src a { color: inherit; text-decoration: underline; text-decoration-color: #c9d3df; text-underline-offset: 2px; }
.em-src a:hover { color: #98430f; text-decoration-color: currentColor; }
body main.em-page p.em-gapline { margin: 10px 0 0; font-size: 15px !important; color: #2d3f52; }
.em-gapline a { color: #98430f; font-weight: 700; }
body main.em-page p.em-cite-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 12px 0 0; }
.em-nb { white-space: nowrap; }

/* ===== 2026-10-21: Papers: shortcuts, more filters, active-filter chips, kind labels, findings in the list, network on request on phones ===== */
.px-starts { display: flex; flex-wrap: wrap; gap: 10px; margin: 6px 0 18px; }
.px-start { font: inherit; font-size: 15px; font-weight: 700; color: #0a1628; background: #fff; border: 1px solid #c9d3df; border-radius: 999px; padding: 0 18px; min-height: 44px; cursor: pointer; }
.px-start:hover { border-color: #0a1628; }
.px-start[aria-pressed="true"] { background: #0a1628; color: #fff; border-color: #0a1628; }
.px-tools select, .px-tools input[type="search"] { min-height: 44px; font-size: 15px; }
.px-tools label { font-size: 15px !important; }
.px-more-filters { display: inline-block; }
.px-more-filters > summary { cursor: pointer; font-weight: 600; font-size: 15px; min-height: 44px; display: inline-flex; align-items: center; color: #0a1628; }
.px-more-filters[open] { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; width: 100%; }
.px-active { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.px-active:empty { display: none; }
.px-achip { font: inherit; font-size: 14px; font-weight: 600; color: #0a1628; background: #e8eef6; border: 0; border-radius: 999px; padding: 0 14px; min-height: 36px; cursor: pointer; }
.px-aclear { font: inherit; font-size: 14px; font-weight: 700; color: #98430f; background: none; border: 0; min-height: 36px; cursor: pointer; text-decoration: underline; }
.px-countrow { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 12px; }
.px-start:focus-visible, .px-achip:focus-visible, .px-aclear:focus-visible, .px-netbtn:focus-visible, .px-more-filters > summary:focus-visible { outline: 3px solid #ef7835; outline-offset: 2px; }
.px-kind { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 700; color: #2d3f52; margin-bottom: 2px; }
.px-kind i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.px-finding { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 14.5px; color: #2d3f52; line-height: 1.5; margin-top: 4px; }
.em-paper[open] .px-finding { display: block; -webkit-line-clamp: unset; }
.px-cited { margin-top: 4px; }
.px-used { margin: 10px 0; padding: 10px 12px; background: #f6f8fb; border-radius: 10px; }
.px-used b { display: block; color: #0a1628; font-size: 14px; }
.px-used ul { margin: 6px 0 0; padding-left: 18px; }
.px-used li { font-size: 14.5px; margin: 2px 0; }
.px-used a, .px-read { color: #98430f; font-weight: 600; }
.px-empty { color: #526477; padding: 12px 0; }
.px-legend { display: flex; flex-wrap: wrap; gap: 6px 16px; padding: 10px 12px; font-size: 13px; color: #2d3f52; }
.px-legend span { display: inline-flex; align-items: center; gap: 7px; }
.px-legend i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.em-px-map-wrap { position: sticky; top: 90px; border: 1px solid var(--line); border-radius: 12px; background: var(--white); overflow: hidden; }
.em-px-map-wrap .em-px-map { position: static; border: 0; border-radius: 0; }
.px-netbtn { display: none; font: inherit; font-size: 15px; font-weight: 700; color: #0a1628; background: #fff; border: 1px solid #c9d3df; border-radius: 10px; padding: 0 16px; min-height: 44px; margin-top: 12px; cursor: pointer; }
@media (max-width: 900px) {
  .em-px-map-wrap { position: static; order: 0; }
  .em-px .em-px-map { order: 0; }
  .px-netbtn { display: inline-flex; align-items: center; }
  body:not(.px-show-net) .em-px-map-wrap { display: none; }
  body.px-show-net .em-px-map-wrap { order: -1; }
}
.px-filters { display: contents; }
.px-filters > summary { display: none; }
.px-filter-body { display: contents; }
@media (max-width: 720px) {
  .px-tools input[type="search"] { width: 100%; }
  .px-filters { display: block; width: 100%; }
  .px-filters > summary { display: flex; align-items: center; min-height: 44px; cursor: pointer; font-weight: 700; color: #0a1628; }
  .px-filter-body { display: grid; gap: 12px; padding: 4px 0 8px; }
  .px-filter-body label, .px-more-filters[open] label { display: grid; gap: 4px; width: 100%; }
  .px-filter-body select { width: 100%; }
  .px-more-filters, .px-more-filters[open] { display: grid; gap: 12px; width: 100%; }
}
/* search: why a paper matched */
.px-why { display: inline-block; margin-top: 6px; font-size: 13px; font-weight: 700; color: #2d3f52; background: #e8eef6; border-radius: 999px; padding: 2px 10px; }
.px-why-ft { color: #98430f; background: #fff4ec; }
body main.em-page p.px-ftnote { margin: 8px 0 0; font-size: 14px !important; color: #526477; max-width: 72ch; }

/* ===== 2026-10-27: overview search in place of the network ===== */
.em-home-search { min-width: 0; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14); border-radius: 16px; padding: 28px 28px 24px; }
.em-home-search label { display: block; color: #fff; font-size: clamp(19px, 1.8vw, 22px); font-weight: 700; line-height: 1.3; margin: 0 0 16px; text-wrap: balance; }
.em-home-qrow { display: flex; gap: 10px; }
.em-home-qrow input { flex: 1; min-width: 0; font: inherit; font-size: 17px; color: #0a1628; background: #fff; border: 0; border-radius: 10px; padding: 0 16px; min-height: 52px; }
.em-home-qrow input:focus-visible, .em-home-tries a:focus-visible { outline: 3px solid #ef7835; outline-offset: 2px; }
.em-home-qrow .em-btn { min-height: 52px; border: 0; cursor: pointer; font: inherit; font-weight: 700; }
body main.em-page p.em-home-tries { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 18px 0 0; color: #c9d3df; font-size: 15px !important; }
.em-home-tries a { color: #fff; text-decoration: none; font-weight: 600; border: 1px solid rgba(255, 255, 255, .35); border-radius: 999px; padding: 0 14px; min-height: 40px; display: inline-flex; align-items: center; }
.em-home-tries a:hover { border-color: #ef7835; color: #ffb079; }
body main.em-page p.em-home-scope { margin: 16px 0 0; color: #9fb0c4; font-size: 14px !important; }
@media (max-width: 520px) { .em-home-search { padding: 20px 18px; } .em-home-qrow { flex-direction: column; } }
.em-home-tries a { min-height: 44px; }
@media (max-width: 520px) { .em-home-qrow input { flex: none; width: 100%; height: 52px; } .em-home-qrow .em-btn { justify-content: center; } }
.em-page .em-home-qrow input[type="search"] { flex: 1 1 0; padding: 0 16px; }
@media (max-width: 520px) { .em-page .em-home-qrow input[type="search"] { flex: none; width: 100%; height: 52px; } }

/* ===== 2026-10-27: overview hero is one column, in the same order at every width: headline, description, search, buttons ===== */
.em-home-hero .container { display: block; padding: 72px 0 64px; }
@media (max-width: 960px) { .em-home-hero .container { padding: 44px 0 40px; } }
.em-home-copy { max-width: 820px; }
.em-home-hero h1 { max-width: 18ch; }
.em-home-lede { max-width: 62ch; }
.em-home-search { margin-top: 32px; max-width: 720px; background: none; border: 0; border-radius: 0; padding: 0; }
.em-home-search label { font-size: 17px; font-weight: 600; color: #c9d3df; margin-bottom: 10px; }
.em-home-qrow input[type="search"], .em-page .em-home-qrow input[type="search"] { min-height: 56px; font-size: 17px; }
.em-home-qrow .em-btn { min-height: 56px; padding: 0 26px; }
.em-home-actions { margin-top: 24px; }
