/**
Theme Name: Medicore Child
Author: Medicore developers
Author URI: http://wpastra.com/about/
Description: A custom child theme of Astra
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: medicore-child
Template: astra
*/

/* Global stylings */
body.elementor-default .elementor a {
    text-decoration: none;
}
.elementor-page .elementor h1, .elementor-page .elementor h2,
.elementor-page .elementor h3, .elementor-page .elementor h4,
.elementor-page .elementor h5, .elementor-page .elementor h6,
.elementor-page .elementor p {
    margin: 0;
}
.elementor-page .elementor-widget-text-editor p:not(:last-child) {
    margin-bottom: 10px;
}
.elementor-page .elementor-widget-text-editor ul, .elementor-page .elementor-widget-text-editor ol {
    margin: 0 0 10px;
}
.elementor-widget-text-editor.two-col-list ul, .elementor-widget-text-editor.two-col-list ol {
    column-count: 2;
}

/* Header */
.main-header .cta-column {
    margin-left: auto;
}

/* Pop up off canvas menu */
.off-canvas-menu .sub-menu {
    position: relative !important;
    margin-left: 0 !important;
    left: unset !important;
    top: unset !important;
    margin-top: 0 !important;
}

/* Elementor homepage */
.elementor-page .wp-block-group:has(.elementor) {
    padding: 0 !important;
}
.elementor-page .wp-block-group .elementor {
    max-width: 100%;
}
span.blue-text {
    color: #00489f;
}
body:has(.banner-no-title-above) .wp-block-group:has(.wp-block-post-title) {
    display: none !important;
}
.elementor-page .wp-block-group:has(.elementor) > .entry-content {
    padding: 0;
    width: 100%;
    margin: 0;
}
.banner-section .curved-col-img {
    clip-path: ellipse(92% 120% at 95% 62%);
    position: relative;
    z-index: 10;
}
.banner-section .curved-column:before {
    content: '';
    position: absolute;
    inset: 0;
    background: #E4EEFD;
    width: 100%;
    height: 100%;
    z-index: 1;
    clip-path: ellipse(95% 115% at 95% 55%);
}
.below-banner-section .below-banner-cards:not(:last-child):after {
    content: '';
    border-right: 1px solid #ddd;
    position: absolute;
    inset: 0;
    height: 70%;
    top: 15%;
    right: -20px;
}
.banner-text-col .banner-text-col-inner {
    max-width: 650px;
}
.trusted-partners-logo-wrap img {
    filter: brightness(0) invert(1);
}
.services-card .services-card-info {
    height: 100%;
}
.asp-16-9 img {
    aspect-ratio: 16/9;
    height: auto !important;
    object-fit: cover;
}
.asp-3-4 img {
    aspect-ratio: 3/4;
    height: auto !important;
    object-fit: cover;
}
.asp-3-2 img {
    aspect-ratio: 3/2;
    height: auto !important;
    object-fit: cover;
}
.asp-square img {
    aspect-ratio: 1/1;
    height: auto !important;
    object-fit: cover;
}
.transp-experts-feat-wrap .elementor-icon-list-item {
    width: 100%;
    max-width: calc(50% - 16px);
}
.lh-1 p {
    line-height: 1;
}
.above-footer-contact-options-wrap .above-footer-contact-option:not(:last-child):after {
    content: '';
    border-right: 1px solid #ddd;
    position: absolute;
    inset: 0;
    height: 70%;
    top: 15%;
    right: -60px;
}
.cstm-responsive-carousel .swiper-pagination {
    top: unset;
    bottom: -50px;
    width: 100%;
    max-width: 180px;
    background: #dde5ee;
    margin: 0 auto 0;
    left: 50%;
    transform: translateX(-50%);
}
.cstm-responsive-carousel .swiper-pagination .swiper-pagination-progressbar-fill {
    background: #90a1b9;
}
.cstm-responsive-carousel.elementor-widget-n-carousel {
    position: relative;
}
.cstm-responsive-carousel .services-card {
    height: 100%;
}

