﻿div.modal-dialog {
    max-width: 96%;
    margin:0 auto;
}
/*Loading*/
/* Absolute Center Spinner */
.loading {
  position: fixed;
  z-index: 999;
  height: 2em;
  width: 2em;
  overflow: visible;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display:none;
}

/* Transparent Overlay */
.loading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.4);
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
  /* hide "loading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.loading:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 1500ms infinite linear;
  -moz-animation: spinner 1500ms infinite linear;
  -ms-animation: spinner 1500ms infinite linear;
  -o-animation: spinner 1500ms infinite linear;
  animation: spinner 1500ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.5) -1.5em 0 0 0, rgba(0, 0, 0, 0.5) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
  box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) -1.5em 0 0 0, rgba(0, 0, 0, 0.75) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */

@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-moz-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-o-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

div.row.resultsTwoColumn {
    display: flex;
    flex-wrap:wrap;
}
div.filterBox:hover {
cursor:pointer;
}
div.row.resultsTwoColumn div.resultsMap {
        background-color:black;
    }
    div.row.resultsTwoColumn div.storeResultsAll, div.row.resultsTwoColumn div.resultsMap {
    flex-grow: 1;
    max-width:50%;
    min-width: 300px;
    }

/*Filter Services Section*/
span.filterResultsHeader {
    display: flex;
align-items: center;
justify-content: center;
}
    span.filterResultsHeader i {
        margin-right:10px;
        vertical-align:middle;
    }
    span.filterResultsHeader span {
        font-weight: 600;
        font-size: 24px;
        letter-spacing:2px;
    }
div.filterBoxes {
    display: flex;
    flex-wrap:wrap;
    max-width:500px;
    margin:10px auto;

}

div.filterBox {
    display: flex;
    align-items: center;
    width:250px;
    margin-bottom:5px;
}
span.filterWBox {
    width: 28px;
    height: 28px;
    background-color: white;
    display:block;
}

span.filterWBoxIcon {
width: 32px;
    height: 32px;
    background-size: 32px 32px;
    display:block;
    margin:0 5px;
}

div.filterBox span {
    font-weight:500;
    font-size:18px;
}
   span.filterWBoxIcon#ShiptoHomeIcon {
       background: url(https://cdn.frommfamily.com/Content/img/smallIcons/shipping.png);
    }


    span.filterWBoxIcon#LocalDeliveryIcon {
       background: url(https://cdn.frommfamily.com/Content/img/smallIcons/home-delivery.png);
    }

    span.filterWBoxIcon#CurbsidePickupIcon {
       background: url(https://cdn.frommfamily.com/Content/img/smallIcons/curbside-pickup.png);
    }

    span.filterWBoxIcon#AutoDeliveryIcon {
       background: url(https://cdn.frommfamily.com/Content/img/smallIcons/auto-delivery.png);
    }


