/* === Палитра и базовые переменные === */
:root {
  --c-canvas: #252211;
  --c-block: #1d152a;
  --c-card: #27251c;
  --c-text: #f5f5f5;
  --c-accent: #9ef129;
  --c-accent-fg: #0a0f0a;
  --c-muted: #b8b29a;
  --ff: Georgia, 'Times New Roman', serif;
  --r-sharp: 0px;
  --r-card: 14px;
}

/* === Основной блок === */
.p1_4872960d1e_main {
  background: var(--c-canvas);
  color: var(--c-text);
  font-family: var(--ff);
  font-size: 1rem;
  line-height: 1.7;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 0 48px;
}

/* === Типография === */
.p1_4872960d1e_h1 {
  font-size: clamp(1.7rem, 4vw, 2.6rem);
  font-weight: 700;
  color: var(--c-accent);
  margin: 0 0 1rem;
  line-height: 1.2;
}
.p1_4872960d1e_h2 {
  font-size: clamp(1.25rem, 3vw, 1.9rem);
  font-weight: 700;
  color: var(--c-accent);
  margin: 0 0 1rem;
  line-height: 1.25;
}
.p1_4872960d1e_h3 {
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--c-accent);
  margin: 0 0 0.5rem;
}
.p1_4872960d1e_lead {
  font-size: 1.05rem;
  color: var(--c-muted);
  margin: 0 0 1.25rem;
}
.p1_4872960d1e_hl { color: var(--c-accent); }

/* === Кнопки === */
.p1_4872960d1e_cta-btn {
  display: inline-block;
  background: var(--c-accent);
  color: var(--c-accent-fg);
  font-family: var(--ff);
  font-weight: 700;
  font-size: 0.95rem;
  padding: 0.65rem 1.6rem;
  border-radius: var(--r-sharp);
  text-decoration: none;
  transition: opacity .18s;
  border: 2px solid var(--c-accent);
  cursor: pointer;
}
.p1_4872960d1e_cta-btn:hover { opacity: 0.88; }
.p1_4872960d1e_cta-outline {
  display: inline-block;
  background: transparent;
  color: #fff;
  font-family: var(--ff);
  font-weight: 600;
  font-size: 0.95rem;
  padding: 0.65rem 1.6rem;
  border-radius: var(--r-sharp);
  text-decoration: none;
  border: 2px solid var(--c-accent);
  transition: background .18s;
  cursor: pointer;
}
.p1_4872960d1e_cta-outline:hover { background: rgba(158,241,41,0.1); }

/* ===== RIBBON COMPARE ===== */
.p1_4872960d1e_ribbon-compare {
  background: var(--c-block);
  padding: 28px 32px 20px;
  margin-bottom: 0;
}
.p1_4872960d1e_ribbon-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border: 1px solid rgba(158,241,41,0.18);
}
.p1_4872960d1e_ribbon-row {
  padding: 18px 22px;
}
.p1_4872960d1e_ribbon-a {
  border-right: 1px solid rgba(158,241,41,0.18);
  background: rgba(255,255,255,0.03);
}
.p1_4872960d1e_ribbon-b {
  background: rgba(158,241,41,0.05);
}
.p1_4872960d1e_ribbon-label {
  display: block;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-muted);
  margin-bottom: 10px;
}
.p1_4872960d1e_accent-label { color: var(--c-accent) !important; }
.p1_4872960d1e_ribbon-list {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.9rem;
}
.p1_4872960d1e_ribbon-a .p1_4872960d1e_ribbon-list li::before {
  content: '✕ ';
  color: #e05;
  font-size: 0.75rem;
}
.p1_4872960d1e_ribbon-b .p1_4872960d1e_ribbon-list li::before {
  content: '✓ ';
  color: var(--c-accent);
  font-size: 0.75rem;
}
.p1_4872960d1e_ribbon-list li { margin-bottom: 5px; }
.p1_4872960d1e_ribbon-caption {
  margin: 14px 0 0;
  font-size: 0.88rem;
  color: var(--c-muted);
  line-height: 1.5;
}

