/*
Theme Name: Divi Child Template
Version: 1.0
Description: A customized version of Divi which adds a number of tiny features you need.
Template: Divi
*/

body {
     font-size: 1.0625rem;
     font-family: 'Roboto', 'Open Sans', Arial, sans-serif;
     -webkit-font-smoothing: antialiased;
     text-rendering: optimizelegibility;
     font-feature-settings: "liga";
     color: #CCCCCC;
     background-color: #212526 !important;
     font-size: 14px;
     overflow-x: hidden;
}
 h1,h2,h3,h4,h5,h6 {
     font-family: 'Montserrat', Arial, sans-serif;
     font-weight: 700;
     color: #F5F5F7 !important;
}
 p strong {
     font-family: 'Roboto', Arial, sans-serif;
     font-size: 18px;
     font-weight: 700;
}
 div#page-container {
     overflow: hidden;
     background-color: transparent !important;
}
 .et_pb_row {
     width: 95% !important;
     padding-top: 50px;
}
.et_pb_section, #main-content, .single-post div#main-content {
    background-color: #212526;
}
/*HEADER STYLES*/

 header#main-header {
     background-color: #212526 !important;
     filter: drop-shadow(2px 4px 6px #333);
}
 .main-header-info-container {
     background: #212526;
     position: relative;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
     padding: 10px;
     font-size: 16px;
}
.main-header-info-holder {
    color: #fff;
}
 .main-header-contact-info-holder {
}
 .main-header-contact-info-holder a {
     color: #F2F2F2;
}
 .main-header-contact-info-holder a span {
     color: #ff6007;
}

.ws-header-booking {
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    background: transparent;
    padding: 5px 0px;
    height: 43px;
    z-index: 999;
}

.top_button {
    background: #212526;
    color: #fff;
    padding: 5px 10px;
    border: 1px solid #ff6007;
}
.top_button:hover, .floating-quote-btn:hover, #main-footer .listing-rev-btn:hover {
	transform: translate3d(5px, 5px, 5px);
	background-color: #ff6007;
	transition: 0.5s ease-in-out;
}
 .header-menu-container {
     width: 100%;
     max-width: 1300px;
}
 .header-info-holder {
     display: flex;
     margin: 0 auto;
     max-width: 1080px;
     align-items: center;
     justify-content: space-around;
}
 .logo_container {
     text-align: center;
     display: flex;
     justify-content: flex-start;
     align-items: center;
     margin-bottom: 5px;
     margin-left: 25px;
}
 img#logo {
     min-height: 60px !important;
     max-height: 75px !important;
     width: auto !important;
     max-width: 280px !important;
}
 .text-logo {
     font-family: 'Montserrat', sans-serif;
     color: #F5F5F7;
     font-size: 16.2px !important;
     line-height: 1.1;
     display: flex;
     align-items: center;
     flex-direction: row;
}
 .text-logo-icon {
     width: 35px;
     margin: 0 auto;
}
 span.info-addon {
    color: #333333;
    text-align: center;
    display: none;
}

 .main-header-napln-container {
     display: flex;
     justify-content: center;
     align-items: center;
     line-height: 1;
     margin: 0 5px;
     font-size: 16px;
     color: #000;
     text-align: center;
     min-height: 32px;
}
 .main-header-napln-container .fa {
     margin-right: 5px;
     color: #212526;
}
 .main-header-email-btn {
     display: none;
     justify-content: center;
     align-items: center;
     line-height: 1;
     font-size: 14px;
     color: #fff;
     background: #ff6007;
     position: absolute;
     right: 0;
     z-index: 999;
     height: 42px;
     width: 150px;
}
 .main-header-email-btn .fa {
     margin-right: 5px;
     margin-bottom: 2px;
     color: #fff;
}
.main-header-email-btn:hover{
	transform: translate3d(5px, 5px, 5px);
	transition: 0.5s ease-in-out;
}
 .et_mobile_menu li a {
     color: #fff !important;
}


/*change Divi opened hamburger menu to X*/
 .mobile_nav.opened .mobile_menu_bar:before {
     content: '\4d';
}
/*rotate the Divi Menu icon on click*/
 .mobile_menu_bar:before {
     transition: all .4s ease;
     transform: rotate(0deg);
     display: block;
     color: #F2F2F2;
     text-align: center;
     font-size: 50px;
     top: -27px;
     right: -26px;
     left: auto;
}
.add-info-btn {
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     background: #212526;
     width: 50px;
     padding: 10px;
     cursor: pointer;
     box-shadow: rgb(0 0 0 / 10%) 0px 10px 15px -3px, rgb(0 0 0 / 5%) 0px 4px 6px -2px;
     border: 1px solid #F2F2F233;
     border-right: none;
}
 .add-info-block {
     display: flex;
     justify-content: center;
     align-items: flex-start;
     width: 270px;
     position: fixed;
     right: -220px;
     -webkit-transition: right 0.4s ease-in-out;
     transition: right 0.4s ease-in-out;
     margin-top: 35px;
     z-index: 97;
}
 .open-info {
     right: 0;
     z-index: 9999;
}
 .open-info #add-info-open-icon {
     display: none;
}
 .open-info #add-info-close-icon {
     display: block;
}
 .add-info-container {
     background: #212526;
     display: flex;
     flex-direction: column;
     padding: 20px;
     width: 220px;
     height: auto;
     border-bottom-left-radius: 10px;
     box-shadow: rgb(0 0 0 / 10%) 0px 10px 15px -3px, rgb(0 0 0 / 5%) 0px 4px 6px -2px;
}
 .add-info-btn .fa {
     color: #ff6007;
}
 #add-info-close-icon {
     display: none;
}
 .add-info-btn span {
     line-height: 1;
     color: #F2F2F2;
     margin-top: 5px;
     font-size: 12px;
}
 .add-info-container a, .header-location-container {
     color: #fff;
     font-size: 15px;
     display: flex;
     justify-content: space-between;
     font-weight: 400;
     text-align: right;
     width: 100%;
}
 .email-btn {
     margin: 10px 0;
}
 .add-info-container .fa {
     margin-right: 5px;
     margin-top: 2px;
}
 div#et-top-navigation {
     width: 100%;
     height: 30px;
     padding: 45px !important;
     background: transparent;
     position: relative;
     display: flex;
     align-items: center;
}
 nav#top-menu-nav ul#top-menu li a{
         color: #F2F2F2 !important;
         padding-top: 12px !important;
         padding-bottom: 18px !important;
         text-transform: capitalize;
    }
     #top-menu .menu-item-has-children>a:first-child:after {
         top: 12px;
         left: 53px;
    }
    ul#top-menu {
    margin-right: 10px;
    }
     nav#top-menu-nav ul#top-menu .current-menu-item a {
         color: #ff6007 !important;
    }
     nav#top-menu-nav ul#top-menu li {
         padding-left: 7px;
         padding-right: 7px !important;
         filter: drop-shadow(2px 4px 6px #333);
    }
   
    
     nav#top-menu-nav {
         width: calc(100vw - 190px);
         max-width: 900px;
         display: flex;
         justify-content: flex-end;
    }
     nav#top-menu-nav ul#top-menu .current-menu-item {
         background: transparent;
    }
     ul.sub-menu {
        filter: drop-shadow(0px 1px 3px #5b5b5b);
        top: 40px;
        background-color: #212526 !important;
        border-color: #ff6007 !important;
    }
     nav#top-menu-nav #top-menu ul.sub-menu a {
         color: #fff !important;
         position: relative;
         padding: 6px 6px 6px 16px !important;
         line-height: 1.2;
    }
     #top-menu-nav ul.sub-menu a:before {
         content: '\f149';
         position: absolute;
         left: 0;
         font-family: 'FontAwesome';
         -webkit-transform: scaleX(-1) rotate(90deg);
         transform: scaleX(-1) rotate(90deg);
    }
     ul.sub-menu li {
         padding: 0 10px !important;
         width: 100%;
    }
     ul.sub-menu li a {
         padding: 5px 0px !important;
         width: 100% !important;
    }

