:root{
  --ink:#13261d;--ink2:#1c3428;--green:#2f6c3b;--leaf:#79b82e;--lime:#b7dd54;
  --cream:#f4f3ea;--paper:#fbfbf6;--muted:#667269;--line:#dfe3d8;--white:#fff;
  --shadow:0 24px 70px rgba(14,37,25,.13);--radius:28px;
  --header-h:88px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:90px;overflow-x:hidden}
body{margin:0;min-width:0;max-width:100%;overflow-x:hidden;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;width:100%;max-width:100%;height:auto}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
button{font:inherit;-webkit-tap-highlight-color:transparent}
.container{width:min(1180px,calc(100% - 48px));margin-inline:auto;min-width:0}
.section{padding:120px 0}

.site-header{position:fixed;z-index:50;top:0;left:0;right:0;min-height:var(--header-h);display:flex;align-items:center;justify-content:space-between;padding:env(safe-area-inset-top,0) max(28px,calc((100vw - 1180px)/2)) 0;transition:height .3s,background .3s,box-shadow .3s;color:#fff}
.site-header.scrolled{min-height:76px;background:rgba(251,251,246,.96);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 1px 0 rgba(19,38,29,.08);color:var(--ink)}
.brand{display:flex;align-items:center;gap:12px;z-index:3;min-width:0}
.brand-mark{width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);overflow:hidden;padding:3px}
.brand-mark img{width:100%;height:100%;object-fit:contain}
.brand-copy{display:flex;flex-direction:column;line-height:1;min-width:0}
.brand-copy strong{font:800 22px/1 'Manrope',Arial,sans-serif;letter-spacing:.08em}
.brand-copy small{text-transform:uppercase;letter-spacing:.12em;font-size:9px;margin-top:5px;font-weight:700;white-space:nowrap}
.site-header:not(.scrolled) .brand-copy{color:#fff}
.nav{display:flex;align-items:center;gap:32px;color:white;font-size:14px;font-weight:600}
.nav a{position:relative}
.nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:.25s}
.nav>a:hover:after{right:0}
.site-header.scrolled .nav{color:var(--ink)}
.nav-cta{padding:11px 18px;border:1px solid rgba(255,255,255,.5);border-radius:999px}
.scrolled .nav-cta{border-color:var(--ink)}
.menu-toggle{display:none}

.hero{min-height:790px;height:96vh;height:96svh;position:relative;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#203b2b}
.hero-media{position:absolute;inset:0;background:url('../images/hero.jpg') center 62%/cover no-repeat;transform:scale(1.02)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,18,.82) 0%,rgba(10,30,20,.58) 48%,rgba(10,30,20,.12) 80%),linear-gradient(0deg,rgba(7,22,14,.42),transparent 55%)}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px;align-items:end;padding-bottom:100px;min-width:0}
.hero-copy{max-width:800px;min-width:0}
.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;margin:0 0 24px}
.eyebrow span{width:34px;height:1px;background:var(--leaf);flex:0 0 34px}
.eyebrow.light{color:#e9efdf}.eyebrow.light span{background:var(--lime)}
h1,h2,h3{font-family:'Manrope',Arial,sans-serif;margin:0;letter-spacing:-.04em;overflow-wrap:break-word}
h1{font-size:clamp(64px,7.2vw,108px);line-height:.93;font-weight:700;max-width:900px}
h1 em,h2 em{font-style:normal;color:var(--lime)}
.hero-lead{font-size:18px;max-width:680px;color:rgba(255,255,255,.83);margin:32px 0 34px}
.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:14px 22px;border-radius:999px;font-size:14px;font-weight:700;transition:.25s;touch-action:manipulation}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--lime);color:var(--ink)}
.btn-ghost{border:1px solid rgba(255,255,255,.42);color:white}
.hero-card{border:1px solid rgba(255,255,255,.3);border-radius:24px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:rgba(255,255,255,.08);overflow:hidden}
.hero-card-top{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.16)}
.hero-card-top span{font-size:12px;text-transform:uppercase;letter-spacing:.15em}.hero-card-top strong{font:700 22px 'Manrope',Arial,sans-serif}
.hero-card-bottom{padding:24px 22px}.hero-card-bottom p{margin:0;color:rgba(255,255,255,.7);font-size:13px}
.hero-card-bottom>strong{display:block;font:700 43px 'Manrope',Arial,sans-serif;letter-spacing:-.05em;margin:4px 0 2px}.hero-card-bottom>strong small{font-size:17px}.hero-card-bottom>span{font-size:12px;color:rgba(255,255,255,.65)}
.scroll-note{position:absolute;left:max(28px,calc((100vw - 1180px)/2));bottom:29px;display:flex;align-items:center;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.2em}.scroll-note i{display:block;width:60px;height:1px;background:rgba(255,255,255,.5)}

