/* generated by build.mjs — edit themes/themes.mjs instead */
:root {
  --bg: #120609;
  --bg-gradient: radial-gradient(60% 50% at 50% 0%, rgba(201,162,39,0.16), transparent 60%), radial-gradient(80% 60% at 50% 120%, rgba(142,90,90,0.2), transparent 70%);
  --surface: rgba(30,12,16,0.8);
  --ink: #f3e6d8;
  --ink-dim: #a98b80;
  --accent: #c9a227;
  --accent-2: #c98b8b;
  --on-accent: #160709;
  --line: rgba(201,162,39,0.24);
  --sign-ink: #c9a227;
  --sign-tracking: 0.16em;
  --card-radius: 2px;
  --card-border: 1px solid rgba(201,162,39,0.3);
  --grain-opacity: 0.05;
  --vignette: radial-gradient(110% 90% at 50% 45%, transparent 30%, rgba(0,0,0,0.72) 100%);
  --font-display: "Playfair Display", Georgia, serif;
  --font-body: "Cormorant Garamond", system-ui, -apple-system, sans-serif;
  --grain-url: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
      .arch{position:absolute;left:50%;top:8vh;transform:translateX(-50%);height:80vh;opacity:.75}
      .candle{position:absolute;left:8vw;bottom:8vh;width:14px;height:88px;border-radius:3px;
        background:linear-gradient(180deg,#f3e6d8,#c9a22766);opacity:.65}
      .flame{position:absolute;left:50%;top:-22px;transform:translateX(-50%);
        width:14px;height:24px;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;
        background:radial-gradient(circle at 50% 70%,#fff3c4,#ff9a1f 55%,transparent 72%);
        box-shadow:0 0 50px 16px rgba(255,154,31,.28)}
      .smoke{position:absolute;left:8vw;bottom:16vh;width:200px;height:40vh;
        background:radial-gradient(40% 30% at 30% 100%,rgba(255,255,255,.05),transparent 70%);
        filter:blur(12px)}
      @media(max-width:640px){.candle,.smoke{opacity:.3}}