div#et_mobile_nav_menu {
     width: 100%;
}
 .mobile_menu_bar {
     padding-bottom: 0 !important;
     background: transparent;
     width: 50px;
     height: 42px;
     margin-top: 0px;
     margin-left: auto;
}
 .et_mobile_menu {
    width: 100px;
	top: 100%;
}

 .mobile_nav ul#mobile_menu ul.sub-menu li a:not(.mobile-toggle) {
     position: relative;
}

 .mobile_nav ul#mobile_menu ul.sub-menu li a:not(.mobile-toggle):before {
     content: '\f149';
     position: absolute;
     left: -14px;
     font-family: 'FontAwesome';
     -webkit-transform: scaleX(-1) rotate(90deg);
     transform: scaleX(-1) rotate(90deg);
}
ul#mobile_menu {
    width: 100%;
    top: 100%;
    border-color: #F2F2F2;
    background-color: #212526 !important;
}

 span.select_page {
     display: none !important;
}
 .floating-cta-btn {
     position: fixed;
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     background: #ff6007;
     width: 50px;
     padding: 10px;
     cursor: pointer;
     box-shadow: rgb(0 0 0 / 10%) 0px 10px 15px -3px, rgb(0 0 0 / 5%) 0px 4px 6px -2px;
     border: 1px solid #F2F2F233;
     border-right: none;
     right: 0;
     margin-top: 100px;
     z-index: 98;
}
 .floating-cta-btn a .fa {
     animation: ringing 5s ease-in-out infinite;
     color: #fff;
     font-size: 24px;
}
@keyframes ringing {
     20% {
         transform: rotate(0deg);
    }
     21% {
         transform: rotate(10deg);
    }
     22% {
         transform: rotate(-10deg);
    }
     23% {
         transform: rotate(12deg);
    }
     24% {
         transform: rotate(-12deg);
    }
     25% {
         transform: rotate(12deg);
    }
     26% {
         transform: rotate(-12deg);
    }
     28% {
         transform: rotate(10deg);
    }
     30% {
         transform: rotate(-10deg);
    }
     32% {
         transform: rotate(5deg);
    }
     34% {
         transform: rotate(-5deg);
    }
     36% {
         transform: rotate(2deg);
    }
     38% {
         transform: rotate(0deg);
    }
}

   #main-footer .listing-rev-btn{
    display: flex;
    align-items: baseline;
    position: fixed;
    z-index: 9999;
}
 .et-fixed-header.sticky-menu .add-info-block, .et-fixed-header.sticky-menu .floating-cta-btn  {
     top: 20px;
}
 
/* .booking-button-switch {display:none !important;} */
 section.et_pb_module.et_pb_fullwidth_header.et_pb_fullwidth_header_0.et_pb_text_align_center.et_pb_bg_layout_dark.et_pb_fullscreen {
     min-height: 550px !important;
     position: relative; 
}
 .et_pb_fullscreen .et_pb_fullwidth_header_container {
     max-height: 550px !important;
     min-height: 450px !important;
     height: calc(100vh - 303px) !important;
     width: 100%;
}
 .header-content {
     margin: 0 auto !important;
     padding: 0px !important;
     width: 100% !important;
     max-width: 1080px !important;
}
.header-content-block {
    margin-top: 80px;
}
 .et_pb_fullwidth_header .et_pb_fullwidth_header_scroll a .et-pb-icon {
     margin-left: -5px !important;
}
 .header-btns {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
}

