/* Kashmir Agriventures — modern edge-to-edge gallery site */
:root{
  --bg:#fbfbf6;
  --text:#102017;
  --muted:#5b6b61;
  --green:#1f5a3d;
  --green2:#2ea86a;
  --cream:#f5f2e9;
  --card:rgba(255,255,255,.84);
  --line:rgba(16, 32, 23, .10);
  --shadow: 0 18px 55px rgba(11, 28, 19, .10);
  --radius: 24px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
  overflow-x:hidden;
}

a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font:inherit}

.ambient{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.blob{
  position:absolute; width:42vw; height:42vw; border-radius:50%;
  filter: blur(75px);
  opacity:.22;
  transform: translate3d(0,0,0);
  animation: drift 16s ease-in-out infinite;
}
.blob.b1{left:-10vw; top:-14vw; background: radial-gradient(circle at 30% 30%, rgba(18,166,106,.55), transparent 60%)}
.blob.b2{right:-12vw; bottom:-16vw; background: radial-gradient(circle at 70% 40%, rgba(11,61,46,.55), transparent 60%); animation-duration: 22s}
@keyframes drift{
  0%,100%{transform: translate3d(0,0,0) scale(1)}
  50%{transform: translate3d(5vw,3vw,0) scale(1.05)}
}
.noise{
  position:absolute; inset:0;
  opacity:.06;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="240" height="240"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency=".9" numOctaves="3"/></filter><rect width="240" height="240" filter="url(%23n)" opacity=".35"/></svg>');
  mix-blend-mode:multiply;
}

.topbar{
  position:sticky; top:0; z-index:20;
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 18px;
  backdrop-filter: blur(14px);
  background: rgba(255,255,255,.30);
  border-bottom:none;
}
.brand{display:flex; align-items:center; gap:10px}
.brandMark{
  width:34px; height:34px; border-radius:12px;
  background:
    radial-gradient(circle at 30% 30%, rgba(18,166,106,.9), transparent 55%),
    radial-gradient(circle at 70% 70%, rgba(11,61,46,.95), transparent 60%),
    linear-gradient(135deg, rgba(11,61,46,.95), rgba(18,166,106,.8));
  box-shadow: 0 10px 26px rgba(11,61,46,.18);
  position:relative;
}
.brandMark::after{
  content:""; position:absolute; inset:9px;
  border-radius:10px; border:1px solid rgba(255,255,255,.5);
}
.brandMark.small{width:28px;height:28px;border-radius:10px}
.brandText{font-weight:600; letter-spacing:.2px}
.brandText b{color:var(--green)}

.nav{display:flex; gap:18px; align-items:center}
.nav a{font-weight:500; color:rgba(14,27,20,.84)}
.nav a:hover{color:var(--green)}
.pill{
  padding:10px 14px; border:1px solid var(--line);
  border-radius:999px; background:rgba(255,255,255,.8);
}
.pill:hover{border-color:rgba(18,166,106,.35); box-shadow:0 12px 30px rgba(18,166,106,.12)}

.menuBtn{display:none; width:42px; height:42px; border-radius:12px; border:1px solid var(--line); background:rgba(255,255,255,.8)}
.menuBtn span{display:block; width:18px; height:2px; background:rgba(14,27,20,.8); margin:0 auto}
.menuBtn span+span{margin-top:6px}

.drawer{
  position:fixed; inset:64px 10px auto 10px;
  background:rgba(255,255,255,.92);
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow: var(--shadow);
  transform: translateY(-14px);
  opacity:0;
  pointer-events:none;
  transition: .25s ease;
  z-index:30;
}
.drawer.open{opacity:1; transform: translateY(0); pointer-events:auto}
.drawerInner{display:grid; gap:12px; padding:14px}
.drawerInner a{padding:12px 12px; border-radius:14px; border:1px solid rgba(0,0,0,.06)}
.drawerMeta{display:grid; grid-template-columns:1fr 1fr; gap:10px; padding-top:10px}
.drawerMeta small{color:var(--muted)}
.drawerMeta b{display:block}

.hero{padding:26px 18px 0}
.heroInner{
  max-width:1180px; margin:0 auto;
  display:grid; grid-template-columns: 1.1fr .9fr;
  gap:24px; align-items:stretch;
}
.kicker{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.75);
  color:rgba(14,27,20,.78);
  font-size:13px;
}
.dot{width:10px;height:10px;border-radius:99px;background:linear-gradient(135deg,var(--green2),var(--green))}
.hero h1{
  margin:14px 0 10px;
  font-size: clamp(34px, 3.8vw, 56px);
  line-height:1.05;
  letter-spacing:-.8px;
}
.grad{
  background: linear-gradient(135deg, var(--green), var(--green2));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.grad2{
  background: linear-gradient(135deg, #1a3aef, var(--green2));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.hero p{color:var(--muted); font-size:16px; line-height:1.55; max-width:56ch}

.ctaRow{display:flex; gap:12px; margin:18px 0 18px; flex-wrap:wrap}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.8);
  font-weight:600;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.btn:hover{transform: translateY(-1px); box-shadow:0 14px 40px rgba(5,18,12,.12); border-color:rgba(18,166,106,.35)}
.btn.primary{
  background: linear-gradient(135deg, var(--green), var(--green2));
  border-color: transparent;
  color:white;
}
.btn.primary:hover{box-shadow:0 18px 55px rgba(18,166,106,.24)}
.btn.ghost{background:rgba(255,255,255,.6)}
.btn.small{padding:10px 14px; font-size:14px}

.stats{
  margin-top:10px;
  display:grid; grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
}
.stat{
  padding:12px 12px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.7);
}
.stat b{display:block; font-size:14px}
.stat span{display:block; color:var(--muted); font-size:12.5px; margin-top:2px}

.heroMedia{position:relative}
.frame{
  height:100%;
  border-radius: var(--radius);
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
  box-shadow: var(--shadow);
  background: rgba(255,255,255,.7);
}
.frame img{width:100%; height:100%; object-fit:cover; transform: scale(1.03)}
.chip{
  position:absolute;
  display:flex; gap:10px; align-items:center;
  padding:10px 12px;
  border-radius:16px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.82);
  box-shadow:0 18px 50px rgba(5,18,12,.12);
}
.chipIcon{font-size:18px}
.chip small{display:block; color:var(--muted)}
.chip.c1{left:16px; bottom:18px}
.chip.c2{right:16px; top:18px}

.marquee{
  margin-top:22px;
  border-top:1px solid var(--line);
  border-bottom:none;
  background: rgba(255,255,255,.55);
  overflow:hidden;
}
.track{
  display:flex; gap:22px; align-items:center;
  padding:12px 0;
  white-space:nowrap;
  animation: scroll 18s linear infinite;
}
.track span{font-weight:600; color:rgba(14,27,20,.78)}
.track i{width:6px;height:6px;border-radius:99px;background:rgba(18,166,106,.55); display:inline-block}
@keyframes scroll{
  0%{transform: translateX(0)}
  100%{transform: translateX(-50%)}
}

/* Edge-to-edge horizontal strip */
.strip{padding:34px 0 8px}
.stripHead{
  max-width:1180px; margin:0 auto; padding:0 18px 14px;
}
.stripHead h2{margin:0; font-size:22px}
.stripHead p{margin:6px 0 0; color:var(--muted)}
.stripRow{
  display:flex;
  gap:0;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  border-top:1px solid var(--line);
  border-bottom:none;
}
.stripRow::-webkit-scrollbar{height:10px}
.stripRow::-webkit-scrollbar-thumb{background:rgba(11,61,46,.2); border-radius:999px}
.stripItem{
  margin:0;
  flex:0 0 auto;
  width:min(70vw, 880px);
  height: clamp(240px, 42vh, 520px);
  scroll-snap-align:start;
}
.stripItem img{
  width:100%; height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.06) contrast(1.02);
}

/* Sections */
.section{padding:64px 18px}
.section.alt{background: linear-gradient(180deg, rgba(18,166,106,.06), rgba(255,255,255,0))}
.sectionInner{max-width:1180px;margin:0 auto}
.split{display:grid; grid-template-columns: 1.05fr .95fr; gap:20px; align-items:start}
.head h2{margin:0}
.head p{margin:8px 0 0; color:var(--muted)}

.lead{font-size:16px; color:var(--muted); line-height:1.6; max-width:62ch}
.bullets{display:grid; gap:10px; margin-top:18px}
.bullet{
  display:flex; gap:12px; align-items:flex-start;
  padding:14px 14px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.74);
}
.bIcon{font-size:18px}
.bullet span{color:var(--muted); display:block; margin-top:2px}

.aboutCard{
  border:1px solid rgba(0,0,0,.06);
  border-radius: var(--radius);
  overflow:hidden;
  background:rgba(255,255,255,.78);
  box-shadow: var(--shadow);
}
.aboutImg{height:260px}
.aboutImg img{width:100%; height:100%; object-fit:cover}
.aboutMeta{padding:16px}
.tag{
  display:inline-flex; padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(18,166,106,.22);
  background:rgba(18,166,106,.08);
  color:var(--green);
  font-weight:700;
  font-size:12px;
}
.aboutMeta h3{margin:12px 0 8px}
.aboutMeta p{margin:0 0 14px; color:var(--muted)}

.cards{
  margin-top:18px;
  display:grid; grid-template-columns: repeat(4, minmax(0,1fr));
  gap:12px;
}
.card{
  padding:16px 16px;
  border:1px solid rgba(0,0,0,.06);
  border-radius:22px;
  background:rgba(255,255,255,.76);
  box-shadow: 0 16px 50px rgba(5,18,12,.08);
  transition: transform .18s ease, box-shadow .18s ease;
}
.card:hover{transform: translateY(-3px); box-shadow: 0 20px 60px rgba(5,18,12,.12)}
.cardTop{display:flex; align-items:center; justify-content:space-between; gap:10px}
.badge{
  width:34px;height:34px;border-radius:14px;
  display:grid; place-items:center;
  background: linear-gradient(135deg, rgba(11,61,46,.9), rgba(18,166,106,.85));
  color:white; font-weight:800; font-size:12px;
}
.card h3{margin:0}
.card p{margin:10px 0 10px; color:var(--muted); line-height:1.55}
.card ul{margin:0; padding-left:18px; color:rgba(14,27,20,.82)}
.card li{margin:8px 0}

/* Edge-to-edge grid (zero gap) */
.gridWrap{padding:0}
.gridHead{
  max-width:1180px; margin:0 auto;
  padding:38px 18px 14px;
}
.gridHead h2{margin:0}
.gridHead p{margin:6px 0 0; color:var(--muted)}
.grid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap:0;
  width:100%;
}
.tile{
  position:relative;
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  overflow:hidden;
  cursor:pointer;
  outline:none;
  height: clamp(160px, 20vw, 280px);
}
.tile img{
  width:100%; height:100%;
  object-fit:cover;
  transform: scale(1.02);
  transition: transform .35s ease, filter .35s ease;
}
.tile:hover img{
  transform: scale(1.08);
  filter: saturate(1.07) contrast(1.05);
}
.shine{
  position:absolute; inset:-40%;
  background: linear-gradient(115deg, rgba(255,255,255,0), rgba(255,255,255,.18), rgba(255,255,255,0));
  transform: translateX(-30%) rotate(12deg);
  opacity:0;
  transition: opacity .25s ease;
  pointer-events:none;
}
.tile:hover .shine{
  opacity:1;
  animation: shine 1.15s ease;
}
@keyframes shine{
  0%{transform: translateX(-60%) rotate(12deg)}
  100%{transform: translateX(60%) rotate(12deg)}
}

/* Make grid varied using nth-child spans */
.tile:nth-child(1){grid-column: span 7}
.tile:nth-child(2){grid-column: span 5}
.tile:nth-child(3){grid-column: span 4}
.tile:nth-child(4){grid-column: span 4}
.tile:nth-child(5){grid-column: span 4}
.tile:nth-child(6){grid-column: span 5}
.tile:nth-child(7){grid-column: span 7}
.tile:nth-child(8){grid-column: span 6}
.tile:nth-child(9){grid-column: span 6}
.tile:nth-child(10){grid-column: span 5}
.tile:nth-child(11){grid-column: span 7}

/* Contact */
.section.contact{padding-bottom:42px}
.contactCard{
  display:grid; grid-template-columns: 1.1fr .9fr;
  border:1px solid rgba(0,0,0,.06);
  border-radius: var(--radius);
  overflow:hidden;
  background:rgba(255,255,255,.78);
  box-shadow: var(--shadow);
}
.contactCopy{padding:20px}
.contactCopy p{color:var(--muted); line-height:1.6}
.contactGrid{
  margin-top:14px;
  display:grid; grid-template-columns: 1fr 1fr;
  gap:12px;
}
.info{
  padding:12px 12px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.7);
}
.info small{color:var(--muted)}
.info b{display:block; margin-top:4px}
.contactMedia{position:relative; min-height:320px}
.contactMedia img{width:100%; height:100%; object-fit:cover}
.overlayLabel{
  position:absolute; left:14px; bottom:14px;
  padding:10px 12px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.32);
  background:rgba(0,0,0,.38);
  backdrop-filter: blur(10px);
  color:white;
}
.overlayLabel small{display:block; opacity:.85}

/* Footer */
.footer{
  margin-top:18px;
  display:flex; justify-content:space-between; align-items:center;
  gap:12px; flex-wrap:wrap;
}
.footLeft{display:flex; gap:10px; align-items:center}
.footLeft small{display:block; color:var(--muted)}
.footRight{display:flex; gap:14px; color:rgba(14,27,20,.78)}
.footRight a:hover{color:var(--green)}

/* Lightbox */
.lightbox{
  position:fixed; inset:0;
  background: rgba(0,0,0,.78);
  display:grid;
  place-items:center;
  opacity:0;
  pointer-events:none;
  transition:.22s ease;
  z-index:60;
}
.lightbox.open{opacity:1; pointer-events:auto}
.lightbox img{
  width:min(92vw, 1200px);
  height:min(80vh, 740px);
  object-fit:contain;
  border-radius:18px;
}
.lbClose{
  position:absolute; top:16px; right:16px;
  width:46px; height:46px; border-radius:14px;
  border:1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.08);
  color:white;
  font-size:26px;
  cursor:pointer;
}
.lbHint{
  position:absolute; bottom:18px; left:50%;
  transform: translateX(-50%);
  color: rgba(255,255,255,.78);
  font-size:13px;
}

