        :root {
            --primary-green: #043915;
            --accent-black: #1a1a1a;
            --bg-white: #FFFFFF;
        }

        body {
            font-family: 'Plus Jakarta Sans', sans-serif; /* Elm Sans style alternative */
            background-color: var(--bg-white);
            color: var(--primary-green);
            scroll-behavior: smooth;
        }

        h1, h2, h3, h4, .tapestry {
            font-family: 'Tapestry', serif;
        }

        .reveal {
            opacity: 0;
            transform: translateY(40px);
            transition: all 1.2s cubic-bezier(0.2, 0.8, 0.2, 1);
        }
        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }

        .parallax-bg {
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
        }

        .hero-split {
            display: grid;
            grid-template-columns: 1.5fr 1fr;
            min-height: 140vh;
        }

        .page-content {
            display: none;
            animation: fadeIn 1s ease-out forwards;
        }
        .page-content.active { display: block; }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        .underline-anim {
            position: relative;
            display: inline-block;
        }
        .underline-anim::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: -5px;
            left: 0;
            background-color: currentColor;
            transition: width 0.6s ease;
        }
        .reveal.active .underline-anim::after {
            width: 100%;
        }

        .no-scrollbar::-webkit-scrollbar { display: none; }

        #mobile-menu {
            transition: transform 0.6s cubic-bezier(0.7, 0, 0.3, 1);
        }

        .filter-btn.active {
            background-color: var(--primary-green);
            color: white;
        }
