html {
  scroll-behavior: smooth;
}


html {
     --size: 14px!important;
     position: inherit;
}

.site{
  max-width: 1700px;
  margin: auto;
  overflow: hidden;
  box-shadow: 0em 0em 2em #e0e5ff;
}

.show-for-small-only{
  display: none!important;
}

a {
    -webkit-transition: color .4s ease 0s;
    -moz-transition: color .4s ease 0s;
    -o-transition: color .4s ease 0s;
    transition: color .4s ease 0s;
}

.hide{
  display: none;
}


.modal-dialog {
    max-width: 660px;
    margin: 12.75rem auto!important;
    z-index: 99999;
}

.modal-backdrop{
  z-index: 1!important;
}

.schema a{
  text-decoration: none;
}

.post-thumbnail img{
  position: relative;
  padding: 0!important;
  margin: auto;
  display: block;
}

.post-thumbnail{
    overflow: hidden;
    margin-top: 1em;
}


body .button:focus, body .button:hover { 
    color: #fefefe;
}


.single-blog img{
  padding: 5%;
}

.single-blog .entry-title{
  font-size: 2em;
  color: black;
}

.single-blog .entry-meta{
  position: relative;
  padding: 2%;
  background: #f4f4f4;
  border-left: .5em solid #f43b3b;
}

.single-blog .nav-links a{
  display: block;
  background: #f43b3b;
  color: white;
  transition: all .3s ease-in-out;
  padding: 2% 5%!important;
  margin-bottom: 7%;
}

.single-blog .nav-links a:hover{
  background: black!important;
}



input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #ededd!important;
}
input:-moz-placeholder, textarea:-moz-placeholder {
  color: #ededd!important;
}  

@font-face {
  font-family: 'icomoon';
  src:  url('/wp-content/themes/plumberseo-bootstrap/fonts/icomoon.eot?m48maz');
  src:  url('/wp-content/themes/plumberseo-bootstrap/fonts/icomoon.eot?m48maz#iefix') format('embedded-opentype'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/icomoon.woff2?m48maz') format('woff2'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/icomoon.ttf?m48maz') format('truetype'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/icomoon.woff?m48maz') format('woff'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/icomoon.svg?m48maz#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


.icon-x2:before {
  content: "\e951";
}

.icon-x .path1:before {
  content: "\e921";
  color: #000;
}
.icon-x .path2:before {
  content: "\e9cf";
  color: #fff;
  margin-left: -1em;
}

.icon-linkedin-square:before {
  content: "\f08c";
}

.icon-youtube-square:before {
  content: "\f166";
}

.icon-instagram-square:before {
  content: "\e940";
}

.icon-facebook-square:before {
  content: "\f082";
}

.icon-calendar1:before {
  content: "\e955";
}

.icon-handshake-icon-clemmer:before {
  content: "\e965";
}

.icon-mastercraft-sat-gauranteed:before {
  content: "\eb08";
}

.icon-mastercraft-ontime:before {
  content: "\e99f";
}

.icon-bb-technology:before {
  content: "\e942";
}

.icon-trust-techs:before {
  content: "\ea16";
}

.icon-family-owned-icon:before {
  content: "\e9c0";
}

.icon-lightning:before {
  content: "\e9f1";
}

.icon-ac-crowes:before {
  content: "\e998";
}

.icon-home1:before {
  content: "\f015";
}

.icon-shower1:before {
  content: "\f2cf";
}

.icon-shower:before {
  content: "\f2cc";
}

.icon-gas-services-os:before {
  content: "\e974";
}

.icon-woods-water-service:before {
  content: "\ec9f";
}

.icon-fire-icon:before {
  content: "\e97f";
}


.icon-jetting-icon:before {
  content: "\ead9";
}

.icon-sewer-camera-inspec-rc:before {
  content: "\ead0";
}

.icon-device-camera-video:before {
  content: "\eadc";
}

.icon-jh-hydrojet:before {
  content: "\ea01";
}

.icon-hydro-jet-con:before {
  content: "\ea04";
}

.icon-line-tools-2-icon:before {
  content: "\e925";
}

.icon-tools-hales:before {
  content: "\e92c";
}


.icon-bath:before {
  content: "\f2ce";
}

.icon-bath1:before {
  content: "\f2cd";
}

.icon-line-tankless-waterhaeter-install-icon:before {
  content: "\e907";
}

.icon-sewertop-con-heil:before {
  content: "\e983";
}

.icon-waterflood-icon:before {
  content: "\e937";
}

.icon-cc-money:before {
  content: "\e9a0";
}

.icon-phone-icon-db:before {
  content: "\e9bd";
}

.icon-clock-ni:before {
  content: "\e99e";
}

.icon-drain-clean-icon:before {
  content: "\e9c6";
}

.icon-water-heater-repair-icon:before {
  content: "\e939";
}

.icon-drain-clean:before {
  content: "\eb10";
}

.icon-droplet:before {
  content: "\e979";
}

.icon-mastercraft-emergency:before {
  content: "\e99b";
}

.icon-irock-financecon:before {
  content: "\e9a3";
}

.icon-irock-commercialcon:before {
  content: "\e9d6";
}

.icon-mastercraft-protection:before {
  content: "\eb07";
}

.icon-mastercraft-bbb:before {
  content: "\e9c4";
}

.icon-mastercraft-technician:before {
  content: "\e96d";
}

.icon-water-leaks-icon:before {
  content: "\e933";
}
.icon-money-icon-secop:before {
  content: "\e934";
}
.icon-building-icon:before {
  content: "\e935";
}
.icon-calendar-spotcon:before {
  content: "\e908";
}
.icon-price-tag-spotcon:before {
  content: "\e922";
}
.icon-watercondcon:before {
  content: "\e927";
}
.icon-leak-detectcon:before {
  content: "\e92e";
}
.icon-background-check-crcon:before {
  content: "\e932";
}
.icon-tankless-water-heater-cr-con:before {
  content: "\e92d";
}
.icon-water-heater-cr-con:before {
  content: "\e930";
}
.icon-wac-er-icon:before {
  content: "\e93c";
}
.icon-thumbs-up-sm:before {
  content: "\e938";
}
.icon-toolcon-sm:before {
  content: "\e939";
}
.icon-service-area-patriot-icon:before {
  content: "\e928";
}
.icon-drain-clean-patriot-icon:before {
  content: "\e92f";
}
.icon-sewer-patriot-icon:before {
  content: "\e931";
}
.icon-fast-truck-con:before {
  content: "\e92c";
}
.icon-calculator-icon:before {
  content: "\e929";
}
.icon-coin-hands-icon:before {
  content: "\e920";
}
.icon-gear-aplus-icon:before {
  content: "\e925";
}
.icon-aplus-bbb-con:before {
  content: "\e90c";
}
.icon-aplus-ontime-con:before {
  content: "\e90d";
}
.icon-aplus-fam-con:before {
  content: "\e91b";
}
.icon-ac-repair-con:before {
  content: "\e936";
}
.icon-toilet-con:before {
  content: "\e923";
}
.icon-plumbcon:before {
  content: "\e91e";
}
.icon-newtech-icon:before {
  content: "\e902";
}
.icon-ontime-icon:before {
  content: "\e904";
}
.icon-clean-masters:before {
  content: "\e900";
}
.icon-trophy-masters:before {
  content: "\e903";
}
.icon-pricetag-masters:before {
  content: "\e91f";
}
.icon-finance-masters:before {
  content: "\e921";
}
.icon-customer-education:before {
  content: "\e901";
}
.icon-home-comfort:before {
  content: "\e905";
}
.icon-live-answer:before {
  content: "\e92a";
}
.icon-mid-finance:before {
  content: "\e907";
}
.icon-mid-shield:before {
  content: "\e909";
}
.icon-mid-thumbs-up:before {
  content: "\e90b";
}
.icon-schedule-icon-spring:before {
  content: "\e906";
}
.icon-emergency-icon-spring:before {
  content: "\e926";
}
.icon-tools-icon-spring:before {
  content: "\e90a";
}
.icon-family-icon-spring:before {
  content: "\e91d";
}
.icon-live-answer-icon-spring:before {
  content: "\e919";
}
.icon-truck-icon-spring:before {
  content: "\e924";
}
.icon-calendar-icon-spring:before {
  content: "\e91a";
}
.icon-finance-icon-spring:before {
  content: "\e90e";
}
.icon-stars-icon-spring:before {
  content: "\e90f";
}
.icon-trustedtechs-icon-spring:before {
  content: "\e917";
}
.icon-pricing-icon-spring:before {
  content: "\e918";
}
.icon-leftcoast-repaircon:before {
  content: "\e91c";
}
.icon-circ-yelp-icon:before {
  content: "\e910";
}
.icon-fb-circle:before {
  content: "\e911";
}
.icon-instagram-circle:before {
  content: "\e912";
}
.icon-linkedin-cricle:before {
  content: "\e913";
}
.icon-morrow-bbb:before {
  content: "\e914";
}
.icon-new-x-circle:before {
  content: "\e915";
}
.icon-yt-circle:before {
  content: "\e916";
}
.icon-plus:before {
  content: "\f067";
}
.icon-minus:before {
  content: "\f068";
}
.icon-search:before {
  content: "\f002";
}
.icon-heart:before {
  content: "\f004";
}
.icon-star:before {
  content: "\f005";
}
.icon-star-o:before {
  content: "\f006";
}
.icon-user:before {
  content: "\f007";
}
.icon-check:before {
  content: "\f00c";
}
.icon-close:before {
  content: "\f00d";
}
.icon-remove:before {
  content: "\f00d";
}
.icon-times:before {
  content: "\f00d";
}
.icon-search-plus:before {
  content: "\f00e";
}
.icon-search-minus:before {
  content: "\f010";
}
.icon-cog:before {
  content: "\f013";
}
.icon-gear:before {
  content: "\f013";
}
.icon-home:before {
  content: "\f015";
}
.icon-clock-o:before {
  content: "\f017";
}
.icon-play-circle-o:before {
  content: "\f01d";
}
.icon-print:before {
  content: "\f02f";
}
.icon-image:before {
  content: "\f03e";
}
.icon-photo:before {
  content: "\f03e";
}
.icon-picture-o:before {
  content: "\f03e";
}
.icon-map-marker:before {
  content: "\f041";
}
.icon-chevron-left:before {
  content: "\f053";
}
.icon-chevron-right:before {
  content: "\f054";
}
.icon-check-circle:before {
  content: "\f058";
}
.icon-check-circle-o:before {
  content: "\f05d";
}
.icon-calendar:before {
  content: "\f073";
}
.icon-cogs:before {
  content: "\f085";
}
.icon-gears:before {
  content: "\f085";
}
.icon-comments:before {
  content: "\f086";
}
.icon-phone:before {
  content: "\f095";
}
.icon-facebook:before {
  content: "\f09a";
}
.icon-facebook-f:before {
  content: "\f09a";
}
.icon-wrench:before {
  content: "\f0ad";
}
.icon-group:before {
  content: "\f0c0";
}
.icon-users:before {
  content: "\f0c0";
}
.icon-bars:before {
  content: "\f0c9";
}
.icon-navicon:before {
  content: "\f0c9";
}
.icon-reorder:before {
  content: "\f0c9";
}
.icon-google-plus:before {
  content: "\f0d5";
}
.icon-money:before {
  content: "\f0d6";
}
.icon-caret-down:before {
  content: "\f0d7";
}
.icon-caret-up:before {
  content: "\f0d8";
}
.icon-caret-left:before {
  content: "\f0d9";
}
.icon-caret-right:before {
  content: "\f0da";
}
.icon-envelope:before {
  content: "\f0e0";
}
.icon-linkedin:before {
  content: "\f0e1";
}
.icon-angle-double-left:before {
  content: "\f100";
}
.icon-angle-double-right:before {
  content: "\f101";
}
.icon-angle-double-up:before {
  content: "\f102";
}
.icon-angle-double-down:before {
  content: "\f103";
}
.icon-angle-left:before {
  content: "\f104";
}
.icon-angle-right:before {
  content: "\f105";
}
.icon-angle-up:before {
  content: "\f106";
}
.icon-angle-down:before {
  content: "\f107";
}
.icon-mobile:before {
    content: "\f10b";
    font-size: 1.4em;
}
.icon-mobile-phone:before {
  content: "\f10b";
}
.icon-ticket:before {
  content: "\f145";
}
.icon-level-down:before {
  content: "\f149";
}
.icon-thumbs-up:before {
  content: "\f164";
}
.icon-youtube:before {
  content: "\f167";
}
.icon-instagram:before {
  content: "\f16d";
}
.icon-yelp:before {
  content: "\f1e9";
}
.icon-newspaper-o:before {
  content: "\f1ea";
}
.icon-calculator:before {
  content: "\f1ec";
}
.icon-calendar-check-o:before {
  content: "\f274";
}
.icon-user-circle:before {
  content: "\f2bd";
}
.icon-user-circle-o:before {
  content: "\f2be";
}


/* -------------------------------------------------------------------- */

.wrap1 {
    z-index: 2;
    position: relative;
    padding: 0 2%;
}

.row {
    max-width:100%!important;
    margin: auto;
}

.clear{
    clear:both;
}
  
ul {
    margin-left: 0em!important;
}

 /* -------------------------------------------------------Header Section CSS---------------------------------  */

/* Search Bar & Page */

 /* Top Bar Section CSS  */


 /* ---------------------------------------------------------------------------------------- */

.desk-nav{
  display: none;
  width: 100%;
  max-width: none;
  padding: 0.5% 0% 1% 0%;
}  

.logo-block{
  position:relative;
  z-index:99;
  background-color:#fff;
}

.desk-nav .row>* , .mobile-nav .row>* {
   padding: 0;
}

.mobile-nav{
  padding: 0;
  width: 100%;
  max-width: none;
  padding: 2% 0 0% 0;
  z-index: 3;
  position: relative;
  background: white;
}

.main-bar{
  padding: 0% 0%;
}

.logo-image{
  position: relative;
}

.logo-image img{
  position: relative;
  width: 18em;
  display: block;
  margin: auto;
  transition: all .3s ease-in-out;
  left: -0.8em;
  z-index: -2;
}

.logo-image a{
  position: relative;
  display: block;
  transform: scale(1);
  /* z-index: -2; */
} 

.smallbar .logo-image img{
  width: 11em;
}

.contact-info {
    font-size: 1.7em;
    font-weight: 900;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    line-height: 1;
    letter-spacing: .04em;
    text-align: -webkit-center;
    margin-top: 0%;
    padding-right: 1%;
}

.contact-info strong{
  position: relative;
  font-size: 0.9em;
  font-weight: 400;
  color: #0a05e4;
  letter-spacing: .04em;
  top: .1em;
  display: block;
}

.contact-info span{
  position: relative;
  top: 0.1em;
}

.contact-info a:hover{
  color: #137bbe;
}
 

.contact-info a{
    font-size: 1.4em;
    display: block;
    background-color: #163776;
    width: 1.9em;
    border-radius: 23em;
    height: 1.9em;
    line-height: 2;
    color: #ffffff;
    margin: auto;
    transition: all .3s ease-in-out;
    text-align: center;
    text-decoration: none;
    outline: .1em solid #65ee61;
    outline-offset: -0.2em;
}

.mobile-nav .btn-primary {
    color: #1f1f1f;
    border: 0;
    border-radius: 0;
    padding: 0.8em 1.6em;
    background: #f28720;
    margin-left: 0;
    border-top-right-radius: 1em;
    border-bottom-right-radius: 1em;
    font-size: 1.3em;
}

.mobile-nav .btn-primary span{
  display: block;
}

.shift-menu{
  background: rgb(42,42,42);
  background: -moz-radial-gradient(circle, rgba(42,42,42,1) 0%, rgba(42,42,42,1) 62%, rgba(22,22,22,1) 100%);
  background: -webkit-radial-gradient(circle, rgba(42,42,42,1) 0%, rgba(42,42,42,1) 62%, rgba(22,22,22,1) 100%);
  background: radial-gradient(circle, rgba(42,42,42,1) 0%, rgba(42,42,42,1) 62%, rgba(22,22,22,1) 100%);
  padding: 10.2em 0 0 0;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#2a2a2a",endColorstr="#161616",GradientType=1);
}

.shift-item{
  position: relative;
}

.offcanvas-end{
  z-index: 9999;
  width: 25em;
}

.shift-item a{
  display: block;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  padding: .85em 0em .85em 1em;
  background: #ff000000;
  color: white;
  margin: 0em 0;
  border-bottom: 1px solid #ffffff1a;
  border-left: 0em solid #003046;
  transition: all .3s ease-in-out;
}

.shift-item .btn-secondary{
  display: none;
  position: absolute;
  right: 0em;
  top: 0.3em;
  background: #ff000000;
  border: 0;
  font-size: 1.3em;
  padding: 0.2em 0.7em;
}

.shift-item a:hover{
  color: #ffffff;
  background-color: #163776;
  border-left: 0.5em solid #f4911e;
}

.dropdown.shift-item .btn-secondary{
  display: block;
}

.shift-item a.sub-item{
  background: #0000005c;
}

.shift-item a.sub-item:hover{
    background-color: #163776;
}

/* ---------------------- */


/* NAV CSS  */ 

 .modal {
    z-index: 999999999999999999999999999999;
}

.modal-header {
    padding: 0;
    border: 0;
}

.section-protecte .modal-header h5{
  color: white!important;
}

.section-protecte .with_frm_style .frm_primary_label, .section-protecte .with_frm_style .frm_checkbox label{
  color: white;
}

.frm_style_formidable-style.with_frm_style .frm_submit button{
  width: 100%!important;
  display: block;
  background-color: #f4911e;
  color: black;
}

.pop-label{
  text-align: center;
  text-transform: uppercase;
  font-weight: 900;
  font-size: 1.6em;
  letter-spacing: .05em;
}

.modal-content {
    background-color: #1f2c5f;
    box-shadow: 0em 0em 1em #0000004f;
}

.modal-content iframe{
  height: 46em!important;
}

.modal-header .btn-close{
  position: relative;
  left: -.9em;
}

.modal-title {
    display: block;
    text-align: center!important;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: .07em;
    font-size: 1.3em;
    padding-top: 1em;
    margin-bottom: -0.5em;
}

header#masthead {
    margin-bottom: 0;
    background-color: #ffffff !important;
    /* box-shadow: none!important; */
    padding: 0rem 0rem!important;
    z-index: 9999;
    width: 100%;
    transition: all .3s ease-in-out;
    top: 0em;
    display: block;
    position: fixed;
    max-width: 1700px !important;
}

 header#masthead.smallbar{
     box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 5%), inset 0 -1px 0 rgb(0 0 0 / 10%)!important; 
}

.nav-accent{
  position: relative;
  padding: 1em 0;
}

