        :root { scroll-behavior: smooth; }
        body { background-color: #FFFFFF; color: #111111; font-family: 'Inter', sans-serif; font-weight: 300; -webkit-font-smoothing: antialiased; }
        
        .reveal { opacity: 0; transform: translateY(40px); transition: all 1.2s cubic-bezier(0.19, 1, 0.22, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }

        .hero-ken-burns { animation: kenBurns 40s infinite alternate ease-in-out; }
        @keyframes kenBurns { from { transform: scale(1) translate(0,0); } to { transform: scale(1.2) translate(-2%, -2%); } }

        .nav-underline { position: relative; }
        .nav-underline::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 100%; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
        .nav-underline:hover::after { transform: scaleX(1); transform-origin: left; }

        .editorial-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 2rem; }
        
        .custom-scrollbar::-webkit-scrollbar { width: 3px; }
        .custom-scrollbar::-webkit-scrollbar-track { background: #fdfdfd; }
        .custom-scrollbar::-webkit-scrollbar-thumb { background: #111; }

        .btn-hover-draw { position: relative; overflow: hidden; }
        .btn-hover-draw::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: rgba(255,255,255,0.1); transition: left 0.5s ease; }
        .btn-hover-draw:hover::before { left: 0; }
