:root {
  --bg-navy: #091221;
  --teal: #1D9E75;
  --teal-mid: #5DCAA5;
  --gold: #C9A84C;
  --gold-dark: #B8952F;
  --white: #ffffff;
  --muted: rgba(255,255,255,0.4);
  --grid-line: rgba(100, 180, 255, 0.05);
  --danger-red: #e24b4a;
  --font-serif: 'Fraunces', serif;
  --font-mono: 'DM Mono', monospace;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; background-color: var(--bg-navy) !important; }

body {
  background-color: var(--bg-navy) !important;
  font-family: var(--font-serif);
  color: var(--white);
  -webkit-font-smoothing: antialiased;
}

/* ── Horizontal Anchor Logo ── */
.brand-header {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  user-select: none;
  color: inherit;
  outline: none;
}
.brand-header:visited,
.brand-header:hover,
.brand-header:active,
.brand-header:focus { color: inherit; text-decoration: none; outline: none; }
.brand-datum {
  font-family: var(--font-serif);
  font-size: 22px;
  font-weight: 300;
  letter-spacing: 0.15em;
  color: var(--teal-mid);
  position: relative;
  padding-bottom: 4px;
}
.brand-datum::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 4%;
  width: 92%;
  height: 2px;
  background-color: var(--gold);
  border-radius: 2px;
  box-shadow: 0 1px 4px rgba(201, 168, 76, 0.4);
}
.brand-fi {
  font-family: var(--font-mono);
  font-size: 16px;
  font-weight: 300;
  letter-spacing: 0.1em;
  color: var(--teal-mid);
  margin-left: 10px;
  transform: translateY(1px);
  display: inline-block;
}

/* ── Shared page H1 ── */
.page-h1 {
  font-family: var(--font-serif);
  font-weight: 700;
  font-style: italic;
  font-size: clamp(42px, 8vw, 76px);
  color: var(--gold);
  line-height: 1.05;
  margin-bottom: 8px;
}

/* ── Hero color hierarchy ── */
.hero-title   { color: var(--white); }
.hero-subtitle { color: var(--gold); }
