/**
 * Sekcja: opinie z kolażem (wzorzec synchronizowany „Opinie z kolażem”, kopia patterns/reviews-copy.php;
 * tools/sections/uslugi.py; Figma 3006:31389 / 31425 / 31415): nagłówek, karuzela opinii (jedna karta widoczna,
 * strzałki dokłada script.js), kolaż zdjęć klientów w 5 kolumnach. Niebieska poświata za kartą – dekoracja.
 */

.kd-reviews {
	position: relative;
	overflow: clip;
	isolation: isolate;
}

.kd-reviews::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 360px;
	left: 50%;
	width: min(1500px, 120vw);
	height: 600px;
	margin-top: -190px;
	transform: translateX(-50%) rotate(-4deg);
	background: radial-gradient(closest-side, rgb(4 83 230 / 0.2), rgb(4 83 230 / 0.06) 60%, transparent);
	pointer-events: none;
}

.kd-reviews .kd-reviews__head {
	max-width: 796px;
}

.kd-reviews .kd-reviews__head > * {
	margin: 0;
}

.kd-reviews .kd-reviews__lead {
	max-width: 692px;
	line-height: 1.4;
}

/* ---------- Karuzela opinii ---------- */

.kd-reviews .kd-reviews__carousel {
	position: relative;
	max-width: 596px;
	margin-inline: auto;
}

.kd-reviews .kd-reviews__slider {
	max-width: 596px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.kd-reviews .kd-reviews__slider::-webkit-scrollbar {
	display: none;
}

.kd-reviews .kd-reviews__carousel .kd-reviews__slider {
	margin-top: 0;
}

.kd-review {
	box-sizing: border-box;
	flex: 0 0 100%;
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--medium);
	filter: drop-shadow(0 2px 2px rgb(0 0 0 / 0.04));
	scroll-snap-align: center;
}

.kd-review > *,
.kd-review .kd-review__person > * {
	margin: 0;
}

.kd-review .kd-review__rating img {
	display: block;
	width: 93px;
	height: auto;
}

.kd-review .kd-review__quote {
	line-height: 1.4;
}

.kd-review .kd-review__author {
	gap: 13px;
	align-items: center;
}

.kd-review .kd-review__avatar {
	flex: 0 0 56px;
	margin: 0;
	line-height: 0;
}

.kd-review .kd-review__avatar img {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
}

.kd-review .kd-review__name {
	font-weight: 700;
	line-height: 1.4;
}

.kd-review .kd-review__role {
	color: var(--wp--preset--color--muted);
	font-weight: 500;
	line-height: 1.3;
	text-transform: uppercase;
}

/* Strzałki (script.js) – po bokach karty, 29 px na zewnątrz. */
.kd-reviews .kd-reviews__arrow {
	display: grid;
	position: absolute;
	top: 50%;
	place-items: center;
	width: 44px;
	height: 44px;
	margin-top: -22px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--wp--preset--color--surface);
	box-shadow: 0 1.33px 1.33px rgb(0 0 0 / 0.12);
	color: var(--wp--preset--color--contrast);
	cursor: pointer;
}

.kd-reviews .kd-reviews__arrow--prev {
	left: -67px;
}

.kd-reviews .kd-reviews__arrow--next {
	right: -67px;
}

.kd-reviews .kd-reviews__arrow::before {
	content: "";
	width: 16px;
	height: 16px;
	background-color: currentColor;
	-webkit-mask: url("../../images/chevron.svg") center / contain no-repeat;
	mask: url("../../images/chevron.svg") center / contain no-repeat;
}

.kd-reviews .kd-reviews__arrow--prev::before {
	transform: scaleX(-1);
}

.kd-reviews .kd-reviews__arrow:hover {
	filter: brightness(0.96);
}

.kd-reviews .kd-reviews__arrow:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 2px;
}

.kd-reviews .kd-reviews__arrow:disabled {
	opacity: 0.35;
	cursor: default;
}

/* ---------- Kolaż: 5 kolumn, szerokości i przesunięcia w % (skaluje się proporcjonalnie) ---------- */

.kd-reviews .kd-reviews__collage {
	gap: 2.3%;
	max-width: 1296px;
	padding-top: 1%;
}

.kd-reviews .kd-reviews__col {
	flex: 0 0 17.7%;
	gap: 0;
	min-width: 0;
}

.kd-reviews .kd-reviews__col > * + * {
	margin-top: 12.4%;
}

.kd-reviews .kd-reviews__col:first-child,
.kd-reviews .kd-reviews__col:last-child {
	flex-basis: 16.6%;
}

.kd-reviews .kd-reviews__col:nth-child(2),
.kd-reviews .kd-reviews__col:nth-child(4) {
	margin-top: 10.2%;
}

.kd-reviews .kd-reviews__col:nth-child(3) {
	flex-basis: 23.5%;
	margin-top: 3.6%;
}

.kd-reviews .kd-reviews__photo {
	margin: 0;
	line-height: 0;
}

.kd-reviews .kd-reviews__photo img {
	width: 100%;
	height: auto;
	border-radius: 32px;
}

.kd-reviews .kd-reviews__col:nth-child(3) .kd-reviews__photo img {
	border-radius: 0;
}

@media (max-width: 781px) {
	.kd-reviews .kd-reviews__carousel {
		padding-bottom: 60px;
	}

	.kd-reviews .kd-reviews__arrow {
		top: auto;
		bottom: 0;
		margin-top: 0;
	}

	.kd-reviews .kd-reviews__arrow--prev {
		left: calc(50% - 52px);
	}

	.kd-reviews .kd-reviews__arrow--next {
		right: calc(50% - 52px);
	}

	.kd-reviews .kd-reviews__photo img {
		border-radius: 12px;
	}
}
