*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
:root{
  --black:#080c0a;
  --gold:#c9a84c;
  --gold-light:#e8cc7a;
  --ivory:#f7f3ec;
  --ivory-dark:#ede8df;
  --burgundy:#4a1220;
  --burgundy-mid:#7a1e35;
  --burgundy-light:#c4566a;
  --navy:#0a1628;
  --navy-mid:#16274a;
  --navy-accent:#2b6cb0;
  --terracotta:#c4572a;
  --terra-light:#e8845a;
  --terra-pale:#f5e8e0;
  --charcoal:#1a1f2e;
  --slate:#2c3347;
  --amber:#b07d2a;
  --amber-light:#e8b84b;
  --rose:#3d1f2b;
  --rose-mid:#7c3d52;
  --rose-pale:#f5e8ee;
  --emerald:#0e2e1f;
  --emerald-mid:#1d5c3a;
  --emerald-accent:#2e9460;
  --emerald-pale:#e0f0e8;
  --plum:#2a1640;
  --plum-mid:#5a3080;
  --plum-accent:#9b6dcc;
  --plum-pale:#ede5f8;
}
body{font-family:'DM Sans',sans-serif;background:var(--ivory);color:var(--black);overflow-x:hidden;}
a{text-decoration:none;color:inherit;}

/* ─────────────────────────────────────────── NAVBAR */
#nav{position:fixed;top:0;width:100%;z-index:999;padding:22px 56px;display:flex;align-items:center;justify-content:space-between;transition:all .5s;}
#nav.solid{background:rgba(8,12,10,.92);backdrop-filter:blur(16px);}
.logo{display:flex;align-items:center;text-decoration:none;}
.logo img{height:90px;width:auto;object-fit:contain;transition:filter .3s;}
#nav.solid .logo img{filter:drop-shadow(0 0 6px rgba(201,168,76,.4));}
.logo-fallback{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:600;letter-spacing:3px;color:#fff;}
.logo-fallback span{color:var(--gold);}

/* ── HAMBURGER ── */
.nav-menu{display:flex;align-items:center;gap:40px;}
/* ── HAMBURGER BUTTON ── */
.nav-hamburger{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  background:transparent;
  border:none;
  cursor:pointer;
  padding:8px;
  z-index:1100;
  flex-shrink:0;
}
.nav-hamburger span{
  display:block;
  width:24px;
  height:2px;
  background:#fff;
  border-radius:2px;
  transition:transform .35s ease, opacity .25s ease;
  transform-origin:center;
}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0);}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ═══════════════════════════════════════
   PREMIUM MOBILE MENU
   ═══════════════════════════════════════ */
.mobile-menu{
  display:flex;
  position:fixed;
  inset:0;
  background:linear-gradient(160deg,#06090f 0%,#0d1520 55%,#0a0e08 100%);
  z-index:1050;
  flex-direction:column;
  padding:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(100%);
  transition:opacity .4s ease, transform .45s cubic-bezier(.77,0,.18,1), visibility .4s;
  overflow:hidden;
}
.mobile-menu::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),var(--emerald-accent),var(--gold),transparent);
  background-size:200%;
  animation:mmShimmer 3s linear infinite;
}
@keyframes mmShimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
.mobile-menu::after{
  content:'';
  position:absolute;
  bottom:-120px;right:-120px;
  width:320px;height:320px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(201,168,76,.06) 0%,transparent 70%);
  pointer-events:none;
}
.mobile-menu.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(0);
}

/* top logo area */
.mm-top{
  padding:72px 28px 24px;
  flex-shrink:0;
}
.mm-logo-wrap{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:20px;
}
.mm-logo-img{
  height:44px;
  width:auto;
  object-fit:contain;
  filter:brightness(1.1);
}
.mm-tagline{
  font-size:10px;
  letter-spacing:3px;
  text-transform:uppercase;
  color:rgba(201,168,76,.55);
  font-family:'DM Sans',sans-serif;
  font-weight:400;
}
.mm-gold-line{
  height:1px;
  background:linear-gradient(to right,rgba(201,168,76,.5),rgba(201,168,76,.05));
}

/* nav links */
.mm-nav{
  flex:1;
  padding:8px 0;
  overflow-y:auto;
  display:flex;
  flex-direction:column;
}
.mobile-menu .mobile-nav-link{
  display:flex;
  align-items:center;
  gap:16px;
  padding:18px 28px;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.05);
  transition:background .25s, padding-left .25s;
  position:relative;
  overflow:hidden;
}
.mobile-menu .mobile-nav-link::before{
  content:'';
  position:absolute;
  left:0;top:0;bottom:0;
  width:2px;
  background:var(--gold);
  transform:scaleY(0);
  transition:transform .25s ease;
}
.mobile-menu .mobile-nav-link:hover::before,
.mobile-menu .mobile-nav-link:active::before{transform:scaleY(1);}
.mobile-menu .mobile-nav-link:hover,
.mobile-menu .mobile-nav-link:active{background:rgba(201,168,76,.05);padding-left:36px;}
.mm-num{
  font-family:'Cormorant Garamond',serif;
  font-size:12px;
  font-weight:400;
  color:rgba(201,168,76,.45);
  letter-spacing:1px;
  flex-shrink:0;
  width:22px;
}
.mm-label{
  font-family:'Cormorant Garamond',serif;
  font-size:28px;
  font-weight:300;
  color:rgba(255,255,255,.85);
  letter-spacing:1px;
  flex:1;
  transition:color .25s;
}
.mobile-menu .mobile-nav-link:hover .mm-label,
.mobile-menu .mobile-nav-link:active .mm-label{color:var(--gold);}
.mm-arrow{
  width:16px;height:16px;
  color:rgba(255,255,255,.2);
  flex-shrink:0;
  transition:transform .25s, color .25s;
}
.mobile-menu .mobile-nav-link:hover .mm-arrow,
.mobile-menu .mobile-nav-link:active .mm-arrow{transform:translateX(4px);color:var(--gold);}

/* bottom cta + social */
.mm-bottom{
  padding:24px 28px 32px;
  flex-shrink:0;
  border-top:1px solid rgba(255,255,255,.06);
}
.mm-cta-btn{
  display:block;
  width:100%;
  text-align:center;
  padding:15px 20px;
  background:transparent;
  border:1px solid var(--gold);
  color:var(--gold);
  font-family:'DM Sans',sans-serif;
  font-size:11px;
  letter-spacing:3px;
  text-transform:uppercase;
  font-weight:500;
  border-radius:2px;
  cursor:pointer;
  text-decoration:none;
  transition:background .25s, color .25s, transform .2s;
  margin-bottom:24px;
}
.mm-cta-btn:hover{background:var(--gold);color:var(--black);transform:translateY(-1px);}
.mm-social{
  display:flex;
  gap:12px;
  justify-content:center;
  margin-bottom:16px;
}
.mm-social-link{
  width:38px;height:38px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  transition:border-color .25s, background .25s, transform .2s;
}
.mm-social-link svg{width:15px;height:15px;stroke:rgba(255,255,255,.4);}
.mm-social-link:hover{border-color:var(--gold);background:rgba(201,168,76,.1);transform:translateY(-2px);}
.mm-social-link:hover svg{stroke:var(--gold);}
.mm-copy{
  font-size:10px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:rgba(255,255,255,.15);
  text-align:center;
}
.mobile-menu-shown-above-1100{display:none;}
.nav-menu a{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.7);font-weight:400;transition:color .3s;}
.nav-menu a:hover{color:var(--gold);}
.nav-btn{background:transparent;border:1px solid var(--gold);color:var(--gold);padding:10px 28px;border-radius:2px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s;}
.nav-btn:hover{background:var(--gold);color:var(--black);}

/* ─────────────────────────────────────────── HERO */
.hero{min-height:100vh;height:100vh;position:relative;display:flex;align-items:center;overflow:hidden;}
/* Ensure content never clips behind fixed navbar */
@supports (height: 100dvh){
  .hero{min-height:100dvh;height:100dvh;}
}
.hero-img{position:absolute;inset:0;background-image:url('/assets/img/aa.jpg');background-size:cover;background-position:center;transform:scale(1.05);transition:transform 8s ease;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(8,12,10,.5) 40%,rgb(8,12,10) 100%);}
.hero-grain{position:absolute;inset:0;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");}
/* Push hero content below the fixed nav, keep it vertically centred in the remaining space */
.hero-content{
  position:relative;z-index:2;
  padding:140px 56px 80px;
  max-width:780px;
  width:100%;
  /* shift the flex-centre upward to account for the navbar */
  margin-top:-40px;
}
.hero-tag{display:inline-flex;align-items:center;gap:10px;margin-bottom:32px;opacity:0;animation:fadeUp .8s .4s ease forwards;}
.hero-tag::before{content:'';display:block;width:40px;height:1px;background:var(--gold);}
.hero-tag span{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);font-weight:400;}
.hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(46px,6vw,96px);color:#fff;line-height:1;font-weight:300;letter-spacing:-1px;opacity:0;animation:fadeUp .9s .6s ease forwards;}
.hero-h1 em{font-style:italic;color:var(--gold);}
.hero-h1 strong{font-weight:600;display:block;}
.hero-p{font-size:16px;color:rgba(255,255,255,.6);line-height:1.9;max-width:520px;margin-top:24px;font-weight:300;opacity:0;animation:fadeUp .9s .8s ease forwards;}
.hero-actions{display:flex;gap:16px;margin-top:36px;flex-wrap:wrap;opacity:0;animation:fadeUp .9s 1s ease forwards;}
.btn-gold{background:var(--gold);color:var(--black);padding:16px 44px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:500;border:none;cursor:pointer;border-radius:2px;transition:all .3s;display:inline-block;}
.btn-gold:hover{background:var(--gold-light);}
.btn-ghost{border:1px solid rgba(255,255,255,.3);color:#fff;padding:16px 44px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:400;cursor:pointer;border-radius:2px;transition:all .3s;display:inline-block;}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold);}
.hero-scroll{position:absolute;bottom:44px;left:56px;display:flex;align-items:center;gap:12px;z-index:2;opacity:0;animation:fadeUp .9s 1.3s ease forwards;}
.hero-scroll span{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.4);}
.scroll-bar{width:1px;height:48px;background:linear-gradient(to bottom,var(--gold),transparent);}
.hero-side{position:absolute;right:56px;bottom:44px;z-index:2;opacity:0;animation:fadeUp .9s 1.2s ease forwards;}
.hero-side p{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.35);writing-mode:vertical-rl;transform:rotate(180deg);}

