@font-face {
	font-family: 'Gilroy';
	src: url('gilroy-400.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Gilroy';
	src: url('gilroy-500.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Gilroy';
	src: url('gilroy-700.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Fortuna Dot';
	src: url('dot.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

:root {
	--bg: #000;
	--panel: #17171b;
	--panel-dark: #121113;
	--panel-deep: #111015;
	--panel-soft: #151518;
	--panel-foot: #0a090f;
	--line: #292a31;
	--gold: #f2d499;
	--muted: #acacbc;
	--white: #fff;
	--green-a: #19710b;
	--green-b: #2bc012;
	--orange-a: #713c0b;
	--orange-b: #c08512;
	--radius: 5px;
	--wrap: 1328px;
	--pad: 24px;
}

*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
	margin: 0;
	background: var(--bg) url('../img/bg-mobile.webp') 0 0 / contain no-repeat;
	color: var(--white);
	font: 400 14px/1.4 'Gilroy', Arial, Helvetica, sans-serif;
	letter-spacing: 0;
	min-height: 100vh;
}

img { border: 0; }

a {
	color: var(--white);
	text-decoration: none;
}

a:hover { color: var(--gold); }

ul, ol { margin: 0; padding: 0; }

.wrap {
	max-width: var(--wrap);
	margin: 0 auto;
	padding: 0 var(--pad);
}

/* ---- buttons --------------------------------------------------------- */

.btn {
	display: inline-block;
	height: 42px;
	padding: 0 30px;
	border: 0;
	border-radius: var(--radius);
	font: 700 14px/42px 'Gilroy', Arial, Helvetica, sans-serif;
	color: var(--white);
	text-align: center;
	cursor: pointer;
	transition: filter .18s ease, border-color .18s ease;
}

.btn:hover { filter: brightness(1.12); color: var(--white); }

.btn--green { background: linear-gradient(95.69deg, var(--green-a) 0, var(--green-b) 100%); }
.btn--orange { background: linear-gradient(95.69deg, var(--orange-a) 0, var(--orange-b) 100%); }

.btn--ghost {
	background: transparent;
	border: 1px solid var(--line);
	font-weight: 400;
	line-height: 40px;
}

.btn--ghost:hover { border-color: var(--gold); color: var(--gold); filter: none; }

.btn--gold {
	background: transparent;
	border: 1px solid var(--gold);
	color: var(--gold);
	font-weight: 400;
	line-height: 40px;
}

.btn--gold:hover { background: var(--gold); color: #12111a; filter: none; }

/* Gold rhombus used as a bullet across the design. */
.rhomb {
	position: relative;
	padding-left: 20px;
}

.rhomb::before {
	content: '';
	position: absolute;
	left: 1px;
	top: calc(50% - 3px);
	width: 6px;
	height: 6px;
	background: var(--gold);
	transform: rotate(45deg);
}

/* ---- header ---------------------------------------------------------- */

.topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 0;
	min-height: 170px;
}

.topbar__logo img {
	display: block;
	width: 170px;
	height: 110px;
	object-fit: contain;
}

.topbar__auth {
	display: flex;
	align-items: center;
	gap: 4px;
}

.topbar__burger,
.topbar__account { display: none; }

/* ---- top navigation -------------------------------------------------- */

.nav {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--panel);
	height: 48px;
}

.nav__list {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	list-style: none;
	overflow-x: auto;
	scrollbar-width: none;
	max-width: 100%;
}

.nav__list::-webkit-scrollbar { display: none; }

.nav__list a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 12px;
	height: 48px;
	white-space: nowrap;
	font-size: 14px;
}

.nav__list img {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
}

/* ---- hero + jackpot -------------------------------------------------- */

.main-top {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 0;
}

.slider {
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
}

.slider__track {
	display: flex;
	overflow-x: auto;
	scrollbar-width: none;
	scroll-behavior: smooth;
}

.slider__track::-webkit-scrollbar { display: none; }

.slider__item {
	flex: 0 0 100%;
	display: block;
}

.slider__item img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 900 / 360;
	object-fit: cover;
}

.slider__arrow {
	position: absolute;
	top: calc(50% - 18px);
	width: 36px;
	height: 36px;
	border: 1px solid var(--gold);
	border-radius: 50%;
	background: rgba(18, 17, 19, .45);
	color: var(--gold);
	font-size: 16px;
	line-height: 34px;
	text-align: center;
	cursor: pointer;
	z-index: 2;
}

.slider__arrow:hover { background: var(--gold); color: #12111a; }
.slider__arrow--prev { left: 16px; }
.slider__arrow--next { right: 16px; }

.slider__dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 14px;
	display: flex;
	justify-content: center;
	gap: 8px;
	z-index: 2;
}

.slider__dot {
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .55);
	cursor: pointer;
}

