/* 7k8486.buzz — 7K Casino / 7К Казино. Концепция «Канатная дорога»: опора, трос, кабина. Префикс .socket- */

:root {
  --bg: #0e1114;
  --sf: #171b20;
  --sf2: #1d2228;
  --ln: #232a31;
  --ln2: #2f3841;
  --tx: #e9eef2;
  --mu: #8e99a3;
  --mu2: #6d7882;
  --ac: #e05252;
  --ac-d: #b93e3e;
  --se: #6f9ec4;
  --se-d: #4f7ea6;
  --ok: #63c08b;
  --r-top: 20px;
  --r-bot: 3px;
  --gut: clamp(18px, 3.4vw, 54px);
}

* { box-sizing: border-box }
html { scroll-behavior: smooth }

body {
  margin: 0;
  font: 16.5px/1.74 "Vollkorn", Georgia, "Times New Roman", serif;
  color: var(--tx);
  background:
    linear-gradient(180deg, rgba(111, 158, 196, .08) 0%, transparent 420px),
    radial-gradient(880px 460px at 92% 6%, rgba(224, 82, 82, .10) 0%, transparent 62%),
    var(--bg);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4,
.socket-logo__t, .socket-kpi__n, .socket-step__i, .socket-dep__pct,
.socket-tour__v, .socket-lvl__n, .socket-card__rtp, .socket-num,
.socket-btn, .socket-nav a, .socket-over, .socket-chip, .socket-tag,
.socket-foot__nv, .socket-rate, .socket-quote__nm, .socket-tbl th {
  font-family: "Scada", "Trebuchet MS", system-ui, sans-serif;
}

h1, h2, h3, h4 { font-weight: 700; letter-spacing: -.005em; margin: 0 0 14px }
h1 { font-size: clamp(27px, 3.9vw, 45px); line-height: 1.14 }
h2 { font-size: clamp(22px, 2.7vw, 31px); line-height: 1.2 }
h3 { font-size: 18px; line-height: 1.28 }
h4 { font-size: 16px }
p { margin: 0 0 14px }
svg { max-width: 100% }
a { color: var(--se); text-decoration: none }
a:hover { text-decoration: underline }

/* акценты только через CSS-классы, без <b>/<strong> */
.socket-hl { color: var(--ac); font-weight: 500 }
.socket-hl2 { color: var(--se); font-weight: 500 }
.socket-num { color: var(--tx); font-weight: 700; font-variant-numeric: tabular-nums }

.socket-wrap { max-width: 1210px; margin: 0 auto; padding: 0 var(--gut) }

.socket-skip {
  position: absolute; left: 12px; top: -60px; z-index: 90;
  background: var(--ac); color: #fff; padding: 9px 15px; border-radius: var(--r-bot);
}
.socket-skip:focus { top: 12px }

/* ============ ШАПКА ============ */
.socket-bar {
  position: sticky; top: 0; z-index: 60;
  display: flex; align-items: center; gap: 20px;
  padding: 12px var(--gut);
  background: rgba(14, 17, 20, .93);
  border-bottom: 1px solid var(--ln);
  backdrop-filter: blur(9px);
}
.socket-logo { display: flex; align-items: center; gap: 11px; color: var(--tx) }
.socket-logo:hover { text-decoration: none }
.socket-logo svg { width: 38px; height: 38px; flex: 0 0 38px }
.socket-logo__t { display: block; font-size: 17px; font-weight: 700; line-height: 1.18 }
.socket-logo__s { display: block; font-size: 11px; color: var(--mu); font-weight: 400; letter-spacing: .04em }

.socket-nav { display: flex; gap: 17px; margin-left: auto; flex-wrap: wrap }
.socket-nav a { color: var(--mu); font-size: 13.5px; letter-spacing: .02em; padding: 4px 0; border-bottom: 1px solid transparent }
.socket-nav a:hover { color: var(--tx); border-bottom-color: var(--ac); text-decoration: none }

.socket-btn {
  display: inline-block; text-align: center; cursor: pointer;
  padding: 13px 25px; font-size: 15px; font-weight: 700; letter-spacing: .015em;
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
  background: var(--ac); color: #fff; border: 1px solid var(--ac);
  transition: background .16s, transform .16s;
}
.socket-btn:hover { background: var(--ac-d); text-decoration: none; transform: translateY(-1px) }
.socket-btn--sm { padding: 9px 17px; font-size: 13.5px; border-radius: 13px 13px var(--r-bot) var(--r-bot) }
.socket-btn--gh { background: transparent; color: var(--se); border-color: var(--se-d) }
.socket-btn--gh:hover { background: rgba(111, 158, 196, .12) }
.socket-btn--wide { display: block; width: 100%; padding: 15px 20px }
.socket-btn--card { padding: 8px 14px; font-size: 13px; border-radius: 12px 12px var(--r-bot) var(--r-bot) }

/* ============ ОБЩЕЕ ДЛЯ СЕКЦИЙ ============ */
section { padding: 54px 0 }
.socket-over {
  font-size: 11.5px; letter-spacing: .17em; text-transform: uppercase;
  color: var(--ac); margin: 0 0 10px;
}
.socket-lead { color: var(--mu); max-width: 74ch; font-size: 16px }
.socket-band { border-top: 1px solid var(--ln) }
.socket-band--sf { background: var(--sf) }

/* ============ HERO + KPI-ЛЕНТА ============ */
.socket-hero { padding: 46px 0 0 }
.socket-chip {
  display: inline-block; margin: 0 0 16px; padding: 6px 13px;
  font-size: 12px; letter-spacing: .05em; color: var(--se);
  border: 1px solid var(--ln2); border-radius: 14px 14px var(--r-bot) var(--r-bot);
  background: var(--sf);
}
.socket-hero__sub { max-width: 70ch; color: var(--mu); font-size: 17px }
.socket-hero__act { display: flex; gap: 13px; flex-wrap: wrap; margin: 22px 0 30px }

.socket-line { display: block; width: 100%; height: auto; margin: 6px 0 0 }

.socket-kpi {
  display: grid; grid-template-columns: repeat(5, 1fr);
  border: 1px solid var(--ln); border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
  background: var(--sf); overflow: hidden; margin-top: -2px;
}
.socket-kpi > div { padding: 17px 16px; border-left: 1px solid var(--ln) }
.socket-kpi > div:first-child { border-left: 0 }
.socket-kpi__n { display: block; font-size: 23px; font-weight: 700; color: var(--tx); line-height: 1.1 }
.socket-kpi__l { display: block; font-size: 12.5px; color: var(--mu); margin-top: 5px }

/* ============ ШАГИ ============ */
.socket-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 26px }
.socket-step {
  padding: 20px 20px 22px; background: var(--sf); border: 1px solid var(--ln);
  border-top: 2px solid var(--se-d);
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
}
.socket-step__i { display: block; font-size: 12px; letter-spacing: .16em; color: var(--se); margin-bottom: 9px }
.socket-step p { margin: 0; color: var(--mu); font-size: 15px }