/* ===== SPLIT STATS ===== */
.p1_4872960d1e_split-stats {
  display: grid;
  grid-template-columns: 1fr 1.55fr;
  gap: 0;
  background: var(--c-canvas);
  border-bottom: 2px solid var(--c-block);
  padding: 36px 32px;
  align-items: center;
}
.p1_4872960d1e_ss-visual {
  overflow: hidden;
  border-radius: var(--r-card);
  aspect-ratio: 3/4;
  max-width: 280px;
}
.p1_4872960d1e_ss-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.p1_4872960d1e_ss-content {
  padding-left: 36px;
}
.p1_4872960d1e_stat-row {
  display: flex;
  gap: 24px;
  margin: 1.25rem 0 1.5rem;
  flex-wrap: wrap;
}
.p1_4872960d1e_stat-cell {
  background: var(--c-card);
  border: 1px solid rgba(158,241,41,0.2);
  padding: 14px 18px;
  border-radius: var(--r-sharp);
  display: flex;
  flex-direction: column;
  min-width: 90px;
}
.p1_4872960d1e_stat-num {
  font-size: 1.7rem;
  font-weight: 700;
  color: var(--c-accent);
  line-height: 1.1;
}
.p1_4872960d1e_stat-desc {
  font-size: 0.78rem;
  color: var(--c-muted);
  margin-top: 3px;
}

/* ===== ZIGZAG ===== */
.p1_4872960d1e_zigzag {
  background: var(--c-block);
  padding: 36px 32px;
}
.p1_4872960d1e_zz-row {
  display: grid;
  grid-template-columns: 1fr 1.8fr;
  gap: 28px;
  align-items: center;
  margin-bottom: 32px;
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(158,241,41,0.1);
}
.p1_4872960d1e_zz-row:last-child { border-bottom: none; margin-bottom: 0; }
.p1_4872960d1e_zz-row--rev { direction: rtl; }
.p1_4872960d1e_zz-row--rev > * { direction: ltr; }
.p1_4872960d1e_zz-media { overflow: hidden; border-radius: var(--r-card); }
.p1_4872960d1e_zz-img {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  display: block;
}
.p1_4872960d1e_zz-text p { margin: 0; font-size: 0.95rem; color: var(--c-muted); }

/* ===== GAMES ===== */
.p1_4872960d1e_games-wrap {
  padding: 36px 32px;
  background: var(--c-canvas);
}
.p1_4872960d1e_tabs-nav {
  display: flex;
  gap: 6px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.p1_4872960d1e_tab-btn {
  background: var(--c-card);
  color: var(--c-muted);
  border: 1px solid rgba(158,241,41,0.2);
  padding: 7px 18px;
  font-family: var(--ff);
  font-size: 0.88rem;
  cursor: pointer;
  border-radius: var(--r-sharp);
  transition: background .15s, color .15s;
}
.p1_4872960d1e_tab-btn:hover { background: rgba(158,241,41,0.1); color: var(--c-text); }
.p1_4872960d1e_tab-active {
  background: var(--c-accent);
  color: var(--c-accent-fg);
  border-color: var(--c-accent);
  font-weight: 700;
}
.p1_4872960d1e_tab-panel { display: block; }
.p1_4872960d1e_tab-hidden { display: none; }
.p1_4872960d1e_games-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.p1_4872960d1e_game-card {
  display: block;
  background: var(--c-card);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.28);
  transition: transform .18s, box-shadow .18s;
  border: 1px solid rgba(158,241,41,0.1);
}
.p1_4872960d1e_game-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 18px rgba(158,241,41,0.18);
}
.p1_4872960d1e_game-card img {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  display: block;
}

