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

/*HEADER STYLES*/
.home div#page-container {
   padding-top: 0 !important;
}

header#main-header {
   background-color: #04264b !important;
}

.home header#main-header {
   background: transparent !important;
}
header#main-header.et-fixed-header {
   background-color: #04264b !important;
}
.header-menu-container {
   width: 95%;
   display: flex;
   justify-content: center;
   align-items: center;
   min-height: 70px;
   padding: 10px 0;
}

.logo_container {
   position: relative !important;
   width: 250px !important;
   display: flex;
}

.text-logo {
   display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: center;
   font-weight: 600;
   color: #1de278;
}

.text-logo img {
   height: 60px;
   margin-right: 10px;
   opacity: 0.8;
}

div#et-top-navigation {
   padding: 0 !important;
   width: calc(100% - 250px) !important;
   display: flex;
   justify-content: flex-end;
}

.add-info-btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #1de278;
    width: 50px;
    padding: 10px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 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 #000000;
    border-right: none;
}
.add-info-block {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 240px;
    position: fixed;
    right: -190px;
    -webkit-transition: right 0.4s ease-in-out;
    transition: right 0.4s ease-in-out;
    /* top: 163px; */
}
.open-info {
    right: 0;
}
.open-info #add-info-open-icon {
    display: none;
}
.open-info #add-info-close-icon {
    display: block;
}
.add-info-container {
    background: #04264b;
    display: flex;
    flex-direction: column;
    padding: 20px;
    width: 190px;
    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: #04264b;
}
#add-info-close-icon {
    display: none;
}
.add-info-btn span {
    line-height: 1;
    color: #000000;
    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;
}
.mobile_menu_bar {
    padding: 0 !important;
}
ul#mobile_menu {
    top: 100%;
    background-color: #04264b !important;
    border-color: #1de278 !important;
    height: auto !important;
}
.et_mobile_menu li a {
    color: #cfcfcf !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);
    color: #bfbfbf;
}
.et_mobile_menu .current_page_item a {
    color: #ffffff !important;
    opacity: 1 !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: #1de278;
}
/*rotate the Divi Menu icon on click*/
/*END HEADER STYLES*/
/*PAGE STYLES*/

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 {
   max-height: 600px !important;
   min-height: 600px !important;
   height: calc(100vh - 80px) !important;
}

.et_pb_fullscreen .et_pb_fullwidth_header_container {
   max-height: 600px !important;
   min-height: 600px !important;
   height: calc(100vh - 80px) !important;
   width: 100%;
   padding-top: 80px;
}

.header-content {
   margin: 0 auto !important;
   padding: 0px !important;
   width: 100% !important;
   max-width: 100% !important;
}


.homepage-header-holder {
   width: 95%;
   max-width: 520px;
   margin: 0 auto;
   position: relative;
   min-height: 350px;
}

.header-content-block {z-index: 1;position: relative;margin-bottom: 25px;}

.header-title {
   font-size: 30px;
   font-weight: 600;
   text-align: left;
   max-width: 315px;
   color: #fff;
   line-height: 1.1;
   filter: drop-shadow(1px 1px 6px #000);
   text-shadow: 1px 1px 5px #000 !important;
}

.header-subtitle {
   font-size: 16px;
   font-weight: 300;
   text-align: left;
   color: #e5e8ed;
   margin-top: 5px;
   filter: drop-shadow(1px 1px 6px #000);
   text-shadow: 1px 1px 5px #000 !important;
}

.button {
   color: #04264b;
   line-height: 0;
   height: 40px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   max-width: 225px;
   font-weight: 500;
   filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
   background: #1de278;
   padding: 12px 20px;
   border-radius: 25px;
   margin-top: 15px;
}
.button:hover {
   background: #9d9d9d;
   color: #fff;
}
.header-img-block {
   position: relative;
   z-index: 0;
}

.header-img-block img {
   filter: drop-shadow(2px 4px 6px black);
   position: absolute;
   right: 0;
   top: -10px;
   width: 355px;
}

.header-bg-shape {
   position: absolute;
   width: 100%;
   height: 100%;
   bottom: 0;
   left: 0;
   object-fit: cover;
   object-position: 46%;
   z-index: -1;
}

/* FIRST CONTENT SECTION STYLE */
.entry-title {
    text-align: center;
    font-size: 26px !important;
    color: #04264b;
    font-weight: 600;
}
.home .entry-title {
    text-align: center !important;
    /* margin-bottom: 30px; */
    padding-bottom: 15px;
}
div#home-title-block {
   background-color: #fcfcfc!important;
   /* padding-bottom: 0; */
   padding-top: 0;
}
div#home-title-block:before {
    content: '';
    position: absolute;
/* 	 width: 200%; */
    height: 800px;
    background: #e3e7ea;
    transform: skew(10deg, -10deg);
    left: -50%;
    bottom: -50%;
   }