.slider__dot.is-active {
	width: 20px;
	border-radius: 4px;
	background: var(--white);
}

.jackpot {
	flex: 0 0 439px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 28px;
	background: var(--panel-deep) url('../img/bg-jackpot.webp') center / cover no-repeat;
}

.jackpot__head {
	position: relative;
	height: 37px;
	text-align: center;
}

.jackpot__head hr {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: 0;
	border: 0;
	border-top: 1px solid var(--line);
}

.jackpot__title {
	position: relative;
	display: inline-block;
	padding: 0 30px;
	background: var(--panel-deep);
	font: 500 32px/37px 'Gilroy', Arial, Helvetica, sans-serif;
	color: var(--white);
}

.jackpot__title::before,
.jackpot__title::after {
	content: '';
	position: absolute;
	top: calc(50% - 7px);
	width: 15px;
	height: 15px;
	background: var(--gold);
	transform: rotate(45deg);
}

.jackpot__title::before { left: 0; }
.jackpot__title::after { right: 0; }

.jackpot__sum {
	display: block;
	margin: 0 0 13px;
	padding: 16px 0;
	border-bottom: 1px solid var(--line);
	font: 400 48px/61px 'Fortuna Dot', 'Gilroy', Arial, Helvetica, sans-serif;
	color: var(--gold);
	text-align: center;
	word-break: break-word;
}

.jackpot__sum:hover { color: var(--gold); filter: brightness(1.15); }

/* ---- winners rail ---------------------------------------------------- */

.winners {
	display: flex;
	align-items: center;
	padding: 14px 8px;
	background: var(--panel-dark);
}

.winners__label {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
	height: 58px;
	padding: 11px 65px 11px 24px;
	background: url('../img/ui/win-label.svg') left center / auto 100% no-repeat;
}

.winners__label img {
	width: 20px;
	height: 24px;
}

.winners__label span {
	display: block;
	font-size: 12px;
	line-height: 15px;
	color: var(--muted);
}

.winners__label span:first-child {
	font-size: 15px;
	line-height: 18px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--white);
}

.winners__track {
	display: flex;
	gap: 14px;
	min-width: 0;
	overflow-x: auto;
	scrollbar-width: none;
}

.winners__track::-webkit-scrollbar { display: none; }

.winner {
	display: flex;
	align-items: center;
	gap: 14px;
	flex: 0 0 auto;
	width: 140px;
}

.winner img {
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	border-radius: var(--radius);
	object-fit: cover;
}

.winner__desc {
	min-width: 0;
	overflow: hidden;
}

.winner__desc span {
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.winner__game { font-size: 12px; line-height: 14px; color: var(--gold); }
.winner__gain { font-size: 14px; line-height: 16px; color: var(--white); }
.winner__user { margin-top: 5px; font-size: 12px; line-height: 14px; font-weight: 500; color: var(--muted); }

/* ---- panels ---------------------------------------------------------- */

.plate {
	padding: var(--pad);
	background: var(--panel-dark);
	font-size: 12px;
	line-height: 14px;
	color: var(--muted);
}

.plate--light { background: var(--panel); }

.plate__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	min-height: 40px;
}

.plate__title,
h1.plate__title {
	display: block;
	margin: 0;
	font: 700 16px/19px 'Gilroy', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	color: var(--white);
}

.plate__tools {
	display: flex;
	align-items: center;
	gap: 16px;
}

.field {
	width: 200px;
	height: 40px;
	padding: 12px 34px 12px 24px;
	background: var(--panel-soft) url('../img/ui/search.svg') right 12px center no-repeat;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	font: 500 12px/14px 'Gilroy', Arial, Helvetica, sans-serif;
	color: var(--white);
}

