/**
 * Trust Badges widget.
 *
 * Builds on core.css (.manvan-trust-item, .manvan-trust-item__icon…).
 * Two layouts: a white "trust strip" card (row) or individual cards.
 *
 * @package ManVan
 */

.manvan-trust-badges__list {
	--manvan-tb-cols: var(--manvan-cols-mobile, 1);
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem 2rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 768px) {
	.manvan-trust-badges__list {
		--manvan-tb-cols: var(--manvan-cols-tablet, 2);
	}
}

@media (min-width: 1025px) {
	.manvan-trust-badges__list {
		--manvan-tb-cols: var(--manvan-cols, 4);
	}
}

/* Columns act as "maximum per row": fewer items stretch to fill the row. */
.manvan-trust-badges__item {
	flex: 1 1 calc(100% / var(--manvan-tb-cols) - 2.5rem);
	min-width: 0;
	margin: 0;
	padding: 0;
}

.manvan-trust-badges__item::before {
	content: none;
}

.manvan-trust-badges__icon svg,
.manvan-trust-badges__icon i {
	width: 1.25rem;
	height: 1.25rem;
	font-size: 1.25rem;
	line-height: 1;
}

.manvan-trust-badges__icon svg[fill="currentColor"] {
	fill: currentColor;
}

.manvan-block .manvan-trust-badges__title {
	margin: 0;
	font-family: var(--manvan-font);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -0.005em;
	color: var(--manvan-heading);
}

.manvan-block .manvan-trust-badges__desc {
	margin: 0.15rem 0 0;
	font-size: 0.875rem;
	line-height: 1.45;
	color: var(--manvan-muted);
}

/* ---- Row: white trust strip ------------------------------------------- */

.manvan-trust-badges--row .manvan-trust-badges__list {
	padding: clamp(1.25rem, 1rem + 1vw, 1.75rem) clamp(1.25rem, 0.9rem + 1.6vw, 2.25rem);
	border: 1px solid var(--manvan-border);
	border-radius: var(--manvan-radius-lg);
	background-color: var(--manvan-surface);
	box-shadow: var(--manvan-shadow);
}

@media (max-width: 767px) {
	.manvan-trust-badges--row .manvan-trust-badges__list {
		gap: 0;
	}

	.manvan-trust-badges--row .manvan-trust-badges__item {
		padding-block: 0.875rem;
	}

	.manvan-trust-badges--row .manvan-trust-badges__item + .manvan-trust-badges__item {
		border-top: 1px solid var(--manvan-border);
	}

	.manvan-trust-badges--row .manvan-trust-badges__item:first-child {
		padding-top: 0;
	}

	.manvan-trust-badges--row .manvan-trust-badges__item:last-child {
		padding-bottom: 0;
	}
}

/* ---- Cards ------------------------------------------------------------ */

.manvan-trust-badges--cards .manvan-trust-badges__list {
	gap: var(--manvan-gap);
}

.manvan-trust-badges--cards .manvan-trust-badges__item {
	flex-basis: calc(100% / var(--manvan-tb-cols) - 1.5rem);
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
	padding: clamp(1.25rem, 1rem + 0.8vw, 1.75rem);
	border: 1px solid var(--manvan-border);
	border-radius: var(--manvan-radius);
	background-color: var(--manvan-surface);
	box-shadow: var(--manvan-shadow-sm);
	transition: transform 0.25s var(--manvan-ease), box-shadow 0.25s ease, border-color 0.25s ease;
}

.manvan-trust-badges--cards .manvan-trust-badges__item:hover {
	transform: translateY(-3px);
	border-color: var(--manvan-border-strong);
	box-shadow: var(--manvan-shadow);
}

.manvan-trust-badges--cards .manvan-trust-badges__icon {
	width: 3.25rem;
	height: 3.25rem;
}

.manvan-trust-badges--cards .manvan-trust-badges__icon svg {
	width: 1.5rem;
	height: 1.5rem;
}

.manvan-block.manvan-trust-badges--cards .manvan-trust-badges__title {
	font-size: 1.125rem;
}

.manvan-block.manvan-trust-badges--cards .manvan-trust-badges__desc {
	margin-top: 0.35rem;
	font-size: 0.9375rem;
}

/* ---- Icon styles ------------------------------------------------------ */

.manvan-trust-badges--icon-square .manvan-trust-badges__icon {
	border-radius: 14px;
}

.manvan-trust-badges--icon-plain .manvan-trust-badges__icon {
	width: auto;
	height: auto;
	background-color: transparent;
}

.manvan-trust-badges--icon-plain .manvan-trust-badges__icon svg {
	width: 1.75rem;
	height: 1.75rem;
}