div#home-title-block-container-firstpar {
   flex-direction: column-reverse;
   display: flex;
}

div#home-title-block-txt-col {
   padding-bottom: 70px;
}

.section-title-heading {
   margin-bottom: 10px;
   color: #1de278;
   font-weight: 700;
}

.content-button {
   color: #04264b;
   line-height: 0;
   height: 40px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   width: 180px;
   font-weight: 500;
   filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
   background: #1de278;
   padding: 12px 20px;
   border-radius: 25px;
   margin-top: 15px;
}
.content-button:hover {
       background: #9d9d9d;
   color: #fff;
}
.button-holder {display: flex;justify-content: center;}


div#first-par-img span {
   text-align: center;
   display: block;
}


div#first-par-img img {
   border-radius: 20px;
   max-width: 500px;
   width: 100%;
}
/* BADGES SECTION STYLE */

div#css-badges-section {
   background-color: #fcfcfc!important;
   padding-bottom: 0;
}


.badge-container {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-evenly;
 align-items: center;
 margin: 0 auto;
}

.badge-block {
 display: flex;
 flex-direction: column;
 align-items: center;
 margin: 1px 1px;
 box-shadow: 0 5px 83px rgba(40, 40, 40, 0.12);
 padding: 15px;
 width: calc(50% - 2px);
 background: #ffffff;
 max-width: 220px;
 height: 200px;
 position: relative;
   margin-top:10px;
   margin-left:5px;
}

.badge-ico-holder {
 width: 80px;
 height: 85px;
 padding: 10px;
 border-radius: 50%;
 background: linear-gradient(0deg, rgba(252, 252, 252, 1) 44%, rgba(29, 226, 120, 0.69) 88%);
}

.badge-content {
 text-align: center;
 width: 100%;
 margin-top: 15px; /* Align content at the bottom */
}

@media screen and (max-width: 480px) {
   .badge-block{
       width:120px;
   }
}
.badge-content .title {
 line-height: 1;
 font-size: 17px;
 color: #1de278;
 margin-bottom: 5px;
 font-weight: 500;
}

.badge-content .content {
 font-size: 17px;
 text-transform: capitalize;
 line-height: 1.2;
 width: 100%;
 min-height: 42px;
 border-top: 2px dashed #000000;
 padding-top: 5px;
 margin-top: auto; /* Align content at the bottom */
 font-weight: bold;
 color: #04264b;
 display: flex;
 justify-content: center;
 align-items: center;
}



/* SERVICES SECTION STYLE */

div#services-blocks-section {
   background-color: #e3e7ea!important;
   background: rgb(252,252,252);
   background: linear-gradient(0deg, rgba(252,252,252,1) 25%, rgba(227,231,234,1) 80%);
   z-index: 11;
}
.srvBlockTitle .section-title-heading {
   text-align: center;
}

.srvBlockTitle p {
   padding-bottom: 0;
   margin-bottom: 0 !important;
}

.srvElement {
   max-width: 500px;
   margin: 0 auto;
   margin-bottom: 50px;
   border-radius: 20px;
   border: 1px solid #04264b;
   background: #fff;
   -webkit-box-shadow: 0 5px 83px 0 rgb(40 40 40 / 12%);
   -khtml-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   -moz-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   -ms-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   -o-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   box-shadow: 0 5px 83px rgb(40 40 40 / 12%);
}

