.google-map {
    width: 100%;
}
.text-uppercase a {
    color: #fff;
}

.text-uppercase a:hover{
    color: #cacaca;
}
.shopnow-nav{
    padding: 10px 15px !important;
}

#locn-map-autocomplt {
    position: relative;
}

#locn-map-autocomplt .pac-container.pac-logo {
    width: 100% !important;
    top: 80px !important;
    left: 0 !important;
    border-radius: 0;
    border-top: 0;
}
/*.pac-container.pac-logo:after {
    display: none !important;
}*/

.address-listbox address {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;;
}

.adr-drop-btn .dropdown-menu li a {
    cursor: pointer !important;
}

.check-cart-info span.price-strike {
    color: #f00;
    font-size: 14px;
    font-family: Arial;
    text-decoration: line-through;
    margin-right: 4px;
}
.blog-detail-wrap img {
    max-width: 100%;
}
.ggl-form-wrap { margin-top: 40px; text-align: center}
.ggl-form-wrap iframe { display: inline-block;}
.static-img-only { margin-top: 40px;}
.static-img-only img { min-width: 100%;}
.blog-dtl-top { margin-bottom: 20px;}
.blog-dtl-top .author, .blog-dtl-top .blog-date { display: inline-block;}
.blog-dtl-top .author img { margin-right: 8px; margin-top: -2px;}
.blog-dtl-top .blog-date { margin-left: 30px;}
*[tabindex] {outline: none;}
.pagination {display: block;}
.corporate-address {white-space: pre-wrap;}

.promo-code{margin-top: 0;}
.promo-code-panel .btn-apply{height: 40px;}
.store-info-checkout h3{margin-top: 5px;}
.coupon_applied{font-size: 16px;font-weight: 600;padding: 10px 15px;}
.delivery-alert .alert { margin-top: 0; margin-bottom: 20px;}
.home_delivery_form .text-danger { margin-left: 23px; }
.home_delivery_conditions img { max-width:100%; }
.stripe-powered img { display: block; margin: 0 auto;}

.padding-top-fix {
    padding-top: 40px;
}
.text-black-color {
    color: #333;
}
.customer-shop .product-list-box .cart-btn {
    cursor: pointer !important;
}
.padding-top-fix {
    padding-top: 40px;
}
.text-black-color {
    color: #333;
}
.customer-shop .product-list-box .cart-btn {
    cursor: pointer !important;
}
.product-filter-result.categories {
    margin-bottom: 5px !important;
}
.product-filter-result.brands {
    margin-top: 5px !important;
}
.product-filter-result {
    margin-bottom: 10px !important;
}
.listngs-wrap .show-results {
    font-weight: 600;
}
.static-banner:before {
    background: none;
}
/*----------------------*/
.search-sort-top div.clear-filters{
    font-weight: bold;
    text-decoration: underline;
}
.list_category{
    border: 1px solid #d5d5d5;
    padding: 2px 5px;
    border-radius: 8px;
}
.list_category a{
    font-size: 13px;
    cursor: pointer;
}
.brand_category{
    border: 1px solid #d5d5d5;
    padding: 2px 5px;
    border-radius: 8px;
}
.brand_category a{
    font-size: 13px;
    cursor: pointer;
}
ul.product-filter-result {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    float: none;
}
.product-filter-result li {
    margin-bottom: 0;
}
.store-popup-box-out-sml.store-popup-box-out .store-popup-box {
    padding: 10px;
}
.order-type-hr {
    border-top: 1px solid #000;
}
.other-pages ul {
    list-style-type: inherit;
    padding-left: 40px;
    margin-top: 0;
    margin-bottom: 10px;
}
.flex-hdrtop {
    min-height: 24px;
}
.link-btn-sml {
    cursor: pointer;
}
.check-out-right {
	background: none;
    padding: 0;
}
.cart-check-repeater-wrap {
    background: #efefef;
}
.cart-check-repeater {
    padding: 15px 0;
    margin-bottom: 15px;
}
.cart-check-repeater-wrap .totals {
    padding: 15px;
}
.check-avail-box .btn.ship-address {
    margin: 0 10px 0 10px;
}
.shipment-details-btngrp {
    display: flex;
}
.alert {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}
.map-container-locn {
    height: auto !important;
}
/* === CUSTOMER NEW APPOINTMENT STARTS ===*/
.add-pet-err,.form-validation-err{
    font-size: 14px !important;
    font-weight: normal !important;
    line-height: 24px !important;
    color: red !important;
}
.serv-img {
    width: auto;
    height: 140px !important;
    margin: 0 auto;
}
.pet-spay-neu,.pet-sex{
    flex-wrap : nowrap !important;
}
.pet-weight-ul{
    display: flex !important;
    flex-wrap: wrap !important;
}
/* === CUSTOMER NEW APPOINTMENT ENDS === */

