body, p, li, a { font-family:'Manrope',sans-serif;}
h1, h2, h3 { font-family:'Manrope',sans-serif; }
body { margin:0;padding:0;}
#hd {
	width : 100%;
	height : 87px;
	background-color : #092E67;
	margin-top : 0;
	padding-top : 10px;
	border-bottom : 1px solid #888;
	z-index : 0;
}
#ft {
	position : absolute;
	bottom : 0;
	width : 100%;
	height : 99px;
	background-color : #6493D2;
	border-top : 1px solid #888;
	z-index : 0;
}
#logo,#bd {
	width : 650px;
	margin: 0 auto;
	padding: 25px 50px 0 50px;
}
#logo h1 {
	color : white;
	font-size:36pt;
	display: inline;
}
#logo img {
	display:inline;
	vertical-align: bottom;
	margin-left : 50px;
	margin-right : 5px;
}
body { margin-top : 0; padding-top : 0;}
#logo, #logo h1 { margin-top : 0; padding-top : 0;}
#bd {
	position : absolute;
	top : 75px;
	bottom : 75px;
	left : 50%;
	margin-left : -325px;
	z-index : 1;
	overflow: auto;
	background-color : #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	-moz-box-shadow: 0px 0px 10px #888;
	-webkit-box-shadow: 0px 0px 10px #888;
	box-shadow: 0px 0px 10px #888;
}
a, a:visited, a:hover, a:active {
	color : #6493D2;
}
h2 {
	padding : 0; margin:0;
	font-size:36pt;
	color:#FF5500;
}
h3 {
	padding : 0; margin:0;
	font-size:24pt;
	color:#092E67;
}

:root{
	--bg:#090b14;
	--panel:#151a30;
	--panel-2:#101528;
	--line:#2b3558;
	--text:#f3f6ff;
	--muted:#afbddf;
	--brand:#4cc8ff;
	--brand-2:#7ef7c5;
	--status:#ffd580;
}

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