/*END HEADER STYLES*/
/*PAGE STYLES*/
 .ws-slogan h1 {
     font-family: 'Montserrat', sans-serif;
     color: #FAF7F5 !important;
     line-height: 1.1;
     font-weight: bold;
     font-size: 33px;
     text-transform: uppercase;
     width: 100%;
     text-align: center;
}
.button span{
	padding-left: 15px;	
}
 .button {
     background-color: #212526;
     text-align: center;
     color: #F2F2F2;
     padding: 18px 15px;
     width: 220px;
     display: inline-block;
     line-height: 1;
     margin-top: 10px;
     border: 1px solid #ff6007;
     position: relative;
     overflow: hidden;
     cursor: pointer;
     transition: background-color 0.3s ease;
}
.button .fa{
	position: absolute;
	display: block;
	animation: ring 7s infinite .7s ease-in-out;
	transform-origin: 50% 4px;
	padding-left: 20px;
}
@keyframes ring {
    20% {
         transform: rotate(0deg);
    }
     21% {
         transform: rotate(5deg);
    }
     22% {
         transform: rotate(-5deg);
    }
     23% {
         transform: rotate(6deg);
    }
     24% {
         transform: rotate(-6deg);
    }
     25% {
         transform: rotate(6deg);
    }
     26% {
         transform: rotate(-6deg);
    }
     28% {
         transform: rotate(5deg);
    }
     30% {
         transform: rotate(-5deg);
    }
     32% {
         transform: rotate(3deg);
    }
     34% {
         transform: rotate(-3deg);
    }
     36% {
         transform: rotate(1deg);
    }
     38% {
         transform: rotate(0deg);
    }
}

.button:before, .header-button-quote:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ff6007; 
  transform: translateX(-100%); 
  transition: transform 0.5s ease; 
  z-index: -1; 
}
.button:hover:before, .header-button-quote:hover:before {
  transform: translateX(0); 
}
 .button:hover, .header-button-quote:hover {
     background-color: transparent;
}
.header-button-quote {
    background: #212526;
    color: #F2F2F2;
    display: inline-block;
    line-height: 1;
    text-align: center !important;
    height: 52px;
    width: 220px;
    margin-top: 10px;
    border: 1px solid #ff6007;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.3s ease;
    text-transform: capitalize;
}
.header-button-quote:hover {
      filter: drop-shadow(2px 4px 6px black);
}
.header-button-quote span{
	padding-left: 1px;
}
.fa-edit:before, .fa-pencil-square-o:before {
	padding-right: 3px;
}
p.subtitle {
    color: #e4e4e4;
    padding: 15px 0 !important;
    font-family: 'Roboto', sans-serif;
    font-size: 17px;
    filter: drop-shadow(2px 4px 6px #212526);
    line-height: 1.4;
    text-transform: capitalize;
    width: 90%;
    max-width: 850px;
    margin: 0 auto;
    text-align: center;
}

/* BADGES SECTION STYLE */
 div#css-badges-section {
     background-color: #212526 !important;
     padding-top: 70px !important;
}
 .badges-container {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
}
 .badge-holder {
     background-color: #212526;
     display: flex;
     flex-direction: row;
     justify-content: center;
     align-items: center;
     width: 100%;
     max-width: 375px;
     padding: 5px 5px 5px 5px;
     margin: 5px;
     position: relative;
     box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
     color: #212526;
     border: 1px solid #ff600759;
}
 .badge-holder:hover {
     box-shadow: 0px 0px 8px 0px #fcfffc99;
     transform: translate3d(5px, 5px, 5px);
     transition: 0.5s ease-in-out;
}
 .badge-content {
     text-align: center;
     line-height: 1;
     color: #F5F5F7;
     text-transform: capitalize;
     font-size: 17px;
     min-height: 34px;
     padding-bottom: 10px !important;
     padding-top: 10px;
     font-family: 'Montserrat', sans-serif;
}
 .badge-holder img {
     width: 120px;
     height: 120px;
     filter: opacity(0.9);
     /* background-color: #CCCCCC; */
     margin-right: 10px;
}
 .badge-title {
     font-size: 15px;
     color: #CCCCCC;
     text-align: center;
     line-height: 1.2;
     min-height: 36px;
     display: flex;
     justify-content: center;
     align-items: center;
}
.section-title-heading {
     text-transform: uppercase;
     color: #fff !important;
     font-weight: 500;
     text-align: center;
     border-bottom: 1px solid #ff6007;
     margin-bottom: 15px;
     padding-bottom: 2px;
}
 .entry-title {
     text-align: center;
     font-size: 26px !important;
     font-weight: bold;
     font-family: 'Montserrat', sans-serif;
     line-height: 1.1;
}
 .home .entry-title {
     color: #fff;
     padding: 0;
}

 .page-title-block {
     position: relative;
     display: flex;
     justify-content: center;
     align-items: center;
     flex-direction: column;
     margin-bottom: 60px;
     padding-bottom: 15px;
}
 .page-title-block:before {
     content: '';
     position: absolute;
     width: 200vw;
     height: 200%;
     background: #333;
     top: -100%;
     left: -70%;
     z-index: -1;
}
 .page-title-block:after {
     content: '';
     position: absolute;
     width: 0;
     height: 0;
     border-color: #333333;
     border-left: 50vw solid transparent;
     border-right: 50vw solid transparent;
     border-top: 35px solid;
     z-index: -1;
     bottom: -35px;
}
 div#home-title-block {
     background-color: #212526 !important;
}
 div#home-title-block-container {
     display: flex;
     align-items: center;
     padding: 0;
}
 div#home-title-block-container .et_pb_column {
     margin-bottom: 0 !important;
}
.first-par {
    align-items: center;
}
h2.par-title {
    margin-bottom: 20px;
    font-size: 25px;
}
h2.par-title:after, p.free-estimate-title:after {
    content:'';
    width: 20%;
    height: 5px;
    left: 0;
    top: 35px;
    position: absolute;
    background-color: #ff6007;
}
.photos-par {
    position: relative;
    width: 100%;
    height: 420px;
    overflow: hidden;
	background-color: #03080b;
    background-blend-mode: overlay;
}

.bgr-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(1) opacity(0.7);
}