/* Reveal animation */
.reveal{opacity:0; transform: translateY(10px); filter: blur(3px)}
.reveal.in{opacity:1; transform: translateY(0); filter: blur(0); transition: .7s ease}

/* Responsive */
@media (max-width: 980px){
  .heroInner{grid-template-columns:1fr}
  .frame{height: clamp(280px, 52vh, 520px)}
  .split{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr 1fr}
  .contactCard{grid-template-columns:1fr}
  .contactMedia{min-height:260px}
}
@media (max-width: 720px){
  .nav{display:none}
  .menuBtn{display:block}
  .stats{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .contactGrid{grid-template-columns:1fr}
  .tile{height:200px}
  .tile:nth-child(n){grid-column: span 12}
  .stripItem{width:88vw}
}


.nav a.active{color:var(--green); font-weight:700}


/* New edge-to-edge hero */
.heroHero{
  position:relative;
  height: min(92vh, 820px);
  min-height: 560px;
  width:100%;
  overflow:hidden;
  border-bottom:none;
}
.heroBg{
  position:absolute; inset:0;
}
.heroBg img{
  width:100%; height:100%;
  object-fit:cover;
  transform: scale(1.06);
  filter: saturate(1.02) contrast(1.02);
}

.heroBg video.heroVideo{
  width:100%;
  height:100%;
  object-fit:cover;
  transform: scale(1.04);
  filter: saturate(1.03) contrast(1.03);
}
.heroEdgeFade{
  position:absolute;
  left:0; right:0; bottom:0;
  height:170px;
  background: linear-gradient(to bottom,
    rgba(0,0,0,0) 0%,
    rgba(231,250,240,.18) 38%,
    rgba(231,250,240,.55) 68%,
    var(--bg) 100%
  );
  pointer-events:none;
}
.heroCenter{
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding: 0 18px;
}
.heroCenter .heroTitle{
  max-width: 92vw;
  margin: 0 auto;
  text-align:center;
}
.heroUrdu{
  margin: 10px 0 0;
  font-size: clamp(16px, 1.8vw, 22px);
  letter-spacing: 0;
  opacity: .92;
  padding: 10px 14px;
  border-radius: 999px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
}

.heroOverlay{
  position:absolute; inset:0;
  background:
    radial-gradient(60% 65% at 20% 35%, rgba(251,251,246,.10), rgba(251,251,246,.0) 55%),
    linear-gradient(90deg, rgba(16,32,23,.70), rgba(16,32,23,.28) 45%, rgba(16,32,23,.10));
}
.heroContent{
  position:relative;
  max-width:1180px;
  margin:0 auto;
  padding: 120px 18px 36px;
  color: #fff;
}
.heroKicker{
  display:inline-flex;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
  font-size:13px;
  color: rgba(255,255,255,.88);
}
.heroTitle{
  margin:14px 0 10px;
  font-size: clamp(34px, 4.1vw, 62px);
  line-height:1.03;
  letter-spacing:-.9px;
  text-shadow: 0 18px 60px rgba(0,0,0,.35);
}
.heroEm{
  display:inline-block;
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(220,255,235,.92));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.heroSub{
  max-width:68ch;
  color: rgba(255,255,255,.88);
  line-height:1.6;
}
.heroBadges{
  margin-top:16px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
  max-width: 860px;
}
.hBadge{
  padding:12px 12px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
}
.hBadge b{display:block}
.hBadge span{display:block; opacity:.9; font-size:12.5px; margin-top:2px}
.scrollHint{
  position:absolute;
  left:50%;
  bottom:16px;
  transform: translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  color: rgba(255,255,255,.78);
  font-size:12px;
}
.scrollHint i{
  width:2px;
  height:28px;
  background: rgba(255,255,255,.55);
  border-radius:999px;
  position:relative;
  overflow:hidden;
}
.scrollHint i::after{
  content:"";
  position:absolute;
  left:0; right:0;
  height:10px;
  background: rgba(255,255,255,.95);
  transform: translateY(-12px);
  animation: scrollDot 1.4s ease-in-out infinite;
}
@keyframes scrollDot{
  0%{transform: translateY(-12px)}
  60%{transform: translateY(30px)}
  100%{transform: translateY(30px)}
}

/* Softer cards & links */
.link{
  display:inline-flex;
  margin-top:10px;
  font-weight:700;
  color: var(--green);
}
.link:hover{text-decoration:underline}

/* Bibaum intro */
.bibaumCard{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:0;
  border-radius: var(--radius);
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
  background: rgba(255,255,255,.84);
  box-shadow: var(--shadow);
}
.bibaumMedia{min-height:360px}
.bibaumMedia img{width:100%; height:100%; object-fit:cover}
.bibaumCopy{padding:20px}
.miniList{display:grid; gap:10px; margin-top:14px}
.miniList div{padding:12px 12px; border:1px solid var(--line); border-radius:16px; background:rgba(251,251,246,.7)}
.miniList b{display:block}
.miniList span{display:block; color:var(--muted); margin-top:2px}

/* Who section soft split */
.split.soft{align-items:stretch}

/* Responsive hero */
@media (max-width: 980px){
  .heroContent{padding-top:96px}
  .heroBadges{grid-template-columns:1fr}
  .bibaumCard{grid-template-columns:1fr}
  .bibaumMedia{min-height:260px}
}

/* Page hero */
.pageHero{
  position:relative;
  width:100%;
  height: 320px;
  overflow:hidden;
  border-bottom:none;
}
.pageHeroBg{position:absolute; inset:0}
.pageHeroBg img{width:100%; height:100%; object-fit:cover; filter:saturate(1.02) contrast(1.02)}
.pageHeroOverlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(16,32,23,.66), rgba(16,32,23,.16));
}
.pageHeroInner{
  position:relative;
  max-width:1180px;
  margin:0 auto;
  padding: 88px 18px 24px;
  color:#fff;
}
.pageHeroInner h1{margin:0; font-size: clamp(30px, 4vw, 44px); letter-spacing:-.6px}
.pageHeroInner p{margin:10px 0 0; max-width:70ch; color: rgba(255,255,255,.88); line-height:1.6}



.preFooter{
  margin-top: 18px;
  padding: 26px 18px;
  border-radius: 24px;
  border: 1px solid var(--line);
  background: linear-gradient(135deg, rgba(16,117,68,.10), rgba(255,255,255,.55));
}
.preFooterInner{
  max-width: 980px;
  margin: 0 auto;
  display:flex;
  flex-wrap:wrap;
  gap: 14px 16px;
  align-items:center;
  justify-content: space-between;
}
.preFooterInner h3{
  margin:0;
  font-size: clamp(18px, 2.2vw, 26px);
  letter-spacing: -.3px;
}
.preFooterInner p{
  margin:0;
  opacity:.85;
  max-width: 66ch;
}
.footerHead{
  width:100%;
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
  font-weight: 700;
  letter-spacing: .2px;
  opacity: .95;
}



/* Revisions Feb 2026 */
.brandText{color:#000 !important; font-weight:700; letter-spacing:.2px;}
.topbar .brand{gap:0;}
.topbar .brand b{color:#000 !important;}
/* Remove any logo mark space */
.brandMark{display:none !important;}

/* Hero bilingual swap (same position, not stacked) */
.heroContent{position:relative;}
.heroTitle{margin:0; text-align:center; line-height:1.05;}
.heroTitleEn, .heroTitleUr{
  position:absolute;
  left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(1100px, 92vw);
  padding:0 12px;
}
.heroTitleEn{animation:heroSwap 10s infinite;}
.heroTitleUr{animation:heroSwap 10s infinite reverse;}
@keyframes heroSwap{
  0%,45%{opacity:1; filter:blur(0px);}
  50%,95%{opacity:0; filter:blur(2px);}
  100%{opacity:1; filter:blur(0px);}
}
@media (min-width: 992px){
  .heroTitleEn, .heroTitleUr{white-space:nowrap;}
}

/* mini list inside cards */
.miniList{
  margin:10px 0 0;
  padding-left:18px;
  color:var(--muted);
}
.miniList li{margin:4px 0;}

/* Dream orchard banner */
.dreamBanner{
  position:relative;
  border-radius: var(--radius);
  overflow:hidden;
  box-shadow: var(--shadow);
  margin: 0 0 22px;
}
.dreamBanner img{
  width:100%;
  height: 320px;
  object-fit: cover;
  display:block;
}
.dreamOverlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  flex-direction:column;
  padding:20px;
  background: linear-gradient(90deg, rgba(8,20,14,.55), rgba(8,20,14,.15));
}
.dreamOverlay h2{
  margin:0;
  color:#fff;
  text-align:center;
  text-shadow: 0 10px 35px rgba(0,0,0,.35);
  animation: floatText 2.6s ease-in-out infinite;
}
@keyframes floatText{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
@media (min-width: 900px){
  .dreamBanner{border-radius:0; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);}
  .dreamBanner img{height: 420px;}
}

/* Stronger footer */
.footer{
  margin-top: 26px;
  padding: 28px 18px;
  border-radius: var(--radius);
  background: #0b3d2e;
  color: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.10);
}
.footer a{color: rgba(255,255,255,.92);}
.footer a:hover{opacity:.9;}
.footerHead{
  margin: -28px -18px 18px;
  padding: 12px 18px;
  background: rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.10);
  font-weight:800;
  letter-spacing:.4px;
}

/* Plan form */
.formCard{
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: var(--shadow);
}
.formGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}
.formCard label{display:flex; flex-direction:column; gap:8px; font-weight:700;}
.formCard input, .formCard select{
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.9);
  font-size: 15px;
}
.formCard .note{color: var(--muted); margin: 12px 0;}
@media (max-width: 720px){
  .formGrid{grid-template-columns: 1fr;}
}


/* Hero title swap (single position, EN ↔ UR) */
.heroTitleSwap{
  font-size: clamp(22px, 3.6vw, 54px);
  line-height: 1.12;
  letter-spacing: -0.02em;
  padding: 0 10px;
  text-wrap: balance;
  max-width: min(1100px, 92vw);
  margin: 0 auto;
  white-space: normal;
  overflow-wrap: anywhere;
}
@media (min-width: 1024px){
  .heroTitleSwap{ white-space: nowrap; }
}
.heroCenter{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height: 72vh;
}
.heroContent.heroCenter{
  position: absolute;
  inset: 0;
  max-width: none;
  margin: 0;
  padding: 0 18px;
}


/* Responsive balance for 'What we do' cards */
@media (max-width: 980px){
  .cards{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .cards{ grid-template-columns: 1fr; }
  .card{ padding: 16px 14px; }
}


/* Featured in media */
.mediaStrip{
  margin: 0 0 18px;
  padding: 20px 18px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 26px;
  background: linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.04));
  backdrop-filter: blur(10px);
}

/* Full-bleed Orchard banner (post-media) */
.orchardBanner{
  position: relative;
  width: 100%;
  margin: 28px 0 0;
  border-top: 1px solid rgba(0,0,0,.06);
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.orchardBanner .bannerWrap{
  position: relative;
  min-height: clamp(240px, 38vw, 420px);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}
.orchardBanner img{
  position:absolute; inset:0;
  width:100%; height:100%; object-fit:cover;
  transform: scale(1.02);
}
.orchardBanner .bannerOverlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(7,25,17,.72), rgba(7,25,17,.35) 55%, rgba(7,25,17,.25));
}
.orchardBanner .bannerInner{
  position:relative;
  padding: 26px 18px;
  max-width: 1100px;
  margin: 0 auto;
  color:#fff;
}
.orchardBanner .bannerTitle{
  margin:0;
  font-size: clamp(26px, 4.2vw, 54px);
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-shadow: 0 18px 60px rgba(0,0,0,.45);
  text-wrap: balance;
}
.orchardBanner .bannerActions{ margin-top: 16px; display:flex; justify-content:center; }
.mediaHead h2{ margin: 0 0 6px; }
.mediaHead p{ margin: 0 0 14px; opacity: .92; }
.mediaLogos{
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 10px;
}
.mediaLogo{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  padding: 0 14px;
  height: 58px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.10);
  font-weight: 650;
}
.mIco{
  width: 22px;
  height: 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  opacity: .95;
}
.mIco svg{ width: 22px; height: 22px; }

.mediaNote{ margin-top: 12px; opacity: .92; }
.mediaNote a{ color: #fff; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 980px){
  .mediaLogos{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}


/* Full footer */
.footerFull{
  margin-top: 28px;
  background: radial-gradient(900px 300px at 20% 0%, rgba(65, 200, 130, .20), transparent 60%),
              radial-gradient(800px 280px at 80% 10%, rgba(220, 255, 230, .14), transparent 60%),
              rgba(7, 25, 17, 1);
  color: rgba(255,255,255,.92);
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 18px 18px 10px;
}
.footerTop{
  width: 100%;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  max-width:none; margin:0;
  padding: 18px 18px;
  border-radius: 0;
  background: linear-gradient(90deg, rgba(22, 120, 74, .92), rgba(11, 61, 46, .92));
  border: 0;
}
.footerTop h3{ margin:0 0 4px; }
.footerTop p{ margin:0; opacity:.92; }
.footerCtaBtns{ display:flex; gap:10px; flex-wrap:wrap; }

.footerGrid{
  max-width:1180px; margin: 14px auto 0;
  display:grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 14px;
  padding: 10px 0 14px;
}
.footBrand{ display:flex; gap:12px; align-items:flex-start; }
.footMark{
  width: 46px; height: 46px;
  display:flex; align-items:center; justify-content:center;
  border-radius: 16px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.14);
  font-weight: 800;
}
.footerFull a{ color: rgba(255,255,255,.92); text-decoration:none; }
.footerFull a:hover{ text-decoration: underline; text-underline-offset: 3px; }
.footCol h4{ margin: 0 0 8px; font-size: 14px; letter-spacing: .02em; text-transform: uppercase; opacity: .9; }
.footCol a{ display:block; padding: 6px 0; opacity: .92; }
.footCol small{ display:block; opacity: .7; margin-top: 6px; }
.footHint{ opacity: .7; }

.footerBottom{
  max-width:1180px; margin: 0 auto;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  border-top: 1px solid rgba(255,255,255,.12);
  padding-top: 10px;
}
.footMiniLinks a{ opacity: .9; }
.footMiniLinks span{ opacity: .5; margin: 0 6px; }

