/* 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
*/

/*HEADER STYLES*/


header#main-header {
    background-color: #ffffff;
}

.header-menu-container {
    width: 95% !important;
    display: flex;
    justify-content: space-between;
    max-width: none;
    align-items: center;
    flex-direction: row;
}

.logo_container {
    position: relative !important;
    /* order: 2; */
    width: 150px !important;
    /* height: 85px !important; */
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.logo-link{
    height: stretch;
    vertical-align: middle;
    object-position: center;
}

#logo{
    max-width: none;
    object-position: center;
}
 
div#et-top-navigation {
    padding: 0 !important;
    /* order: 3; */
}


 .add-info-container {
     width: 100%;
     margin: 0 auto;
     order: 1;
     display: none;
}
 .add-info-holder {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     margin: 0 auto;
     padding-top: 5px;
     filter: drop-shadow(2px 4px 1px #032e19);
}
 .add-info-holder a {
     color: #ffffff;
     display: flex;
     justify-content: center;
     align-items: center;
     margin: 0px 5px 5px 5px;
     font-size: 16px;
}
 .header-location-container {
     color: #ffffff;
     display: flex;
     justify-content: center;
     align-items: center;
     margin: 0px 5px 5px 5px;
     font-size: 16px;
}
 .add-info-holder .fa {
     margin-right: 5px;
     color: #ffffff;
     background: #ff5e15;
     border-radius: 50%;
     width: 20px;
     height: 20px;
     display: flex;
     justify-content: center;
     align-items: center;
     font-size: 11px;
     position: relative;
}
 .add-info-holder .fa-envelope {}

.text-logo {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    color: #fff;
    font-family: 'Source Sans Pro', sans-serif;
    line-height: 1.05;
    filter: drop-shadow(2px 4px 1px #032e19);
}

.text-logo img {
    width: 57px;
    height: 69px;
}

.mobile_menu_bar {
    padding: 0 !important;
}


 ul#mobile_menu {
     top: 100%;
     background-color: #ffffff !important;
     border-color: #0f6e56 !important;
}
 .et_mobile_menu li a {
     color: #272727 !important;
}
 .mobile_nav ul#mobile_menu ul.sub-menu li a:not(.mobile-toggle) {
     position: relative;
}

 .et_mobile_menu .current_page_item a {
     color: #ffffff !important;
     opacity: 1 !important;
}
.et_mobile_menu li li{
padding-left:0px;}

.phonenum .fa:before {
    bottom: 4px !important;
    right: 5.5px !important;
    position: absolute;
}

.email-btn .fa:before {
    position: absolute;
    left: 4px !important;
    bottom: 4.2px !important;
}

.header-location-container .fa:before {
    position: absolute;
    top: 5px !important;
    left: 6.5px !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: #116e57;
}
/*rotate the Divi Menu icon on click*/
/*END HEADER STYLES*/
/*PAGE STYLES*/


 


 

/* TESTIMONIALS SECTION STYLE */
 
 .home .wpcr3_respond_1 {
}
 .home .wpcr3_dotline {
     display: none !important;
}
 .home .wpcr3_review {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     font-weight: bold;
     font-family: 'Source Sans Pro', sans-serif;
}
 .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: #ff5e15;
     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: 15px;
}
 .home .wpcr3_reviews_holder {
     position: relative;
}
 .home div.wpcr3_review blockquote.wpcr3_content p {
     font-style: italic;
     font-weight: 500;
     text-shadow: 0 1px 2px rgb(0 0 0 / 10%);
}
 .testimonials-btn {
   background: #0436aa;
     color: #ffffff;
    font-family: 'Source Sans Pro', sans-serif;
    padding: 10px 40px;
    display: inline-block;
    border-radius: 30px;
    line-height: 1;
    box-shadow: rgba(0, 0, 0, 0.15) 2.4px 2.4px 3.2px;
    text-shadow: 0 1px 2px rgb(0 0 0 / 20%);
}
 .testimonials-btn:hover {
     

	  color: #ffffff;
    background: #ff5e15;
}

