html {
  scroll-behavior: smooth;
}

/* Housecall Pro's own trigger button (see header.php) — kept in the DOM
   for the widget script to bind to, but hidden visually so it doesn't
   render as a stray floating "Book online" tab. */
#hcp-trigger{
  display: none !important;
}


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;
}

body .btn-primary, body .btn-secondary{
  border: 2px solid transparent;
  text-transform: uppercase;
  padding: 0.72em 1.6em;
  margin: 1em 0 0 0;
  letter-spacing: .09em;
  margin: auto;
  display: block;
  position: relative;
  font-weight: 700;
  font-family: 'Oswald', sans-serif;
  border-radius: 0em;
  transition: all .3s ease-in-out;
}

body .btn-primary{
  background-color: #d62232;
  border-color: #d62232;
  color: #ffffff !important;
}

body .btn-primary:hover{
  background-color: #ffffff;
  border-color: #d62232;
  color: #d62232 !important;
}

body .btn-secondary{
  background-color: transparent !important;
  border-color: #1f2c5f;
  color: #1f2c5f !important;
}

/* BUG FIX (round 2): the base rule above sets
   "background-color: transparent !important", which â€” same as the color
   issue â€” was beating this hover rule's plain background-color, so the
   background never actually turned navy on hover. Net effect: white
   text (from the round-1 fix) sitting on the still-transparent/white
   page background behind it, i.e. still invisible. Needs !important on
   all three properties to actually override the base rule's !importants. */
body .btn-secondary:hover{
  background-color: #1f2c5f !important;
  border-color: #1f2c5f !important;
  color: #ffffff !important;
}

.btn-primary span, .btn-secondary span{
  margin-right: .5em;
}

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

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

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


section.no-results.not-found {
    display: none !important;
}


.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;
}

 a[href^="tel"]{
    color:inherit;
    text-decoration:none;
    margin-bottom: 0%;
    display: block;
 }


.mobile-nav .logo-block a[href^="tel"]{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 3.2em;
  height: 3.2em;
  margin-left: auto;
  margin-right: .8em;
  border-radius: 50%;
  background: #d62232;
  transition: background .3s ease-in-out;
}

.mobile-nav .logo-block a[href^="tel"] span{
  font-size: 1.5em;
  color: #ffffff !important;
}

.mobile-nav .logo-block a[href^="tel"]:hover{
  background: #1f2c5f;
}

.mobile-nav .logo-block a[href^="tel"]:hover{
  background: #1f2c5f;
}

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/sp/icomoon.eot?kst8ny');
  src:  url('/wp-content/themes/plumberseo-bootstrap/fonts/sp/icomoon.eot?kst8ny#iefix') format('embedded-opentype'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/sp/icomoon.woff2?kst8ny') format('woff2'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/sp/icomoon.ttf?kst8ny') format('truetype'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/sp/icomoon.woff?kst8ny') format('woff'),
    url('/wp-content/themes/plumberseo-bootstrap/fonts/sp/icomoon.svg?kst8ny#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&display=swap');

[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-stars-pn:before {
  content: "\e9fc";
}



.icon-pac-finance:before {
  content: "\e9cd";
}


.icon-aff-pricingcentral-2:before {
  content: "\e95b";
}

.icon-comm-involv-proserv:before {
  content: "\e9a4";
}


.icon-drivers-license-o1:before {
  content: "\f2c4";
}

.icon-emergency-serv:before {
  content: "\e971";
}

.icon-max-24-7:before {
  content: "\e9ac";
}

.icon-drivers-license-o1:before {
  content: "\f2c4";
}

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

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

.icon-bb-money:before {
  content: "\e9cc";
}

.icon-drivers-license:before {
  content: "\f2c2";
}

.icon-max-24-7:before {
  content: "\e9ac";
}

.icon-fast-turn-ic:before {
  content: "\e957";
}

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

.icon-trsut-tech-n:before {
  content: "\e966";
}


.icon-thumbs-pm:before {
  content: "\e90c";
  font-size: 2.2em;
}

.icon-bb-thumbsup:before {
  content: "\e977";
}

.icon-drain-cleaning:before {
  content: "\eb0f";
}

.icon-max-sewer-replace:before {
  content: "\e981";
}

.icon-x1:before {
  content: "\e904";
}

.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-facebook-square:before {
  content: "\f082";
}

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

.icon-bb-truck:before {
  content: "\e9cb";
}



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

.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-instagram4:before {
  content: "\e938";
}

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

.icon-pinterest-square:before {
  content: "\f0d3";
}

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

.icon-sewer-rc:before {
  content: "\eacf";
}

.icon-drain-cleaning:before {
  content: "\eb0f";
}

.icon-water-soft-pm:before {
  content: "\e917";
}

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


.icon-water-main-cstm:before {
  content: "\e970";
}

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

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

.icon-kc-phone:before {
  content: "\e9be";
}

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

.icon-bb-truck:before {
  content: "\e9cb";
}

.icon-pac-truck:before {
  content: "\e9ca";
}

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

}

.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";
}
.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---------------------------------  */


.phone-vanity {
    margin-top: 0em;
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 1.2em;
    letter-spacing: .2em;
    text-transform: uppercase;
    text-align: center;
    color: #5b6472;
}

.phone-vanity span{
  color: #d62232;
}



/* Search Bar & Page */

 /* Top Bar Section CSS  */


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

.desk-nav{
  display: none;
  width: 100%;
  max-width: none;
  padding: 0.5% 0% 0% 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: 0% 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: #1f2c5f;
    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 #d62232;
}

.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: #d62232;
  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;
}

 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: #044ba1;
  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: #d62232;
}

.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: #044ba1;
}


.top-bar .menu>li a span{
  color: #044ba1;
}

.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: #044ba1!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: #1f2c5f;
  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: #d62232;
    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: #044ba1;
  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;
}


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

#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: 9%;
}


.static-slide{
    background-image: url('/wp-content/uploads/2026/09/Banner-Updated1.webp');
    background-repeat: no-repeat;
    background-position: center right;
    background-size: cover;
    position: relative;
    z-index: 2;
    margin-top: 0%;
    padding: 8em 5%;
    min-height: 26em;
    display: flex;
    align-items: center;
    color: white;
    border-bottom: 0.4em solid #d62232;
    text-align: left;
}

.static-slide .slide-content .btn{
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 1em 1em 0 !important;
  flex: 0 0 auto;
}


@media (max-width: 959px) {
    .static-slide{
        background-image: url('/wp-content/uploads/2026/09/Banner-Updated1-mb.webp');
        background-position: top right;
        background-size: cover;
        margin-top: 0%;
        padding: 10em 5%;
    }
}



.static-slide:before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 65%;
  height: 100%;
  background: linear-gradient(90deg, rgba(10,12,32,.92) 0%, rgba(10,12,32,.72) 60%, rgba(10,12,32,0) 100%);
  z-index: 1;
}

.static-slide .col-sm-12{
  position: relative;
  z-index: 2;
}

.slider-header{
  line-height: 1.05;
  font-size: 3.2em;
  position: relative;
  letter-spacing: .02em;
  color: #ffffff;
  margin-bottom: 3%;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  text-shadow: -0.05em 0.05em rgba(0,0,0,.4);
  text-align: left;
}

/* NOTE: entrance animation is handled by the animate__animated /
   animate__fadeInLeft / animate__delay-1s classes already coming out of
   the ACF "Header" field choice on this div ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â no separate @keyframes
   needed here. Adding a second "fadeInLeft" keyframe in this file would
   collide with animate.css's own keyframe of the same name. */

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

.slider-header span{
  display: block;
  color: #d62232;
}

.static-slide .slide-content{
  position: relative;
  z-index: 2;
  text-align: left;
  max-width: 40em;
}

.static-slide .slide-content .check-list{
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  padding: 0!important;
  margin: 0 0 1.5em 0;
  text-align: left;
}

.static-slide .slide-content .check-list li{
  font-size: 1em;
  font-weight: 600;
  color: #ffffff;
  margin: 0 1.5em .6em 0;
  display: flex;
  align-items: center;
}

.static-slide .slide-content .check-list li:before{
  content: "\f00c";
  font-family: 'icomoon' !important;
  color: #1f2c5f;
  margin-right: .5em;
  font-size: 1.1em;
}

.static-slide .slide-content .btn{
  display: inline-flex;
  align-items: center;
  margin: 0 1em 1em 0;
  max-width: none;
}

.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;
}


.static-slide .slide-content .check-list{
  list-style: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
  padding: 0 !important;
  margin: 0 0 1.5em 0 !important;
  border: none !important;
  width: auto !important;
  text-align: left !important;
}

.static-slide .slide-content .check-list li{
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  padding: 0 !important;
  border-bottom: none !important;
  margin: 0 1.5em .6em 0 !important;
  font-size: 1em;
  font-weight: 600;
  line-height: 1.3;
  color: #ffffff;
}

.static-slide .slide-content .check-list li:before{
  content: "\f00c" !important;
  font-family: 'icomoon' !important;
  color: #1f2c5f !important;
  position: static !important;
  display: inline-block !important;
  font-size: 1em;
  margin-right: .5em;
}

.static-slide .slide-content .check-list li:after{
  content: none !important;
}

/* --- Buttons: side-by-side, sized to content --- */

.static-slide .slide-content .btn{
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 1em 1em 0 !important;
  flex: 0 0 auto !important;
}

/* --- Secondary button: white outline for use over the dark hero photo --- */

.static-slide .slide-content .btn-secondary{
  background-color: transparent !important;
  border-color: #ffffff !important;
  color: #ffffff !important;
}

.static-slide .slide-content .btn-secondary:hover{
  background-color: #ffffff !important;
  color: #1f2c5f !important;
}


.hero-check-list{
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 1.5em 0;
  padding: 0;
}

.hero-check-list li{
  display: flex;
  align-items: center;
  margin: 0 1.5em .6em 0;
  font-size: 1em;
  font-weight: 600;
  line-height: 1.3;
  color: #ffffff;
}

.hero-check-list li:before{
  content: "\f00c";
  font-family: 'icomoon';
  color: #0D56A6;
  margin-right: .5em;
  font-size: 1.1em;
}

.hero-cta-row{
  display: flex;
  flex-wrap: wrap;
  /* align-items: center !important; */
  gap: 1em;
}

.hero-btn{
  display: inline-flex !important;
  align-items: center;
  box-sizing: border-box;
  height: 3.3em;
  line-height: 1;
  padding: 0 1.4em;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  text-decoration: none;
  border: 2px solid transparent;
  border-radius: 0;
  transition: all .3s ease-in-out;
  cursor: pointer;
}


.hero-btn span{
  display: inline-block;
  line-height: 1;
  margin-right: .5em;
  font-size: 1.1em;
}



.hero-btn-call{
  background-color: #d62232;
  border-color: #d62232;
  color: #ffffff;
}

.hero-btn-call:hover{
  background-color: #ffffff;
  border-color: #d62232;
  color: #d62232;
}

.hero-btn-request{
  background-color: transparent;
  border-color: #ffffff;
  color: #ffffff;
}

.hero-btn-request:hover{
  background-color: #ffffff;
  border-color: #ffffff;
  color: #1f2c5f;
}



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

 /* Section-1 CSS  */


.section-1 {
    position: relative;
    z-index: 0;
    padding: 4% 2% 3% 2%;
    background-size: 100%;
    background-position: top;
    background-repeat: no-repeat;
    background-color: white;
}

.section-1 .wrap1{
  align-items: flex-start;
}

.sec1-intro h1{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 2.8em;
  line-height: 1.2;
  color: #16233e;
  margin-bottom: .5em;
}

.sec1-intro h1 span{
  display: block;
  color: #d62232;
}

.sec1-intro p{
  color: #000000;
  font-size: 1.05em;
  line-height: 1.6;
  margin-bottom: 1.5em;
}

.sec1-logo{
  margin-top: 2em;
  max-width: 39em;
}

.sec1-logo img{
  width: 100%;
  height: auto;
  display: block;
}

.sec1-form-col .home-form{
  background: #d62232;
  padding: 2.5em 2em;
  border-radius: .4em;
  color: #ffffff;
}

.sec1-form-col .home-label{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 2em;
  letter-spacing: .03em;
  color: #ffffff;
  text-align: center;
  margin-bottom: .3em;
}

.sec1-form-col .home-sub{
  text-align: center;
  color: #ffffff;
  font-size: .9em;
  line-height: 1.4;
  opacity: .9;
  margin-bottom: 0em;
}

.form{
  position: relative;
  background: #1f2c5f;
  width: 90%;
  margin: auto;
  padding: 1em;
}

.form .with_frm_style .frm_primary_label{
  color: white;
}

.form iframe{
  margin-top: .5em;
  height: 41em!important;
}

.form-label{
  position: relative;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 1.5em;
  color: white;
}

.sec1-vanity-number {
    margin-top: .6em;
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 1.8em;
    letter-spacing: .04em;
    text-transform: uppercase;
    text-align: center;
    color: #16233e;
}

.sec1-vanity-number span{
  color: #d62232;
}

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



/* Section-2 CSS  */
.section-2{
 padding: 3% 4% 0% 2%;
 position: relative;
 z-index: 3;
 background-size: cover;
 background-repeat: no-repeat;
 background-position: bottom;
}

.sec2-header{
  text-align: center;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 2.8em;
  color: #16233e;
  margin-bottom: 0em;
}

