        :root {
            --paper: #F9F7F2;
            --ink: #121212;
            --muted-teal: #3D4C4D;
        }

        body {
            background-color: var(--paper);
            color: var(--ink);
            font-family: 'Inter', sans-serif;
            scroll-behavior: smooth;
            -webkit-font-smoothing: antialiased;
        }

        .serif { font-family: 'Playfair Display', serif; }
        .editorial-italic { font-family: 'Fraunces', serif; font-style: italic; }
        .cursive { font-family: 'Mrs Saint Delafield', cursive; font-size: 3.5rem; }
        .mono { font-family: 'JetBrains Mono', monospace; font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; }

        /* Storytelling Animations */
        .reveal { opacity: 0; transform: translateY(30px); transition: all 1s cubic-bezier(0.2, 1, 0.3, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }

        .page-view { display: none; }
        .page-view.active { display: block; animation: pageFade 0.8s ease-out; }

        @keyframes pageFade {
            from { opacity: 0; transform: scale(0.99); }
            to { opacity: 1; transform: scale(1); }
        }

        /* Responsive Layouts */
        .max-w-editorial { max-w-7xl; margin: 0 auto; padding: 0 1.5rem; }

        /* UI Elements */
        .btn-cure {
            padding: 1rem 2rem;
            border: 1px solid var(--ink);
            transition: all 0.4s;
            position: relative;
            overflow: hidden;
            font-weight: 500;
        }
        .btn-cure:hover { background: var(--ink); color: var(--paper); transform: translateY(-2px); }

        .archive-card {
            background: #fff;
            border: 1px solid rgba(0,0,0,0.04);
            transition: all 0.5s;
        }
        .archive-card:hover { border-color: var(--ink); box-shadow: 0 20px 40px rgba(0,0,0,0.03); }

        .search-overlay {
            position: fixed; inset: 0; background: var(--paper); z-index: 9999;
            display: none; flex-direction: column; padding: 4rem;
        }

        /* Custom Scroll */
        ::-webkit-scrollbar { width: 4px; }
        ::-webkit-scrollbar-thumb { background: var(--ink); }