/* CONTENT SECTION STYLE */
/* FOOTER STYLE */
 #main-footer {
     background: #062d1e;
     background-size: cover;
     background-repeat: no-repeat;
     background-image: url(http://cleaningservice-lewisville-com.wp.411reports.com/wp-content/uploads/2024/07/badges-section-bg.webp)!important;
     background-position: 81%;
     background-position-y: 84%;
     position: relative;
}

 #main-footer .container {
     width: 95%;
}
 footer#main-footer .section-separator-down {
     -moz-transform: scaleY(-1);
     -webkit-transform: scaleY(-1);
     -o-transform: scaleY(-1);
     transform: scaleY(-1);
     -ms-filter: fliph;
     filter: fliph;
}
 div#footer-bottom {
     background-color: #062d1e;
     padding: 15px;
     color: #ffffff;
     z-index: 999;
     position: relative;
     box-shadow: rgb(255 168 21 / 45%) 0px -25px 20px -20px;
}
 .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: 400;
     line-height: 1.5em;
     text-align: center;
     border-bottom: 2px solid #efa028;
     text-shadow: 0 1px 2px rgb(0 0 0 / 10%);
}
 .footer-widget .textwidget {
     color: #ffffff;
     text-shadow: 0 1px 2px rgb(0 0 0 / 10%);
}
 #footer-widgets .footer-widget a {
     background-color: #fff;
}
 table.openinghours {
     max-width: 385px;
     margin: 0 auto !important;
}
 table.openinghours tr {
     display: flex;
     justify-content: space-between;
     line-height: 2;
     color: #ffffff;
}
 #current-day {
     background-color: #116e57;
     padding: 0 2px;
     box-shadow: rgba(0, 0, 0, 0.15) 2.4px 2.4px 3.2px;
}
 #current-day td {
     color: #fff;
     text-shadow: none;
}
 #closed-day {
     color: #ffffff;
}
/* SIDEBAR, BLOG PAGE, BLOG POST STYLES */
 .et_pb_sidebar_0 h4.widgettitle {
     font-size: 26px;
     font-weight: bold;
     color: #2a2a2a;
     position: relative;
     margin-bottom: 10px;
     line-height: 1.2;
     text-align: center;
     border-bottom: 1px solid #1e9e75;
}
 #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;
}
 #left-area .post-meta a {
     color: #16bae1;
}
 #left-area .post-meta {
     text-align: center;
}
 .blog .et_pb_post {
     text-align: justify;
}
/*MEDIA QUERIES*/


 @media screen and (max-width: 981px) {
    /* ADDITIONAL STYLES FOR MOB. RES. */
     
     .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;
    }
     #logo{
    width: 100%;
    height: 100%;
    max-width: none !important;
    max-height: none;
    }
     .header-menu-container:after{
         display:none;
     }
}
 @media screen and (min-width: 981px) {
    /*HEADER STYLES*/

  .logo_container {
    /* order: 1; */
    position: relative !important;
    /* left: 0; */
    /* height: 80px !important; */
}

.header-menu-container {
    flex-direction: row;
    align-items: flex-end;
    /* justify-content: center; */
    height: 90px;
}
.header-menu-container:after {
    display:none;
}
.add-info-holder {
    justify-content: flex-end;
}

.header-location-container {
    margin-right: 0;
}

  div#et-top-navigation {
         /* width: calc(100% - 340px) !important; */
         /* padding: 0px !important; */
         /* padding-bottom: 10px !important; */
         display: flex;
         justify-content: flex-end;
         height: 80px;
    }
     #top-menu-nav, #top-menu{
        display: flex;
    align-items: center;
     }
     nav#top-menu-nav ul#top-menu li a{
         color: #000000 !important;
         padding-top: 15px !important;
         padding-bottom: 15px !important;
    }
     #top-menu .menu-item-has-children>a:first-child:after {
         top: 15px;
         color: #ff5e15;
    }
     nav#top-menu-nav ul#top-menu .current-menu-item a{
         color: #116e57 !important;
         /* filter: drop-shadow(2px 4px 1px black); */
    }
     nav#top-menu-nav ul#top-menu li {
         padding-left: 11px;
         padding-right: 11px !important;
         background: transparent !important;
    }
	 nav#top-menu-nav ul#top-menu li:last-child {
    padding-right: 0 !important;
}
     nav#top-menu-nav ul#top-menu .current-menu-item {
         background: #209ae3;
    }
 
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:before, nav#top-menu-nav ul#top-menu .current-menu-item a:after {
		 color: #fff;
	 }
     ul.sub-menu {
         filter: drop-shadow(0px 1px 3px #5b5b5b);
         top: 43px;
         background-color: #ffffff !important;
         border-color: #136f57 !important;
    }
     nav#top-menu-nav #top-menu ul.sub-menu a {
         color: #0e0e0e !important;
         position: relative;
         padding: 6px 6px 6px 16px !important;
         line-height: 1.2;
    }
   
     ul.sub-menu li {
         padding: 0 10px !important;
         width: 100%;
    }
     ul.sub-menu li a {
         padding: 5px 0px !important;
         width: 100% !important;
    }

