
        body {
            text-rendering: optimizeLegibility;
            -webkit-font-smoothing: antialiased;
        }

        /* Menu */
        :root {
        --nav-height: 88px;
        }

        #mobile-menu {
            top: var(--nav-height);
        }

        #mobile-menu.is-open {
            pointer-events: auto;
        }

        #mobile-menu .menu-backdrop {
            opacity: 0;
            transition: opacity .45s ease;
        }

        #mobile-menu .menu-panel {
            opacity: 0;
            transform: translateY(-20px) scale(.985);
            transform-origin: top center;
            transition:
                transform .5s cubic-bezier(.22, 1, .36, 1),
                opacity .35s ease;
        }

        #mobile-menu.is-open .menu-backdrop {
            opacity: 1;
        }

        #mobile-menu.is-open .menu-panel {
            opacity: 1;
            transform: translateY(0) scale(1);
        }

        [data-mobile-item] {
            opacity: 0;
            transform: translateY(12px);
            transition:
                opacity .42s ease,
                transform .42s cubic-bezier(.22, 1, .36, 1);
        }

        #mobile-menu.is-open [data-mobile-item] {
            opacity: 1;
            transform: translateY(0);
        }

        #mobile-areas-extra {
            max-height: 0;
            opacity: 0;
            overflow: hidden;
            transition:
                max-height .45s cubic-bezier(.22, 1, .36, 1),
                opacity .3s ease,
                margin .45s ease;
        }

        #mobile-areas-extra.is-expanded {
            opacity: 1;
            margin-top: .75rem;
        }

        #mobile-areas-chevron {
            transition: transform .35s ease;
        }

        #mobile-areas-toggle.is-expanded #mobile-areas-chevron {
            transform: rotate(180deg);
        }

        @media (prefers-reduced-motion: reduce) {
            #mobile-menu .menu-backdrop,
            #mobile-menu .menu-panel,
            [data-mobile-item],
            #mobile-areas-extra,
            #mobile-areas-chevron,
            #icon-menu,
            #icon-close {
                transition: none !important;
            }
        }

        /* Utility Class para retrasos de animación */
        .delay-100 { transition-delay: 100ms; animation-delay: 100ms; }
        .delay-200 { transition-delay: 200ms; animation-delay: 200ms; }
        .delay-300 { transition-delay: 300ms; animation-delay: 300ms; }
        .delay-500 { transition-delay: 500ms; animation-delay: 500ms; }

        /* Clases para Intersection Observer */
        .reveal {
            opacity: 0;
            transform: translateY(40px);
            transition: all 1s cubic-bezier(0.16, 1, 0.3, 1);
        }
        
        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }

        /* Staggered children reveal */
        .reveal-group .reveal-child {
            opacity: 0;
            transform: translateY(20px);
            transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        }
        
        .reveal-group.active .reveal-child {
            opacity: 1;
            transform: translateY(0);
        }
        
        .reveal-group.active .reveal-child:nth-child(1) { transition-delay: 0.1s; }
        .reveal-group.active .reveal-child:nth-child(2) { transition-delay: 0.2s; }
        .reveal-group.active .reveal-child:nth-child(3) { transition-delay: 0.3s; }
        .reveal-group.active .reveal-child:nth-child(4) { transition-delay: 0.4s; }

        /* Dropdown refinado */
        .dropdown-menu {
            opacity: 0;
            visibility: hidden;
            transform: translateY(15px) translateX(-50%);
            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        
        .group:hover .dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translateY(0) translateX(-50%);
        }

        .glass-nav {
            background: rgba(255, 255, 255, 0.85);
            backdrop-filter: blur(12px);
            border-bottom: 1px solid rgba(0,0,0,0.03);
        }
        
        /* Efecto de línea suave en links */
        .link-underline {
            position: relative;
        }
        .link-underline::after {
            content: '';
            position: absolute;
            width: 0;
            height: 1px;
            bottom: -2px;
            left: 0;
            background-color: #0F172A;
            transition: width 0.3s ease;
        }
        .link-underline:hover::after {
            width: 100%;
        }

        /* Estilo para imágenes oscuras con texto */
        .image-overlay-gradient {
            background: linear-gradient(to top, rgba(15, 23, 42, 0.9) 0%, rgba(15, 23, 42, 0.4) 50%, rgba(15, 23, 42, 0.2) 100%);
        }

        /* Equipo home */
        .somos{
            position: absolute;
            bottom: 0;
            background-color: rgba(15,23,42,0.8);
            width: 92%;
            padding: 20px;
        }
        .kitD{
            position: relative;
        }
        .kitD img {
            position: absolute;
            top: -60px;
            right: 6%;
        }

        /*cards equipo */
        [x-cloak] { display: none !important; }
        /* Suavizado extra para las transiciones de las tarjetas de equipo */
        .team-card-overlay {
            transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
        }
   