/* ============ ПАКЕТ ============ */
.socket-dep { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin: 26px 0 22px }
.socket-dep__c {
  padding: 19px 18px 21px; background: var(--sf2); border: 1px solid var(--ln);
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
  position: relative;
}
.socket-dep__c::before {
  content: ""; position: absolute; left: 18px; right: 18px; top: -1px; height: 2px;
  background: linear-gradient(90deg, var(--ac), var(--se));
}
.socket-dep__pct { display: block; font-size: 27px; font-weight: 700; color: var(--ac) }
.socket-dep__c h3 { margin: 6px 0 8px; font-size: 16px }
.socket-dep__c p { margin: 0; font-size: 14.5px; color: var(--mu) }
.socket-terms { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 20px }
.socket-tag {
  font-size: 12.5px; padding: 6px 12px; color: var(--mu);
  border: 1px solid var(--ln2); border-radius: 12px 12px var(--r-bot) var(--r-bot);
}

/* ============ КАТАЛОГ ============ */
.socket-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; margin: 26px 0 20px }
.socket-card {
  background: var(--sf); border: 1px solid var(--ln);
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
  padding: 16px 15px 17px; display: flex; flex-direction: column; gap: 9px;
  position: relative;
}
.socket-card::before {
  content: ""; position: absolute; top: -7px; left: 50%; width: 1px; height: 7px; background: var(--ln2);
}
.socket-card h3 { margin: 0; font-size: 15.5px; line-height: 1.26 }
.socket-card__p { font-size: 12.5px; color: var(--mu2); margin: 0 }
.socket-card__rtp { font-size: 13px; color: var(--se); margin: 0; font-weight: 700 }
.socket-card__d { font-size: 13.5px; color: var(--mu); margin: 0; flex: 1 }
.socket-cable { height: 1px; background: var(--ln2); margin: 4px 0 34px; position: relative }

