/*
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', sans-serif;
     -webkit-font-smoothing: antialiased;
     text-rendering: optimizelegibility;
     font-feature-settings: "liga";
     color: #333333;
     font-weight: 400;
     overflow-x: hidden;
}
 h1,h2,h3,h4,h5,h6 {
     font-family: 'Montserrat', Arial, sans-serif;
     font-weight: 700;
}
 p strong {
     font-family: 'Montserrat', Arial, sans-serif;
     font-size: 18px;
     font-weight: 700;
}
 div#page-container {
     overflow: hidden;
     /* padding-top: 303px !important; */
}
 .et_pb_row {
     width: 95% !important;
}

/*HEADER STYLES*/
/******************************************************
   RESET & FORCE-HIDE ALL DIVI DEFAULT HEADER ELEMENTS
*******************************************************/


#et_top_search, #et_search_icon, #et_top_search, #et-secondary-menu, #et-secondary-nav, #et_mobile_menu, .et_pb_header_toggle, .mobile_menu_bar, #et-top-navigation .et-cart-info, #et-top-navigation .et_pb_header_toggle, #et-secondary-menu > ul, #et_top_search, #main-header .et-search-form, #main-header .et_close_search_field, #et_top_navigation #et_search_icon {
    /* display: none !important; */
}

/* Remove Divi spacing */
#main-header {
    /* margin: 0 !important; */
    padding: 0 !important;
    background-color: #fff !important;
    height: 100px;
}



/******************************************************
    LOGO + BURGER
*******************************************************/

.mobile-header-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 18px;
    background: #ffffff;
}

.mobile-header-bar .logo_container img,
.mobile-header-bar .text-logo-icon img {
    height: 38px;
    width: auto;
}

/* Hide desktop elements on mobile */
.main-header-info-container{
  display:none;
}

.header-menu-container{
 display: flex;
 /* height: 50px; */
 width: 100%;
}

/* Floating call button (mobile only) */
.floating-cta-btn {
    position: fixed;
    right: 16px;
    bottom: 18px;
    z-index: 9999;
}

.floating-cta-btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 58px;
    height: 58px;
    background: #d4ff1a;
    color: #111111;
    border-radius: 50%;
    font-size: 26px;
}

.add-info-block {display: none;}

.add-info-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 600;
}

.text-logo{
 color:#101518;
 font-family: 'Russo One',sans-serif;
 font-size: 18px !important;
 display: flex;
 align-items: center;
 height: 50px;
}
.text-logo img{
    height:50px;
}
.navigation-container{
    width:100%;
    position: absolute;
    z-index: -1;
}

 div#et-top-navigation {
     width: 100%;
     height: 42px;
     padding: 0px !important;
     background: #388e3c;
     position: relative;
     display: flex;
     align-items: center;
}
.navigation-container .header-button{
    display:none;
}
 div#et_mobile_nav_menu {
     width: 100%;
     height: 100%;
     background: green;
}
 .mobile_menu_bar {
     padding-bottom: 0 !important;
     background: #388e3c;
     width: 50px;
     height: 79px;
     /* margin-top: -37px; */
     margin-left: auto;
     display: block;
}

 .et_mobile_menu {
     background-color: #333333 !important;
     border-color: #ffc200 !important;
     top: 42px;
     height: auto !important;
}
 .et_mobile_menu li a {
     color: #fff !important;
}
 .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: 0;
     font-family: 'FontAwesome';
     -webkit-transform: scaleX(-1) rotate(90deg);
     transform: scaleX(-1) rotate(90deg);
}
 .et_mobile_menu .current_page_item a {
     color: #ffc107 !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: #ffffff;
     text-align: center;
     font-size: 50px;
     top: 15px;
     right: 6px;
     left: auto;
}
.booking-button-switch {display:none !important;}

/*rotate the Divi Menu icon on click*/
/*END HEADER STYLES*/
/*PAGE STYLES*/