/* Donation Popup starts */
.donation-span{
    padding: 5px 14px 7px 0px;
    margin-right: 20px;
    border: 1px solid grey;
    min-width: 0 !important;
    border-radius: 4px;
    line-height: 18px;
    margin-left: 0;
    text-indent: 27px;
    text-align: center; display:inline-block;
}
.donation-span label{
    font-family: Lucida Grande, sans-serif;
    color: #555;
}
.donation-span label input{
    left: 26px;
    bottom: 2px;
    position: relative;
}
label[for='donation-other']{
    font-weight: inherit !important;
}
input[name='donation-input-box']{
    width: 215px;
}

.donation-span .radio-inline{display:block;}
/* Dobnation Popup ends */

/* MEDIA */

@media only screen and (max-width: 991px){
    #donation-modal .left-sec img{max-height:300px;}
}
@media only screen and (max-width: 767px){
    .promo-code-panel .btn-apply{margin-bottom: 15px}
    .chose-dlvry-sec .left-sec {display:block; float:none; width:100%; margin: 10px 0 0;}
    .chose-dlvry-sec .left-sec br{display:none}
}
@media only screen and (min-width: 767px){
    header .head-midbox .navbar-store-plus-search {
        display: flex;
        justify-content: flex-end;
    }
}

@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {

  header .navslide {
        display: none;
    }

}
@media (min-width: 1025px) and (max-width: 1279px) {

  header .navslide {
        display: none;
    }

}
@media screen and (max-width: 767px){
    .product-filter-result, .listngs-wrap .show-results {
      
    }
    .list-wrap-right .breadcrumbs{}
    .padding-franchise {
        padding-top: 94px;
    }
}

@media(min-width:1400px) {
    .static-banner {
        height: 350px !important;
    }
}

.border-none{
    border:none;
}
.osm-store-list{
    height: 200px;
}
.osm-store-detail{
    height: 635px;
    width: 100%;
}
.osm-footer{
    height: 200px;
    width: 480px;
}
.in-stock-div{
    margin-top: 20px;
}
.in-stock-tick{
    color: #2ab683;
    font-size: 15px;
}
.out-of-stock-cross{
    color: #c45500;
    font-size: 15px;
}
.in-stock{
    color: #2ab683;
    font-weight: 700;
}
.out-of-stock{
    color: #c45500;
    font-weight: 700;
}
#payment-card-form .form-control {
    height: 40px;
}
#payment-card-form .form-group {
    margin-left: 0px;
    margin-right: 0px;
}
#payment-card-form {
    margin-left: -15px;
    margin-right: -15px;
}
.payment-button-wrapp{
    padding-left: 15px;
    padding-right: 15px;
}
/* Bookit */

@media screen and (min-width: 992px) {
    .wd-36 {
        padding-right: 0;
    width: 36%;
    }

    .wd-60 {
        width: 60%;
        padding: 0;
    }
}

#hair-length-ul input[type='radio'] {
    height: 16px;
    width: 16px;
}

#hair-length-ul label {
    vertical-align: middle;
    padding-left: 5px;
}

#weight-range-ul input[type='radio'] {
    height: 16px;
    width: 16px;
}

#weight-range-ul label {
    vertical-align: middle;
    padding-left: 5px;
}

/* concat & add ellipse to very long pet names */
.account-infobox .pet-profile-each .pet-name {
    overflow: hidden;
    white-space: nowrap;
    display: block;
    text-overflow: ellipsis;
}

/* Pet Profile Pagination always stays not broken */
@media screen and (min-width: 992px) {
    #pet_list {
        display: flex;
        flex-wrap: wrap;
    }
}

/* hide number styles for mobile number input */
input[type="number"].mobile-number::-webkit-outer-spin-button,
input[type="number"].mobile-number::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type="number"].mobile-number {
    -webkit-appearance: textfield;
    -moz-appearance:textfield;
    appearance: textfield;
}

