.sponsors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:30px;max-width:1200px;margin:0 auto;padding:20px}@media (min-width:640px) and (max-width:1024px){.sponsors-grid{grid-template-columns:repeat(3,1fr);gap:25px}}@media (max-width:639px){.sponsors-grid{grid-template-columns:repeat(2,1fr);gap:20px;padding:10px}}.sponsor-logo{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;filter:grayscale(100%) brightness(.9);opacity:.7;transition:all .4s cubic-bezier(.4,0,.2,1);padding:20px;background:white;border-radius:16px;box-shadow:0 4px 15px rgba(0,0,0,.06),0 2px 6px rgba(0,0,0,.04);border:2px solid #f3f4f6;display:block;position:relative;overflow:hidden}.sponsor-logo:hover{transform:scale(1.08) translateY(-3px);box-shadow:0 8px 30px rgba(113,187,178,.25),0 4px 12px rgba(39,68,93,.15);border-color:#71bbb2}.sponsor-logo:focus,.sponsor-logo:hover{filter:grayscale(0) brightness(1);opacity:1}.sponsor-logo:focus{outline:3px solid #71bbb2;outline-offset:4px}.sponsor-logo:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s ease}.sponsor-logo:hover:before{left:200%}@media (max-width:480px){.sponsor-logo{padding:15px;border-radius:12px}.sponsor-logo:hover{transform:scale(1.05) translateY(-2px)}}.view-toggle-container{display:inline-flex;background:white;padding:4px;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.1);gap:4px}.view-toggle-btn{position:relative;padding:12px 24px;border-radius:8px;font-weight:700;transition:all .3s ease;border:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:16px;white-space:nowrap}.view-toggle-btn:not(.active){background:transparent;color:#6b7280}.view-toggle-btn:not(.active):hover{background:#f3f4f6;color:#374151}.view-toggle-btn.active{background:linear-gradient(135deg,#71bbb2,#27445d);color:white;box-shadow:0 4px 12px rgba(113,187,178,.4)}.view-toggle-icon{transition:transform .3s ease;flex-shrink:0}.view-toggle-btn:hover .view-toggle-icon{transform:scale(1.15)}.view-toggle-btn.active .view-toggle-icon{animation:icon-bounce .5s ease-out}@keyframes icon-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@media (max-width:640px){.view-toggle-btn{padding:10px 16px;font-size:14px}.view-toggle-icon{font-size:18px}}.location-card{animation:card-fade-in .4s ease-out;display:flex;flex-direction:column;height:100%}.location-card:first-child{animation-delay:.05s}.location-card:nth-child(2){animation-delay:.1s}.location-card:nth-child(3){animation-delay:.15s}.location-card:nth-child(4){animation-delay:.2s}.location-card:nth-child(5){animation-delay:.25s}.location-card:nth-child(6){animation-delay:.3s}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2}@keyframes card-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.view-transition-enter{animation:view-fade-in .5s ease-out}@keyframes view-fade-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}