span.filterWBox.checkedFilter {
        background: url(https://cdn.frommfamily.com/Content/img/smallIcons/selectedFilter.png);
    background-size: 28px 28px;
         width: 28px;
    height: 28px;
}


.modal-header h5 {
    display: flex;
    justify-content: space-between;
}

.modal-header {
    padding: 5px 15px;
    border-bottom: none;
}

    .modal-header h5 span {
        padding-top: 4px;
    }

    .modal-header h5 span, .modal-header h5 button.close, .modal-header h5 button.close span {
        color: black;
        text-transform: uppercase;
        font-weight: bold;
        letter-spacing: 4px;
        font-size: 24px;
        opacity: 1;
        float: none;
        margin-top: -5px;
        margin-bottom: 0px;
    }

        .modal-header h5 button.close span {
            font-size: 45px;
            font-weight: 400;
            line-height: unset;
        }

.modal-content .modal-body {
    padding: 0px 15px;
}

.modal-body .productLineBar {
    padding: 5px 10px;
}

    .modal-body .productLineBar a {
        border-bottom: 1px dotted;
        font-weight: 300;
        font-size: 90%;
    }

        .modal-body .productLineBar a:hover {
            border-bottom: 1px solid;
        }

.modalProductImageWrapper {
    padding: 2px 10px;
}

.productLineBar h3 {
    margin: 14px 0;
    font-size: 130%;
    font-weight: 500;
}

/*location bar */

.locationRow {
    background-color: black;
}

span#display-location-buyNow {
    background: url(https://www.frommfamily.com/Content/img/LocationIcon.png) left center no-repeat;
    background-size: 20px 20px;
    padding-left: 30px;
    display: inline-block;
    font-size: 22px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    float: left;
    max-width: calc(100% - 140px);
    text-align: left;
    position: relative;
}

div.filterResultsWrapper {
    background-color: #F2D4B4;
    padding:10px

}

/*Store Cards*/

div.buyNowStoreCard {
    padding: 0 10px;
}

div.buyNowStoreCardInner {
    display: flex;
}

div.buyNowStoreCardInner{
    border-bottom: 1px solid #F2D5B4;
    padding: 10px 0;
}
.subCardItem {
        border-top: 1px solid #F2D5B4;
    padding: 5px 0;
    margin: 5px 0;
}
div.buyNowStoreCard .StoreImageWrapper {
    min-width: 105px;
}

    div.buyNowStoreCard .StoreImageWrapper a.productBuyLink {
        text-transform: uppercase;
        font-weight: 900;
        letter-spacing: 5px;
        font-size: 20px;
    }

div.buyNowStoreCard .StoreInfoWrapper {
    margin: 0 10px;
    flex-grow: 1;
}

    div.buyNowStoreCard .StoreInfoWrapper span {
        display: block;
    }

div.buyNowStoreCard .StoreImageWrapper img {
    object-fit: cover; /* Do not scale the image */
    object-position: center; /* Center the image within the element */
    height: 105px;
    width: 105px;
}

div.multiStoreAdditional {
    display: none;
}

a.productBuyLink {
    display: flex;
    height: 32px;
    margin-top: 10px;
    align-items: center;
}

div.buyNowStoreCard span.store-name {
    font-weight: bolder;
    letter-spacing: 1px;
}

div.buyNowStoreCard a.productBuyLink img {
    object-fit: cover; /* Do not scale the image */
    object-position: center; /* Center the image within the element */
    height: 32px;
    width: 32px;
    margin-right: 10px;
}
div.StoreInfoWrapper div.store-amenities {
    display: flex;
    flex-wrap:wrap;
}
div.StoreInfoWrapper div.store-amenities span {
    width: 32px;
    height: 32px;
    background-size: 32px 32px;
}
/*Links in StoreInfoWrapper*/
div.buyNowStoreCard .StoreInfoWrapper span.locationDetails {
    display: flex;
    margin: 5px 0;
    justify-content: space-between;
}

    div.buyNowStoreCard .StoreInfoWrapper span.locationDetails a {
        border-bottom: 1px dotted;
    }

.StoreInfoWrapper span.multiStoreLink, .StoreInfoWrapper span.multiStoreDescription, .locationDetails a, .locationDetails .distance {
    font-size: 16px;
    color: #5E440A;
}

.StoreInfoWrapper span.multiStoreDescription{
    font-style: italic;
    font-size: 16px;
    color: #5E440A;
}

.StoreInfoWrapper span.store-location {
    font-weight: 600;
    font-size: 17px;
    color: #5E440A;
    border: none;
}
div#modalInStoreResults span.pleaseCallMessage {
    color: #5E440A;
    font-size: 16px;
    font-style: italic;
    display:block;
    text-align:center;
        letter-spacing: 1px;
}
div.buyNowStoreCard .StoreInfoWrapper span.multiStoreLink{
    border-bottom: 1px dotted;
    display: inline;
}

    .locationDetails a:hover, div.buyNowStoreCard .StoreInfoWrapper span.multiStoreLink:hover {
        border-bottom: 1px solid;
    }

    div.buyNowStoreCard .StoreInfoWrapper span.multiStoreLink:hover {
        cursor: pointer;
    }

    div.buyNowStoreCard .StoreInfoWrapper span.multiStoreLink:after {
        content: '\f0da';
        font-family: FontAwesome;
        font-style: normal;
        font-weight: normal;
        text-decoration: inherit;
        margin-left: 5px;
    }

    div.buyNowStoreCard .StoreInfoWrapper span.multiStoreLink.opened:after {
        content: '\f0d7';
        font-family: FontAwesome;
        font-style: normal;
        font-weight: normal;
        text-decoration: inherit;
        margin-left: 5px;
    }

div.buyNowStoreCard .StoreInfoWrapper span.multiStoreDescription {
    margin: 10px 0;
}
/*Instore Results*/
div.modalInStoreResultsWrapper {
    background-color: #FFF5D8;
}

