/* flagman276p.casino — премиум-лендинг Flagman / Флагман. Палитра: «Azure & Brass» (глубокий тёмно-синий кокпит + лазурь курсового огня + латунь секстанта) */

:root {
  --bg: #071119;
  --bg-2: #0c1c27;
  --bg-3: #123040;
  --line: #1c3a4c;
  --line-2: #2b5468;
  --txt: #e7eff5;
  --txt-d: #9fb4c2;
  --txt-dd: #6a8393;
  --acc: #149ce0;
  --acc-2: #e3a53a;
  --acc-2-d: #bd8322;
  --hot: #f4623e;
  --good: #4cc98a;
  --r: 12px;
  --r-s: 8px;
}

* { box-sizing: border-box }
html { scroll-behavior: smooth }
body {
  margin: 0;
  font: 16px/1.62 "Golos Text", system-ui, -apple-system, sans-serif;
  color: var(--txt);
  background:
    radial-gradient(1000px 580px at 92% -10%, rgba(20, 156, 224, .16) 0%, transparent 62%),
    radial-gradient(820px 580px at -10% 60%, rgba(227, 165, 58, .08) 0%, transparent 60%),
    var(--bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { max-width: 100%; display: block; height: auto }
a { color: var(--acc); text-decoration: none }
a:hover { text-decoration: underline }
strong { color: var(--acc-2); font-weight: 600 }
b { color: var(--acc-2); font-weight: 600 }

.skip {
  position: absolute; top: -42px; left: 8px;
  padding: 8px 12px; background: var(--acc-2); color: #071119;
  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(10, 19, 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(20, 156, 224, .6));
}
.logo__t {
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-weight: 700; line-height: 1; letter-spacing: -.3px;
}
.logo__sub {
  display: block; font-size: 10px; color: var(--txt-d);
  letter-spacing: 2.4px; font-weight: 600; margin-top: 4px;
  text-transform: uppercase;
}
.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); border-bottom-color: var(--acc); text-decoration: none }

/* ===== CTA ===== */
.cta {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 11px 20px; border-radius: 8px;
  font-family: "Alegreya Sans SC", "Trebuchet MS", 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-2) 100%);
  color: #071119; border: 0;
  box-shadow: 0 12px 30px -10px rgba(20, 156, 224, .75);
  font-weight: 700;
}
.cta--hot:hover { box-shadow: 0 16px 38px -8px rgba(20, 156, 224, .95) }
.cta--ghost { background: transparent; color: var(--txt); border-color: var(--line) }
.cta--ghost:hover { border-color: var(--acc); color: var(--acc) }

/* ===== 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(20, 156, 224, .05), rgba(227, 165, 58, .03));
  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: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-weight: 700; font-size: 15px; color: var(--acc);
  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);
  background: rgba(20, 156, 224, .09);
  border: 1px solid rgba(20, 156, 224, .28);
  padding: 6px 12px; border-radius: 4px;
  margin: 0 0 18px;
  text-transform: uppercase; font-weight: 700;
}
h1 {
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: clamp(28px, 4.2vw, 46px); line-height: 1.1;
  margin: 0 0 18px; letter-spacing: -.9px; font-weight: 700;
}
.acc { color: var(--acc) }
.hero__sub {
  color: var(--txt-d); font-size: 16px; margin: 0 0 14px; line-height: 1.65;
}
.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 28% 30%, rgba(20, 156, 224, .26), transparent 60%),
    radial-gradient(360px 280px at 78% 78%, rgba(227, 165, 58, .18), transparent 65%),
    linear-gradient(135deg, #081722 0%, #12303f 100%);
  aspect-ratio: 16 / 11;
  box-shadow: 0 24px 64px -22px rgba(20, 156, 224, .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: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: 26px; font-weight: 700;
  color: var(--acc); letter-spacing: -.6px;
}
.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;
}
h2 {
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: clamp(23px, 3.1vw, 34px); line-height: 1.2;
  margin: 0 0 16px; letter-spacing: -.5px; font-weight: 700;
}
h3 {
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: clamp(17px, 2vw, 21px); line-height: 1.32;
  margin: 26px 0 10px; color: var(--acc); font-weight: 700; letter-spacing: -.2px;
}
p { margin: 0 0 14px; color: var(--txt) }
.lead { color: var(--txt-d); font-size: 16px; margin-bottom: 24px; max-width: 780px }

/* ===== WELCOME ===== */
.welcome {
  background:
    radial-gradient(720px 360px at 82% 28%, rgba(227, 165, 58, .07) 0%, transparent 70%),
    rgba(15, 28, 21, .55);
  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(20, 156, 224, .08), transparent 60%);
  pointer-events: none;
}
.wbox__step {
  font-family: "Alegreya Sans SC", "Trebuchet MS", 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: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: 30px; font-weight: 700; line-height: 1;
  color: var(--acc); letter-spacing: -.8px;
  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.5 }

