:root {
  color-scheme: light;
  --ground: #f4f1e8;
  --paper: #fbfaf4;
  --forest: #173e35;
  --forest-deep: #0e2c25;
  --ink: #18231f;
  --body: #405049;
  --muted: #617069;
  --sage: #c8d4c4;
  --sage-light: #e0e8dc;
  --moss: #9caf9c;
  --sand: #e6d9c4;
  --line: rgba(23, 62, 53, .28);
  --hairline: rgba(23, 62, 53, .14);
  --accent: #9b7548;
  --serif: "Noto Serif KR", "Noto Serif CJK KR", "Nanum Myeongjo", Georgia, serif;
  --sans: "IBM Plex Sans KR", "Pretendard", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--ground); scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 0;
  background: var(--ground);
  color: var(--body);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.65;
  word-break: keep-all;
  overflow-wrap: break-word;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

::selection { background: var(--forest); color: var(--ground); }
a { color: inherit; }
a:focus-visible,
button:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
button { font: inherit; }

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.site-header {
  position: relative;
  max-width: 1240px;
  min-height: 72px;
  margin: 0 auto;
  padding: 18px clamp(20px, 5vw, 68px);
  display: flex;
  align-items: center;
  gap: 17px;
  border-bottom: 1px solid var(--line);
}
.wordmark {
  color: var(--forest);
  font-size: 25px;
  font-weight: 600;
  letter-spacing: -.05em;
  line-height: 1;
  text-decoration: none;
}
.wordmark-rule { width: clamp(28px, 8vw, 92px); border-top: 1px solid var(--accent); }
.site-nav {
  display: flex;
  align-items: center;
  gap: clamp(16px, 3vw, 32px);
  margin-left: auto;
}
.site-nav a {
  min-height: 44px;
  padding: 8px 0;
  display: inline-flex;
  align-items: center;
  color: var(--forest);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .03em;
  text-decoration: none;
  white-space: nowrap;
}
.site-nav a:hover { color: var(--accent); }
.prototype-meta {
  position: absolute;
  left: clamp(20px, 5vw, 68px);
  bottom: -25px;
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  letter-spacing: .04em;
  line-height: 1;
}