.sec2-header strong,
.sec2-header span{
  color: #d62232;
}

.rev-btns{
  max-width: 40em;
  margin: 2em auto 0 auto;
  justify-content: center;
  gap: 1em;
}

.rev-btns .col-sm-12{
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.rev-btns .btn{
  display: inline-flex;
  align-items: center;
  width: auto;
  max-width: none;
  margin: 0;
}

.rev-btns .btn span{
  margin-right: .5em;
}

@media (max-width: 47.999em){
  .rev-btns{
    flex-direction: column;
  }

  .rev-btns .col-sm-12{
    width: 100%;
    margin-bottom: 1em;
  }

  .rev-btns .btn{
    width: 100%;
    justify-content: center;
  }
}

/* Top Services (redesigned to white 4-across cards) */
.top-services{
  position: relative;
  padding: 3em 2% 1em 3%;
  z-index: 3;
  margin-bottom: 0%;
}

.top-services .carousel-control-prev,
.top-services .carousel-control-next{
  opacity: 1;
  width: 2.2em;
  height: 2.2em;
  top: 45%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: #d62232;
  color: #ffffff;
  font-size: 1em;
  z-index: 33;
}

.top-services .carousel-control-prev{
  left: -1%;
}

.top-services .carousel-control-next{
  right: 1%;
}

.top-services .carousel-inner{
  padding: 0% 3.5%;
}

.top-services .row{
  margin: 0 -.7em;
}

.top-services .col-3{
  padding: 0 .7em;
  margin-bottom: 1.5em;
}

.top-services a.ts-card{
  position: relative;
  display: block;
  height: 100%;
  min-height: 19em;
  color: #16233e;
  text-decoration: none;
  text-align: left;
  overflow: visible;
  background: #ffffff;
  border: 1px solid #e3e6ec;
  border-radius: .4em;
  box-shadow: 0 .3em 1em rgba(0,0,0,.06);
  padding: 1.75em 1.5em 3.5em 1.5em;
  transition: all .3s ease-in-out;
}

.top-services a.ts-card:hover{
  background: #ffffff;
  color: #16233e;
  box-shadow: 0 .6em 1.4em rgba(0,0,0,.14);
  transform: translateY(-.2em);
}

.top-services a.ts-card img{
  display: none;
}

.top-services .ts-icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3em;
  height: 3em;
  margin-bottom: 1em;
  border-radius: .35em;
  background: #1f2c5f;
}

.top-services .ts-icon span{
  display: block;
  position: static;
  width: auto;
  font-size: 1.5em;
  text-align: center;
  color: #ffffff;
}

.top-services a.ts-card .servi-label{
  position: static;
  width: auto;
  bottom: auto;
  left: auto;
  text-transform: uppercase;
  font-size: 1em;
  letter-spacing: .02em;
  color: #16233e;
  text-shadow: none;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: .5em;
}

.top-services a.ts-card p{
  position: static;
  opacity: 1;
  width: auto;
  padding: 0;
  bottom: auto;
  left: auto;
  color: #5b6472;
  font-size: .85em;
  line-height: 1.5;
  margin-bottom: 0;
}



.top-services a.ts-card{
  border: 1px solid #1f2c5f;
}

.top-services a.ts-card{
  position: relative;
  border: none;
  z-index: 1;
}

.top-services .carousel-inner{
  padding-top: 10px;
}

.top-services a.ts-card{
  border: 1px solid #1f2c5f;
}


.top-services .ts-learn-more{
  position: absolute;
  left: 1.5em;
  bottom: 1.5em;
  color: #d62232;
  font-weight: 700;
  font-size: .85em;
  text-transform: uppercase;
  letter-spacing: .04em;
  transition: color .3s ease-in-out;
}

.top-services .ts-learn-more span{
  margin-left: .3em;
  font-size: .9em;
}

.top-services a.ts-card:hover .ts-learn-more{
  color: #1f2c5f;
}

.ts-box-1 .servi-label{
  left: 2em;
}


.top-services a.ts-card{
  border: 2px solid #1f2c5f;
  border-top-width: 6px;
  border-radius: 1em;
}


/* Base .servi-label used by the mobile Top Services carousel
   (topservicesmobile) ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â kept as-is, untouched by the desktop redesign
   above since that's scoped to ".ts-card .servi-label" specifically. */
.servi-label{
  position: absolute;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  bottom: 0.9em;
  left: 0em;
  font-size: 0.9em;
  line-height: 1.1;
  transition: all .3s ease-in-out;
  text-shadow: -0.1em 0.05em #00000047;
  font-weight: 700;
  width: 100%;
}



.servi-label strong{
  display: block;
}

/* Mobile Top Services carousel (#topservicesmobile) — this uses its own
   markup (.servi-con / .servi-label / p, not .ts-card/.ts-icon like the
   desktop version), so it never picked up the desktop redesign above
   and was rendering with no card styling at all. Scoped to the #id so
   the desktop cards and the generic .servi-label rule above (used
   elsewhere) are untouched. Sized in em/% so it scales across every
   width this carousel shows at (it swaps in/out of view across several
   stacked "show/hide-for-small-only" breakpoints elsewhere in this file). */
#topservicesmobile{
  position: relative;
}

#topservicesmobile .carousel-item > a{
  display: block;
  text-decoration: none;
  background: #d62232;
  border-radius: 1em;
  margin: 0 2.8em;
  padding: 1.6em 1.4em;
}

#topservicesmobile .carousel-item > a .row{
  margin: 0;
}

#topservicesmobile .servi-con{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2em;
  height: 3.2em;
  border-radius: .5em;
  background: #1f2c5f;
}

#topservicesmobile .servi-con span{
  display: block;
  color: #ffffff !important;
  font-size: 1.6em;
}

#topservicesmobile .servi-label{
  position: static;
  width: auto;
  bottom: auto;
  left: auto;
  color: #ffffff;
  text-shadow: none;
  font-size: 1.05em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .02em;
  line-height: 1.25;
  margin-bottom: .25em;
}

#topservicesmobile p{
  color: #ffe2df;
  font-size: .85em;
  line-height: 1.4;
  margin: 0;
}

#topservicesmobile .carousel-item > a img{
  display: none;
}

/* Navy pill-shaped prev/next controls flanking the card, instead of the
   small red circles the desktop version uses (that base rule is
   ".top-services .carousel-control-prev/next" — this #id-scoped
   override wins without touching the desktop carousel). */
#topservicesmobile .carousel-control-prev,
#topservicesmobile .carousel-control-next{
  width: 2.2em;
  height: 4em;
  top: 50%;
  transform: translateY(-50%);
  border-radius: .6em;
  background: #1f2c5f;
  opacity: 1;
}

#topservicesmobile .carousel-control-prev{
  left: 0;
}

#topservicesmobile .carousel-control-next{
  right: 0;
}

@media (max-width: 400px){
  #topservicesmobile .carousel-item > a{
    margin: 0 2.4em;
    padding: 1.3em 1.1em;
  }

  #topservicesmobile .servi-con{
    width: 2.7em;
    height: 2.7em;
  }

  #topservicesmobile .servi-con span{
    font-size: 1.3em;
  }

  #topservicesmobile .servi-label{
    font-size: .95em;
  }

  #topservicesmobile p{
    font-size: .8em;
  }

  #topservicesmobile .carousel-control-prev,
  #topservicesmobile .carousel-control-next{
    width: 1.9em;
    height: 3.4em;
  }
}
 /* End Top Services */


.box-3{
  border: 0!important;
}

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

 /* Section-3 CSS  */
 /* NOTE: the .usp-wrap / .usp-blk rules used to live physically under the
    old "Section-4 CSS" comment even though usp_group1 renders inside
    <section class="section-3">. Moved them up here so the CSS section
    matches the PHP section, per your section-numbering convention. */

.section-3{
  padding: 4% 4%;
  position: relative;
  z-index: 3;
  background-size: cover;
  background-position: 0% 100%;
  background-repeat: no-repeat;
  background-image: url(/wp-content/uploads/2026/07/sec3-bg.webp);
}

.sec3-image img{
  width: 100%;
  height: auto;
  display: block;
  border-radius: .5em;
}

.sec3-header {
    font-family: 'Oswald', sans-serif !important;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 2.8em;
    line-height: 1.2;
    color: #16233e;
    margin-bottom: .8em;
}

.sec3-header strong,
.sec3-header span{
  color: #d62232;
}

.usp-wrap{
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1em;
  width: 100%;
  margin: 0 0 2em 0;
}

.usp-blk{
  position: relative;
  padding: 1.1em 1.4em;
  text-align: left;
  height: auto;
  font-size: .9em;
  border: 1px solid #e3e6ec;
  border-radius: .4em;
  transition: all .3s ease-in-out;
  background: #ffffff;
}

.usp-blk .row{
  margin: 0;
}

.usp-icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3em;
  height: 3em;
  border-radius: .35em;
  background: #d62232;
}

.usp-icon span{
  display: block;
  position: static;
  width: auto;
  font-size: 1.5em;
  color: #ffffff;
}

.usp-label{
  font-size: 1.1em;
  font-weight: 700;
  text-transform: uppercase;
  color: #16233e;
  margin-bottom: .2em;
}

.usp-blk p{
  font-size: .9em;
  color: #5b6472;
  line-height: 1.5;
  margin: 0;
}

.sec3-btns{
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  margin-top: 1em;
}

.sec3-btns .btn{
  display: inline-flex;
  align-items: center;
  width: auto;
  max-width: none;
  margin: 0;
}

.sec3-btns .btn span{
  margin-right: .5em;
}

/* Mobile USP carousel (#mobile-usp1) reuses the same .usp-blk/.usp-icon
   look above so it matches the desktop version one-for-one. */
#mobile-usp1 .usp-blk{
  margin: 0 .3em;
}

@media (max-width: 47.999em){
  .sec3-btns{
    flex-direction: column;
  }

  .sec3-btns .btn{
    width: 100%;
    justify-content: center;
  }
}

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

 /* Section-4 CSS  */
 /* Dark navy panel matching the mockup, with a faint watermark image and
    a checklist below. If the sp-emblem.png path below is wrong, just
    swap the URL ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â everything else is unaffected.
    NOTE: contact_header / contact_content / contact_list / van_image /
    the second form (further down this section in the PHP) aren't part
    of the Figma frame you sent for Section-4 ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â I've left that ACF
    content in place and just made it legible on the new dark background,
    rather than deleting it. Let me know if you'd rather it be removed
    or moved elsewhere. */

.section-4{
  padding: 4% 5%;
  position: relative;
  z-index: 3;
  background-color: #1f2c5f;
  color: #ffffff;
  overflow: hidden;
  margin-bottom: -1px;
}

