/* Specific Tablet Resolutions Fix */
/* Using viewport-based media queries instead of exact resolution */

/* Tablet Landscape (approx 1024x768) */
@media (min-width: 961px) and (max-width: 1024px) {
    /* Desktop Header - ensure it's visible */
    .desktop-header-v2 {
        display: flex;
    }

    .mobile-header-v2 {
        display: none;
    }

    /* Hero Section - for blog, services, staff pages */
    .hero-content-block {
        padding: 30px 20px 50px;
    }

    .hero-content-grid {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .hero-left-block {
        padding: 0;
        margin-left: -10px;
    }

    .hero-right-block {
        padding: 0;
    }

    .hero-text-stack {
        padding: 10px 15px 20px;
    }

    .feminine-heading {
        font-size: 1.8rem;
        line-height: 1.2;
        margin-top: 0;
    }

    .feminine-subtitle {
        font-size: 0.9rem;
        line-height: 1.5;
    }

    .editorial-panel--portrait {
        max-height: 475px;
    }

    .editorial-panel img {
        max-height: 475px;
        object-fit: cover;
    }

    /* Gallery */
    .art-minimal-gallery {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
        padding: 0 20px;
    }

    .art-minimal-gallery-image {
        height: 200px;
    }

    .art-minimal-gallery-caption {
        font-size: 14px;
        padding: 15px 12px 12px;
    }

    /* Staff Grid */
    .art-minimal-staff-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
        padding: 0 20px;
    }

    /* Footer */
    .feminine-footer-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 15px;
        padding: 15px 20px;
    }

    .feminine-footer-column {
        font-size: 0.85rem;
    }

    /* Services Table */
    .services-table {
        font-size: 0.8rem;
    }

    .services-table th,
    .services-table td {
        padding: 8px 5px;
    }

    /* Categories Slider */
    .categories-slider {
        gap: 12px;
    }

    .category-card {
        min-width: calc(33.333% - 8px);
    }

    /* Section Spacing */
    .feminine-section {
        padding: 30px 0;
    }

    /* Container */
    .container {
        padding: 0 20px;
    }

    /* Buttons */
    .feminine-button {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
}

/* Exact 768px width fix - override mobile styles */
@media (min-width: 768px) and (max-width: 768px) {
    /* Force desktop header */
    .desktop-header-v2 {
        display: flex !important;
    }

    .mobile-header-v2 {
        display: none !important;
    }

    /* Hero Section */
    .hero-content-block {
        padding: 40px 40px 60px !important;
        min-height: auto !important;
    }

    .hero-content-grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }

    .hero-left-block {
        order: 2 !important;
        padding: 0 !important;
    }

    .hero-right-block {
        order: 1 !important;
        padding: 0 !important;
    }

    .hero-text-stack {
        padding: 20px 0 !important;
    }

    .feminine-heading {
        font-size: 2.5rem !important;
        line-height: 1.2 !important;
        margin-top: 0 !important;
    }

    .feminine-subtitle {
        font-size: 1.1rem !important;
        line-height: 1.6 !important;
    }

    .editorial-panel--portrait {
        max-height: 450px !important;
    }

    .editorial-panel img {
        max-height: 450px !important;
        object-fit: cover !important;
    }

    .hero-video-frame {
        height: 400px !important;
    }

    .hero-side-menu {
        display: none !important;
    }

    /* Container */
    .container {
        padding: 0 40px !important;
    }

    /* Categories Slider */
    .categories-slider {
        gap: 20px !important;
        padding: 0 40px !important;
    }

    .category-card {
        min-width: calc(50% - 10px) !important;
    }

    /* Booking page - increase photo height */
    .booking-visual {
        height: 500px !important;
    }

    /* Masters page - increase hero photo height */
    .editorial-panel--portrait {
        max-height: 500px !important;
    }

    .editorial-panel img {
        max-height: 500px !important;
    }

    /* Services page - increase hero photo height */
    .editorial-panel--portrait {
        max-height: 500px !important;
    }

    .editorial-panel img {
        max-height: 500px !important;
    }

    /* Services and Masters - photo left, text right in hero */
    .hero-content-grid {
        grid-template-columns: 1fr 1fr !important;
    }

    .hero-left-block {
        order: 1 !important;
    }

    .hero-right-block {
        order: 2 !important;
    }
}

/* Tablet Portrait (approx 768x1024) */
@media (min-width: 769px) and (max-width: 960px) {
    /* Use desktop header instead of mobile */
    .desktop-header-v2 {
        display: flex !important;
    }

    .mobile-header-v2 {
        display: none !important;
    }

    /* Hero Section - for all pages (index, blog, services, staff) */
    .hero-content-block {
        padding: 40px 40px 60px !important;
        min-height: auto !important;
    }

    .hero-content-grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }

    .hero-left-block {
        order: 2 !important;
        padding: 0 !important;
    }

    .hero-right-block {
        order: 1 !important;
        padding: 0 !important;
    }

    .hero-text-stack {
        padding: 20px 0 !important;
    }

    .feminine-heading {
        font-size: 2.5rem !important;
        line-height: 1.2 !important;
        margin-top: 0 !important;
    }

    .feminine-subtitle {
        font-size: 1.1rem !important;
        line-height: 1.6 !important;
    }

    .editorial-panel--portrait {
        max-height: 450px !important;
    }

    .editorial-panel img {
        max-height: 450px !important;
        object-fit: cover !important;
    }

    /* Hero video frame for index page */
    .hero-video-frame {
        height: 400px !important;
    }

    /* Hero side menu */
    .hero-side-menu {
        display: none !important;
    }

    /* Gallery */
    .art-minimal-gallery {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
        padding: 0 25px;
    }

    .art-minimal-gallery-image {
        height: 250px;
    }

    .art-minimal-gallery-caption {
        font-size: 15px;
        padding: 20px 15px 15px;
    }

    /* Staff Grid */
    .art-minimal-staff-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        padding: 0 25px;
    }

    /* Footer */
    .feminine-footer-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
        padding: 20px 25px;
    }

    .feminine-footer-column {
        font-size: 0.9rem;
    }

    /* Services Table */
    .services-table {
        font-size: 0.85rem;
    }

    .services-table th,
    .services-table td {
        padding: 10px 6px;
    }

    /* Categories Slider */
    .categories-slider {
        gap: 20px;
        padding: 0 40px;
    }

    .category-card {
        min-width: calc(50% - 10px);
    }

    /* Section Spacing */
    .feminine-section {
        padding: 40px 0;
    }

    /* Container */
    .container {
        padding: 0 40px;
    }

    /* Buttons */
    .feminine-button {
        padding: 12px 24px;
        font-size: 0.95rem;
    }
}

/* General Tablet Fixes */
@media (min-width: 768px) and (max-width: 1024px) {
    body {
        font-size: 15px;
    }

    .hero-content-block {
        min-height: auto;
        padding: 30px 0;
    }

    .editorial-panel {
        border-radius: 10px;
    }

    .art-minimal-gallery-item {
        border-radius: 10px;
    }

    .art-minimal-gallery-image {
        border-radius: 10px;
    }

    /* Hide hero side menu on tablets */
    .hero-side-menu {
        display: none;
    }
}