/* ============ ЖИВОЙ ЗАЛ ============ */
.socket-live { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin-top: 26px }
.socket-lv {
  padding: 18px 18px 20px; background: var(--sf2); border: 1px solid var(--ln);
  border-left: 2px solid var(--ac-d);
  border-radius: 0 var(--r-top) var(--r-bot) 0;
}
.socket-lv h3 { margin: 0 0 6px; font-size: 16px }
.socket-lv p { margin: 0; font-size: 14.5px; color: var(--mu) }
.socket-lv__m { display: block; margin-top: 8px; font-size: 12.5px; color: var(--se) }

/* ============ ЛОЯЛЬНОСТЬ ============ */
.socket-lvls { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; margin-top: 26px }
.socket-lvl {
  padding: 16px 14px 18px; background: var(--sf); border: 1px solid var(--ln);
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot); text-align: center;
}
.socket-lvl__n { display: block; font-size: 15px; font-weight: 700; margin-bottom: 7px }
.socket-lvl__cb { display: block; font-size: 22px; font-weight: 700; color: var(--ac); font-family: "Scada", sans-serif }
.socket-lvl p { margin: 6px 0 0; font-size: 12.5px; color: var(--mu) }

/* ============ ТУРНИР ============ */
.socket-tour { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin: 26px 0 22px }
.socket-tour__c {
  padding: 18px; background: var(--sf2); border: 1px solid var(--ln);
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
}
.socket-tour__v { display: block; font-size: 21px; font-weight: 700; color: var(--se) }
.socket-tour__c p { margin: 6px 0 0; font-size: 13.5px; color: var(--mu) }

/* ============ ТАБЛИЦА КАССЫ ============ */
.socket-scroll { overflow-x: auto; margin: 24px 0 18px; border: 1px solid var(--ln); border-radius: 14px 14px var(--r-bot) var(--r-bot) }
.socket-tbl { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 14.5px }
.socket-tbl th, .socket-tbl td { padding: 12px 15px; text-align: left; border-bottom: 1px solid var(--ln) }
.socket-tbl th { background: var(--sf2); font-size: 13px; letter-spacing: .04em; color: var(--se); font-weight: 700 }
.socket-tbl td { color: var(--mu) }
.socket-tbl td:first-child { color: var(--tx) }
.socket-tbl tr:last-child td { border-bottom: 0 }

/* ============ ДОВЕРИЕ / ОТВ. ИГРА ============ */
.socket-two { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 24px }
.socket-box {
  padding: 22px 22px 24px; background: var(--sf); border: 1px solid var(--ln);
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
}
.socket-box h3 { margin: 0 0 10px }
.socket-box p { margin: 0 0 10px; font-size: 15px; color: var(--mu) }
.socket-box p:last-child { margin: 0 }
.socket-bdgs { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px }

/* ============ ОТЗЫВЫ ============ */
.socket-revs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 22px }
.socket-quote {
  padding: 20px 19px 21px; background: var(--sf2); border: 1px solid var(--ln);
  border-radius: var(--r-top) var(--r-top) var(--r-bot) var(--r-bot);
}
.socket-rate { color: var(--ac); font-size: 15px; letter-spacing: .16em; margin-bottom: 10px }
.socket-rate span { color: var(--ln2) }
.socket-quote p { font-size: 15px; margin: 0 0 12px }
.socket-quote__nm { font-size: 13px; color: var(--mu); display: block }

