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



 .et_pb_row {
     width: 95% !important;
}
.home #page-container{
    padding-top:0px !important;
}
/*HEADER STYLES*/
 header#main-header {
     /* background: #fff !important; */
}
 .main-header-info-container {
     background: #333333;
     position: relative;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
     padding: 10px;
     font-size: 16px;
}
 .main-header-info-holder {
    color: #fff;
}
 .main-header-contact-info-holder {
}
 .main-header-contact-info-holder a {
     color: #ffffff;
}
 .main-header-contact-info-holder a span {
     color: #FFC107;
}

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

.top_button {
    background: #388e3c;
    color: #fff;
    padding: 5px 10px;
    border: 1px solid #ffc107;
}

 .header-menu-container {
     width: 100%;
     max-width: 100%;
     display: flex;
     justify-content: space-between;
     align-items: center;
}
 .header-menu-container:after {
     display:none;
}
 .header-info-holder {width: 250px !important;}
 .logo_container {
     position: relative !important;
     text-align: left;
     display: flex;
     justify-content: flex-start;
     align-items: center;
     padding: 0px;
}
 img#logo {
     min-height: 60px !important;
     max-height: 100px !important;
     width: auto !important;
     max-width: 280px !important;
}
 



 .main-header-napinfo-block {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     flex-direction: row-reverse;
     padding-bottom: 10px;
     padding-left: 10px;
     padding-right: 75px;
}
 .main-header-napln-container {
     display: flex;
     justify-content: center;
     align-items: center;
     line-height: 1;
     margin: 0 5px;
     font-size: 16px;
     color: #000;
     text-align: center;
     min-height: 32px;
}
 .main-header-napln-container .fa {
     margin-right: 5px;
     color: #ffc200;
}
 .main-header-email-btn {
     display: flex;
     justify-content: center;
     align-items: center;
     line-height: 1;
     font-size: 16px;
     color: #fff;
     background: #333333;
     position: absolute;
     left: 0;
     bottom: 0px;
     z-index: 999;
     height: 42px;
     width: 199px;
}
 .main-header-email-btn .fa {
     margin-right: 5px;
     color: #FFC107;
}
 .hours-holder {
     display: flex;
     justify-content: center;
     align-items: center;
     line-height: 1;
}
 .hours-holder .fa {
     margin-right: 5px;
     color: #ffffff;
     width: 48px;
     height: 48px;
     border: 1px dashed #ffc200 !important;
     display: flex;
     justify-content: center;
     align-items: center;
     font-size: 25px;
     background: #388e3c;
}
 .hours-holder span.info-addon {
     width: 100%;
     display: block;
     text-align: center;
     color: #ffffff;
}
 a.hours-box {
     padding: 0 !important;
     pointer-events: none;
}
 .main-header-napinfo-block a.hours-box {
     pointer-events: none;
}
 .hours {
     border: none;
     height: auto;
     box-shadow: none;
     background: transparent !important;
}
 .hours img {
     display: none;
}
 .hours p {
     padding: 0 !important;
     font-size: 16px !important;
     text-shadow: none;
     color: #fff;
}
 .add-info-btn {
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     background: #333333;
     width: 50px;
     padding: 10px;
     cursor: pointer;
     box-shadow: rgb(0 0 0 / 10%) 0px 10px 15px -3px, rgb(0 0 0 / 5%) 0px 4px 6px -2px;
     border: 1px solid #ffffff33;
     border-right: none;
}
 .add-info-block {
     display: flex;
     justify-content: center;
     align-items: flex-start;
     width: 270px;
     position: fixed;
     right: -220px;
     -webkit-transition: right 0.4s ease-in-out;
     transition: right 0.4s ease-in-out;
    /* top: 163px;
     */
     margin-top: 35px;
     z-index: 97;
}
 .open-info {
     right: 0;
     z-index: 9999;
}
 .open-info #add-info-open-icon {
     display: none;
}
 .open-info #add-info-close-icon {
     display: block;
}
 .add-info-container {
     background: #388e3c;
     display: flex;
     flex-direction: column;
     padding: 20px;
     width: 220px;
     height: auto;
     border-bottom-left-radius: 10px;
     box-shadow: rgb(0 0 0 / 10%) 0px 10px 15px -3px, rgb(0 0 0 / 5%) 0px 4px 6px -2px;
}
 .add-info-btn .fa {
     color: #ffc107;
}
 #add-info-close-icon {
     display: none;
}
 .add-info-btn span {
     line-height: 1;
     color: #ffffff;
     margin-top: 5px;
     font-size: 12px;
}
 .add-info-container a, .header-location-container {
     color: #fff;
     font-size: 15px;
     display: flex;
     justify-content: space-between;
     font-weight: 400;
     text-align: right;
     width: 100%;
}
 .email-btn {
     margin: 10px 0;
}
 .add-info-container .fa {
     margin-right: 5px;
     margin-top: 2px;
}
 div#et-top-navigation {
    padding-left: 0px !important;
}
 span.select_page {
     display: none !important;
}
 
 
 .et-fixed-header.sticky-menu .add-info-block, .et-fixed-header.sticky-menu .floating-cta-btn  {
     top: 20px;
}
 div#et_mobile_nav_menu {
     width: 100%;
}
body #page-container .et_slide_in_menu_container{
    background: #fff !important;
    opacity: 1 !important;
    padding-top: 0px;
}
 .mobile_menu_bar {
     /* padding-bottom: 0 !important; */
     background: #ffffffd6;
     width: 50px;
     margin-left: auto;
     width: 100px !important;
     /* border-radius: 20px; */
     padding-bottom: 0px !important;
}
 .mobile_nav:before {
     content: '';
     position: absolute;
     width: 0;
     height: 0;
     border-bottom: 41px solid #388e3c;
     border-left: 25px solid transparent;
     top: -37px;
     right: 50px;
     box-shadow: 9px 3px 0px 1px #388e3c;
}
 .et_mobile_menu {
     background-color: #ffffff !important;
     border-color: #ffc200 !important;
     top: 0px;
     height: auto !important;
     text-align: left !important;
     padding: 0 4% !important;
}
.et_slide_in_menu_container #mobile_menu_slide .et_mobile_menu_arrow:before{
color:#222222;
}
.et_header_style_fullscreen .et_slide_in_menu_container{
    -webkit-transition: none;
    transition: none;
}
.et_pb_fullscreen_menu_opened .et_mobile_menu li{
    -webkit-transition-delay: 0s !important;
    transition-delay: 0s !important;
}
et_header_style_fullscreen .et_slide_in_menu_container.et_pb_fullscreen_menu_opened {
    opacity: 1;
    visibility: visible;
    padding-top: 0px;
}
 .et_mobile_menu li a {
     color: #0d0d0d !important;
     text-align: left;
     font-family: 'Scheherazade New';
     font-style: italic;
     padding: 0px !important;
     font-weight: 400 !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: #181818 !important;
     text-align: center;
     font-size: 15px;
     /* top: 15px; */
     /* right: 6px; */
     left: auto;
     content: "☰   Menu" !important;
     font-family: 'Plus Jakarta Sans' !important;
     padding: 15px 10px;
}

