/**
 * GKN category experience 8.9.3
 * Responsive catalogue covers and contextual category navigation.
 */

.gkn-shop-page [data-gkn-category-cover] {
	min-height: 340px;
	grid-template-columns: minmax(390px, .86fr) minmax(520px, 1.14fr);
	border-color: #e3e7ed;
	background: #f7f8fa;
	box-shadow: 0 18px 46px rgba(15, 23, 42, .07);
}

.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__content {
	padding: 44px 48px 50px;
	background: linear-gradient(90deg, rgba(247, 248, 250, .74), #f7f8fa 34%);
}

.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual {
	min-height: 340px;
	background: #f5f6f8;
}

.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual::before {
	position: absolute;
	z-index: 1;
	inset: 0 auto 0 0;
	width: 18%;
	background: linear-gradient(90deg, transparent, rgba(247, 248, 250, .92));
	content: "";
	pointer-events: none;
}

.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual::after {
	z-index: 1;
	background: linear-gradient(180deg, transparent 62%, rgba(15, 23, 42, .04));
}

.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual img {
	object-fit: cover;
	object-position: left center;
}

.gkn-shop-page [data-gkn-category-cover] h1 {
	font-size: clamp(31px, 3vw, 46px);
	letter-spacing: -.025em;
}

.gkn-shop-page [data-gkn-contextual-categories] {
	margin-block: 28px 22px;
}

.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a {
	min-height: 148px;
	grid-template-columns: 124px minmax(0, 1fr);
	gap: 14px;
	padding: 10px;
	border-color: #e1e5ea;
	border-radius: 18px;
	box-shadow: 0 8px 24px rgba(15, 23, 42, .035);
}

.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a:hover,
.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a:focus-visible {
	border-color: rgba(236, 31, 53, .38);
	box-shadow: 0 16px 36px rgba(15, 23, 42, .09);
	transform: translateY(-3px);
}

.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-category-image {
	width: 124px;
	height: 126px;
	border: 1px solid #edf0f3;
	border-radius: 14px;
	background: #f7f8fa;
}

.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-category-image img {
	width: 100%;
	height: 100%;
	padding: 0;
	object-fit: cover;
	object-position: center;
	transition: transform .28s ease;
}

.gkn-shop-page [data-gkn-contextual-categories] a:hover .gkn-shop-category-image img {
	transform: scale(1.035);
}

.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid strong {
	font-size: 13px;
	line-height: 1.85;
}

.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid small {
	font-size: 10px;
}

/* Keep every specialist-category surface on the same approved image family. */
.gkn-categories .gkn-category-grid {
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
}

.gkn-categories .gkn-category-card {
	display: grid;
	height: 208px;
	grid-template-rows: minmax(0, 1fr) 52px;
	border-color: #e2e6eb;
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(15, 23, 42, .045);
}

.gkn-categories .gkn-category-card__media {
	min-height: 0;
	padding: 8px 10px 2px;
	background: linear-gradient(145deg, #fff, #f6f7f9);
}

.gkn-categories .gkn-category-card__media img {
	width: 100%;
	height: 146px;
	object-fit: contain;
	object-position: center;
	mix-blend-mode: multiply;
}

.gkn-categories .gkn-category-card__copy {
	min-height: 52px;
	justify-content: flex-start;
	padding: 10px 12px;
	border-top: 1px solid #eef0f3;
}

.gkn-categories .gkn-category-card__copy strong {
	font-size: 12.5px;
	line-height: 1.7;
}

@media (max-width: 1199px) {
	.gkn-categories .gkn-category-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.gkn-categories .gkn-category-card {
		height: 190px;
	}

	.gkn-categories .gkn-category-card__media img {
		height: 128px;
	}

	.gkn-shop-page [data-gkn-category-cover] {
		min-height: 286px;
		grid-template-columns: minmax(330px, .92fr) minmax(390px, 1.08fr);
	}

	.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__content {
		padding: 32px;
	}

	.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual {
		min-height: 286px;
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a {
		min-height: 132px;
		grid-template-columns: 102px minmax(0, 1fr);
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-category-image {
		width: 102px;
		height: 108px;
	}
}

@media (max-width: 767px) {
	.gkn-categories .gkn-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px;
	}

	.gkn-categories .gkn-category-card {
		height: 166px;
		grid-template-rows: minmax(0, 1fr) 48px;
		border-radius: 14px;
	}

	.gkn-categories .gkn-category-card__media img {
		height: 108px;
	}

	.gkn-categories .gkn-category-card__copy {
		min-height: 48px;
		padding: 8px;
	}

	.gkn-categories .gkn-category-card__copy strong {
		font-size: 11px;
	}

	.gkn-shop-page [data-gkn-category-cover] {
		min-height: 0;
		grid-template-columns: 1fr;
		border-radius: 18px;
	}

	.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__content {
		padding: 24px 20px 22px;
		background: #f7f8fa;
	}

	.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__content > p {
		margin-bottom: 14px;
		font-size: 12px;
		line-height: 1.9;
	}

	.gkn-shop-page [data-gkn-category-cover] h1 {
		max-width: none;
		font-size: clamp(26px, 8vw, 34px);
	}

	.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual {
		min-height: 205px;
		order: 2;
		border-top: 1px solid #e7e9ed;
	}

	.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual::before {
		inset: 0;
		width: 100%;
		background: linear-gradient(180deg, rgba(247, 248, 250, .3), transparent 24%);
	}

	.gkn-shop-page [data-gkn-category-cover] .gkn-shop-hero__visual img {
		object-position: center;
	}

	.gkn-shop-page [data-gkn-contextual-categories] {
		margin-block: 22px 16px;
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px;
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a {
		min-height: 170px;
		grid-template-columns: 1fr;
		align-content: start;
		gap: 8px;
		padding: 8px 8px 12px;
		border-radius: 15px;
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-category-image {
		width: 100%;
		height: auto;
		aspect-ratio: 3 / 2;
		border-radius: 11px;
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a > span:nth-child(2) {
		padding-inline: 3px 18px;
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a > i {
		bottom: 17px;
		left: 10px;
	}
}

@media (max-width: 389px) {
	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid {
		grid-template-columns: 1fr;
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-categories__grid > a {
		min-height: 122px;
		grid-template-columns: 112px minmax(0, 1fr);
	}

	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-category-image {
		width: 112px;
		height: 104px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gkn-shop-page [data-gkn-contextual-categories] .gkn-shop-category-image img {
		transition: none;
	}
}
