        /* --- CORE DESIGN SYSTEM ENGINE --- */
        :root {
            --bg-pure-black: #000000;
            --text-pure-white: #FFFFFF;
            --accent-editorial-red: #FF0000;
            --muted-dark-gray: #111111;
            --card-overlay-white: #FFFFFF;
            --card-overlay-text: #000000;
            --transition-cinematic: all 0.7s cubic-bezier(0.25, 1, 0.5, 1);
            --transition-fast: all 0.3s ease;
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
            user-select: none;
        }

        body {
            background-color: var(--bg-pure-black);
            color: var(--text-pure-white);
            font-family: 'Cormorant Garamond', serif;
            overflow-x: hidden;
            letter-spacing: 0.05em;
            scroll-behavior: smooth;
        }

        /* Utility Text Elements */
        p { font-size: 1.15rem; line-height: 1.8; font-weight: 300; }
        h1, h2, h3, h4 { font-weight: 300; letter-spacing: 0.02em; line-height: 1.1; }

        /* --- GLOBAL LAYOUT ARCHITECTURE --- */
        .editorial-page {
            display: none;
            width: 100%;
            min-height: 100vh;
            position: relative;
            animation: fadeInPage 1.2s cubic-bezier(0.25, 1, 0.5, 1) forwards;
        }

        .editorial-page.active-view { display: block; }

        @keyframes fadeInPage {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* --- LUXURY LOADING SCREEN --- */
        #luxury-loader {
            position: fixed;
            top:0; left:0; width:100vw; height:100vh;
            background: var(--bg-pure-black);
            z-index: 99999;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            transition: opacity 1s cubic-bezier(0.25, 1, 0.5, 1);
        }
        .loader-title {
            font-size: 3.5rem;
            font-weight: 300;
            letter-spacing: 0.3em;
            text-transform: uppercase;
            color: var(--text-pure-white);
            margin-bottom: 20px;
            animation: textPulse 2s infinite alternate;
        }
        .loader-bar {
            width: 150px; height: 1px; background: rgba(255,255,255,0.1); position: relative;
        }
        .loader-progress {
            position: absolute; top:0; left:0; height:100%; width:0%; background: var(--accent-editorial-red);
            animation: loadProgress 1.8s forwards ease-in-out;
        }
        @keyframes textPulse { from { opacity: 0.4; } to { opacity: 1; } }
        @keyframes loadProgress { to { width: 100%; } }

        /* --- STICKY EDITORIAL HEADER --- */
        header.editorial-header {
            position: fixed; top: 0; left: 0; width: 100%; height: 90px;
            background: var(--bg-pure-black);
            border-bottom: 1px solid rgba(255,255,255,0.05);
            display: flex; justify-content: space-between; align-items: center;
            padding: 0 4rem; z-index: 10000; transition: var(--transition-cinematic);
        }
        header.editorial-header.scrolled {
            height: 75px; background: rgba(0,0,0,0.95); backdrop-filter: blur(10px);
        }
        .header-left { display: flex; align-items: center; gap: 15px; cursor: pointer; }
        .studio-logo-fallback {
            width: 32px; height: 32px; border: 1px solid var(--accent-editorial-red);
            border-radius: 50%; display: flex; align-items: center; justify-content: center;
            font-size: 0.8rem; font-weight: 700; color: var(--accent-editorial-red);
        }
        .studio-name { font-size: 1.6rem; text-transform: uppercase; letter-spacing: 0.15em; font-weight: 400; }
        
        .header-right nav { display: flex; align-items: center; gap: 2.5rem; }
        .nav-item { position: relative; list-style: none; }
        .nav-link {
            color: var(--text-pure-white); text-decoration: none; font-size: 1.05rem;
            text-transform: uppercase; letter-spacing: 0.1em; padding: 10px 0;
            cursor: pointer; transition: var(--transition-fast); position: relative;
        }
        .nav-link::after {
            content: ''; position: absolute; bottom: 0; left: 50%; width: 0; height: 1px;
            background: var(--text-pure-white); transition: var(--transition-fast); transform: translateX(-50%);
        }
        .nav-link:hover::after { width: 100%; }
        .nav-link.active-nav-item { color: var(--accent-editorial-red); }
        .nav-link.active-nav-item::after { background: var(--accent-editorial-red); width: 100%; }

        /* Dropdown Architecture */
        .dropdown-menu {
            position: absolute; top: 100%; left: 50%; transform: translateX(-50%) translateY(15px);
            background: var(--bg-pure-black); border: 1px solid var(--accent-editorial-red);
            padding: 1.5rem; min-width: 200px; display: none; flex-direction: column; gap: 1rem;
            opacity: 0; transition: var(--transition-fast); z-index: 10001;
        }
        .nav-item:hover .dropdown-menu { display: flex; opacity: 1; transform: translateX(-50%) translateY(0); }
        .dropdown-link {
            color: var(--text-pure-white); text-decoration: none; text-transform: uppercase;
            font-size: 0.95rem; letter-spacing: 0.1em; transition: var(--transition-fast);
        }
        .dropdown-link:hover { color: var(--accent-editorial-red); padding-left: 5px; }

        /* Responsive Mobile Hamburger Menu */
        .hamburger-btn {
            display: none; flex-direction: column; gap: 6px; cursor: pointer; background: none; border: none; z-index: 10005;
        }
        .hamburger-btn span { width: 28px; height: 1px; background: var(--text-pure-white); transition: var(--transition-fast); }
        .hamburger-btn.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); background: var(--accent-editorial-red); }
        .hamburger-btn.open span:nth-child(2) { opacity: 0; }
        .hamburger-btn.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); background: var(--accent-editorial-red); }

        @media (max-width: 1024px) {
            header.editorial-header { padding: 0 2rem; }
            .hamburger-btn { display: flex; }
            .header-right nav {
                position: fixed; top: 0; right: -100%; width: 80%; height: 100vh;
                background: var(--bg-pure-black); flex-direction: column; justify-content: center;
                align-items: center; gap: 2rem; transition: var(--transition-cinematic); z-index: 10002;
                border-left: 1px solid rgba(255,255,255,0.05);
            }
            .header-right nav.mobile-open { right: 0; }
            .dropdown-menu { position: static; transform: none; display: flex; opacity: 1; border: none; padding: 0.5rem 0 0 1rem; gap: 0.75rem; }
        }

        /* --- READ PROGRESS & BACK TO TOP --- */
        #reading-progress {
            position: fixed; top: 0; left: 0; height: 2px; background: var(--accent-editorial-red); width: 0%; z-index: 10006;
        }
        .back-to-top {
            position: fixed; bottom: 40px; right: 40px; width: 50px; height: 50px;
            border: 1px solid rgba(255,255,255,0.2); border-radius: 50%;
            display: flex; align-items: center; justify-content: center; cursor: pointer;
            background: rgba(0,0,0,0.8); z-index: 999; opacity: 0; transform: translateY(10px);
            transition: var(--transition-fast);
        }
        .back-to-top.visible { opacity: 1; transform: translateY(0); }
        .back-to-top:hover { border-color: var(--accent-editorial-red); color: var(--accent-editorial-red); }

        /* --- PREMIUM MACRO REUSABLE COMPONENTS --- */
        .editorial-btn {
            display: inline-block; padding: 12px 35px; border: 1px solid var(--text-pure-white);
            background: transparent; color: var(--text-pure-white); font-family: 'Cormorant Garamond', serif;
            font-size: 1rem; text-transform: uppercase; letter-spacing: 0.15em; cursor: pointer;
            transition: var(--transition-fast); position: relative; overflow: hidden; text-decoration: none;
        }
        .editorial-btn:hover {
            color: var(--text-pure-white); border-color: var(--accent-editorial-red); background: var(--accent-editorial-red);
        }
        .accent-line { width: 60px; height: 1px; background: var(--accent-editorial-red); margin: 20px 0; }
        .section-divider { width: 100%; height: 1px; background: rgba(255,255,255,0.05); margin: 6rem 0; }
        .red-divider { width: 100%; height: 1px; background: var(--accent-editorial-red); margin: 4rem 0; }

        /* Media Frame Engine with Cinematic Zoom */
        .media-frame { overflow: hidden; position: relative; background: #111; width: 100%; height: 100%; }
        .media-frame img {
            width: 100%; height: 100%; object-fit: cover; filter: grayscale(20%) contrast(110%);
            transition: transform 3s cubic-bezier(0.25, 1, 0.5, 1);
        }
        .media-frame:hover img { transform: scale(1.08); }

        /* Continuous Cinematic Marquee Component */
        .marquee-container {
            width: 100%; overflow: hidden; background: var(--bg-pure-black); padding: 2.5rem 0;
            border-top: 1px solid rgba(255,255,255,0.05); border-bottom: 1px solid rgba(255,255,255,0.05);
            display: flex; white-space: nowrap;
        }
        .marquee-content {
            display: inline-flex; gap: 4rem; animation: marqueeScroll 25s linear infinite;
            font-size: 4rem; text-transform: uppercase; font-weight: 300; letter-spacing: 0.1em;
        }
        @keyframes marqueeScroll { 0% { transform: translate3d(0, 0, 0); } 100% { transform: translate3d(-50%, 0, 0); } }

        /* Floating Cards Overlap Architecture */
        .floating-editorial-card {
            position: absolute; bottom: -5%; left: -5%; background: var(--card-overlay-white);
            color: var(--card-overlay-text); padding: 3rem; max-width: 450px;
            box-shadow: 0 30px 60px rgba(0,0,0,0.5); z-index: 10;
        }
        .floating-editorial-card h3 { font-size: 2.2rem; margin-bottom: 15px; text-transform: uppercase; }
        .floating-editorial-card p { font-size: 1rem; color: #444; margin-bottom: 20px; }
        .floating-editorial-card .signature { font-style: italic; font-size: 1.2rem; margin-bottom: 20px; display: block; }
        .floating-editorial-card .card-btn {
            border-color: var(--bg-pure-black); color: var(--bg-pure-black);
        }
        .floating-editorial-card .card-btn:hover { background: var(--accent-editorial-red); border-color: var(--accent-editorial-red); color: white;}

        /* --- HOME PAGE SECTIONS ($12,000px+ Immersive Architecture) --- */
        .hero-split { display: flex; width: 100%; height: 100vh; padding-top: 90px; }
        .hero-left { width: 35%; padding: 4rem; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
        .category-label { font-size: 0.9rem; text-transform: uppercase; color: var(--accent-editorial-red); letter-spacing: 0.3em; margin-bottom: 10px; }
        .hero-left h1 { font-size: 4.5rem; text-transform: uppercase; margin-bottom: 25px; }
        .hero-left p { margin-bottom: 30px; color: #ccc; }
        .hero-right { width: 65%; position: relative;  }

        .philosophy-section { padding: 8rem 4rem; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
        .philosophy-text h2 { font-size: 3.5rem; text-transform: uppercase; margin-bottom: 2rem; }
        .philosophy-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
        .philosophy-image-wrap { position: relative; height: 600px; }
        .v-divider { width: 1px; height: 100%; background: var(--accent-editorial-red); position: absolute; left: -2rem; top: 0; }

        .signature-looks { padding: 8rem 4rem; }
        .signature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; margin-top: 4rem; }
        .look-card { cursor: pointer; }
        .look-card .media-frame { height: 550px; margin-bottom: 1.5rem; }
        .look-meta { transition: var(--transition-cinematic); transform: translateY(0); }
        .look-card:hover .look-meta { transform: translateY(-10px); }
        .look-title { font-size: 1.8rem; text-transform: uppercase; margin: 10px 0; }

        .luxury-banner {
            position: relative; height: 70vh; width: 100%; display: flex; flex-direction: column;
            justify-content: center; align-items: center; text-center: center; overflow: hidden;
        }
        .banner-bg { position: absolute; top:0; left:0; width:100%; height:100%; z-index:-1; opacity: 0.4; }
        .banner-bg img { width:100%; height:100%; object-fit:cover; }
        .transparent-text {
            font-size: 8rem; text-transform: uppercase; font-weight: 900;
            -webkit-text-stroke: 1px rgba(255,255,255,0.3); color: transparent; letter-spacing: 0.05em;
        }
        .banner-quote { font-size: 1.8rem; font-style: italic; max-width: 600px; text-align: center; margin-top: 20px; }

        .beauty-journal { padding: 8rem 4rem; }
        .journal-row { display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; align-items: center; margin-bottom: 8rem; }
        .journal-row.reverse { direction: rtl; }
        .journal-row.reverse .journal-text { direction: ltr; }
        .journal-text h3 { font-size: 2.8rem; text-transform: uppercase; margin-bottom: 1.5rem; }
        .pull-quote { font-size: 2rem; border-left: 3px solid var(--accent-editorial-red); padding-left: 1.5rem; margin: 2rem 0; font-style: italic; }

        .transformations-collage { padding: 8rem 4rem; background: #050505; }
        .collage-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
        .collage-item { position: relative; height: 450px; }
        .collage-caption {
            position: absolute; bottom: 20px; left: 20px; background: rgba(0,0,0,0.7);
            padding: 10px 20px; font-size: 0.9rem; text-transform: uppercase;
        }

        .studio-atmosphere { padding: 8rem 4rem; display: grid; grid-template-columns: 55% 45%; gap: 4rem; }
        .atmosphere-narrative { display: flex; flex-direction: column; justify-content: center; padding-right: 2rem; }
        .atmosphere-narrative h2 { font-size: 3.5rem; text-transform: uppercase; margin-bottom: 2rem; }

        .closing-statement { padding: 12rem 4rem; text-align: center; background: #020202; }
        .closing-statement h2 { font-size: 4rem; text-transform: uppercase; margin-bottom: 2rem; }
        .closing-statement p { max-width: 700px; margin: 0 auto 3rem auto; color: #aaa; }

        /* --- PORTFOLIO & DISCIPLINE PAGES CREATIVE ENGINES --- */
        .portfolio-landing-hero { padding: 8rem 4rem 4rem 4rem; text-align: center; }
        .portfolio-landing-hero h1 { font-size: 5rem; text-transform: uppercase; margin-bottom: 1.5rem; }
        .discipline-banners-container { display: flex; flex-direction: column; gap: 2px; background: rgba(255,255,255,0.05); }
        .discipline-banner-row {
            height: 45vh; position: relative; display: flex; align-items: center; padding: 0 6rem;
            cursor: pointer; overflow: hidden; text-decoration: none; color: white;
        }
        .discipline-bg { position: absolute; top:0; left:0; width:100%; height:100%; z-index:1; opacity: 0.25; transition: var(--transition-cinematic); }
        .discipline-bg img { width:100%; height:100%; object-fit:cover; }
        .discipline-banner-row:hover .discipline-bg { opacity: 0.6; transform: scale(1.02); }
        .discipline-title-wrap { position: relative; z-index: 2; }
        .discipline-title-wrap h2 { font-size: 4rem; text-transform: uppercase; letter-spacing: 0.05em; }

        /* Makeup Immersive Rows */
        .makeup-hero-banner { height: 85vh; width:100%; position: relative; overflow: hidden; }
        .makeup-hero-banner img { width:100%; height:100%; object-fit:cover; opacity: 0.7; }
        .makeup-hero-title { position: absolute; bottom: 10%; left: 4rem; font-size: 6rem; text-transform: uppercase; }
        .makeup-editorial-row { padding: 8rem 4rem; display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; align-items: center; }
        .makeup-editorial-row.alt-row { direction: rtl; }
        .makeup-editorial-row.alt-row .makeup-text-block { direction: ltr; }
        .makeup-text-block h3 { font-size: 3rem; text-transform: uppercase; margin-bottom: 2rem; }

        /* Beauty Premium Grid System */
        .beauty-grid-container { padding: 6rem 4rem; display: grid; grid-template-columns: repeat(2, 1fr); gap: 4rem; }
        .beauty-card { position: relative; height: 650px; overflow: hidden; cursor: pointer; }
        .beauty-card img { width:100%; height:100%; object-fit:cover; transition: var(--transition-cinematic); }
        .beauty-card-overlay {
            position: absolute; bottom: 0; left: 0; width: 100%; padding: 3rem;
            background: linear-gradient(to top, rgba(0,0,0,0.9), transparent);
            transform: translateY(30px); opacity: 0; transition: var(--transition-cinematic);
        }
        .beauty-card:hover img { transform: scale(1.05); }
        .beauty-card:hover .beauty-card-overlay { transform: translateY(0); opacity: 1; }
        .beauty-card-overlay h4 { font-size: 2rem; text-transform: uppercase; margin-bottom: 10px; }

        /* Skin Rhythmical Alignment Architecture */
        .skin-rhythm-container { padding: 4rem; display: flex; flex-direction: column; gap: 8rem; }
        .skin-rhythm-row { display: grid; grid-template-columns: repeat(12, 1fr); width: 100%; }
        .skin-col-left { grid-column: 1 / 6; }
        .skin-col-right { grid-column: 8 / 13; }
        .skin-rhythm-row.reverse-rhythm .skin-col-left { grid-column: 8 / 13; }
        .skin-rhythm-row.reverse-rhythm .skin-col-right { grid-column: 1 / 6; }
        .skin-image-box { position: relative; height: 550px; overflow: hidden; }
        .skin-image-box img { width:100%; height:100%; object-fit:cover; transition: var(--transition-cinematic); }
        .skin-image-box:hover img { transform: scale(1.05); }
        .skin-overlay {
            position: absolute; top:0; left:0; width:100%; height:100%; background: rgba(0,0,0,0.6);
            display: flex; flex-direction: column; justify-content: center; align-items: center;
            opacity: 0; transition: var(--transition-fast); padding: 2rem; text-align: center;
        }
        .skin-image-box:hover .skin-overlay { opacity: 1; }
        .skin-overlay h4 { font-size: 2rem; text-transform: uppercase; margin-bottom: 15px; }
        .skin-overlay p { font-size: 1rem; max-width: 300px; margin-bottom: 20px; }

        /* --- SERVICES SHOWCASE MATRIX (10 Rows Dynamic Overlap Engine) --- */
        .services-matrix { padding: 6rem 4rem; display: flex; flex-direction: column; gap: 12rem; }
        .service-row { display: flex; justify-content: center; align-items: center; position: relative; width: 100%; height: 600px; }
        .service-image-container { width: 550px; height: 550px; position: relative; z-index: 1; }
        .service-image-container img { width:100%; height:100%; object-fit:cover; }
        .service-overlap-card {
            position: absolute; right: 10%; background: var(--card-overlay-white);
            color: var(--card-overlay-text); padding: 3.5rem; width: 500px;
            box-shadow: 0 30px 60px rgba(0,0,0,0.4); z-index: 5;
        }
        .service-row:nth-child(even) .service-overlap-card { left: 10%; right: auto; }
        .service-overlap-card .category-label { margin-bottom: 12px; font-weight: 600; }
        .service-overlap-card h3 { font-size: 2.4rem; text-transform: uppercase; margin-bottom: 15px; }
        .service-overlap-card p { font-size: 0.95rem; color: #333; margin-bottom: 20px; }
        .service-duration { font-size: 1.1rem; font-weight: 600; margin-bottom: 25px; color: var(--accent-editorial-red); display: block; }
        .service-overlap-card .book-btn { border-color: #000; color: #000; }
        .service-overlap-card .book-btn:hover { background: var(--accent-editorial-red); border-color: var(--accent-editorial-red); color: white; }

        /* --- BOOKING MODAL POPUP --- */
        .modal-overlay {
            position: fixed; top:0; left:0; width:100vw; height:100vh; background: rgba(0,0,0,0.9);
            z-index: 20000; display: none; justify-content: center; align-items: center; opacity: 0;
            transition: var(--transition-fast);
        }
        .modal-overlay.active-modal { display: flex; opacity: 1; }
        .premium-modal-box {
            background: var(--bg-pure-black); border: 1px solid var(--accent-editorial-red);
            padding: 4rem; width: 100%; max-width: 650px; max-height: 90vh; overflow-y: auto;
            position: relative; box-shadow: 0 20px 50px rgba(255,0,0,0.1);
        }
        .modal-close-btn {
            position: absolute; top: 25px; right: 25px; font-size: 2rem; color: white;
            cursor: pointer; background: none; border: none;
        }
        .premium-modal-box h2 { font-size: 3rem; text-transform: uppercase; margin-bottom: 2rem; color: var(--text-pure-white); text-align: center;}
        .premium-form-group { margin-bottom: 1.5rem; display: flex; flex-direction: column; gap: 8px; }
        .premium-form-group label { text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.1em; color: #aaa; }
        .premium-input {
            background: transparent; border: none; border-bottom: 1px solid rgba(255,255,255,0.2);
            padding: 12px 5px; color: white; font-family: 'Cormorant Garamond', serif; font-size: 1.1rem;
            transition: var(--transition-fast);
        }
        .premium-input:focus { outline: none; border-color: var(--accent-editorial-red); }
        .modal-action-row { display: flex; gap: 2rem; margin-top: 3rem; }
        .modal-action-row button { flex: 1; }

        /* --- ABOUT PAGE ARCHITECTURE --- */
        .about-hero { padding: 10rem 4rem 4rem 4rem; text-align: center; }
        .about-hero h1 { font-size: 5.5rem; text-transform: uppercase; }
        .about-split-1 { display: flex; width: 100%; background: var(--card-overlay-white); color: var(--card-overlay-text); }
        .about-split-1-left { width: 60%; padding: 6rem; display: flex; align-items: center; }
        .about-split-1-left p { font-size: 1.4rem; line-height: 1.9; color: #111; }
        .about-split-1-right { width: 40%; height: 700px; }

        /* Testimonial Core Slider Engine */
        .testimonial-slider-container { padding: 8rem 4rem; text-align: center; background: #050505; position: relative; }
        .testimonial-wrapper { max-width: 800px; margin: 0 auto; min-height: 250px; position: relative; }
        .testimonial-slide {
            position: absolute; top:0; left:0; width:100%; opacity:0; transition: opacity 0.8s ease;
            display: none;
        }
        .testimonial-slide.active-slide { opacity: 1; display: block; position: relative; }
        .testimonial-quote { font-size: 2.4rem; font-style: italic; line-height: 1.5; margin-bottom: 2rem; }
        .testimonial-author { font-size: 1.1rem; text-transform: uppercase; letter-spacing: 0.2em; color: var(--accent-editorial-red); }
        .slider-dots { display: flex; justify-content: center; gap: 12px; margin-top: 3rem; }
        .slider-dot { width: 8px; height: 8px; background: rgba(255,255,255,0.2); border-radius: 50%; cursor: pointer; transition: var(--transition-fast); }
        .slider-dot.active-dot { background: var(--accent-editorial-red); width: 24px; border-radius: 4px; }

        .about-split-2 { display: flex; width: 100%; flex-direction: row-reverse; }
        .about-split-2-left { width: 60%; padding: 6rem; display: flex; flex-direction: column; justify-content: center; }
        .about-split-2-left h2 { font-size: 3rem; text-transform: uppercase; margin-bottom: 2rem; }
        .about-split-2-right { width: 40%; height: 700px; }

        /* --- SUBSCRIBE / UNSUBSCRIBE ENGINE --- */
        .sub-split-screen { display: flex; width:100%; min-height: 80vh; border-bottom: 1px solid rgba(255,255,255,0.05); }
        .sub-split-form-box { width: 50%; padding: 6rem; display: flex; flex-direction: column; justify-content: center; }
        .sub-split-form-box h2 { font-size: 3.5rem; text-transform: uppercase; margin-bottom: 2rem; }
        .sub-split-media-box { width: 50%; position: relative; }
        .checkbox-group { display: flex; flex-direction: column; gap: 12px; margin: 1.5rem 0; }
        .checkbox-label { display: flex; align-items: center; gap: 10px; font-size: 1.1rem; cursor: pointer; }
        .checkbox-label input { accent-color: var(--accent-editorial-red); width: 18px; height: 18px; }

        /* --- CONTACT PAGE MATRIX --- */
        .contact-hero { padding: 10rem 4rem 4rem 4rem; text-align: center; }
        .contact-hero h1 { font-size: 5rem; text-transform: uppercase; }
        .contact-info-grid { padding: 0 4rem; display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; }
        .contact-editorial-card { border: 1px solid rgba(255,255,255,0.05); padding: 2.5rem; background: #030303; }
        .contact-editorial-card h4 { font-size: 1.4rem; text-transform: uppercase; color: var(--accent-editorial-red); margin-bottom: 15px; }
        .contact-editorial-card p { font-size: 1.05rem; color: #ccc; }
        
        .contact-form-section { padding: 8rem 4rem; display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; }
        .contact-form-box h2 { font-size: 3rem; text-transform: uppercase; margin-bottom: 2rem; }
        .form-double-col { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }

        .monochrome-map-container { padding: 0 4rem; height: 450px; margin-bottom: 6rem; }
        .mock-mono-map {
            width:100%; height:100%; background: #080808; border: 1px solid rgba(255,255,255,0.05);
            display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative;
        }
        .map-pin-graphic {
            width: 20px; height: 20px; background: var(--accent-editorial-red); border-radius: 50%;
            animation: mapPulse 1.5s infinite alternate;
        }
        @keyframes mapPulse { from { transform: scale(0.9); box-shadow: 0 0 0 0 rgba(255,0,0,0.7); } to { transform: scale(1.1); box-shadow: 0 0 0 15px rgba(255,0,0,0); } }
        .map-label { font-size: 1.1rem; text-transform: uppercase; margin-top: 15px; letter-spacing: 0.1em; }

        /* Accordion Core Engine */
        .faq-accordion-box { padding: 4rem; max-width: 900px; margin: 0 auto 8rem auto; }
        .faq-accordion-box h2 { font-size: 3rem; text-transform: uppercase; text-align: center; margin-bottom: 3rem; }
        .accordion-item { border-bottom: 1px solid rgba(255,255,255,0.05); padding: 1.5rem 0; cursor: pointer; }
        .accordion-header { display: flex; justify-content: space-between; align-items: center; }
        .accordion-header h4 { font-size: 1.5rem; text-transform: uppercase; font-weight: 400; }
        .accordion-icon { font-size: 1.5rem; transition: var(--transition-fast); }
        .accordion-content { max-height: 0; overflow: hidden; transition: max-height 0.5s cubic-bezier(0.25, 1, 0.5, 1); }
        .accordion-content p { padding-top: 1rem; color: #aaa; font-size: 1.05rem; }
        .accordion-item.active-accordion .accordion-icon { transform: rotate(45deg); color: var(--accent-editorial-red); }
        .accordion-item.active-accordion .accordion-content { max-height: 200px; }

        /* --- LEGAL INTERFACE ARCHITECTURES (PRIVACY & TERMS) --- */
        .legal-wrapper { padding: 10rem 4rem; display: grid; grid-template-columns: 250px 1fr; gap: 6rem; position: relative; }
        .legal-sidebar { position: sticky; top: 140px; height: fit-content; display: flex; flex-direction: column; gap: 1.5rem; }
        .legal-nav-link {
            color: #666; text-decoration: none; text-transform: uppercase; font-size: 0.95rem;
            letter-spacing: 0.1em; cursor: pointer; transition: var(--transition-fast); border-left: 2px solid transparent; padding-left: 15px;
        }
        .legal-nav-link.active-legal-nav { color: var(--accent-editorial-red); border-left-color: var(--accent-editorial-red); }
        .legal-content-pane h1 { font-size: 4rem; text-transform: uppercase; margin-bottom: 1rem; }
        .legal-chapter { margin-bottom: 5rem; scroll-margin-top: 150px; }
        .legal-chapter h2 { font-size: 2.2rem; text-transform: uppercase; margin-bottom: 1.5rem; border-bottom: 1px solid rgba(255,255,255,0.05); padding-bottom: 10px; }
        .legal-chapter p { color: #ccc; margin-bottom: 1rem; }

        /* --- GLOBAL EDITORIAL FOOTER --- */
        footer.editorial-footer {
            background: var(--bg-pure-black); border-top: 1px solid rgba(255,255,255,0.05);
            padding: 3rem 4rem; display: flex; justify-content: space-between; align-items: center;
        }
        .footer-left { font-size: 1rem; color: #666; }
        .footer-center { display: flex; gap: 1.5rem; }
        .social-circle-btn {
            width: 45px; height: 45px; border: 1px solid rgba(255,255,255,0.2); border-radius: 50%;
            display: flex; align-items: center; justify-content: center; color: white; text-decoration: none;
            font-size: 0.9rem; text-transform: uppercase; font-weight: 600; transition: var(--transition-fast);
        }
        .social-circle-btn:hover { border-color: var(--accent-editorial-red); box-shadow: 0 0 15px var(--accent-editorial-red); color: var(--accent-editorial-red); }
        .footer-right { display: flex; gap: 2rem; }
        .footer-link {
            color: #666; text-decoration: none; font-size: 1rem; text-transform: uppercase; letter-spacing: 0.05em;
            position: relative; cursor: pointer; transition: var(--transition-fast);
        }
        .footer-link::after { content: ''; position: absolute; bottom:-2px; left:0; width:0; height:1px; background: var(--accent-editorial-red); transition: var(--transition-fast); }
        .footer-link:hover { color: white; }
        .footer-link:hover::after { width: 100%; }

        /* Custom Responsive Adjustments Across Viewports */
        @media (max-width: 768px) {
            h1 { font-size: 3rem !important; }
            h2 { font-size: 2.2rem !important; }
            p { font-size: 1rem !important; }
            .hero-split { flex-direction: column; height: auto; }
            .hero-left, .hero-right { width: 100%; padding: 2rem; }
            .philosophy-section, .journal-row, .studio-atmosphere, .contact-form-section, .makeup-editorial-row { grid-template-columns: 1fr !important; gap: 3rem !important; padding: 4rem 2rem !important; }
            .signature-grid, .collage-grid, .contact-info-grid { grid-template-columns: 1fr !important; }
            .beauty-grid-container { grid-template-columns: 1fr !important; padding: 4rem 2rem !important; }
            .skin-rhythm-row { display: flex; flex-direction: column; gap: 2rem; }
            .service-row { flex-direction: column; height: auto; gap: 2rem; }
            .service-image-container { width: 100%; height: 350px; }
            .service-overlap-card { position: static; width: 100%; padding: 2rem; }
            .about-split-1, .about-split-2, .sub-split-screen { flex-direction: column !important; }
            .about-split-1-left, .about-split-1-right, .about-split-2-left, .about-split-2-right, .sub-split-form-box, .sub-split-media-box { width: 100% !important; padding: 2rem !important; }
            .legal-wrapper { grid-template-columns: 1fr !important; padding: 6rem 2rem !important; }
            .legal-sidebar { display: none; }
            footer.editorial-footer { flex-direction: column; gap: 2rem; text-align: center; padding: 3rem 2rem; }
            .floating-editorial-card { position: static; max-width: 100%; padding: 2rem; transform: none; }
            .transparent-text { font-size: 4rem !important; }
        }
