        /* --- BRAND DESIGN TOKENS --- */
        :root {
            --primary-yellow: #F0E76F;
            --soft-white: #F5F5F5;
            --sky-blue: #4BB8FA;
            --vibrant-orange: #FF653F;
            --text-dark: #111111;
            
            --font-editorial: 'Manrope', sans-serif;
            --font-body: 'Google Sans', sans-serif;
            --fluid-speed: 0.6s cubic-bezier(0.16, 1, 0.3, 1);
        }

        /* --- IMMERSIVE LAYOUT RESET --- */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            -webkit-font-smoothing: antialiased;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            background-color: var(--soft-white);
            color: var(--text-dark);
            font-family: var(--font-body);
            overflow-x: hidden;
            line-height: 1.7;
        }

        /* --- TYPOGRAPHIC SYSTEM SYSTEMICS --- */
        h1, h2, h3, h4, h5, h6 {
            font-family: var(--font-editorial);
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: -0.02em;
            line-height: 1.05;
        }

        p {
            font-family: var(--font-body);
            font-size: 1.15rem;
            font-weight: 400;
            opacity: 0.95;
        }

        a {
            color: inherit;
            text-decoration: none;
        }

        .thick-hr {
            border: 0;
            height: 2px;
            background-color: var(--text-dark);
            width: 100%;
            margin: 0;
        }

        .thin-hr {
            border: 0;
            height: 1px;
            background-color: var(--text-dark);
            width: 100%;
            margin: 3rem 0;
        }

        .magazine-container {
            max-width: 1440px;
            margin: 0 auto;
            padding: 0 60px;
        }

        /* --- EDITORIAL BLOCKS & SPREADS --- */
        .magazine-section {
            padding: 120px 0;
            width: 100%;
            position: relative;
        }

        .display-massive {
            font-size: clamp(3.2rem, 8vw, 7.5rem);
            font-weight: 800;
            line-height: 0.95;
            margin-bottom: 2.5rem;
        }

        .display-large {
            font-size: clamp(2rem, 4.5vw, 4.2rem);
            font-weight: 800;
            line-height: 1.1;
            margin-bottom: 2rem;
        }

        .paragraph-lead {
            font-family: var(--font-editorial);
            font-size: clamp(1.25rem, 2vw, 1.8rem);
            font-weight: 400;
            line-height: 1.5;
            margin-bottom: 2.5rem;
        }

        /* Layout Framework Grids */
        .grid-3-equal {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
        }

        .grid-split-three-row {
            display: grid;
            grid-template-columns: 1.2fr 1fr 1.2fr;
            gap: 40px;
            align-items: center;
        }

        .grid-half-half {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0;
        }

        .grid-asymmetric-editorial {
            display: grid;
            grid-template-columns: 1.3fr 0.7fr;
            gap: 80px;
            align-items: start;
        }

        /* Media Frame Placeholders */
        .culinary-frame {
            background-color: #E2E2E2;
            background-size: cover;
            background-position: center;
            position: relative;
            transition: filter 0.5s ease;
        }

        .aspect-square { aspect-ratio: 1 / 1; }
        .aspect-tall { aspect-ratio: 3 / 4; }
        .aspect-landscape { aspect-ratio: 16 / 10; }

        /* --- GLOBAL EDITORIAL HEADER --- */
        header {
            background-color: var(--primary-yellow);
            width: 100%;
            z-index: 1000;
            position: relative;
        }

        .header-branding-row {
            text-align: center;
            position: relative;
            min-height: 130px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .logo-branding {
            font-family: var(--font-editorial);
            font-size: clamp(2.8rem, 8.5vw, 7rem);
            font-weight: 800;
            color: var(--text-dark);
            text-decoration: none;
            display: inline-block;
        }

        .header-navigation-row {
            padding: 25px 60px;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .editorial-nav {
            display: flex;
            gap: 45px;
        }

        .editorial-nav-link {
            font-family: var(--font-editorial);
            font-weight: 700;
            font-size: 0.95rem;
            text-transform: uppercase;
            letter-spacing: 0.12em;
            cursor: pointer;
            position: relative;
            transition: opacity 0.3s ease;
        }

        .editorial-nav-link:hover, .editorial-nav-link.active-page {
            opacity: 0.6;
        }

        /* Responsive Mobile Hamburger Blueprint */
        .hamburger-icon {
            display: none;
            flex-direction: column;
            gap: 5px;
            background: none;
            border: none;
            cursor: pointer;
            padding: 10px;
            z-index: 2000;
            position: absolute;
            right: 40px;
        }

        .hamburger-icon span {
            width: 28px;
            height: 2px;
            background-color: var(--text-dark);
            transition: var(--fluid-speed);
        }

        .hamburger-icon.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
        .hamburger-icon.active span:nth-child(2) { opacity: 0; }
        .hamburger-icon.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

        /* --- ROUTED CONTENT ARCHITECTURE PANELS --- */
        .journal-page-view {
            display: none;
            animation: fadeIn 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
        }

        .journal-page-view.active-view {
            display: block;
        }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(15px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Studio Parallax Panel Blueprint */
        .studio-parallax-banner {
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            min-height: 90vh;
            width: 100%;
            display: flex;
            align-items: center;
        }

        /* 3 Column Knowledge Separator System */
        .knowledge-columns {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 0;
            margin-top: 60px;
        }

        .knowledge-col {
            padding: 0 40px;
            border-right: 1.5px solid var(--text-dark);
        }

        .knowledge-col:first-child { padding-left: 0; }
        .knowledge-col:last-child { border-right: none; padding-right: 0; }

        /* Recipe Grid Engine Card Blueprint */
        .recipe-grid-matrix {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
            margin-top: 60px;
        }

        .recipe-editorial-card {
            background: transparent;
            transition: transform 0.3s ease;
        }

        .recipe-editorial-card:hover {
            transform: translateY(-5px);
        }

        .recipe-title-link {
            font-family: var(--font-editorial);
            font-weight: 800;
            font-size: 1.45rem;
            margin: 20px 0 10px 0;
            display: block;
        }

        /* Immersive Contact & Form Layout Inputs */
        .journal-input-field {
            width: 100%;
            background: transparent;
            border: none;
            border-bottom: 2px solid var(--text-dark);
            padding: 15px 5px;
            font-family: var(--font-body);
            font-size: 1.15rem;
            color: var(--text-dark);
            outline: none;
            margin-bottom: 35px;
            transition: border-color 0.3s ease;
        }

        .journal-input-field:focus {
            border-bottom-color: rgba(17, 17, 17, 0.4);
        }

        .journal-submit-btn {
            font-family: var(--font-editorial);
            font-weight: 800;
            font-size: 1rem;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            background-color: var(--text-dark);
            color: var(--soft-white);
            border: none;
            padding: 20px 45px;
            cursor: pointer;
            transition: var(--fluid-speed);
        }

        .journal-submit-btn:hover {
            background-color: var(--soft-white);
            color: var(--text-dark);
            box-shadow: inset 0 0 0 2px var(--text-dark);
        }

        /* --- GLOBAL FOOTER PATTERN --- */
        footer {
            background-color: var(--soft-white);
            border-top: 2px solid var(--text-dark);
            padding: 100px 0 40px 0;
        }

        .footer-columns-wrapper {
            display: grid;
            grid-template-columns: 2fr repeat(3, 1fr);
            gap: 50px;
            margin-bottom: 80px;
        }

        .footer-stack h4 {
            font-size: 1.05rem;
            letter-spacing: 0.08em;
            margin-bottom: 25px;
        }

        .footer-stack ul {
            list-style: none;
        }

        .footer-stack ul li {
            margin-bottom: 12px;
        }

        .footer-stack ul li a {
            font-family: var(--font-body);
            font-size: 1.05rem;
            opacity: 0.8;
            cursor: pointer;
        }

        .footer-stack ul li a:hover {
            opacity: 1;
            text-decoration: underline;
        }

        /* --- RESPONSIVE MEDIA ARCHITECTURE --- */
        @media (max-width: 1100px) {
            .magazine-container { padding: 0 40px; }
            .grid-split-three-row { grid-template-columns: 1fr; gap: 30px; }
            .grid-split-three-row p { text-align: left; order: -1; }
            .knowledge-columns { grid-template-columns: 1fr; gap: 40px; }
            .knowledge-col { border-right: none; border-bottom: 1px solid var(--text-dark); padding: 0 0 30px 0; }
            .knowledge-col:last-child { border-bottom: none; }
            .recipe-grid-matrix { grid-template-columns: repeat(2, 1fr); }
            .footer-columns-wrapper { grid-template-columns: 1fr 1fr; gap: 40px; }
        }

        @media (max-width: 768px) {
            .header-branding-row { padding: 25px 20px; justify-content: flex-start; }
            .header-navigation-row { display: none; }
            .hamburger-icon { display: flex; }
            
            .editorial-nav {
                position: fixed;
                top: 0; right: -100%;
                width: 85%; height: 100vh;
                background-color: var(--primary-yellow);
                flex-direction: column;
                justify-content: center;
                padding: 50px;
                z-index: 1500;
                transition: var(--fluid-speed);
                box-shadow: -10px 0 30px rgba(0,0,0,0.1);
            }
            
            .editorial-nav.mobile-open {
                right: 0;
            }

            .editorial-nav-link { font-size: 1.4rem; }
            .grid-3-equal { grid-template-columns: 1fr; }
            .grid-half-half { grid-template-columns: 1fr; }
            .grid-asymmetric-editorial { grid-template-columns: 1fr; }
            .recipe-grid-matrix { grid-template-columns: 1fr; }
            .footer-columns-wrapper { grid-template-columns: 1fr; }
        }
