        :root {
            --bg-beige: #F5E9D8;
            --bg-green: #F0FFC2;
            --text-black: #000000;
        }

        body {
            font-family: 'Nunito', sans-serif;
            background-color: var(--bg-beige);
            color: var(--text-black);
            margin: 0;
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        /* Typography & Editorial Spacing */
        h1, h2, h3 { font-weight: 800; letter-spacing: -0.02em; line-height: 1.1; }
        p { font-weight: 400; line-height: 1.8; color: rgba(0,0,0,0.85); }
        .quote-text { font-weight: 300; font-style: italic; opacity: 0.8; }
        .tracking-wide { letter-spacing: 0.15em; text-transform: uppercase; font-size: 0.7rem; font-weight: 800; }

        /* Navigation */
        .nav-link { position: relative; font-weight: 600; font-size: 0.9rem; transition: opacity 0.3s ease; }
        .nav-link::after {
            content: '';
            position: absolute;
            width: 0;
            height: 1px;
            bottom: -2px;
            left: 0;
            background: black;
            transition: width 0.4s ease;
        }
        .nav-link:hover::after { width: 100%; }

        /* Animation System */
        .reveal { opacity: 0; transform: translateY(40px); transition: all 1s cubic-bezier(0.22, 1, 0.36, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }
        .reveal-left { opacity: 0; transform: translateX(-40px); transition: all 1s cubic-bezier(0.22, 1, 0.36, 1); }
        .reveal-left.active { opacity: 1; transform: translateX(0); }

        /* Layout Elements */
        .btn-black {
            border: 1px solid black;
            padding: 14px 36px;
            text-transform: uppercase;
            font-size: 0.75rem;
            font-weight: 800;
            letter-spacing: 0.1em;
            background: transparent;
            transition: all 0.3s ease;
        }
        .btn-black:hover { background: black; color: white; }

        .editorial-line { border-top: 1px solid rgba(0,0,0,0.15); width: 100%; padding: 2rem 0; }

        /* Fixed Background Parallax */
        .parallax-fixed {
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            height: 100vh;
            width: 100%;
        }

        .scroll-container {
            height: 500px;
            overflow-y: auto;
            padding-right: 20px;
        }
        .scroll-container::-webkit-scrollbar { width: 2px; }
        .scroll-container::-webkit-scrollbar-thumb { background: black; }

        /* Product Cards */
        .product-img-wrapper { overflow: hidden; background: white; transition: all 0.5s ease; }
        .product-img-wrapper img { transition: transform 0.8s ease; }
        .product-card:hover .product-img-wrapper img { transform: scale(1.08); }
        .product-card:hover { transform: translateY(-8px); transition: transform 0.4s ease; }

        /* Input Styles */
        .minimal-input {
            background: transparent;
            border: none;
            border-bottom: 1px solid black;
            padding: 12px 0;
            width: 100%;
            outline: none;
            font-weight: 600;
            transition: border-color 0.3s ease;
        }
        .minimal-input:focus { border-bottom-width: 2px; }