.nav-accent:before, .nav-accent:after{
  content:'';
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: #1f2c5f;
  z-index: -1;
  clip-path: polygon(2.5% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.nav-accent:after{
  background: #0c1626;
  z-index: -2;
  right: 0;
  clip-path: polygon(3% 0%, 100% 0%, 100% 100%, 0% 100%);
  width: 101.2%;
}

.contact-info-desk a{
  color: white;
  text-align: center;
  font-weight: 900;
  font-size: 2em;
  line-height: 1.1;
  margin-bottom: 0;
}

.contact-info-desk a em{
  display: block;
  font-style: normal;
  font-size: .45em;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.contact-info-desk a span{
  color: #f4911e;
}

.nav-accent .btn{
  transform: skew(-10deg);
}

.top-bar{
  position: relative;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
  letter-spacing: .1em;
  transition: all .3s ease-in-out;
  border-bottom: 1px solid #ffffff1f;
  color: #0099bb;
  margin: auto;
  padding-right: 10em;
}

.top-bar #menu-top-menu{
  -webkit-align-items: end;
  -ms-flex-align: end;
  align-items: end;
  -webkit-justify-content: end;
  -ms-flex-pack: end;
  justify-content: end;
}

.smallbar .top-bar{
  font-size: 1em;
}

.top-bar input::-webkit-input-placeholder,.top-bar textarea::-webkit-input-placeholder {
  color: #fff!important;
}
.top-bar input:-moz-placeholder,.top-bar textarea:-moz-placeholder {
  color: #fff!important;
}  

.top-bar .btn-primary{
  display: block;
  letter-spacing: .08em;
  font-size: .9em;
  color: black;
  border: 0;
  border-radius: 0;
}

.main-nav{
  position: relative;
  padding-top: 1%;
}

.search-bar input{
  background-color: #ffffff00;
  border: 0;
  color: white;
  border-bottom: 1px solid white;
}

 .smallbar .desk-nav .btn-primary{
   font-size: 0.9em;
 }
 
.desk-nav .top-bar .btn-primary{
  color: white;
  font-size: .8em;
  width: 100%;
  margin-left: auto;
  transition: all .3s ease-in-out;
  padding-left: 2em;
}

.menu{
  position: relative;
  list-style: none;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  list-style-type: none;
  width: 100%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0;
}

#menu-top-nav{
  -webkit-justify-content: end;
  -ms-flex-pack: end;
  justify-content: end;
}
 
.top-bar .menu>li a{
  font-size: 0.7em;
  padding: 0.2em 0.7em;
  color: black!important;
}

.top-bar .menu>li a svg{
  width: 2.1em;
}

.top-bar .menu>li a svg path{
  fill: #0c1626;
}


.top-bar .menu>li a span{
  color: #0c1626;
}

.menu>li a:hover span{
  color: white;
}

.menu>li.sched-link a{
  color: white!important;
  background: #e78b3d;
  border-radius: 0em;
font-family: 'Exo 2', sans-serif;  
}

.menu>li a{
  padding: 0.3em 0.9em 0.6em 0.9em;
  text-decoration: none;
  color: black!important;
  font-size: 1.0em;
  display: block;
  transition: all .3s ease-in-out;
  position: relative;
  font-weight: 400;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.08em;
}

.menu>li a span{
  color: #00b1b9;
}

.smallbar .menu>li a{
  font-size: 0.86em;
}

 .menu>li.menu-item-has-children> a:before {
    content: "\f107";
    font-family: 'icomoon' !important;
    color: #000000;
    display: block;
    position: absolute;
    font-size: 0.8em;
    top: 22%;
    right: 0.2%;
}


 .menu>li.menu-item-has-children> a:hover:before {
    color: #ffffff;
}
 
.sub-menu li a{
  color: #030303!important;
}
 

.top-bar .menu>li:nth-child(3) a{
  border: 0;
}

.menu>li a:hover{
  background-color: #0c1626!important;
  color: white!important;
}
 

.mainnav{
  text-align: right;
  padding: 0.7% 0;
  position: relative;
}
.nav-border{
  padding-left: 0em!important;
  padding-right: 0em!important;
}

.mainnav .menu {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.mainnav .menu .active>a {
    color: #ffffff;
    background: #f78d1f;
}

.mainnav .menu .active>a:before{
  color: black!important;
}

.mainnav .menu .current-menu-item.active>a {
    color: #ffffff;
    background: #faa61a;
}

.mainnav .menu .sub-menu .current-menu-item.active>a {
    color: #fefefe!important;
    background: #f78d1f!important;
}


.mainnav .menu>li>a {
    display: block;
    padding: 0.7rem 0.6rem;
    line-height: 1;
    font-weight: 400;
    font-size: 0.78em;
    color: black;
    letter-spacing: .02em;
}


.mainnav .menu>li>a:hover{
    color: #ffffff;
    background: #f78d1f;
}

.mainnav .menu>li>a:hover:before{
  color: white;
}

.menu-item-has-children{
  position: relative;
  transition: all .3s ease-in-out;
}


.menu>li .sub-menu  a{
  text-transform: none;
  letter-spacing: inherit;
  padding: 0.6em 1em;
  text-align: left;
}


.mainnav .menu>li.menu-item-has-children >a:before {
    content: "\f107";
    font-family: 'icomoon' !important;
    color: #ffffff;
    display: block;
    position: absolute;
    font-size: 0.8em;
    top: 37%;
    right: 0.5%;
}

.main-nav .menu-item-has-children > .sub-menu{
    top: 100%;
    right: auto;
    left: 0;
}

.main-nav .menu-item-has-children .sub-menu{
  opacity: 0;
  transition: all .3s ease-in-out;
  position: absolute;
  background: #ebebec;
  list-style: none;
  margin-left: 0.0rem;
  width: 17em;
  height: 0;
  display: none;
  z-index: 99;
}

.main-nav .menu-item-has-children:hover .sub-menu{
  opacity: 1;
  height: auto;
  top: 100%;
  left: 0;
  display: block;
  animation: fadeIn .2s;
  font-size: .88em;
  text-align: left;
  padding-left: 0;
}

.main-nav .last-column.menu-item-has-children:hover .sub-menu {
    opacity: 1;
    height: auto;
    top: 100%;
    right: 0%;
    left: auto!important;
    display: block;
    animation: fadeIn .2s;
    font-size: .88em;
    text-align: left;
    left: auto;
}

.main-nav .slim.menu-item-has-children .sub-menu{

    color: #9ad25d;
    background: #33204d;;
  width: 165%;
  text-align: left;
  padding-left: 0%;
}

.main-nav .slim.menu-item-has-children:hover .sub-menu {
    left: 0%;
}


.main-nav .menu-item-has-children .sub-menu>li{
  padding: 0%;
} 

.sub-menu a{
  padding: 5% 4% 5% 4%;
  display: block;
  color: #1d1d1d;
  font-size: .9em;
  transition: all .3s ease-in-out;
  border-bottom: 1px solid #00000014;
}

.sub-menu a:hover{
    color: #ffffff;
    background: #e62318;
    padding: 5% 4% 5% 7%;
}


/* Heating Tab 2 columns Sub menu */

.main-nav .double-column.menu-item-has-children .sub-menu{
  opacity: 0;
  transition: all .3s ease-in-out;
  position: absolute;
  background: #e1e1e1;
  list-style: none;
  margin-left: 0.0rem;
  width: 36em;
  height: 0;
  display: none;
  text-align: left;
  z-index: 99;
} 




.main-nav .double-column.menu-item-has-children:hover .sub-menu{
  opacity: 1;
  height: auto;
  top: 100%;
  left: 0%;
  display: block;
  animation: fadeIn .2s;
}

.main-nav .double-column.menu-item-has-children .sub-menu>li{
  width: 50%;
  float: left;
  padding: 0%;
} 

.main-nav .double-column.menu-item-has-children .sub-menu>li.full-sub{
  width: 100%;
  float: left;
  padding: 0%;
} 

.double-column .sub-menu .full-sub a {
    padding: 0.3em 0.6em 0.7em 0.6em;
    border-right: 1px solid #00000014;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    text-align: center;
}

.double-column .sub-menu .full-sub a span{
   font-size: 1.8em;
   position: relative;
   top: 0.2em;
}

.last-cool{
  float: right!important;
}

.double-column .sub-menu a{
  padding: 0.9em 0.6em 0.9em 0.7em;
  border-right: 1px solid #00000014;
}


.main-nav .double-column-l.menu-item-has-children .sub-menu{
  opacity: 0;
  transition: all .3s ease-in-out;
  position: absolute;
  background: #006ee3;
  list-style: none;
  margin-left: 0.0rem;
  width: 410%;
  height: 0;
  display: none;
  text-align: left;
  z-index: 99;
} 

.main-nav .double-column-l.menu-item-has-children:hover .sub-menu{
  opacity: 1;
  height: auto;
  top: 100%;
  right: 0%;
  display: block;
  left: auto;
  animation: fadeIn .2s;
}

.main-nav .double-column-l.menu-item-has-children .sub-menu>li{
  width: 50%;
  float: left;
  padding: 0%;
} 

/* Fly out menu */


.main-nav .double-column .fly-out.menu-item-has-children .sub-menu{
  opacity: 0;
  transition: all .3s ease-in-out;
  position: absolute;
  background: #1a6887;
  list-style: none;
  margin-left: 0.0rem;
  width: 18.8em;
  height: 0;
  display: none;
  text-align: left;
  z-index: 99;
} 

.main-nav .double-column.menu-item-has-children .sub-menu>li.fly-out:hover{
  background-color: #f2a525;
}


.main-nav .double-column.menu-item-has-children .sub-menu>li.fly-out:hover .sub-menu{
   opacity: 1;
   position: absolute;
   background: #dcdcdc;
   height: auto;
   top: 0%;
   right: -18.8em;
   display: block;
   animation: fadeInUp .2s;
   left: auto;
}

.main-nav .double-column .fly-out.menu-item-has-children .sub-menu>li {
    width: 100%;
    float: left;
    padding: 0%;
}

.quick-nav{
  position: fixed;
  top: -3em;
  width: 100%;
  background-color: #0c1626;
  padding: 2% 2% 5.5% 2%;
  opacity: 0;
  transition: all .3s ease-in-out;
  overflow: hidden;
}

.quick-nav.adjust{
  padding: 5% 2% 1% 2%;
  opacity: 1;
  top: 5em;
}

.quick-nav .col-3 {
    flex: 0 0 auto;
    padding: 0;
}

.quick-nav a{
  color: #ffffff;
  text-align: center;
  display: block;
  text-decoration: none;
  padding: 9% 1% 9% 1%;
  font-size: 0.9em;
  transition: all .3s ease-in-out;
  border-right: 1px solid #00000030;
}

.quick-nav a:hover{
  color: white;
  background-color: #209ad6;
}

.smallbar .quick-nav{
}

.quick-nav a span{
  font-size: 1.4em;
  display: block;
  position: relative;
  top: -0.2em;
  transition: all .3s ease-in-out;
  color: #ffffff;
}

.quick-nav a em{
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 900;
  display: block;
  margin: 1.5em auto -2.6em auto;
  color: white;
  bottom: 0em;
  font-size: 0.7em;
  position: relative;
  opacity: 0;
  transition: all .3s ease-in-out;
}

.quick-nav a em:after{
  content: '';
  position: absolute;
  height: 11.5em;
  width: 100%;
  background-color: #b00c03;
  border-radius: 900em;
  z-index: -1;
  left: 0%;
  bottom: -9.6em;
}

.quick-nav a:hover em{
  bottom: 1.2em;
  opacity: 1;
}

.quick-nav a:hover span{
  /* top: -0.6em; */
  font-size: .9em;
}








/* ============================================================
   SANTANA BROS â€” HEADER FIX v2
   Replaces the previous header-fix block. Paste at the end of
   custom.css. Uses !important on the fixes below so they win
   regardless of exactly where they land in the cascade.
   ============================================================ */

/* ---- Current page highlighted in the TOP-LEVEL bar ---- */
.main-nav .menu > li.current-menu-item > a,
.main-nav .menu > li.current_page_item > a,
.main-nav .menu > li.current-menu-parent > a,
.main-nav .menu > li.current_page_parent > a,
.main-nav .menu > li.current-menu-ancestor > a{
  color: #fff !important;
  background: var(--sb-orange) !important;
  border-bottom-color: var(--sb-orange) !important;
  padding-left: 14px !important;
  padding-right: 14px !important;
}
.main-nav .menu > li.current-menu-item > a:before,
.main-nav .menu > li.current-menu-parent > a:before,
.main-nav .menu > li.current_page_parent > a:before,
.main-nav .menu > li.current-menu-ancestor > a:before{
  color: #fff !important;
}

/* ---- Current page INSIDE a dropdown panel â€” that panel is white,
   so it needs dark/orange text, not white ---- */
.main-nav .sub-menu li.current-menu-item > a,
.main-nav .sub-menu li.current_page_item > a{
  color: var(--sb-orange-dark) !important;
  background: #FAF7F3 !important;
  font-weight: 600 !important;
}

/* ---- Guaranteed-fit responsive shrink so nothing overflows before
   the mobile menu takes over at 960px ---- */
@media (max-width: 1200px){
  .main-bar .logo-image img{ height: 42px !important; }
  .head-right{ gap: 12px !important; }
  .main-nav .menu{ gap: 8px !important; }
  .main-nav .menu > li > a{
    font-size: 12px !important;
    letter-spacing: 0.02em !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .head-cta{
    flex: 0 1 auto !important;
    min-width: 0 !important;
    gap: 6px !important;
  }
  .head-cta .btn{ font-size: 11px !important; }
  .head-cta .btn span[class^="icon-"]{ font-size: 12px !important; }
  .head-cta .btn-outline-white{ padding: 0.5em 0.7em !important; }
  .head-cta .btn-primary{ padding: 0.55em 0.8em !important; }
}

@media (max-width: 999px){
  .main-bar .logo-image img{ height: 34px !important; }
  .main-nav .menu{ gap: 5px !important; }
  .main-nav .menu > li > a{ font-size: 10.5px !important; }
  .head-cta .btn{ font-size: 9.5px !important; }
  .head-cta .btn-outline-white{ padding: 0.4em 0.55em !important; }
  .head-cta .btn-primary{ padding: 0.45em 0.6em !important; }
  .head-cta .btn span[class^="icon-"]{ display: none !important; } /* icons crowd too much at this width; text alone still reads fine â€” drop this line if you'd rather keep them */
}




/* ============================================================
   SANTANA BROS â€” DESKTOP HEADER
   Paste at the END of custom.css so it wins over the nav block
   above it. Desktop only (992px+); mobile-nav is untouched.
   ============================================================ */

:root{
  --sb-orange:#F2871F;
  --sb-orange-dark:#D46F0C;
  --sb-blue:#1BA0E2;
  --sb-ink:#0C1626;
  --sb-ink-2:#152234;
}

/* ---- Masthead: dark, not white ---- */
header#masthead{
  background-color: var(--sb-ink-2) !important;
  max-width: none;
  box-shadow: 0 6px 24px rgba(12,22,38,0.28) !important;
}
header#masthead.smallbar{
  box-shadow: 0 6px 24px rgba(12,22,38,0.34) !important;
}

.desk-nav{ padding: 0 !important; }

/* ============ UTILITY BAR ============ */
.top-bar{
  background: var(--sb-ink);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.82);
  padding: 9px 0;
  margin: 0;
  text-align: left;
  text-transform: none;
  letter-spacing: 0;
  font-size: 13px;
  padding-right: 0;
}
.smallbar .top-bar{ font-size: 13px; }

.top-bar .top-text{
  display: flex;
  align-items: center;
  gap: 26px;
  flex-wrap: nowrap;
  white-space: nowrap;
}

/* orange, uppercase, Oswald â€” the 24-hour line */
.top-bar .util-hours{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--sb-orange);
}
.top-bar .util-hours span[class^="icon-"]{ color: var(--sb-orange); }

/* address + licence, blue icons */
.top-bar .util-meta{
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: rgba(255,255,255,0.82);
}
.top-bar .util-meta span[class^="icon-"]{ color: var(--sb-blue); font-size: 13px; }

/* utility menu, right aligned, white on dark */
.top-bar .menu{
  justify-content: flex-end;
  gap: 26px;
  flex-wrap: nowrap;
}
.top-bar .menu > li a,
.top-bar .menu > li a span{
  color: #fff !important;
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  padding: 0;
  background: none !important;
  white-space: nowrap;
  transition: color .25s ease;
}
.top-bar .menu > li a:hover,
.top-bar .menu > li a:hover span{
  color: var(--sb-orange) !important;
  background: none !important;
}
.top-bar .menu > li a svg path{ fill: var(--sb-blue); }
.top-bar .menu > li.menu-item-has-children > a:before{ display: none; }

/* ============ MAIN BAR ============ */
.main-bar{
  background: var(--sb-ink-2);
  padding: 0;
  margin: 0;
}
.main-bar > .container > .row{
  min-height: 86px;
  flex-wrap: nowrap;
}
.smallbar .main-bar > .container > .row{ min-height: 72px; }

.main-bar .logo-image img{
  height: 58px;
  width: auto;
  max-width: 100%;
  transition: height .3s ease-in-out;
}
.smallbar .main-bar .logo-image img{ height: 46px; }

/* nav and CTAs share one row, nav pushed right of the logo */
.head-right{
  display: flex;
  align-items: center;
  gap: 28px;
  justify-content: flex-end;
}
.head-right .rnavigation-full{ flex: 0 1 auto; min-width: 0; }

/* ---- Main menu: white caps, orange underline on hover ---- */
.main-nav{ padding-top: 0; }
.main-nav .menu{
  justify-content: flex-start;
  gap: 24px;
  flex-wrap: nowrap;
}
.main-nav .menu > li > a{
  font-family: 'Oswald', sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #fff !important;
  padding: 8px 0;
  border-bottom: 3px solid transparent;
  background: none !important;
  white-space: nowrap;
  transition: border-color .25s ease, color .25s ease;
}
.main-nav .menu > li > a:hover,
.main-nav .menu .active > a,
.main-nav .menu .current-menu-item > a{
  color: #fff !important;
  background: none !important;
  border-bottom-color: var(--sb-orange);
}

/* caret for parents â€” inline, not absolutely pinned */
.main-nav .menu > li.menu-item-has-children > a{ padding-right: 14px; }
.main-nav .menu > li.menu-item-has-children > a:before{
  content: "\f107";
  font-family: 'icomoon' !important;
  color: var(--sb-blue);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  font-size: 9px;
}
.main-nav .menu > li.menu-item-has-children > a:hover:before{ color: var(--sb-orange); }

/* ---- Dropdowns: white panel, orange top rule ---- */
.main-nav .menu-item-has-children .sub-menu,
.main-nav .double-column.menu-item-has-children .sub-menu{
  background: #fff;
  border-top: 4px solid var(--sb-orange);
  box-shadow: 0 24px 48px rgba(12,22,38,0.25);
  padding: 6px 0;
}
.main-nav .sub-menu a{
  font-family: 'Open Sans', sans-serif;
  font-size: 14.5px;
  letter-spacing: 0;
  text-transform: none;
  color: #334 !important;
  padding: 10px 18px;
  border-bottom: 1px solid rgba(12,22,38,0.07);
  transition: background .2s ease, color .2s ease, padding .2s ease;
}
.main-nav .sub-menu a:hover{
  background: #FAF7F3;
  color: var(--sb-orange-dark) !important;
  padding-left: 22px;
}
.main-nav .sub-menu > li:last-child > a{ border-bottom: 0; }

/* ============ HEADER CTAs ============ */
.head-cta{
  display: flex;
  align-items: center;
  gap: 12px;
  flex: none;
}
.head-cta .btn{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transform: none;
  transition: background-color .3s ease, color .3s ease;
}
.head-cta .btn span[class^="icon-"]{ font-size: 15px; }

/* phone â€” outlined white */
.head-cta .btn-outline-white{
  background: transparent;
  border: 2px solid rgba(255,255,255,0.75);
  color: #fff;
  padding: 0.72em 1.2em;
}
.head-cta .btn-outline-white:hover{
  background: #fff;
  border-color: #fff;
  color: var(--sb-ink);
}

/* request service â€” solid orange */
.head-cta .btn-primary{
  background: var(--sb-orange) !important;
  border: 2px solid var(--sb-orange) !important;
  color: #fff !important;
  padding: 0.78em 1.5em;
}
.head-cta .btn-primary:hover{
  background: var(--sb-orange-dark) !important;
  border-color: var(--sb-orange-dark) !important;
}

/* ---- Tighten between 992 and 1300 so nothing wraps ---- */
@media (max-width: 1399px){
  .main-nav .menu{ gap: 18px; }
  .main-nav .menu > li > a{ font-size: 14px; }
  .head-right{ gap: 20px; }
  .head-cta .btn{ font-size: 13px; }
  .head-cta .btn-outline-white{ padding: 0.68em 1em; }
  .head-cta .btn-primary{ padding: 0.72em 1.2em; }
  .top-bar .top-text{ gap: 18px; }
  .top-bar .menu{ gap: 18px; }
  .top-bar .menu > li a{ font-size: 13px; }
}

@media (max-width: 1199px){
  .top-bar .util-meta:last-of-type{ display: none; }
  .main-nav .menu{ gap: 14px; }
  .main-nav .menu > li > a{ font-size: 13px; letter-spacing: 0.03em; }
  .main-bar .logo-image img{ height: 48px; }
}







/* ------------------------------------------------------------------------------------- */

#site-wrap {
    max-width: 1700px;
    margin: auto;
    box-shadow: 0px 0px 2em rgba(181,193,199,.46);
}

 /* Slider Section CSS  */

.sliderfull {
    position: relative;
    z-index: 1;
    /* margin-top: 5%; */
}

.static-slide{
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: cover;
    position: relative;
    z-index: 2;
    margin-top: 0%;
    padding: 5% 5% 0% 5%;
    color: white;
    border-bottom: 0.4em solid #0c1626;
    text-align: center;
    background: #1b1f47;
}

.slider-header{
  line-height: 1;
  font-size: 2.1em;
  position: relative;
  letter-spacing: .07em;
  color: #ffffff;
  margin-bottom: 2%;
  animation: fadeInLeft 3s;
  font-weight: 900;
  animation-timing-function: ease;
  animation-fill-mode: both;
  animation-delay: 1s;
  transition: 1s ease-in-out;
  opacity: 0;
  transform: translateX(-40%);
  text-transform: uppercase;
  text-shadow: -0.1em 0.1em black;
}

      @keyframes fadeInLeft {
        20% {
          opacity: 0;
          transform: translateX(-20%);
        }

        30%, 100% {
          opacity: 1;
          transform: translateX(0%);
        }

}



.slider-header strong{
  display: block;
  font-size: 2.74em;
  color: #b3dce3;
}

.slider-header span{
  display: block;
}

.sliderfull .btn {
   max-width: 300px;
   margin: 1em auto;
}

.slider-usp-row{
  position: relative;
  width: 85%;
  margin: 7em auto 1em auto;
  z-index: 2;
  padding: 0;
  text-align: center;
}

   .slider-usp-row:after{
  content:'';
  position: absolute;
  right: 1.2em;
  bottom: 1.9em;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: -1;
}
 
 
.usp-box-row .usp-slide .col-3, .usp-box-row .usp-slide .col-9{
  width: 100%;
}

.usp-box-row .col{
  padding: 0 .9%!important;
  width: 33.33%!important;
  flex: unset;
}

.usp-slide{
  position: relative;
  height: 8.4em;
  text-align: left;
  line-height: 1.1;
  outline-offset: -0.7em;
  font-size: 0.7em;
  transition: all .3s ease-in-out;
  text-align: center;
  background: #1d4587c4;
  color: #ffffff;
  text-transform: uppercase;
  padding: 0.5em 0.1em 1em 0.1em;
  border: 1px solid #00000038;
  border-radius: 1em;
}

.usp-slide span{
  display: block;
  color: #ffffff;
  font-size: 4.1em;
  line-height: 0.8;
  position: relative;
  /* top: 0.3em; */
  margin-bottom: -.1em;
}

 /* ---------------------- */

/* ==========================================================================
   Santana Bros Plumbing â€” Landing Template
   Custom styles layered on top of Bootstrap 4
   ========================================================================== */