.services-shape-top {
   content: '';
   position: absolute;
   width: 500px;
   height: 500px;
   left: -250px;
   background-size: contain;
   background-repeat: no-repeat;
   background-position: center;
   Z-INDEX: -1;
   opacity: 0.2;
}
.services-shape-bottom {
   content: '';
   position: absolute;
   width: 500px;
   height: 500px;
   right: -250px;
   bottom: 0;
   background-size: contain;
   background-repeat: no-repeat;
   background-position: center;
   Z-INDEX: -1;
   opacity: 0.2;
}
.srvElement:last-child {
   margin-bottom: 0;
}
.srv-icon {
   position: absolute;
   width: 75px;
   height: 75px;
   bottom: -37px;
   display: flex;
   justify-content: center;
   align-items: center;
   z-index: 9999;
   border-radius: 50%;
   border: 5px solid #ffffff;
   background: rgb(252,252,252);
   background: linear-gradient(0deg, rgba(252,252,252,1) 44%, rgba(29,226,120,1) 88%);
}

.srv-icon img {
   width: 50px !important;
   height: 50px !important;
   object-fit: contain !important;
   object-position: center!important;
   border: none !important;
}
.srvElementHeader h2 {
   text-align: center;
   color: #04254a;
   font-weight: bold;
   padding-bottom: 5px;
}

.srvElementImg {
   display: flex;
   justify-content: center;
   align-items: center;
   margin-bottom: 35px;
   position: relative;
}

.srvElementImg img {
   width: 100%;
   max-height: 330px;
   object-fit: cover;
   object-position: center;
   border-top-left-radius: 20px;
   border-top-right-radius: 20px;
   /* border: 1px solid #d7d7d7; */
}
.srvElementBody {
   padding: 0px 20px 20px 20px;
}
.srvElementContent {
   text-align: justify;
   font-size: 16px;
   line-height: 1.6;
}

.srvElement:hover img {
   filter: grayscale(1) drop-shadow(0px 0px 6px #fff);
}

.srvElement:hover h2 {
   color: #1de178;
   font-weight: bold;
}
/* SERVICES LIST SECTION STYLE */
 
.homepage-services {
   text-align: center;
   margin: 0 auto;
   padding-top: 35px;
}
.homepage-services #servcss {
   padding: 0;
}
.homepage-services #servcss li {
   position: relative;
   font-weight: bold;
   margin: 0.3em 0;
   padding-left: 20px;
   display: inline-block;
   color: #505053;
   background: #fff;
}

.homepage-services #servcss li:before {
   position: absolute;
   content: '\f108';
   top: 0;
   left: 0;
   color: #04264b;
   font-family: 'FontAwesome';
}


/* CONTACT FORM STYLE */
.cf-bg-shape {
   position: absolute;
   width: 100%;
   height: 100%;
   top: -2px;
   left: 0;
   object-fit: cover;
   object-position: 46%;
   z-index: -1;
}
div#contact-form-section {
   background-color: #fcfcfc!important;
}
div#contact-section {
   background: rgba(4,38,75,0.85);
   overflow: hidden;
}

.contact-form-holder {
   padding: 70px 2.5%;
   position: relative;
   max-width: 600px;
   margin: 0 auto;
}

.free-estimate-title {
   font-size: 26px !important;
   color: #1de077;
   font-weight: 600;
   margin-bottom: 30px;
}

.contact-form-block {
   width: 300px;
   padding-top: 40px;
   z-index: 1;
   position: relative;
}

.contact-form-content {
   position: absolute;
   width: 53%;
   top: -10px;
   right: 10px;
   z-index: 0;
   filter: drop-shadow(1px 2px 2px #929292);
}

p.success {
    color: white;
}

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) contrast(1.5);
}

input#vercode {
   width: calc(100% - 130px);
   margin: 0;
   margin-left: 10px;
   float: left;
   padding: 7px 10px 7px;
   height: 40px;
   min-height: 40px;
}

form#contactForm {
   text-align: center;
}

input#submitter {
   font-size: 16px;
   font-weight: normal;
   transition: 500ms;
   position: relative;
   z-index: 1;
   border-radius: 30px;
   height: 40px;
   background: #1de077;
   color: #000000;
   padding: 0px 20px;
   display: inline-block;
   line-height: 1;
   text-align: center;
   text-transform: capitalize;
   border-radius: 0;
   font-family: 'Roboto Flex', sans-serif;
   border-radius: 25px;
}

input#submitter:hover {background: #9d9d9d;color: #fff;}

input.text,
input.title,
input[type=email],
input[type=password],
input[type=tel],
input[type=text],
select,
textarea {
   max-width: 100%;
   padding: 10px 20px 10px;
   min-height: 50px;
   background-color: #ffffff !important;
   box-shadow: none;
   display: block;
   line-height: 1;
   font-weight: 300;
   color: #000 !important;
   background-image: none;
   border: 2px solid #eaeaea;
   margin-bottom: 10px !important;
   border-radius: 5px;
}

