:root{--black:#fff;--dark:#f3f5f6;--dark-2:#fff;--white:#3B424A;--grey:#535d66;--grey-2:#626b74;--line:rgba(59,66,74,.16);--gold:#B5D334;--gold-light:#B5D334;--accent-text:#3B424A}
body{background:#fff;color:#3b424a}
header,header.scrolled{background:rgba(255,255,255,.97);box-shadow:0 1px 0 var(--line)}
.nav,header.scrolled .nav{padding:16px 0;gap:24px}
.brand{min-width:0;flex-shrink:0}
.brand-logo{width:290px;height:auto;object-fit:contain}
.nav-links{gap:22px}.nav-links a{font-size:14px;letter-spacing:.05em}
.nav-links a:hover,.nav-links a.active{color:#3b424a}
.nav-cta{white-space:nowrap;padding:12px 18px}
.btn{font-size:14px;letter-spacing:.08em;color:#3B424A}
.btn-ghost{color:#3b424a;border-color:#899198;background:rgba(255,255,255,.45)}
.btn-ghost:hover{color:#3B424A}
.hero-overlay{background:linear-gradient(100deg,rgba(255,255,255,.98) 20%,rgba(255,255,255,.91) 44%,rgba(255,255,255,.30) 80%)}
.hero-overlay::after{background:linear-gradient(to top,#fff,transparent)}
.hero-bg,.page-hero-bg{filter:saturate(.85)}
.hero p,.page-hero p.lead{color:#414b55}
.hero h1 .gold,.page-hero h1 em{color:var(--accent-text)}
.hero-meta{background:rgba(255,255,255,.88)}
.hero-meta a:hover{color:var(--accent-text);background:#B5D334}
.eyebrow,.service-more,.section-head h2 em,.about-copy h2 em,.contact-head h2 em,.detail-main h2 em,.crumbs span,.crumbs a:hover,.aside-nav a:hover,.footer-bottom .tagline,.footer-grid ul a:hover{color:var(--accent-text)}
.eyebrow{font-size:14px;letter-spacing:.18em}
.about-points li,.feat-list li,.area-chips span{color:#3b424a}
.about-points li svg,.feat-list li svg,.area-chips svg,.why-item svg,.c-card .ic svg{color:var(--accent-text)}
.about-badge{color:#3B424A}.about-badge small{font-size:14px}
.stat span,.c-card small{font-size:14px;letter-spacing:.12em}
.service-card,.c-card,.aside-box{box-shadow:0 8px 32px rgba(59,66,74,.045)}
.service-card:hover,.c-card:hover,.feat-list li:hover{border-color:#B5D334}
.service-media::after{background:linear-gradient(to top,rgba(255,255,255,.28),transparent 40%)}
.service-media img{filter:none}
.service-num{background:#fff;color:var(--accent-text);border-color:#B5D334}
.service-body p,.why-item p,.feat-list li,.aside-cta p{font-size:16px}
.why::before{opacity:.025}.why-item{background:#f7f8f9}.why-item:hover{background:#B5D334}
.cta-inner::before{background:linear-gradient(100deg,rgba(255,255,255,.96),rgba(255,255,255,.84))}
.cta-flex h2 em{color:var(--accent-text)}
.area-chips span{background:#fff}.area-chips span:hover{color:var(--accent-text);background:#B5D334}
.areas-media::after{border-color:#B5D334}
.c-card .ic{background:#B5D334;border-color:#B5D334}
.aside-cta{background:#B5D334;border-color:#B5D334}
.page-hero::after{background:linear-gradient(to top,#fff 4%,rgba(255,255,255,.85) 50%,rgba(255,255,255,.5))}
.crumbs{flex-wrap:wrap;font-size:14px;letter-spacing:.1em}
.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1.25fr;gap:32px}.footer-grid>*{min-width:0}
.footer-brand .brand{width:100%}.footer-brand .brand-logo{width:100%;max-width:340px}
.footer-bottom .tagline{font-size:12px}
#preloader{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;transition:opacity .35s ease,visibility .35s;animation:loaderFallback .35s 4s forwards}
#preloader.done{opacity:0;visibility:hidden;pointer-events:none}
#preloader .pre-logo{width:min(780px,86vw);height:auto;opacity:1;animation:none}
.pre-bar{width:180px;height:3px;background:#edf0e5;margin-top:30px;overflow:hidden;position:relative}
.pre-bar::after{content:'';position:absolute;inset:0;background:#B5D334;transform:translateX(-100%);animation:cnrProgress 2.2s ease forwards}
@keyframes cnrProgress{to{transform:translateX(0)}}
@keyframes loaderFallback{to{opacity:0;visibility:hidden;pointer-events:none}}
:focus-visible{outline:3px solid #3B424A;outline-offset:5px}
section[id]{scroll-margin-top:90px}
@media(max-width:1100px){
 .nav-links{position:fixed;inset:0;background:#fff;flex-direction:column;justify-content:center;gap:30px;transform:translateY(-100%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .5s var(--ease),opacity .4s,visibility .4s;z-index:940}
 .nav-links.open{transform:none;opacity:1;visibility:visible;pointer-events:auto}
 .nav-links a{font-size:1.15rem}.nav-cta{display:none}.burger{display:flex}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .brand-logo{width:min(280px,72vw)}.nav,header.scrolled .nav{padding:14px 0;gap:12px}
 .hero-overlay{background:linear-gradient(100deg,rgba(255,255,255,.96),rgba(255,255,255,.78))}
 .hero-content{padding-top:150px}.footer-grid{grid-template-columns:1fr}
 .footer-brand .brand-logo{width:300px;max-width:100%}
 .eyebrow{letter-spacing:.1em}.hero h1{font-size:clamp(2.8rem,11vw,4.5rem)}
}
@media(prefers-reduced-motion:reduce){#preloader{display:none}.hero p,.hero-actions,.page-hero h1,.page-hero p.lead,.crumbs{opacity:1;transform:none}}

/* Supplied brand palette: exact lime and slate, with white as the base. */
header,header.scrolled{border-bottom:3px solid #B5D334}
.btn,.btn-ghost:hover{background:#B5D334;color:#3B424A;border-color:#B5D334}
.btn:hover{box-shadow:inset 0 0 0 2px #3B424A}
.btn-ghost{background:#fff;color:#3B424A;border-color:#3B424A}
.hero h1 .gold{background:#B5D334;color:#3B424A;padding:0 .07em .035em}
.page-hero h1 em{background:#B5D334;color:#3B424A;padding:0 .07em}
.hero-meta{background:#3B424A;border-color:#3B424A}
.hero-meta a{color:#fff;border-color:rgba(255,255,255,.2)}
.hero-meta a:hover{background:#B5D334;color:#3B424A}
.marquee{background:#B5D334;border-color:#B5D334}
.marquee-track span,.marquee-track span::after{color:#3B424A}
.stats{background:#B5D334;border-color:#B5D334}
.stat strong,.stat strong i,.stat span{color:#3B424A}
.section-head h2 em,.about-copy h2 em,.contact-head h2 em,.detail-main h2 em{color:#3B424A;text-decoration:underline;text-decoration-color:#B5D334;text-decoration-thickness:.12em;text-underline-offset:.1em}
.about-badge,.service-num{background:#B5D334;color:#3B424A;border-color:#B5D334}
.service-line{height:4px;width:66px}
.service-card:hover,.c-card:hover,.feat-list li:hover{border-color:#B5D334}
.service-more{background:#B5D334;color:#3B424A;padding:8px 14px}
.why-item{border-top:4px solid #B5D334;background:#fff}
.why-item:hover{background:#fff;box-shadow:inset 0 0 0 2px #B5D334}
.why-item svg{background:#B5D334;color:#3B424A;box-sizing:content-box;padding:12px}
.cta-inner{background-color:#3B424A}
.cta-inner::before{background:#3B424A}
.cta-flex h2{color:#fff}.cta-flex h2 em{color:#B5D334}.cta-flex p{color:#fff}
.cta-flex .btn:focus-visible{outline-color:#B5D334}
.area-chips span{border-left:5px solid #B5D334}
.area-chips span:hover{background:#B5D334;color:#3B424A}
.c-card .ic{background:#B5D334;border-color:#B5D334}
.c-card .ic svg{color:#3B424A}
.contact{border-top:6px solid #B5D334;background:#f3f5f6}
.aside-cta{background:#B5D334;border-color:#B5D334}
.aside-cta p,.aside-cta h3{color:#3B424A}
.aside-cta h3::after{background:#3B424A}
.aside-cta .btn:not(.btn-wa){background:#3B424A;color:#fff;border-color:#3B424A}
.aside-cta .btn:not(.btn-wa)::before{background:#3B424A}
.aside-cta :focus-visible{outline-color:#3B424A}
footer{border-top:6px solid #B5D334}
.footer-bottom{background:#B5D334;border-color:#B5D334}
.footer-bottom p,.footer-bottom .tagline{color:#3B424A}
.pre-bar{height:4px;background:#3B424A}
:focus-visible{outline-color:#3B424A}
