/* 
    Magnolia Junction Styles
    Custom overrides and animations
*/

/* Smooth Scrolling */
html {
    scroll-behavior: smooth;
}

/* Base Typography Tweaks */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 
   Reveal Animations 
   Initial state: hidden/off-screen
   JS adds .is-visible to trigger transition
*/
.reveal-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.reveal-left {
    opacity: 0;
    transform: translateX(-30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.reveal-right {
    opacity: 0;
    transform: translateX(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

/* Animation Delays */
.delay-100 { transition-delay: 0.1s; }
.delay-200 { transition-delay: 0.2s; }
.delay-300 { transition-delay: 0.3s; }

/* Visible State (Toggled by JS) */
.is-visible {
    opacity: 1;
    transform: translate(0, 0);
}

/* Mobile Menu Transition */
#mobile-menu {
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
}

/* Focus States for Accessibility */
button:focus-visible, a:focus-visible {
    outline: 2px solid #fbbf24; /* amber-400 */
    outline-offset: 4px;
}