.half-img {
    position: absolute;
    top: 157px;
    right: 2%;
    width: 57%;
    height: 74%;
    object-fit: cover;
    border-top-left-radius: 80%;
    border-top-right-radius: 80%;
    border: 6px solid #cccccc;
    box-shadow: 0 12px 30px rgba(0,0,0,0.35);
    background: #CCCCCC;
}
.half-img:hover {
	transform: scale(1.1);
	transition: 0.7s ease-in-out;
}
.circle-img {
    position: absolute;
    top: 8px;
    left: 8px;
    width: 190px;
    height: 190px;
    object-fit: cover;
    border-radius: 50%;
    border: 6px solid #cccccc;
    box-shadow: 0 12px 30px rgba(0,0,0,0.35);
    background: #CCCCCC;
    background-image: url(/wp-content/uploads/2025/12/Affordable-Asphalt-Contractor.webp);
    background-size:cover;
    background-repeat: no-repeat;
    background-position: bottom;
}
.circle-img:hover {
	transform: scale(1.1);
	transition: 0.7s ease-in-out;
}
/* SERVICES SECTION STYLE */
 div#home-section-title {
     background-color: #ff6007 !important;
     display: flex;
     justify-content: center;
     position: relative;
}
 div#home-section-title:before {
     content: '';
     position: absolute;
     width: 0;
     height: 0;
     border-left: 25px solid transparent;
     border-right: 25px solid transparent;
     border-top: 25px solid #ff6007;
     bottom: -25px;
     z-index: 999;
}
 div#services-blocks-section {
     background-color: #3c4344 !important;
}
 div#services-blocks-section:after {
     top: auto;
     right: auto;
     left: 0;
     bottom: 0;
     transform: rotate(180deg);
}
 .srvBlockTitle p {
     text-align: center;
     font-size: 26px;
     color: #F2F2F2;
     line-height: 1.2;
     padding: 0;
     font-family: 'Roboto', sans-serif;
     font-weight: bold;
}
 .srvElement {
     max-width: 500px;
     margin: 0 auto;
     margin-bottom: 25px;
     margin-top: 25px;
     overflow: hidden;
}
 .srv-icon {
     position: absolute;
     background: #fff;
     width: 75px;
     height: 75px;
     right: 0;
     bottom: -8px;
     display: flex;
     justify-content: center;
     align-items: center;
     z-index: 9999;
     border: 5px solid #ff6007;
}
 .srv-icon img {
     width: 65px !important;
     height: 60px !important;
     object-fit: cover !important;
     object-position: center!important;
}
 .srvElementHeader h2 {
     text-align: center;
     font-weight: bold;
     font-family: 'Montserrat', sans-serif;
     padding-bottom: 5px;
     padding-top: 10px;
     font-size: 22px;
     min-height: 59px;
     display: flex;
     justify-content: center;
     align-items: center;
}
.srvElementHeader h2:hover {
	color: #ff6007 !important;
	font-size: 24px;
	transform: scaleX(1.1);
	transition: 0.5s ease-in-out;
}
 .srvElementImg {
     display: flex;
     justify-content: center;
     align-items: center;
     margin-bottom: 5px;
     position: relative;
}
 .srvElementImg img {
     width: 100%;
     max-height: 330px;
     object-fit: cover;
     object-position: center;
     border-top-left-radius: 80%;
     border-top-right-radius: 80%;
}
 .srvElementBody {
     padding: 0px 20px 20px 20px;
}
 .srvElementBody a {
  color: #ff6007;
 }
 .srvElementHeader {
     border-top: 3px solid #ff6007;
}
 .srvElementContent {
     text-align: justify;
     font-size: 16px;
     line-height: 1.6;
     color: #ccc;
}
 .srvElement:hover .srvElementImg img {
     filter: grayscale(1) drop-shadow(0px 0px 6px #fff);
	 transition: 0.7s ease-in-out;
}
#additionalServices {
    list-style: none;
    text-align: center;
    padding: 0;
    list-style-type: none;
    margin-top: 10px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

#additionalServices li {
    break-inside: avoid;
    padding: 5px 3px;
    font-size: 18px;
    color: #cccccc;
    position: relative;
    text-align: center;
    margin-bottom: 0 !important;
}
#additionalServices li a {
	color: #fff;
	text-decoration: underline;
}
#additionalServices li::before {
    content: "\f00c";
    font-family: 'FontAwesome';
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 5px;
    color: #ff6007;
}
/* SERVICES LIST SECTION STYLE */
 .homepage-services {
     text-align: center;
     margin: 0 auto;
     max-width: 520px;
}
 .homepage-services #servcss {
     padding: 0;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-around;
}
 .homepage-services #servcss li {
     position: relative;
     margin: 0.3em 3px;
     color: #cccccc;
     text-align: right;
     display: flex !important;
     align-items: center;
     justify-content: center;
     flex-direction: row;
     line-height: 1.2;
}
 .homepage-services #servcss li:before {
     content: '\f101';
     color: #ff6007;
     font-family: 'FontAwesome';
     padding-right: 10px;
}
/*HOME LIST STYLE*/
ul.unordered-list-container, ol.ordered-list-container {
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap;
    padding: 0;
}
ul li.list-item{
    list-style: inside disc;
}
li.list-item {
	position: relative;
	overflow: hidden;
	font-size: 17px;
	width: 500px;
	border-radius: 40px;
	padding: 10px;
	margin: 10px;
	background-color: #0809098a;
	box-shadow: 1px 1px 1px #ff6007, -1px -1px 4px #ff60075e;
	transform: translateY(0);
}
li.list-item:after{
content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 5px;
  background-color: #ff6007; 
  transition: width 0.5s ease-in-out;
}
li.list-item:hover::after {
  width: 100%; 
}
.list-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #090a0ad6;
	padding: 40px !important;
}
div#last-content-3-section {
	position: relative;
}
.third-content-img {
  position: absolute;
  filter: opacity(0.5);
  top: 0px;
  right: -42px;
  width: 650px;
}
#first-content-section, #second-content-section {
	background: fixed;
	background-size: cover;
	background-repeat: no-repeat;
}
/* PROJECTS SLIDER STYLE */
 div#slider-section {
     background: #212526;
     text-align: center;
     padding-top: 60px;
     padding-bottom: 20px;
}
 .projects-slider-subtitle {
     text-transform: uppercase;
     border-bottom: 1px solid #ff6007;
     color: #cccccc;
     font-weight: 700;
     text-align: center;
     margin-bottom: 15px;
     padding-bottom: 2px;
     display: inline-block;
     max-width: 80%;
}
 .projects-slider-title {
     text-align: center;
     font-size: 26px !important;
     font-weight: bold;
     font-family: 'Roboto', sans-serif;
     line-height: 1.1;
     color: #F5F5F7;
     width: 95%;
     margin: 0 auto;
}
 .swiper-container {
     position: relative;
     width: 95%;
     margin: 0 auto;
     max-width: 2000px;
}
 .swiper {
     width: 100%;
     padding: 30px 0 90px 0;
}
 .swiper-slide {
     display: flex;
     flex-direction: column;
     align-items: center;
     position: relative;
     border-radius: 12px;
}
 .slide-content {
     display: flex;
     background-color: transparent;
     justify-content: center;
     align-items: center;
     width: 100%;
}
 .slide-content img {
     width: 100%;
     height: 400px;
     border-top-left-radius: 80%;
     border-top-right-radius: 80%;
     object-fit: cover;
     object-position: center;
}
 .slider-button {
     display: inline-block;
     position: absolute;
     bottom: 12%;
     background: #ff6007;
     color: #F2F2F2;
     padding: 10px 18px;
     line-height: 1;
     border: 1px solid #212526;
}
.slider-button span{
	padding-left: 15px;
}
.slider-button:hover{
	transform: translateY(-5px);
	background-color: #212526;
	border-color: 1px solid #ff6007;
	transition: 0.5s ease-in-out;
}
.slider-button .fa {
	position: absolute;
	left: 18px;
	display: block;
	animation: ring 7s infinite .7s ease-in-out;
	transform-origin: 50% 4px;
}
 .slide-content .title {
     position: absolute;
     color: #fff;
     font-family: 'Roboto', sans-serif;
     font-size: 20px;
     bottom: 5%;
     width: 192px;
     text-align: center;
     text-shadow: 0px -1px 0 rgb(0 0 0 / 40%), 1px -1px 0 rgb(0 0 0 / 40%), -1px 1px 0 rgb(0 0 0 / 40%), 1px 1px 0 rgb(0 0 0 / 40%);
     filter: drop-shadow(1px 1px 1px #ff6007);
     cursor: pointer;
}
 .slide-title {
     position: absolute;
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     bottom: -55px;
}
 .slide-title img {
     width: 80px;
     background: #fff;
     border: 5px solid #ff6007;
}
.slide-title img:hover {
	transform: scaleY(1.1);
	transition: 0.5s ease-in-out;
	cursor: pointer;
}
 .slide-title span {
     color: #fff;
     font-family: 'Roboto', sans-serif;
     display: none;
}
.swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right {
background-image: none;
}
 .swiper-button-next:after, .swiper-button-prev:after {
     display: none;
}
 .swiper-button-next .fa, .swiper-button-prev .fa {
     color: #F2F2F2;
}
 .swiper-button-next, .swiper-button-prev {
     background: #333;
     border: 1px solid #ff6007;
}
 .swiper-button-next:hover, .swiper-button-prev:hover {
	transform: scalex(1.2);
	transition: 0.5s ease-in-out; 
 }
div#second-content-section-paragraph {
    padding-top: 50px;
}