/* ----------------------------------------------------
   HERO SECTION — MOBILE FIRST
---------------------------------------------------- */
.hero-section {
    position: relative;
    background: url('/wp-content/uploads/2025/12/car-repair-main-banner.webp') center/cover no-repeat;
    padding: 60px 20px;
    color: #fff;
    min-height: 520px;
    display: flex;
    align-items: center;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
}

/* INNER LAYOUT */
.hero-inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;     /* MOBILE: stacked */
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    gap: 30px;
    text-align: center;
}

/* LEFT COLUMN */
.hero-left {
    width: 100%;
}

.ws-slogan h1 {
    font-size: 34px;
    line-height: 1.25;
    font-weight: 700;
    margin-bottom: 15px;
}

.hero-subtext {
    font-size: 16px;
    margin-bottom: 25px;
    opacity: 0.9;
}

/* BUTTONS */
.header-btns {
    display: flex;
    flex-direction: column;
    gap: 15px;
    justify-content: center;
}

.header-btns a {
    padding: 14px 26px;
    border-radius: 6px;
    background: #e73c0f;
    color: #fff !important;
    font-weight: 600;
    text-decoration: none;
    transition: 0.3s;
}

.header-btns a.button {
    background: transparent;
    border: 2px solid #fff;
}

.header-btns a:hover {
    background: #c42f07;
}

/* BENEFITS BOX — MOBILE */
.hero-right {
    width: 100%;
    margin-top: 10px;
}

.badges-container {
    background: #ea3200;
    border-radius: 10px;
    padding: 25px 20px;
    display: flex;
    flex-direction: column;
    gap: 22px;
    max-width: 420px;
    margin: 0 auto; /* CENTER ON MOBILE */
}

.badge-holder {
    display: flex;
    align-items: center;
    gap: 15px;
    text-align: left;
}

.badge-ico {
    width: 48px;
    height: 48px;
    opacity: 0.9;
}

.badge-number {
    font-size: 26px;
    font-weight: 700;
    margin: 0;
    color: #fff;
}

.badge-title {
    font-size: 15px;
    opacity: 0.95;
    color: #fff;
}


