/* ========================================================================== 
   Tez Health Care home slider V22
   Compact-height correction loaded after the main Vite stylesheet.
   It intentionally changes only the approved homepage hero slider.
   ========================================================================== */

[data-thp-hero] {
    min-height: 0 !important;
}

[data-thp-hero] > .thp-home-container.thp-hero-inner {
    min-height: 0 !important;
    padding-top: clamp(18px, 2vw, 28px) !important;
    padding-bottom: clamp(16px, 1.7vw, 22px) !important;
}

/* The old 470–500px forced stage height created the large blank area. */
[data-thp-hero] .thp-hero-stage {
    position: relative;
    width: 100%;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 auto;
    padding: 0;
}

[data-thp-hero] .thp-hero-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    min-height: 0 !important;
    height: auto !important;
    margin: 0;
    padding: 0 !important;
    align-content: center !important;
    align-items: center !important;
}

[data-thp-hero] .thp-hero-slide.is-active {
    position: relative;
    inset: auto;
    min-height: 0 !important;
    height: auto !important;
}

[data-thp-hero] .thp-hero-copy {
    align-self: center !important;
}

[data-thp-hero] .thp-hero-visual {
    min-height: clamp(315px, 24vw, 370px) !important;
    align-self: center !important;
}

[data-thp-hero] .thp-hero-image {
    height: clamp(300px, 23vw, 360px) !important;
}

[data-thp-hero] .thp-slider-controls {
    margin-top: clamp(8px, 1vw, 14px) !important;
    padding-top: 14px !important;
    padding-bottom: 0 !important;
}

/* Prevent an inactive absolutely-positioned slide from affecting measurement. */
[data-thp-hero] [data-thp-slide]:not(.is-active) {
    min-height: 0 !important;
    pointer-events: none;
}

@media (max-width: 1100px) {
    [data-thp-hero] .thp-hero-visual {
        min-height: clamp(295px, 31vw, 345px) !important;
    }

    [data-thp-hero] .thp-hero-image {
        height: clamp(285px, 30vw, 335px) !important;
    }
}

@media (max-width: 900px) {
    [data-thp-hero] > .thp-home-container.thp-hero-inner {
        padding-top: 24px !important;
        padding-bottom: 18px !important;
    }

    [data-thp-hero] .thp-hero-slide,
    [data-thp-hero] .thp-hero-slide.is-active {
        min-height: 0 !important;
        align-content: start !important;
        row-gap: 22px !important;
    }

    [data-thp-hero] .thp-hero-visual {
        min-height: 0 !important;
    }

    [data-thp-hero] .thp-hero-image {
        height: clamp(250px, 43vw, 315px) !important;
    }

    [data-thp-hero] .thp-slider-controls {
        margin-top: 8px !important;
    }
}

@media (max-width: 640px) {
    [data-thp-hero] > .thp-home-container.thp-hero-inner {
        padding-top: 18px !important;
        padding-bottom: 14px !important;
    }

    [data-thp-hero] .thp-hero-slide,
    [data-thp-hero] .thp-hero-slide.is-active {
        row-gap: 16px !important;
    }

    [data-thp-hero] .thp-hero-image {
        height: clamp(205px, 62vw, 245px) !important;
    }

    [data-thp-hero] .thp-slider-controls {
        margin-top: 4px !important;
        padding-top: 12px !important;
    }
}

@media (max-width: 400px) {
    [data-thp-hero] .thp-hero-image {
        height: 205px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-thp-hero] .thp-hero-slide {
        transition: none !important;
    }
}