body{
	font-family:'Manrope',sans-serif;
	color:var(--text);
	background:
			radial-gradient(circle at 18% 12%, rgba(76,200,255,0.23), transparent 34%),
			radial-gradient(circle at 82% 2%, rgba(126,247,197,0.14), transparent 28%),
			linear-gradient(155deg,#060811 0%, #0a0f1f 55%, #070a13 100%);
	line-height:1.6;
	min-height:100vh;
}

.container{width:92%;max-width:1180px;margin:auto}

header{
	position:sticky;
	top:0;
	z-index:20;
	backdrop-filter:blur(10px);
	border-bottom:1px solid rgba(76,200,255,0.22);
	background:rgba(9,11,20,0.8);
}

.nav-wrapper{
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:14px 0;
	gap:16px;
}

.logo{
	display:flex;
	align-items:center;
	gap:12px;
	font-weight:800;
	font-size:1.3rem;
	color:#dff7ff;
	letter-spacing:0.02em;
	text-decoration:none;
}

.logo svg{
	width:44px;
	height:44px;
	filter:drop-shadow(0 2px 12px rgba(76,200,255,0.35));
}

nav ul{display:flex;list-style:none;gap:26px;align-items:center}

nav a{
	text-decoration:none;
	color:var(--muted);
	font-weight:700;
	transition:color .2s ease;
}

nav a.active, nav a:hover{color:var(--brand)}

.lang-switch{
	cursor:pointer;
	font-weight:700;
	color:var(--brand-2);
	border:1px solid rgba(126,247,197,0.45);
	padding:6px 12px;
	border-radius:999px;
	user-select:none;
}

.burger{display:none;flex-direction:column;cursor:pointer}
.burger div{
	width:25px;
	height:3px;
	margin:3px 0;
	border-radius:4px;
	background:var(--brand);
}

.page-shell{padding-bottom:40px}

footer{
	border-top:1px solid rgba(76,200,255,0.18);
	color:#8fa0cb;
	text-align:center;
	padding:28px 10px 34px;
	background:rgba(8,12,22,0.7);
	font-size:.95rem;
	margin-top:44px;
}

@media (max-width:768px){
	nav ul{
		position:absolute;
		top:70px;
		right:4%;
		width:210px;
		padding:14px;
		gap:14px;
		border-radius:12px;
		border:1px solid var(--line);
		background:rgba(10,14,27,0.97);
		flex-direction:column;
		align-items:flex-start;
		display:none;
	}

	nav ul.active{display:flex}
	.burger{display:flex}
}

.hero{
	padding:90px 0 70px;
	text-align:center;
}

.hero-shell{
	border:1px solid rgba(76,200,255,0.22);
	border-radius:24px;
	padding:44px 26px;
	background:linear-gradient(180deg, rgba(21,26,48,0.88), rgba(12,15,28,0.72));
	box-shadow:0 24px 60px rgba(0,0,0,0.45);
}

.hero h1{
	font-size:clamp(2rem,5vw,3.3rem);
	line-height:1.1;
	margin-bottom:20px;
	background:linear-gradient(92deg, #ecf7ff 8%, #8ee6ff 48%, #7ef7c5 100%);
	-webkit-background-clip:text;
	background-clip:text;
	color:transparent;
}

.hero p{
	max-width:760px;
	margin:0 auto;
	color:var(--muted);
	font-size:1.05rem;
}

.section{padding:45px 0 90px}
.section h2{
	text-align:center;
	margin-bottom:34px;
	font-size:clamp(1.7rem,3.4vw,2.45rem);
	color:#e8f9ff;
}

.games-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
	gap:20px;
}

.game-card{
	border-radius:18px;
	border:1px solid var(--line);
	background:linear-gradient(160deg, var(--panel), var(--panel-2));
	box-shadow:0 12px 28px rgba(0,0,0,0.34);
	transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}

.game-card:hover{
	transform:translateY(-6px);
	border-color:rgba(126,247,197,0.55);
	box-shadow:0 18px 34px rgba(0,0,0,0.48);
}

.game-content{padding:24px}

.game-icon{
	width:68px;
	height:68px;
	object-fit:cover;
	border-radius:14px;
	border:1px solid rgba(76,200,255,0.34);
	background:#1e2646;
	margin-bottom:14px;
}

.game-card h3{
	margin-bottom:10px;
	color:#f5fbff;
	font-size:1.35rem;
}

.game-card p{
	color:var(--muted);
	margin-bottom:16px;
}

.store-link{
	display:inline-block;
	text-decoration:none;
	color:#061019;
	font-weight:800;
	border-radius:10px;
	padding:10px 15px;
	background:linear-gradient(120deg, var(--brand), var(--brand-2));
}

.world-badge{
	display:inline-block;
	border-radius:999px;
	padding:6px 12px;
	font-size:.86rem;
	font-weight:800;
	letter-spacing:.02em;
	color:#2f2200;
	background:linear-gradient(90deg,#ffd580,#ffefa8);
}

@media (max-width:768px){
	.hero{padding-top:72px}
}

.games{
	width:92%;
	max-width:1100px;
	margin:56px auto 72px;
}

.games h1{
	font-size:clamp(1.9rem,4vw,2.8rem);
	margin-bottom:12px;
	background:linear-gradient(90deg,#ecf7ff 10%, #8ee6ff 55%, #7ef7c5 100%);
	-webkit-background-clip:text;
	background-clip:text;
	color:transparent;
}

.intro{color:var(--muted);margin:0 0 24px}

.games-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
	gap:20px;
}

.game-card{
	border-radius:18px;
	border:1px solid var(--line);
	background:linear-gradient(160deg, var(--panel), var(--panel-2));
	box-shadow:0 12px 28px rgba(0,0,0,0.34);
}

.game-content{padding:24px}
.game-icon{
	width:68px;
	height:68px;
	object-fit:cover;
	border-radius:14px;
	border:1px solid rgba(76,200,255,0.34);
	background:#1e2646;
	margin-bottom:14px;
}

.game-card h3{margin-bottom:10px;color:#f5fbff;font-size:1.35rem}
.game-card p{color:var(--muted);margin-bottom:16px}

.store-link{
	display:inline-block;
	text-decoration:none;
	color:#061019;
	font-weight:800;
	border-radius:10px;
	padding:10px 15px;
	background:linear-gradient(120deg, var(--brand), var(--brand-2));
}

.status{
	display:inline-block;
	border-radius:999px;
	padding:6px 12px;
	font-size:.86rem;
	font-weight:800;
	letter-spacing:.02em;
	color:#2f2200;
	background:linear-gradient(90deg,#ffd580,#ffefa8);
}

.content-card{
	width:92%;
	max-width:980px;
	margin:56px auto 72px;
	border:1px solid var(--line);
	border-radius:20px;
	padding:30px 24px;
	background:linear-gradient(160deg, rgba(21,26,48,0.92), rgba(12,15,28,0.78));
	box-shadow:0 20px 45px rgba(0,0,0,0.35);
}

.content-card h1{
	font-size:clamp(1.9rem,4vw,2.8rem);
	margin-bottom:16px;
	background:linear-gradient(90deg,#ecf7ff 10%, #8ee6ff 55%, #7ef7c5 100%);
	-webkit-background-clip:text;
	background-clip:text;
	color:transparent;
}

.content-card p{
	color:var(--muted);
	margin:0 0 14px;
}

.contacts{
	width:92%;
	max-width:980px;
	margin:56px auto 72px;
	border:1px solid var(--line);
	border-radius:20px;
	padding:30px 24px;
	background:linear-gradient(160deg, rgba(21,26,48,0.92), rgba(12,15,28,0.78));
	box-shadow:0 20px 45px rgba(0,0,0,0.35);
}

.contacts h1{
	font-size:clamp(1.9rem,4vw,2.8rem);
	margin-bottom:16px;
	background:linear-gradient(90deg,#ecf7ff 10%, #8ee6ff 55%, #7ef7c5 100%);
	-webkit-background-clip:text;
	background-clip:text;
	color:transparent;
}

.contacts p{
	color:var(--muted);
	margin:0 0 14px;
}

.contact-row strong{color:#dff7ff}
.contact-row a{color:#8ee6ff;text-decoration:none}



/* =========================================================
   Games Catalog
========================================================= */

.games-page{
	padding-bottom:80px;
}

.games-hero{
	padding:60px 0 35px;
}

.hero-content{
	display:grid;
	grid-template-columns:2fr 1fr;
	gap:32px;
	align-items:center;
	border:1px solid var(--line);
	border-radius:24px;
	padding:45px;
	background:linear-gradient(145deg,var(--panel),var(--panel-2));
	box-shadow:0 20px 60px rgba(0,0,0,.35);
	position:relative;
	overflow:hidden;
}

.hero-content::before{
	content:"";
	position:absolute;
	width:420px;
	height:420px;
	right:-180px;
	top:-180px;
	border-radius:50%;
	background:radial-gradient(circle,rgba(76,200,255,.18),transparent 70%);
}

.hero-label{
	display:inline-block;
	padding:8px 16px;
	border-radius:999px;
	background:rgba(76,200,255,.12);
	border:1px solid rgba(76,200,255,.35);
	color:var(--brand);
	font-weight:700;
	margin-bottom:18px;
}

.hero-text h1{
	font-size:clamp(2.3rem,5vw,3.7rem);
	line-height:1.1;
	margin-bottom:18px;
	color:#fff;
}

.hero-description{
	max-width:720px;
	color:var(--muted);
	font-size:1.08rem;
	margin-bottom:28px;
}

.hero-buttons{
	display:flex;
	gap:14px;
	flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	text-decoration:none;
	padding:14px 24px;
	border-radius:12px;
	font-weight:700;
	transition:.25s;
}

.btn-primary{
	background:linear-gradient(90deg,var(--brand),var(--brand-2));
	color:#07111b;
}

.btn-primary:hover{
	transform:translateY(-2px);
}

.btn-secondary{
	border:1px solid var(--line);
	color:white;
	background:rgba(255,255,255,.03);
}

.btn-secondary:hover{
	background:rgba(255,255,255,.08);
}

.hero-stats{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:18px;
}

.hero-stat{
	text-align:center;
	padding:22px;
	border-radius:18px;
	background:rgba(255,255,255,.04);
	border:1px solid var(--line);
}

.hero-stat span{
	display:block;
	font-size:2rem;
	font-weight:800;
	color:var(--brand);
}

.hero-stat small{
	color:var(--muted);
	font-size:.95rem;
}

/* ================= FILTER ================= */

.catalog-filter{
	margin-top:32px;
}

.filter-panel{
	display:flex;
	gap:15px;
	flex-wrap:wrap;
	padding:24px;
	border-radius:20px;
	background:var(--panel);
	border:1px solid var(--line);
}

.search-box{
	flex:1;
	min-width:260px;
}

.filter-panel input,
.filter-panel select{
	height:50px;
	border:none;
	border-radius:12px;
	padding:0 16px;
	background:#1c2340;
	color:white;
	font-size:15px;
	outline:none;
}

.filter-panel select{
	min-width:180px;
}



/* ================= GENRES ================= */

.genres{
	margin-top:45px;
}

.genres h2{
	margin-bottom:18px;
}

.genre-list{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
}

.genre-list a{
	text-decoration:none;
	padding:10px 18px;
	border-radius:999px;
	border:1px solid var(--line);
	color:var(--muted);
	transition:.25s;
	background:rgba(255,255,255,.03);
}

.genre-list a:hover{
	color:white;
	border-color:var(--brand);
	background:rgba(76,200,255,.10);
}

/* ================= CATALOG ================= */

.games-catalog{
	margin-top:55px;
}

.section-header{
	display:flex;
	justify-content:space-between;
	align-items:end;
	margin-bottom:28px;
}

.section-header h2{
	margin-bottom:6px;
}

.section-header p{
	color:var(--muted);
}

.catalog-count{
	color:var(--brand);
	font-weight:700;
}

/* ================= GAME CARD ================= */

.games-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill,minmax(310px,1fr));
	gap:24px;
}

.game-card{
	overflow:hidden;
	border-radius:20px;
	background:linear-gradient(160deg,var(--panel),var(--panel-2));
	border:1px solid var(--line);
	transition:.25s;
}

.game-card:hover{
	transform:translateY(-6px);
	border-color:var(--brand);
	box-shadow:0 20px 40px rgba(0,0,0,.45);
}

.game-cover{
	width:100%;
	height:210px;
	object-fit:cover;
	display:block;
}

.game-content{
	padding:22px;
}

.game-tags{
	display:flex;
	gap:8px;
	flex-wrap:wrap;
	margin-bottom:14px;
}

.game-tags span{
	font-size:12px;
	padding:5px 10px;
	border-radius:999px;
	background:rgba(76,200,255,.12);
	color:var(--brand);
}

.game-card h3{
	color:white;
	margin-bottom:12px;
	font-size:1.45rem;
}

.game-card p{
	color:var(--muted);
	margin-bottom:18px;
	min-height:72px;
}

.game-footer{
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.game-rating{
	color:#FFD54A;
	font-size:18px;
}

.game-footer a{
	text-decoration:none;
	color:var(--brand);
	font-weight:700;
}

.game-footer a:hover{
	color:white;
}

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

@media(max-width:900px){
	.hero-content{
		grid-template-columns:1fr;
		padding:30px;
	}
	.hero-stats{
		grid-template-columns:repeat(2,1fr);
	}
	.section-header{
		flex-direction:column;
		align-items:flex-start;
		gap:10px;
	}
}

@media(max-width:650px){
	.hero-stats{
		grid-template-columns:1fr 1fr;
	}
	.filter-panel{
		flex-direction:column;
	}
	.filter-panel select,
	.search-box{
		width:100%;
	}
	.games-grid {
		grid-template-columns:1fr;
	}
}