/* Custom styles that complement Tailwind */

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

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .fade-up, .fade-in {
        opacity: 1 !important;
        transform: none !important;
    }
    html { scroll-behavior: auto; }
    .card-hover, .btn-primary, .nav-link::after, .service-icon {
        transition: none !important;
    }
}

/* Selection color */
::selection {
    background-color: rgba(168, 27, 54, 0.2);
    color: #75172b;
}

/* Focus visible styles */
:focus-visible {
    outline: 2px solid #a81b36;
    outline-offset: 2px;
}

/* Subtle gradient for hero overlay animation on load */
@keyframes gradientShift {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

.hero-overlay {
    background-size: 200% 200%;
}

/* Pulse animation for the status dot */
@keyframes softPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.6; transform: scale(1.2); }
}

.animate-pulse {
    animation: softPulse 2.5s ease-in-out infinite;
}
