.trusted-by-section{padding:60px 0;background-color:transparent}
.trusted-by-container{max-width:1440px;margin:0 auto;text-align:center}
.trusted-by-title{font-size:28px;font-weight:700;margin-bottom:30px;color:#111}
.trusted-logos{display:flex;flex-wrap:nowrap;gap:20px;justify-content:flex-start;align-items:center;overflow:visible;animation:trusted-logos-slide 16s ease-in-out infinite alternate}

/* Viewport should span the full viewport width; each card will take half of it so two cards are visible */
.trusted-viewport{width:100vw;max-width:100%;overflow:hidden;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}
.trusted-logos .logo{position:relative;flex:0 0 calc((100vw - 20px)/2);display:flex;justify-content:center;align-items:center;padding:12px;background:transparent;border-radius:12px;box-shadow:none}
.trusted-logos .logo .logo-inner{width:100%;min-height:60vh;display:flex;justify-content:center;align-items:center;background:#fff;padding:36px;border-radius:12px;border:1px solid rgba(17,17,17,0.08);box-shadow:0 18px 40px rgba(0,0,0,0.12);overflow:hidden}
.trusted-logos .logo img{max-height:50vh;max-width:80%;width:auto;object-fit:contain;height:auto;display:block}
.trusted-logos .logo img.logo-dgal{transform:scale(1.32);transform-origin:center center}
.trusted-by-note{margin-top:18px;font-size:14px;color:#666}

@keyframes trusted-logos-slide{
	/* Translate by half the viewport (one card) per step. Uses calc so the step adapts to viewport width. */
	0%{transform:translateX(0)}
	50%{transform:translateX(calc(-50vw - 10px))}
	100%{transform:translateX(calc(-100vw - 20px))}
}

/* Visible caption below logo */
/* captions removed: logos-only layout */


/* Small screens */
@media (max-width:576px){
	.trusted-logos{animation:trusted-logos-slide-mobile 9s ease-in-out infinite alternate}
	/* On narrow screens show one card filling most of the viewport */
	.trusted-logos .logo{flex:0 0 calc(100vw - 20px);padding:8px}
	.trusted-logos .logo .logo-inner{min-height:50vh;padding:22px}
	.trusted-logos .logo img{max-height:38vh;max-width:85%}
	.trusted-logos .logo img.logo-dgal{transform:scale(1.20);transform-origin:center center}
	.trusted-by-title{font-size:20px}
}

@keyframes trusted-logos-slide-mobile{
	0%{transform:translateX(0)}
	50%{transform:translateX(calc(-100vw - 20px))}
	100%{transform:translateX(calc(-200vw - 40px))}
}

@media (prefers-reduced-motion: reduce){
	.trusted-logos{animation:none}
}

/* Dark mode support */
:root[data-theme='dark'] .trusted-logos .logo .logo-inner{background:#fff;border-color:rgba(255,255,255,0.25);box-shadow:0 16px 34px rgba(0,0,0,0.45)}
:root[data-theme='dark'] .trusted-by-title{color:#fff}
:root[data-theme='dark'] .trusted-by-note{color:#cbd5e1}