/* Base Styles */
body {
    scroll-behavior: smooth;
}

/* Hero Banner */
.hero-banner {
    background-image: url('../images/banner-desktop.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 100vh;
}

@media (max-width: 768px) {
    .hero-banner {
        background-image: url('../images/banner-mobile.jpg');
    }
}

/* Animations */
.hover-scale {
    transition: transform 0.3s ease;
}

.hover-scale:hover {
    transform: scale(1.05);
}

/* Custom Shadows */
.custom-shadow {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* Custom Transitions */
.custom-transition {
    transition: all 0.3s ease;
}

/* Section Decorative Line */
.section-line {
    width: 6rem;
    height: 2px;
    background-color: #D4AF37;
    margin: 1rem auto 2rem;
}

/* Card Hover Effects */
.card-hover {
    transition: all 0.3s ease;
}

.card-hover:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    transform: translateY(-2px);
}

/* Mobile Menu Animation */
@keyframes slideDown {
    from {
        transform: translateY(-10px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

#mobileMenu:not(.hidden) {
    animation: slideDown 0.3s ease-out;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(212, 175, 55, 0.7);
    }
    
    70% {
        transform: scale(1.05);
        box-shadow: 0 0 0 10px rgba(212, 175, 55, 0);
    }
    
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(212, 175, 55, 0);
    }
}

.pulse-animation {
    animation: pulse 2s infinite;
} 