        :root {
            --primary: #705C53;
            --accent-soft: #D2E0FB;
            --accent-fresh: #A1D6B2;
            --base: #FFFFFF;
        }

        body {
            font-family: 'Varta', sans-serif;
            background-color: var(--base);
            color: var(--primary);
            margin: 0;
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        /* --- Animations & Effects --- */
        .floating { animation: float 6s ease-in-out infinite; }
        @keyframes float {
            0%, 100% { transform: translateY(0) rotate(0deg); }
            50% { transform: translateY(-15px) rotate(1deg); }
        }

        .reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }

        .line-draw { height: 1px; background: rgba(112, 92, 83, 0.15); width: 0; transition: width 1.2s ease-in-out; }
        .line-draw.active { width: 100%; }

        /* --- Header Styles --- */
        header {
            position: fixed;
            top: 0; width: 100%; z-index: 1000;
            transition: all 0.4s ease;
            padding: 1.5rem 0;
        }
        header.scrolled {
            background: rgba(255,255,255,0.95);
            backdrop-filter: blur(10px);
            padding: 1rem 0;
            box-shadow: 0 4px 20px rgba(0,0,0,0.05);
        }

        /* --- Hero Grid --- */
        .hero-bg {
            background-color: var(--accent-soft);
            background-image: url('https://i.pinimg.com/736x/ac/3c/02/ac3c022f06980e6699c5389a1adf195a.jpg');
            background-blend-mode: overlay;
            background-attachment: fixed;
            background-size: cover;
        }

        /* --- Card Stack (Stories) --- */
        .card-stack-container {
            position: relative;
            height: 600px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .story-card {
            background: white;
            padding: 3rem;
            width: 90%;
            max-width: 500px;
            position: absolute;
            transition: all 0.5s ease;
            box-shadow: 0 30px 60px rgba(0,0,0,0.1);
        }
        .story-card:nth-child(1) { transform: rotate(-2deg) translate(-10px, -10px); z-index: 3; }
        .story-card:nth-child(2) { transform: rotate(3deg) translate(20px, 20px); z-index: 2; }
        .story-card:nth-child(3) { transform: rotate(-1deg) translate(50px, 50px); z-index: 1; }

        /* --- Split Section --- */
        .split-fixed-image {
            background-image: url('https://i1-c.pinimg.com/1200x/c6/de/85/c6de857e97e4ea5efcf78c9df1d294c1.jpg');
            background-size: cover;
            background-position: center;
            height: 100vh;
            position: sticky;
            top: 0;
        }

        /* --- Search Overlay --- */
        #search-overlay {
            position: fixed;
            inset: 0;
            background: var(--base);
            z-index: 3000;
            display: none;
            padding: 10% 5%;
        }

        /* --- Modals --- */
        #modal-overlay {
            position: fixed;
            inset: 0;
            background: rgba(112, 92, 83, 0.6);
            backdrop-filter: blur(8px);
            z-index: 4000;
            display: none;
            align-items: center;
            justify-content: center;
        }

        .tab-btn { position: relative; cursor: pointer; opacity: 0.5; transition: opacity 0.3s; }
        .tab-btn.active { opacity: 1; }
        .tab-btn::after {
            content: '';
            position: absolute;
            bottom: -5px; left: 0;
            width: 0; height: 2px;
            background: var(--primary);
            transition: width 0.3s ease;
        }
        .tab-btn.active::after { width: 100%; }

        .image-overlay-bg {
            background-image: url('https://i1-c.pinimg.com/736x/2a/9f/72/2a9f724c7a1985bfe6883fa734a16049.jpg');
            background-attachment: fixed;
            background-size: cover;
        }

        @media (max-width: 1024px) {
            .split-fixed-image { position: relative; height: 400px; }
        }
