.elementor-kit-20787{--e-global-color-primary:#5BC500;--e-global-color-secondary:#56595D;--e-global-color-text:#000000;--e-global-color-accent:#F9F9F9;--e-global-color-b6d7514:#5BC50038;--e-global-color-e8a58bf:#00ACE024;--e-global-color-0d5fa8b:#00ACE0;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-letter-spacing:-0.2px;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:1.05em;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:-0.2px;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:500;--e-global-typography-ed25edc-font-family:"Montserrat";--e-global-typography-ed25edc-font-size:0.9em;--e-global-typography-ed25edc-line-height:1.4em;--e-global-typography-ed25edc-letter-spacing:-0.2px;font-family:"Montserrat", Sans-serif;}.elementor-kit-20787 button,.elementor-kit-20787 input[type="button"],.elementor-kit-20787 input[type="submit"],.elementor-kit-20787 .elementor-button{background-color:#5BC500;text-decoration:none;border-radius:35px 35px 35px 35px;}.elementor-kit-20787 e-page-transition{background-color:#FFBC7D;}.elementor-kit-20787 a{color:var( --e-global-color-primary );font-family:"Montserrat", Sans-serif;font-weight:700;line-height:120%;}.elementor-kit-20787 a:hover{color:var( --e-global-color-primary );font-weight:bold;}.elementor-kit-20787 h1{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;font-size:3em;line-height:1.15em;letter-spacing:1px;}.elementor-kit-20787 h2{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;font-size:2.3em;line-height:125%;}.elementor-kit-20787 h3{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;font-size:1.5em;font-weight:800;line-height:1.2em;letter-spacing:0px;}.elementor-kit-20787 h4{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;font-size:1.5em;font-weight:300;line-height:1.1em;letter-spacing:0px;}.elementor-kit-20787 h5{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;font-size:1.5em;line-height:1.2em;letter-spacing:0.2px;}.elementor-kit-20787 h6{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;font-size:1.3em;line-height:120%;letter-spacing:0.2px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-20787{--e-global-typography-text-font-size:1em;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-ed25edc-font-size:0.8em;--e-global-typography-ed25edc-line-height:1.5em;--e-global-typography-ed25edc-letter-spacing:-0.2px;}.elementor-kit-20787 h1{font-size:2.3em;line-height:1.1em;}.elementor-kit-20787 h2{font-size:2.2em;}.elementor-kit-20787 h3{font-size:1.5em;}.elementor-kit-20787 h4{font-size:1.7em;}.elementor-kit-20787 h5{font-size:1.5em;}.elementor-kit-20787 h6{font-size:1.3em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-20787{--e-global-typography-text-font-size:0.9em;--e-global-typography-text-line-height:1.4em;font-size:1.1em;line-height:1em;}.elementor-kit-20787 h1{font-size:2.3em;line-height:1.1em;letter-spacing:0.1px;}.elementor-kit-20787 h2{font-size:2em;line-height:1.2em;letter-spacing:0.1px;}.elementor-kit-20787 h3{font-size:1.7em;line-height:1.1em;letter-spacing:0px;}.elementor-kit-20787 h4{font-size:1.3em;line-height:1.4em;}.elementor-kit-20787 h5{font-size:1.1em;}.elementor-kit-20787 h6{font-size:0.8em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.eael-gravity-form .gform_wrapper ul.gform_fields li.gfield {
    padding: 0px 20px 0px 0px;
}

.gform_wrapper.gf_browser_chrome select {
    padding: 5px 5px 6px 5px;
}

.elementor-field-textual {
    padding: .2rem .4rem !important;
}

input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=url],
select,
textarea {
    padding: .2rem .4rem !important;
}

.gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield div.ginput_complex span.ginput_left select,
.gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield div.ginput_complex span.ginput_right select,
.gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield select {
    /* margin-left: 0px; */
}

.elementor-pagination {
    margin-top: 20px;
}

.elementor-posts .elementor-post__card .elementor-post__excerpt,
.elementor-posts .elementor-post__card .elementor-post__title {
    margin-bottom: 18px;
    margin-top: -12px;
}

h2.grayswl {
    font-family: 'Montserrat';
    font-weight: 400 !important;
    letter-spacing: -.7px;
    display: inline;
    font-size: 1.6em;
    color: #626262;
}