.et_header_style_fullscreen .et_slide_in_menu_container span.mobile_menu_bar.et_toggle_fullscreen_menu:before{
     content: "✕   Menu" !important;
}
.booking-button-switch {display:none !important;}
/*rotate the Divi Menu icon on click*/
/*END HEADER STYLES*/


#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 #000000;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    background: #ffffff;
    color: #000000;
    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;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
/* 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;
}


/* 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 {
      display: inline-flex;
      align-items: center;
      gap: .6rem;
      padding: .85rem 1.4rem;
      border: 1px solid #1a1a1a;
      border-radius: 0px;
      font-size: 14px;
      font-weight: 500;
      color: #1a1a1a;
      background: transparent;
      transition: background .3s cubic-bezier(.22, 1, .36, 1), color .3s cubic-bezier(.22, 1, .36, 1);
      cursor: pointer;
      line-height: 1;
      max-width: 100%;
      width:200px;
      height: 40px;
      margin-top:20px;
}
 input#submitter:hover {
    color: #fff;
    background: #1a1a1a;
}
 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: #131313 !important;
     background-image: none;
     margin-bottom: 10px !important;
     background: rgb(255 255 255 / 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%);
     border-bottom: 1px solid #121212;
}
 #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: #131313 !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: #131313 !important;
     border-color: #000000;
}
 
/* FOOTER STYLE */
 #main-footer {
     background: #ffffff;
     background-size: contain;
     background-repeat: repeat;
}
 #main-footer .container {
     width: 95%;
     max-width: none;
}
 div#footer-bottom {
     background-color: #ffffff;
     padding: 15px;
     color: #222;
}
 .paymentsbox {
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
}
 .footer-widget h4 {
     color: #222;
     font-size: 30px;
     margin-bottom: 20px;
     margin-top: 30px;
     font-weight: bold;
     line-height: 1.5em;
     text-align: center;
     /* border-bottom: 1px dashed #222; */
}
 .footer-widget .textwidget {
     color: #222;
     font-size: 14px;
     line-height: 1.7;
}
 #footer-widgets .footer-widget a {
     /* background-color: #222 !important; */
     color: #222 !important;
     font-size: 17px;
}
 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: 'Plus Jakarta Sans';
     color: #222;
     font-weight: 400;
}
 #current-day {
     background-color: #dbdbdb;
     padding: 0 2px;
}
 #current-day td {
     color: #000;
     text-shadow: none;
}
 #closed-day {
     color: #222;
}

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

.footer-widget ul li:before {
    color: #222 !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: #222;
     position: relative;
     margin-bottom: 10px;
     line-height: 1.2;
     text-align: center;
     border-bottom: 1px solid #222;
}
 #sidebar h4.widgettitle {
     font-size: 26px;
     font-weight: 400;
     color: #222;
     position: relative;
     margin-bottom: 10px;
     line-height: 1.2;
     text-align: center;
     border-bottom: 1px solid #222;
}
 .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) {
    
     input#customer_name {
         /* width: calc((100%/3) - 7px); */
    }
     input#phone-cf {
         /* width: calc((100%/3) - 7px); */
    }
     input#customer_email {
         /* width: calc((100%/3) - 6px); */
         /* float: left; */
         /* margin-left: 10px; */
    }
}
 @media screen and (max-width: 980px) {
    /* 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;
    }
}
 @media screen and (min-width: 981px) {
    
    /*HEADER STYLES*/
     .et_header_style_fullscreen .et_pb_fullscreen_nav_container:after{
         content:'';
         background-image: url(https://freshcutlandscaping-va.com/wp-content/uploads/2026/05/landscaping-menu-header.webp);
         width: 50%;
         height: 100%;
         display: block;
         position: absolute;
         top: 0px;
         z-index: 9999;
         right: 0px;
         background-position: center;
     }
     .main-header-contact-info-holder {
    }
     .main-header-contact-info-holder a {
         min-width: 67%;
    }
     nav#top-menu-nav ul#top-menu li a{
         color: #ffffff !important;
         padding-top: 18px !important;
         padding-bottom: 18px !important;
    }
     #top-menu .menu-item-has-children>a:first-child:after {
         top: 19px;
    }
     nav#top-menu-nav ul#top-menu .current-menu-item a {
         color: #ffc107 !important;
    }
     nav#top-menu-nav ul#top-menu li {
         padding-left: 11px;
         padding-right: 11px !important;
    }

     .et_header_style_fullscreen #et-top-navigation{
          padding: 0px !important;
     }
     div#et-top-navigation {
   
    }
     
     nav#top-menu-nav {
         width: calc(100vw - 360px);
         max-width: 710px;
         display: flex;
         justify-content: flex-end;
    }
     nav#top-menu-nav ul#top-menu .current-menu-item {
         background: #333333;
    }
     ul.sub-menu {
        /* filter: drop-shadow(0px 1px 3px #5b5b5b); */
        top: 50px;
        background-color: #ffffff00 !important;
        border-color: #ffc107 !important;
    }
     nav#top-menu-nav #top-menu ul.sub-menu a {
         color: #fff !important;
         position: relative;
         padding: 6px 6px 6px 16px !important;
         line-height: 1.2;
    }
     #top-menu-nav ul.sub-menu a:before {
         content: '\f149';
         position: absolute;
         left: 0;
         font-family: 'FontAwesome';
         -webkit-transform: scaleX(-1) rotate(90deg);
         transform: scaleX(-1) rotate(90deg);
    }
     ul.sub-menu li {
         padding: 0 10px !important;
         width: 100%;
    }
     ul.sub-menu li a {
         padding: 5px 0px !important;
         width: 100% !important;
         text-shadow: none;
         opacity: 1 !important;
    }
    /*END HEADER STYLES*/
    
    /* 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;
    }
     .footer-widget{
         /* border-right:solid 1px #222; */
         height: 100%;
     }
    /* 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;
     border-top: 0px;
     border-left: 0px;
     border-right: 0px;
}
 .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 {
     display: inline-flex;
     align-items: center;
     gap: .6rem;
     padding: .85rem 1.4rem;
     border: 1px solid #1a1a1a;
     font-size: 14px;
     font-weight: 500;
     color: #1a1a1a;
     background: transparent;
     transition: background .3s cubic-bezier(.22, 1, .36, 1), color .3s cubic-bezier(.22, 1, .36, 1);
     cursor: pointer;
     line-height: 1;
     border-radius: 0px;
}
.wpcr3_button_1:hover{
    color: #fff;
    background: #1a1a1a;
    border: 1px solid #1a1a1a;
    font-weight: 500;
}
div.wpcr3_review blockquote.wpcr3_content{
    padding: 0px;
    border-left: none;
}

div.wpcr3_review div.wpcr3_review_title{
    font-size: 15px;
    font-weight: bold;
}
 @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%;
    }
}

 
/*--------------------------------------------------
    * 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;
    object-fit: contain;
    margin: auto;
}
 
.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 {
   width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(26, 26, 26, .18);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .3s cubic-bezier(.22, 1, .36, 1), border-color .3s cubic-bezier(.22, 1, .36, 1), transform .3s cubic-bezier(.22, 1, .36, 1);
}
 
.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;
    }
}




body {
    margin: 0;
    font-family: "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #1a1a1a;
    background: #ffffff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
    font-weight: 400;
}

img, svg, video { display: block; max-width: 100%; height: auto; }

a {/* color: inherit !important; */text-decoration: none;}

