/* Custom overrides and enhancements */

/* Smooth scroll offset for fixed nav */
section[id] {
    scroll-margin-top: 80px;
}

/* Hero animations — only below the fold content uses reveal */
.hero-anim {
    opacity: 0;
    transform: translateY(24px);
    animation: heroFadeUp 0.8s ease forwards;
}
.hero-anim:nth-child(2) { animation-delay: 0.15s; }
.hero-anim:nth-child(3) { animation-delay: 0.3s; }
.hero-anim:nth-child(4) { animation-delay: 0.45s; }
.hero-anim:nth-child(5) { animation-delay: 0.6s; }

@keyframes heroFadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Scroll reveal — progressive enhancement */
@media (prefers-reduced-motion: no-preference) {
    .reveal {
        opacity: 0;
        transform: translateY(32px);
        transition: opacity 0.7s ease, transform 0.7s ease;
    }
    .reveal.revealed {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Mobile menu transition */
#mobile-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}
#mobile-menu.open {
    max-height: 300px;
}

/* Button hover scale */
button:hover {
    transform: scale(1.02);
}

/* Image hover zoom */
.rounded-2xl.overflow-hidden img {
    transition: transform 0.6s ease;
}
.rounded-2xl.overflow-hidden:hover img {
    transform: scale(1.03);
}
