body {
    font-family: sans-serif
}
.navbar { font-weight: 200; }
.navbar.shrink { padding: 18px 35px; transition: all 0.3s ease-in-out; }
.navbar.expand { transition: all 0.3s ease-in-out; }
.site-name { transition: opacity 0.9s ease-in-out 2s; }
.navbar.shrink .site-name { opacity: 0; visibility: hidden; }
.logo-container { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.navbar.shrink .logo-container { transform: translate(-50%, -35%); transition: transform 0.2s ease-in-out; }
.navbar.expand .logo-container { transition: transform 0.2s ease-in-out; }
.logo-container img { transition: transform 0.3s ease-in-out; }
.navbar.shrink .logo-container img { transform: scale(1.2); }
.navbar.expand .logo-container img { transition: transform 0.3s ease-in-out; }
.mobile-menu { display: none; }
.hide-desktop-menu { display: none; }
@media (max-width: 900px) {
    .desktop-menu { display: none !important; }
    .mobile-menu { display: block !important; }
    .navbar { padding-right: 30px !important; }
}
.navbar.hidden { display: none; }
.desktop-menu.hidden { display: none; }

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 40px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate-fade-in-up {
    animation: fadeInUp 0.8s ease-out forwards;
    opacity: 0; /* Start hidden */
}

.delay-100 { animation-delay: 0.1s; }
.delay-200 { animation-delay: 0.2s; }
.delay-300 { animation-delay: 0.3s; }

/* Modern Layout Helpers */
.glass-panel {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.text-shadow-sm {
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}