        :root {
            --brand-blue: #2F2FE4;
            --brand-cream: #FFF1D3;
        }

        body {
            background-color: var(--brand-cream);
            color: #1a1a1a;
            font-family: 'Inter', sans-serif;
            scroll-behavior: smooth;
            overflow-x: hidden;
        }

        h1, h2, h3, h4, .serif-font {
            font-family: 'Playfair Display', serif;
        }

        /* Animations */
        .reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease-out;
        }
        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: var(--brand-cream); }
        ::-webkit-scrollbar-thumb { background: var(--brand-blue); }

        /* Timeline Drawing */
        .timeline-line {
            position: absolute;
            left: 50%;
            width: 2px;
            background: rgba(255, 239, 145, 0.2);
            height: 0;
            transition: height 2s ease;
        }
        .timeline-line.active { height: 100%; }

        /* Glassmorphism Header */
        .header-glass {
            backdrop-filter: blur(10px);
            background: rgba(255, 241, 211, 0.8);
            transition: all 0.4s ease;
        }
        .header-scrolled {
            background: #2F2FE4 !important;
            color: white !important;
            padding: 10px 0 !important;
        }

        /* Mobile Menu */
        #mobile-menu {
            transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
            transform: translateX(100%);
        }
        #mobile-menu.open { transform: translateX(0); }

        /* Briefing Modal */
        #briefing-overlay {
            display: none;
            background: white;
            z-index: 200;
            position: fixed;
            inset: 0;
            overflow-y: auto;
        }
        #briefing-overlay.active { display: block; }

        /* Feature Cards */
        .feature-card {
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }
        .feature-card:hover {
            transform: translateY(-10px) scale(1.02);
            box-shadow: 0 20px 40px rgba(47, 47, 228, 0.1);
        }

        .hero-gradient {
            background: linear-gradient(to right, #FFF1D3 0%, rgba(255, 241, 211, 0) 100%);
        }

        .view-section { display: none; }
        .view-section.active { display: block; }

        .magazine-grid-item {
            border-bottom: 1px solid rgba(10, 10, 35, 0.1);
            padding-bottom: 2rem;
        }