@media (max-width: 980px){
  .footerTop{ flex-direction: column; align-items:flex-start; }
  .footerGrid{ grid-template-columns: 1fr 1fr; }
  .footerBottom{ flex-direction: column; align-items:flex-start; }
}
@media (max-width: 560px){
  .footerGrid{ grid-template-columns: 1fr; }
}


/* Header glass: white @ 30% */
.topbar{
  border-radius: 0 0 18px 18px;
}
/* Transparent header + hover-to-reveal menu */
.topbar.topbar--hover{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: rgba(255,255,255,0.0); /* fully transparent */
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,0.10);
  transition: background .25s ease, border-color .25s ease;
}

.topbar.topbar--hover .brandText{
  color: #000; /* your requirement: all black */
  font-weight: 700;
  letter-spacing: .2px;
}

/* Hide menu items until hover */
.topbar.topbar--hover .nav.nav--hover{
  opacity: 0;
  transform: translateY(-6px);
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
}

/* Reveal menu on hover (desktop) */
@media (hover:hover) and (pointer:fine){
  .topbar.topbar--hover:hover{
    background: rgba(255,255,255,0.30); /* 30% glass */
    border-color: rgba(255,255,255,0.22);
  }
  .topbar.topbar--hover:hover .nav.nav--hover{
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
}

/* Mobile / touch: keep menu visible (hover doesn't exist) */
@media (hover:none){
  .topbar.topbar--hover{
    background: rgba(255,255,255,0.30);
    border-color: rgba(255,255,255,0.22);
  }
  .topbar.topbar--hover .nav.nav--hover{
    opacity: 1;
    transform: none;
    pointer-events: auto;
  }
}
/* ==========================================
   KASHMIR AGRIVENTURES – FINAL HEADER FIX
   Transparent + Always Visible Menu
   ========================================== */

/* Make header transparent glass */
.topbar{
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: rgba(255,255,255,0.28) !important; /* 30% glass */
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(0,0,0,0.06);
  transition: all 0.3s ease;
}

/* Brand text black */
.brandText{
  color: #000 !important;
  font-weight: 700;
  letter-spacing: 0.4px;
}

/* ALWAYS show menu */
.topbar .nav{
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

/* Remove hover hiding behavior */
.topbar:hover .nav{
  opacity: 1 !important;
  transform: none !important;
}

/* Improve nav spacing */
.nav a{
  color: #000;
  font-weight: 500;
  margin: 0 14px;
  transition: color 0.2s ease;
}

.nav a:hover{
  color: #0b3d2e;
}

/* Add spacing so hero doesn't hide under header */
.heroHero{
  padding-top: 90px;
}
/* ==========================================
   MOBILE FIX: Keep header visible on scroll
   ========================================== */
@media (max-width: 900px){
  .topbar{
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
  }

  /* In case JS adds "hide" classes on scroll */
  .topbar.hide,
  .topbar.hidden,
  .topbar.is-hidden,
  .topbar--hidden,
  .topbar--hide,
  .topbar.scrolledHide{
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}
/* ==========================================
   SMART TRANSPARENT HEADER (VIDEO MODE)
   ========================================== */

/* Default = fully transparent */
.topbar{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: rgba(255,255,255,0);
  backdrop-filter: blur(0px);
  -webkit-backdrop-filter: blur(0px);
  transition: all 0.35s ease;
}

/* On scroll add glass effect */
.topbar.scrolled{
  background: rgba(255,255,255,0.28);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(0,0,0,0.06);
}

/* Brand text */
.brandText{
  color: #000;
  font-weight: 700;
}

/* Keep menu always visible */
.topbar .nav{
  opacity: 1;
  transform: none;
  pointer-events: auto;
}
/* =========================================================
   NEXT-LEVEL HEADER: white text on hero, black on scroll
   (This block OVERRIDES earlier !important header styles)
   ========================================================= */

/* Default (top of page over video): fully transparent */
.topbar{
  background: rgba(255,255,255,0) !important;
  backdrop-filter: blur(0px) !important;
  -webkit-backdrop-filter: blur(0px) !important;
  border-bottom: 1px solid rgba(255,255,255,0) !important;
  transition: background .25s ease, backdrop-filter .25s ease, border-color .25s ease;
}

/* Brand + nav = WHITE on hero */
.topbar .brandText,
.topbar .nav a{
  color: #fff !important;
}

/* Optional: make pill look good on hero */
.topbar .nav a.pill{
  background: rgba(255,255,255,0.18) !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
  color: #fff !important;
}

/* When scrolled: glass header + BLACK text */
.topbar.scrolled{
  background: rgba(255,255,255,0.30) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border-bottom: 1px solid rgba(0,0,0,0.06) !important;
}

.topbar.scrolled .brandText,
.topbar.scrolled .nav a{
  color: #000 !important;
}

.topbar.scrolled .nav a.pill{
  background: rgba(11,61,46,0.10) !important;
  border: 1px solid rgba(11,61,46,0.22) !important;
  color: #000 !important;
}

/* Keep menu visible always */
.topbar .nav{
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}
/* ==========================================
   FINAL TWEAKS:
   1) Mobile header text color switch works
   2) Desktop hover link turns green
   ========================================== */

/* Desktop/Laptop: on hover, menu text turns green */
@media (hover:hover) and (pointer:fine){
  .topbar .nav a:hover{
    color: #0b3d2e !important;
  }
}

/* Mobile: ensure WHITE on hero and BLACK on scroll */
@media (max-width: 900px){
  /* top of page over video */
  .topbar .brandText,
  .topbar .nav a{
    color: #fff !important;
  }

  /* scrolled state */
  .topbar.scrolled .brandText,
  .topbar.scrolled .nav a{
    color: #000 !important;
  }

  /* pill button states */
  .topbar .nav a.pill{
    background: rgba(255,255,255,0.18) !important;
    border: 1px solid rgba(255,255,255,0.28) !important;
    color: #fff !important;
  }

  .topbar.scrolled .nav a.pill{
    background: rgba(11,61,46,0.10) !important;
    border: 1px solid rgba(11,61,46,0.22) !important;
    color: #000 !important;
  }
}
/* ==============================
   LOGO: header + footer + color switch
   ============================== */

.brand{
  display: flex;
  align-items: center;
  gap: 10px;
}

.brandLogo{
  width: 34px;
  height: 34px;
  object-fit: contain;
  transition: filter 0.3s ease;
}

/* White logo on hero */
.topbar .brandLogo{
  filter: brightness(0) invert(1) drop-shadow(0 6px 18px rgba(0,0,0,0.22)) !important;
}

/* Normal logo when scrolled */
.topbar.scrolled .brandLogo{
  filter: drop-shadow(0 6px 18px rgba(0,0,0,0.18)) !important;
}

/* Footer logo */
.footLogo{
  width: 46px;
  height: 46px;
  object-fit: contain;
}

@media (max-width: 900px){
  .brandLogo{ width: 28px; height: 28px; }
  .footLogo{ width: 40px; height: 40px; }
}
/* ==========================================
   FIX: logo square + black box on scroll
   ========================================== */

/* Always keep header glass (NOT black) when scrolled */
.topbar.scrolled{
  background: rgba(255,255,255,0.30) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border-bottom: 1px solid rgba(0,0,0,0.06) !important;
}

/* If any old CSS makes it black, kill it */
.topbar,
.topbar.scrolled{
  box-shadow: none !important;
}

/* Make the logo look premium even if file has a white square */
.brandLogo{
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;    /* turns square into circle */
  display: block !important;
  object-fit: cover !important;       /* fills nicely */
  overflow: hidden !important;
  background: transparent !important;
}

/* White on hero, normal on scroll */
.topbar .brandLogo{
  filter: brightness(0) invert(1) drop-shadow(0 6px 18px rgba(0,0,0,0.22)) !important;
}
.topbar.scrolled .brandLogo{
  filter: drop-shadow(0 6px 18px rgba(0,0,0,0.18)) !important;
}

/* Desktop hover green */
@media (hover:hover) and (pointer:fine){
  .topbar .nav a:hover{
    color: #0b3d2e !important;
  }
}
/* ==========================================
   MOBILE HEADER SIZE FIX (less overlay on video)
   ========================================== */
@media (max-width: 900px){

  /* smaller header */
  .topbar{
    padding: 10px 12px !important;
  }

  .brandText{
    font-size: 16px !important;
    line-height: 1.1 !important;
  }

  .brandLogo{
    width: 26px !important;
    height: 26px !important;
  }

  /* hide desktop nav on phone (use hamburger/drawer) */
  .topbar .nav{
    display: none !important;
  }

  /* ensure hamburger is visible */
  .menuBtn{
    display: inline-flex !important;
  }

  /* reduce hero top padding so it doesn't look pushed down */
  .heroHero{
    padding-top: 64px !important; /* adjust if needed: 56–72 */
  }
}
/* Remove leftover logo styling */
.brandLogo,
.footLogo{
  display: none !important;
}
/* ==========================================
   MOBILE HEADER FIX: brand + hamburger + scroll
   ========================================== */

@media (max-width: 900px){

  /* Keep header always visible */
  .topbar{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 12px !important;
    min-height: 56px !important;
  }

  /* Brand text size */
  .brandText{
    font-size: 16px !important;
    line-height: 1.1 !important;
    letter-spacing: 0.2px !important;
    white-space: nowrap !important;
  }

  /* Hide desktop nav on phone (drawer will handle links) */
  .topbar .nav{
    display: none !important;
  }

  /* Fix hamburger button distortion */
  .menuBtn{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    border-radius: 12px !important;
  }

  .menuBtn span{
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    margin: 4px 0 !important;
    border-radius: 2px !important;
    transform: none !important;
  }

  /* HERO (top): text + hamburger = WHITE */
  .topbar .brandText{
    color: #fff !important;
  }
  .topbar .menuBtn span{
    background: #fff !important;
  }

  /* SCROLLED: text + hamburger = BLACK */
  .topbar.scrolled .brandText{
    color: #000 !important;
  }
  .topbar.scrolled .menuBtn span{
    background: #000 !important;
  }
}
/* ==========================================
   PERFECT MOBILE HAMBURGER (balanced + no white box)
   ========================================== */
@media (max-width: 900px){

  /* Remove any background/box */
  .menuBtn{
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    outline: none !important;
  }

  /* Make 2-line hamburger perfectly centered */
  .menuBtn{
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
  }

  .menuBtn span{
    width: 22px !important;
    height: 2px !important;
    margin: 0 !important;
    border-radius: 2px !important;
    display: block !important;
  }

  /* Space between the 2 lines evenly */
  .menuBtn span:first-child{
    transform: translateY(-4px) !important;
  }
  .menuBtn span:last-child{
    transform: translateY(4px) !important;
  }

  /* White over video */
  .topbar .menuBtn span{
    background: #fff !important;
  }

  /* Black after scroll */
  .topbar.scrolled .menuBtn span{
    background: #000 !important;
  }
}
/* ==========================================
   MOBILE SVG APPLE MENU ICON
   ========================================== */

@media (max-width: 900px){

  /* Center header */
  .topbar{
    flex-direction: column !important;
    align-items: center !important;
    padding: 10px 0 !important;
  }

  .brand{
    width: 100%;
    text-align: center !important;
    justify-content: center !important;
  }

  .brandText{
    font-size: 18px !important;
    font-weight: 650 !important;
    color: #fff !important;
  }

  /* Hide desktop nav */
  .topbar .nav{
    display: none !important;
  }

  /* Apple button reset */
  .appleBtn{
    margin-top: 6px !important;
    background: transparent !important;
    border: none !important;
    padding: 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
  }

  /* SVG icon */
  .appleIcon{
    width: 24px;
    height: 24px;
    color: #2ecc71; /* green on video */
    transition: transform 0.2s ease, color 0.2s ease;
  }

  /* On click turn red */
  .appleBtn:active .appleIcon{
    color: #e53935;
    transform: scale(0.9);
  }

  /* After scroll turn darker green */
  .topbar.scrolled .appleIcon{
    color: #0b3d2e;
  }
}
/* ==========================================
   FIX: Desktop layout normal + Mobile centered brand + Green apple
   ========================================== */

/* DESKTOP/LAPTOP: keep header in one line (brand left, nav right) */
@media (min-width: 901px){
  .topbar{
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 14px 22px !important;
  }

  .brand{
    width: auto !important;
    text-align: left !important;
    justify-content: flex-start !important;
  }

  .topbar .nav{
    display: flex !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  .appleBtn{
    display: none !important; /* apple icon only for phone */
  }
}

/* MOBILE: center brand text and put apple below */
@media (max-width: 900px){
  .topbar{
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 10px 0 !important;
  }

  .brand{
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  .brandText{
    display: block !important;
    text-align: center !important;
    margin: 0 auto !important;
  }

  /* Ensure apple button is below text */
  .appleBtn{
    display: inline-flex !important;
    margin-top: 6px !important;
  }

  /* Force apple to be GREEN (some phones default to blue) */
  .appleIcon{
    color: #2ecc71 !important;  /* green */
    fill: none !important;
    stroke: currentColor !important;
  }

  /* On press = red */
  .appleBtn:active .appleIcon{
    color: #e53935 !important;
  }

  /* After scroll = dark green */
  .topbar.scrolled .appleIcon{
    color: #0b3d2e !important;
  }
}
.topbar{ display:flex !important; }
/* =====================================================
   LAYOUT ONLY (keeps your transparency + scroll glass)
   Fix: desktop nav centered + mobile brand not centered
   Also: force apple icon green (not blue)
   ===================================================== */

/* Make sure header is flex (layout fix only) */
.topbar{ display:flex !important; }

/* ---------- DESKTOP/LAPTOP ---------- */
@media (min-width: 901px){
  /* keep header in one line */
  .topbar{
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  /* brand left */
  .brand{
    width: auto !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }

  /* nav right (not centered) */
  .nav{
    display: flex !important;
    margin-left: auto !important;
    justify-content: flex-end !important;
    text-align: right !important;
  }

  /* no apple icon on desktop */
  .appleBtn{ display:none !important; }
}

/* ---------- MOBILE ---------- */
@media (max-width: 900px){
  /* stack: brand centered, apple under it */
  .topbar{
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .brand{
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .brandText{
    width: 100% !important;
    text-align: center !important;
    display: block !important;
  }

  /* hide desktop nav on phone (use drawer) */
  .nav{ display:none !important; }

  /* apple button visible under brand */
  .appleBtn{
    display: inline-flex !important;
    margin-top: 6px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* FORCE apple icon GREEN (some phones make it blue) */
  .appleIcon{
    color: #2ecc71 !important;
  }

  /* tap/press -> red */
  .appleBtn:active .appleIcon{
    color: #e53935 !important;
  }

  /* after scroll -> dark green */
  .topbar.scrolled .appleIcon{
    color: #0b3d2e !important;
  }
}
/* ===================================================
   FINAL MOBILE HEADER FIX
   Center brand text
   Apple directly below
   Green default → Red on tap
   =================================================== */

@media (max-width: 900px){

  /* Make header vertical */
  .topbar{
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 0 !important;
    text-align: center !important;
  }

  /* Brand wrapper full width */
  .brand{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }

  /* Brand text centered */
  .brandText{
    width: 100% !important;
    text-align: center !important;
    font-size: 18px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* Hide desktop nav */
  .nav{
    display: none !important;
  }

  /* Apple button BELOW text */
  .appleBtn{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-top: 6px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 6px !important;
  }

  /* Apple icon GREEN */
  .appleIcon{
    width: 24px !important;
    height: 24px !important;
    color: #2ecc71 !important;  /* green */
    transition: transform 0.15s ease, color 0.15s ease;
  }

  /* On tap (mobile hover equivalent) → RED */
  .appleBtn:active .appleIcon{
    color: #e53935 !important;
    transform: scale(0.9);
  }
}
/* ===================================================
   NUCLEAR MOBILE HEADER CENTER FIX
   Forces: brand centered (row 1) + apple centered (row 2)
   Does NOT touch transparency/background.
   =================================================== */
@media (max-width: 900px){

  /* Make header a 2-row grid */
  header.topbar{
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    place-items: center !important;
    padding: 12px 10px !important;
    gap: 6px !important;
  }

  /* Brand centered in row 1 */
  header.topbar > a.brand{
    grid-row: 1 !important;
    grid-column: 1 !important;
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  header.topbar .brandText{
    display: inline-block !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto !important;
  }

  /* Hide desktop nav on phone */
  header.topbar > nav.nav{
    display: none !important;
  }

  /* Apple button centered in row 2 */
  header.topbar > button#menuBtn.appleBtn{
    grid-row: 2 !important;
    grid-column: 1 !important;
    margin: 0 !important;
    padding: 6px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
  }

  /* Force icon green + red on press */
  header.topbar > button#menuBtn.appleBtn .appleIcon{
    width: 24px !important;
    height: 24px !important;
    color: #2ecc71 !important; /* green */
    transition: transform .15s ease, color .15s ease !important;
  }

  header.topbar > button#menuBtn.appleBtn:active .appleIcon{
    color: #e53935 !important; /* red */
    transform: scale(0.92) !important;
  }

  /* Optional hover red for devices that support hover */
  @media (hover:hover) and (pointer:fine){
    header.topbar > button#menuBtn.appleBtn:hover .appleIcon{
      color: #e53935 !important;
    }
  }
}
/* ==========================================
   Apple hover + tap color effect
   ========================================== */

.appleIcon{
  color: #2ecc71 !important; /* green default */
  transition: color 0.2s ease, transform 0.2s ease;
}

/* Desktop hover */
@media (hover:hover) and (pointer:fine){
  .appleBtn:hover .appleIcon{
    color: #e53935 !important; /* red */
  }
}

/* Mobile tap */
.appleBtn:active .appleIcon{
  color: #e53935 !important; /* red */
  transform: scale(0.92);
}
/* ==========================================
   Premium "What we do" cards
   ========================================== */

.cardsPremium{
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  align-items: stretch;
}

@media (max-width: 1100px){
  .cardsPremium{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .cardsPremium{ grid-template-columns: 1fr; }
}

.cardPremium{
  padding: 18px 18px 16px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  background: rgba(255,255,255,0.72) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  min-height: 240px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

/* --- What we do: premium media cards --- */
.cardPremium.hasMedia{
  padding: 0 !important;
}
.cardPremium.hasMedia .cardBody{
  padding: 16px 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
  justify-content: space-between;
}
.cardMedia{
  position: relative;
  height: 150px;
  overflow: hidden;
  border-radius: 18px 18px 0 0;
}
@media (max-width: 640px){
  .cardMedia{ height: 140px; }
}
.cardMedia img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.04);
  transition: transform .55s ease;
  filter: saturate(1.08) contrast(1.04);
}
.cardPremium.hasMedia:hover .cardMedia img{
  transform: scale(1.11);
}
.mediaShade{
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.10) 0%, rgba(0,0,0,0.38) 100%);
  pointer-events: none;
}
.mediaTag{
  position: absolute;
  left: 14px;
  bottom: 12px;
  padding: 8px 10px;
  border-radius: 999px;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.92);
  background: rgba(18, 55, 34, 0.42);
  border: 1px solid rgba(255,255,255,0.22);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.cardPremium:hover{
  transform: translateY(-4px);
  border-color: rgba(11,61,46,0.22);
  box-shadow: 0 18px 50px rgba(0,0,0,0.10);
}

.cardHead{
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.iconPill{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(11,61,46,0.08);
  border: 1px solid rgba(11,61,46,0.14);
  flex: 0 0 auto;
}

.iconPill svg{
  width: 22px;
  height: 22px;
  color: #0b3d2e;
}

.cardTitleWrap h3{
  margin: 0 0 6px 0;
  font-size: 18px;
  line-height: 1.2;
}

.cardSub{
  margin: 0;
  opacity: 0.75;
  font-size: 14px;
  line-height: 1.45;
}

.chips{
  margin-top: 12px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.chip{
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.10);
  background: rgba(255,255,255,0.65);
  color: rgba(0,0,0,0.75);
}
/* ================================
   FIX: Premium What-We-Do layout
   (prevents stretched messy cards)
   ================================ */

#solutions .cardsPremium{
  display: grid !important;
  gap: 18px !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}

@media (max-width: 1100px){
  #solutions .cardsPremium{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 640px){
  #solutions .cardsPremium{ grid-template-columns: 1fr !important; }
}

/* Make each card compact, equal height, not huge */
#solutions .cardPremium{
  padding: 18px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,0.78) !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  box-shadow: 0 14px 40px rgba(0,0,0,0.06) !important;
  min-height: 190px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  overflow: hidden !important;
}

/* Clean header alignment */
#solutions .cardPremium .cardHead{
  display: flex !important;
  gap: 12px !important;
  align-items: flex-start !important;
}

#solutions .cardPremium .iconPill{
  width: 44px !important;
  height: 44px !important;
  border-radius: 14px !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(11,61,46,0.08) !important;
  border: 1px solid rgba(11,61,46,0.14) !important;
}

#solutions .cardPremium .iconPill svg{
  width: 22px !important;
  height: 22px !important;
  color: #0b3d2e !important;
}