.field::placeholder { color: var(--muted); }
.field:focus { outline: 0; border-color: var(--gold); }

.select {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 180px;
	height: 40px;
	padding: 12px 16px 12px 24px;
	background: var(--panel-soft);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	font-size: 12px;
	line-height: 14px;
	color: var(--white);
}

.select img { width: 10px; height: 6px; }

/* ---- category tabs --------------------------------------------------- */

.cats {
	margin: 20px calc(var(--pad) * -1) calc(var(--pad) * -1);
	padding: 0 var(--pad);
	border-bottom: 1px solid var(--line);
	overflow-x: auto;
	scrollbar-width: none;
}

.cats::-webkit-scrollbar { display: none; }

.cats__row {
	display: flex;
	align-items: center;
	width: max-content;
	min-width: 100%;
}

.cat {
	display: flex;
	align-items: center;
	gap: 12px;
	height: 50px;
	margin-bottom: -1px;
	padding: 12px 16px;
	border: 1px solid transparent;
	border-radius: var(--radius) var(--radius) 0 0;
	white-space: nowrap;
}

.cat img { width: 24px; height: 24px; flex: 0 0 24px; }

.cat span {
	font-size: 12px;
	line-height: 14px;
	font-weight: 500;
	text-transform: uppercase;
	color: var(--white);
}

.cat.is-active,
.cat:hover {
	background: var(--panel);
	border-color: var(--line);
	border-bottom-color: var(--panel);
}

.cat.is-active span,
.cat:hover span { color: var(--gold); }

/* ---- game grid ------------------------------------------------------- */

.games {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 0 22px;
	justify-content: space-between;
}

.game { padding: 6px 0; }

.game__art {
	position: relative;
	display: block;
	border-radius: var(--radius);
	overflow: hidden;
}

.game__art img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 224 / 149;
	object-fit: cover;
}

.game__over {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background: rgba(18, 17, 19, .8);
	opacity: 0;
	transition: opacity .2s ease;
}

.game:hover .game__over,
.game__art:focus-within .game__over { opacity: 1; }

.game__over .btn {
	width: 140px;
	padding: 0 8px;
	font-size: 14px;
	text-transform: uppercase;
}

.game__info { padding: 12px 0 4px; }

.game__name {
	display: block;
	margin-bottom: 12px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 14px;
	line-height: 16px;
	font-weight: 500;
	color: var(--white);
}

.game__note {
	font-size: 10px;
	line-height: 12px;
	font-weight: 500;
	color: var(--muted);
}

/* ---- prose (CMS content) --------------------------------------------- */

.prose { font-size: 12px; line-height: 1.5; color: var(--muted); }

.prose h1,
.prose h2,
.prose h3,
.prose h4 {
	margin: 0;
	padding: 24px 0 16px;
	font-size: 14px;
	line-height: 17px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--white);
}

.prose h3, .prose h4 { text-transform: none; font-size: 14px; }
.prose p { margin: 0; padding: 4px 0 16px; }
.prose a { color: var(--gold); text-decoration: underline; }
.prose a:hover { text-decoration: none; }

.prose ul,
.prose ol {
	margin: 0;
	padding: 0 0 16px 20px;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
}

.prose li { margin-bottom: 4px; }
.prose li::marker { color: var(--gold); }

.prose img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 8px 0 20px;
	border-radius: var(--radius);
}

.prose blockquote {
	margin: 0 0 20px;
	padding: 16px 20px;
	border-left: 3px solid var(--gold);
	background: rgba(41, 42, 49, .3);
	border-radius: 0 var(--radius) var(--radius) 0;
}

.prose table {
	width: 100%;
	margin: 0 0 20px;
	border-collapse: separate;
	border-spacing: 0 4px;
	font-size: 12px;
	line-height: 14px;
}

.prose th,
.prose td {
	padding: 13px 10px;
	background: rgba(41, 42, 49, .3);
	text-align: center;
}

.prose th { color: var(--white); font-weight: 700; text-transform: uppercase; }
.prose tr td:first-child, .prose tr th:first-child { border-radius: var(--radius) 0 0 var(--radius); }
.prose tr td:last-child, .prose tr th:last-child { border-radius: 0 var(--radius) var(--radius) 0; }

