/* =============================================
   AVASA - RESPONSIVE STYLES (ALL MEDIA QUERIES)
   ============================================= */

/* Large Desktop (max 1400px) */
@media (max-width: 1400px) {
    .container {
        max-width: 1200px;
    }

    .hero-title {
        font-size: var(--avasa-font-5xl);
    }

    .rooms-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .services-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* Desktop (max 1200px) */
@media (max-width: 1200px) {
    .container {
        max-width: 992px;
    }

    .hero-title {
        font-size: var(--avasa-font-4xl);
    }

    .booking-form-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .rooms-grid,
    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .testimonials-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gallery-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .footer-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Tablet (max 992px) */
@media (max-width: 992px) {
    .container {
        max-width: 768px;
    }

    h1 {
        font-size: var(--avasa-font-4xl);
    }

    h2 {
        font-size: var(--avasa-font-3xl);
    }

    h3 {
        font-size: var(--avasa-font-2xl);
    }

    .section {
        padding: var(--avasa-space-3xl) 0;
    }

    .hero-title {
        font-size: var(--avasa-font-3xl);
    }

    .hero-booking-form {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        margin-top: var(--avasa-space-2xl);
    }

    .booking-form-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .about-grid {
        grid-template-columns: 1fr;
    }

    .about-content {
        padding-left: 0;
        padding-top: var(--avasa-space-xl);
    }

    .rooms-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .testimonials-grid {
        grid-template-columns: 1fr;
    }

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: var(--avasa-space-2xl);
    }

    .admin-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Mobile Navigation */
    .header-top-bar {
        display: none !important;
    }

    .header-inner {
        padding: var(--avasa-space-md) 0;
    }

    /* Main Navigation container for mobile */
    .main-navigation {
        position: static;
    }

    .menu-toggle {
        display: flex;
        order: 3;
        z-index: 1001;
    }

    .site-branding {
        flex: 1;
    }

    .main-nav {
        position: fixed;
        top: 0;
        right: -100%;
        width: 80%;
        max-width: 400px;
        height: 100vh;
        background-color: var(--avasa-black);
        display: flex !important;
        flex-direction: column;
        padding: var(--avasa-space-4xl) var(--avasa-space-xl);
        transition: right var(--avasa-transition-smooth);
        z-index: 1000;
    }

    .main-nav.active {
        right: 0;
    }

    /* Menu Overlay */
    body.menu-open {
        overflow: hidden;
    }

    body.menu-open::before {
        content: '';
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: 999;
    }

    .main-nav a {
        font-size: var(--avasa-font-lg);
        letter-spacing: 0.25em;
        padding: var(--avasa-space-md) 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    }

    .header-actions {
        order: 2;
        margin-right: var(--avasa-space-md);
    }

    .site-logo-text {
        font-size: var(--avasa-font-xl);
    }

    /* Mobile Dropdown */
    .dropdown-toggle {
        display: block;
    }

    .sub-menu {
        display: none;
        position: static;
        background-color: transparent;
        box-shadow: none;
        padding-left: var(--avasa-space-lg);
    }

    .sub-menu a {
        color: var(--avasa-gray-300);
    }

    .sub-menu a:hover {
        background-color: transparent;
        color: var(--avasa-gold);
    }

    /* Newsletter inline stacking */
    .newsletter-inner {
        flex-direction: column;
        text-align: center;
    }

    /* Slider */
    .slider-prev {
        left: 20px;
    }

    .slider-next {
        right: 20px;
    }

    .slider-counter {
        display: none;
    }

    .slider-scroll-down {
        display: none;
    }

    .slider-booking-form .booking-form-grid {
        grid-template-columns: 1fr 1fr;
    }

    .hero-slider .slider-dots {
        bottom: 200px;
    }

    .hero-slider .slider-progress {
        bottom: 165px;
    }

    /* Admin bar */
    .admin-bar .site-header {
        top: 46px;
    }
}

/* Mobile (max 768px) */
@media (max-width: 768px) {
    .container {
        max-width: 100%;
        padding: 0 var(--avasa-space-md);
    }

    h1 {
        font-size: var(--avasa-font-3xl);
    }

    h2 {
        font-size: var(--avasa-font-2xl);
    }

    h3 {
        font-size: var(--avasa-font-xl);
    }

    .section {
        padding: var(--avasa-space-2xl) 0;
    }

    .hero-title {
        font-size: var(--avasa-font-2xl);
    }

    .hero-description {
        font-size: var(--avasa-font-base);
    }

    .hero-buttons {
        flex-direction: column;
        align-items: center;
    }

    .booking-form-grid {
        grid-template-columns: 1fr;
    }

    .rooms-grid,
    .services-grid,
    .gallery-grid,
    .blog-grid {
        grid-template-columns: 1fr;
    }

    .gallery-item:nth-child(1) {
        grid-column: span 2;
        grid-row: span 1;
    }

    .gallery-item:nth-child(4) {
        grid-column: span 1;
    }

    .dashboard-container {
        flex-direction: column;
    }

    .dashboard-sidebar {
        width: 100%;
    }

    .admin-stats-grid {
        grid-template-columns: 1fr;
    }

    .booking-table {
        font-size: var(--avasa-font-sm);
    }

    .booking-table th,
    .booking-table td {
        padding: var(--avasa-space-sm);
    }

    .footer-bottom {
        flex-direction: column;
        gap: var(--avasa-space-md);
        text-align: center;
    }

    .about-grid {
        grid-template-columns: 1fr;
    }

    .about-image img {
        height: auto;
    }

    .about-image::before {
        display: none;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .testimonials-grid {
        grid-template-columns: 1fr;
    }

    .newsletter-form input[type="email"] {
        width: 200px;
    }

    .page-title {
        font-size: var(--avasa-font-2xl);
    }

    .breadcrumbs {
        flex-wrap: wrap;
    }

    .about-stats {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Small Mobile (max 480px) */
@media (max-width: 480px) {
    .avasa-btn {
        padding: var(--avasa-space-sm) var(--avasa-space-md);
        font-size: var(--avasa-font-xs);
    }

    .hero-content {
        padding: 0 var(--avasa-space-md);
    }

    .testimonial-card {
        padding: var(--avasa-space-lg);
    }

    .gallery-grid {
        grid-template-columns: 1fr;
    }

    .services-grid {
        grid-template-columns: 1fr;
    }

    .rooms-grid,
    .blog-grid {
        grid-template-columns: 1fr;
    }
}

/* Slider small (max 600px) */
@media (max-width: 600px) {
    .slider-arrow {
        width: 44px;
        height: 44px;
        font-size: 0.9rem;
    }

    .slider-prev {
        left: 12px;
    }

    .slider-next {
        right: 12px;
    }

    .slider-dots {
        bottom: 60px;
    }

    .hero-btns {
        flex-direction: column;
        gap: 12px;
    }

    .slider-booking-form .booking-form-grid {
        grid-template-columns: 1fr;
    }

    .slider-booking-form .booking-form-group {
        border-right: none;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }
}

/* Print */
@media print {

    .site-header,
    .site-footer,
    .comments-area,
    .pagination,
    .back-to-top,
    .whatsapp-float {
        display: none !important;
    }

    body {
        font-size: 12pt;
        line-height: 1.5;
        color: #000;
        background: #fff;
    }

    a {
        color: #000;
        text-decoration: underline;
    }

    img {
        max-width: 100% !important;
        page-break-inside: avoid;
    }

    .entry-content {
        width: 100%;
        margin: 0;
        padding: 0;
    }
}