:root{
  --green:#155126;
  --green-dark:#0c3418;
  --green-soft:#dfe9c5;
  --gold:#c49a2e;
  --yellow:#f5cf59;
  --cream:#fbfaed;
  --card:#fffef5;
  --border:#dfe1ce;
  --text:#111;
  --muted:#4d5145;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--text);background:#fff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;overflow-x:hidden
}
a{text-decoration:none;color:inherit}
.container-fluid{
  width:100%;max-width:1500px;margin:0 auto;
  padding-left:28px!important;padding-right:28px!important
}

/* Header */
.site-header{
  height:76px;background:rgba(252,251,238,.98);
  border-bottom:1px solid #e4e3d1;z-index:1000
}
.navbar{height:76px;padding-top:0!important;padding-bottom:0!important}
.brand-logo{width:325px;height:70px;object-fit:contain;object-position:left center}
.desktop-nav .nav-link{
  font-size:14px;font-weight:700;padding:29px 0 23px;
  border-bottom:2px solid transparent;white-space:nowrap
}
.desktop-nav .nav-link.active,.desktop-nav .nav-link:hover{border-color:var(--green)}
.desktop-nav i{font-size:9px;margin-left:2px}
.menu-btn{
  width:43px;height:43px;border:1px solid #dedeca;border-radius:8px;
  background:#fffef5;color:var(--green);font-size:25px;
  line-height:1;box-shadow:0 4px 14px rgba(76,74,43,.12)
}
.request-link{font-size:14px;font-weight:700;white-space:nowrap}
.user-btn{font-size:29px;color:var(--green)}
.mobile-link{
  display:block;padding:16px 5px;border-bottom:1px solid #dddcc7;
  font-weight:700
}

