/* ============================================================
   hungary22betcasino.com — 22Bet Magyarország szatellit
   A keret (fejléc/lábléc) a márka teal színében marad.
   Belül elefántcsont paneleken a magyar trikolór dolgozik:
   piros és zöld szegélyek, arany Szent Korona, tulipán-minta.
   ============================================================ */

:root {
  --vaz: #054248;
  --vaz-panel: #054146;
  --hatter: #05343a;
  --piros: #ce2939;
  --piros-mely: #a31d2b;
  --piros-halvany: #fdeff0;
  --piros-vonal: #f3ced2;
  --zold: #3e7d4d;
  --zold-mely: #2f6b3f;
  --zold-halvany: #edf5ef;
  --zold-vonal: #cde2d3;
  --arany: #d9a441;
  --arany-mely: #b57f22;
  --cta-zold: #2eb256;
  --cta-zold-mely: #2ca331;
  --tinta: #26262a;
  --tinta-lagy: #3d3c40;
  --tinta-halvany: #6f6d74;
  --csontszin: #fbf8f2;
  --csont-vonal: #e8e1d4;
  --login-bg: #185b62;
  --sugar: 6px;
  --szelesseg: 1200px;
  --iras: "Open Sans", Arial, sans-serif;
  --iras-cim: "Roboto Condensed", "Open Sans", Arial, sans-serif;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: var(--iras);
  font-size: 15px;
  line-height: 1.7;
  color: var(--tinta);
  background-color: var(--hatter);
  /* Halvány tulipán népi motívum a márka tealje felett */
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.05' stroke-width='1.3'%3E%3Cpath d='M36 44c0-8-6-10-6-16 0-4 3-7 6-7s6 3 6 7c0 6-6 8-6 16z'/%3E%3Cpath d='M30 28c-4-2-8-1-9 3M42 28c4-2 8-1 9 3'/%3E%3Cpath d='M36 44v10M30 50c2 2 4 3 6 3s4-1 6-3'/%3E%3Ccircle cx='36' cy='18' r='1.6'/%3E%3C/g%3E%3C/svg%3E"),
    radial-gradient(1200px 560px at 50% 0%, #0a636b 0%, var(--hatter) 60%, #032a2f 100%);
  background-attachment: scroll, fixed;
}

img { max-width: 100%; height: auto; display: block; }

a { color: var(--zold-mely); text-decoration: none; }
a:hover { text-decoration: underline; }

.keret {
  max-width: var(--szelesseg);
  margin: 0 auto;
  padding: 0 20px;
}

/* ============ HALADÁSJELZŐ ============ */

.haladas {
  position: fixed;
  top: 0; left: 0;
  height: 3px;
  width: 0;
  background: linear-gradient(90deg, var(--piros) 0%, var(--piros) 34%, #ffffff 34%, #ffffff 66%, var(--zold) 66%);
  z-index: 120;
  transition: width .08s linear;
}

/* ============ FEJLÉC ============ */

.fejlec {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  background: var(--vaz);
  box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}

.fejlec__sor {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 72px;
  gap: 18px;
}

.emblema { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.emblema img { height: 44px; width: auto; }

.fomenu { display: flex; align-items: center; gap: 4px; margin: 0 auto; }

.fomenu a {
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  padding: 10px 18px;
  border-radius: 38px;
  transition: background .2s;
}
.fomenu a:hover { background: rgba(255, 255, 255, .1); text-decoration: none; }
.fomenu a.fomenu--aktiv { background: var(--zold); }

.fejlec__gombok { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }

.korgomb {
  background: var(--cta-zold);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 11px 26px;
  border-radius: 38px;
  flex-shrink: 0;
  transition: background .2s;
}
.korgomb:hover { background: var(--cta-zold-mely); text-decoration: none; }
.korgomb--sotet { background: var(--login-bg); }
.korgomb--sotet:hover { background: #0c4a50; }

.zaszlo {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  flex-shrink: 0;
}
.zaszlo svg {
  width: 30px;
  height: 20px;
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .25);
}

.szendvics {
  display: none;
  background: none;
  border: 0;
  cursor: pointer;
  padding: 8px;
}
.szendvics span {
  display: block;
  width: 26px; height: 3px;
  background: #fff;
  border-radius: 2px;
  margin: 5px 0;
  transition: transform .25s, opacity .25s;
}
.szendvics.szendvics--x span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.szendvics.szendvics--x span:nth-child(2) { opacity: 0; }
.szendvics.szendvics--x span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

.lenyilo {
  display: none;
  background: var(--vaz-panel);
  border-top: 1px solid rgba(255, 255, 255, .08);
}
.lenyilo.lenyilo--nyitva { display: block; }
.lenyilo a {
  display: block;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  padding: 14px 24px;
  border-bottom: 1px solid rgba(255, 255, 255, .06);
  transition: background .2s;
}
.lenyilo a:hover { background: rgba(255, 255, 255, .07); text-decoration: none; }

.lenyilo__gombok {
  display: flex;
  justify-content: center;
  gap: 12px;
  padding: 18px 24px 22px;
}
.lenyilo__gombok a {
  flex: 1 1 0;
  max-width: 190px;
  padding: 13px 18px;
  border: 0;
  border-radius: 38px;
  background: var(--cta-zold);
  transition: background .2s;
}
.lenyilo__gombok a:hover { background: var(--cta-zold-mely); }
.lenyilo__gombok a.lenyilo__sotet { background: var(--login-bg); }
.lenyilo__gombok a.lenyilo__sotet:hover { background: #0c4a50; }

/* ============ FEJKÉP (hero) ============ */

.fejkep {
  margin-top: 72px;
  background: linear-gradient(128deg, #02191d 0%, var(--vaz) 55%, #0a636b 100%);
  position: relative;
  overflow: hidden;
  border-bottom: 5px solid var(--piros);
}

.fejkep__sor {
  display: flex;
  align-items: center;
  gap: 40px;
  padding: 52px 0;
  min-height: 420px;
  position: relative;
  z-index: 1;
}

.fejkep__hatter {
  position: absolute;
  top: 0; bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(100%, var(--szelesseg));
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  overflow: hidden;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
}
.fejkep__hatter::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, rgba(2, 20, 23, .95) 0%, rgba(4, 48, 53, .74) 40%, rgba(10, 99, 107, .1) 74%);
}

.fejkep__szoveg { flex: 1 1 auto; max-width: 640px; position: relative; z-index: 1; }

.fejkep h1 {
  font-family: var(--iras-cim);
  font-size: 44px;
  font-weight: 700;
  line-height: 1.14;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 16px;
}
.fejkep h1 .izzas { color: var(--arany); text-shadow: 0 0 16px rgba(217, 164, 65, .4); }

.fejkep__alcim {
  color: rgba(255, 255, 255, .93);
  font-size: 17px;
  margin-bottom: 26px;
  max-width: 560px;
}

.fejkep__gombok { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }

.jelveny {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(0, 0, 0, .38);
  border-left: 4px solid var(--piros);
  border-right: 4px solid var(--zold);
  color: #fff;
  padding: 8px 18px;
  font-size: 14px;
  font-weight: 700;
  border-radius: var(--sugar);
}
.jelveny .csillag { color: var(--arany); }
.fejkep__jegy { margin-bottom: 16px; }

/* ============ GOMBOK ============ */

.gomb {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-family: var(--iras);
  font-size: 15px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #fff;
  border: 0;
  border-radius: 8px;
  padding: 14px 32px;
  cursor: pointer;
  transition: filter .25s ease, box-shadow .25s ease, background .25s ease;
  text-align: center;
}
.gomb:hover { text-decoration: none; filter: brightness(.92); box-shadow: 0 6px 16px rgba(0, 0, 0, .3); }
.gomb--jatek {
  background: linear-gradient(180deg, var(--zold) 0%, var(--zold-mely) 100%);
}
.gomb--bonusz {
  background: linear-gradient(180deg, #d63a4a 0%, var(--piros-mely) 100%);
}
.gomb--zold { background: var(--cta-zold); }
.gomb--zold:hover { background: var(--cta-zold-mely); }
.gomb svg { width: 22px; height: 22px; flex-shrink: 0; }

/* ============ TARTALOM / BLOKKOK ============ */

.tartalom { padding: 30px 0 26px; }
.tartalom .keret > *:last-child { margin-bottom: 0; }

.blokk {
  background: var(--csontszin);
  border: 1px solid var(--csont-vonal);
  border-left: 5px solid var(--piros);
  border-right: 5px solid var(--zold);
  border-radius: var(--sugar);
  padding: 32px 40px 34px;
  margin-bottom: 24px;
  box-shadow: 0 3px 16px rgba(0, 16, 18, .24);
}

.blokk > *:last-child { margin-bottom: 0; }

.blokk h2 {
  font-family: var(--iras-cim);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.24;
  text-transform: uppercase;
  color: var(--tinta);
  margin: 0 0 20px;
  padding-bottom: 12px;
  border-bottom: 3px solid;
  border-image: linear-gradient(90deg, var(--piros) 0%, var(--piros) 40%, var(--zold) 60%, var(--zold) 100%) 1;
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.blokk h2::before {
  content: "";
  flex-shrink: 0;
  width: 30px;
  height: 26px;
  margin-top: 3px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  /* A Szent Korona sziluettje ferde kereszttel */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 26'%3E%3Cg fill='%23b57f22'%3E%3Cpath d='M3 16c0-6.6 5.4-11 12-11s12 4.4 12 11v2H3z'/%3E%3Crect x='2' y='19' width='26' height='3' rx='1'/%3E%3Ccircle cx='6.5' cy='12.5' r='1.2' fill='%23ce2939'/%3E%3Ccircle cx='15' cy='10.5' r='1.2' fill='%233e7d4d'/%3E%3Ccircle cx='23.5' cy='12.5' r='1.2' fill='%23ce2939'/%3E%3C/g%3E%3Cg fill='%23d9a441'%3E%3Crect x='14' y='2.6' width='2' height='4.6' rx='.6' transform='rotate(14 15 5)'/%3E%3Crect x='12.2' y='3.6' width='5.6' height='1.7' rx='.6' transform='rotate(14 15 4.5)'/%3E%3C/g%3E%3C/svg%3E");
}

.blokk h3 {
  font-family: var(--iras-cim);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--tinta-lagy);
  margin: 26px 0 14px;
  padding: 8px 16px;
  border-left: 4px solid var(--piros);
  background: linear-gradient(90deg, var(--zold-halvany) 0%, rgba(237, 245, 239, 0) 85%);
  border-radius: 0 8px 8px 0;
}

.blokk p { margin-bottom: 14px; }

/* Minden szakasz első bekezdése bevezető hangsúlyt kap */
.blokk h2 + p:not(.irat-datum):not(.aprobetu) {
  padding: 10px 16px;
  background: linear-gradient(90deg, rgba(62, 125, 77, .1) 0%, rgba(62, 125, 77, 0) 80%);
  border-left: 3px solid var(--zold);
  border-radius: 0 8px 8px 0;
  color: var(--tinta-lagy);
  font-size: 15.5px;
}

.blokk ol { margin: 0 0 16px 22px; }
.blokk li { margin-bottom: 8px; }

.blokk ul {
  list-style: none;
  margin: 0 0 16px;
}
.blokk ul li {
  position: relative;
  padding-left: 30px;
}
.blokk ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .22em;
  width: 21px;
  height: 21px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("../kepek/pont-fo.webp");
}

/* A tartalmi listák sor-kártyákká öltöznek, piros és zöld
   szegéllyel váltakozva a trikolór jegyében */
.blokk > ul {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.blokk > ul > li {
  margin: 0;
  padding: 10px 16px 10px 46px;
  background: #fff;
  border: 1px solid var(--csont-vonal);
  border-left: 3px solid var(--zold);
  border-radius: 8px;
}
.blokk > ul > li:nth-child(even) { border-left-color: var(--piros); }
.blokk > ul > li::before {
  left: 13px;
  top: 50%;
  transform: translateY(-50%);
}

.aprobetu {
  font-size: 13.5px;
  color: var(--tinta-halvany);
  font-style: italic;
}

/* ============ ÁBRÁK ============ */

.abra {
  margin: 20px 0 18px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(0, 16, 18, .2);
  border: 1px solid var(--csont-vonal);
  border-radius: var(--sugar);
}
.abra img { width: 100%; }
.abra figcaption {
  background: linear-gradient(120deg, var(--zold-mely) 0%, var(--zold) 100%);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 16px;
  border-top: 3px solid var(--piros);
}

/* ============ MORZSA ============ */

.morzsa {
  margin-bottom: 14px;
  font-size: 13px;
}
.morzsa ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.morzsa li { color: rgba(255, 255, 255, .78); }
.morzsa li + li::before { content: "»"; margin-right: 6px; color: var(--arany); }
.morzsa a { color: #fff; }
.morzsa a:hover { color: var(--arany); }

/* ============ TÁBLÁZATOK ============ */

.tablazat {
  margin: 18px 0;
  border: 1px solid var(--csont-vonal);
  border-radius: var(--sugar);
  overflow: hidden;
  box-shadow: 0 3px 14px rgba(0, 16, 18, .12);
  background: #fffdf9;
}

table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px;
  table-layout: auto;
}

thead th {
  background: linear-gradient(180deg, var(--zold) 0%, var(--zold-mely) 100%);
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .03em;
  padding: 11px 12px;
  text-align: left;
  white-space: nowrap;
  border-bottom: 3px solid var(--piros);
}

tbody td {
  padding: 11px 12px;
  border-bottom: 1px solid var(--csont-vonal);
  vertical-align: top;
}
tbody tr:nth-child(even) { background: #f6f2e9; }
tbody tr:last-child td, tbody tr:last-child th { border-bottom: 0; }
tbody td, tbody th { transition: background-color .15s ease; }
tbody tr:hover td { background: var(--zold-halvany); }
tbody tr:hover th { background: #ddeee2; }
tbody th {
  padding: 11px 12px;
  border-bottom: 1px solid var(--csont-vonal);
  text-align: left;
  background: var(--zold-halvany);
  color: var(--tinta-lagy);
  font-weight: 600;
  vertical-align: top;
}

/* Széles táblák: a fejlécek törhetnek, hogy az adat kapjon helyet */
table.tabla--keskeny { font-size: 12.5px; }
table.tabla--keskeny thead th {
  font-size: 11px;
  padding: 10px 9px;
  white-space: normal;
  hyphens: none;
}
table.tabla--keskeny tbody td { padding: 10px 9px; }
table.tabla--keskeny tbody td:nth-child(2) { min-width: 122px; }

/* ============ MÉRLEG (előnyök / hátrányok) ============
   Két egymásra épülő sáv vízjeles plusz- és mínuszjellel,
   a korábbi szatellitek kéthasábos dobozai helyett */

.merleg { display: grid; gap: 16px; margin: 18px 0; }
.merleg--mellette, .merleg--ellene {
  position: relative;
  padding: 22px 26px 20px;
  border-radius: var(--sugar);
  overflow: hidden;
}
.merleg--mellette {
  background: linear-gradient(115deg, var(--zold-halvany) 0%, #f9fcf9 70%);
  border: 1px solid var(--zold-vonal);
  border-left: 6px solid var(--zold);
}
.merleg--ellene {
  background: linear-gradient(115deg, var(--piros-halvany) 0%, #fdf9f9 70%);
  border: 1px solid var(--piros-vonal);
  border-left: 6px solid var(--piros);
}
.merleg--mellette::after, .merleg--ellene::after {
  position: absolute;
  top: -34px; right: 6px;
  font-family: var(--iras-cim);
  font-size: 170px;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
  opacity: .07;
}
.merleg--mellette::after { content: "+"; color: var(--zold-mely); }
.merleg--ellene::after { content: "\2212"; color: var(--piros-mely); }
.merleg--mellette h3, .merleg--ellene h3 {
  margin: 0 0 14px;
  font-size: 15px;
  letter-spacing: .08em;
  border-left: 0;
  background: none;
  padding: 7px 24px;
  display: table;
  border-radius: 30px;
  color: #fff;
}
.merleg--mellette h3 { background: linear-gradient(180deg, var(--zold) 0%, var(--zold-mely) 100%); }
.merleg--ellene h3 { background: linear-gradient(180deg, #d63a4a 0%, var(--piros-mely) 100%); }
.merleg--mellette ul, .merleg--ellene ul { margin: 0; display: flex; flex-direction: column; gap: 0; }
.merleg--mellette ul li, .merleg--ellene ul li {
  padding: 9px 4px 9px 32px;
  margin: 0;
  border-bottom: 1px dashed rgba(0, 0, 0, .1);
  background: none;
  border-left: 0;
  border-radius: 0;
}
.merleg--mellette ul li:last-child, .merleg--ellene ul li:last-child { border-bottom: 0; }
.merleg--mellette ul li::before { background-image: url("../kepek/pont-jo.webp"); width: 24px; height: 24px; left: 0; top: .6em; transform: none; }
.merleg--ellene ul li::before { background-image: url("../kepek/pont-rossz.webp"); width: 24px; height: 24px; left: 0; top: .6em; transform: none; }

/* ============ LÉPCSŐ (lépések) ============ */

.lepcso { counter-reset: fok; list-style: none; margin: 16px 0 !important; }
.lepcso li {
  counter-increment: fok;
  position: relative;
  padding: 0 0 14px 52px;
  margin: 0;
}
.lepcso li::before {
  content: counter(fok);
  position: absolute;
  left: 0; top: -2px;
  width: 34px; height: 34px;
  background: linear-gradient(180deg, var(--zold) 0%, var(--zold-mely) 100%);
  border-bottom: 3px solid var(--piros);
  border-radius: var(--sugar);
  color: #fff;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ============ AJÁNLATOK (bannerek) ============ */

.ajanlat {
  display: flex;
  align-items: center;
  gap: 30px;
  background: linear-gradient(120deg, #02191d 0%, var(--vaz) 68%, #0a636b 100%);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: var(--sugar);
  padding: 34px 36px;
  margin-bottom: 24px;
  min-height: 180px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 3px 16px rgba(0, 16, 18, .3);
}
.ajanlat::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, rgba(2, 20, 23, .94) 0%, rgba(4, 48, 53, .76) 46%, rgba(10, 99, 107, .1) 78%);
  pointer-events: none;
}
.ajanlat--piros::before {
  background: linear-gradient(100deg, rgba(30, 4, 7, .94) 0%, rgba(122, 18, 30, .74) 46%, rgba(206, 41, 57, .1) 78%);
}

.ajanlat__szoveg { flex: 1; max-width: 420px; position: relative; z-index: 1; }
.ajanlat__szoveg .ajanlat__cta { margin-top: 18px; }

.ajanlat__felirat {
  color: var(--arany);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .16em;
  margin-bottom: 4px;
}
.ajanlat__cim {
  font-family: var(--iras-cim);
  font-size: 27px;
  font-weight: 700;
  text-transform: uppercase;
  color: #fff;
  line-height: 1.18;
  margin-bottom: 6px;
}
.ajanlat__alcim { color: rgba(255, 255, 255, .88); font-size: 14px; margin-bottom: 0; }

/* ============ MOBIL SÁV ============ */

.mobil {
  display: flex;
  align-items: center;
  gap: 30px;
  background: linear-gradient(115deg, #02191d 0%, var(--vaz) 60%, #0a636b 100%);
  border-radius: var(--sugar);
  padding: 28px 36px;
  margin-bottom: 24px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 3px 16px rgba(0, 16, 18, .3);
}
.mobil__foto { flex: 0 0 190px; position: relative; z-index: 1; }
.mobil__foto img { border-radius: var(--sugar); }
.mobil__szoveg { flex: 1; position: relative; z-index: 1; }
.mobil__cim {
  font-family: var(--iras-cim);
  font-size: 25px;
  font-weight: 700;
  text-transform: uppercase;
  color: #fff;
  line-height: 1.18;
  margin-bottom: 6px;
}
.mobil__alcim { color: rgba(255, 255, 255, .88); font-size: 14px; }
.mobil__boltok {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.bolt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: #101a14;
  border: 1px solid var(--arany);
  color: #fff;
  border-radius: var(--sugar);
  padding: 10px 22px 10px 16px;
  transition: background .2s;
  min-width: 218px;
}
.bolt:hover { background: #1c2a20; text-decoration: none; }
.bolt svg { width: 30px; height: 30px; flex-shrink: 0; }
.bolt__szoveg { line-height: 1.2; text-align: center; }
.bolt__kicsi { display: block; font-size: 11px; opacity: .82; }
.bolt__nagy { display: block; font-size: 17px; font-weight: 700; }

/* ============ ASZTALOK (asztali játékok) ============
   Vízszintes jegy-sorok: bal oldalt ikonlap, jobbra a szöveg —
   a korábbi szatellitek álló kártyái helyett */

.asztalok {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 18px 0 0;
}
.asztal {
  display: flex;
  align-items: flex-start;
  gap: 22px;
  background: #fff;
  border: 1px solid var(--csont-vonal);
  border-radius: var(--sugar);
  padding: 18px 22px;
  position: relative;
  overflow: hidden;
  transition: box-shadow .3s ease, border-color .3s ease;
}
.asztal::before {
  content: "";
  position: absolute;
  top: 0; bottom: 0; left: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--piros) 0%, var(--piros) 45%, var(--zold) 55%, var(--zold) 100%);
}
.asztal:hover {
  box-shadow: 0 10px 24px rgba(0, 16, 18, .16);
  border-color: var(--arany);
}
.asztal__ikon {
  flex-shrink: 0;
  width: 92px;
  height: 92px;
  padding: 15px;
  box-sizing: border-box;
  border-radius: var(--sugar);
  background: radial-gradient(circle at 50% 32%, #14563a 0%, #0c3f2a 78%);
  box-shadow: inset 0 0 0 2px var(--arany), 0 4px 12px rgba(0, 16, 18, .22);
}
.asztal__nev {
  font-family: var(--iras-cim);
  font-size: 19px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--tinta);
  margin-bottom: 6px;
  padding-bottom: 6px;
  position: relative;
  display: table;
}
.asztal__nev::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--piros) 0%, var(--zold) 100%);
  border-radius: 2px;
}
.asztal__szoveg { flex: 1; }
.asztal__szoveg p { margin-bottom: 0; font-size: 14.5px; }

/* ============ NYERŐGÉPEK (slot kártyák) ============ */

.nyerogepek {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 20px 0 6px;
}
.nyerogep {
  position: relative;
  display: block;
  border-radius: var(--sugar);
  overflow: hidden;
  background: #101a14;
  border: 1px solid var(--zold);
  box-shadow: 0 3px 12px rgba(0, 16, 18, .2);
  transition: box-shadow .25s ease, border-color .25s ease, filter .25s ease;
}
.nyerogep:hover { box-shadow: 0 12px 26px rgba(0, 16, 18, .32); border-color: var(--arany); text-decoration: none; }
.nyerogep__kep { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; transition: transform .35s ease; }
.nyerogep:hover .nyerogep__kep { transform: scale(1.06); }
.nyerogep__feny {
  position: absolute;
  top: 0; bottom: 0;
  left: -60%;
  width: 45%;
  background: linear-gradient(100deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 50%, rgba(255, 255, 255, 0) 100%);
  transform: skewX(-18deg);
  pointer-events: none;
  transition: left .55s ease;
}
.nyerogep:hover .nyerogep__feny { left: 115%; }
.nyerogep__csik {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 26px 12px 10px;
  background: linear-gradient(180deg, rgba(12, 18, 14, 0) 0%, rgba(12, 18, 14, .86) 55%, rgba(12, 18, 14, .96) 100%);
}
.nyerogep__faj {
  display: block;
  color: var(--arany);
  font-size: 11.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 2px;
}
.nyerogep__nev {
  display: block;
  color: #fff;
  font-family: var(--iras-cim);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
}
.nyerogepek-cta { display: flex; justify-content: center; margin-top: 18px; }

/* ============ VÉLEMÉNYEK (végtelen körhinta) ============ */

.velemenyek { position: relative; margin-top: 22px; }

.velemenyek__sav {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 6px 2px 16px;
  scrollbar-width: none;
  -ms-overflow-style: none;
  cursor: grab;
  overscroll-behavior-x: contain;
}
.velemenyek__sav::-webkit-scrollbar { display: none; }
.velemenyek__sav.velemenyek__sav--fogas { cursor: grabbing; scroll-behavior: auto; }

.velemeny {
  flex: 0 0 calc((100% - 36px) / 3);
  background: #fff;
  border: 1px solid var(--csont-vonal);
  border-top: 3px solid var(--zold);
  border-radius: var(--sugar);
  padding: 24px 24px 22px;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
  transition: box-shadow .3s ease, border-color .3s ease;
}
.velemeny:hover {
  box-shadow: 0 8px 22px rgba(0, 16, 18, .16);
  border-color: var(--arany);
  border-top-color: var(--piros);
}
.velemeny::before {
  content: "\201E";
  position: absolute;
  top: 2px; right: 16px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 84px;
  line-height: 1;
  color: var(--zold);
  opacity: .18;
  pointer-events: none;
}

.velemeny__fej { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.velemeny__foto {
  width: 56px; height: 56px;
  flex-shrink: 0;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--arany);
  box-shadow: 0 2px 8px rgba(0, 16, 18, .2);
}
.velemeny__ki { min-width: 0; }
.velemeny__nev {
  display: block;
  font-family: var(--iras-cim);
  font-size: 17px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--tinta);
}
.velemeny__sor { display: flex; align-items: center; gap: 8px; margin-top: 3px; }
.velemeny__jegy {
  background: var(--zold);
  color: #fff;
  font-size: 11.5px;
  font-weight: 700;
  border-radius: 20px;
  padding: 2px 10px;
  flex-shrink: 0;
}
.velemeny__csillagok { color: var(--arany-mely); font-size: 13px; letter-spacing: 2px; }
.velemeny__szoveg { font-style: italic; color: var(--tinta); font-size: 14.5px; margin: 0; position: relative; z-index: 1; }

.velemenyek__vezerles {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 4px;
}
.velemenyek__nyil {
  width: 40px; height: 40px;
  border-radius: var(--sugar);
  background: linear-gradient(180deg, var(--zold) 0%, var(--zold-mely) 100%);
  color: #fff;
  border: 1px solid var(--zold-mely);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: filter .2s, box-shadow .2s;
}
.velemenyek__nyil:hover { filter: brightness(.9); box-shadow: 0 4px 12px rgba(0, 16, 18, .25); }
.velemenyek__nyil svg { width: 18px; height: 18px; }

.velemenyek__pontok { display: flex; align-items: center; gap: 8px; }
.velemenyek__pont {
  width: 9px; height: 9px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--csont-vonal);
  cursor: pointer;
  transition: background .2s, width .2s;
}
.velemenyek__pont:hover { background: var(--piros-vonal); }
.velemenyek__pont.velemenyek__pont--aktiv { background: var(--piros); width: 24px; border-radius: 6px; }

/* ============ VÉGSŐ PONTSZÁM ============ */

.vegso {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 4px 12px;
  background: linear-gradient(120deg, #123c22 0%, var(--zold-mely) 55%, #6b1620 100%);
  color: #fff;
  border-radius: var(--sugar);
  border-left: 6px solid var(--zold);
  border-right: 6px solid var(--piros);
  padding: 18px 26px;
  margin-top: 18px;
}
.vegso__ertek {
  font-family: var(--iras-cim);
  font-size: 40px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--arany);
}
.vegso__cimke { font-size: 15px; font-weight: 700; text-transform: uppercase; }

/* ============ KÉRDÉSEK (GYIK) ============ */

.kerdesek { margin-top: 6px; }
.kerdes { border-bottom: 1px solid var(--csont-vonal); }
.kerdes summary {
  cursor: pointer;
  font-weight: 700;
  line-height: 1.45;
  color: var(--tinta-lagy);
  padding: 15px 34px 15px 0;
  position: relative;
  list-style: none;
  font-size: 15.5px;
  transition: color .18s ease;
}
.kerdes summary::-webkit-details-marker { display: none; }
.kerdes summary::after {
  content: "+";
  position: absolute;
  right: 4px; top: 50%;
  transform: translateY(-50%);
  width: 26px; height: 26px;
  border-radius: var(--sugar);
  background: var(--zold);
  color: #fff;
  font-size: 18px;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color .25s ease, color .25s ease;
}
.kerdes summary:hover { color: var(--zold-mely); }
.kerdes summary:hover::after { background: var(--piros); }
.kerdes[open] summary::after { content: "\2212"; background: var(--piros); }
.kerdes[open] summary:hover::after { background: var(--piros-mely); }
.kerdes .kerdes__valasz { padding: 0 0 16px; }
.kerdes .kerdes__valasz p { margin-bottom: 8px; }

/* ============ SZAKVÉLEMÉNY ============ */

.szakvelemeny {
  background: #fff;
  border-left: 5px solid var(--zold);
  border-right: 5px solid var(--piros);
  border-radius: var(--sugar);
  padding: 22px 26px;
  font-style: italic;
}
.szakvelemeny__nev { font-weight: 700; font-style: normal; color: var(--zold-mely); }

/* ============ LÁBLÉC ============ */

.lablec {
  background: var(--vaz);
  color: rgba(255, 255, 255, .8);
  padding: 44px 0 0;
}
.lablec__racs {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 30px;
  padding-bottom: 30px;
}
.lablec__rolunk img { height: 40px; width: auto; margin-bottom: 14px; }
.lablec__rolunk p { font-size: 13px; line-height: 1.6; }

.lablec__oszlop h4 {
  display: inline-block;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 6px;
  padding-bottom: 8px;
  position: relative;
}
.lablec__oszlop h4::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 100%; height: 3px;
  background: #2da6b1;
  border-radius: 2px;
}
.lablec__oszlop ul { list-style: none; margin-top: 12px; }
.lablec__oszlop li { margin-bottom: 9px; }
.lablec__oszlop a { color: rgba(255, 255, 255, .7); font-size: 14px; }
.lablec__oszlop a:hover { color: #fff; }

.lablec__figyelem {
  border-top: 1px solid rgba(255, 255, 255, .12);
  padding: 20px 0;
  display: flex;
  align-items: center;
  gap: 18px;
}
.korhatar {
  flex-shrink: 0;
  width: 46px; height: 46px;
  border: 2px solid #f04c44;
  color: #f04c44;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 15px;
}
.lablec__figyelem p { font-size: 12.5px; line-height: 1.55; margin: 0; }

.lablec__alj {
  border-top: 1px solid rgba(255, 255, 255, .12);
  padding: 16px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 12.5px;
}

/* ============ FELFELÉ GOMB ============ */

.felfele {
  position: fixed;
  right: 24px; bottom: 24px;
  width: 48px; height: 48px;
  border-radius: var(--sugar);
  background: linear-gradient(180deg, var(--zold) 0%, var(--zold-mely) 100%);
  color: #fff;
  border: 1px solid var(--arany);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity .25s, transform .25s, visibility .25s, filter .2s;
  z-index: 90;
}
.felfele.felfele--latszik { opacity: 1; visibility: visible; transform: translateY(0); }
.felfele:hover { filter: brightness(.9); }
.felfele svg { width: 22px; height: 22px; }

/* ============ FELBUKKANÁS GÖRGETÉSRE ============ */

.felbukkan { opacity: 0; transform: translateY(18px); }
.felbukkan.felbukkan--lathato {
  opacity: 1;
  transform: none;
  transition: opacity .5s ease, transform .5s ease;
}
@media (prefers-reduced-motion: reduce) {
  .felbukkan { opacity: 1; transform: none; }
}

/* ============ 404 ============ */

.eltevedt {
  min-height: calc(100vh - 72px);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 100px 20px 60px;
}
.eltevedt__kod {
  font-family: var(--iras-cim);
  font-size: 130px;
  font-weight: 700;
  color: var(--piros);
  line-height: 1;
  text-shadow: 0 6px 24px rgba(0, 0, 0, .35);
}
.eltevedt h1 { color: #fff; font-family: var(--iras-cim); font-size: 32px; text-transform: uppercase; margin: 12px 0; }
.eltevedt p { color: rgba(255, 255, 255, .88); margin-bottom: 26px; }

/* ============ JOGI OLDALAK ============ */

.irat-datum { font-size: 13.5px; color: var(--tinta-halvany); margin-bottom: 18px; }

/* ============ RESPONSIVE ============ */

@media (max-width: 1080px) {
  .fejlec__sor { gap: 10px; }
  .emblema img { height: 38px; }
  .fomenu { gap: 2px; }
  .fomenu a { padding: 9px 11px; font-size: 12px; }
  .korgomb { padding: 10px 16px; font-size: 12px; }
  .fejlec__gombok { gap: 8px; }
  .zaszlo { font-size: 12px; gap: 6px; }
  .zaszlo svg { width: 26px; height: 17px; }
}

@media (max-width: 1024px) {
  .fejkep h1 { font-size: 36px; }
  .lablec__racs { grid-template-columns: 1fr 1fr; }
  .blokk { padding: 28px 26px; }
  .nyerogepek { grid-template-columns: repeat(3, 1fr); }
  .velemeny { flex-basis: calc((100% - 18px) / 2); }

  .tablazat {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .tablazat table { min-width: 500px; }
  .tablazat thead th,
  .tablazat tbody td,
  .tablazat tbody th { min-width: 140px; }
  .tablazat table.tabla--keskeny thead th,
  .tablazat table.tabla--keskeny tbody td,
  .tablazat table.tabla--keskeny tbody th { min-width: 120px; }
  .tablazat tbody tr > *:first-child,
  .tablazat thead th:first-child { min-width: 160px; }
}

/* A hosszú magyar szavak miatt a fejléc korábban vált hamburgerre */
@media (max-width: 920px) {
  .fomenu, .fejlec__gombok { display: none; }
  .zaszlo { margin-left: auto; }
  .szendvics { display: block; }
}

@media (max-width: 860px) {
  .fejkep__sor { flex-direction: column; align-items: flex-start; padding: 34px 0; min-height: 0; }
  .fejkep__szoveg { width: 100%; max-width: 100%; }
  .fejkep__hatter::after {
    background: linear-gradient(180deg, rgba(2, 20, 23, .52) 0%, rgba(2, 20, 23, .52) 60%, rgba(2, 20, 23, .5) 100%);
  }
  .fejkep h1 { font-size: 30px; }
  .fejkep h1, .fejkep__alcim, .morzsa {
    text-shadow:
      0 0 2px rgba(0, 12, 14, .98),
      0 1px 4px rgba(0, 12, 14, .95),
      0 2px 12px rgba(0, 12, 14, .92);
  }
  .ajanlat, .mobil { flex-direction: column; align-items: flex-start; }
  .ajanlat::before, .ajanlat--piros::before { background: none; }
  .ajanlat__szoveg {
    max-width: 100%;
    background: rgba(2, 20, 23, .74);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border-radius: var(--sugar);
    padding: 22px 20px;
  }
  .ajanlat--piros .ajanlat__szoveg { background: rgba(30, 4, 7, .74); }
  .mobil__foto { flex-basis: auto; max-width: 280px; }
  .mobil__boltok { flex-direction: row; flex-wrap: wrap; justify-content: center; width: 100%; }
  .bolt { flex: 1 1 218px; max-width: 300px; }
  .lablec__alj { flex-direction: column; text-align: center; }
}

@media (max-width: 700px) {
  /* Mobilon az ábrák másfélszer magasabbak: 3:1-ből 2:1 lesz */
  .abra img {
    aspect-ratio: 2 / 1;
    object-fit: cover;
    object-position: center;
  }

  .fejkep__hatter { background-position: 70% center; }
  .nyerogepek { grid-template-columns: repeat(2, 1fr); }
  .velemeny { flex-basis: 100%; }
  .asztal { flex-direction: column; align-items: center; text-align: left; }
  .asztal__ikon { margin-top: 4px; }
  .asztal__nev { margin-left: auto; margin-right: auto; }
}

@media (max-width: 560px) {
  /* A hosszú magyar összetett szavak törhetnek keskeny kijelzőn */
  .blokk h2, .blokk h3, .blokk p, .blokk li,
  .fejkep h1, .fejkep__alcim,
  .ajanlat__cim, .ajanlat__alcim, .mobil__cim, .mobil__alcim,
  .asztal__nev, .kerdes summary, .eltevedt h1, .eltevedt p,
  .lablec__rolunk p, .lablec__figyelem p, .lablec__oszlop a {
    -webkit-hyphens: auto;
    hyphens: auto;
  }

  .lablec__racs { grid-template-columns: 1fr; text-align: center; }
  .lablec__rolunk img { margin-left: auto; margin-right: auto; }
  .lablec__figyelem { flex-direction: column; text-align: center; }
  .blokk { padding: 22px 16px; }
  .blokk h2 { font-size: 23px; }
  .fejkep h1 { font-size: 26px; }
  .eltevedt__kod { font-size: 90px; }

  .fejkep__szoveg,
  .ajanlat__szoveg,
  .mobil__szoveg { text-align: center; width: 100%; }
  .fejkep__gombok,
  .ajanlat__cta,
  .mobil__boltok,
  .morzsa ol { justify-content: center; }
  .ajanlat__cta, .mobil__boltok { display: flex; width: 100%; }
  .fejkep__sor, .ajanlat, .mobil { align-items: center; }
  .fejkep__jegy { align-self: center; }
}

@media (max-width: 450px) {
  .keret { padding: 0 10px; }
  .fejlec__sor { height: 60px; gap: 10px; }
  .emblema img { height: 34px; }
  .zaszlo svg { width: 26px; height: 17px; }
  .zaszlo { font-size: 12px; gap: 6px; }
  .fejkep { margin-top: 60px; }
  .blokk { padding: 18px 12px; }
  .ajanlat, .mobil { padding: 20px 14px; }
  .fejkep__sor { padding: 28px 0; }
  thead th, tbody td, tbody th { padding: 8px 6px; }
}

@media (max-width: 400px) {
  .lenyilo__gombok { flex-direction: column; align-items: center; }
  .lenyilo__gombok a { flex: 0 0 auto; width: 100%; max-width: 260px; }
}

@media (max-width: 360px) {
  .fejlec__sor { height: 54px; gap: 8px; }
  .emblema img { height: 28px; }
  .zaszlo svg { width: 22px; height: 15px; }
  .zaszlo { font-size: 11px; gap: 5px; }
  .szendvics { padding: 6px; }
  .szendvics span { width: 22px; height: 2.5px; margin: 4px 0; }
  .szendvics.szendvics--x span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
  .szendvics.szendvics--x span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }
  .fejkep { margin-top: 54px; }
  .eltevedt { min-height: calc(100vh - 54px); }
}

/* ============ 22BET COUNTRY LINKS ============ */
.lablec__orszagok {
  border-top: 1px solid rgba(255, 255, 255, .12);
  padding: 22px 0 24px;
}
.lablec__orszagok-cim {
  display: inline-block;
  position: relative;
  margin: 0 0 16px;
  padding-bottom: 8px;
  color: #fff;
  font-family: "Open Sans", Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
}
.lablec__orszagok-cim::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 100%; height: 3px;
  background: rgb(45, 166, 177);
  border-radius: 2px;
}
.lablec__orszagok-lista {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.lablec__orszag {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 7px 15px 7px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .05);
  border: 1px solid rgba(255, 255, 255, .14);
  color: rgba(255, 255, 255, .82);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.lablec__orszag:hover {
  background: rgba(255, 255, 255, .1);
  border-color: rgba(255, 255, 255, .45);
  color: #fff;
  text-decoration: none;
}
.lablec__orszag.lablec__orszag--aktualis {
  background: rgba(233, 185, 73, .1);
  border-color: #e9b949;
  color: #fff;
}
.lablec__zaszlo {
  flex-shrink: 0;
  width: 24px;
  height: 16px;
  border-radius: 3px;
  overflow: hidden;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .25);
}
.lablec__zaszlo svg { display: block; width: 100%; height: 100%; }
@media (max-width: 560px) {
  .lablec__orszagok { text-align: center; }
  /* two even columns; every name stays on one line */
  .lablec__orszagok-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .lablec__orszagok-lista li { min-width: 0; }
  .lablec__orszag { display: flex; width: 100%; min-width: 0; padding: 7px 10px 7px 7px; font-size: 12.5px; text-align: left; white-space: nowrap; }
  .lablec__orszag-nev { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
}
@media (max-width: 380px) {
  .lablec__orszagok-lista { gap: 6px; }
  .lablec__orszag { gap: 6px; padding: 6px 8px 6px 6px; font-size: 11.5px; }
  .lablec__zaszlo { width: 18px; height: 12px; }
}
@media (max-width: 339px) {
  .lablec__orszag { gap: 5px; padding: 6px 6px 6px 5px; font-size: 11px; letter-spacing: -.01em; }
  .lablec__zaszlo { width: 16px; height: 11px; }
}
/* up to 330px: one pill per row, back to the regular size */
@media (max-width: 330px) {
  .lablec__orszagok-lista { grid-template-columns: minmax(0, 1fr); }
  .lablec__orszag { gap: 9px; padding: 7px 12px 7px 8px; font-size: 12.5px; letter-spacing: normal; }
  .lablec__zaszlo { width: 22px; height: 15px; }
}
