
/* Circus of Souls - Dark Carnival Theme */
:root{
  --bg:#0b0b0f;
  --panel:#14141c;
  --accent:#d43c2f;
  --accent2:#f0b90b;
  --ink:#e8e6e3;
  --muted:#a3a3ad;
  --glow: 0 0 40px rgba(212,60,47,.25);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:radial-gradient(1200px 700px at 70% -10%,rgba(212,60,47,.08),transparent),var(--bg);color:var(--ink);font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Helvetica Neue, Arial, "Apple Color Emoji","Segoe UI Emoji";}
a{color:var(--accent2);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:24px}
.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0}
.brand{display:flex;align-items:center;gap:12px}
.logo{
  width:40px;height:40px;border-radius:10px;background:
  radial-gradient(14px 14px at 30% 30%,rgba(240,185,11,.9),transparent 70%),
  radial-gradient(18px 18px at 70% 70%,rgba(212,60,47,.9),transparent 70%),
  linear-gradient(135deg,#2b2b37,#0f0f17);
  box-shadow: var(--glow);
}
h1,h2,h3{margin:0 0 8px}
.nav a{margin-left:16px}
.hero{
  margin:24px 0;
  padding:48px 28px;
  background:linear-gradient(180deg,rgba(20,20,28,.8),rgba(11,11,15,.6));
  border:1px solid rgba(255,255,255,.06);
  border-radius:18px;
  position:relative;
  overflow:hidden;
  box-shadow: var(--glow);
}
.hero:before{
  content:"";position:absolute;inset:-2px;
  background: radial-gradient(500px 280px at 10% -10%, rgba(240,185,11,.12), transparent 60%),
              radial-gradient(600px 360px at 100% 0%, rgba(212,60,47,.10), transparent 60%);
  z-index:0;pointer-events:none;
}
.hero-inner{position:relative;z-index:1}
.kicker{color:var(--accent2);letter-spacing:.12em;font-weight:700;text-transform:uppercase;font-size:.8rem}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.button{
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(212,60,47,.22),rgba(212,60,47,.10));
  color:var(--ink);font-weight:600;text-decoration:none;
  box-shadow:var(--glow);
}
.button.secondary{background:linear-gradient(180deg,rgba(240,185,11,.18),rgba(240,185,11,.08))}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.card{
  grid-column: span 12;
  background:var(--panel);
  border:1px solid rgba(255,255,255,.06);
  border-radius:16px;padding:18px;
}
@media(min-width:800px){
  .card.half{grid-column: span 6}
}
.badge{display:inline-block;padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);color:var(--muted);font-size:.85rem}
.qr-wrap{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:10px}
.qr{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:12px;
}
.qr img{width:132px;height:132px;object-fit:contain;border-radius:8px;background:#fff}
.small{color:var(--muted);font-size:.9rem}
.footer{margin:40px 0 20px;color:var(--muted);text-align:center;font-size:.9rem}
hr{border:0;border-top:1px solid rgba(255,255,255,.08);margin:18px 0}
.copy-link{font-size:.85rem;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:6px 10px;cursor:pointer}
.success{color:#7ee787;font-size:.9rem;margin-left:8px;display:none}