/* Hero */
.hero{
  position:relative;min-height:365px;overflow:hidden;
  background:#f5f1cf
}
.hero-photo{
  position:absolute;z-index:0;top:0;right:0;bottom:0;left:40%;
  background-image:url('assets/hero-business-clean.jpg');
  background-size:cover;background-position:center center
}
.hero-overlay{
  position:absolute;z-index:1;inset:0;
  background:linear-gradient(90deg,
    #f7f3d4 0%,#f7f3d4 36%,rgba(247,243,212,.94) 46%,
    rgba(247,243,212,.48) 58%,rgba(247,243,212,0) 76%)
}
.hero-inner{position:relative;z-index:2}
.hero-copy{padding:42px 0 22px;max-width:720px}
.eyebrow,.section-kicker{
  font-size:11px;font-weight:800;letter-spacing:.25px;color:#214c25
}
.hero h1{
  font-size:42px;line-height:1.02;margin:9px 0 13px;
  font-weight:800;letter-spacing:-1.5px
}
.hero h1 span{color:var(--gold)}
.hero p{
  max-width:520px;font-size:14px;line-height:1.42;
  margin:0 0 14px;font-weight:600;color:#171a16
}
.hero-actions{display:flex;gap:12px}
.btn-green,.btn-outline-green{
  font-size:12px;font-weight:800;padding:9px 19px;border-radius:4px
}
.btn-green{background:var(--green);color:#fff;border:1px solid var(--green)}
.btn-outline-green{
  border:1px solid var(--green);background:#fffef3;color:#173e20
}
.value-points{display:flex;align-items:center;margin-top:23px}
.value-points>div{
  min-height:37px;display:flex;align-items:center;gap:8px;
  padding:0 18px;border-right:1px solid #aaa98c
}
.value-points>div:first-child{padding-left:0}
.value-points>div:last-child{border-right:0}
.value-points i{font-size:24px;color:var(--green)}
.value-points span{font-size:10px;font-weight:800;line-height:1.08}

.enquiry-card{
  width:285px;background:#fffdf7;border-radius:7px;
  box-shadow:0 7px 22px rgba(46,45,25,.22);
  position:relative;margin:44px 3% 0 auto;overflow:hidden
}
.enquiry-title{
  background:var(--green);color:#fff;text-align:center;
  font-size:14px;font-weight:800;padding:10px
}
.enquiry-card form{padding:10px}
.enquiry-card .form-control,.enquiry-card .form-select{
  height:31px;font-size:10px;border:1px solid #bcbba9;
  border-radius:3px;padding:5px 8px;margin-bottom:7px;background:#fff
}
.enquiry-card textarea.form-control{height:58px;resize:none}
.submit-btn{
  width:100%;height:34px;background:#1b5c27;color:#fff;
  font-size:10px;font-weight:800;border-radius:4px;border:0
}

/* Expertise */
.section-pad{padding:16px 0}
.expertise{background:#fff}
.expertise .section-kicker{text-align:center}
.expertise h2{
  text-align:center;font-size:20px;font-weight:800;margin:5px 0 14px
}
.service-card{
  min-height:142px;height:100%;border:1px solid var(--border);
  border-radius:7px;background:var(--card);padding:13px 13px 10px;
  box-shadow:0 3px 10px rgba(77,74,44,.08);position:relative;
  transition:transform .2s ease,box-shadow .2s ease
}
.service-card:hover{
  transform:translateY(-2px);box-shadow:0 8px 18px rgba(77,74,44,.13)
}
.service-card .icon{
  width:39px;height:39px;border-radius:50%;background:#f6d16a;
  display:flex;align-items:center;justify-content:center;float:left;
  margin-right:10px;color:#173f20;font-size:21px
}
.service-card h3{
  font-size:12px;line-height:1.08;font-weight:800;margin:1px 0 7px
}
.service-card p{
  clear:both;font-size:9px;line-height:1.35;font-weight:600;
  margin:7px 0 0;color:#252820
}
.service-card>span{
  position:absolute;left:67px;bottom:9px;font-size:16px
}
.stats-bar{
  margin-top:13px;background:#e8edca;border-radius:6px;min-height:76px;
  display:grid;grid-template-columns:repeat(4,1fr);align-items:center
}
.stats-bar>div{
  display:flex;align-items:center;justify-content:center;gap:10px;
  border-right:1px solid #b9bea0;min-height:49px
}
.stats-bar>div:last-child{border-right:0}
.stats-bar i{font-size:30px;color:#143f1d}
.stats-bar strong{font-size:20px}
.stats-bar span{font-size:9px;font-weight:700;line-height:1.15}

/* About / lower blocks */
.about-section{background:#fff;padding-top:2px}
.about-box{
  min-height:190px;height:100%;padding:15px 16px;border-radius:6px
}
.green-box{background:#dfeac4}
.yellow-box{background:linear-gradient(135deg,#f5d16a,#f3bf39)}
.about-box h2{font-size:18px;line-height:1.08;margin:6px 0 8px;font-weight:800}
.about-box p,.about-box li{font-size:9px;line-height:1.35;font-weight:600}
.about-box p{margin-bottom:10px}
.about-box ol,.about-box ul{margin:0;padding-left:17px}
.about-box li{margin-bottom:2px}
.small-btn{
  display:inline-block;background:#1e5d27;color:#fff;font-size:9px;
  font-weight:800;padding:7px 11px;border-radius:4px
}
.testimonials{padding-top:12px}
.quote-card{
  min-height:125px;border:1px solid var(--border);border-radius:7px;
  padding:14px 17px;background:#fffef8;box-shadow:0 3px 9px rgba(77,74,44,.07)
}
.quote-card i{font-size:24px;color:#d0ae48}
.quote-card p{font-size:9px;line-height:1.35;font-weight:600;margin:0 0 7px}
.quote-card strong,.quote-card small{display:block;font-size:9px;margin-left:28px}
.contact-box{
  min-height:125px;background:#f5d56e;border-radius:7px;padding:14px
}
.contact-box h2{font-size:18px;margin:0 0 6px}
.contact-box p{font-size:10px;line-height:1.25;margin:4px 0;font-weight:600}

/* CTA / Footer */
.cta-strip{background:linear-gradient(90deg,#f1d24e,#ffe47a);padding:11px 0}
.cta-icon{
  width:39px;height:39px;border-radius:50%;background:#1d5c28;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:20px
}
.cta-strip h3{font-size:16px;margin:0;font-weight:800}
.cta-strip p{font-size:9px;margin:2px 0 0;font-weight:600}
.cta-btn{
  background:#1d5c28;color:#fff;font-size:11px;font-weight:800;
  border-radius:4px;padding:9px 16px;white-space:nowrap
}
.site-footer{background:#f0f3d7}
.site-footer span{font-size:11px}
.footer-logo{width:145px;height:50px;object-fit:contain;object-position:left center}
.site-footer p,.site-footer a{
  font-size:9px;line-height:1.3;font-weight:600;display:block;margin:3px 0
}
.site-footer h4{font-size:11px;font-weight:800;margin:3px 0 8px}
.socials{display:flex;gap:9px;margin-top:8px}
.socials span{
  width:20px;height:20px;border:1px solid #183f20;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:9px;color:#183f20
}
.subscribe-input{
  width:100%;height:28px;border:1px solid #aaa;border-radius:3px;
  padding:5px;font-size:9px;background:#fff
}
.subscribe-btn{
  margin-top:5px;border:0;background:#f3bd2d;padding:6px 12px;
  border-radius:3px;font-size:9px;font-weight:800
}
.copyright{
  background:#154c24;color:#fff;margin:0 -28px;
  padding:6px 28px;font-size:8px
}

/* Tablet */
@media(max-width:1199px){
  .container-fluid{max-width:1140px}
  .hero h1{font-size:36px}
  .hero-photo{left:43%}
  .enquiry-card{width:260px}
  .desktop-nav{gap:20px!important}
}

/* Mobile */
@media(max-width:767px){
  .container-fluid{
    max-width:100%;padding-left:16px!important;padding-right:16px!important
  }
  .site-header,.navbar{height:64px}
  .brand-logo{width:180px;height:60px}
  .desktop-nav,.request-link{display:none!important}
  .menu-btn{width:40px;height:40px}
  .user-btn{font-size:26px}

  .hero{min-height:690px}
  .hero-photo{
    left:0;opacity:.23;background-position:center;
    background-size:cover
  }
  .hero-overlay{
    background:linear-gradient(180deg,
      rgba(247,243,212,.98) 0%,rgba(247,243,212,.95) 58%,
      rgba(247,243,212,.72) 100%)
  }
  .hero-copy{padding:29px 0 10px}
  .hero h1{font-size:31px;line-height:1.03;letter-spacing:-.8px}
  .hero p{font-size:13px;max-width:100%;line-height:1.4}
  .hero-actions{gap:8px;flex-wrap:wrap}
  .btn-green,.btn-outline-green{font-size:11px;padding:8px 14px}
  .value-points{
    display:grid;grid-template-columns:1fr 1fr;
    margin-top:18px;gap:11px 0
  }
  .value-points>div{
    padding:0 10px 0 0;border-right:1px solid #aaa98c
  }
  .value-points>div:nth-child(2){border-right:0;padding-left:10px}
  .value-points>div:nth-child(3){padding-left:0}
  .value-points>div:last-child{padding-left:10px}
  .value-points i{font-size:21px}
  .value-points span{font-size:9px}

  .enquiry-card{
    width:min(100%,340px);margin:18px auto 20px;
  }
  .enquiry-title{font-size:13px}
  .enquiry-card .form-control,.enquiry-card .form-select{height:35px;font-size:10px}
  .enquiry-card textarea.form-control{height:62px}

  .section-pad{padding:14px 0}
  .expertise h2{font-size:18px;line-height:1.15}
  .service-card{min-height:145px}
  .stats-bar{grid-template-columns:1fr 1fr;padding:7px}
  .stats-bar>div{min-height:54px}
  .stats-bar>div:nth-child(1),.stats-bar>div:nth-child(2){border-bottom:1px solid #b9bea0}
  .stats-bar>div:nth-child(2),.stats-bar>div:nth-child(4){border-right:0}
  .stats-bar strong{font-size:17px}
  .stats-bar span{font-size:8px}

  .about-box{min-height:0;margin-bottom:4px}
  .about-box h2{font-size:17px}
  .about-box p,.about-box li{font-size:9px}
  .quote-card,.contact-box{min-height:0}
  .cta-strip .container-fluid{
    flex-direction:column;align-items:flex-start!important
  }
  .cta-btn{align-self:flex-end}
  .copyright{margin:0 -16px;padding-left:16px;padding-right:16px;gap:10px}
}

/* Small phones */
@media(max-width:420px){
  .brand-logo{width:155px}
  .user-btn{font-size:24px}
  .hero{min-height:720px}
  .hero h1{font-size:28px}
  .hero-actions a{width:100%;text-align:center}
  .value-points>div{gap:6px}
  .value-points span{font-size:8px}
}


/* GIGW 3.0 / WCAG-oriented presentation layer
   GIGW does not prescribe one mandatory typeface; this uses Noto Sans for clear,
   readable UI and better Indian-language coverage. */
:root {
  --font-ui: "Noto Sans", "Noto Sans Devanagari", Arial, Helvetica, sans-serif;
}
html { scroll-behavior: smooth; }
body {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 1.5;
  color: #171a16;
  text-rendering: optimizeLegibility;
}
*, *::before, *::after { box-sizing: border-box; }
.skip-link {
  position: fixed; left: 12px; top: -60px; z-index: 2000;
  background: #154c24; color: #fff; padding: 10px 14px; border-radius: 4px;
  font-weight: 700; text-decoration: none;
}
.skip-link:focus { top: 12px; }
:focus-visible {
  outline: 3px solid #0b5d2a;
  outline-offset: 3px;
}
.site-header { z-index: 1030; }
.site-header .navbar { min-height: 82px; }
.header-actions { display:flex; align-items:center; gap:16px; }
.menu-btn {
  width:50px; height:50px; border-radius:9px;
  font-size:27px; display:inline-flex; align-items:center; justify-content:center;
}
.user-btn { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; }
.offcanvas { width:min(360px, 90vw); }
.mobile-link { font-size:17px; padding:15px 8px; }
.hero h1 { font-family:var(--font-ui); font-weight:800; letter-spacing:-1.2px; }
.hero p { font-size:16px; line-height:1.55; font-weight:500; }
.eyebrow,.section-kicker { font-size:13px; letter-spacing:.35px; }
.btn-green,.btn-outline-green { font-size:14px; min-height:44px; padding:10px 20px; }
.value-points span { font-size:12px; }
.service-card h3 { font-size:15px; line-height:1.2; }
.service-card p { font-size:12px; line-height:1.5; font-weight:500; }
.service-card>span { font-size:20px; }
.expertise h2 { font-size:26px; }
.about-box h2 { font-size:22px; }
.about-box p,.about-box li { font-size:13px; line-height:1.5; font-weight:500; }
.quote-card p { font-size:13px; line-height:1.5; }
.quote-card strong,.quote-card small { font-size:12px; }
.contact-box h2 { font-size:22px; }
.contact-box p { font-size:13px; line-height:1.5; }
.cta-strip h3 { font-size:21px; }
.cta-strip p { font-size:12px; }
.site-footer p,.site-footer a { font-size:12px; line-height:1.5; }
.site-footer h4 { font-size:14px; }
.subscribe-input { height:40px; font-size:12px; }
.subscribe-btn { font-size:12px; min-height:38px; }
.form-status { min-height:18px; font-size:12px; font-weight:600; margin:2px 0 5px; }
.form-status.error { color:#8a1c1c; }
.form-status.success { color:#145b2a; }
.enquiry-card .form-control,.enquiry-card .form-select {
  min-height:40px; height:auto; font-size:13px; padding:8px 10px;
}
.enquiry-card textarea.form-control { min-height:78px; height:78px; }
.submit-btn { min-height:42px; height:auto; font-size:13px; }
.was-validated .form-control:invalid,.was-validated .form-select:invalid { border-color:#a52323; }
img { max-width:100%; }
@media (max-width:767px) {
  .site-header .navbar { min-height:70px; }
  .hero p { font-size:15px; }
  .hero h1 { font-size:32px; }
  .expertise h2 { font-size:22px; }
  .service-card h3 { font-size:16px; }
  .service-card p { font-size:13px; }
  .about-box h2 { font-size:21px; }
  .about-box p,.about-box li { font-size:13px; }
  .cta-strip h3 { font-size:19px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Client-content refinements */
.flow-steps{display:grid;gap:10px;margin-top:8px}
.flow-steps div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid rgba(20,89,45,.18);border-radius:8px;background:rgba(255,255,255,.28)}
.flow-steps b{font-size:1rem;white-space:nowrap}
.flow-steps span{font-size:.88rem;text-align:right}
.footer-note{font-size:.86rem;max-width:230px}
.footer-cta{display:inline-block;text-decoration:none!important}
@media (max-width:767px){.flow-steps div{align-items:flex-start;flex-direction:column}.flow-steps span{text-align:left}.footer-note{max-width:none}}


/* =========================================================
   PREMIUM MOTION + NAVIGATION LAYER
   Keeps the Sangati visual identity while adding restrained
   motion, depth and a more premium navigation experience.
   ========================================================= */
.menu-btn {
  position: relative; overflow: hidden; border: 1px solid rgba(23,72,34,.14);
  background: rgba(255,255,255,.72); box-shadow: 0 7px 20px rgba(26,66,33,.08);
  transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, background .35s ease;
}
.menu-btn::before {
  content:""; position:absolute; inset:0; border-radius:inherit;
  background: radial-gradient(circle at 50% 20%, rgba(241,202,76,.30), transparent 48%);
  opacity:0; transition:opacity .35s ease;
}
.menu-btn:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(26,66,33,.14); }
.menu-btn:hover::before { opacity:1; }
.menu-bars { width:22px; height:18px; display:flex; flex-direction:column; justify-content:space-between; position:relative; z-index:1; }
.menu-bars span { display:block; width:100%; height:2px; border-radius:99px; background:#17552b; transform-origin:center; transition:transform .45s cubic-bezier(.68,-.2,.25,1.2), opacity .25s ease; }
.menu-btn.is-open .menu-bars span:nth-child(1) { transform:translateY(8px) rotate(45deg); }
.menu-btn.is-open .menu-bars span:nth-child(2) { opacity:0; transform:scaleX(0); }
.menu-btn.is-open .menu-bars span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }

.premium-menu {
  --menu-bg:#103f22; --menu-green:#17582d; --menu-gold:#e9bf43;
  width:min(455px, 94vw) !important; color:#fff; border:0; overflow:hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(233,191,67,.22), transparent 30%),
    linear-gradient(145deg,#0c341c 0%,#124824 54%,#0b331c 100%);
  box-shadow:-20px 0 60px rgba(0,0,0,.22);
}
.premium-menu .offcanvas-header { border:0; }
.premium-menu::after {
  content:""; position:absolute; left:0; top:0; width:3px; height:100%;
  background:linear-gradient(180deg,transparent,#e9bf43 25%,#e9bf43 75%,transparent); opacity:.85;
}
.menu-grid {
  position:absolute; inset:0; opacity:.055; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.7) 1px,transparent 1px);
  background-size:34px 34px; mask-image:linear-gradient(135deg,black,transparent 72%);
}
.menu-glow { position:absolute; border-radius:50%; filter:blur(2px); pointer-events:none; }
.menu-glow-one { width:190px; height:190px; right:-75px; top:80px; background:rgba(235,194,72,.13); animation:menuFloat 7s ease-in-out infinite; }
.menu-glow-two { width:120px; height:120px; left:-65px; bottom:100px; background:rgba(121,190,121,.10); animation:menuFloat 9s ease-in-out infinite reverse; }
@keyframes menuFloat { 0%,100%{transform:translate3d(0,0,0) scale(1)} 50%{transform:translate3d(-12px,15px,0) scale(1.08)} }
.premium-menu-header { position:relative; z-index:2; padding:32px 32px 12px; align-items:flex-start; }
.menu-brand-wrap { opacity:0; transform:translateY(16px); }
.premium-menu.show .menu-brand-wrap { animation:menuHeaderIn .6s .05s both cubic-bezier(.2,.8,.2,1); }
.menu-overline { display:block; color:#e9bf43; font-size:10px; font-weight:800; letter-spacing:2px; margin-bottom:8px; }
.menu-brand-wrap h2 { margin:0; font-size:38px; line-height:1; font-weight:800; letter-spacing:-1.3px; }
.menu-close {
  width:48px; height:48px; border:1px solid rgba(255,255,255,.22); border-radius:50%;
  background:rgba(255,255,255,.07); position:relative; display:grid; place-items:center;
  transition:transform .35s ease, background .35s ease;
}
.menu-close:hover { transform:rotate(90deg); background:rgba(255,255,255,.14); }
.menu-close span { position:absolute; width:19px; height:2px; border-radius:5px; background:#fff; }
.menu-close span:first-child { transform:rotate(45deg); }
.menu-close span:last-child { transform:rotate(-45deg); }
.premium-menu-body { position:relative; z-index:2; padding:12px 32px 30px; display:flex; flex-direction:column; }
.menu-intro { padding:4px 0 22px; opacity:0; transform:translateY(16px); }
.premium-menu.show .menu-intro { animation:menuHeaderIn .65s .12s both cubic-bezier(.2,.8,.2,1); }
.menu-intro span { font-size:10px; letter-spacing:1.5px; color:rgba(255,255,255,.60); font-weight:800; }
.menu-intro p { max-width:320px; margin:8px 0 0; color:rgba(255,255,255,.72); font-size:13px; line-height:1.55; }
.premium-nav { border-top:1px solid rgba(255,255,255,.14); }
.premium-nav-link {
  display:grid; grid-template-columns:38px 1fr 26px; align-items:center; gap:12px;
  min-height:76px; color:#fff !important; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.12);
  position:relative; overflow:hidden; transform:translateX(28px); opacity:0;
}
.premium-menu.show .premium-nav-link { animation:navIn .65s cubic-bezier(.2,.8,.2,1) forwards; }
.premium-menu.show .premium-nav-link:nth-child(1){animation-delay:.18s}.premium-menu.show .premium-nav-link:nth-child(2){animation-delay:.24s}.premium-menu.show .premium-nav-link:nth-child(3){animation-delay:.30s}.premium-menu.show .premium-nav-link:nth-child(4){animation-delay:.36s}.premium-menu.show .premium-nav-link:nth-child(5){animation-delay:.42s}
.premium-nav-link::before {
  content:""; position:absolute; left:-100%; top:0; width:100%; height:100%;
  background:linear-gradient(90deg,rgba(233,191,67,.16),rgba(233,191,67,.04)); transition:left .5s cubic-bezier(.2,.8,.2,1);
}
.premium-nav-link:hover::before { left:0; }
.premium-nav-link:hover .nav-label { transform:translateX(8px); color:#f1ce64; }
.premium-nav-link:hover i { transform:translate(4px,-4px); color:#f1ce64; }
.nav-num { color:rgba(255,255,255,.38); font-size:11px; font-weight:700; position:relative; z-index:1; }
.nav-label { position:relative; z-index:1; font-size:26px; font-weight:700; letter-spacing:-.5px; transition:transform .35s ease,color .35s ease; }
.premium-nav-link i { position:relative; z-index:1; font-size:19px; transition:transform .35s ease,color .35s ease; }
.menu-footer-note { margin-top:auto; padding-top:30px; opacity:0; transform:translateY(16px); }
.premium-menu.show .menu-footer-note { animation:menuHeaderIn .7s .48s both cubic-bezier(.2,.8,.2,1); }
.menu-line { width:46px; height:2px; background:#e9bf43; margin-bottom:12px; }
.menu-footer-note span { font-size:9px; letter-spacing:1.6px; color:rgba(255,255,255,.48); font-weight:800; }
@keyframes menuHeaderIn { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:none} }
@keyframes navIn { from{opacity:0;transform:translateX(28px)} to{opacity:1;transform:none} }

/* Premium entrance motion for page sections */
.reveal { opacity:0; will-change:transform,opacity; }
.reveal-up { transform:translateY(24px); }
.reveal-right { transform:translateX(28px); }
.reveal.is-visible { opacity:1; transform:none; transition:opacity .8s ease, transform .8s cubic-bezier(.2,.8,.2,1); }
.service-card { transition:transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease, border-color .4s ease; }
.service-card:hover { transform:translateY(-7px); box-shadow:0 18px 36px rgba(57,66,32,.13); border-color:rgba(190,154,50,.45); }
.service-card .icon { transition:transform .45s cubic-bezier(.2,.8,.2,1), box-shadow .45s ease; }
.service-card:hover .icon { transform:rotate(-7deg) scale(1.08); box-shadow:0 8px 18px rgba(211,172,54,.22); }
.hero h1 span { background:linear-gradient(90deg,#c4941e,#e2b63f,#b78919); background-size:200% auto; -webkit-background-clip:text; background-clip:text; color:transparent; animation:goldShift 5s ease-in-out infinite; }
@keyframes goldShift { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
.hero-photo { animation:heroKenBurns 16s ease-in-out infinite alternate; }
@keyframes heroKenBurns { from{transform:scale(1.01)} to{transform:scale(1.055)} }
.value-points>div { transition:transform .35s ease; }
.value-points>div:hover { transform:translateY(-4px); }

@media (max-width:767px){
  .premium-menu-header { padding:26px 22px 10px; }
  .premium-menu-body { padding:12px 22px 24px; }
  .menu-brand-wrap h2 { font-size:32px; }
  .premium-nav-link { min-height:68px; }
  .nav-label { font-size:22px; }
  .premium-menu { width:min(390px,94vw) !important; }
}

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

/* =========================================================
   PREMIUM CONTENT WIDTH + TESTIMONIAL SLIDER + SERVICE MODAL
   ========================================================= */
.container-fluid{
  max-width:1720px;
  padding-left:44px!important;
  padding-right:44px!important;
}
.service-card-btn{
  width:100%;
  display:block;
  text-align:left;
  font:inherit;
  color:inherit;
  cursor:pointer;
  border:1px solid var(--border);
}
.service-card-btn::after{
  content:'Explore service';
  position:absolute;
  right:14px;
  bottom:11px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.2px;
  color:rgba(21,81,38,.55);
  opacity:0;
  transform:translateY(4px);
  transition:opacity .3s ease,transform .3s ease,color .3s ease;
}
.service-card-btn:hover::after,.service-card-btn:focus-visible::after{
  opacity:1;transform:none;color:var(--green);
}
.service-card-btn>span{transition:opacity .3s ease,transform .3s ease}
.service-card-btn:hover>span{opacity:0;transform:translateX(8px)}
.service-card-btn:focus-visible{
  outline:3px solid rgba(196,154,46,.48);
  outline-offset:4px;
}

.testimonial-heading{
  text-align:center;font-size:24px;font-weight:800;margin:5px 0 18px;letter-spacing:-.4px;
}
.testimonial-shell{position:relative;overflow:hidden;padding:2px 2px 0}
.testimonial-track{
  display:flex;width:100%;transition:transform .75s cubic-bezier(.2,.8,.2,1);will-change:transform;
}
.testimonial-item{flex:0 0 50%;padding:0 8px}
.testimonial-item .quote-card{
  min-height:190px;height:100%;position:relative;overflow:hidden;
  padding:25px 28px 22px;
  background:linear-gradient(145deg,#fffef8 0%,#fbfaee 100%);
  box-shadow:0 7px 22px rgba(77,74,44,.07);
  transition:transform .35s ease,box-shadow .35s ease;
}
.testimonial-item .quote-card::before{
  content:'';position:absolute;right:-35px;top:-35px;width:115px;height:115px;border-radius:50%;
  background:rgba(245,207,89,.16);transition:transform .5s ease;
}
.testimonial-item .quote-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(77,74,44,.11)}
.testimonial-item .quote-card:hover::before{transform:scale(1.25)}
.quote-mark{font-family:Georgia,serif;color:#caa039;font-size:54px;line-height:.7;font-weight:700;margin-bottom:16px;position:relative;z-index:1}
.testimonial-item .quote-card p{font-size:13px;line-height:1.6;font-weight:600;max-width:650px;margin:0 0 15px;position:relative;z-index:1}
.client-role{font-size:12px;font-weight:800;margin-left:2px;position:relative;z-index:1}
.client-company{font-size:11px;color:#5c604f;margin-left:2px;position:relative;z-index:1}
.testimonial-controls{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:16px}
.testimonial-arrow{
  width:38px;height:38px;border:1px solid #d8d9c6;border-radius:50%;background:#fffef8;color:var(--green);
  display:grid;place-items:center;transition:all .3s ease;cursor:pointer;
}
.testimonial-arrow:hover{background:var(--green);color:#fff;transform:translateY(-2px);box-shadow:0 7px 15px rgba(21,81,38,.18)}
.testimonial-dots{display:flex;align-items:center;gap:7px}
.testimonial-dots .dot{
  width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#cfd2bd;cursor:pointer;transition:all .35s ease;
}
.testimonial-dots .dot.active{width:25px;border-radius:99px;background:var(--green)}
.insight-card{height:100%;min-height:125px}

/* Premium service detail modal */
.premium-service-modal .modal-dialog{max-width:850px}
.premium-service-modal .modal-content{
  position:relative;overflow:hidden;border:1px solid rgba(21,81,38,.16);border-radius:18px;
  background:linear-gradient(145deg,#fffef8 0%,#f7f5df 100%);
  box-shadow:0 30px 90px rgba(0,0,0,.24);
  opacity:0;transform:translateY(24px) scale(.96);
}
.premium-service-modal.show .modal-content{animation:modalPop .55s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes modalPop{to{opacity:1;transform:none}}
.service-modal-orb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(1px)}
.orb-one{width:260px;height:260px;right:-100px;top:-110px;background:rgba(245,207,89,.25)}
.orb-two{width:170px;height:170px;left:-90px;bottom:-80px;background:rgba(21,81,38,.07)}
.premium-service-modal .modal-header{position:relative;z-index:1;border:0;padding:27px 30px 10px;align-items:flex-start}
.modal-kicker{display:block;color:var(--green);font-size:10px;font-weight:800;letter-spacing:1.8px;margin-bottom:7px}
.premium-service-modal .modal-title{font-size:31px;font-weight:800;letter-spacing:-.8px;margin:0}
.modal-close{width:42px;height:42px;border:1px solid #d8d9c6;border-radius:50%;background:#fff;color:var(--green);display:grid;place-items:center;transition:transform .35s ease,background .35s ease}
.modal-close:hover{transform:rotate(90deg);background:#f4eab9}
.premium-service-modal .modal-body{position:relative;z-index:1;padding:12px 30px 25px}
.service-modal-icon{width:58px;height:58px;border-radius:16px;background:#f4cf61;color:var(--green);display:grid;place-items:center;font-size:28px;box-shadow:0 8px 18px rgba(196,154,46,.18);margin-bottom:15px;animation:iconFloat 3.5s ease-in-out infinite}
@keyframes iconFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-3deg)}}
.service-modal-intro{font-size:15px;line-height:1.65;font-weight:600;color:#31362c;max-width:730px;margin:0 0 20px}
.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.service-detail{display:flex;gap:11px;padding:14px;border:1px solid rgba(21,81,38,.12);border-radius:11px;background:rgba(255,255,255,.55);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.service-detail:hover{transform:translateY(-3px);border-color:rgba(196,154,46,.45);box-shadow:0 8px 20px rgba(77,74,44,.07)}
.detail-dot{flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:var(--gold);margin-top:6px;box-shadow:0 0 0 5px rgba(196,154,46,.10)}
.service-detail h3{font-size:13px;font-weight:800;margin:0 0 4px}.service-detail p{font-size:12px;line-height:1.5;margin:0;color:#555a4d;font-weight:500}
.premium-service-modal .modal-footer{position:relative;z-index:1;border-top:1px solid rgba(21,81,38,.1);padding:15px 30px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.premium-service-modal .modal-footer>span{font-size:10px;letter-spacing:1.1px;font-weight:800;color:#7a7d69}
.premium-service-modal .btn-green{padding:10px 17px}
.modal-backdrop.show{opacity:.52}

@media (max-width:1199px){
  .container-fluid{max-width:1180px;padding-left:30px!important;padding-right:30px!important}
  .testimonial-item .quote-card{min-height:205px}
}
@media (max-width:767px){
  .container-fluid{padding-left:18px!important;padding-right:18px!important}
  .testimonial-heading{font-size:21px}
  .testimonial-item{flex-basis:100%;padding:0 2px}
  .testimonial-item .quote-card{min-height:215px;padding:22px 20px}
  .testimonial-item .quote-card p{font-size:13px}
  .testimonial-controls{margin-top:13px}
  .service-detail-grid{grid-template-columns:1fr}
  .premium-service-modal .modal-header{padding:22px 20px 8px}
  .premium-service-modal .modal-body{padding:10px 20px 20px}
  .premium-service-modal .modal-footer{padding:14px 20px;align-items:flex-start;flex-direction:column}
  .premium-service-modal .modal-title{font-size:25px}
  .service-modal-intro{font-size:14px}
  .service-card-btn::after{display:none}
}

/* =========================================================
   COMPACT GOVERNMENT-PORTAL INSPIRED TYPOGRAPHY + MENU
   Clean Noto Sans hierarchy, restrained sizing and spacing.
   ========================================================= */
:root{--font-ui:'Noto Sans',Arial,sans-serif;}
body{font-family:var(--font-ui);font-size:14px;line-height:1.5;}
.brand-logo{width:235px;height:66px;object-fit:contain;object-position:left center;}
.header-actions{gap:10px;}
.menu-btn{width:46px;height:46px;border-radius:7px;}
.user-btn{font-size:27px;min-width:42px;min-height:42px;}

/* Compact, structured navigation panel — inspired by Indian public-service portals. */
.premium-menu{
  width:min(340px,88vw)!important;
  color:#182018;
  background:#fff;
  border-left:1px solid #dfe4d5;
  box-shadow:-14px 0 35px rgba(0,0,0,.16);
}
.premium-menu::before{
  content:"";position:absolute;left:0;right:0;top:0;height:5px;
  background:linear-gradient(90deg,#155126 0 72%,#c49a2e 72% 100%);z-index:3;
}
.premium-menu::after{width:2px;background:#c49a2e;opacity:.45;}
.menu-grid{
  opacity:.035;
  background-image:linear-gradient(#155126 1px,transparent 1px),linear-gradient(90deg,#155126 1px,transparent 1px);
  background-size:28px 28px;
  mask-image:linear-gradient(135deg,black,transparent 65%);
}
.menu-glow-one{width:120px;height:120px;right:-55px;top:45px;background:rgba(196,154,46,.10);filter:blur(8px);}
.menu-glow-two{width:90px;height:90px;left:-50px;bottom:80px;background:rgba(21,81,38,.07);filter:blur(8px);}
.premium-menu-header{padding:22px 24px 10px;align-items:center;}
.menu-overline{font-size:9px;letter-spacing:1.4px;color:#155126;margin-bottom:4px;}
.menu-brand-wrap h2{font-size:25px;line-height:1.15;letter-spacing:-.2px;color:#182018;font-weight:700;}
.menu-close{
  width:38px;height:38px;border-radius:6px;
  border:1px solid #d8ddcf;background:#f7f8f2;
}
.menu-close span{background:#155126;width:16px;height:2px;}
.premium-menu-body{padding:8px 24px 24px;}
.menu-intro{padding:4px 0 13px;border-bottom:1px solid #e1e5da;}
.menu-intro>span{font-size:9px;letter-spacing:1.2px;color:#9a761e;font-weight:700;}
.menu-intro p{font-size:12px;line-height:1.45;color:#5b6258;margin:5px 0 0;max-width:280px;}
.premium-nav{margin-top:5px;}
.premium-nav-link{
  min-height:50px;
  padding:11px 6px;
  display:grid;
  grid-template-columns:34px 1fr 18px;
  align-items:center;
  gap:8px;
  border-bottom:1px solid #e6e8e1;
  color:#1b211b;
  transition:background .2s ease,color .2s ease,padding .2s ease;
}
.premium-nav-link:hover,.premium-nav-link:focus-visible{
  background:#f4f7ed;color:#155126;padding-left:10px;
}
.nav-num{font-size:11px;font-weight:700;color:#9a761e;letter-spacing:.4px;}
.nav-label{font-size:15px;line-height:1.25;font-weight:600;}
.premium-nav-link i{font-size:13px;color:#155126;transition:transform .2s ease;}
.premium-nav-link:hover i{transform:translate(2px,-2px);}
.menu-footer-note{margin-top:auto;padding-top:18px;}
.menu-line{height:1px;background:#dfe4d8;margin-bottom:9px;}
.menu-footer-note span{font-size:9px;letter-spacing:1.1px;color:#65705f;font-weight:700;}

/* Header and page type hierarchy */
h1,h2,h3,h4,h5,h6{font-family:var(--font-ui);}
.hero h1{font-size:40px;font-weight:800;letter-spacing:-.9px;line-height:1.08;}
.section-kicker,.eyebrow{font-size:35px;font-weight:800;letter-spacing:.45px;}
.expertise h2{font-size:25px;font-weight:750;}
.service-card h3{font-size:15px;font-weight:750;}

@media(max-width:767px){
 .brand-logo{width:190px;height:58px;}
 .premium-menu{width:min(330px,91vw)!important;}
 .premium-menu-header{padding:20px 20px 8px;}
 .premium-menu-body{padding:7px 20px 20px;}
 .menu-brand-wrap h2{font-size:23px;}
 .nav-label{font-size:14px;}
 .premium-nav-link{min-height:47px;}
 .hero h1{font-size:32px;}
}


/* =========================================================
   V4 REFINEMENT
   Full-screen hero + compact top navigation + premium About
   ========================================================= */

/* Hero: give the first impression more presence on desktop. */
.hero{
  min-height:calc(100vh - 76px);
  display:flex;
  align-items:stretch;
}
.hero-inner,
.hero-inner > .row{
  min-height:calc(100vh - 76px);
}
.hero-copy{
  padding-top:clamp(64px, 9vh, 105px);
  padding-bottom:42px;
}
.enquiry-card{
  margin-top:clamp(70px, 12vh, 120px);
}
.hero-photo{
  background-position:center center;
}

/* Compact top-opening navigation. */
.premium-menu{
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  max-height:min(430px,72vh)!important;
  min-height:0!important;
  top:76px!important;
  bottom:auto!important;
  border-left:0!important;
  border-bottom:1px solid #dce2d4!important;
  border-radius:0 0 14px 14px;
  box-shadow:0 18px 42px rgba(0,0,0,.16);
  overflow:hidden!important;
}
.premium-menu::before{
  height:3px;
}
.premium-menu::after{
  display:none;
}
.premium-menu .menu-grid{
  opacity:.028;
}
.premium-menu-header{
  padding:14px 44px 8px!important;
  max-width:1720px;
  width:100%;
  margin:0 auto;
}
.menu-brand-wrap h2{
  font-size:22px!important;
}
.menu-overline{
  font-size:8px!important;
  margin-bottom:2px!important;
}
.menu-close{
  width:34px!important;
  height:34px!important;
}
.premium-menu-body{
  max-width:1720px;
  width:100%;
  margin:0 auto;
  padding:4px 44px 20px!important;
}
.menu-intro{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:4px 0 10px!important;
}
.menu-intro p{
  margin:0!important;
  max-width:520px!important;
  font-size:11px!important;
}
.premium-nav{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border-top:1px solid #e1e5da;
}
.premium-nav-link{
  min-height:54px!important;
  padding:10px 12px!important;
  grid-template-columns:30px 1fr 16px!important;
  border-bottom:0!important;
  border-right:1px solid #e6e8e1;
}
.premium-nav-link:last-child{
  border-right:0;
}
.nav-label{
  font-size:14px!important;
  font-weight:700!important;
}
.nav-num{
  font-size:10px!important;
}
.premium-nav-link i{
  font-size:12px!important;
}
.menu-footer-note{
  display:none;
}

/* About: image beside the actual About copy. */
.about-feature{
  border:1px solid #e0e3d4;
  border-radius:12px;
  overflow:hidden;
  background:#fffef7;
  box-shadow:0 10px 30px rgba(60,66,38,.07);
}
.about-image-wrap{
  position:relative;
  min-height:440px;
  height:100%;
  overflow:hidden;
  background:#e9edd9;
}
.about-image{
  width:100%;
  height:100%;
  min-height:440px;
  object-fit:cover;
  object-position:center;
  display:block;
  transform:scale(1.015);
  transition:transform .9s cubic-bezier(.2,.8,.2,1), filter .6s ease;
}
.about-image-wrap:hover .about-image{
  transform:scale(1.055);
}
.about-image-wrap::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(16,63,34,.04),rgba(16,63,34,.18));
  pointer-events:none;
}
.about-image-badge{
  position:absolute;
  z-index:2;
  left:24px;
  bottom:24px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 16px;
  border-radius:8px;
  color:#fff;
  background:rgba(16,63,34,.93);
  box-shadow:0 10px 24px rgba(0,0,0,.16);
}
.about-image-badge strong{
  color:#f2cc59;
  font-size:28px;
  line-height:1;
}
.about-image-badge span{
  font-size:10px;
  line-height:1.3;
  font-weight:700;
}
.about-image-line{
  position:absolute;
  z-index:2;
  top:24px;
  left:24px;
  width:42px;
  height:3px;
  background:#e5bd45;
}
.about-feature-copy{
  height:100%;
  padding:42px 48px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.about-feature-copy h2{
  font-size:31px;
  line-height:1.12;
  letter-spacing:-.7px;
  margin:7px 0 15px;
  font-weight:800;
}
.about-feature-copy p{
  font-size:13px;
  line-height:1.65;
  color:#41473c;
  margin-bottom:10px;
}
.about-feature-copy .about-lead{
  font-weight:650;
  color:#252b23;
}
.about-philosophy{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin:18px 0 22px;
  border-top:1px solid #e0e3d4;
  border-bottom:1px solid #e0e3d4;
}
.about-philosophy>div{
  padding:13px 14px 12px 0;
  border-right:1px solid #e0e3d4;
}
.about-philosophy>div:not(:first-child){padding-left:14px}
.about-philosophy>div:last-child{border-right:0}
.about-philosophy span{
  display:block;
  font-size:9px;
  color:#b18418;
  font-weight:800;
  letter-spacing:.6px;
  margin-bottom:3px;
}
.about-philosophy b{
  display:block;
  font-size:14px;
  font-weight:800;
  color:#155126;
}
.about-philosophy small{
  display:block;
  margin-top:2px;
  font-size:9px;
  line-height:1.3;
  color:#6a7063;
}
.about-feature-copy .small-btn{
  align-self:flex-start;
}
.about-feature-copy .small-btn span{
  transition:transform .25s ease;
  display:inline-block;
}
.about-feature-copy .small-btn:hover span{
  transform:translateX(4px);
}
.about-secondary-card{
  min-height:150px!important;
  padding:25px 28px!important;
}
.about-secondary-card h3{
  font-size:17px;
  line-height:1.3;
  margin:7px 0 8px;
  font-weight:800;
}
.about-secondary-card p{
  font-size:12px;
  line-height:1.55;
  margin:0;
}
.mini-kicker{
  font-size:9px;
  letter-spacing:1.2px;
  color:#9a761e;
  font-weight:800;
}

/* Keep motion subtle on the new About image. */
.about-image-wrap.reveal-right.is-visible .about-image{
  animation:aboutImageIn .9s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes aboutImageIn{
  from{opacity:.55;transform:scale(1.08)}
  to{opacity:1;transform:scale(1.015)}
}

@media(max-width:1199px){
  .hero{
    min-height:680px;
  }
  .hero-inner,.hero-inner > .row{
    min-height:680px;
  }
  .hero-copy{
    padding-top:70px;
  }
  .enquiry-card{
    margin-top:90px;
  }
  .premium-menu-header,
  .premium-menu-body{
    padding-left:30px!important;
    padding-right:30px!important;
  }
  .about-feature-copy{
    padding:34px 34px;
  }
}
@media(max-width:767px){
  .hero{
    min-height:auto;
    display:block;
  }
  .hero-inner,.hero-inner > .row{
    min-height:auto;
  }
  .hero-copy{
    padding-top:48px;
  }
  .enquiry-card{
    margin:24px auto 28px;
  }

  .premium-menu{
    top:58px!important;
    max-height:78vh!important;
  }
  .premium-menu-header{
    padding:14px 18px 7px!important;
  }
  .premium-menu-body{
    padding:3px 18px 18px!important;
    overflow-y:auto;
  }
  .menu-intro{
    display:block;
  }
  .menu-intro p{
    margin-top:4px!important;
  }
  .premium-nav{
    grid-template-columns:1fr;
  }
  .premium-nav-link{
    min-height:45px!important;
    border-right:0!important;
    border-bottom:1px solid #e6e8e1!important;
  }
  .nav-label{
    font-size:14px!important;
  }

  .about-image-wrap,
  .about-image{
    min-height:300px;
  }
  .about-feature-copy{
    padding:28px 22px 30px;
  }
  .about-feature-copy h2{
    font-size:26px;
  }
  .about-philosophy{
    grid-template-columns:1fr;
  }
  .about-philosophy>div,
  .about-philosophy>div:not(:first-child){
    padding:10px 0;
    border-right:0;
    border-bottom:1px solid #e0e3d4;
  }
  .about-philosophy>div:last-child{
    border-bottom:0;
  }
}

/* V5 SEO/content presentation */
.service-grid .service-card{
  cursor:pointer;
  min-height:210px;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.service-grid .service-card:hover,
.service-grid .service-card:focus-visible{
  transform:translateY(-6px);
  box-shadow:0 16px 34px rgba(27,73,42,.12);
}
.service-icon{
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;
  background:#f2cc59;color:#155126;
  font-size:11px;font-weight:800;
  margin-bottom:15px;
}
.service-card h3{font-size:18px;line-height:1.25;margin-bottom:8px}
.service-card p{font-size:12px;line-height:1.55}
.service-card>span{font-size:11px;font-weight:800;color:#155126}
.seo-location-strip{
  margin-top:22px;padding:13px 18px;
  border-top:1px solid #dfe4d7;border-bottom:1px solid #dfe4d7;
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;
  font-size:10px;color:#687064;
}
.seo-location-strip b{color:#155126}
.seo-location-strip i{font-style:normal;color:#c39a29}
.experience-panel{height:100%;padding:30px 32px;border-radius:12px}
.experience-panel h2{font-size:25px;line-height:1.2;margin:8px 0 20px}
.approach-list>div{
  display:grid;grid-template-columns:80px 1fr;
  gap:12px;padding:12px 0;border-top:1px solid rgba(20,70,35,.15);
}
.approach-list b{color:#155126;font-size:13px}
.approach-list span,.engagement-list p{font-size:12px;line-height:1.55}
.engagement-list p{margin:0;padding:11px 0;border-top:1px solid rgba(20,70,35,.15)}
.engagement-list b{color:#155126}
.faq-section details{
  background:#fffef7;border:1px solid #e0e4d7;border-radius:9px;
  padding:16px 18px;transition:.25s ease;
}
.faq-section details:hover{border-color:#c8b15d;box-shadow:0 8px 20px rgba(0,0,0,.05)}
.faq-section summary{cursor:pointer;font-size:14px;font-weight:800;color:#155126}
.faq-section details p{font-size:12px;line-height:1.6;margin:10px 0 0;color:#555b50}
@media(max-width:767px){
 .service-grid .service-card{min-height:0}
 .seo-location-strip{font-size:9px}
 .experience-panel{padding:24px 20px}
 .experience-panel h2{font-size:22px}
 .approach-list>div{grid-template-columns:1fr;gap:3px}
}

/* =========================================================
   V6 FINAL POLISH — FULL HERO + TOP DROP MENU + ENQUIRY + ABOUT
   ========================================================= */
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{overflow-x:hidden}

/* Header sits over the hero, like a premium landing page. */
.site-header{
  position:absolute;top:0;left:0;right:0;z-index:1050;
  background:linear-gradient(180deg,rgba(255,255,248,.94),rgba(255,255,248,.68),rgba(255,255,248,0));
  border-bottom:1px solid rgba(35,73,38,.08);
  backdrop-filter:blur(8px);
}
.site-header .navbar{min-height:76px}
.brand-logo{width:225px!important;height:64px!important;object-fit:contain;object-position:left center}
.header-actions{display:flex;align-items:center;gap:10px}
.header-consult{
  display:inline-flex;align-items:center;justify-content:center;
  padding:9px 16px;border:1px solid rgba(21,81,38,.35);border-radius:5px;
  color:#155126;background:rgba(255,255,250,.72);font-size:11px;font-weight:800;
  transition:.25s ease
}
.header-consult:hover{background:#155126;color:#fff;transform:translateY(-1px)}
.menu-btn{position:relative;width:43px!important;height:43px!important;border:1px solid rgba(21,81,38,.18);background:rgba(255,255,250,.78)!important;border-radius:6px;display:grid;place-items:center;cursor:pointer}
.menu-bars{display:grid;gap:4px;width:17px}
.menu-bars span{display:block;height:1.5px;background:#155126;transition:.3s ease}
.menu-btn.is-open .menu-bars span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.menu-btn.is-open .menu-bars span:nth-child(2){opacity:0}
.menu-btn.is-open .menu-bars span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
.user-btn{font-size:24px!important;color:#155126!important;display:grid;place-items:center;width:38px;height:38px}

/* Small top dropdown instead of the old large side drawer. */
.quick-menu{
  position:absolute;top:76px;left:0;right:0;z-index:1049;
  background:rgba(255,255,250,.985);border-top:1px solid rgba(21,81,38,.08);
  border-bottom:1px solid #dfe5d6;box-shadow:0 15px 34px rgba(20,50,28,.13);
  transform-origin:top;animation:quickDrop .32s cubic-bezier(.2,.8,.2,1) both;
}
.quick-menu[hidden]{display:none!important}
@keyframes quickDrop{from{opacity:0;transform:translateY(-10px) scaleY(.96)}to{opacity:1;transform:none}}
.quick-menu-inner{max-width:1720px;margin:auto;padding:12px 44px 15px}
.quick-menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}
.quick-menu-head>span{font-size:9px;letter-spacing:1.5px;font-weight:800;color:#8c6b19}
.quick-close{width:30px;height:30px;border:1px solid #d9dfd1;border-radius:50%;background:#fff;color:#155126;display:grid;place-items:center;transition:.25s ease}
.quick-close:hover{background:#155126;color:#fff;transform:rotate(90deg)}
.quick-links{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #e5e9df}
.quick-links a{display:grid;grid-template-columns:27px 1fr 14px;align-items:center;gap:7px;padding:12px 13px;color:#1c241d;border-right:1px solid #e5e9df;font-size:12px;font-weight:700;transition:.22s ease}
.quick-links a:last-child{border-right:0}
.quick-links a:hover{background:#f1f5e8;color:#155126;padding-left:17px}
.quick-links a span{font-size:9px;color:#a07c20;font-weight:800}
.quick-links a i{font-size:11px;transition:.22s ease}
.quick-links a:hover i{transform:translate(2px,-2px)}

/* Full-width hero image. Text remains readable through a soft gradient. */
.hero{
  min-height:clamp(620px,100vh,860px)!important;
  position:relative;display:flex;align-items:center;overflow:hidden;
  padding-top:76px;
}
.hero-photo{inset:0!important;left:0!important;z-index:0!important;background-image:url('assets/hero-business-clean.jpg')!important;background-size:cover!important;background-position:center 55%!important;animation:heroKenBurns 18s ease-in-out infinite alternate}
.hero-overlay{inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(247,243,212,.98) 0%,rgba(247,243,212,.94) 33%,rgba(247,243,212,.70) 50%,rgba(247,243,212,.28) 68%,rgba(247,243,212,.08) 100%)!important}
.hero-shine{position:absolute;z-index:2;inset:0;background:radial-gradient(circle at 78% 30%,rgba(255,255,255,.20),transparent 25%);pointer-events:none}
.hero-inner{position:relative;z-index:3;width:100%}
.hero-copy{max-width:700px;padding-top:35px!important;padding-bottom:45px!important}
.hero h1{font-size:clamp(42px,4.3vw,66px)!important;line-height:1.02!important;letter-spacing:-2px!important;margin:10px 0 17px!important;text-wrap:balance}
.hero h1 span{display:inline-block}
.hero p{font-size:15px!important;line-height:1.65!important;max-width:590px!important;margin-bottom:21px!important;font-weight:600;color:#20251f!important}
.hero-actions{gap:10px}
.btn-green,.btn-outline-green{font-size:12px!important;padding:11px 19px!important;border-radius:5px!important}
.btn-green i{margin-left:5px;transition:transform .2s ease}.btn-green:hover i{transform:translateX(4px)}
.value-points{margin-top:30px!important}
.value-points>div{padding-left:18px;padding-right:18px;min-width:122px}
.value-points>div:first-child{padding-left:0}
.value-points i{font-size:22px!important}
.value-points span{font-size:10px!important}
.hero-bottom-note{position:absolute;z-index:3;bottom:20px;right:44px;display:flex;gap:9px;align-items:center;font-size:15px;letter-spacing:1.5px;font-weight:900;color:#244d2b}.hero-bottom-note b{color:#b38b1e}

/* Floating enquiry: hidden initially, slides in after 3 seconds. */
.floating-enquiry{
  position:fixed;z-index:1080;right:28px;bottom:26px;width:315px;
  background:#fffef8;border:1px solid rgba(21,81,38,.18);border-radius:10px;
  box-shadow:0 18px 55px rgba(25,45,27,.25);overflow:visible;
  opacity:0;visibility:hidden;transform:translateY(25px) scale(.96);transition:.45s cubic-bezier(.2,.8,.2,1)
}
.floating-enquiry.show{opacity:1;visibility:visible;transform:none}
.floating-enquiry::after{content:'';position:absolute;right:20px;bottom:-8px;width:16px;height:16px;background:#fffef8;border-right:1px solid rgba(21,81,38,.18);border-bottom:1px solid rgba(21,81,38,.18);transform:rotate(45deg);z-index:-1}
.floating-enquiry-close{position:absolute;right:-10px;top:-10px;width:28px;height:28px;border:1px solid #d6dccf;background:#fff;border-radius:50%;color:#155126;display:grid;place-items:center;z-index:3;box-shadow:0 5px 14px rgba(0,0,0,.12);transition:.25s ease}
.floating-enquiry-close:hover{background:#155126;color:#fff;transform:rotate(90deg)}
.floating-enquiry .enquiry-title{background:#155126;padding:11px 13px;font-size:12px;letter-spacing:.2px;border-radius:9px 9px 0 0}
.floating-enquiry form{padding:12px}
.floating-enquiry .form-control,.floating-enquiry .form-select{height:34px;font-size:10px;border:1px solid #cdd3c4;border-radius:4px;margin-bottom:7px;padding:6px 8px}
.floating-enquiry textarea.form-control{height:53px;resize:none}
.floating-enquiry .submit-btn{height:35px;font-size:10px}.floating-enquiry .submit-btn i{margin-left:4px}
.form-status{min-height:16px;font-size:9px;margin:1px 0 5px;font-weight:700}.form-status.error{color:#9a2f26}.form-status.success{color:#155126}

/* About section: two alternating image/text stories. */
.about-section{background:#fffef8;padding-top:52px!important;padding-bottom:55px!important}
.about-section .section-heading{max-width:850px;margin:0 auto 34px}
.about-section .section-heading h2{font-size:32px!important;line-height:1.14;margin:7px 0 9px}
.about-section .section-heading p{font-size:13px;color:#656b5e}
.about-story-row{display:grid;grid-template-columns:1.02fr .98fr;min-height:405px;margin-bottom:24px;border:1px solid #e1e5d8;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 10px 32px rgba(54,64,40,.06)}
.about-story-row.reverse{grid-template-columns:.98fr 1.02fr}
.about-story-row.reverse .about-story-image{order:2}
.about-story-row.reverse .about-story-copy{order:1}
.about-story-image{min-height:405px;overflow:hidden;position:relative;background:#e8eddc}
.about-story-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,81,38,.02),rgba(21,81,38,.16));pointer-events:none}
.about-story-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.about-story-row:hover .about-story-image img{transform:scale(1.045)}
.about-story-copy{padding:50px 58px;display:flex;flex-direction:column;justify-content:center}
.story-index{font-size:30px;letter-spacing:1.5px;font-weight:800;color:#a27b1e}
.about-story-copy h3{font-size:32px;line-height:1.12;letter-spacing:-.7px;margin:9px 0 15px;color:#1c281e;font-weight:800}
.about-story-copy p{font-size:13px;line-height:1.7;color:#4e554a;margin:0 0 10px;max-width:640px}
.story-link{display:inline-flex;align-items:center;gap:7px;margin-top:11px;color:#155126;font-size:11px;font-weight:800;width:max-content}.story-link i{transition:.2s}.story-link:hover i{transform:translate(3px,-3px)}
.support-list{margin-top:7px;display:grid;gap:9px}.support-list div{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.45;font-weight:700;color:#394236}.support-list i{color:#155126;font-size:16px;margin-top:1px}
.philosophy-band{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:center;margin-top:30px;padding:24px 28px;border-radius:12px;background:linear-gradient(110deg,#edf2dc,#f7e8a9);border:1px solid #dfe4cf}
.philosophy-band>div:first-child span{font-size:9px;letter-spacing:1.3px;color:#8b691b;font-weight:800}.philosophy-band h3{font-size:22px;margin:5px 0 0;color:#155126}.philosophy-band h3 b{color:#bd9226;margin:0 5px}.philosophy-band>p{font-size:12px;line-height:1.6;margin:0;color:#4b5245;font-weight:600}.method-tags{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;padding-top:3px}.method-tags span{font-size:9px;font-weight:800;padding:6px 9px;border-radius:20px;background:rgba(255,255,255,.7);border:1px solid rgba(21,81,38,.12);color:#36513b}

/* Experience/industries compact and visual. */
.experience-section{background:#f8f8ef;padding:48px 0!important}.experience-section .section-heading{max-width:820px;margin:0 auto 25px}.experience-section .section-heading h2{font-size:29px;margin:7px 0 8px}.experience-section .section-heading p{font-size:12px;color:#62695d}.experience-pills{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;max-width:1100px;margin:auto}.experience-pills span{padding:10px 13px;border:1px solid #dce3d4;background:#fff;border-radius:7px;font-size:10px;font-weight:700;color:#3e493d;transition:.25s ease}.experience-pills span:hover{border-color:#c6a03a;transform:translateY(-2px);box-shadow:0 7px 15px rgba(70,75,44,.07)}.geo-line{margin-top:23px;padding-top:15px;border-top:1px solid #dfe4d8;display:flex;justify-content:center;gap:14px;flex-wrap:wrap;font-size:10px;color:#697066}.geo-line b{color:#155126}.geo-line span::before{content:'•';margin-right:14px;color:#c39a29}

/* Service cards are deliberately clickable again. */
.service-card-btn{cursor:pointer!important}.service-card-btn .service-icon{transition:.35s cubic-bezier(.2,.8,.2,1)}.service-card-btn:hover .service-icon,.service-card-btn:focus-visible .service-icon{transform:rotate(-8deg) scale(1.08);box-shadow:0 8px 18px rgba(196,154,46,.18)}

/* Testimonials: exactly 2 cards on desktop, 1 on phone, with dots. */
.testimonials{background:#fff;padding-top:48px!important;padding-bottom:50px!important}.testimonial-shell{max-width:1180px;margin:auto}.testimonial-item{flex:0 0 50%;padding:0 10px}.testimonial-item .quote-card{min-height:225px;border-radius:12px}.testimonial-controls{margin-top:20px}
/* =========================================
   SANGATI MENU ICON - FINAL FIX
   3 LINES -> ANIMATED CROSS
   ========================================= */
 
.menu-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
 
    padding: 0 !important;
    margin: 0 !important;
 
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
 
    position: relative !important;
    border: 1px solid rgba(20, 70, 35, 0.18) !important;
    border-radius: 8px !important;
 
    background: rgba(255,255,255,.94) !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.08) !important;
 
    cursor: pointer;
    z-index: 2000;
}
 
/* Hamburger container */
.menu-bars {
    width: 20px !important;
    height: 16px !important;
 
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
 
    align-items: center !important;
 
    position: relative !important;
}
 
/* THREE VISIBLE LINES */
.menu-bars span {
    display: block !important;
 
    width: 20px !important;
    height: 2px !important;
 
    min-height: 2px !important;
 
    background: #174d2a !important;
 
    border-radius: 20px !important;
 
    opacity: 1 !important;
    visibility: visible !important;
 
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
 
    transform-origin: center !important;
 
    transition:
        transform .35s ease,
        opacity .2s ease,
        width .35s ease !important;
}
 
/* =========================================
   WHEN MENU IS OPEN
   3 LINES -> X
   ========================================= */
 
.menu-btn.is-open .menu-bars span:nth-child(1) {
    transform: translateY(7px) rotate(45deg) !important;
}
 
.menu-btn.is-open .menu-bars span:nth-child(2) {
    opacity: 0 !important;
    width: 0 !important;
}
 
.menu-btn.is-open .menu-bars span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg) !important;
}
 
/* Small hover animation */
.menu-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 7px 18px rgba(0,0,0,.12) !important;
}

/* =========================================
   GLOBAL EXPOSURE SECTION
========================================= */
 
.global-exposure-section {
    position: relative;
    padding: 40px 7%;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 50%,
        rgba(210,178,72,.10),
        transparent 38%),
        #f8f9f5;
}
 
/* Heading */
 
.global-heading {
    max-width: 720px;
    margin: 0 auto 65px;
    text-align: center;
}
 
.global-heading span {
    font-size: 38px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #b18a27;
}
 
.global-heading h2 {
    margin: 12px 0;
    font-size: clamp(30px, 4vw, 48px);
    color: #183f2a;
    font-weight: 700;
}
 
.global-heading p {
    max-width: 600px;
    margin: auto;
    color: #68736c;
    line-height: 1.7;
    font-size: 15px;
}
 
 
/* =========================================
   MAP AREA
========================================= */
 
.global-map {
    width: min(1100px, 100%);
    height: 560px;
    margin: auto;
 
    position: relative;
 
    border-radius: 30px;
 
    background:
        radial-gradient(circle at center,
        rgba(193,164,59,.12),
        transparent 28%),
        linear-gradient(
            135deg,
            #edf4ec,
            #f8faf6
        );
 
    border: 1px solid rgba(24,63,42,.10);
 
    box-shadow:
        0 25px 70px rgba(20,50,35,.08);
 
    overflow: hidden;
}
 
 
/* Decorative grid */
 
.global-map::before {
    content: "";
    position: absolute;
    inset: 0;
 
    background-image:
        linear-gradient(
            rgba(24,63,42,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(24,63,42,.045) 1px,
            transparent 1px
        );
 
    background-size: 55px 55px;
 
    mask-image: radial-gradient(
        circle,
        black 30%,
        transparent 75%
    );
}
 
 
/* =========================================
   CENTER
========================================= */
 
.global-center {
    position: absolute;
 
    left: 50%;
    top: 50%;
 
    transform: translate(-50%, -50%);
 
    width: 150px;
    height: 150px;
 
    border-radius: 50%;
 
    background: rgba(255,255,255,.94);
 
    border: 1px solid rgba(177,138,39,.30);
 
    box-shadow:
        0 15px 45px rgba(25,65,40,.13);
 
    display: flex;
    align-items: center;
    justify-content: center;
 
    flex-direction: column;
 
    z-index: 5;
}
 
.center-logo {
    width: 48px;
    height: 48px;
 
    border-radius: 50%;
 
    display: flex;
    align-items: center;
    justify-content: center;
 
    background: #d4b447;
 
    color: white;
 
    font-size: 23px;
    font-weight: 700;
 
    margin-bottom: 8px;
 
    box-shadow:
        0 8px 22px rgba(177,138,39,.30);
}
 
.global-center span {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: #183f2a;
}
 
.global-center small {
    font-size: 8px;
    letter-spacing: 1.2px;
    color: #9a8550;
    margin-top: 3px;
}
 
 
/* Center animation */
 
.center-ring {
    position: absolute;
 
    border: 1px solid rgba(177,138,39,.25);
 
    border-radius: 50%;
 
    animation: centerPulse 3s infinite;
}
 
.ring-one {
    width: 185px;
    height: 185px;
}
 
.ring-two {
    width: 230px;
    height: 230px;
 
    animation-delay: 1.2s;
}
 
@keyframes centerPulse {
 
    0% {
        opacity: .7;
        transform: scale(.85);
    }
 
    70% {
        opacity: 0;
        transform: scale(1.1);
    }
 
    100% {
        opacity: 0;
    }
}
 
 
/* =========================================
   COUNTRY NODE
========================================= */
 
.country-node {
    position: absolute;
 
    display: flex;
    align-items: center;
 
    gap: 12px;
 
    z-index: 8;
 
    cursor: pointer;
 
    transition:
        transform .35s ease;
}
 
.country-node:hover {
    transform: translateY(-7px) scale(1.03);
}
 
 
/* Flag circle */
 
.country-dot {
    width: 52px;
    height: 52px;
 
    border-radius: 50%;
 
    background: white;
 
    display: flex;
    align-items: center;
    justify-content: center;
 
    font-size: 25px;
 
    border: 2px solid rgba(177,138,39,.45);
 
    box-shadow:
        0 8px 25px rgba(20,50,35,.12);
 
    position: relative;
 
    z-index: 3;
}
 
 
/* Pulse */
 
.country-pulse {
    position: absolute;
 
    width: 52px;
    height: 52px;
 
    border-radius: 50%;
 
    border: 1px solid rgba(177,138,39,.45);
 
    animation: countryPulse 2.5s infinite;
}
 
@keyframes countryPulse {
 
    0% {
        transform: scale(.8);
        opacity: .7;
    }
 
    80% {
        transform: scale(1.5);
        opacity: 0;
    }
 
    100% {
        opacity: 0;
    }
}
 
 
/* Country text */
 
.country-info {
    background: rgba(255,255,255,.88);
 
    backdrop-filter: blur(10px);
 
    padding: 9px 14px;
 
    border-radius: 9px;
 
    border: 1px solid rgba(24,63,42,.09);
 
    box-shadow:
        0 7px 20px rgba(20,50,35,.07);
 
    min-width: 165px;
}
 
.country-info strong {
    display: block;
 
    color: #183f2a;
 
    font-size: 14px;
 
    margin-bottom: 3px;
}
 
.country-info small {
    display: block;
 
    color: #78817b;
 
    font-size: 10px;
 
    line-height: 1.4;
}
 
 
/* =========================================
   COUNTRY POSITIONS
========================================= */
 
.india {
    top: 40%;
    right: 13%;
}
 
.uae {
    top: 20%;
    right: 29%;
}
 
.usa {
    top: 18%;
    left: 7%;
}
 
.australia {
    bottom: 14%;
    right: 10%;
}
 
.brazil {
    bottom: 18%;
    left: 9%;
}
 
.africa {
    bottom: 10%;
    left: 34%;
}
 
 
/* =========================================
   CONNECTION LINES
========================================= */
 
.map-line {
    position: absolute;
 
    height: 1px;
 
    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(177,138,39,.45),
            transparent
        );
 
    transform-origin: left center;
 
    z-index: 1;
 
    animation: lineFlow 3s infinite ease-in-out;
}
 
.line-1 {
    width: 300px;
 
    left: 27%;
    top: 34%;
 
    transform: rotate(12deg);
}
 
.line-2 {
    width: 230px;
 
    left: 52%;
    top: 42%;
 
    transform: rotate(-18deg);
}
 
.line-3 {
    width: 270px;
 
    left: 29%;
    top: 55%;
 
    transform: rotate(-17deg);
}
 
.line-4 {
    width: 290px;
 
    left: 50%;
    top: 55%;
 
    transform: rotate(25deg);
}
 
.line-5 {
    width: 220px;
 
    left: 34%;
    top: 63%;
 
    transform: rotate(5deg);
}
 
@keyframes lineFlow {
 
    0%,100% {
        opacity: .25;
    }
 
    50% {
        opacity: .8;
    }
}
 
 
/* =========================================
   STATS
========================================= */
 
.global-stats {
    max-width: 850px;
 
    margin: 45px auto 0;
 
    display: grid;
 
    grid-template-columns:
        repeat(4, 1fr);
 
    gap: 15px;
}
 
.global-stats div {
    text-align: center;
 
    padding: 20px;
 
    border-right:
        1px solid rgba(24,63,42,.10);
}
 
.global-stats div:last-child {
    border-right: 0;
}
 
.global-stats strong {
    display: block;
 
    color: #183f2a;
 
    font-size: 22px;
 
    margin-bottom: 5px;
}
 
.global-stats span {
    font-size: 11px;
 
    color: #7a837d;
}
 
 
/* =========================================
   MOBILE
========================================= */
 
@media (max-width: 768px) {
 
    .global-exposure-section {
        padding: 70px 18px;
    }
 
    .global-map {
        height: 620px;
    }
 
    .global-center {
        width: 125px;
        height: 125px;
    }
 
    .center-logo {
        width: 40px;
        height: 40px;
    }
 
    .country-node {
        transform: scale(.82);
    }
 
    .country-node:hover {
        transform: scale(.88) translateY(-5px);
    }
 
    .usa {
        top: 8%;
        left: 2%;
    }
 
    .uae {
        top: 25%;
        right: 0;
    }
 
    .india {
        top: 40%;
        right: 0;
    }
 
    .brazil {
        bottom: 25%;
        left: 0;
    }
 
    .africa {
        bottom: 10%;
        left: 8%;
    }
 
    .australia {
        bottom: 8%;
        right: 0;
    }
 
    .country-info {
        min-width: 130px;
    }
 
    .global-stats {
        grid-template-columns: repeat(2, 1fr);
    }
 
    .global-stats div {
        border-right: 0;
        border-bottom:
            1px solid rgba(24,63,42,.08);
    }
 
}
 
/* Mobile */
@media (max-width: 767px) {
 
    .menu-btn {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
    }
 
    .menu-bars,
    .menu-bars span {
        width: 19px !important;
    }
}

/* ==========================================
   CROSS-SECTOR EXPERIENCE
   ========================================== */
 
.cross-sector-section {
    position: relative;
    padding: 100px 0 90px;
    background: #fbfdf9;
    overflow: hidden;
}
 
.cross-sector-section::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    left: -220px;
    top: -180px;
    border: 35px solid rgba(26, 91, 54, 0.05);
    border-radius: 50%;
}
 
.cross-sector-section::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    right: -80px;
    top: 80px;
    background: rgba(45, 120, 75, 0.06);
    border-radius: 50%;
}
 
.cross-sector-heading {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 1000px;
    margin: 0 auto 48px;
}
 
.expertise-label {
    display: inline-flex;
    align-items: center;
    gap: 25px;
    margin-bottom: 20px;
    color: #c99a28;
    font-size: 32px;
    font-weight: 800;
    letter-spacing: 3px;
}
 
.expertise-label::before,
.expertise-label::after {
    content: "";
    width: 88px;
    height: 2px;
    background: #d3ad45;
}
 
.cross-sector-heading h2 {
    margin: 0;
    color: #0c4f37;
    font-size: clamp(38px, 5vw, 64px);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -2px;
}
 
.cross-sector-heading p {
    max-width: 850px;
    margin: 25px auto 0;
    color: #5c7370;
    font-size: 18px;
    line-height: 1.65;
}
 
 
/* ==========================================
   6 + 6 GRID
   ========================================== */
 
.experience-grid {
    position: relative;
    z-index: 2;
 
    display: grid;
 
    /* IMPORTANT: 6 cards in one row */
    grid-template-columns: repeat(6, 1fr);
 
    gap: 18px;
 
    max-width: 1250px;
    margin: 0 auto;
}
 
 
/* CARD */
 
.experience-card {
    min-height: 210px;
 
    padding: 25px 15px 20px;
 
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
 
    text-align: center;
 
    background: #ffeecc;
 
    border: 1px solid rgba(34, 113, 70, 0.16);
 
    border-radius: 14px;
 
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        background 0.35s ease,
        border-color 0.35s ease;
}
 
.experience-card:hover {
    transform: translateY(-8px);
 
    background: #ffffff;
 
    border-color: rgba(34, 113, 70, 0.3);
 
    box-shadow:
        0 18px 40px rgba(19, 74, 47, 0.10);
}
 
 
/* ICON */
 
.experience-icon {
    width: 78px;
    height: 78px;
 
    display: flex;
    align-items: center;
    justify-content: center;
 
    margin-bottom: 18px;
 
    border-radius: 50%;
 
    background: rgba(37, 126, 75, 0.09);
 
    color: #08603f;
 
    font-size: 34px;
 
    transition: all 0.35s ease;
}
 
.experience-card:hover .experience-icon {
    background: #e5f1e7;
    transform: scale(1.08);
}
 
 
/* TITLE */
 
.experience-card h3 {
    min-height: 54px;
 
    margin: 0;
 
    color: #0b4f3b;
 
    font-size: 16px;
    line-height: 1.45;
 
    font-weight: 700;
}
 
 
/* GOLD UNDERLINE */
 
.experience-card > span {
    display: block;
 
    width: 38px;
    height: 2px;
 
    margin-top: 16px;
 
    background: #d3a52d;
 
    transition: width 0.3s ease;
}
 
.experience-card:hover > span {
    width: 55px;
}
 
 
/* ==========================================
   BOTTOM MESSAGE
   ========================================== */
 
.experience-bottom {
    position: relative;
    z-index: 2;
 
    max-width: 2060px;
 
    margin: 40px auto 0;
 
    min-height: 110px;
 
    padding: 25px 45px;
 
    display: flex;
    align-items: center;
    gap: 25px;
 
    background: linear-gradient(
        90deg,
        #edf6ed,
        #f3f8ee
    );
 
    border-radius: 22px;
}
 
.bottom-leaf {
    flex: 0 0 auto;
 
    width: 62px;
    height: 62px;
 
    display: flex;
    align-items: center;
    justify-content: center;
 
    color: #17643f;
 
    font-size: 38px;
 
    border-right: 2px solid #d3a52d;
 
    padding-right: 22px;
}
 
.experience-bottom p {
    margin: 0;
 
    color: #275c4c;
 
    font-size: 16px;
    line-height: 1.7;
    font-weight: 500;
}
 
 
/* ==========================================
   TABLET
   ========================================== */
 
@media (max-width: 1100px) {
 
    .experience-grid {
        grid-template-columns: repeat(3, 1fr);
        max-width: 900px;
    }
 
    .experience-card {
        min-height: 200px;
    }
}
 
 
/* ==========================================
   MOBILE
   ========================================== */
 
@media (max-width: 767px) {
 
    .cross-sector-section {
        padding: 70px 15px;
    }
 
    .cross-sector-heading {
        margin-bottom: 35px;
    }
 
    .expertise-label {
        font-size: 32px;
        gap: 12px;
    }
 
    .expertise-label::before,
    .expertise-label::after {
        width: 35px;
    }
 
    .cross-sector-heading h2 {
        font-size: 34px;
        letter-spacing: -1px;
    }
	
	.cross-sector-heading h3 {font-size:32px;line-height:1.12;letter-spacing:-.7px;margin:9px 0 15px;color:#1c281e;font-weight:800}
 
    .cross-sector-heading h2 br {
        display: none;
    }
 
    .cross-sector-heading p {
        font-size: 15px;
        line-height: 1.6;
    }
 
    /*
       Mobile = 2 cards per row
       6 + 6 desktop automatically
    */
 
    .experience-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
 
    .experience-card {
        min-height: 185px;
        padding: 20px 10px 16px;
        border-radius: 12px;
    }
 
    .experience-icon {
        width: 62px;
        height: 62px;
        font-size: 27px;
        margin-bottom: 14px;
    }
 
    .experience-card h3 {
        min-height: auto;
        font-size: 13px;
        line-height: 1.4;
    }
 
    .experience-card > span {
        margin-top: 12px;
        width: 30px;
    }
 
    .experience-bottom {
        margin-top: 30px;
        padding: 22px;
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }
 
    .bottom-leaf {
        width: auto;
        height: auto;
        border-right: 0;
        border-bottom: 2px solid #d3a52d;
        padding: 0 0 10px;
    }
 
    .experience-bottom p {
        font-size: 14px;
    }
}

/* =========================================
   FLOATING WHATSAPP
   ========================================= */
 
.floating-whatsapp {
    position: fixed;
 
    right: 24px;
    bottom: 24px;
 
    width: 58px;
    height: 58px;
 
    display: flex;
    align-items: center;
    justify-content: center;
 
    text-decoration: none;
 
    z-index: 9999;
}
 
 
/* MAIN CIRCLE */
 
.whatsapp-icon {
    position: relative;
    z-index: 5;
 
    width: 56px;
    height: 56px;
 
    display: flex;
    align-items: center;
    justify-content: center;
 
    border-radius: 50%;
 
    background: #25D366;
 
    color: #ffffff;
 
    font-size: 29px;
 
    box-shadow:
        0 8px 22px rgba(37, 211, 102, .35);
 
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}
 
 
/* WAVE / PULSE */
 
.whatsapp-wave {
    position: absolute;
 
    width: 56px;
    height: 56px;
 
    border-radius: 50%;
 
    border: 2px solid #25D366;
 
    opacity: 0;
 
    animation: whatsappWave 2.4s infinite;
}
 
.whatsapp-wave-2 {
    animation-delay: 1.2s;
}
 
 
@keyframes whatsappWave {
 
    0% {
        transform: scale(1);
        opacity: .65;
    }
 
    70% {
        transform: scale(1.65);
        opacity: 0;
    }
 
    100% {
        transform: scale(1.65);
        opacity: 0;
    }
 
}
 
 
/* HOVER */
 
.floating-whatsapp:hover .whatsapp-icon {
 
    transform: scale(1.1);
 
    box-shadow:
        0 12px 30px rgba(37, 211, 102, .5);
}
 
 
/* TOOLTIP */
 
.whatsapp-tooltip {
 
    position: absolute;
 
    right: 70px;
 
    top: 50%;
 
    transform:
        translateY(-50%)
        translateX(8px);
 
    white-space: nowrap;
 
    padding: 8px 13px;
 
    border-radius: 6px;
 
    background: #123f2b;
    color: #ffffff;
 
    font-size: 13px;
    font-weight: 600;
 
    opacity: 0;
    visibility: hidden;
 
    transition:
        opacity .25s ease,
        transform .25s ease;
}
 
.floating-whatsapp:hover .whatsapp-tooltip {
 
    opacity: 1;
    visibility: visible;
 
    transform:
        translateY(-50%)
        translateX(0);
}
 
 
/* MOBILE */
 
@media (max-width: 767px) {
 
    .floating-whatsapp {
 
        right: 16px;
        bottom: 18px;
 
        width: 52px;
        height: 52px;
    }
 
    .whatsapp-icon {
 
        width: 52px;
        height: 52px;
 
        font-size: 26px;
    }
 
    .whatsapp-wave {
 
        width: 52px;
        height: 52px;
    }
 
    .whatsapp-tooltip {
        display: none;
    }
 
}
 
 /* =========================================
   PREMIUM BOOK CONSULTATION BUTTON
   ========================================= */
 
.btn-consultation {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
 
    padding: 13px 24px;
 
    color: #145634 !important;
    background: #ffffff;
 
    border: 1px solid rgba(20, 86, 52, 0.28);
    border-radius: 8px;
 
    font-weight: 700;
    text-decoration: none;
 
    overflow: hidden;
 
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}
 
/* moving shine */
 
.btn-consultation::before {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
 
    width: 70%;
    height: 100%;
 
    background: linear-gradient(
        110deg,
        transparent,
        rgba(255,255,255,.8),
        transparent
    );
 
    transform: skewX(-20deg);
 
    animation: consultationShine 3.8s infinite;
}
 
@keyframes consultationShine {
    0% {
        left: -120%;
    }
 
    45%,
    100% {
        left: 150%;
    }
}
 
.btn-consultation span,
.btn-consultation i {
    position: relative;
    z-index: 2;
}
 
.btn-consultation i {
    transition: transform .3s ease;
}
 
.btn-consultation:hover {
    transform: translateY(-3px);
 
    border-color: #17643f;
 
    box-shadow:
        0 10px 25px rgba(20, 86, 52, .15);
}
 
.btn-consultation:hover i {
    transform: translateX(5px);
}
 
@media(max-width:991px){
  .quick-menu-inner{padding-left:25px;padding-right:25px}.quick-links{grid-template-columns:1fr 1fr}.quick-links a:nth-child(2){border-right:0}.quick-links a:nth-child(3),.quick-links a:nth-child(4),.quick-links a:nth-child(5){border-top:1px solid #e5e9df}.hero{min-height:720px!important}.hero-overlay{background:linear-gradient(90deg,rgba(247,243,212,.97) 0%,rgba(247,243,212,.85) 48%,rgba(247,243,212,.38) 100%)!important}.hero-copy{max-width:620px}.about-story-row,.about-story-row.reverse{grid-template-columns:1fr}.about-story-row.reverse .about-story-image,.about-story-row.reverse .about-story-copy{order:initial}.about-story-image{min-height:320px}.about-story-copy{padding:36px 35px}.philosophy-band{grid-template-columns:1fr}.method-tags{grid-column:auto}
}
@media(max-width:767px){
  html{scroll-padding-top:64px}.site-header .navbar{min-height:64px}.brand-logo{width:185px!important;height:57px!important}.header-consult{display:none!important}.user-btn{font-size:22px!important}.menu-btn{width:40px!important;height:40px!important}
  .quick-menu{top:64px}.quick-menu-inner{padding:10px 16px 13px}.quick-menu-head{margin-bottom:3px}.quick-links{grid-template-columns:1fr}.quick-links a,.quick-links a:nth-child(2),.quick-links a:nth-child(3),.quick-links a:nth-child(4),.quick-links a:nth-child(5){border-right:0;border-top:1px solid #e5e9df;padding:10px 7px;min-height:42px}.quick-links a:first-child{border-top:0}.quick-links a{font-size:12px}
  .hero{min-height:calc(100svh - 0px)!important;padding-top:64px;align-items:center}.hero-photo{background-position:58% center!important}.hero-overlay{background:linear-gradient(180deg,rgba(247,243,212,.98) 0%,rgba(247,243,212,.91) 54%,rgba(247,243,212,.66) 100%)!important}.hero-copy{padding-top:35px!important;padding-bottom:65px!important}.hero h1{font-size:38px!important;letter-spacing:-1.2px!important}.hero p{font-size:13px!important;line-height:1.55!important}.hero-actions a{font-size:11px!important;padding:10px 14px!important}.value-points{margin-top:23px!important;display:grid!important;grid-template-columns:1fr 1fr;gap:12px 0}.value-points>div{padding:0 10px!important;border-right:1px solid #aaa98c!important}.value-points>div:nth-child(2),.value-points>div:nth-child(4){border-right:0!important}.value-points span{font-size:9px!important}.hero-bottom-note{right:18px;bottom:13px;font-size:7px}
  .floating-enquiry{right:13px;left:13px;bottom:15px;width:auto;max-width:360px;margin:auto}.floating-enquiry form{padding:10px}.floating-enquiry .form-control,.floating-enquiry .form-select{height:33px}.floating-enquiry textarea.form-control{height:47px}
  .about-section{padding-top:38px!important;padding-bottom:40px!important}.about-section .section-heading h2{font-size:25px!important}.about-story-row{min-height:0}.about-story-image{min-height:245px}.about-story-copy{padding:29px 22px}.about-story-copy h3{font-size:25px}.about-story-copy p{font-size:12px;line-height:1.6}.support-list div{font-size:11px}.philosophy-band{padding:20px 18px}.philosophy-band h3{font-size:19px}.method-tags span{font-size:8px}
  .experience-section{padding:38px 0!important}.experience-section .section-heading h2{font-size:24px}.experience-pills{justify-content:flex-start}.experience-pills span{font-size:9px;padding:8px 10px}.geo-line{justify-content:flex-start}
  .testimonial-item{flex-basis:100%;padding:0 2px}.testimonial-item .quote-card{min-height:215px;padding:22px 20px}.testimonial-heading{font-size:21px!important}
}
@media(max-width:420px){.brand-logo{width:165px!important}.hero h1{font-size:33px!important}.hero-copy{padding-top:25px!important}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions a{text-align:center}.floating-enquiry{bottom:10px}.floating-enquiry .enquiry-title{padding:9px}.floating-enquiry form{padding:8px}.floating-enquiry .form-control,.floating-enquiry .form-select{margin-bottom:5px}}

/* =========================================================
   MOBILE RESPONSIVE FIXES - SANGATI
   ========================================================= */
 
@media (max-width: 767px) {
 
    /* -----------------------------------------
       1. HERO HEADING OVERLAP FIX
       ----------------------------------------- */
 
    .hero h1,
    .hero-title,
    .hero-content h1 {
        font-size: 42px !important;
        line-height: 1.12 !important;
        letter-spacing: -1px !important;
        margin-top: 14px !important;
        margin-bottom: 20px !important;
    }
 
    .hero .eyebrow,
    .hero-kicker,
    .hero-content .eyebrow {
        font-size: 18px !important;
        line-height: 1.4 !important;
        margin-bottom: 12px !important;
        display: block !important;
    }
 
    /* -----------------------------------------
       2. SERVICE CARDS
       ----------------------------------------- */
 
    .service-card {
        min-height: 0 !important;
        height: auto !important;
 
        padding: 26px 26px 28px !important;
 
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
 
        position: relative !important;
    }
 
    .service-card h3 {
        margin-bottom: 12px !important;
        line-height: 1.25 !important;
    }
 
    .service-card p {
        margin-bottom: 22px !important;
        line-height: 1.55 !important;
    }
 
    /* Explore button ko normal flow mein rakho */
    .service-card .service-link,
    .service-card .explore-link,
    .service-card .btn,
    .service-card a {
        position: static !important;
 
        margin-top: auto !important;
 
        display: inline-flex !important;
        align-items: center !important;
 
        line-height: 1.2 !important;
        min-height: 24px !important;
    }
 
 
    /* -----------------------------------------
       3. SERVICE GRID - MOBILE
       ----------------------------------------- */
 
    .services-grid,
    .service-grid {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }
 
 
    /* -----------------------------------------
       4. WHATSAPP BUTTON
       ----------------------------------------- */
 
    .floating-whatsapp {
        right: 16px !important;
        bottom: 18px !important;
 
        width: 54px !important;
        height: 54px !important;
 
        z-index: 99999 !important;
    }
 
    .whatsapp-icon {
        width: 54px !important;
        height: 54px !important;
 
        font-size: 27px !important;
    }
 
    .whatsapp-wave {
        width: 54px !important;
        height: 54px !important;
    }
 
 
    /* -----------------------------------------
       5. BOOK CONSULTATION BUTTON
       ----------------------------------------- */
 
    .btn-consultation {
        width: 100% !important;
        min-height: 58px !important;
 
        padding: 14px 20px !important;
 
        font-size: 16px !important;
 
        border-radius: 10px !important;
 
        justify-content: center !important;
    }
 
 
    /* -----------------------------------------
       6. HERO CTA STACK
       ----------------------------------------- */
 
    .hero .hero-actions,
    .hero-actions {
        display: flex !important;
        flex-direction: column !important;
 
        gap: 12px !important;
 
        width: 100% !important;
    }
 
    .hero .hero-actions .btn,
    .hero-actions .btn {
        width: 100% !important;
    }
 
 
    /* -----------------------------------------
       7. PREVENT HORIZONTAL OVERFLOW
       ----------------------------------------- */
 
    html,
    body {
        max-width: 100%;
        overflow-x: hidden !important;
    }
 
 
    /* -----------------------------------------
       8. MOBILE CONTAINER
       ----------------------------------------- */
 
    .container {
        width: 100% !important;
        max-width: 100% !important;
 
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
}

@media (max-width: 767px) {
 
    .service-card {
        display: flex !important;
        flex-direction: column !important;
        padding-bottom: 30px !important;
    }
 
    .service-card > a:last-child {
        position: static !important;
        margin-top: 18px !important;
        transform: none !important;
    }
 
    .service-card > .explore,
    .service-card .explore {
        position: static !important;
        margin-top: 18px !important;
    }
}

/* =========================================================
   GEOGRAPHIC EXPOSURE - MOBILE FIX
   ========================================================= */
 
@media (max-width: 767px) {
 
    .global-map,
    .country-map,
    .geographic-map,
    .country-network {
        position: relative !important;
        height: 1050px !important;
        min-height: 1050px !important;
        overflow: hidden !important;
    }
 
    /* Main map/card */
    .global-map-container,
    .map-container,
    .geographic-map-container {
        height: 100% !important;
        min-height: 1050px !important;
        border-radius: 35px !important;
        margin: 0 8px !important;
    }
 
 
    /* =========================================
       COUNTRY NODES
       ========================================= */
 
    .country-node {
        position: absolute !important;
 
        width: auto !important;
        min-width: 190px !important;
 
        display: flex !important;
        align-items: center !important;
 
        gap: 10px !important;
 
        transform: none !important;
 
        z-index: 10 !important;
    }
 
    .country-node .country-circle {
        flex: 0 0 62px !important;
 
        width: 62px !important;
        height: 62px !important;
 
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
 
        border-radius: 50% !important;
 
        font-size: 21px !important;
    }
 
    .country-node .country-label {
        min-width: 150px !important;
 
        padding: 17px 16px !important;
 
        border-radius: 10px !important;
 
        font-size: 15px !important;
 
        white-space: nowrap !important;
 
        box-shadow: 0 8px 25px rgba(0,0,0,.06) !important;
    }
 
 
    /* =========================================
       6 COUNTRIES - CLEAN MOBILE POSITIONS
       ========================================= */
 
    /* Bahrain */
    .country-node:nth-child(1) {
        top: 75px !important;
        left: 45px !important;
    }
 
    /* UAE */
    .country-node:nth-child(2) {
        top: 220px !important;
        right: 30px !important;
    }
 
    /* India */
    .country-node:nth-child(3) {
        top: 365px !important;
        left: 42px !important;
    }
 
    /* Qatar */
    .country-node:nth-child(4) {
        top: 510px !important;
        right: 30px !important;
    }
 
    /* Oman */
    .country-node:nth-child(5) {
        top: 655px !important;
        left: 42px !important;
    }
 
    /* Saudi Arabia */
    .country-node:nth-child(6) {
        top: 800px !important;
        right: 25px !important;
    }
 
 
    /* =========================================
       CENTRAL SANGATI LOGO
       ========================================= */
 
    .map-center,
    .country-center,
    .central-node,
    .sangati-map-center {
        position: absolute !important;
 
        top: 480px !important;
        left: 50% !important;
 
        transform: translate(-50%, -50%) !important;
 
        width: 145px !important;
        height: 145px !important;
 
        z-index: 20 !important;
    }
 
    .map-center img,
    .country-center img,
    .central-node img,
    .sangati-map-center img {
        max-width: 105px !important;
        max-height: 75px !important;
        object-fit: contain !important;
    }
 
 
    /* =========================================
       CONNECTION LINES
       ========================================= */
 
    .country-line,
    .connection-line,
    .map-line {
        opacity: .35 !important;
    }
 
 
    /* =========================================
       WHATSAPP - DON'T COVER CONTENT
       ========================================= */
 
    .floating-whatsapp {
        right: 14px !important;
        bottom: 18px !important;
 
        width: 54px !important;
        height: 54px !important;
 
        z-index: 99999 !important;
    }
 
    .whatsapp-icon {
        width: 54px !important;
        height: 54px !important;
        font-size: 27px !important;
    }
 
    .whatsapp-wave {
        width: 54px !important;
        height: 54px !important;
    }
}