.table-scroll { overflow-x: auto; }

/* ---- footer ---------------------------------------------------------- */

.footer {
	padding-bottom: 24px;
	font-size: 12px;
	line-height: 14px;
}

.footer__inner {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
	padding: 26px var(--pad);
	background: var(--panel-foot);
}

.footer__nav {
	display: flex;
	flex-wrap: wrap;
	flex: 1 1 auto;
}

.footer__nav ul {
	width: 25%;
	list-style: none;
	margin-bottom: 16px;
}

.footer__nav li { padding: 8px 8px 8px 0; }

.footer__nav a {
	display: inline-block;
	font-size: 12px;
	line-height: 14px;
	font-weight: 500;
}

.footer__side {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-end;
	gap: 24px;
	flex: 0 0 auto;
}

.footer__soc {
	display: flex;
	align-items: center;
	gap: 12px;
}

.footer__soc-label { color: var(--muted); }
.footer__soc img { width: 24px; height: 24px; display: block; }
.footer__soc a { opacity: .85; }
.footer__soc a:hover { opacity: 1; }

.footer__lang {
	display: inline-block;
	padding: 12px;
	background: var(--panel);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	font-size: 14px;
	line-height: 17px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--muted);
}

.footer__bottom { text-align: center; }

.footer__pay {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 25px 50px;
	padding: 25px 0;
}

.footer__pay img {
	display: block;
	max-height: 30px;
	width: auto;
}

.footer__note {
	padding: 0 var(--pad);
	color: var(--muted);
	font-size: 12px;
	line-height: 16px;
}

/* ---- cookie bar ------------------------------------------------------ */

.cookie {
	position: fixed;
	left: 50%;
	bottom: 24px;
	z-index: 60;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
	width: min(732px, calc(100% - 32px));
	transform: translateX(-50%);
	padding: 12px;
	background: var(--panel);
	border-radius: 10px;
	font-size: 12px;
	line-height: 14px;
	color: var(--muted);
	text-align: center;
}

.cookie a { color: #8f6ee8; text-decoration: underline; }
.cookie .btn { height: 36px; line-height: 34px; padding: 0 24px; }
.cookie[hidden] { display: none; }

/* ---- drawer ---------------------------------------------------------- */

.overlay {
	position: fixed;
	inset: 0;
	z-index: 70;
	background: rgba(0, 0, 0, .7);
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility .2s ease;
}

.overlay.is-open { opacity: 1; visibility: visible; }

.drawer {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 80;
	display: flex;
	flex-direction: column;
	width: min(320px, 88vw);
	height: 100%;
	padding: 20px;
	background: var(--panel-dark);
	transform: translateX(-100%);
	transition: transform .25s ease;
	overflow-y: auto;
}

.drawer.is-open { transform: none; }

.drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}

.drawer__head img { width: 110px; height: 71px; object-fit: contain; }

.drawer__close {
	width: 36px;
	height: 36px;
	background: transparent;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	color: var(--white);
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.drawer__auth {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin-bottom: 20px;
}

.drawer__auth .btn { padding: 0 8px; width: 100%; }

.drawer__list { list-style: none; }

.drawer__list a {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 0;
	border-bottom: 1px solid var(--line);
	font-size: 14px;
}

.drawer__list a.rhomb { padding-left: 20px; }

.drawer__list img { width: 24px; height: 24px; }

/* ---- mobile action bar ----------------------------------------------- */

.actionbar {
	display: none;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 55;
	align-items: center;
	justify-content: center;
	gap: 12px;
	height: 60px;
	padding: 0 12px;
	background: var(--panel);
	border-top: 1px solid var(--line);
}

.actionbar .btn {
	flex: 1 1 0;
	max-width: 200px;
	padding: 0 8px;
}

/* ---- toplist --------------------------------------------------------- */

.toplist { display: grid; gap: 12px; }

.top-card {
	display: grid;
	grid-template-columns: 56px 200px 1fr auto;
	align-items: center;
	gap: 20px;
	padding: 16px 20px;
	background: var(--panel-soft);
	border: 1px solid var(--line);
	border-radius: var(--radius);
}

.top-card__rank {
	width: 40px;
	height: 40px;
	background: linear-gradient(95.69deg, var(--orange-a) 0, var(--orange-b) 100%);
	border-radius: var(--radius);
	font: 700 18px/40px 'Gilroy', Arial, Helvetica, sans-serif;
	color: var(--white);
	text-align: center;
}

.top-card__art img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--radius);
}

