:root {
  --bg: #050816;
  --panel: #0f172a;
  --panel-2: #111827;
  --text: #e5e7eb;
  --muted: #94a3b8;
  --accent: #2dd4bf;
  --line: rgba(148, 163, 184, 0.18);
}

body {
  background: radial-gradient(circle at top, rgba(45, 212, 191, 0.08), transparent 38%), var(--bg);
  color: var(--text);
}

.site-header, .footer, .panel, .content-card {
  background: rgba(15, 23, 42, 0.92);
  border-color: var(--line);
}

.hero-section, .section {
  padding: 72px 0;
}

.hero-grid, .grid, .footer-grid {
  display: grid;
  gap: 20px;
}

.hero-grid {
  grid-template-columns: 1.2fr 0.8fr;
  align-items: start;
}

.cards-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cards-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.hero-copy p, .muted, .footer-note, .content-card p, .meta-list span { color: var(--muted); }

.content-card, .panel {
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 22px;
}

.kicker, .eyebrow {
  color: var(--accent);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.78rem;
}

.meta-list { list-style: none; padding: 0; margin: 18px 0 0; }
.meta-list li { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.meta-list li:last-child { border-bottom: 0; }

.actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }

.card-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.card-index {
  color: var(--accent);
  font-weight: 700;
  font-size: 0.9rem;
}

.route-grid {
  margin-bottom: 20px;
}

.route-card,
.diff-card,
.cta-band {
  background: linear-gradient(180deg, rgba(17, 24, 39, 0.96), rgba(15, 23, 42, 0.96));
}

.diff-card p,
.route-card p,
.cta-band h3 {
  margin: 0;
}

.cta-band {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 24px;
}

@media (max-width: 900px) {
  .hero-grid, .cards-3, .cards-2 { grid-template-columns: 1fr; }
  .cta-band { align-items: flex-start; }
}
