.dch-category-nav{
	margin-top:var(--dch-section-margin);
	padding-block:calc(var(--dch-section-margin) / 2);
	padding-inline:calc(var(--dch-gutter) / 2);
	background-color:var(--dch-panel-black, #0f0f0f);
	color:var(--dch-sand, #f7f3eb);
}

.dch-category-nav__row{
	display:grid;
	gap:14px;
	margin-top:calc(1.8 * var(--dch-rem));
	grid-template-columns:repeat(2, minmax(0, 1fr));
}
@media (min-width: 1024px){
	.dch-category-nav__row{
		grid-template-columns:repeat(var(--dch-next-count, 3), minmax(0, 1fr));
	}
}

.dch-category-win{
	position:relative;
	display:block;
	overflow:hidden;
	text-decoration:none;
	color:var(--dch-sand, #f7f3eb);
	aspect-ratio:16 / 10;
	background-color:#000;
}

.dch-category-win__photo{
	position:absolute;
	z-index:0;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	margin-bottom:0;
	filter:brightness(0.62) saturate(0.9);
	transform:scale(1.02);
	transition:filter 0.4s ease, transform var(--dch-dur-reveal) ease;
}
.dch-category-win::before{
	content:"";
	position:absolute;
	z-index:1;
	inset:0;
	background:linear-gradient(to top,
		rgba(0, 0, 0, 0.92) 0%,
		rgba(0, 0, 0, 0.84) 24%,
		rgba(0, 0, 0, 0.44) 56%,
		rgba(0, 0, 0, 0) 100%);
}
.dch-category-win::after{
	content:"";
	position:absolute;
	z-index:2;
	inset:auto 0 0 0;
	height:4px;
	background-image:linear-gradient(90deg, var(--dch-orange, #f78f20), var(--dch-magenta, #d9186a));
	background-repeat:no-repeat;
	background-position:center bottom;
	background-size:0 100%;
	transition:background-size 0.45s var(--dch-ease);
}
.dch-category-win:hover,
.dch-category-win:focus-visible{
	color:var(--dch-sand, #f7f3eb);
}

.dch-category-win:hover .dch-category-win__photo,
.dch-category-win:focus-visible .dch-category-win__photo{
	filter:brightness(0.9) saturate(1.05);
	transform:scale(1.05);
}

.dch-category-win:hover::after,
.dch-category-win:focus-visible::after{
	background-size:100% 100%;
}
@media (prefers-reduced-motion: reduce){
	.dch-category-win__photo,
	.dch-category-win::after{
		transition-duration:0.01ms;
	}
}

.dch-category-win__text{
	position:absolute;
	z-index:3;
	inset:auto 0 0 0;
	padding:20px;
	display:grid;
	gap:calc(0.45 * var(--dch-rem));
}
.dch-category-win__rel{
	font-family:var(--dch-font-heading);
	font-size:calc(0.6 * var(--dch-rem));
	font-weight:700;
	letter-spacing:0.16em;
	text-transform:uppercase;
	color:var(--dch-orange, #f78f20);
}

.dch-category-win__name{
	font-family:var(--dch-font-heading);
	font-size:calc(1.06 * var(--dch-rem));
	font-weight:700;
	line-height:1.2;
	letter-spacing:-0.01em;
}

.dch-category-win__count{
	font-size:calc(0.83 * var(--dch-rem));
	color:#cdc5b8;
	font-variant-numeric:tabular-nums;
}