#bookit-other-form #pet-doc-div {
    border-top: 1px solid rgb(218, 218, 218);
    padding-top: 40px;
}
.booking-wrap #add-new-pet-button {
    font-size:18px; 
}
/* file label which navigates to new page styles */
.cus-upload.upload-inline .file-box.btn-link {
    cursor: pointer;
    display: flex;
    word-break: break-all;
}
.checkout-from-box .panel-title > a.toggle-arrow:before {
    content:unset;
}

/* waiver styles */
#waiver-pdf {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: fit-content;
    margin: auto;
}

#weight-range-ul #weightRangeIdUnit + button {
    height: 34px;
}

#waiver-modal-toggle-btn {
    text-decoration: underline;
    font-weight: bold;
}

.addon-formbox{
    word-wrap:break-word;width:250px
}

.add-new-pet-modal .selct-dropbox .bootstrap-select {
	width:100% !important;
}

.mb-15 {
    margin-bottom: 15px !important;
}

/* #vaccinationRecords-add_pet_modal {
    margin: 0;
} */
.w-full {
    width: 100%;
}

#pet-list ~ .dropdown-menu.open ul.dropdown-menu.inner  {
    height: 200px; /* prevent menu from hiding behind header */
}

#appointment-notes-section {
    flex-direction: column;
}

#appointment-notes-section #appointment-notes {
    resize: vertical;
    min-height: 40px;
    font-size: 14px;
}

#appointment-notes-section #appointment-notes:not(:focus),
#opt-in-sms-phone:not(:focus) {
    border: 1px solid #ddd;
}

#waiver-save-sign-form {
    flex-direction: column;
}

#form-date-appn + p#modal-time-indicator {
    padding: .6rem;
    margin: auto 0 auto auto;
}
.selected-card {
    border: 2px solid #007bff; /* Use your preferred color */
    background-color: #e8f4ff; /* Light background to indicate selection */
}
.highlighted-card {
    border: 2px solid #007bff; /* Adjust the color and style as needed */
    background-color: #e6f2ff; /* Optional: subtle background color */
    border-radius: 8px;        /* Optional: rounded corners */
}

.zip-form-control{
    background: #fff;
    border: 1px solid #b9c4c9;
    border-radius: 6px;
    caret-color: #0075FF;
    color: #00112c;
    display: block;
    font-family: inherit;
    font-size: 1em;
    height: 40px;
    outline: none;
    padding: 5px 8px;
    position: relative;
    transition: border .2s ease-out, box-shadow .2s ease-out;
    width: 100%;
}
.zip-input-wrap label{
        color: #00112c;
        display: block;
        font-size: .91em;
        font-weight: 400;
        line-height: 13px;
        padding-bottom: 0px;
    
}
/* Container to hold two fields in a row */
.zip-input-row {
    display: flex;
    flex-wrap: wrap;
    gap: 16px; /* Adjust gap between fields */
}

/* Make each input field take half the row */
.zip-input-wrap {
    flex: 1 1 calc(50% - 8px); /* Adjust width and gap */
    margin-top: 0; /* Remove top margin for better alignment */
}

/* Optional: Ensure inputs look consistent in smaller screens */
@media (max-width: 768px) {
    .zip-input-wrap {
        flex: 1 1 100%; /* Stack fields vertically on smaller screens */
    }
}


    /* Required label styling */
.required-field:after {
    content: " *";
    color: red;
  }
  .required-icon {
    color: red;
    font-weight: bold;
    font-size: 1.2em;
}

  
  /* Validation feedback for input fields */
  .form-control.is-valid {
    border: 2px solid green;
  }
  
  .form-control.is-invalid {
    border: 2px solid red;
  }
  .is-valid {
    border-color: green;
  }
  .is-invalid {
    border-color: red;
  }
  

@media screen and (min-width: 992px) {
    #form-date-appn {
        width: 100%;
    }

    #modal-time-indicator {
        position: absolute;
        right: 40px;
        top: 0;
    }
}
.address-box-list {
    padding: 20px 20px 30px;
    border: 1px solid #b2b2b2;
    text-align: center;
    margin-bottom: 25px;
    position: relative;
    transition: all 0.3s ease;
}

.address-box-list.active {
    border-color: #F7941E;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    background-color: #fef3e6;
}

.tick-addr {
    position: absolute;
    top: 10px;
    right: 10px;
    display: none;
    color: #F7941E;
    font-size: 20px;
}

.address-box-list.active .tick-addr {
    display: inline-block;
    right: inherit;
}

.center-img {
    display: block;
    margin: 0 auto;
}