p { margin: 0 0 1rem; }
p:last-child { margin-bottom: 0; }

button {
    font: inherit;
    color: inherit;
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
}

/* ----------  Typography  ---------- */
.heading {
 font-family: "Scheherazade New", "Times New Roman", serif;
 font-weight: 700;
 font-size: clamp(48px, 4.23vw, 64px);
 font-size: max(30px, 2.78vw);
 line-height: 1em;
 margin: 0;
 letter-spacing: -0.01em;
 transform: translateY(20vh);
 opacity: 0;
 transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
              opacity 0.8s ease;
 will-change: transform, opacity;
 z-index: -1;
 position: relative;
}
.heading.in-view {
  transform: translateY(0);
  opacity: 1;
}




/* ----------  Buttons  ---------- */
.pk-button {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    padding: .85rem 1.4rem;
    border: 1px solid #1a1a1a;
    /* border-radius: 999px; */
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1a;
    background: transparent;
    transition: background .3s cubic-bezier(.22, 1, .36, 1), color .3s cubic-bezier(.22, 1, .36, 1);
    cursor: pointer;
    line-height: 1;
}
.pk-button:hover {
    background: #1a1a1a;
    color: #ffffff;
}
.pk-button .button-text { display: inline-block; }
.pk-button::after {
    content: '';
    width: 6px;
    height: 6px;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    transform: rotate(45deg);
    margin-left: .2rem;
}

.pk-button--simple {
    border: none;
    padding: 0;
    background: transparent;
    border-bottom: 1px solid currentColor;
    border-radius: 0;
    padding-bottom: 4px;
    gap: .4rem;
}
.pk-button--simple:hover {
    background: transparent;
    color: currentColor;
    opacity: .7;
}
.pk-button--simple::after { margin-left: .3rem; }

.pk-button--external::after {
    transform: rotate(-45deg);
    margin-top: -2px;
}

/* ----------  Preloader  ---------- */
.preloader {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    pointer-events: none;
}
.preloader .column {
    flex: 1 1 0;
    background: #1a1a1a;
    transform: translateY(0);
    transition: transform 1.1s cubic-bezier(.22, 1, .36, 1);
}
.preloader.done .column { transform: translateY(-101%); }
.preloader.done .column:nth-child(1) { transition-delay: 0s; }
.preloader.done .column:nth-child(2) { transition-delay: .12s; }
.preloader.done .column:nth-child(3) { transition-delay: .24s; }
.preloader.done .column:nth-child(4) { transition-delay: .36s; }

body.loading { overflow: hidden; }

/* ----------  Layout primitives  ---------- */
.flex_layout_wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    /* padding: 0 1.25rem; */
    justify-content: center;
}
.flex_layout_wrapper > * {
    /* flex: 0 0 100%; */
    max-width: 100%;
    min-width: 0;
}

section.flex_layout {
    padding: 2.5rem 0;
}
section.flex_layout.main_hero { padding: 0; }


.content{
    padding: 0 4%;
}
/* ----------  Header  ---------- */
.site-header {
    /* position: fixed !important; */
    /* inset: 0 0 auto 0; */
    z-index: 900 !important;
    /* pointer-events: none; */
    width: 100% !important;
    max-width: 100%;
    padding: 1rem 1.25rem !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    background: #00000080 !important;
    overflow: hidden;
    backdrop-filter: blur(3px);
}

.home .site-header {
    background: #00000050 !important;
}

.home .et-fixed-header {
	background: #00000080 !important;
}

#header_logo {
    pointer-events: auto;
    min-width: 0;
    color: #ffffff;
    /* mix-blend-mode: difference; */
    font-family: "Scheherazade New", "Times New Roman", serif;
    font-weight: 700;
    font-size: 30px;
    letter-spacing: .04em;
    text-transform: uppercase;
    line-height: 1;
    overflow-wrap: anywhere;
    /* filter: invert(1); */
}
#header_logo svg {
    width: 60px;
    height: auto;
    /* color: #fff; */
    /* filter: invert(1); */
}

.menu_button {
    pointer-events: auto;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    padding: .8rem 1.25rem;
    border-radius: 999px;
    background: rgb(255 255 255 / 61%);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    /* color: rgba(26, 26, 26, .96); */
    font-size: 14px;
    font-weight: 500;
    /* mix-blend-mode: difference; */
    transition: background .3s cubic-bezier(.22, 1, .36, 1);
}
.menu_button:hover { background: rgba(255, 255, 255, .22); }

.menu_button .hamburger {
    width: 16px;
    height: 10px;
    position: relative;
    display: inline-block;
}
.menu_button .hamburger::before,
.menu_button .hamburger::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 1px;
    background: currentColor;
    transition: transform .3s cubic-bezier(.22, 1, .36, 1), top .3s cubic-bezier(.22, 1, .36, 1);
    z-index: 999;
}
.menu_button .hamburger::before { top: 2px; }
.menu_button .hamburger::after { top: 7px; }
.menu_button .hamburger span {display: none;}

.menu_button .text {
    position: relative;
    display: inline-block;
    overflow: hidden;
    min-width: 3.2em;
    line-height: 1em;
}
.menu_button .text span {
    display: block;
    transition: transform .4s cubic-bezier(.22, 1, .36, 1);
}
.menu_button .text span:nth-child(2) { position: absolute; top: 100%; left: 0; }

.menu_button[aria-expanded="true"] .text span:nth-child(1) { transform: translateY(-100%); }
.menu_button[aria-expanded="true"] .text span:nth-child(2) { transform: translateY(-100%); }

.menu_button[aria-expanded="true"] .hamburger::before { top: 4px; transform: rotate(45deg); }
.menu_button[aria-expanded="true"] .hamburger::after  { top: 4px; transform: rotate(-45deg); }

/* ----------  Menu Container (overlay)  ---------- */
.menu_container {
    position: fixed;
    inset: 0;
    z-index: -1;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    transform: translateY(-101%);
    transition: transform .7s cubic-bezier(.22, 1, .36, 1);
    pointer-events: none;
    overflow-y: auto;
}
.menu_container.open {
    transform: translateY(0);
    pointer-events: auto;
}

.menu_container .menu_column {
    padding: 6rem 1.25rem 3rem;
    display: flex;
    flex-direction: column;
    gap: 3rem;
}
.menu_container .image_column { display: none; }

.menu_container nav.menu {
    display: flex;
    flex-direction: column;
    gap: .4rem;
}
.menu_container .item_wrapper .menu_item {
    display: inline-block;
    font-family: "Scheherazade New", "Times New Roman", serif;
    font-style: italic;
    font-weight: 400;
    font-size: max(40px, 9vw);
    line-height: 1.05;
    letter-spacing: -0.01em;
    transition: opacity .3s cubic-bezier(.22, 1, .36, 1);
}
.menu_container .item_wrapper .menu_item:hover { opacity: .5; }

.menu_container .submenu_container {
    display: none;
    padding-left: 1rem;
}
.menu_container .submenu {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    padding-top: .5rem;
}
.menu_container .submenu .menu_item.child {
    font-size: 18px;
    font-family: "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    font-style: normal;
}