.section-4:before {
    content: '';
    position: absolute;
    top: 6em;
    left: 46em;
    width: 65%;
    height: 65%;
    background-image: url(/wp-content/uploads/2026/07/sec4-logo-badge.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    /* opacity: .08; */
    z-index: 0;
    pointer-events: none;
}

.section-4 > .row{
  position: relative;
  z-index: 1;
}

.section-4 > .row:first-child{
  max-width: 42em;
  margin: 0 auto 1.5em auto;
  text-align: center;
}

.sec4-header{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 3.3em;
  line-height: 1.2;
  color: #ffffff;
  margin-bottom: .5em;
}

.sec4-header strong,
.sec4-header span{
  color: #d62232;
}

.section-4 > .row:first-child p{
  color: #c9d3e6;
  font-size: 1.05em;
  line-height: 1.6;
}

.section-4 .add-row{
  margin-top: 1em;
}

/* Single "Additional Services" list, auto-flowed into 3 columns with
   native CSS columns instead of 3 separate ACF fields (the other 2
   fields the old markup pointed at don't actually exist in ACF, which
   is why those columns were blank). column-rule gives the same vertical
   divider look the old nth-child border hack was going for. */
.section-4 .service-list{
  height: auto;
  overflow: visible;
  margin-top: 0;
  width: 100%;
  column-count: 3;
  column-gap: 3em;
  column-rule: 1px solid rgba(255,255,255,.15);
}

.section-4 .service-list li{
  break-inside: avoid;
}

@media (max-width: 61.999em){
  .section-4 .service-list{
    column-count: 2;
  }
}

@media (max-width: 47.999em){
  .section-4 .service-list{
    column-count: 1;
  }
}

.sec4-closing-row{
  margin-top: 2em;
  position: relative;
  z-index: 1;
}

.sec4-closing{
  text-align: left;
  margin: 0;
  color: #c9d3e6;
  font-size: 1em;
  line-height: 1.6;
}

.sec4-btns{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 1em;
}

.sec4-btns .btn{
  display: inline-flex;
  align-items: center;
  width: auto;
  max-width: none;
  margin: 0;
}

.sec4-btns .btn span{
  margin-right: .5em;
}

/* .btn-secondary's default outline is navy-on-transparent, which is
   invisible against this section's dark navy background ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â override to
   a white outline here, matching the mockup's "Request Service" button. */
.sec4-btns .btn-secondary{
  background-color: transparent !important;
  border-color: #ffffff;
  color: #ffffff !important;
}

.sec4-btns .btn-secondary:hover {
    background-color: #ffffff !important;
    border-color: #ffffff;
    color: #1f2c5f !important;
}

@media (max-width: 47.999em){
  .sec4-closing{
    text-align: center;
    margin-bottom: 1em;
  }

  .sec4-btns{
    justify-content: center;
    flex-direction: column;
  }

  .sec4-btns .btn{
    width: 100%;
    justify-content: center;
  }
}

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


/* Section-5 CSS  */
/* Diagonal sunburst on a red field, approximated with a conic-gradient
   since there's no background image asset for it yet ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â swap in a real
   image here later if you have one, this is just a stand-in texture. */
.section-5{
 padding: 6% 4%;
 position: relative;
 z-index: 2;
 overflow: hidden;
 color: white;
 background-color: #c41c15;
  background-image: url(/wp-content/uploads/2026/07/sec5-bg.webp);
   background-size: cover;
}

.sec5-row{
  position: relative;
  z-index: 1;
}

.sec5-header{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 2.4em;
  line-height: 1.15;
  color: #ffffff;
  margin-bottom: .5em;
}

.sec5-header strong,
.sec5-header span{
  color: #ffe2df;
}

.sec5-intro p{
  color: #ffe2df;
  font-size: 1em;
  line-height: 1.6;
  margin-bottom: 1.5em;
}

.sec5-view-all{
  display: block;
  width: 100%;
  text-align: center;
  background-color: #1f2c5f;
  border-color: #1f2c5f;
  color: #ffffff;
  margin-top: 1%;
}

.sec5-view-all:hover{
  background-color: #ffffff;
  border-color: #ffffff;
  color: #1f2c5f;
}

.sec5-coup-col .row{
  margin: 0 -.6em;
}

.sec5-coup-col .col-6{
  padding: 0 .6em;
}

/* Reuse the site's existing dashed-outline .coupon / .price / .offer
   classes (already used elsewhere for coupon cards) rather than
   inventing new ones ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â just drop the skew and tighten the fit for this
   2-up carousel layout. */
.sec5-coup-col .coupon{
  transform: none;
  border-radius: .6em;
  padding: 1.8em 1.4em 2.2em 1.4em;
  margin: 0;
}

.sec5-coup-col .price{
  font-size: 2.6em;
  font-style: normal;
}

/* .price-sign (the hardcoded "$") and .price-off (the "OFF" the PHP
   wraps out of the field's own text) are both <span> elements, so they
   pick up the site's existing ".price span" rule (small, raised, and
   ".price span:last-child" removes the raise for the last one ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â which
   .price-off naturally is). Just recolor from the base green to red to
   match this mockup. */
.sec5-coup-col .price-sign,
.sec5-coup-col .price-off{
  color: #d62232;
}

.sec5-coup-col .offer{
  font-size: 1em;
  margin: .3em auto .8em auto;
}

.sec5-coup-col .coupon .btn{
  width: auto;
  display: inline-flex;
  margin: 0 0 1em 0;
}

.sec5-coup-col .coupon p{
  font-size: .72em;
  color: #c9d3e6;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 0;
  line-height: 1.4;
  padding: 0% 2%;
}

#couponcar{
  padding-bottom: 3.2em;
}

#couponcar .carousel-control-prev,
#couponcar .carousel-control-next,
#mobile-coupons .carousel-control-prev,
#mobile-coupons .carousel-control-next{
  opacity: 1;
  top: auto;
  bottom: 0;
  transform: none;
  width: 2.2em;
  height: 2.2em;
  border-radius: 50%;
  background: #ffffff;
  color: #c41c15;
  font-size: 1em;
}

#couponcar .carousel-control-prev{
  left: auto;
  right: calc(50% + .3em);
}

#couponcar .carousel-control-next{
  left: calc(50% + .3em);
  right: auto;
}

#mobile-coupons{
  padding-bottom: 3.2em;
}

#mobile-coupons .carousel-control-prev{
  left: calc(50% - 2.6em);
  right: auto;
}

#mobile-coupons .carousel-control-next{
  left: calc(50% + .4em);
  right: auto;
}

@media (max-width: 47.999em){
  .sec5-intro{
    text-align: center;
    margin-bottom: 2em;
  }

  .sec5-coup-col .col-6{
    width: 100%;
  }
}

.add-box{
  position: relative;
  padding: 0 1em;
  margin-top: 1%;
}

.add-header{
  position: relative;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: white;
  font-size: 1.2em;
  padding-bottom: .5em;
  border-bottom: 1px solid #ffffff1c;
}

.service-list {
    overflow-y: scroll;
    height: 15em;
    margin-top: 3%;
    margin-left: 0rem;
    width: 99%;
    background: #f9f9f900;
    padding: 1% 0% 1% 2%;
    overflow-x: hidden;
    text-align: left;
}

.service-list li {
    font-size: 1em;
    list-style-type: none!important;
    position: relative;
}

.service-list li a span {
    color: #059dcf;
    position: relative;
    left: 0.2em;
    top: 0.14em;
    font-size: 1.2em;
}

.service-list li a {
    display: block;
    padding: 0.4em 0.2em 0.3em 1.7em;
    position: relative;
    transition: all .3s ease-in-out;
    color: white;
    border-left: .0em solid #d62232;
    text-decoration: none;
}

/* Checkmark per list item, matching the mockup checklist. Scoped to
   Section-4 specifically since .service-list is a shared class ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â this
   keeps other pages using the default green icon-check untouched. */
.service-list li a:before{
    content: "\f00c";
    font-family: 'icomoon' !important;
    position: absolute;
    left: .3em;
    top: .5em;
    font-size: .85em;
    color: #d62232;
}

.section-4 .service-list li a:before{
    content: "\f058";
    color: #d62232;
    font-size: 1em;
}

.service-list li a:after {
    content: '';
    position: absolute;
    bottom: 0.1em;
    left: -2.4em;
    height: 1.8em;
    width: 1.8em;
    background-size: 100%;
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
    transition: all .3s ease-in-out;
    background-repeat: no-repeat;
}

.service-list li a:hover {
    background-color: #ececec;
    color: #000000;
    padding: 0.4em 0.2em 0.3em 1.4em;
    border-left: 0.7em solid #d62232;
}

.service-list li a:hover:after {
    left: 0.4em;
}

/*
 *  STYLE 1
 */
.service-list::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgb(0 0 0 / 49%);
    border-radius: 15px;
    background-color: #00000029;
}

.service-list::-webkit-scrollbar {
    width: 5px;
    /* background-color: #F5F5F4; */
}

.service-list::-webkit-scrollbar-thumb {
    border-radius: 15px;
    -webkit-box-shadow: inset 0 0 3px rgb(0 0 0 / 36%);
    background-color: #000000;
}

.coupon{
  position: relative;
  border-radius: 0em;
  letter-spacing: 0.08em;
  color: #ffffff;
  text-align: center;
  padding: 2em 2em 2.9em 2em;
  width: 100%;
  margin: 1em auto;
  background-color: #1f2c5f !important;
  outline: .3em dashed white;
  /* transform: skew(-6deg); */
  outline-offset: -1em;
}

.price{
  position: relative;
  font-size: 4.1em;
  color: white;
  margin: 0.2em 0;
  line-height: 1;
  font-weight: 900;
  font-style: italic;
}

.price span{
  font-size: .58em;
  color: #d62232;
  position: relative;
  top: -.5em;
}

.price span:last-child{
  top: auto;
}

.coupon .btn{
  width: 95%;
  z-index: 233;
}

.offer{
  position: relative;
  font-size: 3em;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 1.5em;
  line-height: 1.1;
  margin: .5em auto 0.8em auto;
}

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

.coupon p{
  font-size: 0.8em;
  text-transform: uppercase;
  margin-top: 3em;
  letter-spacing: 0.03em;
}

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

/* Coupons Page (/coupons/) CSS — reuses the homepage Section-5 coupon
   card look (navy dashed-outline box, red "$" + "OFF", red button)
   instead of the older skewed/italic .coupon styling, scoped to
   .coup-page-bg / .coup-card so the shared .coupon/.price/.offer
   classes used elsewhere (sidebar, Section-5 carousel) are untouched. */
.coup-page-bg{
  position: relative;
  overflow: hidden;
  padding: 3em 2em;
  margin: 2em 0;
  border-radius: .6em;
  /* background-color: #1f2c5f; */
  /* background-image: url(/wp-content/uploads/2026/07/sec5-bg.webp); */
  background-size: cover;
  background-position: center;
}

/* Grid instead of relying on Bootstrap's row/col negative-margin gutter
   trick — there's an older, more specific "!important" rule elsewhere
   in this file (.coup-page .col-lg-6{ margin: ... !important }) left
   over from a previous version of this page that was fighting any
   margin/padding-based gap. Grid + resetting the column's own
   width/flex/float/margin — selector deliberately stacks 3 classes
   (.coup-page .coup-page-row > .col-lg-6) so it out-specifies that
   older 2-class rule regardless of where either sits in the file. */
.coup-page-row{
  display: grid !important;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.8em;
  position: relative;
  z-index: 1;
  margin: 0 !important;
}

.coup-page .coup-page-row > .col-lg-6{
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.coup-card{
  transform: none;
  border-radius: .6em;
  padding: 1.8em 1.4em 2.2em 1.4em;
  margin: 0;
}

.coup-card .price{
  font-size: 2.6em;
  font-style: normal;
}

/* Belt-and-suspenders: re-declare color/size directly on these two
   spans (rather than only relying on the shared ".price span" rule)
   in case something else on this page ends up overriding them. */
.coup-card .price-sign,
.coup-card .price-off{
  color: #d62232 !important;
  font-size: .58em !important;
}

.coup-card .offer{
  font-size: 1em;
  margin: .3em auto .8em auto;
}

.coup-card .btn{
  width: auto;
  display: inline-flex;
  margin: 0 0 1em 0;
}

.coup-card p{
  font-size: .72em;
  color: #c9d3e6;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 0;
  line-height: 1.4;
  padding: 0 2%;
}

@media (max-width: 47.999em){
  .coup-page-row{
    grid-template-columns: 1fr;
  }
}

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


/* Section-6 CSS  */
.section-6{
 position: relative;
 padding: 5% 6% 3% 6%;
 background-image: url('/wp-content/uploads/2026/09/sec6-bg.webp');
 background-size: cover;
 background-position: center;
 z-index: 3;
 background-repeat: no-repeat;
}

.section-6 > .row:first-child{
  max-width: 50em;
  margin: 0 auto 2em auto;
  text-align: center;
}

.sec6-header{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 3em;
  line-height: 1.2;
  color: #16233e;
  margin-bottom: .5em;
}

.sec6-header strong,
.sec6-header span{
  color: #d62232;
}

.section-6 > .row:first-child p{
  color: #5b6472;
  font-size: 1.05em;
  line-height: 1.6;
}

/* Desktop carousel: 3 cards per slide, numbered continuously (01-06)
   across both slide groups using a CSS counter rather than a new ACF
   field ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â reset once on the carousel wrapper, increment per card. */
#usp-group2-cardesk{
  counter-reset: uspnum;
}

#usp-group2-cardesk .row{
  margin: 0 -.75em;
}

#usp-group2-cardesk .col-4{
  padding: 0 .75em;
  margin-bottom: 1.5em;
}

.section-6 .usp-box{
  counter-increment: uspnum;
  position: relative;
  overflow: hidden;
  height: 100%;
  background: #ffffff;
  border-radius: .5em;
  box-shadow: 0 .3em 1em rgba(0,0,0,.06);
  padding: 1.75em 1.5em;
  text-align: left;
}

.section-6 .usp-box:after{
  content: counter(uspnum, decimal-leading-zero);
  position: absolute;
  top: .25em;
  right: .3em;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 3.2em;
  color: #16233e;
  opacity: .06;
  line-height: 1;
  z-index: 0;
}

.section-6 .usp-con{
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2em;
  height: 3.2em;
  margin-bottom: 1em;
  border-radius: .35em;
  background: #1f2c5f;
}

.section-6 .usp-con span{
  display: block;
  font-size: 1.5em;
  color: #ffffff;
}

.section-6 .usp-label{
  position: relative;
  z-index: 1;
  font-size: 1.1em;
  font-weight: 700;
  text-transform: uppercase;
  color: #16233e;
  margin-bottom: .4em;
}

.section-6 .usp-box p{
  position: relative;
  z-index: 1;
  color: #5b6472;
  font-size: .9em;
  line-height: 1.5;
  margin: 0;
}

#usp-group2-cardesk .carousel-indicators{
  position: static;
  margin-top: .5em;
}

#usp-group2-cardesk .carousel-indicators button{
  width: .7em;
  height: .7em;
  border-radius: 50%;
  background-color: #c9d3e6;
  border: 0;
  opacity: 1;
}

#usp-group2-cardesk .carousel-indicators button.active{
  background-color: #d62232;
}

/* Mobile version reuses the same card look, one at a time */
#usp-group2-car .usp-box{
  margin: 0 .3em;
}

#usp-group2-car .carousel-control-prev,
#usp-group2-car .carousel-control-next{
  opacity: 1;
  width: 2.2em;
  height: 2.2em;
  top: 45%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: #d62232;
  color: #ffffff;
  font-size: 1em;
}

#usp-group2-car .carousel-control-prev{
  left: -.3em;
}

#usp-group2-car .carousel-control-next{
  right: -.3em;
}

/* Section 7 */

.section-7{
  position: relative;
  padding: 3% 7%;
  background-position: center;
  background-size: cover;
}

#imageGalleryCarousel .col-3{
  padding: 0 .6em;
}

