        body {
            box-sizing: border-box;
        }
        
        @import url('https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;600;700;800&display=swap');
        
        * {
            font-family: 'Nunito', sans-serif;
        }
        
        .gradient-bg {
            background: linear-gradient(135deg, #fff7ed 0%, #fef3c7 30%, #ecfdf5 70%, #f0f9ff 100%);
            animation: gradientShift 15s ease infinite;
        }
        
        @keyframes gradientShift {
            0%, 100% { background: linear-gradient(135deg, #fff7ed 0%, #fef3c7 30%, #ecfdf5 70%, #f0f9ff 100%); }
            25% { background: linear-gradient(135deg, #ecfdf5 0%, #fff7ed 30%, #fef3c7 70%, #f0f9ff 100%); }
            50% { background: linear-gradient(135deg, #f0f9ff 0%, #ecfdf5 30%, #fff7ed 70%, #fef3c7 100%); }
            75% { background: linear-gradient(135deg, #fef3c7 0%, #f0f9ff 30%, #ecfdf5 70%, #fff7ed 100%); }
        }
        
        .bubble {
            position: absolute;
            border-radius: 50%;
            background: linear-gradient(45deg, rgba(251, 146, 60, 0.3), rgba(34, 197, 94, 0.3));
            animation: float 6s ease-in-out infinite;
        }
        
        @keyframes float {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(180deg); }
        }
        
        @keyframes sparkle {
            0%, 100% { opacity: 0; transform: scale(0); }
            50% { opacity: 1; transform: scale(1); }
        }
        
        .sparkle {
            position: absolute;
            width: 4px;
            height: 4px;
            background: #f59e0b;
            border-radius: 50%;
            animation: sparkle 2s infinite;
        }
        
        .fade-in {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease;
        }
        
        .fade-in.visible {
            opacity: 1;
            transform: translateY(0);
        }
        
        .glow-hover {
            transition: all 0.3s ease;
        }
        
        .glow-hover:hover {
            box-shadow: 0 10px 30px rgba(251, 146, 60, 0.3);
            transform: translateY(-2px);
        }
        
        .service-card {
            background: linear-gradient(145deg, #ffffff, #f8f9fa);
            border: 1px solid rgba(0, 188, 212, 0.1);
            transition: all 0.4s ease;
        }
        
        .service-card:hover {
            background: linear-gradient(145deg, #ffffff, #fef3c7);
            border-color: #f59e0b;
            transform: translateY(-5px);
            box-shadow: 0 15px 40px rgba(251, 146, 60, 0.2);
        }
        
        .hero-animation {
            animation: heroFloat 4s ease-in-out infinite;
        }
        
        @keyframes heroFloat {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-10px); }
        }
        
        .page-transition {
            opacity: 0;
            transform: translateX(100px);
            transition: all 0.5s ease;
        }
        
        .page-transition.active {
            opacity: 1;
            transform: translateX(0);
        }
        
        .mobile-menu {
            transform: translateX(100%);
            transition: transform 0.3s ease;
        }
        
        .mobile-menu.open {
            transform: translateX(0);
        }
        
        .testimonial-slider {
            overflow: hidden;
        }
        
        .testimonial-track {
            display: flex;
            transition: transform 0.5s ease;
        }
        
        .pricing-toggle {
            background: linear-gradient(45deg, #00bcd4, #4caf50);
        }
        
        .login-modal {
            backdrop-filter: blur(10px);
            background: rgba(255, 255, 255, 0.95);
        }
        
        .welcome-animation {
            animation: welcomeBounce 0.8s ease;
        }
        
        @keyframes welcomeBounce {
            0% { transform: scale(0.3) rotate(-10deg); opacity: 0; }
            50% { transform: scale(1.1) rotate(5deg); }
            100% { transform: scale(1) rotate(0deg); opacity: 1; }
        }
        
        .gallery-image {
            transition: all 0.4s ease;
            cursor: pointer;
            position: relative;
            overflow: hidden;
        }
        
        .gallery-image:hover {
            transform: scale(1.05) rotate(1deg);
            box-shadow: 0 20px 40px rgba(251, 146, 60, 0.3);
        }
        
        .gallery-image::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.3), transparent);
            transform: rotate(45deg);
            transition: all 0.6s ease;
            opacity: 0;
        }
        
        .gallery-image:hover::before {
            animation: shine 0.6s ease-in-out;
        }
        
        @keyframes shine {
            0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); opacity: 0; }
            50% { opacity: 1; }
            100% { transform: translateX(100%) translateY(100%) rotate(45deg); opacity: 0; }
        }
        
        .gallery-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 2rem;
        }
        
        .gallery-item {
            animation: galleryFloat 6s ease-in-out infinite;
        }
        
        .gallery-item:nth-child(2n) {
            animation-delay: -2s;
        }
        
        .gallery-item:nth-child(3n) {
            animation-delay: -4s;
        }
        
        @keyframes galleryFloat {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-10px); }
        }
        
        .before-after-slider {
            position: relative;
            overflow: hidden;
            border-radius: 12px;
        }
        
        .before-after-slider::after {
            content: '↔️ Drag to compare';
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background: rgba(0, 0, 0, 0.7);
            color: white;
            padding: 8px 16px;
            border-radius: 20px;
            font-size: 12px;
            opacity: 0;
            transition: opacity 0.3s ease;
        }
        
        .before-after-slider:hover::after {
            opacity: 1;
        }
        
        .newsletter-input:focus {
            box-shadow: 0 0 20px rgba(251, 146, 60, 0.3);
        }
        
        .social-icon {
            transition: all 0.3s ease;
        }
        
        .social-icon:hover {
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(251, 146, 60, 0.4);
        }