/* Better typography */
#solutions .cardPremium h3{
  margin: 0 0 6px 0 !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
}

#solutions .cardPremium .cardSub{
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  opacity: 0.75 !important;
}

/* Chips look cleaner and won't float weirdly */
#solutions .chips{
  margin-top: 12px !important;
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}

#solutions .chip{
  font-size: 12px !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(0,0,0,0.10) !important;
  background: rgba(255,255,255,0.85) !important;
}

/* Link stays at bottom, consistent */
#solutions .cardPremium .link{
  margin-top: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
/* ==========================================
   Orchard banner: cloudy merge at top & bottom
   ========================================== */

.orchardBanner .bannerWrap{
  position: relative;
  overflow: hidden;
}

/* Ensure image fills nicely */
.orchardBanner .bannerWrap > img{
  display: block;
  width: 100%;
  height: clamp(320px, 55vw, 520px);
  object-fit: cover;
}

/* Add soft fades (top + bottom) */
.orchardBanner .bannerWrap::before,
.orchardBanner .bannerWrap::after{
  content:"";
  position:absolute;
  left:0; right:0;
  height: 110px;
  pointer-events:none;
  z-index: 2;
}

/* Top fade (merge from previous section into image) */
.orchardBanner .bannerWrap::before{
  top:0;
  background: linear-gradient(
    to bottom,
    rgba(245,248,245,1) 0%,
    rgba(245,248,245,0.72) 35%,
    rgba(245,248,245,0) 100%
  );
}

/* Bottom fade (merge image into footer/background) */
.orchardBanner .bannerWrap::after{
  bottom:0;
  background: linear-gradient(
    to top,
    rgba(245,248,245,1) 0%,
    rgba(245,248,245,0.72) 35%,
    rgba(245,248,245,0) 100%
  );
}

/* Keep your existing overlay/text above fades */
.orchardBanner .bannerOverlay,
.orchardBanner .bannerInner{
  position: absolute;
  z-index: 3;
}
/* ==================================================
   PERFECT MERGE: banner edges fade into page background
   Uses body background color (auto match)
   ================================================== */

:root{ --page-bg: #ffffff; } /* change ONLY this if your site bg is different */

body{ background: var(--page-bg) !important; }

/* orchard banner edge fades */
.orchardBanner .bannerWrap{
  position: relative;
  overflow: hidden;
  background: var(--page-bg);
}

.orchardBanner .bannerWrap > img{
  display:block;
  width:100%;
  height: clamp(340px, 55vw, 540px);
  object-fit: cover;
}

/* Stronger + longer fades */
.orchardBanner .bannerWrap::before,
.orchardBanner .bannerWrap::after{
  content:"";
  position:absolute;
  left:-2%;
  right:-2%;
  height: 180px;              /* more fade length */
  pointer-events:none;
  z-index: 2;
  filter: blur(1px);          /* “cloudy” softness */
}

.orchardBanner .bannerWrap::before{
  top:-1px;
  background: linear-gradient(to bottom,
    var(--page-bg) 0%,
    rgba(255,255,255,0.85) 30%,
    rgba(255,255,255,0.0) 100%
  );
}

.orchardBanner .bannerWrap::after{
  bottom:-1px;
  background: linear-gradient(to top,
    var(--page-bg) 0%,
    rgba(255,255,255,0.85) 30%,
    rgba(255,255,255,0.0) 100%
  );
}

/* keep your text above fades */
.orchardBanner .bannerOverlay,
.orchardBanner .bannerInner{
  position:absolute;
  z-index: 3;
}
/* ==========================================
   TRUE EDGE MERGE (Image melts into background)
   ========================================== */

.orchardBanner .bannerWrap{
  position: relative;
  overflow: hidden;
}

/* Apply mask fade directly to image */
.orchardBanner .bannerWrap img{
  display: block;
  width: 100%;
  height: clamp(360px, 55vw, 560px);
  object-fit: cover;

  /* Fade top + bottom */
  -webkit-mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    black 12%,
    black 88%,
    transparent 100%
  );

  mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    black 12%,
    black 88%,
    transparent 100%
  );
}
/* ==========================================
   REMOVE GAP between banner and footer
   ========================================== */

