/* Custom styles for Live Oak RV */

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

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #1E1E1E;
}

::-webkit-scrollbar-thumb {
    background: #FF6B6B;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: #E55A5A;
}

/* Scroll reveal animations */
.scroll-reveal {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    .scroll-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
    
    html {
        scroll-behavior: auto;
    }
}

/* Default state for scroll-reveal elements (visible without JS) */
.scroll-reveal {
    opacity: 1;
    transform: translateY(0);
}

/* Mobile menu transition */
#mobile-menu {
    transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

/* Button hover effects */
button, a {
    transition: all 0.3s ease;
}

/* Input focus styles */
input:focus, textarea:focus, select:focus {
    outline: none;
    box-shadow: 0 0 0 2px rgba(255, 107, 107, 0.2);
}

/* Image loading placeholder */
img {
    background-color: #2A2A2A;
}

/* Ensure text is readable on all backgrounds */
.text-white {
    color: #ffffff;
}

.text-stone-200 {
    color: #e7e5e4;
}

.text-stone-300 {
    color: #d6d3d1;
}

.text-stone-400 {
    color: #a8a29e;
}

.text-stone-500 {
    color: #78716c;
}

.text-stone-600 {
    color: #57534e;
}

.text-stone-700 {
    color: #44403c;
}

/* Nav scroll effect */
.nav-scrolled {
    background-color: rgba(18, 18, 18, 0.95);
    backdrop-filter: blur(10px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

/* Coral accent utilities */
.text-coral-400 {
    color: #FF7F50;
}

.bg-coral-500 {
    background-color: #FF6B6B;
}

.bg-coral-500\/10 {
    background-color: rgba(255, 107, 107, 0.1);
}

.bg-coral-500\/20 {
    background-color: rgba(255, 107, 107, 0.2);
}

.border-coral-500 {
    border-color: #FF6B6B;
}

.border-coral-500\/30 {
    border-color: rgba(255, 107, 107, 0.3);
}