/* Courses page */
.courses-banner.banner-section .curved-column:before {
    display: none;
}
.courses-banner.banner-section .curved-col-img {
    clip-path: ellipse(92% 120% at 95% 54%);
}

/* Ambulance page */
.ambulance-services.banner-section .curved-column:before {
    clip-path: ellipse(95% 115% at 95% 39%);
}
.ambulance-services.banner-section .curved-col-img {
    clip-path: ellipse(92% 120% at 93% 34%);
}
.ambulance-services-cards-wrap .ambulance-services-card:not(:nth-child(3n)):after {
    content: '';
    border-right: 1px solid #ddd;
    position: absolute;
    inset: 0;
    height: 70%;
    top: 15%;
    right: 0px;
}
.ambulance-services-cards-wrap .ambulance-services-card:nth-last-child(-n + 3) {
    border-bottom: 0;
}

/* Responsive */
@media screen and (min-width: 1025px) {
    .cstm-responsive-carousel .swiper-pagination {
        display: none;
    }
}
@media screen and (max-width: 1674px) {
    /* Need this for header to fit all nav items in 1 row */
    .main-header .header-logo-wrap {
        width: 100%;
        max-width: 150px;
    }
    body header .main-header {
        width: 100%;
    }
    .main-header > .e-con-inner {
        gap: 20px;
    }
    .main-header .cta-column {
        max-width: 280px;
        margin-left: auto;
    }
    .main-header .cta-column .hidden-smaller-desk {
        display: none;
    }
    .main-header .main-nav-menu {
        width: 100%;
        max-width: calc(100% - 40px - (170px + 280px));
    }
    .main-header .cta-column .header-contact-btn {
        max-width: 120px !important;
    }
    .main-nav-menu .hfe-nav-menu > .menu-item:not(:last-child) {
        margin-right: 15px !important;
    }
    .main-nav-menu nav.hfe-nav-menu__layout-horizontal {
        width: 100% !important;
    }
    .cta-column .elementor-button {
        font-size: 15px !important;
        padding: 10px 12px !important;
    }
}
@media screen and (max-width: 1445px) {
    .main-nav-menu .hfe-nav-menu .menu-item .hfe-menu-item {
        font-size: 15px;
    }
    .main-header .cta-column .header-contact-btn {
        max-width: 100px !important;
    }
    .main-header .cta-column {
        max-width: 255px;
    }
    .main-header .main-nav-menu {
        max-width: calc(100% - 40px - (170px + 245px));
    }
}
@media screen and (max-width: 1366px) {
    .main-header .cta-column {
        max-width: 260px;
        width: 100%;
    }
}
@media screen and (max-width: 1024px) {
    .banner-section .curved-col-img,
    .ambulance-services.banner-section .curved-col-img {
        clip-path: ellipse(85% 95% at 40% 0%);
    }
    .banner-section .curved-column:before,
    .ambulance-services.banner-section .curved-column:before {
        clip-path: ellipse(90% 100% at 50% 0%);
    }
    .above-footer-contact-options-wrap .above-footer-contact-option:not(:last-child):after {
        right: -20px;
    }
    .banner-text-col .banner-text-col-inner {
        max-width: 100%;
    }
    br.desktop-only {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .below-banner-section .below-banner-cards:not(:last-child):after,
    .above-footer-contact-options-wrap .above-footer-contact-option:not(:last-child):after {
        border: none;
    }
    .elementor-widget-text-editor.two-col-list ul, .elementor-widget-text-editor.two-col-list ol {
        column-count: 1;
    }
    .ambulance-services-cards-wrap .ambulance-services-card:not(:nth-child(3n)):after {
        border-right: none;
    }
    .ambulance-services-cards-wrap .ambulance-services-card:nth-last-child(-n + 3) {
        border-bottom: 1px solid #ddd;
    }
    .ambulance-services-cards-wrap .ambulance-services-card:last-child {
        border-bottom: none;
    }
}