 /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: #f7f4e3; }
        ::-webkit-scrollbar-thumb { background: #2d443d; border-radius: 5px; }

        /* Glassmorphism Utilities */
        .glass {
            background: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.5);
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
        }
        
        .glass-dark {
            background: rgba(45, 68, 61, 0.85);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.1);
        }

        /* Reveal Animation */
        .reveal { opacity: 0; transform: translateY(30px); transition: all 1s cubic-bezier(0.16, 1, 0.3, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }
        
        /* 3D Tilt Effect for Gallery (Desktop only) */
        @media (min-width: 768px) {
            .tilt-card { transition: transform 0.5s ease; }
            .tilt-card:hover { transform: perspective(1000px) rotateX(2deg) rotateY(-2deg) scale(1.02); }
        }

        /* Mobile Menu Animation */
        #mobile-menu {
            transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out;
            max-height: 0;
            opacity: 0;
            overflow: hidden;
        }
        #mobile-menu.open {
            max-height: 500px; /* Arbitrary large height */
            opacity: 1;
        }