 body {
            font-family: 'Inter', sans-serif;
            color: #3c4043; /* Google's dark grey for text */
            overflow-x: hidden; /* Prevent horizontal scroll from animations */
        }
        /* Custom colors based on Google's palette */
        .bg-google-blue { background-color: #4285F4; }
        .text-google-blue { color: #4285F4; }
        .bg-google-red { background-color: #EA4335; }
        .text-google-red { color: #EA4335; }
        .bg-google-yellow { background-color: #FBBC04; }
        .text-google-yellow { color: #FBBC04; }
        .bg-google-green { background-color: #34A853; }
        .text-google-green { color: #34A853; }

        /* Enhanced Button Styles */
        .btn-primary {
            @apply bg-google-blue text-white font-bold py-3 px-10 rounded-full shadow-xl hover:bg-blue-700 transition duration-300 ease-in-out transform hover:-translate-y-1 hover:scale-105;
        }
        .btn-secondary {
            @apply border-2 border-google-blue text-google-blue font-bold py-3 px-10 rounded-full hover:bg-blue-50 transition duration-300 ease-in-out transform hover:-translate-y-1 hover:scale-105;
        }
        .section-heading {
            /* Increased font size for impact, added more tracking and leading for interlineado */
            @apply text-7xl md:text-8xl font-black text-center mb-20 uppercase tracking-wide leading-tight;
        }
        .sub-heading {
            @apply text-2xl md:text-3xl font-bold text-center mb-12 text-gray-700;
        }
        /* Enhanced Card Styles */
        .card {
            @apply bg-white p-10 rounded-3xl shadow-xl hover:shadow-2xl transition-all duration-300 ease-in-out transform hover:-translate-y-2 border-t-4; /* Added border-t-4 for color accents */
        }
        /* Accordion styles for FAQ */
        .accordion-item {
            border-bottom: 1px solid #e0e0e0;
        }
        .accordion-header {
            @apply flex justify-between items-center py-5 cursor-pointer text-xl font-semibold text-gray-700 hover:text-google-blue;
        }
        .accordion-content {
            @apply px-4 pb-5 text-xl text-gray-600 hidden;
        }
        .accordion-header svg {
            transition: transform 0.3s ease;
        }
        .accordion-header.active svg {
            transform: rotate(180deg);
        }
        /* Loading spinner */
        .spinner {
            border: 4px solid rgba(0, 0, 0, 0.1);
            border-left-color: #4285F4;
            border-radius: 50%;
            width: 30px;
            height: 30px;
            animation: spin 1s linear infinite;
            display: none; /* Hidden by default */
        }
        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }
        /* WhatsApp button specific style */
        .btn-whatsapp {
            @apply bg-google-green text-white font-bold py-4 md:py-5 px-10 md:px-14 rounded-full shadow-xl hover:bg-green-700 transition duration-300 ease-in-out text-xl md:text-2xl flex items-center justify-center transform hover:-translate-y-1 hover:scale-105;
        }
        .btn-whatsapp svg {
            margin-right: 12px; /* Increased margin for icon */
        }

        /* Blob animation for Hero Section */
        @keyframes blob {
            0% { transform: translate(0px, 0px) scale(1); }
            33% { transform: translate(40px, -60px) scale(1.15); }
            66% { transform: translate(-30px, 30px) scale(0.95); }
            100% { transform: translate(0px, 0px) scale(1); }
        }
        .animate-blob {
            animation: blob 8s infinite cubic-bezier(0.6, 0.01, 0.3, 0.9);
        }
        .animation-delay-2000 { animation-delay: 2s; }
        .animation-delay-4000 { animation-delay: 4s; }

        /* Fade-in-up animation */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        .animate-fade-in-up {
            animation: fadeInUp 1s ease-out forwards;
        }
        .delay-100 { animation-delay: 0.1s; }
        .delay-200 { animation-delay: 0.2s; }
        .delay-300 { animation-delay: 0.3s; }

        /* Background gradient animation for Hero */
        @keyframes gradient-animation {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }
        .animated-gradient {
            background-size: 200% 200%;
            animation: gradient-animation 10s ease infinite;
        }