:root{
  --ink:#102019;
  --muted:#5c6f66;
  --green:#0f7a4f;
  --green-dark:#064e3b;
  --mint:#dff7e8;
  --lime:#bfe85f;
  --yellow:#f8c84b;
  --orange:#ef8a35;
  --paper:#fbfff8;
  --white:#ffffff;
  --line:rgba(16,32,25,0.12);
  --shadow:0 18px 48px rgba(16,32,25,0.13);
  --radius:8px;
  font-size:16px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,Arial,sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.5;
}
img{max-width:100%;display:block}
.container{width:min(1120px,calc(100% - 32px));margin:0 auto}

.site-header{
  position:sticky;
  top:0;
  z-index:20;
  background:rgba(251,255,248,0.92);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(16px);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.8rem 0}
.brand{display:flex;align-items:center;gap:0.7rem;color:var(--green-dark);font-weight:800;text-decoration:none}
.brand img{width:92px;height:42px;object-fit:contain;border-radius:0}
.nav{display:flex;align-items:center;gap:1.15rem}
.nav a{color:var(--green-dark);font-weight:700;text-decoration:none;font-size:0.92rem}
.nav a:hover{color:var(--orange)}

.hero{
  min-height:82vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(110deg,rgba(6,78,59,0.92),rgba(15,122,79,0.7)),
    url("image 1.jpg") center/cover;
  color:var(--white);
}
.hero-inner{display:grid;grid-template-columns:1.05fr 0.95fr;gap:3rem;align-items:center;padding:5rem 0}
.hero-text h1{margin:0;font-size:clamp(2.35rem,5vw,5rem);line-height:1.02;letter-spacing:0;font-weight:800;max-width:760px}
.eyebrow{margin:0 0 0.75rem;color:var(--lime);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.12em;font-weight:800}
.lead{color:rgba(255,255,255,0.82);font-size:1.08rem;max-width:620px;margin:1rem 0 1.5rem}
.hero-actions{display:flex;gap:0.8rem;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.72rem 1rem;border-radius:var(--radius);text-decoration:none;font-weight:800;border:0;cursor:pointer;transition:transform 180ms ease,box-shadow 180ms ease,background 180ms ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,0,0,0.18)}
.btn.primary{background:var(--yellow);color:#20310d}
.btn.secondary{background:rgba(255,255,255,0.14);color:var(--white);border:1px solid rgba(255,255,255,0.28)}

.hero-visual{
  position:relative;
  min-height:430px;
  border:1px solid rgba(255,255,255,0.2);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,0.22),rgba(255,255,255,0.08));
  overflow:hidden;
}
.hero-visual:before{
  content:"";
  position:absolute;
  inset:42px;
  border:2px dashed rgba(255,255,255,0.26);
  border-radius:50%;
  animation:spin 18s linear infinite;
}
.floating-card{
  position:absolute;
  left:50%;
  top:50%;
  width:min(270px,80%);
  transform:translate(-50%,-50%);
  background:var(--white);
  color:var(--ink);
  border-radius:14px;
  padding:1.2rem;
  box-shadow:var(--shadow);
  animation:float 5s ease-in-out infinite;
}
.truck-icon{display:grid;place-items:center;width:58px;height:58px;background:var(--green);color:#fff;border-radius:14px;font-weight:900;margin-bottom:0.8rem}
.floating-card strong{display:block;font-size:1.1rem}
.floating-card small{display:block;color:var(--muted);margin-top:0.35rem}
.route-line{position:absolute;left:12%;right:12%;bottom:84px;height:8px;border-radius:999px;background:linear-gradient(90deg,var(--yellow),var(--lime),#82d6ff);animation:pulse 2.6s ease-in-out infinite}
.status-chip{position:absolute;background:#fff;color:var(--green-dark);border-radius:999px;padding:0.55rem 0.8rem;font-weight:800;box-shadow:0 10px 26px rgba(0,0,0,0.12)}
.chip-one{top:66px;left:38px}.chip-two{right:30px;top:140px}.chip-three{left:54px;bottom:54px}

.action-marquee{background:var(--yellow);color:#21320b;overflow:hidden;border-block:1px solid rgba(32,49,13,0.15)}
.marquee-track{display:flex;width:max-content;gap:2rem;padding:0.9rem 0;font-weight:900;text-transform:uppercase;animation:marquee 24s linear infinite}
.marquee-track span{display:inline-flex;align-items:center;gap:2rem;white-space:nowrap}
.marquee-track span:after{content:"/";color:rgba(33,50,11,0.35)}

.section-heading{margin-bottom:1.4rem}
.section-heading h2,.impact-grid h2,.contact-grid h2{margin:0;font-size:clamp(1.8rem,3vw,3rem);line-height:1.08;letter-spacing:0;font-weight:800}
.panel{padding:5rem 0}
.services-band,.message-band,.events-band,.contact-band,.impact-band{padding:5rem 0}
.services-band{background:linear-gradient(180deg,#f4fff2,#e5f7e4)}
.services-band .eyebrow,.panel .eyebrow,.message-band .eyebrow,.events-band .eyebrow,.contact-band .eyebrow,.impact-band .eyebrow{color:var(--green)}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.service-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;box-shadow:0 12px 30px rgba(16,32,25,0.07);transition:transform 220ms ease,border 220ms ease}
.service-card:hover{transform:translateY(-6px);border-color:rgba(15,122,79,0.4)}
.service-card .icon{width:46px;height:46px;display:grid;place-items:center;background:var(--green-dark);color:#fff;border-radius:50%;font-weight:900;margin-bottom:1rem}
.service-card h3{margin:0 0 0.45rem;font-size:1.05rem}
.service-card p{margin:0;color:var(--muted)}

.impact-band{background:var(--green-dark);color:#fff}
.impact-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:2rem;align-items:center}
.impact-grid .lead{color:rgba(255,255,255,0.76)}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.stat{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.15);border-radius:var(--radius);padding:1.25rem}
.stat strong{display:block;font-size:2.3rem;color:var(--yellow)}
.stat span{color:rgba(255,255,255,0.75);font-weight:700}

.carousel{position:relative;overflow:hidden;border-radius:14px;box-shadow:var(--shadow);background:#102019}
.carousel-track{display:flex;transition:transform 500ms cubic-bezier(.2,.8,.2,1)}
.carousel-slide{min-width:100%;position:relative;margin:0}
.carousel-slide img{width:100%;height:460px;object-fit:cover;opacity:0.92}
.carousel-slide figcaption{position:absolute;left:1rem;bottom:1rem;max-width:min(560px,calc(100% - 2rem));background:rgba(6,78,59,0.88);color:#fff;padding:0.75rem 0.9rem;border-radius:var(--radius);font-weight:700}
.carousel-controls{position:absolute;left:0;right:0;bottom:1rem;display:flex;align-items:center;justify-content:space-between;padding:0 1rem;pointer-events:none}
.carousel-btn{pointer-events:auto;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,0.95);color:var(--green-dark);cursor:pointer;font-size:1.8rem;line-height:1}
.carousel-indicators{position:absolute;left:50%;bottom:0.45rem;transform:translateX(-50%);display:flex;gap:0.4rem}
.carousel-indicators button{width:9px;height:9px;border-radius:999px;border:0;background:rgba(255,255,255,0.55);cursor:pointer}
.carousel-indicators button.active{width:28px;background:var(--yellow)}

.message-band{background:linear-gradient(135deg,#fff7df,#e8ffe8)}
.message-grid{display:grid;grid-template-columns:0.62fr 0.78fr 1.1fr;gap:2rem;align-items:center}
.chairman-photo{width:100%;height:360px;object-fit:cover;object-position:center 24%;border-radius:14px;box-shadow:var(--shadow)}
.message-card{background:#fff;border-left:8px solid var(--orange);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow);font-size:1.1rem}
.message-card p{margin:0 0 0.75rem}.message-card p:last-child{margin-bottom:0}
.muted{color:var(--muted);font-weight:700}

.map-wrap{height:340px;border-radius:14px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.map-wrap iframe{width:100%;height:100%;border:0}

.events-band{background:#eef8f0}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.gallery img{width:100%;height:230px;object-fit:cover;border-radius:var(--radius);box-shadow:0 12px 30px rgba(16,32,25,0.08)}

.contact-band{background:linear-gradient(135deg,var(--green-dark),#0f7a4f);color:#fff}
.contact-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:2rem;align-items:start}
.form{background:#fff;color:var(--ink);border-radius:14px;padding:1.2rem;box-shadow:var(--shadow)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem}
.form input,.form textarea{width:100%;padding:0.8rem;border:1px solid #d9e5de;border-radius:var(--radius);font:inherit}
.form textarea{min-height:140px;resize:vertical;margin-top:0.75rem}
.form input:focus,.form textarea:focus{outline:3px solid rgba(191,232,95,0.45);border-color:var(--green)}
.form-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:0.75rem}
.form-msg{color:var(--green-dark);font-weight:700}

.site-footer{
  padding:4rem 0 1.2rem;
  background:
    linear-gradient(135deg,rgba(7,27,20,0.96),rgba(6,78,59,0.96)),
    url("image 1.jpg") center/cover;
  color:rgba(255,255,255,0.78);
}
.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 0.85fr 1fr;gap:2rem;align-items:start}
.footer-brand img{width:180px;max-width:100%;background:#fff;border-radius:var(--radius);padding:0.45rem;margin-bottom:1rem}
.footer-brand h2{margin:0 0 0.7rem;color:#fff;font-size:1.45rem;line-height:1.15}
.footer-brand p{margin:0 0 1rem;max-width:360px}
.footer-cta{display:inline-flex;align-items:center;min-height:42px;padding:0.65rem 0.9rem;border-radius:var(--radius);background:var(--yellow);color:#20310d;text-decoration:none;font-weight:900}
.footer-column h3{margin:0 0 0.85rem;color:#fff;font-size:1rem}
.footer-column ul{list-style:none;margin:0;padding:0;display:grid;gap:0.6rem}
.footer-column li{color:rgba(255,255,255,0.76)}
.footer-column span{display:block;color:var(--lime);font-size:0.74rem;font-weight:900;text-transform:uppercase;letter-spacing:0.08em}
.footer-column a,.footer-socials a{color:rgba(255,255,255,0.82);text-decoration:none;font-weight:700}
.footer-column a:hover,.footer-socials a:hover{color:var(--yellow)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,0.16)}
.footer-bottom p{margin:0}
.footer-socials{display:flex;gap:1rem;flex-wrap:wrap}
.section-reveal{transition:opacity 700ms ease,transform 700ms ease}
.reveal-ready .section-reveal{opacity:0;transform:translateY(26px)}
.section-reveal.is-visible{opacity:1;transform:none}

@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes float{0%,100%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-14px)}}
@keyframes pulse{0%,100%{opacity:0.65;transform:scaleX(0.92)}50%{opacity:1;transform:scaleX(1)}}

@media(max-width:900px){
  .nav{display:none}
  .hero-inner,.impact-grid,.message-grid,.contact-grid{grid-template-columns:1fr}
  .hero{min-height:auto}
  .hero-inner{padding:4rem 0}
  .hero-visual{min-height:360px}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .stats-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:620px){
  .container{width:min(100% - 24px,1120px)}
  .brand span{font-size:0.95rem}
  .hero-actions,.form-actions{align-items:stretch}
  .btn{width:100%}
  .hero-visual{min-height:300px}
  .status-chip{font-size:0.78rem}
  .chip-one{top:34px;left:18px}.chip-two{right:16px;top:98px}.chip-three{left:18px;bottom:30px}
  .services-grid,.gallery,.form .row{grid-template-columns:1fr}
  .carousel-slide img{height:300px}
  .carousel-controls{bottom:0.75rem}
  .gallery img{height:210px}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{display:grid}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:0.001ms!important}
}
