        :root {
            --paper: #ffffff;
            --ink: #0a0a0a;
            --accent: #d4af37; /* Metallic Gold */
            --muted: #f4f4f2;
        }

        * { cursor: crosshair; }
        body {
            font-family: 'Montserrat', sans-serif;
            background-color: var(--paper);
            color: var(--ink);
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        .serif-title { font-family: 'Bodoni Moda', serif; font-weight: 900; letter-spacing: -0.02em; }
        .signature { font-family: 'Mrs Saint Delafield', cursive; }
        .quote-font { font-family: 'Playfair Display', serif; font-style: italic; }

        /* Loader */
        #loader {
            position: fixed; inset: 0; background: var(--ink); z-index: 10000;
            display: flex; flex-direction: column; align-items: center; justify-content: center;
            transition: transform 1s cubic-bezier(0.85, 0, 0.15, 1);
        }

        /* Nav Transition */
        #main-nav { transition: all 0.5s ease; z-index: 5000; }
        .nav-scrolled { background: rgba(255,255,255,0.95); backdrop-filter: blur(10px); padding-top: 1rem !important; padding-bottom: 1rem !important; color: black !important; border-bottom: 1px solid rgba(0,0,0,0.05); }

        /* Page Management */
        .page-view { display: none; }
        .page-view.active { display: block; animation: slideUp 1s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
        @keyframes slideUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }

        /* Buttons */
        .btn-luxe {
            position: relative; padding: 1rem 2.5rem; font-size: 0.7rem; font-weight: 800;
            letter-spacing: 0.3em; text-transform: uppercase; border: 1px solid currentColor;
            transition: all 0.4s ease; overflow: hidden; display: inline-flex; align-items: center; gap: 10px;
        }
        .btn-luxe:hover { background: var(--ink); color: white !important; padding-left: 3rem; }

        /* Images */
        .reveal-img { overflow: hidden; }
        .reveal-img img { transition: transform 1.5s cubic-bezier(0.16, 1, 0.3, 1); filter: grayscale(100%); }
        .reveal-img:hover img { transform: scale(1.05); filter: grayscale(0%); }

        /* Modals */
        .modal { 
            position: fixed; inset: 0; background: rgba(0,0,0,0.9); z-index: 9000; 
            display: none; align-items: center; justify-content: center; backdrop-filter: blur(10px);
        }

        /* Cart Sidebar */
        #cart-sidebar {
            position: fixed; right: -100%; top: 0; bottom: 0; width: 400px; max-width: 90%;
            background: white; z-index: 9500; transition: right 0.6s cubic-bezier(0.85, 0, 0.15, 1);
            box-shadow: -10px 0 30px rgba(0,0,0,0.1);
        }
        #cart-sidebar.open { right: 0; }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 5px; }
        ::-webkit-scrollbar-track { background: var(--muted); }
        ::-webkit-scrollbar-thumb { background: var(--ink); }

        .vertical-text { writing-mode: vertical-rl; text-orientation: mixed; }