        :root { scroll-behavior: smooth; }
        body { background-color: #FFFFFF; color: #1A1A1A; overflow-x: hidden; font-family: 'Montserrat', sans-serif; font-weight: 300; }
        
        .glass-nav { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); }
        .reveal { opacity: 0; transform: translateY(30px); transition: all 1.4s cubic-bezier(0.2, 1, 0.3, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }
        
        .pull-quote { font-family: 'Cormorant Garamond', serif; font-style: italic; position: relative; }
        .pull-quote::after { content: ''; position: absolute; bottom: -20px; left: 50%; transform: translateX(-50%); width: 40px; height: 1px; background: #E8C77D; }

        .btn-glow:hover { box-shadow: 0 0 30px rgba(232, 199, 125, 0.3); transform: translateY(-2px); }
        
        .film-grain {
            position: fixed; top: 0; left: 0; width: 100%; height: 100%;
            background-image: url("https://www.transparenttextures.com/patterns/p6-static.png");
            opacity: 0.04; pointer-events: none; z-index: 9999;
        }

        .hero-zoom { animation: slowZoom 40s linear infinite alternate; }
        @keyframes slowZoom { from { transform: scale(1); } to { transform: scale(1.15); } }

        .custom-scrollbar::-webkit-scrollbar { width: 3px; }
        .custom-scrollbar::-webkit-scrollbar-track { background: #F9F7F2; }
        .custom-scrollbar::-webkit-scrollbar-thumb { background: #1A1A1A; }

        /* Mobile Adjustments */
        @media (max-width: 768px) {
            .hero-text { font-size: 3.5rem !important; line-height: 1.1; }
        }
  @keyframes fade-in-out {
    0% { opacity: 0; transform: translateY(10px); }
    10% { opacity: 1; transform: translateY(0); }
    90% { opacity: 1; transform: translateY(0); }
    100% { opacity: 0; transform: translateY(10px); }
  }
  .animate-fade-in-out {
    animation: fade-in-out 3s forwards;
  }