#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: #000 !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: #000 !important;
border-color: #000000;
}

#contact {
   padding: 0;
   max-width: 600px;
   margin: 0 auto;
}
/* NAP SECTION STYLE */
.homepage-nap h3 {
   padding-bottom: 0;
   padding-top: 30px;
   color: #04264b;
   line-height: 1.2;
}
/* TESTIMONIALS SECTION STYLE */

div#home-testimonials {
   background-color: #fbfbfb!important;
   padding: 0;
}

.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: 20px;
   color: #1dde76;
   font-weight: bold;
}

.home span.wpcr3_item_name a {
   color: #ffffff;
}

div.wpcr3_review blockquote.wpcr3_content {
   border-color: #c4c4c4;
   padding-bottom: 0;
   text-align: justify;
}

.home div.wpcr3_review blockquote.wpcr3_content {
   text-align: center;
   padding-left: 0;
   border: none;
   margin-bottom: 0;
   line-height: 1.7em;
}

div.wpcr3_review blockquote.wpcr3_content p {
   font-size: 17px;
}


.home .wpcr3_reviews_holder {
   position: relative;
   color: #fff;
}

.home div.wpcr3_review blockquote.wpcr3_content p {
   font-style: italic;
}

div#testimonials-block .section-title-heading {
   text-align: center;
}

.testimonials-title {
   text-align: center;
   font-size: 26px !important;
   color: #04264b;
   font-weight: 600;
   margin-bottom: 30px;
}

.testimonials-btn {
   color: #04264b;
   line-height: 0;
   height: 40px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   width: 230px;
   font-weight: 500;
   filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
   background: #1de278;
   padding: 12px 20px;
   border-radius: 25px;
   margin: 0 auto;
   margin-top: 20px;
}
.testimonials-btn:hover {
   background: #9d9d9d;
   color: #fff;
}
div#home-testimonials .et_pb_code_inner {
   background-image: linear-gradient(160deg,rgb(4 38 75 / 86%) 50%,rgb(248 248 248 / 50%) 100%),url(https://techpointsllc.com/wp-content/uploads/2024/09/testimonials-bg.webp)!important;
   padding: 30px;
   border-radius: 20px;
   background-size: cover;
   background-position: center;
   -webkit-box-shadow: 0 5px 83px 0 rgb(40 40 40 / 12%);
   -khtml-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   -moz-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   -ms-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   -o-box-shadow: 0 5px 83px 0 rgba(40,40,40,.12);
   box-shadow: 0 5px 83px rgb(40 40 40 / 12%);
}


/* CONTENT SECTION STYLE */


/* FOOTER STYLE */
#main-footer {
    background: #04264b;
    position: relative;
}
#main-footer .container {
    width: 95%;
}
div#footer-bottom {
    background-color: #1de077;
    padding: 15px;
    color: #000000;
}
.paymentsbox {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.footer-widget h4 {
    color: #fffdff;
    font-size: 22px;
    margin-bottom: 20px;
    margin-top: 30px;
    font-weight: 600;
    line-height: 1.5em;
    text-align: center;
    border-bottom: 1px solid #cecece;
}
.footer-widget .textwidget {
    color: #cecece;
}
h4#nap-footer-icons {
    filter: none;
}
#footer-widgets .footer-widget a {
    background-color: #04264b;
}
table.openinghours {
    max-width: 385px;
    margin: 0 auto !important;
    width: 100%;
}
table.openinghours tr {
    display: flex;
    justify-content: space-between;
    line-height: 2;
    color: #cecece;
}
#current-day {
    background-color: #1de178;
    padding: 0 2px;
}
#current-day td {
    color: #000;
    text-shadow: none;
}
#closed-day {
    color: #a0a69e;
}
/* SIDEBAR, BLOG PAGE, BLOG POST STYLES */
.et_pb_sidebar_0 h4.widgettitle {
    position: relative;
    margin-bottom: 10px;
    line-height: 1.2;
    border-bottom: 1px solid #1de278;
    text-align: center;
    font-size: 26px !important;
    color: #04264b;
    font-weight: 600;
}
#sidebar h4.widgettitle {
    font-size: 26px;
    font-weight: 400;
    color: #fffdff;
    position: relative;
    margin-bottom: 10px;
    line-height: 1.2;
    text-align: center;
    border-bottom: 1px solid #76a32e;
}