/* NAP SECTION STYLE */
 div#homepage-nap-section {
     background-color: #212526 !important;
     background-position-x: 10%;
}
 .homepage-nap h3 {
     text-align: center;
     color: #F2F2F2;
     line-height: 1.2;
     padding: 0;
     font-size: 18px;
     text-shadow: -1px -1px 0 rgb(0 0 0 / 40%), 1px -1px 0 rgb(0 0 0 / 40%), -1px 1px 0 rgb(0 0 0 / 40%), 1px 1px 0 rgb(0 0 0 / 40%);
}
 .homepage-nap h3 strong {
     color: #ff6007;
     filter: drop-shadow(2px 4px 6px black);
     font-size: 26px;
     line-height: 1.2;
     display: inline-block;
     padding-bottom: 10px;
}
/* NAP Google listing button */

#main-footer .listing-rev-btn .fa {
    display: block;
    margin-right: 5px;
}

#main-footer .listing-rev-btn img {
    display: none;
}

#main-footer .listing-rev-btn {
    border: 1px solid #ff6007;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    background: #212526;
    color: #CCCCCC;
    bottom: 10px;
    padding: 5px 35px 5px 32px;
    font-weight: normal;
    font-size: 16px !important;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 999;
}
/* Floating Quote Button button */
.floating-quote-btn {
    display: inline-block;
    position: fixed;
    left: 0;
    background: #212526;
    color: #CCCCCC;
    border: 1px solid #ff6007;
    border-left: 0;
    bottom: 58px;
    padding: 6px 5px 6px 5px;
    font-weight: normal;
    z-index: 9999;
}

