.genres-page {
	color: #f5f5f5;
	font-family: 'Inter', sans-serif;
}
.genres-page .container {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
}
.genres-hero {
	padding: 40px 0 20px;
	border-bottom: 1px solid #2a2a2a;
}
.genres-hero h1 {
	margin: 0;
	font-family: 'Space Grotesk', 'Inter', sans-serif;
	font-size: 2.8rem;
	font-weight: 700;
	letter-spacing: -0.02em;
}
.genres-hero .accent-text { color: #a855f7; }
.genres-hero p {
	max-width: 600px;
	margin: 0;
	color: #b0b0b0;
	font-size: 1.1rem;
}
.genres-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 24px;
	padding: 40px 0 60px;
}
.genre-card {
	position: relative;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #181818;
	border: 1px solid #2a2a2a;
	border-radius: 10px;
	color: #fff;
	cursor: pointer;
	text-decoration: none;
	transition: 0.25s cubic-bezier(0.2, 0, 0, 1);
}
.genre-card:hover,
.genre-card:focus-visible {
	border-color: #a855f7;
	box-shadow: 0 16px 40px rgba(168, 85, 247, 0.15);
	outline: none;
	transform: translateY(-6px);
}
.genre-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.25s cubic-bezier(0.2, 0, 0, 1);
}
.genre-card:hover img,
.genre-card:focus-visible img { transform: scale(1.05); }
.genre-card .genre-overlay {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 20px 16px 18px;
	background: linear-gradient(transparent, rgba(0, 0, 0, 0.85));
	text-align: center;
}
.genre-card .genre-overlay h3 {
	margin: 0;
	font-family: 'Space Grotesk', 'Inter', sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}
.genre-card .count {
	color: #b0b0b0;
	font-size: 0.8rem;
	opacity: 0.9;
}
.genre-card .count i {
	margin-right: 4px;
	color: #a855f7;
}
@media (max-width: 768px) {
	.genres-hero h1 { font-size: 2rem; }
	.genres-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; padding: 24px 0 40px; }
	.genre-card .genre-overlay { padding: 14px 12px 12px; }
	.genre-card .genre-overlay h3 { font-size: 1rem; }
}
@media (max-width: 480px) {
	.genres-hero h1 { font-size: 1.6rem; }
	.genres-grid { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 12px; }
	.genre-card .genre-overlay { padding: 10px 8px 8px; }
	.genre-card .genre-overlay h3 { font-size: 0.85rem; }
	.genre-card .count { font-size: 0.7rem; }
}
