:root {
  --green: #0b6b3a;
  --green-dark: #064d2c;
  --green-deep: #032f1c;
  --green-soft: #eaf6ef;
  --ink: #17201b;
  --muted: #66736c;
  --line: #dce6e0;
  --paper: #ffffff;
  --soft: #f5f8f6;
  --shadow: 0 18px 50px rgba(8, 45, 27, .10);
  --radius: 20px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { font-family: Inter, system-ui, sans-serif; color: var(--ink); background: var(--paper); line-height: 1.65; }
body, button, input, textarea, select { font: inherit; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.container { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.site-header { position: fixed; inset: 0 0 auto; z-index: 50; color: white; transition: .3s; }
.site-header.scrolled { background: rgba(3, 47, 28, .96); box-shadow: 0 8px 30px rgba(0,0,0,.12); backdrop-filter: blur(12px); }
.nav-wrap { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.brand { display: inline-flex; align-items: center; gap: 11px; color: white; }
.brand > span:last-child { display: flex; flex-direction: column; line-height: 1; }
.brand strong { font-size: 15px; letter-spacing: .08em; }
.brand small { margin-top: 5px; font-size: 9px; letter-spacing: .35em; opacity: .75; }
.brand-mark { width: 39px; height: 39px; border: 2px solid currentColor; border-radius: 11px; position: relative; transform: rotate(-7deg); }
.brand-mark:before, .brand-mark:after, .brand-mark span { content:""; position:absolute; height:2px; background: currentColor; left:6px; right:6px; transform: rotate(-23deg); }
.brand-mark:before { top:11px; }.brand-mark span { top:18px; }.brand-mark:after { top:25px; }
.main-nav { display: flex; align-items: center; gap: 25px; font-size: 13px; font-weight: 600; }
.main-nav a { opacity: .9; transition: .2s; }
.main-nav a:hover { opacity: 1; color: #bce7cd; }
.main-nav .nav-cta { background: white; color: var(--green-dark); padding: 12px 17px; border-radius: 999px; opacity: 1; }
.menu-toggle { display:none; border:0; background:none; color:white; width:42px; height:42px; }
.menu-toggle span { display:block; height:2px; background:currentColor; width:23px; margin:5px auto; }
.hero { min-height: 760px; display:grid; align-items:center; position:relative; color:white; overflow:hidden; background: var(--green-deep); }
.hero-bg { position:absolute; inset:0; background:
  linear-gradient(90deg, rgba(2,31,18,.93) 0%, rgba(2,31,18,.78) 46%, rgba(2,31,18,.35) 100%),
  radial-gradient(circle at 75% 30%, rgba(58, 145, 91, .65), transparent 35%),
  linear-gradient(135deg, #0a5e35, #021e12); }
.hero-bg:after { content:""; position:absolute; width:620px; height:620px; border:1px solid rgba(255,255,255,.13); border-radius:50%; right:-130px; top:80px; box-shadow:0 0 0 70px rgba(255,255,255,.025), 0 0 0 140px rgba(255,255,255,.018); }
.hero-content { position:relative; z-index:1; padding-top: 100px; max-width: 780px; }
.eyebrow { color:#4da974; font-size:11px; font-weight:800; letter-spacing:.22em; margin-bottom:13px; }
.hero .eyebrow { color:#bce7cd; }
.hero h1 { font-size:clamp(42px, 6vw, 76px); line-height:1.04; letter-spacing:-.045em; max-width:850px; margin-bottom:24px; }
.hero-text { max-width:650px; font-size:18px; color:#d9e8df; margin-bottom:32px; }
.hero-actions { display:flex; gap:13px; flex-wrap:wrap; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; border:0; border-radius:999px; padding:14px 21px; font-weight:800; font-size:13px; cursor:pointer; transition:.25s; }
.btn:hover { transform:translateY(-2px); }
.btn-primary { background:var(--green); color:white; box-shadow:0 10px 25px rgba(11,107,58,.25); }
.btn-light-outline { border:1px solid rgba(255,255,255,.45); color:white; background:rgba(255,255,255,.05); }
.btn-light { background:white; color:var(--green-dark); }
.btn-dark { background:var(--ink); color:white; margin-top:18px; font-size:12px; padding:11px 16px; }
.full { width:100%; }
.hero-note { margin-top:42px; font-size:12px; color:#bad0c3; display:flex; align-items:center; gap:9px; }
.pulse-dot { width:8px; height:8px; background:#55bd7c; border-radius:50%; box-shadow:0 0 0 6px rgba(85,189,124,.12); }
.trust-strip { background:var(--green); color:white; }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); padding:27px 0; }
.trust-grid div { display:flex; flex-direction:column; align-items:center; border-right:1px solid rgba(255,255,255,.18); }
.trust-grid div:last-child { border:0; }
.trust-grid strong { font-size:27px; line-height:1.1; }.trust-grid span { font-size:11px; opacity:.75; margin-top:5px; }
.section { padding:100px 0; }
.section-soft { background:var(--soft); }
.section-heading { max-width:700px; margin-bottom:45px; }
.section-heading.compact { margin-bottom:34px; }
.section-heading h2, .about-copy h2, .environment-copy h2, .coverage-intro h2, .contact-section h2 { font-size:clamp(32px, 4.4vw, 52px); line-height:1.12; letter-spacing:-.04em; margin-bottom:16px; }
.section-heading h2 span, .coverage-intro h2 span, .environment-copy h2 span { color:var(--green); }
.section-heading > p:last-child, .coverage-intro p, .contact-lead { color:var(--muted); }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.service-card { border:1px solid var(--line); border-radius:var(--radius); padding:30px; background:white; min-height:280px; transition:.25s; }
.service-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.service-card.featured { background:var(--green-dark); color:white; border-color:var(--green-dark); }
.service-card.featured p { color:#c5dbce; }.service-card.featured a { color:#bce7cd; }
.icon-box { width:46px; height:46px; border-radius:13px; background:var(--green-soft); color:var(--green); display:grid; place-items:center; font-weight:800; margin-bottom:25px; }
.featured .icon-box { background:rgba(255,255,255,.12); color:white; }
.service-card h3 { font-size:21px; margin-bottom:9px; }.service-card p { color:var(--muted); font-size:14px; margin-bottom:22px; }.service-card a { color:var(--green); font-size:12px; font-weight:800; }
.split { display:grid; grid-template-columns:1fr 1fr; gap:75px; align-items:center; }
.image-card { min-height:520px; border-radius:28px; overflow:hidden; box-shadow:var(--shadow); }
.image-placeholder { height:100%; min-height:520px; padding:40px; display:flex; flex-direction:column; justify-content:flex-end; color:white; background:
linear-gradient(180deg, rgba(5,58,34,.05), rgba(3,38,23,.94)),
linear-gradient(135deg, #397a56 0%, #0a4e2d 48%, #061d12 100%); position:relative; }
.image-placeholder:before { content:""; position:absolute; width:280px; height:280px; border:1px solid rgba(255,255,255,.18); border-radius:50%; right:-50px; top:50px; box-shadow:0 0 0 40px rgba(255,255,255,.03), 0 0 0 80px rgba(255,255,255,.025); }
.visual-label { position:relative; font-size:10px; letter-spacing:.2em; color:#bce7cd; margin-bottom:10px; }.image-placeholder strong { position:relative; font-size:36px; line-height:1.1; letter-spacing:-.03em; }.image-placeholder small { position:relative; margin-top:12px; color:#c3d4ca; font-size:11px; }
.about-copy > p { color:var(--muted); margin-bottom:16px; }
.value-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin:28px 0; }
.value-grid div { border-top:1px solid var(--line); padding-top:12px; }.value-grid b { display:block; font-size:13px; }.value-grid span { font-size:11px; color:var(--muted); }
.text-link { color:var(--green); font-size:12px; font-weight:800; }
.foundation-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.foundation-grid article { padding:25px; border:1px solid var(--line); border-radius:18px; background:white; }.foundation-grid span { color:var(--green); font-weight:800; font-size:11px; }.foundation-grid h3 { margin:8px 0; }.foundation-grid p { color:var(--muted); font-size:13px; }
.coverage-section { background:#f1f6f3; }
.coverage-intro { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:55px; }
.coverage-intro > div { max-width:690px; }
.route-map { display:grid; grid-template-columns:repeat(6,1fr); position:relative; gap:12px; }
.route-line { position:absolute; left:7%; right:7%; top:32px; height:2px; background:#a8c9b6; }
.country { position:relative; z-index:1; display:flex; align-items:center; flex-direction:column; text-align:center; }
.country i { width:64px; height:64px; border-radius:50%; background:white; border:7px solid #d9eee1; display:grid; place-items:center; font-style:normal; color:var(--green); font-weight:900; font-size:12px; box-shadow:0 6px 18px rgba(11,107,58,.08); }
.country strong { margin-top:13px; font-size:13px; }.country small { color:var(--muted); font-size:10px; margin-top:2px; }
.environment { background:var(--green-deep); color:white; overflow:hidden; }
.environment-copy > p:not(.eyebrow) { color:#c3d4ca; margin-bottom:15px; max-width:570px; }
.environment-copy h2 span { color:#7bd49e; }
.eco-points { margin-top:30px; display:grid; gap:17px; }.eco-points div { display:grid; grid-template-columns:34px 1fr; column-gap:10px; border-top:1px solid rgba(255,255,255,.12); padding-top:14px; }.eco-points span { color:#76c998; font-size:11px; font-weight:800; }.eco-points b { font-size:13px; }.eco-points p { grid-column:2; color:#9fb7a8; font-size:11px; margin-top:1px; }
.eco-visual { min-height:480px; display:grid; place-items:center; position:relative; background:radial-gradient(circle, rgba(68,165,102,.25), transparent 56%); }
.leaf-orbit { width:360px; height:360px; border:1px solid rgba(132,213,160,.28); border-radius:50%; position:absolute; box-shadow:0 0 0 60px rgba(126,213,158,.025), 0 0 0 120px rgba(126,213,158,.018); }
.tree-symbol { font-size:125px; filter:drop-shadow(0 20px 30px rgba(0,0,0,.25)); }
.eco-badge { position:absolute; bottom:35px; right:30px; background:white; color:var(--green-dark); width:120px; height:120px; border-radius:50%; display:grid; place-content:center; text-align:center; box-shadow:0 15px 40px rgba(0,0,0,.22); }.eco-badge strong { font-size:32px; line-height:1; }.eco-badge span { font-size:9px; line-height:1.2; text-transform:uppercase; letter-spacing:.1em; margin-top:4px; }
.why-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }.why-grid div { padding:27px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.why-grid span { color:var(--green); font-size:10px; font-weight:800; }.why-grid h3 { font-size:16px; margin:9px 0 6px; }.why-grid p { color:var(--muted); font-size:12px; }
.quote-banner { background:var(--green); color:white; padding:62px 0; }.quote-banner-inner { display:flex; justify-content:space-between; align-items:center; gap:30px; }.quote-banner h2 { font-size:clamp(31px,4vw,48px); line-height:1.1; letter-spacing:-.04em; }.quote-banner p:not(.eyebrow) { color:#cce4d5; }
.contact-section { background:var(--soft); }.contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; align-items:start; }.contact-list { margin-top:32px; display:grid; gap:19px; }.contact-list > div { display:flex; gap:14px; }.contact-list > div > span { width:37px; height:37px; display:grid; place-items:center; background:white; color:var(--green); border-radius:10px; }.contact-list b { font-size:12px; }.contact-list p { color:var(--muted); font-size:11px; }
.form-card { background:white; padding:32px; border-radius:22px; box-shadow:var(--shadow); }.form-header { margin-bottom:25px; }.form-header h3 { font-size:23px; }.form-header p { color:var(--muted); font-size:12px; }.form-card form { display:grid; gap:15px; }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:13px; }.form-card label { display:grid; gap:6px; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }.form-card input,.form-card select,.form-card textarea { width:100%; border:1px solid var(--line); border-radius:11px; padding:12px 13px; outline:0; color:var(--ink); background:#fbfdfc; font-size:12px; text-transform:none; letter-spacing:0; resize:vertical; }.form-card input:focus,.form-card select:focus,.form-card textarea:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(11,107,58,.09); }.form-status { font-size:11px; min-height:18px; }
.map-placeholder { padding:70px 0; background:white; }.map-inner { display:grid; grid-template-columns:.7fr 1.3fr; gap:40px; align-items:center; }.map-inner h2 { font-size:36px; line-height:1.1; margin-bottom:10px; }.map-inner p:not(.eyebrow) { color:var(--muted); font-size:13px; }.map-box { min-height:260px; border-radius:20px; background:linear-gradient(135deg,#e6f2eb,#d8e9df); display:grid; place-content:center; text-align:center; color:var(--green-dark); border:1px dashed #9fc1ad; }.map-box span { display:block; font-weight:900; letter-spacing:.12em; font-size:13px; }.map-box small { font-size:10px; margin-top:5px; color:var(--muted); }
.site-footer { background:#061d12; color:#c6d5cc; padding-top:65px; }.footer-main { display:grid; grid-template-columns:1.6fr repeat(4,1fr); gap:35px; padding-bottom:50px; }.light-brand { margin-bottom:17px; }.footer-brand > p { max-width:280px; color:#82988b; font-size:11px; }.footer-main h4 { color:white; font-size:12px; margin-bottom:17px; }.footer-main > div:not(.footer-brand) { display:flex; flex-direction:column; gap:8px; }.footer-main a,.footer-main p { color:#82988b; font-size:11px; }.footer-main a:hover { color:#c9ebd6; }.socials { display:flex; gap:8px; margin-top:22px; }.socials a { width:31px; height:31px; border:1px solid #294638; border-radius:50%; display:grid; place-items:center; color:#b8cfc1; font-size:11px; }.footer-bottom { border-top:1px solid #1b3629; padding:18px 0; display:flex; justify-content:space-between; gap:20px; font-size:10px; color:#6e8578; }.footer-bottom a { color:#82988b; }
@media (max-width: 900px) {
  .main-nav { gap:14px; }.main-nav a { font-size:11px; }.split,.contact-grid,.map-inner { grid-template-columns:1fr; gap:45px; }.foundation-grid { grid-template-columns:1fr 1fr; }.service-grid { grid-template-columns:1fr; }.route-map { grid-template-columns:repeat(3,1fr); gap:30px; }.route-line { display:none; }.coverage-intro,.quote-banner-inner { align-items:flex-start; flex-direction:column; }.why-grid { grid-template-columns:1fr 1fr; }.footer-main { grid-template-columns:1.5fr 1fr 1fr; }.footer-main > div:last-child { grid-column:2; }
}
@media (max-width: 680px) {
  .container { width:min(100% - 28px, 1160px); }.nav-wrap { min-height:70px; }.menu-toggle { display:block; }.main-nav { display:none; position:absolute; left:14px; right:14px; top:66px; background:#053c24; border-radius:16px; padding:15px; flex-direction:column; align-items:stretch; box-shadow:var(--shadow); }.main-nav.open { display:flex; }.main-nav a { padding:10px 12px; }.main-nav .nav-cta { text-align:center; margin-top:5px; }.hero { min-height:680px; }.hero h1 { font-size:43px; }.hero-text { font-size:15px; }.trust-grid { grid-template-columns:1fr 1fr; gap:20px; }.trust-grid div:nth-child(2) { border:0; }.section { padding:72px 0; }.service-card { min-height:auto; }.value-grid,.form-row { grid-template-columns:1fr; }.image-card,.image-placeholder { min-height:390px; }.foundation-grid,.why-grid { grid-template-columns:1fr; }.route-map { grid-template-columns:1fr 1fr; }.country i { width:58px; height:58px; }.eco-visual { min-height:360px; }.leaf-orbit { width:260px; height:260px; }.tree-symbol { font-size:95px; }.contact-grid { gap:35px; }.form-card { padding:21px; }.footer-main { grid-template-columns:1fr 1fr; }.footer-brand { grid-column:1 / -1; }.footer-main > div:last-child { grid-column:auto; }.footer-bottom { flex-direction:column; }.hero-actions .btn { width:100%; }.quote-banner { padding:50px 0; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; }
}

/* Multi-page additions */
.inner-page .site-header { background: rgba(3,47,28,.94); }
.page-hero { padding: 165px 0 82px; color: white; background:
linear-gradient(110deg, rgba(3,47,28,.98), rgba(8,91,51,.90)),
radial-gradient(circle at 85% 20%, rgba(120,220,155,.22), transparent 35%); }
.page-hero h1 { max-width: 800px; font-size: clamp(42px, 6vw, 70px); line-height:1.04; letter-spacing:-.045em; margin-bottom:18px; }
.page-hero > .container > p:last-child { max-width:700px; color:#cfe2d6; font-size:16px; }
.service-detail { display:grid; grid-template-columns:120px 1fr; gap:35px; align-items:start; max-width:950px; }
.detail-number { font-size:62px; font-weight:800; color:#d6e9dd; line-height:1; }
.service-detail h2 { font-size:clamp(32px,4.4vw,50px); line-height:1.12; letter-spacing:-.04em; margin-bottom:15px; }
.service-detail p:not(.eyebrow) { color:var(--muted); max-width:700px; }
.detail-features { display:flex; flex-wrap:wrap; gap:9px; margin-top:28px; }
.detail-features span { background:var(--green-soft); color:var(--green-dark); padding:9px 13px; border-radius:999px; font-size:11px; font-weight:700; }
.coverage-cards { grid-template-columns:1fr 1fr; }
@media (max-width:680px) {
  .page-hero { padding:125px 0 65px; }
  .service-detail { grid-template-columns:1fr; gap:15px; }
  .detail-number { font-size:40px; }
  .coverage-cards { grid-template-columns:1fr 1fr; }
}

.reveal { opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease; }
.reveal.in-view { opacity:1; transform:translateY(0); }