#imageGalleryCarousel .rounded-image{
  width: 100%;
  height: 20em;
  object-fit: cover;
  border-radius: .5em;
  box-shadow: 0 .4em 1.2em rgba(0,0,0,.12);
  transition: transform .3s ease-in-out;
}

#imageGalleryCarousel .rounded-image:hover{
  transform: translateY(-.3em);
}

#imageGalleryCarousel .custom-control{
  opacity: 1;
  width: 2.6em;
  height: 2.6em;
  top: 50%;
  transform: translateY(-50%);
}

#imageGalleryCarousel .control-circle{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: #ffffff;
  color: #d62232;
  font-size: 1em;
  box-shadow: 0 .2em .6em rgba(0,0,0,.15);
}

#imageGalleryCarousel .carousel-control-prev{
  left: -1.2em;
}

#imageGalleryCarousel .carousel-control-next{
  right: -1.2em;
}

@media (max-width: 61.999em){
  #imageGalleryCarousel .rounded-image{
    height: 16em;
  }
}

@media (max-width: 47.999em){
  #imageGalleryCarousel .col-3{
    width: 50%;
    flex: 0 0 50%;
    margin-bottom: 1em;
  }

  #imageGalleryCarousel .rounded-image{
    height: 10em;
  }
}

.service-areas{
  position: relative;
}


.service-areas-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;
  margin-top: 2em;
}


.service-areas-list {
    overflow-y: scroll;
    height: 13em;
    overflow-x: hidden;
    margin-left: 0rem;
}

#result-message{
  margin-top: .3em;
  display: block;
  font-weight: 900;
}

/*
 *  STYLE 1
 */
.service-areas-list::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgb(0 0 0 / 49%);
    border-radius: 15px;
    background-color: #00000029;
}

.service-areas-list::-webkit-scrollbar {
    width: 5px;
    /* background-color: #F5F5F4; */
}

.service-areas-list::-webkit-scrollbar-thumb {
    border-radius: 15px;
    -webkit-box-shadow: inset 0 0 3px rgb(0 0 0 / 36%);
    background-color: #000000;
}
 

.service-areas-list li {
    position: relative;
    padding: 0.4em 0.3em 0.4em 0.2em;
    font-size: 1em;
    font-weight: 500;
    width: 48%;
    margin: 0.3em 0.2em;
    background: #172045ba;
    border-radius: 0.5em;
    transform: skew(-8deg, 0deg);
    color: #ffffff;
    text-transform: uppercase;
}

.service-areas-list li strong{
  display: block;
  padding-left: 1.6em;
}

.service-areas-list li a{
  color: black;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}

.service-areas-list li:after {
    content: "\f041";
    font-family: 'icomoon' !important;
    position: absolute;
    top: 0.2em;
    left: 0.6em;
    color: #d62232;
    font-size: 1.333em;
    border-radius: 50%;
    line-height: 1;
}
 


#profile-2 .service-areas-list li {
    padding-left: 0em;
}

#profile-2 .service-areas-list li  strong{
  padding-left: 2em;
}

.serv-list{
    width: 100%;
    -webkit-flex-wrap: wrap!important;
    -ms-flex-wrap: wrap!important;
    flex-wrap: wrap!important;
    -webkit-justify-content: space-between!important;
    -ms-flex-pack: justify!important;
    justify-content: space-between!important;
    display: -webkit-flex!important;
    display: -ms-flexbox!important;
    display: flex!important;
    list-style: none;
    padding: 10px;
    border-top: 1px solid #ffffff17;
    margin: auto!important;
}

.serv-list li {
    position: relative;
    padding: 0.2em 0em 0em 0em;
    font-size: 0.6em;
    font-weight: 500;
    width: 45%!important;
    font-style: normal!important;
}

.serv-list li:after {
  display: none;
}

.serv-list li a{
  color: #d62232;
  text-decoration: none;
}

.serv-list li a:hover{
  color: #044ba1;
}


.section-8 .btn{
  max-width: 400px;
  margin: 1em 0 0 0;
}

/* Section-8 CSS  */
/* .zip-check / #zip-input below are no longer used ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â the zip-code
   checker wasn't in the mockup, so it's been replaced with the city
   pin grid. Left the old rules in place rather than deleting them in
   case this component is reused elsewhere on the site. */
.section-8{
  position: relative;
  padding: 3% 7%;
}

.section-8 > .row:first-child{
  max-width: 46em;
  margin: 0 auto 1.5em auto;
  text-align: center;
}

.sec8-header{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 2.8em;
  line-height: 1.2;
  color: #16233e;
  margin-bottom: .3em;
  text-align: left;
}

.sec8-header strong,
.sec8-header span{
  color: #d62232;
}

.sec8-sub{
  color: #5b6472;
  font-size: 1.05em;
  text-align: left;
}

.map-row{
  align-items: stretch;
}

.city-box{
  height: 100%;
  margin-top: 1em;
}

.city-list{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1em;
  list-style: none;
  margin: 0 !important;
  padding: 0;
  margin-top: .5em;
}

.city-pin{
  display: flex;
  align-items: center;
  gap: .5em;
  padding: 1.1em 1.2em;
  background: #eeecec;
  border: 1px solid #e3e6ec;
  border-radius: .4em;
  color: #16233e;
  font-weight: 700;
  text-transform: uppercase;
  font-size: .95em;
  letter-spacing: .01em;
  text-decoration: none;
  transition: all .3s ease-in-out;
}

.city-pin:hover{
  border-color: #d62232;
  color: #d62232;
  background: #fff5f4;
}

.city-pin span{
  color: #d62232;
  font-size: 1.1em;
}

/* Google My Maps embed clip: the iframe is shifted up inside a fixed
   height, overflow:hidden box so the title/owner strip along the top
   of the embed is cropped out of view. Adjust the -45px / +45px pair
   below if the strip still shows or too much map gets cut off. */
.sec8-map-embed{
  position: relative;
  overflow: hidden;
  height: 28em;
  border-radius: .5em;
  border-top: .4em solid #d62232;
}

.sec8-map-embed iframe{
  position: absolute;
  top: -45px;
  left: 0;
  width: 100%;
  height: calc(100% + 45px);
  border: 0;
}

@media (max-width: 47.999em){
  .sec8-areas-col{
    margin-bottom: 2em;
  }

  .sec8-map-embed{
    height: 22em;
  }
}

.zip-check{
  position: relative;
  margin-top: 1em;
  font-size: 0.8em;
}

.search-subtitle{
  position: relative;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.1;
}

#zip-input{
  position: relative;
  background: #00000047;
  color: white;
  border-top-left-radius: 1em;
  border-bottom-left-radius: 1em;
  padding: 0.1em 0.1em 0.5em 1.1em;
}

.zip-check button{
  position: relative;
  padding: .2em 1.4em;
  border-top-right-radius: 1em;
  border-bottom-right-radius: 1em;
  background: #d62232;
  color: #000000;
}

 .close-cta{
  font-size: 1.25em;
  padding: 2em 1.5em 2em 1.5em;
  position: relative;
  text-align: center;
  margin: 3rem 0 0rem;
  color: #0f1417;
  z-index: 2;
  border-top: 1px solid #00000024;
  /* background: #e78b3d; */
  font-family: 'oswald';
  /* text-shadow: -0.09em 0.11em black; */
  width: 100%;
  font-weight: bold;
}

.close-cta:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 3em;
  top: -1.6em;
  left: 0;
  background-image: url('/wp-content/uploads/2026/07/logo-cta.webp');
  background-repeat: no-repeat;
  background-size: contain; /* Ensures the image maintains its aspect ratio */
  background-position: center; /* Centers the image horizontally and vertically */
}






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

.sched-row {
    position: relative;
    padding: 0;
    max-width: 1700px!important;
    margin: auto;
    box-shadow: 0em 0em 2em #00000000;
}

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


.sched-row a, .sched-row button {
    color: white;
    text-transform: uppercase;
    display: block;
    line-height: 1;
    padding: 2% 2% 3% 2%;
    transition: all .3s ease-in-out;
    border-radius: .7em;
    letter-spacing: .06em;
    text-decoration: none;
    font-size: 0.9em;
    margin: 0;
    border-radius: 0em;
    position: relative;
    z-index: 1;
    background: #044ba1;
    width: 100%;
    border:0;
 }

.sched-row button.pop-button:before{
  transform: scale(1);
  
}

.sched-row button.pop-button{
  position: relative;
  color: #ffffff;
  background-color: #e72218;
 }

.sched-row button.pop-button:after {
    content: " ";
    position: absolute;
    bottom: 0em;
    height: 100%;
    z-index: -1;
    width: 100%;
    transition: all .3s ease-in-out;
    right: 0%;
} 

.sched-row button.pop-button strong{
  text-shadow: none;
}

.sched-row button.pop-button span{
  color: #ffffff;
}

.sched-row a .column,.sched-row a .columns , .sched-row button .column,.sched-row button .columns {
    padding-left: 0rem;
    padding-right: 0rem;
}

.sched-row a strong, .sched-row button strong {
    letter-spacing: 0.03em;
    font-size: 2.2em;
    font-weight: 900;
    display: block;
    text-shadow: -0.1em 0.1em 0em #000000;
    margin-bottom: 0.3em;
 }

.sched-row a span, .sched-row button span {
    display: block;
    text-align: center;
    font-size: 4em;
    position: relative;
    /* top: -.1em; */
    opacity: 1;
    line-height: 0.6;
    left: -0.1em;
}

.sched-row a:hover span, .sched-row button:hover span{
      -webkit-animation: tada 1s;
    animation: tada 1s;
}

.sched-row a:hover, .sched-row button:hover{
  background-color: #464646;
  color: #ffffff;
  cursor: pointer;
}

/* Footer Section CSS  */ 

/* Footer CTA */

footer#colophon .foot-vanity-number{
  margin: -0.8em 0 1.4em 3.3em;
  font-size: .85em;
  color: #c9d3e6;
  letter-spacing: .02em;
}

footer#colophon .foot-vanity-number span{
  color: #ffffff;
  font-weight: 700;
}

.footer-bbb {
    margin-top: 20px;
    text-align: center; /* Change to left if you want it aligned left */
}

.footer-bbb img {
    max-width: 140px; /* Adjust size as needed */
    width: 100%;
    height: auto;
    transition: opacity .3s ease;
}

.footer-bbb a:hover img {
    opacity: .85;
}

.site-footer{
  background-color: #ffffff!important;
  color: black!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: center;
}

.schema a{
  display: block;
  font-weight: 900;
}

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

.footer-txt{
  text-align: center;
  color: #1f2c5f;
  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: center;
}

.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: #111111;
  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: #3f63c9!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: #03a8e2!important;
}

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

footer a{
  text-decoration: none;
}

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

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

/* Global Inner CSS  */ 

/* Global Inner CSS  */ 



 .wp-check-gallery{
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin:16px 0;
  }
  @media (max-width: 900px){
    .wp-check-gallery{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  }
  @media (max-width: 520px){
    .wp-check-gallery{ grid-template-columns:1fr; }
  }

  .wp-check-gallery a{
    display:block;
    border-radius:12px;
    overflow:hidden;
    line-height:0;
    background:#e9eef5; /* fallback tile color */
  }

  .wp-check-gallery img{
    width:100%;
    aspect-ratio: 4 / 3;
    object-fit:cover;
    display:block;
  }


 .wp-check-gallery p{
    margin:0 !important;
    padding:0 !important;
  }


  .galler-section .row{
  row-gap: 1.5em;
}

.galler-section .row > div{
  margin-bottom: 0;
  padding: 0 .75em;
}

.galler-section .row > div img{
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: .4em;
}

.side-label{
  position: relative;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 2em;
  margin-bottom: 0em;
  font-family: 'oswald';
  font-weight: 600;
  margin-top: 1em;
  /* font-style: italic; */
  color: white;
}

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




/* Sidebar HVAC Calculator styling */
.sidebar-hvac-widget {
  width: 100%;
  margin: 0 0 20px 0;
}

.sidebar-hvac-title {
  margin: 0 0 10px 0;
  padding: 10px 12px;
  font-weight: 400 !important;
  line-height: 1.2;
  /* border-left: 4px solid currentColor; */
  font-size: 2em !important;
  text-align: center;
}

.sidebar-hvac-box {
  width: 100%;
  padding: 14px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 0px;
  box-sizing: border-box;
  background-color: #d62232;
}

/* Force plugin output to use full sidebar width */
.sidebar-hvac-box,
.sidebar-hvac-box * {
  max-width: 100% !important;
  box-sizing: border-box;
}

.sidebar-hvac-box iframe,
.sidebar-hvac-box canvas,
.sidebar-hvac-box svg,
.sidebar-hvac-box img {
  max-width: 100% !important;
  height: auto !important;
}


/* Hide widget everywhere by default */
.sidebar-hvac-widget { display: none; }

/* Show only on HVAC pages */
.acf-location-hvac .sidebar-hvac-widget { display: block; }







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

.insideimage {
    position: relative;
    padding: 7% 4% 2% 4%;
    margin-top: 11.5%;
    border-bottom: 0.5em solid #d62232;
    background-position: 100% -20%;
    background-size: 42%;
    z-index: 12;
    background-image: url(/wp-content/uploads/2026/07/owner-banner-new.webp);
    background-repeat: no-repeat;
}


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


.insideimage .slider-usp {
    bottom: -4em;
    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: #1f2c5f; /* hero blue */
  border-color: #d62232;
  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: #1f2c5f;
  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;
}






















.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: 'oswald';
}