/* ===== VIP ===== */
.p1_4872960d1e_vip {
  background: var(--c-block);
  display: grid;
  grid-template-columns: 1fr 1.7fr;
  gap: 0;
  padding: 0;
  border-top: 2px solid rgba(158,241,41,0.12);
  border-bottom: 2px solid rgba(158,241,41,0.12);
  overflow: hidden;
}
.p1_4872960d1e_vip-media { overflow: hidden; }
.p1_4872960d1e_vip-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 320px;
}
.p1_4872960d1e_vip-body {
  padding: 36px 36px 32px;
}
.p1_4872960d1e_vip-levels {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 1.1rem 0 1.1rem;
}
.p1_4872960d1e_vip-lv {
  background: var(--c-card);
  border: 1px solid rgba(158,241,41,0.2);
  border-radius: var(--r-sharp);
  padding: 10px 14px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.p1_4872960d1e_vip-lv-name {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--c-accent);
  letter-spacing: 0.05em;
}
.p1_4872960d1e_vip-lv-desc {
  font-size: 0.8rem;
  color: var(--c-muted);
}
.p1_4872960d1e_vip-body p {
  margin: 0 0 0.75rem;
  font-size: 0.93rem;
  color: var(--c-muted);
}

/* ===== PROCESS STEPS ===== */
.p1_4872960d1e_steps {
  padding: 36px 32px;
  background: var(--c-canvas);
}
.p1_4872960d1e_steps-list {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 28px;
}
.p1_4872960d1e_step {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: var(--c-card);
  border: 1px solid rgba(158,241,41,0.15);
  border-radius: var(--r-sharp);
  padding: 16px 18px;
}
.p1_4872960d1e_step-num {
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--c-accent);
  line-height: 1;
  flex-shrink: 0;
  min-width: 36px;
}
.p1_4872960d1e_step-title {
  display: block;
  font-size: 0.95rem;
  color: var(--c-text);
  margin-bottom: 4px;
}
.p1_4872960d1e_step-body p {
  margin: 0;
  font-size: 0.85rem;
  color: var(--c-muted);
}
.p1_4872960d1e_steps-cta { text-align: center; margin-top: 8px; }

