:root {
  --surface: #ffffff;
  --canvas: #f6f4ef;
  --ink: #172033;
  --muted: #5c667a;
  --accent: #1646c8;
  --action: #ffd54a;
  --border: #d9dce3;
  --measure: 68rem;
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 3rem;
  color: var(--ink);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--canvas); color: var(--ink); line-height: 1.6; }
a { color: inherit; }
a:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
img { display: block; max-width: 100%; width: auto; height: auto; object-fit: contain; }

.skip-link {
  padding: .75rem 1rem;
  position: fixed;
  top: .5rem;
  left: .5rem;
  z-index: 100;
  transform: translateY(-160%);
  background: var(--ink);
  color: #ffffff;
}
.skip-link:focus { transform: none; }

.site-header {
  width: min(var(--measure), 100%);
  margin: 0 auto;
  padding: var(--space-2) clamp(var(--space-2), 4vw, var(--space-5));
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-2);
  align-items: center;
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}
.brand { color: var(--accent); font-weight: 750; }
.edition-meta { color: var(--muted); }
.mdx-masthead .mdx-media { grid-column: 1 / -1; }

.spatial-section {
  width: min(var(--measure), 100%);
  margin: 0 auto;
  padding: clamp(var(--space-4), 7vw, var(--space-5)) clamp(var(--space-2), 4vw, var(--space-5));
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-3);
  border-top: 1px solid var(--border);
  background: var(--surface);
}
.spatial-section:first-child { border-top: 0; }
.spatial-heading h1,
.spatial-heading h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(2rem, 6vw, 4.25rem);
  line-height: 1.08;
  text-wrap: balance;
}
.spatial-copy { width: 100%; max-width: 62ch; }
.spatial-copy > :first-child { margin-top: 0; }
.spatial-copy > :last-child { margin-bottom: 0; }
.mdx-layout,
.spatial-media-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(17rem, 100%), 1fr));
  gap: var(--space-2);
  align-items: start;
}
.spatial-media,
.spatial-masthead { margin: 0; }
.spatial-media img,
.spatial-masthead img { margin-inline: auto; }

.spatial-split { grid-template-columns: minmax(0, .95fr) minmax(18rem, 1.05fr); }
.spatial-split .spatial-heading,
.spatial-split .spatial-copy { grid-column: 1; }
.spatial-split .mdx-split { grid-column: 2; grid-row: 1 / span 2; grid-template-columns: minmax(0, 1fr); }
.mdx-showcase { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.spatial-statement { background: var(--ink); color: #ffffff; }
.spatial-statement .spatial-heading h1,
.spatial-statement .spatial-heading h2 { color: #ffffff; }

.media-action,
.section-action,
.source-pdf-link {
  display: inline-flex;
  min-height: 2.75rem;
  padding: .65rem .9rem;
  align-items: center;
  background: var(--action);
  color: #111;
  font-weight: 750;
  text-decoration: none;
}
.media-actions,
.section-actions {
  margin-top: var(--space-1);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
}

.site-footer {
  width: min(var(--measure), 100%);
  margin: 0 auto;
  padding: var(--space-4) clamp(var(--space-2), 4vw, var(--space-5));
  display: grid;
  gap: var(--space-3);
  background: var(--surface);
  border-top: 1px solid var(--border);
}
.issue-nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: var(--space-1) var(--space-3);
}
.issue-nav p { grid-column: 1 / -1; margin: 0; font-weight: 750; }
.issue-nav a { padding-block: .5rem; }
.social-nav { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.social-nav a { display: inline-flex; min-width: 2.75rem; min-height: 2.75rem; align-items: center; justify-content: center; }

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

:lang(hi) body { line-height: 1.72; }
:lang(hi) .spatial-heading h1,
:lang(hi) .spatial-heading h2 { line-height: 1.22; padding-top: .12em; }

@media (max-width: 760px) {
  .site-header { grid-template-columns: minmax(0, 1fr); }
  .spatial-section { padding-block: var(--space-4); }
  .spatial-split,
  .mdx-showcase { grid-template-columns: minmax(0, 1fr); }
  .spatial-split .spatial-heading,
  .spatial-split .spatial-copy,
  .spatial-split .mdx-split { grid-column: 1; grid-row: auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
