/* Only the optional Choose icon fallback; native image/card styling is unchanged. */
.why-choose-us-card > .vw-choose-card-icon {
    display: block;
    width: 80px;
    height: 80px;
    font-size: 40px;
    line-height: 80px;
    margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
    .why-choose-us-card > .vw-choose-card-icon {
        margin-bottom: 25px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Approved V4/V5 pages opt in through their saved section classes. These are
 * OUTER native containers only: nested Bootstrap rows retain their gutters.
 * Percentages match Hospa's no-image breadcrumb without JavaScript; measured
 * values also follow a destination site's custom breadcrumb width/position. */
.vw4-section {
    --vw-layout-fallback-width: min(calc(100% - 24px), 516px);
    --vw-layout-fallback-left: max(12px, calc((100% - 516px) / 2));
}
.vw4-section :is(.about-area, .about-more-area, .why-choose-us-area,
    .about-overview-area, .online-information-area, .solution-area, .faq-area,
    .find-location-area, .contact-us-area, .book-an-appointment-area)
    > :is(.container, .container-fluid),
.vw5-section :is(.vw5-area, .pay-online-area, .patients-visitors-area,
    .education-and-research-area, .working-process-area, .features-overview-area,
    .overview-area, .about-style-area) > :is(.container, .container-fluid),
.vw5-section.vw5-campaign-banner > .elementor-container {
    box-sizing: border-box;
    width: var(--vw-layout-width, var(--vw-layout-fallback-width));
    max-width: none;
    margin-left: var(--vw-layout-left, var(--vw-layout-fallback-left));
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
}
@media (min-width: 768px) and (max-width: 991px) {
    .vw4-section { --vw-layout-fallback-width: min(calc(100% - 24px), 696px); --vw-layout-fallback-left: max(12px, calc((100% - 696px) / 2)); }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .vw4-section { --vw-layout-fallback-width: min(calc(100% - 24px), 936px); --vw-layout-fallback-left: max(12px, calc((100% - 936px) / 2)); }
}
@media (min-width: 1200px) and (max-width: 1399px) {
    .vw4-section { --vw-layout-fallback-width: min(calc(100% - 24px), 1116px); --vw-layout-fallback-left: max(12px, calc((100% - 1116px) / 2)); }
}
@media (min-width: 1400px) and (max-width: 1599px) {
    .vw4-section { --vw-layout-fallback-width: min(calc(100% - 60px), 1410px); --vw-layout-fallback-left: 30px; }
}
@media (min-width: 1400px) and (max-width: 1500px) {
    .vw4-section { --vw-layout-fallback-left: max(30px, calc((100% - 1410px) / 2)); }
}
@media (min-width: 1600px) {
    .vw4-section { --vw-layout-fallback-width: min(calc(100% - 200px), 1630px); --vw-layout-fallback-left: max(100px, calc((100% - 1920px) / 2 + 100px)); }
}
/* Match the breadcrumb's native 20px radius on content photographs and the
 * photographic CTA; retain decorative shapes, circular avatars and card design. */
.vw4-section .about-image > img,
.vw4-section .about-more-image img,
.vw4-section .about-more-content .inner-more-content img,
.vw4-section .why-choose-us-card > img,
.vw4-section .faq-image > img,
.vw4-section .find-location-content .box .lft .image img,
.vw4-section .solution-inner,
.vw4-section .solution-inner::before {
    border-radius: 20px !important;
}
/* This bordered form is itself a Bootstrap row; cancel only its negative
 * margins so its visible border shares the aligned outer container's edges. */
.vw4-section .find-location-search-form.row { margin-left: 0; margin-right: 0; }

/* V5 uses additional native article, step and feature compositions. Content
 * photographs share the breadcrumb radius; decorative artwork and circular
 * portraits keep their own shapes. Mark custom decorative images explicitly. */
.vw5-section :is(.pay-online-image > img,
    .patients-visitors-desc > .image > img,
    .education-and-research-content > .image > img,
    .working-process-desc > .bottom-content > img,
    .about-style-image > img, .about-style-rght > img,
    .elementor-widget-image img, .vw5-area img):not(:where(.vw5-decorative, .vw5-decorative img,
        [data-vw-decorative], [data-vw-decorative] img,
        .icon img, .wrap-shape img, .shape img,
        .avatar, .avatar img, .custom-logo, .custom-logo-link img,
        .partner-item img, .partner-image img, [role="presentation"])) {
    border-radius: 20px !important;
}
/* Campaign artwork has a fixed authored composition. Never turn it into a
 * cover crop or stretch it to a fixed height. The outer container sets width. */
.vw5-section :is(.vw5-banner, .vw5-campaign-banner) img,
.vw5-section:is(.vw5-banner, .vw5-campaign-banner) img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto !important;
    max-height: none;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    border-radius: 20px !important;
}
/* The original Pay Online image/copy gap is inappropriate when its image is
 * intentionally absent. Restrict this correction to opted-in V5 articles and
 * terms using the widget's full-width text column. */
.vw5-section:is(.vw5-terms, .vw5-article) .pay-online-area > .container
    > .row > .col-lg-12 > .pay-online-content {
    padding-left: 0;
    padding-right: 0;
}

/* A campaign banner remains a normal, editable Elementor Image widget. Remove
 * only the immediate legacy column gutter inside this dedicated banner. */
.vw5-section.vw5-campaign-banner > .elementor-container > .elementor-column
    > .elementor-widget-wrap {
    padding: 0;
}

/* V6 native Elementor compositions. These opt-in rules do not change the site's
   header, footer, shop, original pages, or the toolkit's default widget design. */
.vw6-section{--vw6-navy:#19355E;--vw6-aqua:#59C1CD;--vw6-yellow:#FFD33B;--vw6-ink:#4c5765;--vw-layout-fallback-width:min(calc(100% - 24px),516px);--vw-layout-fallback-left:max(12px,calc((100% - 516px)/2));color:var(--vw6-ink);font-family:inherit}
body:has(.vw6-section) .hospa-single-blank-page{display:none!important}
.vw6-section[id],.vw6-section [id]{scroll-margin-top:110px}
.vw6-section .elementor-widget-wrap{padding:0}
.vw6-native :is(.about-area,.about-more-area,.about-style-area,.why-choose-us-area,.about-overview-area,.online-information-area,.solution-area,.faq-area,.find-location-area,.contact-us-area,.book-an-appointment-area,.pay-online-area,.patients-visitors-area,.education-and-research-area,.working-process-area,.features-overview-area,.overview-area,.features-area,.careers-area,.volunteers-area,.strategy-area,.our-purpose-area,.annual-wellness-exam-area,.partner-area,.lab-test-area)>:is(.container,.container-fluid),
.vw6-modular>.elementor-container{box-sizing:border-box;width:var(--vw-layout-width,var(--vw-layout-fallback-width));max-width:none;margin-left:var(--vw-layout-left,var(--vw-layout-fallback-left));margin-right:0;padding-inline:0}
.vw6-native :is(.about-area,.about-more-area,.about-style-area,.why-choose-us-area,.about-overview-area,.online-information-area,.solution-area,.faq-area,.find-location-area,.contact-us-area,.book-an-appointment-area,.pay-online-area,.patients-visitors-area,.education-and-research-area,.working-process-area,.features-overview-area,.overview-area,.features-area,.careers-area,.volunteers-area){padding-block:0!important}
.vw6-modular>.elementor-container{display:grid;grid-template-columns:minmax(0,1fr);gap:32px 56px;align-items:start}
.vw6-modular.vw6-cols-2>.elementor-container{grid-template-columns:repeat(2,minmax(0,1fr))}
.vw6-modular.vw6-cols-3>.elementor-container{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px}
.vw6-modular.vw6-cols-4>.elementor-container{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:24px}
.vw6-modular>.elementor-container>.elementor-column{width:100%;min-width:0}
.vw6-modular>.elementor-container>.elementor-column>.elementor-widget-wrap{display:flex;flex-direction:column;align-content:stretch;gap:20px}
.vw6-modular .elementor-widget{margin:0;min-width:0}
.vw6-modular .vw6-grid-heading{grid-column:1/-1}
.vw6-align-center>.elementor-container{align-items:center}
.vw6-section :is(h2,h3,h4,h5,h6){color:var(--vw6-navy)}
.vw6-section h2{font-size:42px;font-weight:500;line-height:1.2;letter-spacing:-1.2px}
.vw6-section h2 b{font-weight:800;color:inherit}
.vw6-section h3{font-size:23px;line-height:1.35;font-weight:600}
.vw6-section p{font-size:16px;line-height:1.8;color:var(--vw6-ink)}
.vw6-section p:last-child{margin-bottom:0}
.vw6-section :is(.sub,.sub-title){color:var(--vw6-navy)!important;font-size:13px;letter-spacing:1.4px;font-weight:600}
.vw6-section .section-title{max-width:100%;margin:0;padding:0}
.vw6-section .section-title h2{margin:0}
.vw6-section .section-title .sub{margin-bottom:18px}
.vw6-section .vw6-copy p{margin-bottom:18px}
.vw6-section .vw6-copy p:last-child{margin-bottom:0}
.vw6-section .vw6-copy a,.vw6-section .qua-info-list a{color:#226878;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.vw6-section :is(.default-btn,.cch-cta-content .cta-btn-list li .default-btn){display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--vw6-yellow);color:var(--vw6-navy);border-color:var(--vw6-yellow);padding:16px 26px;min-height:50px;line-height:1.5;font-size:15px;font-weight:600;white-space:normal;text-align:center;max-width:100%}
.vw6-section :is(.default-btn,.cch-cta-content .cta-btn-list li .default-btn):hover{background:var(--vw6-navy);color:#fff;border-color:var(--vw6-navy)}
.vw6-section .default-btn i{position:static!important;transform:none!important;display:inline-block;font-size:20px;line-height:1;flex-shrink:0}
.vw6-section .default-btn::before{background:var(--vw6-navy)}
.vw6-section .vw6-secondary .default-btn{background:transparent;border:0;color:var(--vw6-navy);padding:0;min-height:38px;justify-content:flex-start;text-align:left}
.vw6-section .vw6-secondary .default-btn:hover{color:#226878;background:transparent}
.vw6-section .vw6-secondary .default-btn::before{display:none}
.vw6-section a:focus-visible,.vw6-section button:focus-visible{outline:3px solid #226878;outline-offset:4px}
.vw6-section .vw6-list .about-content{padding:0!important;margin:0;max-width:none}
.vw6-section .vw6-list .list{padding:0;margin:0;list-style:none}
.vw6-section .vw6-list .list li{position:relative;padding-left:30px;margin:0 0 14px;font-size:16px;line-height:1.8;color:var(--vw6-ink)}
.vw6-section .vw6-list .list li:last-child{margin-bottom:0}
.vw6-section .vw6-list .list li i{position:absolute;left:0;top:3px;font-size:20px;color:#278391}
.vw6-section .vw6-image img,.vw6-section .about-image>img,.vw6-section .about-more-image img,.vw6-section .about-more-content .inner-more-content img,.vw6-section .pay-online-image>img,.vw6-section .volunteers-image>img,.vw6-section .solution-inner,.vw6-section .solution-inner::before,.vw6-section .find-location-content .box .lft .image img{border-radius:20px!important}
.vw6-section .vw6-image img,.vw6-section .pay-online-image>img,.vw6-section .volunteers-image>img{display:block;width:100%;height:auto!important;object-fit:contain}
.vw6-section .vw6-small-image{max-width:380px;width:100%;margin-inline:auto}
.vw6-campaign-banner img{width:100%;max-width:100%;height:auto!important;max-height:none;aspect-ratio:auto!important;object-fit:contain!important}
.vw6-article>.elementor-container>.elementor-column>.elementor-widget-wrap{max-width:980px}
.vw6-soft-band>.elementor-container{background:#edf7f7;border-radius:20px;padding:40px}
.vw6-action .cch-cta-content{margin:0;text-align:left!important;max-width:none}
.vw6-action .cch-cta-content h2{font-size:34px;margin:0 0 26px;line-height:1.25}
.vw6-action .cta-btn-list{margin:0;display:flex;flex-wrap:wrap;gap:18px;padding:0;list-style:none}
.vw6-action .cta-btn-list li{margin:0}
.vw6-section .features-area{padding:0;background:transparent}
.vw6-modular .features-area>.container-fluid{padding:0;width:100%;max-width:none}
.vw6-section .features-area>.container-fluid>.row{row-gap:24px}
.vw6-section .features-area>.container-fluid>.row>div{display:flex}
.vw6-section .features-card{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;margin:0;padding:32px;border-radius:40px}
.vw6-section .features-card .title{padding-left:0;display:flex;gap:14px;align-items:center;margin-bottom:20px;width:100%}
.vw6-section .features-card .title i{position:static;font-size:32px;color:var(--vw6-navy);flex-shrink:0}
.vw6-section .features-card .title h3{font-size:19px;font-weight:600;line-height:1.4;margin:0;text-transform:none;letter-spacing:0;color:var(--vw6-navy)}
.vw6-section .features-card p{margin:0 0 22px}
.vw6-section .features-card p:last-child{margin-bottom:0}
.vw6-section .features-card .features-btn{margin-top:auto;color:var(--vw6-navy);font-weight:600;line-height:1.5}
.vw6-section .features-card .features-btn i{background:var(--vw6-navy);color:#fff}
.vw6-card-row .elementor-widget-wrap{height:100%}
.vw6-section .vw6-info-card{flex:1}
.vw6-section .vw6-info-card>.elementor-widget-container{height:100%}
.vw6-section :is(.mc-overview-card,.ph-about-card){padding:32px;margin:0;height:100%;border-radius:20px;background:#edf7f7;color:var(--vw6-ink)}
.vw6-section :is(.mc-overview-card,.ph-about-card) h3{font-size:24px;line-height:1.35;margin-bottom:16px;color:var(--vw6-navy)}
.vw6-section .ph-about-card h3 span{font-size:inherit;position:static;letter-spacing:0;color:inherit}
.vw6-card-row .vw6-cell:nth-child(2n) :is(.mc-overview-card,.ph-about-card){background:#f1f5fb}
.vw6-section .qua-info-list{list-style:none;padding:0;margin:0;width:100%}
.vw6-section .qua-info-list li{padding:26px 0;margin:0;border-bottom:1px solid #d3e0e5}
.vw6-section .qua-info-list li:first-child{padding-top:6px}
.vw6-section .qua-info-list li:last-child{padding-bottom:0;border:0}
.vw6-section .qua-info-list li :is(h3,h5){font-size:23px;line-height:1.35;font-weight:600;color:var(--vw6-navy);margin:0 0 13px}
.vw6-term-groups>.elementor-container{align-items:start;gap:36px 56px}
.vw6-term-groups .vw6-cell>.elementor-widget-wrap{border-top:2px solid #59c1cd;padding-top:25px!important}
.vw6-term-groups .vw6-list .list li{font-size:15px;line-height:1.8}
.vw6-term-groups h3{margin:0}
.vw6-offer-intro>.elementor-container{align-items:start;gap:56px}
.vw6-section .cch-link-info-card{background:#edf7f7;border-radius:20px;padding:28px;min-height:100%;margin:0}
.vw6-section .cch-link-info-card h3{font-size:22px;line-height:1.4;color:var(--vw6-navy)}
.vw6-section .cch-link-info-card .link-btn{color:var(--vw6-navy);font-size:16px}
.vw6-section .cch-link-info-card :is(h3 i,.link-btn i){color:#278391}
.vw6-routes .elementor-widget-wrap,.vw6-route-card,.vw6-route-card>.elementor-widget-container{height:100%}
.vw6-section .about-overview-area>.container>.row>div{display:flex}
.vw6-section .about-overview-card{width:100%}
.vw6-section .find-location-search-form.row{margin-left:0;margin-right:0}
.vw6-section .pay-online-content>p:empty,.vw6-section .volunteers-content>.list:empty{display:none}
.vw6-section .pay-online-content>.list{margin-block:22px}
.vw6-section .pay-online-content>.list:empty{display:none}
.vw6-section .pay-online-content>p:last-child{margin-top:22px}
.vw6-section .pay-online-content>p:last-child a{color:#226878;font-weight:600}
.vw6-reverse :is(.about-area,.pay-online-area,.volunteers-area)>.container>.row{flex-direction:row-reverse}
.vw6-reverse :is(.about-content,.pay-online-content,.volunteers-content){padding-left:0;padding-right:40px}
.vw6-small-split :is(.pay-online-image,.volunteers-image){max-width:380px;margin-inline:auto}
/* Keep existing Contact Form 7 labels, validation and consent fields usable. */
.vw6-section .vw-native-form label{display:block;margin:0 0 10px;font-weight:500;color:var(--vw6-navy);line-height:1.6}
.vw6-section .vw-native-form .wpcf7-form-control-wrap{display:block}
.vw6-section .vw-native-form .wpcf7-list-item{margin:0}
.vw6-section .vw-native-form .vw-form-consent label{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:400;color:var(--vw6-ink)}
.vw6-section .vw-native-form .vw-form-consent input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin-top:4px;accent-color:#278391}
.vw6-section .vw-native-form .wpcf7-not-valid-tip{font-size:13px;margin-top:6px}
.vw6-section .vw-native-form .wpcf7-response-output{margin:20px 0 0;padding:15px;line-height:1.7}
.vw6-section .vw-native-form .vw-form-note{font-size:14px;line-height:1.7;margin-top:18px}
.vw6-section .vw-native-form textarea.form-control{min-height:140px;height:140px}
.vw6-section .vw-native-form .default-btn{width:auto;min-height:50px}
.vw6-section .vw-native-form .form-control{max-width:100%}
@media(min-width:768px) and (max-width:991px){.vw6-section{--vw-layout-fallback-width:min(calc(100% - 24px),696px);--vw-layout-fallback-left:max(12px,calc((100% - 696px)/2))}}
@media(min-width:992px) and (max-width:1199px){.vw6-section{--vw-layout-fallback-width:min(calc(100% - 24px),936px);--vw-layout-fallback-left:max(12px,calc((100% - 936px)/2))}}
@media(min-width:1200px) and (max-width:1399px){.vw6-section{--vw-layout-fallback-width:min(calc(100% - 24px),1116px);--vw-layout-fallback-left:max(12px,calc((100% - 1116px)/2))}}
@media(min-width:1400px) and (max-width:1599px){.vw6-section{--vw-layout-fallback-width:min(calc(100% - 60px),1410px);--vw-layout-fallback-left:max(30px,calc((100% - 1410px)/2))}}
@media(min-width:1600px){.vw6-section{--vw-layout-fallback-width:min(calc(100% - 200px),1630px);--vw-layout-fallback-left:max(100px,calc((100% - 1920px)/2 + 100px))}.vw6-modular.vw6-cols-2>.elementor-container{column-gap:80px}}
@media(max-width:1199px){.vw6-section h2{font-size:36px}.vw6-modular>.elementor-container{column-gap:36px}.vw6-section .features-card{padding:26px}.vw6-offer-intro>.elementor-container{gap:36px}}
@media(max-width:991px){.vw6-section h2{font-size:32px}.vw6-modular.vw6-split>.elementor-container{grid-template-columns:minmax(0,1fr);gap:30px}.vw6-modular.vw6-cols-3>.elementor-container,.vw6-modular.vw6-cols-4>.elementor-container{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.vw6-section .features-card .title{align-items:flex-start;flex-direction:column}.vw6-reverse :is(.about-content,.pay-online-content,.volunteers-content){padding:0}.vw6-section .volunteers-content{margin-top:30px}.vw6-section .pay-online-content{margin-top:30px}.vw6-section .vw6-small-image{max-width:420px}}
@media(max-width:767px){.vw6-section h2{font-size:29px;letter-spacing:-.6px}.vw6-section h3{font-size:21px}.vw6-section p,.vw6-section .vw6-list .list li{font-size:16px}.vw6-modular.vw6-cols-2>.elementor-container,.vw6-modular.vw6-cols-3>.elementor-container,.vw6-modular.vw6-cols-4>.elementor-container{grid-template-columns:minmax(0,1fr);gap:28px}.vw6-modular>.elementor-container>.elementor-column>.elementor-widget-wrap{gap:18px}.vw6-soft-band>.elementor-container{padding:26px}.vw6-action .cch-cta-content h2{font-size:27px;letter-spacing:-.5px}.vw6-action .cta-btn-list{flex-direction:column;align-items:flex-start;gap:14px}.vw6-section .features-card{padding:26px;border-radius:40px}.vw6-section .features-card .title{flex-direction:row;align-items:center}.vw6-section .features-card .title h3{font-size:19px}.vw6-section :is(.mc-overview-card,.ph-about-card){padding:26px}.vw6-section .qua-info-list li :is(h3,h5){font-size:21px}.vw6-term-groups .vw6-list .list li{font-size:15px}.vw6-section .vw-native-form :is(input,select,textarea){font-size:16px}.vw6-section .cch-link-info-card{padding:25px}.vw6-section .vw6-image{width:100%}.vw6-section .features-area>.container-fluid>.row{row-gap:22px}}

.vw6-section .solution-content :is(h2,h2 b){color:#fff}.vw6-section .solution-content .sub{color:#59c1cd!important}

/* Native theme rules load after plugin assets on some installations. Use opted-in
   composition specificity so theme gutters and widget margins cannot compound. */
.vw6-section.vw6-modular .elementor-widget{margin:0}
.vw6-section.vw6-modular .features-area.without-wrap-area>.container-fluid{padding:0}
.vw6-section .solution-inner .content .sub{color:#59c1cd!important}
.vw6-section :is(.contact-us-information,.contact-us-form-wrap,.book-an-appointment-area,.find-location-content) a:not(.default-btn){color:#226878}
.vw6-section .contact-us-information .item{color:#4c5765}
.vw6-section .contact-us-information .item .title :is(h3,i){color:#19355e}
.vw6-section .features-card .features-btn i{background:transparent;color:#19355e}
/* The native CCH callout starts with white headings for its dark demo. */
.vw6-section .cch-cta-content :is(h2,h2 b,.title){color:#19355e}

.vw6-section.vw6-action .cch-cta-content .cta-btn-list li .default-btn{background:#ffd33b;border-color:#ffd33b;color:#19355e}
.vw6-section.vw6-action .cch-cta-content .cta-btn-list li .default-btn:hover{background:#19355e;border-color:#19355e;color:#fff}
.vw6-section.vw6-modular .vw6-button.vw6-secondary .hospa-button .default-btn{background:transparent;border:0;color:#19355e;padding:0;min-height:38px;justify-content:flex-start;text-align:left}
.vw6-section.vw6-modular .vw6-button.vw6-secondary .hospa-button .default-btn:hover{background:transparent;color:#226878}
@media(max-width:767px){.vw6-section .vw-native-form :is(input,select,textarea){font-size:16px!important}}
/* Hospa's wide breadcrumb is deliberately offset rather than centered. Keep
   Elementor's later auto-margin rule from overriding the measured left edge. */
@media(min-width:1600px){.vw6-section.vw6-modular>.elementor-container{margin-left:var(--vw-layout-left,var(--vw-layout-fallback-left));margin-right:0;max-width:none}}
