/* T-021 v2 landing — moody-dark editorial. Scoped to / via index.astro only. */
:root {
  --bg: #0d0e10;
  --bg-soft: #14161a;
  --fg: #e9e7df;
  --fg-mute: #8a8780;
  --hairline: rgba(233, 231, 223, 0.08);
  /* The single accent. Reserved for §2 live-state pulse only. Final hue TBD
     by marketing (calm amber vs. muted cyan); stub to amber for now. */
  --accent: #d6a15a;
  --serif: 'Iowan Old Style', 'Charter', 'Georgia', serif;
  --sans: ui-sans-serif, system-ui, -apple-system, 'Inter', sans-serif;
}

html, body {
  background: var(--bg);
  color: var(--fg);
  font-family: var(--sans);
  margin: 0;
  -webkit-font-smoothing: antialiased;
}

.landing {
  min-height: 100vh;
}

.landing section {
  max-width: 72rem;
  margin: 0 auto;
  padding: 9rem 2rem;
}

.landing h1, .landing h2, .landing h3 {
  font-family: var(--serif);
  font-weight: 400;
  letter-spacing: -0.01em;
}

.landing .caption {
  color: var(--fg-mute);
  font-size: 0.95rem;
  letter-spacing: 0.02em;
}

/* §2 accent — only place the page wears the accent. */
.org-pulse {
  stroke: var(--accent);
}

@keyframes org-pulse-loop {
  0%, 100% { opacity: 0.35; }
  50%      { opacity: 1; }
}

.org-pulse-active {
  animation: org-pulse-loop 4.2s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  .org-pulse-active { animation: none; opacity: 0.6; }
}