#contact-form-section .et_pb_row {
     width: 95% !important;
     max-width: 900px;
     padding: 20px !important;
     background-color: #eeeff3;
     filter: drop-shadow(2px 4px 6px #221f20);
}
 p.free-estimate-title {
     font-size: 26px !important;
     font-weight: bold;
     font-family: 'Roboto', sans-serif;
     line-height: 1.1;
     color: #F5F5F7;
     text-shadow: -1px -1px 0 rgb(0 0 0 / 40%), 1px -1px 0 rgb(0 0 0 / 40%), -1px 1px 0 rgb(0 0 0 / 40%), 1px 1px 0 rgb(0 0 0 / 40%);
     margin-bottom: 15px;
     padding-bottom: 2px;
}
 div#contact-form-section {
     padding-top: 0;
     background: rgb(255,255,255);
     background: linear-gradient(180deg, rgba(255,255,255,1) 50%, rgb(56 142 60) 50%, rgb(56 142 60) 100%);
}
div#contact-section {
    display: flex;
    justify-content: center;
}
 input#customer_name {
     width: calc(50% - 5px);
     float: left;
}
 input#phone-cf {
     width: calc(50% - 5px);
     float: left;
     margin-left: 10px;
}
 textarea#message {
     margin-bottom: 20px;
}
 #contact img {
     float: left;
     width: 120px;
     height: 40px;
     min-height: 40px;
     border-radius: 5px;
     filter: grayscale(1);
}
 input#vercode {
     width: calc(100% - 130px);
     margin: 0;
     margin-left: 10px;
     float: left;
     padding: 7px 10px 7px;
     height: 40px;
}
 form#contactForm {
     text-align: center;
}
 input#submitter {
     font-size: 16px;
     font-weight: 400;
     text-transform: capitalize;
     transition: 500ms;
     position: relative;
     z-index: 1;
     height: 39px;
     background: #212526;
     color: #F2F2F2;
     border-color: #ff6007;
     padding: 11px 20px;
     display: inline-block;
     line-height: 1;
     width: 210px;
     text-align: center;
     border-radius: 0;
}
 input#submitter:hover {
    color: #fff;
    background: #ff6007;
    transform: translate3d(5px, 5px, 5px);
    transition: 0.5s ease;
}
 input.text, input.title, input[type=email], input[type=password], input[type=tel], input[type=text], select, textarea {
     max-width: 100%;
     padding: 7px 5px 7px;
     height: auto;
     display: block;
     line-height: 1;
     font-weight: 300;
     color: #fff !important;
     background-image: none;
     margin-bottom: 10px !important;
     background: rgb(51 51 51 / 39%);
     box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
     backdrop-filter: blur(5px);
     -webkit-backdrop-filter: blur(5px);
     border: 1px solid rgb(255 255 255 / 30%);
}
 #contactForm input[type=text]::placeholder, #contactForm input[type=password]::placeholder, #contactForm input[type=tel]::placeholder, #contactForm input[type=email]::placeholder, #contactForm input.text::placeholder, #contactForm input.title::placeholder, #contactForm textarea::placeholder, #contactForm select {
     color: #fff !important;
}
 #contactForm input[type=text]:focus, #contactForm input[type=password]:focus, #contactForm input[type=tel]:focus, #contactForm input[type=email]:focus, #contactForm input.text:focus, #contactForm input.title:focus, #contactForm textarea:focus, #contactForm select:focus {
     color: #fff !important;
     border-color: #ff6007;
}
 #contact {
     padding: 0;
     max-width: 750px;
     margin: 0 auto;
}
 .link-button {
     width: 210px;
     text-align: center;
     background: #212526;
     color: #F2F2F2;
     padding: 10px 25px;
     display: inline-block;
     line-height: 1;
     margin-top: 10px;
     border: 1px solid #ff6007;
}
 .link-button:hover {
     color: #fff;
     background: #646464;
}
.et-search-form, blockquote {
    border-color: #ff6007;
}
.wpcr3_button_1 {
    border: none !important;
    color: #fff !important;
	background: unset;
    background-color: #ff6007;
}
.wpcr3_button_1:hover{
	background-color: #212526 !important;
	background: unset;
	filter: drop-shadow(2px 4px 3px #333);
}

/***** TESTIMONIALS FORM *****/
 .wpcr3_respond_2 input[type="text"] {
     margin: 3px 0;
}
 .wpcr3_respond_2 input[type="text"], .wpcr3_in_content textarea {
     background: #ffffff !important;
     color: #000 !important;
     border-color: #000 !important;
}
 .wpcr3_respond_2 input[type="text"]:focus, .wpcr3_in_content textarea:focus {
     color: #fff;
     border-color: #ffffff;
}
 .wpcr3_table_2 td {
     font-size: 1em !important;
}
 .wpcr3_leave_text {
     font-size: 1.1em;
}
 .wpcr3_leave_text {
     margin-bottom: 20px;
}
 .wpcr3_button_1, .wpcr3_button_1:hover {
     margin-top: 10px;
     background: #ff6007;
     color: #fff;
     border: 1px solid #ff6007;
     border-radius: 0px;
}
 .review-title {
    font-size: 26px !important;
	 }
     .wpcr3_respond_3, .wpcr3_aggregateRating, .wpcr3_table_2 td {
         text-align: center !important;
    }
     .wpcr3_div_2 {
         width: 100%;
    }
     .wpcr3_table_2 tr:last-of-type td {
         margin: 20px auto 0 !important;
    }
     .wpcr3_table_2 td {
         display: block;
         padding: 0 !important;
    }
     .wpcr3_table_2 td:first-child {
         margin-top: 10px !important;
    }
     .wpcr3_rating_style1_status {
         width: 85px !important;
    }
     .wpcr3_respond_2 input[type="text"], .wpcr3_in_content textarea {
         width: 100% !important;
         min-width: unset !important;
    }
     .wpcr3_submit_btn, .wpcr3_cancel_btn {
         width: 40%;
    }


/* FOOTER STYLE */
 #main-footer {
     background-color: #212526;
     background-blend-mode: overlay;
     background-image: url(/wp-content/uploads/2025/12/footer-bg.webp);
     background-repeat: no-repeat;
     background-position: bottom;
     background-size: cover;
}
 #main-footer .container {
     width: 95%;
}
 div#footer-bottom {
     background-color: #212526;
     padding: 15px;
     color: #F5F5F7;
}
 .fwidget {
        width: 100%;
    }
 .paymentsbox {
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
}
 .footer-widget h4 {
     color: #F2F2F2;
     font-size: 22px;
     margin-bottom: 20px;
     margin-top: 30px;
     font-weight: bold;
     line-height: 1.5em;
     text-align: center;
     border-bottom: 1px solid #ff6007;
     text-transform: uppercase;
     font-family: 'Roboto', sans-serif;
}

 .footer-widget .textwidget, #menu-footer-menu {
     color: #cccccc;
     text-align: center;
}
 #footer-widgets .footer-widget a {
     background-color: #fff;
}
#footer-widgets .footer-widget a{
	color: #cccccc !important;
}
 table.openinghours {
     max-width: 350px;
     margin: 0 auto !important;
     width: 100% !important;
}
 table.openinghours tr {
     display: flex;
     justify-content: space-between;
     line-height: 2;
     font-family: 'Open Sans', sans-serif;
     color: #cccccc;
}

 #current-day {
     background-color: #ff6007;
     padding: 0 2px;
}
 #current-day td {
     color: #fff;
     text-shadow: none;
}
 #closed-day {
     color: #efefef;
}

