        :root {
            --rust: #7B542F;
            --sand: #FFE1AF;
            --teal: #2F5755;
            --white: #FFFFFF;
        }

        body {
            font-family: 'Federo', sans-serif;
            background-color: var(--white);
            color: var(--teal);
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        h1, h2, h3, h4, .mono {
            text-transform: uppercase;
        }

        /* 1️⃣ HEADER - TALL TRANSPARENT OVERLAY */
        header {
            height: 100vh;
            width: 140px;
            position: fixed;
            left: 0;
            top: 0;
            background: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(15px);
            z-index: 100;
            border-right: 1px solid rgba(123, 84, 47, 0.1);
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            align-items: center;
            padding: 50px 0;
        }

        .nav-vertical {
            writing-mode: vertical-rl;
            transform: rotate(180deg);
            display: flex;
            gap: 20px;
        }

        .nav-link {
            padding: 15px 0;
            letter-spacing: 5px;
            font-size: 0.85rem;
            transition: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            position: relative;
            cursor: pointer;
        }

        .nav-link::after {
            content: '';
            position: absolute;
            right: -10px;
            top: 0;
            height: 0;
            width: 3px;
            background: var(--rust);
            transition: 0.4s;
        }

        .nav-link:hover::after, .nav-link.active::after { height: 100%; }
        .nav-link:hover, .nav-link.active { color: var(--rust); }

        /* 2️⃣ HERO - STRIPE & COLLAGE */
        .hero-container {
            height: 100vh;
            position: relative;
            overflow: hidden;
            background: #000;
        }

        .hero-stripes {
            position: absolute;
            inset: 0;
            display: flex;
            justify-content: space-around;
            pointer-events: none;
            z-index: 10;
        }

        .stripe-text {
            writing-mode: vertical-rl;
            font-size: 10vh;
            color: rgba(255, 255, 255, 0.12);
            animation: scrollStripe 25s linear infinite;
        }

        @keyframes scrollStripe {
            from { transform: translateY(100%); }
            to { transform: translateY(-100%); }
        }

        .collage-img {
            position: absolute;
            width: 320px;
            height: 450px;
            object-fit: cover;
            filter: sepia(0.2) brightness(0.8);
            transition: transform 0.2s ease-out;
            z-index: 5;
            box-shadow: 30px 30px 80px rgba(0,0,0,0.4);
            border-radius: 4px;
        }

        /* CENTERED CONTENT WRAPPER */
        .content-center {
            margin-left: 140px;
            display: flex;
            flex-direction: column;
            align-items: center;
            width: calc(100% - 140px);
        }

        .section-inner {
            max-width: 1200px;
            width: 100%;
            margin: 0 auto;
            text-align: center;
        }

        /* 5️⃣ HORIZONTAL TIMELINE */
        .timeline-section {
            background: var(--teal);
            padding: 120px 0;
            width: 100%;
        }

        .timeline-scroll {
            display: flex;
            overflow-x: auto;
            padding: 50px 100px;
            gap: 150px;
            scrollbar-width: none;
        }

        .timeline-item {
            min-width: 350px;
            color: var(--sand);
            position: relative;
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .timeline-line {
            position: absolute;
            top: 60px;
            left: -75px;
            width: 150px;
            height: 1px;
            background: var(--sand);
            opacity: 0.2;
        }

        .timeline-img {
            width: 140px;
            height: 140px;
            border-radius: 50%;
            border: 2px solid var(--sand);
            padding: 8px;
            transition: 0.5s;
            cursor: pointer;
            object-fit: cover;
        }

        .timeline-img:hover { transform: scale(1.15) rotate(5deg); box-shadow: 0 0 30px rgba(255,225,175,0.3); }

        /* MASONRY */
        .masonry-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-auto-rows: 250px;
            gap: 25px;
            padding: 80px 0;
        }

        .masonry-item { position: relative; overflow: hidden; background: #eee; cursor: pointer; }
        .masonry-item.wide { grid-column: span 2; }
        .masonry-item.tall { grid-row: span 2; }
        .masonry-item img { width: 100%; height: 100%; object-fit: cover; transition: 0.8s; }
        .masonry-item:hover img { transform: scale(1.05); filter: brightness(0.7); }

        /* QUICK VIEW */
        #quickview {
            position: fixed;
            top: 0;
            right: -100%;
            width: 60vw;
            height: 100vh;
            background: var(--white);
            z-index: 200;
            transition: 0.8s cubic-bezier(0.16, 1, 0.3, 1);
            box-shadow: -40px 0 100px rgba(0,0,0,0.3);
            overflow-y: auto;
            padding: 100px;
        }
        #quickview.active { right: 0; }

        .btn-editorial {
            background: var(--rust);
            color: var(--sand);
            padding: 1.2rem 2.5rem;
            display: inline-block;
            font-size: 0.9rem;
            letter-spacing: 3px;
            transition: 0.4s;
            border: 1px solid var(--rust);
            text-transform: uppercase;
        }
        .btn-editorial:hover { background: transparent; color: var(--rust); transform: translateY(-3px); }

        /* PAGES */
        .page { display: none; width: 100%; }
        .page.active { display: block; animation: fadeIn 1s ease; }
        @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

        @media (max-width: 50px) {
            header { width: 100%; height: 80px; flex-direction: row; border-right: none; border-bottom: 1px solid var(--sand); padding: 0 30px; }
            .nav-vertical { writing-mode: horizontal-tb; transform: rotate(0); display: none; }
            .content-center { margin-left: 0; width: 100%; padding-top: 80px; }
            #quickview { width: 100vw; padding: 60px 30px; }
            .masonry-grid { grid-template-columns: 1fr; grid-auto-rows: 300px; }
        }
    