/*
==============================================
Intuitive Health - Responsive CSS
Matching iheruc.com responsive behavior
==============================================
*/

/* Mobile First Approach - Base styles for mobile */
@media (max-width: 576px) {
    /* Banner Section Mobile */
    .banner-section {
        padding: 150px 0 80px !important;
    }

    .banner-section .text-60 {
        font-size: 32px !important;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    .banner-section .text-40 {
        font-size: 20px !important;
        line-height: 1.4;
        margin-bottom: 30px;
    }

    .banner-section .container {
        padding: 0 20px;
    }

    /* Quality Care Section Mobile */
    .quality-care-section {
        margin-top: -70px;
        padding: 0 15px;
    }

    .quality-care-section .card {
        padding: 30px 20px !important;
    }

    .quality-care-section h2 {
        font-size: 28px;
        line-height: 1.3;
        margin-bottom: 15px;
    }

    .quality-care-section h3 {
        font-size: 20px;
        line-height: 1.4;
        margin-bottom: 20px;
    }

    .quality-care-section .text-22 {
        font-size: 16px !important;
        line-height: 1.6;
    }
    .quality-care-section .px-60 {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Hide absolute positioned image on mobile */
    .quality-care-section .position-absolute {
        display: none !important;
    }

    /* Partner Section Mobile */
    .partner-section {
        padding: 60px 0 0px !important;
    }

    .partner-section .col-md-4 {
        margin-bottom: 40px;
        padding-bottom: 40px !important;
    }

    .partner-section h2 {
        font-size: 26px;
        line-height: 1.3;
        margin-bottom: 15px;
    }

    .partner-section h3 {
        font-size: 18px;
        line-height: 1.4;
        margin-bottom: 20px;
    }
    .partner-logo img {
        width: 67px !important;
        margin: 0 auto;
    }
    /* Partner Gallery Mobile */
    .partner-gallery.wp-block-gallery {
        columns: 2 !important;
        gap: 15px;
    }

    .partner-gallery .wp-block-image {
        margin-bottom: 15px !important;
    }

    .partner-gallery img {
        max-width: 100%;
        height: auto;
    }

    /* Icon boxes mobile */
    .wp-block-columns .wp-block-column {
        text-align: center;
    }

    .wp-block-columns .wp-block-column img {
        margin: 0 auto 15px;
        width: 67px !important;
    }

    .wp-block-columns .text-22 {
        font-size: 16px !important;
        line-height: 1.6;
    }

    /* Contact Section Mobile */
    .contact-section .card {
        padding: 30px 20px !important;
        margin: 0 15px;
    }

    .contact-section h2 {
        font-size: 26px;
        line-height: 1.3;
        margin-bottom: 15px;
    }

    .contact-section .text-22 {
        font-size: 16px !important;
        line-height: 1.6;
    }

    /* Buttons Mobile */
    .wp-block-button .wp-block-button__link {
        padding: 15px 25px;
        font-size: 16px;
        display: block;
        text-align: center;
        width: 100%;
    }
}

/* Tablet Portrait - 577px to 768px */
@media (min-width: 577px) and (max-width: 768px) {
    /* Banner Section Tablet */
    .banner-section {
        padding: 150px 0 100px !important;
    }

    .banner-section .text-60 {
        font-size: 42px !important;
        line-height: 1.2;
    }

    .banner-section .text-40 {
        font-size: 24px !important;
        line-height: 1.4;
    }

    /* Quality Care Section Tablet */
    .quality-care-section {
        margin-top: -140px;
    }

    .quality-care-section .card {
        padding: 40px 30px !important;
    }

    .quality-care-section .position-absolute {
        display: none !important;
    }

    /* Partner Gallery Tablet */
    .partner-gallery.wp-block-gallery {
        columns: 3 !important;
        gap: 20px;
    }

    /* Contact Section Tablet */
    .contact-section .card {
        padding: 40px 30px !important;
    }
}

/* Tablet Landscape - 769px to 992px */
@media (min-width: 769px) and (max-width: 992px) {
    /* Banner Section */
    .banner-section {
        padding: 200px 0 150px !important;
    }

    .banner-section .text-60 {
        font-size: 50px !important;
        line-height: 1.2;
    }

    .banner-section .text-40 {
        font-size: 28px !important;
        line-height: 1.4;
    }

    /* Quality Care Section */
    .quality-care-section {
        margin-top: -160px;
    }

    .quality-care-section .card {
        padding: 50px 40px !important;
    }

    /* Show positioned image on tablet landscape */
    .quality-care-section .position-absolute {
        display: block !important;
        max-width: 140px;
    }

    /* Partner Gallery */
    .partner-gallery.wp-block-gallery {
        columns: 4 !important;
    }
}

/* Desktop - 993px and up */
@media (min-width: 993px) {
    /* Banner Section Desktop */
    .banner-section {
        padding: 300px 0 200px !important;
    }

    .banner-section .text-60 {
        font-size: 60px !important;
        line-height: 1.1;
    }

    .banner-section .text-40 {
        font-size: 32px !important;
        line-height: 1.3;
    }

    /* Quality Care Section Desktop */
    .quality-care-section {
        margin-top: -188px;
    }

    .quality-care-section .card {
        padding: 60px 50px !important;
    }

    .quality-care-section .position-absolute {
        display: block !important;
        max-width: 170px;
    }

    /* Partner Gallery Desktop */
    .partner-gallery.wp-block-gallery {
        columns: 4 !important;
    }

    /* Contact Section Desktop */
    .contact-section .card {
        padding: 50px 60px !important;
    }
}

/* Large Desktop - 1200px and up */
@media (min-width: 1200px) {
    .banner-section .container,
    .quality-care-section .container,
    .partner-section .container,
    .contact-section .container {
        max-width: 1200px;
    }

    /* Enhance typography on large screens */
    .banner-section .text-60 {
        font-size: 72px !important;
    }

    .banner-section .text-40 {
        font-size: 36px !important;
    }
}

/* Fix common responsive issues */
img {
    max-width: 100%;
    height: auto;
}

.wp-block-gallery .wp-block-image img {
    width: 100%;
    object-fit: contain;
}

/* Background image improvements */
.wp-block-emg-emg-section[style*="background-image"] {
    background-attachment: scroll !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

/* Improve text readability on backgrounds */
.banner-section h1,
.banner-section h2,
.banner-section p {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}