.banner-head:after{
  content:'';
  position: absolute;
  left: -0.3em;
  top: 0em;
  background: #d62232;
  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: #1f2c5f;
    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: #d62232;
}

 
.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: #1f2c5f;
    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: #d62232;
}

.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: #d62232;
    border-top-right-radius: 0em;
    border-radius: 0em;
    border-top-left-radius: 0em;
    border-bottom-left-radius: 0em;
    border-left: 0.8em solid #d62232;
    border-top: 1px solid #c4c4c4;
    border-right: 1px solid #c4c4c4;
    border-bottom: 1px solid #c4c4c4;
    transform: skew(-6deg, 0deg);
}
 
blockquote a{color: #1f2c5f;text-decoration: none;}

blockquote a:hover{color: #ffffff;}



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: 'Poppins';
  font-weight: normal;
  color: white;
}

.inside-content h2 em{
  font-size: .8em;
  font-family: 'Poppins';
  font-weight: normal;
  font-style: normal
}

.inside-content h2 {
    color: #313131;
    font-weight: 900;
    font-size: 1.8em;
}

.inside-content h3 {
    color: #184ba1;
    font-weight: 900;
    font-size: 1.4em;
}

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

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

.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;
    padding: 1em 2em 1em 2em !important;
    background-color: #1f2c5f;
}

.rev-sec-in::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url(/wp-content/uploads/2026/07/sec6-bg.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
    pointer-events: none;
}

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

.rev-box .sec2-header {
    color: #ffffff;
}

.rev-header{
  font-family: oswald;
  text-align: center;
  font-size: 2.6em;
  line-height: 1.2;
  color: #192b39;
  font-weight: 400;
}

.rev-header strong{
  font-family: oswald;
  text-align: center;
  font-size: 1.3em;
  line-height: 1;
  color: #192b39;
  font-weight: 400;
}
.rev-btns{margin-top: 2em;width: 60%;}



.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: 'oswald';
  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: 'oswald';
}

.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 #d62232;
  gap: 10px;               /* modern browsers */
}

/* Base tab button/link */
#couponsTabs .nav-link {
  color: #1f2c5f;
  background: #ffffff;
  border: 2px solid #d62232;
  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: #d62232;
  color: #1f2c5f;
  transform: translateY(-1px);
  outline: none;
  box-shadow: none;
}

/* Active tab */
#couponsTabs .nav-link.active,
#couponsTabs .nav-link[aria-selected="true"] {
  background: #1f2c5f;
  color: #ffffff;
  border-color: #1f2c5f;
  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: #d62232;
  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: #1f2c5f;
  border: 2px solid transparent;        /* prevents layout shift */
  transition: all .25s ease;
}

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





/* Coupon wrapper in sidebar */
.sidebar .coupon{
  position: relative;
  padding: 1.5em 2em 2em 2em;
  background: #d62232;               /* 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: 'oswald';
  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 */
#sidebar1 .coupon .btn{
  display: block;
  width: 80%;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #ffffff;
  background: #d62232;

  border: 2px solid #ffffff;
  margin-top: .2em;

}

/* Button hover */
#sidebar1 .coupon .btn:hover{
  background: #d62232;
  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);
}



/* 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: #d62232;
    font-size: 1.333em;
    border-radius: 50%;
    line-height: 1;
}

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

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

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

/* 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: #d62232;
    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: #d62232;
}

.check-list li a{
  color: #d62232!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: #192b39000;
}

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

.pc-default .usp-box{
  position: relative;
  padding: 2em 2em;
  text-align: center;
  border: 1px solid #192b3900047;
  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: #192b39000;
    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: #192b39000;
}

.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: #192b39000;
    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: #1f2c5f;
    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 #192b3900054;
    text-align: center;
    margin: 6.5rem 0 0.5rem 0em;
    color: #192b39000;
    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,#192b3900040 41.99%,#FFFFFB 42%,#FFFFFF 58.99%,#192b3900040 55%);
}


.text-highlight2:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 5.4em;
    background-size: 9em;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    left: 0.2em;
    top: -4.15em;
}

 .text-highlight2 a{
   display: unset;
   color: #b00c03;
   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: #d62232;
}

/* 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: #fff;
  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: #1f2c5f;
  color: white;
  }

.faq-page .accordion-button[aria-expanded=true], .faq-page .accordion-button:hover{
  background-color: #343434;
  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: #d62232;
  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;
  position: relative;
  z-index: 1;
  margin-top: -0.2em;
}

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


.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: #1f2c5f !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: 7%;
  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: #3f63c9!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: #1f2c5f;
  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;
}

.thank-you .bg-inner  h1{
    margin: 0;
    color: #d62232;
    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: #d62232;
  text-transform: uppercase;
  font-size: 1em;
  letter-spacing: .08em;
  color: #000000;
  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: #d62232;
}

.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%;
}

.client-response .bg-inner  h1{
    margin: 0;
    color: #ffffff;
    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: #d62232;
    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: #044ba1;
}


.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%;
}

/* ------------------------------------------------------Image Gallery CSS ---------------------------------------- */ 



.spgp-gallery-section{
  padding: 2% 0 3%;
}

.spgp-gallery-wrap{
  --spgp-gap: 1em;
  --spgp-ratio: 1 / 1;
  width: 100%;
}

.spgp-grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--spgp-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}

.spgp-grid.spgp-cols-3{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
.spgp-grid.spgp-cols-4{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
.spgp-grid.spgp-cols-5{ grid-template-columns: repeat(5, minmax(0, 1fr)); }

/* Every photo — regardless of its original size or orientation — sits in
   an identical square tile. object-fit: cover crops to fill the tile
   without stretching, so portrait, landscape and square uploads all end
   up looking uniform. */
.spgp-item{
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: var(--spgp-ratio);
  overflow: hidden;
  border: 0;
  border-radius: .5em;
  padding: 0;
  margin: 0;
  background: #eef0f4;
  cursor: zoom-in;
  box-shadow: 0 .3em 1em rgba(0,0,0,.10);
  transition: box-shadow .3s ease-in-out;
}

.spgp-item:hover,
.spgp-item:focus-visible{
  box-shadow: 0 .5em 1.4em rgba(0,0,0,.22);
}

.spgp-thumb{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .4s ease-in-out;
  display: block;
}

.spgp-item:hover .spgp-thumb,
.spgp-item:focus-visible .spgp-thumb{
  transform: scale(1.08);
}

.spgp-zoom-icon{
  position: absolute;
  right: .6em;
  bottom: .6em;
  width: 2em;
  height: 2em;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(31,44,95,.85);
  color: #ffffff;
  font-size: .85em;
  opacity: 0;
  transform: translateY(.4em);
  transition: all .3s ease-in-out;
  pointer-events: none;
}

.spgp-item:hover .spgp-zoom-icon,
.spgp-item:focus-visible .spgp-zoom-icon{
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 61.999em){
  .spgp-grid.spgp-cols-4,
  .spgp-grid.spgp-cols-5{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 47.999em){
  .spgp-grid,
  .spgp-grid.spgp-cols-3,
  .spgp-grid.spgp-cols-4,
  .spgp-grid.spgp-cols-5{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    --spgp-gap: .6em;
  }
}

@media (max-width: 27.999em){
  .spgp-grid,
  .spgp-grid.spgp-cols-3,
  .spgp-grid.spgp-cols-4,
  .spgp-grid.spgp-cols-5{
    --spgp-gap: .5em;
  }
}

/* -------------------- Lightbox -------------------- */
/* Uses the site's existing Bootstrap 5 modal component (already loaded
   for the coupon/booking popups), just with its own dialog/content
   classes so the overrides below can't leak onto other modals. */

.spgp-lightbox-dialog{
  max-width: 56em !important;
  margin: 3em auto !important;
  width: calc(100% - 2em);
}

.spgp-lightbox-content{
  background: #0b0e1a !important;
  border: 0;
  border-radius: .5em;
  overflow: hidden;
}

.spgp-lightbox-body{
  position: relative;
  padding: 0 !important;
  text-align: center;
}

.spgp-lightbox-image{
  display: block;
  width: 100%;
  max-height: 78vh;
  object-fit: contain;
  margin: 0 auto;
  background: #0b0e1a;
}

.spgp-lightbox-caption{
  margin: 0;
  padding: .8em 1em;
  color: #ffffff;
  font-size: .9em;
  text-align: center;
  background: #0b0e1a;
}

.spgp-lightbox-caption:empty{
  display: none;
}

.spgp-lightbox-close{
  position: absolute;
  top: .6em;
  right: .6em;
  z-index: 3;
  background-color: #ffffff !important;
  border-radius: 50%;
  opacity: 1;
  padding: .5em;
}



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


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


/* NEW QUERIES */

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

/* 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.8em;
   }
   
   
.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: 4.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: 17%;
}
   
   .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: 4em;
}

.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: 19%;
}
   
   .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: 4.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: 19%;
}
   
   .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: 4.5em;
   }

.logo-image a {
    margin-top: .1em;
    transform: scale(1);
    top: 0em;
}   

    .logo-image img {
    width: 15em;
    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.2em solid #1d1761;
    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: 14%;
   }


/* 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: 19.5%;
    padding: 11% 2% 1% 2%;
    background-size: 55%;
}

.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: 13%;
   }

/* 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: 59%;
}

  .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: 13%;
}

/* 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: .8em;
}

.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: 13%;
}
 
/* 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: 12%;
}
   
   .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: 12%;
}
   
   .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;
}

 }

/* ======================================================================
   HEADER CSS ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â layered on top of the theme's existing .top-bar / .menu /
   .btn-primary rules (added at the end of the file so it wins ties)
   rather than rewriting that shared base CSS, since header.php loads on
   every page of the site.
   ====================================================================== */

.desk-nav .top-bar,
.top-bar{
  background-color: #1f2c5f !important;
  padding: .6em 0;
  border-bottom: 0;
  flex-wrap: wrap;
}

.top-bar .top-text{
  color: #ffffff !important;
  font-size: .8em;
  text-align: left;
  min-width: 0;
  padding-left: 1em;
}

.top-bar .top-text span{
  color: #c9d3e6 !important;
  text-transform: none;
  letter-spacing: normal;
  font-weight: 400;
}

/* BUG FIX: the shared base ".menu" rule (top of this file) sets
   flex-wrap: nowrap, and flex children don't shrink below their
   content's natural width unless told to â€” so the license text
   (col-5) and this 5-item nav (col-7) were both refusing to wrap and
   pushing content past the right/left edge of the screen at regular
   desktop widths. Scoped to .top-bar only so the rest of the site's
   menus (which rely on nowrap) are untouched. */
.desk-nav .top-bar .menu,
.top-bar .menu{
  justify-content: flex-end;
  flex-wrap: wrap !important;
  row-gap: .2em;
  min-width: 0;
}

.top-bar.row > div,
.top-bar > div{
  min-width: 0;
}

@media (max-width: 87.999em) and (min-width: 62em){
  .top-bar .top-text{
    font-size: .68em;
  }

  .top-bar .menu>li a{
    font-size: .62em;
    padding: .2em .5em;
  }
}

.desk-nav .top-bar .menu>li>a,
.top-bar .menu>li>a,
.top-bar .menu>li a{
  color: #ffffff !important;
  background-color: transparent !important;
}

.desk-nav .top-bar .menu>li>a:hover,
.top-bar .menu>li>a:hover,
.top-bar .menu>li a:hover{
  background-color: transparent !important;
  color: #d62232 !important;
}

.main-bar{
  padding: 1.2em 3%;
}

.head-phone-col{
  text-align: center;
}

.head-cta-col{
  text-align: right;
}

.phone-contact{
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .35em;
  color: #16233e;
  text-decoration: none;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 2.6em;
}

.phone-contact:hover{
  color: #d62232;
}

.phone-contact em{
  display: block;
  width: 100%;
  font-style: normal;
  font-size: .45em;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #5b6472;
  text-align: center;
  margin-bottom: -.3em;
}

.phone-contact em span{
  color: #d62232;
}

.phone-contact .icon-mobile{
  color: #d62232;
  font-size: 1.1em;
  position: relative;
  bottom: -0.1em;
}

.circ-btn.head-request-btn{
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: auto;
  max-width: none;
  margin: 0;
  padding: .5em 1.6em;
  border-radius: .3em;
}

.head-request-pre{
  font-size: .8em;
  font-weight: 400;
  text-transform: none;
  letter-spacing: normal;
  /* opacity: .85; */
}

.head-request-main{
  display: flex;
  align-items: center;
  gap: .4em;
  font-size: 1.05em;
}

.head-request-sub{
  font-size: .65em;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .04em;
  /* opacity: .85; */
}

.rnavigation-full,
.main-nav{
  background-color: #1f2c5f !important;
}

.main-nav .menu>li>a,
.main-nav .menu>li a{
  color: #ffffff !important;
  background-color: transparent !important;
  position: relative;
}

.main-nav .menu>li>a:hover,
.main-nav .menu>li a:hover{
  background: transparent !important;
  color: #ffffff !important;
}

.main-nav .menu>li>a:after,
.main-nav .menu>li a:after{
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: .18em;
  background: transparent;
  transition: background .3s ease-in-out;
}

.main-nav .menu>li.current-menu-item>a:after,
.main-nav .menu>li>a:hover:after,
.main-nav .menu>li a:hover:after{
  background: #d62232 !important;
}

@media (max-width: 61.999em){
  .top-bar .top-text{
    display: none;
  }

  .head-request-btn .head-request-pre,
  .head-request-btn .head-request-sub{
    display: none;
  }
}

/* ======================================================================
   FOOTER CSS
   ====================================================================== */

footer#colophon.site-footer{
  background-color: #0a2a4a !important;
  color: #ffffff;
  padding: 4em 0 0 0;
}

footer#colophon > .row{
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 4%;
}

/* NOTE: this theme's base CSS already defines generic same-named
   classes (.footer-txt, .schema, .socialmedia a, .help-link, .logo-foot
   img) for other sites/pages built on it, some at equal-or-higher
   specificity. Everything below is prefixed with "footer#colophon" and
   backed with !important on the properties that actually clashed, so
   this footer renders correctly regardless of what load order those
   older rules happen to end up in. */

footer#colophon .logo-foot{
  text-align: left;
}

