/* up-x178.ru — премиум-лендинг Up-X / АП Икс. Палитра: «Подъём / множитель» (графит + электрик-зелёный + жёлтый) */

:root {
  --bg: #240a1c;
  --bg-2: #421432;
  --bg-3: #22161c;
  --line: #321e28;
  --line-2: #482c3a;
  --txt: #d9e5f0;
  --txt-d: #c0a0c2;
  --txt-dd: #796e80;
  --acc: #b03eac;
  --acc-2: #68c094;
  --acc-2-d: #00ffd7;
  --hot: #57ff3d;
  --good: #c26cff;
  --r: 12px;
  --r-s: 8px;
}

* { box-sizing: border-box }
html { scroll-behavior: smooth }
body {
  margin: 0;
  font: 16px/1.62 "IBM Plex Sans", 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(151, 14, 255, .14) 0%, transparent 62%),
    radial-gradient(820px 580px at -10% 60%, rgba(0, 245, 255, .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: #0a0a0d;
  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(11, 7, 9, .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(151, 14, 255, .55));
}
.logo__t {
  font-family: "Tenor Sans", "IBM Plex Sans", 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: "Tenor Sans", "IBM Plex Sans", system-ui, sans-serif;
  font-weight: 600; 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: #0c0612; border: 0;
  box-shadow: 0 12px 30px -10px rgba(151, 14, 255, .75);
  font-weight: 700;
}
.cta--hot:hover { box-shadow: 0 16px 38px -8px rgba(151, 14, 255, .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(151, 14, 255, .04), rgba(0, 245, 255, .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: "Tenor Sans", "IBM Plex Sans", 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(151, 14, 255, .08);
  border: 1px solid rgba(151, 14, 255, .25);
  padding: 6px 12px; border-radius: 4px;
  margin: 0 0 18px;
  text-transform: uppercase; font-weight: 700;
}
h1 {
  font-family: "Tenor Sans", "IBM Plex Sans", system-ui, sans-serif;
  font-size: clamp(30px, 4.4vw, 50px); line-height: 1.06;
  margin: 0 0 18px; letter-spacing: -1.2px; 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(151, 14, 255, .25), transparent 60%),
    radial-gradient(360px 280px at 78% 78%, rgba(0, 245, 255, .18), transparent 65%),
    linear-gradient(135deg, #160c12 0%, #1e1520 100%);
  aspect-ratio: 16 / 11;
  box-shadow: 0 24px 64px -22px rgba(151, 14, 255, .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: "Tenor Sans", 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: "Tenor Sans", "IBM Plex Sans", system-ui, sans-serif;
  font-size: clamp(24px, 3.2vw, 36px); line-height: 1.18;
  margin: 0 0 16px; letter-spacing: -.7px; font-weight: 700;
}
h3 {
  font-family: "Tenor Sans", "IBM Plex Sans", system-ui, sans-serif;
  font-size: clamp(17px, 2vw, 21px); line-height: 1.32;
  margin: 26px 0 10px; color: var(--acc); font-weight: 600; letter-spacing: -.3px;
}
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(0, 245, 255, .07) 0%, transparent 70%),
    rgba(24, 15, 19, .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(151, 14, 255, .07), transparent 60%);
  pointer-events: none;
}
.wbox__step {
  font-family: "Tenor Sans", 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: "Tenor Sans", 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: "Tenor Sans", 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(151, 14, 255, .42);
}
.card__cover {
  width: 100%; aspect-ratio: 4 / 3;
  display: flex; align-items: center; justify-content: center;
  font-family: "Tenor Sans", system-ui, sans-serif;
  font-weight: 700; font-size: 22px; color: rgba(237, 232, 244, .9);
  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, #250a3d 0%, #b03eac 100%) }
.cv-2 { background: linear-gradient(135deg, #052a1e 0%, #68c094 100%); color: #0a0a0d }
.cv-3 { background: linear-gradient(135deg, #301f0a 0%, #ff824d 100%) }
.cv-4 { background: linear-gradient(135deg, #1e1a3a 0%, #c45cff 100%); color: #0e0816 }
.cv-5 { background: linear-gradient(135deg, #083a20 0%, #3affa2 100%) }
.cv-6 { background: linear-gradient(135deg, #3a0822 0%, #ff4dc0 100%) }
.cv-7 { background: linear-gradient(135deg, #162a08 0%, #57ff3d 100%) }
.cv-8 { background: linear-gradient(135deg, #3a0822 0%, #b03eac 100%) }
.cv-9 { background: linear-gradient(135deg, #081722 0%, #4dc0ff 100%); color: #0e0816 }
.cv-10 { background: linear-gradient(135deg, #162a08 0%, #68c094 100%); color: #0a0a0d }
.cv-11 { background: linear-gradient(135deg, #2a0826 0%, #d400ba 100%) }
.cv-12 { background: linear-gradient(135deg, #3a2e1a 0%, #b9ff66 100%) }

.card h3 { font-size: 15px; margin: 12px 14px 4px; color: var(--txt); font-weight: 600 }
.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: #0c0612; 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(0, 245, 255, .08)) }
.ladder__name {
  font-family: "Tenor Sans", 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(151, 14, 255, .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__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: "Tenor Sans", 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(87, 255, 61, .4);
}
.lvbox__cover {
  width: 100%; aspect-ratio: 16 / 9;
  display: flex; align-items: center; justify-content: center;
  font-family: "Tenor Sans", system-ui, sans-serif;
  font-weight: 700; font-size: 18px; color: rgba(237, 232, 244, .92);
  padding: 12px; text-align: center; letter-spacing: -.2px;
  position: relative; overflow: hidden;
}
.lv-1 { background: linear-gradient(135deg, #3a0a14 0%, #ff4dc0 100%) }
.lv-2 { background: linear-gradient(135deg, #301f0a 0%, #57ff3d 100%) }
.lv-3 { background: linear-gradient(135deg, #200a3a 0%, #b03eac 100%) }
.lv-4 { background: linear-gradient(135deg, #083a20 0%, #00ffd7 100%); color: #0a0a0d }
.lv-5 { background: linear-gradient(135deg, #162a08 0%, #b9ff66 100%) }
.lv-6 { background: linear-gradient(135deg, #081722 0%, #4dc0ff 100%); color: #0a0a0d }

.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: #ffffff;
  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: #0c0612; 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: "Tenor Sans", 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(151, 14, 255, .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: 600; 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(11, 7, 9, .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 strong { 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 strong { color: var(--acc) }
.foot__cols {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.foot__col h4 {
  font-family: "Tenor Sans", 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 */
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: 'Tenor Sans', Georgia, serif; }

.tour__kpi span{font-weight:700}
/* single-weight heading no-faux-bold */
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-weight:400 !important}