/* Remove bottom margin from banner */
.orchardBanner{
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Remove top margin from footer */
.footerFull{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Remove possible section spacing */
.section{
  margin-bottom: 0;
}
.orchardBanner + footer{
  margin-top: 0 !important;
}
/* ==========================================
   Orchard banner: soften TOP edge into white bg
   (no sharp line)
   ========================================== */

.orchardBanner .bannerWrap{
  position: relative;
  overflow: hidden;
}

/* Top fog layer */
.orchardBanner .bannerWrap::before{
  content:"";
  position:absolute;
  left:0; right:0;
  top:0;
  height: 190px;               /* increase for more fade */
  pointer-events:none;
  z-index: 4;
  background: linear-gradient(
    to bottom,
    #ffffff 0%,
    rgba(255,255,255,0.92) 30%,
    rgba(255,255,255,0.55) 55%,
    rgba(255,255,255,0.0) 100%
  );
}

/* Ensure text stays above fog */
.orchardBanner .bannerInner{
  position:absolute;
  z-index: 6;
}
.orchardBanner .bannerOverlay{
  z-index: 5;
}
/* =========================================================
   ORCHARD BANNER: remove sharp edges + seamless merge
   (top + bottom blend, no white gap)
   ========================================================= */

/* remove spacing around banner + footer join */
.orchardBanner{ margin:0 !important; padding:0 !important; }
.orchardBanner + footer{ margin-top:0 !important; padding-top:0 !important; }

/* make banner wrap clean */
.orchardBanner .bannerWrap{
  position: relative !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* TRUE merge: fade image transparency at top and bottom */
.orchardBanner .bannerWrap > img{
  display: block !important;
  width: 100% !important;
  height: clamp(360px, 55vw, 560px) !important;
  object-fit: cover !important;

  /* the real blend */
  -webkit-mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(0,0,0,1) 18%,
    rgba(0,0,0,1) 82%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(0,0,0,1) 18%,
    rgba(0,0,0,1) 82%,
    transparent 100%
  );
}

/* optional: hide any tiny seam line by slight overlap */
.orchardBanner{
  transform: translateY(-6px);
}

/* keep text above merge */
.orchardBanner .bannerOverlay,
.orchardBanner .bannerInner{
  position: absolute !important;
  z-index: 5 !important;
}
/* =========================================================
   PREMIUM NO-IMAGE BANNER (animated gradient + orchard lines)
   ========================================================= */

.simpleBanner{
  position: relative;
  margin: 0;
  padding: clamp(80px, 10vw, 130px) 18px;
  text-align: center;
  overflow: hidden;

  /* soft premium gradient */
  background: radial-gradient(1000px 300px at 50% 0%,
      rgba(11,61,46,0.10),
      rgba(255,255,255,0.0) 60%),
    linear-gradient(135deg,
      rgba(245,249,246,1) 0%,
      rgba(255,255,255,1) 45%,
      rgba(241,247,244,1) 100%);
}

.simpleBannerBg{
  position: absolute;
  inset: 0;
  pointer-events: none;
}

/* subtle moving light */
.simpleBannerBg::before{
  content:"";
  position:absolute;
  width: 90vmax;
  height: 90vmax;
  left: 50%;
  top: -40vmax;
  transform: translateX(-50%);
  border-radius: 50%;
  background: radial-gradient(circle at 50% 50%,
    rgba(11,61,46,0.10),
    rgba(11,61,46,0.00) 55%);
  animation: kagGlow 10s ease-in-out infinite;
  filter: blur(2px);
  opacity: 0.9;
}

@keyframes kagGlow{
  0%,100%{ transform: translateX(-50%) translateY(0); opacity: .75; }
  50%{ transform: translateX(-50%) translateY(22px); opacity: 1; }
}

/* orchard line SVG */
.orchardLines{
  position:absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  width: 110%;
  height: 240px;
  color: rgba(11,61,46,0.25);
  transform: translateX(-4%);
}

/* content */
.simpleBannerInner{
  position: relative;
  z-index: 2;
  max-width: 980px;
  margin: 0 auto;
}

.simpleBanner .bannerTitle{
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1.05;
  font-weight: 650;
  letter-spacing: -0.6px;
  margin: 0 0 26px 0;
  color: #0b3d2e;
  text-shadow: 0 10px 30px rgba(0,0,0,0.06);
}

.simpleBanner .btn.primary{
  padding: 14px 34px;
  border-radius: 999px;
  font-size: 16px;
  transition: transform .2s ease, box-shadow .2s ease;
}

.simpleBanner .btn.primary:hover{
  transform: translateY(-3px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.14);
}

/* =========================================================
   Apple hover red (desktop) + tap red (mobile)
   ========================================================= */
.appleIcon{
  color: #2ecc71 !important;
  transition: color .2s ease, transform .2s ease;
}
@media (hover:hover) and (pointer:fine){
  .appleBtn:hover .appleIcon{ color:#e53935 !important; }
}
.appleBtn:active .appleIcon{
  color:#e53935 !important;
  transform: scale(.92);
}

/* =========================================================
   Mobile header forced to 2-row grid (text centered + apple below)
   ========================================================= */
@media (max-width: 900px){
  header.topbar{
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    place-items: center !important;
    padding: 12px 10px !important;
    gap: 6px !important;
    text-align: center !important;
  }
  header.topbar > a.brand{
    grid-row: 1 !important;
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
  }
  header.topbar > nav.nav{ display:none !important; }
  header.topbar > button#menuBtn.appleBtn{
    grid-row: 2 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 6px 10px !important;
  }
}
/* ==============================
   Floating Apple Decoration
   ============================== */

.simpleBanner{
  position: relative;
  overflow: hidden;
}

/* Apple position */
.floatingApple{
  position: absolute;
  right: -60px;              /* pushes half outside */
  bottom: -40px;
  width: 220px;
  max-width: 35vw;
  z-index: 1;
  pointer-events: none;
  transform: rotate(-6deg);
  filter: drop-shadow(0 20px 40px rgba(0,0,0,0.15));
  animation: floatApple 6s ease-in-out infinite;
}

/* subtle floating animation */
@keyframes floatApple{
  0%,100%{ transform: rotate(-6deg) translateY(0); }
  50%{ transform: rotate(-6deg) translateY(-12px); }
}

/* Keep text above apple */
.simpleBannerInner{
  position: relative;
  z-index: 2;
}

/* Mobile adjustments */
@media (max-width: 768px){
  .floatingApple{
    width: 140px;
    right: -40px;
    bottom: -20px;
    opacity: 0.9;
  }
}

/* ================================
   Global Partners (after Hero)
   ================================ */
.partners{
  position: relative;
  padding: 84px 0 92px;
  /* Glassy green premium background */
  background:
    radial-gradient(900px 420px at 20% 15%, rgba(17,140,96,.22), transparent 55%),
    radial-gradient(900px 420px at 85% 55%, rgba(11,61,46,.18), transparent 58%),
    linear-gradient(180deg, rgba(8,44,33,.94), rgba(8,44,33,.90));
  color: rgba(255,255,255,.92);
}
/* soft fade-in from the hero video end */
.partners:before{
  content:"";
  position:absolute;
  left:0; right:0; top:-56px;
  height: 76px;
  background: linear-gradient(180deg, rgba(0,0,0,0), rgba(8,44,33,.86));
  pointer-events:none;
}

.partnersHead{ max-width: 820px; margin: 0 auto 26px; text-align: center; }
.sectionTitle{ font-size: clamp(28px, 3.2vw, 42px); letter-spacing:-0.02em; }
.partners .sectionTitle{ color: #fff; }
.sectionSub{ margin-top: 10px; opacity: .82; }


/* Partners (REV8) */
.partnerMapWrap{
  position: relative;
  max-width: 980px;
  margin: 26px auto 22px;
  display: grid;
  place-items: center;
  padding: 10px 0;
}
.partnerMapWrap:before{
  content:"";
  position:absolute;
  inset: -8px -8px -14px;
  background:
    radial-gradient(380px 180px at 30% 45%, rgba(17,140,96,.18), transparent 60%),
    radial-gradient(380px 180px at 70% 45%, rgba(17,140,96,.12), transparent 62%);
  filter: blur(2px);
  opacity: .9;
  pointer-events:none;
}
.partnerMapImg{
  width: min(980px, 100%);
  height: auto;
  display:block;
  opacity: .98;
  filter: drop-shadow(0 26px 44px rgba(0,0,0,.18));
}

.mapPin{
  position:absolute;
  width: 14px; height: 14px;
  border-radius: 999px;
  background: var(--brand);
  border: 2px solid rgba(255,255,255,.85);
  box-shadow: 0 0 0 6px rgba(17, 140, 96, .18), 0 14px 26px rgba(0,0,0,.20);
}
@keyframes pinPulse{0%{box-shadow:0 0 0 0 rgba(17,140,96,.35);}70%{box-shadow:0 0 0 16px rgba(17,140,96,0);}100%{box-shadow:0 0 0 0 rgba(17,140,96,0);}}

.mapPin{ animation: pinPulse 2.2s ease-out infinite; }

.mapPin:after{
  content:"";
  position:absolute;
  left:50%; top:50%;
  width: 6px; height: 6px;
  transform: translate(-50%,-50%);
  border-radius: 999px;
  background: #fff;
  opacity: .95;
}
.mapPin--usa{ left: 24%; top: 33%; }
.mapPin--italy{ left: 53%; top: 37%; }

.mapLogo{
  position:absolute;
  height: 28px;
  width: auto;
  padding: 6px 10px;
  border-radius: 14px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
  box-shadow: 0 18px 32px rgba(0,0,0,.14);
}
.mapLogo--usa{ left: 28%; top: 26%; transform: translate(-50%,-50%); }
.mapLogo--italy{ left: 57%; top: 30%; transform: translate(-50%,-50%); }

.partnerBelow{
  max-width: 920px;
  margin: 18px auto 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-items: start;
}
.partnerBelowItem{
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: start;
}
.partnerBelowLogo{
  height: 30px;
  width: auto;
  display: block;
  opacity: .95;
}
.partnerBelowItem p{
  margin: 2px 0 0;
  line-height: 1.65;
  opacity: .9;
}

/* Responsive */
@media (max-width: 900px){
  .mapLogo{ height: 30px; padding: 6px 10px; }
  .partnerBelow{ grid-template-columns: 1fr; }
}
@media (max-width: 520px){
  .mapPin{ width: 12px; height: 12px; box-shadow: 0 0 0 5px rgba(17, 140, 96, .18), 0 14px 22px rgba(0,0,0,.18); }
  .mapLogo{ height: 28px; padding: 6px 10px; border-radius: 12px; }
  .partnerBelowItem{ grid-template-columns: 1fr; }
  .partnerBelowLogo{ height: 30px; }
}


.partnersGrid{
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 22px;
  align-items: stretch;
}

.partnerCards{
  display:grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.partnerCard{
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(14, 80, 58, 0.10);
  border-radius: 22px;
  padding: 22px 20px;
  backdrop-filter: blur(10px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.06);
}

.partnerCard h3{ margin: 10px 0 8px; font-size: 20px; letter-spacing: -0.01em; }
.partnerCard p{ margin: 0; opacity: .9; line-height: 1.6; }

.partnerTop{ display:flex; align-items:center; justify-content: space-between; }
.partnerPill{
  display:inline-flex;
  align-items:center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(11,61,46,0.08);
  border: 1px solid rgba(11,61,46,0.10);
  font-weight: 700;
  font-size: 13px;
}
.partnerDot{
  width: 12px; height: 12px;
  border-radius: 50%;
  background: #0b3d2e;
  box-shadow: 0 0 0 8px rgba(11,61,46,0.10);
}
.partnerDot2{
  background:#0b3d2e;
  box-shadow: 0 0 0 8px rgba(11,61,46,0.10);
}

.partnerMapWrap{
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(14, 80, 58, 0.10);
  border-radius: 22px;
  padding: 14px;
  overflow: hidden;
  backdrop-filter: blur(10px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.06);
}
.partnerMap{ width:100%; height:auto; display:block; border-radius: 16px; }

@media (max-width: 980px){
  .partnersGrid{ grid-template-columns: 1fr; }
  .partnerCards{ grid-template-columns: 1fr; }
}




/* =========================
   REVISION: Partners + Media + Premium polish
========================= */

/* Partners section */
.partnersGrid{
  gap: 22px;
}
.partnerCard{
  position: relative;
  overflow: hidden;
  padding-top: 18px;
}
.partnerCard::before{
  content:"";
  position:absolute; inset:0;
  background: radial-gradient(900px 220px at 20% 0%, rgba(29,91,68,.12), transparent 60%),
              radial-gradient(700px 260px at 85% 30%, rgba(11,61,46,.10), transparent 60%);
  pointer-events:none;
}
.partnerLogoWrap{
  display:flex;
  align-items:center;
  gap:12px;
  margin: 10px 0 10px;
}
.partnerLogo{
  width: min(210px, 85%);
  max-height: 62px;
  object-fit: contain;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.12));
}
.partnerMapWrap{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.partnerMap{
  width: 100%;
  height: auto;
  display:block;
  background: transparent;
  filter: drop-shadow(0 18px 50px rgba(11,61,46,.18));
}

/* Mini grid inside cards */
.miniGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
  margin-top: 10px;
}
@media (max-width: 420px){
  .miniGrid{ grid-template-columns: 1fr; }
}
.miniItem{
  font-size: 13.5px;
  font-weight: 650;
  color: rgba(11,61,46,.92);
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(185,226,210,.7);
  background: rgba(255,255,255,.65);
  backdrop-filter: blur(10px);
}
@media (min-width: 900px){
  .miniGrid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Media strip: glassy, greenish */
.mediaStrip{
  border-radius: 26px;
  border: 1px solid rgba(185,226,210,.7);
  background: linear-gradient(135deg, rgba(230,255,242,.55), rgba(242,255,248,.35));
  box-shadow: 0 24px 70px rgba(0,0,0,.08);
  backdrop-filter: blur(14px);
  position: relative;
  overflow: hidden;
}
.mediaStrip::before{
  content:"";
  position:absolute; inset:-1px;
  background: radial-gradient(900px 260px at 15% 10%, rgba(29,91,68,.14), transparent 60%),
              radial-gradient(850px 280px at 90% 50%, rgba(11,61,46,.10), transparent 60%);
  pointer-events:none;
}
.mediaHead, .mediaLogos, .mediaNote{ position: relative; z-index: 1; }
.mediaLogo{
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(185,226,210,.75);
  backdrop-filter: blur(10px);
}

/* Orchard banner: slightly more premium */
.bannerWrap{
  border-radius: 30px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(0,0,0,.12);
}
.bannerInner{
  max-width: 980px;
}
.bannerTitle{
  letter-spacing: -0.02em;
  text-shadow: 0 18px 60px rgba(0,0,0,.35);
}
.bannerActions .btn.primary{
  border-radius: 999px;
  padding: 12px 18px;
}

/* Footer polish */
.footerFull{
  background: radial-gradient(1200px 420px at 15% 0%, rgba(29,91,68,.18), transparent 55%),
              radial-gradient(1000px 380px at 90% 35%, rgba(11,61,46,.12), transparent 55%),
              linear-gradient(180deg, rgba(8,40,30,1), rgba(5,24,18,1));
}
.footerGrid{
  gap: 26px;
}
.footBrand b{
  font-size: 18px;
  letter-spacing: -0.01em;
}
.footerBottom{
  border-top: 1px solid rgba(255,255,255,.10);
}

/* Remove extra top margin that looked like a boxed map in some browsers */
.partners .container{ overflow: visible; }


/* === Rev3: Global Partners layout + balanced copy === */
.partnersLayout{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 26px;
  align-items: start;
  margin-top: 18px;
}
.partnerMapWrap{
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(14, 80, 58, 0.10);
  border-radius: 26px;
  padding: 18px 18px 14px;
  backdrop-filter: blur(12px);
  box-shadow: 0 20px 50px rgba(0,0,0,0.06);
}
.partnerMap{
  width:100%;
  height:auto;
  display:block;
}
.mapNote{
  margin: 10px 0 0;
  font-size: 13px;
  opacity: .78;
}
.partnersCopy{
  display:grid;
  gap: 14px;
}
.partnerItem{
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(14, 80, 58, 0.10);
  border-radius: 22px;
  padding: 18px 18px;
  backdrop-filter: blur(12px);
  box-shadow: 0 16px 38px rgba(0,0,0,0.05);
}
.partnerKicker{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-bottom: 8px;
}
.partnerMiniDot{
  width:10px; height:10px; border-radius:999px;
  background: #1a8f4a;
  box-shadow: 0 0 0 6px rgba(26,143,74,0.14);
}
.partnerMiniDot2{
  background: #0e8aa3;
  box-shadow: 0 0 0 6px rgba(14,138,163,0.14);
}
.partnerItem h3{ margin: 0 0 8px; font-size: 20px; letter-spacing: -0.01em; }
.partnerItem p{ margin: 0; line-height: 1.65; opacity: .90; }
.partnerCTA{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 6px;
}

/* Responsive partners */
@media (max-width: 920px){
  .partnersLayout{ grid-template-columns: 1fr; }
  .partnerCTA{ justify-content: center; }
}

/* === Rev3: Who we are image collage === */
.aboutImgGrid{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 10px;
}
.aboutImgGrid img{
  width:100%;
  height: 260px;
  object-fit: cover;
  border-radius: 18px;
}
@media (max-width: 680px){
  .aboutImgGrid{ grid-template-columns: 1fr; }
  .aboutImgGrid img{ height: 210px; }
}

/* === Rev3: What we do mini lists === */
.miniList{
  list-style: none;
  padding: 0;
  margin: 14px 0 12px;
  display:grid;
  gap: 8px;
}

/* =========================
   Rev4: Global Partners (center map + balanced copy)
   ========================= */
.partnersHead--center{ text-align:center; margin-bottom: 18px; }
.partnerMapCenter{
  max-width: 980px;
  margin: 0 auto;
}
.partnerMapCenter .partnerMap{
  border-radius: 0;
  filter: drop-shadow(0 22px 70px rgba(11,61,46,.18));
}

.partnersCards{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  max-width: 980px;
  margin: 18px auto 0;
}
@media (max-width: 860px){
  .partnersCards{ grid-template-columns: 1fr; }
}

.partnerCardTop{
  display:flex;
  gap: 14px;
  align-items:center;
  justify-content: flex-start;
  margin-bottom: 10px;
}
.partnerLogo{
  width: 160px;
  max-width: 44vw;
  height: 54px;
  object-fit: contain;
}
.partnerMeta{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 700;
  color: rgba(11,61,46,.80);
}
.partnerMeta .partnerDot{
  width: 10px; height: 10px;
  border-radius: 999px;
  background: #1a8f4a;
  box-shadow: 0 0 0 6px rgba(26,143,74,.12);
}
.partnerMeta .partnerDot2{
  background: #0e8aa3;
  box-shadow: 0 0 0 6px rgba(14,138,163,.12);
}

/* =========================
   Rev4: Who we are (glassy modern block)
   ========================= */
.whoGlass{
  max-width: none;
  margin: 0;
  border-radius: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  position: relative;
  overflow: visible;
}

.whoGlass::before{content:"";display:none;}
.whoGlassInner{ position: relative; z-index: 1; padding: 26px 22px; }

/* Who we are — full-width transparent (no box) */
.who--transparent{
  position: relative;
  padding: 86px 0;
}
.who--transparent::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(to bottom, var(--bg) 0%, rgba(244,252,248,0) 18%, rgba(244,252,248,0) 82%, var(--bg) 100%),
    radial-gradient(900px 340px at 15% 20%, rgba(18,110,78,.14), transparent 62%),
    radial-gradient(900px 340px at 85% 78%, rgba(29,91,68,.12), transparent 64%);
  pointer-events:none;
}
.who--transparent .container{ position: relative; z-index:1; }
.whoBadges{ margin-top: 16px; display:flex; flex-wrap:wrap; gap:10px; }
.badgePill{
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(185,226,210,.7);
  background: rgba(230,255,242,.32);
  backdrop-filter: blur(10px);
  font-weight: 600;
  font-size: 13px;
}
.whoGlass h2{ margin: 0 0 10px; letter-spacing: -0.02em; }

.miniList li{
  position: relative;
  padding-left: 18px;
  opacity: .92;
  line-height: 1.4;
  font-size: 14px;
}
.miniList li:before{
  content: "";
  position:absolute;
  left: 0; top: 8px;
  width: 8px; height: 8px;
  border-radius: 999px;
  background: rgba(26,143,74,0.95);
  box-shadow: 0 0 0 6px rgba(26,143,74,0.10);
}


/* ===== REV5: Partners + Who + Banner refinements ===== */
.partnersHead--center{ text-align:center; }
.partnerMapCenter{ display:flex; justify-content:center; }
.partnerMap--real{ width:min(980px, 100%); height:auto; display:block; }
.partnerInline{
  margin-top: 22px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 28px;
  align-items:start;
}
.partnerInlineItem{
  display:flex;
  gap: 14px;
  align-items:flex-start;
}
.partnerInlineLogo{
  width: 140px;
  max-width: 42vw;
  height:auto;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.18));
}
.partnerInlineItem p{
  margin: 2px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.partnerInlineItem strong{ color: var(--text); }

@media (max-width: 900px){
  .partnerInline{ grid-template-columns: 1fr; }
  .partnerInlineLogo{ width: 130px; }
}

/* Who we are - full width glass, no awkward boxed look */
.who .container{ position:relative; }
.whoPanel{
  padding: 26px 26px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 40px rgba(0,0,0,.18);
  backdrop-filter: blur(10px);
}
.whoTitle{ margin:0 0 10px; font-size: clamp(24px, 2.6vw, 34px); letter-spacing:-.02em; }
.whoLead{ margin:0 0 18px; color: var(--muted); font-size: 1.02rem; line-height:1.7; max-width: 68ch; }
.whoGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 18px;
}
.whoPoint{
  display:flex;
  gap: 12px;
  align-items:flex-start;
  padding: 14px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.06);
}
.whoIcon{ width: 40px; height: 40px; display:grid; place-items:center; border-radius: 14px; background: rgba(11,61,46,.16); }
.whoPoint b{ display:block; color: var(--text); margin-bottom: 2px; }
.whoPoint span{ color: var(--muted); line-height: 1.55; }

