/**
 * AppVortex / FastLight Store
 * Front Page
 * ----------------------------------------------------------
 * Identity:
 * White + Navy + Light Blue
 *
 * Desktop:
 * News  = 3 columns
 * Games = 4 columns
 *
 * Tablet:
 * Games = 2 columns
 *
 * Mobile:
 * 1 column
 */


/* =========================================================
   DESIGN TOKENS
========================================================= */

.av-home {
	--av-blue: #2498ff;
	--av-blue-dark: #0879df;
	--av-blue-soft: #eaf6ff;

	--av-navy: #08182f;
	--av-navy-2: #0c2344;
	--av-navy-3: #12325c;

	--av-text: #10213a;
	--av-text-soft: #64748b;
	--av-border: #e5edf5;

	--av-white: #ffffff;
	--av-bg: #ffffff;
	--av-bg-soft: #f6f9fc;

	--av-radius-sm: 12px;
	--av-radius: 18px;
	--av-radius-lg: 28px;

	--av-shadow-sm:
		0 6px 20px rgba(8, 24, 47, 0.06);

	--av-shadow:
		0 16px 45px rgba(8, 24, 47, 0.09);

	--av-shadow-lg:
		0 30px 80px rgba(3, 18, 38, 0.18);

	background: var(--av-bg);
	color: var(--av-text);
	overflow: hidden;
}


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


.av-home img {
	display: block;
	max-width: 100%;
}


.av-home a {
	text-decoration: none;
}


.av-home button,
.av-home a {
	-webkit-tap-highlight-color: transparent;
}


.av-home-container {
	width: min(1240px, calc(100% - 48px));
	margin-inline: auto;
}



/* =========================================================
   ACCESSIBILITY
========================================================= */

.av-home a:focus-visible,
.av-home button:focus-visible {
	outline: 3px solid rgba(36, 152, 255, 0.35);
	outline-offset: 4px;
}



/* =========================================================
   HERO
========================================================= */

.av-home-hero {
	position: relative;
	padding: 78px 0 72px;
	background:
		radial-gradient(
			circle at 80% 15%,
			rgba(36, 152, 255, 0.25),
			transparent 28%
		),
		radial-gradient(
			circle at 10% 90%,
			rgba(67, 183, 255, 0.13),
			transparent 30%
		),
		linear-gradient(
			135deg,
			#061326 0%,
			#0a1e3b 55%,
			#0d294f 100%
		);

	color: #fff;
}


.av-home-hero::before {
	content: "";
	position: absolute;
	inset: 0;

	background-image:
		linear-gradient(
			rgba(255, 255, 255, 0.025) 1px,
			transparent 1px
		),
		linear-gradient(
			90deg,
			rgba(255, 255, 255, 0.025) 1px,
			transparent 1px
		);

	background-size: 44px 44px;
	pointer-events: none;

	mask-image:
		linear-gradient(
			to bottom,
			rgba(0, 0, 0, 0.65),
			transparent
		);
}


.av-home-hero__grid {
	position: relative;
	z-index: 2;

	display: grid;
	grid-template-columns:
		minmax(0, 1.05fr)
		minmax(380px, 0.95fr);

	gap: clamp(45px, 6vw, 90px);
	align-items: center;
}


.av-home-hero__content {
	max-width: 680px;
}


.av-home-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;

	margin-bottom: 18px;

	color: #69c1ff;

	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.14em;
}


.av-home-hero__eyebrow::before {
	content: "";
	width: 28px;
	height: 2px;

	background: var(--av-blue);
	border-radius: 999px;
}


.av-home-hero__title {
	max-width: 700px;
	margin: 0;

	color: #fff;

	font-size:
		clamp(
			40px,
			5vw,
			68px
		);

	line-height: 1.06;
	font-weight: 850;
	letter-spacing: -0.045em;
}


.av-home-hero__description {
	max-width: 650px;

	margin:
		24px 0 0;

	color:
		rgba(
			255,
			255,
			255,
			0.72
		);

	font-size: 17px;
	line-height: 1.85;
}


.av-home-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;

	margin-top: 32px;
}



/* =========================================================
   GLOBAL BUTTONS
========================================================= */

.av-home-button {
	min-height: 48px;

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;

	padding: 0 21px;

	border: 1px solid transparent;
	border-radius: 12px;

	font-size: 14px;
	font-weight: 750;

	transition:
		transform 0.22s ease,
		background-color 0.22s ease,
		border-color 0.22s ease,
		box-shadow 0.22s ease;
}


.av-home-button:hover {
	transform: translateY(-2px);
}


.av-home-button--primary {
	background:
		linear-gradient(
			135deg,
			#37acff,
			#178be9
		);

	color: #fff;

	box-shadow:
		0 12px 28px
		rgba(23, 139, 233, 0.28);
}


.av-home-button--primary:hover {
	color: #fff;

	box-shadow:
		0 16px 34px
		rgba(23, 139, 233, 0.38);
}


.av-home-button--secondary {
	color: #fff;

	background:
		rgba(
			255,
			255,
			255,
			0.07
		);

	border-color:
		rgba(
			255,
			255,
			255,
			0.14
		);

	backdrop-filter: blur(10px);
}


.av-home-button--secondary:hover {
	color: #fff;

	background:
		rgba(
			255,
			255,
			255,
			0.12
		);

	border-color:
		rgba(
			255,
			255,
			255,
			0.24
		);
}



/* =========================================================
   HERO FEATURES
========================================================= */

.av-home-hero__features {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;

	margin-top: 30px;
}


.av-home-hero__feature {
	display: inline-flex;
	align-items: center;
	gap: 7px;

	color:
		rgba(
			255,
			255,
			255,
			0.72
		);

	font-size: 13px;
	font-weight: 600;
}


.av-home-hero__feature-icon {
	width: 20px;
	height: 20px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	border-radius: 50%;

	background:
		rgba(
			36,
			152,
			255,
			0.14
		);

	color: #58b8ff;

	font-size: 11px;
}



/* =========================================================
   HERO FEATURED CARD
========================================================= */

.av-home-hero__visual {
	position: relative;
}


.av-home-hero__visual::before {
	content: "";

	position: absolute;
	width: 75%;
	height: 75%;

	top: 50%;
	left: 50%;

	transform:
		translate(
			-50%,
			-50%
		);

	background:
		radial-gradient(
			circle,
			rgba(35, 154, 255, 0.3),
			transparent 70%
		);

	filter: blur(25px);
}


.av-home-featured-game {
	position: relative;
	z-index: 2;

	overflow: hidden;

	border:
		1px solid
		rgba(
			255,
			255,
			255,
			0.12
		);

	border-radius: 26px;

	background:
		rgba(
			255,
			255,
			255,
			0.06
		);

	box-shadow:
		0 30px 80px
		rgba(
			0,
			0,
			0,
			0.28
		);

	backdrop-filter: blur(14px);

	transform: rotate(1.2deg);

	transition:
		transform 0.35s ease,
		border-color 0.35s ease;
}