.intro-grid{display:grid;grid-template-columns:190px minmax(0,1fr);gap:70px}.section-kicker{display:flex;gap:12px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--muted)}.section-kicker span{color:var(--leaf)}.section-kicker p{margin:0}
.intro-copy h2,.section-head h2,.growth-copy h2,.feature-copy h2,.contact-main h2{font-size:clamp(42px,5vw,72px);line-height:1.03;font-weight:650}.intro-copy h2 em,.section-head h2 em,.growth-copy h2 em{color:var(--green);font-style:normal}
.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:42px;color:var(--muted);font-size:16px}.intro-columns p{margin:0}

.statement{padding:30px 0 120px}.statement-grid{display:grid;grid-template-columns:1.08fr .92fr;min-height:620px}.statement-image{border-radius:var(--radius) 0 0 var(--radius);overflow:hidden;min-width:0}.statement-image img{height:100%;object-fit:cover}.statement-panel{background:var(--cream);padding:70px;border-radius:0 var(--radius) var(--radius) 0;display:flex;flex-direction:column;justify-content:center;min-width:0}.purpose-item small{text-transform:uppercase;letter-spacing:.14em;color:var(--green);font-weight:800}.purpose-item h3{font-size:30px;line-height:1.22;font-weight:600;margin-top:12px}.purpose-rule{height:1px;background:var(--line);margin:42px 0}

.section-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:end;gap:80px;margin-bottom:56px}.section-head>p{color:var(--muted);margin:0 0 7px}
.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.solution-card{padding:46px 34px 50px;border-right:1px solid var(--line);position:relative;min-width:0}.solution-card:last-child{border-right:0}.solution-card .num{position:absolute;right:28px;top:25px;font-size:11px;color:#8c978f}.solution-card .icon{font-size:38px;color:var(--green);height:58px}.solution-card h3{font-size:25px;margin:22px 0 14px}.solution-card p{color:var(--muted);margin:0;font-size:15px}

.feature-band{background:var(--ink);color:white;padding:115px 0}.feature-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:90px;align-items:center}.feature-copy h2 em,.contact-main h2 em{color:var(--lime);font-style:normal}.feature-copy>p:not(.eyebrow){color:rgba(255,255,255,.67);max-width:600px;font-size:17px;margin:26px 0 34px}.values{display:flex;flex-wrap:wrap;gap:10px}.values span{border:1px solid rgba(255,255,255,.19);padding:8px 13px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.09em}.feature-photo{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);min-width:0}.feature-photo img{height:560px;object-fit:cover}.photo-tag{position:absolute;right:18px;bottom:18px;background:var(--lime);color:var(--ink);padding:11px 14px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}

.gallery-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr) minmax(0,.75fr);grid-auto-rows:300px;gap:14px}.gallery-grid figure{margin:0;position:relative;overflow:hidden;border-radius:18px;background:#dde3d9;min-width:0}.gallery-grid figure.g-large{grid-row:span 2}.gallery-grid figure.g-wide{grid-column:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.6s}.gallery-grid figure:hover img{transform:scale(1.04)}.gallery-grid figcaption{position:absolute;left:15px;bottom:15px;max-width:calc(100% - 30px);background:rgba(251,251,246,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:7px 11px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}

.numbers{padding-top:35px}.numbers-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.numbers-grid div{padding:35px 26px;border-right:1px solid var(--line);min-width:0}.numbers-grid div:last-child{border-right:0}.numbers-grid strong{display:block;font:700 31px 'Manrope',Arial,sans-serif;letter-spacing:-.04em;overflow-wrap:anywhere}.numbers-grid strong small{font-size:16px}.numbers-grid span{display:block;color:var(--muted);font-size:12px;margin-top:3px}

.growth-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px;align-items:center}.growth-image{border-radius:var(--radius);overflow:hidden;min-width:0}.growth-image img{height:590px;object-fit:cover}.growth-copy p:not(.eyebrow){color:var(--muted);font-size:17px;margin:26px 0}.text-link{display:inline-flex;gap:42px;align-items:center;padding-bottom:7px;border-bottom:1px solid var(--ink);font-weight:700}

