*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --gold: #f5a623;
  --dark: #0c0c1e;
  --dark2: #10102a;
  --dark3: #181835;
  --header-bg: #080818;
  --card: #13132a;
  --card2: #1a1a38;
  --accent: #e63946;
  --text: #c0c8ec;
  --text-muted: #8890b8;
  --border: rgba(255,255,255,0.055);
}

html { scroll-behavior: smooth; }
body { font-family:'Nunito',sans-serif; background:var(--dark); color:var(--text); min-height:100vh; overflow-x:hidden; }

/* ── HEADER ── */
header {
  position:sticky; top:0; z-index:100;
  background:var(--header-bg);
  border-bottom:1px solid rgba(255,255,255,0.045);
  padding:0 20px; height:58px;
  display:flex; align-items:center; justify-content:space-between; gap:14px;
}

.logo { display:flex; align-items:center; text-decoration:none; flex-shrink:0; }
.logo img {
  height:36px;
  width:auto;
  object-fit:contain;
}
.logo-fallback {
  font-family:'Oswald',sans-serif; font-size:18px; font-weight:700; color:#fff; line-height:1;
  display:none;
}
.logo-fallback span { color:var(--gold); }
.logo img.broken + .logo-fallback { display:block; }

nav { display:flex; align-items:center; gap:2px; flex:1; justify-content:center; }
nav a { color:#8890b8; text-decoration:none; font-size:13px; font-weight:600; padding:6px 13px; border-radius:6px; transition:all .2s; white-space:nowrap; }
nav a:hover { background:var(--dark3); color:var(--gold); }

.header-btns { display:flex; gap:7px; flex-shrink:0; }
.btn { display:inline-flex; align-items:center; justify-content:center; padding:7px 18px; border-radius:6px; font-family:'Nunito',sans-serif; font-size:13px; font-weight:700; cursor:pointer; border:none; text-decoration:none; transition:all .2s; }
.btn-outline { background:transparent; border:1.5px solid rgba(245,166,35,.55); color:var(--gold); }
.btn-outline:hover { background:var(--gold); color:#000; border-color:var(--gold); }
.btn-primary { background:linear-gradient(135deg,#f5a623,#c97800); color:#000; box-shadow:0 3px 12px rgba(245,166,35,.28); }
.btn-primary:hover { transform:translateY(-1px); box-shadow:0 5px 18px rgba(245,166,35,.42); }

/* ── SLIDER ── */
.slider-wrap { position:relative; overflow:hidden; height:300px; background:#060610; }
.slider { display:flex; height:100%; transition:transform .65s cubic-bezier(.77,0,.18,1); }

.slide { min-width:100%; height:100%; position:relative; overflow:hidden; }

.slide img.banner-img {
  width:100%; height:100%; object-fit:cover; object-position:center;
  display:block;
}

.slide-1 { background:linear-gradient(135deg,#0c0520,#190a3e 45%,#0c0520); }
.slide-2 { background:linear-gradient(135deg,#130008,#2d0012 45%,#130008); }
.slide-3 { background:linear-gradient(135deg,#001220,#002c3e 45%,#001220); }

.slide-overlay {
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(5,5,20,.72) 0%, rgba(5,5,20,.25) 60%, transparent 100%);
  display:flex; align-items:center; padding:0 60px;
}

.slide-content { z-index:2; max-width:520px; }
.slide-tag { font-size:10px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:10px; }
.slide-title { font-family:'Oswald',sans-serif; font-size:clamp(24px,4.5vw,50px); font-weight:700; color:#fff; line-height:1.05; margin-bottom:10px; text-shadow:0 2px 20px rgba(0,0,0,.9); }
.slide-title em { color:var(--gold); font-style:normal; }
.slide-sub { font-size:13px; color:#c8d0e8; margin-bottom:22px; }

.slider-dots { position:absolute; bottom:12px; left:50%; transform:translateX(-50%); display:flex; gap:6px; z-index:10; }
.slider-dot { width:7px; height:7px; border-radius:4px; background:rgba(255,255,255,.25); cursor:pointer; transition:all .3s; border:none; }
.slider-dot.active { background:var(--gold); width:22px; }

.slider-arrow { position:absolute; top:50%; transform:translateY(-50%); width:34px; height:34px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:10; transition:all .2s; font-size:14px; color:rgba(255,255,255,.65); }
.slider-arrow:hover { background:var(--gold); color:#000; border-color:var(--gold); }
.slider-arrow.prev { left:12px; }
.slider-arrow.next { right:12px; }

/* ── SLOTS ── */
.slots-section { background:var(--dark2); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.slots-container { max-width:1240px; margin:0 auto; padding:28px 20px; }

.section-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }
.section-left { display:flex; align-items:center; gap:8px; }
.sec-icon { width:18px; height:18px; background:linear-gradient(135deg,var(--gold),#c07800); border-radius:4px; display:flex; align-items:center; justify-content:center; font-size:10px; }
.sec-dot { width:6px; height:6px; border-radius:50%; background:var(--gold); box-shadow:0 0 7px var(--gold); }
.section-title { font-family:'Oswald',sans-serif; font-size:17px; font-weight:600; color:#fff; }
.section-right { display:flex; align-items:center; gap:10px; }
.see-all { color:var(--gold); text-decoration:none; font-size:12px; font-weight:700; transition:opacity .2s; }
.see-all:hover { opacity:.65; }
.sec-nav { display:flex; gap:3px; }
.sec-nav-btn { width:26px; height:26px; background:var(--dark3); border:1px solid var(--border); border-radius:4px; display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--text-muted); font-size:11px; transition:all .2s; }
.sec-nav-btn:hover { background:var(--gold); color:#000; border-color:var(--gold); }

.slots-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:9px; }

.slot-card {
  aspect-ratio:3/4;
  border-radius:8px; background:var(--card);
  border:1px solid var(--border); overflow:hidden; position:relative;
  cursor:pointer; transition:all .22s;
}
.slot-card:hover { transform:translateY(-3px) scale(1.025); border-color:rgba(245,166,35,.4); box-shadow:0 8px 26px rgba(0,0,0,.6); }
.slot-card:hover .slot-overlay { opacity:1; }

.slot-card img.slot-img {
  width:100%; height:100%; object-fit:cover; object-position:center;
  display:block;
}

.slot-placeholder {
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  font-size:40px; opacity:.5;
}

.slot-wm { position:absolute; top:5px; left:6px; font-size:7px; font-weight:700; color:rgba(255,255,255,.35); text-transform:uppercase; letter-spacing:.4px; z-index:1; }
.slot-hot { position:absolute; top:5px; right:5px; background:#e63946; color:#fff; font-size:7px; font-weight:700; padding:2px 5px; border-radius:3px; text-transform:uppercase; letter-spacing:.4px; z-index:2; }

.slot-overlay { position:absolute; inset:0; background:rgba(4,4,18,.82); display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity .22s; z-index:3; }
.slot-play { padding:8px 20px; background:linear-gradient(135deg,var(--gold),#c07800); color:#000; font-weight:700; font-size:12px; border-radius:5px; font-family:'Nunito',sans-serif; }

.slot-info { position:absolute; bottom:0; left:0; right:0; padding:8px 9px; background:linear-gradient(0deg,rgba(4,4,18,.97) 0%,transparent 100%); z-index:1; }
.slot-name { font-size:10px; font-weight:700; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.slot-prov { font-size:8px; color:var(--text-muted); margin-top:1px; }

/* ── CONTENT ── */
.content-section { max-width:1240px; margin:0 auto; padding:42px 20px; }
h1 { font-family:'Oswald',sans-serif; font-size:clamp(22px,3.2vw,36px); font-weight:700; color:#fff; margin-bottom:22px; line-height:1.2; }
h1 span { color:var(--gold); }

.toc { background:var(--card2); border:1px solid var(--border); border-radius:9px; padding:18px 22px; margin-bottom:28px; max-width:400px; }
.toc-title { font-family:'Oswald',sans-serif; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:2px; color:var(--gold); margin-bottom:10px; }
.toc ol { list-style:none; counter-reset:toc; }
.toc ol li { counter-increment:toc; margin-bottom:5px; display:flex; gap:5px; align-items:baseline; }
.toc ol li::before { content:counter(toc)"."; color:var(--gold); font-weight:700; font-size:11px; flex-shrink:0; }
.toc a { color:#b0b8dc; text-decoration:none; font-size:12px; transition:color .2s; line-height:1.4; }
.toc a:hover { color:var(--gold); }

.article-text p { font-size:13px; line-height:1.75; color:#b0b8dc; margin-bottom:14px; }
.article-text h2 { font-family:'Oswald',sans-serif; font-size:19px; color:#fff; margin:26px 0 10px; }

/* ── CASINO INFO TABLE ── */
.casino-table-wrap {
  margin-bottom: 40px;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--border);
}

.casino-table-title {
  font-family: 'Oswald', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  background: var(--dark3);
  padding: 16px 22px;
  margin: 0;
  border-bottom: 1px solid var(--border);
  letter-spacing: 0.3px;
}

.casino-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--card);
}

.casino-table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,.05);
  transition: background .18s;
}

.casino-table tbody tr:last-child {
  border-bottom: none;
}

.casino-table tbody tr:hover {
  background: rgba(255,255,255,.03);
}

.ct-label {
  width: 30%;
  padding: 14px 20px;
  font-size: 13px;
  font-weight: 700;
  color: var(--gold);
  vertical-align: middle;
  border-right: 1px solid rgba(255,255,255,.05);
  white-space: nowrap;
}

.ct-icon {
  margin-right: 8px;
  font-size: 14px;
  vertical-align: middle;
}

.ct-value {
  padding: 14px 22px;
  font-size: 13px;
  color: #b0b8dc;
  vertical-align: middle;
  line-height: 1.55;
}

@media(max-width:640px) {
  .casino-table, .casino-table tbody, .casino-table tr, .ct-label, .ct-value {
    display: block;
    width: 100%;
  }
  .ct-label {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,.04);
    padding: 12px 16px 6px;
    white-space: normal;
  }
  .ct-value {
    padding: 6px 16px 12px;
  }
}

.casino-table-wrap {
  margin-bottom: 40px;
  border-radius: 10px;
  font-size: 12px;
  overflow: hidden;
  border: 1px solid var(--border);
}

.casino-table-title {
  font-family: 'Oswald', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  background: var(--dark3);
  padding: 16px 22px;
  margin: 0;
  border-bottom: 1px solid var(--border);
  letter-spacing: 0.3px;
}

.casino-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--card);
}

.casino-table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,.05);
  transition: background .18s;
}

.casino-table tbody tr:last-child {
  border-bottom: none;
}

.casino-table tbody tr:hover {
  background: rgba(255,255,255,.03);
}

.ct-label {
  width: 30%;
  padding: 14px 20px;
  font-size: 13px;
  font-weight: 700;
  color: var(--gold);
  vertical-align: middle;
  border-right: 1px solid rgba(255,255,255,.05);
  white-space: nowrap;
}

.ct-icon {
  margin-right: 8px;
  font-size: 14px;
  vertical-align: middle;
}

.ct-value {
  padding: 14px 22px;
  font-size: 13px;
  color: #b0b8dc;
  vertical-align: middle;
  line-height: 1.55;
}

@media(max-width:640px) {
  .casino-table, .casino-table tbody, .casino-table tr, .ct-label, .ct-value {
    display: block;
    width: 100%;
  }
  .ct-label {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,.04);
    padding: 12px 16px 6px;
    white-space: normal;
  }
  .ct-value {
    padding: 6px 16px 12px;
  }
}

.article-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.article-list li {
  position: relative;
  padding: 5px 8px 5px 43px;
  font-size: 12px;
  line-height: 1.6;
  background: var(--card2);
  border-radius: 6px;
  transition: background .2s, border-color .2s;
}

.article-list li:hover {
  background: #1e1e3a;
  border-left-color: var(--gold);
}

.article-list li::before {
  content: '';
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 6px rgba(245,166,35,.5);
  flex-shrink: 0;
}

.article-list li strong {
  color: #fff;
  font-weight: 700;
}

/* ── FAQ ── */

.faq-section { max-width:1240px; margin:0 auto; padding:0 20px 44px; }
.faq-title { font-family:'Oswald',sans-serif; font-size:22px; color:#fff; margin-bottom:18px; }
.faq-item { border:1px solid var(--border); border-radius:7px; margin-bottom:7px; overflow:hidden; background:var(--card); transition:border-color .2s; }
.faq-item.open { border-color:rgba(245,166,35,.22); }
.faq-question { width:100%; background:none; border:none; padding:15px 18px; text-align:left; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:10px; color:#ccd0f0; font-family:'Nunito',sans-serif; font-size:13px; font-weight:700; }
.faq-icon { flex-shrink:0; width:19px; height:19px; border-radius:50%; background:var(--dark3); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--gold); transition:transform .3s; }
.faq-item.open .faq-icon { transform:rotate(45deg); background:var(--gold); color:#000; }
.faq-answer { max-height:0; overflow:hidden; transition:max-height .4s ease,padding .3s; padding:0 18px; font-size:13px; line-height:1.7; color:var(--text-muted); }
.faq-item.open .faq-answer { max-height:280px; padding:0 18px 15px; }

/* ── FOOTER ── */
footer {
  background: #1e1e2e;
  border-top: 1px solid rgba(255,255,255,.04);
}

.footer-main {
  max-width: 1240px;
  margin: 0 auto;
  padding: 36px 20px 28px;
  display: grid;
  grid-template-columns: 200px 1fr auto;
  align-items: start;
  gap: 40px;
}

.footer-logo { display:flex; align-items:center; text-decoration:none; }
.footer-logo img {
  height: 32px;
  width: auto;
  object-fit: contain;
}
.footer-logo-fallback {
  font-family:'Oswald',sans-serif; font-size:22px; font-weight:700; color:#fff;
}
.footer-logo-fallback span { color:var(--gold); }

.footer-nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 48px;
  align-content: start;
}

.footer-nav a {
  color: #b8c0e0;
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  transition: color .2s;
  white-space: nowrap;
}
.footer-nav a:hover { color: #fff; }

/* Соцсети */
.social {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin: 0;
  padding: 0;
}
.social__item { display: flex; }
.social__link {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .2s, filter .2s;
  border-radius: 50%;
}
.social__link:hover {
  transform: scale(1.12);
  filter: brightness(1.15);
}
.social__link img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  display: block;
}

.footer-divider {
  border: none;
  border-top: 1px solid rgba(255,255,255,.06);
  margin: 0;
}

.footer-payments-row {
  max-width: 1240px;
  margin: 0 auto;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
}

.footer__logos {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin: 0;
  padding: 0;
}
.footer__logos-item {
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer__logos-item img {
  filter: brightness(0) saturate(100%)
          invert(27%) sepia(90%) saturate(1600%)
          hue-rotate(330deg) brightness(105%);
  object-fit: contain;
  transition: filter .2s, transform .2s;
  max-height: 36px;
  width: auto;
}
.footer__logos-item img:hover {
  filter: brightness(0) saturate(100%)
          invert(27%) sepia(90%) saturate(1600%)
          hue-rotate(330deg) brightness(140%);
  transform: scale(1.1);
}

.footer-bottom-row {
  max-width: 1240px;
  margin: 0 auto;
  padding: 16px 20px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
}

.footer-cert-icon {
  color: #8890b8;
  font-size: 10px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 5px;
  text-decoration: none;
  transition: color .2s;
}
.footer-cert-icon:hover { color: #c0c8e8; }
.footer-cert-icon svg { width:24px; height:24px; fill:#8890b8; }

.footer-cert-text {
  font-size: 11px;
  color: #9098c0;
  font-weight: 600;
  opacity: 0.9;
}

.footer-copy-row {
  background: #17172a;
  border-top: 1px solid rgba(255,255,255,.04);
  padding: 12px 20px;
  text-align: center;
  font-size: 11px;
  color: #8890b8;
}

/* ── RESPONSIVE ── */
@media(max-width:900px) {
  nav { display:none; }
  .footer-main { grid-template-columns:1fr; gap:24px; }
  .social { justify-content:flex-start; }
  .slots-grid { grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); }
  .slider-wrap { height:220px; }
  .slide-overlay { padding:0 24px; }
}