.av-home-featured-game:hover {
	transform:
		rotate(0deg)
		translateY(-5px);

	border-color:
		rgba(
			77,
			184,
			255,
			0.45
		);
}


.av-home-featured-game__link {
	display: block;
	color: #fff;
}


.av-home-featured-game__media {
	position: relative;

	aspect-ratio: 16 / 10;

	overflow: hidden;

	background: #102542;
}


.av-home-featured-game__image {
	width: 100%;
	height: 100%;

	object-fit: cover;

	transition:
		transform 0.55s ease;
}


.av-home-featured-game:hover
.av-home-featured-game__image {
	transform: scale(1.04);
}


.av-home-featured-game__media::after {
	content: "";

	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			to top,
			rgba(3, 14, 30, 0.52),
			transparent 55%
		);
}


.av-home-featured-game__placeholder {
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			135deg,
			#12355e,
			#071a33
		);
}


.av-home-featured-game__badge {
	position: absolute;
	z-index: 3;

	top: 18px;
	inset-inline-start: 18px;

	padding: 7px 11px;

	border-radius: 999px;

	background: var(--av-blue);
	color: #fff;

	font-size: 11px;
	font-weight: 800;
}


.av-home-featured-game__body {
	padding: 21px 22px 23px;
}


.av-home-featured-game__category {
	display: block;

	margin-bottom: 8px;

	color: #55b8ff;

	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}


.av-home-featured-game__title {
	margin: 0;

	color: #fff;

	font-size: 21px;
	line-height: 1.4;
	font-weight: 800;
}


.av-home-featured-game__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;

	margin-top: 12px;

	color:
		rgba(
			255,
			255,
			255,
			0.56
		);

	font-size: 12px;
}



/* =========================================================
   QUICK NAVIGATION
========================================================= */

.av-home-quick {
	position: relative;
	z-index: 10;

	margin-top: -28px;
}


.av-home-quick__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}


.av-home-quick-card {
	min-width: 0;

	display: flex;
	align-items: center;
	gap: 13px;

	padding: 18px;

	border: 1px solid var(--av-border);
	border-radius: 16px;

	background: #fff;
	color: var(--av-text);

	box-shadow: var(--av-shadow);

	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		border-color 0.22s ease;
}


.av-home-quick-card:hover {
	transform: translateY(-4px);

	border-color:
		rgba(
			36,
			152,
			255,
			0.3
		);

	box-shadow: var(--av-shadow);
}


.av-home-quick-card__icon {
	flex: 0 0 auto;

	width: 42px;
	height: 42px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 12px;

	background: var(--av-blue-soft);
	color: var(--av-blue-dark);

	font-size: 15px;
	font-weight: 900;
}


.av-home-quick-card__content {
	min-width: 0;

	display: flex;
	flex-direction: column;
	gap: 3px;
}


.av-home-quick-card__content strong {
	color: var(--av-navy);

	font-size: 14px;
	font-weight: 800;
}


.av-home-quick-card__content small {
	overflow: hidden;

	color: var(--av-text-soft);

	font-size: 11px;

	white-space: nowrap;
	text-overflow: ellipsis;
}


.av-home-quick-card__arrow {
	margin-inline-start: auto;

	color: #9aa9ba;

	transition:
		transform 0.2s ease,
		color 0.2s ease;
}


.av-home-quick-card:hover
.av-home-quick-card__arrow {
	color: var(--av-blue);

	transform: translateX(3px);
}



/* =========================================================
   SECTIONS
========================================================= */

.av-home-section {
	padding: 90px 0;
}


.av-home-section--soft {
	background: var(--av-bg-soft);
}


.av-home-section__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;

	margin-bottom: 34px;
}


.av-home-section__heading {
	max-width: 700px;
}


.av-home-section__eyebrow {
	display: block;

	margin-bottom: 8px;

	color: var(--av-blue-dark);

	font-size: 11px;
	font-weight: 850;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}


.av-home-section__title {
	margin: 0;

	color: var(--av-navy);

	font-size:
		clamp(
			27px,
			3vw,
			38px
		);

	line-height: 1.2;
	font-weight: 850;
	letter-spacing: -0.025em;
}


.av-home-section__description {
	max-width: 640px;

	margin: 10px 0 0;

	color: var(--av-text-soft);

	font-size: 14px;
	line-height: 1.8;
}


.av-home-section__more {
	flex: 0 0 auto;

	display: inline-flex;
	align-items: center;
	gap: 7px;

	padding-bottom: 5px;

	border-bottom:
		1px solid
		rgba(
			36,
			152,
			255,
			0.25
		);

	color: var(--av-blue-dark);

	font-size: 13px;
	font-weight: 800;

	transition:
		gap 0.2s ease,
		border-color 0.2s ease;
}


.av-home-section__more:hover {
	gap: 11px;

	border-color: var(--av-blue);

	color: var(--av-blue-dark);
}



/* =========================================================
   NEWS — 3 COLUMNS DESKTOP
========================================================= */

.av-home-news {
	background: #fff;
}


.av-home-news__grid {
	display: grid;
	gap: 22px;
}


.av-home-news__grid--large {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}


.av-home-news-card {
	min-width: 0;
	overflow: hidden;

	border: 1px solid var(--av-border);
	border-radius: 18px;

	background: #fff;

	box-shadow: var(--av-shadow-sm);

	transition:
		transform 0.25s ease,
		box-shadow 0.25s ease,
		border-color 0.25s ease;
}


.av-home-news-card:hover {
	transform: translateY(-5px);

	border-color:
		rgba(
			36,
			152,
			255,
			0.22
		);

	box-shadow: var(--av-shadow);
}


.av-home-news-card__link {
	display: block;
	height: 100%;

	color: inherit;
}


.av-home-news-card__media {
	position: relative;

	aspect-ratio: 16 / 9;

	overflow: hidden;

	background: #edf3f8;
}


.av-home-news-card__image {
	width: 100%;
	height: 100%;

	object-fit: cover;

	transition:
		transform 0.45s ease;
}


.av-home-news-card:hover
.av-home-news-card__image {
	transform: scale(1.045);
}


.av-home-news-card__placeholder {
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			135deg,
			#e7f4ff,
			#d9e7f4
		);
}


.av-home-news-card__badge {
	position: absolute;

	bottom: 14px;
	inset-inline-start: 14px;

	padding: 6px 10px;

	border-radius: 999px;

	background:
		rgba(
			8,
			24,
			47,
			0.9
		);

	color: #fff;

	font-size: 10px;
	font-weight: 750;

	backdrop-filter: blur(8px);
}


.av-home-news-card__body {
	padding: 21px;
}


.av-home-news-card__meta {
	display: flex;
	align-items: center;
	gap: 12px;

	margin-bottom: 10px;
}


.av-home-news-card__date {
	color: #8997a8;

	font-size: 11px;
	font-weight: 600;
}


.av-home-news-card__title {
	margin: 0;

	color: var(--av-navy);

	font-size: 18px;
	line-height: 1.45;
	font-weight: 800;
}


