@@ -3,7 +3,16 @@ import { motion } from "framer-motion";
33import Image from "next/image" ;
44import Link from "next/link" ;
55
6- export default function SponsorLogo ( { src, alt, className, url } ) {
6+ export default function SponsorLogo ( { src, alt, className, url, importance = "medium" } ) {
7+ // Tamaños dinámicos basados en importancia
8+ const imageSizes = {
9+ large : { width : 220 , height : 110 } , // Patrocinadores: más grandes
10+ medium : { width : 180 , height : 90 } , // Organizadores: tamaño medio
11+ small : { width : 140 , height : 70 } , // Comunidades: más pequeños
12+ } ;
13+
14+ const { width, height } = imageSizes [ importance ] || imageSizes . medium ;
15+
716 const content = (
817 < motion . div
918 className = { className }
@@ -13,40 +22,40 @@ export default function SponsorLogo({ src, alt, className, url }) {
1322 { /* Hover: Efecto de resplandor */ }
1423 < div
1524 className = "absolute inset-0 bg-gradient-to-r from-[var(--primary-green)]/10 via-[var(--accent-yellow)]/15 to-[var(--primary-green)]/10
16- rounded-2xl opacity-0 group-hover:opacity-40 transition-opacity duration-300 z-0"
25+ rounded-xl opacity-0 group-hover:opacity-40 transition-opacity duration-300 z-0"
1726 />
18-
19- { /* Contenedor de imagen */ }
20- < div className = "relative z-10 p-2 " >
27+
28+ { /* Contenedor de imagen - sin padding adicional */ }
29+ < div className = "relative z-10 flex items-center justify-center h-full " >
2130 < Image
2231 src = { src }
2332 alt = { alt }
24- width = { 160 }
25- height = { 80 }
26- className = "mx-auto transform-gpu transition-all duration-500
33+ width = { width }
34+ height = { height }
35+ className = "transform-gpu transition-all duration-500
2736 filter drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)]
2837 group-hover:scale-105 group-hover:drop-shadow-[0_4px_8px_rgba(0,0,0,0.25)]
29- group-hover:brightness-110"
38+ group-hover:brightness-110 object-contain "
3039 style = { {
3140 filter : "brightness(115%) contrast(105%)" ,
3241 maxWidth : "100%" ,
3342 height : "auto" ,
3443 } }
3544 />
3645 </ div >
37-
46+
3847 { /* Halo sutil alrededor del logo */ }
3948 < div
4049 className = "absolute inset-0 -z-10 opacity-0 group-hover:opacity-20 transition-all duration-300
4150 bg-[radial-gradient(circle_at_center,var(--accent-yellow),transparent_70%)]"
4251 />
43-
52+
4453 { /* Efecto de partículas sutil */ }
4554 < div
4655 className = "absolute inset-0 opacity-10 group-hover:opacity-20
47- transition-opacity duration-500 pointer-events-none rounded-2xl z-0"
56+ transition-opacity duration-500 pointer-events-none rounded-xl z-0"
4857 >
49- < div className = "absolute w-full h-full mix-blend-overlay opacity-40 rounded-2xl " />
58+ < div className = "absolute w-full h-full mix-blend-overlay opacity-40 rounded-xl " />
5059 </ div >
5160 </ motion . div >
5261 ) ;
@@ -58,6 +67,6 @@ export default function SponsorLogo({ src, alt, className, url }) {
5867 </ Link >
5968 ) ;
6069 }
61-
70+
6271 return content ;
63- }
72+ }
0 commit comments