/* squeegyapp.com rebuild - cleaned from the archived theme (Bootstrap 3.2 grid + "Agency" theme
   customised for the 2015-2018 site: /build/css/website-61ff583930.css). Same colours (#15d9fc / #0fbedd
   cyan, #222 navbar and footer, #f7f7f7 light-gray bands), same fonts (Montserrat headings, Kaushan Script
   logo, Droid Serif -> Noto Serif italics), same 750/970/1170 container, same section order and sizes.
   Readability pass: Roboto body 17px, dark text, darker greys, link colours with >= 4.5:1 contrast. */
*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;font-family:Roboto,"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:17px;line-height:1.6;color:#2b2b2b;background:#fff;-webkit-tap-highlight-color:rgba(21,217,252,.3)}
img{border:0;vertical-align:middle;max-width:100%;height:auto}
p{margin:0 0 12px}
a{color:#08748a;text-decoration:none}
a:hover,a:focus{color:#065d6e;text-decoration:underline}
h1,h2,h3,h4,h5,h6{text-transform:uppercase;font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;line-height:1.2;color:#1a1a1a;margin:20px 0 10px}
::selection{text-shadow:none;background:#15d9fc;color:#000}
:target,[id]{scroll-margin-top:90px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.text-center{text-align:center}.text-left{text-align:left}
.text-muted{color:#555}
.bg-light-gray{background-color:#f7f7f7}
.img-responsive{display:block;max-width:100%;height:auto}

/* grid (Bootstrap 3 widths) */
.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}
@media(min-width:768px){.container{width:750px}}
@media(min-width:992px){.container{width:970px}}
@media(min-width:1200px){.container{width:1170px}}
.row{margin-left:-15px;margin-right:-15px;display:flex;flex-wrap:wrap}
.row>*{position:relative;min-height:1px;padding-left:15px;padding-right:15px;width:100%;min-width:0}
.col-xs-6{width:50%}
@media(min-width:768px){.col-sm-4{width:33.3333%}.col-sm-6{width:50%}}
@media(min-width:992px){.col-md-3{width:25%}.col-md-4{width:33.3333%}.col-md-5{width:41.6667%}.col-md-6{width:50%}.col-md-7{width:58.3333%}}

/* navbar (navbar-default navbar-fixed-top) */
.navbar{position:fixed;top:0;left:0;right:0;z-index:1030;background-color:rgba(34,34,34,.95);min-height:50px}
.navbar .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}
.navbar-brand{font-family:"Kaushan Script","Helvetica Neue",Helvetica,Arial,cursive;color:#15d9fc;font-size:26px;line-height:45px;height:45px;display:inline-block;margin:3px 0 2px 0;padding:0 5px;white-space:nowrap}
.navbar-brand:hover,.navbar-brand:focus{color:#0fbedd;text-decoration:none}
.navbar-toggle{display:inline-block;border:1px solid #15d9fc;background:#15d9fc;border-radius:4px;padding:9px 10px;cursor:pointer;margin:8px 0}
.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px;background:#111}
.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}
.navbar-collapse{display:none;width:100%;border-top:1px solid rgba(255,255,255,.08)}
.navbar-collapse.in{display:block}
.navbar-nav{list-style:none;margin:6px 0;padding:0}
.navbar-nav li a{display:block;padding:11px 10px;text-transform:uppercase;font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;font-size:14px;letter-spacing:1px;color:#fff;line-height:20px}
.navbar-nav li a:hover,.navbar-nav li a:focus{color:#15d9fc;text-decoration:none}
.navbar-nav li.active>a{color:#111;background:#15d9fc;border-radius:3px}
@media(min-width:992px){
 .navbar{padding:10px 0;background-color:rgba(34,34,34,.92)}
 .navbar-brand{font-size:34px;line-height:58px;height:58px;margin:0;padding:0 15px 0 0}
 .navbar-toggle{display:none}
 .navbar-collapse{display:block!important;width:auto;border:0}
 .navbar-nav{display:flex;margin:0}
 .navbar-nav li a{padding:15px 11px;font-size:13px}
}
@media(min-width:1200px){.navbar-nav li a{padding:15px 15px;font-size:14px}}

/* header (homepage photo header with the cyan slogan bar) */
header.site-header{text-align:center;color:#fff;background-color:#3a3f44;background-image:url(/img/header-driveway.jpg?v=1f36aa19);background-position:center 40%;background-repeat:no-repeat;background-size:cover}
header.site-header .intro-text{padding-top:200px;padding-bottom:25px}
header.site-header.inner .intro-text{padding-top:130px;padding-bottom:20px}
.slogan{background:#0fbedd;color:#000;padding:6px 15px}
.slogan h1,.slogan .h1{padding:0;text-align:center;font-size:19px;background:transparent;color:#000;font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:1px;margin:0 auto;text-transform:none;font-weight:400;line-height:1.5;max-width:1140px}
.slogan .crumbs{display:block;text-align:center;font-size:14px;letter-spacing:.3px;margin:4px auto 0;color:#000;font-family:Montserrat,Arial,sans-serif;max-width:1140px}
.slogan .crumbs a{color:#000;text-decoration:underline}
@media(min-width:768px){
 header.site-header .intro-text{padding-top:470px;padding-bottom:100px}
 header.site-header.inner .intro-text{padding-top:250px;padding-bottom:40px}
 .slogan{padding:15px 15px}
 .slogan h1,.slogan .h1{font-size:30px}
 .slogan .inner-title{font-size:28px}
 header.site-header.inner .slogan{padding:12px 15px 10px}
}

/* sections */
section{padding:60px 0}
@media(min-width:768px){section{padding:50px 0}}
section h2.section-heading{margin-top:0;margin-bottom:15px;font-size:32px}
@media(min-width:768px){section h2.section-heading{font-size:40px}}
.section-subheading{margin:0 0 40px;text-transform:none;font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:18px;font-weight:400;line-height:1.45}
.service-heading{margin:15px 0 9px;line-height:24px;text-transform:none;font-size:19px}
.lead-copy{max-width:800px;margin:0 auto 30px;text-align:left}

/* how it works: cyan circle + archived white icons */
.step-icon{display:inline-block;width:128px;height:128px;border-radius:50%;background:#15d9fc no-repeat center/96px 96px}
.step-icon.request{background-image:url(/design/icon-request.png?v=0de6ce0e)}
.step-icon.wash{background-image:url(/design/icon-wash.png?v=c7c2b3c4)}
.step-icon.clean{background-image:url(/design/icon-clean.png?v=3bf3b900)}
#process .steps{margin-bottom:40px}
#process .steps p{color:#3a3a3a}

/* "download" band: image left, copy right */
#download .row{align-items:center}
#download .feature-img{border-radius:4px;max-height:430px;width:100%;object-fit:cover}
.phone-copy{padding-top:25px;text-align:center}
.phone-copy h2{font-size:26px;line-height:1.25;margin-top:0}
.phone-copy ul{text-align:left;display:inline-block;margin:0 0 10px;padding-left:20px}
.phone-copy .credit{font-size:13px;color:#555;margin-top:8px}
@media(min-width:992px){.phone-copy{text-align:left;padding-right:6%}.phone-copy ul{display:block}}

/* full-bleed photo band */
#hero{background:#2d3236 url(/img/hero-spray.jpg?v=ee51c5fc) center/cover no-repeat;padding:120px 0}
@media(min-width:768px){#hero{padding:300px 0}}

/* two levels (was the pricing block) */
#levels .level{margin-bottom:25px;padding-bottom:10px}
.num-circle{display:inline-flex;align-items:center;justify-content:center;width:128px;height:128px;border-radius:50%;background:#0b8aa3;color:#fff;font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-size:45px;font-weight:400}
.num-circle sup{font-size:20px;top:-.8em;margin-left:2px}
#levels ul{padding:0;margin:0 0 10px;list-style:none}
#levels ul li{line-height:28px}
#levels .help-block{font-size:14px;font-style:italic;color:#555}
#levels .lead-copy{text-align:center}

/* topics (was "Serving Los Angeles") */
#service{padding:50px 0 40px}
@media(min-width:768px){#service{padding:90px 0}}
#service .topic-col p{font-size:16px;margin:0 0 10px;line-height:1.4}
#service .topic-col p.topic-name{font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;text-transform:uppercase;font-size:16px;letter-spacing:.5px;margin-bottom:14px}
#service .topic-col p a{color:#1f1f1f}
#service .topic-col p a:hover{color:#08748a}
#service .topic-col{margin-bottom:25px}

/* portfolio-style post cards */
.portfolio-item{margin:0 0 30px}
.portfolio-link{display:block;position:relative;margin:0 auto;max-width:400px;overflow:hidden}
.portfolio-link img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.portfolio-hover{position:absolute;inset:0;opacity:0;background:rgba(15,190,221,.88);transition:opacity .4s ease;display:flex;align-items:center;justify-content:center;color:#000;font:700 15px/1 Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:1px}
.portfolio-link:hover .portfolio-hover,.portfolio-link:focus .portfolio-hover{opacity:1}
.portfolio-caption{margin:0 auto;padding:20px 22px 22px;max-width:400px;text-align:center;background:#fff;min-height:128px}
.bg-white .portfolio-caption,section:not(.bg-light-gray) .portfolio-caption{background:#f7f7f7}
.portfolio-caption h2,.portfolio-caption h3{margin:0 0 6px;text-transform:none;font-size:18px;line-height:1.3}
.portfolio-caption h2 a,.portfolio-caption h3 a{color:#1a1a1a}
.portfolio-caption h2 a:hover,.portfolio-caption h3 a:hover{color:#08748a}
.portfolio-caption p{margin:0;font-family:"Noto Serif","Droid Serif",Georgia,serif;font-size:15px;font-style:italic;color:#555}
.more-row{text-align:center;margin-top:10px}

/* buttons */
.btn-xl{display:inline-block;padding:16px 34px;border:1px solid #15d9fc;border-radius:3px;text-transform:uppercase;font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:16px;font-weight:700;color:#0b0b0b;background-color:#15d9fc;letter-spacing:.5px;margin-top:18px}
.btn-xl:hover,.btn-xl:focus{background-color:#0fbedd;border-color:#0fbedd;color:#000;text-decoration:none}

/* FAQ accordion (panel-group) */
#faq h2.section-heading{margin-bottom:45px}
.panel-group{max-width:1170px;margin:0 auto}
.panel{margin-bottom:6px;background:transparent}
.panel summary{list-style:none;cursor:pointer;padding:12px 40px 12px 15px;font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;font-size:16px;line-height:1.5;color:#222;background:#f0f0f0;border-radius:4px;position:relative}
.panel summary::-webkit-details-marker{display:none}
.panel summary:after{content:"+";position:absolute;right:15px;top:9px;font-size:22px;color:#333;font-weight:400}
.panel[open] summary:after{content:"\2212"}
.panel summary:hover{color:#0a6f83;background:#e9e9e9}
.panel-body{background:#fff;padding:15px;border:1px solid #eee;border-top:0;color:#2b2b2b}
.panel-body p:last-child{margin-bottom:0}

/* articles */
.post-wrap{max-width:680px;margin:0 auto}
.post-meta{font-size:14px;color:#555;margin:0 0 18px;font-family:Montserrat,Arial,sans-serif;letter-spacing:.3px}
.post-meta a{color:#08748a}
figure.post-figure{margin:0 0 26px}
figure.post-figure img{display:block;width:100%;max-height:480px;object-fit:cover;border-radius:3px}
figure.post-figure figcaption{font-size:13.5px;line-height:1.45;color:#555;margin-top:7px;font-family:"Noto Serif",Georgia,serif;font-style:italic}
.post-body{font-size:18px;line-height:1.7;color:#2b2b2b}
.post-body p{margin:0 0 18px}
.post-body h2{font-size:22px;margin:34px 0 12px;letter-spacing:.3px}
.post-body h3{font-size:18px;margin:26px 0 10px;text-transform:none}
.post-body ul,.post-body ol{margin:0 0 18px;padding-left:24px}
.post-body li{margin-bottom:6px}
.post-body a{text-decoration:underline}
.post-body table{width:100%;border-collapse:collapse;margin:0 0 22px;font-size:15.5px}
.post-body th,.post-body td{border:1px solid #ddd;padding:9px 11px;text-align:left;vertical-align:top}
.post-body th{background:#f7f7f7;font-family:Montserrat,Arial,sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.3px}
.table-wrap{overflow-x:auto}
.post-body blockquote{margin:0 0 20px;padding:4px 0 4px 18px;border-left:4px solid #15d9fc;color:#333;font-style:italic}
.post-body .note{background:#f7f7f7;border-left:4px solid #0fbedd;padding:14px 18px;margin:0 0 20px}
.page-intro{max-width:760px;margin:0 auto 35px;text-align:center}

/* contact form (section#contact rules) */
#contact form{max-width:760px;margin:0 auto}
#contact .form-group{margin-bottom:22px}
#contact label{display:block;font-family:Montserrat,Arial,sans-serif;font-weight:700;text-transform:uppercase;font-size:14px;margin-bottom:6px;color:#222}
#contact input,#contact textarea{width:100%;padding:16px 18px;border:1px solid #bbb;border-radius:3px;font:inherit;font-size:16px;color:#222;background:#fff}
#contact textarea{height:220px;resize:vertical}
#contact input:focus,#contact textarea:focus{border-color:#0fbedd;outline:2px solid rgba(21,217,252,.35)}
#contact .sent{display:none;background:#e6fafe;border:1px solid #0fbedd;padding:12px 16px;margin-bottom:20px}
#contact .sent.show{display:block}
#contact button{border:0;cursor:pointer}

/* footer */
footer.site-footer{padding:25px 0;text-align:center;background:#222;color:#b0b0b0;font-size:15px}
footer.site-footer .row{align-items:center}
footer.site-footer .copyright,footer.site-footer .quicklinks{font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;line-height:40px}
footer.site-footer .indep{font-size:14px;line-height:1.5;margin:6px 0}
footer.site-footer ul.quicklinks{list-style:none;margin:0;padding:0}
footer.site-footer ul.quicklinks li{display:inline-block;padding:0 7px}
footer.site-footer a{color:#15d9fc}
footer.site-footer a:hover{color:#7deafe}
footer.site-footer .photo-credits{font-size:13px;color:#a8a8a8;margin:14px 0 0;line-height:1.5}
.img-credit{font-size:13px;color:#555;margin:6px 0 0;text-align:left;font-family:"Noto Serif",Georgia,serif;font-style:italic}
