﻿/*
    Primary Blue:   #00a3e0
    Primary Red:    #cc0033
    Primary Grey:   #333f48
*/
@font-face {
    font-family: 'Helvetica Neue';
    font-style: normal;
    font-weight: 400;
    src: local('Helvetica Neue'), local('Helvetica-Neue'), local('HelveticaNeue'), url(../fonts/helvetica-neue.woff2) format('woff2');
}

@font-face {
    font-family: 'Helvetica Neue';
    font-style: normal;
    font-weight: 700;
    src: local('Helvetica Neue Bold'), local('Helvetica-Neue-Bold'), local('HelveticaNeueBold'), url(../fonts/helvetica-neue-bold.woff2) format('woff2');
}


@font-face { font-family: 'Font Awesome 5 Free';font-style: normal; font-weight: 900;       font-display: auto; src: url("../fonts/fa-solid-900.eot"); src: url("../fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../fonts/fa-solid-900.woff2") format("woff2"), url("../fonts/fa-solid-900.woff") format("woff"), url("../fonts/fa-solid-900.ttf") format("truetype"), url("../fonts/fa-solid-900.svg#fontawesome") format("svg"); }
@font-face { font-family: 'Font Awesome 5 Brands'; font-style: normal; font-weight: normal; font-display: auto; src: url("../fonts/fa-brands-400.eot"); src: url("../fonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../fonts/fa-brands-400.woff2") format("woff2"), url("../fonts/fa-brands-400.woff") format("woff"), url("../fonts/fa-brands-400.ttf") format("truetype"), url("../fonts/fa-brands-400.svg#fontawesome") format("svg"); }