.menu_container .contact_wrapper {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    font-size: 15px;
}
.menu_container .contact_wrapper a[href^="tel:"],
.menu_container .contact_wrapper a[href^="mailto:"] {
    display: block;
    padding: .4rem 0;
    border-bottom: 1px solid rgba(26, 26, 26, .15);
    font-weight: 500;
}
.menu_container .locations {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.menu_container .locations > div { display: flex; flex-direction: column; gap: .75rem; align-items: flex-start; }
.menu_container .locations p { line-height: 1.4; }

.language_selector {
    display: flex;
    gap: .4rem;
    align-items: center;
    font-size: 14px;
    text-transform: uppercase;
    padding-top: 1rem;
}
.language_selector .current { font-weight: 700; }
.language_selector a { opacity: .5; }

/* ----------  Main Hero  ---------- */
.flex_layout.main_hero {
    position: relative;
    height: 92vh;
    min-height: 600px;
    overflow: hidden;
    color: #fff;
}
.flex_layout.main_hero .flex_layout_wrapper {
    display: block;
    padding: 0;
    height: 100%;
    position: relative;
}
.flex_layout.main_hero .background {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
}
.flex_layout.main_hero .background::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.1) 0%, rgba(0,0,0,.35) 55%, rgba(0,0,0,.6) 100%);
    pointer-events: none;
    z-index: 1;
}
.flex_layout.main_hero .background picture,
.flex_layout.main_hero .background img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.flex_layout.main_hero .background picture {
    opacity: 0;
    transition: opacity 1.2s ease-in-out;
}
.flex_layout.main_hero .background picture.active {
    opacity: 1;
}

.flex_layout.main_hero .heading_wrapper {
    position: absolute;
    left: 1.25rem;
    right: 1.25rem;
    top: 40%;
    transform: translateY(-50%);
    z-index: 2;
    overflow: hidden;
    padding-bottom: .08em;
}
.flex_layout.main_hero h1.heading {
    color: #fff;
    font-size: clamp(48px, 4.23vw, 64px);
    font-size: max(42px, 4.23vw);
    opacity: 1;
    transform: translateY(115%);
    transition: transform 1s cubic-bezier(.22, 1, .36, 1);
    will-change: transform;
    z-index: auto;
    text-shadow: 2px 2px 4px #000;
}
.flex_layout.main_hero h1.heading.in-view {
    opacity: 1;
    transform: translateY(0);
}

.flex_layout.main_hero .cta {
    position: absolute;
    z-index: 3;
    bottom: 5rem;
    display: block;
    color: #fff;
    font-family: 'Plus Jakarta Sans';
    font-weight: 400;
    line-height: 1;
    border-right: 1px solid transparent;
    transition: background .55s cubic-bezier(.22, 1, .36, 1),
                border-color .55s cubic-bezier(.22, 1, .36, 1),
                transform .55s cubic-bezier(.22, 1, .36, 1);
}
.flex_layout.main_hero .cta span { display: block; }
.flex_layout.main_hero .cta > span {
    transition: transform .55s cubic-bezier(.22, 1, .36, 1);
    font-size: 1.4rem;
    font-weight: 800;
}
.flex_layout.main_hero .cta:hover > span {
    transform: translateY(-.35rem);
}
.flex_layout.main_hero .cta .subtitle {
    display: none;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transform: translateY(.75rem);
    transition: max-height .55s cubic-bezier(.22, 1, .36, 1),
                opacity .35s ease,
                transform .55s cubic-bezier(.22, 1, .36, 1);
    font-size: 20px;
}
.flex_layout.main_hero .cta:hover .subtitle {
    max-height: 8rem;
    opacity: 1;
    transform: translateY(0);
}

.flex_layout.main_hero .cta:nth-of-type(1) {left: 1.25rem;bottom: 11.5rem;}
.flex_layout.main_hero .cta:nth-of-type(2) {left: 1.25rem;bottom: 8.5rem;}
.flex_layout.main_hero .cta:nth-of-type(3) {left: 1.25rem;bottom: 5.5rem;}
.flex_layout.main_hero .cta:nth-of-type(4) { left: 1.25rem; bottom: 2.5rem; }

/* ----------  Text + Large Image  ---------- */
.flex_layout.text_large_image .flex_layout_wrapper {
    row-gap: 2rem;
}
.flex_layout.text_large_image .content-wrapper {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.flex_layout.text_large_image .content-wrapper .content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0 4%;
}
.flex_layout .content .content-text {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: relative;
    /* background: #fff; */
    z-index: 99;
}
.flex_layout .content .content-text p {
    margin: 0;
}
.flex_layout .content .content-text a{
    color: #222;
    font-weight: bold;
}
p a{
    color: #222;
    font-weight: bold;
}
.flex_layout.text_large_image .content-wrapper .content p{font-size: 14px;}
.flex_layout.text_large_image .heading_wrapper { margin-bottom: .5rem; }
.flex_layout.text_large_image .button_wrapper { margin-top: 1rem; }
.flex_layout.text_large_image .image {
    overflow: hidden;
    background: #e9e3da;
}
.flex_layout.text_large_image .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.2s cubic-bezier(.22, 1, .36, 1);
}
.flex_layout.text_large_image .image:hover img { transform: scale(1.03); }
.flex_layout.text_large_image .evergreen-logo {
    width: 120px;
    height: auto;
}

/* ----------  Image Text Below  ---------- */
.flex_layout.image_text_below .flex_layout_wrapper { row-gap: 1.5rem; }
.flex_layout.image_text_below .image_wrapper {
    position: relative;
}
.flex_layout.image_text_below .image_wrapper .caption {
    font-size: 13px;
    color: #555;
    margin-bottom: .75rem;
    letter-spacing: .02em;
    z-index: 999;
    
}
.flex_layout.image_text_below .image_wrapper .caption h2{
    font-family: 'Scheherazade New';
    font-weight: 700 !important;
    padding:0 4%;
    font-size: clamp(1rem, 2vw + 1rem, 21px) !important;
}
.flex_layout.image_text_below .image_wrapper .image {
    overflow: hidden;
}
.flex_layout.image_text_below .image_wrapper .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.2s cubic-bezier(.22, 1, .36, 1);
}
.flex_layout.image_text_below .image_wrapper .image:hover img { transform: scale(1.03); }
.flex_layout.image_text_below .content-wrapper {
}
.flex_layout.image_text_below .image_wrapper ul{
    padding:0 4%;
    display:flex;
    flex-direction:column;
    align-items: center;
    margin-top: 20px;
}
.flex_layout.image_text_below .content-wrapper .content p {
    font-size: 14px;
    line-height: 1.5;
}

/* ----------  Project Carousel  ---------- */
.flex_layout.project_carousel .flex_layout_wrapper {
    row-gap: 2rem;
}
.flex_layout.project_carousel .heading_wrapper {padding: 20px 4%;}
.flex_layout.project_carousel .indicator_container {
    display: flex;
    align-items: center;
    gap: 1rem;
    order: 3;
    justify-content: space-between;
    padding: 20px;
}
.flex_layout.project_carousel .pCarousel {
    position: relative;
    overflow: hidden;
    touch-action: pan-y;
    cursor: grab;
    user-select: none;
}
.flex_layout.project_carousel .pCarousel:active { cursor: grabbing; }

