*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
    :root{
      --green-deep:#1a3d1f;--green-mid:#2d6a35;--green-light:#5a9e4f;
      --green-pale:#a8c9a0;--gold:#c8a84b;--cream:#f5f0e8;
      --white:#ffffff;--text-dark:#1a2615;--text-muted:#5a6b56;
    }
    html{scroll-behavior:smooth}
    body{font-family:'Source Serif 4',Georgia,serif;background:var(--cream);color:var(--text-dark);overflow-x:hidden}

    /* ── NAV ── */
    nav{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--green-deep);display:flex;align-items:center;justify-content:space-between;padding:0 40px;height:72px;border-bottom:3px solid var(--gold);box-shadow:0 4px 24px rgba(0,0,0,0.35)}
    .nav-logo img{height:56px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.4))}
    .nav-links{display:flex;gap:36px;list-style:none}
    .nav-links a{font-family:'Oswald',sans-serif;font-weight:600;font-size:0.9rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--green-pale);text-decoration:none;position:relative;transition:color 0.25s}
    .nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 0.25s}
    .nav-links a:hover,.nav-links a.active{color:var(--white)}
    .nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}
    .hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px}
    .hamburger span{display:block;width:24px;height:2px;background:var(--white);margin:5px 0;transition:all 0.3s}

    /* ── PAGE HERO (shorter than home) ── */
    .page-hero{
      margin-top:72px;
      min-height:52vh;
      background:linear-gradient(160deg,rgba(26,61,31,0.88) 0%,rgba(45,106,53,0.6) 50%,rgba(26,61,31,0.95) 100%),
        linear-gradient(135deg,#1a3d1f 0%,#2d6a35 40%,#1a3d1f 100%);
      display:flex;flex-direction:column;align-items:center;justify-content:center;
      text-align:center;padding:72px 40px 60px;position:relative;overflow:hidden;
    }
    .page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(90,158,79,0.15) 0%,transparent 60%),radial-gradient(ellipse at 70% 60%,rgba(200,168,75,0.08) 0%,transparent 50%);pointer-events:none}
    .page-hero-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}
    .particle{position:absolute;width:6px;height:6px;border-radius:50%;background:rgba(200,168,75,0.3);animation:float-up linear infinite}
    .particle:nth-child(1){left:8%;animation-duration:9s;animation-delay:0s;width:4px;height:4px}
    .particle:nth-child(2){left:22%;animation-duration:11s;animation-delay:2s}
    .particle:nth-child(3){left:38%;animation-duration:8s;animation-delay:1s;width:8px;height:8px;background:rgba(90,158,79,0.25)}
    .particle:nth-child(4){left:55%;animation-duration:13s;animation-delay:4s}
    .particle:nth-child(5){left:70%;animation-duration:10s;animation-delay:0.5s;width:4px;height:4px}
    .particle:nth-child(6){left:85%;animation-duration:12s;animation-delay:3s;width:10px;height:10px;background:rgba(168,201,160,0.15)}
    @keyframes float-up{0%{transform:translateY(110vh) scale(0.5);opacity:0}10%{opacity:1}90%{opacity:0.7}100%{transform:translateY(-10vh) scale(1.2);opacity:0}}
    .page-hero-eyebrow{font-family:'Oswald',sans-serif;font-size:0.8rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;opacity:0;animation:fade-up 0.8s 0.2s forwards}
    .page-hero h1{font-family:'Oswald',sans-serif;font-weight:700;font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.05;color:var(--white);text-shadow:0 4px 24px rgba(0,0,0,0.5);max-width:860px;opacity:0;animation:fade-up 0.9s 0.4s forwards}
    .page-hero h1 span{color:var(--gold)}
    .page-hero-sub{font-size:clamp(1rem,2vw,1.25rem);font-style:italic;font-weight:300;color:var(--green-pale);margin-top:18px;letter-spacing:0.04em;opacity:0;animation:fade-up 0.9s 0.6s forwards;max-width:640px}
    .page-hero-badge{position:absolute;bottom:28px;right:48px}
    .page-hero-badge img{height:68px;object-fit:contain;filter:brightness(0) invert(1) drop-shadow(0 2px 8px rgba(0,0,0,0.4));opacity:0.8}
    @keyframes fade-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

    /* ── SHARED ── */
    .divider{height:4px;background:linear-gradient(90deg,var(--green-mid),var(--gold),var(--green-light));margin:0;border:none}
    section{padding:88px 0}
    .container{max-width:1200px;margin:0 auto;padding:0 40px}
    .section-label{font-family:'Oswald',sans-serif;font-size:0.75rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--green-mid);margin-bottom:10px}
    .section-title{font-family:'Oswald',sans-serif;font-weight:700;font-size:clamp(2rem,4vw,3rem);color:var(--green-deep);line-height:1.1;margin-bottom:20px}
    .section-title span{color:var(--green-light)}
    .section-body{font-size:1.05rem;line-height:1.8;color:var(--text-muted);max-width:640px}
    .btn-primary{font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;font-size:0.9rem;background:var(--gold);color:var(--green-deep);padding:14px 32px;border:none;cursor:pointer;text-decoration:none;display:inline-block;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));transition:all 0.25s}
    .btn-primary:hover{background:var(--white);transform:translateY(-2px)}
    .btn-secondary{font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;font-size:0.9rem;background:transparent;color:var(--green-deep);padding:13px 32px;border:2px solid var(--green-mid);text-decoration:none;display:inline-block;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));transition:all 0.25s}
    .btn-secondary:hover{border-color:var(--gold);color:var(--green-mid);transform:translateY(-2px)}

    /* ── WHO WE ARE ── */
    #who { background: var(--cream); }


    .about-layout {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 72px;
      align-items: center
    }

    .about-img-frame {
  width: 100%;
  aspect-ratio: 4/3;
  background: linear-gradient(135deg, var(--green-deep) 0%, var(--green-mid) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-shadow: 12px 12px 0 var(--green-pale);
  padding: 20px;           /* added breathing room */
}

.about-img-frame img {
  width: 100%;             /* changed from 80% */
  height: 100%;
  object-fit: contain;     /* keeps the full image visible */
  filter: drop-shadow(0 8px 24px rgba(0,0,0,0.3));
}

    .about-text p {
      font-size: 1.05rem; line-height: 1.85;
      color: var(--text-muted); margin-bottom: 20px;
    }

    .about-text p:last-child { margin-bottom: 0; }

    .about-stats {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 20px; margin-top: 40px;
    }

    .stat-box {
      padding: 20px 24px;
      border-left: 3px solid var(--green-light);
      background: var(--white);
    }

    .stat-box .stat-num {
      font-family: 'Oswald', sans-serif;
      font-size: 2rem; font-weight: 700;
      color: var(--green-mid); line-height: 1;
    }

    .stat-box .stat-label { font-size: 0.85rem; color: var(--text-muted); margin-top: 4px; }

    /* ── VALUES ── */
    #values { background: var(--white); }

    .services-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 2px; margin-top: 52px;
    }

    .service-card {
      background: var(--cream); padding: 40px 36px;
      position: relative; overflow: hidden; transition: all 0.3s;
    }

    .service-card::before {
      content: '';
      position: absolute; top: 0; left: 0; right: 0; height: 4px;
      background: linear-gradient(90deg, var(--green-mid), var(--gold));
      transform: scaleX(0); transform-origin: left; transition: transform 0.3s;
    }

    .service-card:hover { background: #f0ede5; transform: translateY(-4px); }
    .service-card:hover::before { transform: scaleX(1); }

    .service-icon {
      font-size: 2.4rem; margin-bottom: 16px; display: block; line-height: 1;
    }

    .service-card h3 {
      font-family: 'Oswald', sans-serif;
      font-weight: 600; font-size: 1.25rem;
      color: var(--green-deep); margin-bottom: 12px; letter-spacing: 0.04em;
    }

    .service-card p { font-size: 0.97rem; line-height: 1.75; color: var(--text-muted); }

    /* ── CERTIFICATION ── */
    #certification { background: var(--cream); }

    .cert-layout {
      display: grid; grid-template-columns: 1fr 1.2fr;
      gap: 72px; align-items: center; margin-top: 52px;
    }

    .cert-logo-panel {
      background: linear-gradient(135deg, var(--green-deep) 0%, var(--green-mid) 100%);
      padding: 52px 40px;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 12px 12px 0 var(--green-pale);
    }

    .cert-logo-panel img {
      width: 100%; max-width: 320px; object-fit: contain; filter: brightness(0) invert(1);
    }

    .cert-points { display: flex; flex-direction: column; gap: 16px; }

    .cert-point {
      display: flex; gap: 16px; align-items: flex-start;
      padding: 20px;
      background: var(--white);
      border-left: 3px solid var(--green-light);
      transition: border-color 0.25s;
    }

    .cert-point:hover { border-left-color: var(--gold); }

    .cert-point .cp-icon { font-size: 1.4rem; flex-shrink: 0; margin-top: 2px; }

    .cert-point h4 {
      font-family: 'Oswald', sans-serif;
      font-size: 1.05rem; font-weight: 600;
      color: var(--green-deep); margin-bottom: 4px; letter-spacing: 0.04em;
    }

    .cert-point p { font-size: 0.9rem; color: var(--text-muted); line-height: 1.65; }

    /* ── CTA ── */
    #cta { background: var(--cream); padding: 88px 0; }

    .cta-inner {
      background: var(--green-deep);
      padding: 64px 56px;
      display: flex; align-items: center; justify-content: space-between;
      gap: 40px; flex-wrap: wrap;
      border-top: 4px solid var(--gold);
      position: relative; overflow: hidden;
    }

    .cta-inner::before {
      content: '';
      position: absolute; inset: 0;
      background: radial-gradient(ellipse at 80% 50%, rgba(90,158,79,0.15) 0%, transparent 60%);
      pointer-events: none;
    }

    .cta-text h2 {
      font-family: 'Oswald', sans-serif;
      font-weight: 700; font-size: clamp(1.8rem, 3vw, 2.4rem);
      color: var(--white); line-height: 1.1; margin-bottom: 10px;
    }

    .cta-text h2 span { color: var(--gold); }

    .cta-text p {
      font-size: 1rem; font-style: italic; font-weight: 300;
      color: var(--green-pale);
    }

    .btn-primary {
      font-family: 'Oswald', sans-serif;
      font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase;
      font-size: 0.9rem;
      background: var(--gold); color: var(--green-deep);
      padding: 14px 36px; border: none; cursor: pointer;
      text-decoration: none;
      clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
      transition: all 0.25s; white-space: nowrap;
    }

    .btn-primary:hover { background: var(--white); transform: translateY(-2px); }

    /* ── FOOTER ── */
    footer {
      background: var(--green-deep);
      border-top: 3px solid var(--gold);
      padding: 60px 0 24px;
    }

    .footer-grid {
      display: grid; grid-template-columns: 1.8fr 1fr 1fr 1fr;
      gap: 48px; padding-bottom: 48px;
      border-bottom: 1px solid rgba(168,201,160,0.2);
      margin-bottom: 28px;
    }

    .footer-brand img {
      height: 64px; object-fit: contain;
      filter: drop-shadow(0 2px 8px rgba(0,0,0,0.4));
      margin-bottom: 16px;
    }

    .footer-brand p { font-size: 0.9rem; color: var(--green-pale); line-height: 1.7; max-width: 280px; font-style: italic; }

    .footer-col h4 {
      font-family: 'Oswald', sans-serif;
      font-size: 0.8rem; letter-spacing: 0.2em; text-transform: uppercase;
      color: var(--gold); margin-bottom: 16px;
    }

    .footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }
    .footer-col ul a { font-size: 0.92rem; color: var(--green-pale); text-decoration: none; transition: color 0.2s; }
    .footer-col ul a:hover { color: var(--white); }
    .footer-col p { font-size: 0.9rem; color: var(--green-pale); line-height: 1.8; }

    .footer-bottom {
      display: flex; align-items: center; justify-content: space-between;
      flex-wrap: wrap; gap: 12px;
    }

    .footer-bottom p { font-size: 0.82rem; color: rgba(168,201,160,0.6); }

    .footer-cert img {
      height: 36px; object-fit: contain;
      filter: brightness(0) invert(1); opacity: 0.5; transition: opacity 0.2s;
    }

    .footer-cert img:hover { opacity: 0.8; }

        /* ── TOAST ── */
    #toast {
      display: none;
      position: fixed;
      bottom: 32px;
      left: 50%;
      transform: translateX(-50%);
      background: var(--green-mid);
      color: #fff;
      font-family: 'Oswald', sans-serif;
      letter-spacing: 0.1em;
      font-size: 0.85rem;
      padding: 12px 28px;
      z-index: 9999;
      box-shadow: 0 4px 20px rgba(0,0,0,0.3);
      white-space: nowrap
    }

    /* ── FOOTER ── */
    footer{background:var(--green-deep);border-top:3px solid var(--gold);padding:60px 0 24px}
    .footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid rgba(168,201,160,0.2);margin-bottom:28px}
    .footer-brand img{height:64px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,0.4));margin-bottom:16px}
    .footer-brand p{font-size:0.9rem;color:var(--green-pale);line-height:1.7;max-width:280px;font-style:italic}
    .footer-col h4{font-family:'Oswald',sans-serif;font-size:0.8rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
    .footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
    .footer-col ul a{font-size:0.92rem;color:var(--green-pale);text-decoration:none;transition:color 0.2s}
    .footer-col ul a:hover{color:var(--white)}
    .footer-col p{font-size:0.9rem;color:var(--green-pale);line-height:1.8}
    .footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
    .footer-bottom p{font-size:0.82rem;color:rgba(168,201,160,0.6)}
    .footer-cert img{height:36px;object-fit:contain;filter:brightness(0) invert(1);opacity:0.5;transition:opacity 0.2s}
    .footer-cert img:hover{opacity:0.8}

    /* ── MOBILE ── */
    @media(max-width:1024px){
      .services-grid{grid-template-columns:repeat(2,1fr)}
      .process-steps{grid-template-columns:repeat(2,1fr);gap:40px}
      .process-steps::before{display:none}
    }
    @media(max-width:900px){
      .service-detail-layout,.service-detail-layout.reverse{grid-template-columns:1fr;gap:36px;direction:ltr}
      .footer-grid{grid-template-columns:1fr 1fr}
      .hamburger{display:block}
      .nav-links{display:none;flex-direction:column;position:absolute;top:72px;left:0;right:0;background:var(--green-deep);padding:20px 40px;gap:16px;border-top:1px solid rgba(168,201,160,0.2)}
      .nav-links.open{display:flex}
      .page-hero-badge{position:static;margin-top:32px}
      nav{padding:0 20px}
      .cta-inner{padding:40px 28px}
      .overview-intro{flex-direction:column;align-items:flex-start}
      .about-layout,
  .cert-layout {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .about-img-frame {
    aspect-ratio: 16/10;     /* wider & better for mobile */
    max-height: 420px;       /* prevents it from becoming too tall */
  }
    }
    @media(max-width:600px){
      .container{padding:0 20px}
      .footer-grid{grid-template-columns:1fr}
      .services-grid{grid-template-columns:1fr}
      .process-steps{grid-template-columns:1fr}
      section,.service-detail{padding:56px 0}
      .about-layout,
  .cert-layout {
    gap: 36px;
  }
  .about-img-frame {
    aspect-ratio: 16/11;
    padding: 16px;
    max-height: 360px;
  }
    }