@media (max-width: 900px){
  .whoPanel{ padding: 20px 16px; border-radius: 18px; }
  .whoGrid{ grid-template-columns: 1fr; }
  .whoPoint{ padding: 12px 12px; }
}

/* Orchard banner - edge to edge, no rounded corners, more glassy */
.orchardBanner{ padding-left:0 !important; padding-right:0 !important; }
.orchardBanner .bannerWrap{
  width: 100%;
  max-width: none;
  border-radius: 0 !important;
}
.orchardBanner img{ border-radius: 0 !important; }
.orchardBanner .bannerOverlay{
  background: linear-gradient(120deg, rgba(0,0,0,.55), rgba(11,61,46,.38));
}
.orchardBanner .bannerInner{
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 18px;
  padding-right: 18px;
}


.partners a{ color: rgba(255,255,255,.92); }


/* Who we are — icons + motion (REV7) */
.whoGlass{
  background: linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,.62));
  border: 1px solid rgba(12,60,44,.10);
  backdrop-filter: blur(14px);
}
.whoGlassInner{ max-width: 980px; margin: 0 auto; }
.whoFeatures{
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}
.whoFeature{
  display:flex;
  gap: 12px;
  align-items:flex-start;
  padding: 14px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.52);
  border: 1px solid rgba(12,60,44,.10);
  box-shadow: 0 18px 40px rgba(11, 28, 19, .08);
  transform: translateY(10px);
  opacity: 0;
  transition: transform .75s ease, opacity .75s ease;
}
/* FIX: "Who" feature cards are reused on other pages (e.g., Bibaum).
   Reveal should work whenever .whoGlass receives the .in class. */
.whoGlass.in .whoFeature{ transform: translateY(0); opacity: 1; }
.whoGlass.in .whoFeature:nth-child(2){ transition-delay: .08s; }
.whoGlass.in .whoFeature:nth-child(3){ transition-delay: .16s; }

.whoIcon{
  flex: 0 0 auto;
  width: 40px; height: 40px;
  border-radius: 14px;
  display:grid; place-items:center;
  color: var(--green);
  background: radial-gradient(140% 140% at 20% 20%, rgba(46,168,106,.26), rgba(31,90,61,.08));
  border: 1px solid rgba(31,90,61,.14);
}
.whoIcon svg{ width: 22px; height: 22px; }
.whoFeature h3{
  margin: 2px 0 4px;
  font-size: 16px;
  letter-spacing: -0.01em;
}
.whoFeature p{
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
  font-size: 14px;
}

/* Responsive Who section */
@media (max-width: 900px){
  .whoFeatures{ grid-template-columns: 1fr; }
  .whoFeature{ padding: 14px 14px; }
}

/* Cards text overflow fix (REV7) */
.cardHead{
  display:flex;
  align-items:flex-start;
  gap: 12px;
}
.cardTitleWrap h3{
  font-size: clamp(18px, 1.45vw, 22px);
  line-height: 1.15;
  margin: 0 0 4px;
  word-break: break-word;
}
.cardSub{
  line-height: 1.45;
}

/* Orchard banner — full-bleed glassy (REV7) */
.orchardBanner{
  border-top: none;
  border-bottom: none;
}
.orchardBanner .bannerOverlay{
  background:
    radial-gradient(900px 420px at 15% 35%, rgba(17,140,96,.38), transparent 58%),
    linear-gradient(90deg, rgba(7,25,17,.70), rgba(7,25,17,.34) 55%, rgba(7,25,17,.22));
  backdrop-filter: blur(6px);
}

/* ================================
   Premium minimal upgrades (Apple/Tesla inspired)
   ================================ */

.topbar{border-bottom:1px solid rgba(16,32,23,.08)}
.brandLogo{width:38px;height:38px;border-radius:14px;box-shadow:0 10px 24px rgba(0,0,0,.10)}

.langToggle{display:flex; gap:6px; align-items:center; margin-left:10px}
.langBtn{
  border:1px solid rgba(16,32,23,.12);
  background:rgba(255,255,255,.70);
  padding:8px 10px;
  border-radius:999px;
  font-weight:600;
  font-size:12px;
  letter-spacing:.2px;
  color:rgba(16,32,23,.78);
  cursor:pointer;
  backdrop-filter: blur(10px);
}
.langBtn:hover{border-color:rgba(46,168,106,.30); box-shadow:0 12px 30px rgba(46,168,106,.12)}
.langBtn.active{background:linear-gradient(135deg, rgba(46,168,106,.20), rgba(255,255,255,.75)); border-color:rgba(46,168,106,.38); color:rgba(11,61,46,.95)}