/* SERVICES SECTION STYLE */
 div#home-section-title {
     background-color: #333333 !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 #333333;
     bottom: -25px;
     z-index: 999;
}
 div#services-blocks-section {
     background-color: #ffffff!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: #ffffff;
     line-height: 1.2;
     padding: 0;
     font-family: 'Montserrat', sans-serif;
     font-weight: bold;
}
 .srvElement {
     max-width: 500px;
     margin: 0 auto;
     border: 1px solid #3c3c3c;
     background: #333333;
     margin-bottom: 25px;
     margin-top: 25px;
     overflow: hidden;
}
 .srv-icon {
     position: absolute;
     background: #388e3c;
     width: 75px;
     height: 75px;
     right: 0;
     bottom: -37px;
     display: flex;
     justify-content: center;
     align-items: center;
     z-index: 9999;
     border: 5px solid #388e3c;
}
 .srv-icon img {
     width: 50px !important;
     height: 50px !important;
     object-fit: contain !important;
     object-position: center!important;
     border: none !important;
     filter: brightness(0.95);
}
 .srvElementHeader h2 {
     text-align: center;
     color: #ffffff;
     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;
}
 .srvElementImg {
     display: flex;
     justify-content: center;
     align-items: center;
     margin-bottom: 36px;
     position: relative;
}
 .srvElementImg img {
     width: 100%;
     max-height: 330px;
     object-fit: cover;
     object-position: center;
}
 .srvElementBody {
     padding: 0px 20px 20px 20px;
}
 .srvElementBody a {
  color: #45c44b;
 }
 .srvElementHeader {
     border-top: 1px dashed #ffc107;
}
 .srvElementContent {
     text-align: justify;
     font-size: 16px;
     line-height: 1.6;
     color: #fff;
}
 .srvElement:hover .srvElementImg img {
     filter: grayscale(1) drop-shadow(0px 0px 6px #fff);
}
 .srvElement:hover .srv-icon img{
     filter: none;
}
 .srvElement:hover h2 {
     color: #fffdff;
     font-weight: bold;
}
 div#home-content-section {
     background-color: #ffffff!important;
     border-top: 15px solid #757575;
}
/* PROJECTS SLIDER STYLE */
 div#slider-section {
     background: #388e3c;
     text-align: center;
     padding-top: 60px;
     padding-bottom: 20px;
}
 .projects-slider-subtitle {
     text-transform: uppercase;
     color: #ffffff;
     font-weight: 500;
     text-align: center;
     border-bottom: 1px dashed #ffc107;
     margin-bottom: 15px;
     padding-bottom: 2px;
     display: inline-block;
}
 .projects-slider-title {
     text-align: center;
     font-size: 26px !important;
     font-weight: bold;
     font-family: 'Montserrat', sans-serif;
     line-height: 1.1;
     color: #fff;
     width: 95%;
     margin: 0 auto;
}
 .swiper-container {
     position: relative;
     width: 95%;
     margin: 0 auto;
     max-width: 2000px;
}
 .swiper {
     width: 100%;
     padding: 30px 0 95px 0;
}
 .swiper-slide {
     display: flex;
     flex-direction: column;
     align-items: center;
     position: relative;
     border-radius: 12px;
     box-shadow: -1px 5px 15px #0000001f;
}
 .slide-content {
     display: flex;
     justify-content: center;
     align-items: center;
     width: 100%;
}
 .slide-content img {
     width: 100%;
     height: 400px;
     object-fit: cover;
     object-position: center;
}
 .slider-button {
     position: absolute;
     bottom: 13%;
     background: #388e3c;
     color: #ffffff;
     padding: 10px 25px;
     display: inline-block;
     line-height: 1;
     border: 1px solid #ffc107;
}
 .slide-content .title {
     position: absolute;
     color: #fff;
     font-family: 'Montserrat', sans-serif;
     bottom: 28%;
     width: 192px;
     text-align: center;
     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%);
     filter: drop-shadow(1px 1px 6px #388e3c);
}
 .slide-title {
     position: absolute;
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     bottom: -65px;
}
 .slide-title img {
     width: 70px;
     background: #333;
     padding: 10px;
     border: 1px solid rgb(255 193 7 / 33%);
}
 .slide-title span {
     color: #fff;
     font-family: 'Montserrat', sans-serif;
}
 .swiper-slide {
}
 .swiper-button-next:after, .swiper-button-prev:after {
     display: none;
}
 .swiper-button-next .fa, .swiper-button-prev .fa {
     color: #ffffff;
}
 .swiper-button-next, .swiper-button-prev {
     background: #333;
     border: 1px solid #ffffff33;
}
/* SERVICES LIST SECTION STYLE */
 div#services-list-section {
     background-color: #ffffff!important;
}
 .homepage-services {
     text-align: center;
     margin: 0 auto;
     max-width: 520px;
}
 .homepage-services #servcss {
     padding: 0;
}
 .homepage-services #servcss li {
     position: relative;
     margin: 0.3em 3px;
     color: #ffffff;
     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: #ffc107;
     font-family: 'FontAwesome';
     padding-right: 10px;
}
/* NAP SECTION STYLE */
 div#homepage-nap-section {
     background-color: #388e3c!important;
     background-position-x: 10%;
}
 .homepage-nap h3 {
     text-align: center;
     color: #ffffff;
     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: #ffc107;
     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 #ffc200;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    background: #388e3c;
    color: #fff;
    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: #388e3c;
    color: #fff;
    border: 1px solid #ffc200;
    border-left: 0;
    bottom: 58px;
    padding: 5px 15px 5px 15px;
    font-weight: normal;
    z-index: 9999;
}