.av-home-news-card__excerpt {
	margin: 10px 0 0;

	color: var(--av-text-soft);

	font-size: 13px;
	line-height: 1.75;
}


.av-home-news-card__read {
	margin-top: 18px;
}



/* =========================================================
   GLOBAL CARD CTA
========================================================= */

.av-home-card-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;

	min-height: 40px;

	padding: 0 15px;

	border-radius: 10px;

	background: var(--av-blue-soft);
	color: var(--av-blue-dark);

	font-size: 12px;
	font-weight: 800;

	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		transform 0.2s ease;
}


.av-home-card-cta:hover {
	background: var(--av-blue);
	color: #fff;

	transform: translateY(-1px);
}


.av-home-card-cta--download {
	width: 100%;

	margin-top: 16px;

	background: var(--av-blue);
	color: #fff;
}


.av-home-card-cta--download:hover {
	background: var(--av-blue-dark);
	color: #fff;
}



/* =========================================================
   ADVERTISEMENT
========================================================= */

.av-home-ad {
	width: min(1240px, calc(100% - 48px));

	margin: 10px auto;

	text-align: center;
}



/* =========================================================
   GAME CATEGORY FILTERS
========================================================= */

.av-home-tax-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;

	margin: -10px 0 28px;
}


.av-home-tax-row a {
	padding: 8px 13px;

	border: 1px solid var(--av-border);
	border-radius: 999px;

	background: #fff;
	color: var(--av-text-soft);

	font-size: 11px;
	font-weight: 700;

	transition:
		color 0.2s ease,
		border-color 0.2s ease,
		background-color 0.2s ease;
}


.av-home-tax-row a:hover {
	border-color:
		rgba(
			36,
			152,
			255,
			0.3
		);

	background: var(--av-blue-soft);
	color: var(--av-blue-dark);
}



/* =========================================================
   GAMES — 4 COLUMNS DESKTOP
========================================================= */

.av-home-games__grid {
	display: grid;
	gap: 18px;
}


.av-home-games__grid--medium {
	grid-template-columns:
		repeat(
			4,
			minmax(0, 1fr)
		);
}


.av-home-game-card {
	min-width: 0;
	overflow: hidden;

	border: 1px solid var(--av-border);
	border-radius: 17px;

	background: #fff;

	box-shadow: var(--av-shadow-sm);

	transition:
		transform 0.25s ease,
		box-shadow 0.25s ease,
		border-color 0.25s ease;
}


.av-home-game-card:hover {
	transform: translateY(-5px);

	border-color:
		rgba(
			36,
			152,
			255,
			0.25
		);

	box-shadow: var(--av-shadow);
}


.av-home-game-card__media-link {
	display: block;
}


.av-home-game-card__media {
	position: relative;

	aspect-ratio: 16 / 10;

	overflow: hidden;

	background: #e9f0f6;
}


.av-home-game-card__image {
	width: 100%;
	height: 100%;

	object-fit: cover;

	transition:
		transform 0.45s ease;
}


.av-home-game-card:hover
.av-home-game-card__image {
	transform: scale(1.05);
}


.av-home-game-card__placeholder {
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			135deg,
			#dff1ff,
			#e9eff5
		);
}


.av-home-game-card__category {
	position: absolute;

	top: 12px;
	inset-inline-start: 12px;

	max-width:
		calc(100% - 24px);

	overflow: hidden;

	padding: 6px 9px;

	border-radius: 999px;

	background:
		rgba(
			7,
			24,
			46,
			0.88
		);

	color: #fff;

	font-size: 9px;
	font-weight: 750;

	white-space: nowrap;
	text-overflow: ellipsis;

	backdrop-filter: blur(8px);
}


.av-home-game-card__body {
	padding: 17px;
}


.av-home-game-card__title {
	margin: 0;

	font-size: 15px;
	line-height: 1.45;
	font-weight: 800;
}


.av-home-game-card__title a {
	color: var(--av-navy);
}


.av-home-game-card__title a:hover {
	color: var(--av-blue-dark);
}


.av-home-game-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 13px;

	margin-top: 9px;

	color: #8795a5;

	font-size: 10px;
	font-weight: 600;
}



/* =========================================================
   APPS
========================================================= */

.av-home-apps {
	background: #fff;
}


.av-home-apps__grid {
	display: grid;
	grid-template-columns:
		repeat(
			2,
			minmax(0, 1fr)
		);

	gap: 14px;
}


.av-home-app-card {
	min-width: 0;

	border: 1px solid var(--av-border);
	border-radius: 16px;

	background: #fff;

	box-shadow: var(--av-shadow-sm);

	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		border-color 0.22s ease;
}


.av-home-app-card:hover {
	transform: translateY(-3px);

	border-color:
		rgba(
			36,
			152,
			255,
			0.25
		);

	box-shadow: var(--av-shadow);
}


.av-home-app-card__link {
	display: flex;
	align-items: center;
	gap: 15px;

	padding: 15px;
}


.av-home-app-card__icon {
	flex: 0 0 auto;

	width: 72px;
	height: 72px;

	overflow: hidden;

	border-radius: 15px;

	background: var(--av-bg-soft);
}


.av-home-app-card__image {
	width: 100%;
	height: 100%;

	object-fit: cover;
}


.av-home-app-card__placeholder {
	width: 100%;
	height: 100%;

	display: flex;
	align-items: center;
	justify-content: center;

	background:
		linear-gradient(
			135deg,
			#e6f5ff,
			#d7e9f8
		);

	color: var(--av-blue-dark);

	font-size: 20px;
	font-weight: 900;
}


.av-home-app-card__content {
	min-width: 0;
	flex: 1;
}


.av-home-app-card__category {
	display: block;

	margin-bottom: 5px;

	color: var(--av-blue-dark);

	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}


.av-home-app-card__title {
	margin: 0;

	font-size: 15px;
	line-height: 1.4;
	font-weight: 800;
}


.av-home-app-card__title a {
	color: var(--av-navy);
}


.av-home-app-card__meta {
	margin-top: 6px;

	color: #8a98a8;

	font-size: 10px;
}


.av-home-card-cta--app {
	flex: 0 0 auto;

	margin-inline-start: auto;
}



/* =========================================================
   TRENDING SHOWCASE
========================================================= */

.av-home-showcase {
	background:
		linear-gradient(
			180deg,
			#f7fafe 0%,
			#ffffff 100%
		);
}


.av-home-showcase__stage {
	position: relative;

	overflow: hidden;

	border-radius: 26px;

	background: var(--av-navy);

	box-shadow: var(--av-shadow-lg);
}


.av-home-showcase__viewport {
	position: relative;

	min-height: 510px;
	overflow: hidden;
}


.av-home-showcase__track {
	position: relative;
	min-height: 510px;
}


.av-home-showcase__slide {
	position: absolute;
	inset: 0;

	opacity: 0;
	visibility: hidden;

	pointer-events: none;

	transition:
		opacity 0.65s ease,
		visibility 0.65s ease;
}


.av-home-showcase__slide.is-active {
	opacity: 1;
	visibility: visible;

	pointer-events: auto;
}


