        /* Modern Reset & Scroll */
        body { background-color: #FCF5EE; color: #1a1a1a; scroll-behavior: smooth; overflow-x: hidden; }
        ::-webkit-scrollbar { width: 4px; }
        ::-webkit-scrollbar-track { background: #FCF5EE; }
        ::-webkit-scrollbar-thumb { background: #8C00FF; border-radius: 10px; }

        /* Animation Library */
        @keyframes slowZoom { from { transform: scale(1); } to { transform: scale(1.1); } }
        .hero-zoom { animation: slowZoom 30s infinite alternate ease-in-out; }
        
        .fade-up { opacity: 0; transform: translateY(50px); transition: all 1.2s cubic-bezier(0.2, 1, 0.3, 1); }
        .fade-up.visible { opacity: 1; transform: translateY(0); }

        .glass { background: rgba(252, 245, 238, 0.75); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px); }
        
        .gold-glow { transition: box-shadow 0.4s ease; }
        .gold-glow:hover { box-shadow: 0 0 30px rgba(255, 196, 0, 0.4); }

        /* Before/After Wipe Effect */
        .comparison-slider { position: relative; width: 100%; height: 600px; overflow: hidden; border-radius: 2rem; }
        .after-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
        .before-image { position: absolute; inset: 0; width: 50%; height: 100%; object-fit: cover; z-index: 2; border-right: 2px solid #FFC400; overflow: hidden; filter: saturate(0.2) brightness(0.7); }
        .slider-bar { position: absolute; top: 0; left: 50%; bottom: 0; width: 4px; background: #FFC400; z-index: 3; cursor: ew-resize; transform: translateX(-50%); }
        .slider-bar::before { content: '↔'; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #FFC400; color: #000; width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; }

        /* Horizontal Scroll Timeline */
        .timeline-scroll { overflow-x: auto; scroll-snap-type: x mandatory; -ms-overflow-style: none; scrollbar-width: none; }
        .timeline-scroll::-webkit-scrollbar { display: none; }
        .timeline-item { min-width: 300px; scroll-snap-align: center; }

        /* Typography Text-as-Design */
        .text-design-highlight { background: linear-gradient(120deg, #FFC400 0%, #FFC400 100%); background-repeat: no-repeat; background-size: 0% 100%; transition: background-size 1s cubic-bezier(0.65, 0, 0.35, 1); }
        .visible .text-design-highlight { background-size: 100% 100%; }

        .page-view { display: none; opacity: 0; transition: opacity 0.8s ease; }
        .page-view.active { display: block; opacity: 1; }
