/* ── Rama Gothic C — self-hosted ─────────────────────────────── */
@font-face {
  font-family: 'Rama Gothic C';
  src: url('../font/Rama_Gothic_C_Thin.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Rama Gothic C';
  src: url('../font/Rama_Gothic_C_Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Rama Gothic C';
  src: url('../font/Rama_Gothic_C_Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Rama Gothic C';
  src: url('../font/Rama_Gothic_C_SemiBold.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Rama Gothic C';
  src: url('../font/Rama_Gothic_C_Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Rama Gothic C';
  src: url('../font/Rama_Gothic_C_Heavy.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* ── Background layer ─────────────────────────────────────────── */
#bg-layer {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

#bg-video,
#bg-poster-fallback {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

#fog-canvas {
  position: absolute;
  inset: 0;
  z-index: 1;
  /* pointer-events managed by JS — canvas handles wipe, content divs handle scroll */
  pointer-events: auto;
  cursor: crosshair;
}

/* ── Page content shell ───────────────────────────────────────── */
[data-barba="wrapper"] {
  position: fixed;
  inset: 0;
  z-index: 2;
  pointer-events: none; /* children opt in */
}

#page-content {
  position: absolute;
  inset: 0;
  pointer-events: none;
  transition: opacity 0.1s ease;
}

/* ── Reduced motion: pause video, freeze fog ──────────────────── */
@media (prefers-reduced-motion: reduce) {
  #bg-video { animation: none !important; }
  #fog-canvas { pointer-events: none !important; }
}
