/* =============================================
   Vanika Enterprises - Responsive Styles
   ============================================= */

/* Extra large devices (1400px+) */
@media (min-width: 1400px) {
    .hero-slide .slide-content h1 { font-size: 64px; }
}

/* Large devices (1200px - 1399px) */
@media (max-width: 1399px) {
    .hero-slide .slide-content h1 { font-size: 52px; }
    .section-header h2 { font-size: 38px; }
}

/* Medium devices (992px - 1199px) */
@media (max-width: 1199px) {
    .hero-slide .slide-content h1 { font-size: 44px; }
    .hero-slide .slide-content p { font-size: 18px; }
    .section-header h2 { font-size: 34px; }
    .about-section .about-content h2 { font-size: 34px; }
    .featured-property-card .featured-content { padding: 25px; }
    .featured-property-card .featured-content .price { font-size: 26px; }
    .nav-actions { margin-left: 10px; }
    .nav-actions .btn-gold { padding: 8px 16px; font-size: 13px; }
}

/* Tablet (768px - 991px) */
@media (max-width: 991px) {
    .top-bar { display: none; }
    
    .navbar-nav {
        padding: 15px 0;
    }
    
    .navbar-nav .nav-link {
        padding: 10px 0 !important;
        border-bottom: 1px solid var(--gray-light);
    }
    
    .navbar-nav .nav-link.active::after {
        display: none;
    }
    
    .nav-actions {
        margin: 15px 0 0;
        padding-top: 15px;
        border-top: 1px solid var(--gray-light);
    }
    
    .hero-section { height: 65vh; min-height: 400px; }
    .hero-slide .slide-content h1 { font-size: 36px; }
    .hero-slide .slide-content p { font-size: 16px; }
    .hero-slide .slide-content .btn-hero { padding: 12px 25px; font-size: 14px; }
    
    .property-search-section { margin-top: -40px; }
    .property-search-section .search-wrapper { padding: 25px; }
    
    .section-header h2 { font-size: 30px; }
    
    .about-section .about-content h2 { font-size: 30px; }
    .about-section .about-image .experience-badge { position: relative; bottom: 0; right: 0; margin-top: 20px; }
    
    .featured-property-card .featured-image { min-height: 250px; }
    .featured-property-card .featured-content { padding: 25px; }
    .featured-property-card .featured-content h3 { font-size: 22px; }
    
    .page-hero { padding: 60px 0 40px; }
    .page-hero h1 { font-size: 32px; }
    
    .property-gallery .main-image { height: 350px; }
    .property-info-header .price { font-size: 28px; }
    
    .footer-bottom-links { text-align: left; margin-top: 10px; }
    .footer-bottom-links li { margin-left: 0; margin-right: 20px; }
    
    .cta-section h2 { font-size: 32px; }
    
    .property-card .card-image { height: 200px; }
    
    .service-detail-card { padding: 25px; }
    
    .hero-slider .swiper-button-next,
    .hero-slider .swiper-button-prev { display: none; }
}