.add-info-holder {
    padding-top: 10px;
    padding-bottom: 10px;
}

 

  
    /*END HEADER STYLES*/
    /*PAGE STYLES*/

   

    /* CONTACT SECTION DESKTOP */
	
    /* TESTIMONIALS SECTION DESKTOP */

    /* SERVICES LIST SECTION DESKTOP */
	 
    /* 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: 0px;
    }
    /* 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 #c3c5c5;
    }
     #left-area .post-meta {
         text-align: left;
    }
     #main-content .container:before {
         background-color: rgb(6 45 91 / 20%);
    }
}

 
/***** 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 {
     margin-top: 10px;
     background: #000000;
     color: #fff;
}
 @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%;
    }
}





.et_pb_grid_item img {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
object-fit: cover;
}
 
.et_pb_grid_item .et_pb_gallery_image {
padding-top:100%;
}


*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;color:#1a1a1a;background:#FAFAF7;line-height:1.6;font-size:16px}
.home p {
   padding-bottom: 0em;
}
.logo{display:flex;align-items:center;text-decoration:none}
.logo img{height:62px;width:62px;object-fit:contain}
.nav-right{display:flex;gap:16px;height: 100%;align-items: center;}
.nav-phone{font-size:15px;color:#0F6E56;font-weight:600;text-decoration:none}
.nav-cta{background:#1D9E75;color:#fff;padding:10px 22px;border-radius:24px;text-decoration:none;font-size:14px;font-weight:500}
.nav-cta:hover{background:#0F6E56}
.hero{position:relative;overflow:hidden;min-height: 80vh;display:flex;align-items:center;background: #000000;color:#fff}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center top;opacity: 0.8;}
.hero-overlay{position:absolute;inset:0;background: linear-gradient(105deg,rgba(0,0,0,0.78) 0%,rgba(0,0,0,0.55) 55%,rgba(0,0,0,0.15) 100%);}
.hero-content{position:relative;z-index:2;padding:80px 5%;/* max-width: 1080px; */width: 100%;margin: auto;}
.hero-logo{height:90px;width:90px;object-fit:contain;border-radius:50%;background:rgba(255,255,255,.12);padding:4px;margin-bottom:18px;display:block}
.hero p{font-size:18px;color:rgba(255,255,255,.85);margin-bottom:36px;font-weight:300;max-width:520px;line-height:1.7}