span.BuyNowOnlineTitle, span.BuyInStoreTitle {
    display: flex;
    color: #307E24;
    align-items: center;
    justify-content: center;
}

    span.BuyNowOnlineTitle span.buyOnlineIcon {
        background: url(https://cdn.frommfamily.com/Content/img/smallIcons/online-ordering.png);
        background-size: 24px 24px;
        background-repeat: no-repeat;
        height: 24px;
        width: 24px;
    }

span.BuyInStoreTitle {
    color: #5E440A;
}

span.BuyNowOnlineTitle, span.BuyInStoreTitle, span.BuyNowOnlineTitle span {
    font-weight: 900;
    text-transform: uppercase;
    font-size: 16px;
    letter-spacing: 2px;
    text-align: center;
    padding: 6px;
}

a.gMapLink {
    display: flex;
    flex-wrap: wrap;
    margin: 4px 0;
}

    a.gMapLink span.addressWrap {
        line-height: 18px;
    }

        a.gMapLink span.addressWrap span {
            font-size: 16px;
            color: #5E440A;
            border-bottom: 1px dotted;
            display: inline-block;
        }
            a.gMapLink span.addressWrap span:hover {
            border-bottom: 1px solid;

            }

/*Phone*/
div.buyNowStoreCard .StoreInfoWrapper a.phoneWrapper {
    display: flex;
    align-items: center;
    color: #5E440A;
}

    div.buyNowStoreCard .StoreInfoWrapper a.phoneWrapper span {
        display: inline-block;
    }

a.phoneWrapper span.phoneIcon {
    padding-top: 3px;
    background: url(https://cdn.frommfamily.com/Content/img/smallIcons/phone.svg);
    background-size: 20px 20px;
    background-repeat: no-repeat;
    height: 20px;
    width: 20px;
    color: #5E440A;
    margin-right: 5px;
}

a.phoneWrapper span.phone {
    font-weight: 800;
    font-size: 19px;
    letter-spacing: 0px;
    padding-top: 4px;
}
/*Address*/

a.gMapLink span.addressIcon {
    border: none;
    background: url(/content/img/mapMarkers/basic.png);
    background-size: 14px 24px;
    background-repeat: no-repeat;
    height: 24px;
    width: 14px;
    margin-right: 5px;
}

.locationDetails a, .locationDetails a:hover, .locationDetails a:visited {
    font-size: 18px;
    color: black;
}

    div.buyNowStoreCard .StoreInfoWrapper span.locationDetails a:hover {
        border-bottom: 1px solid;
    }


div#map_wrapper {
    height: 800px !important;
	 position: -webkit-sticky; /* Safari */
    position: sticky;
    top: 0;
}

/*Map Styling*/

div.gm-style-iw-d > div {
    display: flex;
        max-width: 250px;
}
    div.gm-style-iw-d > div div.mapContentLeft {
        flex-basis: 1;
        margin-right:5px;
    }
        div.gm-style-iw-d > div div.mapContentLeft img {
            object-fit: cover;
            object-position: center;
            height: 80px;
            width: 80px;
        } 
        div.gm-style-iw-d > div div.mapContentRight {
        flex-basis: 2;
    }
            div.gm-style-iw-d > div div.mapContentRight h3 a {
                font-size: 75%;
    color: black;
    letter-spacing: normal;
    text-shadow: none;
    text-align: left;
    text-transform:uppercase;
    font-weight: 900;
    margin: 3px 0;
            }
span.drivingDirectionsLink a {
    color: black;
    border-bottom: 1px dotted;
}
span.drivingDirectionsLink a:hover {
    border-bottom: 1px solid;
}
div.gm-style-iw-d div.info-window {
    width: 100%;
    display:table;
}

div.mapContentRight {
    display: flex;
     flex-wrap: wrap;
 align-items: top;
}

div.mapContentLeft a.button {
    text-align: center;
    font-size:16px;
    padding: 8px 5px;
}
div.gm-style-iw-d > div div.mapContentLeft a.productBuyLink {
font-weight:900;
    font-size:16px;
    text-transform:uppercase;
    letter-spacing:1px;
}
div.gm-style-iw-d > div div.mapContentLeft a.productBuyLink img {
    object-fit: cover; /* Do not scale the image */
    object-position: center; /* Center the image within the element */
    height: 32px;
    width: 32px;
    margin-right: 7px;
}

@media screen and (max-width: 635px) {
    div.row.resultsTwoColumn div.storeResultsAll, div.row.resultsTwoColumn div.resultsMap {
        width: 100%;
        max-width: 100%;
    }
div#map_wrapper {
        height: 400px !important;
    }
}

/*Product Page Button*/
body div.layout button.buyNowBtn {
background-color:white; color:black;text-transform:uppercase; font-weight:900; letter-spacing:1px; margin:0 auto; padding:5px 10px;max-width:100%; border-radius:2px;border:1px solid black;white-space: normal;}

    body div.layout button.buyNowBtn:hover {
        background-color: #eee;
    }

    /*Transfer From StoreProductBuyNow.css*/

    

