/* Content — Partner Logos (clean rebuild v3.95) */
.lm{
	--lm-gap:32px;
	--lm-row-gap:24px;
	--lm-box-h:80px;
	--lm-opacity:1;
	--lm-hover-scale:1.1;
	--lm-fade:80px;
	--lm-slot:160px;
	display:flex;
	flex-direction:column;
	gap:var(--lm-row-gap);
	width:100%;
}
.lm *,.lm *::before,.lm *::after{box-sizing:border-box}
.lm-row{position:relative;width:100%;overflow:hidden}
.lm-row[hidden]{display:none!important}
.lm--fade .lm-row{
	-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--lm-fade),#000 calc(100% - var(--lm-fade)),transparent 100%);
	mask-image:linear-gradient(90deg,transparent 0,#000 var(--lm-fade),#000 calc(100% - var(--lm-fade)),transparent 100%);
}
.lm-track{display:flex;width:max-content;will-change:transform;transform:translate3d(0,0,0)}
.lm-set{display:flex;flex:none;gap:var(--lm-gap);padding-right:var(--lm-gap)}
.lm-item{
	display:flex;
	flex:0 0 var(--lm-slot);
	align-items:center;
	justify-content:center;
	width:var(--lm-slot);
	height:var(--lm-box-h);
	overflow:hidden;
}
/* Whole logo, never cropped */
.lm-item img{
	display:block;
	width:auto;
	height:auto;
	max-width:100%;
	max-height:100%;
	object-fit:contain;
	opacity:var(--lm-opacity);
	transition:transform .25s ease,filter .25s ease,opacity .25s ease;
}
.lm--gray .lm-item img{filter:grayscale(1)}
.lm--gray.lm--color-hover .lm-item:hover img{filter:none}

/* Hover focus: the hovered logo zooms in; the other logos IN THAT ROW turn gray */
.lm{--lm-fx:250ms;--lm-others-gray:1;--lm-others-opacity:.6}
.lm-item img{transition:transform var(--lm-fx) ease,filter var(--lm-fx) ease,opacity var(--lm-fx) ease}
.lm-item{overflow:visible}
.lm-row{padding-block:calc(var(--lm-box-h) * (var(--lm-hover-scale) - 1) / 2)}
.lm--focus .lm-row:has(.lm-item:hover) .lm-item img{
	filter:grayscale(var(--lm-others-gray));
	opacity:var(--lm-others-opacity);
}
.lm--focus .lm-item:hover img,
.lm-item:hover img{
	transform:scale(var(--lm-hover-scale));
	filter:none !important;
	opacity:1 !important;
}
.lm--focus .lm-row.is-hovering .lm-item img{filter:grayscale(var(--lm-others-gray));opacity:var(--lm-others-opacity)}
.lm--focus .lm-row.is-hovering .lm-item.is-hovered img{filter:none;opacity:1;transform:scale(var(--lm-hover-scale))}
.lm-note{padding:16px;border:1px dashed #999;font-size:13px}