.av-home-showcase__media {
	position: absolute;
	inset: 0;
}


.av-home-showcase__image {
	width: 100%;
	height: 100%;

	object-fit: cover;

	transform: scale(1.025);

	transition:
		transform 7s linear;
}


.av-home-showcase__slide.is-active
.av-home-showcase__image {
	transform: scale(1.08);
}


.av-home-showcase__placeholder {
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			135deg,
			#153a67,
			#07162a
		);
}


.av-home-showcase__overlay {
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			90deg,
			rgba(3, 14, 29, 0.94) 0%,
			rgba(4, 18, 38, 0.76) 42%,
			rgba(4, 18, 38, 0.2) 75%,
			rgba(4, 18, 38, 0.12) 100%
		);
}


[dir="rtl"]
.av-home-showcase__overlay {
	background:
		linear-gradient(
			270deg,
			rgba(3, 14, 29, 0.94) 0%,
			rgba(4, 18, 38, 0.76) 42%,
			rgba(4, 18, 38, 0.2) 75%,
			rgba(4, 18, 38, 0.12) 100%
		);
}


.av-home-showcase__content {
	position: absolute;
	z-index: 4;

	inset-inline-start: 7%;
	top: 50%;

	width: min(570px, 75%);

	transform: translateY(-50%);
}


.av-home-showcase__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;

	margin-bottom: 14px;
}


.av-home-showcase__badge {
	padding: 6px 10px;

	border-radius: 999px;

	background: var(--av-blue);
	color: #fff;

	font-size: 10px;
	font-weight: 800;
}


.av-home-showcase__date {
	color:
		rgba(
			255,
			255,
			255,
			0.58
		);

	font-size: 11px;
}


.av-home-showcase__title {
	max-width: 600px;

	margin: 0;

	color: #fff;

	font-size:
		clamp(
			30px,
			4vw,
			52px
		);

	line-height: 1.12;
	font-weight: 850;
	letter-spacing: -0.035em;
}


.av-home-showcase__excerpt {
	max-width: 550px;

	margin: 17px 0 0;

	color:
		rgba(
			255,
			255,
			255,
			0.72
		);

	font-size: 14px;
	line-height: 1.8;
}


.av-home-showcase__cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;

	margin-top: 24px;

	min-height: 44px;

	padding: 0 17px;

	border-radius: 11px;

	background: var(--av-blue);
	color: #fff;

	font-size: 12px;
	font-weight: 800;

	transition:
		transform 0.2s ease,
		background-color 0.2s ease;
}


.av-home-showcase__cta:hover {
	transform: translateY(-2px);

	background: var(--av-blue-dark);
	color: #fff;
}



/* =========================================================
   SLIDER CONTROLS
========================================================= */

.av-home-showcase__controls {
	position: absolute;
	z-index: 10;

	left: 28px;
	right: 28px;
	bottom: 25px;

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


.av-home-showcase__nav {
	flex: 0 0 auto;

	width: 40px;
	height: 40px;

	display: flex;
	align-items: center;
	justify-content: center;

	padding: 0;

	border:
		1px solid
		rgba(
			255,
			255,
			255,
			0.18
		);

	border-radius: 50%;

	background:
		rgba(
			4,
			16,
			32,
			0.48
		);

	color: #fff;

	cursor: pointer;

	backdrop-filter: blur(10px);

	transition:
		background-color 0.2s ease,
		border-color 0.2s ease,
		transform 0.2s ease;
}


.av-home-showcase__nav:hover {
	transform: scale(1.05);

	background: var(--av-blue);
	border-color: var(--av-blue);
}


.av-home-showcase__progress {
	flex: 1;

	height: 3px;

	overflow: hidden;

	border-radius: 999px;

	background:
		rgba(
			255,
			255,
			255,
			0.16
		);
}


.av-home-showcase__progress-bar {
	display: block;

	width: 100%;
	height: 100%;

	border-radius: inherit;

	background: #5cbcff;

	transform: scaleX(0);
	transform-origin: left center;

	will-change: transform;
}

[dir="rtl"] .av-home-showcase__progress-bar {
	transform-origin: right center;
}

.av-home-showcase__dots {
	position: absolute;
	z-index: 12;

	bottom: 76px;
	inset-inline-end: 30px;

	display: flex;
	align-items: center;
	gap: 6px;
}


.av-home-showcase__dot {
	width: 7px;
	height: 7px;

	padding: 0;

	border: 0;
	border-radius: 999px;

	background:
		rgba(
			255,
			255,
			255,
			0.38
		);

	cursor: pointer;

	transition:
		width 0.25s ease,
		background-color 0.25s ease;
}


.av-home-showcase__dot.is-active {
	width: 23px;

	background: var(--av-blue);
}



/* =========================================================
   EXPLORE CATEGORIES
========================================================= */

.av-home-categories {
	padding-top: 70px;
}


.av-home-categories__header {
	max-width: 680px;

	margin:
		0 auto
		32px;

	text-align: center;
}


.av-home-categories__grid {
	display: grid;

	grid-template-columns:
		repeat(
			4,
			minmax(0, 1fr)
		);

	gap: 14px;
}


.av-home-category-card {
	display: flex;
	align-items: center;
	gap: 13px;

	padding: 19px;

	border: 1px solid var(--av-border);
	border-radius: 16px;

	background: #fff;
	color: var(--av-text);

	box-shadow: var(--av-shadow-sm);

	transition:
		transform 0.22s ease,
		border-color 0.22s ease,
		box-shadow 0.22s ease;
}


.av-home-category-card:hover {
	transform: translateY(-4px);

	border-color:
		rgba(
			36,
			152,
			255,
			0.25
		);

	box-shadow: var(--av-shadow);
}


.av-home-category-card__icon {
	flex: 0 0 auto;

	width: 44px;
	height: 44px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 12px;

	background: var(--av-blue-soft);
	color: var(--av-blue-dark);

	font-size: 15px;
	font-weight: 900;
}


.av-home-category-card__content {
	min-width: 0;

	display: flex;
	flex-direction: column;
	gap: 3px;
}


.av-home-category-card__name {
	color: var(--av-navy);

	font-size: 14px;
	font-weight: 800;
}


.av-home-category-card__count {
	color: var(--av-text-soft);

	font-size: 10px;
}


.av-home-category-card__arrow {
	margin-inline-start: auto;

	color: #9aa8b8;
}



/* =========================================================
   EMPTY STATES
========================================================= */

.av-home-empty {
	grid-column: 1 / -1;

	margin: 0;
	padding: 35px;

	border: 1px dashed var(--av-border);
	border-radius: 15px;

	background: var(--av-bg-soft);

	color: var(--av-text-soft);

	text-align: center;
}



/* =========================================================
   RTL
========================================================= */

[dir="rtl"]
.av-home {
	direction: rtl;
}


[dir="rtl"]
.av-home-quick-card:hover
.av-home-quick-card__arrow {
	transform: translateX(-3px);
}



/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1100px) {

	.av-home-container {
		width:
			min(
				100% - 40px,
				1100px
			);
	}


	.av-home-hero__grid {
		grid-template-columns:
			minmax(0, 1fr)
			minmax(330px, 0.8fr);

		gap: 45px;
	}


	.av-home-hero__title {
		font-size:
			clamp(
				38px,
				5vw,
				55px
			);
	}


	.av-home-quick__grid {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}


	.av-home-categories__grid {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}

}



