* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

*,
*:after,
*:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html, body { height: 100%;}

/* Reset ------------- */
body {
    font-family: var(--font-body);
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    line-height: 1;
    color: var(--main-color);
    font-size: clamp(16px, 2vw, 20px);
    font-weight: var(--font-weight-light);
}

a {
    text-decoration: none;
    color: var(--main-text);
    cursor: pointer !important;
    outline: 0;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}

a:hover, a:focus { text-decoration: none;}
a:focus { outline: none;}
input:focus { outline: none;}
img { max-width: 100%; height: auto; -webkit-backface-visibility: hidden;}
p { margin: 0 0 15px 0; font-size: var(--fs-body); line-height: var( --lh-body);}
ul { margin: 0; padding: 0; list-style: none;}
h1, h2, h3, h4, h5, h6 { /*font-weight: bold;*/ font-style: normal;}

/* Button ------------- */
.btn {
    -webkit-border-radius: var(--radius-sm);
    -moz-border-radius: var(--radius-sm);
    border-radius: var(--radius-sm);
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    transition: all .2s;
    font-family: 'EIL Sans';
    font-weight: bold;
    font-style: normal;
}

.btn-navigation {display: inline-flex; align-items: center;padding: 6px 16px; border: 1px solid #000; background: 0 0; color:#000; text-decoration: none; border-radius: 40px; font-size: 13px; letter-spacing: 2px; transition:all 0.3s ease; width: fit-content; text-transform:uppercase;}
.btn-navigation:hover { background:#000; color:#fff; border: 1px solid #000;}
.btn-navigation svg {background:#76c143; border-radius: 20px; margin-left: 8px; width: var(--explore-btn-svg-wh); height: var(--explore-btn-svg-wh); color:#fff; transition:all 0.3s ease; padding: 5px;}
.btn-navigation:hover svg {transform: translateX(15px); transition: transform 0.5s ease;}

.btn-o {--bg:#fff;--fg:#111;--btn-bg:#fff;font-family:"Helvetica Neue", Arial, sans-serif;position:relative;overflow:hidden;cursor:pointer;display:inline-flex;align-items:center;gap:18px;padding:6px 6px 6px 28px;height:52px;background:var(--btn-bg);color:var(--fg);border:1.5px solid var(--fg);border-radius:999px;font-size:15px;letter-spacing:.06em;text-transform:uppercase;transition:color .45s ease, background .45s ease, transform .2s ease;}.btn-o::before {content:"";position:absolute;right:6px;top:50%;width:40px;height:40px;margin-top:-20px;border-radius:50%;background:var(--fg);transition:transform .55s cubic-bezier(.65,0,.35,1);transform-origin:center;}
.btn-o:hover::before, .btn-o:focus-visible::before {transform:scale(12);}
.btn-o:hover, .btn-o:focus-visible {color:var(--bg);}
.btn-o:active {transform:scale(.97);}
.btn-o:focus-visible {outline:2px solid var(--fg);outline-offset:3px;}
.btn-o .label {position:relative;z-index:1;}
.btn-o .icon {position:relative;z-index:1;width:40px;height:40px;overflow:hidden;display:grid;place-items:center;color:var(--bg);transition:color .45s ease;}
.btn-o:hover .icon, .btn-o:focus-visible .icon {color:var(--fg);}
.btn-o .icon svg {grid-area:1/1;width:18px;height:18px;transition:transform .45s cubic-bezier(.65,0,.35,1);}
.btn-o .icon .in {transform:translateX(-32px);}
.btn-o:hover .icon .out, .btn-o:focus-visible .icon .out {transform:translateX(32px);}
.btn-o:hover .icon .in, .btn-o:focus-visible .icon .in {transform:translateX(0);}
.btn-o:hover .icon {color:var(--bg);}.btn-solid {--bgbs:#fff;--fgbs:#000;position:relative;overflow:hidden;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 44px;background:var(--fgbs);color:var(--bgbs);border:1.5px solid var(--fgbs);border-radius:999px;font-size:15px;letter-spacing:.18em;text-transform:uppercase;transition:color .45s ease, transform .2s ease;}

.btn-solid {--bgbs:#fff; --fgbs:#000; position:relative; overflow:hidden; cursor:pointer; display:inline-flex; align-items:center; justify-content:center;
  height:52px; padding:0 44px; background:var(--fgbs); color:var(--bgbs); border:1.5px solid var(--fgbs); border-radius:999px; font-size:15px; letter-spacing:.18em; text-transform:uppercase; transition:color .45s ease, transform .2s ease;}  
.btn-solid::before {content:""; position:absolute; inset:0; background:var(--bgbs); transform:scaleX(0); transform-origin:left center; transition:transform .55s cubic-bezier(.65,0,.35,1);}
.btn-solid:hover::before,.btn-solid:focus-visible::before { transform:scaleX(1);} 
.btn-solid:hover,.btn-solid:focus-visible { color:var(--fgbs);}
.btn-solid:active { transform:scale(.97); }
.btn-solid:focus-visible { outline:2px solid var(--fgbs); outline-offset:3px; } 
.btn-solid .label { position:relative; z-index:1; }

.btn-link {--fgbl:#111;--mutedbl:#bdbdbd;position:relative;cursor:pointer;display:inline-flex;align-items:center;gap:10px;padding:0 0 16px;background:none;border:0;color:var(--fgbl);font-size:15px;letter-spacing:.12em;text-transform:uppercase;}
.btn-link::after {content:"";position:absolute;left:0;bottom:0;width:44px;height:2px;background:var(--mutedbl);transition:width .5s cubic-bezier(.65,0,.35,1), background .3s ease;}
.btn-link:hover::after, .btn-link:focus-visible::after {width:10%;background:var(--fgbl);}
.btn-link .arrow {width:44px;height:10px;flex:none;overflow:visible;transition:transform .5s cubic-bezier(.65,0,.35,1);}
.btn-link:hover .arrow, .btn-link:focus-visible .arrow {transform:translateX(5px);}
.btn-link:focus-visible {outline:2px solid var(--fgbl);outline-offset:6px;}

.btn-circle{width:54px;height:54px;padding:0;display:grid;place-items:center;border:2px solid #000;border-radius:50%;background:0 0;color:#000;cursor:pointer;position:relative;overflow:hidden;z-index:0;transition:color .2s; border-color .2s}
.btn-circle::before{content:"";position:absolute;inset:0;background:#000;transform:scaleX(0);transform-origin:left;transition:transform .3s;z-index:-1}
.btn-circle:hover:not(.swiper-button-disabled){color:#fff}
.btn-circle:hover:not(.swiper-button-disabled)::before{transform:scaleX(1)}
.btn-circle.swiper-button-disabled{border-color:#b5b5b5;color:#b5b5b5;cursor:default;opacity:1;pointer-events:none}
.btn-circle svg{width:22px;height:22px;position:relative;z-index:1}
.btn-circle:first-child::before{transform-origin:right;}
.btn-circle:last-child::before{transform-origin:left;}

/* ==== Get in touch ==== */
.get-in-touch{position:fixed;top:50%;right:0;transform:translateY(-50%);z-index:99}
.get-in-touch-link{display:block;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);background-color:#76c143;background-image:linear-gradient(#4d0300,#4d0300);background-repeat:no-repeat;background-position:left center;background-size:0 100%;color:var(--neutral-0);text-decoration:none;padding:var(--space-6) var(--space-4);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:2px;font-weight:500;border-radius:0!important;transition:background-size .4s,transform .3s}
.get-in-touch-link:hover{background-size:100% 100%;color:var(--neutral-0);transform:rotate(180deg) translateX(3px)}

/* ==== Header CSS ==== */
.main-header { width: 100%; z-index: 999; font-family: 'Blauer-Nue-Extralight'; text-transform: uppercase;}
.main-header .container-fluid { width: 100%;}

/* Header Container */
.main-header .header-container { display: flex; align-items: center; width: 100%; padding:0px 0;}

/* Header Logo */
/*.main-header .header-logo { flex: 0 0 auto; width: auto;  text-align: left;  margin: 0 35px 5px 0;}
.main-header .logo { width: auto; display: block;}*/
.main-header .header-logo { display: flex; align-items: center;}
.main-header .header-logo a { display: inline-flex; align-items: center;}
.main-header .header-logo img.logo { display: block; width: 180px; height: auto; transform: scale(1); transform-origin: center left;
 transition: width 0.3s ease, transform 0.3s ease, filter 0.3s ease; background-color:#fff;}
.main-header.fixed-top.scrolled .header-logo img.logo { width: 145px; transform: scale(0.9);background-color: transparent;}

.main-header { transition: padding 0.3s ease, min-height 0.3s ease, background-color 0.3s ease;}
.main-header.fixed-top.scrolled { padding-top: 8px; padding-bottom: 8px;}
/*.main-header.fixed-top.scrolled .header-logo img.logo { filter: grayscale(100%) brightness(0) !important;}*/

/* Navigation */
.main-header .nav-scroller { position: relative;  flex: 1 1 auto; padding: 0;}
.main-header .main-nav {  display: flex; align-items: baseline;  justify-content: center; flex-wrap: nowrap; gap: 30px; padding: 0;}

/* Nav Link */
.main-header .nav-link {position: relative; padding-right: 0; color: var(--text-black); display: inline-flex;align-items: center;gap: 6px;font-size: 13px;letter-spacing: 2px;transition: .3s ease;white-space: nowrap;}
.main-header .nav-link:hover, .main-header .mega-list li a:hover, .main-header .mega-menu .mega-close:hover {color: var(--primary-main);}
.main-header .mega-indicator, .main-header .dropdown-indicator { position: relative; font-size:14px; line-height: 1; top:0px;}

/* Right Icons */
.main-header .header-right { flex: 0 0 auto; width: auto; display: flex; align-items: center; justify-content: flex-end; gap: 20px; position: relative;}

/* Mega Menu */
.main-header .mega-menu {position: absolute; left: 0;top: 40px; width: 100%; background: var(--bg-white); padding: 35px; border-top: 1px solid #eee; box-shadow: var(--shadow-md); display: none; z-index: 9999;}
.main-header .mega-menu .mega-close {position: absolute;right: 20px;top: 15px;width: 28px;height: 28px;border: 0;background: transparent;font-size: 24px;line-height: 1;cursor: pointer;z-index: 1000;border-radius: var(--radius);transition: .2s ease;}
.main-header .mega-grid {display: grid;grid-template-columns: repeat(6, 1fr);gap: 30px;}
.main-header .mega-grid-list {display: flex;flex-direction: column;justify-content: space-between;}
.main-header .mega-grid-list:nth-of-type(2) .mega-list {max-height: 250px;overflow-y: scroll;}
.main-header .mega-title {margin-bottom: 20px;font-size: var(--font-size-mega-title);color: #292929;letter-spacing: 2px;font-weight: 600;position: relative;}
.main-header .mega-list li {margin-bottom: 12px;}
.main-header .mega-list li a {color: var(--main-text-2);font-size: var(--font-size-mega-link);letter-spacing: 1px;transition: .3s ease;}

/* Mega Button */
.main-header .mega-btn { display: inline-block; margin-top: 20px; background: var(--bg-black); color: var(--neutral-0);  padding: 10px 15px;  font-size: var(--font-size-sm);  text-align: center;}

/* Simple Dropdown  */
.main-header .has-dropdown { position: relative;}
.main-header .simple-dropdown {position: absolute;top: calc(100% + 15px);left: 50%;transform: translateX(-50%);min-width: 180px;background: var(--bg-white);padding: 8px 0;border-top: 1px solid #eee;box-shadow: var(--shadow-md);opacity: 0;visibility: hidden;transition: .25s ease;z-index: 9999;}

/* Dropdown small top spacing */
.main-header .simple-dropdown::before { content: ""; position: absolute; top: -15px; left: 0; width: 100%; height: 15px;}

/* Dropdown Links */
.main-header .simple-dropdown a {display: block;padding: 11px 18px;color: var(--main-text-2);font-size: 12px;letter-spacing: 1px;white-space: nowrap;transition: .3s ease;}
.main-header .simple-dropdown a:hover {color: var(--primary-main);background: #f5f5f5;}
.main-header .dropdown-toggle::after{display: none;}

/* Search Popup */
.main-header .search-popup {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, .6);display: flex; align-items: center;justify-content: center;opacity: 0;visibility: hidden;transition: .3s ease;z-index: 999999;}
.main-header .search-popup.active {opacity: 1;visibility: visible;}
.main-header .search-box {width: 80%;background: #fff;padding: 20px;position: relative;}
.main-header .search-box input {width: 100%;height: 50px; border: 1px solid #4d0300; padding: 0 15px;font-size: 14px; outline: none; text-transform: none;}
.main-header .search-close {position: absolute;top: 30px; right: 30px;border: 0; background: none; font-size: 24px;cursor: pointer;}

/* Language Dropdown */
.main-header .lang-dropdown {position: absolute;top: 100%;right: 0;opacity: 0;visibility: hidden;transition: .3s ease;z-index: 9999;}
.main-header .lang-dropdown.active {opacity: 1;visibility: visible;}
.main-header .lang-menu {background: #fff;min-width: 110px;box-shadow: 0 5px 20px rgba(0, 0, 0, .1);padding: 5px 0;}
.main-header .lang-menu a {display: block;padding: 10px 15px;font-size: 12px;color: #292929;letter-spacing: 1px;transition: .3s ease;}
.main-header .lang-menu a:hover {background: #f5f5f5;color: var(--primary-main);}

/* Mobile Default */
.main-header .mob { display: none;}
.main-header .menu-toggle,
.main-header .menu-close {
    border: 0;
    background: transparent;
    font-size: 28px;
    cursor: pointer;
}

.main-header.fixed-top { background: transparent; transition: background 0.3s ease, box-shadow 0.3s ease;}
/*.main-header.fixed-top.scrolled { background: linear-gradient( to bottom, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.45) 35%, rgba(0, 0, 0, 0.15) 70%, rgba(0, 0, 0, 0) 100% ); box-shadow: none;}*/
.main-header.fixed-top.scrolled { background:#fff; box-shadow: none; border-bottom: 1.5px solid #e2e2e2;}
.main-header.fixed-top.scrolled .main-nav .nav-link { color: var(--text-black)!important;}
.main-header.fixed-top.scrolled .main-nav .nav-link:hover{color: var(--primary-main)!important;}
.main-header.fixed-top.scrolled .main-nav .btn-navigation{border: 1px solid #000; color: #000;}
.main-header.fixed-top.scrolled .main-nav .btn-navigation:hover{color: #fff;}
.main-header .header-right img { transition: filter 0.3s ease; -webkit-transition: -webkit-filter 0.3s ease;}
.main-header.fixed-top.scrolled .header-right img { filter: grayscale(100%) brightness(0) !important; -webkit-filter: grayscale(100%) brightness(0) !important;}

/* ==== Footer CSS ==== */
.main-footer{background:#f8f8f8; padding:60px 0 0; font-size:1rem; overflow:hidden}
.main-footer *,.main-footer ul{margin:0; padding:0; box-sizing:border-box; list-style:none}
.main-footer a{text-decoration:none;transition:all .3s ease}

/* Main Layout */
.main-footer .footer-wrapper{display:flex;flex-wrap:wrap;gap:50px}
.main-footer .footer-left{width:20%}
.main-footer .footer-right{width:calc(80% - 50px)}

/* Footer Brand */
.main-footer .footer-brand-area{display:flex;flex-direction:column;gap:30px}

/* Social */
.main-footer .social-links{display:flex;align-items:center;gap:10px}
.main-footer .social-icon{width:38px;height:38px;border-radius:50%;border:1px solid #bfbfbf;display:flex;align-items:center;justify-content:center;color:#4d0300;font-size:15px}
.main-footer .social-icon:hover{transform:translateY(-3px);border-color:#4d0300; color:#4d0300}

.main-footer .address-wrapper{display: flex; flex-direction: column; justify-content: center;}
.main-footer .address-wrapper li, .main-footer .address-wrapper li p{ font-size: 14px; line-height: 1.5; letter-spacing: 1px;}
.main-footer .address-links{display:flex;align-items:center;gap:20px}
.main-footer .address-links li {display:flex;align-items:center;justify-content:center; transition: all .3s ease;}
.main-footer .address-links li:hover{transform:translateY(-3px);border-color:#4d0300; color:#4d0300; transform: translateY(-3px);}

/* Right Menu */
.main-footer .footer-menu{display:flex;flex-wrap:wrap;gap:30px}
.main-footer .footer-menu-item{flex:1;min-width:180px; text-transform: uppercase;}

/* Titles */
.main-footer .footer-title{width:100%;background:none;border:0;color:#1f1f1f; font-size:14px; font-family:'Blauer Nue'; margin-bottom:10px; text-align:left; pointer-events:none; position:relative; text-transform: uppercase; letter-spacing: 2px;}

/* Menu Links */
.main-footer .footer-submenu li{margin-bottom:15px}
.main-footer .footer-submenu li a,.main-footer .footer-static-links li a,.main-footer .footer-contact li a{font-size:14px;line-height:1.5;color:#1f1f1f;letter-spacing:1px;font-family:'Blauer Nue'}
.main-footer .footer-submenu li a:hover,.main-footer .footer-static-links li a:hover,.main-footer .footer-contact li a:hover{color:#82f732}

/* Static Links */
.main-footer .footer-static-links{margin-bottom:30px}
.main-footer .footer-static-links li{margin-bottom:20px}
.main-footer .footer-static-links li a{color:#1f1f1f;font-size:16px}

/* Contact */
.main-footer .footer-contact li{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.main-footer .footer-contact li i img{max-width:18px}

/* Copyright */
.main-footer .copyright{margin-top:40px;border-top:1px solid #e2e2e2;text-align:center;padding:1rem 0}
.main-footer .copyright p{color:#1f1f1f;font-size:14px;letter-spacing:1px}

.newsletter {display: flex;align-items: center;border: 1px solid #e5e5e5;border-radius: 50px;padding: 5px;margin-bottom: 50px;width: fit-content;}
.newsletter input {flex: 1;width: 100%;height: 100%;border: 0;outline: 0;padding: 0 10px;font-size: 14px;background-color: transparent;}
.newsletter button {min-width:50px;height: 100%;border: 0;border-radius: 50px;background: #8bd448;color: #fff;font-size:20px;cursor: pointer;padding: 5px;}

/* Section ------------- */
.section { padding: var(--space-section-padding);}

/* Section Title ------------- */
.section-title { position: relative; font-family: var(--font-title);  margin-bottom:2rem;}
.section-title h1 { color: var(--primary-dark); font-size: var(--font-size-title); letter-spacing:2px; font-weight:500; line-height: inherit;}
.section-title h2 { color: var(--primary-dark); font-size: var(--font-size-title); letter-spacing:2px; font-weight:500; line-height: inherit;}
.section-title h1 span, .section-title h2 span{color:#64b12f; font-style: italic;}
.section-title .font-custom{font-size:3.3rem; line-height: 1; font-family: Times, "Times New Roman", "serif"; font-weight: bold; font-style: normal; color: #fff;}
.ts-font{font-family: var(--font-arial); font-style: normal!important; font-weight: normal!important; letter-spacing: normal;}

/* Homepage ------------- */
.hero{position:relative; height:100%;}

/* Swiper core (minimal) */
.hero .swiper{overflow:hidden;position:relative;width:100%;height:100%}
.hero .swiper-wrapper{display:flex;width:100%;height:100%;transition-property:transform}
.hero .swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative}

.hero .slide-inner{height:100%; display:flex; flex-direction:column; justify-content:center; padding:0 8.5vw; position: absolute; top: 0px;}
.hero h1, .hero h2{font-weight:400; font-family: var(--font-title); color:var(--neutral-0); font-size:clamp(34px,4.4vw,60px); line-height:1.15; letter-spacing:.06em;}
.hero h1 em, .hero h2 em{color:var(--neutral-2); font-style:italic}
.hero p{margin-top:10px; max-width:560px; font-size:15px; line-height:2; letter-spacing:.04em; color:var(--neutral-0);}
.hero .subtitle-em{font-weight:400; font-family: var(--font-title); font-size:clamp(34px,4.4vw,45px); line-height:1.15; letter-spacing:.06em; color:var(--neutral-2); font-style:italic}
.hero .text-highlight{color:var(--neutral-2);}
.hero .font-custom{font-size:4rem; line-height: 1; font-family: Times, "Times New Roman", "serif"; font-weight: bold;}
.hero .swiper-slide { overflow: hidden;}
.hero .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1); transition: transform 0.6s ease;}
.hero .swiper-slide-active img { transform: scale(1.15); transition: transform 7s ease-out;}
.hero .btn-navigation {border: 1px solid #fff; background: 0 0; color: #fff;}

/* text animation */
.hero .anim{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease}
.hero .swiper-slide-active .anim{opacity:1;transform:none}
.hero .swiper-slide-active .a1{transition-delay:.25s}
.hero .swiper-slide-active .a2{transition-delay:.45s}
.hero .swiper-slide-active .a3{transition-delay:.65s}
.hero .swiper-slide-active .a-btn{transition-delay:.85s}

/* pagination */
.hero .pagination{position:absolute;left:0;right:0;bottom:60px;display:flex;justify-content:center;gap:20px;z-index:5;}
.hero .swiper-pagination-bullet{width:18px; height:18px; border-radius:20px; border:1px solid #fff; cursor:pointer;position:relative; overflow:hidden;
transition:width .4s ease,border-color .4s ease}
.hero .swiper-pagination-bullet-active{width:56px;border-color:var(--fill-green);}
.hero .swiper-pagination-bullet .fill{position:absolute;inset:0;width:0;background:var(--fill-green);border-radius:20px;}
.hero .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) .fill{width:0!important;}
.hero .swiper-pagination-bullet-active{background:none;border:1px solid #fff;}

/*.swiper-slide.video-slide::before{content: ""; position: absolute;inset:0; background: rgba(0, 0, 0, 0.45); z-index: 1; pointer-events: none;}
.swiper-slide.video-slide video{width: 100%; height: 100%; object-fit: cover;}*/

/* Video caption initially hidden */
.swiper-slide.video-slide .slide-inner { opacity: 0; visibility: hidden; transition: opacity 0.6s ease, visibility 0.6s ease; z-index: 2;}

/* Show video caption after video ends */
.swiper-slide.video-slide.video-ended .slide-inner { opacity: 1; visibility: visible;}

/* Caption animation */
.video-slide.video-ended .anim{ opacity: 1; transform: translateY(0);}

.client-hero .slide-inner{background: linear-gradient( to right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.5) 55%, rgba(0, 0, 0, 0.3) 80%, rgba(0, 0, 0, 0) 100% );}

.stats {display: grid; grid-template-columns: repeat(3, 1fr); gap: 70px 100px;}
/*.stat::before {content: ""; display: block; width: 28px; height: 2px; background: #202020; margin-bottom: 12px;}
.stat:first-child {margin-top: -20px}*/
.stat .number {font-size:38px; line-height: 1; font-weight:500; text-transform: uppercase;}
.stat .label {margin-top: 10px; font-size: 14px; line-height: 1.5; letter-spacing: 1px; color: #6b6b6b;}	

.spaces-breathe .spaces-item {display: flex;width: 100%;overflow: hidden;background-color: #f9f9f9;}
.spaces-breathe .left-column {flex: 0 0 50%;display: flex;align-items: center;justify-content: center;background-color: var(--bg-light-gray);padding: 4rem;position: relative;}
.spaces-breathe .right-column {flex: 0 0 50%;position: relative;}

.spaces-breathe {position: relative; --btn-l:#fff;--btn-d:#000;}
.spaces-breathe .nav-bottom{position: absolute; left:25vw; bottom:0; z-index: 9;}
.spaces-breathe .nav-bottom{ display:flex;}

.spaces-breathe .nav-bottom .custom-prev-btn,
.spaces-breathe .nav-bottom .custom-next-btn{
  position:relative;
  isolation:isolate;              
  overflow:hidden;
  width:clamp(80px, 9vw, 120px);  
  height:clamp(80px, 9vw, 100px);
  border:0;
  cursor:pointer;
  font-size:clamp(1.25rem, 2vw, 2rem);
  letter-spacing:.06em;
  transition:transform .4s cubic-bezier(.2,.7,.2,1), color .35s ease .05s;
}

.spaces-breathe .nav-bottom .custom-prev-btn::before,
.spaces-breathe .nav-bottom .custom-next-btn::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  transform:translateY(101%);
  transition:transform .5s cubic-bezier(.7,0,.2,1);
}

.spaces-breathe .nav-bottom .custom-prev-btn{ background:var(--btn-l); color:#000;}
.spaces-breathe .nav-bottom .custom-prev-btn::before{background:#000}

.spaces-breathe .nav-bottom .custom-next-btn{ background:var(--btn-d); color:#fff;}
.spaces-breathe .nav-bottom .custom-next-btn::before{background:var(--accent, #76b83f)}

.spaces-breathe .nav-bottom .custom-prev-btn:hover,
.spaces-breathe .nav-bottom .custom-next-btn:hover,
.spaces-breathe .nav-bottom .custom-prev-btn:focus-visible,
.spaces-breathe .nav-bottom .custom-next-btn:focus-visible{
  transform:translateY(-8px);
}
.spaces-breathe .nav-bottom .custom-prev-btn:hover::before,
.spaces-breathe .nav-bottom .custom-next-btn:hover::before,
.spaces-breathe .nav-bottom .custom-prev-btn:focus-visible::before,
.spaces-breathe .nav-bottom .custom-next-btn:focus-visible::before{
  transform:translateY(0);
}
.spaces-breathe .nav-bottom .custom-prev-btn:hover,
.spaces-breathe .nav-bottom .custom-prev-btn:focus-visible{color:#fff}

/* click feedback */
.spaces-breathe .nav-bottom .custom-prev-btn:active,
.spaces-breathe .nav-bottom .custom-next-btn:active{
  transform:translateY(-2px) scale(.97);
}

.spaces-breathe .nav-bottom .custom-prev-btn:focus-visible,
.spaces-breathe .nav-bottom .custom-next-btn:focus-visible{
  outline:2px solid #76b83f;
  outline-offset:3px;
}

.trusted-partners {background-color:#f9f9f9}
.trusted-partners .nav { display: flex; justify-content: center; gap:20px; margin-top:40px;}
.trusted-partners .swiper-slide {height: auto; aspect-ratio: 300 / 187;	border: 1.5px solid #e2e2e2; border-radius: 8px; background: #fafafa;
	box-sizing: border-box;	align-items: center; justify-content: center; display: flex; overflow:hidden;}
.trusted-partners .swiper-slide img{ filter: grayscale(100%); transition:all 0.4s ease}
.trusted-partners .swiper-slide:hover img{filter: grayscale(0%); transform: scale(1.1)}

/*.form-function .section-title h2 {font-size:7rem; line-height:0.9; font-weight: 600; margin-bottom: 0px;}
.form-function .section-title span{font-family: var( --font-title); color: #000;font-size:7rem; line-height:0.9; font-style: normal !important; text-transform:uppercase}*/
.form-function .section-title h2 {font-size:5rem; line-height:0.9; margin-bottom: 0px;}
.form-function .section-title .italic {color: #64b12f; font-style: italic; font-weight: normal;}
.form-function .typo-text{margin-top:-20px;}

.business-verticals {background: var(--bg-maroon);}
.business-verticals .section-title h2 {	color: var(--neutral-0);}

.bv-card-wrapper{display: flex; justify-content: space-between; gap:10px;}
.bv-card-item{position: relative; overflow: hidden;}
.bv-card-item img{width: 100%; height: 100%; object-fit: cover; transition:all 0.3s ease;}
.bv-card-item:hover img {transform: scale(1.05);}
.bv-card-item .card-content{position: absolute; right: 0; bottom: 0; left: 0; padding: 1.5rem; display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; box-sizing: border-box;}
.bv-card-item .card-content h3{ color:#82f732; font-family: var( --font-title); font-size:1.2rem; letter-spacing:2px;}
.bv-card-item .card-content p{ color: var( --text-white); font-size: 0.85rem; margin-top: auto; margin-bottom: 0;}
.bv-card-item .card-content .btn-o{width: fit-content; height: 45px; font-size: 13px; background-color: transparent; border: 1px solid #fff; color: #fff; --bg: #000; --fg: #fff;}
.bv-card-item .card-content .btn-o:hover, .card-item .card-content .btn-o:focus-visible {color:#000;}
.bv-card-item .card-content .btn-o::before { position: absolute; right: 10px; width: 30px; height: 30px; margin-top: -15px;}
.bv-card-open .bv-card-item {position: relative;}
.bv-card-open .bv-card-item  img{width: 100%; height:auto; object-fit: cover; transition:all 0.3s ease;}
.bv-card-open .bv-card-item:hover img {transform: scale(1.05);}
.bv-card-open .bv-card-item .card-content{position: relative; padding: 1.5rem 0rem;}
.business-verticals .card-content .btn-o{--btn-bg:transparent; --fg:#64b12f; border-color:#fff;}
.business-verticals .card-content .btn-o:hover{color: var(--text-white);}
.business-verticals .card-content .btn-o .icon { color: var(--bg-white);}

.leadership-custom-tabs{ border-bottom:1px solid #eee; margin-bottom:35px;}
.leadership-custom-tabs .nav-link{ border:none; cursor: pointer; background:none; color:#333; font-size:20px; letter-spacing:1px; padding:12px 20px; position:relative;text-transform: uppercase;}
.leadership-custom-tabs .nav-link:hover{ color:#000;}
.leadership-custom-tabs .nav-link.active{ color:#000; background:none;}
.leadership-custom-tabs .nav-link.active:after{ content:""; position:absolute; left:0; bottom:-1px;  width:100%; height:2px; background:#76c143;}

.leadership-card-inside { overflow: hidden; transition:all 0.3s ease;}
.leadership-card { padding: 0;}
.leadership-card .image-container { position: relative; overflow: hidden;}
.leadership-card .image-container img { width: 100%; height: 100%; object-fit: cover; transition:all 0.3s ease;}
.leadership-card:hover .image-container img { transform: scale(1.05);}
.leadership-card .leadership-card__body { padding-block: clamp(1.5rem,5vw,1.5rem); font-size: 1rem;}
.leadership-card .leadership-card__body h4{font-size: 1.2rem; font-weight: 300; color: #202020; text-transform: uppercase;}
.leadership-card .leadership-card__body p{font-size:0.85rem; color: #979797; line-height: 1.2;}

.our-portfolio{background-color:#f9f9f9}
.heading-list {display: flex;flex-direction: column;gap: 60px;margin-left:4vw;}
.heading-list .heading-item {display: flex;align-items: center;gap: 20px;}
.heading-list .line {width: 25px;height: 2px;background: #7bbf3f;opacity: 0;}
.heading-item.active .line, .heading-item:hover .line {opacity: 1;}
.heading-item span {font-size: 20px;letter-spacing: 3px;color: #333;text-transform: uppercase;}
.heading-item a{color:#333;text-wrap: nowrap; text-transform: uppercase;}
.title-line {display: flex;align-items: center;gap: 20px;}
.title-line::before {width:5vw;height: 2px;background: #c2c2c2;content:"";}
.portfolio-container {width: 100%; /*max-width: 390px;*/ display: flex;flex-direction: column; justify-content: flex-end;position: relative; overflow:hidden;  }
.portfolio-container .info{position:absolute;bottom:20px;left:20px;z-index:9; transition:all .3s ease}
.portfolio-container:hover .info{bottom:30px;}
.portfolio-container img{width:100%; transform:scale(1.1); transition:all 1s ease}
.portfolio-container:hover img{transform:scale(1)}
.portfolio-container h3 {font-family: var(--font-title);font-weight: normal;font-size: 32px;letter-spacing: 6px;color: #fff;margin-bottom: 10px;}
.portfolio-container p {font-size: 16px;color: #fff;letter-spacing: 1px;}

.pre_card {--ink: #1a1a1a;--muted: #6b6b6b;--line: #d8d8d8;--bg: #ffffff; background: var(--bg); width: 100%; overflow: hidden;}
.btn-link{text-decoration:none}
.pre_card__media {width: 100%;aspect-ratio: 16 / 10;background: #000;overflow: hidden;}
.pre_card__media img {width: 100%; height: 100%; object-fit: cover; display: block; transform:scale(1.1); transition:all 0.6s ease;}
.pre_card:hover .pre_card__media img{transform:scale(1); }
.pre_card__body {padding: 28px 4px 4px;}
.pre_card__eyebrow {font-size: 12px;letter-spacing: 2px;text-transform: uppercase;color: var(--muted);margin: 15px 0 14px 0;}
.pre_card__title {font-size:20px;line-height: 1.2;font-weight: 400;color: var(--ink);margin: 0 0 18px;}
.pre_card__text {font-size: 15px;line-height: 1.6;color: #4a4a4a;margin: 0 0 26px;max-width: 46ch;}
.perspective .carousel{max-width:90%; margin:0 auto}

.faqs-accordion{position: relative;}
.faqs-accordion .accordion-button{padding:15px 0px; background-color:transparent !important; box-shadow:none; font-size:1.1rem; color: var(--primary-dark); font-weight:500;}
.faqs-accordion .accordion-item{padding:15px 0px; border: 0px; border-bottom: 2px solid #f4f4f4;}
.faqs-accordion .accordion-body{padding:15px 0px; font-size:var(--fs-body); line-height: 1.5;}
.faqs-accordion .accordion-button::after { content: "+"; width: auto; height: auto; margin-left: auto; background-image: none; background-repeat: no-repeat; background-size:auto; font-size: 28px; font-weight: 300; line-height: 1; transform: none;}
.faqs-accordion .accordion-button:not(.collapsed)::after { content: "−"; background-image: none; transform: none;}

.ready-to-build{border-top: 2px solid #eeeeee;}
.ready-to-build .section-title h2 {font-size:5rem; line-height:0.9; font-style: normal!important;}
.ready-to-build .section-title h2 span{font-style: normal!important; color: var(--primary-dark);}
.ready-to-build .section-title .italic{color: #64b12f; font-size: 3rem; font-style: italic; font-weight: normal;}
 .section-title .ts-font{color: #64b12f; font-size: 3rem; font-weight: normal;}
/*.ready-to-build .section-title span{font-family: var( --font-title); color: #af8b4b; font-size:2rem; line-height: 1; font-style: italic;}*/

.contact-form {position: relative;}
.contact-form .row {row-gap: 65px;}
.contact-form .form-control {width: 100%; height: 55px; padding: 10px 10px; border: 0; border-bottom: 1px solid #aaa; border-radius: 0; background: transparent; font-size: 20px;
	font-weight: 300; color: #333; box-shadow: none !important;}
.contact-form .form-control::placeholder {color: #555; opacity: 1;}
.contact-form .form-control:focus {border-color: #222; background: transparent;}
.contact-form .btn-contact {display: inline-flex; align-items: center;padding: 5px 5px 5px 20px;border: 1px solid #202020; border-radius: 50px;background: transparent;color: #202020;font-size: 16px; line-height: 1;cursor: pointer;}
.contact-form .btn-contact span {display: inline-flex; align-items: center; justify-content: center; width:30px; height:30px; margin-left: 18px; border-radius: 50%; background: #202020; color: #fff; font-size:16px; line-height: 1;}
.contact-form .btn-contact:hover {background: #fff;}

/* Deliver Project Page ------------- */
.project-showcase{position: relative;}
.project-showcase .section-title, .our-clients .section-title {margin-bottom: 1rem;}

.video-card {position: relative;width: 100%;aspect-ratio: 16 / 9;overflow: hidden;border-radius:0px;margin:0 auto;cursor: pointer;}
.video-card img {width: 100%;height: 100%;object-fit: cover;display: block;transition: transform .5s ease;}
.video-card:hover img {transform: scale(1.1);}
.video-card button {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 70px;height: 70px;border-radius: 50%;background-color: transparent;color: #fff;font-size: 26px;cursor: pointer;border: 1px solid #fff;transition: .3s ease;}
.video-card:hover button {transform: translate(-50%, -50%) scale(1.15);box-shadow: 0 0 35px rgba(0,0,0,1), 0 8px 30px rgba(0,0,0,.5);}

.logo-grid {width: 100%; padding: 0;list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid #e5e5e5; border-left: 1px solid #e5e5e5;}
.logo-grid li {min-height:200px; display: flex; align-items: center; justify-content: center; border-right: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; position: relative; overflow: hidden;transition: all 0.35s ease; cursor: pointer;}
.logo-grid li img {height: 135px; object-fit: contain; transition: transform 0.4s ease;}
.logo-grid li:hover {transition: transform 0.4s ease, filter 0.4s ease;}
.logo-grid li:hover img {transform: scale(1.18);}

/* Deliver Project Detail Page ------------- */
.pd-hero .btn-o{width:fit-content; --fg:#76c143; background:none; color:#fff; border:1px solid #fff;}
.pd-hero span{font-size: 14px; line-height: 2; letter-spacing: .04em; color:#fff; font-weight:300; text-transform: uppercase;}
.pd-hero h2{line-height:1.1}
.sec__our-portfolio .leadership-custom-tabs{margin-bottom:45px;}
.sec__our-portfolio .leadership-custom-tabs .nav-link{background:#fff;color:#202020;border:1px solid #ddd;position:relative;overflow:hidden;z-index:1;transition:color .3s}
.op-continer::before,.sec__our-portfolio .nav-link:after{content:"";position:absolute;left:0;width:100%;height:100%}
.sec__our-portfolio .leadership-custom-tabs,.sec__our-portfolio .nav-link.active{border-color:transparent}
.sec__our-portfolio .nav-link.active span,.sec__our-portfolio .nav-link:hover span{color:#fff;position:relative;z-index:2}
.sec__our-portfolio .nav-link:after{top:0;z-index:1;background:#64b12f;transform:scaleX(0);transform-origin:right center;transition:transform .3s}
.sec__our-portfolio .nav-link.active:after,.sec__our-portfolio .nav-link:hover:after{transform:scaleX(1)}
.sec__our-portfolio .leadership-custom-tabs .nav-link.active:after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:100%;background:#76c143}
.op-continer{position:relative;width:100%;height:100%;background:#000;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}
.op-continer::before{bottom:0;background:linear-gradient(180deg,rgba(247,247,247,.1) 0,rgba(0,0,0,.75) 100%);pointer-events:none;z-index:2}
.op-continer2::before{bottom:0;background-color: transparent!important; pointer-events:none;z-index:2}
.op-continer img{opacity:0.75; transition:all 0.6s ease;}
.op-continer .hero-op-container {position: absolute; left:4%; bottom:5%; z-index: 9; transition:all 0.3s ease; }
.op-continer:hover .hero-op-container {position: absolute; left:4%; bottom:6%; z-index: 9; }
.op-continer:hover .hero-op-container img {transform: scale(1.1)}
.op-continer img {transform: scale(1.1); transition:all 0.6s ease; }
.op-continer .hero-op-container h3 {color: #f5f5f5; font-size: clamp(1.4rem, 0.93rem + 2.03vw, 2.75rem);line-height:1.1; font-weight: 500; margin-bottom:0rem; font-family: var(--font-title);}
.op-continer .hero-op-container p {color: #d4d4d8; font-size: 1rem; font-weight: 400;}
.op-continer .hero-op-container h3 span{display: block;}
.sec__pro_mind h2{ font-size: clamp(1.4rem, 0.93rem + 2.03vw, 4.75rem);}
.sec__pro_mind .btn-o{width:fit-content; --fg:#76c143; background:none; color:#1f1f1f; border:1px solid #1f1f1f;}
.sec__pro_mind .btn-o:hover{color:#fff; border-color:#ddd}
.letter-sp1{letter-spacing: var(--letter-space-1);}
.letter-sp2{letter-spacing: var(--letter-space-2);}
.letter-sp3{letter-spacing: var(--letter-space-3);}

/* About Us Page ------------- */
.section-title-line { position: relative; display: flex; align-items:flex-start;  gap:20px; width: 100%; font-family: var( --font-title);	
  color: var(--primary-dark); letter-spacing:2px;}
.section-title-line::before { content: "";position: absolute; width:80px; height: 1px; background: #7f7f7f; flex-shrink: 0; left: -100px; margin-top: 25px;}
.section-title-line h2{ font-size: clamp(2.5rem, 5vw, 3rem); line-height: inherit;}
.section-title-line h1 span, .section-title-line h2 span{color:#64b12f; font-style: italic;}

.section-title_bg h2 {color: #fff; font-size: var(--font-size-title); font-family: var(--font-title); letter-spacing: 2px; font-weight: 500;}
.section-title_bg h2 span{color:#76c143;}

.section-title_tg h2 {color: #111111; font-size: var(--font-size-title); font-family: var(--font-title); letter-spacing: 2px; font-weight: 500;}
.section-title_tg h2 span{color:#76c143;}

 .blockquote{margin:25px 0 25px 0; font-size: var(--fs-body); line-height: var( --lh-body); padding:0px 0 0px 15px; border-left:3px solid #76c143; font-weight:600;}

.info-highlight{display: flex; align-items: center; margin:2rem 0rem;  gap:15px; font-weight: 600;}
.info-highlight .v-line { width:3px; height: 25px; background: #7bbf3f;}

.about-us__built{background:#f9f9f9}
.about-us__commercial {background: #fff;}

.about-us__history{background-color: #111111; color: var(--neutral-0);}
.about-us__history .section-title h2 {color: var(--neutral-0);}
.about-us__history .btn-o { width: fit-content; --fg: #76c143; background: none; color: #fff; border-color:#fff;}
.about-us__history .btn-o:hover{color:#fff; border-color:#76c143}
.about-us__history .btn-o:hover::before, .about-us__history .btn-o:focus-visible::before {transform:scale(15);}

.history-timeline {padding:0px 0%;display: flex; position: relative;}
.history-timeline::before {content: "";position: absolute; top:10px; left:0%; right:0%; height: 1px;background: #434343;}
.history-timeline-item {width: 20%; padding: 0px 15px 0px 0px; position: relative;}
.history-timeline h3 {margin: 0 0 18px;font-size: 15px;font-weight: 700;}
.history-timeline p {margin: 0;max-width: 280px;color: #fff;font-size: 13px;line-height: 1.8;}
.dot {width: 20px;height: 20px;display: block;border:1px solid #8cbd49;border-radius: 50%;background: #111111;position: relative;z-index: 2;margin-bottom: 42px;}
.dot::after {content: "";width:10px;height:10px;background: #b8e86c;border-radius: 50%;position: absolute;top:4px;left:4px;}
.year {color: #82f732;font-size: 18px;font-weight:500;margin-bottom: 22px;}

.vision_mission{background:#f8f8f8}

.card_vm-left{--bg:#111111;--fg:#ffffff;--fg-dim:#b3b3b3;--accent:#7ed957;--bg-hover:#ffffff;--fg-hover:#111111;--fg-dim-hover:#202020;}
.card_vm-right{--bg:#ffffff;--fg:#111111;--fg-dim:#b3b3b3;--accent:#7ed957;--bg-hover:#ffffff;--fg-hover:#111111;--fg-dim-hover:#202020;}
.card_vm{width:100%; background:var(--bg);color:var(--fg);border-radius:0px;padding:8% 9%; transition:background-color .35s,color .35s}
.card_vm, .card_vm-left, .card_vm-right {height:100%}
.card_vm-right .section-title_bg h2 {color: #111111;}
.card_vm .eyebrow{color:var(--fg-dim);font-size:1rem;margin:0 0 18px;transition:color .35s}
.card_vm p.lead{font-size:1.05rem;line-height:1.5;margin:0 0 28px;color:var(--fg);transition:color .35s; font-weight:normal}
.card_vm ul{list-style:none;padding:0;margin:0 0 28px}
.card_vm ul li{position:relative;padding-left:20px;font-size:1.05rem;line-height:1.6}
.card_vm ul li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.card_vm blockquote{margin:0;padding:4px 0 4px 18px;border-left:4px solid var(--accent);font-weight:500;line-height:1.2; font-size:1rem}

.card_ov{--bg:#0b0b0b;--card:#131313;--border:#2a2a2a;--border-hover:#565656;--text:#f5f5f3;--muted:#a8a8a4;position:relative;flex:1 1 0; background-color:var(--card);background-image:linear-gradient(rgba(10,10,10,.55),rgba(10,10,10,.85)),repeating-linear-gradient(135deg,#1c1c1c 0 2px,#131313 2px 14px);background-size:cover;background-position:center;border-right:1px solid var(--border);overflow:hidden;display:flex;align-items:flex-end;cursor:pointer;transition:border-color .35s}
.card_ov img{width:100%; transform:scale(1.1); transition:all 1s ease}
.card_ov:hover img{transform:scale(1)}
.card_ov:last-child{border-right:none}
.card_ov::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(11,11,11,.15),rgba(11,11,11,.6)),repeating-linear-gradient(135deg,#1c1c1c 0 2px,#131313 2px 14px);opacity:0;transform:scale(1.04);transition:opacity .5s,transform .6s}
.card_ov:focus-visible::before,.card_ov:hover::before{opacity:1;transform:scale(1)}
.card_ov .content{position:absolute;z-index:1; left:25px; bottom:25px}
.card_ov h3{margin:0;font-size:1.7rem;font-weight:400;letter-spacing:.06em;color:var(--text);line-height:1.2; font-family: var(--font-title);}
.card_ov h3 span{display: block}
.card_ov .desc{margin:14px 0 0;max-width:90%;color:var(--muted);font-size:1rem;line-height:1.6;letter-spacing:.02em;max-height:0;opacity:0;overflow:hidden;transition:max-height .4s,opacity .35s .05s}
.card_ov:focus-visible .desc,.card_ov:hover .desc{max-height:120px;opacity:1}
.card_ov:focus-visible,.card_ov:hover{border-color:var(--border-hover);outline:0}
.zoom-container {overflow: hidden;}
.zoom-img {width: 100%; transition: 3s;}
.zoom-img:hover {transform: scale(1.1);}
.mx-carousel90 { max-width: 90%;  margin: 0 auto;}
.btn-link:hover{color:#64b12f}
.btn-link:hover::after{background:#64b12f}

.carousel .swiper{padding-bottom: 1px;}

/* Work Page ------------- */
.line-descrition::before,.small-heading p::before{display:inline-block;content:"";position:absolute}
.line-descrition,.small-heading p{display:flex;align-items:center;gap:30px;position:relative}
.small-heading p::before{width:130px;height:1px;background-color:#777;flex-shrink:0;left:-150px}
.line-descrition::before{width:40px;height:2px;background-color:#64b12f;flex-shrink:0;left:-60px;top:10px}
.none-line::before,.why-wehere .btn-link::after{display:none}
.case__studies,.why-wehere{background:#000}
.why-wehere .btn-link{--fgbl:#64b12f;margin-top:0;font-size:13px}
.why-wehere .bv-card-item .card-content h3{color:#fff}
.text-green{color:#64b12f}
.why-wehere .bv-card-item .card-content p{min-height:90px}
.btn-o:focus-visible::before,.btn-o:hover::before{transform:scale(33)}
.case__studies .btn-o{--btn-bg:transparent;--fg:#64b12f;border-color:#fff}
.list_order{margin:0;padding:0;list-style:none;--bg:#ffffff;--heading:#111111;--text:#7a7a7a;--accent:#7cc04b;--line:#e6e6e6}
.list_order .item{display:flex;align-items:flex-start;gap:0;padding:15px 0 20px 6px;border-bottom:2px solid var(--line)}
.list_order .item:last-child{border-bottom:0}
.list_order .num{flex:0 0 42px;padding-top:4px;font-size:16px;font-style:italic;color:var(--accent)}
.list_order .content h3{margin:0 0 6px;font-size:20px;font-weight:400;letter-spacing:.04em;color:var(--heading);font-family:var(--font-title)}
.list_order .content p{margin:0;font-size:15px;letter-spacing:.03em;color:var(--text)}
.line_list{position:relative;padding-left:10px 0}
.line_list::before{content:"";position:absolute;left:-25px;top:10px;width:14px;height:4px;background:#a8d26b}
.line_list h3{margin:0 0 8px;font-size:20px;font-weight:400;font-style:italic;color:#5a9e1e;line-height:1.3}
.line_list p{margin:0;font-size:14px;line-height:1.7;letter-spacing:.2px;color:#777}
.comingcard{padding:24px 24px 32px 27px;background:#f7f7f7;border-left:5px solid #5cb031;margin:25px 0 0}
.comingcard__heading{margin:0 0 6px;font-size:21px;font-weight:400;font-style:italic;letter-spacing:1px;color:#52a01d}
.comingcard__text{margin:0;font-size:15px;line-height:1.75;letter-spacing:.9px;color:#8a8a8a}
.mx-w440{max-width:440px}

/* People ------------- */
.people-card .leadership-card__body h4{ color: #ffffff; font-size:1rem; text-transform: none;}
.people-card .leadership-card__body p{ color: #64b12f; font-size: 0.75rem; line-height: 1; text-transform: uppercase; margin-bottom:8px;}
.trusted-people{ background-color:var(--bg-white);}

/* Career ------------- */
.line-descrition::before,.small-heading p::before{display:inline-block;content:"";position:absolute}
.line-descrition,.small-heading p{display:flex;align-items:center;gap:30px;position:relative}
.small-heading p::before{width:130px;height:1px;background-color:#777;flex-shrink:0;left:-150px}
.line-descrition::before{width:40px;height:2px;background-color:#64b12f;flex-shrink:0;left:-60px;top:10px}
.none-line::before,.why-wehere .btn-link::after{display:none}
.case__studies,.why-wehere{background:#000}
.why-wehere .btn-link{--fgbl:#64b12f;margin-top:0;font-size:13px}
.why-wehere .bv-card-item .card-content h3{color:#fff}
.text-green{color:#64b12f}
.why-wehere .bv-card-item .card-content p{min-height:90px}
.btn-o:focus-visible::before,.btn-o:hover::before{transform:scale(33)}
.case__studies .btn-o{--btn-bg:transparent;--fg:#64b12f;border-color:#fff}
.list_order{margin:0;padding:0;list-style:none;--bg:#ffffff;--heading:#111111;--text:#7a7a7a;--accent:#7cc04b;--line:#e6e6e6}
.list_order .item{display:flex;align-items:flex-start;gap:0;padding:15px 0 20px 6px;border-bottom:2px solid var(--line)}
.list_order .item:last-child{border-bottom:0}
.list_order .num{flex:0 0 42px;padding-top:4px;font-size:16px;font-style:italic;color:var(--accent)}
.list_order .content h3{margin:0 0 6px; font-size:20px; font-weight:400; letter-spacing:.04em; color:#5a9e1e; font-family:var(--font-title)}
.list_order .content p{margin:0;font-size:15px; letter-spacing:.03em; color:var(--text)}
.line_list{position:relative;padding-left:10px 0}
.line_list::before{content:"";position:absolute;left:-25px;top:10px;width:14px;height:4px;background:#a8d26b}
.line_list h3{margin:0 0 8px;font-size:20px;font-weight:400;font-style:italic;color:#5a9e1e;line-height:1.3}
.line_list p{margin:0;font-size:14px;line-height:1.7;letter-spacing:.2px;color:#777}
.comingcard{padding:24px 24px 32px 27px;background:#f7f7f7;border-left:5px solid #5cb031;margin:25px 0 0}
.comingcard__heading{margin:0 0 6px;font-size:21px;font-weight:400;font-style:italic;letter-spacing:1px;color:#52a01d}
.comingcard__text{margin:0;font-size:15px;line-height:1.75;letter-spacing:.9px;color:#8a8a8a}
.mx-w440{max-width:440px}

.black_theme{background-color:#131313}
.black_theme .btn-o{--fg: #76c143; --bg:transparent; --btn-bg:transparent; color:#fff; border-color:#fff}
.black_theme .btn-o .icon{color:#fff}
.careers{--bg:#ffffff;--ink:#1f1f1f;--muted:#6f6f6f;--line:#e6e6e6;--tag-bg:#e8eedf;--tag-ink:#5d6b4c;background:var(--bg);color:var(--ink)}
.careers .careers__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.careers .job{border-bottom:1px solid var(--line)}
.careers .job__row{width:100%;display:flex;align-items:center;gap:20px;padding:30px 0;background:0 0;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer}
.careers .job__row:focus-visible{outline:2px solid var(--tag-ink);outline-offset:-2px}
.careers .job__num{font-size:14px;font-style:italic;font-weight:300;color:var(--muted);width:22px;flex:none}
.careers .job__title{font-family:var(--font-title);font-size:21px;letter-spacing:.04em;flex:1;color:#000}
.careers .job__meta{display:flex;align-items:center;gap:18px;flex:none}.careers .job__tag{background:var(--tag-bg);color:var(--tag-ink);font-size:13.5px;font-weight:300;padding:3px 13px;letter-spacing:.02em}
.careers .job__loc{font-size:14px;font-weight:300;color:var(--muted);letter-spacing:.02em}
.careers .job__icon{width:12px;font-size:18px;font-weight:300;text-align:center;line-height:1;transition:transform .25s;color:var(--muted)}
.careers .link{color:#64b12f!important;text-transform:uppercase}
.careers .job.is-open .job__icon{transform:rotate(45deg)}
.careers .job__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s}
.careers .job.is-open .job__panel{grid-template-rows:1fr}
.careers .job__panel-inner{overflow:hidden}
.careers .job__panel p{margin:0;padding:0 0 30px 42px;font-size:15px;font-weight:300;line-height:1.7;color:var(--muted)}
.careers .job__panel a{color:var(--ink)}
.testimonial{--page-bg:#ffffff;--card-bg:#f6f6f6;--accent:#6cc644;--text:#1c1c1c;--muted:#7a7a7a;--quote-mark:#d9d9d9;--avatar-bg:#000000;width:100%;margin:0;padding:36px 32px 34px;background:var(--card-bg);border-left:5px solid var(--accent);display:flex;flex-direction:column;gap:56px; height:100%}
.testimonial .testimonial__quote-mark{display:block;width:26px;height:auto;margin-bottom:16px;fill:var(--quote-mark)}
.testimonial .testimonial__text{margin:0;font-size:1rem;line-height:1.5;letter-spacing:.02em}
.testimonial .testimonial__author{display:flex;align-items:center;gap:16px}
.testimonial .testimonial__avatar{flex:none;width:50px;height:50px;border-radius:50%;background:var(--avatar-bg);object-fit:cover}
.testimonial .testimonial__name{margin:0;font-family:var(--font-name);font-size:1.375rem;font-weight:500;line-height:1.2;letter-spacing:.02em}
.testimonial .testimonial__role{margin:4px 0 0;font-size:.875rem;color:var(--muted)}
.img-corner .intro{max-width:540px;margin:0 auto;text-align:left;font-size:16px;line-height:24px;letter-spacing:.08em;color:var(--muted);--bg:#000;--text:#fff;--muted:#1f1f1f;--accent:#4caf50}
.img-corner .intro .btn-link{color:#fff}
.img-corner .quote{margin-top:20px}
.img-corner .quote-mark svg{display:block;font-style:italic;font-weight:700;width:25px;line-height:1;fill:#fff;overflow:hidden}
.img-corner .quote-text{margin-top:22px;font-size:24px;line-height:38px;letter-spacing:.06em;font-weight:500;font-family:var(--font-title)}
.img-corner .position-absolute{top:50%;transform:translateY(-50%);color:#fff;left:25px}

/* Contact us Page ------------- */
.contact_form { max-width:100%; margin: 0 auto; padding: 48px 24px 64px; background-color:#f9f9f9; --bg: #fafafa; --ink: #1a1a1a; --muted: #8a8a8a; --line: #dcdcdc; --line-focus: #1a1a1a; --error: #b3261e; } 
.contact_form .contact__title { margin: 0 0 40px; font-family: var(--font-title); font-size: clamp(1.6rem, 3.2vw, 2rem); font-weight: 500; letter-spacing: 0.01em; line-height: 1.2; } 
.contact_form .form { display: grid; grid-template-columns: 1fr 1fr; gap: 32px 28px; }
.contact_form .field { display: flex; flex-direction: column; } 
.contact_form .field--full { grid-column: 1 / -1; } 
.contact_form .field label { margin-bottom: 6px; font-size: 0.95rem; font-weight: 600; letter-spacing: 0.04em; } 
.contact_form .field input, .contact_form .field select, .contact_form .field textarea { width: 100%; padding: 12px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; color: var(--ink); font: inherit; font-size: 1rem; font-weight: 300; letter-spacing: 0.04em; transition: border-color 0.2s ease; }
.contact_form .field input::placeholder, .contact_form .field textarea::placeholder { color: var(--muted); opacity: 1; } 
.contact_form .field input:focus, .contact_form .field select:focus, .contact_form .field textarea:focus { outline: none; border-bottom-color: var(--line-focus); }
.contact_form .field input:focus-visible, .contact_form .field select:focus-visible, .contact_form .field textarea:focus-visible { box-shadow: 0 1px 0 0 var(--line-focus); }
.contact_form .field select { appearance: none; -webkit-appearance: none; padding-right: 28px; font-weight: 500; cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%231a1a1a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 4px center; }
.contact_form .field select:invalid { color: var(--ink); }
.contact_form .field textarea { min-height: 96px; resize: vertical; line-height: 1.5; }
.contact_form .field input:user-invalid, .contact_form .field select:user-invalid, .contact_form .field textarea:user-invalid { border-bottom-color: var(--error); } 
.contact_form .actions { grid-column: 1 / -1; margin-top: 4px; } 
.contact_form .btn { display: inline-flex; align-items: center; gap: 28px; padding: 6px 6px 6px 18px; border: 1px solid var(--ink); border-radius: 999px; background: transparent; color: var(--ink); font: inherit; font-size: 0.85rem; font-weight: 400; letter-spacing: 0.1em; text-transform: uppercase; cursor: pointer; transition: background 0.25s ease, color 0.25s ease; } 
.contact_form .btn__icon { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--ink); color: #fff; transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease; } .contact_form .btn__icon svg { width: 14px; height: 14px; } 
.contact_form .btn:hover { background: var(--ink); color: #fff; }
.contact_form .btn:hover .btn__icon { background: #fff; color: var(--ink); transform: translateX(2px); }
.contact_form .btn:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.contact_cards { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid #2f4a2f; }
.contact_cards .card { position: relative; display: flex; flex-direction: column; justify-content: space-between; min-height: 385px; padding: 38px 36px; background: #112008; border-right: 1px solid #2f4a2f; color: #fff; text-decoration: none; overflow: hidden; transition: background 0.4s ease; } 
.contact_cards .card:last-child { border-right: none; }
.contact_cards .card:hover, .contact_cards .card:first-child { background: #1a2f0e; }
.contact_cards .cards:hover .card:first-child:not(:hover) { background: #112008; }
.contact_cards .num { color: #7dff3a; font-size: 14px; transition: transform 0.4s ease; }
.contact_cards .content h3 { font-family: Georgia, serif; font-weight: 400; font-size: 30px; margin-bottom: 18px; transition: transform 0.4s ease; }
.contact_cards .content p { color: #b9c4b0; font-size: 14px; line-height: 1.7; max-width: 300px; transition: transform 0.4s ease; } 
.contact_cards .link { margin-top: 40px; color: #7dff3a; font-size: 14px; letter-spacing: 1.5px; text-transform: uppercase; display: inline-flex; align-items: center; gap: 10px; }
.contact_cards .link .arrow { display: inline-block; transition: transform 0.35s ease; }
.contact_cards .card:hover .arrow { transform: translateX(8px); } 
.contact_cards .card:hover h3 { transform: translateY(-6px); } 
.contact_cards .card:hover .num { transform: translateY(-4px); } 
.contact_cards .card::after { content: ""; position: absolute; left: 0; bottom: 0; height: 3px; width: 100%; background: #7dff3a; transform: scaleX(0); transform-origin: left; transition: transform 0.45s ease; } .contact_cards .card:hover::after { transform: scaleX(1); }
.contacthelp { --maroon: #300404; --forest: #12220b; --lime: #7ac143; --neon: #8dff2e; --text: #ffffff; position: relative; color: var(--text); font-family: var(--font-body); background: linear-gradient(90deg, var(--maroon) 50%, var(--forest) 50%); padding: clamp(48px, 5vw, 72px) 24px clamp(64px, 8vw, 110px); }
.contacthelp .help__title { margin: 0 0 clamp(40px, 5vw, 64px); text-align: center; font-family: var(--font-display); font-weight: 300; font-size: clamp(2.2rem, 4.2vw, 3.4rem); letter-spacing: .12em; line-height: 1.1; } .contacthelp .help__grid { display: grid; grid-template-columns: 1fr 1fr; max-width: 1920px; margin: 0 auto; }
.contacthelp .panel { display: flex; flex-direction: column; align-items: flex-start; gap: clamp(28px, 3.5vw, 52px); padding: 0 24px; }
.contacthelp .panel--chat { align-items: flex-end; padding-right: clamp(24px, 6vw, 120px); } 
.contacthelp .panel--visit { align-items: flex-start; padding-left: clamp(24px, 6vw, 120px); } 
.contacthelp .panel__inner { width: min(100%, 560px); } 
.contacthelp .panel--chat .panel__inner { margin-right: 2vw; }
.contacthelp .panel__row { display: flex; align-items: center; gap: 24px; }
.contacthelp .panel__icon { flex: none; width: 52px; height: 76px; }
.contacthelp .panel--visit .panel__icon { width: 130px; height: 80px; } 
.contacthelp .panel__text { margin: 0; font-size: 1rem; line-height: 1.5; letter-spacing: .06em; max-width: 30em; }
.contacthelp .panel__action { margin: clamp(28px, 3.5vw, 52px) 0 0 76px; }
.contacthelp .panel--visit .panel__action { margin-left: 154px; } 
.contacthelp .btn-o{--fg:#fff; background-color: transparent;} 
.contacthelp .btn-o::before{background-color:#76c143;}

/* Blog Page ------------- */
.blog__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gap); }
.blog__cards .card { display: flex; flex-direction: column; opacity: 0; transform: translateY(40px); transition: opacity .7s ease, transform .7s ease; border:0px; margin-bottom:2rem; cursor: pointer;} 
.blog__cards .card.is-visible { opacity: 1; transform: none; } 
.blog__cards .card:nth-child(3n+2) { transition-delay: .12s; } 
.blog__cards .card:nth-child(3n+3) { transition-delay: .24s; }
.blog__cards .card__img { width: 100%; aspect-ratio: 438 / 303; background: #000; object-fit: cover; display: block;   transition: transform .5s ease, filter .5s ease;} 
.blog__cards .card__title { margin-top: 28px; font-size: 1.25rem; font-weight: 400; letter-spacing: .04em; text-transform: uppercase; font-family:var(--font-title);  transition: letter-spacing .35s ease;} 
.blog__cards .card__text { margin-top:8px; font-size: 1rem; line-height: 1.5; letter-spacing: .03em; } 
.blog__cards .card__link { margin-top: 20px; display: inline-flex; align-items: center; gap: 12px; width: fit-content; color: inherit; text-decoration: none; font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; } 
.blog__cards .card__link svg { transition: transform .25s ease; }
.blog__cards:hover .card__link{ color:#64b12f; }
.blog__cards:hover svg{ transform: translate(3px, -3px); color:#64b12f; }
.blog__cards .card__link:focus-visible { outline: 2px solid var(--text); outline-offset: 4px; }
.card__link::after {content: ""; position: absolute;  left: 0; bottom: -20px;  width: 0; height: 1px; background: currentColor; transition: width .3s ease;}
.card:hover .card__link::after { width: 100%;}
.card:hover .card__link svg {transform: translate(3px, -3px);}
.card:hover .card__img {transform: scale(1.04); filter: brightness(.85);}
.card:hover .card__title {letter-spacing: .08em;}
.blog__pagination { --bg: #0e0e0e; --text: #f2f2f2; --border: #2c2c2c; --active-bg: #ffffff; --active-text: #000000; --hover-bg: #ffffff; --hover-text: #000000; --muted: #8a8a8a; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px; padding: 16px; margin-top:20px}
.blog__pagination a { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 56px; height: 56px; padding: 0 18px; box-sizing: border-box; border: 1px solid var(--border); color: var(--text); background: var(--bg); font-size: 20px; font-weight: 300; letter-spacing: 0.04em; text-decoration: none; overflow: hidden; isolation: isolate; transition: color 0.3s ease, border-color 0.3s ease, transform 0.2s ease;}
.blog__pagination a::before { content: ""; position: absolute; inset: 0; background: var(--hover-bg); transform: translateY(100%); transition: transform 0.3s ease; z-index: -1; } 
.blog__pagination a:hover, .blog__pagination a:focus-visible { color: var(--hover-text); border-color: var(--hover-bg); transform: translateY(0px); border:#000 1px solid; } .blog__pagination a:hover::before, .blog__pagination a:focus-visible::before { transform: translateY(0); } 
.blog__pagination a:focus-visible { outline: 2px solid var(--text); outline-offset: 3px; }
.blog__pagination a.active { background: var(--active-bg); color: var(--active-text); border:#000 1px solid; pointer-events: none; }
.blog__pagination .dots { min-width: 32px; text-align: center; color:#000; font-weight: 700; font-size: 20px; user-select: none; }
.blog__pagination a.next { padding: 0 28px; }

/* Get in touch form ------------- */
.sidebar_toggle{position:fixed; top:37%; left:-44px;cursor:pointer; display:block;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);background-color:#76c143;background-image:linear-gradient(#4d0300,#4d0300);background-repeat:no-repeat;background-position:left center;background-size:0 100%;color:var(--neutral-0);text-decoration:none;padding:var(--space-6) var(--space-4);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:2px;font-weight:500;border-radius:0!important;transition:background-size .4s,transform .3s}
.sidebar_toggle:hover{background-size:100% 100%;color:var(--neutral-0);transform:rotate(180deg) translateX(3px)}

.getintuch{position:fixed;top:50%;right:0;transform:translateY(-50%); right:-450px; width:450px; height:auto; box-shadow:0 10px 10px rgba(0,0,0,.1); transition:.5s ease-in-out; z-index:9999;}
.getintuch.active{right:0}

.getintuch_form { max-width:100%; margin: 0 auto; padding:40px 40px; background-color:#fff; --bg: #fafafa; --ink: #1a1a1a; --muted: #8a8a8a; --line: #dcdcdc; --line-focus: #1a1a1a; --error: #b3261e; }
.getintuch_form p{color: #64b12f; margin-bottom:2px; font-size: 0.95rem; letter-spacing: 0.2em;}
.getintuch_form .form__title { margin: 0 0 20px; font-family: var(--font-title); font-size: clamp(1.6rem, 3.2vw, 2rem); font-weight: 500; letter-spacing: 0.05em; line-height: 1.2; } 
.getintuch_form .form { display: flex; flex-direction: column; gap:15px 20px; }
.getintuch_form .field { display: flex; flex-direction: column;} 
.getintuch_form .field label { margin-bottom:10px; font-size: 0.95rem; letter-spacing: 0.04em; color: #686868; } 
.getintuch_form .field input, .getintuch_form .field select, .getintuch_form .field textarea { width: 100%; padding:10px; border: 0; border: 1px solid var(--line); border-radius: 0; background: transparent; color: var(--ink); font: inherit; font-size: 1rem; font-weight: 300; letter-spacing: 0.04em; transition: border-color 0.2s ease; border: 1px solid #e3e5e5; }
.getintuch_form .field input::placeholder, .contact_form .field textarea::placeholder { color: var(--muted); opacity: 1; } 
.getintuch_form .field input:focus, .contact_form .field select:focus, .contact_form .field textarea:focus { outline: none; border-color: var(--line-focus); }
.getintuch_form .field input:focus-visible, .getintuch_form .field select:focus-visible, .getintuch_form .field textarea:focus-visible {}
.getintuch_form .field textarea { min-height: 96px; resize: vertical; line-height: 1.5; }
.getintuch_form .field input:user-invalid, .getintuch_form .field select:user-invalid, .getintuch_form .field textarea:user-invalid { border-bottom-color: var(--error); } 
.getintuch_form .actions { margin-top:1rem; }
.getintuch_form .actions { --bg: #76c143; --text: #fff; --border: #76c143; --active-bg: #ffffff; --active-text: #000000; --hover-bg: #ffffff; --hover-text: #000000; --muted: #8a8a8a; }
.getintuch_form .button-submit { position: relative; display: inline-flex; align-items: center; justify-content: center; width:100%; height:45px; padding: 0 15px; box-sizing: border-box; border: 1px solid var(--border); color: var(--text); background: var(--bg); font-size: 0.95rem; font-weight: 300; letter-spacing: 0.04em; text-decoration: none; overflow: hidden; isolation: isolate; transition: color 0.3s ease, border-color 0.3s ease, transform 0.2s ease;}
.getintuch_form .button-submit::before { content: ""; position: absolute; inset: 0; background: var(--hover-bg); transform: translateY(100%); transition: transform 0.3s ease; z-index: -1; } 
.getintuch_form .button-submit:hover, .getintuch_form .button-submit:focus-visible { color: var(--hover-text); border-color: var(--hover-bg); transform: translateY(0px); border:#4d0300 1px solid; } 
.getintuch_form .button-submit:hover::before, .getintuch_form .button-submit:focus-visible::before { transform: translateY(0); }
.getintuch_form .button-submit .icon {margin-left: 5px;}

/* Blog details ------------- */
.con-blog-detail h1, .con-blog-detail h2, .con-blog-detail .meta-label, .con-blog-detail p, .con-blog-detail h3{ margin-bottom:15px;}
.con-blog-detail h1, .con-blog-detail h2{    color: var(--primary-dark); font-size: var(--font-size-title); font-family: var(--font-title); font-weight:normal}  
.con-blog-detail h3{font-size:1.5rem; font-size: var(--font-size-title); font-weight: normal; font-family: var(--font-title);}  
.con-blog-detail img{width:100%;}
.con-blog-detail .meta-label { font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: #202020; display: flex; align-items: center;}
.con-blog-detail .tag::after { content: "/"; margin: 0 0.5em; color: #b0b0b0; font-weight: 400;}
.social-icons { display: flex; flex-direction: column; align-items: center; gap: 14px;}
.icon-circle { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1.3px solid #1a1a1a; border-radius: 50%; color: #1a1a1a; text-decoration: none;
	           transition: opacity 0.15s ease;}
.social-icons svg{height:25px; width:25px;}
.icon-circle:hover { opacity: 0.6;}
.blog-listing{margin-top: calc(1.5rem + 2vw);   gap: min(4rem, calc(1.5rem + 2vw));}

.vp-listing{list-style: none; margin: 0; padding: 0;}
.vp-listing li{ padding:15px 0px; font-size: 1.1rem; color: var(--primary-dark); font-weight: 500; border-bottom: 2px solid #f4f4f4;}
.vp-listing li h6{font-size: 1rem;}
.vp-listing li p { font-size: var(--fs-body); line-height: 1.5; margin-bottom: 0px;}

.vp-container {position: relative; overflow: hidden; text-align: center; padding: 10% 10%; border: 1px solid #ececec; background-color: #fff; transition:all 0.4s cubic-bezier(0.25, 1, 0.5, 1);  height: 100%;}
.vp-container:hover { border-color: var(--clr-primary); transform: translateY(-4px);  box-shadow: 0 12px 30px rgba(0,0,0,.04),0 4px 12px rgba(99,102,241,.03);}
.vp-container .vp-headline {position: relative; font-weight:500; transition:all 0.4s cubic-bezier(0.25, 1, 0.5, 1);}
.vp-container p {margin-bottom: 0px;}


/* Load more ------------- */
.load-more-item { display: none;}

/* Animation CSS ------------- */
@keyframes fadeUp {
from { opacity: 0; transform: translateY(32px); filter: blur(6px); }
to   { opacity: 1; transform: none; filter: none; }
}

.reveal, .swiper-slide-active .reveal{opacity: 0;}
.reveal-group.in-view .reveal,  .swiper-slide-active .reveal-group.in-view .reveal {
animation: fadeUp var(--dur, 800ms) cubic-bezier(.22,1,.36,1) var(--d, 0ms) both;
}

@media (prefers-reduced-motion: reduce) {
.reveal, .swiper-slide-active .reveal { opacity: 1; }
.reveal-group.in-view .reveal, .swiper-slide-active .reveal-group.in-view .reveal { animation: none; }
}

.swiper-slide .image_reveal_box{overflow: hidden; clip-path: inset(0 0 0 100%); transition: clip-path 1.2s cubic-bezier(.77, 0, .175, 1);}
.swiper-slide .image_reveal_box img {transform: scale(1.3); transition: transform 1.6s cubic-bezier(.77, 0, .175, 1);}
.swiper-slide-active .image_reveal_box, .swiper-slide-active .image_reveal_box.active {clip-path: inset(0 0 0 0);}
.swiper-slide-active .image_reveal_box img, .swiper-slide-active .image_reveal_box.active img {transform: scale(1);}

.form-function .line{ display:block; overflow:hidden;  font-family: var(--font-title);}
.form-function .line > span{display:block; transform:translateY(110%); transition:transform 1s cubic-bezier(.16,1,.3,1); transition-delay:calc(var(--i) * .18s);}
.form-function.in .line > span{ transform:translateY(0); }

@media (prefers-reduced-motion: reduce){
.form-function .line > span{ transition:none; transform:none; }
}

.botMask .imgcontnr {height: auto; overflow: hidden; clip-path: inset(100% 0 0 0); transition: clip-path 1.2s cubic-bezier(.77, 0, .175, 1);}
.botMask.in .imgcontnr {clip-path: inset(0 0 0 0);}
.botMask .imgcontnr img {width: 100%; height: 100%; object-fit: cover; transform: scale(1.2); transition: transform 1.6s cubic-bezier(.77, 0, .175, 1);}
.botMask.in .imgcontnr img {transform: scale(1);}

.logo-grid li {overflow: hidden; clip-path: inset(100% 0 0 0); transition: clip-path 1s cubic-bezier(.77, 0, .175, 1); transition-delay: calc(var(--i) * 80ms);}
.logo-grid li img {display: block; transform: translateY(30px) scale(1.15); transition: transform 1.2s cubic-bezier(.77, 0, .175, 1); transition-delay: calc(var(--i) * 80ms);}
.logo-grid.in li {clip-path: inset(0 0 0 0);}
.logo-grid.in li img { filter: grayscale(100%); transform: translateY(0) scale(1);}
.logo-grid.in li:hover img{filter: grayscale(0%);}
.logo-grid li.logo-load-item { display: none;}
.logo-grid li.logo-load-item.is-shown { display: flex;}

.section:not(.ready-to-build) .ts-font[data-ts]{color:inherit; font-size:inherit;}
.btn-o .ts-font, .btn-solid .ts-font, .btn-contact .ts-font{position:relative; z-index:1;}
.ts-font[data-ts]{letter-spacing:inherit; text-transform:inherit; line-height:inherit;}
.pd-hero .ts-font[data-ts]{font-size:inherit; color:inherit; font-weight:inherit;}

/* ---- portal additions (site builder) ---- */
/* images carry their width and height (no layout jump while loading); the shape still follows the layout */
:where(img[width][height]){height:auto}
/* client logos have a white background: on the grey cards of the carousel it blends in instead of showing a white box */
.trusted-partners .swiper-slide img { mix-blend-mode: multiply; }

/* Get in touch form: two columns on a wide screen (name | organization, email | mobile, looking at | sq. ft.), the panel scrolls when it is taller than the screen */
.getintuch_form { max-height: 92vh; overflow-y: auto; }
.getintuch_form .field select { appearance: none; -webkit-appearance: none; padding-right: 30px; cursor: pointer; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231a1a1a' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 12px center; }
@media (min-width: 992px) {
  .getintuch { width: 660px; right: -660px; }
  .getintuch.active { right: 0; }
  .getintuch_form .form { display: grid; grid-template-columns: 1fr 1fr; gap: 15px 20px; }
  .getintuch_form .field--full, .getintuch_form .actions { grid-column: 1 / -1; }
}


/* Blog details ------------- */
.con-blog-detail h1, .con-blog-detail h2, .con-blog-detail .meta-label, .con-blog-detail p, .con-blog-detail h3{ margin-bottom:15px;}
.con-blog-detail h1, .con-blog-detail h2{    color: var(--primary-dark); font-size: var(--font-size-title); font-family: var(--font-title); font-weight:normal}  
.con-blog-detail h3{font-size:1.5rem; font-size: var(--font-size-title); font-weight: normal; font-family: var(--font-title);}  
.con-blog-detail img{width:100%;}
.con-blog-detail .meta-label { font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: #202020; display: flex; align-items: center;}
.con-blog-detail .tag::after { content: "/"; margin: 0 0.5em; color: #b0b0b0; font-weight: 400;}
.social-icons { display: flex; flex-direction: column; align-items: center; gap: 14px;}
.icon-circle { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1.3px solid #1a1a1a; border-radius: 50%; color: #1a1a1a; text-decoration: none;
	           transition: opacity 0.15s ease;}
.social-icons svg{height:25px; width:25px;}
.icon-circle:hover { opacity: 0.6;}
.blog-listing{margin-top: calc(1.5rem + 2vw);   gap: min(4rem, calc(1.5rem + 2vw));}


/* blog articles: pictures and lists inside the text */
.con-blog-detail img { height: auto; margin: 1rem 0; }
.con-blog-detail ul, .con-blog-detail ol { margin-bottom: 15px; }
.con-blog-detail table { width: 100%; margin-bottom: 15px; border-collapse: collapse; }
.con-blog-detail td, .con-blog-detail th { border: 1px solid #e3e5e5; padding: 8px 10px; }

/* blog articles: lists are as readable as the paragraphs (same size and line height, bullets, space between the points) */
.con-blog-detail ul, .con-blog-detail ol { font-size: var(--fs-body); line-height: var(--lh-body); padding-left: 1.5rem; margin: 0 0 15px 0; }
.con-blog-detail ul { list-style: disc; }
.con-blog-detail ol { list-style: decimal; }
.con-blog-detail li { font-size: inherit; line-height: inherit; margin-bottom: 8px; padding-left: .25rem; }
.con-blog-detail li::marker { color: #000; }
.con-blog-detail table { font-size: var(--fs-body); line-height: var(--lh-body); }
.con-blog-detail td p, .con-blog-detail th p { margin: 0; }


.blog__pagination a.prev { padding: 0 28px; }


/* in-page links (header sub menu) stop below the fixed header */
html{scroll-padding-top:100px;}

/* the menu link of the open page: the same green as the highlighted word of the headings (e.g. "Delivered") */
.main-header .nav-link.active, .main-header .simple-dropdown a.active, .main-header.fixed-top.scrolled .main-nav .nav-link.active {color: #64b12f !important; font-weight: 700;}