:root{
  --sb-orange:#F2871F;
  --sb-orange-hover:#D46F0C;
  --sb-blue:#1BA0E2;
  --sb-blue-deep:#0E7CB4;
  --sb-navy:#0C1626;
  --sb-navy-2:#152234;
  --sb-cream:#FAF7F3;
  --sb-line:#E7E0D8;
  --sb-body:#5A6472;
}

/* ---------- Base type ---------- */
body{
  font-family:'Open Sans', sans-serif !important;
  color:var(--sb-navy);
  background:var(--sb-cream);
}
h1,h2,h3,.top-services-header,.coupon-header,.sec6-header,.sec8-header,.usp-label,.benefit-label{
  font-family:'Oswald', sans-serif !important;
  font-weight:700;
}
a{ color:var(--sb-blue-deep); text-decoration:none; }
a:hover{ color:var(--sb-orange-hover); text-decoration:none; }
p{line-height:1.7;color:var(--sb-body);}

/* ---------- Buttons (square, industrial) ---------- */
.btn{
  border-radius:0 !important;
  font-family:'Oswald', sans-serif;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.08em;
  padding:0.9em 1.7em;
  transition:background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.btn-primary{ background:var(--sb-orange); border-color:var(--sb-orange); color:#fff; }
.btn-primary:hover,.btn-primary:focus{ background:var(--sb-orange-hover); border-color:var(--sb-orange-hover); color:#fff; }
.btn-secondary{ background:var(--sb-blue); border-color:var(--sb-blue); color:#fff; }
.btn-secondary:hover{ background:var(--sb-blue-deep); border-color:var(--sb-blue-deep); color:#fff; }
.btn-dark{ background:var(--sb-navy); border-color:var(--sb-navy); color:#fff; }
.btn-dark:hover{ background:#000; color:#fff; }
.btn-outline-white{ background:transparent; border:2px solid rgba(255,255,255,0.8); color:#fff; }
.btn-outline-white:hover{ background:#fff; color:var(--sb-orange); }
.btn-outline-blue{ background:transparent; border:2px solid var(--sb-blue); color:var(--sb-blue-deep); }
.btn-outline-blue:hover{ background:var(--sb-blue); color:#fff; }
.btn span[class^="icon-"]{ margin-right:0.5em; }

/* ---------- Eyebrow ---------- */
.pre-head{
  font-family:'Oswald', sans-serif;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.09em;
  font-size:13px;
  color:var(--sb-orange);
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.pre-head:before,.pre-head:after{
  content:"";
  display:inline-block;
  width:26px;
  height:2px;
  background:var(--sb-orange);
}
.pre-head.on-dark{ color:var(--sb-orange); }
.text-center .pre-head{ justify-content:center; }

/* ==========================================================================
   HERO
   ========================================================================== */
.sliderfull{position:relative;}
.hero-inner{
  position:relative;
  min-height:540px;
  display:flex;
  align-items:center;
  border-bottom:8px solid var(--sb-orange);
  /* background:var(--sb-navy) url('/wp-content/uploads/2026/09/hero-quality-houston-image.webp') center/cover no-repeat; */
  padding-top: 5%;
}


.hero-inner {
  background: var(--sb-navy);
  overflow: hidden;
}


.hero-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/wp-content/uploads/2026/09/hero-quality-houston-image.webp") center / cover no-repeat;
  z-index: 0;
  animation: heroKenBurns 18s ease-in-out infinite alternate;
  will-change: transform;
}

.hero-overlay {
  z-index: 1;
}

.hero-container {
  position: relative;
  z-index: 2;
}

.hero-overlay{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(12,22,38,0.95) 0%, rgba(12,22,38,0.82) 48%, rgba(12,22,38,0.22) 100%);
}

@keyframes heroKenBurns {
  0%   { transform: scale(1) translate(0, 0); }
  100% { transform: scale(1.12) translate(-1.5%, -1%); }
}

@media (prefers-reduced-motion: reduce) {
  .hero-inner::before {
    animation: none;
  }
}


.hero-container{ position:relative; padding-top:58px; padding-bottom:52px; }
.hero-badge{
  display:inline-flex; align-items:center; gap:10px;
  background:var(--sb-orange); color:#fff;
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:12.5px; letter-spacing:0.1em; text-transform:uppercase;
  padding:8px 14px; margin-bottom:22px;
}
.hero-headline{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:clamp(37px,4.4vw,62px); line-height:1.04;
  letter-spacing:0.01em; color:#fff; margin-bottom:24px;
  text-shadow:0.04em 0.06em rgba(0,0,0,0.5);
}
.hero-headline .hl{ color:var(--sb-orange); }
.hero-usp-wrap{ margin-bottom:28px; }
.hero-usp{ margin-bottom:12px; color:#fff; font-size:17.5px; font-weight:600; }
.hero-usp span[class^="icon-"]{ color:var(--sb-orange); font-size:19px; }
.hero-cta .btn{ width:100%; font-size:17px; }

@media (max-width:767px){
  .hero-inner{ min-height:560px; background-position:82% 28%; align-items:flex-end; }
  .hero-overlay{ background:linear-gradient(180deg, rgba(12,22,38,0.15) 0%, rgba(12,22,38,0.15) 45%, rgba(12,22,38,0.94) 78%, rgba(12,22,38,0.98) 100%); }
  .hero-container{padding-top: 50px;padding-bottom:32px;}
  .hero-container .col-sm-12{ background:rgba(12,22,38,0.55); border-radius:10px; padding:20px 18px; }
  .hero-cta .btn{ margin-bottom:12px; }
}



/* ==========================================================================
   EMERGENCY BAND
   ========================================================================== */
.emergency-band{ background:var(--sb-orange); color:#fff; padding:22px 0; }
.emergency-band .band-icon {
    font-size: 30px;
    vertical-align: top;
    margin-right: 14px;
}
.emergency-band .band-text{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:25px; line-height:1.2;
}
.emergency-band .band-text strong{ color:var(--sb-navy); font-weight:700; }
.band-btns .btn{ margin-left:10px; font-size:15px; }
@media (max-width:767px){
  .band-btns{ margin-top:16px; }
  .band-btns .btn{ display:block; width:100%; margin:0 0 10px 0; }
}

/* Fix the awkward narrow-column wrap for the emergency band buttons (768px–1199px) */
@media (min-width:768px) and (max-width:1199px){
  .emergency-band .row > [class*="col-"]{
    flex: 0 0 100%;
    max-width: 100%;
  }
  .emergency-band .band-btns{
    margin-top: 16px;
  }
}

/* Fix the awkward narrow-column wrap for the emergency band buttons (768px–1399px) */
@media (min-width:768px) and (max-width:1399px){
  .emergency-band .row > [class*="col-"]{
    flex: 0 0 100%;
    max-width: 100%;
  }
  .emergency-band .band-btns{
    margin-top: 16px;
  }
}

/* ==========================================================================
   SECTION 1 â€” TOP SERVICES
   ========================================================================== */
.top-services-sec{ padding:88px 0 92px; }
.top-services-header{ font-size:clamp(26px,3.1vw,44px); line-height:1.12; margin:14px 0 48px; }
.servi-card{
  background:#fff; border:1px solid var(--sb-line); border-radius:10px;
  overflow:hidden; height:100%; display:flex; flex-direction:column;
  box-shadow:0 2px 10px rgba(12,22,38,0.05);
  transition:transform .2s ease, box-shadow .2s ease;
  margin-bottom:24px;
}
.servi-card:hover{ transform:translateY(-6px); box-shadow:0 18px 36px rgba(12,22,38,0.14); }
.servi-card img{ width:100%; height:190px; object-fit:cover; display:block; }
.servi-body{ padding:24px 24px 26px; display:flex; flex-direction:column; flex:1; }
.servi-con span[class^="icon-"]{ font-size:28px; color:var(--sb-blue); }
.servi-label{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:21px; line-height:1.2; color:var(--sb-navy); margin:12px 0;
}
.servi-body p{ font-size:14.5px; flex:1; }
.servi-more{
  font-family:'Oswald', sans-serif; font-weight:600;
  text-transform:uppercase; letter-spacing:0.07em;
  font-size:12.5px; color:var(--sb-orange-hover);
}

/* Carousel controls, shared */
.carousel-control-prev,.carousel-control-next{
  width:46px; height:46px; top:50%; transform:translateY(-50%);
  background:#fff; border:1px solid var(--sb-line); border-radius:50%;
  opacity:1; color:var(--sb-navy);
}
.carousel-control-prev{ left:-8px; }
.carousel-control-next{ right:-8px; }
.carousel-control-prev:hover,.carousel-control-next:hover{ background:var(--sb-orange); color:#fff; }

.show-for-small-only{ display:none; }
@media (max-width:767px){
  .show-for-small-only{ display:block; }
  .hide-for-small-only{ display:none !important; }
  .top-services-sec{ padding:56px 0; }
}

/* ==========================================================================
   SECTION 2 â€” INTRO + FORM
   ========================================================================== */
.section-1{
  background:#fff; padding:88px 0;
  border-top:1px solid #EDE6DE; border-bottom:1px solid #EDE6DE;
}
.sec1-header{ font-size:clamp(28px,3.3vw,46px); line-height:1.1; margin:14px 0 20px; }
.sec1-lead{
  font-size:18px; line-height:1.6; color:var(--sb-navy); font-weight:700;
  border-left:4px solid var(--sb-orange); padding-left:18px; margin-bottom:20px;
}
.sec1-lead a{ color:var(--sb-orange-hover); }
.sec1-content p{ font-size:16.5px; margin-bottom:16px; }

.badge-row{
  border-top:1px solid #EDE6DE;
  padding:24px 0 8px; margin:28px 0;
  flex-wrap:nowrap; overflow-x:auto;
}
.badge-row img{ height:clamp(40px,8vw,74px); width:auto; object-fit:contain; }


.badge-row {
  justify-content: flex-start; /* use center to center both badges */
  gap: 24px;                   /* space between badges; adjust as needed */
}

.badge-row > .col {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.section-1 .image-box{ border-radius:10px; overflow:hidden; }
.section-1 .image-box img{ width:100%; height:280px; object-fit:cover; display:block; }

.home-form{
  background:var(--sb-navy); border-radius:8px; padding:24px;
  box-shadow:0 0.5em 2em rgba(0,0,0,0.35); color:#fff;
}
.home-label{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:27px; line-height:1.15; text-align:center; margin-bottom:4px;
}
.home-subline{
  font-size:14.5px; color:rgba(255,255,255,0.7);
  text-align:center; margin-bottom:18px;
}
.home-form iframe{ width:100%; min-height:760px; border:0; display:block; }

@media (max-width:767px){ .section-1{ padding:56px 0; } }

/* ==========================================================================
   SECTION 3 â€” THE PROMISE
   ========================================================================== */
.section-2{ background:var(--sb-navy); padding:84px 0; position:relative; overflow:hidden; }
.stripe-top{
  position:absolute; top:0; left:0; right:0; height:6px;
  background:linear-gradient(90deg,var(--sb-orange) 0%,var(--sb-orange) 33.33%,var(--sb-blue) 33.33%,var(--sb-blue) 66.66%,var(--sb-orange) 66.66%);
}
.sec2-header{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:clamp(24px,2.8vw,40px); line-height:1.14; color:#fff; margin:14px 0 0;
}
.sec2-cta{ margin:28px 0 52px; }
.sec2-cta .btn{ margin:0 7px 10px; font-size:16px; }
.usp-blk{
  background:var(--sb-navy-2); border:1px solid rgba(255,255,255,0.10);
  border-radius:12px; padding:44px 32px 36px;
  position:relative; text-align:center; height:100%;
  transition:transform .25s ease, border-color .25s ease, background-color .25s ease;
  margin-bottom:28px;
}
.usp-blk:hover{ transform:translateY(-8px); border-color:var(--sb-orange); background:#1A2A40; }
.usp-num{
  position:absolute; top:22px; right:26px;
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:52px; line-height:1; color:rgba(255,255,255,0.07);
}
.usp-blk .usp-con{
  width:104px; height:104px; margin:0 auto 24px;
  border-radius:50%; background:rgba(27,160,226,0.12);
  border:2px solid rgba(242,135,31,0.55);
  display:flex; align-items:center; justify-content:center;
}
.usp-blk .usp-con span[class^="icon-"]{ font-size:46px; color:var(--sb-orange); }
.usp-blk .usp-label{font-size:25px;color: #ffffff;line-height:1.18;margin-bottom:14px;}
.usp-blk .usp-label:after{
  content:""; display:block; width:44px; height:3px;
  background:var(--sb-orange); margin:16px auto 0;
}
.usp-blk p{font-size:15.5px;color: rgb(255 255 255 / 72%);}

/* ==========================================================================
   SECTION 4 â€” ADDITIONAL SERVICES
   ========================================================================== */
.section-3{ background:#fff; padding:88px 0; border-top:1px solid #EDE6DE; }
.sec3-header{ font-size:clamp(24px,2.9vw,40px); line-height:1.14; margin:14px 0; max-width:860px; }
.sec3-content{ font-size:17px; max-width:820px; margin-bottom:32px; }
.service-list{ list-style:none; padding:0; margin:0 -7px 32px; }
.service-list li{ padding:0 7px; margin-bottom:14px; }
.service-list li a{
  display:flex; align-items:center; gap:12px;
  background:var(--sb-cream); border:1px solid var(--sb-line);
  border-radius:8px; padding:16px 18px;
  font-size:15.5px; font-weight:600; color:var(--sb-navy);
  height:100%;
}
.service-list li a:hover{ border-color:var(--sb-orange); background:#FDF1E4; color:var(--sb-navy); }
.service-list li span[class^="icon-"]{ color:var(--sb-blue); font-size:19px; }
.sec3-content-bottom{ font-size:16.5px; max-width:900px; margin-bottom:28px; }

/* ==========================================================================
   SECTION 5 â€” COUPONS
   ========================================================================== */
.coupon-section{ background:var(--sb-cream); padding:56px 0; border-top:1px solid #EDE6DE; }
.coupon-header{ font-size:clamp(26px,3.1vw,44px); line-height:1.1; margin:14px 0 12px; }
.coupon-header span,.coupon-header strong{ color:var(--sb-orange); }
.coupon-subline{ font-size:17px; max-width:600px; margin:0 auto 44px; }
.slider-coup{
  background:var(--sb-navy); border-radius:10px; padding:12px;
  box-shadow:0 12px 30px rgba(12,22,38,0.18);
  max-width:340px; margin:0 auto;
}
.coup-inner{
  border:2px dashed rgba(255,255,255,0.45); border-radius:6px;
  padding:32px 26px 28px; text-align:center;
}
.coup-logo{ height:52px; width:auto; margin-bottom:22px; }
.slider-price{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:clamp(52px,9vw,72px); line-height:0.92; color:#fff;
}
.slider-price span{
  font-size:28px; text-transform:uppercase;
  letter-spacing:0.04em; color:var(--sb-orange);
}
.coup-rule{ width:56px; height:3px; background:var(--sb-orange); margin:20px auto; }
.slider-offer{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:22px; text-transform:uppercase; letter-spacing:0.05em;
  color:#fff; line-height:1.3; min-height:58px;
}
.coup-disclaimer{
  font-size:10.5px; color:rgba(255,255,255,0.65);
  line-height:1.55; margin:10px 0 22px; min-height:42px;
}
.coup-inner .btn{ width:100%; font-size:14px; }
.coupon-btn-row{ margin-top:30px; }

/* ==========================================================================
   SECTION 6 â€” WHY CHOOSE US
   ========================================================================== */
.section-4{ padding:50px 0; }
.sec4-header{ font-size:clamp(25px,3.0vw,42px); line-height:1.12; margin:14px 0 18px; }
.sec4-content p{ font-size:16.5px; margin-bottom:18px; }
.sec4-content p:last-child{ color:var(--sb-navy); font-weight:600; }
.sec4-btns{ margin-top:28px; }
.sec4-btns .btn{ margin:0 10px 10px 0; font-size:16px; }
.usp-group2 .usp-box,
.usp2-slider .usp-box{
  background:#fff; border:1px solid var(--sb-line);
  border-radius:10px; padding:24px; height:100%; margin-bottom:18px;
}
.usp-group2 .usp-con span[class^="icon-"],
.usp2-slider .usp-con span[class^="icon-"]{ font-size:26px; color:var(--sb-orange); }
.usp-group2 .usp-label,
.usp2-slider .usp-label{ font-size:19px; margin:12px 0 8px; line-height:1.2; }
.usp-group2 p,
.usp2-slider .usp-box p{ font-size:14.5px; }

/* ==========================================================================
   SECTION 7 â€” REVIEWS
   ========================================================================== */
.section-5{
  position:relative; color:#fff; padding:88px 0;
  background:var(--sb-navy) url('/wp-content/uploads/2026/09/reviews-bg-quality-services-cover.webp') center/cover no-repeat;
}
.sec5-overlay{ position:absolute; inset:0; background:rgba(12,22,38,0.88); }
.section-5 .container{ position:relative; }
.sec5-header{
  font-size:clamp(24px, 2.6vw, 36px);
  line-height:1.16;
  color:#fff;
  margin:14px 0 0;
  max-width:640px;
}
.rev-btns .btn{ margin-left:10px; font-size:14px; }
.section-5 .elfsight-app-da9cc48a-883f-4e75-b9ff-8c86d0634325{ margin-top:34px; }
@media (max-width:767px){
  .rev-btns{ margin-top:20px; }
  .rev-btns .btn{ display:block; width:100%; margin:0 0 10px 0; }
}

/* ==========================================================================
   SECTION 8 â€” GALLERY
   ========================================================================== */
.section-6{ background:#fff; padding:88px 0; border-bottom:1px solid #EDE6DE; }
.sec6-header{ font-size:clamp(26px,3.1vw,42px); margin:14px 0 0; }
.gallery-row{ margin-top:40px; }
.gal-box{
  height:230px; border-radius:10px; overflow:hidden;
  border:1px solid var(--sb-line); margin-bottom:16px;
}
.gal-box img{ width:100%; height:100%; object-fit:cover; display:block; }

/* ==========================================================================
   SECTION 9 â€” FINANCING
   ========================================================================== */
.section-7{ background:#fff; padding:88px 0; border-top:1px solid #EDE6DE; }
.sec7-header{ font-size:clamp(25px,3.0vw,42px); line-height:1.12; margin:14px 0 16px; }
.sec7-content{ font-size:16.5px; margin-bottom:18px; }
.sec7-btns .btn{ margin:0 10px 10px 0; font-size:15px; }
.finance-item{ display:flex; align-items:flex-start; gap:14px; padding:16px 4px; }
.fin-check span[class^="icon-"]{ color:var(--sb-orange); font-size:18px; }
.fin-check{ line-height:1.3; flex:none; }
.fin-label{
  display:block; font-family:'Oswald', sans-serif; font-weight:700;
  font-size:17px; color:var(--sb-navy); line-height:1.3;
}
.fin-sub{ display:block; font-size:14px; color:var(--sb-body); margin-top:2px; }

/* ==========================================================================
   SECTION 10 â€” MEMBERSHIP
   ========================================================================== */
.section-8{ background:var(--sb-navy); color:#fff; padding:92px 0; position:relative; overflow:hidden; }
.stripe-top-2{
  position:absolute; top:0; left:0; right:0; height:6px;
  background:linear-gradient(90deg,var(--sb-orange) 0%,var(--sb-orange) 50%,var(--sb-blue) 50%);
}
.sec8-header{font-size:clamp(28px,3.3vw,46px);line-height:1.1;margin:14px 0 12px;color: white;}
.sec8-subline{
  font-size:17.5px; color:rgba(255,255,255,0.75);
  max-width:660px; margin:0 auto 48px;
}
.plan-box{
  background:var(--sb-navy-2); border:1px solid rgba(255,255,255,0.14);
  border-radius:12px; padding:32px; text-align:center;
  position:relative; height:100%; margin-bottom:24px;
}
.plan-featured{ border:2px solid var(--sb-orange); }
.plan-flag{
  position:absolute; top:-13px; left:50%; transform:translateX(-50%);
  background:var(--sb-orange); color:#fff;
  font-family:'Oswald', sans-serif; font-weight:700;
  text-transform:uppercase; letter-spacing:0.09em;
  font-size:11.5px; padding:5px 14px; white-space:nowrap;
}
.plan-term{
  font-family:'Oswald', sans-serif; font-weight:600;
  text-transform:uppercase; letter-spacing:0.09em;
  font-size:14px; color:var(--sb-blue); margin-bottom:10px;
}
.plan-price{
  font-family:'Oswald', sans-serif; font-weight:700;
  font-size:clamp(46px,8vw,68px); line-height:1; color:#fff;
}
.plan-price span{ font-family:'Open Sans',sans-serif; font-size:16px; font-weight:400; color:rgba(255,255,255,0.6); }
.plan-rule{ width:44px; height:3px; background:var(--sb-orange); margin:20px auto; }
.plan-rule.blue{ background:var(--sb-blue); }
.plan-box p{ font-size:15px; color:rgba(255,255,255,0.75); }
.plan-includes{ list-style:none; padding:0; max-width:250px; margin:0 auto; text-align:left; }
.plan-includes li{
  font-size:15px; color:rgba(255,255,255,0.85);
  line-height:1.5; margin-bottom:10px; padding-left:22px; position:relative;
}
.plan-includes li:before{ content:"\2714"; color:var(--sb-orange); position:absolute; left:0; }
.plan-btns{ margin:20px 0 52px; }
.plan-btns .btn{ margin:0 7px 10px; font-size:16px; }
.benefits-head{
  font-family:'Oswald', sans-serif; font-weight:700;
  text-transform:uppercase; letter-spacing:0.09em;
  font-size:14px; color:var(--sb-orange); margin-bottom:26px;
}
.benefit-box{
  background:var(--sb-navy-2); border:1px solid rgba(255,255,255,0.10);
  border-radius:12px; padding:28px 24px; height:100%; margin-bottom:20px;
  transition:transform .25s ease, border-color .25s ease;
}
.benefit-box:hover{ transform:translateY(-6px); border-color:var(--sb-orange); }
.benefit-con{
  width:76px; height:76px; border-radius:50%;
  background:rgba(27,160,226,0.12); border:2px solid rgba(242,135,31,0.5);
  display:flex; align-items:center; justify-content:center; margin-bottom:18px;
}
.benefit-con span[class^="icon-"]{ font-size:36px; color:var(--sb-orange); }
.benefit-label{ font-size:18.5px; line-height:1.25; color:#fff; margin-bottom:8px; }
.benefit-box p{ font-size:14px; color:rgba(255,255,255,0.7); }
.benefit-value{
  display:inline-block; margin-top:14px;
  background:rgba(242,135,31,0.14); border:1px solid rgba(242,135,31,0.4);
  color:var(--sb-orange); font-family:'Oswald', sans-serif; font-weight:700;
  font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px;
}

/* ==========================================================================
   SECTION 11 â€” AREAS WE SERVE
   ========================================================================== */
.section-9{ padding:88px 0; }
.sec9-header{ font-size:clamp(25px,3.0vw,42px); line-height:1.12; margin:14px 0; }
.city-list{ list-style:none; padding:0; margin:0 0 28px; display:flex; flex-wrap:wrap; gap:10px; }
.city-list li{
  background:#fff; border:1px solid var(--sb-line); border-radius:999px;
  padding:9px 16px; font-size:14px; font-weight:600; color:var(--sb-navy);
}
.city-list li:hover{ border-color:var(--sb-blue); color:var(--sb-blue-deep); }
.city-list li span[class^="icon-"]{ color:var(--sb-blue); font-size:12px; margin-right:6px; }
.map-box{
  position:relative; height:420px; border-radius:12px;
  overflow:hidden; border:1px solid var(--sb-line);
}
/* Crop the Google My Maps owner strip out of the top of the embed */
.map-box iframe{
  position:absolute; top:-46px; left:0;
  width:100%; height:calc(100% + 46px); border:0;
}

/* ==========================================================================
   CLOSING CTA
   ========================================================================== */
.close-cta{ background:#fff; border-top:1px solid #EDE6DE; }
.close-cta .container{ padding-top:44px; padding-bottom:40px; }
.close-logo{ margin-bottom:26px; }
.close-logo img{
  height:54px; width:auto;
  background:var(--sb-navy); border-radius:8px; padding:14px 26px;
}
.close-copy p{
  font-family:'Oswald', sans-serif; font-weight:600;
  font-size:21px; line-height:1.5; color:var(--sb-navy); margin:0;
}
.close-copy a{ color:var(--sb-orange-hover); }

.cta-split{ margin:0; }
.cta-call,.cta-schedule{
  display:flex; align-items:center; justify-content:center; gap:28px;
  width:100%; padding:34px 32px; border:0;
  transition:background-color .3s ease;
}
.cta-call{ background:var(--sb-blue-deep); color:#fff; }
.cta-call:hover{ background:var(--sb-navy); color:#fff; }
.cta-schedule{ background:var(--sb-orange); color:#fff; cursor:pointer; }
.cta-schedule:hover{ background:var(--sb-orange-hover); }
.cta-call span[class^="icon-"],.cta-schedule span[class^="icon-"]{ font-size:clamp(38px,6vw,54px); }
.cta-big{
  display:block; font-family:'Oswald', sans-serif; font-weight:700;
  font-size:clamp(28px,6vw,44px); line-height:1; letter-spacing:0.01em;
}
.cta-call .cta-big{ text-shadow:0.04em 0.06em rgba(0,0,0,0.35); }
.cta-schedule .cta-text{ text-align:right; }
.cta-call .cta-text{ text-align:left; }
.cta-small{
  display:block; font-family:'Oswald', sans-serif; font-weight:600;
  font-size:17px; letter-spacing:0.1em; text-transform:uppercase; margin-top:8px;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width:991px){
  .top-services-sec,.section-1,.section-2,.section-3,.coupon-section,
  .section-4,.section-5,.section-6,.section-7,.section-8,.section-9{ padding:56px 0; }
}
@media (max-width:767px){
  .emergency-band .band-text{ font-size:20px; }
  .badge-row{ gap:10px; }
  .cta-call,.cta-schedule{ padding:26px 20px; gap:18px; }
  .close-copy p{ font-size:18px; }
  .text-md-right{ text-align:left !important; }
}



/* ===== COUPON SLIDER =====
   Own breakpoints on purpose: the theme's show/hide-for-small-only classes
   use different ones and left mid-width screens with nothing visible. */
.coup-slider{
  position:relative;
  margin:44px 0 0;
  padding:0 0 44px;
}
.coup-track{
  display:flex;
  align-items:stretch;          /* equal card heights â€” stops the vertical jump */
  gap:24px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  padding:4px;                  /* room for the card shadow */
}
.coup-track::-webkit-scrollbar{ display:none; }

.coup-cell{
  flex:0 0 calc((100% - 48px) / 3);
  scroll-snap-align:start;
  display:flex;
}
.coup-cell .slider-coup{ width:100%; display:flex; }
.coup-cell .coup-inner{ display:flex; flex-direction:column; width:100%; }
.coup-cell .coup-disclaimer{ flex:1 1 auto; }
.coup-cell .btn{ margin-top:auto; }

/* Arrows */
.coup-arrow{
  position:absolute;
  top:calc(50% - 22px);
  transform:translateY(-50%);
  z-index:6;
  width:44px; height:44px;
  display:flex; align-items:center; justify-content:center;
  background:var(--sb-orange);
  color:#fff; border:none; border-radius:50%;
  font-size:16px; line-height:1; cursor:pointer;
  box-shadow:0 4px 14px rgba(12,22,38,0.28);
  transition:background .2s ease, opacity .2s ease;
}
.coup-arrow:hover{ background:var(--sb-orange-dark); }
.coup-arrow:disabled{ opacity:.32; cursor:default; }
.coup-arrow-prev{ left:-14px; }
.coup-arrow-next{ right:-14px; }

/* Dots */
.coup-dots{
  position:absolute; left:0; right:0; bottom:8px;
  display:flex; align-items:center; justify-content:center; gap:9px;
}
.coup-dots button{
  width:9px; height:9px; padding:0;
  border:none; border-radius:50%;
  background:#C9BFB3; cursor:pointer;
  transition:background .2s ease, width .2s ease;
}
.coup-dots button.active{ background:var(--sb-orange); width:26px; border-radius:5px; }

/* Everything fits â€” no controls needed */
.coup-slider.is-static .coup-arrow,
.coup-slider.is-static .coup-dots{ display:none; }
.coup-slider.is-static{ padding-bottom:0; }

@media (max-width:1200px){
  .coup-arrow-prev{ left:6px; }
  .coup-arrow-next{ right:6px; }
}
@media (max-width:991px){
  .coup-cell{ flex:0 0 calc((100% - 24px) / 2); }
}
@media (max-width:767px){
  .coup-track{ gap:16px; }
  .coup-cell{ flex:0 0 100%; }
  .coup-arrow{ width:40px; height:40px; }
  .coup-arrow-prev{ left:2px; }
  .coup-arrow-next{ right:2px; }
}

/* ===== TOP SERVICES â€” own breakpoints, not the theme's ===== */
.ts-mobile{ display:none; }
.ts-desk{ display:flex; }
@media (max-width:767px){
  .ts-mobile{ display:block; }
  .ts-desk{ display:none; }
}
#topservicesmobile .carousel-inner{ position:relative; width:100%; overflow:hidden; }
#topservicesmobile .carousel-item{ position:relative; display:none; width:100%; }
#topservicesmobile .carousel-item.active,
#topservicesmobile .carousel-item-next,
#topservicesmobile .carousel-item-prev{ display:block; }


/* ===== SECTION 4 â€” USP slider: 2x2 page of 4, advances 2 at a time ===== */
.usp2-slider{ position:relative; }
.usp2-viewport{ overflow:hidden; }
.usp2-track{
  display:flex;
  transition:transform .45s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
.usp2-page{
  flex:0 0 100%;
  min-width:100%;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
  align-items:stretch;
  padding:4px;              /* room for the card shadow */
  box-sizing:border-box;
}
.usp2-cell{ display:flex; }
.usp2-slider .usp-box{
  width:100%;
  margin-bottom:0;          /* the grid gap handles spacing */
  display:flex;
  flex-direction:column;
}
.usp2-slider .usp-box p{ margin-bottom:0; }

.usp2-nav{
  display:flex; align-items:center; justify-content:center;
  gap:14px; margin-top:22px;
}
.usp2-arrow{
  width:42px; height:42px; flex:none;
  display:flex; align-items:center; justify-content:center;
  background:#fff; color:var(--sb-ink);
  border:1px solid var(--sb-line); border-radius:50%;
  font-size:14px; cursor:pointer;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.usp2-arrow:hover{ background:var(--sb-orange); color:#fff; border-color:var(--sb-orange); }
.usp2-dots{ display:flex; align-items:center; gap:8px; }
.usp2-dots button{
  width:9px; height:9px; padding:0;
  border:none; border-radius:50%;
  background:#D8CFC9; cursor:pointer;
  transition:background .2s ease, width .2s ease;
}
.usp2-dots button.active{ background:var(--sb-orange); width:26px; border-radius:5px; }

@media (max-width:575px){
  .usp2-page{ grid-template-columns:minmax(0,1fr); gap:14px; }
}

/* Membership benefits â€” equal-width grid, 4 then 3 */
.benefits-row{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:24px;
  align-items:stretch;
  margin-top:40px;
}
.benefits-row .benefit-box{ height:100%; margin:0; }

/* Trailing row of 3 spreads across the full width instead of orphaning */
.benefits-row.benefits-row-3up{
  grid-template-columns:repeat(3, minmax(0,1fr));
  margin-top:24px;
}

@media (max-width:991px){
  .benefits-row,
  .benefits-row.benefits-row-3up{ grid-template-columns:repeat(2, minmax(0,1fr)); gap:24px 18px; }
}
@media (max-width:575px){
  .benefits-row,
  .benefits-row.benefits-row-3up{ grid-template-columns:minmax(0,1fr); }
}

/* ===== CLOSING CTA â€” text only ===== */
.close-cta{background:#fff;padding: 0px 0 0px;}
.close-logo{ margin-bottom:26px; }
.close-logo img{ max-width:300px; height:auto; }
.close-copy{ max-width:1040px; margin:0 auto; }
.close-copy p{
  font-family:'Oswald', sans-serif;
  font-weight:700;
  font-size:clamp(17px, 1.5vw, 21px);
  line-height:1.5;
  color:var(--sb-ink);
  margin:0;
}
.close-copy a{ color:var(--sb-orange); }
.close-copy a:hover{ color:var(--sb-orange-dark); }
@media (max-width:767px){
  .close-cta{ padding:52px 0 44px; }
  .close-logo img{ max-width:220px; }
}

/* ===== GALLERY â€” grid on desktop, slider on mobile ===== */
.gal-slider{ display:none; }

@media (max-width:767px){
  .gallery-grid{ display:none !important; }

  .gal-slider{
    display:block;
    position:relative;
    margin-top:28px;
    padding-bottom:34px;
  }
  .gal-track{
    display:flex;
    gap:14px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .gal-track::-webkit-scrollbar{ display:none; }

  .gal-cell{
    flex:0 0 78%;              /* next photo peeks in, so the swipe is discoverable */
    scroll-snap-align:center;
  }
  .gal-cell .gal-box{ margin:0; }
  .gal-cell .gal-box img{
    width:100%;
    aspect-ratio:4 / 3;
    object-fit:cover;
    display:block;
  }

  .gal-arrow{
    position:absolute;
    top:calc(50% - 17px);
    transform:translateY(-50%);
    z-index:4;
    width:38px; height:38px;
    display:flex; align-items:center; justify-content:center;
    background:var(--sb-orange);
    color:#fff; border:none; border-radius:50%;
    font-size:14px; cursor:pointer;
    box-shadow:0 3px 12px rgba(12,22,38,0.3);
    transition:opacity .2s ease;
  }
  .gal-arrow:disabled{ opacity:.3; }
  .gal-arrow-prev{ left:4px; }
  .gal-arrow-next{ right:4px; }

  .gal-dots{
    position:absolute; left:0; right:0; bottom:6px;
    display:flex; align-items:center; justify-content:center; gap:7px;
  }
  .gal-dots button{
    width:8px; height:8px; padding:0;
    border:none; border-radius:50%;
    background:#D8CFC9; cursor:pointer;
    transition:background .2s ease, width .2s ease;
  }
  .gal-dots button.active{ background:var(--sb-orange); width:22px; border-radius:4px; }
}
















/* Footer Section CSS  */ 


.sched-row{
  position: relative;
  max-width: 1700px !important;  /* beats the global .row{max-width:100%!important} */
  margin: 0 auto;
  --bs-gutter-x: 0;
  overflow: hidden;
}

.sched-row>*{
  padding: 0;
}

.sched-row a ,.sched-row button{
  display: block;
  width: 100%;
  border: 0;
  padding: 1.7em 2em;
  font-size: .9em;
  color: #ffffff;
  text-align: left;
  text-decoration: none;
  transition: all .3s ease-in-out;
}

.sched-row .sched-call a{
  background: #0E7CB4;
  margin-bottom: 0;
}

.sched-row .sched-call a:hover{
  background: #0c1626;
  color: #ffffff;
}



.sched-row .sched-book button {
    background: #d46f0c;
}

.sched-row .sched-book button:hover {
    background: #1c4968;
    color: #ffffff;
}

.sched-row a strong ,.sched-row button strong{
  display: block;
  font-size: 2.2em;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  margin-bottom: .1em;
}

.sched-row .sched-copy{
  font-size: .95em;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.sched-row .sched-icon span {
    display: block;
    font-size: 2.8em;
    line-height: 1;
    text-align: center;
}

/* .site prefix so the theme's later per-breakpoint padding rules don't squash this */
@media screen and (max-width: 47.938em) {
  .site .sched-row a ,.site .sched-row button{
    padding: 1.2em 1.1em;
  }

  .sched-row .sched-icon span{
    font-size: 2.8em;
  }
}



/* Footer CTA */

.site-footer{
  background-color: #152234 !important;
  color: #ffffff !important;
  max-width: 1700px!important;
  margin: auto;
  box-shadow: 0em 0em 2em #000000;
  padding-bottom: 0em;
  padding-top: 1.2em;
}

.site-footer .bullet-list li:after{
  display: none;
}

.site-footer .bullet-list li{
  padding: 0.2em 0;
}

.site-footer .bullet-list li{
  width: 50%;
}


.logo-foot{
  text-align: center;
  /* padding: 2%; */
}

.logo-foot img{
  display: block;
  width: 14em;
  margin: 1em auto;
}

.logo-foot a{
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: black!important;
}

.schema{
  text-align: ledt;
}

.schema a{
  display: block;
  font-weight: 900;
  color: #d46f0c !important;
}

.schema a:hover{
  color: #03a8e2!important;
}
 

.footer-txt{
  text-align: left;
  color: #ffffff;
  letter-spacing: .03em;
  font-size: 1.2em;
  margin-top: 1em;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 1em;
  }




.footer-txt-weaccept{
  text-align: center;
  color: #ffffff;
  letter-spacing: .03em;
  font-size: 1.2em;
  margin-top: 1em;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 1em;
}

.foot-links{
  text-align: center;
  font-size: .9em;
}


.help-link {
    display: block;
    text-decoration: none;
    border-bottom: 1px solid #0000001c;
    padding: 0.5em;
    text-align: left;
}

.help-links a{
  display: block;
  text-decoration: none;
  border-bottom: 1px solid #0000001c;
  padding: .5em;
}

.help-links a:hover{
  color: #03a8e2!important;
}

.copyright{
  color: white;
  text-transform: uppercase;
  font-size: 0.7em!important;
  letter-spacing: .08em;
  padding: 1.1em 0em 0.8em 0em!important;
  max-width: none;
  width: 100%;
  background: #0c1625;
  margin-top: 2%;
  border-top: 1px solid #00000029;
}

.lic-numbner{
  text-transform: uppercase;
  font-size: .9em;
  letter-spacing: .08em;
}

.socialmedia{
  position: relative;
}

.socialmedia .navbar{
  position: relative;
  padding-left: 0rem;
  list-style: none;
  justify-content: center;
  margin: 0;
  padding: 0;
}

.socialmedia .navbar a{
  color: #d46f0c !important;
  font-size: 2em;
  text-decoration: none;
  padding: 0em 0.2em 0em 0.2em;
  margin: 0em 0em;
  display: block;
  text-align: center;
}

.socialmedia .navbar a span{
  line-height: 1.7;
}

.socialmedia .navbar a:hover{
  background-color: #b5201d00;
}

.socialmedia .navbar a:hover{
  color: #217cb4 !important;
}

.schema-title{
  margin: 0.7em 0 0em 0!important;
}

footer a{
  text-decoration: none;
}



.footer-service-areas {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-service-areas li {
  margin-bottom: 8px;
}

.footer-service-areas li a {
  color: #ffffff;
  font-size: 14px;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-service-areas li a:hover,
.footer-service-areas li a:focus {
  color: #f2762b; /* swap for your exact brand orange if it differs */
  text-decoration: underline;
}

/* ---------------------------------------------------------------------------------------------------------- */

/* ------------------------------------------------------------------Inner Pages Css ------------------------------------------------------------------ */ 





/* ============================================================
   HOME PROTECTION PLAN â€” dedicated landing page
   ============================================================ */

.hpp-hero{
  background: var(--sb-ink);
  color: #fff;
  text-align: center;
  padding: 72px 20px 56px;
}
.hpp-eyebrow{
  color: var(--sb-orange);
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-size: 13px;
  margin-bottom: 14px;
}
.hpp-h1{
  color: #fff;
  font-weight: 800;
  font-size: clamp(32px, 4vw, 46px);
  margin: 0 0 14px;
}
.hpp-subtitle{
  color: rgba(255,255,255,0.72);
  max-width: 620px;
  margin: 0 auto 40px;
  line-height: 1.6;
  font-size: 16px;
}

.hpp-plans{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  max-width: 900px;
  margin: 0 auto;
}
.hpp-plan{
  flex: 1 1 320px;
  max-width: 380px;
  background: var(--sb-ink-2);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 14px;
  padding: 32px 28px;
  text-align: left;
  position: relative;
}
.hpp-plan-featured{
  border-color: var(--sb-orange);
  border-width: 2px;
}
.hpp-plan-badge{
  position: absolute;
  top: -13px;
  left: 24px;
  background: var(--sb-orange);
  color: #fff;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 4px 12px;
  border-radius: 4px;
}
.hpp-plan-label{
  color: var(--sb-blue);
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.hpp-plan-price{
  color: #fff;
  font-weight: 800;
  font-size: 42px;
  line-height: 1;
  margin-bottom: 6px;
  padding-bottom: 14px;
  border-bottom: 3px solid var(--sb-orange);
  display: inline-block;
}
.hpp-plan-price-alt{ border-bottom-color: var(--sb-blue); }
.hpp-plan-price span{
  font-size: 14px;
  font-weight: 400;
  color: rgba(255,255,255,0.6);
  margin-left: 4px;
}
.hpp-plan-list{
  list-style: none;
  margin: 20px 0 0;
  padding: 0;
}
.hpp-plan-list li{
  color: rgba(255,255,255,0.88);
  font-size: 14.5px;
  padding-left: 22px;
  position: relative;
  margin-bottom: 10px;
}
.hpp-plan-list li:before{
  content: "\f00c";
  font-family: 'icomoon' !important;
  color: var(--sb-orange);
  position: absolute;
  left: 0;
  top: 2px;
  font-size: 12px;
}
.hpp-plan-note{
  color: rgba(255,255,255,0.65);
  font-size: 14px;
  line-height: 1.6;
  margin-top: 20px;
}

.hpp-footnote{
  color: rgba(255,255,255,0.55);
  font-size: 13.5px;
  max-width: 560px;
  margin: 28px auto 0;
  line-height: 1.6;
}

.hpp-cta-row{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-top: 32px;
}
.hpp-cta-row .btn{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: 4px;
  padding: 0.85em 1.6em;
}

.hpp-features{
  background: var(--sb-ink-2);
  padding: 56px 20px 64px;
}
.hpp-features-label{
  text-align: center;
  color: var(--sb-orange);
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 13px;
  margin-bottom: 32px;
}
.hpp-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  max-width: 1100px;
  margin: 0 auto;
}
@media (max-width: 992px){ .hpp-grid{ grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px){ .hpp-grid{ grid-template-columns: 1fr; } }

.hpp-card{
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 12px;
  padding: 26px 22px;
  text-align: left;
}
.hpp-card-icon{
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 2px solid var(--sb-orange);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}
.hpp-card-icon img{ width: 26px; height: 26px; object-fit: contain; }
.hpp-card-title{
  color: #fff;
  font-weight: 700;
  font-size: 15.5px;
  margin-bottom: 8px;
}

.hpp-card-icon [class^="icon-"],
.hpp-card-icon [class*=" icon-"]{
  font-size: 22px;
  color: var(--sb-orange);
}


.hpp-card-desc{
  color: rgba(255,255,255,0.65);
  font-size: 13.5px;
  line-height: 1.55;
  margin: 0;
}
.hpp-card-badge{
  display: inline-block;
  margin-top: 12px;
  background: var(--sb-orange);
  color: #fff;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 10.5px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 4px;
}

.hpp-winter{
  background: #fff;
  padding: 64px 20px;
}
.hpp-winter-inner {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 40px;
    background: var(--sb-ink);
    border-radius: 16px;
    overflow: hidden;
    padding: 2%;
}
.hpp-winter-media{ flex: 1 1 360px; }
.hpp-winter-media img{ width: 100%; height: 100%; object-fit: cover; display: block; min-height: 280px; }
.hpp-winter-copy{ flex: 1 1 360px; padding: 32px 36px 32px 0; }
@media (max-width: 767px){ .hpp-winter-copy{ padding: 8px 24px 32px; } }
.hpp-winter-heading{
  color: #fff;
  font-weight: 800;
  font-size: clamp(22px, 2.6vw, 28px);
  margin-bottom: 18px;
}
.hpp-winter-list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.hpp-winter-list li{
  color: rgba(255,255,255,0.85);
  font-size: 15px;
  padding-left: 26px;
  position: relative;
  margin-bottom: 12px;
  line-height: 1.5;
}
.hpp-winter-list li:before{
  content: "\f00c";
  font-family: 'icomoon' !important;
  color: var(--sb-orange);
  position: absolute;
  left: 0;
  top: 3px;
  font-size: 13px;
}


@media (max-width: 959px){
  .hpp-hero{
    margin-top: 160px !important;
  }
}




/* Global Inner CSS  */ 



.map-box {
  position: relative;
  height: 420px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--sb-line);
}
.map-box iframe {
  position: absolute;
  top: -46px;
  left: 0;
  width: 100%;
  height: calc(100% + 46px);
  border: 0;
}



.side-label {
    position: relative;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 2em;
    margin-bottom: 0em;
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    font-weight: 800;
    margin-top: 1em;
    /* font-style: italic; */
    color: white;
}

.side-form {
    text-align: center;
    padding: 1rem;
    background: #0c1626 !important;
    /* border-radius: 40px; */
    color: white;
    position: relative;
    height: auto;
}









.inside-content{
  padding-bottom: 8%;
}

.insideimage {
  position: relative;
  padding: max(1.5rem, 7%) 4% 2% 4%;
  margin-top: max(3rem, 5.5%);
  border-bottom: 0.5em solid #f2871f;
  background-image: url(/wp-content/uploads/2026/09/hero-quality-houston-image.webp);
  background-repeat: no-repeat;
  background-position: 100% 0%;
  background-size: 57%;
  z-index: 12;
}

/* Laptop range: box height starts outgrowing the scaled image
   faster than at full desktop width Ã¢â‚¬â€ pull the anchor up. */
@media (max-width: 1400px) {
  .insideimage {
    background-position: 100% 0%;
    background-size: 63%;
  }
}

/* Small laptop / large tablet: give it more room and anchor
   fully to the top so the head can't get pushed past the edge. */
@media (max-width: 1200px) {
  .insideimage {
    background-position: 100% top;
    background-size: 58%;
    margin-top: max(4rem, 8%);
  }
}

/* Just above wherever your existing mobile rule swaps to plain blue Ã¢â‚¬â€
   replace 881px with your actual "no image" breakpoint so this hands
   off cleanly instead of jumping. */
@media (max-width: 992px) and (min-width: 881px) {
  .insideimage {
    /* background-position: center top; */
    /* background-size: 68%; */
  }
}


.insideimage:after{
  content:'';
  position: absolute;
  left: -20%;
  bottom: 0%;
  height: 110%;
  width: 80%;
  background: #0c1626;
  transform: skew(-20deg, 0deg);
  box-shadow: 0.8em 0em #f2871f;
}


.insideimage .slider-usp {
    bottom: -2em;
    position: relative;
    z-index: 3;
    width: 65%;
    margin: 0em auto -1em 0;
}

.insideimage .truck-image:after{
  bottom: 0em;
  right: 2em;
}

.insideimage .slider-usp.row>*{
  padding: 0 .4em;
}



.insideimage .slider-usp .usp-box {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  border: 2px solid #e6e6e6;
  border-radius: 1rem;
  transition: all 0.35s cubic-bezier(.22,1.2,.36,1);
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.insideimage .slider-usp .usp-box {
    font-size: 0.7em;
    width: 100%;
    /* color: black; */
    transition: all .3s 
ease-in-out;
    height: 8.8em;
    text-align: center;
    border: 1px solid #e6e6e6;
    background: white;
    padding: 0.1em;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* HOVER: color fill + pop */
.insideimage .slider-usp .usp-box:hover {
  background: #1ba0e2; /* hero blue */
  border-color: #f2871f;
  transform: translateY(-6px) scale(1.04);
  box-shadow:
    0 10px 22px -6px rgba(0,0,0,.35),
    0 0 16px 4px rgba(110,192,229,.45);
}

/* ICON */
.insideimage .slider-usp .usp-box span {
  display: block;
  font-size: 4.5em;
  color: #1ba0e2;
  transition: all 0.35s cubic-bezier(.22,1.2,.36,1);
}

/* ICON hover motion */
.insideimage .slider-usp .usp-box:hover span {
  color: #ffffff;
  transform: scale(1.15) rotate(-8deg);
  filter: drop-shadow(0 4px 8px rgba(0,0,0,.25));
}

/* TEXT */
.insideimage .slider-usp .usp-box p {
  margin: 0;
  color: #192b39;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: color 0.3s ease;
}

/* Text turns white on hover */
.insideimage .slider-usp .usp-box:hover p {
  color: #fff;
}








#form_careers {
    background: #0c1625;
    border-radius: 18px;
    padding: 2.5em;
}

/* Labels: the one unreadable thing on a dark panel. */
#form_careers .frm_primary_label{
  color: #ffffff;
}

/* The required asterisk. */
#form_careers .frm_required{
  color: #F9A006;
}

/* Field descriptions, if any get added later â€” same treatment, so a new field
   with help text does not appear as dark-on-navy. */
#form_careers .frm_description{
  color: #D6E1EA;
}

/* Keep the fields reading as white cards on the navy, and firm the border up a
   little now that it sits on a dark ground rather than on white. */
#form_careers input[type="text"],
#form_careers input[type="email"],
#form_careers input[type="tel"],
#form_careers input[type="number"],
#form_careers select,
#form_careers textarea{
  border-color: #ffffff;
}


/* ----------------------------------------------------------------------------
   MOBILE â€” drop the padding back so the fields keep their width on a phone.
   2.5em each side of a ~340px screen would eat a third of the form.
   ---------------------------------------------------------------------------- */
@media screen and (max-width: 47.938em){
  #form_careers{
    border-radius: 12px;
    padding: 1.25em;
  }
}













/* ============================
   SANTANA BROS â€” OUR WORK PAGE
   ============================ */

.work-hero{
  position: relative;
  background: var(--sb-navy, #0C1626);
  color: #fff;
  text-align: center;
  padding: 72px 20px 64px;
}
.work-eyebrow{
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--sb-orange);
  margin-bottom: 12px;
}
.work-h1{
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.15;
  margin: 0 0 14px;
  color: #fff;
}
.work-subtitle{
  font-size: 17px;
  line-height: 1.6;
  color: rgba(255,255,255,.78);
  max-width: 640px;
  margin: 0 auto;
}
@media (max-width: 959px){
  .work-hero{
    margin-top: 160px !important;
  }
}

.work-section{
  padding: 64px 20px;
  background: #F7F5F2;
}
.work-grid{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: 28px;
  max-width: 1280px;
  margin: 0 auto;
}
.work-card{
  background: #fff;
  border-radius: 14px;
  padding: 20px;
  box-shadow: 0 2px 14px rgba(12,22,38,.08);
  display: flex;
  flex-direction: column;
}
.work-card-wide{
  grid-column: span 2;
}
@media (max-width: 720px){
  .work-card-wide{ grid-column: span 1; }
}
.work-card-title{
  font-size: 18px;
  font-weight: 700;
  color: var(--sb-ink, #0C1626);
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--sb-orange);
}
.work-video{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border-radius: 10px;
  overflow: hidden;
  background: #000;
}
.work-video iframe{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.work-card .work-video + .work-gallery{
  margin-top: 14px;
}
.work-gallery{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.work-gallery-single{
  grid-template-columns: 1fr;
}
.work-gallery-item{
  display: block;
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 1 / 1;
}
.work-gallery-single .work-gallery-item{
  aspect-ratio: 16 / 10;
}
.work-gallery-item img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .25s ease;
}
.work-gallery-item:hover img{
  transform: scale(1.06);
}

.work-cta{
  background: var(--sb-orange);
  padding: 56px 20px;
  text-align: center;
}
.work-cta-inner{
  max-width: 700px;
  margin: 0 auto;
}
.work-cta-heading{
  color: #fff;
  font-size: clamp(24px, 3vw, 32px);
  margin: 0 0 22px;
}
.work-cta-btn{
  background: #fff !important;
  color: var(--sb-orange) !important;
  font-weight: 700;
  padding: 14px 32px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}


.work-hero{
  margin-top: 140px !important;
}

@media (max-width: 959px){
  .work-hero{
    margin-top: 160px !important;
  }
}

.hpp-hero{
  margin-top: 140px !important;
}














/* ============================
   SANTANA BROS â€” PETS PAGE
   ============================ */

.pets-hero{
  position: relative;
  background: var(--sb-navy, #0C1626);
  color: #fff;
  text-align: center;
  padding: 72px 20px 56px;
  margin-top: 140px !important;
}
@media (max-width: 959px){
  .pets-hero{
    margin-top: 160px !important;
  }
}
.pets-h1{
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.15;
  margin: 0 0 18px;
  color: #fff;
}
.pets-intro{
  font-size: 17px;
  line-height: 1.7;
  color: rgba(255,255,255,.82);
  max-width: 720px;
  margin: 0 auto 28px;
}
.pets-hero-cta{
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.pets-section{
  padding: 56px 20px;
  background: #fff;
}
.pets-section-alt{
  background: #F7F5F2;
  text-align: center;
}
.pets-h2{
  font-size: clamp(24px, 3vw, 32px);
  color: var(--sb-ink, #0C1626);
  margin: 0 0 20px;
  text-align: center;
}
.pets-copy{
  max-width: 760px;
  margin: 0 auto 36px;
  font-size: 16px;
  line-height: 1.7;
  color: var(--sb-ink-2, #333);
  text-align: center;
}
.pets-copy a{
  color: var(--sb-orange);
  font-weight: 600;
}
.pets-cta-block{
  max-width: 600px;
}
.pets-book-btn{
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.pets-gallery{
  display: grid;
  gap: 14px;
  max-width: 1100px;
  margin: 0 auto;
}
.pets-gallery-2col{
  grid-template-columns: repeat(2, 1fr);
  max-width: 800px;
}
.pets-gallery-grid{
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
.pets-gallery-item{
  display: block;
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}
.pets-gallery-item img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .25s ease;
}
.pets-gallery-item:hover img{
  transform: scale(1.05);
}
@media (max-width: 640px){
  .pets-gallery-2col{
    grid-template-columns: 1fr;
  }
}




















/* ============================
   SANTANA BROS â€” HAPPY CUSTOMERS PAGE
   ============================ */

.happy-hero{
  position: relative;
  background: var(--sb-navy, #0C1626);
  color: #fff;
  text-align: center;
  padding: 72px 20px 56px;
  margin-top: 140px !important;
}
@media (max-width: 959px){
  .happy-hero{
    margin-top: 160px !important;
  }
}
.happy-h1{
  font-size: clamp(30px, 4vw, 48px);
  margin: 0 0 14px;
  color: #fff;
}
.happy-subtitle{
  font-size: 17px;
  color: rgba(255,255,255,.8);
  max-width: 640px;
  margin: 0 auto;
}

.happy-section{
  padding: 56px 20px;
  background: #fff;
}
.happy-grid{
  column-count: 4;
  column-gap: 14px;
  max-width: 1280px;
  margin: 0 auto;
}
.happy-grid-item{
  display: block;
  margin-bottom: 14px;
  border-radius: 10px;
  overflow: hidden;
  break-inside: avoid;
}
.happy-grid-item img{
  width: 100%;
  display: block;
  transition: transform .25s ease;
}
.happy-grid-item:hover img{
  transform: scale(1.04);
}
@media (max-width: 1100px){
  .happy-grid{ column-count: 3; }
}
@media (max-width: 760px){
  .happy-grid{ column-count: 2; }
}
@media (max-width: 480px){
  .happy-grid{ column-count: 1; }
}







.banner-head {
    position: relative;
    color: #ffffff;
    letter-spacing: .12em;
    font-size: 1.9em;
    text-transform: uppercase;
    z-index: 2;
    padding-left: 0.5em;
    border-radius: 0em;
    width: 55%;
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    font-weight: 800;
}

.banner-head:after{
  content:'';
  position: absolute;
  left: -0.3em;
  top: 0em;
  background: #f2871f;
  border-radius: 90em;
  width: .25em;
  height: 100%;
}

.extra-pad{
  padding: 0 5%;
}

.wp-video{
  margin: auto;
}


#breadcrumbs {
    border-bottom: solid 1px rgba(0, 0, 0, 0.18);
    color: black;
    z-index: 999;
    position: relative;
    margin-bottom: 0px;
    margin-right: auto;
    margin-top: 30px;
    padding: 0% 2% 1.8% 1%;
}

#breadcrumbs a {
    color: #1ba0e2;
    font-weight: 900;
    text-decoration: none;
}

#breadcrumbs .icon-home {
    font-size: 1.2em;
    border-right-width: thin;
    border-right-style: solid;
    border-right-color: rgba(0, 0, 0, 0.2);
    padding: 1em;
    margin-right: 12px;
    color: #f2871f;
}

 
.inside-section-3 h2, .inside-section-4 h2{
  font-size: 2em;
  font-weight: 900;
}

.inside-section-4 h2{
  color: #192b39;
}

.inside-section-3.careers-padding{
  margin-top: 15%;
}

.inside-section-3{
  position: relative;
  background-color: #ebebeb;
  padding: 6% 7% 4% 7%;
  color: #192b39000;
  z-index: 9;
}



.inside-section-3 blockquote:before{
}

.inside-section-3 h2{
  color: #024f7e;
}

.inside-section-3 .accordion-button,.inside-section-4  .accordion-button{
    padding: 1rem 1.25rem;
    font-size: 1rem;
    color: #ffffff;
    background-color: #0c1625;
    letter-spacing: .08em;
}

.inside-section-3 .accordion-item, .inside-section-4 .accordion-item{
  background-color: #e9e9e9;
  color: #070707;
}

.inside-section-3 .accordion-button:not(.collapsed),.inside-section-4 .accordion-button:not(.collapsed) {
    color: #ffffff;
    background-color: #f2871f;
}

.inside-section-3 .accordion,.inside-section-4 .accordion{
  margin-bottom: 2em;
}

.inside-section-4{
  position: relative;
  background-color: #ffffff;
  padding: 3% 7% 6% 7%;
  color: black;
}

.inside-section-3 .accordion-button::after, .inside-section-4 .accordion-button::after{
  -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.inside-section-3 .accordion-button:hover, .inside-section-4 .accordion-button:hover{
  background-color: #18134f;
  color: white!important;
}

.inside-section-3 .accordion-button:hover h2, .inside-section-4 .accordion-button:hover h2{
  color: white;
}

.inside-section-3 .accordion-button:not(.collapsed) h2,.inside-section-4 .accordion-button:not(.collapsed) h2{
  color: white;
}

.inside-section-3 .bullet-list{
  position: relative;
  /* color: white; */
}

.inside-section-3 .bullet-list li{
  padding: 0.1em 0.1em 0.1em 1.8em;
}

.inside-section-3 .bullet-list li:after {
    top: 0.05em;
    left: 0.2em;
}


.emp-form{
    position: relative;
    padding: 6% 5% 3% 5%;
    background-color: #ebebeb;
    border-radius: 1em;
  margin: 1em auto 3em auto;
  width: 85%;
}

.emp-form .with_frm_style .vertical_radio .frm_checkbox label, .emp-form .with_frm_style .vertical_radio .frm_radio label{
  color: #fff;
}

.emp-form .frm_style_formidable-style-2.with_frm_style input[type=submit]{
  display: block;
  width: 100%;
  padding: 1em 0em;
  text-transform: uppercase;
  letter-spacing: .07em;
  font-size: 1.1em;
  background-color: #03a8e2;
  color: white;
  border: 0;
  box-shadow: none;
}

.emp-label{
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #383838;
  font-size: 1.2em;
  margin-bottom: .8em;
  text-align: left;
}

.insideimage .not-active{
  display: none;
}

.insideimage .activate{
  position: relative;
  display: block!important;
  z-index: 9;
}

.insideimage .activate a{
  color: white;
  position: relative;
  z-index: 3;
  transition: all .3s ease-in-out;
  display: block;
  padding-left: 0em;
  border-radius: 900em;
  letter-spacing: .09em;
  font-size: 1.2em;
  margin-bottom: -1em;
  width: 16.5em;
  text-align: center;
  margin-left: 3.8em;
}

.insideimage .activate a:hover{
  background-color: #5b6363;
}

/* Opening CTA Inner CSS  */ 

blockquote {
    font-size: 1.22em!important;
    margin-top: 35px!important;
    width: 95%;
    border-left: aliceblue;
    position: relative;
    padding: 1em 4em 1em 2.5em!important;
    margin: 4% 1% 6% 1%!important;
    z-index: 9;
    color: #192b39000!important;
}

blockquote, blockquote p {
    line-height: 1.6;
    margin-bottom: 0em;
    color: #ffffff !important;
}

blockquote::after {
    content: '';
    position: absolute;
    bottom: -0.5em;
    right: -2em;

    width: 5.7em;
    height: 8.9em;

    background-image: url('/wp-content/uploads/2025/12/mascot-scaled.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;

    z-index: 1;
    transition: all .3s ease-in-out;
}




blockquote:before {
    content: '';
    position: absolute;
    bottom: 0em;
    left: 0em;
    height: 100%;
    width: 100%;
    transition: all .3s ease-in-out;
    z-index: -01;
    background-color: #0c1626;
    border-top-right-radius: 0em;
    border-radius: 0em;
    border-top-left-radius: 0em;
    border-bottom-left-radius: 0em;
    border-left: 0.8em solid #f2871f;
    border-top: 1px solid #c4c4c4;
    border-right: 1px solid #c4c4c4;
    border-bottom: 1px solid #c4c4c4;
    transform: skew(-6deg, 0deg);
}
 
blockquote a{color: #f2871e;text-decoration: none;}

blockquote a:hover{color: #1ba0e2;}



blockquote.nnp-ci-body::before {
    transform: none;
    border-left: none;
    border-top: none;
    border-right: none;
    border-bottom: none;
}


#breadcrumbs {
    border-bottom: solid 1px rgba(0, 0, 0, 0.18);
    color: #1a2a39;
    z-index: 0;
    position: relative;
    margin-bottom: 0px;
    margin-right: auto;
    margin-top: 1.5em;
}

.inside-content h1 {
    margin-bottom: -1px;
    color: #163776;
    font-weight: 900;
    font-size: 2.5em;
}

.inside-content h1 strong{
    color: #3f6fa6;
}

.inside-content h1 span{
  display: block;
  font-size: .6em;
   font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  font-weight: normal;
  color: white;
}

.inside-content h2 em{
  font-size: .8em;
   font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  font-weight: normal;
  font-style: normal
}

.inside-content h2 {
    color: #024f7e !important;
    font-weight: 900;
    font-size: 1.8em;
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
}

.inside-content h3 {
    color: #184ba1;
    font-weight: 900;
    font-size: 1.4em;
     font-family: "Plus Jakarta Sans", system-ui, sans-serif;
}

.inside-section-4 h3{
     font-size: 1.4em;
}

.inside-section-3 h3 {
    font-size: 1.4em;
    font-weight: 700 !important;
}
.inside-section-2 h3{
     font-size: 1.4em;
}

.inside-section-1 h3{
     font-size: 1.4em;
}

.inside-content h5{
  font-size:  1.3em;
}

.coup-page{
  position: relative;
  padding-bottom: 7%;
}

.coup-page .text-highlight{
  margin-bottom: 3em;
}

.coup-page .col-lg-6{
  margin: 0em  0 2.5em 0!important;
}

.rev-sec-in {
  position: relative;
  color: #fff;
  padding: 4em 4em !important;
  overflow: hidden;
  background: var(--sb-navy) url('/wp-content/uploads/2026/09/reviews-bg-quality-services-cover.webp') center/cover no-repeat;
}

.rev-sec-in::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(12, 22, 38, 0.88);
  z-index: 0;
  pointer-events: none;
}

/* Force real content (headings, text, buttons) above the overlay */
.rev-sec-in > * {
  position: relative;
  z-index: 1;
}

.rev-box .btn-secondary {
    border-color: #ffffff !important;
    color: #ffffff !important;
}

.rev-box .sec2-header {
    color: #ffffff;
      text-align: center;
  font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 2.8em;
    color: #ffffff;
    margin-bottom: 0em;
}



.rev-header{
   font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  text-align: center;
  font-size: 2.6em;
  line-height: 1.2;
  color: #192b39;
  font-weight: 400;
}

.rev-header strong{
   font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  text-align: center;
  font-size: 1.3em;
  line-height: 1;
  color: #192b39;
  font-weight: 400;
}
.rev-btns{margin-top: 2em;width: 60%;}


@media (min-width: 768px) {
  .rev-sec-in .row.align-items-center.mt-2 {
    justify-content: center;
  }

  .rev-sec-in .row.align-items-center.mt-2 > .col-md-6 {
    flex: 0 0 auto;
    width: auto;
  }

  .rev-sec-in .row.align-items-center.mt-2 > .col-md-6:first-child {
    display: flex;
    justify-content: flex-end;
  }

  .rev-sec-in .row.align-items-center.mt-2 > .col-md-6:last-child {
    display: flex;
    justify-content: flex-start;
  }

  .rev-sec-in .row.align-items-center.mt-2 .btn {
    margin: 0 10px;
  }
}




/* Reviews CTA buttons â€” replaces the earlier "meet in the middle" fix.
   Controls the stack/row transition directly instead of relying on
   Bootstrap's own col-md-6 breakpoint, which was being overridden. */

.rev-sec-in .row.align-items-center.mt-2 {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 12px !important;
    margin-top: 2em !important;
}

.rev-sec-in .row.align-items-center.mt-2 > [class*="col-"]{
  flex: 1 1 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

.rev-sec-in .row.align-items-center.mt-2 .btn{
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  margin: 0 !important;
}

/* From 576px up: shrink both buttons to their own content width and
   sit them side by side, centered as a pair */
@media (min-width: 576px){
  .rev-sec-in .row.align-items-center.mt-2 > [class*="col-"]{
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: none !important;
  }
  .rev-sec-in .row.align-items-center.mt-2 .btn{
    display: inline-block !important;
    width: auto !important;
  }
}





.deal-price{
  position: relative;
  font-weight: bold;
  font-size: 4em;
  line-height: 1.2;
  text-shadow: -0.08em 0.09em 0.2em #00000005;
  color: #192b39;
   font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  margin-top: 0.4em;
}

.deal-price span{
  display: block;
  font-size: 0.5em;
  padding: 1% 7%;
}

.deal-offer{
  position: relative;
  font-size: 1.4em;
  line-height: 1.4;
  display: block;
  margin: 2% 0 2% 0;
  color: #192b39;
 font-family: "Plus Jakarta Sans", system-ui, sans-serif;
}

.deal-offer span{
  display: block;
  font-size: .7em;
}

.coup-page{
  position: relative;
  padding-bottom: 7%;
}

.coup-page .text-highlight{
  margin-bottom: 3em;
}


.coup-page .home-coup img{
  width: 11em;
  left: 0;
  margin-bottom: 0.8em;
}

.coup-page .col-lg-6{
  margin: 0em  0 2.5em 0!important;
}

.coup-page .home-coup{
  text-align: center;
  width: 90%;
  padding: 9% 10% 5% 10%;
}

.coup-page .home-coup .btn{
  margin: 0.4em auto 1em auto;
  background-color: #66bee3;
  border: 0;
  color: white;
  margin: 1em auto;
  display: block;
  width: 90%;
}

.coup-page .home-coup p{
  font-size: .8em;
}


/* Coupons tabs (Plumbing / HVAC) */
#couponsTabs.nav-tabs {
  border-bottom: 2px solid #f2871f;
  gap: 10px;               /* modern browsers */
}

/* Base tab button/link */
#couponsTabs .nav-link {
  color: #1ba0e2;
  background: #ffffff;
  border: 2px solid #f2871f;
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  padding: 10px 18px;
  font-weight: 700;
  line-height: 1;
  transition: background-color .2s ease, color .2s ease, transform .15s ease;
}

/* Hover / focus */
#couponsTabs .nav-link:hover,
#couponsTabs .nav-link:focus {
  background: #f2871f;
  color: #1ba0e2;
  transform: translateY(-1px);
  outline: none;
  box-shadow: none;
}

/* Active tab */
#couponsTabs .nav-link.active,
#couponsTabs .nav-link[aria-selected="true"] {
  background: #1ba0e2;
  color: #ffffff;
  border-color: #1ba0e2;
  position: relative;
  top: 2px; /* visually connects active tab to panel */
}

/* Tab panel container (optional - makes it look "connected") */


/* Mobile: allow horizontal scroll if tabs wrap tight */
@media (max-width: 575px) {
  #couponsTabs.nav-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  #couponsTabs .nav-link {
    white-space: nowrap;
  }
}




.side-coup{
  position: relative;
  width: 100%;
  margin: 2em auto 2em auto;
  background-color: #f2871f;
  background-size: 55%;
  background-position: bottom left;
  background-repeat: no-repeat;
  padding: 5% 10% 7% 10%;
  outline: .3em dashed #192b39;
  outline-offset: -1em;
  text-align: center;
  border-radius: 2em;
}
.side-coup p{
  font-size: 0.8em;
  color: #192b39;
}

.side-price{
  position: relative;
  margin-top: 2%;
  font-weight: 900;
  font-size: 4.2em;
  color: #3f63c9;
}

.side-offer{
    font-size: 1.3em;
    position: relative;
    margin-bottom: 3%;
    letter-spacing: .02em;
}

.side-offer span{
  display: block;
  font-size: .7em;
}

.side-coup .btn-primary{
  display: block;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #ffffff !important;
  padding: 0.6em 1em;
  font-size: 1em;
  width: 90%;
  margin: 1em auto;
  background-color: #1ba0e2;
  border: 2px solid transparent;        /* prevents layout shift */
  transition: all .25s ease;
}

.side-coup .btn-primary:hover,
.side-coup .btn-primary:focus{
  background-color: #1ba0e2;             /* keep background */
  color: #ffffff !important;
  border-color: #ffffff;
}





/* Coupon wrapper in sidebar */
.sidebar .coupon{
  position: relative;
  padding: 1.5em 2em 2em 2em;
  background: #f2871f;               /* dark blue */
  width: 100%;
  color: #ffffff !important;
  outline: .2em dashed #ffffff;
  outline-offset: -0.9em;
  border-radius: 0px;
  box-shadow: 0 10px 20px -12px rgba(0,0,0,.45);
  text-align: center;
  margin-bottom: 2em;
  margin-top: 2em;
}

/* PRICE */
#sidebar1 .price{
  margin: 0 0 .15em;
     font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  font-size: 3em;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #ffffff;
}

/* OFFER text */
#sidebar1 .offer{
  margin: 0 0 1.1em;
  font-size: 1.2em;
  font-weight: bold;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #ffffff;
}

/* Button */
/* Button */
#sidebar1 .coupon .btn{
  display: block;
  width: 100%;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #ffffff;
  background: #f2871f;
  border: 2px solid #ffffff;
  margin-top: .2em;
}

/* Button hover */
#sidebar1 .coupon .btn:hover{
  background: #f2871f;
  color: #ffffff;
}

/* Optional: tiny lift on hover of whole coupon */
.sidebar .coupon:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 26px -14px rgba(0,0,0,.6);
}







.coup-page [data-equalizer="coup1"]{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: stretch;
  gap: 1.8em;
  margin: 0 !important;
}

.coup-page [data-equalizer="coup1"] > div{
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* --- The card itself --- */

.coup-page .coupon.max-coupon{
  position: relative;
  height: 100%;
  box-sizing: border-box;
  background-color: #0f1526;
  color: #ffffff;
  text-align: center;
  border-radius: 1em;
  padding: 2.2em 1.8em 2.4em;
  outline: .25em dashed rgba(255,255,255,.35);
  outline-offset: -.9em;
  box-shadow: 0 14px 26px -14px rgba(0,0,0,.5);
  transition: transform .3s ease-in-out, box-shadow .3s ease-in-out, outline-color .3s ease-in-out;
}

.coup-page .coupon.max-coupon:hover{
  transform: translateY(-4px);
  box-shadow: 0 18px 32px -16px rgba(0,0,0,.6);
}

/* Alternating red / blue accent, same pairing as the homepage carousel's
   .coupon-card:nth-child(odd)/(even) */
.coup-page [data-equalizer="coup1"] > div:nth-child(odd) .coupon.max-coupon{
  outline-color: rgb(244 145 30);
}

.coup-page [data-equalizer="coup1"] > div:nth-child(even) .coupon.max-coupon{
  outline-color: rgb(244 145 30);
}

/* --- Price ("$50 OFF") --- */

.coup-page .coupon .price{
  font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  font-size: 2.5em;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  color: #ffffff;
  margin: 0 0 .35em;
}

/* Optional: if you want the "$" and "OFF" picked out in red like
   savingplumbing.com/coupons, wrap them in the price_main field content,
   e.g.  <span class="price-accent">$</span>50 <span class="price-accent">OFF</span>
   ACF text fields print their raw value here, so this markup is safe to
   type directly into the field Ã¢â‚¬â€ no template change needed. */
.coup-page .coupon .price .price-accent{
  color: #e21c3d;
}

/* --- Offer title ("AC System Repair") --- */

.coup-page .coupon .offer{
  font-size: 1.05em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #ffffff;
  margin: 0 0 1.2em;
}

/* --- Button --- */

.coup-page .coupon .print-block{
  margin-bottom: 1em;
}

.coup-page .coupon .print-block > a.btn-primary{
  display: inline-flex;
  width: auto;
  margin: 0 auto;
}

/* --- Fine print --- */

.coup-page .coupon p{
  font-size: .78em;
  line-height: 1.5;
  color: rgba(255,255,255,.72);
  text-transform: none;
  letter-spacing: 0;
  margin: 0;
  padding: 0 2%;
}

/* --- Mobile: stack to one column --- */

@media (max-width: 767px){
  .coup-page [data-equalizer="coup1"]{
    grid-template-columns: 1fr;
  }
}


/* ==========================================================================
   COUPONS PAGE Ã¢â‚¬â€ Coupon Cards  (Template Name: Coupons Page Template)
   Styles the ACF "coupon_info" repeater output from couponspage.php:

     <div class="row" data-equalizer="coup1">
       <div class="col-sm-12 col-md-6 col-lg-6">
         <div class="coupon max-coupon">
           <div class="price">...</div>
           <div class="offer">...</div>
           <div class="print-block"><a class="btn btn-primary">Get This Deal</a>...</div>
           <p>fine print</p>
         </div>
       </div>
       ...
     </div>

   IMPORTANT: the same "coupon max-coupon" markup is duplicated a second
   time, hidden (style="display:none"), inside each
   <div id="prinReady0N">...</div> block Ã¢â‚¬â€ that's what binnycoupon.js's
   printSpecial() copies into the pop-up print window. That pop-up only
   copies the .coupon.max-coupon markup itself, not the page around it, so
   the card/price/offer/paragraph rules below are written WITHOUT a
   ".coup-page" ancestor requirement Ã¢â‚¬â€ on purpose Ã¢â‚¬â€ so the printed coupon
   matches the on-page card instead of falling back to unstyled text.
   Only the grid/layout rules (which only matter on the real page) stay
   scoped to .coup-page.

   Nothing here changes the template or the ACF fields Ã¢â‚¬â€ it only styles the
   classes that template already outputs. Matches the dark dashed-card
   language already used elsewhere on this site (.coupon-card on the
   homepage carousel, .sidebar .coupon in the sidebar widget) instead of
   inventing a new look, and alternates red/blue accents card-to-card the
   same way the homepage carousel does.
   ========================================================================== */

/* --- Grid: two coupons per row, equal height, no dependency on the
   data-equalizer JS plugin (page layout only, not needed in the print
   pop-up) --- */

.coup-page [data-equalizer="coup1"]{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: stretch;
  gap: 1.8em;
  margin: 0 !important;
}

.coup-page [data-equalizer="coup1"] > div{
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Alternating red / blue accent on the page grid, same pairing as the
   homepage carousel's .coupon-card:nth-child(odd)/(even) */
.coup-page [data-equalizer="coup1"] > div:nth-child(odd) .coupon.max-coupon{
  outline-color: rgb(244 145 30);
}

.coup-page [data-equalizer="coup1"] > div:nth-child(even) .coupon.max-coupon{
  outline-color: rgb(244 145 30);
}

/* --- The card itself Ã¢â‚¬â€ no .coup-page requirement, so this also styles
   the hidden duplicate that gets printed --- */

.coupon.max-coupon{
  position: relative;
  height: 100%;
  box-sizing: border-box;
  background-color: #0f1526;
  color: #ffffff;
  text-align: center;
  border-radius: 1em;
  padding: 2.2em 1.8em 2.4em;
  outline: .25em dashed rgba(255,255,255,.35);
  outline-offset: -.9em;
  box-shadow: 0 14px 26px -14px rgba(0,0,0,.5);
  transition: transform .3s ease-in-out, box-shadow .3s ease-in-out, outline-color .3s ease-in-out;
}

.coup-page .coupon.max-coupon:hover{
  transform: translateY(-4px);
  box-shadow: 0 18px 32px -16px rgba(0,0,0,.6);
}

/* --- Price ("$50 OFF") --- */

.coupon.max-coupon .price{
  font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  font-size: 2.5em;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  color: #ffffff;
  margin: 0 0 .35em;
}

/* Optional: if you want the "$" and "OFF" picked out in red like
   savingplumbing.com/coupons, wrap them in the price_main field content,
   e.g.  <span class="price-accent">$</span>50 <span class="price-accent">OFF</span>
   ACF text fields print their raw value here, so this markup is safe to
   type directly into the field Ã¢â‚¬â€ no template change needed. */
.coupon.max-coupon .price .price-accent{
  color: #e21c3d;
}

/* --- Offer title ("AC System Repair") --- */

.coupon.max-coupon .offer{
  font-size: 1.05em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #ffffff;
  margin: 0 0 1.2em;
}

/* --- Button (never appears in the print-ready duplicate, only on-page) --- */

.coupon.max-coupon .print-block{
  margin-bottom: 1em;
}

.coupon.max-coupon .print-block > a.btn-primary{
  display: inline-flex;
  width: auto;
  margin: 0 auto;
}

/* --- Fine print --- */

.coupon.max-coupon p{
  font-size: .78em;
  line-height: 1.5;
  color: rgba(255,255,255,.72);
  text-transform: none;
  letter-spacing: 0;
  margin: 0;
  padding: 0 2%;
}

/* --- Mobile: stack the on-page grid to one column --- */

@media (max-width: 767px){
  .coup-page [data-equalizer="coup1"]{
    grid-template-columns: 1fr;
  }
}

/* --- Print --- */
/* binnycoupon.js's printSpecial() writes the coupon's markup into a fresh
   popup document and calls window.print() on it, which genuinely triggers
   @media print Ã¢â‚¬â€ but most browsers don't print background colors/images
   unless the user has "Background graphics" checked in the print dialog.
   A dark navy card with white text would risk printing as an all-white
   page (invisible text) for anyone who leaves that box unchecked, so print
   gets its own light, ink-friendly version: white background, dark text,
   solid dashed border (borders/text always print regardless of that
   setting). This block applies equally to the on-page card if the visitor
   prints the whole page. */
@media print{
  .coupon.max-coupon{
    background-color: #ffffff !important;
    color: #14151c !important;
    outline: .18em dashed #14151c !important;
    outline-offset: -.7em;
    box-shadow: none !important;
  }
  .coupon.max-coupon .price,
  .coupon.max-coupon .offer{
    color: #14151c !important;
  }
  .coupon.max-coupon .price .price-accent{
    color: #c21631 !important;
  }
  .coupon.max-coupon p{
    color: #333333 !important;
  }
}




/* List Style 1 Inner CSS  */ 

.bullet-list{
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    padding: 10px;
}

.bullet-list li {
    position: relative;
    padding: 0.2em .1em 0.2em .1em;
    padding-left: 2em;
    font-size: 1.2em;
    font-weight: 500;
    width: 48%;
}

.bullet-list li:after {
    content: "\f058";
    font-family: 'icomoon' !important;
    position: absolute;
    top: 0;
    left: 0;
    color: #f2871f;
    font-size: 1.333em;
    border-radius: 50%;
    line-height: 1;
}

.bullet-list li a{
  color: #1ba0e2;
  text-decoration: none;
}

.bullet-list li a:hover{
  color: #1ba0e2;
}

/* ---------------------- */

/* List Style 2 Inner CSS  */ 

.check-list li{
    display: block!important;
    padding: .8em 1em .8em 4em!important;
    border-bottom: solid 1px rgba(0, 0, 0, 0.14)!important;
    position: relative!important;
    line-height: 1.5em!important;
    text-align: left!important;
    width:100%!important;
}

.check-list  {
    display: block!important;
    margin: 1em 0!important;
    padding: 0!important;
    border: solid 1px rgba(0, 0, 0, 0.08)!important;
}

.check-list li:before {
    content: "\f00c";
    font-family: 'icomoon' !important;
    color: #f2871f;
    display: block;
    position: absolute;
    font-size: 1.2em;
    top: 0.8em;
    left: 1.06em;
    z-index: 2;
}

.check-list li:after{
  content: '';
  position: absolute;
  background-size: 100%;
  width: 2.5em;
  height: 2.5em;
  top: 0.4em;
  left: 0.3em;
  background-repeat: no-repeat;
}

.check-list li strong {
    text-transform: uppercase;
    font-size: 1.025em;
    color: #f2871f;
}

.check-list li a{
  color: #f2871f!important;
}

.check-list li a:hover{
  color: #fb8500!important;
}



/* ------------------------------------------ */


/* Page creator Template */

.pc-default{
  position: relative;
  padding: 2% 3%;
  background-size: cover;
  background-position: center;
}



.pc-default .accordion-button{
    padding: 1rem 1.25rem;
    font-size: 1rem;
    color: #ffffff;
    background-color: #00488c;
    letter-spacing: .08em;
}

.pc-default .accordion-item{
  background-color: #efefef;
  color: #070707;
}

.pc-default .accordion-button:not(.collapsed){
    color: #ffffff;
    background-color: #000000;
}

.pc-default .accordion{
  margin-bottom: 2em;
}

.pc-default .usp-box{
  position: relative;
  padding: 2em 2em;
  text-align: center;
  border: 1px solid #00000047;
  border-radius: .5em;
  margin: 1em auto;
  background: white;
}

.pc-default h2{
  font-weight: 900;
}

.pc-default .usp-label{
  position: relative;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.pc-default .usp-box span{
  display: block;
  text-align: center;
  font-size: 4em;
  color: #0056a6;
}

.center-head{
  text-align: center;
  display: block;
}

.pc-default h1{
  font-weight: 900;
  color: #0056a6;
}

.topsec{
  padding-bottom: 3em;
}

.section-faqsec h2{
  color: #00488c;
  font-weight: 900;
}

.pc-default .accordion-button h3{
  margin: 0;
  color: white;
}

/* Flex Template */

.column-section{
  position: relative;
  padding: 5% 5%;
}

.column-section strong.highlight{
    font-size: 1.36em;
    font-style: italic;
    color: #000000;
    position: relative;
    font-weight: 500!important;
    margin-top: 8px;
    padding-bottom: 3%;
    margin-bottom: 1em;
    line-height: 1.4!important;
    display: block;
}

.column-section strong.highlight:not(.no-line):after {
    content: ' ';
    display: block;
    width: 159%;
    height: 4px;
    background-color: #4fc8e3;
    position: absolute;
    top: 95%;
    right: 20px;
}

.column-section  .btn-primary{
  max-width: 450px;
  margin-left: 0;
  color: white;
}

.column-section no{
  display: none;
}

.text-highlight p{
  margin-bottom: 0;
}

.column-section h1{
  color: #414141;
  font-size: 2.6em;
  margin: 0em 0em -0.5em 0em;
}

.compressed-sec{
  padding: 5% 18%;
  background: #ededed;
}

.content-header{
  font-weight: 900;
  font-size: 1.2em;
  color: #ff601f;
}

.usp-box-section{
  position: relative;
  padding: 5% 5%;
  background: #ff5f1f;
}

.usp-box-section .usp-box{
  height: 23em;
  padding: 4em 1em 1em 1em;
}

.accordion-section{
  position: relative;
  padding: 2% 5%;
}


.accordion-section .accordion-button{
    padding: 1rem 1.25rem;
    font-size: 1rem;
    color: #ffffff;
    background-color: #209ad6;
    letter-spacing: .08em;
}

.accordion-section .accordion-item{
  background-color: #272727;
  color: white;
}

.accordion-section .accordion-button:not(.collapsed){
    color: #ffffff;
    background-color: #000000;
}

.accordion-section .accordion{
  margin-bottom: 2em;
}
 

.accordion-section .accordion-button::after{
  -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.accordion-section .accordion-button:hover{
  background-color: #333a45;
  color: white!important;
}

.accordion-section .accordion-button:hover h2{
  color: white;
}

.accordion-section .accordion-button:not(.collapsed) h2{
  color: white;
}

.galler-section {
  position: relative;
  padding: 3% 5%;
}



/* Opening CTA Inner CSS  */ 

.text-highlight {
    font-size: 1.36em;
    font-style: italic;
    color: #000000;
    position: relative;
    font-weight: 500!important;
    margin-top: 8px;
    padding-bottom: 3%;
    margin-bottom: 39px;
    line-height: 1.4!important;
}

.text-highlight:not(.no-line):after {
    content: ' ';
    display: block;
    width: 159%;
    height: 4px;
    background-color: #184ba2;
    position: absolute;
    top: 99%;
    right: 20px;
}

.text-highlight p{
  margin-bottom: 0;
}

 .text-highlight2 {
    font-size: 1.25em;
    padding: 1.5em 3% 1.1em;
    position: relative;
    border-bottom: solid 1px #00000054;
    text-align: center;
    margin: 4.5rem 0 0.5rem 0em;
    color: #000000;
    font-weight: 900;
    text-wrap: balance;   
}

.text-highlight2:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-image: linear-gradient(to right,#00000040 41.99%,#FFFFFB 42%,#FFFFFF 58.99%,#00000040 55%);
}


.text-highlight2:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 3.4em;
    background-size: 7.6em;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    left: 0.2em;
    top: -2.15em;
    background-image: url(/wp-content/uploads/2026/09/web-logo.webp) !important;
}

.text-highlight2 a {
    display: unset;
    color: #d46f0d;
    transition: all .3s ease-in-out;
    transform: scale(1);
    position: relative;
    bottom: 0em;
}

  .text-highlight2 a:hover{
    font-size: 1.04em;
    bottom: 0.12em;

 }

.inner-bottom{
  padding: 3.5rem 7%;
  background-image: url(/wp-content/uploads/2026/01/inner-bottem-bg1.jpg);
  background-size: contain;
  background-position: center;
  position: relative;
}

/* IMPORTANT: allow rotated cards to show without getting clipped */
.inner-bottom .carousel-inner{
  overflow: visible;
}

.inner-bottom .row{
  justify-content: center;
  align-items: stretch;
}

.inner-bottom .usp-blk{
  background: #ffffffe8;                 /* <-- card background */
  border-radius: 2.5rem;            /* pill-ish rounded corners like example */
  padding: 2rem 1.75rem;
  text-align: center;
  width: 100%;                      /* <-- let the column control width */
  max-width: 520px;                 /* keeps it from getting too wide */
  margin: 0 auto;                   /* center inside the column */
  min-height: 240px;                /* instead of fixed height */
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* min-height: 415px; */
  /* box-shadow: 0 18px 40px rgba(0,0,0,.15); */
}



.inner-bottom .usp-blk span{
  font-size: 78px;
  line-height: 1;
  color: #f2871e;
}

/* Make columns equal height */
.inner-bottom .carousel-item .row{
  align-items: stretch;            /* key */
}

/* Ensure each col behaves nicely */
.inner-bottom .carousel-item .row > [class*="col-"]{
  display: flex;                   /* key */
}

/* The card fills its column and stacks content cleanly */
.inner-bottom .usp-blk{
  width: 100%;
  height: 100%;                    /* key */
  margin: 0;                       /* let the column spacing handle this */
  padding: 2rem 1.75rem;

  display: flex;                   /* key */
  flex-direction: column;
  justify-content: flex-start;

background:var(--sb-navy-2); border:1px solid rgba(255,255,255,0.10);
  border-radius: 2.25rem;
  box-shadow: 0 18px 40px rgba(0,0,0,.15);
}





/* Optional: keep icon/label tidy */
.inner-bottom .usp-blk .usp-label{
  margin: .75rem 0 .5rem;
}

.inner-bottom .usp-blk p{
  margin: 0;
}



/* Mobile: stack with space between (and no rotations) */
@media (max-width: 767px){
  .inner-bottom .carousel-item .row{
    row-gap: 1rem;                 /* adds the missing spacing */
  }

  .inner-bottom .box-1,
  .inner-bottom .box-3{
    transform: none !important;
  }

  .inner-bottom .usp-blk{
    border-radius: 1.75rem;
    padding: 1.5rem 1.25rem;
  }
}



/* If you added this earlier, remove it (it breaks the grid at mid widths) */
/* .inner-bottom .carousel-item .row{ column-gap: 2rem; } */

/* Tablet / ~880px tuning */
@media (min-width: 768px) and (max-width: 991px){

  /* Let Bootstrap gutters handle spacing */
  .inner-bottom .carousel-item .row{
    column-gap: 0 !important;
    row-gap: 0 !important;
  }

  /* Reduce card bulk so 3-up fits nicely */
  .inner-bottom .usp-blk{
    padding: 1.25rem 1rem;
    border-radius: 1.75rem;
    font-size: .9rem;
    min-height: 210px;          /* keeps them visually even */
  }

  /* Prevent cards from trying to be too wide */
  .inner-bottom .usp-blk{
    max-width: none !important;
  }

  /* If icons are big, scale them down slightly */
  .inner-bottom .usp-blk svg,
  .inner-bottom .usp-blk img{
    max-height: 48px;
    height: auto;
  }
}
@media (min-width: 768px) and (max-width: 991px){
  .inner-bottom .carousel-item .row{
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1.25rem;
  }
}


/* ---------------------- */


/* Closing CTA Inner CSS  */ 


/* ------------------------------------------------------------------------------------- */


.faq-page .accordion-button {
    background-color: #0c1625;
    color: white;
}

.faq-page .accordion-button[aria-expanded=true], .faq-page .accordion-button:hover {
    background-color: #f28720;
    color: white;
}

.faq-page .accordion-button::after{
   -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);  
}

/* 404 Page */


.error-page {
    padding: 11% 4% 6% 4%;
    background-size: cover;
    background-position: center;
    text-align: center;
    color: black;
    margin-top: 9%;
    background-image: url(/wp-content/themes/plumberseo-bootstrap/inc/assets/images/ty-bgdss.jpg);    
}

.error-page .inside-content {
    position: relative;
    padding-top: 0px;
    background-color: #00000059;
    padding: 7% 1% 4% 1%;
}

.error-page .error{
  font-size: 14em;
  font-weight: 900;
  color: #f4911e;
  position: relative;
  display: block;
  line-height: 0.8;
  letter-spacing: .03em;
  z-index: 2;
  margin-top: -2%;
  text-shadow: -4px 4px #373535;
  margin-bottom: 1%;
}


.error-page .inside-content h1{
  font-size: 4.2em;
  color: #ffffff !important;
  position: relative;
  z-index: 1;
  margin-top: -0.2em;
}

.error-page .entry-content{
  font-size: 1.4em;
  padding: 0% 13%;
  position: relative;
  color: white !important;
}


.reroute-btns{
  padding: 0%;
  position: relative;
}

.reroute-btns .column,.reroute-btns .columns {
    padding-left: .3375rem;
    padding-right: .3375rem;
}

.reroute-btns .btn{
  width: 100%;
  font-size: 1.1em;
  box-shadow: 1px 1px 16px 8px #0000000f;
  text-transform: uppercase;
  /* font-weight: 900; */
  letter-spacing: .03em;
  border: 0;
  display: block;
  border-radius: 0;
  margin: .7em 0;
  border-radius: 900em;
  color: black;
}

.reroute-btns .btn:hover{
  background-color: #209ad6!important;
  color: white!important;
  text-shadow: none;
}


.reroute-btns span{
  position: relative;
  top: 0.15em;
  font-size: 1.3em;
}


.single-blog ul{
  margin-left: 2em!important;
}

/* Default Template CSS  */ 

.full-inner-max{
  padding-top: 4%;
  background: white;
  z-index: 11;
  position: relative;
}

.main-blog{
  position: relative;
}


  .wa-intcode-card strong:first-child{
    display: none;
  }


.main-blog a {
    text-decoration: none;
    color: #0c1625 !important;
}

.main-blog .page-nav{
  position: relative;
  background-color: #efefef;
  padding: 1.5em;
  margin-bottom: 1em;
}

.main-blog .post-thumbnail img{
  width: 100%;
  display: block;
}

.single-blog{
  position: relative;
  padding: 5% 15% 4% 15%;
}

/* ------------------------------------------------------------------------------------- */

.inside-content a {
    display: unset;
    color: #f2871e;
    text-decoration: none;
}

.inside-content .btn-primary{
  color: #000000;
}

/* Thank You Template CSS  */ 

.thank-you {
    background-repeat: no-repeat;
    background-position: center left;
    background-size: cover;
    padding: 9% 1% 5% 1%;
    margin-top: 6%;
    z-index: 99;
    background-image: url(/wp-content/themes/plumberseo-bootstrap/inc/assets/images/ty-bgdss.jpg);    
    position: relative;
}

.thank-you .bg-inner {
    text-align: center;
    background-color: rgba(0, 0, 0, 0.39);
    border: solid 1px #0000005e;
    position: relative;
    padding: 4.063rem 0 3.363rem 0;
    color: white;
}

.thank-you .bg-inner {
    width: 100%;
    max-width: 1100px!important;
    margin: 0 auto;
    position: relative;
}

.thank-you .bg-inner p {
    font-size: 1.5rem;
    line-height: 1.5em;
    color: white;
}

.thank-you .bg-inner  h1{
    margin: 0;
    color: #f4911e !important;
    font-weight: 900;
    font-size: 5.3rem;
    line-height: 1;
    margin-bottom: 0.2em;
    text-transform: uppercase;
    letter-spacing: .03em;
    text-shadow: -6px -1px .8em #2b2b2b;
}

.thank-you .bg-inner h1 strong {
    display: block;
    font-size: 1.847em;
    color: #fa4f41;
}

.thank-you .button {
    display: block;
    background-color: #f4911e;
    text-transform: uppercase;
    font-size: 1em;
    letter-spacing: .08em;
    color: #ffffff;
    text-decoration: none;
    padding: 0.65em 0em;
    margin: 0.7em 0;
    border-radius: 900em;
    font-family: 'Fredoka', sans-serif !important;
}

/* ------------------------------------------------------------------------------------- */

/* Client Response Template CSS  */ 

.client-resp-wrap{
  padding: 0% 5%;
}


.client-response .entry-content{
  padding: 0% 7%;
}

.client-response .frm_style_formidable-style.with_frm_style input[type=submit]{
  display: block;
  width: 100%;
  font-size: 1em;
  text-transform: uppercase;
  letter-spacing: .08em;
  background-color: #e62318;
}

.client-response .frm_style_formidable-style.with_frm_style input[type=submit]:hover{
  background-color: black;
  color: white;
}

.client-response .frm_style_formidable-style-2.with_frm_style .frm_primary_label{
  color: white;
}

.client-response .frm_style_formidable-style-2.with_frm_style input[type=submit]{
  display: block;
  background-color: #199ad6;
  color: white;
  width: 100%;
  padding: .85em 0em;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 1em;
  text-shadow: -0.03em 0.08em black;
}

.client-response .frm_forms.frm_style_formidable-style-2.with_frm_style{
  margin: auto;
}

.client-response .bg-inner {
    text-align: center;
    background-color: rgba(0, 0, 0, 0.31);
    border: solid 1px #000000a6;
    position: relative;
    padding: 3.063rem 0 1.363rem 0;
    color: white;
}

.client-response .bg-inner {
    width: 100%;
    max-width: 1100px!important;
    margin: 0 auto;
    position: relative;
}

.client-response .bg-inner p {
    font-size: 1.6rem;
    line-height: 1.5em;
    padding: 0% 5%;
    color: white;
}

.client-response .bg-inner h1 {
    margin: 0;
    color: #d46e0c !important;
    font-size: 4.3rem;
    line-height: 0.9;
    margin-bottom: 3%;
    text-shadow: 4px 4px 0.7em #00000075;
    text-transform: uppercase;
}


.client-response .bg-inner h1 strong {
    display: block;
    font-size: 1.647em;
    color: #f4911e;
    position: relative;
}

.client-response .bg-inner  h1 span strong{
  font-size: 1.2em;
}

.client-response .bg-inner  h1 span{
  font-size: 0.7em;
  display: block;
  font-weight: normal;
}

.client-response .with_frm_style .frm_primary_label{
  color: white;
}

.client-response .frm_button_submit {
  position: relative;
  display: block;
  width: 100%;
  background-color: #e7090c;
  padding: .85em 0em;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 900;
}

/* ------------------------------------------------------------------------------------- */


/* Client Feedback Review Template CSS  */ 


.client-response {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 13% 1% 7% 1%;
    background-color: #4e4e4e;
    margin-top: 6%;
    background-image: url(/wp-content/themes/plumberseo-bootstrap/inc/assets/images/ty-bgdss.jpg);
}

.client-review {
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: cover;
    padding: 11% 4% 5% 4%;
    position: relative;
    z-index: 9;
    margin-top: 8%;
    background-image: url(/wp-content/themes/plumberseo-bootstrap/inc/assets/images/feedback-bg.jpg);
    text-align: center;
}
 

.client-review  p {
    font-size: 1.2rem;
    line-height: 1.6;
    padding: 0% 0%;
    color: black;
}

.client-review  h1{
    margin: 0;
    color: #000000;
    font-weight: normal;
    font-size: 4.2rem;
    line-height: 1;
    margin-bottom: -0.1em;
    /* text-shadow: 4px 4px 0.4em #00000057; */
    text-transform: uppercase;
    position: relative;
}


.client-review h1 strong {
    display: block;
    font-size: 1.47em;
    color: #0c1626;
}


.resp-box{
  border-top: 1px solid #00304624;
  FONT-WEIGHT: 100;
  position: relative;
  margin-top: 2%;
  border-bottom: 1px solid #00304624;
}

.resp-txt{
  font-weight: 900;
  font-size: 1.7em;
  letter-spacing: 0.03em;
  margin-bottom: 2%;
  line-height: 1.7;
  padding: 1% 5% 0% 5%;
}

.resp-box .btn{
  display: block;
  width: 80%;
  max-width: 440px;
  border-radius: 900em;
  border: 0;
  margin: auto;
}

.client-review img{
  display: block;
  width: 90%;
  margin: auto;
}

.client-review .col-12 img{
  max-width: 450px;
}

.client-review .row-cols-5{
  padding: 0% 15%;
  margin-top: 2%;
}











/* --- Client Feedback Review Template CSS --- */

.client-review {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 13% 4% 5% 4%;
    position: relative;
    z-index: 9;
    margin-top: 8%;
    background-image: url(/wp-content/themes/plumberseo-bootstrap/inc/assets/images/feedback-bg.jpg);
    text-align: center;
}

 

.client-review  h1{
    color: #000000;
    font-weight: normal;
    font-size: 3.4rem;
    line-height: 1;
    margin-bottom: -0.1em;
    text-transform: uppercase;
    position: relative;
    width: 12em;
    margin: auto;
} 

@keyframes pulse {
            0% {
                transform: scale(1);
            }
            50% { 
                transform: scale(1.1);
            }
            100% {
                transform: scale(1);
            }
}
.client-review h1:before {
    content: "";
    position: absolute;
    background-image: url(/wp-content/themes/plumberseo-bootstrap/inc/assets/images/quotation-top-icon.png);
    width: 1.1em;
    height: 1em;
    top: -16px;
    left: 16px;
    z-index: 9;
    animation: pulse 2s infinite;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform .4s ease 0s;
}
.client-review h1:after {
    content: "";
    position: absolute;
    background-image: url(/wp-content/themes/plumberseo-bootstrap/inc/assets/images/quotation-icon.png);
    width: 1.1em;
    height: 1em;
    bottom: 111px;
    right: 14px;
    animation: pulse 2s infinite;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform .4s ease 0s;
} 
.feed_header_title {
    position: relative;
    font-weight: 800; 
    color: black;
}
 
.client-review h1 strong {
    font-size: 1.6em;
    color: #f2871f;
    padding: 2% 3%;
}

 
.feed_header_subtitle {
    font-weight: 900;
    font-size: 1.7em;
    letter-spacing: 0.03em;
    margin-bottom: 2%;
    line-height: 1.3;
    padding: 1% 5% 0% 5%;
    color: #0e7cb4;
    animation: pulse-one 4s infinite;
}
@keyframes pulse-one {
            0% {
                transform: scale(1);
            }
            50% { 
                transform: scale(1.05);
            }
            100% {
                transform: scale(1);
            }
}
.feed_header_cta{
    font-weight: 900;
    font-size: 1.4em;
    letter-spacing: 0.03em;
    margin-bottom: 2%;
    line-height: 1.3;
    padding: 1% 5% 0% 5%;
}  


.feedback-emoji img {
  display: inline-block;
  transition: transform 0.2s ease;
}
.feedback-emoji img:hover { 
  transform: translateY(-10px);
}






/* ------------------------------------------------------Media Queries CSS ---------------------------------------- */ 


 @media screen and (min-width: 5.001em) and (max-width: 25em) {


/* NEW QUERIES */

.sliderfull{
  margin-top: 25%;
}
   
   .slider-header{
     font-size: 1.7em;
   }

/* END NEW QUERIES */

      #breadcrumbs{
     font-size: .6em;
     margin-top: 6em;
   }

   blockquote {
    padding: 3% 4% 3% 8%!important;
}

   blockquote:after{
     display: none;
   }   

   .error-page .inside-content h1{
     font-size: 1.5em;
     margin-bottom: 0em;
   }


   .error-page .error{
     font-size: 8.1em;
   }   

.error-page .entry-content {
    font-size: 1em;
    padding: 0% 3%;
    margin-top: 0.1em;
}   
   

.client-review{
  text-align: center;
  margin-top: 15%;
  padding: 22% 4% 5% 4%;
}


.client-review .row-cols-5 {
    padding: 0% 1%;
    margin-top: 2%;
}


.client-review .row-cols-5 .col{
  padding: 0.5%;
}


.client-review img, .client-review .btn{
  margin: auto;
  width: 100%;
}

.client-review h1{
  font-size: 1.7em;
}   

 
.client-response .bg-inner p {
    font-size: 1.1rem;
    padding: 0% 0%;
}

.client-response .bg-inner h1 {
    font-size: 1.9rem;
}

.thank-you .bg-inner h1 {
    font-size: 2.2rem;
}

.thank-you .button{
  margin: .5em 0;
}

.thank-you .bg-inner p {
    font-size: 1rem;
}


   .bullet-list li{
     width: 100%;
   }

.inner-bottom {
    background-position: 100% 100%;
}   

   .inner-bottom .usp-wrap:after{
     display: none;
   }

   .inner-bottom .usp-wrap{
     width: 100%;
   }
  
.insideimage .slider-usp .usp-box {
    font-size: 0.6em;
    padding: 5% 15%;
}


   .single-blog {
    position: relative;
    padding: 12% 4% 4% 4%;
}

   .insideimage {
    padding: 28% 4% 0% 4%;
    margin-top: 10.5%;
    border-bottom: 0.2em solid #1d1761;
    background-image: none;
}

    .insideimage:after{
     width: 155%;
     border-radius: 0;
   }

   .insideimage:before{
     display: none;
   }

   .insideimage .slider-usp .usp-box{
     font-size: 0.5em;
   }
   
   
.thank-you {
    padding: 15% 1% 5% 1%;
    margin-top: 13%;
}


.banner-head{
   font-size: 1.1em;
}


.insideimage .col-lg-6{
  padding-right: 35%;
}

.banner-head{
  font-size: 0.83em;
  width: 100%;
}

.logo-image img{
  width: 8.4em;
  top: .1em;
}

.smallbar .logo-image img{
  width: 6em;
}


.logo-foot img{
  width: 19em;
}

.quick-nav.adjust {
    font-size: .9em;
    top: 7.7em;
}


.close-cta{
  font-size: 0.8em;
  padding: 6% 2% 3% 2%;
}
 
.sched-row a ,.sched-row button {
    padding: 3% 0% 3% 0%;
    font-size: 0.6em;
}

.resp-txt{
  font-size: 1em;
}

.client-response {
    padding: 17% 1% 7% 1%;
    margin-top: 14%;
}


.hide-for-small-only{
  display: none!important;
}

.error-page {
    padding: 13% 4% 6% 4%;
    margin-top: 18%;
}

.help-links a{
  text-align: center;
}

.side-form iframe {
    height: 64em!important;
}


.insideimage .slider-usp{
  width: 95%;
  margin-right: auto;
  right: 0;
  font-size: 0.7em;
  position: relative;
  margin-top: 1em;
  bottom: -2em;
}

.insideimage:before{
  display: none;
}   

.insideimage .slider-usp.row>*{
  padding: 0 1%;
}

.show-for-small-only{
  display: block!important;
}


.emp-info em{
  width: 90em;
}

   .compressed-sec {
    padding: 5% 3%;
    background: #ededed;
}

.compressed-sec .col-md-8{
  width: 66.6666666667%;
}

   .compressed-sec .col-md-4{
  width: 33.3333333333%;
}

}



 @media screen and (max-width: 35em) and (min-width: 25.001em) {


/* NEW QUERIES */

.sliderfull{
  margin-top: 24%;
}
   
   .slider-header{
     font-size: 2.2em;
   }

/* END NEW QUERIES */

.logo-foot img{
  width: 19em;
}

.widget .home-form .camp-form iframe {
    height: 36.3em!important;
}

.modal-dialog .camp-form iframe {
    height: 32em!important;
}

.sched-row a ,.sched-row button{
  font-size: .8em;
}
  

.close-cta{
  font-size: 0.8em;
}
  
.insideimage .slider-usp .usp-box{
  font-size: .5em;
}

   #breadcrumbs{
     font-size: .7em;
     margin-top: 9em;
   }


.client-review .row-cols-5 {
    padding: 0% 1%;
    margin-top: 2%;
}


.client-review .row-cols-5 .col{
  padding: 0.5%;
}

      blockquote {
    padding: 3% 4% 3% 8%!important;
}

   blockquote:after{
     display: none;
   }

      .bullet-list li{
     width: 100%;
   }

   .inner-bottom {
    background-position: 100% 100%;
}

      .inner-bottom .usp-wrap:after{
     display: none;
   }

   .inner-bottom .usp-wrap{
     width: 100%;
   }

   .error-page .error{
     font-size: 8.9em;
   }

   .error-page .inside-content h1{
     font-size: 1.8em;
     margin-bottom: 0em;
   }

.error-page .entry-content {
    font-size: 1em;
    padding: 0% 3%;
    margin-top: 0.1em;
}   

.client-review{
  text-align: center;
  padding: 24% 4% 5% 4%;
  margin-top: 15%;
}

.client-review img, .client-review .btn{
  margin: auto;
}

.client-review h1{
  font-size: 2.3em;
}    

.resp-txt{
  font-size: 1.3em;
}   

.client-response .bg-inner p {
    font-size: 1.4rem;
}

.client-response .bg-inner h1 {
    font-size: 2.4rem;
}

.thank-you .bg-inner h1 {
    font-size: 2.9rem;
}

.thank-you .button{
  margin: .5em 0;
}

.thank-you .bg-inner p {
    font-size: 1rem;
}

.thank-you {
    padding: 15% 1% 5% 1%;
    margin-top: 14%;
}
 

.client-response {
    padding: 16% 1% 7% 1%;
    margin-top: 16%;
}


.hide-for-small-only{
  display: none!important;
}

.error-page {
    padding: 16% 4% 14% 4%;
    margin-top: 18%;
}
.logo-image a {
    margin-top: .2em;
    transform: scale(1);
    top: 0em;
}

  .logo-image img {
    width: 9.8em;
    left: -0.2em;
    top: 0.1em;
}

   
   .single-blog {
    position: relative;
    padding: 10% 4% 4% 4%;
}

   .insideimage {
    padding: 28% 4% 0% 4%;
    margin-top: 10.5%;
    border-bottom: 0.2em solid #1d1761;
    background-image: none;
}

   .insideimage:after{
     width: 155%;
     border-radius: 0;
   }

   .insideimage:before{
     display: none;
   }

   .insideimage .slider-usp .usp-box{
     font-size: 0.5em;
   }
   

.quick-nav.adjust {
    font-size: .9em;
    top: 8em;
}

.smallbar .logo-image img {
    width: 6em;
}

   
.help-links a{
  text-align: center;
}


.insideimage .slider-usp{
  width: 95%;
  margin-right: auto;
  right: 0;
  position: relative;
  margin-top: -1em;
  bottom: -3em;
}

   .insideimage:before{
     display: none;
   }

.insideimage .slider-usp.row>*{
  padding: 0 1%;
} 

.insideimage .col-lg-6{
  padding-right: 35%;
}

.banner-head{
  font-size: 1.1em;
  width: 100%;
}

.insideimage .activate a{
  font-size: .88em;
}
 
.show-for-small-only{
  display: block!important;
} 

   .compressed-sec {
    padding: 5% 5%;
    background: #ededed;
}

.compressed-sec .col-md-8{
  width: 66.6666666667%;
}

   .compressed-sec .col-md-4{
  width: 33.3333333333%;
}

}




 @media screen and (max-width: 39.938em) and (min-width: 35.001em) {



/* NEW QUERIES */


.sliderfull{
  margin-top: 21%;
}
   
   .slider-header{
     font-size: 2.7em;
   }
   
/* END NEW QUERIES */

.logo-foot img{
  width: 22em;
}

   .side-form iframe {
    height: 51em!important;
}
.logo-image a {
    margin-top: .1em;
    transform: scale(1);
    top: 0em;
}   
   
  .logo-image img {
    width: 14.3em;
    left: -0.3em;
    top: .1em;
}

.quick-nav.adjust {
    top: 6.4em;
}   

  .smallbar .logo-image img {
    width: 10.6em;
} 

.error-page {
    padding: 13% 4% 11% 4%;
    margin-top: 17%;
}


.client-review{
  text-align: center;
  padding: 24% 4% 5% 4%;
  margin-top: 12%;
}

.client-review img, .client-review .btn{
  margin: auto;
}


.client-review .row-cols-5 {
    padding: 0% 1%;
    margin-top: 2%;
}


.client-review .row-cols-5 .col{
  padding: 0.5%;
}

.client-review h1{
  font-size: 3.2em;
}   

.resp-txt {
    font-size: 1.5em;
}    

   
   .single-blog {
    position: relative;
    padding: 5% 4% 4% 4%;
}
   
.insideimage {
    padding: 28% 4% 0% 4%;
    margin-top: 10.5%;
    border-bottom: 0.2em solid #1d1761;
    background-image: none;
}

   .insideimage:after{
     width: 100%;
     left: 0;
     border-radius: 0;
     transform: none;
   }


   .insideimage .truck-image:after{
     display: none;
   }
   
   .insideimage:before{
     display: none;
   }

   .insideimage .slider-usp .usp-box{
     font-size: .7em;
   }

.insideimage .slider-usp{
  width: 95%;
  margin-right: auto;
  right: 0;
  position: relative;
  margin-top: 0.5em;
}

.insideimage .slider-usp.row>*{
  padding: 0 1%;
}

 
.banner-head{
   font-size: 1.2em;
}

   #breadcrumbs{
     font-size: .79em;
     margin-top: 5em;
   }


   .bullet-list li{
     width: 100%;
   }

   .inner-bottom {
    background-position: 100% 100%;
}

      .inner-bottom .usp-wrap:after{
     display: none;
   }

   .inner-bottom .usp-wrap{
     width: 100%;
   }

   blockquote {
    padding: 3% 4% 3% 8%!important;
}

   blockquote:after{
     display: none;
   }

      .error-page .inside-content h1{
     font-size: 2.7em;
     margin-bottom: 0em;
   }

   .error-page .error{
     font-size: 10em;
   }

.error-page .entry-content {
    font-size: 1.2em;
    padding: 0% 3%;
    margin-top: 0.1em;
}   

.close-cta{
  font-size: 1em;
}


.client-response .bg-inner p {
    font-size: 1.5rem;
    padding: 0% 0%;
}

.client-response .bg-inner h1 {
    font-size: 3.1rem;
}

.thank-you .bg-inner h1 {
    font-size: 4.2rem;
}

.thank-you .button{
  margin: .5em 0;
}
 
.thank-you {
    padding: 13% 1% 5% 1%;
    margin-top: 15%;
} 

.client-response {
    padding: 15% 1% 7% 1%;
    margin-top: 16%;
}
 

.hide-for-small-only{
  display: none!important;
}

.help-links a{
  text-align: center;
} 
 
.show-for-small-only{
  display: block!important;
}
  

   .compressed-sec {
    padding: 5% 8%;
    background: #ededed;
}

.compressed-sec .col-md-8{
  width: 66.6666666667%;
}

   .compressed-sec .col-md-4{
  width: 33.3333333333%;
}

 }



 @media screen and (max-width: 55em) and (min-width: 39.939em) {



/* NEW QUERIES */

.sliderfull{
  margin-top: 18%;
}
   
   .slider-header{
     font-size: 3.1em;
   }
   
/* END NEW QUERIES */

.logo-foot img{
  width: 24em;
}
 
.banner-head{
  font-size: 1.3em;
}

.compressed-sec {
    padding: 5% 8%;
    background: #ededed;
}

.compressed-sec .col-md-8{
  width: 66.6666666667%;
}

   .compressed-sec .col-md-4{
  width: 33.3333333333%;
}
   
.col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
}

   .side-form iframe {
    height: 51em!important;
}

   .quick-nav.adjust{
     top: 5.5em;
   }

.logo-image a {
    margin-top: 0.1em;
    transform: scale(1);
    top: 0em;
}   

    .logo-image img {
    width: 13em;
    left: -0.3em;
    top: 0.1em;
}


   .single-blog {
    position: relative;
    padding: 5% 4% 4% 4%;
}

   
.insideimage {
    padding: 20% 4% 0% 4%;
    margin-top: 10.5%;
    border-bottom: 0.5em solid #f28720;
    background-image: none;
}

   .insideimage:after{
     width: 155%;
     border-radius: 0;
   }
   
.client-response {
    padding: 16% 2% 7% 2%;
    margin-top: 7%;
}
   
   .smallbar .logo-image img {
    width: 11em;
}

.error-page {
    padding: 15% 4% 12% 4%;
    margin-top: 10%;
}

.sliderfull .col-sm-12, .section-1 .col-sm-12, .section-2 .col-sm-12, .section-3 .col-sm-12, .section-4 .col-sm-12, .section-6 .col-sm-12{
    width: 100%!important;
}

.section-1 .col-md-3{
  width: 50%!important;
}
   
.sliderfull .col-md-7{
  width: 100%;
}
   
.show-for-small-only{
  display: block!important;
} 

.insideimage .slider-usp .usp-box{
  font-size: .73em;
}

.insideimage:before{
  display: none;
}

.inner-bottom{background-position: 100% 100%;}   

   .inner-bottom .usp-wrap:after{
     display: none;
   }

   .inner-bottom .usp-wrap{
     width: 100%;
   }
   
.side-label{
  font-size: 2em;  
} 

.insideimage .slider-usp{
  width: 90%;
  margin-right: auto;
  position: relative;
}

.insideimage .col-lg-6{
  padding-right: 39%;
}

.insideimage .slider-usp.row>*{
  padding: 0 1%;
}

.error-page .error{
  font-size: 11em;
}

.close-cta{
  font-size: 1.1em;
}

.hide-for-small-only{
  display: none!important;
}
 
.help-links a{
  text-align: center;
}

   .error-page .inside-content h1{
     font-size: 2.9em;
     margin-bottom: 0em;
   }

.error-page .entry-content {
    font-size: 1.3em;
    padding: 0% 3%;
    margin-top: 0.1em;
}   
 
.insideimage .col-md-4{
  width: 33.33%!important;
}


   .modal-dialog iframe {
    height: 43em!important;
}

.client-review{
  text-align: center;
  padding: 24% 4% 5% 4%;
  margin-top: 12%;
}

.client-review img, .client-review .btn{
  margin: auto;
}

.client-review .row-cols-5 {
    padding: 0% 8%;
    margin-top: 2%;
}

.client-review .row-cols-5 .col{
  padding: 0.5%;
}

.client-review h1{
  font-size: 3.5em;
}   

.resp-txt {
    font-size: 1.5em;
}

.copyright{
  font-size: .9em!important;
}

.client-response .bg-inner p {
    font-size: 1.5rem;
}

.thank-you .bg-inner h1 {
    font-size: 5rem;
}

.thank-you {
    padding: 9% 1% 5% 1%;
    margin-top: 13%;
}

.thank-you .button{
  margin: .5em 0;
}


.inside-content .col-md-8, .inside-content .col-md-4 {
    flex: 0 0 auto;
    width: 100%;
} 

 }


 @media screen and (max-width: 59.999em) and (min-width: 55.001em) {


/* NEW QUERIES */

 
   .slider-header{
     font-size: 2.2em;
   }

   .sliderfull{
     margin-top: 15%;
   }


/* END NEW QUERIES */

.sched-row a strong{
  font-size: 2em;
}   

.side-form iframe {
    height: 44em!important;
}

.smallbar .logo-image img {
    width: 11em;
}
  
 .quick-nav.adjust {
    top: 4em;
} 
 

.client-review {
    margin-top: 12%;
    padding: 14% 4% 5% 4%;
}   

   
.logo-image a {
    margin-top: .1em;
    transform: scale(1);
    top: 0em;
}   

 
.logo-image img{
  width: 15em;
  top: 0;
}
 
   
.thank-you {
    margin-top: 10%;
}   

.sliderfull .col-md-7{
  width: 100%;
}
  
.inside-content .col-md-8, .inside-content .col-md-4 {
    flex: 0 0 auto;
    width: 100%;
}

.insideimage .slider-usp .usp-box{
  font-size: .8em;
}

.insideimage {
    margin-top: 15.5%;
    padding: 11% 2% 1% 2%;
    background-size: 67%;
}

.rev-sec-in .sec4-header {
    font-size: 2.3em;
}

   .rev-sec-in .btn{
     font-size: .748em;
   }   

.side-coup .btn-primary{
  font-size: .9em;
}   
   
 
.banner-head{
  font-size: 1.3em;
}

.insideimage .activate a{
  font-size: 1em;
}

 

.insideimage .slider-usp{
  width: 53%;
  font-size: .84em;
}

.close-cta{
  font-size: 1.1em;
} 

.site-footer .bullet-list li{
  font-size: .9em;
}

.sched-row a{
  font-size: 0.9em;
}   

.error-page {
    padding: 11% 4% 6% 4%;
    margin-top: 10%;
}


.resp-txt {
    font-size: 1.5em;
}

.client-review h1{
  font-size: 4.5em;
}

.sched-row:after {
    content: " ";
    position: absolute;
    bottom: 35%;
    height: 2.4em;
    width: .4em;
    left: 50.8%;
}

.sliderfull .btn{
  font-size: 1em;
}

.copyright{
  font-size: .9em!important;
}   

.hide-for-small-only{
  /* display: none; */
}
 
.show-for-small-only{
  display: none;
}
    .sidebar.show-for-small-only{
  display: block!important;
     width: 100%;
}

 }


 @media screen and (min-width: 60em) and (max-width: 63.938em) {
 
/* NEW QUERIES */

   .slider-header{
     font-size: 2.2em;
   }

   .sliderfull{
     margin-top: 8%;
   }

/* END NEW QUERIES */

 
.inside-content .col-md-8, .inside-content .col-md-4 {
    flex: 0 0 auto;
    width: 100%;
}
 
   .desk-nav{
     display: block;
   }

   .mobile-nav, .quick-nav{
     display: none;
   }

   .menu>li a {
    font-size: 0.65em;
    padding: 0.7em 1.4em;
}

   .top-bar .menu>li a {
    font-size: 0.67em;
}

.menu-top-menu-container .menu>li a{
  font-size: 0.7em;
  padding: .4em .7em;
}

.top-menu .btn{
  font-size: .8em;
}

.smallbar .menu-top-menu-container .menu>li a{
  font-size: .68em;
}

.smallbar    .menu>li a {
    font-size: 0.6em;
}

.smallbar .desk-nav .top-bar .btn-primary{
  font-size: 0.7em;
}

.insideimage {
    padding: 12% 3% 1% 3%;
    margin-top: 7.5%;
    background-size: 71%;
}


  .logo-image img {
    width: 11em;
}

   .section-protecta h1{
     font-size: 2em;
   }
  

.client-review {
    padding: 13% 4% 5% 4%;
}   
   
.banner-head{
  font-size: 1.3em;
}

.insideimage .activate a{
  font-size: 1em;
}


.smallbar .logo-image img {
    width: 10em;
}

.smallbar .desk-nav .btn-primary{
  font-size: 0.7em;
}


.copyright{
  font-size: .9em!important;
}   

.sched-row a ,.sched-row button {
    padding: 3% 0% 3% 0%;
    font-size: .9em;
}


.close-cta{
  font-size: 1.1em;
}

.home-form .row {
    font-size: 1.3em;
}



html {
    font-size: 15px!important;
}
 

.show-for-small-only{
  display: none;
}

   .sidebar.show-for-small-only{
  display: block!important;
     width: 100%;
}


 }


 @media screen and (max-width: 75em) and (min-width: 63.939em) {
 

/* NEW QUERIES */
 
 
   .slider-header{
     font-size: 2.2em;
   }

   .sliderfull {
    margin-top: 8%;
}

/* END NEW QUERIES */


   .desk-nav{
     display: block;
   }

   .mobile-nav, .quick-nav{
     display: none;
   }

   .menu>li a {
    font-size: 0.69em;
}

.menu-top-menu-container .menu>li a {
    font-size: 0.68em;
    padding: 0.4em .9em;
}

.top-menu .btn{
  font-size: .8em;
}

.smallbar .menu-top-menu-container .menu>li a{
  font-size: 0.7em;
}

.smallbar    .menu>li a {
    font-size: 0.61em;
}

.smallbar .desk-nav .btn-primary{
  font-size: 0.8em;
}


.smallbar .desk-nav .top-bar .btn-primary{
  font-size: 0.7em;
}
 

.contact-desk a{
  font-size: 1.8em;
}

.logo-image img {
    width: 11em;
}

   .section-protecta h1{
     font-size:2.2em;
   }

   .section-protectc .usp-box {
    height: 17em;
    color: black;
     font-size: .7em;
}


.client-review {
    padding: 13% 4% 5% 4%;
}   

.banner-head{
  font-size: 1.3em;
}

.insideimage .activate a{
  font-size: 1em;
}


.smallbar .logo-image img {
    width: 8em;
}
 
html {
    font-size: 16px!important;
}

 
.copyright{
  font-size: .9em!important;
}   

.close-cta{
  font-size: 1.2em;
}

.sched-row a ,.sched-row button{
  font-size: .9em;
}

.show-for-small-only{
  display: none;
}



 }


 @media screen and (max-width: 85em) and (min-width: 75.001em) {

/* NEW QUERIES */
   
   .slider-header{
     font-size: 2.5em;
   }

   .sliderfull {
    margin-top: 7%;
}
 
/* END NEW QUERIES */


   html {
    font-size: 17px!important;
}

.home-form iframe{
  height: 43em!important;
}
  
   .desk-nav{
     display: block;
   }

   .mobile-nav, .quick-nav{
     display: none;
   }

  

.menu>li a {
    padding: 0.7em 1.3em;
    font-size: 0.7em;
}

.menu-top-menu-container .menu>li a{
  font-size: 0.7em;
}

.smallbar .menu-top-menu-container .menu>li a{
  font-size: .79em;
}

.top-menu .btn{
  font-size: .9em;
}

.smallbar .menu>li a {
    font-size: 0.67em;
}

.logo-image img {
    width: 14em;
}

.side-rev .btn{
  font-size: 1em;
}

 

.smallbar .logo-image img {
    width: 8em;
}

.copyright{
  font-size: .9em!important;
}   

.close-cta{
  font-size: 1.3em;
}

.sched-row a ,.sched-row button {
    padding: 1% 2% 2% 2%;
}

.show-for-small-only{
  display: none;
}


 } 



 @media screen and (max-width: 95.001em) and (min-width: 85.001em) {


/* NEW QUERIES */

   .sliderfull {
    margin-top: 6%;
}
   
   .slider-header{
     font-size: 2.94em;
   }

/* END NEW QUERIES */

   html {
    font-size: 17px!important;
}
 
   .desk-nav{
     display: block;
   }

   .mobile-nav, .quick-nav{
     display: none;
   }

   .menu>li a {
    font-size: 0.9em;
}

.menu-top-menu-container .menu>li a{
  font-size: .8em;
}

.smallbar    .menu>li a {
    font-size: 0.8em;
}

.smallbar .menu-top-menu-container .menu>li a{
  font-size: 0.9em;
}
 

.smallbar .desk-nav .top-bar .btn-primary{
  font-size: 0.7em;
}

  .logo-image img {
    width: 14em;
}


.smallbar .logo-image img {
    width: 11em;
}

   .section-8:after{
     width: 52%;
   }
 

.sched-row:after {
    content: " ";
    position: absolute;
    bottom: 35%;
    height: 2.4em;
    width: .4em;
    left: 50.8%;
}

.sliderfull .btn{
  font-size: 1em;
}

.copyright{
  font-size: .9em!important;
}   


.close-cta{
}

.show-for-small-only{
  display: none;
}

 }


 @media screen and (max-width: 125em) and (min-width: 95.001em) {


/* NEW QUERIES */


   .sliderfull {
    /* margin-top: 12%; */
}
   
   .slider-header{
     font-size: 3.24em;
   }

 
   
/* END NEW QUERIES */

   html {
    font-size: 17px!important;
}
  
   .desk-nav{
     display: block;
   }

   .mobile-nav, .quick-nav{
     display: none;
   }
  

.copyright{
  font-size: .9em!important;
}   

.close-cta{
  font-size: 1.6em;
}

.sched-row a ,.sched-row button {
    padding: 3% 0% 3% 0%;
}


.show-for-small-only{
  display: none;
}
 


 } 
  
  
 @media screen and (min-width: 125.001em) and (max-width: 999.9em) {
 

/* NEW QUERIES */
 
   
   .sliderfull {
    margin-top: 3%;
}
   
   .slider-header{
     font-size: 3.64em;
   }

 

/* END NEW QUERIES */


.sliderfull {
} 
 
 
html {
    font-size: 17px!important;
}
 

   .desk-nav{
     display: block;
   }

   .mobile-nav, .quick-nav{
     display: none;
   }

   .menu>li a {
    font-size: 1.1em;
}
.smallbar .desk-nav .btn-primary{
  font-size: .9em;
}


.copyright{
  font-size: .9em!important;
}   

.sched-row a ,.sched-row button{
    padding: 3% 0% 3% 0%;
    font-size: 1.1em;
}

.show-for-small-only{
  display: none;
}

 }



/* Footer – centre Location column and everything below it at 880px and narrower */
@media (max-width: 880px) {
  #colophon > .row > div:not(.logo-foot),
  #colophon > .row > div:not(.logo-foot) .footer-txt {
    text-align: center !important;
  }

  /* Service Areas menu */
  #colophon .footer-service-areas {
    padding-left: 0 !important;
    margin-left: 0 !important;
    list-style: none;
  }
  #colophon .footer-service-areas li {
    text-align: center;
  }

  /* Helpful Links */
  #colophon .help-link {
    display: block;
    text-align: center;
  }

  /* Request Service button */
  #colophon .sec4-btns {
    display: flex;
    justify-content: center;
    text-align: center;
  }
}



/* ===== Desktop header: wider container + logo-sized column ===== */

/* Header only: content below stays 1320. Top bar widens too so it lines up. */
@media (min-width: 1400px){
  .desk-nav .container{ max-width: 1600px; }
}

/* Breathing room between logo and nav */
.main-bar .logo-image{ padding-right: 32px !important; }

/* Nav takes all leftover space and centers between logo and CTAs */
.head-right .rnavigation-full{ flex: 1 1 auto; }
.main-nav .menu{ justify-content: center; }

/* 1200–1399: Bootstrap container drops to 1140, so tighten a bit */
@media (min-width: 1200px) and (max-width: 1399px){
  .main-bar .logo-image img{ height: 50px; }
  .main-nav .menu{ gap: 14px; }
  .head-right{ gap: 16px; }
}