.top-card__name {
	display: block;
	margin-bottom: 8px;
	font-size: 16px;
	line-height: 19px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--white);
}

.top-card__offer { color: var(--gold); font-size: 14px; line-height: 18px; }
.top-card__meta { margin-top: 8px; color: var(--muted); font-size: 12px; line-height: 16px; }

.top-card__rating {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 8px;
	color: var(--gold);
	font-size: 12px;
}

.top-card__cta { display: grid; gap: 8px; }
.top-card__cta .btn { padding: 0 20px; }

/* ---- review ---------------------------------------------------------- */

.review-card {
	display: flex;
	gap: 24px;
	padding: var(--pad);
	background: var(--panel-soft);
	border: 1px solid var(--line);
	border-radius: var(--radius);
}

.review-card__art {
	flex: 0 0 260px;
	border-radius: var(--radius);
	overflow: hidden;
}

.review-card__art img { display: block; width: 100%; height: auto; }

.review-card__body { flex: 1 1 auto; min-width: 0; }

.review-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4px;
	margin: 0 0 20px;
	list-style: none;
}

.review-facts li {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 13px 10px;
	background: rgba(41, 42, 49, .3);
	border-radius: var(--radius);
	font-size: 12px;
	line-height: 14px;
	color: var(--muted);
}

.review-facts b { color: var(--white); font-weight: 500; text-align: right; }

.review-card__cta { display: flex; flex-wrap: wrap; gap: 12px; }

/* ---- landing --------------------------------------------------------- */

.landing-hero {
	display: flex;
	align-items: center;
	gap: 32px;
	padding: 40px var(--pad);
	background: var(--panel-deep) url('../img/bg-jackpot.webp') right center / cover no-repeat;
}

.landing-hero__body { flex: 1 1 auto; min-width: 0; }

.landing-hero__kicker {
	display: block;
	margin-bottom: 12px;
	font-size: 14px;
	line-height: 17px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--gold);
}

.landing-hero__title {
	display: block;
	margin-bottom: 16px;
	font-size: 32px;
	line-height: 38px;
	font-weight: 700;
	color: var(--white);
}

.landing-hero__text { margin-bottom: 24px; color: var(--muted); font-size: 14px; line-height: 20px; }

.landing-hero__cta { display: flex; gap: 12px; flex-wrap: wrap; }

.landing-steps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}

.landing-step {
	padding: 20px;
	background: var(--panel-soft);
	border: 1px solid var(--line);
	border-radius: var(--radius);
}

.landing-step__num {
	display: block;
	margin-bottom: 12px;
	font: 400 32px/1 'Fortuna Dot', 'Gilroy', Arial, Helvetica, sans-serif;
	color: var(--gold);
}

.landing-step__title {
	display: block;
	margin-bottom: 8px;
	font-size: 14px;
	line-height: 17px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--white);
}

.landing-step p { margin: 0; color: var(--muted); font-size: 12px; line-height: 16px; }

/* ---- shared spacing -------------------------------------------------- */

.stack > * + * { margin-top: 24px; }

.center { text-align: center; }

.more { padding: 24px 0 0; text-align: center; }

/* ---- responsive ------------------------------------------------------ */

@media (min-width: 767px) {
	body { background-image: url('../img/bg-tablet.webp'); }
}

@media (min-width: 1200px) {
	body { background-image: url('../img/bg-page.webp'); }
}

@media (min-width: 1920px) {
	body { background-size: 100%; }
}

@media (max-width: 1180px) {
	.games { grid-template-columns: repeat(4, 1fr); }
	.jackpot { flex: 0 0 360px; }
	.top-card { grid-template-columns: 48px 160px 1fr; }
	.top-card__cta { grid-column: 1 / -1; grid-auto-flow: column; justify-content: start; }
}