body { font-family: "Helvetica Neue",Helvetica Neue,Helvetica,Arial,sans-serif; color: #6d6e71; }
h1, h2, h3, h4, h5 { font-weight: 700;color:#1b6fb4 }
p { font-size: 16px; }
input[type="submit"] {white-space:normal}


@media (max-width: 991px) {
    ul { list-style: none; padding-left: 0; }
}

.fas { font-family: 'Font Awesome 5 Free'; font-weight: 900; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; }
.fab { font-family: 'Font Awesome 5 Brands'; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; }
.fa-map-marker-alt:before { content: "\f3c5"; }
.fa-phone:before { content: "\f095"; }
.fa-facebook:before { content: "\f09a"; }
.fa-instagram:before { content: "\f16d"; }
.fa-twitter:before { content: "\f099"; }
.fa-yelp:before { content: "\f1e9"; }
.fa-google:before { content: "\f1a0"; }
.fa-envelope:before { content: "\f0e0"; }
.fa-print:before { content: "\f02f"; }
.fa-cc-visa:before { content: "\f1f0"; }
.fa-cc-mastercard:before { content: "\f1f1";}
.fa-cc-amex:before { content: "\f1f3"; }
.fa-cc-discover:before { content: "\f1f2"; }
.fa-youtube:before { content: "\f167"; }
.fa-linkedin:before { content: "\f08c"; }
.fa-snapchat:before { content: "\f2ab"; }
.fa-vimeo:before { content: "\f40a"; }
.fa-whatsapp:before { content: "\f232"; }
.fa-pintrest:before { content: "\f0d2"; }
.fa-pinterest:before { content: "\f0d2"; }
.fa-yp:before { content: "\f23b"; }
.fa-sms:before { content:"\f7cd"; }
.fa-info-circle:before { content:"\f05a"}
.fa-minus-circle:before { content:"\f056"}

.bg-gradient { color:#fff; background: #00a3e0; background: -moz-linear-gradient(center, ellipse cover, #00a3e0 0%, #003da5 100%); background: -webkit-linear-gradient(center, ellipse cover, #00a3e0 0%,#003da5 100%); background: linear-gradient(ellipse at center, #00a3e0 0%,#003da5 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a3e0', endColorstr='#003da5',GradientType=0 ); }
.bg-gradient a, .bg-gradient h4 {color:#fff}
.bg-brandlight {background:#ecf0f9}

.bg-bubbles { color: #fff; background: #00a3e0 url(../i/bg/carpet-cleaning-before-after-background.png) }

.btn-transparent { color: #1b6fb4; border-color: #1b6fb4; letter-spacing: 1px; transition: all 300ms ease 0ms; }
.btn-transparent:after { position: absolute; margin-left: -1em; opacity: 0; text-transform: none; content: "\00BB"; transition: all 300ms ease 0ms; margin-top: -1px; padding-left: 3px; }
.btn-transparent:hover { padding-right: 1.5em; }
.btn-transparent:hover:after { margin-left: 0; opacity: 1; }

.btn-transparent-dark { color:#fff; border-color:#fff; letter-spacing: 1px; transition: all 300ms ease 0ms; }
.btn-transparent-dark:after { position: absolute; margin-left: -1em; opacity: 0; text-transform: none; content: "\00BB"; transition: all 300ms ease 0ms; margin-top: -1px; padding-left: 3px; }
.btn-transparent-dark:hover { color:#ddd; padding-right: 1.5em; }
.btn-transparent-dark:hover:after { margin-left: 0; opacity: 1; }

div.carpet-cleaning { text-align: center; margin: 0; padding: 12px; font-size: 12px; font-weight: 700; color: #fff; }
div.carpet-cleaning span { display: block; padding-top: 8px; }
div.carpet-cleaning img {  max-width: 100%;width:170px; position: relative; z-index: 99; }

#hbLogo { max-height: 150px; }

#header {background:#1b6fb4}
#topbar {height: 16px; }
#topnav {margin-top:18px}
#topnav .nav-item:first-of-type a.nav-link {padding-left:0;}
#topnav .nav-item:last-of-type a.nav-link { right: 0; }
#topnav .nav-item a.nav-link {color:#fff;font-size:12px;font-weight:700;transition: all 300ms ease 0ms;}
#topnav .nav-item:hover a.nav-link {color:#ddd;}

@media (max-width:1200px) {
    #topnav .nav-item a.nav-link { padding: .5rem; }
}

    .navbar-brand { max-width: 50% }
    .navbar-brand img { max-width: 100% }
    .navbar-dark .navbar-nav .nav-link { color: rgba(255,255,255,.8); }

    #mainnav { }
    #mainnav .nav-item { text-align: left; border-left: solid 2px #00a3e0; transition: all 300ms ease 0ms; }
    #mainnav .nav-item:hover { background: rgba(125,185,232,0.5); border-color: #d1d3d4 }
    #mainnav .nav-item a.nav-link { color: #fff; font-size: 16px; font-weight: 700; padding: 0 12px 0 8px; transition: all 300ms ease 0ms; }
    #mainnav .nav-item:hover a.nav-link { color: #eee }

    #locationinfo { padding-top: 22px }
    #locationinfo h2 { color: #fff; font-size: 16px }
    #locationinfo h3, #locationinfo h3 a { color: #C6DEFF; font-size: 32px; }
    #locationinfo h3 span { font-weight: normal }

    @media (min-width: 991px) {
        #locationinfo h3, #locationinfo h3 a { font-size: 18px; text-decoration: none; cursor: default }
    }

    #locationinfo p a { color: #ddd }
    #locationinfo p { color: #ddd; font-size: 12px; font-style: italic }

    #ctabar { margin-top: -40px; background: #003; }
    #ctabar h3 { color: #fff; text-align: center; font-size: 18px; padding: 10px 0; margin: 0; font-weight: normal }
    #ctabar .container { position: relative }
    #ctabar #btn-free { color: #fff; font-size: 16px; font-weight: 700; background: #be0005; position: absolute; right: -10px; bottom: 0; margin-top: -10px; padding: 12px 40px; border-top-left-radius: 4px; border-top-right-radius: 4px }
    #ctabar #btn-free:hover { background: #000 }
    #ctabar #btn-free a { display: block }
    #ctabar #btn-free a:hover { text-decoration: none }

    #homeleader { }
    .pageheader { }
    .heading { background: rgba(0,0,0,0.7); padding: 25px; border-radius: 5px; display: inline-block }
    .pageheader h1, .pageheader h2, .pageheader h3, .pageheader p { color: #fff }
    .guarantee { height: 200px; background: #fff url(../i/pg/guarantee/carpet-cleaning-guarantee-hb1.jpg) no-repeat center center; background-size: cover }
    .carpetcleaning { background: #fff url(../i/pg/carpet-cleaning-service.jpg) repeat center center; background-size: cover }
    .tilegrout { background: #fff url(../i/pg/svc/tile-grout-cleaner-companies.jpg) repeat center center; background-size: cover }
    .hardwood { background: #fff url(../i/pg/svc/hardwood-floor-cleaning-600.jpg) repeat center center; background-size: cover }
    .upholsterycleaning { background: #fff url(../i/pg/svc/upholstery-cleaning-service.jpg) repeat center center; background-size: cover }
    .faq { background: #fff url(../i/pg/svc/carpet-cleaning-service4.jpg) repeat center center; background-size: cover }
    .cleaningservice { background: #fff url(../i/pg/svc/carpet-cleaning-service2.jpg) repeat center center; background-size: cover }
    .areaserved { background: #fff url(../i/bg/areas-served-carpet-cleaning-service.png) repeat center center; background-size: cover; background-position: center center }
    .ecofriendly { background: #fff url(../i/pg/svc/eco-friendly-cleaning-background-2.jpg) repeat-x; background-size: cover; background-position: center center }
    .beforeafter { background: #fff url(../i/pg/svc/highest-rated-carpet-cleaning.jpg) repeat center center; background-size: cover }

    #homejumbotron h1, #homejumbotron h2 { font-size: 32px; color: #1b6fb4 }
    #homejumbotron p { color: #1b6fb4 }
    h1.long-text { font-size: 1.75rem; }

    @media (min-width: 991px) {
        #homeleader { background: #fff url(../i/pg/svc/home-carpet-cleaning-service-648.jpg) no-repeat center center; background-size: cover; position: relative; z-index: 0; }
        #homeleader .row { min-height: 400px }
        #homejumbotron h1, #homejumbotron h2 { color: #fff }
        #homejumbotron p { color: #fff }
        .pagestart { padding-top: 20px; background: #fff }
        .pageheader { }
        .guarantee { height: 400px }
        #mobiletotal { display: none }
    }

    #free-estimate { position: relative; color: #fff; padding: 10px 20px 10px 30px; background: #00a3e0; border-top-left-radius: 5px; border-top-right-radius: 5px; background: -moz-radial-gradient(center, ellipse cover, #00a3e0 0%, #1b6fb4 100%); background: -webkit-radial-gradient(center, ellipse cover, #00a3e0 0%,#1b6fb4 100%); background: radial-gradient(ellipse at center, #00a3e0 0%,#1b6fb4 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a3e0', endColorstr='#1b6fb4',GradientType=1 ); box-shadow: -5px -4px 8px -3px rgba(0,0,0,0.42); }
    #free-estimate h3 { color: #fff; text-align: center; font-size: 16px; padding: 25px 0 5px 0 }

    #jumbotronfooter { position: absolute; bottom: 0; width: 100%; z-index: 1; background: -moz-linear-gradient(left, rgba(27,111,180,1) 0%, rgba(56,133,195,1) 12%, rgba(125,185,232,0.5) 41%, rgba(75,147,206,1) 71%, rgba(27,111,180,1) 100%); background: -webkit-linear-gradient(left, rgba(27,111,180,1) 0%,rgba(56,133,195,1) 12%,rgba(125,185,232,0.5) 41%,rgba(75,147,206,1) 71%,rgba(27,111,180,1) 100%); background: linear-gradient(to right, rgba(27,111,180,1) 0%,rgba(56,133,195,1) 12%,rgba(125,185,232,0.5) 41%,rgba(75,147,206,1) 71%,rgba(27,111,180,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1b6fb4', endColorstr='#1b6fb4',GradientType=1 ); }
    #jumbotronfooter h3 { color: #fff; font-size: 18px; margin: 0; padding: 16px }

    #ecofriendly { background: #fff url(../i/pg/svc/green-carpet-cleaning-company-61.png) no-repeat; background-position: center center; background-size: cover }
    #ecofriendly h3 { color: #39b54a }
    #ecofriendly .btn-transparent { color: #39b54a; border-color: #39b54a; }
    #ecofriendly .truck { max-width: 100% }

    @media (max-width:991px) {
        #ecofriendly { background: #f1f1f1 url(../i/pg/svc/eco-friendly-cleaning-background.jpg) repeat-x; }
    }

    .ytthumb img.img-fluid { transition: all linear 100ms }
    .ytthumb img.img-fluid:hover { cursor: pointer; filter: grayscale(100%); }

    .service img, .service h5, .service p, .service a { transition: all 300ms ease 0ms; }
    .service img:hover { opacity: 0.5; }
    .service h5 { margin: 0; color: #6d6e71 }
    .service h5:hover { color: #000 }
    .service p { padding: 4px 0; margin: 0 }
    .service a { color: #6d6e71; font-weight: 700 }
    .service a:hover { color: #000 }
    .service a.learn:after { position: absolute; margin-left: -1em; opacity: 0; text-transform: none; content: "\00BB"; transition: all 300ms ease 0ms; margin-top: -1px; padding-left: 3px; }
    .service:hover a.learn { padding-right: 1.5em; }
    .service:hover a.learn:after { margin-left: 0; opacity: 1; }

    .coupon { display: block; padding: 20px; border: 4px dashed #cc0033; border-radius: 15px; height: 100%; background: #fff; transition: all 300ms ease 0ms; text-align: center; }
    .coupon h3 { color: #cc0033 }
    .coupon p { color: #000 }
    .coupon:hover { text-decoration: none; background: #eee }

    .review { }
    .review h6 { color: #000; background: transparent url(../i/ico/5-star.png) no-repeat bottom center; padding-bottom: 40px; text-align: center; font-weight: 700; background-size: auto }

    .stars { min-height: 20px; background: transparent url(../i/pg/reviews/5-stars.png) no-repeat bottom center; }
    .star4 { background-image: url(../i/pg/reviews/4-stars.png) }
    .star3 { background-image: url(../i/pg/reviews/3-stars.png) }

    .qservice { display: block; margin-bottom: 6px; border: solid 1px #ccc; border-radius: 4px }
    .qservice:hover { background: #efefef; text-decoration: none }
    .qservice h5 { margin: 0; color: #6d6e71 }
    .qservice:hover h5 { text-decoration: none }
    .qservice p { padding: 4px 0; margin: 0 }
    .qservice a { color: #6d6e71; font-weight: 700 }


    .estimate-columns .card { margin-bottom: 15px }
    .estimatecounter { text-align: center }

    #mobiletotal { position: fixed; bottom: 0; height: 50px; background: #be0005; width: 100%; z-index: 99999; text-align: center; color: #fff }

    .text-white h5 { color: #fff }
    .form-check label { padding-left: 8px }
    div.sticky { position: -webkit-sticky; position: sticky; top: 10px; }

    .hrs { display: inline-block; width: 45px; font-weight: 700 }

    .vcard h3 { font-size: 1.1em }

    .ccs { font-size: 36px }



    ul.checks { list-style: none; }
    ul.checks li { position: relative; padding-left: 30px; margin-bottom: 6px }
    ul.checks li:before { position: absolute; top: 5px; left: 0; content: ' '; width: 50px; height: 50px; background: url("data:image/svg+xml;utf8,<?xml version='1.0' encoding='utf-8'?><svg width='18' height='18' viewBox='0 0 1792 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z' fill='%231b6fb4'/></svg>") no-repeat; }

    .brace { width: auto; min-width: 35px; padding-bottom: 20px; font-size: 2em; line-height: 2em; position: relative; text-align: center; vertical-align: middle; margin: 0 15px 15px; border: none; background-color: transparent; background-image: radial-gradient(circle at 0 0, rgba(255,255,255,0) 14.5px, #fff 15.5px, #fff 19.5px, rgba(255,255,255,0) 20.5px), radial-gradient(circle at 35px 0, rgba(255,255,255,0) 14.5px, #fff 15.5px, #fff 19.5px, rgba(255,255,255,0) 20.5px); background-size: 35px 20px; background-position: center bottom; background-repeat: no-repeat; text-transform: lowercase; font-style: italic; color: #fff; -webkit-filter: drop-shadow(0 1px 1px rgba(0,0,0,0.15)); filter: drop-shadow(0 1px 1px rgba(0,0,0,0.15)); overflow: visible; }
    .brace:before { width: 50%; border-top: 5px solid #fff; border-left: 1px solid transparent; border-top-left-radius: 20% 30px; height: 100%; content: ""; position: absolute; top: 100%; left: -15px; box-sizing: border-box; margin-top: -5px; }
    .brace:after { width: 50%; border-top: 5px solid #fff; border-right: 1px solid transparent; border-top-right-radius: 20% 30px; height: 100%; content: ""; position: absolute; top: 100%; right: -15px; box-sizing: border-box; margin-top: -5px; }

    #footer-reviews { position: relative; text-align: center; padding: 0 10px; font-size: 14px; }
    #footer-reviews span img { margin-top: -8px; margin-left: 6px }
    #footer-reviews span.star-rating { display: inline-block; vertical-align: middle; margin: 0 7px; font-size: 14px; font-weight: 700; color: #ddbf27; padding: 0 8px; }
    #footer-reviews a { text-decoration: underline; }

    .grecaptcha-badge { visibility: hidden; }

    .bullets dd, .bullets dt { padding-bottom: 25px; }

    #promopop .modal-content { background-color: #1260b2; }
    #promopop .couponpop { border: 4px dashed #fff; text-align: center; color: #fff; padding: 1em }

    @media (max-width: 768px) {
        .couponcloud1, .couponcloud2, .couponcloud3, .couponcloud4, .couponcloud5 { display: none }
    }

    @media (min-width: 768px) {
        .couponcloud1 { bottom: 20px; left: -600px; position: fixed; animation: animateCloud 35s linear infinite; animation-delay: 5s }
        .couponcloud2 { bottom: 0; left: -600px; position: fixed; animation: animateCloud 55s linear infinite; animation-delay: 15s }
        .couponcloud3 { bottom: 0; left: -600px; position: fixed; animation: animateCloud 45s linear infinite; animation-delay: 10s }
        .couponcloud4 { bottom: 0; left: -600px; position: fixed; animation: animateCloud 25s linear infinite; }
        .couponcloud5 { bottom: 0; left: -600px; position: fixed; animation: animateCloud 45s linear infinite; }

        @keyframes animateCloud {
            0% { left: -600px; }
            100% { left: 100%; bottom: 60px }
        }
    }