        :root {
            --neutral-trust: #B7B78A;
            --growth-highlight: #B5F1CC;
            --authority-dark: #4E6C50;
            --growth-accent: #C9F4AA;
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: #f9faf8;
            color: var(--authority-dark);
            overflow-x: hidden;
        }

        .cursive-heading {
            font-family: 'Playwrite NZ Guides', cursive;
        }

        /* Navigation */
        .nav-link {
            position: relative;
            transition: color 0.3s ease;
        }
        .nav-link::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: -4px;
            left: 0;
            background-color: var(--authority-dark);
            transition: width 0.3s ease;
        }
        .nav-link:hover::after {
            width: 100%;
        }

        /* Animations */
        .reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; }
        .reveal.active { opacity: 1; transform: translateY(0); }

        .hero-bg-animate {
            background: linear-gradient(-45deg, #B7B78A, #B5F1CC, #C9F4AA, #B7B78A);
            background-size: 400% 400%;
            animation: gradientBG 15s ease infinite;
        }

        @keyframes gradientBG {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }

        /* Dashboard Cards */
        .dashboard-card {
            background: white;
            border-radius: 12px;
            box-shadow: 0 4px 20px rgba(78, 108, 80, 0.05);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .dashboard-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 30px rgba(78, 108, 80, 0.1);
        }

        /* Routing */
        .page-node { display: none; }
        .page-node.active { display: block; }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: #f1f1f1; }
        ::-webkit-scrollbar-thumb { background: var(--neutral-trust); border-radius: 10px; }

        #mobile-menu {
            transform: translateX(100%);
            transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }
        #mobile-menu.active { transform: translateX(0); }

        .horizontal-scroll {
            display: flex;
            overflow-x: auto;
            scroll-snap-type: x mandatory;
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
        .horizontal-scroll::-webkit-scrollbar { display: none; }