/* TESTIMONIALS SECTION STYLE */
 div#home-testimonials {
     background-color: #fff !important;
     overflow: hidden;
}
 div#home-testimonials:before {
     content: '';
     position: absolute;
     bottom: -4px;
     right: -100px;
     background-image: url(/wp-content/uploads/2023/09/srv-ico.svg);
     filter: invert(1);
     background-repeat: no-repeat;
     background-position: center;
     background-size: contain;
     width: 70vw;
     max-width: 250px;
     height: 70vw;
     max-height: 250px;
     opacity: 0.1;
}
 .testimonials-section-title {
     text-align: center;
     font-size: 26px !important;
     font-weight: bold;
     font-family: 'Montserrat', sans-serif;
     line-height: 1.1;
     color: #333333;
}
 div#testimonials-txt {
     text-align: center;
}
 .home .wpcr3_respond_1 {
     padding: 15px !important;
     color: #333333;
}
 .home .wpcr3_dotline {
     display: none !important;
}
 .home .wpcr3_review {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
}
 .home .wpcr3_review_ratingValue {
     width: 100%;
     text-align: center;
     margin: 0 !important;
}
 .home .wpcr3_review_author {
     margin-left: 5px;
     text-align: center;
}
 .home .wpcr3_review_title.wpcr3_caps {
     width: 100%;
     text-align: center;
     margin: 0 !important;
     font-size: 18px;
     color: #388e3c;
     font-weight: bold;
}
 .home span.wpcr3_item_name a {
     color: #333333;
}
 div.wpcr3_review blockquote.wpcr3_content {
     border-color: #388e3c;
     padding-bottom: 0;
     text-align: justify;
}
 .home div.wpcr3_review blockquote.wpcr3_content {
     text-align: center;
     border: none;
     margin-bottom: 0;
     line-height: 1.7em;
     order: 1;
     background: #323232;
     padding: 10px;
     color: #fff;
}
 div.wpcr3_review blockquote.wpcr3_content p {
     font-size: 16px;
}
 .home .wpcr3_reviews_holder {
     position: relative;
}
 .home div.wpcr3_review blockquote.wpcr3_content p {
     font-style: italic;
}
 .testimonials-btn {
    background: #388e3c;
    color: #ffffff;
    padding: 10px 25px;
    display: inline-block;
    line-height: 1;
    margin-top: 10px;
    border: 1px solid #ffc107;
}
 .testimonials-btn:hover {
     color: #fff;
     background: #646464;
}
/* reviews */

.review-title {
    text-align: center;
    font-size: 36px !important;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
    line-height: 1.1;
    color: #333333;
}
.external-reviews-holder {
    z-index: 99;
    position: relative;
    width: 100%;
    max-width: 500px;
    height: 100%;
    padding: 20px 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.sliding-review-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.review-origin-brand {
    background: #fff;
    padding: 10px;
    width: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 20px;
    left: 10px;
}

.review-origin-brand img {
    margin: 0;
    height: 35px;
    object-fit: contain;
}
.external-review-title {
    text-align: center;
    font-size: 20px !important;
    color: #000;
    font-weight: 600;
    line-height: 1.1em;
    margin-top: 20px;
    text-transform: uppercase;
}
.external-review-credentials {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    color: #000;
}
.external-review-author {margin: 0 5px;}

.external-review-date {
    margin: 0 5px;
}

.external-review-text {
  overflow: hidden;
  -webkit-line-clamp: 3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  margin: 10px auto;
  text-align: center;
  padding: 0 25px;
  width: 95%;
  color: #000;
  font-weight: 300;
  font-style:italic;
  position: relative;
}
.external-review-text:before {
    content: '\f10e';
    font-family: 'FontAwesome';
    position: absolute;
    left: 5px;
    top: 0;
    opacity: 0.5;
}
.external-review-text:after {
    content: '\f10d';
    font-family: 'FontAwesome';
    position: absolute;
    right: 5px;
    bottom: 0;
    opacity: 0.5;
}
.external-reviews-holder a {
    width: 200px;
    background: #388e3c;
    color: #ffffff;
    padding: 10px 25px;
    display: inline-block;
    line-height: 1;
    margin-top: 10px;
    border: 1px solid #ffc107;
}
.external-reviews-holder a:hover {
    background-color: #646464;
}
div#external-reviews {
    padding: 0 !important;
    background: #63d471;
}