/* Better RTL spacing */
html[dir="rtl"] body{font-family:"Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif}
html[dir="rtl"] .nav{direction:rtl}
html[dir="rtl"] .drawerInner{direction:rtl}

/* Page hero */
.pageHero{padding:110px 18px 40px}
.pageTitle{font-size:clamp(34px, 4vw, 56px); letter-spacing:-0.02em; line-height:1.06; margin:0}
.pageLead{max-width:760px; color:rgba(16,32,23,.76); font-size:18px; line-height:1.6; margin:14px 0 0}
.kickerPill{display:inline-flex; padding:10px 12px; border-radius:999px; border:1px solid rgba(16,32,23,.10); background:rgba(255,255,255,.60); backdrop-filter: blur(10px); color:rgba(16,32,23,.70); margin:0 0 14px}

/* Partners page (glassy card) */
.partnersNew{padding:30px 0 70px}
.partnersNewCard{border-radius:28px; padding:26px; background:linear-gradient(135deg, rgba(46,168,106,.10), rgba(255,255,255,.72)); border:1px solid rgba(16,32,23,.10); box-shadow:0 24px 70px rgba(0,0,0,.10); backdrop-filter: blur(14px)}
.partnersNewMap{position:relative; margin:18px auto 0; max-width:900px}
.partnersNewMap img{width:100%; height:auto; filter: drop-shadow(0 18px 45px rgba(0,0,0,.18))}
.pin{position:absolute; width:12px; height:12px; border-radius:50%; background:#2ea86a; box-shadow:0 0 0 6px rgba(46,168,106,.18), 0 10px 24px rgba(0,0,0,.18)}
.pin::after{content:""; position:absolute; inset:-14px; border-radius:50%; border:1px solid rgba(46,168,106,.35)}
/* Approximate positions on provided map image */
.pinUSA{left:24%; top:36%}
.pinItaly{left:51%; top:34%}
.pinLogo{position:absolute; width:56px; height:auto; opacity:.98; filter: drop-shadow(0 10px 26px rgba(0,0,0,.16))}
.pinLogoUSA{left:27%; top:39%}
.pinLogoItaly{left:54%; top:37%}

.partnersNewRow{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:18px}
.partnerMini{padding:16px 16px; border-radius:18px; background:rgba(255,255,255,.62); border:1px solid rgba(16,32,23,.08)}
.partnerMini img{width:120px; height:auto; margin-bottom:10px}
.partnerMini p{margin:0; color:rgba(16,32,23,.78); line-height:1.6}

/* Homepage: make services cards more premium + fix text overflow */
.cardsPremium{gap:16px}
.cardTitleWrap h3{margin:0; font-size:18px; line-height:1.25; word-break:break-word}
.cardSub{line-height:1.45}
.miniGrid{gap:10px}
.miniItem{border:1px solid rgba(16,32,23,.10); background:rgba(255,255,255,.72); border-radius:999px; padding:9px 12px; font-weight:600; color:rgba(16,32,23,.78)}

/* Edge-to-edge dream orchard CTA (no rounding) */
.orchardBanner{border-radius:0 !important}

@media (max-width: 920px){
  .partnersNewRow{grid-template-columns:1fr}
  .langToggle{display:none} /* keep header clean; language still accessible via drawer soon */
}
@media (max-width: 520px){
  .pageHero{padding-top:92px}
  .pinLogo{width:46px}
}



/* ====== REV10: Premium responsiveness + fixes ====== */
:root{
  --wa:#25D366;
}
h1,h2,h3,p{overflow-wrap:anywhere;}
.cardHead > div{min-width:0;}
.cardTop h3, .cardHead h3{word-break:break-word;}
/* Remove boxed feel from Who we are */
.section.who{padding-top:52px;}
.whoGlass{
  max-width:none;
  margin:0;
  border-radius:0;
  border-left:0;
  border-right:0;
  box-shadow:none;
}
.whoGlassInner{
  padding:44px 0;
}
.whoGlassInner .container{padding:0 18px;}
/* Make Who section background feel premium edge-to-edge */
.section.who{
  background: radial-gradient(900px 320px at 15% 10%, rgba(29,91,68,.14), transparent 60%),
              radial-gradient(850px 280px at 90% 40%, rgba(11,61,46,.10), transparent 60%),
              linear-gradient(180deg, rgba(18,166,106,.06), rgba(255,255,255,0));
}
/* Fix "What we do" text overlap on big screens */
.cardsPremium{align-items:stretch;}
.cardPremium{min-height:auto;}
.cardSub{max-width:62ch;}
@media (min-width: 1100px){
  .cardPremium{padding:22px 22px 18px !important;}
}
/* WhatsApp floating button */
.waFloat{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:999px;
  background: rgba(37, 211, 102, 0.92);
  color:#fff;
  text-decoration:none;
  font-weight:700;
  box-shadow: 0 18px 50px rgba(0,0,0,0.18);
  border: 1px solid rgba(255,255,255,0.28);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.waFloat:hover{transform: translateY(-2px);}
.waFloat svg{width:18px;height:18px;flex:0 0 auto;}
.waFloat small{
  display:block;
  font-weight:600;
  opacity:.9;
}
@media (max-width: 520px){
  .waFloat{right:14px; bottom:14px; padding:12px; gap:8px;}
  .waFloat span{display:none;} /* icon-only on very small screens */
}


/* --- Premium full-width WHO section (no box) --- */
.section.who{
  position: relative;
  padding: 96px 0;
  background: radial-gradient(1100px 380px at 20% 10%, rgba(29,91,68,.14), transparent 60%),
              radial-gradient(900px 320px at 80% 90%, rgba(14,125,93,.10), transparent 65%);
}
.section.who::before,
.section.who::after{
  content:"";
  position:absolute; left:0; right:0;
  height: 90px;
  pointer-events:none;
  z-index: 0;
}
.section.who::before{ top:0; background: linear-gradient(to bottom, rgba(244,252,248,1), rgba(244,252,248,0)); }
.section.who::after{ bottom:0; background: linear-gradient(to top, rgba(244,252,248,1), rgba(244,252,248,0)); }

.section.who .container{ position:relative; z-index:1; }
.whoLead{ max-width: 78ch; }
.miniList{ max-width: 80ch; }
.whoFeatures{ margin-top: 28px; }

/* --- Premium WHAT WE DO layout (bigger cards, no cramped boxes) --- */
.cardsPremium{
  display:grid;
  grid-template-columns: repeat(2, minmax(320px, 1fr));
  gap: 22px;
  align-items: stretch;
}
@media (max-width: 980px){
  .cardsPremium{ grid-template-columns: 1fr; }
}
.cardPremium{
  padding: 26px 24px;
  border-radius: 26px;
}
.cardPremium h3{
  font-size: clamp(18px, 1.2vw + 14px, 22px);
  letter-spacing: -0.02em;
}
.cardSub{
  font-size: 15px;
  line-height: 1.6;
  max-width: 52ch;
}
.miniGrid{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.miniItem{
  padding: 10px 12px;
  border-radius: 999px;
  font-size: 13px;
  line-height: 1;
  white-space: nowrap;
}

/* --- Global Partners (Home) --- */
.partnersHome{
  position: relative;
  padding: 94px 0;
  background: radial-gradient(1000px 360px at 20% 15%, rgba(18,110,78,.16), transparent 60%),
              radial-gradient(900px 340px at 85% 80%, rgba(29,91,68,.12), transparent 62%),
              linear-gradient(180deg, rgba(244,252,248,0) 0%, rgba(235,249,242,.72) 55%, rgba(244,252,248,0) 100%);
}
.partnersHome .container{ position: relative; z-index:1; }
.partnersMapWrap{
  margin: 26px auto 18px;
  max-width: 980px;
  border-radius: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  backdrop-filter: none;
  padding: 0;
}
.partnersMap{
  position: relative;
  width: 100%;
  display:flex;
  justify-content:center;
  align-items:center;
}
.partnersMap img{
  width: min(920px, 100%);
  height: auto;
  display:block;
  filter: drop-shadow(0 18px 28px rgba(0,0,0,.18));
}
.pin{
  position:absolute;
  width: 14px; height: 14px;
  border-radius: 50%;
  background: rgba(255,255,255,.95);
  box-shadow: 0 0 0 6px rgba(25,170,118,.18), 0 10px 18px rgba(0,0,0,.22);
  transform: translate(-50%, -50%);
}
.pin::after{
  content:"";
  position:absolute; inset:-14px;
  border-radius: 50%;
  border: 1px solid rgba(25,170,118,.35);
  animation: pinPulse 2.2s ease-out infinite;
}
@keyframes pinPulse{
  0%{ transform: scale(.55); opacity:.85; }
  100%{ transform: scale(1.55); opacity:0; }
}
.pinLogo{
  position:absolute;
  top: -34px;
  left: 50%;
  transform: translateX(-50%);
  width: 86px;
  height: auto;
  filter: drop-shadow(0 10px 14px rgba(0,0,0,.22));
  opacity:.98;
}
@media (max-width: 560px){
  .pinLogo{ width: 64px; top: -28px; }
}
.partnerBriefs{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 18px;
  margin-top: 18px;
  align-items:start;
}
.partnerBrief{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding: 10px 0;
  background: transparent;
  border: none;
  border-radius: 0;
}
.partnerBrief img{
  width: 74px;
  height: auto;
  opacity: .98;
}
.partnerBrief p{
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}
@media (max-width: 860px){
  .partnerBriefs{ grid-template-columns: 1fr; }
}


@media (max-width: 720px){
  .mediaLogos{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}


/* ===== REV12a: Center + Partner map logo visibility ===== */
.who--transparent .container{ text-align: center; }
.whoLead{ max-width: 72ch; margin-left:auto; margin-right:auto; }
.miniList{ max-width: 820px; margin: 18px auto 0; text-align: left; }
.whoBadges{ justify-content: center; }

.partnersHome .headCenter{ text-align:center; margin: 0 auto; max-width: 70ch; }
.partnersHome .headCenter p{ margin-left:auto; margin-right:auto; }

.pinLabel{
  position:absolute;
  top: -54px;
  left: 50%;
  transform: translateX(-50%);
  padding: 10px 12px;
  border-radius: 18px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(185,226,210,.65);
  backdrop-filter: blur(12px);
  box-shadow: 0 14px 26px rgba(0,0,0,.18);
}
.pinLogo{
  position: static;
  width: 104px;
  height: auto;
  display:block;
  filter: none;
  opacity: 1;
}

.partnerInlineSimple{
  margin-top: 22px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 18px 34px;
  align-items: start;
  text-align: left;
}
.partnerLine{
  display:flex;
  gap: 14px;
  align-items:flex-start;
}
.partnerLogoSm{
  width: 44px;
  height: auto;
  flex: 0 0 auto;
  opacity: .95;
}
.partnerInlineSimple p{
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
  font-size: 15px;
}

@media (max-width: 860px){
  .partnerInlineSimple{ grid-template-columns: 1fr; }
}
@media (max-width: 560px){
  .pinLabel{ top: -46px; padding: 8px 10px; border-radius: 16px; }
  .pinLogo{ width: 86px; }
  .partnerLogoSm{ width: 40px; }
}

/* ==============================
   WHO PRIME (REV17) — Apple/Tesla minimal
   ============================== */
.whoPrime{ position: relative; padding: 78px 0; }
.whoPrime .container{ text-align: center; }
.whoPrime .whoCenter{ max-width: 980px; margin: 0 auto; }
.whoPrime .whoKicker{
  display:inline-flex; align-items:center; gap:10px;
  padding: 8px 14px; border-radius: 999px;
  background: rgba(11,61,46,0.10);
  border: 1px solid rgba(11,61,46,0.12);
  color: var(--text);
  font-weight: 600; letter-spacing: .02em;
  margin-bottom: 14px;
}
.whoPrime .whoTitle{ margin: 0 0 10px; font-size: clamp(28px, 3.2vw, 44px); letter-spacing: -0.03em; }
.whoPrime .whoLead{ margin: 0 auto 18px; max-width: 78ch; color: var(--muted); font-size: clamp(1.02rem, 1.3vw, 1.12rem); line-height: 1.8; }

.whoPrime .whoChips{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin: 16px 0 26px; }
.whoPrime .whoChips .chip{
  /* FIX: .chip is used elsewhere for absolute-positioned hero chips.
     In "Who we are" these must be normal inline chips. */
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.62);
  border:1px solid rgba(11,61,46,0.10);
  box-shadow: 0 10px 28px rgba(0,0,0,0.06);
}

.whoPrime .whoGrid{ display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; margin-top: 10px; }
.whoPrime .whoPillar{
  display:flex; align-items:flex-start; gap: 12px;
  padding: 18px 16px; border-radius: 22px;
  background: rgba(255,255,255,0.58);
  border: 1px solid rgba(11,61,46,0.10);
  box-shadow: 0 16px 44px rgba(0,0,0,0.07);
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  text-align: left;
}
.whoPrime .whoIcon{
  width: 44px; height: 44px; border-radius: 16px;
  display:grid; place-items:center;
  background: rgba(11,61,46,0.14);
  border: 1px solid rgba(11,61,46,0.14);
  flex: 0 0 auto;
}
.whoPrime .whoIcon svg{ width: 22px; height: 22px; }
.whoPrime .whoPillarTitle{ font-weight: 700; letter-spacing: -0.01em; margin-bottom: 4px; }
.whoPrime .whoPillarDesc{ color: var(--muted); line-height: 1.6; font-size: .98rem; }

.whoPrime .whoStats{
  margin-top: 26px;
  display:grid; grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}
.whoPrime .stat{
  padding: 16px 14px; border-radius: 20px;
  background: rgba(11,61,46,0.06);
  border: 1px solid rgba(11,61,46,0.10);
}
.whoPrime .statNum{ font-size: clamp(20px, 2.2vw, 30px); font-weight: 800; letter-spacing: -0.03em; color: var(--text); }
.whoPrime .statLabel{ margin-top: 4px; color: var(--muted); font-size: .98rem; }

.whoPrime .whoFadeTop,
.whoPrime .whoFadeBottom{ position:absolute; left:0; right:0; height: 80px; pointer-events:none; }
.whoPrime .whoFadeTop{ top:0; background: linear-gradient(to bottom, rgba(0,0,0,0.0), rgba(244,252,248,0.0)); }
.whoPrime .whoFadeBottom{ bottom:0; background: linear-gradient(to top, rgba(0,0,0,0.0), rgba(244,252,248,0.0)); }

/* Ambient accent behind Who section */
.whoPrime::before{
  content:"";
  position:absolute; inset: -60px 0 -60px 0;
  background:
    radial-gradient(700px 280px at 50% 20%, rgba(22,163,74,0.14), rgba(22,163,74,0.0) 60%),
    radial-gradient(540px 260px at 15% 65%, rgba(11,61,46,0.14), rgba(11,61,46,0.0) 60%),
    radial-gradient(540px 260px at 85% 65%, rgba(34,197,94,0.10), rgba(34,197,94,0.0) 60%);
  opacity: .9;
  pointer-events:none;
}

@media (max-width: 920px){
  .whoPrime{ padding: 62px 0; }
  .whoPrime .whoGrid{ grid-template-columns: 1fr; }
  .whoPrime .whoPillar{ padding: 16px 14px; }
  .whoPrime .whoStats{ grid-template-columns: 1fr; }
  .whoPrime .stat{ text-align:center; }
}

/* --- Bibaum feature (homepage) --- */
.bibaumFeature{padding:92px 0; position:relative; color: var(--ink, #0b1a13);} 
.bibaumWrap{display:grid; grid-template-columns: 1.1fr .9fr; gap:40px; align-items:center;}
.bibaumCopy .kicker{display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border-radius:999px; background:rgba(11,61,46,.06); border:1px solid rgba(11,61,46,.14); color:rgba(11,61,46,.92); font-weight:700; letter-spacing:.2px;}
.bibaumTitle{font-size: clamp(28px, 3.3vw, 44px); line-height:1.08; margin:14px 0 14px;}
.bibaumLead{color: rgba(17, 24, 39, .78); font-size: clamp(15px, 1.25vw, 18px); line-height:1.7; max-width: 60ch;}
.bibaumPoints{margin-top:18px; display:grid; gap:10px;}
.bibaumPoints .pt{padding:12px 14px; border-radius:14px; background:rgba(255,255,255,.62); border:1px solid rgba(11,61,46,.10); color: rgba(17, 24, 39, .86);}
.bibaumCopy .pillBtn{display:inline-flex; margin-top:18px;}

.bibaumMedia{position:relative; min-height: 420px;}
.bibaumImg{position:absolute; inset:auto; border-radius: 22px; overflow:hidden; border:1px solid rgba(255,255,255,.12); box-shadow: 0 24px 80px rgba(0,0,0,.45);}
.bibaumImg img{width:100%; height:100%; object-fit:cover; display:block; transform:scale(1.03);} 
.bibaumImg.a{top:0; right:0; width: 86%; height: 62%;}
.bibaumImg.b{bottom:0; left:0; width: 64%; height: 52%;}
.bibaumImg::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.48));}

@media (max-width: 980px){
  .bibaumWrap{grid-template-columns:1fr;}
  .bibaumMedia{min-height: 360px;}
  .bibaumImg.a{width:100%; height:58%; left:0; right:0;}
  .bibaumImg.b{width:78%; height:52%;}
}
@media (max-width: 520px){
  .bibaumFeature{padding:72px 0;}
  .bibaumMedia{min-height: 320px;}
  .bibaumImg.b{width:88%;}
  .bibaumTitle{line-height:1.12;}
  .bibaumLead{max-width: 100%;}
  .bibaumPoints .pt{font-size: 14px;}
}

/* Mobile text safety (prevents overflow on small screens) */
@media (max-width: 520px){
  h1,h2,h3,p,a,span,li{overflow-wrap:anywhere; word-break:normal;}
  .pillBtn{white-space:normal; text-align:center;}
  .chipRow{flex-wrap:wrap;}
  .miniGrid{grid-template-columns: 1fr;}
}


/* Who partners mini row */

.whoPartnersMini{
  margin-top: 14px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap: 18px;
  flex-wrap: wrap;
  opacity: .92;
}
.whoPartnerLogo{
  height: 26px;
  width: auto;
  object-fit: contain;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.10));
}
@media (max-width: 520px){
  .whoPartnerLogo{ height: 22px; }
}



/* ===== PREMIUM AGRI SERVICES GRID (Edge-to-edge “What we do”) ===== */
.servicesVisual{width:100%;margin:0;padding:0;background:var(--bg, #f6faf7)}
.servicesGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
.serviceTile{position:relative;overflow:hidden;display:block;min-height:420px}
.serviceTile img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform .7s ease}
.serviceTile::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.68),rgba(0,0,0,.30),rgba(0,0,0,.06));transition:opacity .4s ease}
.serviceOverlay{position:absolute;left:32px;right:32px;bottom:28px;z-index:2;color:#fff;display:flex;flex-direction:column;gap:14px;max-width:560px}
.serviceOverlay h3{margin:0;font-size:28px;line-height:1.15;font-weight:650;letter-spacing:.2px;text-shadow:0 10px 30px rgba(0,0,0,.35)}
.serviceBtn{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:10px 22px;border:1.4px solid rgba(255,255,255,.9);border-radius:999px;font-size:14px;font-weight:560;letter-spacing:.2px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 10px 30px rgba(0,0,0,.22);transition:transform .25s ease, background .25s ease, border-color .25s ease}
.serviceTile:hover img{transform:scale(1.12)}
.serviceTile:hover .serviceBtn{transform:translateY(-2px);background:rgba(255,255,255,.14);border-color:rgba(255,255,255,1)}
.serviceTile:focus-visible{outline:3px solid rgba(64, 190, 120, .8);outline-offset:-3px}

/* Responsive */
@media (max-width: 980px){
  .serviceTile{min-height:340px}
  .serviceOverlay{left:22px;right:22px;bottom:22px}
  .serviceOverlay h3{font-size:24px}
}
@media (max-width: 640px){
  .servicesGrid{grid-template-columns:1fr}
  .serviceTile{min-height:300px}
  .serviceOverlay h3{font-size:22px}
}


/* ================================
   PREMIUM UPGRADES — REV24
   ================================ */

/* WHO WE ARE — full-bleed orchard background + glass content */
.whoPrime--bg{position:relative; overflow:hidden;}
.whoPrime--bg::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(246,250,247,0.92) 0%, rgba(246,250,247,0.70) 35%, rgba(246,250,247,0.92) 100%),
    url('../img/harvesting-apple-fruit-green-orchard.jpg') center/cover no-repeat;
  filter:saturate(105%) contrast(102%);
  transform:scale(1.03);
  z-index:0;
}
.whoPrime--bg .container{position:relative; z-index:1;}
.whoPrime--bg .whoCenter{
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(255,255,255,0.55);
  box-shadow: 0 18px 60px rgba(0,0,0,0.12);
  backdrop-filter: blur(14px) saturate(150%);
  -webkit-backdrop-filter: blur(14px) saturate(150%);
  border-radius: 28px;
  padding: clamp(22px, 3vw, 38px);
}

