
        :root {
            --gold:     #FFD700;
            --gold-lt:  #FFE84D;
            --gold-dk:  #C9A800;
            --green:    #3DBE6E;
            --green-lt: #62E896;
            --green-dk: #0D3320;
            
            /* Tonos oscuros dramÃ¡ticos */
            --bg:       #050E08;
            --bg-alt:   #071209;
            
            --text:     #FFFFFF;
            --text-mut: #8BBDA0;
            --card-bg:  rgba(255, 255, 255, 0.04);
            --border:   rgba(255, 255, 255, 0.08);
            --grad-gold:  linear-gradient(135deg, #C9A800 0%, #FFD700 50%, #FFE84D 100%);
            --grad-green: linear-gradient(135deg, #0D3320 0%, #1A6640 60%, #3DBE6E 100%);
        }
        * { margin:0; padding:0; box-sizing:border-box; }
        html, body { max-width: 100vw; overflow-x: hidden; }
        html { scroll-behavior:smooth; }
        body { 
            font-family:'Outfit',sans-serif; 
            /* Fondo oscuro Ã©pico con mÃºltiples tonos: aurora marcial */
            background-color: #050E08;
            background-image: 
                /* Destello dorado esquina superior izquierda */
                radial-gradient(ellipse at 8% 12%, rgba(201,168,0,0.18) 0%, transparent 38%),
                /* Gran mancha verde esmeralda central-izquierda */
                radial-gradient(ellipse at 28% 55%, rgba(22,90,50,0.55) 0%, transparent 45%),
                /* Teal azulado esquina derecha arriba */
                radial-gradient(ellipse at 88% 18%, rgba(0,90,70,0.35) 0%, transparent 40%),
                /* Verde profundo centro-derecha */
                radial-gradient(ellipse at 72% 70%, rgba(15,70,40,0.5) 0%, transparent 42%),
                /* Destello dorado sutil abajo centro */
                radial-gradient(ellipse at 50% 95%, rgba(180,140,0,0.12) 0%, transparent 35%),
                /* Tono azul-negro puro en el extremo derecho */
                radial-gradient(ellipse at 98% 50%, rgba(0,30,20,0.8) 0%, transparent 40%);
            background-attachment: fixed;
            color:var(--text); 
            line-height:1.6; 
            overflow-x:hidden; 
        }
        ::-webkit-scrollbar { width:5px; }
        ::-webkit-scrollbar-track { background:var(--bg-alt); }
        ::-webkit-scrollbar-thumb { background:var(--gold-dk); border-radius:3px; }

        /* HEADER */
        header {
            position:absolute; top:0; left:0; right:0; z-index:1000;
            padding:0 5%; height:70px;
            display:flex; align-items:center; justify-content:center;
            background:transparent;
            border-bottom:none;
        }
        header { margin-bottom: 0; }
        .logo-wrap { display:flex; align-items:center; gap:12px; }
        .logo-img { height:42px; filter:drop-shadow(0 0 8px rgba(255,215,0,.35)); }
        .logo-text { font-size:1.3rem; font-weight:800; letter-spacing:2px; text-transform:uppercase; color:#fff; }
        .logo-text span { color:var(--gold); }
        .menu-toggle { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:6px; background:none; border:none; }
        .menu-toggle span { display:block; height:2px; width:24px; background:var(--gold); border-radius:2px; transition:all .3s; }
        nav ul { display:flex; list-style:none; gap:2px; }
        nav ul li a { color:rgba(255,255,255,.7); text-decoration:none; font-weight:500; font-size:.88rem; letter-spacing:.4px; padding:7px 13px; border-radius:7px; transition:all .25s; }
        nav ul li a:hover { color:#fff; background:rgba(255,255,255,.08); }

        /* HERO */
        .hero { min-height:100vh; position:relative; display:flex; align-items:center; justify-content:center; text-align:center; overflow:hidden; }
        .hero-bg { position:absolute; inset:0; background:linear-gradient(rgba(10,15,12,.65),rgba(10,15,12,.75)), url('../img/portada.webp') center/cover no-repeat; transform:scale(1.05); transition:transform 8s ease; }
        .hero:hover .hero-bg { transform:scale(1.09); }
        .hero::before { content:''; position:absolute; top:-200px; left:-200px; width:600px; height:600px; background:radial-gradient(circle,rgba(58,140,92,.15) 0%,transparent 70%); animation:orbF 12s ease-in-out infinite alternate; pointer-events:none; z-index:1; }
        .hero::after { content:''; position:absolute; bottom:-150px; right:-150px; width:500px; height:500px; background:radial-gradient(circle,rgba(255,215,0,.08) 0%,transparent 70%); animation:orbF 10s ease-in-out infinite alternate-reverse; pointer-events:none; z-index:1; }
        @keyframes orbF { from{transform:translate(0,0)} to{transform:translate(40px,30px)} }
        .hero-content { position:relative; z-index:2; max-width:780px; padding:0 20px; }
        .hero-badge { display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); color:var(--gold); font-size:.78rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; padding:6px 18px; border-radius:50px; margin-bottom:28px; backdrop-filter:blur(8px); }
        .hero h1 { font-size:clamp(2.4rem,6vw,4.5rem); font-weight:900; line-height:1.05; letter-spacing:-1px; margin-bottom:22px; color:#fff; text-shadow:0 2px 30px rgba(0,0,0,.6); }
        .hero h1 .hl { background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
        .hero p { font-size:clamp(.95rem,2vw,1.15rem); color:rgba(255,255,255,.8); max-width:540px; margin:0 auto 36px; font-weight:300; }
        .btn-group { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
        .btn { display:inline-flex; align-items:center; gap:8px; padding:13px 30px; font-family:'Outfit',sans-serif; font-size:.92rem; font-weight:700; letter-spacing:.4px; text-decoration:none; border-radius:10px; transition:all .3s; cursor:pointer; border:none; }
        .btn-primary { background:var(--grad-gold); color:#000; box-shadow:0 4px 20px rgba(255,215,0,.2); }
        .btn-primary:hover { transform:translateY(-3px); box-shadow:0 12px 36px rgba(255,215,0,.35); }
        .btn-outline { background:transparent; color:#fff; border:1.5px solid rgba(255,255,255,.25); }
        .btn-outline:hover { background:#fff; color:#000; transform:translateY(-3px); }
        .scroll-ind { position:absolute; bottom:32px; left:50%; transform:translateX(-50%); z-index:2; display:flex; flex-direction:column; align-items:center; gap:8px; color:rgba(255,255,255,.4); font-size:.68rem; letter-spacing:2px; text-transform:uppercase; animation:bounce 2.5s ease infinite; }
        @keyframes bounce { 0%,100%{transform:translateX(-50%) translateY(0)} 50%{transform:translateX(-50%) translateY(8px)} }

        /* SECTION BASE */
        section { padding:90px 0; }
        .container { width:90%; max-width:1200px; margin:0 auto; }
        .sec-label { display:inline-block; color:var(--green-lt); font-size:.73rem; font-weight:700; letter-spacing:3px; text-transform:uppercase; margin-bottom:12px; }
        .sec-title { font-size:clamp(1.8rem,4vw,2.8rem); font-weight:800; letter-spacing:-.5px; color:#fff; margin-bottom:10px; }
        .sec-title .gold { color:var(--gold); }
        .sec-desc { color:var(--text-mut); font-size:.98rem; max-width:500px; font-weight:300; }
        .sec-header { margin-bottom:50px; }
        .divider { width:60px; height:4px; border-radius:2px; background:var(--grad-green); margin:16px 0 18px; }

        /* ARTES MARCIALES â€“ layout cinematogrÃ¡fico por filas */
        .martial-arts { background: rgba(0,0,0,0.25); backdrop-filter: blur(2px); overflow:hidden; padding-bottom:0; }
        .arts-header-wrap { padding:80px 5% 60px; }

        .art-row {
            display:flex;
            align-items:center;
            min-height:85vh;
            position:relative;
            overflow:hidden;
            border-top:1px solid var(--border);
        }
        .art-row--right { flex-direction:row-reverse; }

        /* Lado del luchador */
        .art-fighter {
            flex:0 0 50%;
            height:85vh;
            display:flex;
            align-items:flex-end;
            justify-content:center;
            position:relative;
            overflow:visible;
        }
        .art-fighter img {
            height:100%;
            width:auto;
            max-width:110%;
            object-fit:contain;
            object-position:bottom center;
            display:block;
            filter:drop-shadow(0 0 60px rgba(0,0,0,.7));
            position:relative;
            z-index:2;
        }

        /* Lado del texto */
        .art-info {
            flex:1;
            padding:0 7% 0 6%;
            z-index:3;
        }
        .art-row--right .art-info { padding:0 6% 0 7%; }
        .art-info h3 {
            font-size:clamp(2.4rem,5vw,4rem);
            font-weight:900;
            line-height:1;
            color:#fff;
            letter-spacing:-2px;
            margin-bottom:18px;
        }
        .art-info h3 .gold { background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
        .art-info .art-desc {
            font-size:1.25rem;
            color:rgba(255,255,255,.8);
            line-height:1.6;
            max-width:480px;
            margin-bottom:28px;
            font-weight:400;
        }
        .art-badge {
            display:inline-flex; align-items:center; gap:8px;
            background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
            padding:8px 18px; border-radius:50px;
            font-size:.78rem; font-weight:600; color:var(--gold);
            letter-spacing:1px;
        }
        .art-badge i { font-size:.9rem; }

        /* Separador luminoso lateral */
        .art-row--left  .art-fighter::after,
        .art-row--right .art-fighter::after {
            content:''; position:absolute; top:10%; bottom:10%; width:1px;
            background:linear-gradient(to bottom, transparent, rgba(61,190,110,.25), transparent);
            z-index:1;
        }
        .art-row--left  .art-fighter::after { right:0; }
        .art-row--right .art-fighter::after { left:0; }

        /* NÃºmero decorativo de fondo */
        .art-row-num {
            position:absolute; bottom:-0.1em; font-size:22vw; font-weight:900;
            color:rgba(255,255,255,.02); line-height:1; pointer-events:none; z-index:0;
            letter-spacing:-0.05em;
        }
        .art-row--left  .art-row-num { right:2%; }
        .art-row--right .art-row-num { left:2%; }

        /* â”€â”€â”€ ANIMACIONES DE ENTRADA Y SALIDA â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
        /* Estado inicial y estado al salir */
        .art-row--left  .art-fighter { 
            transform:translateX(-110vw); opacity:0; 
            transition: transform 1s ease-in, opacity .8s ease-in; 
        }
        .art-row--right .art-fighter { 
            transform:translateX(110vw);  opacity:0; 
            transition: transform 1s ease-in, opacity .8s ease-in; 
        }
        .art-row .art-info { 
            opacity:0; transform:translateY(24px); 
            transition: opacity .6s ease-in, transform .6s ease-in; 
        }

        /* Fighter entra */
        .art-row.fighter-in .art-fighter {
            transform:translateX(0); opacity:1;
            transition: transform 1.15s cubic-bezier(0.16,1,0.3,1), opacity .9s ease-out;
        }
        /* Texto aparece despuÃ©s */
        .art-row.text-in .art-info {
            opacity:1; transform:translateY(0);
            transition: opacity .9s ease-out, transform .9s cubic-bezier(0.16,1,0.3,1);
        }

        /* Responsive */
        @media (max-width:768px) {
            .art-row, .art-row--right { flex-direction:column; min-height:80vh; justify-content: center; position: relative; border-top: none; }
            .art-fighter { position: absolute; top:0; left:0; right:0; bottom:0; width: 100%; height: 100%; z-index: 1; }
            .art-fighter img { width: 100%; height: 100%; object-fit: cover; object-position: center top; opacity: 0.25; filter: none; }
            .art-info { position: relative; z-index: 3; padding: 40px 6%; text-align: center; width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; background: transparent; text-shadow: 0 2px 15px rgba(0,0,0,0.9); }
            .art-row--right .art-info { padding: 40px 6%; }
            .art-info h3 { text-shadow: 0 4px 20px rgba(0,0,0,1); }
            .art-info .art-desc { margin-left: auto; margin-right: auto; font-size: 1.15rem; text-shadow: 0 2px 15px rgba(0,0,0,0.9); }
        }

        /* QUIENES SOMOS */
        .about-section { background: var(--bg); position: relative; min-height: 85vh; display: flex; align-items: center; padding: 120px 0; overflow-x: hidden; }
        .about-grid { display: grid; grid-template-columns: 1.2fr 1.8fr; gap: 40px; align-items: center; width: 100%; position: relative; z-index: 2; }
        .about-content { max-width: 600px; position: relative; z-index: 2; }
        .about-text { font-size: 1.45rem; color: rgba(255,255,255,.7); line-height: 1.7; margin-bottom: 24px; font-weight: 300; }
        .about-features { display: flex; flex-direction: column; gap: 18px; margin-top: 40px; }
        .feat-item { display: flex; align-items: center; gap: 18px; font-size: 1.3rem; font-weight: 600; color: #fff; }
        .feat-item i { color: var(--gold); font-size: 1.6rem; width: 35px; text-align: center; }
        
        .about-image { 
            position: relative; 
            width: 200%;
            transform: translateX(-25%) translateY(28px);
            transform-origin: center center;
            filter: drop-shadow(0 20px 40px rgba(0,0,0,.9));
            z-index: 1;
            transition: opacity .7s ease, transform .7s ease;
        }
        .about-image.visible {
            transform: translateX(-25%) translateY(0) !important;
            opacity: 1;
        }
        .about-image img { 
            width: 100%; height: 100%; object-fit: cover; display: block; filter: contrast(1.1) brightness(0.95); 
            width: 100%; height: auto; display: block; filter: contrast(1.1) brightness(0.95); 
            -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1257 1280'%3E%3Cg transform='translate(0,1280) scale(0.1,-0.1)'%3E%3Cpath d='M6706 12789 c-3 -8 -7 -108 -9 -224 -3 -212 -13 -275 -43 -275 -7 0 -56 51 -107 113 -118 140 -189 207 -257 242 -57 29 -141 47 -162 34 -10 -6 -13 -57 -13 -221 -1 -125 -5 -220 -11 -231 -9 -16 -18 -9 -74 54 -149 168 -434 378 -467 345 -3 -2 3 -35 12 -73 14 -56 16 -99 12 -248 -3 -99 -6 -181 -6 -183 -1 -2 -16 8 -33 21 -155 115 -584 315 -613 285 -4 -3 3 -25 15 -48 26 -50 43 -131 65 -300 9 -69 18 -135 21 -147 5 -20 1 -18 -32 13 -117 108 -396 204 -591 204 -70 0 -143 -20 -143 -40 0 -10 49 -76 161 -216 101 -127 136 -180 165 -249 16 -38 13 -37 -51 33 -128 139 -309 217 -550 237 -112 10 -250 -14 -293 -50 -1 -1 20 -39 48 -84 27 -44 72 -116 98 -158 26 -43 56 -90 66 -105 l18 -27 -57 30 c-163 89 -515 162 -670 140 -65 -10 -95 -19 -95 -30 0 -20 68 -102 186 -222 123 -125 149 -159 125 -159 -4 0 -108 34 -229 75 -260 88 -373 117 -462 118 -61 1 -119 -17 -134 -41 -3 -5 33 -52 79 -105 115 -133 215 -278 215 -313 0 -17 -122 11 -264 60 -226 79 -351 109 -466 110 -52 1 -107 -2 -122 -7 l-27 -7 58 -93 c96 -151 221 -370 221 -384 0 -22 -91 20 -275 127 -259 151 -340 184 -410 166 l-26 -7 30 -37 c39 -48 73 -133 105 -260 14 -55 26 -103 26 -106 0 -3 -21 10 -46 29 -106 81 -345 173 -475 182 l-76 6 -7 -35 c-3 -19 -27 -63 -51 -99 -25 -35 -51 -81 -57 -101 -6 -21 -17 -38 -23 -38 -7 0 -61 32 -121 71 -182 118 -320 179 -406 179 -25 0 -28 -4 -28 -31 0 -72 -73 -305 -100 -319 -33 -18 -110 -11 -199 19 -47 16 -99 31 -116 32 l-30 4 -3 -70 c-10 -217 92 -470 257 -636 122 -122 232 -162 661 -239 365 -65 480 -97 670 -185 215 -99 368 -136 639 -155 240 -16 470 2 1018 81 323 46 366 55 479 108 155 73 232 130 528 391 307 271 434 356 623 420 77 25 123 33 270 45 265 22 355 39 738 145 458 126 502 134 805 136 136 0 285 7 335 14 264 37 695 -32 847 -136 79 -55 70 -115 -31 -205 -56 -50 -257 -159 -293 -159 -10 0 -50 16 -88 35 -209 105 -478 141 -675 90 -140 -36 -295 -138 -401 -263 -98 -115 -156 -215 -256 -443 -13 -29 -31 -44 -90 -74 -279 -144 -541 -390 -758 -710 -94 -139 -264 -431 -326 -559 -34 -72 -88 -203 -119 -291 -77 -218 -101 -270 -133 -286 -19 -9 -97 -15 -247 -19 -213 -6 -222 -7 -280 -33 -90 -42 -120 -70 -191 -177 -82 -125 -152 -188 -279 -251 -153 -75 -228 -92 -420 -93 -138 -1 -171 2 -239 22 -132 38 -227 94 -322 189 -91 92 -154 127 -313 177 -272 85 -535 70 -719 -41 -67 -41 -161 -128 -192 -178 -13 -22 -36 -38 -67 -50 -85 -32 -196 -92 -259 -139 -72 -54 -112 -101 -184 -216 -32 -51 -85 -117 -135 -165 -105 -103 -130 -152 -129 -255 0 -64 5 -84 32 -137 17 -34 36 -64 41 -67 6 -4 -3 -33 -19 -69 -116 -256 -77 -535 93 -658 47 -34 78 -37 117 -9 38 27 62 88 115 300 25 101 48 187 51 192 3 4 13 4 23 -2 14 -7 20 -27 25 -82 4 -40 17 -100 28 -133 20 -62 136 -264 151 -265 17 0 193 169 217 209 28 45 33 47 82 27 27 -12 37 -24 47 -58 16 -54 54 -129 94 -188 31 -44 134 -162 148 -168 4 -2 13 14 19 34 7 20 38 73 68 118 58 85 101 175 102 214 0 18 5 22 34 22 32 0 34 -2 40 -47 4 -27 20 -79 36 -118 l30 -69 -28 -31 c-16 -16 -38 -44 -50 -61 l-22 -32 23 -6 c12 -3 52 -6 88 -6 47 0 70 -4 79 -15 7 -9 11 -17 9 -19 -2 -1 -43 -15 -91 -29 -127 -40 -255 -107 -320 -170 -48 -46 -96 -113 -86 -122 3 -3 255 9 432 20 l99 6 -68 -73 c-37 -40 -87 -102 -111 -138 -40 -61 -73 -144 -62 -155 2 -3 45 4 94 15 49 11 94 20 100 20 7 0 13 -26 17 -63 2 -34 11 -80 19 -103 l15 -41 -95 -102 -94 -101 -58 0 c-107 0 -118 -5 -136 -67 -9 -30 -19 -79 -23 -109 -4 -30 -10 -55 -12 -57 -2 -2 -32 -27 -67 -55 -35 -29 -66 -52 -70 -52 -11 0 -60 65 -77 102 -8 18 -28 70 -45 114 -17 45 -44 100 -60 123 -33 45 -94 81 -137 81 -39 0 -96 -50 -124 -107 -32 -65 -30 -170 4 -318 21 -92 41 -224 42 -284 0 -33 -23 -18 -39 23 l-17 45 -42 -26 c-153 -98 -193 -161 -207 -333 -5 -60 -17 -117 -31 -155 -21 -52 -24 -77 -24 -195 l0 -135 49 -90 c153 -282 284 -423 481 -520 175 -85 342 -124 575 -132 264 -9 432 19 797 133 385 120 502 144 703 144 94 0 154 -6 243 -25 365 -76 554 -59 1232 109 99 24 215 52 258 60 69 15 90 25 174 85 151 108 302 177 478 217 108 25 437 30 673 10 257 -22 372 -8 548 65 165 69 326 189 598 445 238 225 318 297 396 356 54 41 68 48 90 41 43 -14 153 -8 215 12 90 29 249 113 395 209 173 114 179 116 224 106 110 -25 89 -74 -101 -231 -73 -61 -142 -122 -153 -136 -53 -67 -91 -268 -110 -573 -27 -436 -49 -480 -371 -723 -131 -98 -288 -276 -388 -440 -201 -329 -244 -616 -116 -783 l27 -36 57 57 c78 79 192 133 401 189 193 51 225 64 400 151 73 36 134 64 136 62 3 -2 -4 -53 -15 -113 -27 -154 -44 -336 -45 -494 -1 -168 17 -254 121 -580 41 -129 78 -243 82 -253 5 -15 35 13 152 145 387 435 430 510 554 977 19 74 38 137 40 140 7 7 216 -103 287 -151 31 -21 83 -68 115 -105 32 -36 195 -208 363 -380 l304 -314 28 54 c52 103 69 188 75 357 3 118 0 188 -14 294 l-19 138 45 -5 c82 -10 144 -35 269 -107 122 -70 208 -110 238 -110 14 0 15 10 9 73 -23 237 -147 512 -308 683 l-78 83 32 17 c25 12 50 15 108 12 65 -4 98 -14 223 -66 81 -34 159 -64 173 -68 29 -7 29 -15 -1 111 -45 187 -210 409 -398 537 -77 53 -227 123 -296 138 -63 13 -117 39 -176 84 -91 68 -113 139 -70 231 27 60 47 87 168 232 207 248 362 542 437 834 80 310 82 660 7 958 -14 53 -27 137 -30 188 -6 118 -29 208 -77 309 -82 172 -245 348 -491 529 -75 55 -137 102 -137 105 0 3 27 21 61 40 81 46 217 175 272 258 123 186 197 416 213 660 6 92 7 95 22 72 61 -93 186 -207 215 -197 6 2 16 23 24 48 15 51 62 323 62 358 0 21 8 16 68 -41 44 -41 100 -80 158 -110 137 -71 202 -76 223 -17 27 78 1 361 -47 517 l-20 62 34 0 c63 0 229 -38 386 -89 87 -28 165 -51 174 -51 26 0 12 92 -28 193 -80 198 -206 354 -343 424 -140 71 -365 133 -487 133 -30 0 -57 2 -60 5 -2 3 11 78 29 167 60 284 47 457 -44 631 -46 86 -150 199 -242 261 -95 63 -249 136 -398 187 -68 23 -123 46 -123 53 0 6 5 29 10 51 14 56 14 277 0 361 -7 38 -32 157 -57 264 -24 107 -65 305 -89 440 -90 490 -166 717 -293 876 -52 65 -87 82 -192 89 -139 10 -126 -5 -125 142 1 115 -1 134 -23 181 -30 66 -114 145 -170 160 -60 15 -120 -2 -201 -57 l-45 -31 -7 64 c-11 89 -39 148 -103 215 -71 75 -156 116 -218 106 -94 -15 -181 -74 -219 -149 l-21 -41 -11 46 c-26 100 -112 205 -208 253 -64 32 -143 35 -205 6 -57 -25 -124 -95 -155 -159 l-25 -54 -7 35 c-3 20 -24 63 -46 97 -83 129 -206 212 -314 213 -98 1 -132 -42 -166 -209 -11 -53 -22 -98 -23 -100 -2 -1 -21 22 -43 53 -81 114 -247 222 -355 231 -58 6 -59 5 -98 -33 -32 -33 -45 -58 -71 -142 -17 -56 -35 -102 -38 -102 -4 0 -13 9 -20 20 -6 11 -53 67 -103 125 -118 137 -234 236 -334 285 -88 44 -171 62 -179 39z m-3266 -7054 c9 -11 6 -23 -20 -60 -17 -25 -43 -71 -57 -101 -14 -30 -27 -54 -29 -52 -8 8 71 228 82 228 6 0 17 -7 24 -15z m-580 -241 l0 -66 -37 6 c-21 3 -62 8 -90 12 -56 6 -60 12 -47 62 5 17 14 22 38 23 17 0 49 6 71 14 65 21 65 21 65 -51z m-405 -334 c-11 -5 -27 -9 -35 -9 -13 -1 -13 0 0 9 8 5 24 9 35 9 l20 0 -20 -9z'/%3E%3C/g%3E%3C/svg%3E");
            -webkit-mask-size: contain;
            -webkit-mask-repeat: no-repeat;
            -webkit-mask-position: center;
            mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1257 1280'%3E%3Cg transform='translate(0,1280) scale(0.1,-0.1)'%3E%3Cpath d='M6706 12789 c-3 -8 -7 -108 -9 -224 -3 -212 -13 -275 -43 -275 -7 0 -56 51 -107 113 -118 140 -189 207 -257 242 -57 29 -141 47 -162 34 -10 -6 -13 -57 -13 -221 -1 -125 -5 -220 -11 -231 -9 -16 -18 -9 -74 54 -149 168 -434 378 -467 345 -3 -2 3 -35 12 -73 14 -56 16 -99 12 -248 -3 -99 -6 -181 -6 -183 -1 -2 -16 8 -33 21 -155 115 -584 315 -613 285 -4 -3 3 -25 15 -48 26 -50 43 -131 65 -300 9 -69 18 -135 21 -147 5 -20 1 -18 -32 13 -117 108 -396 204 -591 204 -70 0 -143 -20 -143 -40 0 -10 49 -76 161 -216 101 -127 136 -180 165 -249 16 -38 13 -37 -51 33 -128 139 -309 217 -550 237 -112 10 -250 -14 -293 -50 -1 -1 20 -39 48 -84 27 -44 72 -116 98 -158 26 -43 56 -90 66 -105 l18 -27 -57 30 c-163 89 -515 162 -670 140 -65 -10 -95 -19 -95 -30 0 -20 68 -102 186 -222 123 -125 149 -159 125 -159 -4 0 -108 34 -229 75 -260 88 -373 117 -462 118 -61 1 -119 -17 -134 -41 -3 -5 33 -52 79 -105 115 -133 215 -278 215 -313 0 -17 -122 11 -264 60 -226 79 -351 109 -466 110 -52 1 -107 -2 -122 -7 l-27 -7 58 -93 c96 -151 221 -370 221 -384 0 -22 -91 20 -275 127 -259 151 -340 184 -410 166 l-26 -7 30 -37 c39 -48 73 -133 105 -260 14 -55 26 -103 26 -106 0 -3 -21 10 -46 29 -106 81 -345 173 -475 182 l-76 6 -7 -35 c-3 -19 -27 -63 -51 -99 -25 -35 -51 -81 -57 -101 -6 -21 -17 -38 -23 -38 -7 0 -61 32 -121 71 -182 118 -320 179 -406 179 -25 0 -28 -4 -28 -31 0 -72 -73 -305 -100 -319 -33 -18 -110 -11 -199 19 -47 16 -99 31 -116 32 l-30 4 -3 -70 c-10 -217 92 -470 257 -636 122 -122 232 -162 661 -239 365 -65 480 -97 670 -185 215 -99 368 -136 639 -155 240 -16 470 2 1018 81 323 46 366 55 479 108 155 73 232 130 528 391 307 271 434 356 623 420 77 25 123 33 270 45 265 22 355 39 738 145 458 126 502 134 805 136 136 0 285 7 335 14 264 37 695 -32 847 -136 79 -55 70 -115 -31 -205 -56 -50 -257 -159 -293 -159 -10 0 -50 16 -88 35 -209 105 -478 141 -675 90 -140 -36 -295 -138 -401 -263 -98 -115 -156 -215 -256 -443 -13 -29 -31 -44 -90 -74 -279 -144 -541 -390 -758 -710 -94 -139 -264 -431 -326 -559 -34 -72 -88 -203 -119 -291 -77 -218 -101 -270 -133 -286 -19 -9 -97 -15 -247 -19 -213 -6 -222 -7 -280 -33 -90 -42 -120 -70 -191 -177 -82 -125 -152 -188 -279 -251 -153 -75 -228 -92 -420 -93 -138 -1 -171 2 -239 22 -132 38 -227 94 -322 189 -91 92 -154 127 -313 177 -272 85 -535 70 -719 -41 -67 -41 -161 -128 -192 -178 -13 -22 -36 -38 -67 -50 -85 -32 -196 -92 -259 -139 -72 -54 -112 -101 -184 -216 -32 -51 -85 -117 -135 -165 -105 -103 -130 -152 -129 -255 0 -64 5 -84 32 -137 17 -34 36 -64 41 -67 6 -4 -3 -33 -19 -69 -116 -256 -77 -535 93 -658 47 -34 78 -37 117 -9 38 27 62 88 115 300 25 101 48 187 51 192 3 4 13 4 23 -2 14 -7 20 -27 25 -82 4 -40 17 -100 28 -133 20 -62 136 -264 151 -265 17 0 193 169 217 209 28 45 33 47 82 27 27 -12 37 -24 47 -58 16 -54 54 -129 94 -188 31 -44 134 -162 148 -168 4 -2 13 14 19 34 7 20 38 73 68 118 58 85 101 175 102 214 0 18 5 22 34 22 32 0 34 -2 40 -47 4 -27 20 -79 36 -118 l30 -69 -28 -31 c-16 -16 -38 -44 -50 -61 l-22 -32 23 -6 c12 -3 52 -6 88 -6 47 0 70 -4 79 -15 7 -9 11 -17 9 -19 -2 -1 -43 -15 -91 -29 -127 -40 -255 -107 -320 -170 -48 -46 -96 -113 -86 -122 3 -3 255 9 432 20 l99 6 -68 -73 c-37 -40 -87 -102 -111 -138 -40 -61 -73 -144 -62 -155 2 -3 45 4 94 15 49 11 94 20 100 20 7 0 13 -26 17 -63 2 -34 11 -80 19 -103 l15 -41 -95 -102 -94 -101 -58 0 c-107 0 -118 -5 -136 -67 -9 -30 -19 -79 -23 -109 -4 -30 -10 -55 -12 -57 -2 -2 -32 -27 -67 -55 -35 -29 -66 -52 -70 -52 -11 0 -60 65 -77 102 -8 18 -28 70 -45 114 -17 45 -44 100 -60 123 -33 45 -94 81 -137 81 -39 0 -96 -50 -124 -107 -32 -65 -30 -170 4 -318 21 -92 41 -224 42 -284 0 -33 -23 -18 -39 23 l-17 45 -42 -26 c-153 -98 -193 -161 -207 -333 -5 -60 -17 -117 -31 -155 -21 -52 -24 -77 -24 -195 l0 -135 49 -90 c153 -282 284 -423 481 -520 175 -85 342 -124 575 -132 264 -9 432 19 797 133 385 120 502 144 703 144 94 0 154 -6 243 -25 365 -76 554 -59 1232 109 99 24 215 52 258 60 69 15 90 25 174 85 151 108 302 177 478 217 108 25 437 30 673 10 257 -22 372 -8 548 65 165 69 326 189 598 445 238 225 318 297 396 356 54 41 68 48 90 41 43 -14 153 -8 215 12 90 29 249 113 395 209 173 114 179 116 224 106 110 -25 89 -74 -101 -231 -73 -61 -142 -122 -153 -136 -53 -67 -91 -268 -110 -573 -27 -436 -49 -480 -371 -723 -131 -98 -288 -276 -388 -440 -201 -329 -244 -616 -116 -783 l27 -36 57 57 c78 79 192 133 401 189 193 51 225 64 400 151 73 36 134 64 136 62 3 -2 -4 -53 -15 -113 -27 -154 -44 -336 -45 -494 -1 -168 17 -254 121 -580 41 -129 78 -243 82 -253 5 -15 35 13 152 145 387 435 430 510 554 977 19 74 38 137 40 140 7 7 216 -103 287 -151 31 -21 83 -68 115 -105 32 -36 195 -208 363 -380 l304 -314 28 54 c52 103 69 188 75 357 3 118 0 188 -14 294 l-19 138 45 -5 c82 -10 144 -35 269 -107 122 -70 208 -110 238 -110 14 0 15 10 9 73 -23 237 -147 512 -308 683 l-78 83 32 17 c25 12 50 15 108 12 65 -4 98 -14 223 -66 81 -34 159 -64 173 -68 29 -7 29 -15 -1 111 -45 187 -210 409 -398 537 -77 53 -227 123 -296 138 -63 13 -117 39 -176 84 -91 68 -113 139 -70 231 27 60 47 87 168 232 207 248 362 542 437 834 80 310 82 660 7 958 -14 53 -27 137 -30 188 -6 118 -29 208 -77 309 -82 172 -245 348 -491 529 -75 55 -137 102 -137 105 0 3 27 21 61 40 81 46 217 175 272 258 123 186 197 416 213 660 6 92 7 95 22 72 61 -93 186 -207 215 -197 6 2 16 23 24 48 15 51 62 323 62 358 0 21 8 16 68 -41 44 -41 100 -80 158 -110 137 -71 202 -76 223 -17 27 78 1 361 -47 517 l-20 62 34 0 c63 0 229 -38 386 -89 87 -28 165 -51 174 -51 26 0 12 92 -28 193 -80 198 -206 354 -343 424 -140 71 -365 133 -487 133 -30 0 -57 2 -60 5 -2 3 11 78 29 167 60 284 47 457 -44 631 -46 86 -150 199 -242 261 -95 63 -249 136 -398 187 -68 23 -123 46 -123 53 0 6 5 29 10 51 14 56 14 277 0 361 -7 38 -32 157 -57 264 -24 107 -65 305 -89 440 -90 490 -166 717 -293 876 -52 65 -87 82 -192 89 -139 10 -126 -5 -125 142 1 115 -1 134 -23 181 -30 66 -114 145 -170 160 -60 15 -120 -2 -201 -57 l-45 -31 -7 64 c-11 89 -39 148 -103 215 -71 75 -156 116 -218 106 -94 -15 -181 -74 -219 -149 l-21 -41 -11 46 c-26 100 -112 205 -208 253 -64 32 -143 35 -205 6 -57 -25 -124 -95 -155 -159 l-25 -54 -7 35 c-3 20 -24 63 -46 97 -83 129 -206 212 -314 213 -98 1 -132 -42 -166 -209 -11 -53 -22 -98 -23 -100 -2 -1 -21 22 -43 53 -81 114 -247 222 -355 231 -58 6 -59 5 -98 -33 -32 -33 -45 -58 -71 -142 -17 -56 -35 -102 -38 -102 -4 0 -13 9 -20 20 -6 11 -53 67 -103 125 -118 137 -234 236 -334 285 -88 44 -171 62 -179 39z m-3266 -7054 c9 -11 6 -23 -20 -60 -17 -25 -43 -71 -57 -101 -14 -30 -27 -54 -29 -52 -8 8 71 228 82 228 6 0 17 -7 24 -15z m-580 -241 l0 -66 -37 6 c-21 3 -62 8 -90 12 -56 6 -60 12 -47 62 5 17 14 22 38 23 17 0 49 6 71 14 65 21 65 21 65 -51z m-405 -334 c-11 -5 -27 -9 -35 -9 -13 -1 -13 0 0 9 8 5 24 9 35 9 l20 0 -20 -9z'/%3E%3C/g%3E%3C/svg%3E");
            mask-size: contain;
            mask-repeat: no-repeat;
            mask-position: center;
        }
        
        @media (max-width: 900px) {
            .about-grid { grid-template-columns: 1fr; gap: 40px; }
            .about-image { width: 150%; left: auto; transform: translateY(28px) translateX(-20%) !important; margin: 0; display: block; position: relative; }
            .about-image.visible { transform: translateY(0) translateX(-20%) !important; }
        }

        /* MAESTRO */
        .maestro-section {
            position:relative; overflow:hidden; padding:0;
            background:var(--bg);
        }
        .maestro-bg-img {
            position:absolute; inset:0;
            background:url('../img/maestro.webp') left bottom/auto 88% no-repeat;
            transition:transform .8s ease;
        }
        .maestro-section:hover .maestro-bg-img { transform:scale(1.03); }
        .maestro-overlay {
            position:absolute; inset:0;
            background:
                linear-gradient(to right,
                    rgba(33,79,54,0)    0%,
                    rgba(33,79,54,0)    28%,
                    rgba(33,79,54,.55)  50%,
                    rgba(33,79,54,.92)  68%,
                    rgba(33,79,54,.98)  80%,
                    rgba(33,79,54,.98)  100%
                ),
                linear-gradient(to bottom,
                    rgba(33,79,54,.4)   0%,
                    transparent         12%,
                    transparent         88%,
                    rgba(33,79,54,.5)   100%
                );
        }
        .maestro-section::before {
            content:''; position:absolute; top:0; left:0; right:0; height:2px;
            background:linear-gradient(to right, transparent, var(--green), var(--gold), var(--green), transparent);
            z-index:5;
        }
        .maestro-inner {
            position:relative; z-index:2;
            min-height:90vh;
            display:flex;
            align-items:center;
            justify-content:flex-end;
        }
        .maestro-text {
            display:flex; flex-direction:column; justify-content:center;
            padding:80px 60px 80px 48px;
            width:50%;
            box-sizing:border-box;
        }
        .belt-badge { display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1); padding:6px 16px; border-radius:50px; font-size:.76rem; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; color:var(--green-lt); margin-bottom:22px; width:fit-content; backdrop-filter:blur(8px); }
        .maestro-text h2 { font-size:clamp(2rem,4vw,3.2rem); font-weight:900; line-height:1.05; color:#fff; letter-spacing:-1px; margin-bottom:6px; }
        .maestro-text h2 .gold { background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
        .maestro-text .subtitle { font-size:1.05rem; font-weight:500; color:var(--green-lt); margin-bottom:24px; }
        .maestro-text p { color:rgba(255,255,255,.7); font-size:.97rem; font-weight:300; line-height:1.8; margin-bottom:14px; max-width:460px; }
        .stats-row { display:flex; gap:28px; margin:34px 0; flex-wrap:wrap; }
        .stat-item { display:flex; flex-direction:column; gap:4px; }
        .stat-value { font-size:2.2rem; font-weight:900; background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; line-height:1; }
        .stat-label { font-size:.74rem; font-weight:600; color:rgba(255,255,255,.4); letter-spacing:1.5px; text-transform:uppercase; }
        .stat-div { width:1px; background:rgba(255,255,255,.08); align-self:stretch; }
        .achievements { display:flex; flex-direction:column; gap:10px; }
        .ach-item { display:flex; align-items:center; gap:12px; padding:11px 14px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); border-radius:10px; transition:all .3s; }
        .ach-item:hover { background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.12); }
        .ach-icon { width:34px; height:34px; border-radius:8px; background:var(--grad-green); display:flex; align-items:center; justify-content:center; font-size:.95rem; color:#fff; flex-shrink:0; }
        .ach-item span { font-size:.88rem; font-weight:500; color:rgba(255,255,255,.8); }

        /* MERCHANDISING */
        .merch-section { background: rgba(0,0,0,0.3); }
        .merch-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; margin-bottom: 50px; }
        .merch-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 20px; overflow: hidden; transition: transform .4s, box-shadow .4s, border-color .4s; }
        .merch-card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,.35), 0 0 15px rgba(255,215,0,0.1); border-color: rgba(255,255,255,.2); }
        .merch-img-wrap { width: 100%; overflow: hidden; position: relative; }
        .merch-img-wrap img { width: 100%; height: auto; display: block; transition: transform 0.6s ease; }
        .merch-card:hover .merch-img-wrap img { transform: scale(1.08); }
        .merch-body { padding: 24px; text-align: center; }
        .merch-body h3 { font-size: 1.35rem; font-weight: 800; color: #fff; margin-bottom: 8px; }
        .merch-text { font-size: 0.95rem; color: rgba(255,255,255,.6); font-weight: 300; line-height: 1.6; }
        .merch-cta { text-align: center; padding-top: 20px; }
        .merch-cta p { font-size: 1.15rem; color: rgba(255,255,255,.85); margin-bottom: 24px; font-weight: 400; }
        .merch-cta .btn { display: inline-flex; align-items: center; gap: 10px; padding: 14px 32px; font-size: 1.05rem; }

        /* TESTIMONIOS */
        .testimonials-section { background: var(--bg); position: relative; padding: 100px 0 60px 0; }
        .overall-rating { display: flex; flex-direction: column; align-items: center; margin-top: 15px; }
        .overall-rating .rating-number { font-size: 3.5rem; font-weight: 800; color: #fff; line-height: 1; margin-bottom: 5px; }
        .overall-rating .stars { color: var(--gold); font-size: 1.4rem; margin-bottom: 5px; }
        .overall-rating .rating-text { color: rgba(255,255,255,0.6); font-size: 1rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; }
        .test-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; margin-top: 50px; }
        .test-card { 
            background: var(--card-bg); border: 1px solid var(--border); 
            padding: 40px 30px; border-radius: 20px; position: relative;
            transition: transform 0.3s, border-color 0.3s;
        }
        .test-card:hover { transform: translateY(-5px); border-color: rgba(255,215,0,0.3); }
        .test-card i.fa-quote-left { font-size: 2rem; color: var(--gold); opacity: 0.3; position: absolute; top: 30px; left: 30px; }
        .test-card .google-badge { position: absolute; top: 25px; right: 25px; color: rgba(255,255,255,0.3); font-size: 1.5rem; }
        .test-content { position: relative; z-index: 2; margin-top: 15px; }
        .test-text { font-size: 1.1rem; font-style: italic; color: rgba(255,255,255,0.8); line-height: 1.6; margin-bottom: 20px; }
        .test-author { display: flex; align-items: center; gap: 15px; }
        .author-info h4 { font-size: 1.1rem; color: #fff; font-weight: 600; text-transform: capitalize; }
        .author-info .stars-date { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
        .author-info .stars { color: var(--gold); font-size: 0.85rem; }
        .author-info .date { color: rgba(255,255,255,0.4); font-size: 0.85rem; }
        
        .floating-croc-wrap { position: relative; z-index: 10; pointer-events: none; width: 100%; height: 0; }
        .floating-croc {
            position: absolute;
            right: -50px; /* Ajustado un poco mas a la derecha en PC */
            bottom: -255px;
            width: 450px;
            filter: drop-shadow(0 15px 30px rgba(0,0,0,0.6));
            pointer-events: none;
        }
        @media (max-width: 900px) {
            .floating-croc { width: 320px; bottom: -149px; right: 0; }
            .testimonials-section { padding: 80px 0 200px 0 !important; }
        }

        /* HORARIO */
        .schedule-contact { position: relative; overflow: hidden; background: none; }
        .schedule-contact::before {
            content: ''; position: absolute; inset: -30px;
            background: url('../img/gym.webp') center/cover no-repeat;
            filter: blur(8px); z-index: 1;
        }
        .schedule-contact::after {
            content: ''; position: absolute; inset: -30px;
            background: rgba(5, 14, 8, 0.75);
            z-index: 2;
        }
        .schedule-contact .container { position: relative; z-index: 3; }
        .schedule-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:22px; margin-top:50px; }
        .glass-card { background:var(--card-bg); border:1px solid var(--border); border-radius:20px; padding:30px; transition:border-color .3s,box-shadow .3s; }
        .glass-card:hover { border-color:rgba(255,255,255,.2); box-shadow:0 20px 40px rgba(0,0,0,.25), 0 0 15px rgba(92, 191, 133, 0.15); }
        .glass-card h3 { font-size:1.2rem; font-weight:700; color:#fff; margin-bottom:22px; display:flex; align-items:center; gap:10px; }
        .glass-card h3 i { color:var(--green-lt); font-size:1rem; }
        .sched-table { width:100%; border-collapse:collapse; }
        .sched-table th { text-align:left; padding:9px 11px; font-size:.72rem; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,.4); border-bottom:1px solid var(--border); }
        .sched-table td { padding:11px 11px; font-size:.88rem; color:rgba(255,255,255,.7); border-bottom:1px solid rgba(255,255,255,.04); transition:all .2s; }
        .sched-table tr:last-child td { border-bottom:none; }
        .sched-table tbody tr:hover td { background:rgba(255,255,255,.04); color:#fff; }
        .sched-table .day { font-weight:600; color:rgba(255,255,255,.9); }
        .cbadge { display:inline-block; padding:3px 9px; border-radius:20px; font-size:.72rem; font-weight:600; background:rgba(58,140,92,.15); color:var(--green-lt); border:1px solid rgba(92,191,133,.2); }
        .sched-block { display:inline-block; white-space:nowrap; }
        .sched-separator { display:inline; }
        .contact-list { display:flex; flex-direction:column; gap:12px; }
        .contact-row { display:flex; align-items:center; gap:13px; padding:11px 13px; border-radius:11px; transition:background .25s; text-decoration:none; }
        .contact-row:hover { background:rgba(255,255,255,.04); }
        .c-icon { width:40px; height:40px; border-radius:10px; background:var(--grad-green); display:flex; align-items:center; justify-content:center; font-size:.95rem; color:#fff; flex-shrink:0; }
        .c-txt p:first-child { font-size:.72rem; font-weight:600; color:rgba(255,255,255,.4); letter-spacing:1px; text-transform:uppercase; }
        .c-txt p:last-child { font-size:.92rem; color:rgba(255,255,255,.8); font-weight:500; }
        .ig-btn { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:11px 28px; border-radius:50px; background:#fff; border:none; cursor:pointer; text-decoration:none; overflow:hidden; transition:transform .3s,box-shadow .3s; width:100%; margin-top:6px; }
        .ig-btn::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%); opacity:0; transition:opacity .4s; }
        .ig-btn:hover::before { opacity:1; }
        .ig-btn:hover { transform:translateY(-3px); box-shadow:0 12px 32px rgba(214,36,159,.3); }
        .ig-btn span { position:relative; z-index:1; font-weight:700; font-size:.88rem; color:#000; transition:color .3s; font-family:'Outfit',sans-serif; }
        .ig-btn:hover span { color:#fff; }
        .ig-btn i { position:relative; z-index:1; font-size:1.15rem; color:#C13584; transition:color .3s; }
        .ig-btn:hover i { color:#fff; }

        /* FOOTER */
        footer { background:rgba(0,0,0,0.5); padding:50px 0 24px; border-top:1px solid var(--border); }
        .footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; gap:40px; margin-bottom:38px; }
        .footer-logo { height: 120px; width: auto; margin-bottom: 15px; display: block; filter: drop-shadow(0 0 15px rgba(92, 191, 133, 0.3)); }
        .footer-brand p { color:rgba(255,255,255,.4); font-size:.88rem; line-height:1.7; max-width:280px; }
        .footer-col h4 { font-size:.74rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--green-lt); margin-bottom:16px; }
        .footer-col a, .footer-col p { display:block; color:rgba(255,255,255,.4); font-size:.88rem; text-decoration:none; margin-bottom:9px; transition:color .25s; }
        .footer-col a:hover { color:#fff; }
        .footer-bottom { border-top:1px solid var(--border); padding-top:22px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
        .footer-bottom p { color:rgba(255,255,255,.2); font-size:.82rem; }

        /* ANIMATIONS */
        .fade-up { opacity:0; transform:translateY(28px); transition:opacity .7s ease,transform .7s ease; }
        .fade-up.visible { opacity:1; transform:translateY(0); }


        /* â”€â”€â”€ CINEMATIC ART CARDS ANIMATION â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

        /* Override fade-up para art-cards: la secciÃ³n ya gestiona su animaciÃ³n */
        .martial-arts .art-card.fade-up           { opacity:1; transform:none; transition:none; }
        .martial-arts .art-card.fade-up.visible   { opacity:1; transform:none; }

        /* Estado inicial: fighter fuera del frame, texto oculto */
        .art-card.art-anim-init[data-dir="left"] .art-img  { transform:translateX(-105%); opacity:0; transition:none; }
        .art-card.art-anim-init[data-dir="right"] .art-img { transform:translateX(105%);  opacity:0; transition:none; }
        .art-card.art-anim-init .art-body                  { opacity:0; transform:translateY(16px); transition:none; }

        /* Fighter entra */
        .art-card.art-fighter-in .art-img {
            transform: translateX(0);
            opacity: 1;
            transition:
                transform 1.1s cubic-bezier(0.16, 1, 0.3, 1),
                opacity   1.0s ease-out;
        }

        /* Texto aparece */
        .art-card.art-text-in .art-body {
            opacity: 1;
            transform: translateY(0);
            transition:
                opacity   0.85s ease-out,
                transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
        }

        /* Aseguramos que hover-scale del art-img no interfiera post-animaciÃ³n */
        .art-card.art-fighter-in:hover .art-img,
        .art-card.art-text-in:hover .art-img {
            transform: scale(1.08);
        }
        /* RESPONSIVE */
        @media (max-width:900px) {
            header { justify-content: flex-end; }
            .menu-toggle { display:flex; }
            nav ul { position:absolute; top:70px; left:0; right:0; flex-direction:column; background:rgba(33,79,54,.98); backdrop-filter:blur(20px); padding:18px 5% 26px; border-bottom:1px solid var(--border); gap:3px; display:none; }
            nav ul.show { display:flex; }
            nav ul li a { padding:11px 14px; font-size:.95rem; }
            
            .maestro-inner { min-height:auto; flex-direction:column; justify-content:flex-end; }
            .maestro-bg-img { background:url('../img/maestro.webp') center top/cover no-repeat; }
            .maestro-overlay { background:linear-gradient(to bottom,rgba(33,79,54,0) 0%,rgba(33,79,54,0) 35%,rgba(33,79,54,.72) 60%,rgba(33,79,54,.97) 80%,rgba(33,79,54,1) 100%); }
            .maestro-section { min-height:120vw; }
            .maestro-text { width:100%; padding:50vw 6% 60px; }
            .footer-grid { grid-template-columns:1fr 1fr; }
            .footer-brand { grid-column:1/-1; }
        }
        @media (max-width:600px) {
            .arts-grid { grid-template-columns:1fr 1fr; }
            .art-card { height:230px; }
            .stats-row { gap:18px; }
            .stat-value { font-size:1.7rem; }
            .brothers-grid { grid-template-columns:1fr; }
            .footer-grid { grid-template-columns:1fr; }
            .footer-bottom { flex-direction:column; text-align:center; }
            
            .sched-block { display:block; margin-bottom:6px; }
            .sched-block:last-child { margin-bottom:0; }
            .sched-separator { display:none; }
        }
        @media (max-width:380px) {
            .arts-grid { grid-template-columns:1fr; }
        }
        
        /* SPONSOR MODAL */
        .sponsor-modal {
            display: none; /* Oculto por defecto, se muestra con JS */
            position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%;
            background-color: rgba(0, 0, 0, 0.85); backdrop-filter: blur(5px);
            align-items: center; justify-content: center;
            opacity: 0; transition: opacity 0.4s ease;
        }
        .sponsor-modal.show {
            display: flex; opacity: 1;
        }
        .sponsor-modal-content {
            background: var(--bg); border: 2px solid var(--gold); border-radius: 15px;
            padding: 40px; max-width: 500px; width: 90%; text-align: center;
            position: relative; box-shadow: 0 10px 40px rgba(255,215,0,0.25);
            transform: scale(0.8); transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }
        .sponsor-modal.show .sponsor-modal-content { transform: scale(1); }
        .sponsor-close {
            position: absolute; top: 15px; right: 20px; font-size: 28px;
            color: rgba(255,255,255,0.5); background: none; border: none; cursor: pointer;
            transition: color 0.2s; line-height: 1;
        }
        .sponsor-close:hover { color: #fff; }
        .sponsor-badge {
            display: inline-block; background: rgba(255,215,0,0.15); color: var(--gold);
            padding: 6px 14px; border-radius: 30px; font-size: 0.8rem; font-weight: 700;
            letter-spacing: 1px; margin-bottom: 20px; border: 1px solid rgba(255,215,0,0.3);
        }
        .sponsor-modal-content h2 { font-size: 2rem; font-weight: 800; line-height: 1.2; margin-bottom: 15px; color: #fff; }
        .sponsor-modal-content p { color: rgba(255,255,255,0.7); font-size: 1.05rem; margin-bottom: 30px; line-height: 1.6; }
        .sponsor-modal-content .btn { width: 100%; justify-content: center; font-size: 1.1rem; padding: 15px; }