/* Mobile (576px - 767px) */
@media (max-width: 767px) {
    .hero-section { height: 55vh; min-height: 350px; }
    .hero-slide .slide-content h1 { font-size: 28px; }
    .hero-slide .slide-content p { font-size: 14px; margin-bottom: 20px; }
    .hero-slide .slide-content .btn-hero { padding: 10px 20px; font-size: 13px; }
    
    .section-header { margin-bottom: 35px; }
    .section-header h2 { font-size: 26px; }
    .section-header p { font-size: 15px; }
    
    .property-search-section { margin-top: -30px; }
    .property-search-section .search-wrapper { padding: 20px; }
    
    .about-section { padding: 60px 0; }
    .about-section .about-content h2 { font-size: 26px; }
    .about-section .about-stats .stat-item h3 { font-size: 26px; }
    .about-section .about-image { margin-top: 30px; }
    
    .services-section { padding: 60px 0; }
    .why-choose-section { padding: 60px 0; }
    .testimonials-section { padding: 60px 0; }
    .locations-section { padding: 60px 0; }
    
    .contact-section-home { padding: 60px 0; }
    .footer-top { padding: 50px 0 30px; }
    
    .section-padding { padding: 60px 0; }
    
    .property-card .card-image { height: 200px; }
    .property-card .card-body { padding: 15px; }
    .property-card .card-body .price { font-size: 20px; }
    .property-card .card-body .property-title { font-size: 16px; }
    
    .featured-property-card .featured-content { padding: 20px; }
    .featured-property-card .featured-content .price { font-size: 24px; }
    .featured-property-card .featured-content h3 { font-size: 20px; }
    .featured-property-card .featured-content .specs-grid { grid-template-columns: repeat(3, 1fr); gap: 8px; }
    
    .page-hero { padding: 50px 0 35px; }
    .page-hero h1 { font-size: 26px; }
    
    .property-gallery .main-image { height: 280px; }
    .property-info-header .price { font-size: 24px; }
    
    .amenities-grid { grid-template-columns: repeat(2, 1fr); }
    
    .contact-page-section .contact-form-wrapper { padding: 25px; }
    .contact-page-section .contact-info-card { padding: 25px; }
    
    .cta-section h2 { font-size: 26px; }
    .cta-section p { font-size: 15px; }
    
    .brand-text h2 { font-size: 18px; }
    .brand-logo > i { font-size: 28px; }
    
    .blog-card .blog-image { height: 180px; }
    
    .team-card .team-image { height: 220px; }
    
    .whatsapp-float { padding: 10px 15px; font-size: 13px; bottom: 80px; }
    .whatsapp-float span { display: none; }
    
    .back-to-top { width: 38px; height: 38px; bottom: 20px; right: 20px; }
    
    .service-card { padding: 25px 20px; }
    .service-card .service-icon { width: 60px; height: 60px; font-size: 24px; }
    
    .testimonial-card { padding: 25px; margin: 10px; }
    
    .about-section .about-stats { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    
    .property-sidebar .widget { padding: 20px; }
    
    .filter-sidebar { margin-bottom: 25px; }
    
    .error-page .error-code { font-size: 80px; }
}

/* Small Mobile (375px - 575px) */
@media (max-width: 575px) {
    .hero-section { height: 50vh; min-height: 300px; }
    .hero-slide .slide-content h1 { font-size: 22px; }
    .hero-slide .slide-content p { font-size: 13px; margin-bottom: 15px; }
    .hero-slide .slide-content .btn-hero { padding: 8px 16px; font-size: 12px; }
    
    .section-header h2 { font-size: 22px; }
    
    .property-search-section .search-wrapper { padding: 15px; }
    .property-search-section .search-wrapper h3 { font-size: 16px; }
    
    .about-section .about-content h2 { font-size: 22px; }
    .about-section .about-stats { grid-template-columns: 1fr 1fr; }
    .about-section .about-stats .stat-item { padding: 15px; }
    .about-section .about-stats .stat-item h3 { font-size: 22px; }
    .about-section .about-stats .stat-item i { font-size: 24px; }
    
    .property-gallery .main-image { height: 220px; }
    .property-gallery .gallery-thumbs .thumb { height: 60px; }
    
    .property-info-header .price { font-size: 22px; }
    .property-info-header h1 { font-size: 22px; }
    
    .amenities-grid { grid-template-columns: 1fr 1fr; }
    .amenities-grid .amenity-item { font-size: 13px; padding: 8px 12px; }
    
    .property-specs-table table td { padding: 10px; font-size: 13px; }
    
    .featured-property-card .featured-content .specs-grid .spec-item { padding: 8px; }
    .featured-property-card .featured-content .specs-grid .spec-item i { font-size: 16px; }
    .featured-property-card .featured-content .specs-grid .spec-item strong { font-size: 14px; }
    
    .contact-page-section .contact-form-wrapper { padding: 20px; }
    
    .cta-section h2 { font-size: 22px; }
    .cta-section .btn-cta { padding: 12px 25px; font-size: 14px; }
    
    .location-card { height: 200px; }
    
    .service-detail-card { padding: 20px; }
    .service-detail-card .service-icon-lg { width: 70px; height: 70px; font-size: 28px; }
    
    .page-hero h1 { font-size: 22px; }
    
    .brand-text h2 { font-size: 16px; }
    .brand-text span { font-size: 10px; }
    
    .whatsapp-float { padding: 8px 12px; }
    .whatsapp-float i { font-size: 18px; }
    
    .newsletter-popup { width: 260px; right: 15px; }
}

/* Extra Small Mobile (<375px) */
@media (max-width: 374px) {
    .hero-section { height: 45vh; }
    .hero-slide .slide-content h1 { font-size: 20px; }
    .about-section .about-stats { grid-template-columns: 1fr; }
    .amenities-grid { grid-template-columns: 1fr; }
}

/* Print Styles */
@media print {
    .top-bar,
    .main-header,
    .whatsapp-float,
    .back-to-top,
    .footer,
    .nav-actions {
        display: none !important;
    }
}

/* Dark Mode Support */
@media (prefers-color-scheme: dark) {
    /* Optional: Will be handled by JS toggle */
}

/* High DPI Screens */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .hero-slide img,
    .property-card .card-image img {
        image-rendering: -webkit-optimize-contrast;
    }
}

/* Accessibility: Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
