/*
 * 40-logos.css — logo grids (partners stream, see docs/reports/partners.md)
 *
 * 1. .fzg-certs  certifications block on the home page: inner section created by migration
 *                40-partners-certs-home (6 image-box widgets, 6 / 3 / 2 columns set in Elementor).
 *                Here: white cards, equal logo boxes, text sizes of this one component.
 *                No font-family anywhere: titles inherit the theme heading font, text the body font.
 * 2. lte-partners the "Partners" widget (Kaffa / lte-ext): uniform square tiles, logos contained,
 *                8 / 4 / 2 per row, even gaps. Overrides the theme's bootstrap columns + 140px max-height.
 * Breakpoints follow the Elementor kit: tablet <= 1199px, mobile <= 767px.
 */

/* ---------- 1. certifications ---------- */
.fzg-certs > .elementor-container > .elementor-column {
	padding: 8px;
}
.fzg-certs > .elementor-container > .elementor-column > .elementor-widget-wrap {
	padding: 28px 18px 26px;
	background: #fff;
	border-radius: 12px;
}
.fzg-cert .elementor-image-box-img {
	margin-top: 0;
}
.fzg-cert .elementor-image-box-img img {
	width: 100%;
	max-width: 170px;
	margin: 0 auto;
}
.fzg-cert .elementor-image-box-title {
	margin: 0 0 10px;
	font-size: 19px;
	line-height: 1.3;
	text-transform: none;
}
.fzg-cert .elementor-image-box-description {
	font-size: 15px;
	line-height: 1.55;
}
.fzg-cert .fzg-cert__sub {
	display: block;
	margin-bottom: .6em;
	opacity: .8;
}
@media (max-width: 1199px) {
	.fzg-cert .elementor-image-box-title { font-size: 18px; }
}
@media (max-width: 767px) {
	.fzg-certs > .elementor-container > .elementor-column { padding: 5px; }
	.fzg-certs > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 20px 12px 18px; }
	.fzg-cert .elementor-image-box-img img { max-width: 140px; }
	.fzg-cert .elementor-image-box-title { font-size: 17px; }
	.fzg-cert .elementor-image-box-description { font-size: 14px; }
}

/* ---------- 2. partners (lte-partners) ---------- */
.elementor-widget-lte-partners .lte-partners {
	--fzg-cols: 8;
	--fzg-gap: 28px;
	--fzg-tile: 150px;
}
.elementor-widget-lte-partners .lte-partners > .row {
	display: flex !important;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	gap: var(--fzg-gap);
	max-width: calc(var(--fzg-cols) * var(--fzg-tile) + (var(--fzg-cols) - 1) * var(--fzg-gap));
	margin: 0 auto !important;
}
.elementor-widget-lte-partners .lte-partners > .row::before,
.elementor-widget-lte-partners .lte-partners > .row::after {
	content: none !important;
	display: none !important;
}
.elementor-widget-lte-partners .lte-partners > .row > .partners-wrap {
	float: none !important;
	flex: 0 0 calc((100% - (var(--fzg-cols) - 1) * var(--fzg-gap)) / var(--fzg-cols));
	width: auto !important;
	max-width: var(--fzg-tile);
	min-height: 0;
	margin: 0 !important;
	padding: 0 !important;
}
.elementor-widget-lte-partners .lte-partners .partners-item {
	box-sizing: border-box;
	width: 100%;
	aspect-ratio: 1 / 1;
	padding: 10px;
	background: #fff;
	border: 1px solid rgba(26, 18, 8, .12);
	border-radius: 14px;
	overflow: hidden;
	align-items: center;
	justify-content: center;
}
.elementor-widget-lte-partners .lte-partners .partners-item:hover {
	transform: scale(1.05);
}
.elementor-widget-lte-partners .lte-partners .partners-item > a,
.elementor-widget-lte-partners .lte-partners .partners-item > .photo {
	display: block;
	width: 100%;
	height: 100%;
}
.elementor-widget-lte-partners .lte-partners .partners-item img.image {
	display: block;
	width: 100%;
	height: 100%;
	max-height: none !important;
	object-fit: contain;
	border-radius: 8px;
}
/* theme JS clones every logo for a hover effect that is switched off - hide the clone (also from screen readers) */
.elementor-widget-lte-partners .lte-partners .partners-item img.lte-img-hover {
	display: none !important;
}
@media (max-width: 1199px) {
	.elementor-widget-lte-partners .lte-partners { --fzg-cols: 4; }
}
@media (max-width: 767px) {
	.elementor-widget-lte-partners .lte-partners { --fzg-cols: 2; --fzg-gap: 16px; --fzg-tile: 136px; }
	.elementor-widget-lte-partners .lte-partners .partners-item { padding: 8px; border-radius: 12px; }
}