footer#colophon .logo-foot img{
  display: block;
  width: auto;
  max-width: 12em;
  margin: 0 0 1em 0 !important;
}

footer#colophon .foot-tagline{
  color: #c9d3e6;
  font-size: .92em;
  line-height: 1.6;
  margin-bottom: 1em;
  text-align: left;
}

footer#colophon .lic-number{
  color: #c9d3e6 !important;
  font-size: .8em;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 1em;
}

footer#colophon .foot-we-accept{
  margin-bottom: 1em;
  max-width: 12em;
  opacity: .9;
}

footer#colophon .foot-we-accept img{
  max-width: 100%;
  height: auto;
}

footer#colophon .socialmedia .navbar{
  display: flex;
  gap: .6em;
  padding: 0;
  list-style: none;
  justify-content: flex-start !important;
}

footer#colophon .socialmedia .navbar a,
footer#colophon .socialmedia a{
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 2em !important;
  height: 2em !important;
  border-radius: 50% !important;
  background: #ffffff1a !important;
  color: #ffffff !important;
  text-decoration: none;
  font-size: 1.4em !important;
  transition: all .3s ease-in-out;
}


footer#colophon .socialmedia .navbar a:hover,
footer#colophon .socialmedia a:hover{
  background: #d62232 !important;
}

footer#colophon .footer-txt{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.05em;
  letter-spacing: .03em;
  color: #ffffff !important;
  text-align: left;
  padding-bottom: .5em;
  margin-top: 0 !important;
  margin-bottom: 1em;
  border-bottom: 2px solid #d62232;
  display: inline-block;
}

footer#colophon .schema{
  font-size: .92em;
  color: #c9d3e6;
  line-height: 1.8;
  text-align: left;
  background: transparent !important;
}

footer#colophon .schema a{
  color: #ffffff !important;
  display: inline;
  font-weight: 400;
  margin-top: 0;
}

footer#colophon .foot-contact-line{
  display: flex;
  align-items: center;
  gap: .9em;
  margin-bottom: 1.4em;
  color: #c9d3e6;
  background: transparent !important;
}

footer#colophon .foot-contact-line:last-child{
  margin-bottom: 0;
}

/* Dark rounded-square icon badge, same visual pattern as .usp-icon /
   .ts-icon used in Section-3 / Section-6 â€” red square, white glyph. */
footer#colophon .foot-icon-badge{
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.4em;
  height: 2.4em;
  border-radius: .35em;
  background: #d62232;
}

footer#colophon .foot-icon-badge span{
  display: block;
  position: static;
  width: auto;
  margin-top: 0;
  font-size: 1.1em;
  color: #ffffff !important;
}

footer#colophon .foot-contact-line a{
  color: #c9d3e6 !important;
  text-decoration: none;
}

footer#colophon .foot-contact-line a:hover{
  color: #ffffff !important;
}

footer#colophon .help-link,
footer#colophon .services-areas-list a{
  display: block;
  color: #c9d3e6 !important;
  text-decoration: none;
  text-align: left;
  border-bottom: 0 !important;
  padding: 0 !important;
  margin-bottom: .6em;
  font-size: .92em;
  transition: color .3s ease-in-out;
}

footer#colophon .help-link:hover,
footer#colophon .services-areas-list a:hover{
  color: #ffffff !important;
}

footer#colophon .services-areas-list{
  list-style: none;
  padding: 0;
  margin: 0;
}

.copyright{
  border-top: 1px solid #ffffff1f;
  margin-top: 2.5em !important;
  color: #c9d3e6;
}

.copyright .site-info{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .5em;
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 4%;
}

@media (max-width: 47.999em){
  .copyright .site-info{
    flex-direction: column;
    text-align: center;
  }
}



