.home-harakabet { position: relative; overflow: hidden; }

.home-harakabet::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 30%;
	height: 40%;
	z-index: 0;
	pointer-events: none;
	background: var(--color-accent-red);
	clip-path: polygon(0 0%, 100% 30%, 100% 100%, 0 70%);
}

.home-harakabet > * {
	position: relative;
	z-index: 1;
}

/* Hero */
.hero-bet { padding: 40px 0; }

.hero-bet__card-wrap { position: relative; }

.hero-bet__card {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	min-height: 460px;
	display: flex;
	align-items: center;
	background: linear-gradient(160deg, #151418 0%, #431b13 100%);
	padding: 40px 64px;
}

.hero-bet__art {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

.hero-bet__texture {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .55;
}

.hero-bet__glow {
	position: absolute;
	border-radius: 50%;
	background: var(--color-accent-orange);
	filter: blur(90px);
	opacity: .28;
}

.hero-bet__glow--a { width: 420px; height: 420px; top: 10%; right: 8%; }
.hero-bet__glow--b { width: 160px; height: 160px; bottom: 8%; right: 30%; }

.hero-bet__character {
	position: absolute;
	top: -32px;
	right: 24px;
	height: calc(100% + 32px);
	width: auto;
	max-width: 55%;
	object-fit: contain;
	object-position: bottom;
	z-index: 1;
	pointer-events: none;
}

.hero-bet__content {
	position: relative;
	z-index: 2;
	max-width: 454px;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.hero-bet__heading {
	font-family: var(--font-display);
	font-size: 32px;
	font-weight: 400;
	color: #fff;
	line-height: 1.25;
}

.hero-bet__accent {
	color: var(--color-accent-red);
	font-weight: 700;
}

/* Matches */
.matches { padding: 32px 0; }

.matches__row {
	overflow: hidden;
}

.matches__row .swiper-wrapper {
	align-items: stretch;
}

.matches__row .match-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	padding: 24px;
	background: #fff5eb;
	border-radius: 8px;
	box-shadow: 0 4px 5.25px rgba(0, 0, 0, .25);
}

.match-card__top {
	width: 100%;
	height: 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 12px;
	color: var(--color-text-strong);
}

.match-card__league { display: flex; align-items: center; gap: 8px; }
.match-card__league-icon { width: 16.67px; height: 16.67px; }

.match-card__teams {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.match-card__team {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 600;
	color: var(--color-text-muted);
	text-align: center;
}

.match-card__crest {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--color-dark-alt);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.match-card__crest img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 4px;
}

.match-card__vs { font-size: 12px; color: var(--color-text-strong); }

.match-card__odds {
	width: 100%;
	display: flex;
	gap: 16px;
}

.match-card__odd {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	padding: 8px 0;
	background: var(--color-dark);
	border-radius: 4px;
	color: #fff;
}

.match-card__odd span { font-size: 12px; }
.match-card__odd strong { font-size: 12px; font-weight: 600; }

/* Promo blocks (Sport / Casino) — a contained rounded card, NOT a full-bleed section background */
.promo-block { padding: 40px 0; }

.promo-block__card-wrap { position: relative; }

.promo-block__card {
	position: relative;
	overflow: hidden;
	border-radius: 8px;
	background: linear-gradient(160deg, #151418 0%, #431b13 100%);
	padding: 56px 24px;
}

.promo-block__art { position: absolute; inset: 0; z-index: 0; }

.promo-block__texture {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .5;
}

.promo-block__glow {
	position: absolute;
	border-radius: 50%;
	background: var(--color-accent-orange);
	filter: blur(70px);
	opacity: .5;
}

.promo-block__glow--a { width: 380px; height: 360px; top: 10%; right: 18%; }
.promo-block__glow--b { width: 180px; height: 170px; top: 30%; right: 8%; }

.promo-block__character {
	position: absolute;
	top: -32px;
	right: 24px;
	height: calc(100% + 32px);
	width: auto;
	max-width: 55%;
	object-fit: contain;
	object-position: bottom;
	z-index: 1;
	pointer-events: none;
}

.promo-block__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.promo-block__badge { display: block; height: 17px; margin-bottom: -8px; }
.promo-block__badge img { height: 100%; width: auto; }

.promo-block__heading { display: flex; align-items: center; gap: 16px; }
.promo-block__heading h2 { font-size: 42px; font-weight: 700; color: #fff; }
.promo-block__icon { width: 24px; height: 24px; display: inline-flex; }

.promo-block__text {
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	max-width: 584px;
}

.promo-block__tags { display: flex; gap: 16px; }

.tag-pill {
	flex: 1;
	min-width: 160px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 51px;
	padding: 16px;
	border-radius: 4px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
}

.tag-pill--green { background: var(--color-green); }
.tag-pill--pink { background: var(--color-pink); }

/* Sportsbook categories */
.sportsbook { padding: 40px 0; }

.sportsbook__row {
	overflow: hidden;
}

.sportsbook__row .category-card {
	position: relative;
	aspect-ratio: 308 / 300;
	border-radius: 8px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.category-card__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: var(--color-dark-alt);
}

.category-card__overlay {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 12px;
	padding: 20px 16px;
	border-radius: 8px 8px 0 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, .65) 0%, rgba(0, 0, 0, 0) 100%);
}

.category-card__icon { width: 32px; height: 32px; color: #fff; flex: none; }
.category-card__icon img { width: 100%; height: 100%; object-fit: contain; }

.category-card__label {
	color: #f1eeee;
	font-size: 18px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .02em;
}

.category-card__button {
	position: relative;
	z-index: 1;
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 6px 10px;
	background: var(--color-green);
	border-radius: 0 0 8px 8px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.category-card__button svg { width: 25px; height: 25px; }

/* Row heading (Sportsbook / game rows) — always on the cream page background */
.row-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
	gap: 16px;
}

.row-heading__title {
	font-size: 24px;
	font-weight: 700;
	color: var(--color-heading);
}

.row-heading__controls { display: flex; align-items: center; gap: 8px; }

.row-heading__arrow {
	width: 24px;
	height: 24px;
	padding: 0;
	line-height: 0;
	border-radius: 4px;
	background: var(--color-dark-alt);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.row-heading__arrow svg { width: 12px; height: 12px; }

/* Game rows (Casino / Top Rated Games / Live Casino) — on the cream page background */
.game-rows-section { padding: 40px 0 80px; }

.games-row { margin-top: 56px; }
.games-row:first-child { margin-top: 0; }

.games-row__grid {
	overflow: hidden;
}

.games-row__grid .games-row__card {
	border-radius: 8px;
	overflow: hidden;
	background: var(--color-dark-alt);
}

.games-row__card img { width: 100%; height: 100%; object-fit: cover; }

/* FAQ */
.faq { padding: 40px 0 80px; }

.faq__title {
	font-size: 32px;
	font-weight: 700;
	color: var(--color-heading);
	margin-bottom: 24px;
}

.faq__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.faq__item {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
	overflow: hidden;
}

.faq__question {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 24px;
	font-family: var(--font-heading);
	font-size: 16px;
	font-weight: 600;
	color: var(--color-heading);
	text-align: left;
	cursor: pointer;
}

.faq__icon {
	width: 20px;
	height: 20px;
	flex: none;
	color: var(--color-green);
	transition: transform .2s ease;
}

.faq__item.is-open .faq__icon { transform: rotate(45deg); }

.faq__answer {
	max-height: 0;
	overflow: hidden;
	padding: 0 24px;
	transition: max-height .3s ease, padding .3s ease;
}

.faq__item.is-open .faq__answer {
	max-height: 800px;
	padding: 0 24px 24px;
}

.faq__answer .rich-text { font-size: 15px; }
.swiper-slide{
	height: auto !important;
}
@media (max-width: 1023px) {
.promo-block__card {
	    padding: 56px 16px;
}

	.hero-bet__character,
	.promo-block__character {
		max-width: 100%;
		top: -16px;
		height: calc(100% + 16px);
		left: 0;
	}

.seo-section {
    padding: 10px 0;
}


	.promo-block__content,
	.hero-bet__content { max-width: none; 

	}

	.hero-bet__card { padding: 32px 16px; 
		min-height: 0;}

	.hero-bet__glow--a,
	.hero-bet__glow--b,
	.promo-block__glow--a,
	.promo-block__glow--b {
		width: 100%;
		height: 100%;
		top: 0;
		right: 0;
		bottom: auto;
		left: 0;
		border-radius: 0;
	}
}

