/* Auspiciadores */
.sponsors-showcase { padding: 2rem 0; overflow: hidden; position: relative; min-height: 110px; }
#auspiciadores .sponsors-showcase { width: 100vw; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; }
#auspiciadores h2 { text-align: center; font-size: 2.4rem; font-weight: 800; color: var(--text-color); letter-spacing: .5px; margin-bottom: 1rem; position: relative; }
#auspiciadores h2::after { content: ''; position: absolute; bottom: -12px; left: 50%; transform: translateX(-50%); width: 80px; height: 4px; background: linear-gradient(135deg, var(--primary-color), var(--accent-color)); border-radius: 3px; }
.sponsor-placeholder { color: #999; }
.sponsor-placeholder i { font-size: 3rem; margin-bottom: 1rem; display: block; }
.sponsor-placeholder p { margin-bottom: 1rem; }
.coming-soon { background: linear-gradient(135deg, var(--primary-color), var(--accent-color)); color: var(--white); padding: 0.5rem 1rem; border-radius: 20px; font-size: 0.9rem; font-weight: 600; display: inline-block; }
.sponsors-track { display: flex; align-items: center; gap: 2.5rem; animation: sponsors-scroll 25s linear infinite; will-change: transform; }
.sponsor-item { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; text-align: center; min-width: 140px; height: 90px; padding: .5rem 1rem; background: var(--transparent); border-radius: 10px; box-shadow: 0 4px 12px rgba(0,0,0,.0); }
.sponsor-item img, .sponsor-item span { max-width: 200px; }
.sponsor-item img { display: block; margin: 0 auto; height: 70px; width: auto; object-fit: contain; filter: grayscale(100%); opacity: .9; transition: filter .25s ease, opacity .25s ease, transform .25s ease; }
.sponsor-item:hover img { filter: grayscale(0%); opacity: 1; transform: scale(1.03); }
.sponsors-showcase:hover .sponsors-track { animation-play-state: paused; }
@keyframes sponsors-scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
@media (max-width: 768px) { .sponsors-track { gap: 1.25rem; animation-duration: 18s; } .sponsor-item { min-width: 120px; height: 70px; } .sponsor-item img { height: 60px; } }


