.logo-grid-193298cf {
	display: flex;
	flex-wrap: wrap;
	justify-content: center; /* Auto centers the last row */
	gap: var(--grid-gap, 20px);
}

.logo-grid-item-193298cf {
	flex: 0 0 calc((100% - ((var(--grid-cols, 4) - 1) * var(--grid-gap, 20px))) / var(--grid-cols, 4));
	max-width: calc((100% - ((var(--grid-cols, 4) - 1) * var(--grid-gap, 20px))) / var(--grid-cols, 4));
	position: relative;
	border: var(--border-thickness, 2px) solid transparent;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: all 0.3s ease;
	cursor: pointer;
}

.logo-grid-item-193298cf img {
	max-width: 100%;
	height: auto;
	mix-blend-mode: multiply; /* Helps with logo integration */
}

/* Base Hover Effects */
.logo-grid-item-193298cf:hover {
	border-color: var(--brand-color);
}

/* ANIMATION: Fade In (Default hover handles this gracefully) */
.logo-grid-anim-fade .logo-grid-item-193298cf {
	border-color: transparent;
	transition: border-color 0.4s ease;
}

/* ANIMATION: Glow */
.logo-grid-anim-glow .logo-grid-item-193298cf:hover {
	box-shadow: 0 0 15px color-mix(in srgb, var(--brand-color) 50%, transparent);
}

/* ANIMATION: Pulse (Fade In/Out) */
@keyframes borderPulse193298cf {
	0% { border-color: transparent; }
	50% { border-color: var(--brand-color); }
	100% { border-color: transparent; }
}
.logo-grid-anim-pulse .logo-grid-item-193298cf:hover {
	animation: borderPulse193298cf 1.5s infinite;
}

/* ANIMATION: Shine */
.logo-grid-anim-shine .logo-grid-item-193298cf::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.6) 50%, rgba(255,255,255,0) 100%);
	transform: skewX(-25deg);
	transition: none;
	z-index: 1;
	pointer-events: none;
}
.logo-grid-anim-shine .logo-grid-item-193298cf:hover::before {
	animation: shine193298cf 0.75s forwards;
}
@keyframes shine193298cf {
	100% { left: 200%; }
}