/* =========================================================
   TABLET
   Games = exactly 2 columns
========================================================= */

@media (max-width: 900px) {

	.av-home-section {
		padding: 72px 0;
	}


	.av-home-hero {
		padding:
			65px 0
			70px;
	}


	.av-home-hero__grid {
		grid-template-columns: 1fr;

		gap: 45px;
	}


	.av-home-hero__content {
		max-width: 760px;
	}


	.av-home-hero__visual {
		max-width: 680px;
	}


	.av-home-news__grid--large {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}


	.av-home-games__grid--medium {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}


	.av-home-apps__grid {
		grid-template-columns: 1fr;
	}


	.av-home-showcase__viewport,
	.av-home-showcase__track {
		min-height: 480px;
	}


	.av-home-showcase__content {
		width: 75%;
	}

}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 640px) {

	.av-home-container {
		width:
			calc(
				100% - 28px
			);
	}


	.av-home-section {
		padding: 58px 0;
	}


	/* Hero */

	.av-home-hero {
		padding:
			52px 0
			58px;
	}


	.av-home-hero__grid {
		gap: 34px;
	}


	.av-home-hero__eyebrow {
		font-size: 10px;
	}


	.av-home-hero__title {
		font-size:
			clamp(
				34px,
				10vw,
				45px
			);
	}


	.av-home-hero__description {
		margin-top: 18px;

		font-size: 14px;
		line-height: 1.75;
	}


	.av-home-hero__actions {
		margin-top: 25px;
	}


	.av-home-button {
		min-height: 45px;

		padding: 0 16px;

		font-size: 12px;
	}


	.av-home-hero__features {
		gap: 10px 16px;

		margin-top: 23px;
	}


	.av-home-featured-game {
		border-radius: 20px;

		transform: none;
	}


	.av-home-featured-game:hover {
		transform: translateY(-3px);
	}


	/* Quick nav */

	.av-home-quick {
		margin-top: -18px;
	}


	.av-home-quick__grid {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);

		gap: 9px;
	}


	.av-home-quick-card {
		gap: 9px;

		padding: 12px;

		border-radius: 13px;
	}


	.av-home-quick-card__icon {
		width: 36px;
		height: 36px;

		border-radius: 10px;
	}


	.av-home-quick-card__content strong {
		font-size: 12px;
	}


	.av-home-quick-card__content small {
		font-size: 9px;
	}


	.av-home-quick-card__arrow {
		display: none;
	}


	/* Section headings */

	.av-home-section__header {
		align-items: flex-start;
		flex-direction: column;

		gap: 14px;

		margin-bottom: 25px;
	}


	.av-home-section__title {
		font-size: 27px;
	}


	.av-home-section__description {
		font-size: 12px;
	}


	/* News */

	.av-home-news__grid--large {
		grid-template-columns: 1fr;
	}


	/* Games */

	.av-home-games__grid--medium {
		grid-template-columns: 1fr;
	}


	.av-home-game-card__media {
		aspect-ratio: 16 / 9;
	}


	/* Apps */

	.av-home-app-card__link {
		gap: 12px;

		padding: 12px;
	}


	.av-home-app-card__icon {
		width: 60px;
		height: 60px;

		border-radius: 13px;
	}


	.av-home-card-cta--app {
		min-height: 36px;

		padding: 0 11px;

		font-size: 10px;
	}


	/* Slider */

	.av-home-showcase__stage {
		border-radius: 20px;
	}


	.av-home-showcase__viewport,
	.av-home-showcase__track {
		min-height: 500px;
	}


	.av-home-showcase__overlay {
		background:
			linear-gradient(
				to top,
				rgba(3, 14, 29, 0.97) 0%,
				rgba(3, 14, 29, 0.75) 55%,
				rgba(3, 14, 29, 0.22) 100%
			);
	}


	[dir="rtl"]
	.av-home-showcase__overlay {
		background:
			linear-gradient(
				to top,
				rgba(3, 14, 29, 0.97) 0%,
				rgba(3, 14, 29, 0.75) 55%,
				rgba(3, 14, 29, 0.22) 100%
			);
	}


	.av-home-showcase__content {
		top: auto;
		bottom: 95px;

		inset-inline-start: 20px;
		inset-inline-end: 20px;

		width: auto;

		transform: none;
	}


	.av-home-showcase__title {
		font-size: 28px;
	}


	.av-home-showcase__excerpt {
		display:
			-webkit-box;

		overflow: hidden;

		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;

		font-size: 12px;
	}


	.av-home-showcase__controls {
		left: 17px;
		right: 17px;
		bottom: 18px;
	}


	.av-home-showcase__dots {
		bottom: 68px;
		inset-inline-end: 20px;
	}


	/* Categories */

	.av-home-categories__grid {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);

		gap: 9px;
	}


	.av-home-category-card {
		padding: 13px;

		gap: 9px;
	}


	.av-home-category-card__icon {
		width: 38px;
		height: 38px;
	}


	.av-home-category-card__name {
		font-size: 12px;
	}


	.av-home-category-card__arrow {
		display: none;
	}


	.av-home-ad {
		width:
			calc(
				100% - 28px
			);
	}

}



/* =========================================================
   VERY SMALL PHONES
========================================================= */

@media (max-width: 390px) {

	.av-home-quick__grid,
	.av-home-categories__grid {
		grid-template-columns: 1fr 1fr;
	}


	.av-home-app-card__link {
		flex-wrap: wrap;
	}


	.av-home-card-cta--app {
		width: 100%;

		margin:
			4px 0 0;
	}

}



/* =========================================================
   REDUCED MOTION
========================================================= */

@media (
	prefers-reduced-motion:
	reduce
) {

	.av-home *,
	.av-home *::before,
	.av-home *::after {
		scroll-behavior: auto !important;

		animation-duration:
			0.01ms !important;

		animation-iteration-count:
			1 !important;

		transition-duration:
			0.01ms !important;
	}

}




/* =========================================================
   FRONT PAGE — FINAL VISUAL POLISH
   ========================================================= */


/* Wider but still controlled premium layout */

.av-home-container {
	width: min(1320px, calc(100% - 56px));
}


/* =========================================================
   HERO SCALE
========================================================= */

.av-home-hero {
	padding-top: 88px;
	padding-bottom: 82px;
}


.av-home-hero__grid {
	gap: clamp(55px, 6vw, 96px);
}


.av-home-hero__eyebrow {
	font-size: 13px;
	letter-spacing: 0.15em;
}


.av-home-hero__title {
	max-width: 760px;

	font-size: clamp(46px, 5.2vw, 72px);
	line-height: 1.04;
}


.av-home-hero__description {
	max-width: 670px;

	font-size: 17px;
	line-height: 1.8;
}


