        :root {
            --deep-blue: #576A8F;
            --soft-white: #FFF6F6;
            --cream-layer: #F7F6E5;
            --muted-gray: #ACBAC4;
            --dark-ink: #30364F;
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: var(--soft-white);
            color: var(--dark-ink);
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        h1, h2, h3, h4, .serif {
            font-family: 'Gloock', serif;
            font-weight: 400;
        }

        .italic-serif {
            font-family: 'Gloock', serif;
            font-style: italic;
        }

        /* UI Elements */
        .brand-title {
            font-size: clamp(3rem, 12vw, 10rem);
            letter-spacing: -0.02em;
            line-height: 0.8;
            margin: 2rem 0;
        }

        .nav-item {
            font-size: 0.75rem;
            letter-spacing: 0.25em;
            text-transform: uppercase;
            position: relative;
            padding: 8px 0;
            transition: color 0.3s;
        }
        .nav-item:hover { color: var(--deep-blue); }
        .nav-item.active::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 2px;
            background: var(--dark-ink);
        }

        /* Layout & Collages */
        .collage-container {
            position: relative;
            height: 140vh;
        }
        .img-layer-base { width: 65%; margin-left: auto; height: 90%; object-fit: cover; }
        .img-layer-top { position: absolute; width: 40%; top: 15%; left: 0%; border: 20px solid var(--soft-white); z-index: 10; box-shadow: 0 40px 100px rgba(0,0,0,0.1); }
        .img-layer-floating { position: absolute; width: 20%; bottom: 10%; right: 5%; z-index: 5; opacity: 0.8; }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 4px; }
        ::-webkit-scrollbar-track { background: var(--soft-white); }
        ::-webkit-scrollbar-thumb { background: var(--deep-blue); }

        /* Animations */
        @keyframes fadeUp {
            from { opacity: 0; transform: translateY(30px); }
            to { opacity: 1; transform: translateY(0); }
        }
        .animate-fade-up { animation: fadeUp 1s ease forwards; }

        .marquee {
            display: flex;
            white-space: nowrap;
            animation: marquee 30s linear infinite;
        }
        @keyframes marquee {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }

        .hero-bg-anim {
            background-size: 150% 150%;
            animation: gradientMove 15s ease infinite;
        }
        @keyframes gradientMove {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }

        /* Buttons */
        .btn-editorial {
            background: var(--deep-blue);
            color: var(--soft-white);
            padding: 1.25rem 3rem;
            font-size: 0.7rem;
            font-weight: 700;
            letter-spacing: 0.3em;
            text-transform: uppercase;
            transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
            display: inline-block;
        }
        .btn-editorial:hover {
            background: var(--dark-ink);
            transform: translateY(-5px);
            box-shadow: 0 10px 30px rgba(0,0,0,0.15);
        }

        .underline-link {
            font-size: 0.75rem;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            border-bottom: 1px solid var(--dark-ink);
            padding-bottom: 4px;
            transition: opacity 0.3s;
        }
        .underline-link:hover { opacity: 0.6; }

        /* Form styling */
        .editorial-input {
            width: 100%;
            background: transparent;
            border-bottom: 1px solid var(--muted-gray);
            padding: 1.5rem 0;
            outline: none;
            font-family: 'Gloock', serif;
            font-size: 1.5rem;
            transition: border-color 0.3s;
        }
        .editorial-input:focus { border-color: var(--deep-blue); }

        .modal-overlay {
            backdrop-filter: blur(15px);
            background: rgba(48, 54, 79, 0.4);
        }
    