body:not(.et_pb_pagebuilder_layout) #sidebar h4.widgettitle {
	color: #04264b!important;
}

.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;
}
#left-area .post-meta a {
    color: #009506;
}
#left-area .post-meta {
    text-align: center;
}
.blog .et_pb_post {
    text-align: justify;
}
/*MEDIA QUERIES*/
@media only screen and (min-width: 600px) {
.badge-container {
   justify-content: center;
}
 .badge-block {
   margin: 15px;
}
  
   .homepage-services ul#servcss {


       display: flex;
       flex-wrap: wrap;
       justify-content: center;
   }


   .homepage-services li {
       display: inline-block;
       padding: 0 20px;
   }

   .homepage-services ul#servcss {
       padding: 0;
   }
}
@media screen and (max-width: 981px) {
   /* ADDITIONAL STYLES FOR MOB. RES. */
    .et_pb_sidebar_0 .et_pb_widget {
        width: 100%;
   }
    .footer-widget:nth-child(n) {
        width: 100% !important;
        text-align: center;
        margin: 0 !important;
   }
    .et_pb_text {
        text-align: center !important;
   }
    #footer-widgets .footer-widget .fwidget {
        width: 100% !important;
        margin-bottom: 30px !important;
   }
}
@media screen and (min-width: 981px) {
   /*HEADER STYLES*/

    nav#top-menu-nav ul#top-menu li a{
        padding-top: 15px !important;
        padding-bottom: 15px !important;
        font-weight: 500;
        color: #ffffff !important;
        text-transform: capitalize;
        filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
        font-family: 'Rubik', sans-serif;
        /* filter: drop-shadow(1px 1px 6px #000); */
        text-shadow: 1px 1px 5px #000 !important;
   }
    #top-menu .menu-item-has-children>a:first-child:after {
        top: 14px;
        color: #1de278;
   }
    nav#top-menu-nav ul#top-menu .current-menu-item a{
        color: #1de278 !important;
   }
    nav#top-menu-nav ul#top-menu li {
        padding-left: 15px;
        padding-right: 15px !important;
        font-size: 17px;
   }
    nav#top-menu-nav ul#top-menu li:not(:last-child):after {
        content: '\f111';
        position: absolute;
        font-family: 'FontAwesome';
        font-size: 5px;
        color: #ffffff;
        right: -3px;
        top: 15px;
   }
    nav#top-menu-nav ul#top-menu li:last-child {
        padding-right: 0 !important;
   }
    nav#top-menu-nav ul#top-menu .current-menu-item {
   }
    nav#top-menu-nav ul#top-menu li:last-child.current-menu-item {
        padding-right: 11px !important;
   }
    nav#top-menu-nav ul#top-menu .current-menu-item a:after {
        color: #d9b6c6 !important;
   }
    ul.sub-menu {
        filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
        top: 43px;
        background-color: #04264b !important;
        border-color: #1de278 !important;
        padding: 10px 0 !important;
   }
    ul.sub-menu li ul {
        top: -8px;
   }
    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;
        filter: drop-shadow(0px 1px 1px #210124);
   }
    #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);
        color: #bfbfbf;
   }
    #top-menu-nav ul.sub-menu a:after {
        color: #fff !important;
   }
    ul.sub-menu li {
        padding: 0 10px !important;
        width: 100%;
   }
    ul.sub-menu li a {
        padding: 5px 0px !important;
        width: 100% !important;
   }
   /*END HEADER STYLES*/
   /*PAGE STYLES*/
       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 {
        max-height: 700px !important;
        min-height: 600px !important;
        height: calc(100vh - 80px) !important;
   }
    .et_pb_fullscreen .et_pb_fullwidth_header_container {
        max-height: 700px !important;
        min-height: 600px !important;
        height: calc(100vh - 80px) !important;
        padding-top: 80px;
   }
 .homepage-header-holder {
   max-width: 985px;
}

.header-title {
   font-size: 45px;
   max-width: 520px;
}

.header-subtitle {
   font-size: 20px;
}

.header-img-block img {
   width: 600px;
   top: -228px;
}

