/**
 * Variant CSS: trust--client-logos-bordered-grid
 *
 * A uniform bordered grid (4x2) of faux inline-SVG wordmark logos under a short
 * "Zaufali nam" header. Every cell is an identical hairline-bordered box holding a
 * monochrome mark, so the whole wall reads tidy and even. Unlike the single inline
 * text row of names (client-logos-text-row), this is a real LOGO GRID — a portfolio
 * of brands. Logos render in --ink at low opacity and lift to full --accent on hover.
 * Header text is --ink (polarity-aware). Part of the `trust` role.
 */

body.aibt-universal .universal-trust--client-logos-bordered-grid {
	padding-block: calc(clamp(3rem, 7vw, 5rem) * var(--density, 1));
}

/* Intro — centered header; keep horizontal-auto margins (A8/A9). */
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__intro {
	margin: 0 auto clamp(1.8rem, 4vw, 2.6rem) auto;
}

body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__kicker {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	letter-spacing: var(--tracking-widest) !important;
	text-transform: uppercase !important;
	color: var(--accent) !important;
	margin: 0 auto var(--space-sm) auto !important;
}

body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__headline {
	font-family: var(--font-display) !important;
	color: var(--ink) !important;
	margin: 0 auto !important;
}

body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__headline em {
	color: var(--accent) !important;
	font-style: italic;
}

/* Bordered grid: 4 columns, collapsed hairlines via negative-margin overlap. */
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__grid {
	gap: 0 !important;
	border: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	border-radius: var(--decor-radius);
	overflow: hidden;
}

/* Cell — uniform box; right + bottom hairlines build the inner grid. */
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell {
	box-sizing: border-box;
	display: grid;
	place-items: center;
	min-width: 0;
	min-height: clamp(86px, 12vw, 116px);
	padding: clamp(1rem, 2.4vw, 1.6rem);
	border-right: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	border-bottom: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	transition: background-color var(--duration-fast) var(--ease-default);
}

/* Top row has no top border (container provides it); remove last-in-row right edge. */
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-child(4n) {
	border-right: none;
}

/* Last row: drop the bottom hairline (container provides the outer edge). */
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-last-child(-n + 4) {
	border-bottom: none;
}

body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:hover {
	background: color-mix(in srgb, var(--accent) 6%, transparent);
}

/* Logo mark — monochrome, dimmed, lifts to accent on hover/focus. */
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__logo {
	display: block;
	color: var(--ink);
	opacity: 0.55;
	transition: opacity var(--duration-fast) var(--ease-default),
		color var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__logo svg {
	display: block;
	width: clamp(88px, 13vw, 120px);
	height: auto;
}

body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:hover .universal-trust__logo,
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:focus-within .universal-trust__logo {
	opacity: 1;
	color: var(--accent);
}

/* Focus ring for keyboard users landing on a cell. */
body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: -2px;
}

/* Tablet: 3 columns — re-set inner hairlines for the new column count. */
@media (max-width: 900px) {
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell {
		border-right: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
		border-bottom: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-child(4n) {
		border-right: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-child(3n) {
		border-right: none;
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-last-child(-n + 4) {
		border-bottom: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-last-child(-n + 2) {
		border-bottom: none;
	}
}

/* Mobile (<=640px): cap the wide kicker tracking so caps don't jitter (A5). */
@media (max-width: 640px) {
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__kicker {
		letter-spacing: 0.08em !important;
	}
}

/* Mobile: 2 columns. */
@media (max-width: 600px) {
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell {
		border-right: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
		border-bottom: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-child(3n),
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-child(4n) {
		border-right: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-child(2n) {
		border-right: none;
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-last-child(-n + 2) {
		border-bottom: 1px solid color-mix(in srgb, var(--ink) 13%, transparent);
	}
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:last-child,
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell:nth-last-child(2) {
		border-bottom: none;
	}
}

/* Respect reduced-motion — drop transitions. */
@media (prefers-reduced-motion: reduce) {
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__cell,
	body.aibt-universal .universal-trust--client-logos-bordered-grid .universal-trust__logo {
		transition: none;
	}
}
