.start-time { border-right: 2px solid #ccc; padding-right: 10px; margin-right: 4px; }

.clinic-search-filters { padding-top: 30px; }

.clinic-search-form { padding: 0 40px; }

.clinic-search-results { margin-top: 40px; }

.appt-info { text-align: right; font-size: 12px; line-height: normal; }

.clinic-results { margin-bottom: 14px !important; padding: 0; display: flex; justify-content: space-between; border: 1px solid #dedede;  border-radius: 5px; overflow: hidden; }

.white_cl { padding-left: 20px; width: 35%; display: flex; padding-top: 14px; }

.gray_cl { background: #f4f4f4; padding: 14px 16px 14px 16px; display: flex; width: 65%; margin-left: 2%; justify-content: space-between; }

.clinic-name { height: auto !important;	padding: 15px 0; }

.right_column { display: flex; }

.clinic-results .logo { margin-left: 16px; display: flex; align-items: center; min-width: 170px; }

.clinic-results .logo img { max-width: 179px; max-height: 47px; }

.treatment-name { font-weight: bold; color: #000; font-size: 12px; display: inline-block; width: 100%; }

span.clinic-name { color: #3771bc; font-weight: bold; font-size: 16px; display: inline-block; padding: 0; line-height: normal; margin-bottom: 5px !important; vertical-align: top; }

.results-count { font-size: 14px; margin-bottom: 10px; }

.book-now-button { display: flex; align-items: center; }

.book-now-button .hellen-btn { border-radius: 5px !important; border:0 !important; text-transform: none; letter-spacing: 0; font-weight: normal !important; font-size: 14px; padding: 7px 18px; line-height: normal; display: inline-block; }

.clinic-info { padding-right: 23px; width: 75%; }

.address-main { display: flex; justify-content: space-between; }

.address-icon { display: flex; width: 82%; }

.address-icon svg { width: 15px; height: 18px; margin-right: 4px; }

.appt-time { display: inline-block; width: 100%; font-weight: bold; color: #000;font-size: 16px; }

.start-date { display: inline-block; width: 100%; padding-bottom:5px; }

.treatment-type { font-size: 12px; display: block; padding-top: 5px; }

.appt-address { font-size: 12px; display: block; }

.appt-distance { font-size: 12px; }

.page-indicator { display: flex; align-items: center; justify-content: space-between;}


.page-number, .carat { margin: 0 0 0 -1px; padding: 8px 15px; border: 1px solid #ccc;cursor: pointer;}

.page-number.current { background-color: #3771bc; cursor: inherit; color: #fff; border-color: #3771bc; }

.clinic-search-title { text-align: center; margin-bottom: 25px; display: flex; justify-content: center; }

.clinic-search-title h2 { font-size: 20px; font-weight: bold; line-height: normal; padding-top: 4px; }



.postal-search { font-size: 14px; margin-left: 0; text-align: center; padding: 15px 28px; }

.postal-search input[type="text"] { font-size: 17px; border-radius: 5px; line-height: 32px; border: 0; box-shadow: 0px 1px 12px #ccc; height: 46px; margin-bottom: 9px; padding: 9px 44px 9px 24px; background: url(../images/search-icon.png) center right 15px no-repeat; background-size: 22px; }



.filter-container { display: flex; flex-wrap: wrap;	gap: 20px; flex-direction: row; }

.filter-column { flex: 1; min-width: calc(50% - 10px); }

.form-check-label { margin-left: 7px; }

#btnClear { margin-top: 30px; }

.form-check-label { font-weight: normal !important; }

.form-check .form-check-input { margin-left: 0;}

.form-check { padding-left: 0;cursor: pointer;}

.dropdown-menu { min-width: 100%; padding: 0.5rem 0; font-size: 14px; color: #212529; text-align: left; list-style: none; background-color: #fff; background-clip: padding-box; border: 1px solid rgba(0,0,0,.15); padding: 7px 10px; border-radius: 7px; }

.form-check-input { width: 16px; height: 16px;}

span.review-score-stars { padding: 0 6px; }



/* Filters */

.search-filter-main { display: flex; align-items: center; font-size: 14px; }

.seach-filter-sort .dropdown.sort-dropdown { width: 100%; padding-left: 6px; }

.reset-button, .close-button { text-transform: none; letter-spacing: 0;  }

.reset-button { background: none !important; border: 0; color: #5d5d5d !important; font-size: 14px;padding: 0; margin-top: 11px; }

.close-button { float: right; background: #e1e1e1; border-color: #cccccc; color: #494949; font-size: 14px; padding: 2px 9px; margin-top: 8px; }

.seach-filter-sort { min-width: 140px; }

.search-filter-filterby { display: flex; align-items: center; padding-left: 20px; }

.filter-boxes { min-width: 166px; margin-left: 9px; }

.filter-boxes .appt-search-box { background: url(../images/search-icon.png) center left 10px no-repeat; background-size: 18px; color: #000;padding: 6px 10px 6px 37px; border-radius: 15px; width: 100% !important; line-height: normal; font-size: 14px; border: 1px solid #ccc; }

.filter-boxes .dropdown-toggle { background: #fff; color: #000; padding: 5px 10px; border-radius: 15px; font-size: 14px; text-transform: none; letter-spacing: 0; text-align: left; border: 1px solid #ccc; width: 100%; }

.dropdown-toggle::after { display: inline-block; margin-left: 0.255em; vertical-align: 0.255em; content: ""; border-top: 0.4em solid;border-right: 0.4em solid transparent;   border-bottom: 0; border-left: 0.4em solid transparent; position: absolute; right: 16px;  top: 0;  bottom: 0; margin: auto; height: 4px; }

.clinic-search-filters .container { padding: 0; max-width: 100%; }



/* Sort Dropdown */

.filter-flex { display: flex; }

.seach-filter-sort .filter-boxes { margin-left: 0; margin-right: 10px; display: flex; align-items: center; }

.seach-filter-sort .filter-boxes .dropdown.multi-select-dropdown { width: 85%; padding-left: 5px; }

.sort-icon svg, .seach-filter-label svg { width: 25px; height: 25px; }

/* // */

/* Filters */



.results-count h3 { text-align: center; font-size: 16px; margin-top: 105px; color: #000 !important; }

.review { display: flex; align-items: center; line-height: 1; margin-bottom: 7px; font-size: 10px; }

.review img { height: 15px; margin: 0 6px; }

.dropdown-menu li { display: inline-block; width: 100%; }

.address-icon > a.address-link { width: 90%; }

.seach-filter-label span  { font-size: 0; }



.filter-close { position: absolute; right: 15px; display: none; top: 15px; }

.filter-close svg { width: 15px; height: 15px; }



/*Reviews */

.star-rating { font-size: 0; /* Hide whitespace */ display: inline-block; position: relative; white-space: nowrap; }

.back-stars, .front-stars {font-size: 10px; /* Adjusted size */ color: #ddd; }

.front-stars { color: gold; position: absolute; top: 0; left: 0; overflow: hidden; white-space: nowrap; }



.sort-dropdown-mobile { display: none !important; }





/* Responsive Mobile CSS */

@media (max-width: 1279px) {

    .filter-boxes { min-width: 125px; }

    .filter-boxes .appt-search-box { width: 80% !important; }

    .dropdown-menu, .filter-boxes .dropdown-toggle { font-size: 12px; }

    .filter-boxes .appt-search-box { padding: 5px 10px 5px 32px; font-size: 13px; }

    .form-check-label { width: 60% !important; }

    .page-indicator { margin: 50px 0 !important; }

    .seach-filter-sort { min-width: 120px; }

    .clinic-info { width: 68%; }

}

@media (max-width: 1023px) {

    .search-filter-filterby { border-left: 0; padding-left: 12px; justify-content: center;  }

    .reset-button { margin-top: 8px; font-size: 13px; }

    .close-button { margin-top: 6px; font-size: 12px; }

    .filter-boxes { min-width: 115px; max-width: 155px; margin-left: 0; margin-right: 8px; }

    .clinic-search-title h2 { font-size: 18px; }

    .clinic-search-form { padding: 0; }

    .filter-boxes .appt-search-box { width: 100% !important; padding: 6px 10px 6px 33px; font-size: 12px; }

    .book-now-button .hellen-btn { font-size: 13px; }

    .page-number, .carat { padding: 5px 12px; }

    .form-check { display: flex; }

    .dropdown-menu { width: 140px; }

    .form-check-input { margin-top: 1px; }

    .clinic-search-title { margin-bottom: 15px; }

    .clinic-results .logo { min-width: 120px; }

    .clinic-results .logo img { max-width: 139px; max-height: 33px; }

    .appt-time { font-size: 14px; }

    .appt-address { font-size:10px;}

    .clinic-search-results { margin-top: 30px; }

}

@media (max-width: 767px) {

    .right_column { flex-wrap: wrap; width: 70%; padding: 13px; }

    .gray_cl { width: 100%; margin-left: 0; flex-wrap: wrap; }

    .appt-info { text-align: left; }

    .clinic-results { border: 1px solid #d0d0d0; }

    .clinic-results .logo { width: 40%; margin: 0; padding: 8px; }

    .clinic-results .logo img { max-height: 63px; }

    .gray_cl { margin-top: 18px; padding: 10px 12px; }

    .clinic-results .logo img { max-width: 100%; }

    .clinic-info { width: 100%; padding-right: 0; margin: 0 0 9px 0; }

    .clinic-results { flex-wrap: wrap; }

    .white_cl { padding-top: 12px; width: 57%; }

    .appt-info { font-size: 13px; text-align: right; padding-right: 16px; }



    .seach-filter-label span { position: relative; background: #fff; color: #000; padding: 5px 21px 5px 10px; border-radius: 15px; font-size: 12px; text-transform: none; letter-spacing: 0; text-align: left;  border: 1px solid #ccc; width: 100%; }

    .dropdown-toggle::after { border-top: 0.3em solid; border-right: 0.3em solid transparent; border-bottom: 0; border-left: 0.3em solid transparent; }

    .seach-filter-label span:after { display: inline-block; margin-left: 0.255em; vertical-align: 0.255em; content: ""; border-top: 0.3em solid; border-right: 0.3em solid transparent;  border-bottom: 0; border-left: 0.3em solid transparent; position: absolute;  right: 8px; top: 0; bottom: 0; margin: auto; height: 4px; }

    .search-filter-filterby label { margin-right: 12px; }

    .search-filter-main { justify-content: center; }

    .active-mobile-filters { top: 0; opacity: 1; visibility: visible; height: 79vh; }

    .filter-flex { height: 71vh; box-shadow: -9px -9px 51px #0000003b; border-radius: 5px 5px 0 0; display: inline-block; transition: 0.4s all; -webkit-transition: 0.4s all; opacity: 0; bottom: -100% !important; visibility: hidden; position: fixed; top: auto; bottom: 0; background: #ffff; width: 100%;left: 0; padding: 52px 0 0 0;  z-index: 99999; align-content: flex-start; }

    .active-mobile-filters { opacity: 1; bottom: 0 !important; visibility: visible; }

    .filter-flex:before { content: "Filters"; position: absolute; left: 0; top: 13px; width: 100%; text-align: center; font-size: 15px; font-weight: bold; }

    .filter-flex .filter-boxes {  width: 100%; min-width: 100%; max-width: 100%; border-bottom: 1px solid #ddd; padding: 9px 31px; }

    .filter-flex .dropdown-toggle { padding: 0; border: 0; font-weight: bold; font-size: 14px; }

    .filter-flex .dropdown-menu { width: 100%; display: block; position: relative; border: 0; padding: 9px 0 0 0; }

    .filter-flex .filter-boxes .dropdown-toggle { padding: 0; }

    .search-filter-filterby { padding-left: 3px;}

    .close-button { display: none; }

    .filter-close { display: block;}



    .reset-button { position: absolute; top: -25px; right: 0px; }

    .filters-focus > span { box-shadow: 0 0 0 0.25rem rgba(130,138,145,.5); }



    .seach-filter-sort .dropdown-item { padding: 0; }

    .seach-filter-sort .dropdown-menu { width: 100px; }

    /*.seach-filter-sort .dropdown.sort-dropdown { position: static;}

    .sort-dropdown .dropdown-menu {

        height: auto;

        box-shadow: -9px -9px 51px #0000003b;

        border-radius: 5px 5px 0 0;

        display: inline-block;

        transition: 0.4s all;

        -webkit-transition: 0.4s all;

        opacity: 0;

        bottom: -100% !important;

        visibility: hidden;

        position: fixed !important;

        top: auto !important;

        bottom: 0 !important;

        background: #ffff;

        width: 100%;

        left: 0 !important;

        padding: 18px 18px 88px 18px;

        z-index: 99999;

        align-content: flex-start;

        transform: none !important;

    }

    .sort-dropdown .dropdown-menu.show { opacity: 1; bottom: 0 !important; visibility: visible; } */

}

@media (max-width: 559px) {

    .right_column { width: 60%; padding: 0; }

    .book-now-button { width: 100%; }

    .clinic-results .hellen-button.button-right { width: 100%; }

    .clinic-results .book-now-button .hellen-btn { width: 100%; padding: 5px 18px; }

    .appt-time { font-size: 14px; }

    .clinic-name { font-size: 14px; }

    span.clinic-name { font-size: 14px; display: inline-block; padding: 0; margin-bottom: 0 !important; }

    .review img { height: 12px; }

    .review { margin-bottom: 8px; }

    .results-count { font-size: 13px; }

    .appt-distance { font-size: 10px; }

    .start-date { padding-bottom: 5px; font-size: 12px; }

    .clinic-info { margin: 0 0 10px 0; }

    .clinic-search-results { margin-top: 20px; }

    .start-time { border-right: 1px solid #ccc; padding-right: 5px; margin-right: 3px; }

    .appt-address, .appt-distance, .review { font-size:11px;}

    body .calloutbox { padding: 40px 0 20px 0 !important; }



    /* Mobile Filters */

    .seach-filter-sort .filter-boxes { margin-left: 0; margin-right: 5px; display: flex; align-items: center; }

    .seach-filter-sort .filter-boxes .dropdown.multi-select-dropdown { width: 88%; padding-left: 3px; }

    .filter-boxes .dropdown-toggle { padding: 5px 7px 5px 10px; width: 99%; }

    .seach-filter-label span { height: 30px; padding: 5px 18px 5px 8px; font-size: 11px; border: 1px solid #ccc; width: 81%; display: inline-block; margin-left: 3px; }

    .filter-boxes { min-width: 92px; max-width: 98px; margin-left: 0; margin-right: 0; }

    .filter-boxes .appt-search-box { height: 30px; width: 100% !important; padding: 5px 10px 5px 24px; font-size: 11px; background-size: 14px; background-position: center left 6px; }

    .search-filter-filterby label { width: 55%; margin-right: 6px; display: flex; align-items: center; }



    .clinic-search-filters .container { padding: 0 !important; }

    .dropdown-toggle::after { right: 8px; }

    .sort-icon { width: 17%; }

    /* // */



    .postal-search { width: 100%; margin-left: 0; text-align: center; padding: 15px 28px; }

    .postal-search input[type="text"] { border-radius: 5px; line-height: 32px; border: 0; box-shadow: 0px 1px 12px #ccc; height: 46px; margin-bottom: 9px; padding: 9px 44px 9px 14px; background: url(../images/search-icon.png) center right 15px no-repeat; background-size: 22px; }



    .seach-filter-sort { min-width: initial; min-width: initial; min-width: auto; width: 34%; }

    .sort-icon svg { width: 100%; height: 20px; }

    .seach-filter-label svg { width: 20%; height: 20px; }

    .seach-filter-sort .dropdown.sort-dropdown { width: 79%; padding-left: 0; margin-left: 3px; }

    .filter-boxes { width: 100%; min-width: inherit; max-width: inherit;  }

    .search-filter-filterby .filter-boxes { width: 47%; }

    .search-filter-filterby { width: 65%; padding-left: 1px; }

    .search-filter-filterby label { font-size: 15px; }

    .filter-flex .form-check { align-items: center;  margin-bottom: 7px !important; }

    .seach-filter-sort .dropdown-menu { bottom: -100% !important;  transition: 0.3s all; -webkit-transition: 0.3s all; height: 0; top: auto !important; }

    .seach-filter-sort .dropdown-menu.show { width: 100%; position: fixed !important; bottom: -1px !important;  padding: 21px 40px 103px 40px;transform: translate3d(0, 0, 0) !important;   display: flex; flex-wrap: wrap; height: 46vh; align-content: flex-start; box-shadow: -9px -9px 51px #0000003b; border-radius: 5px 5px 0 0; border: 0; }

    .sort-dropdown-mobile { text-align: center; position: relative; display: block !important; width: 100% !important; padding-bottom: 30px; font-weight: bold; font-size: 16px; }

    .seach-filter-sort .dropdown-menu li { width: 50%; }

    .seach-filter-sort .dropdown-menu li:not(.sort-dropdown-mobile) { position: relative; padding-left: 0; font-size: 15px; }

    .seach-filter-sort .dropdown-menu li:not(.sort-dropdown-mobile) a { padding-left: 31px; }

    .seach-filter-sort .dropdown-menu li:not(.sort-dropdown-mobile):before { content: ""; width: 18px; height: 18px; border: 1px solid #ccc; position: absolute;left: 0; top: 3px; border-radius: 3px; }

    .seach-filter-sort .dropdown-menu li:not(.sort-dropdown-mobile):after { width: 5px; height: 10px; top: 41%; content: ""; left: 3px; position: absolute; transform: rotate(45deg) translateY(-50%); border-bottom: 2px solid transparent; border-right: 2px solid transparent;}

    .seach-filter-sort .dropdown-menu li.active-li:not(.sort-dropdown-mobile):after { border-bottom-color: #1e73be; border-right-color: #1e73be; }

    .sort-filter-close { position: absolute; right: -10px; top: 0; }

    .sort-filter-close svg { width: 15px; height: 15px; }

    .form-check-label {margin-left: 11px; }

    .seach-filter-sort .dropdown-item { position: relative; z-index: 1; }



    .active-focus > span {

        box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15) !important;

        border-color: #aaa !important;

    }

    .seach-filter-label span:focus, .btn-check:focus+.btn-secondary, .btn-secondary:focus {

        box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.15) !important;

        border-color: #aaa !important;

        box-shadow: none;

    }



}



/* // Responsive CSS */





/* Google Address Autcomplete */

.pac-container{

    z-index: 10000 !important;

}