.flex_layout.project_carousel .project_wrapper {
    /* height: 70vh; */
    /* min-height: 420px; */
    overflow: hidden;
}
.flex_layout.project_carousel .project_wrapper .swiper-wrapper,
.flex_layout.project_carousel .next_projects .first .swiper-wrapper {
    height: 100%;
}

.flex_layout.project_carousel .project {
    flex: 0 0 100%;
    overflow: hidden;
    position: relative;
    height: 100%;
    /* max-height: 500px; */
}
.flex_layout.project_carousel .project__outer,
.flex_layout.project_carousel .project__inner {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.flex_layout.project_carousel .project img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
    user-select: none;
}
.flex_layout.project_carousel .project .content_wrapper {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 2;
    padding: 1.25rem;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
    background: #00000059;
    height: 100%;
    justify-content: flex-start;
}
.flex_layout.project_carousel .project .size-h1 {
    font-size: max(24px, 1rem);
    color: #fff;
    font-weight: bold;
}
.flex_layout.project_carousel .project .pk-button--simple { color: #fff; }
.flex_layout.project_carousel .project_wrapper .swiper-slide {
    opacity: 0 !important;
    z-index: 1;
    pointer-events: none;
    max-height: none;
}
.flex_layout.project_carousel .project_wrapper .swiper-slide-active,
.flex_layout.project_carousel .project_wrapper .swiper-slide.is-outgoing {
    opacity: 1 !important;
}
.flex_layout.project_carousel .project_wrapper .swiper-slide-active {
    z-index: 1;
    pointer-events: auto;
}
.flex_layout.project_carousel .project_wrapper .swiper-slide.is-outgoing {
    z-index: 2;
    pointer-events: none;
}
.flex_layout.project_carousel .project_wrapper .swiper-slide.is-outgoing .project__inner {
    animation: project-wipe-right .9s cubic-bezier(.22, 1, .36, 1) forwards;
}

.flex_layout.project_carousel .next_projects {
    display: none;
}
.flex_layout.project_carousel .next_projects .first {
    position: relative;
}
.flex_layout.project_carousel .next_projects .first .project__inner {
    position: relative;
    aspect-ratio: 1 / 1;
}
.flex_layout.project_carousel .next_projects .first .preview_back,
.flex_layout.project_carousel .next_projects .first .preview_front {
    /* position: absolute; */
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.flex_layout.project_carousel .next_projects .first .preview_back {
    z-index: 1;
}
.flex_layout.project_carousel .next_projects .first .preview_front {
    z-index: 2;
}
.flex_layout.project_carousel .next_projects .first.is-changing .preview_front {
    animation: project-wipe-right .9s cubic-bezier(.22, 1, .36, 1) forwards;
}

@keyframes project-wipe-right {
    from {
        clip-path: inset(0 0 0 0);
    }
    to {
        clip-path: inset(0 100% 0 0);
    }
}

.flex_layout.project_carousel .indicator {
    display: flex;
    align-items: center;
    gap: .25rem;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
}
.flex_layout.project_carousel .project_nav {
    display: flex;
    align-items: center;
    gap: .9rem;
}
.flex_layout.project_carousel .project_arrow {
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(26, 26, 26, .18);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .3s cubic-bezier(.22, 1, .36, 1),
                border-color .3s cubic-bezier(.22, 1, .36, 1),
                transform .3s cubic-bezier(.22, 1, .36, 1);
}
.flex_layout.project_carousel .project_arrow span {
    display: block;
    width: .5rem;
    height: .5rem;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
}
.flex_layout.project_carousel .project_arrow--prev span {
    transform: rotate(-135deg);
    margin-left: .18rem;
}
.flex_layout.project_carousel .project_arrow--next span {
    transform: rotate(45deg);
    margin-right: .18rem;
}
.flex_layout.project_carousel .project_arrow:hover {
    background: #1a1a1a;
    border-color: #1a1a1a;
    color: #ffffff;
    transform: translateY(-1px);
}
.flex_layout.project_carousel .indicator .spacer {
    width: 4px;
    height: 4px;
    background: currentColor;
}
.flex_layout.project_carousel .indicator .total { opacity: .35; }

/* ----------  Partner Carousel  ---------- */
.flex_layout.partner_carousel {
    padding: 2.5rem 0;
    border-top: 1px solid rgba(26, 26, 26, .15);
    border-bottom: 1px solid rgba(26, 26, 26, .15);
}
.flex_layout.partner_carousel .flex_layout_wrapper {
    row-gap: 1.5rem;
}
.flex_layout.partner_carousel .swiper.partner_carousel {
    width: 100%;
    overflow: hidden;
}
.flex_layout.partner_carousel .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 80px;
}
.flex_layout.partner_carousel .swiper-slide img {
    max-height: 60px;
    width: auto;
    object-fit: contain;
    filter: grayscale(1);
    opacity: .75;
    transition: opacity .3s, filter .3s;
}
.flex_layout.partner_carousel .swiper-slide img:hover {
    opacity: 1;
    filter: grayscale(0);
}
.flex_layout.partner_carousel > .flex_layout_wrapper > .pk-button--simple {
    align-self: flex-start;
}

/* ----------  Quote Large Image  ---------- */
.flex_layout.quote_large_image .flex_layout_wrapper {
    position: relative;
    row-gap: 0;
}
.flex_layout.quote_large_image .image {
    overflow: hidden;
    aspect-ratio: 3 / 2;
    order: 1;
    max-height: 70vh;
}
.flex_layout.quote_large_image .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.flex_layout.quote_large_image .quote {
    order: 2;
    padding: 1.5rem;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    margin: -3rem 1rem 0;
    position: relative;
    z-index: 3;
    box-shadow: 0px -1px 17px #0000001f;
}
.flex_layout.quote_large_image .quote p {
    font-family: "Scheherazade New", "Times New Roman", serif;
    font-style: italic;
    font-size: max(20px, 1.2vw);
    line-height: 1.2;
    margin: 0;
}
.flex_layout.quote_large_image .person {
    display: flex;
    flex-wrap: wrap;
    column-gap: .75rem;
    align-items: center;
}
.flex_layout.quote_large_image .person .photo {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    overflow: hidden;
    background: #ddd;
}
.flex_layout.quote_large_image .person .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.flex_layout.quote_large_image .person .name {
    flex: 1 1 calc(100% - 60px);
    font-weight: 700;
    font-size: 15px;
}
.flex_layout.quote_large_image .person .role {
    flex: 1 1 calc(100% - 60px);
    margin-left: 60px;
    font-size: 13px;
    color: #555;
}

/* ----------  Quote  ---------- */
.flex_layout.quote .quote_wrapper {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}
.flex_layout.quote .text {
    font-size: max(24px, 4.5vw);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.01em;
}
.flex_layout.quote .text::before {
    content: '';
    display: block;
    width: .8em; height: .8em;
    margin-bottom: 1rem;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M3 17q0-3 1.5-5.5T9 7l1 2q-2 1-3.25 3T5.5 17zm9 0q0-3 1.5-5.5T18 7l1 2q-2 1-3.25 3T14.5 17z'/></svg>") no-repeat center / contain;
            mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M3 17q0-3 1.5-5.5T9 7l1 2q-2 1-3.25 3T5.5 17zm9 0q0-3 1.5-5.5T18 7l1 2q-2 1-3.25 3T14.5 17z'/></svg>") no-repeat center / contain;
}
.flex_layout.quote .person { display: flex; flex-direction: column; gap: .25rem; }
.flex_layout.quote .name { font-weight: 700; font-size: 18px; }
.flex_layout.quote .info {
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: .5rem;
}
.flex_layout.quote .info::before {
    content: '';
    width: 7px;
    aspect-ratio: 1;
    background: #bfbfbf;
    order: 2;
}
.flex_layout.quote .info span:nth-child(2) { order: 3; }

/* ----------  Story Carousel  ---------- */
.flex_layout.story_carousel .flex_layout_wrapper {
    row-gap: 1.5rem;
}
.flex_layout.story_carousel .heading_wrapper {
    order: 1;
}
.flex_layout.story_carousel .story_copy {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0 4%;
    flex: 0 0 100%;
}
.flex_layout.story_carousel .story_text {
    /* max-width: 32rem; */
    color: #555;
    /* font-size: 16px; */
    line-height: 1.55;
}
#additionalServices li a{
    color:#222 !important;
    font-weight:bold;
}
.flex_layout.story_carousel .story_copy.is-changing .heading,
.flex_layout.story_carousel .story_copy.is-changing .story_text {
    opacity: 0;
    transform: translateY(10px);
}
.flex_layout.story_carousel .story_copy .heading,
.flex_layout.story_carousel .story_copy .story_text {
    transition: opacity .3s ease, transform .3s ease;
}
.flex_layout.story_carousel .swiper.story_carousel {
    overflow: hidden;
    order: 2;
    width: 100%;
    cursor: grab;
}
.flex_layout.story_carousel .swiper.story_carousel:active { cursor: grabbing; }
.flex_layout.story_carousel .navigation_container {
    order: 3;
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-top: .5rem;
    padding: 0 4%;
	justify-content:space-between;
	flex-wrap:wrap;
}
.flex_layout.story_carousel .story_nav {
    display: flex;
    align-items: center;
    gap: .9rem;
}
.flex_layout.story_carousel .swiper-slide {
    display: flex;
    flex-direction: column;
    gap: .75rem;
}
.flex_layout.story_carousel .swiper-slide .image {
    aspect-ratio: 3 / 2;
    background: #d9d3ca;
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.flex_layout.story_carousel .swiper-slide .image::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0,0,0,.45), rgba(0,0,0,0));
    z-index: 1;
}
.flex_layout.story_carousel .swiper-slide .image img {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    z-index: 0;
}
.flex_layout.story_carousel .swiper-slide .image .pk-button--simple {
    margin-top: auto;
    padding: 1.25rem;
    color: #fff;
    z-index: 2;
    align-self: flex-start;
}
.flex_layout.story_carousel .swiper-slide .title {
    display: none;
    font-size: 18px;
    font-weight: 500;
    padding: 1.25rem 0 0;
}
.flex_layout.story_carousel .indicator {
    display: flex;
    align-items: center;
    gap: .25rem;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
}
.flex_layout.story_carousel .story_arrow {
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(26, 26, 26, .18);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .3s cubic-bezier(.22, 1, .36, 1),
                border-color .3s cubic-bezier(.22, 1, .36, 1),
                transform .3s cubic-bezier(.22, 1, .36, 1);
}
.flex_layout.story_carousel .story_arrow span {
    display: block;
    width: .5rem;
    height: .5rem;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
}
.flex_layout.story_carousel .story_arrow--prev span {
    transform: rotate(-135deg);
    margin-left: .18rem;
}
.flex_layout.story_carousel .story_arrow--next span {
    transform: rotate(45deg);
    margin-right: .18rem;
}
.flex_layout.story_carousel .story_arrow:hover {
    background: #1a1a1a;
    border-color: #1a1a1a;
    color: #ffffff;
    transform: translateY(-1px);
}
.flex_layout.story_carousel .indicator .spacer { width: 4px; aspect-ratio: 1; background: currentColor; }
.flex_layout.story_carousel .indicator .total { opacity: .35; }