@media (max-width: 1023px) {
	:root { --pad: 16px; }

	.topbar {
		min-height: 0;
		padding: 14px 0;
	}

	.topbar__burger {
		display: block;
		width: 28px;
		height: 28px;
		padding: 0;
		background: transparent;
		border: 0;
		cursor: pointer;
	}

	.topbar__burger img { display: block; width: 28px; height: 28px; }

	.topbar__logo img { width: 130px; height: 84px; }

	.topbar__auth { display: none; }

	.topbar__account {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border: 1px solid var(--green-b);
		border-radius: 50%;
	}

	.topbar__account img { width: 32px; height: 32px; }

	.nav { display: none; }

	.actionbar { display: flex; }

	body { padding-bottom: 60px; }

	.cookie { bottom: 72px; }

	.main-top { flex-direction: column; }
	.jackpot { flex: 1 1 auto; padding: 20px; }
	.jackpot__sum { font-size: 40px; line-height: 52px; }

	.winners { flex-direction: column; align-items: stretch; gap: 12px; }
	.winners__label { align-self: flex-start; }

	.games { grid-template-columns: repeat(3, 1fr); gap: 0 16px; }

	.footer__nav ul { width: 50%; }
	.footer__inner { flex-direction: column; }
	.footer__side { align-items: flex-start; flex-direction: row; flex-wrap: wrap; }

	.review-card { flex-direction: column; }
	.review-card__art { flex: 1 1 auto; }
	.landing-hero { flex-direction: column; align-items: flex-start; }
	.landing-steps { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
	.games { grid-template-columns: repeat(2, 1fr); }

	.game__over { opacity: 1; background: transparent; justify-content: flex-end; padding-bottom: 8px; }
	.game__over .btn { display: none; }

	.plate__head { align-items: stretch; flex-direction: column; }
	.plate__tools { flex-direction: column; align-items: stretch; }
	.field, .select { width: 100%; }

	.slider__arrow { display: none; }

	.jackpot__title { font-size: 24px; padding: 0 26px; }
	.jackpot__sum { font-size: 32px; line-height: 44px; }

	.top-card { grid-template-columns: 40px 1fr; }
	.top-card__art { grid-column: 1 / -1; max-width: 200px; }

	.review-facts { grid-template-columns: 1fr; }
	.landing-hero__title { font-size: 24px; line-height: 30px; }

	.footer__pay { gap: 18px 28px; }
	.footer__pay img { max-height: 24px; }
}

@media (max-width: 420px) {
	.footer__nav ul { width: 100%; }
}

/* The icon strip carries this site's own pages, so the entry a reader is
   already on marks itself instead of pretending to lead somewhere. */
.nav__list a[aria-current="page"] { color: var(--gold); }
.nav__list a[aria-current="page"] span { color: var(--gold); }

/* ---- language switcher ------------------------------------------------
   One component on two surfaces: the header row on desktop and the drawer on
   phones, where the header hides its auth block entirely. Both are click-to-
   open — a hover panel is unreachable on a touch screen. */

.lang { position: relative; }

.lang__btn {
	display: flex;
	align-items: center;
	gap: 6px;
	height: 36px;
	padding: 0 10px;
	background: var(--panel);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	color: #fff;
	font: 700 13px/1 'Gilroy', Arial, sans-serif;
	cursor: pointer;
}

.lang__btn:hover { border-color: var(--gold); }
.lang__btn b { color: var(--gold); font-size: 10px; }

.lang__code {
	color: var(--gold);
	font-weight: 700;
	letter-spacing: .04em;
}

.lang__pop {
	position: absolute;
	right: 0;
	top: calc(100% + 6px);
	z-index: 40;
	display: none;
	min-width: 176px;
	padding: 4px;
	background: var(--panel-deep);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	box-shadow: 0 12px 32px rgba(0, 0, 0, .55);
}

.lang.is-open .lang__pop { display: block; }

.lang__item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 9px 10px;
	border-radius: var(--radius);
	color: var(--muted);
	font-size: 13px;
	line-height: 16px;
}