div#external-reviews .et_pb_row {
    padding: 0 !important;
}
.static-external-review-container {
 width: 100%;
 display: flex;
 justify-content: center;
}

.static-external-review-container .external-reviews-holder {
    min-height: 380px;
    justify-content: flex-end;
}
 @media (min-width: 1025px) {
     .static-external-review-holder {
    display: flex;
    position: relative;
    justify-content: center;
}
.static-external-review-container {
    width: 50%;
 
}
    .static-external-review-container .external-reviews-holder {
        min-height: 420px;
        justify-content: center;
    }

 .review-origin-brand {
     position: absolute;
}


 }
/* end reviews */
/* CONTACT FORM STYLE */
 #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: 'Montserrat', sans-serif;
     line-height: 1.1;
     color: #ffffff;
     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%);
     border-bottom: 1px dashed #ffc107;
     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%);
}
 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: #388e3c;
     color: #ffffff;
     border-color: #ffc107;
     padding: 11px 20px;
     display: inline-block;
     line-height: 1;
     width: 210px;
     text-align: center;
     border-radius: 0;
}
 input#submitter:hover {
    color: #fff;
    background: #646464;
}
 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: #000000;
}
 #contact {
     padding: 0;
     max-width: 600px;
     margin: 0 auto;
}
 .link-button {
     width: 210px;
     text-align: center;
     background: #388e3c;
     color: #ffffff;
     padding: 10px 25px;
     display: inline-block;
     line-height: 1;
     margin-top: 10px;
     border: 1px solid #ffc107;
}
 .link-button:hover {
     color: #fff;
     background: #646464;
}
/* FOOTER STYLE */
 #main-footer {
     background: #333333;
     background-size: contain;
     background-repeat: repeat;
}
 #main-footer .container {
     width: 95%;
}
 div#footer-bottom {
     background-color: #388e3c;
     padding: 15px;
     color: #ffffff;
}
 .paymentsbox {
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
}
 .footer-widget h4 {
     color: #ffffff;
     font-size: 22px;
     margin-bottom: 20px;
     margin-top: 30px;
     font-weight: bold;
     line-height: 1.5em;
     text-align: center;
     border-bottom: 1px dashed #ffc107;
     text-transform: uppercase;
     font-family: 'Montserrat', sans-serif;
}
 .footer-widget .textwidget {
     color: #efefef;
}
 #footer-widgets .footer-widget a {
     background-color: #fff;
}
 table.openinghours {
     max-width: 350px;
     margin: 0 auto !important;
     width: 100%;
}
 table.openinghours tr {
     display: flex;
     justify-content: space-between;
     line-height: 2;
     font-family: 'Open Sans', sans-serif;
     color: #efefef;
}
 #current-day {
     background-color: #dbdbdb;
     padding: 0 2px;
}
 #current-day td {
     color: #000;
     text-shadow: none;
}
 #closed-day {
     color: #efefef;
}

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

ul#menu-footer-menu li:before {
    color: #388e3c !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: #231f20;
     position: relative;
     margin-bottom: 10px;
     line-height: 1.2;
     text-align: center;
     border-bottom: 1px solid #231f20;
}
 #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 #062d5b;
}
 .et_pb_sidebar_0 .textwidget {
     text-align: center;
}
 #sidebar .textwidget {
     text-align: center;
}
 .single-post div#main-content, .blog div#main-content {
     background-color: #ffffff;
     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: 95%;
}
.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 h2 {
  text-align: left;
}
.single-post p {
text-align: justify;
}