.capriola-regular {
    font-family: "Capriola", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h2.colorswl {
    font-family: 'Capriola', 'Montserrat', sans-serif;
    letter-spacing: -.2px;
    display: inline;
    font-weight: bold;
    font-size: 1.55em;
}

h2.colorswlham {
    font-family: 'Hammersmith One', 'Montserrat', sans-serif;
    letter-spacing: -1px;
    display: inline;
    font-size: 1.8em;
}

h5 {
    font-family: 'Montserrat';
    font-weight: 800;
    color: #626262;
}

.elementor-widget-theme-archive-title .elementor-heading-title {
    letter-spacing: -.05em;
}

ul.elementor-nav-menu--dropdown a,
ul.elementor-nav-menu--dropdown a:focus,
ul.elementor-nav-menu--dropdown a:hover {
    border-right: 8px solid transparent;
}

.elementor-nav-menu .sub-arrow {
    padding: 7px 0 10px 10px;
}

.swldir {
    color: #4b4b4b;
    font-size: 1.1em;
    font-family: "Montserrat", Sans-serif;
    font-weight: 800;
}

@media (max-width: 767px) {
    .elementor-element.elementor-widget.elementor-widget-eael-tooltip .elementor-widget-container {
        overflow: inherit;
    }
}

.elementor-widget .elementor-icon-list-item,
.elementor-widget .elementor-icon-list-item a {
    align-items: start;
}

.elementor-icon-list-text {
    color: var(--e-global-color-text);
    margin-top: -5px;
}

.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label {
    display: block;
}

.elementor-35835 .elementor-element.elementor-element-521bb25 .elementor-field-group .elementor-field {
    color: #FFFFFF !important;
}

/* Owner Zoom */
.ownerzoom img:hover {
    transform: scale(2);
}

.ownerzoom img {
    transition-duration: 2s;
}

.elementor-background-overlay {
    overflow: hidden;
}

/* White links */
a.white {
    color: #fff;
    text-decoration: none;
}

a.white:hover {
    color: #ffffff;
}

/* Footer links */
a.gray {
    color: #B6B6B6;
    text-decoration: none;
    font-weight: 500;
}

a.gray:hover {
    color: #cfcfcf;
    font-weight: 500;
}

/* Improved Animations Stylesheet from https://element.how/elementor-improve-entrance-animations/ */
@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translate3d(0, -35px, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.elementor-element.fadeInDown {
    animation-name: fadeDown;
}

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translate3d(-35px, 0, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.elementor-element.fadeInLeft {
    animation-name: fadeLeft;
}

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translate3d(35px, 0, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.elementor-element.fadeInRight {
    animation-name: fadeRight;
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translate3d(0, 35px, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.elementor-element.fadeInUp {
    animation-name: fadeUp;
}

.elementor-20063 .elementor-element.elementor-element-d7acb23 .elementor-nav-menu--dropdown a {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
    padding-bottom: 10px;
}

/* Pull quote */
.pullquote {
    margin-left: 40px;
    color: #5bc500;
}

.pt_plus_asb_wrapper.hover-section .asb-desc {
    opacity: 1;
}

/* 
   Lightbox video fix:
   Do not use the old global width: 50% rule.
   Elementor popups also use dialog/lightbox classes, so that rule broke the mobile menu popup.
*/
.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-widget-content {
    margin: auto;
    max-width: 90vw;
}

/* Homepage counter */
.odometer.odometer-auto-theme,
.odometer.odometer-theme-default {
    font-family: "Montserrat", sans-serif !important;
}

/* Small disclaimer */
.small {
    font-size: 0.75em;
    line-height: 1.2em;
}

/* Line height of questions on booking form */
.gform_wrapper.gravity-theme .gfield_label {
    line-height: 1.2em;
}

/* Footer links */
.scfooter {
    color: #B6B6B6 !important;
    text-decoration: none;
    font-size: 1em;
    font-weight: 500 !important;
}

.scfooter:hover {
    color: #ffffff;
}

/* White links */
.scwhite {
    color: #FFF !important;
    text-decoration: none;
    font-size: 1em;
    font-weight: 500 !important;
}

.scwhite:hover {
    color: #ffffff;
}

/* Changes to review widget */
.elementor-widget-premium-google-reviews .premium-fb-rev-page-rating {
    font-family: 'Montserrat', sans-serif;
}

.premium-fb-rev-container .premium-fb-rev-page {
    text-align: left;
    line-height: 1.15em;
}

.premium-fb-rev-page-rating-wrapper {
    padding-bottom: 5px;
}

/* Clinic locator buttons */
#storepoint-container #storepoint-panel a.storepoint-cf-button,
#storepoint-container #storepoint-map .storepoint-location-popup a.storepoint-cf-button {
    margin-bottom: 5px;
}

/* Mobile only: prevent horizontal page scroll */
@media (max-width: 767px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }
}

/* Desktop dropdown stacking fix - minimal and stable */
@media (min-width: 1025px) {
    .elementor-location-header,
    .elementor-20063 {
        position: relative;
        z-index: 500;
    }

    .elementor-20063 .elementor-element.elementor-element-d7acb23,
    .elementor-20063 .elementor-nav-menu--main,
    .elementor-20063 .elementor-nav-menu--dropdown,
    .elementor-20063 .elementor-nav-menu .sub-menu {
        z-index: 600;
    }
}

/* Mobile Main Menu popup full-width safety */
@media (max-width: 767px) {
    #elementor-popup-modal-175677,
    #elementor-popup-modal-175677 .dialog-widget-content,
    #elementor-popup-modal-175677 .dialog-message,
    #elementor-popup-modal-175677 .elementor-175677,
    #elementor-popup-modal-175677 .elementor-175677 > .e-con,
    #elementor-popup-modal-175677 .elementor-175677 .e-con {
        width: 100vw !important;
        max-width: 100vw !important;
        min-width: 100vw !important;
        left: 0 !important;
        right: auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}
/* Sitewide mobile accessibility fix: improve Gravity Forms radio/checkbox touch target size */
@media (max-width: 767px) {
    .gform_wrapper .gfield_radio .gchoice,
    .gform_wrapper .gfield_checkbox .gchoice {
        display: flex;
        align-items: center;
        min-height: 44px;
        margin-bottom: 8px;
        padding: 6px 0;
    }

    .gform_wrapper .gfield_radio .gchoice input[type="radio"],
    .gform_wrapper .gfield_checkbox .gchoice input[type="checkbox"] {
        width: 22px;
        height: 22px;
        min-width: 22px;
        margin: 0 12px 0 0;
    }

    .gform_wrapper .gfield_radio .gchoice label,
    .gform_wrapper .gfield_checkbox .gchoice label {
        display: flex;
        align-items: center;
        min-height: 44px;
        line-height: 1.3em;
        cursor: pointer;
    }
}/* End custom CSS */