ul#menu-footer-menu li a {
    background: transparent !important;
}

ul#menu-footer-menu li:before {
    color: #ff6007 !important;
    content: '\f101' !important;
    font-family: 'FontAwesome' !important;
    border: none !important;
    top: 0 !important;
}
/* SIDEBAR, BLOG PAGE, BLOG POST STYLES */
 .et_pb_sidebar_0 h4.widgettitle {
     font-size: 26px;
     font-weight: 400;
     color: #fff;
     position: relative;
     margin-bottom: 10px;
     line-height: 1.2;
     text-align: center;
     border-bottom: 1px solid #ff6007;
}
 #sidebar h4.widgettitle {
     font-size: 26px;
     font-weight: 400;
     color: #062d5b;
     position: relative;
     margin-bottom: 10px;
     line-height: 1.2;
     text-align: center;
     border-bottom: 1px solid #ff6007;
}
 .et_pb_sidebar_0 .textwidget {
     text-align: center;
}
.et_pb_post p, .post-meta a {
	color: #fff !important;
}
 #sidebar .textwidget {
     text-align: center;
}
 .single-post div#main-content, .blog div#main-content {
     background-color: #212526;
     min-height: 50vh;
}
 .single-post .et_pb_post .entry-content {
     text-align: justify;
}

   .single-post div#main-content .container {
    padding: 0px 0 !important;
}
.et_pb_title_meta_container, .post-meta {
    text-align: center;
}
 .post-content-inner {
    text-align: justify;
}
.single-post div#main-content .post {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
 .single-post div#main-content .container {
    padding: 0px 0 !important;
    width: 80%;
}
.single-post 
 .et_pb_row {
    width: 100% !important;
}

 #left-area .post-meta a {
     color: #16bae1;
}
 #left-area .post-meta {
     text-align: center;
}
 .blog .et_pb_post {
     text-align: justify;
}
.single-post div#main-content .container {
        padding: 77px 0 !important;
}
#main-content .container {
    padding: 77px 0 !important;
}

#main-content .container h2{font-size: 24px !important; padding-bottom: 10px;}

   #sidebar .et_pb_widget {
    margin-top: 40px;
}

.post-content {
    text-align: justify;
}
  .et_pb_post>h2 {
        font-size: 24px;
        text-align: center;
    }
    p.post-meta{
     text-align: center;
    }



/* Testimonials */

div#home-testimonials {
    background-image: none;
}

#testimonials-section {
    background: #F2F2F2;
}

.testimonials-container {
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
    text-align:center;
}
 
.testimonials-title {
    text-align: center;
    font-weight: 800;
    font-size: 2.25rem;
    line-height: 2.5rem;
    margin-bottom: 0.5rem;
    letter-spacing: -0.025em;
    color: #F2F2F2;
}
 
.testimonials-info {
    margin-bottom: 1rem;
}
 
.testimonial-item {
    border: 1px solid #F2F2F200;
    border-radius: 10px;
    padding: 1rem;
    background: #F2F2F200;
    min-height: 100%;
    break-inside: avoid;
}

.testimonial-item:hover {
	background: #F2F2F200;
    border: 1px solid #F2F2F200;
}
 
.testimonials-grid .testimonial-item {
    margin-bottom: 1rem;
}
 
.testimonial-item a {
    height: 100%;
    display: grid;
    justify-items: center;
}
 
.testimonial-subject {
    font-size: 1rem;
    font-weight: 700;
    text-align: center;
    color: #F5F5F7;
}
 
.rating {
    display: flex;
    justify-content: center;
    margin: 0.5rem;
}
 
.star {
    width: 1rem;
    height: 1rem;
    color: #ffc956;
    margin:2px;
}
 
.testimonial-content {
    font-size: 1rem;
    line-height: 1rem;
    font-weight: 600;
    color: #cccccc;
    text-align: center;
    font-style: italic;
    text-shadow: 0 0 5px #212526, 0 0 5px #212526;
}
 
.testimonial-footer {
    margin-top: 1rem;
}
 
.reviewer-details {
    font-size: 0.75rem;
}
 