/* ============ FAQ ============ */
.socket-faq { margin-top: 24px }
.socket-faq details {
  border: 1px solid var(--ln); background: var(--sf);
  border-radius: 14px 14px var(--r-bot) var(--r-bot); margin-bottom: 10px; overflow: hidden;
}
.socket-faq summary {
  cursor: pointer; padding: 15px 18px; font-family: "Scada", sans-serif;
  font-weight: 700; font-size: 15.5px; list-style: none; position: relative; padding-right: 46px;
}
.socket-faq summary::-webkit-details-marker { display: none }
.socket-faq summary::after {
  content: "+"; position: absolute; right: 18px; top: 13px; color: var(--ac); font-size: 21px; line-height: 1;
}
.socket-faq details[open] summary::after { content: "\2212" }
.socket-faq details[open] summary { border-bottom: 1px solid var(--ln) }
.socket-faq div { padding: 14px 18px 17px; color: var(--mu); font-size: 15px }
.socket-faq div p:last-child { margin: 0 }

/* ============ ПРЕ-ФУТЕР ============ */
.socket-final {
  text-align: center; padding: 46px var(--gut) 50px; background: var(--sf);
  border-top: 1px solid var(--ln); border-bottom: 1px solid var(--ln);
}
.socket-final__t { font-family: "Scada", sans-serif; font-weight: 700; font-size: clamp(21px, 2.5vw, 29px); margin: 0 0 12px }
.socket-final p { color: var(--mu); max-width: 62ch; margin: 0 auto 22px }

/* ============ ПОДВАЛ ============ */
.socket-foot { padding: 40px 0 30px; font-size: 14px; color: var(--mu) }
.socket-foot__g { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 26px }
.socket-foot__nv { color: var(--tx); font-size: 15px; display: block; margin-bottom: 8px }
.socket-foot h4 { color: var(--tx); margin: 0 0 10px; font-size: 14px; letter-spacing: .05em; text-transform: uppercase }
.socket-foot ul { list-style: none; padding: 0; margin: 0 }
.socket-foot li { margin-bottom: 7px }
.socket-foot li a { color: var(--mu) }
.socket-foot li a:hover { color: var(--tx) }
.socket-foot__b {
  margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--ln);
  display: flex; justify-content: space-between; gap: 14px; flex-wrap: wrap; font-size: 13px; color: var(--mu2);
}

/* ============ АДАПТИВ ============ */
@media (max-width: 1080px) {
  .socket-grid { grid-template-columns: repeat(3, 1fr) }
  .socket-lvls { grid-template-columns: repeat(3, 1fr) }
  .socket-kpi { grid-template-columns: repeat(3, 1fr) }
  .socket-kpi > div:nth-child(4) { border-left: 0 }
  .socket-tour { grid-template-columns: repeat(2, 1fr) }
  .socket-foot__g { grid-template-columns: 1fr 1fr }
}
@media (max-width: 860px) {
  .socket-nav { display: none }
  .socket-live { grid-template-columns: repeat(2, 1fr) }
  .socket-dep { grid-template-columns: repeat(2, 1fr) }
  .socket-two { grid-template-columns: 1fr }
  .socket-revs { grid-template-columns: 1fr }
  .socket-steps { grid-template-columns: 1fr }
  section { padding: 40px 0 }
}
@media (max-width: 620px) {
  body { font-size: 16px }
  .socket-grid { grid-template-columns: repeat(2, 1fr) }
  .socket-kpi { grid-template-columns: repeat(2, 1fr) }
  .socket-kpi > div { border-left: 0; border-top: 1px solid var(--ln) }
  .socket-lvls { grid-template-columns: repeat(2, 1fr) }
  .socket-live { grid-template-columns: 1fr }
  .socket-dep { grid-template-columns: 1fr }
  .socket-tour { grid-template-columns: 1fr }
  .socket-foot__g { grid-template-columns: 1fr }
  .socket-hero__act .socket-btn { width: 100% }
}