.header-bg-shape {
   object-position: bottom;
   width: 102vw;
   max-width: 102vw;
   left: -1vw;
}
   /* BADGES STYLE DESKTOP*/
   
   /* FIRST PARAGRAPH STYLE DESKTOP*/
.entry-title {
        text-align: left !important;
}
    .home .entry-title {
   /* text-align: left !important; */
   font-size: 36px !important;
}
div#home-title-block-container-firstpar {
   flex-direction: row;
   z-index: 10;
}
    .srvBlockTitle .section-title-heading {
   text-align: left;
}

div#first-par-img, div#first-par-img span {
   height: 100%;
}

div#first-par-img img {
   height: 100%;
   object-fit: cover;
   object-position: center;
}
div#home-title-block:before {bottom: -92%;z-index: 9;}
div#home-title-block {
   padding-top: 40px;
}

div#home-title-block-txt-col {
   padding-bottom: 0;
   padding-left: 2.5%;
}

.button-holder {
   justify-content: left;
}

    
   /* SERVICES STYLE DESKTOP*/

    
   .srvElement {
       width: 32%;
       display: flex;
       flex-direction: column;
       margin: 0;
       margin-bottom: 2%;
   }

   .srvElementImg img {height: 200px;}
.srvElementFullWidth .srvElementImg img {
   height: 100%;
   border-top-left-radius: 20px;
   border-bottom-left-radius: 20px;
   border-top-right-radius: 0px;
}
   .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 .srv-icon {
   bottom: auto;
   right: -37px;
}
   .srvElementFullWidth .srvElementImg {
       width: 32%;
       margin: 0;
   }

   .srvElementFullWidth .srvElementBody {
       width: calc(68% - 20px);
       margin-left: 20px;
       display: flex;
       flex-direction: column;
       align-items: center;
       justify-content: center;
       padding: 20px 20px 20px 30px;
   }


   
   /* CONTACT SECTION DESKTOP */
    .contact-form-holder {
   max-width: 980px;
   width: 49vw;
   min-width: 679px;
   padding-top: 140px;
   padding-bottom: 70px;
}

.contact-form-block {
   padding-top: 0;
   width: 46%;
}

.contact-form-content {
   top: 60px;
   width: 23vw;
   min-width: 338px;
   max-width: 495px;
}

img.cf-bg-shape {
   object-position: top;
   max-width: 110vw;
   width: 110vw;
   left: -7vw;
}

div#contact-section .et_pb_code_inner {
   display: flex;
   justify-content: center;
   align-items: center;
}
   /* TESTIMONIALS SECTION DESKTOP */
    .testimonials-title {
   font-size: 36px !important;
}
   /* NAP SECTION DESKTOP*/
    
   /* CONTENT SECTION DESKTOP */
div#home-content-section {
   padding-bottom: 0;
}
   /* 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 !important;
   }
    #sidebar .textwidget {
        text-align: left;
   }
    .et_pb_sidebar_0.et_pb_widget_area_right {
        border-left: 1px solid rgb(255 255 255 / 20%);
   }
    #left-area .post-meta {
        text-align: left;
   }
    #main-content .container:before {
        background-color: rgb(255 255 255 / 20%);
   }
}

@media (min-width: 2300px) {
img.cf-bg-shape {
   object-position: top;
   max-width: 2570px;
   width: 108vw;
   left: auto;
   height: 102%;
}
div#contact-section:before {
   content: '';
   position: absolute;
   height: 100%;
   width: 18%;
   background: #fcfcfc;
   top: 0;
   left: 0;
}


div#contact-section:after {
   content: '';
   position: absolute;
   height: 100%;
   width: 18%;
   background: #fcfcfc;
   top: 0;
   right: 0;
}
    
}



/***** TESTIMONIALS FORM *****/
.wpcr3_respond_2 input[type="text"] {
    margin: 3px 0;
}
.wpcr3_respond_2 input[type="text"], .wpcr3_in_content textarea {
    background: #04264b !important;
    color: #e5e5e5 !important;
    border: 1px solid #1de278;
}
.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: #1de278;
    color: #04264b;
    border-radius: 50px;
    border: 0px;
    font-weight: 600;
}

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

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

/* add buttons*/
.booking-button-switch {/* display:none !important; */}
   .slider-button {
       margin-top:20px;
       margin-bottom:100px;
 }