.hero-badge{display:inline-block;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);color:#b8f0d8;font-size:12px;letter-spacing:.1em;padding:5px 14px;border-radius:20px;margin-bottom:22px;font-weight:500}
.hero .header-title {font-family:'Playfair Display',serif;font-size:clamp(34px,5.5vw,58px);font-weight:700;line-height:1.1;margin-bottom:20px;color: #fff;}
.hero .header-title em{font-style:italic;color:#9FE1CB}
.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;align-items: flex-start;}
.hero-note{margin-top:18px;font-size:13px;color:rgba(255,255,255,.5)}
.btn-primary{background:#EF9F27;color:#854F0B;padding:15px 32px;border-radius:30px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:transform .15s,background .2s;}
.btn-primary:hover{background:#d48c1e;transform:translateY(-2px)}
.btn-secondary{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55);padding:15px 28px;border-radius:30px;font-size:16px;font-weight:500;text-decoration:none;transition:border-color .2s,background .2s}
.btn-secondary:hover{border-color:white;background:rgba(255,255,255,.1)}
.trust-bar{background:#fff;border-bottom:1px solid #e8e8e2;padding:16px 5%;display:flex;justify-content:center;gap:32px;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#5a5a55;font-weight:500}
.trust-dot{width:8px;height:8px;border-radius:50%;background:#1D9E75;flex-shrink:0}
section{padding:72px 5%}
.section-inner{max-width:1100px;margin:0 auto;}
.section-label{font-size:12px;letter-spacing:.12em;color:#1D9E75;font-weight:600;text-transform:uppercase;margin-bottom:10px}
.section-title, h3{font-family:'Playfair Display',serif;font-size:clamp(24px,3.5vw,38px);font-weight:700;margin-bottom:14px;line-height:1.2}
.section-sub{font-size:16px;color:#5a5a55;margin-bottom:40px;max-width:560px;line-height:1.7;text-align: justify;}
.gallery{background:#FAFAF7}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:40px}
.g-item{border-radius:14px;overflow:hidden;height:250px}
.g-item.tall{grid-row:span 2;height:auto}
.g-item.wide{grid-column:span 2}
.g-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.g-item:hover img{transform:scale(1.04)}
.benefits{background:#fff}
.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;margin-top:40px}
.benefit-card{background:#FAFAF7;border:1px solid #e8e8e2;border-radius:16px;padding:26px 20px;text-align:center;transition:border-color .2s,transform .2s}
.benefit-card:hover{border-color:#9FE1CB;transform:translateY(-3px)}
.benefit-icon{width:52px;height:52px;background:#E1F5EE;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.benefit-icon svg{width:26px;height:26px}
.benefit-title{font-weight:600;font-size:15px;margin-bottom:7px}
.benefit-desc{font-size:13px;color:#5a5a55;line-height:1.6}
.peace-section{background:#E1F5EE;border-top:1px solid #9FE1CB;border-bottom:1px solid #9FE1CB;padding:60px 5%}
.peace-inner{max-width:700px;margin:0 auto;text-align:center}
.peace-inner section{
    padding: 20px;
}
.peace-quote{font-family:'Playfair Display',serif;font-size:clamp(20px,3vw,30px);font-weight:600;color:#0F6E56;line-height:1.45;margin-bottom:14px}
.peace-sub{font-size:16px;color:#2a7a60;font-weight:300}
.team-section{background:#0F6E56;color:white;padding:72px 5%}
.team-layout{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.team-text .section-title{color:white}
.team-text .section-sub{color:rgba(255,255,255,.78)}
.team-stats{display:flex;gap:14px;margin-top:28px}
.stat-box{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:16px 18px;flex:1;text-align:center}
.stat-num{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:#9FE1CB;line-height:1;margin-bottom:4px}
.stat-label{font-size:11px;color:rgba(255,255,255,.6);letter-spacing:.06em}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tg-item{border-radius:12px;overflow:hidden}
.tg-item img{width:100%;object-fit:cover;object-position:top;display:block;transition:transform .4s}
.tg-item:hover img{transform:scale(1.03)}
.tg-full{grid-column:span 2}
.tg-full img{height:280px}
.tg-item img{height:200px}
.portraits{background:#FAFAF7}
.portraits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-top:40px}
.portrait-card{border-radius:16px;overflow:hidden;background:#fff;border:1px solid #e8e8e2;transition:transform .2s,border-color .2s}
.portrait-card:hover{transform:translateY(-4px);border-color:#9FE1CB}
.portrait-card img{width:100%;height:220px;object-fit:cover;object-position:top;display:block}
.portrait-name{padding:12px 14px;font-size:14px;font-weight:500;text-align:center;color:#0F6E56}
.action-section{background:#fff}
.action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
.action-card{border-radius:16px;overflow:hidden;position:relative}
.action-card img{width:100%;height:290px;object-fit:cover;display:block;transition:transform .4s}
.action-card:hover img{transform:scale(1.04)}
.action-label{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(15,110,86,.85));color:white;padding:38px 16px 14px;font-size:13px;font-weight:500}
.services{background:#FAFAF7}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:36px}
.service-item{background:#fff;border:1px solid #e8e8e2;border-radius:14px;padding:20px 16px;display:flex;align-items:flex-start;gap:12px;transition:border-color .2s,transform .15s}
.service-item:hover{border-color:#9FE1CB;transform:translateY(-2px)}
.service-check{width:24px;height:24px;background:#1D9E75;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.service-check svg{width:13px;height:13px}
.service-name{font-size:15px;font-weight:600;line-height:1.3}
.service-note{font-size:12px;color:#5a5a55;margin-top:3px}
.areas{background:#fff}
.areas-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.area-tag{background:#E1F5EE;color:#0F6E56;border:1px solid #9FE1CB;padding:9px 20px;border-radius:22px;font-size:14px;font-weight:500}
.cta-section{background:#0F6E56;color:#fff;text-align:center;padding:84px 5%;}
.cta-section .section-inner{display: flex;justify-content: center;align-items: center;}
.cta-text, .cta-cf{width:50%;}
.cta-section .section-title, h3{color:#fff}
.cta-sub{font-size:17px;color:rgba(255,255,255,.78);margin-bottom:36px;font-weight:300;max-width:480px;margin-left:auto;margin-right:auto;line-height:1.7}
.cta-sub a{
    color: #efa028;
}
.cta-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}
.cta-note{font-size:13px;color:rgba(255,255,255,.45)}
.bilingual-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:rgba(255,255,255,.9);padding:8px 20px;border-radius:22px;font-size:13px;margin-bottom:26px}
footer{background:#072d1e;color:rgba(255,255,255,.55);text-align:center;padding:32px 5%;font-size:13px;line-height:2}
footer strong{color:rgba(255,255,255,.9)}
footer a{color:#9FE1CB;text-decoration:none}
.footer-logo{height:68px;width:68px;object-fit:contain;border-radius:50%;background:rgba(255,255,255,.08);padding:4px;margin-bottom:10px;display:inline-block}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.hero-content > *{animation:fadeUp .7s ease both}
.hero-content > *:nth-child(1){animation-delay:.1s}.hero-content > *:nth-child(2){animation-delay:.2s}.hero-content > *:nth-child(3){animation-delay:.35s}.hero-content > *:nth-child(4){animation-delay:.5s}.hero-content > *:nth-child(5){animation-delay:.6s}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.team-layout{grid-template-columns:1fr}.action-grid{grid-template-columns:1fr 1fr}.nav-phone{display:none}}
@media(max-width:540px){.action-grid{grid-template-columns:1fr}.hero-buttons{flex-direction:column}.portraits-grid{grid-template-columns:repeat(2,1fr)}}
.home svg {
    clear: both;
    margin-right: 0px;
}

/* ── Contact Form Section ──────────────────────────────────────────── */
.contact-section{background:#0F6E56;padding:80px 5%}
.contact-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.6fr;gap:60px;align-items:start}
.contact-title{font-family:'Playfair Display',serif;font-size:clamp(26px,3vw,38px);font-weight:700;color:#fff;line-height:1.2;margin-bottom:14px}
.contact-sub{font-size:15px;color:rgba(255,255,255,.75);line-height:1.8;font-weight:300}
.contact-form-wrap{
    background: #fff;
    border: 1px solid #e8e8e2;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, .06);
    }
.cf-row.cf-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cf-field{margin-bottom:14px}
.quickFormFields,.quickFormFieldsMess{
    width: 100% !important;
    padding: 12px 16px !important;
    border: 1.5px solid #e0e0da !important;
    border-radius: 10px;
    font-size: 15px;
    font-family: 'DM Sans', sans-serif;
    background-color: #fafaf8 !important;
    color: #505050 !important;
    transition: border-color .2s, box-shadow .2s;
    outline: none;
    }
.quickFormFields::placeholder,.quickFormFieldsMess::placeholder{color:rgb(84 83 83 / 63%)}
.quickFormFields:focus,.quickFormFieldsMess:focus{border-color:#9FE1CB;background:rgba(255,255,255,.15)}
.quickFormFieldsMess{resize:vertical;min-height:130px}
#contactForm p{display:flex;align-items:center;gap:14px;margin-bottom:20px;flex-direction: row;}
.cf-captcha img{border-radius:8px;flex-shrink:0}
.captchaField{
    width: calc(100% - 115px) !important;
    padding: 12px 6px !important;
    border: 1.5px solid #e0e0da !important;
    border-radius: 10px;
    font-size: 15px;
    font-family: 'DM Sans', sans-serif;
    background-color: #fafaf8 !important;
    color: #505050 !important;
    transition: border-color .2s, box-shadow .2s;
    outline: none;
    }
.captchaField::placeholder{color:rgb(0 0 0 / 45%)}
.captchaField:focus{border-color:#9FE1CB;background:rgb(0 0 0 / 87%)}
.quickFormSend{width: 100% !IMPORTANT;background: #EF9F27 !important;color: #854F0B !important;border: none !important;border-radius: 30px !important;padding:15px 32px;font-size:16px;font-weight:600;font-family:'DM Sans',sans-serif;cursor: pointer !important;transition:background .2s,transform .15s;height: auto !important;}
.quickFormSend:hover{background: #d48c1e !important;transform:translateY(-2px)}
input.text, input.title, input[type=email], input[type=password], input[type=tel], input[type=text], select, textarea{ color:#fff;}
input.text:focus, input.title:focus, input[type=text]:focus, select:focus, textarea:focus{color:#fff}
@media(max-width:900px){.cta-section .section-inner{flex-direction:column; gap:50px;} .cta-text, .cta-cf{width:100%} .contact-inner{grid-template-columns:1fr}.cf-row.cf-two{grid-template-columns:1fr}.inquiry-layout{grid-template-columns: 1fr !important;}.action-grid{grid-template-columns:1fr 1fr}.nav-phone{display:none}}


.testimonial-item {
    border: none;
    border-radius: 10px;
    padding: 1rem;
    background: transparent;
    min-height: 100%;
    break-inside: avoid;
}
.testimonial-item:hover{
    background: transparent;
}
.testimonial-content {
    font-size: 1rem;
    line-height: 1rem;
    font-weight: 500;
    color: #116e57;
    text-align: center;
    font-style: italic;
}

@media screen and (max-width:1100px){
    .nav-phone{
        display:none;
    }
}

.gallery-button{background:#1D9E75;color:#fff;padding:10px 22px;border-radius:24px;text-decoration:none;font-size:14px;font-weight:500;margin: 20px auto;display: block;width: fit-content;}
.gallery-button:hover{background:#0F6E56}
body:not(.home) h3{display:none;}

.portrait-role{padding:0 14px 12px;font-size:12px;text-align:center;color:#5a5a55}
.role-badge{display:inline-block;background:#1D9E75;color:white;font-size:10px;font-weight:600;padding:3px 10px;border-radius:12px;letter-spacing:.05em}


/* WHATSAPP FLOAT */
.whatsapp-float{position:fixed;bottom:28px;right:28px;z-index:999;background:#25D366;color:white;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(37,211,102,.45);text-decoration:none;transition:transform .2s,box-shadow .2s}
.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 24px rgba(37,211,102,.55)}
.whatsapp-float svg{width:30px;height:30px}

.inquiry{background:#FAFAF7}
.inquiry-layout{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:start}
.inquiry-info .section-sub{margin-bottom:28px}
.contact-detail{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}
.contact-icon{width:42px;height:42px;background:#E1F5EE;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.contact-icon svg{width:18px;height:18px}
.contact-detail a{color:#0F6E56;text-decoration:none;font-weight:600;font-size:15px}
.contact-detail a:hover{text-decoration:underline}
.contact-detail p{font-size:13px;color:#5a5a55;margin-top:2px}
.form-title{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;margin-bottom:6px}
.form-subtitle{font-size:14px;color:#5a5a55;margin-bottom:26px}

#contact{
    padding:0px;
}