/* 02 Hammer Gothic: candle flicker, sea fog, a heavy vignette. Panels fade up from black. Never bounce. */
[data-world="hammer-gothic"] {
  --grain: 0.08;
  --enter: from-black 1100ms ease-out;
}
@keyframes from-black { from { opacity: 0; filter: brightness(0); } to { opacity: 1; filter: none; } }
@keyframes candle {
  0%, 100% { text-shadow: 0 0 22px color-mix(in srgb, var(--accent) 45%, transparent); }
  17% { text-shadow: 0 0 22px color-mix(in srgb, var(--accent) 38%, transparent); }
  23% { text-shadow: 0 0 22px color-mix(in srgb, var(--accent) 44%, transparent); }
  51% { text-shadow: 0 0 22px color-mix(in srgb, var(--accent) 36%, transparent); }
  58% { text-shadow: 0 0 22px color-mix(in srgb, var(--accent) 43%, transparent); }
}
@keyframes fog-drift { from { transform: translateX(-6%); } to { transform: translateX(6%); } }

[data-world="hammer-gothic"] body::before {
  content: ""; position: fixed; inset: 0; z-index: 0; pointer-events: none;
  background: radial-gradient(ellipse 80% 70% at 50% 40%, transparent 55%, color-mix(in srgb, var(--ground) 90%, black));
}
[data-world="hammer-gothic"] .hero-title { text-shadow: var(--glow); animation: candle 3s infinite; }
[data-world="hammer-gothic"] .btn-primary { box-shadow: none; }
[data-world="hammer-gothic"] .fog {
  position: absolute; inset: -20%; filter: blur(24px);
  background:
    radial-gradient(40% 25% at 30% 70%, color-mix(in srgb, var(--ink) 10%, transparent), transparent 70%),
    radial-gradient(35% 20% at 72% 78%, color-mix(in srgb, var(--ink) 8%, transparent), transparent 70%);
  animation: fog-drift 38s ease-in-out infinite alternate;
}
/* stage directions in italic, like an old broadside */
[data-world="hammer-gothic"] .eyebrow, [data-world="hammer-gothic"] .meta,
[data-world="hammer-gothic"] .empty, [data-world="hammer-gothic"] .tagline { font-style: italic; }
[data-world="hammer-gothic"] .site-nav a { font-size: 1rem; }
