        :root {
            --primary-blue: #1A05A2;
            --accent-red: #FF5A5A;
            --soft-bg: #EDE4C2;
            --white: #FFFFFF;
        }

        body {
            font-family: 'Roboto Slab', serif;
            background-color: var(--white);
            color: #1a1a1a;
            scroll-behavior: smooth;
            overflow-x: hidden;
        }

        /* Hero Parallax Effect */
        .hero-parallax {
            background-image: url('https://i1-c.pinimg.com/736x/f4/4c/c9/f44cc985755473a84e9e1cb11b9cdd10.jpg');
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            height: 100vh;
            position: relative;
        }

        .hero-overlay {
            background: linear-gradient(rgba(26, 5, 162, 0.4), rgba(0, 0, 0, 0.6));
            position: absolute;
            inset: 0;
        }

        /* Section Transitions */
        .fade-in {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease-out;
        }
        .fade-in.visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Sticky Header */
        header.sticky {
            box-shadow: 0 4px 20px rgba(0,0,0,0.1);
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: #f1f1f1; }
        ::-webkit-scrollbar-thumb { background: var(--primary-blue); }

        /* Page Routing Simulator */
        .page-view { display: none; }
        .page-view.active { display: block; }

        .service-card {
            transition: all 0.3s ease;
            border: 1px solid transparent;
        }
        .service-card:hover {
            border-color: var(--accent-red);
            transform: translateY(-5px);
            box-shadow: 0 10px 30px rgba(0,0,0,0.05);
        }

        .btn-primary {
            background-color: var(--accent-red);
            color: white;
            padding: 12px 30px;
            border-radius: 4px;
            transition: 0.3s;
            text-transform: uppercase;
            font-size: 0.9rem;
            letter-spacing: 1px;
            font-weight: 700;
        }
        .btn-primary:hover {
            background-color: #e04a4a;
            transform: scale(1.05);
        }

        /* Testimonial Slider */
        .testimonial-container {
            max-width: 800px;
            margin: auto;
            position: relative;
            overflow: hidden;
        }
        .testimonial-slide {
            display: none;
            text-align: center;
            animation: slideIn 0.5s ease-in-out;
        }
        .testimonial-slide.active { display: block; }
        
        @keyframes slideIn {
            from { opacity: 0; transform: translateX(20px); }
            to { opacity: 1; transform: translateX(0); }
        }

        .filter-active {
            color: var(--accent-red);
            border-bottom: 2px solid var(--accent-red);
        }

        #mobile-menu {
            transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }
        #mobile-menu.hidden-menu {
            transform: translateX(100%);
        }
