
:root{
  --crimson:#AA0000;
  --crimson-deep:#7a0000;
  --gold:#D4AF37;
  --ink:#0a0a0a;
  --paper:#f5efe8;
  --muted:#b88a2a;
  --radius:16px;
  --shadow:0 10px 30px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background: radial-gradient(1200px 600px at 50% -10%, rgba(212,175,55,.08), transparent) var(--ink);
  color:#eee; font: 16px/1.65 ui-serif, Georgia, "Times New Roman", serif;
}
.wrap{width:min(1100px,92vw); margin:0 auto;}
.site-header{
  position:sticky; top:0; z-index:20;
  backdrop-filter:saturate(1.2) blur(10px);
  background: linear-gradient(180deg, rgba(10,10,10,.85), rgba(10,10,10,.60));
  border-bottom:1px solid rgba(212,175,55,.15);
}
.site-header .wrap{display:flex; align-items:center; justify-content:space-between; padding:10px 0;}
.brand{display:flex; align-items:center; gap:.6rem; text-decoration:none; color:#fff;}
.brand img{height:28px; width:auto; display:block; filter:drop-shadow(0 2px 4px rgba(0,0,0,.35));}
.brand-text{letter-spacing:.18em; font-weight:700;}
.nav a{color:#ddd; text-decoration:none; margin-left:1.1rem;}
.nav a:hover{color:var(--gold);}
.hero{position:relative; min-height:66vh; display:flex; align-items:center;}
.hero-bg{
  position:absolute; inset:0; background-size:cover; background-position:center;
  filter:contrast(1.05) saturate(1.2) brightness(.9);
}
.hero::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.6));
}
.hero-inner{position:relative; z-index:1; padding:8vh 0;}
.hero-title{font-size:clamp(42px,6.5vw,86px); margin:0 0 .3rem; color:var(--gold); letter-spacing:.14em; text-align:center;}
.hero-kicker{margin:.25rem 0 1.2rem; color:#f0e6d0; opacity:.92; text-align:center;}
.cta-row{display:flex; gap:.8rem; flex-wrap:wrap; justify-content:center;}
.btn{
  display:inline-block; padding:.75rem 1.05rem; border-radius:999px; text-decoration:none;
  border:1px solid transparent; transition:.2s ease; font-weight:600; letter-spacing:.03em;
}
.btn-gold{background:var(--gold); color:#211a04;}
.btn-gold:hover{filter:brightness(1.05); transform:translateY(-1px);}
.btn-ghost{border-color:rgba(212,175,55,.55); color:#f5f1e6; background:transparent;}
.btn-ghost:hover{background:rgba(212,175,55,.10);}
.cn-badge{margin-top:1.2rem; text-align:center;}
.cn-badge img{height:36px; width:auto; opacity:.95;}
.section{padding:64px 0;}
.section.alt{background:linear-gradient(180deg, #101010, #0b0b0b);}
h2{color:#ffe6a8; letter-spacing:.06em; margin:.2rem 0 1rem; text-align:left;}
.sub{opacity:.8; margin-top:-.4rem; margin-bottom:1rem;}
.grid.two{display:grid; gap:1.25rem; grid-template-columns:repeat(2,1fr);}
@media (max-width:900px){ .grid.two{grid-template-columns:1fr;} }
.video-embed{position:relative; width:100%; aspect-ratio:16/9; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); border:1px solid rgba(212,175,55,.15);}
.video-embed iframe{position:absolute; inset:0; width:100%; height:100%;}
.cards{display:grid; gap:14px; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); margin-top:.6rem;}
.card{
  background:linear-gradient(180deg, #141414, #0e0e0e);
  border:1px solid rgba(212,175,55,.14); border-radius:12px; padding:14px 16px;
  text-decoration:none; color:#eee; transition:.18s ease; box-shadow:0 6px 18px rgba(0,0,0,.26);
}
.card:hover{transform:translateY(-2px); border-color:rgba(212,175,55,.35); box-shadow:0 10px 26px rgba(0,0,0,.36);}
.card-title{font-weight:700; color:#f6e7b8;}
.card-meta{opacity:.75; margin-top:.25rem; color:#d9c79a;}
.doors{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px;}
.door{
  padding:.7rem 1rem; border-radius:10px; border:1px dashed rgba(212,175,55,.35);
  color:#e9d9a8; text-decoration:none; background:rgba(212,175,55,.06);
}
.list{margin:0; padding-left:1rem;}
.list li{margin:.35rem 0;}
.list a{color:#f0e6d0;}
.list a:hover{color:var(--gold);}
.site-footer{
  border-top:1px solid rgba(212,175,55,.18);
  background:linear-gradient(180deg, #0b0b0b, #060606);
  color:#cfc6b0; padding:36px 0 60px; font-size:.94rem;
}
.site-footer .wrap p{margin:.4rem 0;}