.av-home-button {
	min-height: 50px;
	padding-inline: 22px;

	font-size: 14px;
}


.av-home-hero__feature {
	font-size: 13px;
}


/* Featured hero card */

.av-home-featured-game__title {
	font-size: 23px;
	line-height: 1.35;
}


.av-home-featured-game__category {
	font-size: 12px;
}


.av-home-featured-game__meta {
	font-size: 13px;
}



/* =========================================================
   QUICK CARDS
========================================================= */

.av-home-quick-card {
	padding: 20px;
}


.av-home-quick-card__icon {
	width: 46px;
	height: 46px;

	font-size: 16px;
}


.av-home-quick-card__content strong {
	font-size: 15px;
}


.av-home-quick-card__content small {
	font-size: 12px;
}



/* =========================================================
   SECTION SPACING
========================================================= */

.av-home-section {
	padding-top: 78px;
	padding-bottom: 78px;
}


.av-home-section__header {
	margin-bottom: 38px;
}


.av-home-section__eyebrow {
	margin-bottom: 9px;

	font-size: 12px;
}


.av-home-section__title {
	font-size: clamp(30px, 3vw, 41px);
}


.av-home-section__description {
	margin-top: 11px;

	font-size: 15px;
	line-height: 1.75;
}


.av-home-section__more {
	font-size: 14px;
}



/* =========================================================
   NEWS CARDS
========================================================= */

.av-home-news__grid--large {
	gap: 24px;
}


.av-home-news-card {
	border-radius: 20px;
}


.av-home-news-card__body {
	padding: 24px;
}


.av-home-news-card__date {
	font-size: 12px;
}


.av-home-news-card__badge {
	font-size: 11px;
}


.av-home-news-card__title {
	font-size: 20px;
	line-height: 1.42;
}


.av-home-news-card__excerpt {
	margin-top: 12px;

	font-size: 14px;
	line-height: 1.75;
}


.av-home-card-cta {
	min-height: 42px;

	padding-inline: 17px;

	font-size: 13px;
}



/* =========================================================
   GAMES
========================================================= */

.av-home-games__grid--medium {
	gap: 22px;
}


.av-home-game-card {
	border-radius: 19px;
}


.av-home-game-card__body {
	padding: 19px;
}


.av-home-game-card__title {
	font-size: 17px;
	line-height: 1.45;
}


.av-home-game-card__meta {
	margin-top: 10px;

	font-size: 11px;
}


.av-home-game-card__category {
	font-size: 10px;
}


.av-home-card-cta--download {
	margin-top: 17px;

	min-height: 43px;
}



/* =========================================================
   APPS
========================================================= */

.av-home-apps__grid {
	gap: 18px;
}


.av-home-app-card__link {
	padding: 18px;
	gap: 17px;
}


.av-home-app-card__icon {
	width: 78px;
	height: 78px;
}


.av-home-app-card__category {
	font-size: 10px;
}


.av-home-app-card__title {
	font-size: 17px;
}


.av-home-app-card__meta {
	font-size: 11px;
}



/* =========================================================
   TRENDING — THE SECTION THAT LOOKED TOO SMALL
========================================================= */

.av-home-showcase__viewport,
.av-home-showcase__track {
	min-height: 540px;
}


.av-home-showcase__content {
	inset-inline-start: 7.5%;

	width: min(650px, 72%);
}


.av-home-showcase__badge {
	padding: 7px 12px;

	font-size: 11px;
}


.av-home-showcase__date {
	font-size: 12px;
}


.av-home-showcase__title {
	font-size: clamp(38px, 4.3vw, 58px);
	line-height: 1.08;
}


.av-home-showcase__excerpt {
	max-width: 600px;

	margin-top: 19px;

	font-size: 15px;
	line-height: 1.8;
}


.av-home-showcase__cta {
	min-height: 47px;

	padding-inline: 20px;

	font-size: 13px;
}



/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

	.av-home-container {
		width: min(100% - 40px, 900px);
	}


	.av-home-section {
		padding-top: 68px;
		padding-bottom: 68px;
	}


	/*
	 * Important:
	 * exactly two game cards per row on tablet.
	 */
	.av-home-games__grid--medium {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}


	.av-home-game-card__title {
		font-size: 16px;
	}


	.av-home-showcase__viewport,
	.av-home-showcase__track {
		min-height: 500px;
	}

}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 640px) {

	.av-home-container {
		width: calc(100% - 28px);
	}


	.av-home-hero {
		padding-top: 56px;
		padding-bottom: 62px;
	}


	.av-home-hero__title {
		font-size: clamp(35px, 10vw, 46px);
	}


	.av-home-hero__description {
		font-size: 14px;
	}


	.av-home-section {
		padding-top: 56px;
		padding-bottom: 56px;
	}


	.av-home-section__title {
		font-size: 28px;
	}


	.av-home-section__description {
		font-size: 13px;
	}


	.av-home-news-card__title {
		font-size: 19px;
	}


	/*
	 * Phones return to one game per row.
	 */
	.av-home-games__grid--medium {
		grid-template-columns: 1fr;
	}


	.av-home-game-card__title {
		font-size: 17px;
	}


	.av-home-showcase__viewport,
	.av-home-showcase__track {
		min-height: 510px;
	}


	.av-home-showcase__content {
		inset-inline-start: 22px;
		inset-inline-end: 22px;

		width: auto;
	}


	.av-home-showcase__title {
		font-size: 31px;
	}


	.av-home-showcase__excerpt {
		font-size: 13px;
		line-height: 1.7;
	}

}
/* =========================================================
   APPVORTEX FRONT PAGE — 2026 POLISH LAYER
   Six requested refinements: sticker hero, compact mobile hero
   rows, visual quick navigation, 2-up mobile games, excerpts,
   and stronger bilingual typography.
========================================================= */

.av-home {
	font-family: Inter, "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.7;
}

[dir="rtl"] .av-home {
	font-family: "Noto Sans Arabic", Tahoma, "Segoe UI", Arial, sans-serif;
}