/* SERVICES — heading with 4 mini photos */
.servicesHeading{
  padding: 44px 18px 22px;
  text-align:center;
}
.servicesMini{
  display:flex;
  gap:10px;
  justify-content:center;
  align-items:center;
  margin:0 auto 16px;
}
.servicesMini img{
  width:44px; height:44px;
  border-radius: 999px;
  object-fit: cover;
  border:1px solid rgba(255,255,255,0.75);
  box-shadow: 0 10px 26px rgba(0,0,0,0.18);
}
.servicesTitle{
  font-size: clamp(26px, 3vw, 40px);
  letter-spacing: -0.02em;
  margin:0 0 8px;
}
.servicesSub{
  max-width: 860px;
  margin: 0 auto;
  opacity: .88;
}

/* Keep edge-to-edge look */
.servicesVisual{padding-top:0;}

/* SERVICES tiles — more premium hover */
.serviceOverlay .serviceBtn{
  background: rgba(255,255,255,0.10);
}
.serviceTile:hover img{transform: scale(1.08);} 
.serviceTile:hover .serviceBtn{background: rgba(255,255,255,0.22);}

/* BIBAUM FEATURE — richer premium panel */
.bibaumFeature{
  position: relative;
  overflow: hidden;
}
.bibaumFeature::before{
  content:"";
  position:absolute; inset:-2px;
  background:
    radial-gradient(900px 420px at 20% 20%, rgba(46,125,70,0.18), transparent 55%),
    radial-gradient(800px 380px at 80% 40%, rgba(7,64,45,0.12), transparent 60%),
    linear-gradient(180deg, rgba(246,250,247,1) 0%, rgba(241,248,244,1) 100%);
  z-index:0;
}
.bibaumFeature .container{position:relative; z-index:1;}
.bibaumWrap{
  background: rgba(255,255,255,0.66);
  border: 1px solid rgba(255,255,255,0.62);
  border-radius: 30px;
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  box-shadow: 0 24px 80px rgba(0,0,0,0.14);
}
.bibaumMedia .bibaumImg img{border-radius: 22px;}
.bibaumCopy .pillBtn{
  box-shadow: 0 16px 40px rgba(0,0,0,0.18);
}

/* Mobile refinements */
@media (max-width: 720px){
  .serviceTile{height: 320px;}
  .servicesMini img{width:38px; height:38px;}
  .whoPrime--bg .whoCenter{border-radius:22px;}
}

/* ================================
   PREMIUM UPGRADES — REV25
   ================================ */

/* WHO WE ARE — text directly on background (no card), more blur + glassy feel */
.whoPrime--bg::before{
  filter: blur(6px) saturate(108%) contrast(102%);
  transform: scale(1.10);
}
.whoPrime--bg::after{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(246,250,247,0.84) 0%, rgba(246,250,247,0.48) 45%, rgba(246,250,247,0.86) 100%),
    radial-gradient(800px 420px at 20% 30%, rgba(46,125,70,0.10), transparent 55%),
    radial-gradient(900px 480px at 80% 40%, rgba(7,64,45,0.08), transparent 60%);
  z-index:0;
  pointer-events:none;
}
.whoPrime--bg .container{ position: relative; z-index: 1; }
.whoPrime--bg .whoCenter{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
.whoPrime--bg .whoTitle,
.whoPrime--bg .whoLead,
.whoPrime--bg .whoKicker,
.whoPrime--bg .whoPillarTitle,
.whoPrime--bg .statNum{
  text-shadow: 0 10px 26px rgba(0,0,0,0.14);
}
.whoPrime--bg .whoLead,
.whoPrime--bg .whoPillarDesc,
.whoPrime--bg .statLabel{
  text-shadow: 0 10px 26px rgba(0,0,0,0.10);
}

/* BIBAUM FEATURE — remove rounded panel; clean text on white */
.bibaumFeature::before{
  background: linear-gradient(180deg, #ffffff 0%, #f6faf7 100%) !important;
}
.bibaumWrap{
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.bibaumCopy{ padding: 0 !important; }
.bibaumMedia .bibaumImg img{
  border-radius: 18px !important;
  box-shadow: 0 18px 60px rgba(0,0,0,0.12);
}

/* BUILD YOUR DREAM ORCHARD — true edge-to-edge, taller (downwards) */
.orchardBanner{ padding: 0 !important; margin: 0 !important; }
.orchardBanner .bannerWrap{ min-height: 90vh; }
.orchardBanner .bannerWrap img{
  width: 100%;
  height: 100%;
  min-height: 90vh;
  object-fit: cover;
  object-position: center;
  display:block;
}

/* BIBAUM PAGE — remove rounded glass box for "Why Bibaum" */
.whoGlass{
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.whoGlassInner{ padding: 0 !important; }


/* ================================
   PREMIUM UPGRADES — REV26 (requested)
   ================================ */

/* WHO WE ARE — new background (no fade, only blur) */
.whoPrime--bg::before{
  background: url('../img/who-we-are-bg.jpg') center/cover no-repeat !important;
  filter: blur(12px) saturate(112%) contrast(105%) !important;
  transform: scale(1.18) !important;
}
.whoPrime--bg::after{
  /* subtle glass overlay for readability without "fading" the image */
  background:
    linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.22) 45%, rgba(0,0,0,0.40) 100%),
    radial-gradient(900px 520px at 20% 30%, rgba(46,125,70,0.18), transparent 55%),
    radial-gradient(900px 520px at 80% 40%, rgba(7,64,45,0.14), transparent 60%) !important;
}
.whoPrime--bg .whoKicker,
.whoPrime--bg .whoTitle,
.whoPrime--bg .whoLead,
.whoPrime--bg .whoPillarTitle,
.whoPrime--bg .whoPillarDesc,
.whoPrime--bg .statNum,
.whoPrime--bg .statLabel{
  color: rgba(255,255,255,0.96) !important;
}
.whoPrime--bg .whoLead,
.whoPrime--bg .whoPillarDesc,
.whoPrime--bg .statLabel{
  color: rgba(255,255,255,0.82) !important;
}
.whoPrime--bg .whoPillar{
  background: rgba(255,255,255,0.10) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
}
.whoPrime--bg .whoChips .chip{
  background: rgba(255,255,255,0.12) !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  color: rgba(255,255,255,0.92) !important;
}

/* WHAT WE DO — soften tile borders (less sharp seams) */
.servicesGrid{
  background: rgba(255,255,255,0.08);
}
.serviceTile{
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.12);
}
@media (hover:hover){
  .serviceTile:hover{
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,0.18),
      0 22px 70px rgba(0,0,0,0.14);
  }
}

/* BIBAUM HOME FEATURE — full-bleed tile like "What we do" */
.bibaumFeature{
  padding: 0 !important;
}
.bibaumTile{
  position: relative;
  display:block;
  min-height: 560px;
  overflow:hidden;
  border-radius: 0;
}
.bibaumTile img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  transform: scale(1.08);
  filter: blur(3px) brightness(0.92) contrast(1.05);
}
.bibaumTile::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(to top, rgba(0,0,0,0.72), rgba(0,0,0,0.28), transparent);
}
.bibaumTileInner{
  position:relative;
  z-index:2;
  max-width: 980px;
  margin: 0 auto;
  padding: clamp(44px, 6vw, 84px) 22px;
  color:#fff;
}
.bibaumTileInner .kicker{ color: rgba(255,255,255,0.86) !important; }
.bibaumTileInner .bibaumTitle{ color:#fff !important; }
.bibaumTileInner .bibaumLead{ color: rgba(255,255,255,0.82) !important; max-width: 75ch; }
.bibaumTileInner .bibaumPoints .pt{ color: rgba(255,255,255,0.88) !important; }
.bibaumTileInner .pillBtn{
  display:inline-flex;
  margin-top: 18px;
  border-color: rgba(255,255,255,0.72) !important;
  color:#fff !important;
  background: rgba(255,255,255,0.10) !important;
}
.bibaumTileInner .pillBtn:hover{
  background: rgba(255,255,255,0.20) !important;
}

/* Dream orchard banner — make sure it translates in Urdu too */
.orchardBanner .bannerTitle{ text-shadow: 0 16px 48px rgba(0,0,0,0.35); }


/* soften mini-photo borders */
.servicesMini img{
  border: 1px solid rgba(255,255,255,0.40) !important;
  box-shadow: 0 10px 26px rgba(0,0,0,0.14) !important;
}

/* ================================
   PREMIUM UPGRADES — WHO (APPLE SPLIT)
   ================================ */

/* WHO WE ARE — apples image (crisp) + premium readability overlay */
.whoPrime--apples{ position: relative; overflow: hidden; }
.whoPrime--apples::before{
  content:"";
  position:absolute; inset:0;
  background: url('../img/top-view-fresh-red-apples-dark-table-with-free-place.jpg') left center/cover no-repeat;
  filter: saturate(106%) contrast(102%);
  transform: scale(1.02);
  z-index:0;
}
/* Subtle readability overlay (no blur, keeps image natural) */
.whoPrime--apples::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(to left, rgba(246,250,247,0.86) 0%, rgba(246,250,247,0.70) 42%, rgba(246,250,247,0.12) 78%, rgba(246,250,247,0.00) 100%);
  z-index:1;
  pointer-events:none;
}
/* Old split shade element kept in HTML — hide it */
.whoPrime--apples .whoSplitShade{ display:none !important; }

.whoPrime--apples .container{
  position: relative;
  z-index: 2;
  max-width: 1180px;
  text-align: left;
}

.whoPrime--apples .whoCenter{
  max-width: 720px;
  margin: 0 0 0 auto;
  text-align: left;
}
.whoPrime--apples .whoChips{ justify-content: flex-start; }
.whoPrime--apples .whoGrid{ margin-left: auto; }


/* Typography set for dark-table image (text sits in the free space) */
.whoPrime--apples .whoLead{ max-width: 70ch; }

/* Softer surfaces (readable, premium) */
.whoPrime--apples .whoPillar,
.whoPrime--apples .whoStats .stat{
  background: rgba(255,255,255,0.68);
  border: 1px solid rgba(255,255,255,0.55);
  box-shadow: 0 18px 60px rgba(0,0,0,0.08);
}

@media (max-width: 900px){
  .whoPrime--apples::after{
    background: linear-gradient(180deg,
      rgba(246,250,247,0.82) 0%,
      rgba(246,250,247,0.62) 52%,
      rgba(246,250,247,0.40) 100%);
  }
}


/* ===== Rev29 Premium tweaks ===== */

/* What we do heading: centered text + edge-to-edge mini circles + subtle illustration bg */
.servicesHeading{
  position: relative;
  text-align: center;
  padding-top: 56px;
  padding-bottom: 22px;
  overflow: hidden;
}
.servicesHeadingBg{
  position:absolute;
  inset: 0;
  background: url('../img/whatwe-illustration.jpg') center/cover no-repeat;
  opacity: .14;
  filter: saturate(1.05) blur(0.8px);
  mix-blend-mode: multiply;
  pointer-events:none;
  transform: scale(1.02);
}
.servicesHeading > *{
  position: relative;
  z-index: 1;
}

/* Spread mini round pics from edge to edge */
.servicesMini{
  width: min(1100px, 92vw);
  margin: 0 auto 18px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
}
.servicesMini img{
  width: 70px;
  height: 70px;
  border-radius: 999px;
  object-fit: cover;
  box-shadow: 0 10px 24px rgba(0,0,0,.10);
  border: 1px solid rgba(255,255,255,.55);
}

/* Slightly soften tile borders/seams */
.servicesGrid{
  gap: 2px;
  background: rgba(255,255,255,.65);
}
.serviceTile{
  outline: 0;
}
.serviceTile img{
  transform: scale(1.001);
}
.serviceTile::after{
  background: linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,.25), transparent);
}

/* Bibaum hero: centered content, square edges, readable overlay */
.bibaumHero{
  position: relative;
  border-radius: 0;         /* not rounded */
  overflow: hidden;
  min-height: 520px;
  display:flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.bibaumHero > img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit: cover;
  filter: blur(2.4px) saturate(1.05) brightness(0.92); /* slightly blurred for readability */
  transform: scale(1.04);
}
.bibaumShade{
  position:absolute;
  inset:0;
  background: linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,.36), rgba(0,0,0,.10));
}
.bibaumContent{
  position: relative;
  z-index: 1;
  padding: clamp(46px, 6vw, 86px) 22px;
  max-width: 980px;
  color:#fff;
  margin: 0 auto;
}
.bibaumContent .bibaumTitle{
  margin:0 0 12px;
}
.bibaumAnim{
  font-size: 18px;
  opacity: .92;
  letter-spacing: .3px;
  margin-bottom: 18px;
  display:inline-block;
  position: relative;
  padding-bottom: 8px;
  animation: bibaumPulse 2.8s ease-in-out infinite;
}
@keyframes bibaumPulse{
  0%{ transform: translateY(0); opacity:.85; }
  50%{ transform: translateY(-2px); opacity:1; }
  100%{ transform: translateY(0); opacity:.85; }
}


/* Orchard banner flush to footer */
.orchardBanner{
  margin: 0;
}
.footerFull{
  margin-top: 0;
}
