/* ============================================
   ACRUX - Responsive Styles
   ============================================ */

/* XX-Large Devices (1400px+) */
@media (min-width: 1400px) {
    .container { max-width: 1320px; }
    .hero-content h1 { font-size: 4rem; }
}

/* X-Large Devices (1200px - 1399px) */
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .hero-content h1 { font-size: 3.2rem; }
}

/* Large Devices (992px - 1199px) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .hero-section { min-height: 80vh; }
    .hero-content h1 { font-size: 2.8rem; }
    .vehicle-card .vehicle-image { height: 190px; }
    .hero-car-parallax { width: 65%; bottom: -5%; right: -10%; opacity: 0.5; }
}

/* Medium Devices (768px - 991px) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .hero-section { min-height: 70vh; }
    .hero-content h1 { font-size: 2.4rem; }
    .vehicle-card .vehicle-image { height: 200px; }
    .service-card .service-img { height: 220px; }
    .filters-sidebar { position: static; margin-bottom: 1rem; }
    .hero-car-parallax { display: none; }
}

/* Small Devices (576px - 767px) */
@media (min-width: 576px) and (max-width: 767.98px) {
    .hero-section { min-height: 70vh; padding: 2rem 0; }
    .hero-content { text-align: center; }
    .hero-content .hero-services { justify-content: center; }
    .hero-buttons { justify-content: center; }
    .section-header { text-align: center; }
    .section-subtitle { margin: 0 auto; }
    .feature-card { padding: 1.5rem; }
    .vehicle-card .vehicle-image { height: 200px; }
    .service-card .service-img { height: 200px; }
    .testimonial-card { padding: 1.5rem; }
    .search-bar .search-card { padding: 1rem; }
    .booking-step { padding: 1.25rem; }
    .gallery-thumbs img { width: 70px; height: 50px; }
    .hero-car-parallax { display: none; }
}

/* Extra Small Devices (< 576px) */
@media (max-width: 575.98px) {
    .hero-section { min-height: auto; padding: 4rem 0 3rem; }
    .hero-content { text-align: center; }
    .hero-content .hero-badge { font-size: 0.75rem; margin-bottom: 0.5rem; }
    .hero-content h1 { font-size: 1.6rem; margin-bottom: 0.75rem; }
    .hero-content p.hero-subtitle { font-size: 0.9rem; margin-bottom: 1.5rem; }
    .hero-content .hero-services { justify-content: center; margin-bottom: 1rem; }
    .hero-content .hero-services span { font-size: 0.7rem; padding: 4px 10px; }
    .hero-buttons { justify-content: center; margin-top: 1rem; }
    .hero-buttons .btn { font-size: 0.85rem; padding: 0.6rem 1.25rem; }
    .section-header { text-align: center; margin-bottom: 2rem; }
    .section-subtitle { margin: 0 auto; font-size: 0.95rem; }
    .section-padding { padding: 1.5rem 0; }
    .hero-car-parallax { display: none; }
    
    .feature-card { padding: 1.25rem; }
    .feature-icon { width: 55px; height: 55px; font-size: 1.4rem; }
    
    .vehicle-card .vehicle-image { height: 180px; }
    .vehicle-card .vehicle-body { padding: 1rem; }
    .vehicle-card .vehicle-price { font-size: 0.8rem; padding: 4px 10px; }
    .vehicle-card .vehicle-name { font-size: 1rem; }
    
    .service-card .service-img { height: 200px; }
    .service-card .service-content { padding: 1.25rem; }
    
    .page-header { padding: 2.5rem 0 1.5rem; }
    .page-header h1 { font-size: 1.5rem; }
    
    .search-bar { margin-top: -20px; }
    .search-bar .search-card { padding: 1rem; }
    
    .booking-step { padding: 1rem; }
    .booking-step .step-number { width: 30px; height: 30px; font-size: 0.8rem; }
    
    .gallery-main img { height: 200px; }
    .gallery-thumbs img { width: 60px; height: 45px; }
    
    .testimonial-card { padding: 1.25rem; }
    .contact-card { padding: 1rem; }
    
    .whatsapp-float { width: 48px; height: 48px; font-size: 1.25rem; bottom: 15px; right: 15px; }
    .back-to-top { width: 38px; height: 38px; bottom: 15px; left: 15px; }
    
    .footer-main { padding: 2rem 0 1rem; }
    .footer-widget { margin-bottom: 1.5rem; }
    
    .auth-card { padding: 1.5rem; }
    .pricing-box { padding: 1.25rem; }
    .pricing-box .price { font-size: 2rem; }
    
    .stat-card { padding: 1rem; }
    .stat-card .stat-number { font-size: 1.4rem; }
    
    .data-table { font-size: 0.8rem; }
    .data-table th, .data-table td { padding: 0.5rem !important; }
    
    .map-container { height: 250px; }
}

/* Prevent horizontal scroll */
html { overflow-x: hidden; }
body { overflow-x: hidden; }

/* Touch-friendly adjustments */
@media (hover: none) and (pointer: coarse) {
    .feature-card:hover, .vehicle-card:hover, .service-card:hover {
        transform: none;
    }
    .btn:hover { transform: none; }
    
    /* Interactive touch feedback */
    .feature-card:active, .vehicle-card:active, .service-card:active, .btn:active, .nav-link:active {
        transform: scale(0.97);
        transition: transform 0.1s;
    }
}

/* Print optimizations */
@media print {
    .navbar, .footer, .whatsapp-float, .back-to-top, .top-bar { display: none !important; }
    body { background: white; color: black; }
    .page-header { background: white !important; padding: 1rem 0; }
    .page-header h1 { color: black; }
}