.map-main { max-width: 1240px; margin: 0 auto; }
.site-intro {
  padding: 46px clamp(20px, 5vw, 68px) 34px;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 28px clamp(30px, 6vw, 90px);
  align-items: end;
  border-bottom: 1px solid var(--line);
}
.site-intro h1 {
  max-width: 17ch;
  margin: 10px 0 0;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(1.9rem, 3.6vw, 2.7rem);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: 1.25;
  text-wrap: balance;
}
.site-lede { max-width: 36rem; margin: 16px 0 0; color: var(--body); font-size: 17px; line-height: 1.7; }
.site-promise { max-width: 36rem; margin: 20px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--hairline); }
.site-promise li { padding: 9px 0; display: grid; grid-template-columns: 9.5em minmax(0, 1fr); gap: 12px; border-bottom: 1px solid var(--hairline); font-size: 15px; line-height: 1.55; }
.site-promise strong { color: var(--forest); font-weight: 600; }
.site-promise-note { max-width: 36rem; margin: 8px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.start-here { padding: 18px 20px 14px; background: rgba(251, 250, 244, .62); border: 1px solid var(--line); }
.start-label { margin: 0; color: var(--forest); font-size: 12px; font-weight: 600; letter-spacing: .1em; }
.start-here ol { margin: 8px 0 0; padding: 0; list-style: none; }
.start-here li { border-bottom: 1px solid var(--hairline); }
.start-here li a { min-height: 44px; padding: 10px 0; display: block; color: var(--body); text-decoration: none; }
.start-here li a span { display: block; color: var(--ink); font-family: var(--serif); font-size: 1.02rem; font-weight: 600; line-height: 1.4; }
.start-here li a small { display: block; margin-top: 3px; color: var(--muted); font-size: 12.5px; line-height: 1.45; }
.start-here li a:hover span { color: var(--forest); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.start-about { min-height: 44px; display: inline-flex; align-items: center; color: var(--forest); font-size: 13px; font-weight: 600; text-decoration: none; }
.start-about:hover { color: var(--accent); }
.foundation-strip {
  padding: 28px clamp(20px, 5vw, 68px) 22px;
  display: grid;
  grid-template-columns: minmax(170px, .72fr) minmax(0, 1.8fr);
  gap: clamp(25px, 5vw, 74px);
  align-items: end;
  border-bottom: 1px solid var(--line);
}
.eyebrow {
  margin: 0;
  color: var(--forest);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .15em;
  line-height: 1.4;
}
.foundation-intro h1,
.foundation-intro h2,
.map-intro h1,
.map-intro h2,
.topic-detail h2,
.articles-section h2 {
  margin: 8px 0 0;
  color: var(--ink);
  font-family: var(--serif);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: 1.25;
}
.foundation-intro h1,
.foundation-intro h2 { font-size: clamp(1.25rem, 2.2vw, 1.65rem); }
.foundation-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.foundation-card {
  min-height: 66px;
  padding: 10px 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 5px;
  background: rgba(251, 250, 244, .48);
  color: var(--body);
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  text-align: left;
  text-decoration: none;
}
.foundation-card span { color: var(--forest); font-size: 15px; font-weight: 600; line-height: 1.35; }
.foundation-card small { color: var(--muted); font-size: 12px; line-height: 1.25; }
.foundation-card:disabled { opacity: .68; cursor: not-allowed; }
.foundation-card.foundation-monitor { background: var(--forest); color: var(--paper); }
.foundation-monitor span, .foundation-monitor small { color: var(--paper); }
.foundation-monitor:hover { background: var(--forest-deep); }

.map-intro {
  padding: 54px clamp(20px, 5vw, 68px) 22px;
  display: flex;
  justify-content: space-between;
  gap: 30px;
  align-items: end;
}
.map-intro h1,
.map-intro h2 { font-size: clamp(1.75rem, 3.5vw, 2.7rem); }
.focus-line { max-width: 280px; margin: 0 0 3px; color: var(--muted); font-size: 15px; line-height: 1.55; }
.map-controls {
  padding: 0 clamp(20px, 5vw, 68px) 16px;
  display: flex;
  justify-content: space-between;
  gap: 25px;
  align-items: center;
}
.controls-label { margin: 0; color: var(--forest); font-size: 14px; font-weight: 600; letter-spacing: .04em; }
.controls-note { margin: 2px 0 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
.state-controls { display: flex; gap: 8px; }
.state-button {
  min-height: 44px;
  padding: 8px 14px;
  background: transparent;
  color: var(--forest);
  border: 1px solid var(--line);
  border-radius: 2px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -.01em;
}
.state-button:hover,
.state-button.is-active { background: var(--forest); color: var(--paper); border-color: var(--forest); }

.map-overview { padding: 0 clamp(20px, 5vw, 68px); }
.editorial-map {
  height: 430px;
  min-height: 430px;
  display: grid;
  grid-template-columns: .88fr 2.05fr .9fr;
  grid-template-rows: minmax(0, 1.28fr) minmax(0, 1fr);
  background: var(--forest);
  border: 1px solid var(--forest);
  transition: grid-template-columns .32s ease, grid-template-rows .32s ease;
}
.editorial-map[data-focus="fx"] { grid-template-columns: 1.45fr .95fr 1.75fr; grid-template-rows: minmax(0, 1.04fr) minmax(0, 1.4fr); }
.map-region {
  position: relative;
  min-width: 0;
  min-height: 0;
  padding: clamp(15px, 2.2vw, 24px);
  display: flex;
  flex-direction: column;
  background: var(--paper);
  overflow: hidden;
  transition: background-color .32s ease, color .32s ease;
}
.region-bonds { grid-column: 1; grid-row: 1 / 3; background: #dfe6da; }
.region-semiconductor { grid-column: 2; grid-row: 1; background: #c4d4c2; }
.region-ai { grid-column: 3; grid-row: 1; background: #e6d9c4; }
.region-companies { grid-column: 2; grid-row: 2; background: #f0e9da; }
.region-fx { grid-column: 3; grid-row: 2; background: #cbd9d2; }
.region-semiconductor,
.region-ai { border-right: 1px solid rgba(23, 62, 53, .17); }
.editorial-map[data-focus="ai"] .region-semiconductor,
.editorial-map[data-focus="ai"] .region-ai { background: var(--forest); color: var(--paper); }
.editorial-map[data-focus="ai"] .region-semiconductor .topic-area-link,
.editorial-map[data-focus="ai"] .region-ai .topic-area-link,
.editorial-map[data-focus="ai"] .region-semiconductor .topic-count,
.editorial-map[data-focus="ai"] .region-ai .topic-count,
.editorial-map[data-focus="ai"] .region-semiconductor .topic-question,
.editorial-map[data-focus="ai"] .region-ai .topic-question { color: var(--paper); }
.editorial-map[data-focus="ai"] .region-semiconductor .node-link,
.editorial-map[data-focus="ai"] .region-ai .node-link { color: #e9eee7; border-color: rgba(244, 241, 232, .38); }
.editorial-map[data-focus="ai"] .region-semiconductor .node-link small,
.editorial-map[data-focus="ai"] .region-ai .node-link small { color: inherit; opacity: .86; }
.editorial-map[data-focus="ai"] .region-semiconductor,
.editorial-map[data-focus="ai"] .region-ai { border-right-color: rgba(244, 241, 232, .4); }
.editorial-map[data-focus="fx"] .region-bonds,
.editorial-map[data-focus="fx"] .region-fx { background: var(--forest); color: var(--paper); }
.editorial-map[data-focus="fx"] .region-bonds .topic-area-link,
.editorial-map[data-focus="fx"] .region-fx .topic-area-link,
.editorial-map[data-focus="fx"] .region-bonds .topic-count,
.editorial-map[data-focus="fx"] .region-fx .topic-count,
.editorial-map[data-focus="fx"] .region-bonds .topic-question,
.editorial-map[data-focus="fx"] .region-fx .topic-question { color: var(--paper); }
.editorial-map[data-focus="fx"] .region-bonds .node-link,
.editorial-map[data-focus="fx"] .region-fx .node-link { color: #e9eee7; border-color: rgba(244, 241, 232, .38); }
.editorial-map[data-focus="fx"] .region-bonds .node-link small,
.editorial-map[data-focus="fx"] .region-fx .node-link small { color: inherit; opacity: .86; }
.editorial-map[data-focus="fx"] .region-bonds .prepared-node {
  color: #e9eee7;
  border-color: rgba(244, 241, 232, .38);
}
.editorial-map[data-focus="fx"] .region-bonds .prepared-node small {
  color: inherit;
  opacity: .86;
}

.topic-area-link {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  color: var(--forest);
  text-decoration: none;
}
.topic-area-link:hover strong { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.topic-index { color: var(--accent); font-size: 12px; letter-spacing: .08em; line-height: 1; }
.topic-area-link strong { margin-top: 8px; font-family: var(--serif); font-size: clamp(1.25rem, 2.3vw, 1.95rem); line-height: 1.25; }
.topic-question { max-width: 23ch; margin-top: 9px; color: var(--body); font-size: 14px; line-height: 1.5; }
.topic-count { margin-top: auto; padding-top: 16px; color: var(--muted); font-size: 13px; letter-spacing: .02em; }
.topic-nodes { margin-top: 12px; display: flex; flex-wrap: wrap; align-items: end; gap: 6px 8px; }
.prepared-node,
.node-link {
  min-height: 34px;
  padding: 5px 8px;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  color: var(--forest);
  border-top: 1px solid var(--line);
  font-size: 14px;
  line-height: 1.3;
  text-decoration: none;
}
.node-link:hover { border-color: var(--accent); color: var(--accent); }
.prepared-node small, .node-link small { color: var(--muted); font-size: 12px; }
.node-link { border-bottom: 1px solid var(--line); }

@media (min-width: 761px) {
  /* Small bottom regions keep the overview legible; their full child map is in the drilldown. */
  .editorial-map[data-focus="ai"] .region-companies .topic-nodes,
  .editorial-map[data-focus="ai"] .region-fx .topic-nodes,
  .editorial-map[data-focus="fx"] .region-semiconductor .topic-nodes,
  .editorial-map[data-focus="fx"] .region-ai .topic-nodes { display: none; }
}

.topic-detail {
  margin: 0 clamp(20px, 5vw, 68px);
  padding: 28px 0 0;
  border-top: 1px solid var(--line);
}
.detail-back {
  min-height: 44px;
  margin-bottom: 17px;
  padding: 8px 0;
  display: inline-flex;
  align-items: center;
  color: var(--forest);
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}
.detail-breadcrumb { margin: 0 0 6px; color: var(--muted); font-size: 12px; }
.detail-breadcrumb a { color: var(--forest); text-decoration: underline; text-underline-offset: 3px; }
.topic-detail h2 { font-size: clamp(1.7rem, 3.2vw, 2.45rem); }
.detail-lede { max-width: 58rem; margin: 11px 0 22px; color: var(--body); font-size: 16px; }
.detail-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.detail-spatial { min-height: 220px; padding: 16px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(78px, auto); background: var(--sage-light); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); gap: 1px; }
.detail-node { padding: 11px; display: flex; flex-direction: column; justify-content: space-between; background: rgba(251, 250, 244, .8); color: var(--forest); border: 1px solid var(--hairline); text-decoration: none; }
.detail-node:hover { background: var(--forest); color: var(--paper); }
.detail-node strong { font-family: var(--serif); font-size: 1.15rem; line-height: 1.25; }
.detail-node small { color: var(--muted); font-size: 13px; }
.detail-node:hover small { color: var(--paper); }
.detail-article { padding: 20px; display: flex; flex-direction: column; justify-content: space-between; background: var(--paper); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.detail-article-label { margin: 0 0 9px; color: var(--forest); font-size: 11px; font-weight: 600; letter-spacing: .1em; }
.detail-article h3 { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 1.3rem; line-height: 1.35; }
.detail-article p { margin: 11px 0 18px; color: var(--body); font-size: 14px; line-height: 1.65; }
.read-link { min-height: 44px; padding: 8px 0; display: inline-flex; align-items: center; color: var(--forest); border-bottom: 1px solid var(--forest); font-size: 13px; font-weight: 600; text-decoration: none; }
.read-link:hover { color: var(--accent); border-color: var(--accent); }
.detail-prepared { padding: 20px; background: #e9e6dc; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.detail-prepared h3 { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 1.15rem; }
.detail-prepared p { margin: 9px 0 0; color: var(--body); font-size: 14px; }

.articles-section { padding: 58px clamp(20px, 5vw, 68px) 70px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 25px; }
.articles-section h2 { font-size: clamp(1.7rem, 3vw, 2.35rem); }
.section-note { max-width: 230px; margin: 0 0 3px; color: var(--muted); font-size: 13px; line-height: 1.55; text-align: right; }
.article-list { margin-top: 22px; border-top: 1px solid var(--line); }
.article-row {
  min-height: 70px;
  padding: 13px 0;
  display: grid;
  grid-template-columns: minmax(155px, .45fr) minmax(0, 1.55fr) 24px;
  gap: 14px;
  align-items: center;
  color: var(--body);
  border-bottom: 1px solid var(--line);
  text-decoration: none;
}
.article-row:hover .article-row-title { color: var(--forest); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.article-row-meta { color: var(--muted); font-size: 12px; }
.article-row-main { min-width: 0; }
.article-row-title { display: block; color: var(--ink); font-family: var(--serif); font-size: 1.15rem; line-height: 1.35; }
.article-row-desc { display: block; margin-top: 4px; color: var(--muted); font-size: 14px; line-height: 1.55; }
.site-footer { padding: 24px clamp(20px, 5vw, 68px) 36px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.footer-mark { color: var(--forest); font-size: 18px; letter-spacing: -.04em; text-decoration: none; }
.site-footer p { margin: 6px 0 0; }
.footer-note { font-size: 11px; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .editorial-map, .map-region { transition: none; }
}

@media (max-width: 760px) {
  .site-header { padding: 16px 20px 30px; flex-wrap: wrap; gap: 14px; }
  .site-nav { margin-left: auto; }
  .prototype-meta { left: 20px; bottom: 8px; }
  .site-intro { padding-top: 34px; display: block; }
  .start-here { margin-top: 24px; }
  .foundation-strip { grid-template-columns: 1fr; gap: 17px; padding-top: 33px; }
  .map-intro { padding-top: 43px; display: block; }
  .focus-line { max-width: 35rem; margin-top: 11px; }
  .map-controls { display: block; }
  .state-controls { margin-top: 13px; }
  .editorial-map { height: 520px; min-height: 520px; grid-template-columns: 1.15fr .85fr; grid-template-rows: minmax(0, .95fr) minmax(0, 1.2fr) minmax(0, .95fr); }
  .editorial-map[data-focus="fx"] { grid-template-columns: .95fr 1.05fr; grid-template-rows: minmax(0, .95fr) minmax(0, 1.2fr) minmax(0, .95fr); }
  .editorial-map .region-bonds .topic-nodes,
  .editorial-map .region-companies .topic-nodes,
  .editorial-map .region-fx .topic-nodes { display: none; }
  .region-bonds { grid-column: 1 / 3; grid-row: 1; }
  .region-semiconductor { grid-column: 1; grid-row: 2; }
  .region-ai { grid-column: 2; grid-row: 2; }
  .region-companies { grid-column: 1; grid-row: 3; }
  .region-fx { grid-column: 2; grid-row: 3; }
  .editorial-map[data-focus="ai"] { grid-template-rows: minmax(0, .9fr) minmax(0, 1.2fr) minmax(0, 1fr); }
  .editorial-map[data-focus="ai"] .region-bonds { grid-column: 1; grid-row: 1; }
  .editorial-map[data-focus="ai"] .region-ai { grid-column: 2; grid-row: 1; }
  .editorial-map[data-focus="ai"] .region-semiconductor { grid-column: 1 / 3; grid-row: 2; }
  .editorial-map[data-focus="ai"] .region-companies { grid-column: 1; grid-row: 3; }
  .editorial-map[data-focus="ai"] .region-fx { grid-column: 2; grid-row: 3; }
  .detail-grid { grid-template-columns: 1fr; }
  .detail-spatial { border-right: 0; }
  .detail-article, .detail-prepared { border-right: 1px solid var(--line); }
  .article-row { grid-template-columns: 130px minmax(0, 1fr) 18px; gap: 10px; }
}

@media (max-width: 560px) {
  body { font-size: 17px; }
  .site-header { min-height: 68px; padding: 13px 20px 25px; flex-wrap: nowrap; }
  .site-nav { width: auto; margin-left: auto; gap: 18px; }
  .prototype-meta { bottom: 5px; }
  .foundation-strip { display: block; padding-top: 24px; padding-bottom: 13px; }
  .foundation-intro h1, .foundation-intro h2 { margin-top: 5px; }
  .foundation-links { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 10px; }
  .foundation-card { min-height: 72px; padding: 8px 9px; }
  .foundation-card span { font-size: 14px; }
  .foundation-card small { font-size: 13px; }
  .map-intro { padding-top: 30px; padding-bottom: 14px; }
  .map-intro h1, .map-intro h2 { font-size: 1.85rem; }
  .map-controls { padding-bottom: 10px; }
  .state-controls { display: grid; grid-template-columns: 1fr 1fr; }
  .state-button { width: 100%; padding-inline: 8px; font-size: 13px; }
  .editorial-map { height: 430px; min-height: 430px; display: grid; grid-template-columns: 1.2fr .8fr; grid-template-rows: minmax(0, .95fr) minmax(0, 1.2fr) minmax(0, .95fr); }
  .editorial-map[data-focus="fx"] { grid-template-columns: .8fr 1.2fr; grid-template-rows: minmax(0, .95fr) minmax(0, 1.2fr) minmax(0, .95fr); }
  .map-region,
  .region-bonds,
  .region-semiconductor,
  .region-ai,
  .region-companies,
  .region-fx { min-height: 0; }
  .topic-area-link strong { font-size: 1.35rem; }
  .topic-question { max-width: 30ch; font-size: 14px; }
  .topic-nodes { margin-top: 14px; }
  .prepared-node, .node-link { min-height: 44px; }
  .topic-detail { padding-top: 23px; }
  .detail-spatial { padding: 10px; grid-template-columns: 1fr 1fr; }
  .detail-node { min-height: 88px; }
  .article-row { min-height: 88px; grid-template-columns: 1fr 22px; gap: 5px 10px; }
  .article-row-meta { grid-column: 1 / 3; }
  .article-row-main { grid-column: 1; }
  .article-row-title { font-size: 1.08rem; }
  .site-intro { padding: 28px 20px 26px; }
  .site-intro h1 { font-size: 1.7rem; }
  .site-lede { font-size: 16px; }
  .site-promise li { grid-template-columns: 1fr; gap: 1px; }
  .start-here { padding: 14px 16px 10px; }
  .article-row > span:last-child { grid-column: 2; grid-row: 2; }
  .section-heading { display: block; }
  .section-note { margin-top: 9px; text-align: left; }
}

@media (max-width: 420px) {
  .editorial-map .topic-question,
  .editorial-map .topic-nodes { display: none; }
  .editorial-map,
  .editorial-map[data-focus="fx"] { height: 360px; min-height: 360px; grid-template-rows: minmax(0, .95fr) minmax(0, 1.2fr) minmax(0, .95fr); }
  .editorial-map[data-focus="fx"] { grid-template-columns: .82fr 1.18fr; grid-template-rows: minmax(0, .95fr) minmax(0, 1.2fr) minmax(0, .95fr); }
  .editorial-map[data-focus="ai"] { grid-template-rows: minmax(0, .9fr) minmax(0, 1.2fr) minmax(0, 1fr); }
  .editorial-map[data-focus="ai"] .region-bonds { grid-column: 1; grid-row: 1; }
  .editorial-map[data-focus="ai"] .region-ai { grid-column: 2; grid-row: 1; }
  .editorial-map[data-focus="ai"] .region-semiconductor { grid-column: 1 / 3; grid-row: 2; }
  .editorial-map[data-focus="ai"] .region-companies { grid-column: 1; grid-row: 3; }
  .editorial-map[data-focus="ai"] .region-fx { grid-column: 2; grid-row: 3; }
  .map-region,
  .region-bonds,
  .region-semiconductor,
  .region-ai,
  .region-companies,
  .region-fx { min-height: 0; padding: 13px; }
  .topic-area-link strong { font-size: 1.28rem; }
  .topic-count { padding-top: 8px; font-size: 13px; }
}

.static-topics{margin:24px 0;font-size:14px;line-height:2;color:#46533e}.static-topics a{text-underline-offset:4px}