/* ===== 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: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-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);
}
.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(20, 156, 224, .42);
}
.card__cover {
  width: 100%; aspect-ratio: 4 / 3;
  display: flex; align-items: center; justify-content: center;
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-weight: 700; font-size: 22px; color: rgba(231, 239, 245, .92);
  text-align: center; padding: 14px;
  letter-spacing: -.3px; line-height: 1.15;
  position: relative; overflow: hidden;
}
.card__cover::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(160deg, transparent 40%, rgba(0,0,0,.35) 100%);
  pointer-events: none;
}
.cv-1 { background: linear-gradient(135deg, #0a2233 0%, #149ce0 100%) }
.cv-2 { background: linear-gradient(135deg, #071c2b 0%, #e3a53a 100%); color: #071119 }
.cv-3 { background: linear-gradient(135deg, #0e2436 0%, #3bb0e8 100%) }
.cv-4 { background: linear-gradient(135deg, #0a2740 0%, #bd8322 100%); color: #071119 }
.cv-5 { background: linear-gradient(135deg, #12283a 0%, #6cc6ef 100%); color: #071119 }
.cv-6 { background: linear-gradient(135deg, #08202f 0%, #e3a53a 100%); color: #071119 }
.cv-7 { background: linear-gradient(135deg, #122334 0%, #2b8fd6 100%) }
.cv-8 { background: linear-gradient(135deg, #08202f 0%, #149ce0 100%) }
.cv-9 { background: linear-gradient(135deg, #0a2536 0%, #e3a53a 100%); color: #071119 }
.cv-10 { background: linear-gradient(135deg, #0e2231 0%, #e3a53a 100%); color: #071119 }
.cv-11 { background: linear-gradient(135deg, #0a2537 0%, #e3a53a 100%) }
.cv-12 { background: linear-gradient(135deg, #122536 0%, #2b8fd6 100%) }
.cv-13 { background: linear-gradient(135deg, #0b2334 0%, #149ce0 100%) }
.cv-14 { background: linear-gradient(135deg, #0a2740 0%, #4cc98a 100%); color: #071119 }
.cv-15 { background: linear-gradient(135deg, #101d3a 0%, #6cc6ef 100%) }

.card h3 { font-size: 15px; margin: 12px 14px 4px; color: var(--txt); font-weight: 700 }
.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: 600;
  border: 1px solid var(--line); transition: all .15s;
}
.card__btn:hover { background: var(--acc); border-color: var(--acc); color: #071119; 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);
}

/* ===== 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: 17px; margin-bottom: 10px; color: var(--acc-2) }
.lbox p { color: var(--txt-d); font-size: 14px; margin: 0; line-height: 1.6 }

/* 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(227, 165, 58, .1)) }
.ladder__name {
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: 12px; font-weight: 700; color: var(--txt);
  display: block; line-height: 1; 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(20, 156, 224, .1) 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: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: 22px; font-weight: 700; color: var(--acc);
  margin-bottom: 4px; letter-spacing: -.3px;
}
.tour__kpi .b { font-size: 14px; font-weight: 700; color: var(--txt) }
.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(244, 98, 62, .4);
}
.lvbox__cover {
  width: 100%; aspect-ratio: 16 / 9;
  display: flex; align-items: center; justify-content: center;
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-weight: 700; font-size: 18px; color: rgba(231, 239, 245, .94);
  padding: 12px; text-align: center; letter-spacing: -.2px;
  position: relative; overflow: hidden;
}
.lv-1 { background: linear-gradient(135deg, #0a2130 0%, #e3a53a 100%) }
.lv-2 { background: linear-gradient(135deg, #0a1c28 0%, #149ce0 100%) }
.lv-3 { background: linear-gradient(135deg, #0a2740 0%, #bd8322 100%); color: #071119 }
.lv-4 { background: linear-gradient(135deg, #12283a 0%, #3bb0e8 100%) }
.lv-5 { background: linear-gradient(135deg, #122536 0%, #2b8fd6 100%) }
.lv-6 { background: linear-gradient(135deg, #0a2536 0%, #e3a53a 100%); color: #071119 }

.lvbox__b { padding: 14px 16px 16px; position: relative }
.lvbox__t { font-weight: 700; font-size: 16px; margin-bottom: 4px }
.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.7 }
.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.6; 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__meta strong { color: var(--txt); font-weight: 600 }
.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: #071119; 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 .b { 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 .b {
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
  font-size: 16px; color: var(--acc); font-weight: 700;
}
.pay__times span { 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(20, 156, 224, .15) 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 }

/* ===== 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); font-size: 13px;
  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.65 }

/* ===== FOOTER ===== */
.foot {
  margin-top: 24px;
  border-top: 1px solid var(--line);
  background: rgba(10, 19, 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__logo span { display: flex; flex-direction: column; line-height: 1.1 }
.foot__logo .hl { color: var(--txt); font-size: 16px; font-weight: 700; margin-bottom: 2px }
.foot__legal { font-size: 12px; color: var(--txt-dd); margin: 0; line-height: 1.65 }
.foot__legal .hl { color: var(--acc); font-weight: 600 }
.foot__cols {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.foot__col h4 {
  font-family: "Alegreya Sans SC", "Trebuchet MS", 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 — гарантия Alegreya Sans SC на всех заголовках */
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, .brand h3, .slots .card h3, .live .lvbox__t {
  font-family: "Alegreya Sans SC", "Trebuchet MS", system-ui, sans-serif;
}
