body{margin:0;background:#FFFFFF;font-family:'Inter',ui-sans-serif,sans-serif;color:#23262A;}
a{color:#4F7A2E;text-decoration:none}
a:hover{color:#23262A}

@keyframes heroDrift{0%,100%{transform:translate(0,0)}50%{transform:translate(-40px,30px)}}
@keyframes heroPulse{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes partnerMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

.hero-track{display:flex;width:300%;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.hero-slide{flex:0 0 33.3334%;box-sizing:border-box}

.dot{width:9px;height:9px;border-radius:50%;cursor:pointer;background:rgba(35,38,42,0.18)}
.dot.active{background:#4F7A2E}

.svc-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.svc-card:hover{transform:translateY(-4px);box-shadow:0 10px 20px rgba(35,38,42,0.06);border-color:#2E9E9E}

.cta-btn{transition:transform .2s ease}
.cta-btn:hover{transform:translateY(-2px)}

.benefit-card{transition:background .28s ease,border-color .28s ease}
.benefit-card:hover{background:rgba(255,255,255,0.09);border-color:#8CC63F}

.drop-wrap{position:relative}
.drop-panel{position:absolute;top:22px;left:0;padding-top:14px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s ease,visibility .2s ease;z-index:60}
.drop-wrap.open .drop-panel{opacity:1;visibility:visible;transform:translateY(0)}
.drop-wrap.open .arrow{transform:rotate(180deg)}
.arrow{display:inline-block;transition:transform .18s ease}
.drop-item{transition:background .2s ease}
.drop-item:hover{background:#EAF3E4}

.hero-nav-btn{transition:background .2s ease}
.hero-nav-btn:hover{background:rgba(255,255,255,0.2)}

.hero-badge-dot{animation:heroPulse 2s ease-in-out infinite}
.hero-float{animation:heroFloat 5s ease-in-out infinite}
.hero-float-rev{animation:heroFloat 5s ease-in-out infinite reverse}
.hero-drift-bg{animation:heroDrift 12s ease-in-out infinite}
.marquee-track{animation:partnerMarquee 22s linear infinite}

.solution-card{transition:transform .3s ease,box-shadow .3s ease}
.solution-card:hover{transform:translateY(-6px);box-shadow:0 16px 30px rgba(35,38,42,0.08)}

.gallery-item{transition:transform .3s ease,box-shadow .3s ease}
.gallery-item:hover{transform:translateY(-6px);box-shadow:0 16px 30px rgba(35,38,42,0.12)}

@keyframes careersFadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.careers-card{animation:careersFadeUp .6s ease both;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}
.careers-card:hover{transform:translateY(-12px);box-shadow:0 20px 36px rgba(35,38,42,0.12)}

@keyframes benefitFadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.benefit-card-light{animation:benefitFadeUp .6s ease both;transition:transform .3s ease}
.benefit-card-light:hover{transform:translateY(-8px)}
.benefit-card-light .benefit-img{transition:transform .4s ease}
.benefit-card-light:hover .benefit-img{transform:scale(1.06)}
.benefit-card-light .benefit-title{transition:color .25s ease}
.benefit-card-light:hover .benefit-title{color:#2E9E9E}

@keyframes newsFadeIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.news-row{animation:newsFadeIn .5s ease both;transition:background .25s ease,transform .25s ease;border-radius:14px}
.news-row:hover{background:#F7FAF6;transform:translateX(4px)}
.news-date{transition:color .25s ease,transform .25s ease}
.news-row:hover .news-date{color:#2E9E9E;transform:scale(1.05)}

.mobile-menu{display:none}
.mobile-menu.open{display:flex}
.hamburger{display:none}

@media (max-width: 1023px){
  .nav-links{display:none}
  .hamburger{display:flex}
}
@media (max-width: 767px){
  .hero-heading{font-size:32px !important;line-height:1.2 !important}
  .hero-sub{font-size:14px !important}
}