.button-quote-header {
   text-align: center;
   padding: 10px 0;
   background: #04264b;
}
.top_button {
   position: relative;
	display:none;
/*    display: inline-block; */
   background-color: #1de278;
   font-weight: bold !important;
   text-transform: uppercase;
   text-shadow: none;
   color: #04264b;
   padding: 12px 25px;
   transition: 0.3s ease-in-out;
   font-size: 16px;
   border-radius: 50px;
}
.top_button .fa {
   left:0px !important;
   height:0px !important;
   color: #04264b !important;
   padding: 5px 5px 5px 0px !important;
}
.floating-estimate-btn {
	display:none;
   text-align: center;
   padding: 5px 15px 5px 15px;
   background-color: #1de278;
   color: #04264b !important;
   border-top-right-radius: 50px;
   border-bottom-right-radius: 50px;
   border: 2px solid #04264b;
   border-left: 0px;
   font-size: 15px;
   z-index: 999999;
   font-weight: bold;
   position: fixed;
   bottom: 50px;
   text-transform: uppercase;
   width: 230px;
}
#main-footer .listing-rev-btn {
   padding: 5px 15px 5px 15px;
   border: 2px solid #04264b;
   border-left: 0px;
   border-top-right-radius: 50px;
   border-bottom-right-radius: 50px;
   bottom:7px;
   background: #1de278;
   color: #04264b;
   text-transform: uppercase;
   font-size:15px;
   position: fixed;
   display: flex;
   font-weight: bold;
   z-index: 999;
   justify-content:center;
   width: 230px;
   align-items: center;
}
#main-footer .listing-rev-btn img {
 display:none;
}
#main-footer .listing-rev-btn .fa {
   display: block;
   margin-right: 5px;
   color: #04264b;
   position: relative;
   bottom: 1px;
}
/* end add buttons */

.footer-widget li:before {
   border-color: #1de077;
}

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

body:not(.et_pb_page) #main-content .container{
   padding: 80px 0px;
}

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

img.first-list-image {
    width: 100%;
    max-width: 600px;
}

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: #1de278;
    color: #000;
    text-align: left;
    width: 100%;
}

.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;
    margin-bottom: 30px;
}

.second-list-content li {
    color: #000;
    width: 100%;
    padding: 5px 10px;
    margin-bottom: 10px;
    text-align: left;
    background: #1de278;
}

img.second-list-image {
    width: 100%;
    max-width: 600px;
}
.first-list-content li:hover, .second-list-content li:hover {
    background: #04254a;
    color: #fff;
}
div#second-list-section {
    background: #070E09;
}



@media (min-width: 981px) {
.first-list-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.first-list-image-container {
    width: 50%;
}

ul.first-list-content {
    width: 45%;
    margin: 0;
}

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

ol.second-list-content {
    width: 45%;
    margin:  0;
}

.second-list-image-container {
    width: 50%;
}
}

@media (min-width: 981px) {
    .srvElementAddServices .srvElementContent {
        width: 100%;
        padding-left: 20px;
        columns: 3;
        column-gap: 42px;
    }
}

@media (min-width: 981px) {
 #additionalServices {
        width: 100%;
        padding-left: 20px;
        columns: 3;
        column-gap: 42px;
    }
}

#additionalServices {
    list-style: none;
    text-align: center;
    padding: 0;
    list-style-type: none;
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
}

@media screen and (min-width: 981px) {
    .srvElementFullWidth .srvElementBody2 {
        margin-left: 20px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 20px 20px 20px 30px;
    }
}

.srvElementHeader2 h2 {
    text-align: center;
    color: #04254a;
    font-weight: bold;
    padding-bottom: 5px;
}

@media screen and (max-width: 980px) {
    .srvElementHeader2 h2 {
    text-align: center;
    color: #04254a;
    font-weight: bold;
    padding-bottom: 5px;
    margin-top: 20px;
}
}

@media screen and (min-width: 981px) {
    .srvElementHeader2 h2 {
    margin-top: 0px;
}
}


.single-post .entry-content h2,
.page #left-area .entry-content h2 {
	text-align: left;
}
.post-content-inner,
.single-post .entry-content *,
.page #left-area .entry-content * {
	text-align: justify;
}
body:not(.et_pb_pagebuilder_layout) .entry-content p:has(img) {
	text-align: center!important;
}
body:not(.et_pb_pagebuilder_layout) .entry-content p img {
	width: 100%;
	max-width: 600px;
}