/* ─────────────────────────────────────────── MARQUEE */
.marquee-band{background:var(--gold);padding:18px 0;overflow:hidden;white-space:nowrap;}
.marquee-inner{display:inline-flex;gap:0;animation:marquee 22s linear infinite;}
.marquee-item{font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:var(--black);padding:0 40px;}
.marquee-dot{color:var(--burgundy-mid);margin:0 8px;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ─────────────────────────────────────────── STATS (BURGUNDY) */
.stats-sec{background:rgb(0, 77, 0);padding:80px 56px;}
.stats-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 2px 1fr 2px 1fr 2px 1fr;align-items:center;gap:0;}
.stats-divider{height:60px;background:rgba(255,255,255,.1);}
.stat-block{text-align:center;padding:20px 40px;}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:64px;font-weight:300;color:#fff;line-height:1;}
.stat-n span{color:var(--gold);font-style:italic;}
.stat-l{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:8px;}

/* ─────────────────────────────────────────── ABOUT (IVORY + TERRACOTTA) */
.about-sec{background:var(--ivory);padding:120px 56px;}
.about-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;}
.sec-kicker{display:flex;align-items:center;gap:12px;margin-bottom:20px;}
.sec-kicker::before{content:'';width:32px;height:1px;background:currentColor;}
.sec-kicker span{font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:500;}
.sec-kicker.gold{color:var(--amber);}
.sec-kicker.terra{color:var(--terracotta);}
.sec-kicker.navy{color:var(--navy-accent);}
.sec-kicker.bourg{color:var(--burgundy-light);}
.sec-kicker.plum{color:var(--plum-mid);}
.sec-kicker.rose{color:var(--rose-mid);}
.sec-kicker.emerald{color:var(--emerald-accent);}
.sec-kicker.slate{color:#8899bb;}
.h2-serif{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,4.2vw,60px);line-height:1.1;font-weight:300;color:var(--black);}
.h2-serif em{font-style:italic;}
.h2-serif.white{color:#fff;}
.h2-serif.ivory{color:var(--ivory);}
.body-txt{font-size:16px;line-height:1.9;font-weight:300;margin-top:24px;}
.body-txt.muted{color:#6a6258;}
.body-txt.light{color:rgba(255,255,255,.6);}
.about-right{position:relative;overflow:visible;}
.about-img-wrap{position:relative;}
.about-img-main{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:4px;display:block;}
.about-img-accent{position:absolute;bottom:-40px;left:-48px;width:52%;aspect-ratio:1;object-fit:cover;border-radius:4px;border:6px solid var(--ivory);}
.about-badge{position:absolute;top:40px;right:-24px;background:var(--terracotta);color:#fff;padding:24px 28px;border-radius:4px;text-align:center;}
.about-badge .num{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:300;line-height:1;}
.about-badge .lbl{font-size:10px;letter-spacing:2px;text-transform:uppercase;opacity:.8;margin-top:4px;}
.value-list{margin-top:40px;display:flex;flex-direction:column;gap:16px;}
.value-row{display:flex;align-items:flex-start;gap:16px;padding:20px;background:var(--ivory-dark);border-radius:4px;}
.value-icon{width:40px;height:40px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.value-icon svg{width:18px;height:18px;}
.value-title{font-size:14px;font-weight:500;color:var(--black);}
.value-desc{font-size:13px;color:#7a7068;margin-top:3px;line-height:1.6;}

/* ─────────────────────────────────────────── SERVICES (3D) */
.services-sec{background:linear-gradient(160deg,#144696 0%,#094252 35%,#02100e 65%,#051f52bd 100%);padding:100px 56px 140px;position:relative;overflow:hidden;}
.services-sec::before{content:\'\';position:absolute;inset:0;background:radial-gradient(ellipse at 15% 50%,rgba(46,148,96,.07) 0%,transparent 55%),radial-gradient(ellipse at 85% 20%,rgba(201,168,76,.04) 0%,transparent 45%);pointer-events:none;z-index:0;}
.services-inner{position:relative;z-index:1;}
.services-inner{max-width:1280px;margin:0 auto;}
.services-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:72px;}
.services-head-right p{max-width:380px;font-size:15px;color:rgba(255,255,255,.4);line-height:1.8;text-align:right;}

/* 3D card variables */
:root{
  --c1:#c9a84c;--c2:#b84c6a;--c3:#4c8fb8;--c4:#7c4cb8;--c5:#4cb87c;--c6:#b86e4c;
  --gold-l:#e8cc7a;--bg-3d:#06090f;
}

/* 3D FLIP GRID */
.services-3d-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:60px;}
.srv-3d{perspective:1000px;height:420px;cursor:pointer;}
.srv-3d-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.175,.885,.32,1.275);}
.srv-3d:hover .srv-3d-inner,
.srv-3d.flipped .srv-3d-inner{transform:rotateY(180deg);}
.srv-front,.srv-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:4px;clip-path:inset(0 round 4px);}
.srv-front{display:flex;flex-direction:column;justify-content:flex-end;padding:36px;border:1px solid rgba(255,255,255,.06);}
.srv-front-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 6s ease;}
.srv-3d:hover .srv-front-bg{transform:scale(1.08);}
.srv-front-overlay{position:absolute;inset:0;}
.srv-front-content{position:relative;z-index:2;}
.srv-icon-wrap{width:60px;height:60px;border-radius:2px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(8px);}
.srv-icon-wrap svg{width:28px;height:28px;stroke-width:1.2;fill:none;}
.srv-tag{font-size:10px;letter-spacing:3px;text-transform:uppercase;margin-bottom:10px;font-weight:500;opacity:.8;}
.srv-front h3{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:400;color:#fff;line-height:1.15;}
.srv-front p{font-size:13px;color:rgba(255,255,255,.5);line-height:1.7;margin-top:10px;font-weight:300;}
/* ── LEAF NUMBER BADGE ── */
.leaf-num-badge{position:absolute;top:16px;right:20px;z-index:2;pointer-events:none;display:flex;flex-direction:column;align-items:center;width:52px;}
.leaf-badge-svg{width:52px;height:66px;filter:drop-shadow(0 3px 10px rgba(0,0,0,.6));transition:transform .4s ease;}
.srv-3d:hover .leaf-badge-svg{transform:translateY(-3px) rotate(5deg);}
.leaf-badge-num{font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:600;color:rgba(255,255,255,.9);margin-top:-16px;position:relative;z-index:3;text-shadow:0 1px 5px rgba(0,0,0,.8);letter-spacing:1px;}
.flip-hint{display:flex;align-items:center;gap:6px;margin-top:16px;font-size:10px;letter-spacing:2px;text-transform:uppercase;opacity:.5;transition:opacity .3s;}
.srv-3d:hover .flip-hint{opacity:.8;}
.flip-dot{width:4px;height:4px;border-radius:50%;background:currentColor;}
.srv-back{transform:rotateY(180deg);padding:40px 36px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(255,255,255,.08);}
.back-num{font-family:'Cormorant Garamond',serif;font-size:52px;font-weight:300;line-height:1;margin-bottom:12px;}
.back-title{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:400;color:#fff;line-height:1.2;}
.back-divider{height:1px;background:rgba(255,255,255,.1);margin:20px 0;}
.back-list{list-style:none;display:flex;flex-direction:column;gap:10px;}
.back-list li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:rgba(255,255,255,.55);line-height:1.6;}
.back-list li::before{content:'';width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-top:6px;}
.back-footer{margin-top:auto;padding-top:20px;}
.back-cta{display:inline-flex;align-items:center;gap:10px;padding:12px 28px;border-radius:2px;font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:500;transition:all .3s;cursor:pointer;border:none;text-decoration:none;}
.back-cta svg{width:14px;height:14px;stroke-width:1.5;fill:none;transition:transform .3s;}
.back-cta:hover svg{transform:translateX(4px);}
.back-stat{display:flex;gap:24px;margin-top:16px;}
.bstat{text-align:center;}
.bstat-n{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:300;line-height:1;}
.bstat-l{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;opacity:.45;margin-top:3px;}

/* CARD COLOUR THEMES */
.theme-gold .srv-front-overlay{background:linear-gradient(160deg,rgba(6,9,15,.3) 0%,rgba(30,20,5,.85) 100%);}
.theme-gold .srv-icon-wrap{background:rgba(201,168,76,.12);}
.theme-gold .srv-icon-wrap svg{stroke:var(--c1);}
.theme-gold .srv-tag,.theme-gold .flip-hint{color:var(--c1);}
/* ── LEAF BADGE (card front top-right) ── */
.srv-leaf-badge{
  position:absolute;top:18px;right:24px;
  width:48px;height:60px;
  display:flex;flex-direction:column;align-items:center;
  z-index:2;pointer-events:none;
}
.srv-leaf-badge svg{width:48px;height:60px;}
.srv-leaf-badge span{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-44%);
  font-family:'Cormorant Garamond',serif;
  font-size:13px;font-weight:700;
  color:#fff;
  text-shadow:0 1px 5px rgba(0,0,0,.8);
  pointer-events:none;
}
@keyframes leafSway{0%,100%{transform:rotate(-3deg) translateY(0);}50%{transform:rotate(3deg) translateY(-3px);}}
.srv-leaf-badge{animation:leafSway 4s ease-in-out infinite;}
.srv-3d.wide .srv-leaf-badge{animation-duration:5s;}

/* ── CARD BACK THEMES — each card gets a distinct rich background ── */
.theme-gold .srv-back{background:linear-gradient(150deg,#1c1000 0%,#3d2400 50%,#2a1800 100%);}
.theme-gold .back-num{color:var(--c1);}
.theme-gold .back-list li::before{background:var(--c1);}
.theme-gold .back-cta{background:var(--c1);color:#06090f;}
.theme-gold .back-cta:hover{background:var(--gold-l);}
.theme-gold .bstat-n{color:var(--c1);}

.theme-rose .srv-front-overlay{background:linear-gradient(160deg,rgba(6,9,15,.3) 0%,rgba(40,8,20,.85) 100%);}
.theme-rose .srv-icon-wrap{background:rgba(184,76,106,.12);}
.theme-rose .srv-icon-wrap svg{stroke:var(--c2);}
.theme-rose .srv-tag,.theme-rose .flip-hint{color:var(--c2);}
.theme-rose .srv-back{background:linear-gradient(150deg,#200008 0%,#4d0e24 50%,#350512 100%);}
.theme-rose .back-num{color:var(--c2);}
.theme-rose .back-list li::before{background:var(--c2);}
.theme-rose .back-cta{background:var(--c2);color:#fff;}
.theme-rose .back-cta:hover{background:#d4607e;}
.theme-rose .bstat-n{color:var(--c2);}

.theme-blue .srv-front-overlay{background:linear-gradient(160deg,rgba(6,9,15,.3) 0%,rgba(5,18,40,.85) 100%);}
.theme-blue .srv-icon-wrap{background:rgba(76,143,184,.12);}
.theme-blue .srv-icon-wrap svg{stroke:var(--c3);}
.theme-blue .srv-tag,.theme-blue .flip-hint{color:var(--c3);}
.theme-blue .srv-back{background:linear-gradient(150deg,#000b1f 0%,#001d45 50%,#000e2e 100%);}
.theme-blue .back-num{color:var(--c3);}
.theme-blue .back-list li::before{background:var(--c3);}
.theme-blue .back-cta{background:var(--c3);color:#fff;}
.theme-blue .back-cta:hover{background:#62a8d0;}
.theme-blue .bstat-n{color:var(--c3);}

.theme-violet .srv-front-overlay{background:linear-gradient(160deg,rgba(6,9,15,.3) 0%,rgba(20,8,40,.85) 100%);}
.theme-violet .srv-icon-wrap{background:rgba(124,76,184,.12);}
.theme-violet .srv-icon-wrap svg{stroke:var(--c4);}
.theme-violet .srv-tag,.theme-violet .flip-hint{color:var(--c4);}
.theme-violet .srv-back{background:linear-gradient(150deg,#0e0520 0%,#200c50 50%,#160838 100%);}
.theme-violet .back-num{color:var(--c4);}
.theme-violet .back-list li::before{background:var(--c4);}
.theme-violet .back-cta{background:var(--c4);color:#fff;}
.theme-violet .back-cta:hover{background:#9a6ed0;}
.theme-violet .bstat-n{color:var(--c4);}

.theme-emerald .srv-front-overlay{background:linear-gradient(160deg,rgba(6,9,15,.3) 0%,rgba(4,20,12,.85) 100%);}
.theme-emerald .srv-icon-wrap{background:rgba(76,184,124,.12);}
.theme-emerald .srv-icon-wrap svg{stroke:var(--c5);}
.theme-emerald .srv-tag,.theme-emerald .flip-hint{color:var(--c5);}
.theme-emerald .srv-back{background:linear-gradient(150deg,#011508 0%,#023d12 50%,#012a0b 100%);}
.theme-emerald .back-num{color:var(--c5);}
.theme-emerald .back-list li::before{background:var(--c5);}
.theme-emerald .back-cta{background:var(--c5);color:#06090f;}
.theme-emerald .back-cta:hover{background:#6dd494;}
.theme-emerald .bstat-n{color:var(--c5);}

.theme-terra .srv-front-overlay{background:linear-gradient(160deg,rgba(6,9,15,.3) 0%,rgba(40,15,5,.85) 100%);}
.theme-terra .srv-icon-wrap{background:rgba(184,110,76,.12);}
.theme-terra .srv-icon-wrap svg{stroke:var(--c6);}
.theme-terra .srv-tag,.theme-terra .flip-hint{color:var(--c6);}
.theme-terra .srv-back{background:linear-gradient(150deg,#200800 0%,#4e1c00 50%,#361200 100%);}
.theme-terra .back-num{color:var(--c6);}
.theme-terra .back-list li::before{background:var(--c6);}
.theme-terra .back-cta{background:var(--c6);color:#fff;}
.theme-terra .back-cta:hover{background:#d08060;}
.theme-terra .bstat-n{color:var(--c6);}

/* Wide card */
.srv-3d.wide{grid-column:span 2;}
.srv-3d.wide .srv-front h3{font-size:36px;}
.srv-3d.wide .srv-front-content{max-width:60%;}

/* Glow divider */
.glow-divider{position:relative;text-align:center;padding:60px 0;overflow:hidden;}
.glow-divider::before{content:'';position:absolute;top:50%;left:10%;right:10%;height:1px;background:linear-gradient(to right,transparent,rgba(201,168,76,.2),var(--gold),rgba(201,168,76,.2),transparent);transform:translateY(-50%);}
.glow-divider-dot{position:relative;display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 20px rgba(201,168,76,.6),0 0 60px rgba(201,168,76,.3);}

/* Showcase sphere cards */
.showcase-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;max-width:1280px;margin:0 auto;}
.sphere-card{position:relative;padding:48px 40px;border:1px solid rgba(255,255,255,.07);border-radius:4px;overflow:hidden;cursor:pointer;transition:border-color .4s,transform .4s;transform-style:preserve-3d;}
.sphere-card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-8px) rotateX(2deg);}
.sphere-bg{position:absolute;top:-60px;right:-60px;width:200px;height:200px;border-radius:50%;opacity:.15;transition:opacity .4s,transform .4s;pointer-events:none;}
.sphere-card:hover .sphere-bg{opacity:.25;transform:scale(1.2);}
.sphere-num{font-family:'Cormorant Garamond',serif;font-size:11px;letter-spacing:4px;text-transform:uppercase;margin-bottom:16px;font-weight:500;opacity:.6;}
.sphere-title{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:300;color:#fff;line-height:1.2;margin-bottom:16px;}
.sphere-desc{font-size:14px;color:rgba(255,255,255,.4);line-height:1.8;font-weight:300;}
.sphere-arrow{display:inline-flex;align-items:center;gap:8px;margin-top:24px;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:500;opacity:.6;transition:opacity .3s,gap .3s;}
.sphere-card:hover .sphere-arrow{opacity:1;gap:12px;}

/* Counter row */
.srv-counter-row{display:flex;justify-content:center;gap:0;max-width:1280px;margin:80px auto 0;border:1px solid rgba(255,255,255,.07);border-radius:4px;overflow:hidden;}
.srv-counter-item{flex:1;padding:40px 20px;text-align:center;border-right:1px solid rgba(255,255,255,.07);position:relative;overflow:hidden;}
.srv-counter-item:last-child{border-right:none;}
.srv-counter-item::before{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:0;height:2px;transition:width .5s;}
.srv-counter-item:hover::before{width:60%;}
.srv-c-num{font-family:'Cormorant Garamond',serif;font-size:52px;font-weight:300;line-height:1;transition:transform .3s;}
.srv-counter-item:hover .srv-c-num{transform:scale(1.05);}
.srv-c-label{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.3);margin-top:8px;}
.sci1 .srv-c-num{color:var(--c1);}.sci1::before{background:var(--c1);}
.sci2 .srv-c-num{color:var(--c2);}.sci2::before{background:var(--c2);}
.sci3 .srv-c-num{color:var(--c3);}.sci3::before{background:var(--c3);}
.sci4 .srv-c-num{color:var(--c5);}.sci4::before{background:var(--c5);}
.sci5 .srv-c-num{color:var(--c4);}.sci5::before{background:var(--c4);}

/* (responsive handled in main media queries below) */

/* ── MOBILE SERVICES: keep 3D flip, adjust card height per breakpoint ── */
@media(max-width:1100px){
  .srv-3d{ height:400px; }
}
@media(max-width:768px){
  .srv-3d{ height:380px; }
  .srv-3d.wide .srv-front-content{ max-width:100%; }
  .srv-3d.wide .srv-front h3{ font-size:26px; }
  .leaf-num-badge{ top:10px; right:12px; width:40px; }
  .leaf-badge-svg{ width:40px; height:52px; }
  .leaf-badge-num{ font-size:12px; margin-top:-12px; }
  /* tap hint instead of hover hint */
  .flip-hint .flip-dot + span::after{ content:' — tap'; }
}
@media(max-width:480px){
  .srv-3d{ height:360px; }
  .srv-front{ padding:22px 20px; }
  .srv-back{ padding:22px 20px; }
  .back-num{ font-size:36px; }
  .back-title{ font-size:19px; }
  .back-list li{ font-size:12px; }
}
@media(max-width:360px){
  .srv-3d{ height:340px; }
  .srv-front{ padding:18px 16px; }
  .srv-back{ padding:18px 16px; }
  .back-list li{ font-size:11px; }
}

/* ─────────────────────────────────────────── GALLERY MOSAIC */
.gallery-sec{padding:0;}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:300px 300px;}
.gallery-item{overflow:hidden;position:relative;cursor:pointer;}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease;}
.gallery-item:hover img{transform:scale(1.08);}
.gallery-item.tall{grid-row:span 2;}
.gallery-item.wide{grid-column:span 2;}
.gallery-overlay{position:absolute;inset:0;background:rgba(8,12,10,0);transition:background .4s;}
.gallery-item:hover .gallery-overlay{background:rgba(8,12,10,.35);}
.gallery-label{position:absolute;bottom:0;left:0;right:0;padding:20px 24px;transform:translateY(100%);transition:transform .4s;background:linear-gradient(to top,rgba(8,12,10,.8),transparent);}
.gallery-item:hover .gallery-label{transform:translateY(0);}
.gallery-label span{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:#fff;font-weight:400;}

/* ─────────────────────────────────────────── MISSION (AMBER/GOLD) */
.mission-sec{background:var(--charcoal);padding:120px 56px;position:relative;overflow:hidden;}
.mission-bg-img{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&q=80');background-size:cover;background-position:center;opacity:.12;}
.mission-inner{max-width:900px;margin:0 auto;text-align:center;position:relative;z-index:2;}
.mission-quote{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,52px);color:#fff;line-height:1.3;font-weight:300;font-style:italic;}
.mission-quote em{color:var(--gold);font-style:normal;font-weight:600;}
.mission-author{margin-top:40px;display:flex;align-items:center;justify-content:center;gap:16px;}
.mission-author::before,.mission-author::after{content:'';flex:1;max-width:80px;height:1px;background:rgba(255,255,255,.15);}
.mission-author span{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.35);}

/* ─────────────────────────────────────────── PARTNERS (ENHANCED) */
.partners-sec{
  background:var(--slate);
  padding:110px 56px 80px;
  position:relative;
  overflow:hidden;
}
/* Animated diagonal stripe background */
.partners-sec::before{
  content:'';
  position:absolute;inset:0;
  background:repeating-linear-gradient(
    -45deg,
    transparent,transparent 60px,
    rgba(201,168,76,.03) 60px,rgba(201,168,76,.03) 61px
  );
  pointer-events:none;z-index:0;
  animation:partnerStripeAnim 25s linear infinite;
}
@keyframes partnerStripeAnim{0%{background-position:0 0;}100%{background-position:120px 120px;}}
/* Shimmer top bar */
.partners-sec::after{
  content:'';
  position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--emerald-accent),var(--gold),var(--emerald-accent));
  background-size:200% 100%;
  animation:shimmerTopBar 3s linear infinite;
}
@keyframes shimmerTopBar{0%{background-position:0% 50%;}100%{background-position:200% 50%;}}

.partners-inner{max-width:1280px;margin:0 auto;position:relative;z-index:1;}
.partners-top{
  display:grid;grid-template-columns:1fr 1fr;gap:80px;
  align-items:end;margin-bottom:64px;
}
.partners-top p{font-size:15px;color:rgba(255,255,255,.45);line-height:1.9;font-weight:300;}

.partners-filter-wrap {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin: 20px 0 40px 0;
}
.filter-btn {
  background: transparent;
  border: 1px solid var(--gold);
  color: var(--gold);
  padding: 8px 20px;
  cursor: pointer;
  transition: 0.3s;
}
.filter-btn.active, .filter-btn:hover {
  background: var(--gold);
  color: var(--black);
}

/* ── AUTO-SCROLLING LOGO CAROUSEL ── */
.partners-carousel-wrap{
  position:relative;overflow:hidden;width:100%;
  margin:0 auto 52px;
}
/* Fade edges */
.partners-carousel-wrap::before,
.partners-carousel-wrap::after{
  content:'';
  position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none;
}
.partners-carousel-wrap::before{left:0;background:linear-gradient(to right,var(--slate),transparent);}
.partners-carousel-wrap::after{right:0;background:linear-gradient(to left,var(--slate),transparent);}
.partners-track{
  display:flex;align-items:center;gap:2rem;
  width:max-content;
  animation:logoScrollFwd 36s linear infinite;
}
.partners-track-rev{
  display:flex;align-items:center;gap:2rem;
  width:max-content;
  animation:logoScrollRev 30s linear infinite;
  margin-top:18px;
}
.partners-track, 
.partners-track-rev {
  display: flex;
  align-items: center;
  gap: 2rem;
  width: max-content;
  will-change: transform;
}
.partners-carousel-wrap:hover .partners-track,
.partners-carousel-wrap:hover .partners-track-rev{animation-play-state:paused;}
@keyframes logoScrollFwd{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
@keyframes logoScrollRev{0%{transform:translateX(-50%);}100%{transform:translateX(0);}}

.partner-logo-item{
  background:rgba(255,255,255,.06);
  border-radius:8px;
  padding:1rem 1.6rem;
  box-shadow:0 2px 16px rgba(0,0,0,.3);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  width:168px;height:96px;
  border:1px solid rgba(255,255,255,.1);
  transition: opacity 0.4s ease, box-shadow .35s,transform .35s,border-color .35s,background .35s;
  overflow:hidden;
  position:relative;
}

.filter-hidden {
  opacity: 0.1;
  pointer-events: none;
}
/* Shimmer sweep on hover */
.partner-logo-item::before{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 30%,rgba(201,168,76,.18) 50%,transparent 70%);
  transform:translateX(-100%);
  transition:transform .55s ease;
}
.partner-logo-item:hover::before{transform:translateX(100%);}
.partner-logo-item:hover{
  box-shadow:0 10px 36px rgba(201,168,76,.2);
  transform:translateY(-4px) scale(1.03);
  border-color:rgba(201,168,76,.4);
  background:rgba(255,255,255,.1);
}
.partner-logo-item img{
  max-height:68px;max-width:140px;object-fit:contain;
  filter:grayscale(.5) brightness(1.1);
  transition:filter .3s,transform .3s;
}
.partner-logo-item:hover img{filter:grayscale(0) brightness(1.2);transform:scale(1.06);}

/* ── PARTNER NAME TAGS ── */
.partners-names-section{margin-bottom:2.5rem;position:relative;z-index:1;}
.partners-names-label{
  font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);font-weight:700;margin-bottom:1.4rem;
  display:flex;align-items:center;gap:12px;justify-content:center;
}
.partners-names-label::before,
.partners-names-label::after{content:'';flex:1;max-width:80px;height:1px;background:rgba(201,168,76,.3);}
.partners-names-grid{
  display:flex;flex-wrap:wrap;gap:.7rem;
  justify-content:center;max-width:1050px;margin:0 auto;
}
.partner-name-tag{
  background:rgba(255,255,255,.05);
  border:1.5px solid rgba(255,255,255,.12);
  border-radius:50px;
  padding:.48rem 1.2rem;
  font-size:.82rem;font-weight:500;
  color:rgba(255,255,255,.75);
  cursor:default;
  transition:background .25s,border-color .25s,transform .25s,box-shadow .25s,color .25s;
  white-space:nowrap;
  animation:tagPopIn .5s var(--ease-elastic,cubic-bezier(.34,1.56,.64,1)) both;
}
.partner-name-tag:nth-child(1){animation-delay:.05s;}
.partner-name-tag:nth-child(2){animation-delay:.1s;}
.partner-name-tag:nth-child(3){animation-delay:.15s;}
.partner-name-tag:nth-child(4){animation-delay:.2s;}
.partner-name-tag:nth-child(5){animation-delay:.25s;}
@keyframes tagPopIn{from{opacity:0;transform:scale(.8) translateY(10px);}to{opacity:1;transform:scale(1) translateY(0);}}
.partner-name-tag:hover{
  background:var(--gold);
  color:var(--black);
  border-color:var(--gold);
  transform:translateY(-3px) scale(1.04);
  box-shadow:0 6px 20px rgba(201,168,76,.35);
}
.partner-name-tag.hidden-tag{display:none;}
.partners-names-grid.expanded .partner-name-tag.hidden-tag{display:inline-flex;}
.partners-know-more-wrap{margin-top:1.4rem;text-align:center;}
.partners-know-more-btn{
  background:none;
  border:1.5px solid rgba(201,168,76,.5);
  border-radius:50px;
  padding:.55rem 1.8rem;
  font-size:.85rem;font-weight:600;
  color:var(--gold);
  cursor:pointer;
  transition:background .25s,color .25s,transform .25s,border-color .25s;
  letter-spacing:.06em;
}
.partners-know-more-btn:hover{
  background:var(--gold);color:var(--black);
  border-color:var(--gold);transform:translateY(-2px);
}

/* ── DONORS ROW ── */
.donors-section{margin-top:3.5rem;position:relative;z-index:1;}
.donors-label{
  font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);font-weight:600;margin-bottom:1.4rem;
  display:flex;align-items:center;gap:12px;justify-content:center;
}
.donors-label::before,.donors-label::after{content:'';flex:1;max-width:80px;height:1px;background:rgba(201,168,76,.3);}
.donors-grid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;}
.donor-card{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  padding:1.4rem 2rem;
  text-align:center;
  transition:transform .3s,box-shadow .3s,border-color .3s;
  min-width:200px;
}
.donor-card:hover{
  transform:translateY(-4px);
  box-shadow:0 10px 30px rgba(201,168,76,.15);
  border-color:rgba(201,168,76,.3);
}
.donor-card strong{display:block;color:#fff;font-size:.95rem;margin-bottom:.3rem;}
.donor-card span{font-size:.78rem;color:rgba(255,255,255,.4);display:block;margin-bottom:.5rem;}
.donor-card .amount{font-family:'Cormorant Garamond',serif;font-size:1.4rem;color:var(--gold);font-style:italic;}

/* ─────────────────────────────────────────── IMPACT (EMERALD + BENTO) */
.impact-sec{background:var(--ivory);padding:120px 56px;}
.impact-inner{max-width:1280px;margin:0 auto;}
.impact-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-bottom:64px;}
.impact-head p{font-size:16px;color:#6a6258;line-height:1.9;font-weight:300;}
.bento{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:auto;gap:16px;}
.b-card{border-radius:8px;padding:44px;overflow:hidden;position:relative;}
.b1{grid-column:span 5;grid-row:span 2;background:var(--emerald);background-image:url('https://images.unsplash.com/photo-1448375240586-882707db888b?w=800&q=80');background-size:cover;background-position:center;background-blend-mode:multiply;}
.b2{grid-column:span 4;background:var(--burgundy);}
.b3{grid-column:span 3;background:var(--plum);}
.b4{grid-column:span 3;background:var(--navy);}
.b5{grid-column:span 4;background:var(--terracotta);}
.b6{grid-column:span 5;background:var(--charcoal);background-image:url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=800&q=80');background-size:cover;background-position:center;background-blend-mode:multiply;}
.b7{grid-column:span 7;background:var(--amber);background-image:url('https://images.unsplash.com/photo-1469474968028-56623f02e42e?w=800&q=80');background-size:cover;background-position:center;background-blend-mode:multiply;}
.b-num{font-family:'Cormorant Garamond',serif;font-size:clamp(48px,5vw,72px);font-weight:300;color:#fff;line-height:1;margin-bottom:8px;}
.b-num em{font-style:italic;color:var(--gold);}
.b-label{font-size:13px;color:rgba(255,255,255,.6);letter-spacing:.5px;line-height:1.6;}
.b-sub{font-size:12px;color:rgba(255,255,255,.35);margin-top:12px;line-height:1.6;font-weight:300;}
.b-badge{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.6);padding:5px 14px;border-radius:20px;font-size:10px;letter-spacing:2px;text-transform:uppercase;margin-bottom:20px;}
.b1 .b-num{font-size:clamp(56px,6vw,88px);}

/* ─────────────────────────────────────────── TESTIMONIALS (ROSE) */
.testi-sec{background:var(--rose);padding:100px 56px;}
.testi-inner{max-width:1280px;margin:0 auto;}
.testi-head{text-align:center;margin-bottom:64px;}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.t-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:40px 36px;}
.t-stars{display:flex;gap:4px;margin-bottom:24px;}
.t-star{width:14px;height:14px;background:var(--gold);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);}
.t-quote{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:300;color:#fff;line-height:1.7;font-style:italic;}
.t-author{display:flex;align-items:center;gap:14px;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);}
.t-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;}
.t-name{font-size:14px;font-weight:500;color:#fff;}
.t-role{font-size:12px;color:rgba(255,255,255,.4);margin-top:2px;}

/* ─────────────────────────────────────────── BLOG (IVORY) */
.blog-sec{background:var(--ivory-dark);padding:120px 56px;}
.blog-inner{max-width:1280px;margin:0 auto;}
.blog-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.blog-card{background:var(--ivory);border-radius:4px;overflow:hidden;cursor:pointer;transition:transform .4s;}
.blog-card:hover{transform:translateY(-6px);}
.blog-img{width:100%;height:220px;object-fit:cover;display:block;transition:transform .6s;}
.blog-card:hover .blog-img{transform:scale(1.04);}
.blog-body{padding:28px;}
.blog-cat{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;font-weight:500;margin-bottom:12px;}
.blog-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;color:var(--black);line-height:1.35;}
.blog-excerpt{font-size:14px;color:#7a7068;margin-top:12px;line-height:1.7;}
.blog-meta{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--ivory-dark);}
.blog-meta span{font-size:12px;color:#9a9088;}

/* ─────────────────────────────────────────── AREAS OF WORK — TREE DESIGN */
.process-sec{background: linear-gradient(120deg, #103b21 0%, #043d19 55%, #030d06 100%);padding:100px 0 130px;position:relative;overflow:hidden;}
.process-sec::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 25% 50%,rgba(46,148,96,.08) 0%,transparent 55%),radial-gradient(ellipse at 78% 25%,rgba(201,168,76,.04) 0%,transparent 45%);pointer-events:none;}
.process-inner{max-width:1380px;margin:0 auto;padding:0 56px;}
.process-head{text-align:center;margin-bottom:72px;}
.process-head-sub{font-size:15px;color:rgba(255,255,255,.35);margin-top:14px;max-width:580px;margin-left:auto;margin-right:auto;line-height:1.8;}
.tree-stage{display:flex;align-items:stretch;gap:0;position:relative;min-height:620px;}
.tree-col{flex:0 0 320px;position:relative;display:flex;align-items:center;}
.tree-svg{width:100%;height:620px;overflow:visible;}
.fruits-col{flex:1;display:flex;flex-direction:column;justify-content:space-around;gap:18px;padding:10px 0;position:relative;}
.fruit-card{position:relative;display:flex;align-items:flex-start;gap:20px;padding:28px 30px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);backdrop-filter:blur(8px);cursor:pointer;transition:all .45s cubic-bezier(.2,.8,.3,1);overflow:hidden;}
.fruit-card::before{content:'';position:absolute;inset:0;opacity:0;border-radius:16px;transition:opacity .45s;}
.fruit-card:hover{transform:translateX(6px);border-color:rgba(255,255,255,.16);}
.fruit-card:hover::before{opacity:1;}
.fruit-card::after{content:'';position:absolute;left:-20px;top:50%;transform:translateY(-50%);width:20px;height:3px;border-radius:0 3px 3px 0;transition:width .4s ease;}
.fruit-card:hover::after{width:28px;}
.fc-1::before{background:linear-gradient(135deg,rgba(46,148,96,.12),rgba(46,148,96,.04));}
.fc-1::after{background:#2e9460;}
.fc-1 .fruit-icon-wrap{background:rgba(46,148,96,.15);border-color:rgba(46,148,96,.3);}
.fc-1 .fruit-icon-wrap svg{stroke:#2e9460;}
.fc-1 .fruit-num{color:#2e9460;}
.fc-1:hover{box-shadow:0 16px 56px rgba(46,148,96,.22);}
.fc-2::before{background:linear-gradient(135deg,rgba(201,168,76,.12),rgba(201,168,76,.04));}
.fc-2::after{background:#c9a84c;}
.fc-2 .fruit-icon-wrap{background:rgba(201,168,76,.15);border-color:rgba(201,168,76,.3);}
.fc-2 .fruit-icon-wrap svg{stroke:#c9a84c;}
.fc-2 .fruit-num{color:#c9a84c;}
.fc-2:hover{box-shadow:0 16px 56px rgba(201,168,76,.22);}
.fc-3::before{background:linear-gradient(135deg,rgba(232,132,90,.12),rgba(232,132,90,.04));}
.fc-3::after{background:#e8845a;}
.fc-3 .fruit-icon-wrap{background:rgba(232,132,90,.15);border-color:rgba(232,132,90,.3);}
.fc-3 .fruit-icon-wrap svg{stroke:#e8845a;}
.fc-3 .fruit-num{color:#e8845a;}
.fc-3:hover{box-shadow:0 16px 56px rgba(232,132,90,.22);}
.fc-4::before{background:linear-gradient(135deg,rgba(155,109,204,.12),rgba(155,109,204,.04));}
.fc-4::after{background:#9b6dcc;}
.fc-4 .fruit-icon-wrap{background:rgba(155,109,204,.15);border-color:rgba(155,109,204,.3);}
.fc-4 .fruit-icon-wrap svg{stroke:#9b6dcc;}
.fc-4 .fruit-num{color:#9b6dcc;}
.fc-4:hover{box-shadow:0 16px 56px rgba(155,109,204,.22);}
.fruit-icon-wrap{width:52px;height:52px;border-radius:12px;border:1px solid;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .4s;}
.fruit-card:hover .fruit-icon-wrap{transform:scale(1.1) rotate(-5deg);}
.fruit-icon-wrap svg{width:24px;height:24px;stroke-width:1.3;fill:none;}
.fruit-content{flex:1;}
.fruit-num{font-family:'Cormorant Garamond',serif;font-size:11px;letter-spacing:3px;font-weight:500;margin-bottom:6px;opacity:.7;text-transform:uppercase;}
.fruit-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;color:#fff;line-height:1.2;margin-bottom:10px;}
.fruit-desc{font-size:13px;color:rgba(255,255,255,.4);line-height:1.75;font-weight:300;}
.fruit-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;}
.fruit-tag{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.3);padding:4px 10px;border:1px solid rgba(255,255,255,.08);border-radius:20px;transition:all .3s;}
.fruit-card:hover .fruit-tag{border-color:rgba(255,255,255,.18);color:rgba(255,255,255,.55);}
@keyframes growBranch{from{stroke-dashoffset:700;}to{stroke-dashoffset:0;}}
@keyframes leafFloat{0%,100%{transform:rotate(0deg) translateY(0);}50%{transform:rotate(4deg) translateY(-3px);}}
.tree-branch{stroke-dasharray:700;stroke-dashoffset:700;transition:stroke-dashoffset 1.6s cubic-bezier(.4,0,.2,1);}
.tree-trunk-path{stroke-dasharray:1200;stroke-dashoffset:1200;transition:stroke-dashoffset 2s ease;}
.anim-ready .tree-trunk-path,.anim-ready .tree-branch{stroke-dashoffset:0;}
.tree-leaf{animation:leafFloat 5s ease-in-out infinite;}
.tree-leaf:nth-child(2n){animation-delay:1.2s;animation-duration:4s;}
.tree-leaf:nth-child(3n){animation-delay:2.4s;animation-duration:6s;}
.process-grid{display:none;}
.proc-step,.proc-num,.proc-title,.proc-desc{display:none;}


/* ─────────────────────────────────────────── AREAS OF WORK — REDESIGNED */
.work-pillars-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  position:relative;
}
.work-center-medallion{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  width:90px;height:90px;
  z-index:10;pointer-events:none;
}
.work-center-medallion svg{
  filter:drop-shadow(0 0 8px rgba(255,255,255,.08));
}
.medallion-outer{
  animation:medallionSpin 30s linear infinite;
  transform-origin:45px 45px;
}
@keyframes medallionSpin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}

.work-pillar{
  position:relative;border-radius:20px;overflow:hidden;
  cursor:pointer;
  display:block;
  transition:transform .5s cubic-bezier(.2,.8,.3,1),
             box-shadow .5s,
             border-color .4s;
  border:1px solid rgba(255,255,255,.07);
}
.work-pillar:hover{
  transform:translateY(-8px) scale(1.01);
  border-color:rgba(255,255,255,.16);
}

/* CLICK GLOW BORDER */
.work-pillar::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:20px;
  border:1px solid transparent;
  transition:0.3s;
}

.work-pillar:hover::after{
  border-color:rgba(46,148,96,0.4);
}

/* CLICK PRESS EFFECT */
.work-pillar:active{
  transform:scale(0.98);
}

/* CLICK INDICATOR */
.wp-click{
  margin-top:16px;
  display:flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:#2e9460;
  opacity:0.8;
  transition:opacity .3s;
}

.work-pillar:hover .wp-click{
  opacity:1;
}

/* ARROW ANIMATION */
.wp-arrow{
  transition:transform .3s ease;
}

.work-pillar:hover .wp-arrow{
  transform:translateX(6px);
}

/* OPTIONAL SHIMMER EFFECT */
.work-pillar::before{
  content:"";
  position:absolute;
  top:0;
  left:-75%;
  width:50%;
  height:100%;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,0.25),transparent);
  transition:0.6s;
}

.work-pillar:hover::before{
  left:125%;
}

.work-pillar{
  position:relative;border-radius:20px;overflow:hidden;
  cursor:default;
  transition:transform .5s cubic-bezier(.2,.8,.3,1),box-shadow .5s,border-color .4s;
  border:1px solid rgba(255,255,255,.07);
}
.work-pillar:hover{
  transform:translateY(-8px) scale(1.01);
  border-color:rgba(255,255,255,.16);
}
.wp-top{
  height:195px;position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.wp-top-svg{
  position:absolute;inset:0;width:100%;height:100%;
}
.wp-corner-num{
  position:absolute;top:12px;left:18px;
  font-family:'Cormorant Garamond',serif;
  font-size:68px;font-weight:300;line-height:1;
  opacity:.11;letter-spacing:-2px;color:#fff;
  pointer-events:none;
}
.wp-icon-ring{
  position:relative;z-index:2;
  width:80px;height:80px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1.5px solid rgba(255,255,255,.22);
  backdrop-filter:blur(12px);
  transition:transform .4s,box-shadow .4s;
}
.wp-icon-ring::before{
  content:'';position:absolute;
  inset:-10px;border-radius:50%;
  border:1px solid rgba(255,255,255,.07);
  animation:wpRing 3s ease-in-out infinite;
}
.wp-icon-ring::after{
  content:'';position:absolute;
  inset:-22px;border-radius:50%;
  border:1px solid rgba(255,255,255,.04);
  animation:wpRing 3s ease-in-out infinite .8s;
}
@keyframes wpRing{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.3;transform:scale(1.07);}}
.work-pillar:hover .wp-icon-ring{transform:scale(1.1);}
.wp-icon-ring svg{width:28px;height:28px;fill:none;stroke-width:1.3;}
.wp-body{padding:26px 28px 30px;}
.wp-category{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;font-weight:500;margin-bottom:10px;}
.wp-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;color:#fff;line-height:1.2;margin-bottom:12px;}
.wp-desc{font-size:13.5px;color:rgba(255,255,255,.42);line-height:1.75;font-weight:300;}
.wp-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;}
.wp-tag{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.3);padding:4px 10px;border:1px solid rgba(255,255,255,.09);border-radius:20px;transition:all .3s;}
.work-pillar:hover .wp-tag{border-color:rgba(255,255,255,.22);color:rgba(255,255,255,.58);}

/* Pillar 1 — Emerald/Research */
.wp-1 .wp-top{background:linear-gradient(140deg,#011c0c 0%,#033d1a 100%);}
.wp-1 .wp-icon-ring{background:rgba(46,148,96,.18);box-shadow:0 0 32px rgba(46,148,96,.35);}
.wp-1 .wp-icon-ring svg{stroke:#2e9460;}
.wp-1 .wp-category{color:#2e9460;}
.wp-1 .wp-body{background:linear-gradient(180deg,#021a0c 0%,#010e08 100%);}
.wp-1:hover{box-shadow:0 28px 72px rgba(46,148,96,.2);}
/* Pillar 2 — Gold/Exhibits */
.wp-2 .wp-top{background:linear-gradient(140deg,#1c1200 0%,#3e2a00 100%);}
.wp-2 .wp-icon-ring{background:rgba(201,168,76,.18);box-shadow:0 0 32px rgba(201,168,76,.35);}
.wp-2 .wp-icon-ring svg{stroke:#c9a84c;}
.wp-2 .wp-category{color:#c9a84c;}
.wp-2 .wp-body{background:linear-gradient(180deg,#1a1100 0%,#0e0900 100%);}
.wp-2:hover{box-shadow:0 28px 72px rgba(201,168,76,.2);}
/* Pillar 3 — Terra/Eco */
.wp-3 .wp-top{background:linear-gradient(140deg,#1c0900 0%,#3c1400 100%);}
.wp-3 .wp-icon-ring{background:rgba(232,132,90,.18);box-shadow:0 0 32px rgba(232,132,90,.35);}
.wp-3 .wp-icon-ring svg{stroke:#e8845a;}
.wp-3 .wp-category{color:#e8845a;}
.wp-3 .wp-body{background:linear-gradient(180deg,#1a0800 0%,#0e0500 100%);}
.wp-3:hover{box-shadow:0 28px 72px rgba(232,132,90,.2);}
/* Pillar 4 — Plum/Architecture */
.wp-4 .wp-top{background:linear-gradient(140deg,#0e0520 0%,#221040 100%);}
.wp-4 .wp-icon-ring{background:rgba(155,109,204,.18);box-shadow:0 0 32px rgba(155,109,204,.35);}
.wp-4 .wp-icon-ring svg{stroke:#9b6dcc;}
.wp-4 .wp-category{color:#9b6dcc;}
.wp-4 .wp-body{background:linear-gradient(180deg,#0e0518 0%,#08030e 100%);}
.wp-4:hover{box-shadow:0 28px 72px rgba(155,109,204,.2);}

.work-roots-bar{
  height:3px;
  background:linear-gradient(90deg,
    rgba(46,148,96,.0),rgba(46,148,96,.55) 20%,
    rgba(201,168,76,.55) 45%,rgba(232,132,90,.55) 68%,
    rgba(155,109,204,.55) 88%,rgba(155,109,204,.0)
  );
  margin-top:20px;border-radius:3px;
  position:relative;
  overflow:hidden;
}
.work-roots-bar::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);
  animation:rootShimmer 3s ease-in-out infinite;
}
@keyframes rootShimmer{0%{transform:translateX(-100%);}100%{transform:translateX(200%);}}

/* ─────────────────────────────────────────── CTA SPLIT */
.cta-sec{display:grid;grid-template-columns:1fr 1fr;}
.cta-left{background:rgba(80, 80, 190, 0.911);padding:80px 64px;position:relative;overflow:hidden;}
.cta-left-bg{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1518791841217-8f162f1912da?w=900&q=80');background-size:cover;background-position:center;opacity:.18;}
.cta-left-content{position:relative;z-index:2;}
.cta-right{background:rgba(4, 54, 4, 0.667);padding:80px 64px;}
.cta-right h3{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:300;color:var(--black);line-height:1.2;margin-bottom:24px;}
.cta-right p{font-size:15px;color:rgba(0,0,0,.6);line-height:1.8;margin-bottom:36px;}
.form-row{display:flex;flex-direction:column;gap:12px;}
.form-field{background:rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.12);border-radius:2px;padding:14px 20px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--black);outline:none;transition:border .3s;}
.form-field::placeholder{color:rgba(0,0,0,.4);}
.form-field:focus{border-color:var(--burgundy-mid);}
.btn-dark{background:var(--black);color:#fff;padding:16px 40px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:500;border:none;cursor:pointer;border-radius:2px;transition:all .3s;display:inline-block;width:100%;text-align:center;}
.btn-dark:hover{background:var(--burgundy);}

/* ─────────────────────────────────────────── NEWSLETTER BAND */
.newsletter-band{background:var(--amber);padding:60px 56px;}
.newsletter-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:48px;}
.newsletter-text h3{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:300;color:var(--black);line-height:1.2;}
.newsletter-text p{font-size:14px;color:rgba(0,0,0,.55);margin-top:8px;}
.newsletter-form{display:flex;gap:0;max-width:480px;width:100%;}
.newsletter-form input{flex:1;background:rgba(0,0,0,.1);border:1px solid rgba(0,0,0,.15);border-right:none;padding:14px 20px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--black);outline:none;border-radius:2px 0 0 2px;}
.newsletter-form input::placeholder{color:rgba(0,0,0,.4);}
.newsletter-form button{background:var(--black);color:#fff;border:none;padding:14px 32px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;border-radius:0 2px 2px 0;transition:background .3s;}
.newsletter-form button:hover{background:var(--burgundy);}

/* ─────────────────────────────────────────── FOOTER */
footer{background:var(--black);padding:80px 56px 40px;}
.footer-inner{max-width:1280px;margin:0 auto;}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,.07);}
.f-brand .logo{display:block;margin-bottom:20px;}
.f-brand p{font-size:14px;color:rgba(255,255,255,.35);line-height:1.8;max-width:280px;}
.f-social{display:flex;gap:12px;margin-top:28px;}
.f-social a{width:36px;height:36px;border:1px solid rgba(255,255,255,.1);border-radius:2px;display:flex;align-items:center;justify-content:center;transition:all .3s;}
.f-social a:hover{border-color:var(--gold);background:rgba(201,168,76,.1);}
.f-social svg{width:14px;height:14px;stroke:rgba(255,255,255,.45);fill:none;}
.f-col h4{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:24px;font-weight:500;}
.f-col ul{list-style:none;}
.f-col ul li{margin-bottom:12px;}
.f-col ul li a{font-size:14px;color:rgba(255,255,255,.35);transition:color .3s;}
.f-col ul li a:hover{color:var(--gold);}
.footer-bot{display:flex;justify-content:space-between;align-items:center;padding-top:32px;flex-wrap:wrap;gap:8px;}
.footer-bot p{font-size:12px;color:rgba(255,255,255,.2);}
.footer-bot-links{display:flex;gap:24px;}
.footer-bot-links a{font-size:12px;color:rgba(255,255,255,.2);transition:color .3s;}
.footer-bot-links a:hover{color:var(--gold);}

/* ─────────────────────────────────────────── ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(32px);}to{opacity:1;transform:translateY(0);}}
.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — clean mobile-first
   Breakpoints: 1100 → 768 → 480 → 360
   ═══════════════════════════════════════════════════════════ */

/* ── 1100px: Tablet landscape ── */
@media(max-width:1100px){
  #nav{padding:16px 32px;}
  .nav-menu{display:none;}
  .nav-hamburger{display:flex;}
  .hero-content{padding:120px 32px 80px;max-width:100%;margin-top:0;}
  .hero-side{display:none;}
  .hero-scroll{left:32px;}
  .stats-sec{padding:60px 32px;}
  .stats-inner{grid-template-columns:1fr 1fr;gap:0;}
  .stats-divider{display:none;}
  .stat-block{padding:28px 20px;border-bottom:1px solid rgba(255,255,255,.08);}
  .stat-block:nth-child(odd){border-right:1px solid rgba(255,255,255,.08);}
  .about-sec{padding:80px 32px;}
  .about-inner{grid-template-columns:1fr;gap:56px;}
  .about-right{max-width:560px;margin:0 auto;width:100%;}
  .about-img-accent{display:none;}
  .about-badge{right:0;top:24px;}
  .services-sec{padding:80px 32px 100px;}
  .services-head{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:48px;}
  .services-head-right p{text-align:left;max-width:100%;}
  .services-3d-grid{grid-template-columns:1fr 1fr;}
  .srv-3d.wide{grid-column:span 2;}
  .showcase-row{grid-template-columns:1fr 1fr;}
  .srv-counter-row{flex-wrap:wrap;}
  .srv-counter-item{flex:0 0 33.333%;border-bottom:1px solid rgba(255,255,255,.07);}
  .srv-counter-item:nth-child(3){border-right:none;}
  .gallery-grid{grid-template-columns:repeat(3,1fr);grid-template-rows:260px 260px;}
  .gallery-item.wide{grid-column:span 2;}
  .gallery-item.tall{grid-row:span 2;}
  .mission-sec{padding:80px 32px;}
  .partners-sec{padding:80px 32px 64px;}
  .partners-top{grid-template-columns:1fr;gap:24px;margin-bottom:48px;}
  .partners-carousel-wrap::before,.partners-carousel-wrap::after{width:80px;}
  .impact-sec{padding:80px 32px;}
  .impact-head{grid-template-columns:1fr;gap:24px;margin-bottom:48px;}
  .bento{grid-template-columns:repeat(6,1fr);}
  .b1{grid-column:span 3;grid-row:span 2;}
  .b2{grid-column:span 3;}
  .b3{grid-column:span 2;}
  .b4{grid-column:span 2;}
  .b5{grid-column:span 2;}
  .b6{grid-column:span 3;}
  .b7{grid-column:span 3;}
  .testi-sec{padding:80px 32px;}
  .testi-grid{grid-template-columns:1fr 1fr;}
  .blog-sec{padding:80px 32px;}
  .blog-head{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:40px;}
  .blog-grid{grid-template-columns:1fr 1fr;}
  .process-sec{padding:80px 32px;}
  .process-head{margin-bottom:56px;}
  .process-grid{grid-template-columns:1fr 1fr;gap:48px;}
  .process-grid::after{display:none;}
  .cta-sec{grid-template-columns:1fr;}
  .cta-left,.cta-right{padding:64px 40px;}
  .newsletter-band{padding:48px 32px;}
  .newsletter-inner{flex-direction:column;align-items:flex-start;gap:28px;}
  .newsletter-form{max-width:100%;width:100%;}
  footer{padding:64px 32px 36px;}
  .footer-top{grid-template-columns:1fr 1fr;gap:40px;}
}

/* ── 768px: Tablet portrait / large phone ── */
@media(max-width:768px){
  #nav{padding:14px 20px;}
  .logo img{height:70px;}

  /* HERO */
  .hero-content{padding:110px 20px 100px;margin-top:0;}
  .hero-h1{font-size:clamp(38px,9vw,70px);letter-spacing:-0.5px;}
  .hero-p{font-size:15px;max-width:100%;}
  .hero-actions{flex-direction:column;gap:12px;margin-top:28px;}
  .btn-gold,.btn-ghost{width:100%;text-align:center;padding:15px 32px;}
  .hero-scroll{display:none;}
  .hero-tag{margin-bottom:16px;}
  .marquee-item{font-size:13px;padding:0 24px;}

  /* STATS */
  .stats-sec{padding:48px 20px;}
  .stat-n{font-size:52px;}
  .stat-block{padding:24px 16px;}

  /* ABOUT */
  .about-sec{padding:64px 20px;}
  .about-inner{gap:40px;}
  .about-right{max-width:100%;}
  .about-badge{right:0;padding:16px 18px;}
  .about-badge .num{font-size:32px;}
  .h2-serif{font-size:clamp(30px,5vw,44px);}
  .body-txt{font-size:15px;}

  /* SERVICES */
  .services-sec{padding:56px 20px 72px;}
  .services-3d-grid{grid-template-columns:1fr;gap:16px;}
  .srv-3d.wide{grid-column:span 1;}
  .srv-counter-row{flex-wrap:wrap;margin-top:40px;}
  .srv-counter-item{flex:0 0 50%;border-right:none;border-bottom:1px solid rgba(255,255,255,.07);}
  .srv-counter-item:nth-child(odd){border-right:1px solid rgba(255,255,255,.07);}
  .srv-c-num{font-size:40px;}
  .showcase-row{grid-template-columns:1fr;}
  .glow-divider{padding:40px 0;}

  /* GALLERY */
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:200px 200px 200px;}
  .gallery-item.tall,.gallery-item.wide{grid-column:span 1;grid-row:span 1;}

  /* MISSION */
  .mission-sec{padding:64px 20px;}

  /* PARTNERS */
  .partners-sec{padding:64px 20px 48px;}
  .partner-logo-item{width:136px;height:80px;}
  .partners-carousel-wrap::before,.partners-carousel-wrap::after{width:60px;}
  .donor-card{min-width:160px;padding:1.1rem 1.4rem;}

  /* ─── MEASURABLE CHANGE (IMPACT BENTO) — 2 cols on mobile ─── */
  .impact-sec{padding:64px 20px;}
  .impact-head{grid-template-columns:1fr;gap:20px;margin-bottom:36px;}
  .bento{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
  }
  .b1{grid-column:span 2;grid-row:span 1;min-height:180px;}
  .b2,.b3,.b4,.b5,.b6{grid-column:span 1;grid-row:span 1;}
  .b7{grid-column:span 2;grid-row:span 1;}
  .b-card{padding:28px 22px;}
  .b-num{font-size:clamp(40px,9vw,60px);}
  .b1 .b-num{font-size:clamp(48px,10vw,68px);}
  .b-label{font-size:12px;}
  .b-badge{font-size:9px;padding:4px 10px;}

  /* TESTIMONIALS */
  .testi-sec{padding:64px 20px;}
  .testi-grid{grid-template-columns:1fr;}
  .t-card{padding:32px 28px;}
  .testi-head{margin-bottom:40px;}

  /* ─── FIELD NOTES (BLOG) — horizontal scroll ─── */
  .blog-sec{padding:64px 20px 48px;}
  .blog-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:28px;}
  .blog-grid{
    display:flex;
    flex-direction:row;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    gap:16px;
    padding-bottom:20px;
    margin:0 -20px;
    padding-left:20px;
    padding-right:20px;
    scrollbar-width:none;
  }
  .blog-grid::-webkit-scrollbar{display:none;}
  .blog-card{
    flex:0 0 78vw;
    max-width:320px;
    scroll-snap-align:start;
    transform:none !important;
  }
  .blog-card:hover{transform:none !important;}
  /* scroll indicator dots */
  .blog-scroll-hint{
    display:flex;
    align-items:center;
    gap:6px;
    margin-top:16px;
    justify-content:center;
  }
  .blog-scroll-hint span{
    font-size:10px;
    letter-spacing:2px;
    text-transform:uppercase;
    color:rgba(0,0,0,.3);
  }
  .blog-scroll-hint::before,.blog-scroll-hint::after{
    content:'';flex:1;max-width:48px;height:1px;
    background:rgba(0,0,0,.1);
  }

  /* PROCESS / AREAS OF WORK */
  .process-sec{padding:64px 20px;}
  .process-grid{grid-template-columns:1fr 1fr;gap:36px;}
  .proc-step{padding:0 8px;}
  .proc-num{width:64px;height:64px;font-size:22px;margin-bottom:20px;}
  .work-pillars-grid{grid-template-columns:1fr 1fr;gap:14px;}
  .work-center-medallion{width:64px;height:64px;}
  .wp-top{height:160px;}
  .wp-corner-num{font-size:52px;}
  .wp-body{padding:20px 18px 22px;}
  .wp-title{font-size:19px;}
  .wp-desc{font-size:12.5px;}

  /* CTA */
  .cta-left,.cta-right{padding:52px 24px;}
  .cta-right h3{font-size:34px;}

  /* NEWSLETTER */
  .newsletter-band{padding:40px 20px;}
  .newsletter-text h3{font-size:28px;}
  .newsletter-form{flex-direction:column;}
  .newsletter-form input{border-radius:2px 2px 0 0;border-right:1px solid rgba(0,0,0,.15);border-bottom:none;}
  .newsletter-form button{border-radius:0 0 2px 2px;}

  /* FOOTER */
  footer{padding:52px 20px 28px;}
  .footer-top{grid-template-columns:1fr;gap:36px;}
  .footer-bot{flex-direction:column;gap:8px;text-align:center;}
  .f-brand p{max-width:100%;}
}

/* ── 480px: Phones ── */
@media(max-width:480px){
  #nav{padding:12px 16px;}
  .logo img{height:60px;}
  .hero-content{padding:100px 16px 80px;margin-top:0;}
  .hero-h1{font-size:clamp(34px,11vw,52px);}
  .hero-p{font-size:14px;line-height:1.7;}
  .hero-tag span{font-size:10px;letter-spacing:2px;}
  .stats-sec{padding:40px 16px;}
  .stats-inner{grid-template-columns:1fr 1fr;}
  .stat-n{font-size:44px;}
  .stat-block{padding:20px 12px;}
  .stat-l{font-size:10px;}
  .about-sec{padding:56px 16px;}
  .about-inner{gap:36px;}
  .services-sec{padding:48px 16px 64px;}
  .srv-front{padding:20px 18px;min-height:200px;}
  .srv-back{padding:20px 18px;}
  .back-num{font-size:36px;}
  .back-title{font-size:19px;}
  .back-list li{font-size:12px;}
  .srv-counter-item{flex:0 0 50%;padding:24px 12px;}
  .srv-c-num{font-size:34px;}
  .srv-c-label{font-size:9px;}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:160px 160px 160px;}
  .work-pillars-grid{grid-template-columns:1fr;gap:12px;}
  .work-center-medallion{display:none;}
  .wp-top{height:140px;}
  .mission-sec{padding:56px 16px;}
  .mission-quote{font-size:clamp(22px,6vw,32px);}
  .partners-sec{padding:56px 16px 40px;}
  .partner-logo-item{width:120px;height:72px;padding:.8rem 1rem;}
  .partners-carousel-wrap::before,.partners-carousel-wrap::after{width:40px;}
  .partners-names-grid{gap:.5rem;}
  .partner-name-tag{font-size:.75rem;padding:.4rem 1rem;}
  .donor-card{min-width:140px;}
  .donors-grid{gap:.7rem;}

  /* IMPACT — stays 2-col, tighten padding */
  .impact-sec{padding:56px 16px;}
  .bento{gap:10px;}
  .b-card{padding:22px 18px;}
  .b-num{font-size:clamp(36px,9vw,52px);}
  .b1 .b-num{font-size:clamp(44px,10vw,60px);}
  .b-badge{font-size:9px;padding:4px 10px;}

  /* TESTIMONIALS */
  .testi-sec{padding:56px 16px;}
  .t-card{padding:28px 20px;}
  .t-quote{font-size:18px;}

  /* FIELD NOTES horizontal scroll — tighter card */
  .blog-sec{padding:56px 16px 40px;}
  .blog-grid{margin:0 -16px;padding-left:16px;padding-right:16px;}
  .blog-card{flex:0 0 82vw;max-width:300px;}
  .blog-img{height:180px;}
  .blog-body{padding:18px 16px;}

  /* PROCESS */
  .process-sec{padding:56px 16px;}
  .process-head{margin-bottom:40px;}
  .process-grid{grid-template-columns:1fr;gap:32px;}
  .proc-step{padding:0;}
  .proc-num{width:60px;height:60px;font-size:20px;margin-bottom:16px;}
  .proc-title{font-size:20px;}

  /* CTA */
  .cta-left,.cta-right{padding:48px 16px;}
  .cta-right h3{font-size:30px;}
  .form-field{padding:12px 16px;font-size:13px;}

  /* NEWSLETTER */
  .newsletter-band{padding:36px 16px;}
  .newsletter-text h3{font-size:26px;}

  /* FOOTER */
  footer{padding:48px 16px 24px;}
  .footer-top{gap:32px;}
  .f-col h4{margin-bottom:16px;}
}

/* ── 360px: Very small phones ── */
@media(max-width:360px){
  .logo img{height:52px;}
  #nav{padding:10px 14px;}
  .hero-h1{font-size:clamp(28px,10vw,42px);}
  .hero-p{font-size:13px;}
  .stats-inner{grid-template-columns:1fr;}
  .stat-block{border-right:none !important;border-bottom:1px solid rgba(255,255,255,.08);}
  .services-sec{padding:40px 14px 56px;}
  .srv-front{min-height:180px;padding:18px 16px;}
  .srv-back{padding:18px 16px;}
  .back-list li{font-size:11px;}
  .srv-counter-item{flex:0 0 50%;}
  .srv-c-num{font-size:30px;}

  /* IMPACT — stays 2-col even at 360 */
  .bento{grid-template-columns:1fr 1fr;gap:8px;}
  .b-card{padding:18px 14px;}
  .b-num{font-size:clamp(32px,9vw,44px);}
  .b1 .b-num{font-size:clamp(38px,10vw,50px);}
  .b-label{font-size:11px;line-height:1.5;}
  .b-badge{display:none;}

  /* FIELD NOTES scroll — full bleed at 360 */
  .blog-grid{margin:0 -14px;padding-left:14px;padding-right:14px;}
  .blog-card{flex:0 0 86vw;max-width:288px;}

  .testi-grid,.process-grid{grid-template-columns:1fr;}
  .partner-logo-item{width:110px;height:64px;}
  .donor-card{min-width:130px;}
}
