:root{
  --bg:#0a0a0c; --bg2:#101015;
  --panel:#141418; --panel2:#1b1b21;
  --ink:#d6d6d0; --dim:#7c7c85; --faint:#54545c;
  --red:#c0392b; --redglow:#ff3b2f; --amber:#e0a24b;
  --line:#26262d;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(1200px 600px at 50% -10%, #17131a 0%, transparent 60%),
    radial-gradient(900px 500px at 100% 20%, #14171c 0%, transparent 55%),
    var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,sans-serif;
  min-height:100vh;overflow-x:hidden;
}

/* Атмосфера */
#grain,#vignette{position:fixed;inset:0;pointer-events:none;z-index:1}
#vignette{box-shadow:inset 0 0 240px 30px #000;background:radial-gradient(ellipse at center,transparent 62%,rgba(0,0,0,.5))}
#grain{opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
body>*{position:relative;z-index:2}

/* Шапка */
.nav{display:flex;align-items:center;justify-content:space-between;
  padding:18px 6vw;position:sticky;top:0;z-index:50;
  background:rgba(10,10,12,.72);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand-mark{font-size:22px;color:var(--redglow);text-shadow:0 0 14px rgba(255,59,47,.6)}
.brand-name{font-family:'Special Elite';letter-spacing:2px;font-size:18px}
.brand-name b{color:var(--redglow);font-weight:400}
.nav-links{display:flex;gap:26px}
.nav-links a{color:var(--dim);text-decoration:none;font-size:14px;letter-spacing:.5px;transition:.2s}
.nav-links a:hover{color:var(--ink)}

/* Герой */
.hero{text-align:center;padding:78px 6vw 54px;max-width:820px;margin:0 auto}
.hero-tag{font-family:'VT323';font-size:18px;color:var(--amber);letter-spacing:2px;text-transform:uppercase;opacity:.9}
.hero-title{font-family:'Special Elite';font-weight:400;font-size:clamp(44px,9vw,88px);line-height:.98;margin:16px 0;letter-spacing:2px}
.hero-title span{color:var(--redglow);text-shadow:0 0 30px rgba(255,59,47,.35)}
.hero-sub{color:var(--dim);font-size:17px;line-height:1.6;max-width:560px;margin:0 auto 26px}
.hero-btn{display:inline-block;font-family:'Special Elite';letter-spacing:1px;
  background:var(--panel2);border:1px solid var(--line);color:var(--ink);
  padding:14px 30px;border-radius:8px;text-decoration:none;transition:.2s}
.hero-btn:hover{border-color:var(--redglow);color:#fff;box-shadow:0 0 26px rgba(255,59,47,.25);transform:translateY(-2px)}

/* Вкладки-фильтры */
.tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;padding:8px 6vw 30px}
.tab{font-family:'VT323';font-size:18px;background:var(--panel);border:1px solid var(--line);
  color:var(--dim);padding:8px 20px;border-radius:20px;cursor:pointer;transition:.2s;letter-spacing:.5px}
.tab:hover{color:var(--ink);border-color:var(--faint)}
.tab.active{color:#fff;border-color:var(--redglow);background:#20161a;box-shadow:0 0 16px rgba(255,59,47,.2)}

/* Каталог */
.grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  max-width:1120px;margin:0 auto;padding:0 6vw 60px}
.card{position:relative;aspect-ratio:1/1;border-radius:16px;overflow:hidden;
  border:1px solid var(--line);text-decoration:none;color:var(--ink);
  display:flex;flex-direction:column;justify-content:flex-end;
  background:var(--panel);transition:transform .3s,box-shadow .3s,border-color .3s}
.card:hover{transform:translateY(-6px);border-color:var(--redglow);
  box-shadow:0 18px 50px rgba(0,0,0,.6),0 0 30px rgba(255,59,47,.12)}
.card-cover{position:absolute;inset:0;background-image:var(--cover);background-size:cover;
  background-position:center;filter:grayscale(.35) contrast(1.05) brightness(.72);transition:.5s}
.card:hover .card-cover{filter:grayscale(0) contrast(1.1) brightness(.85);transform:scale(1.06)}
.card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,10,.15) 0%,rgba(8,8,10,.55) 45%,rgba(8,8,10,.96) 100%)}
.card-badges{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:flex-start;gap:8px;z-index:3}
.badge{font-family:'VT323';font-size:14px;padding:4px 10px;border-radius:6px;letter-spacing:.5px;white-space:nowrap}
.b-play{background:var(--redglow);color:#fff;box-shadow:0 0 16px rgba(255,59,47,.5);opacity:0;transform:translateY(-6px);transition:.3s}
.card:hover .b-play{opacity:1;transform:translateY(0)}
.b-cat{background:rgba(0,0,0,.55);color:var(--dim);border:1px solid var(--line)}
.b-soon{background:rgba(0,0,0,.6);color:var(--amber);border:1px solid var(--amber)}
.card-body{position:relative;z-index:3;padding:20px}
.card-case{font-family:'VT323';font-size:15px;color:var(--redglow);letter-spacing:2px;margin-bottom:4px}
.card-title{font-family:'Special Elite';font-size:24px;font-weight:400;margin-bottom:8px;line-height:1.1}
.card-desc{color:#b3b3ad;font-size:13.5px;line-height:1.5;margin-bottom:12px}
.card-meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-family:'VT323';font-size:14px;color:var(--dim)}
.card-meta .diff{color:var(--amber);width:100%}

/* «Скоро» */
.card.soon{cursor:default}
.card.soon:hover{transform:none;border-color:var(--line);box-shadow:none}
.card.soon .card-cover{filter:grayscale(1) brightness(.4)}
.card.soon:hover .card-cover{transform:none;filter:grayscale(1) brightness(.4)}
.card.soon .card-title,.card.soon .card-case{color:var(--faint)}
.card.soon .card-title{color:#8c8c94}
.cover-2{background:radial-gradient(circle at 30% 20%,#241a1a,#0d0d10)}
.cover-3{background:radial-gradient(circle at 70% 30%,#1a2024,#0d0d10)}
.cover-4{background:radial-gradient(circle at 50% 60%,#201a24,#0d0d10)}

.empty{text-align:center;color:var(--dim);font-family:'VT323';font-size:20px;padding:20px 6vw 70px}

/* Как играть */
.about{max-width:1000px;margin:0 auto;padding:40px 6vw 20px}
.about h2{font-family:'Special Elite';font-weight:400;font-size:30px;text-align:center;margin-bottom:30px;letter-spacing:1px}
.about-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.about-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px;text-align:center}
.ac-ico{font-size:36px;margin-bottom:10px}
.about-card b{display:block;font-family:'Special Elite';font-weight:400;font-size:18px;margin-bottom:8px;color:#e6e6e0}
.about-card p{color:var(--dim);font-size:14px;line-height:1.6}

/* Подвал */
.foot{display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:50px 6vw 40px;margin-top:30px;border-top:1px solid var(--line);color:var(--faint);font-size:13px}
.foot .brand-name{font-size:16px}

@media(max-width:560px){
  .nav{padding:14px 5vw}
  .nav-links{gap:16px}
  .hero{padding:54px 5vw 40px}
  .grid{grid-template-columns:1fr;gap:18px}
}