#map_canvas, #map_canvas_buyNow {
    width: 100%;
    height: 100%;
}

        
.store-amenities span {
    display: flex;
}

.store-amenity-home-delivery {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/home-delivery.png');
    float: left;
}

.store-amenity-order-online, .store-amenity-online-ordering {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/online-ordering.png');
    float: left;
}

.store-amenity-grooming {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/grooming.png');
    float: left;
}

.store-amenity-dog-wash {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/dog-wash.png');
    float: left;
}

.store-amenity-boarding {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/boarding.png');
    float: left;
}

.store-amenity-training {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/training.png');
    float: left;
}

.store-amenity-pool {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/pool.png');
    float: left;
}

.store-amenity-dog-park {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/dog-park.png');
    float: left;
}

.store-amenity-vet-clinic {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/veterinary-clinic.png');
    float: left;
}

.store-amenity-daycare {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/daycare.png');
    float: left;
}

.store-amenity-petsitting {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/pet-sitting.png');
    float: left;
}

.store-amenity-dogwalking {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/dog-walking.png');
    float: left;
}

.store-amenity-curbsidepickup {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/curbside-pickup.png');
    float: left;
}

.store-amenity-driveThru {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/drive-through.png');
    float: left;
}

.store-amenity-petAdoption {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/pet-adoption.png');
    float: left;
}

.store-amenity-autoDelivery {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/auto-delivery.png');
    float: left;
}

.store-amenity-PhoneSupportOff {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/phone-support-off.png');
    float: left;
}

.store-amenity-PhoneSupportOn {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/phone-support-on.png');
    float: left;
}

.store-amenity-liveChat {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/live-chat.png');
    float: left;
}

.store-amenity-bakery {
    width: 32px;
    height: 32px;
    background: url('https://cdn.frommfamily.com/Content/img/smallIcons/bakery.png');
    float: left;
}
a span.store-name {
    color: black;
    width:100%;
}
span.address, span.city {
    font-size:16px;
        color: black;
}
a.showOnMap img {
    max-height: 32px;
}
div.store-card {
    border-bottom: 1px solid black;
    float: left;
    width:100%;
}
div.storeRight {
    text-align: right;
}

div.store-amenities span {
        width: 24px;
    height: 24px;
    background-size: 24px 24px;
}
a.productBuyNowLink {
    background-color: blue;
    color:white;
    padding: 2px;
    font-size:14px;
      border-radius: 4px;
}
div.blog-des ul li {
    margin: 5px;
    font-size: 22px;
}
div.blog-des ul li:hover {
   cursor:pointer;
}
div.blog-des ul li img {
    width: 32px;
    height: auto;
}


/*Product Cards*/
div.ProductBtnsBottom {
display:flex; flex-direction: row;
  align-items: stretch;
  width: 100%;}
body div.ProductBtnsBottom button.buyNowBtn {
margin:0px; flex: 1; padding:unset;font-size: 75%;}
    div.ProductBtnsBottom a {
        display: block;
         flex: 1; 
         text-align:center;
         text-transform:uppercase;
         font-weight:900;
         font-size:19px;
         padding:4px 0;
         letter-spacing:1px;
    }

    /*location bar */
div.locationRow div.main {
    display: flex;
    height:40px;
            align-items: center;
}
    div.locationRow div.main span#display-location-buyNow {
        color: white;
        font-size:17px;

    }

    div.locationRow div.main span#changeLocationBar {
        font-size: 17px;
        color:#F2D4B4;
        border-bottom:1px dotted;
        margin-left:10px;
    }

        div.locationRow div.main span#changeLocationBar:hover {
        border-bottom:1px solid;
        cursor:pointer;
        }

input#buyNowFullAddressUs {
    width: 100%;
    padding: 0px 10px 0 10px;
    border:none;

}
    input#buyNowFullAddressUs:focus {
        border: none !important;
    }
.pac-container {
    z-index: 1051 !important;
}
i.searchIcon {
        } 

          
      i.searchIcon{ 
            padding: 3px; 
            color: black; 
            min-width: 40px; 
            text-align: center; 
            font-size: 20px;
        }
i.searchIcon.fa-map-marker {
            font-size: 24px;
}
#buyNowFullAddressUsWrapper {
    display: none;
            background-color:white;
            padding:2px;

}


span#buyNowFullAddressUsWrapper {
    width: 100%;
}


.modal-body .productLineBar div.modalProductImageWrapper a {
    border-bottom:none;
    text-decoration: none;
}

div#noResults {
    margin: 5px 10px;
    color: #5E440A;
    font-size: 18px;
    font-style: italic;
}