body {
            font-family: 'Cairo', sans-serif;
            background-color: #f8fafc;
            color: #0f172a;
        }
        /* Custom Interactive Cursor (Light Theme) */
        .cursor-glow {
            pointer-events: none;
            position: fixed;
            top: 0; left: 0;
            width: 40px; height: 40px;
            background: rgba(14, 165, 233, 0.15);
            border: 2px solid rgba(14, 165, 233, 0.5);
            border-radius: 50%;
            transform: translate(-50%, -50%);
            z-index: 9999;
            will-change: transform, width, height, background-color;
            transition: width 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), height 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.3s ease;
        }
        .cursor-glow.active {
            width: 70px; height: 70px;
            background: rgba(168, 85, 247, 0.15);
            border-color: rgba(168, 85, 247, 0.5);
        }
        /* Unified Premium Card Design (Standard Plan Cards) */
        .premium-card {
            background: #ffffff !important;
            border: 1px solid rgba(226, 232, 240, 0.8) !important;
            box-shadow: 0 15px 30px -15px rgba(15, 23, 42, 0.06) !important;
            transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
            position: relative;
            transform-style: preserve-3d;
            perspective: 1000px;
        }
        .premium-card:hover {
            border-color: rgba(37, 99, 235, 0.2) !important;
            box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.12) !important;
            transform: translateY(-8px) scale(1.02) rotateX(3deg) rotateY(-1deg) !important;
        }
        /* Show-stopping Featured / "Most Demanded" Card (Featured Glowing Dark) */
        .featured-card {
            background: linear-gradient(135deg, #0f172a 0%, #020617 100%) !important;
            color: #ffffff !important;
            border: 1px solid rgba(59, 130, 246, 0.4) !important;
            box-shadow: 0 20px 50px -12px rgba(37, 99, 235, 0.25) !important;
            transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
            position: relative;
            transform-style: preserve-3d;
            perspective: 1000px;
        }
        .featured-card:hover {
            border-color: rgba(59, 130, 246, 0.8) !important;
            box-shadow: 0 30px 60px -12px rgba(37, 99, 235, 0.4) !important;
            transform: translateY(-12px) scale(1.03) rotateX(4deg) rotateY(-1deg) !important;
        }
        /* Floating Cart Widget Styles */
        .floating-cart-container {
            position: fixed !important;
            bottom: 24px !important;
            right: 24px !important;
            z-index: 9999 !important;
            transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
        }
        .floating-cart-btn {
            position: relative !important;
            width: 64px !important;
            height: 64px !important;
            background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
            color: #ffffff !important;
            border-radius: 9999px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            box-shadow: 0 10px 30px rgba(37, 99, 235, 0.36) !important;
            transition: all 0.3s ease !important;
            border: none !important;
            cursor: pointer !important;
        }
        .floating-cart-btn:hover {
            transform: scale(1.05) !important;
            box-shadow: 0 15px 40px rgba(37, 99, 235, 0.48) !important;
        }
        .floating-cart-badge {
            position: absolute !important;
            top: -4px !important;
            right: -4px !important;
            background-color: #ef4444 !important;
            color: #ffffff !important;
            font-size: 10px !important;
            font-weight: 900 !important;
            width: 24px !important;
            height: 24px !important;
            border-radius: 50% !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            border: 2px solid #ffffff !important;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1) !important;
            transition: all 0.3s ease !important;
        }

        /* Toast notification positioning */
        .toast-active {
            transform: translateY(0);
            opacity: 1;
        }
        .bg-grid-accent {
            background-color: #f8fafc;
            background-image: 
                radial-gradient(rgba(37, 99, 235, 0.04) 1.5px, transparent 1.5px),
                radial-gradient(rgba(6, 182, 212, 0.03) 1.5px, transparent 1.5px);
            background-size: 40px 40px;
            background-position: 0 0, 20px 20px;
            position: relative;
        }
        @keyframes float {
            0%, 100% { transform: translateY(0) scale(1); }
            50% { transform: translateY(-25px) scale(1.06); }
        }
        .animate-float {
            animation: float 8s ease-in-out infinite;
        }
        .animate-float-delayed {
            animation: float 8s ease-in-out infinite;
            animation-delay: 4s;
        }
        /* Marquee horizontal infinite scroll animations */
        @keyframes marquee-forward {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }
        @keyframes marquee-reverse {
            0% { transform: translateX(-50%); }
            100% { transform: translateX(0); }
        }
        .animate-marquee-forward {
            display: flex;
            width: max-content;
            animation: marquee-forward 60s linear infinite;
        }
        .animate-marquee-reverse {
            display: flex;
            width: max-content;
            animation: marquee-reverse 60s linear infinite;
        }
        .animate-marquee-forward:hover,
        .animate-marquee-reverse:hover {
            animation-play-state: paused;
        }
        /* Mask gradient for smooth left/right fading of review cards */
        .mask-gradient {
            mask-image: linear-gradient(to right, transparent, black 15%, black 85%, transparent);
            -webkit-mask-image: linear-gradient(to right, transparent, black 15%, black 85%, transparent);
        }
    
        /* Animated Background Waves for Light Sections */
        @keyframes wave-slide-1 {
            0% { transform: scaleY(-1) translateX(0); }
            100% { transform: scaleY(-1) translateX(-50%); }
        }
        @keyframes wave-slide-2 {
            0% { transform: scaleY(-1) translateX(-25%); }
            100% { transform: scaleY(-1) translateX(-75%); }
        }
        .bg-wave-wrapper {
            position: absolute;
            inset: 0;
            z-index: 0;
            pointer-events: none;
            overflow: hidden;
        }
        .bg-wave-inner {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 200%;
            height: 120px;
            background-repeat: repeat-x;
            background-size: 50% 100%;
            transform-origin: center bottom;
        }
        .bg-wave-1 {
            background-image: url('data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTIwMCAxMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+PHBhdGggZD0iTTAsMFY0Ni4yOWM0Ny43OSwyMi4yLDEwMy41OSwzMi4xNywxNTgsMjgsNzAuMzYtNS4zNywxMzYuMzMtMzMuMzEsMjA2LjgtMzcuNUM0MzguNjQsMzIuNDMsNTEyLjM0LDUzLjY3LDU4Myw3Mi4wNWM2OS4yNywxOCwxMzguMywyNC44OCwyMDkuNCwxMy4wOCwzNi4xNS02LDY5Ljg1LTE3Ljg0LDEwNC40NS0yOS4zNEM5ODkuNDksMjUsMTExMy0xNC4yOSwxMjAwLDUyLjQ3VjBaIiBvcGFjaXR5PSIuMjUiIGZpbGw9IiMzYjgyZjYiLz48cGF0aCBkPSJNMCwwVjE1LjgxQzEzLDM2LjkyLDI3LjY0LDU2Ljg2LDQ3LjY5LDcyLjA1YzI0LjQsMTguNSw1Mi41NiwyOC4xNCw4Mi44LDMyLjksMjguNyw0LjUsNTguNywxLjUsODguNC0xLjksMzIuOS0zLjgsNjUuNi05LjYsOTguNi0xMS45LDY0LjItNC41LDEyOC41LDguOCwxOTEuMSwyNC40LDYyLjEsMTUuNSwxMjQuNywyOC42LDE4OS41LDIzLjMsMzEtMi41LDYxLjktOC40LDkyLjUtMTYuMSwzMC4zLTcuNiw2MC42LTE2LjgsOTEuOC0yMiw2MS45LTEwLjQsMTI3LDEsMTg1LjMsMjUuOFYwWiIgb3BhY2l0eT0iLjUiIGZpbGw9IiMzYjgyZjYiLz48cGF0aCBkPSJNMCwwVjUuNjNDMTQ5LjkzLDU5LDMxNC4wOSw3MS4zMiw0NzUuODMsNDIuNTdjNDMtNy42NCw4NC4yMy0yMC4xMiwxMjcuNjEtMjYuNDYsNTktOC42MywxMTIuNDgsMTIuMjQsMTY1LjU2LDM1LjRDODI3LjkzLDc3LjIyLDg4Niw5NS4yNCw5NTEuMiw5MGM4Ni41My03LDE3Mi40Ni00NS43MSwyNDguOC04NC44MVYwWiIgZmlsbD0iIzNiODJmNiIvPjwvc3ZnPg==');
            animation: wave-slide-1 20s linear infinite;
            opacity: 0.04;
        }
        .bg-wave-2 {
            background-image: url('data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTIwMCAxMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+PHBhdGggZD0iTTAsMFY0Ni4yOWM0Ny43OSwyMi4yLDEwMy41OSwzMi4xNywxNTgsMjgsNzAuMzYtNS4zNywxMzYuMzMtMzMuMzEsMjA2LjgtMzcuNUM0MzguNjQsMzIuNDMsNTEyLjM0LDUzLjY3LDU4Myw3Mi4wNWM2OS4yNywxOCwxMzguMywyNC44OCwyMDkuNCwxMy4wOCwzNi4xNS02LDY5Ljg1LTE3Ljg0LDEwNC40NS0yOS4zNEM5ODkuNDksMjUsMTExMy0xNC4yOSwxMjAwLDUyLjQ3VjBaIiBvcGFjaXR5PSIuMjUiIGZpbGw9IiMwNmI2ZDQiLz48cGF0aCBkPSJNMCwwVjE1LjgxQzEzLDM2LjkyLDI3LjY0LDU2Ljg2LDQ3LjY5LDcyLjA1YzI0LjQsMTguNSw1Mi41NiwyOC4xNCw4Mi44LDMyLjksMjguNyw0LjUsNTguNywxLjUsODguNC0xLjksMzIuOS0zLjgsNjUuNi05LjYsOTguNi0xMS45LDY0LjItNC41LDEyOC41LDguOCwxOTEuMSwyNC40LDYyLjEsMTUuNSwxMjQuNywyOC42LDE4OS41LDIzLjMsMzEtMi41LDYxLjktOC40LDkyLjUtMTYuMSwzMC4zLTcuNiw2MC42LTE2LjgsOTEuOC0yMiw2MS45LTEwLjQsMTI3LDEsMTg1LjMsMjUuOFYwWiIgb3BhY2l0eT0iLjUiIGZpbGw9IiMwNmI2ZDQiLz48cGF0aCBkPSJNMCwwVjUuNjNDMTQ5LjkzLDU5LDMxNC4wOSw3MS4zMiw0NzUuODMsNDIuNTdjNDMtNy42NCw4NC4yMy0yMC4xMiwxMjcuNjEtMjYuNDYsNTktOC42MywxMTIuNDgsMTIuMjQsMTY1LjU2LDM1LjRDODI3LjkzLDc3LjIyLDg4Niw5NS4yNCw5NTEuMiw5MGM4Ni41My03LDE3Mi40Ni00NS43MSwyNDguOC04NC44MVYwWiIgZmlsbD0iIzA2YjZkNCIvPjwvc3ZnPg==');
            animation: wave-slide-2 15s linear infinite;
            opacity: 0.03;
            height: 150px;
            bottom: -15px;
        }

        /* Custom Input Modal & Backdrop */
        .modal-backdrop {
            position: fixed;
            inset: 0;
            z-index: 50;
            background-color: rgba(15, 23, 42, 0.6);
            backdrop-filter: blur(8px);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1rem;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s ease;
        }
        .modal-backdrop.active {
            opacity: 1;
            pointer-events: auto;
        }
        .modal-panel {
            background-color: #ffffff;
            border-radius: 1.5rem;
            width: 100%;
            max-width: 28rem;
            padding: 2rem;
            box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.25);
            border: 1px solid rgba(226, 232, 240, 0.8);
            transform: scale(0.95);
            transition: transform 0.3s ease;
        }
        .modal-backdrop.active .modal-panel {
            transform: scale(1);
        }

        /* Sticky Checkout Bar (Pro-Max Glassmorphism) */
        .sticky-cart-bar {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            z-index: 45;
            background: rgba(255, 255, 255, 0.75) !important;
            backdrop-filter: blur(16px) saturate(180%) !important;
            -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
            border-top: 1px solid rgba(255, 255, 255, 0.5) !important;
            box-shadow: 0 -15px 35px -5px rgba(15, 23, 42, 0.08) !important;
            transform: translateY(100%);
            transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .sticky-cart-bar.active {
            transform: translateY(0);
        }

        /* Colored Card Highlights for Tier Cards */
        .tier-card-blue {
            border-color: rgba(59, 130, 246, 0.1) !important;
        }
        .tier-card-blue:hover, .tier-card-blue.active {
            border-color: rgb(59, 130, 246) !important;
            box-shadow: 0 10px 25px -5px rgba(59, 130, 246, 0.15) !important;
        }
        .tier-card-teal {
            border-color: rgba(13, 148, 136, 0.1) !important;
        }
        .tier-card-teal:hover, .tier-card-teal.active {
            border-color: rgb(13, 148, 136) !important;
            box-shadow: 0 10px 25px -5px rgba(13, 148, 136, 0.15) !important;
        }
        .tier-card-purple {
            border-color: rgba(124, 58, 237, 0.1) !important;
        }
        .tier-card-purple:hover, .tier-card-purple.active {
            border-color: rgb(124, 58, 237) !important;
            box-shadow: 0 10px 25px -5px rgba(124, 58, 237, 0.15) !important;
        }

        /* Result Dashboards */
        .calc-result {
            font-size: 1.875rem;
            font-weight: 900;
            color: #3b82f6;
            letter-spacing: -0.025em;
        }
        .calc-label {
            font-size: 0.625rem;
            font-weight: 700;
            color: #64748b;
            display: block;
            margin-bottom: 0.25rem;
        }

        /* Pro-Max Typography Wrapping Rules */
        h1, h2, h3, h4, h5, h6 {
            text-wrap: balance !important;
        }
        p, li, span {
            text-wrap: pretty;
        }


        /* Smooth Entry/Exit Transitions for Modal/Drawer Backdrops */
        #cart-drawer-backdrop, #review-modal-backdrop, .modal-backdrop {
            transition: display 0.3s allow-discrete, opacity 0.3s !important;
        }
        @starting-style {
            #cart-drawer-backdrop {
                opacity: 0 !important;
            }
            #review-modal-backdrop {
                opacity: 0 !important;
            }
            .modal-backdrop.active {
                opacity: 0 !important;
            }
        }

        /* Highly Opaque, Premium Header Styling for Central Use */
        #header-nav {
            background-color: rgba(255, 255, 255, 0.98) !important;
            backdrop-filter: blur(16px) !important;
            -webkit-backdrop-filter: blur(16px) !important;
            transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s ease !important;
        }
        #header-nav.-translate-y-full {
            transform: translateY(-100%) !important;
        }

        /* Homepage Slider Base Styling Override */
        #live-budget-slider {
            -webkit-appearance: none;
            appearance: none;
            outline: none;
            border-radius: 9999px;
            height: 8px;
            width: 100%;
            transition: background 0.25s;
        }
        #live-budget-slider::-webkit-slider-thumb {
            -webkit-appearance: none;
            appearance: none;
            width: 22px;
            height: 22px;
            border-radius: 50%;
            background: #2563eb;
            cursor: pointer;
            border: 3px solid #fff;
            box-shadow: 0 2px 8px rgba(37, 99, 235, 0.4);
            transition: all 0.2s;
        }
        #live-budget-slider::-moz-range-thumb {
            width: 22px;
            height: 22px;
            border-radius: 50%;
            background: #2563eb;
            cursor: pointer;
            border: 3px solid #fff;
            box-shadow: 0 2px 8px rgba(37, 99, 235, 0.4);
        }
        /* Slider Teal */
        #live-budget-slider.tier-teal::-webkit-slider-thumb { background: #0d9488; box-shadow: 0 2px 8px rgba(13, 148, 136, 0.4); }
        #live-budget-slider.tier-teal::-moz-range-thumb { background: #0d9488; }
        /* Slider Purple */
        #live-budget-slider.tier-purple::-webkit-slider-thumb { background: #7c3aed; box-shadow: 0 2px 8px rgba(124, 58, 237, 0.4); }
        #live-budget-slider.tier-purple::-moz-range-thumb { background: #7c3aed; }
