                   :root {

           --bg-ivory: #FAF3E1;
            --accent-green: #9BC264;
            --muted-sage: #A5C89E;
            --text-dark: #17313E;
        }

        * {
            box-sizing: border-box;
            -webkit-tap-highlight-color: transparent;
        }

        body {
            background-color: var(--bg-ivory);
            color: var(--text-dark);
            font-family: 'Montserrat', sans-serif;
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        h1, h2, h3, h4, .serif {
            font-family: 'Playfair Display', serif;
        }

        /* Animations */
        .reveal { opacity: 0; transform: translateY(40px); transition: all 0.8s cubic-bezier(0.2, 1, 0.3, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }

        .floating-image {
            animation: float 6s ease-in-out infinite;
        }
        @keyframes float {
            0%, 100% { transform: translateY(0) rotate(-2deg); }
            50% { transform: translateY(-20px) rotate(2deg); }
        }

        /* Scrollbar */
        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: var(--bg-ivory); }
        ::-webkit-scrollbar-thumb { background: var(--accent-green); border-radius: 10px; }

        /* Custom UI Elements */
        .btn-green {
            background: var(--accent-green);
            color: var(--bg-ivory);
            transition: all 0.4s ease;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 50px;
        }
        .btn-green:hover { transform: scale(1.05); filter: brightness(1.1); box-shadow: 0 10px 20px rgba(155, 194, 100, 0.4); }

        .btn-outline {
            border: 2px solid var(--accent-green);
            color: var(--text-dark);
            transition: all 0.4s ease;
            border-radius: 50px;
        }
        .btn-outline:hover { background: var(--accent-green); color: var(--bg-ivory); }

        /* Multi-page Simulation */
        #view-content { min-height: 100vh; }

        .modal-bg {
            background: rgba(23, 49, 62, 0.9);
            backdrop-filter: blur(8px);
        }

        .horizontal-scroll-container {
            display: flex;
            overflow-x: auto;
            gap: 2rem;
            padding-bottom: 2rem;
            scrollbar-width: none;
        }
        .horizontal-scroll-container::-webkit-scrollbar { display: none; }

        .staggered-card:nth-child(even) { margin-top: 4rem; }
        
        @media (max-width: 768px) {
            .staggered-card:nth-child(even) { margin-top: 0; }
        }