.lang__item:hover { background: var(--panel-soft); color: #fff; }
.lang__item.is-active { color: #fff; }
.lang__item.is-active .lang__code { color: var(--gold); }

/* Inside the drawer the panel has nowhere to overlay, so it drops inline. */
.lang--drawer { margin: 0 0 16px; }
.lang--drawer .lang__btn { width: 100%; justify-content: flex-start; height: 40px; }
.lang--drawer .lang__btn b { margin-left: auto; }
.lang--drawer .lang__pop { position: static; width: 100%; margin-top: 6px; box-shadow: none; }

/* ---- breadcrumb, byline, read-next ------------------------------------ */

.crumbs {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	padding-bottom: 12px;
	color: var(--muted);
	font-size: 13px;
	line-height: 16px;
}

.crumbs a { color: var(--muted); }
.crumbs a:hover { color: var(--gold); }

/* Page titles here run to 70-80 characters — one line with an ellipsis
   rather than a trail that wraps over three rows. */
.crumbs__current {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	color: #fff;
}

.byline {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 14px;
	margin: 0 0 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--line);
	color: var(--muted);
	font-size: 13px;
	line-height: 16px;
}

.byline span { color: #fff; }
.byline__d { color: var(--muted); }

.related { display: block; padding-top: 24px; }

.related__title {
	display: block;
	padding-bottom: 12px;
	color: #fff;
	font-size: 18px;
	line-height: 22px;
	font-weight: 700;
}

.related__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 12px;
}

.related__card {
	display: block;
	padding: 14px 16px;
	background: var(--panel-soft);
	border: 1px solid var(--line);
	border-radius: var(--radius);
}

.related__card:hover { border-color: var(--gold); }
.related__card b { display: block; color: #fff; font-size: 14px; line-height: 18px; }
.related__card i { display: block; padding-top: 4px; color: var(--muted); font-size: 12px; line-height: 16px; font-style: normal; }

.drawer__label {
	display: block;
	padding: 16px 0 8px;
	color: var(--muted);
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: 11px;
}

.footer__disclaimer {
	max-width: 900px;
	margin: 0 auto;
	padding: 16px 0 4px;
	color: var(--muted);
	font-size: 12px;
	line-height: 17px;
}

@media (max-width: 720px) {
	.related__grid { grid-template-columns: 1fr; }
	.crumbs { font-size: 12px; }
}

/* ---- article typography ----------------------------------------------
   The clone's content plate was sized for a paragraph of small print under a
   game grid: 12px body, 14px headings, tables at 12px. These pages carry
   15-20 KB articles, so the body block gets a readable scale while keeping the
   palette, the gold accents and the plate it sits in. */

.prose { font-size: 15px; line-height: 1.7; }

.prose h2 {
	padding: 28px 0 12px;
	font-size: 20px;
	line-height: 26px;
	text-transform: none;
}

.prose h3 {
	padding: 20px 0 10px;
	font-size: 17px;
	line-height: 23px;
}

.prose h4 { padding: 16px 0 8px; font-size: 15px; line-height: 21px; }
.prose p { padding: 0 0 14px; }
.prose ul, .prose ol { padding: 0 0 16px 22px; font-size: 15px; line-height: 1.7; }
.prose li { margin-bottom: 6px; }
.prose blockquote { font-size: 14px; line-height: 1.65; }

/* Narrow screenshots must not hug the left edge of the plate. */
.prose img { margin: 10px auto 22px; }

/* A table sized to its content, then scrolled — a flat width:100% squeezes a
   five-column table into a ragged stack of wrapped words on a phone. */
.prose .table-scroll {
	overflow-x: auto;
	margin: 20px 0;
	-webkit-overflow-scrolling: touch;
}

.prose .table-scroll table {
	width: max-content;
	min-width: 100%;
	margin: 0;
	font-size: 14px;
	line-height: 19px;
}

.prose .table-scroll th { white-space: nowrap; }
.prose .table-scroll td { max-width: 38ch; text-align: left; }

/* The bar above an inner page now carries only the breadcrumb — its title moved
   into the article, where every h1-h6 on this site belongs. */
.plate--bar { padding: 14px 24px; }
.plate--bar .crumbs { padding: 0; }

.prose h1 {
	padding: 4px 0 14px;
	font-size: 26px;
	line-height: 32px;
	text-transform: none;
}

@media (max-width: 720px) {
	.prose h1 { font-size: 21px; line-height: 27px; }
	.plate--bar { padding: 12px 16px; }
}
