/* 7k5814.casino — 7K casino / 7К Казино. Палитра «Scarlet Seven» (ink-plum near-black #100a0d + scarlet-raspberry CTA #ec2a56 ~346° + champagne-gold акцент #e8c25a + warm off-white текст #f3e7ea). Шрифты: Playfair Display SC (heading) + Roboto Flex (body). Нарратив: счастливая семёрка / символы барабана Cherry→Triple 777. */

:root {
  --bg: #100a0d;
  --bg-2: #1a1014;
  --bg-3: #251820;
  --line: #33232b;
  --line-2: #46313b;
  --txt: #f3e7ea;
  --txt-d: #c2a8b0;
  --txt-dd: #8c7680;
  --acc: #ec2a56;
  --acc-l: #ff5c7e;
  --acc-2: #e8c25a;
  --acc-2-d: #c79a36;
  --hot: #cf3a5e;
  --good: #d9b46a;
  --r: 12px;
  --r-s: 8px;
}

* { box-sizing: border-box }
html { scroll-behavior: smooth }
body {
  margin: 0;
  font: 16px/1.66 "Roboto Flex", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Arial, sans-serif;
  color: var(--txt);
  background:
    radial-gradient(1000px 580px at 92% -10%, rgba(236, 42, 86, .15) 0%, transparent 62%),
    radial-gradient(820px 580px at -10% 60%, rgba(232, 194, 90, .07) 0%, transparent 60%),
    var(--bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { max-width: 100%; display: block; height: auto }
a { color: var(--acc-l); text-decoration: none }
a:hover { text-decoration: underline }
.k { color: var(--acc-2); font-weight: 700 }

.skip {
  position: absolute; top: -42px; left: 8px;
  padding: 8px 12px; background: var(--acc); color: #fff;
  border-radius: 6px; z-index: 100; font-weight: 700;
}
.skip:focus { top: 8px }

/* ===== TOP BAR ===== */
.bar {
  display: flex; align-items: center; gap: 16px;
  padding: 12px 22px;
  border-bottom: 1px solid var(--line);
  background: rgba(16, 10, 13, .82);
  backdrop-filter: blur(10px);
  position: sticky; top: 0; z-index: 50;
}
.logo { display: flex; align-items: center; gap: 11px; color: var(--txt) }
.logo:hover { text-decoration: none }
.logo__svg {
  width: 30px; height: 30px; flex: none;
  filter: drop-shadow(0 0 10px rgba(236, 42, 86, .55));
}
.logo__t {
  font-family: "Playfair Display SC", Georgia, serif;
  font-weight: 700; line-height: 1; letter-spacing: .4px; font-size: 22px;
}
.logo__sub {
  display: block; font-size: 10px; color: var(--txt-d);
  letter-spacing: 2.2px; font-weight: 400; margin-top: 4px;
  text-transform: uppercase; font-family: "Roboto Flex", system-ui, sans-serif;
}
.nav { display: flex; gap: 22px; margin-left: auto; flex-wrap: wrap }
.nav a {
  color: var(--txt-d); font-size: 14px; padding: 4px 0;
  border-bottom: 1px solid transparent; transition: color .15s, border-color .15s;
}
.nav a:hover { color: var(--acc-l); border-bottom-color: var(--acc-l); text-decoration: none }

/* ===== CTA ===== */
.cta {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 11px 20px; border-radius: 8px;
  font-family: "Roboto Flex", system-ui, sans-serif;
  font-weight: 700; font-size: 14px;
  border: 1px solid transparent; white-space: nowrap;
  transition: transform .15s, box-shadow .2s, background .2s;
  cursor: pointer; letter-spacing: .1px;
}
.cta:hover { text-decoration: none; transform: translateY(-1px) }
.cta--small { background: var(--bg-3); color: var(--txt); border-color: var(--line) }
.cta--small:hover { background: var(--bg-2); border-color: var(--acc) }
.cta--big { padding: 15px 28px; font-size: 15px; border-radius: 10px }
.cta--hot {
  background: linear-gradient(120deg, var(--acc) 0%, var(--acc-l) 100%);
  color: #fff; border: 0;
  box-shadow: 0 12px 30px -10px rgba(236, 42, 86, .7);
  font-weight: 700;
}
.cta--hot:hover { box-shadow: 0 16px 38px -8px rgba(236, 42, 86, .9) }
.cta--ghost { background: transparent; color: var(--txt); border-color: var(--line) }
.cta--ghost:hover { border-color: var(--acc-l); color: var(--acc-l) }

/* ===== AGGREGATE COUNTER STRIP ===== */
.metr {
  display: grid; grid-template-columns: repeat(5, 1fr);
  gap: 0; padding: 10px 22px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(90deg, rgba(236, 42, 86, .07), rgba(232, 194, 90, .04));
  font-size: 13px;
}
.metr__cell {
  display: flex; flex-direction: column; gap: 2px;
  padding: 6px 14px;
  border-right: 1px solid var(--line);
  align-items: flex-start;
}
.metr__cell:last-child { border-right: 0 }
.metr__num {
  font-family: "Playfair Display SC", Georgia, serif;
  font-weight: 700; font-size: 18px; color: var(--acc-l);
  letter-spacing: .2px;
}
.metr__lbl { font-size: 11px; color: var(--txt-d); letter-spacing: .6px; text-transform: uppercase }

/* ===== HERO ===== */
.hero {
  display: grid; grid-template-columns: 1.18fr 1fr; gap: 36px;
  padding: 48px 22px 32px;
  max-width: 1240px; margin: 0 auto;
  align-items: center;
}
.hero__chip {
  display: inline-block;
  font-size: 11px; letter-spacing: 1.4px; color: var(--acc-l);
  background: rgba(236, 42, 86, .1);
  border: 1px solid rgba(236, 42, 86, .3);
  padding: 6px 12px; border-radius: 4px;
  margin: 0 0 18px;
  text-transform: uppercase; font-weight: 700;
}
h1 {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: clamp(31px, 4.5vw, 52px); line-height: 1.12;
  margin: 0 0 18px; letter-spacing: 0; font-weight: 700;
}
.acc { color: var(--acc-l) }
.hero__sub {
  color: var(--txt-d); font-size: 16px; margin: 0 0 14px; line-height: 1.68;
}
.hero__btns { display: flex; gap: 12px; flex-wrap: wrap; margin: 24px 0 28px }
.hero__pic { margin: 0 }
.hero__pic-svg {
  display: block; width: 100%; height: auto;
  border-radius: var(--r); border: 1px solid var(--line);
  background:
    radial-gradient(420px 320px at 50% 25%, rgba(236, 42, 86, .26), transparent 62%),
    radial-gradient(360px 280px at 78% 82%, rgba(232, 194, 90, .16), transparent 65%),
    linear-gradient(135deg, #160d12 0%, #221019 100%);
  aspect-ratio: 16 / 11;
  box-shadow: 0 24px 64px -22px rgba(236, 42, 86, .42);
}
.hero__pic figcaption {
  margin-top: 12px; font-size: 12px; color: var(--txt-dd);
  font-style: italic; text-align: right;
}

/* KPI inline блок */
.kpi {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;
  padding: 18px 0 0; border-top: 1px solid var(--line);
}
.kpi__item { display: flex; flex-direction: column; gap: 2px }
.kpi__num {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: 28px; font-weight: 700;
  color: var(--acc-l); letter-spacing: 0;
}
.kpi__lbl { font-size: 11px; color: var(--txt-d); text-transform: uppercase; letter-spacing: 1.2px }

/* ===== SECTIONS GENERAL ===== */
section {
  max-width: 1240px; margin: 0 auto;
  padding: 56px 22px;
}
section.hero, section.welcome { padding-top: 36px }
.ovrline {
  display: inline-block;
  font-size: 11px; letter-spacing: 2.6px; text-transform: uppercase;
  color: var(--acc-2); font-weight: 700;
  margin: 0 0 10px;
  font-family: "Roboto Flex", system-ui, sans-serif;
}
h2 {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: clamp(25px, 3.3vw, 37px); line-height: 1.24;
  margin: 0 0 16px; letter-spacing: 0; font-weight: 700;
}
h3 {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: clamp(18px, 2vw, 22px); line-height: 1.36;
  margin: 26px 0 10px; color: var(--acc-l); font-weight: 700; letter-spacing: 0;
}
p { margin: 0 0 14px; color: var(--txt) }
.lead { color: var(--txt-d); font-size: 16px; margin-bottom: 24px; max-width: 810px }

/* ===== WELCOME ===== */
.welcome {
  background:
    radial-gradient(720px 360px at 82% 28%, rgba(232, 194, 90, .07) 0%, transparent 70%),
    rgba(26, 16, 20, .6);
  border: 1px solid var(--line);
  border-radius: var(--r);
  margin: 32px 22px;
  max-width: none;
}
.welcome__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;
  margin: 22px 0 24px;
}
.wbox {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 22px 20px;
  position: relative; overflow: hidden;
  transition: border-color .2s, transform .15s;
}
.wbox:hover { border-color: var(--acc); transform: translateY(-2px) }
.wbox::before {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(236, 42, 86, .08), transparent 60%);
  pointer-events: none;
}
.wbox__step {
  font-family: "Roboto Flex", system-ui, sans-serif;
  font-size: 11px; color: var(--acc-2); font-weight: 700;
  letter-spacing: 2px; margin-bottom: 8px; text-transform: uppercase;
}
.wbox__pct {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: 33px; font-weight: 700; line-height: 1;
  color: var(--acc-l); letter-spacing: 0;
  margin-bottom: 8px;
}
.wbox__title { font-weight: 700; font-size: 15px; margin-bottom: 6px }
.wbox__sub { font-size: 13px; color: var(--txt-d); line-height: 1.55 }

/* ===== THREE STEPS ===== */
.steps3__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
  margin-top: 22px;
}
.sbox {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 24px;
  position: relative;
}
.sbox__num {
  font-family: "Playfair Display SC", Georgia, serif;
  position: absolute; top: 14px; right: 22px;
  font-size: 56px; font-weight: 700; line-height: 1;
  color: var(--bg-3);
}
.sbox__head {
  font-size: 18px; font-weight: 700; margin-bottom: 12px;
  color: var(--acc-l); font-family: "Playfair Display SC", Georgia, serif;
}
.sbox p { color: var(--txt-d); font-size: 14px; margin: 0 }