/*MEDIA QUERIES*/
 @media only screen and (min-width: 600px) {
     
}
 @media screen and (max-width: 980px) {
    
}
 @media screen and (min-width: 981px) {
    
    /*HEADER STYLES*/
     /***************
        HIDE MOBILE
    ****************/
    .mobile-header-bar,
    .add-info-block,
    .floating-cta-btn {
        display: none !important;
    }


    /*****************************************
        TOP DARK BAR (phone + location)
    ******************************************/
    .main-header-info-container {
        display: flex !important;
        justify-content: flex-start;
        align-items: center !important;
        gap: 40px !important;
        padding: 12px 40px !important;
        background: #101518 !important;
        color: #ffffff !important;
        font-size: 15px !important;
        line-height: 1 !important;
    }

     .main-header-contact-info-holder{
         display:flex;
         gap:20px;
     }
     
    .main-header-contact-info-holder a {
        
    }
    .main-header-contact-info-holder, .main-header-contact-info-holder a{
    color:#fff;
}

.main-header-contact-info-holder a i, .main-header-contact-info-holder i{
    color:#d4ff1a;
}
.header-button{
    text-transform: uppercase;
    color: #101518;
    border: solid 3px #d4ff1a;
    background: #fff;
    padding: 10px 20px;
    border-radius: 10px;
    letter-spacing: 1px;
    transition:all 0.3s ease-in-out;
    white-space: nowrap;
    display: block !important;
}

.header-button:hover{
    color: #fff;
    background:#101518;
    border: solid 3px #101518;
}



    /*****************************************
        NEON GREEN LEFT BLOCK (LOGO AREA)
    ******************************************/
    

    /* Fix logo size */
    .logo_container img,
    .text-logo-icon img {
        height: 37px !important;
        width: 55px;
    }

     .header-menu-container .logo_container{
           display: flex !important;
           align-items: center !important;
           background: #d4ff1a !important;
           padding: 20px !important;
           width: auto !important;
           gap: 20px !important;
           position: relative;
           font-size: 20px;
           max-width: 300px;
     }



    /*****************************************
        MAIN HEADER WRAPPER (white background)
    ******************************************/
    .container.header-menu-container {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        /* padding: 22px 40px !important; */
        background: #ffffff !important;
        width: 100%;
        max-width: none;
    }



    /*****************************************
       MENU (CENTERED, LIKE IN THE REFERENCE)
    ******************************************/
     .navigation-container{
         width: 100%;
         padding: 0 20px;
         display: flex;
         align-items: center;
     }
     
    #et-top-navigation {
        display: flex !important;
        justify-content: flex-start;
        align-items: center !important;
        flex: 1 !important;
        margin-left: 30px;
        padding-top: 0px !important;
    }

    #top-menu-nav > ul {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        /* gap: 46px !important; */
    }

    #top-menu-nav li a {
        font-size: 14px !important;
        font-weight: 600 !important;
        color: #000000 !important;
        padding: 0 !important;
        transition: color .2s ease;
    }

    #top-menu-nav li:hover > a {
        color: #4b4b4b !important;
    }

    /* Remove weird â€œUâ€ output from Divi */
    #top-menu-nav li::marker,
    #top-menu-nav li::before,
    #top-menu-nav li::after {
        content: "" !important;
        display: none !important;
    }



    /*****************************************
        RIGHT SIDE CTA BUTTON (GET A QUOTE)
    ******************************************/
    .main-header-email-btn {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        border: 2px solid #d4ff1a !important;
        padding: 12px 26px !important;
        border-radius: 8px !important;
        color: #000000 !important;
        font-weight: 700 !important;
        font-size: 15px !important;
        background: #ffffff !important;
        text-decoration: none !important;
    }

    .main-header-email-btn:hover {
        background: #d4ff1a !important;
    }

    /*END HEADER STYLES*/
    /*PAGE STYLES*/
     .hero-section {
        padding: 100px 40px;
        min-height: 620px;
    }

    .hero-inner {
        flex-direction: row;      /* DESKTOP: side by side */
        align-items: center;
        text-align: left;
        gap: 40px;
    }

    .hero-left {
        flex: 1;
    }

    .ws-slogan h1 {
        font-size: 56px;
    }

    .hero-subtext {
        font-size: 18px;
        max-width: 550px;
    }

    .header-btns {
        flex-direction: row;
        justify-content: flex-start;
    }

    /* RIGHT BOX ON THE SIDE */
    .hero-right {
        width: 350px;
        margin-top: 0;
    }

    .badges-container {
        padding: 35px 30px;
        gap: 28px;
    }

    .badge-ico {
        width: 55px;
        height: 55px;
    }

    .badge-number {
        font-size: 32px;
    }

    .badge-title {
        font-size: 17px;
    }
    /* SERVICES STYLE DESKTOP*/
     .srvElement {
         width: 32%;
         display: flex;
         flex-direction: column;
         margin: 0;
         margin-bottom: 15px;
         margin-top: 15px;
    }
     .srvElementImg img {
         height: 200px;
    }
     .srvElementFullWidth .srvElementImg img {
         height: 100%;
    }
     .srvBlock {
         display: flex;
         flex-wrap: wrap;
         justify-content: space-between;
         max-width: 1200px;
         margin: 0 auto;
    }
     .srvElementBody {
         height: 100%;
    }
     .srvElementHeader h3 {
         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;
    }
     .srvElementFullWidth .srvElementHeader {
         border-top: none;
    }
     .srvElementFullWidth .srv-icon {
         bottom: 0;
         right: -32px;
    }
     .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 30px;
         border-left: 1px dashed #ffc107;
         height: auto;
         padding: 0px 0px 0px 20px;
    }
    /* 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;
    }
    /* TESTIMONIALS SECTION DESKTOP */
     div#testimonials-img .et_pb_image, div#testimonials-img span {
         height: 100%;
    }
     div#testimonials-img img {
         height: 100%;
         object-fit: cover;
         object-position: right;
    }
     div#home-testimonials:before {
         right: calc(50% - 610px);
         bottom: -2px;
    }
     .home .wpcr3_review {
         justify-content: flex-start;
         text-align: left;
    }
     .home .wpcr3_review_ratingValue {
         text-align: left;
         width: auto;
    }
     p.testimonials-section-title {
         text-align: left;
    }
     div#testimonials-txt {
         text-align: left;
         display: flex;
         flex-direction: column;
         justify-content: center;
    }
     .home .wpcr3_review_title.wpcr3_caps {
         text-align: left;
    }
     .home div.wpcr3_review blockquote.wpcr3_content {
         text-align: left;
    }
     .home .wpcr3_respond_1 {
         padding-left: 0 !important;
    }
    /* 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;
    }
    /* 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;
    }
    /* 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;
    }
     #main-content .container:before {
         background-color: rgb(6 45 91 / 20%);
    }
  	.et_pb_title_meta_container, .post-meta {
    text-align: left;
}
}
/***** 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: #388e3c;
     color: #fff;
     border: 1px solid #ffc200;
     border-radius: 0px;
}
 @media (min-width: 981px) {
     .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;
    }
}
 @media (max-width: 980px) {
	 .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%;
    }
}
 @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);
    }
}
 
/*--------------------------------------------------
    * Testimonials Plugin CSS
--------------------------------------------------*/
#testimonials-section {
    background: #ffffff;
}