.review-from-logo {
    width: 87px;
    height: auto;
    padding: 3px;
    min-height: 35px;
    filter: drop-shadow(2px 2px 3px #fff);
}
 
.reviewer-name {
    font-weight: 500;
    color: #fff;
    line-height: 1.5rem;
    margin-bottom: 5px;
    font-size: 18px;
}

.nav-arrows {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 1rem;
}
 
.nav-arrows button {
    padding: 0.5rem;
    border-width: 1px;
    border-color: #ff6007;
    border-radius: 0;
    cursor: pointer;
    background: #ff6007;
    border-style: solid;
    display: flex;
    color: #fff;
}
 
.nav-arrows button:hover {
    background: #333333;
    color: #F2F2F2;
    border-color: #ff6007;
	transition: 0.5s ease;
}
 
.nav-arrows button svg {
    height: 1.25rem;
    width: 1.25rem;
    margin-right: 0;
}
 
.rotate-180 {
    rotate:180deg;
}
.nap-section {
	padding: 100px 60px;
	filter: drop-shadow(2px 4px 6px black);
}
/*MEDIA QUERIES*/

@media (min-width: 600px) {
   #additionalServices li {
    break-inside: avoid;
    padding: 10px 5px;
    text-align: left;
}
	.testimonials-grid {
        column-fill: balance;
        columns: 2;
        gap: 1.5rem;
    }
	div#text-5 {
      width: 100%;
   }
  .footer-widget:nth-child(n) {
  width: 100% !important;
  }
  #footer-widgets .footer-widget:nth-child(n), #footer-widgets .footer-widget {
  margin-bottom: 5% !important;
  }
  #footer-widgets .footer-widget .fwidget {
  margin-bottom: 5%;
  }
	.header-btns {
		flex-direction: row;	
	}
	.header-button-quote {
		margin-right: 10px;
	}
}
@media (min-width: 981px) {
	.header-content-block {
    margin-top: 20px;
    }
    .main-header-email-btn {
        display: flex;
    }
     .main-header-napinfo-block {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     flex-direction: row;
     padding-bottom: 10px;
     padding-left: 10px;
     padding-right: 75px;
}
     .badge-holder {
         width: calc(100% /3);
     }
	.photos-par {
		height: 520px;
		filter: drop-shadow(2px 4px 6px black);
	}
	.half-img {
		width: 67%;
		right: 0;
		height: 78%;
	}
	   /* SERVICES STYLE DESKTOP*/
     .srvElement {
         width: 32%;
         display: flex;
         flex-direction: column;
         margin: 0;
         background-color: transparent;
         border: none;
         margin-bottom: 15px;
         margin-top: 15px;
    }
     .srvElementImg img {
         height: 330px;
    }
     .srvElementFullWidth .srvElementImg img {
         height: 85%;
    }
     .srvBlock {
         display: flex;
         flex-wrap: wrap;
         justify-content: space-between;
         max-width: 1200px;
         margin: 0 auto;
    }
     .srvElementBody {
         height: 100%;
         background-color: #212526;
    }
     .srvElementHeader h2 {
         min-height: 54px;
         display: flex;
         justify-content: center;
         align-items: center;
    }
     .srvElementContent {
         height: 100%;
    }
     .srvElementFullWidth .srvElementContent {
         height: auto;
    }
     .srvElement.srvElementFullWidth {
         width: 100%;
         max-width: 1080px;
         flex-direction: row;
		 position: relative;
    }
	.srvElement.srvElementFullWidth:before{
		 content: '';
		 background-color: #212526;
		 position: absolute;
		 height: 80%;
		 width: 80%;
		 top: 20px;
		 right: 20px;
		 z-index: -2;
	}
     .srvElementFullWidth .srvElementHeader {
         border-top: none;
    }
     .srvElementFullWidth .srv-icon {
         bottom: 0;
         right: -23px;
    }
     .srvElementFullWidth .srvElementImg {
         width: 34%;
         margin: 0;
    }
	
     .srvElementFullWidth .srvElementBody {
         width: calc(68% - 20px);
         display: flex;
         flex-direction: column;
         align-items: center;
         justify-content: center;
         margin: 20px 20px 20px 20px;
         border-left: 3px solid #ff6007;
         height: auto;
         padding: 0px 10px 0px 20px;
    }
	#additionalServices {
    columns: 3;
    column-gap: 10px;
}
	.list-container {
	flex-direction: row
	}
	/* SERVICES LIST SECTION DESKTOP */
     .homepage-services #servcss {
         column-count: 3;
         -webkit-column-count: 3;
         -moz-column-count: 3;
         margin: 0 auto;
         width: 100%;
         column-gap: 25px;
    }
     .homepage-services #servcss li:first-child {
         margin-top: 0 !important;
    }
     .homepage-services li {
         text-align: right;
         display: flex !important;
         align-items: center;
         justify-content: flex-end;
         flex-direction: row;
         line-height: 1.3;
         margin: 0.4em 3px !important;
    }
     .homepage-services #servcss li:before {
         top: auto;
    }
	/* PROJECTS SLIDER DESKTOP */
     .swiper-container {
         width: 90%;
    }
     .swiper-button-prev {
         left: -40px;
    }
     .swiper-button-next {
         right: -40px;
    }
	/* NAP SECTION DESKTOP */
     div#homepage-nap-section {
         background-position-y: 79%;
    }
     div#homepage-nap-section .et_pb_row {
         display: flex;
         align-items: center;
    }
     .homepage-nap h3 {
         text-align: left;
    }
    /* CONTACT SECTION DESKTOP */
     div#contact-section {
         max-width: 600px;
         margin: 0 auto;
    }
	/* FOOTER STYLES DESKTOP */
     .footer-widget .et_pb_widget {
         width: 100%;
         margin-bottom: 0 !important;
    }
     .paymentsbox {
         justify-content: flex-start;
    }
     div#social-icons {
         text-align: left;
    }
     .footer-widget h4 {
         text-align: left;
    }
     #footer-widgets {
         padding-top: 20px;
         display: flex;
    }
	
	.footer-widget .textwidget, #menu-footer-menu {
     text-align: left;
}
    /* SIDEBAR, BLOG, BLOGPOST STYLES DESKTOP */
     .et_pb_sidebar_0 h4.widgettitle {
         text-align: left;
    }
     #sidebar h4.widgettitle {
         text-align: left;
    }
     .et_pb_sidebar_0 .textwidget {
         text-align: left;
    }
     #sidebar .textwidget {
         text-align: left;
    }
     .et_pb_sidebar_0.et_pb_widget_area_right {
         border-left: 1px solid rgb(78 78 78 / 20%);
    }
     #left-area .post-meta {
         text-align: left;
    }
	#sidebar .et_pb_widget {
		margin-top: 0;
	}
     #main-content .container:before {
         background-color: rgb(6 45 91 / 20%);
    }
  	.et_pb_title_meta_container, .post-meta, .et_pb_post .entry-title, p.post-meta {
    text-align: left;
		
}
	div#home-testimonials {
    background-image: url(/wp-content/uploads/2025/12/last-content-bg.webp);
    background-color: #000000;
    background-blend-mode: overlay;
    background-attachment: fixed;
}
	.testimonials-grid {
        columns: 3;
    }
 
    .testimonial-subject {
        font-size: 1.25rem;
    }
 
    .testimonial-content {
        line-height: 1.5rem;
    }
 
    .testimonial-footer {
        display: flex;
        align-items: center;
        justify-content: center;
    }
 
    .reviewer-details {
        display: flex;
        align-items: center;
    }
 
    .reviewer-name {
        padding-right: 0.75rem;
        font-size: 14px;
        border-right: 2px solid #fff;
    }
 
    .review-from-logo {
      padding-left: 1em;
    }
	.entry-title {
		text-align: left;
	}
	  .wpcr3_respond_2 input[type="text"], .wpcr3_respond_2 textarea {
         min-width: 100%;
    }
     .wpcr3_table_2 td {
         text-align: left !important;
    }
     .wpcr3_review_form_rating_field label {
         margin: 6px 0 !important;
    }
}