/* ===== SLOT GRID ===== */
.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 14px; margin: 24px 0;
}
.card {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
  transition: transform .15s, border-color .2s, box-shadow .25s;
  display: flex; flex-direction: column;
}
.card:hover {
  transform: translateY(-3px);
  border-color: var(--acc);
  box-shadow: 0 18px 36px -14px rgba(236, 42, 86, .42);
}
.card__cover {
  width: 100%; aspect-ratio: 4 / 3;
  display: flex; align-items: center; justify-content: center;
  font-family: "Playfair Display SC", Georgia, serif;
  font-weight: 700; font-size: 21px; color: #fff;
  text-align: center; padding: 14px;
  letter-spacing: 0; line-height: 1.2;
  position: relative; overflow: hidden;
}
.card__cover::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(160deg, transparent 40%, rgba(0,0,0,.4) 100%);
  pointer-events: none;
}
.cv-1 { background: linear-gradient(135deg, #1a0d12 0%, #ec2a56 100%); color: #fff }
.cv-2 { background: linear-gradient(135deg, #1d130a 0%, #e8c25a 100%); color: #1a0c10 }
.cv-3 { background: linear-gradient(135deg, #190c10 0%, #ff5c7e 100%); color: #1a0c10 }
.cv-4 { background: linear-gradient(135deg, #1d0f14 0%, #cf3a5e 100%); color: #fff }
.cv-5 { background: linear-gradient(135deg, #1a0d12 0%, #d9b46a 100%); color: #1a0c10 }
.cv-6 { background: linear-gradient(135deg, #1a0d12 0%, #ec2a56 100%); color: #fff }
.cv-7 { background: linear-gradient(135deg, #1d130a 0%, #e8c25a 100%); color: #1a0c10 }
.cv-8 { background: linear-gradient(135deg, #190c10 0%, #ff5c7e 100%); color: #1a0c10 }
.cv-9 { background: linear-gradient(135deg, #1d0f14 0%, #cf3a5e 100%); color: #fff }
.cv-10 { background: linear-gradient(135deg, #1a0d12 0%, #d9b46a 100%); color: #1a0c10 }
.cv-11 { background: linear-gradient(135deg, #1a0d12 0%, #ec2a56 100%); color: #fff }
.cv-12 { background: linear-gradient(135deg, #1d130a 0%, #e8c25a 100%); color: #1a0c10 }
.cv-13 { background: linear-gradient(135deg, #190c10 0%, #ff5c7e 100%); color: #1a0c10 }
.cv-14 { background: linear-gradient(135deg, #1d0f14 0%, #cf3a5e 100%); color: #fff }
.cv-15 { background: linear-gradient(135deg, #1a0d12 0%, #d9b46a 100%); color: #1a0c10 }

.card h3 { font-size: 15px; margin: 12px 14px 4px; color: var(--txt); font-weight: 600; font-family: "Roboto Flex", system-ui, sans-serif }
.card p { font-size: 12px; color: var(--txt-d); margin: 0 14px 12px; line-height: 1.4 }
.card__btn {
  display: block; padding: 10px;
  margin: auto 12px 12px;
  background: var(--bg-3); color: var(--txt);
  text-align: center; border-radius: 6px; font-size: 13px; font-weight: 700;
  border: 1px solid var(--line); transition: all .15s;
}
.card__btn:hover { background: var(--acc); border-color: var(--acc); color: #fff; text-decoration: none }

.prov { margin: 22px 0 0 }
.prov__title { font-size: 12px; color: var(--acc-2); margin-bottom: 10px; letter-spacing: 1.4px; text-transform: uppercase; font-weight: 700 }
.prov__list { display: flex; flex-wrap: wrap; gap: 8px }
.prov__list span {
  padding: 6px 12px;
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: 4px;
  font-size: 12px; color: var(--txt-d);
}

/* ===== RTP TABLE ===== */
.rtp__wrap { overflow-x: auto; margin-top: 22px; border: 1px solid var(--line); border-radius: var(--r) }
.rtp table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 560px }
.rtp thead th {
  background: var(--bg-3); color: var(--acc-2);
  text-align: left; padding: 13px 16px;
  font-family: "Roboto Flex", system-ui, sans-serif;
  font-weight: 700; text-transform: uppercase; letter-spacing: 1px; font-size: 12px;
  border-bottom: 1px solid var(--line-2);
}
.rtp tbody td { padding: 12px 16px; border-bottom: 1px solid var(--line); color: var(--txt-d) }
.rtp tbody tr:last-child td { border-bottom: 0 }
.rtp tbody tr:nth-child(odd) td { background: rgba(26, 16, 20, .5) }
.rtp tbody tr:hover td { background: rgba(236, 42, 86, .07); color: var(--txt) }
.rtp .rtp__name { color: var(--txt); font-weight: 600 }
.rtp .rtp__val { font-family: "Playfair Display SC", Georgia, serif; color: var(--acc-l) }
.rtp__note { font-size: 12px; color: var(--txt-dd); margin-top: 12px; font-style: italic }

/* ===== LOYALTY ===== */
.loy__grid {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px;
  margin-top: 22px;
}
.lbox {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 22px 24px;
  transition: border-color .2s;
}
.lbox:hover { border-color: var(--acc-2) }
.lbox__h { font-weight: 700; font-size: 18px; margin-bottom: 10px; color: var(--acc-2); font-family: "Playfair Display SC", Georgia, serif }
.lbox p { color: var(--txt-d); font-size: 14px; margin: 0; line-height: 1.62 }

/* VIP-лестница как стек ступеней */
.ladder {
  display: grid; grid-template-columns: repeat(6, 1fr);
  gap: 6px; margin-top: 14px;
}
.ladder__step {
  background: var(--bg-3);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 10px 8px;
  text-align: center;
  position: relative;
}
.ladder__step:nth-child(1) { transform: translateY(0) }
.ladder__step:nth-child(2) { transform: translateY(-6px) }
.ladder__step:nth-child(3) { transform: translateY(-12px) }
.ladder__step:nth-child(4) { transform: translateY(-18px); border-color: var(--acc); background: var(--bg-2) }
.ladder__step:nth-child(5) { transform: translateY(-24px); border-color: var(--acc); background: var(--bg-2) }
.ladder__step:nth-child(6) { transform: translateY(-30px); border-color: var(--acc-2); background: linear-gradient(135deg, var(--bg-2), rgba(232, 194, 90, .12)) }
.ladder__name {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: 13px; font-weight: 700; color: var(--txt);
  display: block; line-height: 1.05; margin-bottom: 5px;
}
.ladder__cb { font-size: 11px; color: var(--txt-d) }
.ladder__step:nth-child(6) .ladder__name { color: var(--acc-2) }

/* ===== TOUR ===== */
.tour {
  background:
    radial-gradient(640px 360px at 50% 50%, rgba(236, 42, 86, .12) 0%, transparent 70%),
    var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r);
  margin: 32px 22px; max-width: none;
  text-align: center;
}
.tour .lead { margin-left: auto; margin-right: auto; }
.tour__btns { margin: 22px 0 28px }
.tour__kpi {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
  margin-top: 22px;
}
.tour__kpi > div {
  background: var(--bg-3);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 18px 16px;
  display: flex; flex-direction: column; align-items: center; gap: 4px;
  text-align: center;
}
.tour__kpi span {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: 24px; font-weight: 700; color: var(--acc-l);
  margin-bottom: 4px; letter-spacing: 0;
}
.tour__kpi .k { font-size: 14px; font-weight: 700; color: var(--txt); font-family: "Roboto Flex", system-ui, sans-serif }
.tour__kpi i { font-size: 12px; color: var(--txt-d); font-style: normal; line-height: 1.4 }

/* ===== LIVE GALLERY ===== */
.live__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px; margin-top: 22px;
}
.lvbox {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
  position: relative;
  transition: transform .15s, border-color .2s, box-shadow .25s;
}
.lvbox:hover {
  transform: translateY(-3px);
  border-color: var(--hot);
  box-shadow: 0 18px 36px -14px rgba(207, 58, 94, .45);
}
.lvbox__cover {
  width: 100%; aspect-ratio: 16 / 9;
  display: flex; align-items: center; justify-content: center;
  font-family: "Playfair Display SC", Georgia, serif;
  font-weight: 700; font-size: 19px; color: #fff;
  padding: 12px; text-align: center; letter-spacing: 0;
  position: relative; overflow: hidden;
}
.lv-1 { background: linear-gradient(135deg, #1d0f14 0%, #cf3a5e 100%); color: #fff }
.lv-2 { background: linear-gradient(135deg, #1a0d12 0%, #ec2a56 100%); color: #fff }
.lv-3 { background: linear-gradient(135deg, #1d130a 0%, #e8c25a 100%); color: #1a0c10 }
.lv-4 { background: linear-gradient(135deg, #190c10 0%, #ff5c7e 100%); color: #1a0c10 }
.lv-5 { background: linear-gradient(135deg, #1a0d12 0%, #d9b46a 100%); color: #1a0c10 }
.lv-6 { background: linear-gradient(135deg, #1a0d12 0%, #ec2a56 100%); color: #fff }
.lv-7 { background: linear-gradient(135deg, #1d130a 0%, #e8c25a 100%); color: #1a0c10 }
.lv-8 { background: linear-gradient(135deg, #1d0f14 0%, #cf3a5e 100%); color: #fff }

.lvbox__b { padding: 14px 16px 16px; position: relative }
.lvbox__t { font-weight: 700; font-size: 16px; margin-bottom: 4px; font-family: "Playfair Display SC", Georgia, serif }
.lvbox__s { font-size: 12px; color: var(--txt-d); margin-bottom: 10px }
.lvbox__m { font-size: 13px; color: var(--acc-2); font-weight: 600; margin-bottom: 4px }
.lvbox__p { font-size: 12px; color: var(--txt-dd) }
.lvbox__live {
  position: absolute; top: 12px; right: 16px;
  background: var(--hot); color: #fff;
  padding: 3px 10px; border-radius: 4px;
  font-size: 10px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase;
}

/* ===== BRAND OVERVIEW ===== */
.brand h3 {
  border-left: 3px solid var(--acc);
  padding-left: 14px; margin-top: 30px;
}
.brand p { color: var(--txt); line-height: 1.72 }
.badges {
  display: flex; flex-wrap: wrap; gap: 10px;
  margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--line);
}
.bdg {
  padding: 7px 13px;
  background: var(--bg-2);
  border: 1px solid var(--acc);
  border-radius: 4px;
  font-size: 12px; color: var(--txt);
  letter-spacing: .4px;
}

/* ===== REVIEWS ===== */
.rev__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
  margin-top: 22px;
}
.rbox {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 22px 24px;
  display: flex; flex-direction: column; gap: 14px;
}
.rbox__stars { color: var(--acc-2); font-size: 16px; letter-spacing: 4px }
.rbox__stars--four .star-off { color: var(--line-2); }
.rbox__q { font-size: 14px; line-height: 1.62; color: var(--txt); margin: 0 }
.rbox__meta {
  display: flex; align-items: center; gap: 10px;
  font-size: 12px; color: var(--txt-d);
  border-top: 1px solid var(--line); padding-top: 14px;
}
.rbox__a {
  display: flex; align-items: center; justify-content: center;
  width: 32px; height: 32px;
  background: linear-gradient(135deg, var(--acc), var(--acc-2));
  border-radius: 50%; color: #fff; font-weight: 700; font-size: 14px;
  flex: none;
}

/* ===== PAYMENTS ===== */
.pay__grid {
  display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px;
  margin: 22px 0 22px;
}
.pbox {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r-s);
  padding: 18px 14px;
  text-align: center;
  display: flex; flex-direction: column; gap: 4px;
}
.pbox .k { font-size: 15px; color: var(--txt); font-weight: 700 }
.pbox i { font-size: 11px; color: var(--txt-d); font-style: normal; text-transform: uppercase; letter-spacing: 1px }

.pay__times {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;
  margin-top: 8px;
}
.pay__times > div {
  background: var(--bg-3);
  border: 1px solid var(--line);
  border-radius: var(--r-s);
  padding: 14px 18px;
  display: flex; flex-direction: column; gap: 4px;
}
.pay__times .k {
  font-family: "Playfair Display SC", Georgia, serif;
  font-size: 17px; color: var(--acc-l); font-weight: 700;
}
.pay__times span:not(.k) { font-size: 12px; color: var(--txt-d) }

/* ===== FINAL CTA ===== */
.final {
  text-align: center; padding: 56px 22px;
  background:
    radial-gradient(620px 320px at 50% 50%, rgba(236, 42, 86, .18) 0%, transparent 70%),
    var(--bg-2);
  border-radius: var(--r);
  margin: 32px 22px;
  border: 1px solid var(--line);
  max-width: none;
}
.final h2 { margin-bottom: 10px }
.final p { color: var(--txt-d); margin-bottom: 24px }

/* ===== AUTHOR NOTE ===== */
.author {
  border-top: 1px solid var(--line);
}
.author p { color: var(--txt-d); font-size: 14px; line-height: 1.7; max-width: 880px }

/* ===== FAQ ===== */
.faq h2 { margin-bottom: 22px }
details {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--r-s);
  padding: 16px 20px;
  margin: 0 0 10px;
  transition: border-color .2s;
}
details[open] { border-color: var(--acc) }
summary {
  cursor: pointer; font-weight: 700; list-style: none;
  position: relative; padding-right: 32px;
  display: flex; align-items: center; min-height: 24px;
}
summary::-webkit-details-marker { display: none }
summary::after {
  content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  width: 22px; height: 22px;
  border: 1px solid var(--line); border-radius: 4px;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700; color: var(--acc-l); font-size: 16px;
  transition: transform .25s;
}
details[open] summary::after { transform: translateY(-50%) rotate(45deg); border-color: var(--acc) }
details p { margin: 12px 0 0; color: var(--txt-d); font-size: 15px; line-height: 1.66 }

/* ===== FOOTER ===== */
.foot {
  margin-top: 24px;
  border-top: 1px solid var(--line);
  background: rgba(16, 10, 13, .6);
}
.foot__top {
  max-width: 1240px; margin: 0 auto;
  padding: 42px 22px 26px;
  display: grid; grid-template-columns: 1.4fr 2fr; gap: 36px;
}
.foot__brand { font-size: 14px; color: var(--txt-d); line-height: 1.65 }
.foot__logo {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 16px;
}
.foot__brandname { display: flex; flex-direction: column; line-height: 1.1; font-size: 12px; color: var(--txt-d) }
.foot__brandname .k { color: var(--txt); font-size: 17px; font-weight: 700; margin-bottom: 2px; font-family: "Playfair Display SC", Georgia, serif }
.foot__legal { font-size: 12px; color: var(--txt-dd); margin: 0; line-height: 1.65 }
.foot__legal .k { color: var(--acc-l); font-weight: 700 }
.foot__cols {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.foot__col h4 {
  font-family: "Roboto Flex", system-ui, sans-serif;
  font-size: 12px; color: var(--acc-2); font-weight: 700;
  text-transform: uppercase; letter-spacing: 1.6px;
  margin: 0 0 12px;
}
.foot__col ul { list-style: none; padding: 0; margin: 0 }
.foot__col li {
  font-size: 13px; color: var(--txt-d);
  padding: 4px 0; cursor: default;
  transition: color .15s;
}
.foot__col li:hover { color: var(--txt) }
.foot__bottom {
  border-top: 1px solid var(--line);
  padding: 16px 22px;
  max-width: 1240px; margin: 0 auto;
  display: flex; justify-content: space-between; flex-wrap: wrap; gap: 14px;
  font-size: 12px; color: var(--txt-dd);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .welcome__grid { grid-template-columns: 1fr }
  .pay__grid { grid-template-columns: repeat(3, 1fr) }
  .tour__kpi { grid-template-columns: repeat(2, 1fr) }
  .rev__grid { grid-template-columns: 1fr }
  .foot__top { grid-template-columns: 1fr }
  .metr { grid-template-columns: repeat(3, 1fr) }
  .metr__cell:nth-child(4), .metr__cell:nth-child(5) { border-top: 1px solid var(--line); padding-top: 8px }
  .ladder { grid-template-columns: repeat(3, 1fr) }
  .ladder__step { transform: none !important }
}

@media (max-width: 880px) {
  .hero { grid-template-columns: 1fr; gap: 24px; padding-top: 32px }
  .hero__pic { order: -1 }
  .nav { display: none }
  .bar { padding: 11px 14px }
  section { padding: 36px 16px }
  .welcome, .tour, .final { padding: 36px 18px; margin: 22px 14px }
  .steps3__grid { grid-template-columns: 1fr }
  .loy__grid { grid-template-columns: 1fr }
  .foot__top { padding: 30px 16px 22px; gap: 22px }
  .foot__cols { grid-template-columns: repeat(2, 1fr); gap: 18px }
  .metr { padding: 8px 14px; grid-template-columns: repeat(2, 1fr); font-size: 12px }
  .metr__cell { padding: 4px 10px }
  .pay__times { grid-template-columns: 1fr }
  .kpi { grid-template-columns: repeat(2, 1fr) }
}

@media (max-width: 480px) {
  .grid { grid-template-columns: repeat(2, 1fr); gap: 10px }
  .live__grid { grid-template-columns: 1fr }
  .card h3 { font-size: 13px }
  .card p { font-size: 11px }
  .card__cover { font-size: 16px }
  .hero__btns { flex-direction: column; align-items: stretch }
  .cta--big { width: 100% }
  .pay__grid { grid-template-columns: repeat(2, 1fr) }
  .tour__kpi { grid-template-columns: 1fr }
  .foot__cols { grid-template-columns: 1fr }
  .ladder { grid-template-columns: repeat(2, 1fr) }
}

/* ===== Heading font override (per clone workflow PHASE 4) ===== */
h1, h2, h3, h4,
.hero h1, .welcome h2, .slots h2, .loyalty h2, .tour h2,
.live h2, .brand h2, .reviews h2, .pay h2, .final h2,
.faq h2, .steps3 h2, .author h2, .rtp h2, .brand h3, .live .lvbox__t,
.logo__t, .sbox__head, .lbox__h, .card__cover, .pay__times .k, .foot__brandname .k,
.metr__num, .kpi__num, .wbox__pct, .sbox__num, .ladder__name, .tour__kpi span {
  font-family: "Playfair Display SC", Georgia, serif;
}
.card h3 { font-family: "Roboto Flex", system-ui, sans-serif; font-weight: 600; }