.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: #ffffff;
}
 
.testimonials-info {
    margin-bottom: 1rem;
}
 
.testimonial-item {
    border: 1px solid #ffffff00;
    border-radius: 10px;
    padding: 1rem;
    background: #ffffff00;
    min-height: 100%;
    break-inside: avoid;
}

.testimonial-item:hover {
	background: #ffffff00;
    border: 1px solid #ffffff00;
}
 
.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: #1a202c;
    text-shadow: 0 0 5px #fff, 0 0 5px #fff;
}
 
.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: #1a202c;
    text-align: center;
    font-style: italic;
    text-shadow: 0 0 5px #fff, 0 0 5px #fff;
}
 
.testimonial-footer {
    margin-top: 1rem;
}
 
.reviewer-details {
    font-size: 0.75rem;
}
 
.review-from-logo {
    width: 80px;
    height: auto;
    padding: 3px;
    min-height: 35px;
}
 
.reviewer-name {
    font-weight: 500;
    color: #1a202c;
    line-height: 1.5rem;
    margin-bottom: 5px;
    font-size: 14px;
    text-shadow: 0 0 5px #fff, 0 0 5px #fff;
}

.nav-arrows {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 1rem;
}
 
.nav-arrows button {
    padding: 0.5rem;
    border-width: 1px;
    border-color: #388e3c;
    border-radius: 0;
    cursor: pointer;
    background: #388e3c;
    border-style: solid;
    display: flex;
    color: #fff;
}
 
