        :root {
            --orange: #FF7F11;
            --peach: #FFDAB3;
            --yellow: #FFD41D;
            --white: #ffffff;
            --black: #000000;
        }

        body {
            font-family: "Alumni Sans Pinstripe", sans-serif;
            background-color: var(--white);
            color: var(--black);
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        /* --- HEADER LOGIC --- */
        #main-header {
            position: fixed;
            top: 0;
            width: 100%;
            z-index: 1000;
            transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .header-row {
            background-color: var(--white);
            color: var(--orange);
            transition: all 0.5s ease;
            overflow: hidden;
        }

        /* Initial Load Animations */
        .row-hidden { transform: translateY(-100%); opacity: 0; }
        .row-visible { transform: translateY(0); opacity: 1; }

        /* Scroll States */
        .collapsed #row-2, .collapsed #row-3 {
            max-height: 0;
            padding-top: 0;
            padding-bottom: 0;
            border: none;
            opacity: 0;
        }

        /* --- TEXT ANIMATIONS --- */
        .typewriter::after {
            content: "|";
            animation: blink 0.8s infinite;
        }
        @keyframes blink { 50% { opacity: 0; } }

        .reveal-left { opacity: 0; transform: translateX(-100px); transition: 1s ease-out; }
        .reveal-right { opacity: 0; transform: translateX(100px); transition: 1s ease-out; }
        .reveal-up { opacity: 0; transform: translateY(50px); transition: 1s ease-out; }
        .reveal-scale { opacity: 0; transform: scale(0.8); transition: 1s ease-out; }
        .active-reveal { opacity: 1; transform: translate(0) scale(1); }

        /* --- HERO CAROUSEL --- */
        .hero-carousel {
            height: 100vh;
            position: relative;
            background: var(--white);
        }
        .hero-slide {
            position: absolute;
            inset: 0;
            opacity: 0;
            transition: opacity 1.2s ease-in-out, transform 8s linear;
            background-size: cover;
            background-position: center;
        }
        .hero-slide.active { opacity: 1; transform: scale(1.1); }
        .hero-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to bottom, transparent, rgba(0,0,0,0.2));
            box-shadow: inset 0 0 100px rgba(0,0,0,0.1);
        }

        /* --- CARDS & INTERACTION --- */
        .card-lift {
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }
        .card-lift:hover {
            transform: translateY(-15px);
            box-shadow: 0 20px 40px rgba(255, 127, 17, 0.2);
        }

        .masonry-item {
            break-inside: avoid;
            margin-bottom: 2rem;
        }

        .btn-bounce:hover {
            animation: bounce 0.5s ease infinite alternate;
        }
        @keyframes bounce { from { transform: translateY(0); } to { transform: translateY(-5px); } }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: var(--white); }
        ::-webkit-scrollbar-thumb { background: var(--orange); border-radius: 10px; }