[data-aos][data-aos][data-aos-duration="50"],body[data-aos-duration="50"] [data-aos]{transition-duration:50ms}[data-aos][data-aos][data-aos-delay="50"],body[data-aos-delay="50"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="50"].aos-animate,body[data-aos-delay="50"] [data-aos].aos-animate{transition-delay:50ms}[data-aos][data-aos][data-aos-duration="100"],body[data-aos-duration="100"] [data-aos]{transition-duration:.1s}[data-aos][data-aos][data-aos-delay="100"],body[data-aos-delay="100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="100"].aos-animate,body[data-aos-delay="100"] [data-aos].aos-animate{transition-delay:.1s}[data-aos][data-aos][data-aos-duration="150"],body[data-aos-duration="150"] [data-aos]{transition-duration:.15s}[data-aos][data-aos][data-aos-delay="150"],body[data-aos-delay="150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="150"].aos-animate,body[data-aos-delay="150"] [data-aos].aos-animate{transition-delay:.15s}[data-aos][data-aos][data-aos-duration="200"],body[data-aos-duration="200"] [data-aos]{transition-duration:.2s}[data-aos][data-aos][data-aos-delay="200"],body[data-aos-delay="200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="200"].aos-animate,body[data-aos-delay="200"] [data-aos].aos-animate{transition-delay:.2s}[data-aos][data-aos][data-aos-duration="250"],body[data-aos-duration="250"] [data-aos]{transition-duration:.25s}[data-aos][data-aos][data-aos-delay="250"],body[data-aos-delay="250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="250"].aos-animate,body[data-aos-delay="250"] [data-aos].aos-animate{transition-delay:.25s}[data-aos][data-aos][data-aos-duration="300"],body[data-aos-duration="300"] [data-aos]{transition-duration:.3s}[data-aos][data-aos][data-aos-delay="300"],body[data-aos-delay="300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="300"].aos-animate,body[data-aos-delay="300"] [data-aos].aos-animate{transition-delay:.3s}[data-aos][data-aos][data-aos-duration="350"],body[data-aos-duration="350"] [data-aos]{transition-duration:.35s}[data-aos][data-aos][data-aos-delay="350"],body[data-aos-delay="350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="350"].aos-animate,body[data-aos-delay="350"] [data-aos].aos-animate{transition-delay:.35s}[data-aos][data-aos][data-aos-duration="400"],body[data-aos-duration="400"] [data-aos]{transition-duration:.4s}[data-aos][data-aos][data-aos-delay="400"],body[data-aos-delay="400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="400"].aos-animate,body[data-aos-delay="400"] [data-aos].aos-animate{transition-delay:.4s}[data-aos][data-aos][data-aos-duration="450"],body[data-aos-duration="450"] [data-aos]{transition-duration:.45s}[data-aos][data-aos][data-aos-delay="450"],body[data-aos-delay="450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="450"].aos-animate,body[data-aos-delay="450"] [data-aos].aos-animate{transition-delay:.45s}[data-aos][data-aos][data-aos-duration="500"],body[data-aos-duration="500"] [data-aos]{transition-duration:.5s}[data-aos][data-aos][data-aos-delay="500"],body[data-aos-delay="500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="500"].aos-animate,body[data-aos-delay="500"] [data-aos].aos-animate{transition-delay:.5s}[data-aos][data-aos][data-aos-duration="550"],body[data-aos-duration="550"] [data-aos]{transition-duration:.55s}[data-aos][data-aos][data-aos-delay="550"],body[data-aos-delay="550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="550"].aos-animate,body[data-aos-delay="550"] [data-aos].aos-animate{transition-delay:.55s}[data-aos][data-aos][data-aos-duration="600"],body[data-aos-duration="600"] [data-aos]{transition-duration:.6s}[data-aos][data-aos][data-aos-delay="600"],body[data-aos-delay="600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="600"].aos-animate,body[data-aos-delay="600"] [data-aos].aos-animate{transition-delay:.6s}[data-aos][data-aos][data-aos-duration="650"],body[data-aos-duration="650"] [data-aos]{transition-duration:.65s}[data-aos][data-aos][data-aos-delay="650"],body[data-aos-delay="650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="650"].aos-animate,body[data-aos-delay="650"] [data-aos].aos-animate{transition-delay:.65s}[data-aos][data-aos][data-aos-duration="700"],body[data-aos-duration="700"] [data-aos]{transition-duration:.7s}[data-aos][data-aos][data-aos-delay="700"],body[data-aos-delay="700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="700"].aos-animate,body[data-aos-delay="700"] [data-aos].aos-animate{transition-delay:.7s}[data-aos][data-aos][data-aos-duration="750"],body[data-aos-duration="750"] [data-aos]{transition-duration:.75s}[data-aos][data-aos][data-aos-delay="750"],body[data-aos-delay="750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="750"].aos-animate,body[data-aos-delay="750"] [data-aos].aos-animate{transition-delay:.75s}[data-aos][data-aos][data-aos-duration="800"],body[data-aos-duration="800"] [data-aos]{transition-duration:.8s}[data-aos][data-aos][data-aos-delay="800"],body[data-aos-delay="800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="800"].aos-animate,body[data-aos-delay="800"] [data-aos].aos-animate{transition-delay:.8s}[data-aos][data-aos][data-aos-duration="850"],body[data-aos-duration="850"] [data-aos]{transition-duration:.85s}[data-aos][data-aos][data-aos-delay="850"],body[data-aos-delay="850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="850"].aos-animate,body[data-aos-delay="850"] [data-aos].aos-animate{transition-delay:.85s}[data-aos][data-aos][data-aos-duration="900"],body[data-aos-duration="900"] [data-aos]{transition-duration:.9s}[data-aos][data-aos][data-aos-delay="900"],body[data-aos-delay="900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="900"].aos-animate,body[data-aos-delay="900"] [data-aos].aos-animate{transition-delay:.9s}[data-aos][data-aos][data-aos-duration="950"],body[data-aos-duration="950"] [data-aos]{transition-duration:.95s}[data-aos][data-aos][data-aos-delay="950"],body[data-aos-delay="950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="950"].aos-animate,body[data-aos-delay="950"] [data-aos].aos-animate{transition-delay:.95s}[data-aos][data-aos][data-aos-duration="1000"],body[data-aos-duration="1000"] [data-aos]{transition-duration:1s}[data-aos][data-aos][data-aos-delay="1000"],body[data-aos-delay="1000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1000"].aos-animate,body[data-aos-delay="1000"] [data-aos].aos-animate{transition-delay:1s}[data-aos][data-aos][data-aos-duration="1050"],body[data-aos-duration="1050"] [data-aos]{transition-duration:1.05s}[data-aos][data-aos][data-aos-delay="1050"],body[data-aos-delay="1050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1050"].aos-animate,body[data-aos-delay="1050"] [data-aos].aos-animate{transition-delay:1.05s}[data-aos][data-aos][data-aos-duration="1100"],body[data-aos-duration="1100"] [data-aos]{transition-duration:1.1s}[data-aos][data-aos][data-aos-delay="1100"],body[data-aos-delay="1100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1100"].aos-animate,body[data-aos-delay="1100"] [data-aos].aos-animate{transition-delay:1.1s}[data-aos][data-aos][data-aos-duration="1150"],body[data-aos-duration="1150"] [data-aos]{transition-duration:1.15s}[data-aos][data-aos][data-aos-delay="1150"],body[data-aos-delay="1150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1150"].aos-animate,body[data-aos-delay="1150"] [data-aos].aos-animate{transition-delay:1.15s}[data-aos][data-aos][data-aos-duration="1200"],body[data-aos-duration="1200"] [data-aos]{transition-duration:1.2s}[data-aos][data-aos][data-aos-delay="1200"],body[data-aos-delay="1200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1200"].aos-animate,body[data-aos-delay="1200"] [data-aos].aos-animate{transition-delay:1.2s}[data-aos][data-aos][data-aos-duration="1250"],body[data-aos-duration="1250"] [data-aos]{transition-duration:1.25s}[data-aos][data-aos][data-aos-delay="1250"],body[data-aos-delay="1250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1250"].aos-animate,body[data-aos-delay="1250"] [data-aos].aos-animate{transition-delay:1.25s}[data-aos][data-aos][data-aos-duration="1300"],body[data-aos-duration="1300"] [data-aos]{transition-duration:1.3s}[data-aos][data-aos][data-aos-delay="1300"],body[data-aos-delay="1300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1300"].aos-animate,body[data-aos-delay="1300"] [data-aos].aos-animate{transition-delay:1.3s}[data-aos][data-aos][data-aos-duration="1350"],body[data-aos-duration="1350"] [data-aos]{transition-duration:1.35s}[data-aos][data-aos][data-aos-delay="1350"],body[data-aos-delay="1350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1350"].aos-animate,body[data-aos-delay="1350"] [data-aos].aos-animate{transition-delay:1.35s}[data-aos][data-aos][data-aos-duration="1400"],body[data-aos-duration="1400"] [data-aos]{transition-duration:1.4s}[data-aos][data-aos][data-aos-delay="1400"],body[data-aos-delay="1400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1400"].aos-animate,body[data-aos-delay="1400"] [data-aos].aos-animate{transition-delay:1.4s}[data-aos][data-aos][data-aos-duration="1450"],body[data-aos-duration="1450"] [data-aos]{transition-duration:1.45s}[data-aos][data-aos][data-aos-delay="1450"],body[data-aos-delay="1450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1450"].aos-animate,body[data-aos-delay="1450"] [data-aos].aos-animate{transition-delay:1.45s}[data-aos][data-aos][data-aos-duration="1500"],body[data-aos-duration="1500"] [data-aos]{transition-duration:1.5s}[data-aos][data-aos][data-aos-delay="1500"],body[data-aos-delay="1500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1500"].aos-animate,body[data-aos-delay="1500"] [data-aos].aos-animate{transition-delay:1.5s}[data-aos][data-aos][data-aos-duration="1550"],body[data-aos-duration="1550"] [data-aos]{transition-duration:1.55s}[data-aos][data-aos][data-aos-delay="1550"],body[data-aos-delay="1550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1550"].aos-animate,body[data-aos-delay="1550"] [data-aos].aos-animate{transition-delay:1.55s}[data-aos][data-aos][data-aos-duration="1600"],body[data-aos-duration="1600"] [data-aos]{transition-duration:1.6s}[data-aos][data-aos][data-aos-delay="1600"],body[data-aos-delay="1600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1600"].aos-animate,body[data-aos-delay="1600"] [data-aos].aos-animate{transition-delay:1.6s}[data-aos][data-aos][data-aos-duration="1650"],body[data-aos-duration="1650"] [data-aos]{transition-duration:1.65s}[data-aos][data-aos][data-aos-delay="1650"],body[data-aos-delay="1650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1650"].aos-animate,body[data-aos-delay="1650"] [data-aos].aos-animate{transition-delay:1.65s}[data-aos][data-aos][data-aos-duration="1700"],body[data-aos-duration="1700"] [data-aos]{transition-duration:1.7s}[data-aos][data-aos][data-aos-delay="1700"],body[data-aos-delay="1700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1700"].aos-animate,body[data-aos-delay="1700"] [data-aos].aos-animate{transition-delay:1.7s}[data-aos][data-aos][data-aos-duration="1750"],body[data-aos-duration="1750"] [data-aos]{transition-duration:1.75s}[data-aos][data-aos][data-aos-delay="1750"],body[data-aos-delay="1750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1750"].aos-animate,body[data-aos-delay="1750"] [data-aos].aos-animate{transition-delay:1.75s}[data-aos][data-aos][data-aos-duration="1800"],body[data-aos-duration="1800"] [data-aos]{transition-duration:1.8s}[data-aos][data-aos][data-aos-delay="1800"],body[data-aos-delay="1800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1800"].aos-animate,body[data-aos-delay="1800"] [data-aos].aos-animate{transition-delay:1.8s}[data-aos][data-aos][data-aos-duration="1850"],body[data-aos-duration="1850"] [data-aos]{transition-duration:1.85s}[data-aos][data-aos][data-aos-delay="1850"],body[data-aos-delay="1850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1850"].aos-animate,body[data-aos-delay="1850"] [data-aos].aos-animate{transition-delay:1.85s}[data-aos][data-aos][data-aos-duration="1900"],body[data-aos-duration="1900"] [data-aos]{transition-duration:1.9s}[data-aos][data-aos][data-aos-delay="1900"],body[data-aos-delay="1900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1900"].aos-animate,body[data-aos-delay="1900"] [data-aos].aos-animate{transition-delay:1.9s}[data-aos][data-aos][data-aos-duration="1950"],body[data-aos-duration="1950"] [data-aos]{transition-duration:1.95s}[data-aos][data-aos][data-aos-delay="1950"],body[data-aos-delay="1950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1950"].aos-animate,body[data-aos-delay="1950"] [data-aos].aos-animate{transition-delay:1.95s}[data-aos][data-aos][data-aos-duration="2000"],body[data-aos-duration="2000"] [data-aos]{transition-duration:2s}[data-aos][data-aos][data-aos-delay="2000"],body[data-aos-delay="2000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2000"].aos-animate,body[data-aos-delay="2000"] [data-aos].aos-animate{transition-delay:2s}[data-aos][data-aos][data-aos-duration="2050"],body[data-aos-duration="2050"] [data-aos]{transition-duration:2.05s}[data-aos][data-aos][data-aos-delay="2050"],body[data-aos-delay="2050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2050"].aos-animate,body[data-aos-delay="2050"] [data-aos].aos-animate{transition-delay:2.05s}[data-aos][data-aos][data-aos-duration="2100"],body[data-aos-duration="2100"] [data-aos]{transition-duration:2.1s}[data-aos][data-aos][data-aos-delay="2100"],body[data-aos-delay="2100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2100"].aos-animate,body[data-aos-delay="2100"] [data-aos].aos-animate{transition-delay:2.1s}[data-aos][data-aos][data-aos-duration="2150"],body[data-aos-duration="2150"] [data-aos]{transition-duration:2.15s}[data-aos][data-aos][data-aos-delay="2150"],body[data-aos-delay="2150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2150"].aos-animate,body[data-aos-delay="2150"] [data-aos].aos-animate{transition-delay:2.15s}[data-aos][data-aos][data-aos-duration="2200"],body[data-aos-duration="2200"] [data-aos]{transition-duration:2.2s}[data-aos][data-aos][data-aos-delay="2200"],body[data-aos-delay="2200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2200"].aos-animate,body[data-aos-delay="2200"] [data-aos].aos-animate{transition-delay:2.2s}[data-aos][data-aos][data-aos-duration="2250"],body[data-aos-duration="2250"] [data-aos]{transition-duration:2.25s}[data-aos][data-aos][data-aos-delay="2250"],body[data-aos-delay="2250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2250"].aos-animate,body[data-aos-delay="2250"] [data-aos].aos-animate{transition-delay:2.25s}[data-aos][data-aos][data-aos-duration="2300"],body[data-aos-duration="2300"] [data-aos]{transition-duration:2.3s}[data-aos][data-aos][data-aos-delay="2300"],body[data-aos-delay="2300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2300"].aos-animate,body[data-aos-delay="2300"] [data-aos].aos-animate{transition-delay:2.3s}[data-aos][data-aos][data-aos-duration="2350"],body[data-aos-duration="2350"] [data-aos]{transition-duration:2.35s}[data-aos][data-aos][data-aos-delay="2350"],body[data-aos-delay="2350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2350"].aos-animate,body[data-aos-delay="2350"] [data-aos].aos-animate{transition-delay:2.35s}[data-aos][data-aos][data-aos-duration="2400"],body[data-aos-duration="2400"] [data-aos]{transition-duration:2.4s}[data-aos][data-aos][data-aos-delay="2400"],body[data-aos-delay="2400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2400"].aos-animate,body[data-aos-delay="2400"] [data-aos].aos-animate{transition-delay:2.4s}[data-aos][data-aos][data-aos-duration="2450"],body[data-aos-duration="2450"] [data-aos]{transition-duration:2.45s}[data-aos][data-aos][data-aos-delay="2450"],body[data-aos-delay="2450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2450"].aos-animate,body[data-aos-delay="2450"] [data-aos].aos-animate{transition-delay:2.45s}[data-aos][data-aos][data-aos-duration="2500"],body[data-aos-duration="2500"] [data-aos]{transition-duration:2.5s}[data-aos][data-aos][data-aos-delay="2500"],body[data-aos-delay="2500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2500"].aos-animate,body[data-aos-delay="2500"] [data-aos].aos-animate{transition-delay:2.5s}[data-aos][data-aos][data-aos-duration="2550"],body[data-aos-duration="2550"] [data-aos]{transition-duration:2.55s}[data-aos][data-aos][data-aos-delay="2550"],body[data-aos-delay="2550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2550"].aos-animate,body[data-aos-delay="2550"] [data-aos].aos-animate{transition-delay:2.55s}[data-aos][data-aos][data-aos-duration="2600"],body[data-aos-duration="2600"] [data-aos]{transition-duration:2.6s}[data-aos][data-aos][data-aos-delay="2600"],body[data-aos-delay="2600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2600"].aos-animate,body[data-aos-delay="2600"] [data-aos].aos-animate{transition-delay:2.6s}[data-aos][data-aos][data-aos-duration="2650"],body[data-aos-duration="2650"] [data-aos]{transition-duration:2.65s}[data-aos][data-aos][data-aos-delay="2650"],body[data-aos-delay="2650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2650"].aos-animate,body[data-aos-delay="2650"] [data-aos].aos-animate{transition-delay:2.65s}[data-aos][data-aos][data-aos-duration="2700"],body[data-aos-duration="2700"] [data-aos]{transition-duration:2.7s}[data-aos][data-aos][data-aos-delay="2700"],body[data-aos-delay="2700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2700"].aos-animate,body[data-aos-delay="2700"] [data-aos].aos-animate{transition-delay:2.7s}[data-aos][data-aos][data-aos-duration="2750"],body[data-aos-duration="2750"] [data-aos]{transition-duration:2.75s}[data-aos][data-aos][data-aos-delay="2750"],body[data-aos-delay="2750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2750"].aos-animate,body[data-aos-delay="2750"] [data-aos].aos-animate{transition-delay:2.75s}[data-aos][data-aos][data-aos-duration="2800"],body[data-aos-duration="2800"] [data-aos]{transition-duration:2.8s}[data-aos][data-aos][data-aos-delay="2800"],body[data-aos-delay="2800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2800"].aos-animate,body[data-aos-delay="2800"] [data-aos].aos-animate{transition-delay:2.8s}[data-aos][data-aos][data-aos-duration="2850"],body[data-aos-duration="2850"] [data-aos]{transition-duration:2.85s}[data-aos][data-aos][data-aos-delay="2850"],body[data-aos-delay="2850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2850"].aos-animate,body[data-aos-delay="2850"] [data-aos].aos-animate{transition-delay:2.85s}[data-aos][data-aos][data-aos-duration="2900"],body[data-aos-duration="2900"] [data-aos]{transition-duration:2.9s}[data-aos][data-aos][data-aos-delay="2900"],body[data-aos-delay="2900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2900"].aos-animate,body[data-aos-delay="2900"] [data-aos].aos-animate{transition-delay:2.9s}[data-aos][data-aos][data-aos-duration="2950"],body[data-aos-duration="2950"] [data-aos]{transition-duration:2.95s}[data-aos][data-aos][data-aos-delay="2950"],body[data-aos-delay="2950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2950"].aos-animate,body[data-aos-delay="2950"] [data-aos].aos-animate{transition-delay:2.95s}[data-aos][data-aos][data-aos-duration="3000"],body[data-aos-duration="3000"] [data-aos]{transition-duration:3s}[data-aos][data-aos][data-aos-delay="3000"],body[data-aos-delay="3000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="3000"].aos-animate,body[data-aos-delay="3000"] [data-aos].aos-animate{transition-delay:3s}[data-aos]{pointer-events:none}[data-aos].aos-animate{pointer-events:auto}[data-aos][data-aos][data-aos-easing=linear],body[data-aos-easing=linear] [data-aos]{transition-timing-function:cubic-bezier(.25,.25,.75,.75)}[data-aos][data-aos][data-aos-easing=ease],body[data-aos-easing=ease] [data-aos]{transition-timing-function:ease}[data-aos][data-aos][data-aos-easing=ease-in],body[data-aos-easing=ease-in] [data-aos]{transition-timing-function:ease-in}[data-aos][data-aos][data-aos-easing=ease-out],body[data-aos-easing=ease-out] [data-aos]{transition-timing-function:ease-out}[data-aos][data-aos][data-aos-easing=ease-in-out],body[data-aos-easing=ease-in-out] [data-aos]{transition-timing-function:ease-in-out}[data-aos][data-aos][data-aos-easing=ease-in-back],body[data-aos-easing=ease-in-back] [data-aos]{transition-timing-function:cubic-bezier(.6,-.28,.735,.045)}[data-aos][data-aos][data-aos-easing=ease-out-back],body[data-aos-easing=ease-out-back] [data-aos]{transition-timing-function:cubic-bezier(.175,.885,.32,1.275)}[data-aos][data-aos][data-aos-easing=ease-in-out-back],body[data-aos-easing=ease-in-out-back] [data-aos]{transition-timing-function:cubic-bezier(.68,-.55,.265,1.55)}[data-aos][data-aos][data-aos-easing=ease-in-sine],body[data-aos-easing=ease-in-sine] [data-aos]{transition-timing-function:cubic-bezier(.47,0,.745,.715)}[data-aos][data-aos][data-aos-easing=ease-out-sine],body[data-aos-easing=ease-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.39,.575,.565,1)}[data-aos][data-aos][data-aos-easing=ease-in-out-sine],body[data-aos-easing=ease-in-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.445,.05,.55,.95)}[data-aos][data-aos][data-aos-easing=ease-in-quad],body[data-aos-easing=ease-in-quad] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quad],body[data-aos-easing=ease-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quad],body[data-aos-easing=ease-in-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-cubic],body[data-aos-easing=ease-in-cubic] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-cubic],body[data-aos-easing=ease-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],body[data-aos-easing=ease-in-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-quart],body[data-aos-easing=ease-in-quart] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quart],body[data-aos-easing=ease-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quart],body[data-aos-easing=ease-in-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}@media screen{html:not(.no-js) [data-aos^=fade][data-aos^=fade]{opacity:0;transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform}html:not(.no-js) [data-aos^=fade][data-aos^=fade].aos-animate{opacity:1;-webkit-transform:none;transform:none}html:not(.no-js) [data-aos=fade-up]{-webkit-transform:translate3d(0,100px,0);transform:translate3d(0,100px,0)}html:not(.no-js) [data-aos=fade-down]{-webkit-transform:translate3d(0,-100px,0);transform:translate3d(0,-100px,0)}html:not(.no-js) [data-aos=fade-right]{-webkit-transform:translate3d(-100px,0,0);transform:translate3d(-100px,0,0)}html:not(.no-js) [data-aos=fade-left]{-webkit-transform:translate3d(100px,0,0);transform:translate3d(100px,0,0)}html:not(.no-js) [data-aos=fade-up-right]{-webkit-transform:translate3d(-100px,100px,0);transform:translate3d(-100px,100px,0)}html:not(.no-js) [data-aos=fade-up-left]{-webkit-transform:translate3d(100px,100px,0);transform:translate3d(100px,100px,0)}html:not(.no-js) [data-aos=fade-down-right]{-webkit-transform:translate3d(-100px,-100px,0);transform:translate3d(-100px,-100px,0)}html:not(.no-js) [data-aos=fade-down-left]{-webkit-transform:translate3d(100px,-100px,0);transform:translate3d(100px,-100px,0)}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom]{opacity:0;transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom].aos-animate{opacity:1;-webkit-transform:translateZ(0) scale(1);transform:translateZ(0) scale(1)}html:not(.no-js) [data-aos=zoom-in]{-webkit-transform:scale(.6);transform:scale(.6)}html:not(.no-js) [data-aos=zoom-in-up]{-webkit-transform:translate3d(0,100px,0) scale(.6);transform:translate3d(0,100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-down]{-webkit-transform:translate3d(0,-100px,0) scale(.6);transform:translate3d(0,-100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-right]{-webkit-transform:translate3d(-100px,0,0) scale(.6);transform:translate3d(-100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-left]{-webkit-transform:translate3d(100px,0,0) scale(.6);transform:translate3d(100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-out]{-webkit-transform:scale(1.2);transform:scale(1.2)}html:not(.no-js) [data-aos=zoom-out-up]{-webkit-transform:translate3d(0,100px,0) scale(1.2);transform:translate3d(0,100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-down]{-webkit-transform:translate3d(0,-100px,0) scale(1.2);transform:translate3d(0,-100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-right]{-webkit-transform:translate3d(-100px,0,0) scale(1.2);transform:translate3d(-100px,0,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-left]{-webkit-transform:translate3d(100px,0,0) scale(1.2);transform:translate3d(100px,0,0) scale(1.2)}html:not(.no-js) [data-aos^=slide][data-aos^=slide]{transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;visibility:hidden}html:not(.no-js) [data-aos^=slide][data-aos^=slide].aos-animate{visibility:visible;-webkit-transform:translateZ(0);transform:translateZ(0)}html:not(.no-js) [data-aos=slide-up]{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}html:not(.no-js) [data-aos=slide-down]{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}html:not(.no-js) [data-aos=slide-right]{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}html:not(.no-js) [data-aos=slide-left]{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}html:not(.no-js) [data-aos^=flip][data-aos^=flip]{-webkit-backface-visibility:hidden;backface-visibility:hidden;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}html:not(.no-js) [data-aos=flip-left]{-webkit-transform:perspective(2500px) rotateY(-100deg);transform:perspective(2500px) rotateY(-100deg)}html:not(.no-js) [data-aos=flip-left].aos-animate{-webkit-transform:perspective(2500px) rotateY(0);transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-right]{-webkit-transform:perspective(2500px) rotateY(100deg);transform:perspective(2500px) rotateY(100deg)}html:not(.no-js) [data-aos=flip-right].aos-animate{-webkit-transform:perspective(2500px) rotateY(0);transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-up]{-webkit-transform:perspective(2500px) rotateX(-100deg);transform:perspective(2500px) rotateX(-100deg)}html:not(.no-js) [data-aos=flip-up].aos-animate{-webkit-transform:perspective(2500px) rotateX(0);transform:perspective(2500px) rotateX(0)}html:not(.no-js) [data-aos=flip-down]{-webkit-transform:perspective(2500px) rotateX(100deg);transform:perspective(2500px) rotateX(100deg)}html:not(.no-js) [data-aos=flip-down].aos-animate{-webkit-transform:perspective(2500px) rotateX(0);transform:perspective(2500px) rotateX(0)}}



/* ==========================================================
   NEW: Elfsight Reviews Badge (above banner slider)
   ========================================================== */
.elfsight-reviews-badge {
    max-width: 60em;
    margin: 0 auto;
    padding: .5em 1em 1em 0em;
    text-align: center;
}

/* ==========================================================
   NEW: Trust Badges Strip (icomoon icon required)
   ========================================================== */
.icon-flatrate-kc:before {
  content: "\e914";
}

.trust-badges-strip{
  background-color: #16233e;
  padding: 1.5em 3%;
}

.trust-badges-row{
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5em 2.5em;
  margin: 0;
}

.trust-badge{
  flex: 0 0 auto;
  width: auto;
  display: flex;
  align-items: center;
  gap: .6em;
  color: #ffffff;
}

.trust-badge [class^="icon-"],
.trust-badge [class*=" icon-"]{
  font-size: 1.6em;
  color: #d62232;
}

.trust-badge-label{
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: .95em;
  letter-spacing: .02em;
}

@media (max-width: 47.999em){
  .trust-badges-row{
    gap: 1em 1.5em;
  }

  .trust-badge-label{
    font-size: .85em;
  }
}

/* ==========================================================
   NEW: Emergency Section
   ========================================================== */
.emergency-section{
  background-color: #d62232;
  padding: 2.5% 5%;
}

.emergency-row{
  gap: 1.5em 0;
}

.emergency-heading{
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 2.2em;
  line-height: 1.15;
  color: #ffffff;
  margin-bottom: .15em;
}

.emergency-subheading{
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  font-size: 1.3em;
  color: #ffffff;
  margin-bottom: .3em;
}

.emergency-tagline{
  color: #ffffff;
  opacity: .9;
  font-size: 1em;
  margin: 0;
}

.emergency-btn-col{
  text-align: right;
}

.emergency-call-btn {
    display: inline-flex;
    align-items: center;
    background-color: #1f2c5f !important;
    border-color: #ffffff;
    color: #d62232 !important;
    font-size: 1.15em;
    padding: .7em 1.4em;
}

.emergency-call-btn span{
  margin-right: .5em;
}

.emergency-call-btn:hover{
  background-color: #16233e !important;
  border-color: #16233e;
  color: #ffffff !important;
}

@media (max-width: 47.999em){
  .emergency-copy,
  .emergency-btn-col{
    text-align: center;
  }

  .emergency-call-btn{
    width: 100%;
    justify-content: center;
  }
}

/* ==========================================================
   NEW: Additional Call Now / Schedule Service CTA rows
   (Section 2 / Section 6 / Section 8)
   ========================================================== */
.sec2-cta-btns,
.sec6-cta-btns,
.sec8-cta-btns{
  max-width: 40em;
  margin: 1.5em auto 0 auto;
  justify-content: center;
  gap: 1em;
}

.sec2-cta-btns .col-sm-12,
.sec6-cta-btns .col-sm-12,
.sec8-cta-btns .col-sm-12{
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.sec2-cta-btns .btn,
.sec6-cta-btns .btn,
.sec8-cta-btns .btn{
  display: inline-flex;
  align-items: center;
  width: auto;
  max-width: none;
  margin: 0;
}

.sec2-cta-btns .btn span,
.sec6-cta-btns .btn span,
.sec8-cta-btns .btn span{
  margin-right: .5em;
}

.sec8-cta-btns{
  margin: 1.5em 0 0 0;
  justify-content: flex-start;
}

@media (max-width: 47.999em){
  .sec2-cta-btns,
  .sec6-cta-btns,
  .sec8-cta-btns{
    flex-direction: column;
  }

  .sec2-cta-btns .col-sm-12,
  .sec6-cta-btns .col-sm-12,
  .sec8-cta-btns .col-sm-12{
    width: 100%;
    margin-bottom: 1em;
  }

  .sec2-cta-btns .btn,
  .sec6-cta-btns .btn,
  .sec8-cta-btns .btn{
    width: 100%;
    justify-content: center;
  }
}

/* ==========================================================
   NEW: Brand / Manufacturer Logos
   ========================================================== */
.brand-logos-section{
  padding: 2.5% 5%;
  background-color: #f5f6f9;
}

.brand-logos-row{
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2em 3em;
  margin: 0;
}

.brand-logo{
  flex: 0 0 auto;
  width: auto;
  max-width: 9em;
  text-align: center;
}

.brand-logo img{
  max-height: 3.5em;
  width: auto;
  filter: grayscale(100%);
  opacity: .7;
  transition: opacity .2s ease, filter .2s ease;
}

.brand-logo img:hover{
  filter: none;
  opacity: 1;
}

/* ==========================================================
   NEW: Certification Badges (Google Guaranteed, BBB, etc.)
   ========================================================== */
.certification-badges-section{
  padding: 2% 5% 3% 5%;
  background-color: #ffffff;
}

.certification-badges-row{
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2em 3em;
  margin: 0;
}

.certification-badge{
  flex: 0 0 auto;
  width: auto;
  max-width: 8em;
  text-align: center;
}

.certification-badge img{
  max-height: 4em;
  width: auto;
}



/* ==========================================================
   NEW: Service Page Photo Gallery (ACF Gallery field
   'photo_gallery' + [photo_gallery] shortcode). A horizontally
   scrolling, scroll-snap gallery (not a Bootstrap carousel) so
   several images are visible at once: 4 across on desktop, 2 on
   tablet, 1 on mobile.
   ========================================================== */
.service-gallery-section{
  padding: 2% 0;
}

.service-photo-gallery{
  position: relative;
  max-width: 62em;
  margin: 0 auto;
}

.service-gallery-track{
  display: flex;
  gap: 1em;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  padding-bottom: .5em;
  margin: 0;
}

.service-gallery-track::-webkit-scrollbar{
  height: .4em;
}

.service-gallery-track::-webkit-scrollbar-thumb{
  background: #d1d5db;
  border-radius: .3em;
}

.service-gallery-slide{
  flex: 0 0 calc(25% - .75em);
  scroll-snap-align: start;
}

.service-gallery-slide .rounded-image{
  width: 100%;
  height: 14em;
  object-fit: cover;
  border-radius: .5em;
  box-shadow: 0 .4em 1.2em rgba(0,0,0,.12);
}

.service-photo-gallery .custom-control{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.6em;
  height: 2.6em;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  z-index: 2;
}

.service-photo-gallery .control-circle{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: #ffffff;
  color: #d62232;
  font-size: 1em;
  box-shadow: 0 .2em .6em rgba(0,0,0,.15);
}

.service-gallery-prev{
  left: -1.2em;
}

.service-gallery-next{
  right: -1.2em;
}

@media (max-width: 61.999em){
  .service-gallery-slide{
    flex: 0 0 calc(50% - .5em);
  }

  .service-gallery-slide .rounded-image{
    height: 12em;
  }
}

@media (max-width: 47.999em){
  .service-photo-gallery{
    max-width: 100%;
  }

  .service-gallery-slide{
    flex: 0 0 100%;
  }

  .service-gallery-slide .rounded-image{
    height: 14em;
  }

  .service-gallery-prev{
    left: 0;
  }

  .service-gallery-next{
    right: 0;
  }
}

/* ==========================================================================
   Service Area Cards ([service_area_cards] shortcode)
   ========================================================================== */
.service-area-cards-wrap{
  margin: 1.5em 0 2em;
}

.service-area-cards-heading{
  font-weight: 800;
  font-size: 1.8em;
  color: #0D2C54;
  text-align: center;
  margin: 0 0 1em;
}

.service-area-cards{
  margin: 0;
}

.service-area-card-col{
  margin-bottom: 1.5em;
}

.service-area-card{
  display: block;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(0,0,0,0.12);
  text-decoration: none;
  height: 100%;
  background: #fff;
}

.service-area-card img{
  width: 100%;
  height: 160px;
  object-fit: cover;
  display: block;
}

.service-area-card-label{
  background: #0D2C54;
  color: #fff;
  text-align: center;
  padding: .6em .5em;
}

.service-area-card-city{
  display: block;
  font-weight: 700;
  font-size: 1.05em;
  text-transform: uppercase;
  letter-spacing: .02em;
  color: #fff;
}

.service-area-card-cta{
  display: block;
  font-size: .8em;
  color: #d62232;
  margin-top: .2em;
  font-weight: 600;
}



.service-area-card:hover .service-area-card-label,
.service-area-card:focus .service-area-card-label{
  background: #d62232;
}

@media (max-width: 575px){
  .service-area-card img{
    height: 130px;
  }
}