/* ----------  Contact Text Large Image  ---------- */
.flex_layout.contact_text_large_image .flex_layout_wrapper {row-gap: 2rem;flex-direction: row-reverse;}
.flex_layout.contact_text_large_image .image {
    aspect-ratio: 2 / 3;
    overflow: hidden;
}
.flex_layout.contact_text_large_image .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.flex_layout.contact_text_large_image .content_wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}
.flex_layout.contact_text_large_image .sticky_wrapper {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.flex_layout.contact_text_large_image .content .heading_wrapper { margin-bottom: 1rem; }
.flex_layout.contact_text_large_image .content p.p1 { font-size: 15px; line-height: 1.5; }
.flex_layout.contact_text_large_image .button_wrapper { margin-top: 1rem; }
.flex_layout.contact_text_large_image .contact_options {
    font-size: max(24px, 5vw);
    font-weight: 700;
    line-height: 1.2;
    display: flex;
    flex-direction: column;
    gap: .25rem;
    padding: 0 4%;
}
.flex_layout.contact_text_large_image .contact_options a {
    display: block;
    transition: opacity .3s;
    font-size: clamp(24px, 2.12vw, 26px);
    color: #222;
}
.flex_layout.contact_text_large_image .contact_options h3{
    
}
.flex_layout.contact_text_large_image .contact_options a:hover { opacity: .7; }

/* ----------  Footer  ---------- */
footer[role="contentinfo"] {
    /* background: #1a1a1a; */
    /* color: #ffffff; */
    padding: 3rem 1.25rem 2rem;
    /* margin-top: 4rem; */
}
footer .footer_menus {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    padding-bottom: 3rem;
}
footer .footer_menus .column {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
footer .footer_menus h4 {
    font-family: "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin: 0 0 .5rem;
    color: rgb(134 134 134);
}
footer .footer_menu {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    font-size: 16px;
}
footer .footer_menu a,
footer .column a {
    transition: opacity .3s cubic-bezier(.22, 1, .36, 1);
}
footer .footer_menu a:hover { opacity: .6; }
footer .socials {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .5rem;
}
footer .pk-button {
    color: #ffffff;
    /* border-color: rgba(247, 243, 238, .35); */
    /* background: transparent; */
}
#footer-widgets .footer-widget .pk-button:hover {
    background: #1a1a1a;
    color: #fff !important;
}

footer .footer_legal_row {
    border-top: 1px solid rgba(247, 243, 238, .12);
    padding-top: 2rem;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}
footer .footer_legal_menu {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1.5rem;
    font-size: 13px;
    opacity: .6;
}
footer .footer_legal_menu a { transition: opacity .3s; }
footer .footer_legal_menu a:hover { opacity: 1; }

footer .footer_tagline {
    width: 100%;
    overflow: hidden;
}
footer .footer_tagline svg {
    width: 100%;
    height: auto;
    display: block;
}
footer .footer_tagline svg text { fill: #ffffff; }

/* ----------  Scroll-triggered helpers  ---------- */
.fade-in {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity .9s cubic-bezier(.22, 1, .36, 1), transform .9s cubic-bezier(.22, 1, .36, 1);
}
.fade-in.in-view {
    opacity: 1;
    transform: none;
}

/* ==========================================================================
   DESKTOP  — single breakpoint at 980px
   ========================================================================== */
@media (min-width: 980px) {
    body {font-size: 20px;}

    section.flex_layout {/* padding: 6rem 0; */}
    section.flex_layout.main_hero { padding: 0; }

    h1.heading, .size-h1 { font-size: max(60px, 5.7vw); }
    h2.heading {/* font-size: clamp(22px, 3rem,4rem); */}
    h3.heading { font-size: max(32px, 3vw); }
    p.heading { font-size: max(24px, 2.12vw); }

    /* Header */
    .site-header {padding: 0.5rem 2rem !important;}
    #header_logo svg { width: 76px; }
    .menu_button {/* padding: 12px; */font-size: 15px;height: 50px;}

    /* Menu overlay — two columns (text + image) */
    .menu_container {
        flex-direction: row;
    }
    .menu_container .menu_column {
        flex: 1 1 50%;
        padding: 8rem 2rem 3rem;
        justify-content: space-between;
        gap: 2rem;
        overflow-y: auto;
    }
    .menu_container .image_column {
        display: block;
        flex: 1 1 50%;
        position: relative;
        overflow: hidden;
    }
    .menu_container .image_column img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .menu_container .item_wrapper .menu_item {font-size: max(56px, 5rem);}
    .menu_container .submenu .menu_item.child { font-size: 20px; }
    .menu_container .locations {
        flex-direction: row;
        gap: 3rem;
    }
    .menu_container .locations > div { flex: 1; }

    /* Hero */
    .flex_layout.main_hero { height: 100vh; min-height: 720px; }
    .flex_layout.main_hero h1.heading {
        /* font-size: clamp(27px, 6rem, 7rem); */
        max-width: 90%;
    }
    .flex_layout.main_hero .heading_wrapper {
        top: 50%;
        bottom: auto;
        transform: translateY(-50%);
        left: 2rem;
        right: auto;
        width: 55%;
        overflow: hidden;
    }
    .flex_layout.main_hero .cta {
        position: absolute;
        bottom: 0px;
        width: 25%;
        padding: 2rem;
        border-right: solid 1px #ffffff00;
    }
    
    .flex_layout.main_hero .cta:nth-of-type(1) {left: 0px;bottom: 0px;}
    .flex_layout.main_hero .cta:nth-of-type(2) {left: calc(0rem + 25%);bottom: 0px;}
    .flex_layout.main_hero .cta:nth-of-type(3) {left: calc(0px + 50%);bottom: 0px;}
    .flex_layout.main_hero .cta:nth-of-type(4) {left: calc(0px + 75%);bottom: 0px;}
    .flex_layout.main_hero .cta {
        font-size: clamp(14px, 20px, 28px);
        background: linear-gradient(0deg, #00000000, transparent);
        height: 35vh;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }
    .flex_layout.main_hero .cta .subtitle {
        display: block;
        margin-top: .75rem;
        font-family: "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
        font-style: normal;
        font-weight: 400;
        font-size: 14px;
        line-height: 1.4;
        max-width: 28ch;
    }
    .flex_layout.main_hero .cta .subtitle p { margin: 0; }

     .flex_layout.main_hero .cta:hover{
         background: linear-gradient(0deg, #000000cf, transparent);
         border-color: #ffffff94;
         /* transform: translateY(-.5rem); */
     }
    /* Text + Large Image */
    .flex_layout.text_large_image .flex_layout_wrapper {
        row-gap: 0;
        align-items: start;
    }
    .flex_layout.text_large_image .content-wrapper {
        flex-basis: 33.333333%;
        padding-top: 2rem;
        position: sticky;
        top: 15vh;
    }
    .flex_layout.text_large_image .content-wrapper.right {
        flex-basis: calc(33.333333% - 1.5rem);
        margin-left: 0;
        order: 2;
    }
    .flex_layout.text_large_image .image {
        flex-basis: calc(58.333333% - 1.5rem);
        margin-left: 8.333333%;
        order: 1;
    }
    .flex_layout.text_large_image .content-wrapper.right + .image {
        flex-basis: calc(66.666667% - 1.5rem);
        margin-left: 0;
        order: 1;
    }
    .flex_layout.text_large_image .evergreen-logo { width: 165px; }

    /* Image Text Below */
    .flex_layout.image_text_below .flex_layout_wrapper {row-gap: 0.5rem;justify-content: flex-start;}
    .flex_layout.image_text_below .image_wrapper {
        flex-basis: 91.666667%;
        position: relative;
    }
    .flex_layout.image_text_below .image_wrapper ul{
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        justify-content: center;
        flex-direction: row;
    }
    .flex_layout.image_text_below .image_wrapper .caption {
        position: absolute;
        left: calc(100% + 4rem);
        /* top: 10%; */
        transform: rotate(90deg) translateX(5%);
        transform-origin: left top;
        margin: 0;
        white-space: nowrap;
        writing-mode: horizontal-tb;
        font-size: 12px;
        letter-spacing: .1em;
        text-transform: uppercase;
    }
    .flex_layout.image_text_below .content-wrapper.col3 {
        flex-basis: 58.333333%;
        margin-left: 16.666667%;
    }

    /* Project Carousel */
      .flex_layout.project_carousel .flex_layout_wrapper {
        row-gap: 2.5rem;
    }
    .flex_layout.project_carousel .heading_wrapper {
        /* flex: 0 0 33.333333%; */
        /* max-width: 33.333333%; */
        /* margin-left: calc(66.666667% + 1.5rem); */
        /* order: 1; */
        padding: inherit;
    }
    
    .flex_layout.project_carousel .indicator_container {
        /* flex: 0 0 33.333333%; */
        /* max-width: 33.333333%; */
        /* margin-left: calc(66.666667% + 1.5rem); */
        /* order: 3; */
        margin-top: -3%;
        justify-content: end;
        align-items: center;
        padding: 0 1%;
        width: 33%;
    }
    .flex_layout.project_carousel .pCarousel {
        flex-basis: 100%;
        display: flex;
        align-items: flex-start;
        gap: 1.5rem;
        overflow: hidden;
        order: 2;
        flex-wrap: wrap;
        justify-content: flex-end;
        max-height: 900px;
    }
    .flex_layout.project_carousel .project_wrapper {
        flex: 0 0 calc(66.666667% - 1.5rem);
        min-width: 0;
        height: 72vh;
        min-height: 620px;
        max-height: 800px;
    }
    .heading_wrapper-desktop, .project_nav-desktop{
       display: none !important;
    }
    .flex_layout.project_carousel .next_projects {
        display: flex;
        flex: 1 1 33.333333%;
        /* aspect-ratio: 1 / 1; */
        min-height: 0;
        max-height: none;
        flex-direction: column;
        gap: 20px;
    }
    .flex_layout.project_carousel .next_projects .first {
        width: 100%;
        height: 100%;
        overflow: hidden;
        max-height: 500px;
    }
    .flex_layout.project_carousel .next_projects .first .project {
        flex: 0 0 100%;
        aspect-ratio: 1 /1;
    }
    .flex_layout.project_carousel .heading_wrapper .heading {
        /* font-size: max(34px, 4rem) !important; */
        line-height: .98;
    }
    .flex_layout.project_carousel .indicator_container .pk-button {
        order: 1;
    }
    .flex_layout.project_carousel .indicator_container .project_nav {
        order: 2;
        margin-left: auto;
    }

    /* Partner Carousel */
    .flex_layout.partner_carousel .swiper-slide { height: 100px; }
    .flex_layout.partner_carousel .swiper-slide img { max-height: 75px; }

    /* Quote Large Image */
    .flex_layout.quote_large_image .flex_layout_wrapper {
        position: relative;
    }
    .flex_layout.quote_large_image .image {
        flex-basis: 100%;
        aspect-ratio: 3 / 2;
        order: unset;
    }
    .flex_layout.quote_large_image .quote {
        width: 50%;
        padding: 2.5rem;
        margin: 0;
        align-self: end;
        position: absolute;
        /* bottom: -12%; */
        z-index: 3;
        order: unset;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
    }
    .flex_layout.quote_large_image .quote p {/* font-size: max(26px, 2vw); */}

    /* Quote */
    .flex_layout.quote .quote_wrapper {
        flex-basis: 50%;
        padding-left: 20px;
    }
    .flex_layout.quote .text {font-size: max(28px, 3rem);}

    /* Story Carousel */
    .flex_layout.story_carousel .heading_wrapper {
        flex-basis: 33.333333%;
        order: 1;
        padding-left: 20px;
    }
    .flex_layout.story_carousel .swiper.story_carousel {
        flex-basis: calc(66.666667% - 1.5rem);
        order: 2;
    }
    .flex_layout.story_carousel .navigation_container {
        flex-basis: 33.333333%;
        order: 3;
        margin-top: auto;
        padding-left: 20px;
    }
    .flex_layout.story_carousel .swiper-slide .image {
        aspect-ratio: 3 / 2;
        margin-bottom: 2rem;
    }
    .flex_layout.story_carousel .swiper-slide .title {
        font-size: max(18px, 1.45vw);
        padding: 0;
    }

    /* Contact Text Large Image */
    .flex_layout.contact_text_large_image .image {
        flex-basis: calc(66.666667% - 1.5rem);
        aspect-ratio: 2 / 3;
    }
    .flex_layout.contact_text_large_image .content_wrapper {
        flex-basis: 33.333333%;
        padding: 0;
        justify-content: space-between;
        min-height: 100%;
    }
    .flex_layout.contact_text_large_image .sticky_wrapper {
        position: sticky;
        top: 15vh;
        gap: 1.5rem;
        margin-bottom: 160px;
    }
    .flex_layout.contact_text_large_image .contact_options {
        font-size: max(24px, 2.12vw);
        margin-top: auto;
    }

    /* Footer */
    footer[role="contentinfo"] {
        padding: 5rem 2rem 2rem;
    }
    footer .footer_menus {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 2rem;
        padding-bottom: 4rem;
    }
    footer .footer_menus .column {
        flex: 1 1 calc(25% - 2rem);
        min-width: 0;
    }
    footer .footer_legal_row {
        flex-direction: column;
        gap: 3rem;
    }
    footer .footer_legal_menu {
        gap: 2rem;
        font-size: 14px;
    }

}

/* ----------  Small tweaks at wider desktop  ---------- */
@media (min-width: 1400px) {
    .flex_layout.quote_large_image .quote {top: -80px;}
}

/* Initial state (hidden above) */
.et_slide_in_menu_container {
  transform: translateY(-100%);
  opacity: 0;
}

/* When menu is opened */
.et_header_style_fullscreen .et_slide_in_menu_container.et_pb_fullscreen_menu_opened {
  animation: slideFromTop 0.6s ease forwards;
}

/* Keyframes */
@keyframes slideFromTop {
  0% {
    transform: translateY(-100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

.et_header_style_fullscreen .et_slide_in_menu_container:not(.et_pb_fullscreen_menu_opened) {
  animation: slideToTop 0.4s ease forwards;
}

@keyframes slideToTop {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-100%);
    opacity: 0;
  }
}

/* cf popup */

.cf-popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}

/* ACTIVE STATE */
.cf-popup.active {
  display: block;
}

/* OVERLAY */
.cf-popup__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
  backdrop-filter: blur(4px);
}

/* CONTENT */
.cf-popup__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%);
  width: 90%;
  max-width: 500px;
  background: #fff;
  padding: 30px;
  border-radius: 12px;
  opacity: 0;
  transition: all 0.3s ease;
}

/* ANIMATION */
.cf-popup.active .cf-popup__content {
  transform: translate(-50%, -50%);
  opacity: 1;
}

/* CLOSE BUTTON */
.cf-popup__close {
  position: absolute;
  top: 10px;
  right: 12px;
  background: none;
  border: none;
  font-size: 26px;
  cursor: pointer;
}

.nap-grid-areas{
 padding:0 4%;
 justify-items: center;
 max-width: 1200px;
 width: 100%;
 margin: auto;
}
.nap-grid-item {
    font-size: 16px;
}
.nap-grid-areas a{
    color:#222;
    font-weight:bold;
    font-style: italic;
}
.service-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 16px 0 20px;
}