.contact{background:#234331;color:white;padding:115px 0}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:100px;align-items:center}.contact-main>p:not(.eyebrow){color:rgba(255,255,255,.68);max-width:700px;font-size:17px;margin:28px 0 32px}.btn-lime{background:var(--lime);color:var(--ink)}.btn-outline-light{border:1px solid rgba(255,255,255,.28)}.contact-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:30px;min-width:0}.contact-card img{width:84px;height:84px;object-fit:contain;background:white;border-radius:50%;padding:6px;margin-bottom:35px}.contact-card div{padding:19px 0;border-top:1px solid rgba(255,255,255,.13)}.contact-card small{display:block;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.12em;font-size:9px;margin-bottom:7px}.contact-card strong{font-size:15px}

footer{background:#13271d;color:white;padding:55px 0 30px;padding-bottom:max(30px,env(safe-area-inset-bottom,0))}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.footer-brand .brand-copy{color:white}.footer-grid>p{color:rgba(255,255,255,.55);font-size:13px;margin:0}.footer-links{display:flex;justify-content:flex-end;gap:25px;font-size:12px}.copyright{text-align:right}

/* Content is visible by default. Animation is enabled only when JavaScript is running. */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.js .reveal.show{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}

@media(max-width:980px){
  :root{--header-h:78px}
  .site-header{min-height:var(--header-h);padding-left:22px;padding-right:22px}
  .site-header.scrolled{min-height:72px}
  .nav{position:fixed;z-index:2;inset:0;background:var(--ink);color:#fff!important;flex-direction:column;align-items:flex-start;justify-content:center;gap:24px;padding:calc(90px + env(safe-area-inset-top,0)) max(24px,8vw) max(36px,env(safe-area-inset-bottom,0));font:700 clamp(28px,6vw,42px)/1.15 'Manrope',Arial,sans-serif;transform:translate3d(0,-102%,0);transition:transform .35s ease;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .nav.open{transform:translate3d(0,0,0)}
  .nav>a:not(.nav-cta):after{display:none}
  .nav-cta{margin-top:8px;font:700 15px 'DM Sans',Arial,sans-serif;border-color:rgba(255,255,255,.35);padding:14px 20px}
  .menu-toggle{display:grid;gap:6px;width:46px;height:46px;place-content:center;border:0;border-radius:50%;background:rgba(255,255,255,.14);z-index:4;cursor:pointer;touch-action:manipulation}
  .menu-toggle span{display:block;width:21px;height:2px;background:currentColor;transition:transform .25s ease,width .25s ease}
  .site-header.scrolled .menu-toggle{background:var(--ink);color:white}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .site-header.menu-open{color:white}
  .site-header.menu-open .brand-copy{color:white}
  .site-header.menu-open .menu-toggle{background:rgba(255,255,255,.14);color:white}
  .hero{height:auto;min-height:820px;min-height:100svh;align-items:flex-end;padding-top:calc(var(--header-h) + env(safe-area-inset-top,0))}
  .hero-grid{grid-template-columns:1fr;padding-bottom:92px}
  .hero-card{display:none}
  .intro-grid{grid-template-columns:1fr;gap:34px}
  .statement-grid,.feature-grid,.growth-grid,.contact-grid{grid-template-columns:1fr}
  .statement-image{border-radius:var(--radius) var(--radius) 0 0;min-height:430px}
  .statement-panel{border-radius:0 0 var(--radius) var(--radius)}
  .solution-grid{grid-template-columns:1fr}
  .solution-card{border-right:0;border-bottom:1px solid var(--line)}.solution-card:last-child{border-bottom:0}
  .section-head{grid-template-columns:1fr;gap:25px}
  .gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid figure.g-large{grid-row:span 1}.gallery-grid figure.g-wide{grid-column:span 1}
  .numbers-grid{grid-template-columns:1fr 1fr}
  .contact-grid{gap:50px}.contact-card{max-width:500px;width:100%}
  .footer-grid{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.copyright{text-align:left}
}

@media(max-width:640px){
  :root{--radius:22px;--header-h:72px}
  .container{width:calc(100% - 32px)}
  .section{padding:78px 0}
  .site-header{min-height:var(--header-h);padding-left:max(16px,env(safe-area-inset-left,0));padding-right:max(16px,env(safe-area-inset-right,0))}
  .site-header.scrolled{min-height:68px}
  .brand{gap:9px}.brand-mark{width:42px;height:42px;flex-basis:42px}.brand-copy strong{font-size:18px}.brand-copy small{font-size:8px;letter-spacing:.09em}
  .menu-toggle{width:44px;height:44px;flex:0 0 44px}
  .nav{padding-left:24px;padding-right:24px;gap:22px;font-size:clamp(28px,9vw,38px)}
  .hero{min-height:700px;min-height:100svh}
  .hero-media{background-position:58% center;transform:none}
  .hero-shade{background:linear-gradient(90deg,rgba(9,28,18,.86) 0%,rgba(10,30,20,.66) 68%,rgba(10,30,20,.26) 100%),linear-gradient(0deg,rgba(7,22,14,.58),transparent 62%)}
  .hero-grid{padding-top:56px;padding-bottom:80px}
  .hero-copy h1{font-size:clamp(43px,14vw,58px);line-height:.96;letter-spacing:-.05em}
  .hero-lead{font-size:16px;line-height:1.55;margin:24px 0 28px;max-width:32rem}
  .hero-actions,.contact-actions{display:grid;grid-template-columns:1fr;width:100%}.hero-actions .btn,.contact-actions .btn{width:100%;min-height:50px;text-align:center}
  .scroll-note{left:16px;bottom:24px}.scroll-note i{width:42px}
  .eyebrow{font-size:10px;margin-bottom:18px;letter-spacing:.14em}.eyebrow span{width:26px;flex-basis:26px}
  .intro-copy h2,.section-head h2,.growth-copy h2,.feature-copy h2,.contact-main h2{font-size:clamp(36px,11.5vw,50px);line-height:1.04}
  .intro-columns{grid-template-columns:1fr;gap:18px;margin-top:28px;font-size:15px}
  .statement{padding:0 0 78px}.statement-grid{min-height:0}.statement-image{min-height:0;aspect-ratio:4/3}.statement-image img{height:100%}.statement-panel{padding:34px 24px}.purpose-item h3{font-size:23px;line-height:1.28}.purpose-rule{margin:30px 0}
  .section-head{margin-bottom:36px}.section-head>p{font-size:15px}
  .solution-card{padding:36px 22px 38px}.solution-card h3{font-size:23px}.solution-card .num{right:22px}.solution-card p{font-size:14.5px}
  .feature-band{padding:78px 0}.feature-grid{gap:38px}.feature-copy>p:not(.eyebrow){font-size:15.5px}.feature-photo{aspect-ratio:4/5}.feature-photo img{height:100%;object-fit:cover}.photo-tag{right:12px;bottom:12px;font-size:9px}
  .gallery-grid{grid-template-columns:1fr;grid-auto-rows:auto;gap:12px}.gallery-grid figure,.gallery-grid figure.g-large,.gallery-grid figure.g-wide{grid-column:auto;grid-row:auto;aspect-ratio:4/3}.gallery-grid figure:first-child{aspect-ratio:5/4}.gallery-grid img{height:100%}.gallery-grid figcaption{font-size:9px;left:12px;bottom:12px;max-width:calc(100% - 24px)}
  .numbers{padding-top:8px}.numbers-grid{grid-template-columns:1fr}.numbers-grid div{padding:24px 18px;border-right:0;border-bottom:1px solid var(--line)}.numbers-grid div:last-child{border-bottom:0}.numbers-grid strong{font-size:29px}
  .growth-grid{gap:38px}.growth-image{aspect-ratio:4/3}.growth-image img{height:100%}.growth-copy p:not(.eyebrow){font-size:15.5px}.text-link{gap:24px}
  .contact{padding:78px 0}.contact-grid{gap:38px}.contact-main>p:not(.eyebrow){font-size:15.5px;margin:22px 0 28px}.contact-card{padding:24px}.contact-card img{width:72px;height:72px;margin-bottom:24px}.contact-card strong{font-size:14px;overflow-wrap:anywhere}
  footer{padding-top:44px}.footer-grid{gap:25px}.footer-links{flex-wrap:wrap;gap:14px 20px}.copyright{text-align:left}
}

@media(max-width:360px){
  .container{width:calc(100% - 24px)}
  .site-header{padding-left:12px;padding-right:12px}.brand-copy small{display:none}
  .hero-copy h1{font-size:42px}.hero-lead{font-size:15px}
  .statement-panel,.contact-card{padding-left:20px;padding-right:20px}
}

@media(max-height:520px) and (orientation:landscape) and (max-width:980px){
  .hero{min-height:620px}.hero-grid{padding-top:110px;padding-bottom:55px}.scroll-note{display:none}
  .nav{justify-content:flex-start;padding-top:100px;font-size:28px;gap:16px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .js .reveal{opacity:1;transform:none}
}
