
        :root {
            --primary-color: #5d2f77;
            --secondary-color: #0070a8;
            --accent-color: #665ba6;
            --text-dark: #2C2C2C;
            --text-light: #6B6B6B;
            --bg-light: #FEFEFE;
            --bg-section: #F9F7F4;
        }

        * {
            scroll-behavior: smooth;
        }

        body {
            font-family: "Michroma", sans-serif;
            font-weight: 100;
            font-style: normal;
            overflow-x: hidden;
        }

        /* Navigation styles */
        #navbar {
            position: fixed;
            top: 0;
            width: 100%;
            background-color: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(10px);
            z-index: 50;
            transition: all 0.3s;
        }
        
        .nav-container {
            max-width: 80rem;
            margin: 0 auto;
            padding: 0 1rem;
        }
        
        @media (min-width: 640px) {
            .nav-container {
                padding: 0 1.5rem;
            }
        }
        
        @media (min-width: 1024px) {
            .nav-container {
                padding: 0 2rem;
            }
        }
        
        .nav-inner {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 0.5rem 0;
        }
        
        .logo {
            width: 70px;
            height: auto;
        }
        
        .desktop-menu {
            display: none;
        }
        
        @media (min-width: 768px) {
            .desktop-menu {
                display: flex;
                gap: 2rem;
            }
        }
        
        .desktop-menu a {
            color: inherit;
            text-decoration: none;
            transition: color 0.3s;
        }
        
        .desktop-menu a:hover {
            color: #2563eb; /* blue-600 */
        }
        
        #menu-toggle {
            background: none;
            border: none;
            cursor: pointer;
            padding: 0.5rem;
            display: block;
        }
        
        @media (min-width: 768px) {
            #menu-toggle {
                display: none;
            }
        }
        
        #mobile-menu {
            display: none;
            background-color: white;
            border-top: 1px solid #e5e7eb;
        }
        
        #mobile-menu.active {
            display: block;
        }
        
        .mobile-menu-inner {
            padding: 0.5rem 1rem;
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }
        
        .mobile-menu-inner a {
            display: block;
            padding: 0.5rem 0;
            text-decoration: none;
            color: inherit;
            transition: color 0.3s;
        }
        
        .mobile-menu-inner a:hover {
            color: #d97706; /* yellow-600 */
        }
        
        .mobile-menu-inner a.tarifario:hover {
            color: #2563eb; /* blue-600 */
        } 

        /* ----------------- */


        @keyframes grain-move {
            0% { transform: translate(0, 0); }
            100% { transform: translate(-100px, -100px); }
        }

        .floating {
            animation: float 6s ease-in-out infinite;
        }

        @keyframes float {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-20px); }
        }

        .slide-up {
            animation: slideUp 1s ease-out forwards;
            opacity: 0;
            transform: translateY(50px);
        }

        @keyframes slideUp {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .fade-in {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease-out;
        }

        .fade-in.visible {
            opacity: 1;
            transform: translateY(0);
        }

        .card-hover {
            transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        }

        .card-hover:hover {
            transform: translateY(-15px) scale(1.02);
            box-shadow: 0 25px 50px rgba(139, 115, 85, 0.3);
        }

        .parallax {
            transform: translateZ(0);
            will-change: transform;
        }

        .portfolio-item {
            transition: all 0.4s ease;
            overflow: hidden;
        }

        .portfolio-item:hover {
            transform: scale(1.05);
        }

        .portfolio-item img {
            transition: all 0.4s ease;
        }

        .portfolio-item:hover img {
            transform: scale(1.1);
        }

        .botones-web-portfolio{
            display: inline-block;
            padding: 2px 24px;
            margin: 10px 0;
            background-color: #7722ff;
            color: white;
            text-decoration: none;
            border-radius: 4px;
            font-weight: bold;
            transition: all 0.3s ease;
        }
        .botones-web-portfolio:hover {
            background-color: #1972e6;
            transform: translateY(-2px);
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        }

        
       

        .slider-container {
            position: relative;
            overflow: hidden;
        }

        .slider-track {
            display: flex;
            transition: transform 0.5s ease;
        }

        .slider-item {
            min-width: 100%;
            position: relative;
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.05); }
        }

        .pulse-hover:hover {
            animation: pulse 1s infinite;
        }

        .text-gradient {
            background: linear-gradient(45deg, var(--primary-color), var(--accent-color));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .section-divider {
            height: 2px;
            background: linear-gradient(90deg, transparent, var(--accent-color), transparent);
            margin: 4rem 0;
        }

    

        /* Estilos generales del botón */
        .whatsapp-float {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 60px;
            height: 60px;
            background-color: #25D366;
            color: #FFF;
            border-radius: 50%;
            text-align: center;
            font-size: 30px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
            z-index: 100;
            display: flex;
            justify-content: center;
            align-items: center;
            text-decoration: none;
            transition: all 0.3s ease;
            animation: float 3s ease-in-out infinite;
        }
        
        /* Animación de flotación */
        @keyframes float {
            0% { transform: translateY(0px); }
            50% { transform: translateY(-10px); }
            100% { transform: translateY(0px); }
        }
        
        /* Estilos para el mensaje emergente */
        .whatsapp-message {
            position: fixed;
            bottom: 100px;
            right: 30px;
            background-color: #075E54;
            color: white;
            padding: 10px 15px;
            border-radius: 10px;
            font-size: 14px;
            max-width: 200px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
            opacity: 0;
            transition: opacity 0.5s ease;
            z-index: 99;
        }
        
        .whatsapp-message:after {
            content: '';
            position: absolute;
            bottom: -10px;
            right: 20px;
            border-width: 10px 10px 0;
            border-style: solid;
            border-color: #075E54 transparent;
        }
        
        /* Efecto hover para el botón */
        .whatsapp-float:hover {
            background-color: #128C7E;
            transform: scale(1.1);
            animation: none;
        }
        
        /* Responsive para pantallas pequeñas */
        @media (max-width: 768px) {
            .whatsapp-float {
                width: 50px;
                height: 50px;
                font-size: 25px;
                bottom: 20px;
                right: 20px;
            }
            
            .whatsapp-message {
                bottom: 80px;
                right: 20px;
                max-width: 160px;
                font-size: 12px;
            }
        }