.nav-arrows button:hover {
    background: #333333;
    color: #ffffff;
    border-color: #333333;
}
 
.nav-arrows button svg {
    height: 1.25rem;
    width: 1.25rem;
    margin-right: 0;
}
 
.rotate-180 {
    rotate:180deg;
}

@media only screen and (min-width: 600px) {
    .testimonials-grid {
        column-fill: balance;
        columns: 2;
        gap: 1.5rem;
    }
}

@media only screen and (min-width: 992px) {
    .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 #1a202c;
    }
 
    .review-from-logo {
      padding-left: 1em;
    }
}


 /* ADDITTIONAL SERVICES STYLE */


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


@media (min-width: 600px) {
 

#additionalServices li {
    break-inside: avoid;
    padding: 10px 5px;
    text-align: left;
}

    
}

@media (min-width: 981px) {
#additionalServices {
    columns: 3;
    column-gap: 10px;
}
}

.nav-arrows > button.slider-previous > svg > path{
	transition:0.1s;
}

.nav-arrows > button.slider-next > svg > path{
	transition:0.1s;
}

#mobile_menu li a {
    line-height: 1.2em;
}

.floating-estimate-btn{
z-index: 9999;
}

#main-footer .listing-rev-btn{
display: flex;
    align-items: baseline;
    position: fixed;
    z-index: 9999;
}

.modalHolder{
	display:none;
}




/* NEW CONTENT */

div#last-content-3-section {
    background: #388e3c;
    color: #fff;
}

div#last-content-3-section h2 {
    color: #fff;
}
.first-list-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}


ul.first-list-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0;
    list-style: inside disc;
    width: 100%;
    max-width: 600px;
    margin-top: 30px;
}

.first-list-content li {
    padding: 5px 10px;
    margin-bottom: 10px !important;
    background: #388e3c;
    color: #fff;
    text-align: left;
    width: 100%;
    border: 1px dashed #ffc107;
}
.first-list-content li:hover,
.second-list-content li:hover{
    background: #ffc107;
    color: #000;
     border: 1px dashed #333333;
}

.second-list-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

ol.second-list-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 600px;
    padding-bottom: 0;
}

.second-list-content li {
    color: #fff;
    width: 100%;
    padding: 5px 10px;
    margin-bottom: 10px;
    text-align: left;
    background: #333333;
      border: 1px dashed #ffc107;
}
div#second-list-image {
    max-width: 600px;
    margin: 0 auto;
}

@media (min-width: 981px){
    div#first-list-row,
div#second-list-row {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
	}}


