        :root {
            --deep-olive: #3B3B1A;
            --soft-beige: #DEDED1;
            --blended-olive: #5B532C;
        }

        body {
            background-color: var(--deep-olive);
            color: var(--soft-beige);
            font-family: 'Arimo', sans-serif;
            margin: 0;
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        /* Utility */
        .glass-header {
            background: rgba(91, 83, 44, 0.6);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }

        /* Hero Parallax */
        .hero-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 120%;
            background-size: cover;
            background-position: center;
            z-index: -1;
            transform: translateY(0);
        }

        /* Animations */
        @keyframes float {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(1deg); }
        }
        .animate-float { animation: float 6s ease-in-out infinite; }

        .reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease-out;
        }
        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }

        /* 3D Tilt */
        .card-tilt {
            transition: transform 0.1s ease-out;
            transform-style: preserve-3d;
        }

        /* Menu Overlay */
        #menu-overlay {
            transform: translateX(-100%);
            transition: transform 0.7s cubic-bezier(0.85, 0, 0.15, 1);
        }
        #menu-overlay.open { transform: translateX(0); }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: var(--deep-olive); }
        ::-webkit-scrollbar-thumb { background: var(--blended-olive); border-radius: 4px; }

        /* Social Icon Glow */
        .social-icon:hover {
            color: white;
            text-shadow: 0 0 15px rgba(222, 238, 209, 0.8);
            transform: translateY(-3px);
        }

        /* Filters */
        .filter-btn.active {
            background-color: var(--soft-beige);
            color: var(--deep-olive);
        }

        .page-section { display: none; }
        .page-section.active { display: block; }