.service-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 13px;
    border: 1px solid rgba(30, 55, 80, 0.18);
    background: rgb(255 255 255 / 0%);
    color: #1f3652;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
}

span.badge-icon {
    width: 22px;
    height: 22px;
    min-width: 22px;
    display:  inline-flex;
    align-items: center;
    justify-content:  center;
}
.badge-icon img{
    width: 22px;
    height: 22px;
    display: block;
    object-fit: contain;
	filter: invert(0.8);
}
section.promo-badges {
    padding: 25px 15px;
    background-color: #fafafa;
}

.promo-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0 , 1fr));
    gap: 20px;
}

.promo-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 20px;
    border: 1px solid rgb(25 40 30 / 12%);
    overflow: hidden;
    max-width: 400px;
    padding: 15px;
}
.promo-card:before{
    content: '';
    position: absolute;
    inset: 0; 
    width: 6px;  
    background-image: linear-gradient(180deg, #979897, #525251)
}
.promo-icon{
    width: 75px;
    height: 75px;
    min-width: 54px;
    border-radius: 50%;
    background-image: linear-gradient(135deg,#979897, #525251);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 10px;
    box-shadow: 0 10px 20px rgb(128 116 125 / 25%);
}
.promo-icon img{
    max-width: 50px;
}
.promo-content{
    position: relative;
    z-index: 1;
}
.promo-label{
    display: inline-block;
    margin-bottom: 4px;
    font-size: 16px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #000000;
    font-weight: 700;
}
.promo-content strong{
    display: block;
    font-family: inherit;
    font-size: 24px;
    line-height: 1.1;
    color: #3f474f;
    font-weight: 700;
}
.promo-content p{
    margin: 6px 0 0;
    color: #1a1b1d;
    font-size: 18px !important;
    line-height: 1.4;
}
.promo-content a{
    color: #1c2732;
    font-weight: 700;
}
.promo-card:hover{
    transform: translatey(-3px);
    box-shadow: 0 18px 42px rgba(25, 40, 30, 0.13);
}
@media(max-width: 767px){
    .promo-inner{
        grid-template-columns: 1fr;
        gap: 15px;
    }
    .promo-card {
        padding: 20px 18px;
    }
}