/* ===== QUOTE WALL ===== */
.p1_4872960d1e_quotes {
  background: var(--c-block);
  padding: 36px 32px;
}
.p1_4872960d1e_quotes-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 20px 0 18px;
}
.p1_4872960d1e_quote-card {
  background: var(--c-card);
  border: 1px solid rgba(158,241,41,0.18);
  border-radius: var(--r-sharp);
  padding: 18px 16px 14px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.p1_4872960d1e_quote-card blockquote {
  margin: 0;
  padding: 0;
}
.p1_4872960d1e_quote-card blockquote p {
  font-size: 0.88rem;
  color: var(--c-text);
  margin: 0;
  font-style: italic;
  line-height: 1.55;
}
.p1_4872960d1e_quote-card figcaption {
  font-size: 0.78rem;
  color: var(--c-accent);
  margin-top: auto;
}
.p1_4872960d1e_quotes-note {
  font-size: 0.78rem;
  color: var(--c-muted);
  margin: 0;
  border-top: 1px solid rgba(158,241,41,0.1);
  padding-top: 12px;
}

/* ===== HERO SPLIT ===== */
.p1_4872960d1e_hero-split {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  min-height: 320px;
  margin-top: 0;
  overflow: hidden;
}
.p1_4872960d1e_hs-text {
  background: var(--c-canvas);
  padding: 40px 36px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
}
.p1_4872960d1e_hs-text p {
  margin: 0;
  font-size: 0.93rem;
  color: var(--c-muted);
}
.p1_4872960d1e_hs-btns {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 6px;
}
.p1_4872960d1e_hs-visual {
  background-size: cover;
  background-position: center;
  min-height: 280px;
}

/* ===== АДАПТИВ ===== */
@media (max-width: 900px) {
  .p1_4872960d1e_split-stats,
  .p1_4872960d1e_vip,
  .p1_4872960d1e_hero-split {
    grid-template-columns: 1fr;
  }
  .p1_4872960d1e_ss-content { padding-left: 0; padding-top: 20px; }
  .p1_4872960d1e_ss-visual { max-width: 100%; aspect-ratio: 16/9; }
  .p1_4872960d1e_ribbon-inner { grid-template-columns: 1fr; }
  .p1_4872960d1e_ribbon-a { border-right: none; border-bottom: 1px solid rgba(158,241,41,0.18); }
  .p1_4872960d1e_zz-row, .p1_4872960d1e_zz-row--rev { grid-template-columns: 1fr; direction: ltr; }
  .p1_4872960d1e_games-grid { grid-template-columns: repeat(2, 1fr); }
  .p1_4872960d1e_vip-img { min-height: 200px; }
  .p1_4872960d1e_quotes-grid { grid-template-columns: 1fr; }
  .p1_4872960d1e_steps-list { grid-template-columns: 1fr; }
  .p1_4872960d1e_vip-levels { grid-template-columns: 1fr; }
  .p1_4872960d1e_hs-visual { min-height: 200px; }
  .p1_4872960d1e_split-stats,
  .p1_4872960d1e_zigzag,
  .p1_4872960d1e_games-wrap,
  .p1_4872960d1e_steps,
  .p1_4872960d1e_quotes,
  .p1_4872960d1e_ribbon-compare,
  .p1_4872960d1e_hs-text { padding-left: 16px; padding-right: 16px; }
  .p1_4872960d1e_vip-body { padding: 24px 16px; }
}
@media (max-width: 480px) {
  .p1_4872960d1e_games-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
  .p1_4872960d1e_stat-row { gap: 10px; }
}

/* Enforced site palette (#252211 / #1d152a / #9ef129) — последним слоем */
html, body {
  background-color: #252211 !important;
}
main {
  background-color: transparent !important;
  color: #f5f5f5 !important;
  font-family: Georgia, Times New Roman, serif !important;
}
main * {
  font-family: inherit !important;
}
main, main p, main li, main label, main span, main small, main td, main th, main dd, main dt {
  color: #f5f5f5 !important;
}
main h1, main h2, main h3, main h4, main .accent, main strong, main b {
  color: #9ef129 !important;
}
/* FAQ/аккордеон: заголовки h* внутри кнопки не делаем жёлтыми (было нечитаемо на жёлтом фоне) */
main button :is(h1, h2, h3, h4),
main [role="button"] :is(h1, h2, h3, h4) {
  color: #ffffff !important;
}
main button :is(span, p, div),
main [role="button"] :is(span, p, div) {
  color: inherit !important;
}
main a {
  color: #9ef129 !important;
}
main a:hover {
  color: color-mix(in srgb, #9ef129 82%, #ffffff) !important;
}
/* Tailwind / классы: жёлтая заливка — текст #101710 (перекрывает main a) */
main a[class*="bg-yellow"],
main a[class*="bg-amber"],
main a[class*="bg-lime"],
main a[class*="bg-[#ffe14a"],
main a[class*="bg-[#FFE14A"],
main button[class*="bg-yellow"],
main button[class*="bg-amber"],
main button[class*="bg-lime"],
main button[class*="bg-[#ffe14a"],
main button[class*="bg-[#FFE14A"] {
  color: #101710 !important;
}
main a[class*="bg-yellow"] *,
main a[class*="bg-amber"] *,
main button[class*="bg-yellow"] *,
main button[class*="bg-amber"] *,
main a[class*="bg-[#ffe14a"] *,
main a[class*="bg-[#FFE14A"] *,
main button[class*="bg-[#ffe14a"] *,
main button[class*="bg-[#FFE14A"] * {
  color: #101710 !important;
}
/* Контур / прозрачный фон + жёлтая рамка или ring — белый текст */
main a[class*="border-yellow"]:not([class*="bg-yellow"]),
main a[class*="border-amber"]:not([class*="bg-yellow"]):not([class*="bg-amber"]),
main button[class*="border-yellow"]:not([class*="bg-yellow-4"]):not([class*="bg-yellow-5"]):not([class*="bg-amber-4"]):not([class*="bg-amber-5"]),
main button[class*="border-amber"]:not([class*="bg-yellow"]):not([class*="bg-amber"]),
main a[class*="ring-yellow"]:not([class*="bg-yellow"]),
main button[class*="ring-yellow"]:not([class*="bg-yellow"]),
main a[class*="ring-amber"]:not([class*="bg-amber"]),
main button[class*="ring-amber"]:not([class*="bg-amber"]) {
  color: #ffffff !important;
}
main a[class*="border-yellow"]:not([class*="bg-yellow"]) *,
main button[class*="border-yellow"]:not([class*="bg-yellow"]) *,
main a[class*="ring-yellow"]:not([class*="bg-yellow"]) *,
main button[class*="ring-yellow"]:not([class*="bg-yellow"]) * {
  color: #ffffff !important;
}
/* Tailwind arbitrary: border-[#ffe14a] / ring — жёлтая обводка на прозрачном фоне = белый текст */
main a[class*="bg-transparent"][class*="border-[#ffe14a"],
main a[class*="bg-transparent"][class*="border-[#FFE14A"],
main button[class*="bg-transparent"][class*="border-[#ffe14a"],
main button[class*="bg-transparent"][class*="border-[#FFE14A"],
main a[class*="border-[#ffe14a"][class*="bg-transparent"],
main button[class*="border-[#ffe14a"][class*="bg-transparent"],
main a[class*="border-[#FFE14A"][class*="bg-transparent"],
main button[class*="border-[#FFE14A"][class*="bg-transparent"],
main a[class*="ring-[#ffe14a"]:not([class*="bg-[#ffe14a"]),
main button[class*="ring-[#ffe14a"]:not([class*="bg-[#ffe14a"]),
main a[class*="ring-[#FFE14A"]:not([class*="bg-[#ffe14a"]),
main button[class*="ring-[#FFE14A"]:not([class*="bg-[#ffe14a"]) {
  color: #ffffff !important;
}
main a[class*="bg-transparent"][class*="border-[#ffe14a"] *,
main button[class*="bg-transparent"][class*="border-[#ffe14a"] *,
main a[class*="border-[#ffe14a"][class*="bg-transparent"] *,
main button[class*="border-[#ffe14a"][class*="bg-transparent"] * {
  color: #ffffff !important;
}
/* Та же кнопка при hover с заливкой — тёмный текст */
main a[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover,
main button[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover,
main a[class*="border-[#FFE14A"][class*="hover:bg-[#FFE14A"]:hover,
main button[class*="border-[#FFE14A"][class*="hover:bg-[#FFE14A"]:hover {
  color: #101710 !important;
}
main a[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover *,
main button[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover * {
  color: #101710 !important;
}
/* Жёлтая ЗАЛИВКА CTA — только явный жёлтый фон (не border-color + transparent) */
main a[style*="background:#ffe14a"],
main a[style*="background: #ffe14a"],
main a[style*="background-color:#ffe14a"],
main a[style*="background-color: #ffe14a"],
main a[style*="linear-gradient"][style*="ffe14a"],
main a[style*="background:rgb(255, 225, 74)"],
main a[style*="background: rgb(255, 225, 74)"],
main a.bg-brand-accent {
  color: #101710 !important;
}
main a[style*="background:#ffe14a"]:hover,
main a[style*="background: #ffe14a"]:hover,
main a.bg-brand-accent:hover {
  color: #0a0f0a !important;
}
main a[style*="background:#ffe14a"] :is(span, strong, b),
main a[style*="background: #ffe14a"] :is(span, strong, b),
main a[style*="linear-gradient"][style*="ffe14a"] :is(span, strong, b),
main a.bg-brand-accent :is(span, strong, b) {
  color: #101710 !important;
}
main button[style*="background:#ffe14a"],
main button[style*="background: #ffe14a"],
main button[style*="background-color:#ffe14a"],
main button[style*="background-color: #ffe14a"],
main button[style*="linear-gradient"][style*="ffe14a"],
main button.bg-brand-accent {
  color: #101710 !important;
}
main button[style*="background:#ffe14a"] :is(span, strong, b),
main button[style*="background: #ffe14a"] :is(span, strong, b),
main button.bg-brand-accent :is(span, strong, b) {
  color: #101710 !important;
}
/* Контурные кнопки: прозрачный фон + рамка акцента — белый текст */
main button[style*="background:transparent"],
main button[style*="background: transparent"],
main button[style*="background-color:transparent"],
main button[style*="background-color: transparent"] {
  color: #ffffff !important;
}
main button[style*="background:transparent"] :is(span, strong, b),
main button[style*="background: transparent"] :is(span, strong, b),
main button[style*="background-color:transparent"] :is(span, strong, b),
main button[style*="background-color: transparent"] :is(span, strong, b) {
  color: #ffffff !important;
}
main a[style*="background:transparent"][class*="border"],
main a[style*="background: transparent"][class*="border"],
main a[style*="border"][style*="background:transparent"] {
  color: #ffffff !important;
}
main a[style*="background:transparent"] :is(span, strong, b),
main a[style*="background: transparent"] :is(span, strong, b) {
  color: #ffffff !important;
}
/* Tailwind: text-white на жёлтой заливке — тёмный текст */
main a[class*="bg-yellow"][class*="text-white"],
main button[class*="bg-yellow"][class*="text-white"],
main a[class*="bg-amber"][class*="text-white"],
main button[class*="bg-amber"][class*="text-white"],
main a[class*="bg-lime"][class*="text-white"],
main button[class*="bg-lime"][class*="text-white"] {
  color: #101710 !important;
}
main a[class*="bg-yellow"][class*="text-white"] *,
main button[class*="bg-yellow"][class*="text-white"] * {
  color: #101710 !important;
}
/* Контур: text-gray/zinc/slate на тёмном фоне — белый */
main a[class*="border-yellow"][class*="text-gray"],
main button[class*="border-yellow"][class*="text-gray"],
main a[class*="border-yellow"][class*="text-zinc"],
main button[class*="border-yellow"][class*="text-zinc"],
main a[class*="border-yellow"][class*="text-slate"],
main button[class*="border-yellow"][class*="text-slate"],
main a[class*="border-amber"][class*="text-gray"],
main button[class*="border-amber"][class*="text-gray"] {
  color: #ffffff !important;
}
main a[class*="border-yellow"][class*="text-gray"] *,
main button[class*="border-yellow"][class*="text-gray"] *,
main a[class*="border-amber"][class*="text-gray"] * {
  color: #ffffff !important;
}
/* Кнопки из промптов: primary = заливка, outline/secondary = контур */
main a.btn-primary:not([class*="outline"]),
main button.btn-primary:not([class*="outline"]),
main [class*="btn-primary"]:not([class*="outline"]):not([class*="border-2"]):not([class*="border-y"]) {
  color: #101710 !important;
}
main a[class*="btn-outline"],
main button[class*="btn-outline"],
main a.btn-secondary,
main button.btn-secondary {
  color: #ffffff !important;
}
/* Синие/indigo полосы — в палитру бренда (не «чужие» блоки) */
main section[class*="bg-blue"],
main section[class*="from-blue"],
main section[class*="to-blue"],
main [class*="bg-gradient"][class*="from-blue"],
main [class*="bg-gradient"][class*="to-indigo"] {
  background: linear-gradient(180deg, #1d152a 0%, #252211 100%) !important;
  background-color: #1d152a !important;
  background-image: linear-gradient(180deg, #1d152a 0%, #252211 100%) !important;
}
/* CTA с фоном: overlay position:absolute без высоты секции → контент наезжает на предыдущий блок */
main section[class*="cta"][style*="background"],
main section[style*="background-image"][class*="cta"] {
  position: relative !important;
  overflow: hidden !important;
  min-height: min(52vh, 440px) !important;
  isolation: isolate;
}
main section[class*="cta"] > [class*="overlay"],
main section[style*="background-image"] > div[class*="overlay"] {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  min-height: 240px !important;
  padding: clamp(2rem, 5vw, 3.5rem) 1rem !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0, 0, 0, 0.72) !important;
}
main section[class*="faq"],
main section[id="faq"] {
  position: relative;
  z-index: 1;
}
main section[class*="cta"] {
  z-index: 0;
}
main section[class*="cta"] a[class*="button"],
main section[class*="cta"] a[class*="cta_"] {
  display: inline-block !important;
  width: auto !important;
  max-width: min(96vw, 420px) !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.35 !important;
  box-sizing: border-box !important;
}
/* Вкладки шагов (registration и др.) вне #lw-games */
main section:not(#lw-games) button[data-tab].is-active,
main section:not(#lw-games) button[data-tab].lw-tab-on {
  background-color: #9ef129 !important;
  color: #0a0f0a !important;
  border-color: #9ef129 !important;
}
main section:not(#lw-games) button[data-tab]:not(.is-active):not(.lw-tab-on) {
  background-color: transparent !important;
  color: #ffffff !important;
  border: 2px solid #9ef129 !important;
}
/* Ритм секций */
main > section {
  box-sizing: border-box;
  padding-left: max(1rem, env(safe-area-inset-left)) !important;
  padding-right: max(1rem, env(safe-area-inset-right)) !important;
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}
/* FAQ: единый вид (как laki-19) */
main section[id*="faq"] [class*="faq-item"],
main section[class*="faq"] [class*="faq-item"],
main [class*="faq-section"] [class*="faq-item"] {
  background-color: #1d152a !important;
  border-radius: 12px !important;
  margin-bottom: 0.75rem !important;
  overflow: hidden;
}
main section[id*="faq"] [class*="faq-item"] > button,
main section[class*="faq"] [class*="faq-item"] > button,
main [class*="faq-section"] [class*="faq-item"] > button {
  color: #ffffff !important;
  width: 100%;
  text-align: left;
  padding: 0.85rem 1rem !important;
  background: transparent !important;
  border: none !important;
  font-weight: 700 !important;
}
main section[id*="faq"] h2,
main section[class*="faq"] h2,
main [class*="faq-section"] h2 {
  text-align: center !important;
  margin-bottom: 1.25rem !important;
}
/* Секции не получают принудительную полосу от генератора — только контент задаёт фон */
main > section:first-of-type {
  background-color: transparent !important;
}
/* Не переопределяем фон всех button — ломались вкладки и аккордеоны; CTA оформляй в HTML/Tailwind (жёлтая заливка + тёмный текст) */
#lw-games a,
[class*="games"] a,
[id*="games"] a {
  display: block;
  overflow: hidden;
  border-radius: 14px;
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
#lw-games a:hover,
[class*="games"] a:hover,
[id*="games"] a:hover {
  transform: translateY(-4px) scale(1.015);
  box-shadow: 0 10px 26px rgba(0,0,0,0.35);
  filter: saturate(1.12);
}
#lw-games img,
[class*="games"] img,
[id*="games"] img {
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 140px;
  object-fit: cover !important;
  object-position: center;
  display: block;
}
/* Вкладки #lw-games: активная — заливка акцента */
#lw-games button[data-tab].is-active,
#lw-games button[data-tab][aria-pressed="true"] {
  background-color: #9ef129 !important;
  color: #0a0f0a !important;
  border-color: #9ef129 !important;
}
#lw-games button[data-tab]:not(.is-active) {
  background-color: transparent !important;
  color: #ffffff !important;
  border: 2px solid #9ef129 !important;
}
#lw-games button[data-tab] * {
  color: inherit !important;
}
/* Постобработка patchMainCtaContrast: контраст gateway-ссылок в main */
main a.lw-cta-solid,
main a.lw-cta-solid * {
  color: #0a0f0a !important;
}
main a.lw-cta-solid:hover {
  color: color-mix(in srgb, #0a0f0a 85%, #000) !important;
}
main a.lw-cta-outline,
main a.lw-cta-outline * {
  color: #ffffff !important;
}