/* Sticker hero: the dark surface is now a floating object, not a hard page band. */
.av-home-hero {
	padding: 24px 0 38px;
	background: linear-gradient(180deg, #f4f9fe 0%, #f9fcff 48%, #fff 100%);
	color: #fff;
	overflow: visible;
}

.av-home-hero::before { display: none; }

.av-home-hero > .av-home-container {
	position: relative;
	isolation: isolate;
	padding: clamp(32px, 3.4vw, 48px);
	border: 1px solid rgba(255,255,255,.10);
	border-radius: 34px;
	background:
		radial-gradient(circle at 88% 10%, rgba(42,159,255,.26), transparent 30%),
		radial-gradient(circle at 8% 95%, rgba(45,181,255,.12), transparent 34%),
		linear-gradient(135deg, #061326 0%, #0a1f3d 58%, #103965 100%);
	box-shadow: 0 34px 90px rgba(8,24,47,.16);
	overflow: hidden;
}

.av-home-hero > .av-home-container::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
	background-size: 44px 44px;
	mask-image: linear-gradient(to bottom,rgba(0,0,0,.8),transparent 92%);
	pointer-events: none;
}

.av-home-hero__description { font-size: 16px; line-height: 1.72; margin-top: 18px; }
.av-home-hero__actions { flex-wrap: nowrap; margin-top: 24px; }
.av-home-hero__features { flex-wrap: nowrap; margin-top: 20px; }
.av-home-hero__feature { white-space: nowrap; font-size: 14px; }

/* Final hero proportions — authoritative sizing lives here, not in style.css. */
.av-home-hero__grid {
	grid-template-columns: minmax(0, .92fr) minmax(360px, .78fr);
	gap: clamp(38px, 4.5vw, 68px);
}

.av-home-hero__content {
	max-width: 620px;
}

.av-home-hero__title {
	max-width: 650px;
	font-size: clamp(40px, 4.15vw, 58px);
	line-height: 1.06;
}

.av-home-hero__visual {
	width: 100%;
	max-width: 500px;
	justify-self: center;
}

.av-home-featured-game__media {
	aspect-ratio: 16 / 9;
}

.av-home-featured-game__body {
	padding: 17px 20px 19px;
}

.av-home-featured-game__title {
	font-size: 20px;
}

.av-home-featured-game__meta {
	margin-top: 8px;
}

/* Quick navigation: independent visual sticker cards. */
.av-home-quick { margin-top: -16px; padding-bottom: 18px; }
.av-home-quick__grid { gap: 18px; }
.av-home-quick-card {
	min-height: 108px;
	padding: 18px 19px;
	border-color: #dce8f3;
	border-radius: 21px;
	box-shadow: 0 18px 46px rgba(8,24,47,.10);
}
.av-home-quick-card__icon {
	width: 58px;
	height: 58px;
	border-radius: 17px;
	background: linear-gradient(145deg,#eaf7ff,#dcefff);
	box-shadow: inset 0 0 0 1px rgba(36,152,255,.08);
}
.av-home-quick-card__icon svg {
	width: 30px;
	height: 30px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.av-home-quick-card__icon--trending svg { fill: currentColor; stroke-width: 1.2; }
.av-home-quick-card__content strong { font-size: 16px; line-height: 1.25; }
.av-home-quick-card__content small { margin-top: 3px; font-size: 12px; line-height: 1.45; }

/* Typography and spacing — clearer Arabic and English hierarchy. */
.av-home-section { padding-block: 84px; }
.av-home-section__eyebrow { font-size: 12px; }
.av-home-section__title { font-size: clamp(31px,3.2vw,43px); line-height: 1.18; }
.av-home-section__description { font-size: 16px; line-height: 1.8; }
.av-home-section__more { font-size: 14px; }
.av-home-news-card__title { font-size: 21px; }
.av-home-news-card__excerpt { font-size: 15px; line-height: 1.8; }
.av-home-card-cta { font-size: 14px; font-weight: 800; }

/* Game/app summaries requested for richer cards. */
.av-home-game-card__excerpt,
.av-home-app-card__excerpt {
	margin: 11px 0 0;
	color: var(--av-text-soft);
	font-size: 13px;
	line-height: 1.7;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.av-home-game-card__title,
.av-home-app-card__title { font-size: 18px; }
.av-home-game-card__body { display: flex; flex-direction: column; height: 100%; }
.av-home-card-cta--download { margin-top: auto; transform: translateY(0); }
.av-home-game-card__excerpt + .av-home-card-cta--download { margin-top: 17px; }

/* Showcase: polished but still driven by the existing lightweight vanilla JS. */
.av-home-showcase__stage {
	border: 1px solid rgba(8,24,47,.08);
	box-shadow: 0 32px 80px rgba(8,24,47,.16);
}
.av-home-showcase__slide { transition: opacity .55s ease, visibility .55s ease; }
.av-home-showcase__image { transition: transform 7s ease; }
.av-home-showcase__slide.is-active .av-home-showcase__image { transform: scale(1.055); }

@media (max-width: 1100px) {
	.av-home-hero > .av-home-container { padding: 36px; border-radius: 30px; }
	.av-home-quick__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 900px) {
	.av-home-hero { padding: 18px 0 32px; }
	.av-home-hero > .av-home-container { padding: 32px; }
	.av-home-hero__grid { gap: 30px; }
	.av-home-hero__actions { flex-wrap: nowrap; gap: 9px; }
	.av-home-hero__features { flex-wrap: nowrap; gap: 12px; }
	.av-home-games__grid--medium { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 640px) {
	.av-home { font-size: 15px; }
	.av-home-container { width: calc(100% - 20px); }
	.av-home-hero { padding: 10px 0 28px; }
	.av-home-hero > .av-home-container { width: calc(100% - 16px); padding: 24px 16px 26px; border-radius: 25px; }
	.av-home-hero__title { font-size: clamp(32px,9.6vw,43px); }
	.av-home-hero__description { font-size: 15px; line-height: 1.75; }

	/* Requested: all 3 hero buttons beside each other on phones. */
	.av-home-hero__actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 23px; }
	.av-home-button { min-width: 0; min-height: 44px; padding-inline: 7px; gap: 4px; border-radius: 11px; font-size: 10.5px; white-space: nowrap; }

	/* Requested: all 3 feature labels remain on one row. */
	.av-home-hero__features { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 5px; margin-top: 20px; }
	.av-home-hero__feature { justify-content: center; gap: 4px; font-size: 9.5px; white-space: nowrap; }
	.av-home-hero__feature-icon { width: 17px; height: 17px; font-size: 9px; }

	.av-home-featured-game { border-radius: 20px; }
	.av-home-quick { margin-top: -7px; }
	.av-home-quick__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
	.av-home-quick-card { min-height: 94px; padding: 12px; gap: 10px; border-radius: 17px; }
	.av-home-quick-card__icon { width: 45px; height: 45px; border-radius: 13px; }
	.av-home-quick-card__icon svg { width: 24px; height: 24px; }
	.av-home-quick-card__content strong { font-size: 13px; }
	.av-home-quick-card__content small { font-size: 10px; white-space: normal; }

	.av-home-section { padding-block: 60px; }
	.av-home-section__title { font-size: 30px; }
	.av-home-section__description { font-size: 14px; }

	/* Requested: two games beside each other even on phones. */
	.av-home-games__grid--medium { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
	.av-home-game-card { border-radius: 15px; }
	.av-home-game-card__media { aspect-ratio: 4 / 3; }
	.av-home-game-card__body { padding: 12px; }
	.av-home-game-card__title { font-size: 14px; line-height: 1.4; }
	.av-home-game-card__meta { gap: 5px 8px; font-size: 9px; }
	.av-home-game-card__excerpt { font-size: 10.5px; line-height: 1.55; -webkit-line-clamp: 2; }
	.av-home-game-card__category { inset-inline-start: 8px; bottom: 8px; max-width: calc(100% - 16px); font-size: 8px; }
	.av-home-card-cta--download { min-height: 38px; padding-inline: 7px; font-size: 10px; }

	.av-home-app-card__excerpt { font-size: 11px; }
	.av-home-showcase__title { font-size: 32px; }
	.av-home-showcase__excerpt { font-size: 14px; }
}

@media (max-width: 390px) {
	.av-home-hero > .av-home-container { padding-inline: 14px; }
	.av-home-button { font-size: 9.5px; padding-inline: 4px; }
	.av-home-hero__feature { font-size: 8.5px; }
	.av-home-quick-card { padding: 10px; }
	.av-home-quick-card__icon { width: 40px; height: 40px; }
	.av-home-game-card__body { padding: 10px; }
	.av-home-game-card__title { font-size: 13px; }
}

/* =========================================================
   HERO RESPONSIVE FIX — FINAL AUTHORITATIVE OVERRIDES
   Desktop styles above remain unchanged.
========================================================= */

@media (max-width: 900px) {
	.av-home-hero__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}

	.av-home-hero__content,
	.av-home-hero__visual {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.av-home-hero__content {
		text-align: center;
	}

	.av-home-hero__eyebrow,
	.av-home-hero__actions,
	.av-home-hero__features {
		justify-content: center;
	}

	.av-home-hero__title,
	.av-home-hero__description {
		width: 100%;
		max-width: 720px;
		margin-inline: auto;
	}

	.av-home-hero__visual {
		max-width: 620px;
		margin-inline: auto;
		justify-self: center;
	}
}

@media (max-width: 640px) {
	.av-home-hero > .av-home-container {
		padding: 26px 16px 24px;
	}

	.av-home-hero__grid {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
		align-items: stretch;
	}

	.av-home-hero__content {
		min-width: 0;
		max-width: none;
		text-align: center;
	}

	.av-home-hero__eyebrow {
		display: inline-flex;
		margin-inline: auto;
		margin-bottom: 14px;
		font-size: 10px;
		line-height: 1.4;
	}

	.av-home-hero__title {
		width: 100%;
		max-width: none;
		margin: 0;
		font-size: clamp(31px, 9vw, 40px);
		line-height: 1.08;
		letter-spacing: -0.03em;
		text-wrap: balance;
		overflow-wrap: normal;
		word-break: normal;
	}

	.av-home-hero__description {
		width: 100%;
		max-width: 520px;
		margin: 16px auto 0;
		font-size: 14px;
		line-height: 1.7;
		overflow-wrap: normal;
		word-break: normal;
	}

	.av-home-hero__actions {
		width: 100%;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 7px;
		margin-top: 21px;
	}

	.av-home-hero__features {
		width: 100%;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 5px;
		margin-top: 18px;
	}

	.av-home-hero__visual {
		width: min(100%, 470px);
		max-width: 470px;
		min-width: 0;
		margin-inline: auto;
		justify-self: center;
	}

	.av-home-featured-game {
		width: 100%;
		max-width: 100%;
		margin: 0;
		transform: none;
	}

	.av-home-featured-game:hover {
		transform: translateY(-3px);
	}
}

@media (max-width: 390px) {
	.av-home-hero__title {
		font-size: clamp(29px, 9vw, 35px);
	}

	.av-home-hero__description {
		font-size: 13.5px;
	}
}

/* =========================================================
   APPVORTEX — ARABIC FONT
   Use global Cairo typography on the Front Page
========================================================= */

html[lang^="ar"] .av-home,
html[dir="rtl"] .av-home {
	font-family: var(--av-font-ar);
}

/* Ensure all Front Page UI elements inherit Cairo */
html[lang^="ar"] .av-home button,
html[lang^="ar"] .av-home input,
html[lang^="ar"] .av-home select,
html[lang^="ar"] .av-home textarea,
html[dir="rtl"] .av-home button,
html[dir="rtl"] .av-home input,
html[dir="rtl"] .av-home select,
html[dir="rtl"] .av-home textarea {
	font-family: inherit;
}


/* =========================================================
   APPVORTEX HOME CARD ALIGN + APPS MOBILE
========================================================= */

.av-home-game-card,
.av-home-news-card {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.av-home-game-card__body,
.av-home-news-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.av-home-game-card__title,
.av-home-news-card__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.9em;
}

.av-home-game-card__excerpt,
.av-home-news-card__excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.av-home-card-cta.av-home-card-cta--download,
.av-home-card-cta.av-home-news-card__read {
	margin-top: auto;
	width: 100%;
}

@media (max-width: 767px) {
	.av-home-apps .av-home-apps__grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.av-home-app-card__link {
		flex-direction: column;
		align-items: center;
		gap: 8px;
		padding: 10px 8px 12px;
		text-align: center;
	}

	.av-home-app-card__icon {
		width: 52px;
		height: 52px;
		border-radius: 12px;
	}

	.av-home-app-card__title {
		font-size: 13px;
		line-height: 1.35;
	}

	.av-home-card-cta--app {
		width: 100%;
		min-height: 34px;
		padding: 0 8px;
		font-size: 11px;
	}
}


/* =========================================================
   APPVORTEX 1.0.2 — FEATURED SHORTCUT STICKERS
========================================================= */
.av-home-stickers { padding: 22px 0 10px; background: transparent; }
.av-home-stickers__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.av-home-sticker { position:relative; min-height:112px; display:flex; align-items:center; gap:13px; padding:18px; overflow:hidden; border:1px solid var(--av-border); border-radius:20px; background:linear-gradient(145deg,#fff,#f5f9ff); color:var(--av-navy); box-shadow:var(--av-shadow-sm); transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.av-home-sticker:hover { transform:translateY(-3px); box-shadow:var(--av-shadow); border-color:rgba(36,152,255,.28); }
.av-home-sticker__icon { flex:0 0 54px; width:54px; height:54px; border-radius:16px; display:grid; place-items:center; background:linear-gradient(145deg,#e9f4ff,#f3edff); }
.av-home-sticker__icon::before { font-size:27px; line-height:1; }
.av-home-sticker--gamepad .av-home-sticker__icon::before { content:'🎮'; }
.av-home-sticker--apps .av-home-sticker__icon::before { content:'📱'; }
.av-home-sticker--news .av-home-sticker__icon::before { content:'📰'; }
.av-home-sticker--star .av-home-sticker__icon::before { content:'⭐'; }
.av-home-sticker strong { font-size:15px; line-height:1.35; }
.av-home-sticker__arrow { margin-inline-start:auto; opacity:.55; }
@media (max-width:767px) {
  .av-home-stickers { padding:14px 0 4px; }
  .av-home-stickers__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .av-home-sticker { min-height:94px; padding:12px; border-radius:17px; gap:9px; }
  .av-home-sticker__icon { flex-basis:44px; width:44px; height:44px; border-radius:13px; }
  .av-home-sticker__icon::before { font-size:22px; }
  .av-home-sticker strong { font-size:13px; }
  /* Keep the category badge a pill. Previously top+bottom stretched it into a large circle. */
  .av-home-game-card__category { top:8px; bottom:auto; inset-inline-start:8px; max-width:calc(100% - 16px); }
}
