:root{
  --t:#0d5c52;--td:#062420;--tm:#157a6d;--tl:#1fa898;--tp:#e0f2ef;
  --gold:#c8973a;--goldd:#a8762a;
  --white:#fff;--dark:#061a17;--muted:#5f7874;--border:#c0d8d4;
  --shadow-sm:0 2px 14px rgba(6,36,32,.07);
  --shadow-md:0 8px 36px rgba(6,36,32,.11);
  --shadow-lg:0 22px 64px rgba(6,36,32,.15);
  --grad:linear-gradient(135deg,#041e1b 0%,#0a4840 50%,#16756a 100%);
  /* per-tab accent colours */
  --c0:#d97706; --c1:#059669; --c2:#ea6c0a; --c3:#9333ea; --c4:#3b82f6; --c5:#7c3aed;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Nunito',sans-serif;background:#fff;color:var(--dark);overflow-x:clip;line-height:1.6;}
.cprice,.cprice *{font-family:'Times New Roman',Times,serif !important;font-size:26px;font-weight:700;color:var(--t);margin-top:auto;padding-top:6px;}
.cprice span{font-family:'Nunito',sans-serif !important;font-size:12px;color:var(--muted);font-weight:500;}

/* ── WA FLOAT ── */
.wa-float{position:fixed;bottom:28px;right:26px;z-index:9999;width:60px;height:60px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 28px rgba(37,211,102,.5);text-decoration:none;animation:waPop 3s ease infinite;transition:transform .2s;}
.wa-float:hover{transform:scale(1.12);}
@keyframes waPop{0%,100%{box-shadow:0 6px 28px rgba(37,211,102,.5),0 0 0 0 rgba(37,211,102,.2);}60%{box-shadow:0 6px 28px rgba(37,211,102,.5),0 0 0 14px rgba(37,211,102,0);}}

/* ── HEADER ── */
header{background:var(--grad);position:relative;overflow:hidden;}
.hdr-geo{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.hdr-inner{position:relative;z-index:3;max-width:1180px;margin:0 auto;padding:38px 52px 42px;display:flex;align-items:center;gap:36px;}
.logo-ring{position:relative;flex-shrink:0;width:152px;height:152px;}
.logo-ring::before{content:'';position:absolute;inset:-7px;border-radius:50%;border:2px solid rgba(200,151,58,.45);animation:spin 10s linear infinite;}
.logo-ring::after{content:'';position:absolute;inset:-17px;border-radius:50%;border:1px dashed rgba(200,151,58,.18);animation:spin 20s linear infinite reverse;}
.logo-glow{position:absolute;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(13,92,82,.5) 0%,rgba(200,151,58,.1) 50%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);z-index:0;animation:glowPulse 4s ease-in-out infinite;}
@keyframes glowPulse{0%,100%{opacity:.65;transform:translate(-50%,-50%) scale(1);}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1);}}
@keyframes spin{to{transform:rotate(360deg);}}
.logo-img{width:150px;height:150px;border-radius:50%;object-fit:contain;background:#fff;padding:9px;box-shadow:0 0 0 4px rgba(200,151,58,.2),0 20px 56px rgba(0,0,0,.42);position:relative;z-index:1;display:block;}
.hdr-text{flex:1;}
.eyebrow{font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:rgba(200,151,58,.7);margin-bottom:9px;display:flex;align-items:center;gap:10px;}
.eyebrow::after{content:'';max-width:60px;height:1px;background:linear-gradient(to right,rgba(200,151,58,.35),transparent);flex:1;}
.brand-name{font-family:'Audiowide',sans-serif;font-size:clamp(22px,3.6vw,52px);color:#fff;line-height:1.05;white-space:nowrap;}
.brand-tagline{font-family:'Space Grotesk',sans-serif;font-size:clamp(9px,1.3vw,15px);color:var(--gold);letter-spacing:3px;margin-top:7px;font-weight:600;text-transform:uppercase;}
.hdr-desc{font-family:'Nunito',sans-serif;margin-top:13px;color:rgba(255,255,255,.48);font-size:13.5px;line-height:1.75;max-width:500px;}
.hdr-badges{margin-top:17px;display:flex;flex-wrap:wrap;gap:8px;}
.hdr-badge{font-family:'Space Grotesk',sans-serif;font-size:10.5px;font-weight:600;padding:5px 14px;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.7);backdrop-filter:blur(6px);}
.hdr-badge.gold{background:rgba(200,151,58,.12);border-color:rgba(200,151,58,.28);color:var(--gold);}

/* ══ TAB BAR — illuminated colour glow per tab ══ */
.main-nav{
  background:rgba(8,18,16,.96);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(255,255,255,.04);
  position:sticky !important;top:0 !important;z-index:1000 !important;
  transition:background .3s;
}
/* Bottom ambient line — changes colour when tab switches */
.main-nav::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:1.5px;
  background:var(--nav-line,rgba(13,148,136,.3));
  box-shadow:0 0 10px 1px var(--nav-line,rgba(13,148,136,.2));
  transition:background .45s,box-shadow .45s;
  opacity:.75;
}
.tab-row{max-width:1180px;margin:0 auto;padding:0 52px;display:flex;overflow-x:hidden;position:relative;z-index:1;}
.tab-row::-webkit-scrollbar{height:0;}
.main-tab{margin:0 14px;
  height:44px;min-height:44px;
  font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:600;
  color:rgba(255,255,255,.60);
  border:none;background:none;
  border-bottom:2px solid transparent;margin-bottom:-1px;
  cursor:pointer;white-space:nowrap;
  transition:color .25s,border-color .25s,background .25s;
  display:flex;align-items:center;gap:3px;padding:0 4px;flex:none;justify-content:center;
  position:relative;border-radius:0;
}
/* Soft illuminated background on active tab */
.main-tab.active{
  border-radius:8px 8px 0 0;
}
/* per-tab colours — active text + icon + underline + background glow */
.main-tab:nth-child(1).active{
  color:rgba(217,119,6,.95);border-bottom-color:rgba(217,119,6,.6);
  background:rgba(217,119,6,.08);
  box-shadow:0 -1px 0 0 rgba(217,119,6,.15) inset;
}
.main-tab:nth-child(2).active{
  color:rgba(5,150,105,.98);border-bottom-color:rgba(5,150,105,.6);
  background:rgba(5,150,105,.08);
  box-shadow:0 -1px 0 0 rgba(5,150,105,.15) inset;
}
.main-tab:nth-child(3).active{
  color:rgba(234,108,10,.98);border-bottom-color:rgba(234,108,10,.6);
  background:rgba(234,108,10,.08);
  box-shadow:0 -1px 0 0 rgba(234,108,10,.15) inset;
}
.main-tab:nth-child(4).active{
  color:rgba(147,51,234,.98);border-bottom-color:rgba(147,51,234,.55);
  background:rgba(147,51,234,.08);
  box-shadow:0 -1px 0 0 rgba(147,51,234,.15) inset;
}
.main-tab:nth-child(5).active{
  color:rgba(59,130,246,.98);border-bottom-color:rgba(59,130,246,.55);
  background:rgba(59,130,246,.08);
  box-shadow:0 -1px 0 0 rgba(59,130,246,.15) inset;
}
.main-tab:nth-child(6).active{
  color:rgba(124,58,237,.98);border-bottom-color:rgba(124,58,237,.55);
  background:rgba(124,58,237,.08);
  box-shadow:0 -1px 0 0 rgba(124,58,237,.15) inset;
}
.main-tab:hover:not(.active){color:rgba(255,255,255,.62);background:rgba(255,255,255,.04);}

/* tab icon chip */
.main-tab .ti{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;transition:all .25s;flex-shrink:0;background:rgba(255,255,255,.05);}
.main-tab .ti svg{width:15px;height:15px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke:rgba(255,255,255,.28);transition:stroke .25s,background .25s;}
.main-tab:nth-child(1).active .ti{background:rgba(217,119,6,.18);} .main-tab:nth-child(1).active .ti svg{stroke:rgba(217,119,6,.95);}
.main-tab:nth-child(2).active .ti{background:rgba(5,150,105,.18);} .main-tab:nth-child(2).active .ti svg{stroke:rgba(5,150,105,.98);}
.main-tab:nth-child(3).active .ti{background:rgba(234,108,10,.18);} .main-tab:nth-child(3).active .ti svg{stroke:rgba(234,108,10,.98);}
.main-tab:nth-child(4).active .ti{background:rgba(147,51,234,.18);} .main-tab:nth-child(4).active .ti svg{stroke:rgba(147,51,234,.98);}
.main-tab:nth-child(5).active .ti{background:rgba(59,130,246,.18);} .main-tab:nth-child(5).active .ti svg{stroke:rgba(59,130,246,.98);}
.main-tab:nth-child(6).active .ti{background:rgba(124,58,237,.18);} .main-tab:nth-child(6).active .ti svg{stroke:rgba(124,58,237,.98);}

/* SUB NAV */
.sub-nav{background:#f8fffe;border-bottom:1px solid var(--tp);display:none;}
.sub-nav.visible{display:block;}
.sub-row{max-width:1180px;margin:0 auto;padding:10px 52px;display:flex;gap:8px;overflow-x:auto;}
.sub-row::-webkit-scrollbar{height:0;}
.sub-tab{font-family:'Space Grotesk',sans-serif;padding:6px 16px;font-size:12px;font-weight:600;color:var(--t);border:1.5px solid var(--border);background:#fff;border-radius:30px;cursor:pointer;white-space:nowrap;transition:all .2s;}
.sub-tab.active{background:var(--t);color:#fff;border-color:var(--t);box-shadow:0 4px 12px rgba(13,92,82,.22);}
.sub-tab:hover:not(.active){background:var(--tp);border-color:var(--tl);}

.view{display:none;}.view.active{display:block;}
main{max-width:1180px;margin:0 auto;padding:44px 52px 0;}

/* ══ HOME HERO ══ */
.home-hero{position:relative;border-radius:28px;overflow:hidden;min-height:430px;display:flex;align-items:center;margin-bottom:44px;background:var(--grad);}
.hero-dot-bg{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.orb{position:absolute;border-radius:50%;pointer-events:none;}
.orb1{width:480px;height:480px;background:radial-gradient(circle,rgba(21,117,106,.4),transparent 70%);top:-120px;right:5%;}
.orb2{width:270px;height:270px;background:radial-gradient(circle,rgba(200,151,58,.15),transparent 70%);bottom:-60px;left:35%;}

/* ══ HERO MOSAIC — vertical slanted, tap/click expands wider ══ */
.hero-mosaic{
  position:absolute;right:0;top:0;bottom:0;width:46%;
  display:flex;flex-direction:row;align-items:stretch;
  gap:5px;padding:5px;border-radius:0 28px 28px 0;overflow:hidden;
}
.mosaic-item{
  flex:1;position:relative;overflow:hidden;cursor:pointer;
  border-radius:10px;
  transform:skewX(-3deg);
  transform-origin:center;
  transition:flex .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1),box-shadow .5s;
  min-width:0;
  -webkit-tap-highlight-color:transparent;
}
.mosaic-item img{
  width:106%;height:100%;object-fit:cover;
  transform:skewX(3deg) scale(1.08);
  transform-origin:center;
  transition:transform .6s ease,filter .5s,opacity .45s;
  filter:brightness(.5) saturate(.75);
  opacity:.8;margin-left:-3%;
}
/* dim siblings on any hover/active */
.hero-mosaic:hover .mosaic-item img,
.hero-mosaic.has-active .mosaic-item img{filter:brightness(.28) saturate(.4);opacity:.45;}
/* hover (desktop) */
.hero-mosaic .mosaic-item:hover{
  flex:4.2;
  transform:skewX(-1deg) scale(1.015);
  box-shadow:-5px 0 32px rgba(0,0,0,.5),5px 0 32px rgba(0,0,0,.5);z-index:5;
}
/* clicked/active (mobile & desktop) */
.hero-mosaic .mosaic-item.m-active{
  flex:4.2;
  transform:skewX(-1deg) scale(1.015);
  box-shadow:-5px 0 32px rgba(0,0,0,.5),5px 0 32px rgba(0,0,0,.5);z-index:5;
}
.hero-mosaic .mosaic-item:hover img,
.hero-mosaic .mosaic-item.m-active img{
  filter:brightness(.72) saturate(1.15);opacity:1;
  transform:skewX(1deg) scale(1.06);
}
/* glare sweep */
.mosaic-item::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.13) 50%,transparent 70%);transform:translateX(-140%);transition:transform .7s ease;pointer-events:none;border-radius:10px;}
.mosaic-item:hover::after,.mosaic-item.m-active::after{transform:translateX(140%);}
/* gold border */
.mosaic-item::before{content:'';position:absolute;inset:0;z-index:4;border-radius:10px;border:1.5px solid transparent;transition:border-color .35s,box-shadow .35s;pointer-events:none;}
.mosaic-item:hover::before,.mosaic-item.m-active::before{border-color:rgba(200,151,58,.4);box-shadow:inset 0 0 18px rgba(200,151,58,.1),0 0 18px rgba(200,151,58,.15);}
/* dots + label */
.mosaic-item .m-dots{position:absolute;top:14px;right:14px;z-index:6;display:flex;gap:8px;opacity:0;transform:translateY(-6px);transition:all .35s;pointer-events:none;}
.mosaic-item:hover .m-dots,.mosaic-item.m-active .m-dots{opacity:1;transform:translateY(0);}
.m-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);}
.m-dot:nth-child(2){opacity:.5;}.m-dot:nth-child(3){opacity:.3;}
.mosaic-label{position:absolute;bottom:14px;left:14px;z-index:7;font-family:'Space Grotesk',sans-serif;font-size:11.5px;font-weight:700;color:#fff;background:rgba(0,0,0,.4);backdrop-filter:blur(6px);padding:5px 13px;border-radius:20px;border:1px solid rgba(255,255,255,.1);opacity:0;transform:translateY(8px);transition:all .35s;pointer-events:none;}
.mosaic-item:hover .mosaic-label,.mosaic-item.m-active .mosaic-label{opacity:1;transform:translateY(0);}

.hero-content{position:relative;z-index:3;padding:52px;max-width:57%;}
.hero-logo-wrap{position:relative;display:inline-block;margin-bottom:16px;}
.hero-logo-glow{position:absolute;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(13,92,82,.4) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1;animation:glowPulse 4s ease-in-out infinite;}
.hero-logo{width:88px;height:88px;border-radius:50%;object-fit:contain;background:#fff;padding:7px;box-shadow:0 0 0 3px rgba(200,151,58,.25),0 16px 48px rgba(0,0,0,.4);display:block;}
.hero-kicker{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(200,151,58,.85);margin-bottom:10px;}
.hero-h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(24px,3.5vw,48px);color:#fff;font-weight:700;line-height:1.12;}
.hero-h1 span{color:var(--gold);}
.hero-p{font-family:'Nunito',sans-serif;color:rgba(255,255,255,.52);font-size:14px;line-height:1.8;margin-top:12px;}
.hero-actions{margin-top:24px;display:flex;gap:10px;flex-wrap:nowrap;}
.hero-actions .btn-primary,.hero-actions .btn-outline{flex:1;justify-content:center;padding-left:16px;padding-right:16px;white-space:nowrap;}
@media (max-width:400px){
  .hero-actions .btn-primary,.hero-actions .btn-outline{font-size:11.5px;padding-left:10px;padding-right:10px;gap:6px;}
}
.btn-primary{font-family:'Space Grotesk',sans-serif;background:linear-gradient(135deg,var(--gold),var(--goldd));color:#fff;font-weight:700;font-size:13px;padding:12px 26px;border-radius:30px;border:none;text-decoration:none;display:flex;align-items:center;gap:8px;box-shadow:0 5px 20px rgba(200,151,58,.38);transition:transform .2s,box-shadow .2s;white-space:nowrap;cursor:pointer;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(200,151,58,.5);}
.btn-outline{font-family:'Space Grotesk',sans-serif;background:rgba(255,255,255,.08);color:#fff;font-weight:600;font-size:13px;padding:12px 22px;border-radius:30px;text-decoration:none;border:1.5px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);transition:all .2s;white-space:nowrap;}
.btn-outline:hover{background:rgba(255,255,255,.15);}

/* STATS */
.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:44px;}
.stat-card{background:#fff;border-radius:20px;padding:24px 18px;text-align:center;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:transform .25s,box-shadow .25s;}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;border-radius:20px 20px 0 0;}
.stat-card:nth-child(1)::before{background:linear-gradient(90deg,#f59e0b,#ef4444);}
.stat-card:nth-child(2)::before{background:linear-gradient(90deg,#10b981,#0d9488);}
.stat-card:nth-child(3)::before{background:linear-gradient(90deg,#6366f1,#8b5cf6);}
.stat-card:nth-child(4)::before{background:linear-gradient(90deg,#ec4899,#f97316);}
.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.stat-n{font-family:'Playfair Display',serif;font-size:52px;font-weight:900;color:var(--t);line-height:1;}
.stat-l{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;margin-top:5px;}
.sec-label{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--tl);margin-bottom:6px;}
.sec-head{font-family:'Playfair Display',serif;font-size:34px;font-weight:900;color:var(--td);margin-bottom:8px;}
.sec-sub{font-family:'Nunito',sans-serif;font-size:14px;color:var(--muted);margin-bottom:28px;}

/* HOME CATS */
.home-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:52px;}
.cat-card{border-radius:24px;overflow:hidden;cursor:pointer;position:relative;height:300px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;box-shadow:var(--shadow-md);}
.cat-card:hover{transform:translateY(-9px) scale(1.012);box-shadow:var(--shadow-lg);}
.cat-bg{position:absolute;inset:0;}
.cat-bg img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.cat-card:hover .cat-bg img{transform:scale(1.08);}
.cat-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(4,26,23,.95) 0%,rgba(4,26,23,.35) 55%,rgba(4,26,23,.04) 100%);}
.cat-badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.11);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18);color:#fff;font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:5px 12px;border-radius:20px;}
.cat-body{position:absolute;bottom:0;left:0;right:0;padding:22px;}
.cat-icon-box{width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.09);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;margin-bottom:9px;}
.cat-icon-box svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.cat-body h3{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;}
.cat-body p{font-family:'Nunito',sans-serif;font-size:12px;color:rgba(255,255,255,.58);line-height:1.5;margin-bottom:11px;}
.cat-cta{display:inline-flex;align-items:center;gap:8px;font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--gold);}

/* WHY */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.why-card{background:#fff;border-radius:18px;padding:22px 18px;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;}
.why-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;opacity:0;transition:opacity .25s;border-radius:0 0 18px 18px;}
.why-card:nth-child(1)::after{background:linear-gradient(90deg,#f59e0b,#ef4444);}
.why-card:nth-child(2)::after{background:linear-gradient(90deg,#10b981,#0d9488);}
.why-card:nth-child(3)::after{background:linear-gradient(90deg,#6366f1,#8b5cf6);}
.why-card:nth-child(4)::after{background:linear-gradient(90deg,#ec4899,#f97316);}
.why-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}.why-card:hover::after{opacity:1;}
.why-icon{width:48px;height:48px;border-radius:14px;margin-bottom:12px;display:flex;align-items:center;justify-content:center;}
.wi1{background:#fff8e7;}.wi1 svg{stroke:#d97706;}
.wi2{background:#e6f9f5;}.wi2 svg{stroke:#059669;}
.wi3{background:#e8f0fe;}.wi3 svg{stroke:#3b5bdb;}
.wi4{background:#fce7f8;}.wi4 svg{stroke:#c026d3;}
.why-icon svg{width:24px;height:24px;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.why-card h4{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;color:var(--dark);margin-bottom:5px;}
.why-card p{font-family:'Nunito',sans-serif;font-size:12px;color:var(--muted);line-height:1.6;}

/* VIEW HEADER */
.vhdr{background:var(--grad);border-radius:20px;padding:34px 40px;margin-bottom:28px;position:relative;overflow:hidden;display:flex;align-items:center;gap:20px;}
.vhdr-dots{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:20px 20px;}
.vhdr-orb{position:absolute;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(21,117,106,.42),transparent 70%);right:-50px;top:-70px;}
.vhdr-ico{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.09);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;}
.vhdr-ico svg{width:26px;height:26px;stroke:#fff;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.vhdr-txt{position:relative;z-index:1;}
.vhdr-txt h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(20px,2.6vw,30px);font-weight:700;color:#fff;}
.vhdr-txt p{font-family:'Nunito',sans-serif;color:rgba(255,255,255,.48);font-size:13px;margin-top:4px;}

/* MAGIC STRIP */
.magic-strip{display:flex;gap:7px;border-radius:16px;overflow:hidden;height:175px;margin-bottom:30px;background:#f0f9f7;border:1px solid var(--border);}
.mstrip-item{flex:1;position:relative;overflow:hidden;cursor:pointer;border-radius:10px;transition:flex .42s cubic-bezier(.4,0,.2,1);min-width:0;}
.mstrip-item:hover{flex:3;}
.mstrip-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .4s;filter:brightness(.65) saturate(.85);}
.mstrip-item:hover img{transform:scale(1.07);filter:brightness(.88) saturate(1.15);}
.mstrip-glare{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.18) 50%,transparent 65%);transform:translateX(-150%);transition:transform .55s ease;pointer-events:none;border-radius:10px;}
.mstrip-item:hover .mstrip-glare{transform:translateX(150%);}
.mstrip-item::before{content:'';position:absolute;inset:0;z-index:2;border-radius:10px;border:1.5px solid transparent;transition:border-color .3s;pointer-events:none;}
.mstrip-item:hover::before{border-color:rgba(200,151,58,.38);box-shadow:inset 0 0 16px rgba(200,151,58,.1);}

/* SH */
.sh{display:flex;align-items:center;gap:14px;margin-bottom:22px;}
.sh h3{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;color:var(--td);}
.sh-line{flex:1;height:1px;background:linear-gradient(to right,var(--border),transparent);}
.sh-cnt{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;color:var(--t);background:var(--tp);padding:3px 12px;border-radius:20px;}

/* PRODUCT GRID */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-bottom:20px;}
.card{background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s;animation:up .42s ease both;}
.card:hover{transform:translateY(-5px) scale(1.01);box-shadow:var(--shadow-lg);}
.card:nth-child(1){animation-delay:.04s}.card:nth-child(2){animation-delay:.09s}.card:nth-child(3){animation-delay:.14s}.card:nth-child(4){animation-delay:.19s}
@keyframes up{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}
.cimg{height:195px;background:linear-gradient(135deg,#dff0ed,#b8ddd8);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.cimg img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.card:hover .cimg img{transform:scale(1.08);}
.cpill{position:absolute;top:12px;left:12px;background:var(--t);color:#fff;font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;padding:4px 11px;border-radius:20px;letter-spacing:.6px;text-transform:uppercase;box-shadow:0 2px 8px rgba(0,0,0,.22);}
.cbody{padding:16px 18px 12px;flex:1;display:flex;flex-direction:column;gap:8px;}
.cname{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;line-height:1.35;color:var(--dark);}
.chips{display:flex;flex-wrap:wrap;gap:5px;}
.chip{font-family:'Nunito',sans-serif;font-size:11px;font-weight:600;background:var(--tp);color:var(--t);padding:3px 9px;border-radius:8px;}
.cact{padding:0 18px 16px;}
.btn-enq{width:100%;padding:10px 14px;background:var(--t);color:#fff;border:none;border-radius:11px;font-family:'Space Grotesk',sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;text-decoration:none;text-align:center;display:flex;align-items:center;justify-content:center;gap:7px;transition:background .2s,transform .15s;box-shadow:0 4px 12px rgba(13,92,82,.2);}
.btn-enq:hover{background:var(--tm);transform:translateY(-1px);}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:1fr 1.55fr;gap:22px;align-items:start;}
.ccard{background:#fff;border:1px solid var(--border);border-radius:20px;padding:28px 26px;box-shadow:var(--shadow-sm);}
.ccard h3{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;color:var(--td);margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid var(--tp);}
.crow{display:flex;align-items:flex-start;gap:13px;padding:12px 0;border-bottom:1px solid var(--tp);}
.crow:last-child{border:none;padding-bottom:0;}
.cico{width:40px;height:40px;border-radius:12px;background:var(--tp);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cico svg{stroke:var(--t);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.clabel{font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.cval{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;color:var(--dark);}
.cval a{color:var(--t);text-decoration:none;}.cval a:hover{text-decoration:underline;}
.csub{font-family:'Nunito',sans-serif;font-size:12px;color:var(--muted);margin-top:2px;}
.map-wrap{background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-sm);}
.map-wrap iframe{width:100%;height:370px;border:none;display:block;}
.map-lbl{font-family:'Space Grotesk',sans-serif;padding:12px 16px;font-size:12.5px;font-weight:600;color:var(--td);display:flex;align-items:center;gap:8px;border-top:1px solid var(--tp);}
.wa-block{margin-top:18px;background:var(--grad);border-radius:18px;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.wa-block strong{font-family:'Space Grotesk',sans-serif;color:#fff;font-size:14px;display:block;margin-bottom:3px;}
.wa-block p{font-family:'Nunito',sans-serif;color:rgba(255,255,255,.55);font-size:12.5px;}
.btn-wa{background:#25d366;color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:13px;padding:11px 20px;border-radius:13px;text-decoration:none;display:flex;align-items:center;gap:8px;box-shadow:0 4px 14px rgba(37,211,102,.3);transition:opacity .2s;white-space:nowrap;}
.btn-wa:hover{opacity:.87;}
.csocial{margin-top:16px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px 22px;box-shadow:var(--shadow-sm);}
.csocial h4{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;color:var(--td);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;}

/* ABOUT */
.about-hero{background:var(--grad);border-radius:24px;padding:44px 48px;display:flex;align-items:center;gap:36px;flex-wrap:wrap;margin-bottom:32px;position:relative;overflow:hidden;}
.ah-orb{position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(21,117,106,.4),transparent 70%);right:-50px;top:-70px;}
.ah-logo{width:86px;height:86px;border-radius:50%;object-fit:contain;background:#fff;padding:7px;box-shadow:0 0 0 3px rgba(200,151,58,.25),var(--shadow-lg);flex-shrink:0;position:relative;z-index:1;}
.ah-txt{flex:1;min-width:200px;position:relative;z-index:1;}
.ah-txt h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(18px,2.4vw,28px);font-weight:700;color:#fff;margin-bottom:8px;}
.ah-txt h2 span{color:var(--gold);}
.ah-txt p{font-family:'Nunito',sans-serif;color:rgba(255,255,255,.55);font-size:13px;line-height:1.8;}
.ah-stats{display:flex;gap:16px;flex-wrap:wrap;position:relative;z-index:1;}
.astat{text-align:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 16px;}
.astat-n{font-family:'Playfair Display',serif;font-size:36px;font-weight:900;color:var(--gold);display:block;line-height:1;}
.astat-l{font-family:'Space Grotesk',sans-serif;font-size:10px;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:1px;margin-top:3px;}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.asec{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;box-shadow:var(--shadow-sm);}
.asec.full{grid-column:1/-1;}
.asec h3{font-family:'Space Grotesk',sans-serif;font-size:17px;font-weight:700;color:var(--td);margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid var(--tp);display:flex;align-items:center;gap:9px;}
.sico{width:28px;height:28px;border-radius:8px;background:var(--tp);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.sico svg{width:14px;height:14px;stroke:var(--t);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.asec p{font-family:'Nunito',sans-serif;font-size:13px;color:var(--muted);line-height:1.8;}
.alist{list-style:none;display:flex;flex-direction:column;gap:8px;}
.alist li{font-family:'Nunito',sans-serif;display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--muted);line-height:1.65;}
.alist li::before{content:'✦';color:var(--tl);font-size:10px;margin-top:5px;flex-shrink:0;}
.stags{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
.stag{font-family:'Nunito',sans-serif;background:var(--tp);color:var(--t);font-size:11.5px;font-weight:600;padding:4px 12px;border-radius:20px;border:1px solid rgba(13,92,82,.1);}
.covgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px;}
.covitem{background:var(--tp);border-radius:10px;padding:10px 12px;}
.covst{font-family:'Space Grotesk',sans-serif;font-size:12.5px;font-weight:700;color:var(--td);}
.covd{font-family:'Nunito',sans-serif;font-size:11px;color:var(--muted);margin-top:2px;line-height:1.5;}

/* SOCIAL */
.social-row{display:flex;gap:9px;align-items:center;}
.soc-btn{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .2s;}
.soc-btn svg{width:22px;height:22px;}
.soc-btn:hover{transform:scale(1.1);}
.soc-btn.yt{background:#c00;color:#fff;box-shadow:0 3px 10px rgba(200,0,0,.22);}
.soc-btn.fb{background:#1877f2;color:#fff;box-shadow:0 3px 10px rgba(24,119,242,.22);}
.soc-btn.ig{background:linear-gradient(135deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888);color:#fff;box-shadow:0 3px 10px rgba(220,39,67,.22);}

/* ══ PHOTO TICKER — WHITE background ══ */
.ticker-wrap{
  position:relative;overflow:hidden;height:200px;
  background:#ffffff;
  border-top:1px solid #e8f3f0;
  border-bottom:1px solid #e8f3f0;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
}
/* top/bottom gentle divider lines */
.ticker-wrap::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;z-index:5;
  background:linear-gradient(to right,transparent,rgba(13,92,82,.15) 25%,rgba(200,151,58,.18) 50%,rgba(13,92,82,.15) 75%,transparent);
}
.ticker-wrap::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:1px;z-index:5;
  background:linear-gradient(to right,transparent,rgba(13,92,82,.12) 25%,rgba(200,151,58,.14) 50%,rgba(13,92,82,.12) 75%,transparent);
}
.ticker-track{display:flex;gap:10px;width:max-content;height:100%;align-items:center;padding:10px 5px;animation:tickerScroll 58s linear infinite;}
.ticker-track:hover{animation-play-state:running;} /* controlled by JS */
@keyframes tickerScroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
.ticker-item{
  position:relative;height:175px;width:270px;flex-shrink:0;
  border-radius:14px;overflow:hidden;cursor:pointer;
  border:1px solid rgba(13,92,82,.1);
  box-shadow:0 3px 14px rgba(0,0,0,.08);
  transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s;
}
.ticker-item:hover{
  transform:scale(1.05) translateY(-5px);
  box-shadow:0 14px 38px rgba(0,0,0,.16),0 0 0 1.5px rgba(200,151,58,.3);
  z-index:2;
}
.ticker-item img{
  width:100%;height:100%;object-fit:cover;
  filter:brightness(.82) saturate(.92);
  transition:filter .4s,transform .5s;
}
.ticker-item:hover img{filter:brightness(.95) saturate(1.1);transform:scale(1.06);}
.ticker-item::after{content:'';position:absolute;inset:0;border-radius:14px;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.12) 50%,transparent 65%);transform:translateX(-120%);transition:transform .55s ease;pointer-events:none;}
.ticker-item:hover::after{transform:translateX(120%);}

.page-bottom-pad{padding-bottom:80px;}

/* FOOTER */
footer{background:var(--td);position:relative;overflow:hidden;}
footer::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 80% at 15% 50%,rgba(200,151,58,.05) 0%,transparent 65%),radial-gradient(ellipse 45% 80% at 85% 50%,rgba(13,92,82,.08) 0%,transparent 65%);pointer-events:none;}
footer::after{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(to right,transparent,rgba(200,151,58,.18) 30%,rgba(13,148,136,.15) 50%,rgba(200,151,58,.18) 70%,transparent);}
.foot-inner{max-width:1180px;margin:0 auto;padding:34px 52px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;position:relative;z-index:1;}
.flogo{width:70px;height:70px;border-radius:50%;object-fit:contain;background:#fff;padding:5px;box-shadow:0 0 0 2px rgba(200,151,58,.2),0 0 16px rgba(200,151,58,.08);flex-shrink:0;}
.finfo{flex:1;min-width:200px;}
.fname{font-family:'Audiowide',sans-serif;font-size:13px;color:rgba(255,255,255,.8);letter-spacing:.5px;margin-bottom:3px;}
.finfo p{font-family:'Nunito',sans-serif;color:rgba(255,255,255,.3);font-size:12px;line-height:1.6;}
.fright{display:flex;flex-direction:column;align-items:flex-end;gap:11px;}
.flinks{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.flinks a{font-family:'Nunito',sans-serif;color:rgba(255,255,255,.38);font-size:12px;text-decoration:none;display:flex;align-items:center;gap:8px;transition:color .2s;}
.flinks a:hover{color:rgba(200,151,58,.72);}.flinks a.wal{color:rgba(74,222,128,.5);}.flinks a.wal:hover{color:rgba(74,222,128,.8);}
.fslogan{font-family:'Audiowide',sans-serif;width:100%;text-align:center;font-size:9px;letter-spacing:5px;color:rgba(255,255,255,.1);padding-top:18px;border-top:1px solid rgba(255,255,255,.04);margin-top:4px;}

@media(max-width:900px){.home-cats{grid-template-columns:1fr;}.hero-mosaic{display:none;}.hero-content{max-width:100%;padding:32px 24px;}.stats-strip{grid-template-columns:1fr 1fr;}.contact-grid{grid-template-columns:1fr;}.about-grid{grid-template-columns:1fr;}.asec.full{grid-column:1;}.why-grid{grid-template-columns:1fr 1fr;}.ticker-item{width:210px;height:160px;}.ticker-wrap{height:160px;}}
@media(max-width:640px){.tab-row{overflow-x:auto;padding:0 8px;}.main-tab{height:42px;padding:0 10px;gap:5px;flex:none;font-size:11px;}.main-tab .ti{width:30px;height:30px;}.hdr-inner{flex-direction:column;gap:18px;padding:24px 16px 28px;text-align:center;}.brand-name{white-space:normal;font-size:clamp(18px,6vw,30px);}.tab-row{padding:0 8px;overflow-x:auto;}.sub-row{padding:8px 10px;}main{padding:20px 14px 0;}.vhdr{padding:24px 18px;}.foot-inner{padding:24px 16px;}.fright{align-items:flex-start;}.why-grid{grid-template-columns:1fr;}.ticker-item{width:160px;}}

/* ══ DARK MODE ══ */
body.dark{background:#0d1a17;color:#e2f0ed;}
body.dark .stat-card,body.dark .why-card,body.dark .ccard,body.dark .map-wrap,
body.dark .csocial,body.dark .wa-block,body.dark .card,body.dark .asec,
body.dark .sub-nav,.dark .sub-tab{background:#132820;border-color:#1e3d32;color:#e2f0ed;}
body.dark .cname,body.dark .why-card h4,body.dark .asec h3,
body.dark .sh h3,body.dark .sec-head,body.dark .ccard h3{color:#d4ece5;}
body.dark .muted,body.dark .why-card p,body.dark .asec p,body.dark .alist li,
body.dark .csub,body.dark .covd{color:#7faaa0;}
body.dark .chip,body.dark .stag,body.dark .covitem{background:#1a3528;color:#7dd3c0;}
body.dark .sub-nav{background:#0d1f1c;}
body.dark .sub-tab{background:#132820;color:#7dd3c0;border-color:#1e3d32;}
body.dark .sub-tab.active{background:var(--t);color:#fff;}
body.dark main{background:#0d1a17;}

/* Dark mode toggle */
.dm-btn{
  position:fixed;top:50%;right:0;transform:translateY(-50%);
  z-index:500;background:var(--td);
  border:1px solid rgba(255,255,255,.1);
  border-right:none;
  border-radius:12px 0 0 12px;
  width:38px;padding:10px 0;
  display:flex;flex-direction:column;align-items:center;gap:8px;
  cursor:pointer;transition:background .3s,transform .3s;
  box-shadow:-3px 0 18px rgba(0,0,0,.15);
}
.dm-btn:hover{transform:translateY(-50%) translateX(-2px);}
.dm-btn svg{width:22px;height:22px;fill:none;stroke:rgba(255,255,255,.6);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.dm-btn span{font-family:'Space Grotesk',sans-serif;font-size:8px;font-weight:700;letter-spacing:.5px;color:rgba(255,255,255,.4);text-transform:uppercase;writing-mode:vertical-rl;text-orientation:mixed;}

/* ══ STAT COUNTER ANIMATION ══ */
.stat-n{transition:color .3s;}
.stat-n.counting{color:var(--tl);}

.quote-panel{
  position:fixed;bottom:170px;right:26px;z-index:9001;
  width:320px;background:#fff;border-radius:22px;
  box-shadow:0 24px 80px rgba(0,0,0,.18),0 0 0 1px rgba(13,92,82,.08);
  transform:translateY(20px) scale(.95);opacity:0;pointer-events:none;
  transition:all .35s cubic-bezier(.34,1.56,.64,1);
  overflow:hidden;
}
.quote-panel.open{transform:translateY(0) scale(1);opacity:1;pointer-events:auto;}
body.dark .quote-panel{background:#132820;box-shadow:0 24px 80px rgba(0,0,0,.4);}
.qp-head{
  background:var(--grad);padding:18px 20px;
  display:flex;align-items:center;gap:12px;
}
.qp-head h4{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;color:#fff;flex:1;}
.qp-close{background:rgba(255,255,255,.12);border:none;color:#fff;width:28px;height:28px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:background .2s;}
.qp-close:hover{background:rgba(255,255,255,.22);}
.qp-body{padding:16px 18px 18px;}
.qp-field{margin-bottom:12px;}
.qp-field label{font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;display:block;margin-bottom:5px;}
.qp-field input,.qp-field select{
  width:100%;padding:10px 13px;
  border:1.5px solid var(--border);border-radius:10px;
  font-family:'Nunito',sans-serif;font-size:13px;color:var(--dark);
  background:#fff;outline:none;transition:border-color .2s,box-shadow .2s;
}
body.dark .qp-field input,body.dark .qp-field select{background:#0d1f1c;color:#d4ece5;border-color:#1e3d32;}
.qp-field input:focus,.qp-field select:focus{border-color:var(--tl);box-shadow:0 0 0 3px rgba(31,168,152,.12);}
.qp-submit{
  width:100%;padding:12px;background:linear-gradient(135deg,var(--t),var(--tl));
  color:#fff;border:none;border-radius:12px;
  font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;
  transition:opacity .2s,transform .15s;box-shadow:0 5px 16px rgba(13,92,82,.3);
}
.qp-submit:hover{opacity:.9;transform:translateY(-1px);}

/* ══ LIGHTBOX ══ */
.lightbox{
  position:fixed;inset:0;z-index:9999;
  background:rgba(0,0,0,0);
  display:flex;align-items:center;justify-content:center;
  pointer-events:none;transition:background .3s;
}
.lightbox.open{background:rgba(0,0,0,.88);pointer-events:auto;}
.lb-img-wrap{
  position:relative;max-width:90vw;max-height:88vh;
  transform:scale(.85);opacity:0;transition:all .35s cubic-bezier(.34,1.56,.64,1);
}
.lightbox.open .lb-img-wrap{transform:scale(1);opacity:1;}
.lb-img{
  max-width:90vw;max-height:80vh;border-radius:16px;
  object-fit:contain;box-shadow:0 30px 80px rgba(0,0,0,.5);
  display:block;
}
.lb-close{
  position:absolute;top:-14px;right:-14px;
  width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,.15);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;font-size:18px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s,transform .2s;
}
.lb-close:hover{background:rgba(255,255,255,.28);transform:rotate(90deg);}
.lb-caption{
  text-align:center;margin-top:12px;
  font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:600;
  color:rgba(255,255,255,.7);
}
.lb-nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:42px;height:42px;border-radius:50%;
  background:rgba(255,255,255,.12);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.2);
  color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background .2s;font-size:18px;
}
.lb-nav:hover{background:rgba(255,255,255,.25);}
.lb-prev{left:-56px;}.lb-next{right:-56px;}

/* Make card images have lightbox cursor */
.cimg{cursor:zoom-in;}

/* ══ TESTIMONIALS ══ */
.testimonials-section{margin:52px 0 0;}
.testi-head{display:flex;align-items:center;gap:14px;margin-bottom:24px;}
.testi-head h2{font-family:'Playfair Display',serif;font-size:30px;font-weight:900;color:var(--td);}
body.dark .testi-head h2{color:#d4ece5;}
.testi-line{flex:1;height:1px;background:linear-gradient(to right,var(--border),transparent);}
.testi-carousel{position:relative;overflow:hidden;}
.testi-track{
  display:flex;gap:20px;
  transition:transform .5s cubic-bezier(.4,0,.2,1);
}
.testi-card{
  flex:0 0 calc(33.33% - 14px);
  background:#fff;border:1px solid var(--border);border-radius:22px;
  padding:26px 24px;box-shadow:var(--shadow-sm);
  position:relative;overflow:hidden;
}
body.dark .testi-card{background:#132820;border-color:#1e3d32;}
.testi-card::before{
  content:'\201C';
  position:absolute;top:-8px;left:18px;
  font-size:90px;font-family:Georgia,serif;
  color:var(--tp);line-height:1;z-index:0;
  pointer-events:none;
}
body.dark .testi-card::before{color:rgba(13,148,136,.15);}
.testi-stars{display:flex;gap:3px;margin-bottom:12px;position:relative;z-index:1;}
.testi-star{color:#f59e0b;font-size:14px;}
.testi-text{
  font-family:'Nunito',sans-serif;font-size:13.5px;
  color:var(--muted);line-height:1.75;
  position:relative;z-index:1;margin-bottom:16px;
}
body.dark .testi-text{color:#7faaa0;}
.testi-author{display:flex;align-items:center;gap:12px;position:relative;z-index:1;}
.testi-avatar{
  width:44px;height:44px;border-radius:50%;
  background:linear-gradient(135deg,var(--t),var(--tl));
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.testi-avatar span{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:700;color:#fff;}
.testi-name{font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:700;color:var(--dark);}
body.dark .testi-name{color:#d4ece5;}
.testi-loc{font-family:'Nunito',sans-serif;font-size:11.5px;color:var(--muted);margin-top:2px;}
.testi-badge{
  display:inline-block;margin-top:4px;
  font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;
  color:var(--t);background:var(--tp);padding:2px 9px;border-radius:8px;
}
body.dark .testi-badge{background:rgba(13,148,136,.15);color:#7dd3c0;}
.testi-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:22px;}
.testi-btn{
  width:38px;height:38px;border-radius:50%;border:1.5px solid var(--border);
  background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all .2s;
}
body.dark .testi-btn{background:#132820;border-color:#1e3d32;}
.testi-btn:hover{background:var(--t);border-color:var(--t);}
.testi-btn:hover svg{stroke:#fff;}
.testi-btn svg{width:16px;height:16px;stroke:var(--t);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .2s;}
.testi-dots{display:flex;gap:8px;align-items:center;}
.testi-dot{width:7px;height:7px;border-radius:50%;background:var(--border);transition:all .3s;cursor:pointer;}
.testi-dot.active{background:var(--t);width:22px;border-radius:4px;}

/* ══ LANGUAGE TOGGLE ══ */
.lang-btn{
  position:relative;display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
  border-radius:10px;padding:5px 10px;cursor:pointer;
  font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;
  color:rgba(255,255,255,.7);transition:all .2s;
  margin-left:auto;flex-shrink:0;
}
.lang-btn:hover{background:rgba(255,255,255,.14);}
.lang-btn svg{width:14px;height:14px;stroke:rgba(255,255,255,.55);fill:none;stroke-width:2;stroke-linecap:round;}
.lang-dropdown{
  position:absolute;top:calc(100% + 8px);right:0;
  background:#fff;border:1px solid var(--border);border-radius:12px;
  box-shadow:var(--shadow-md);min-width:130px;
  overflow:hidden;z-index:999;
  display:none;
}
body.dark .lang-dropdown{background:#132820;border-color:#1e3d32;}
.lang-dropdown.open{display:block;}
.lang-opt{
  display:flex;align-items:center;gap:10px;padding:11px 14px;
  font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:600;
  color:var(--dark);cursor:pointer;transition:background .15s;
}
body.dark .lang-opt{color:#d4ece5;}
.lang-opt:hover{background:var(--tp);}
body.dark .lang-opt:hover{background:rgba(13,148,136,.1);}
.lang-opt.active{color:var(--t);background:var(--tp);}
body.dark .lang-opt.active{background:rgba(13,148,136,.12);}
.lang-flag{font-size:16px;}

/* Translated text — hidden by default */
[data-te],[data-hi]{display:none;}
.lang-te [data-en]{display:none;}
.lang-te [data-te]{display:inline;}
.lang-hi [data-en]{display:none;}
.lang-hi [data-hi]{display:inline;}


/* ── DARK MODE ── */
body.dark{background:#0f1a18;color:#e2f0ec;}
body.dark .stat-card,body.dark .why-card,body.dark .card,body.dark .ccard,body.dark .map-wrap,body.dark .csocial,body.dark .asec,body.dark .magic-strip{background:#162320;border-color:rgba(255,255,255,.07);}
body.dark .cname,body.dark .why-card h4,body.dark .sh h3,body.dark .sec-head,body.dark .asec h3,body.dark .ccard h3,body.dark .covst{color:#d4ede7;}
body.dark .stat-l,body.dark .why-card p,body.dark .asec p,body.dark .alist li,body.dark .csub,body.dark .covd,body.dark .sec-sub{color:#7aada0;}
body.dark .chip,body.dark .stag{background:#1e3530;color:#7adbc8;}
body.dark .sub-nav{background:#0f1a18;border-color:rgba(255,255,255,.06);}
body.dark .sub-tab{background:#162320;color:#7adbc8;border-color:rgba(255,255,255,.08);}
body.dark .sub-tab.active{background:var(--t);color:#fff;}
body.dark .ticker-wrap{background:#0f1a18;}
body.dark .ticker-item{border-color:rgba(255,255,255,.06);}
body.dark .magic-strip{background:#0a1714;}
body.dark .crow{border-color:rgba(255,255,255,.06);}
body.dark .cval{color:#d4ede7;}
body.dark .cval a{color:#4ade80;}
body.dark .sh-cnt{background:#1e3530;color:#7adbc8;}
body.dark .covitem{background:#1e3530;}
/* Nav extras */
.nav-extras{display:flex;align-items:center;gap:10px;margin-left:auto;padding:0 10px;flex-shrink:0;}
.theme-toggle{width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.theme-toggle:hover{background:rgba(255,255,255,.14);}
body.dark .theme-toggle .sun-icon{display:none!important;}
body.dark .theme-toggle .moon-icon{display:block!important;}
.lang-switch{display:flex;gap:3px;background:rgba(255,255,255,.06);padding:4px;border-radius:11px;border:1px solid rgba(255,255,255,.1);}
.lang-btn{background:none;border:none;color:rgba(255,255,255,.45);font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;padding:4px 9px;border-radius:7px;cursor:pointer;transition:all .2s;}
.lang-btn.active{background:var(--t);color:#fff;}
.lang-btn:hover:not(.active){color:rgba(255,255,255,.8);background:rgba(255,255,255,.08);}
/* Quote modal */
.quote-modal{background:#fff;border-radius:24px;padding:32px;max-width:440px;width:100%;box-shadow:0 24px 80px rgba(0,0,0,.3);position:relative;animation:slideUp .3s ease;}
body.dark .quote-modal{background:#162320;border:1px solid rgba(255,255,255,.08);}
@keyframes slideUp{from{transform:translateY(30px);opacity:0;}to{transform:translateY(0);opacity:1;}}
@keyframes lbIn{from{transform:scale(.88);opacity:0;}to{transform:scale(1);opacity:1;}}
.quote-modal h3{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;color:var(--td);margin-bottom:6px;}
body.dark .quote-modal h3{color:#d4ede7;}
.quote-modal p{font-family:'Nunito',sans-serif;font-size:13px;color:var(--muted);margin-bottom:20px;}
.quote-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:none;background:rgba(0,0,0,.06);cursor:pointer;font-size:15px;color:var(--muted);display:flex;align-items:center;justify-content:center;}
.quote-close:hover{background:rgba(0,0,0,.12);}
.qfield{margin-bottom:13px;}
.qfield label{font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;display:block;margin-bottom:5px;}
.qfield input,.qfield select{width:100%;padding:10px 13px;border:1.5px solid var(--border);border-radius:10px;font-family:'Nunito',sans-serif;font-size:14px;color:var(--dark);background:#fff;outline:none;transition:border-color .2s;}
body.dark .qfield input,body.dark .qfield select{background:#0f1a18;border-color:rgba(255,255,255,.1);color:#d4ede7;}
.qfield input:focus,.qfield select:focus{border-color:var(--t);box-shadow:0 0 0 3px rgba(13,92,82,.1);}
.btn-quote-send{width:100%;padding:12px;background:linear-gradient(135deg,var(--t),var(--tm));color:#fff;border:none;border-radius:11px;font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;transition:opacity .2s;}
.btn-quote-send:hover{opacity:.9;}
/* Testimonials */
.test-card{flex:0 0 calc(33.33% - 14px);min-width:0;background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm);position:relative;}
body.dark .test-card{background:#162320;border-color:rgba(255,255,255,.07);}
.test-card::before{content:'"';font-family:'Playfair Display',serif;font-size:80px;line-height:1;color:var(--tp);position:absolute;top:8px;left:16px;}
body.dark .test-card::before{color:rgba(13,92,82,.25);}
.test-stars{display:flex;gap:3px;margin-bottom:10px;margin-top:6px;}
.test-stars svg{width:13px;height:13px;fill:var(--gold);stroke:none;}
.test-quote{font-family:'Nunito',sans-serif;font-size:13px;color:var(--muted);line-height:1.75;margin-bottom:14px;padding-top:16px;}
body.dark .test-quote{color:#7aada0;}
.test-author{display:flex;align-items:center;gap:10px;}
.test-avatar{width:40px;height:40px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:700;color:#fff;flex-shrink:0;}
.test-name{font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:700;color:var(--td);}
body.dark .test-name{color:#d4ede7;}
.test-loc{font-family:'Nunito',sans-serif;font-size:11px;color:var(--muted);}
.test-btn{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--border);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;}
body.dark .test-btn{background:#162320;border-color:rgba(255,255,255,.1);}
.test-btn:hover{background:var(--t);border-color:var(--t);}
.test-btn:hover svg{stroke:#fff!important;}
.test-dot{width:7px;height:7px;border-radius:50%;background:#e6f2f0;cursor:pointer;transition:all .3s;}
.test-dot.active{background:var(--t);width:20px;border-radius:4px;}
@media(max-width:900px){.test-card{flex:0 0 calc(50% - 10px)!important;}}
@media(max-width:600px){.test-card{flex:0 0 100%!important;}}
.cimg{cursor:zoom-in;}

/* ══ HEADER CONTROLS (Mode + Language) ══ */
.hdr-controls{display:flex;flex-direction:column;gap:8px;flex-shrink:0;align-self:flex-start;margin-top:4px;}
.ctrl-group{display:flex;align-items:center;gap:10px;}
.ctrl-label{font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:1px;min-width:52px;text-align:right;}
.ctrl-btns{display:flex;gap:8px;background:rgba(255,255,255,.07);padding:4px;border-radius:10px;border:1px solid rgba(255,255,255,.1);}
.ctrl-btn{background:none;border:none;color:rgba(255,255,255,.42);font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;padding:5px 11px;border-radius:7px;cursor:pointer;transition:all .22s;white-space:nowrap;}
.ctrl-btn.active{background:var(--t);color:#fff;box-shadow:0 2px 10px rgba(13,92,82,.45);}
.ctrl-btn:hover:not(.active){color:rgba(255,255,255,.8);background:rgba(255,255,255,.1);}

/* ══ NAV — fresh teal-deep colour (not black) ══ */
.main-nav{
  background:linear-gradient(180deg,#0c2e29 0%,#0a2420 100%);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.06);
  position:sticky !important;top:0 !important;z-index:1000 !important;
  box-shadow:0 4px 24px rgba(0,0,0,.18);
}
.main-nav::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--nav-line,rgba(13,148,136,.38));
  transition:background .45s,box-shadow .45s;
  box-shadow:0 0 12px 1px var(--nav-line,rgba(13,148,136,.22));
  opacity:.8;
}

/* ══ DARK MODE — full overhaul ══ */
body.dark{background:#0b1a17;color:#ddeee8;}
body.dark .main-nav{background:linear-gradient(180deg,#061410 0%,#081812 100%);}
body.dark .sub-nav{background:#0d1f1a;border-color:rgba(255,255,255,.06);}
body.dark .sub-tab{background:#111f1b;color:#6dcfbc;border-color:rgba(255,255,255,.08);}
body.dark .sub-tab.active{background:var(--t);color:#fff;}
body.dark .stat-card,body.dark .why-card,body.dark .card,body.dark .ccard,
body.dark .map-wrap,body.dark .csocial,body.dark .wa-block,body.dark .asec,
body.dark .magic-strip,body.dark .test-card{background:#132520;border-color:rgba(255,255,255,.07);}
body.dark .cname,body.dark .why-card h4,body.dark .sh h3,body.dark .sec-head,
body.dark .asec h3,body.dark .ccard h3,body.dark .covst,body.dark .test-name,
body.dark .test-head{color:#c8e8e0;}
body.dark .stat-l,body.dark .why-card p,body.dark .asec p,body.dark .alist li,
body.dark .csub,body.dark .covd,body.dark .sec-sub,body.dark .test-quote,
body.dark .test-loc,body.dark .hdr-desc{color:#6a9e92;}
body.dark .chip,body.dark .stag{background:#1a3530;color:#6dcfbc;}
body.dark .sh-cnt{background:#1a3530;color:#6dcfbc;}
body.dark .covitem{background:#1a3530;}
body.dark .cval{color:#c8e8e0;}
body.dark .cval a{color:#4ade80;}
body.dark .clabel{color:#4a7a70;}
body.dark .crow{border-color:rgba(255,255,255,.06);}
body.dark .ticker-wrap{background:#0b1a17;border-color:rgba(255,255,255,.05);}
body.dark .ticker-item{border-color:rgba(255,255,255,.07);box-shadow:0 3px 14px rgba(0,0,0,.3);}
body.dark .magic-strip{background:#071210;border-color:rgba(255,255,255,.05);}
body.dark .map-lbl{color:#6dcfbc;}
body.dark .sec-label{color:rgba(95,210,190,.65);}
body.dark .csocial h4{color:#6a9e92;}
body.dark .test-card::before{color:rgba(13,92,82,.3);}
body.dark .test-btn{background:#132520;border-color:rgba(255,255,255,.1);}
body.dark #productPanel{background:#132520;}
body.dark #productPanel h2{color:#c8e8e0;}
body.dark #productPanel p{color:#6a9e92;}
body.dark #productPanel h3{color:#c8e8e0;border-color:rgba(255,255,255,.08)!important;}
body.dark #productPanel td{color:#aaccc4;border-color:rgba(255,255,255,.06)!important;}
body.dark #productPanel tr:nth-child(even) td{background:rgba(255,255,255,.04)!important;}
body.dark .ctrl-btn.active{background:var(--t);}
body.dark .hdr-controls .ctrl-label{color:rgba(255,255,255,.4);}

/* ══ TESTIMONIALS WRAP — compact, on all pages ══ */
.testimonials-wrap{
  background:#f8fffe;
  border-top:1px solid var(--tp);
  border-bottom:1px solid var(--tp);
  padding:32px 0 24px;
}
body.dark .testimonials-wrap{background:#0e1d19;border-color:rgba(255,255,255,.06);}
.test-inner{max-width:1180px;margin:0 auto;padding:0 52px;}
.test-inner .sec-label{margin-bottom:4px;}
.test-inner .sec-head{font-size:26px;margin-bottom:18px;}
.test-card{flex:0 0 calc(33.33% - 14px);min-width:0;background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:var(--shadow-sm);position:relative;}
body.dark .test-card{background:#132520;border-color:rgba(255,255,255,.07);}
.test-card::before{content:'"';font-family:'Playfair Display',serif;font-size:70px;line-height:1;color:var(--tp);position:absolute;top:6px;left:14px;}
body.dark .test-card::before{color:rgba(13,92,82,.28);}
.test-stars{display:flex;gap:3px;margin-bottom:8px;margin-top:4px;}
.test-stars svg{width:12px;height:12px;fill:var(--gold);}
.test-quote{font-family:'Nunito',sans-serif;font-size:12.5px;color:var(--muted);line-height:1.7;margin-bottom:12px;padding-top:14px;}
body.dark .test-quote{color:#6a9e92;}
.test-author{display:flex;align-items:center;gap:9px;}
.test-avatar{width:36px;height:36px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:700;color:#fff;flex-shrink:0;}
.test-name{font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:700;color:var(--td);}
body.dark .test-name{color:#c8e8e0;}
.test-loc{font-family:'Nunito',sans-serif;font-size:10.5px;color:var(--muted);}
.test-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;}
body.dark .test-btn{background:#132520;border-color:rgba(255,255,255,.1);}
.test-btn:hover{background:var(--t);border-color:var(--t);}
.test-btn:hover svg{stroke:#fff!important;}
.test-dot{width:7px;height:7px;border-radius:50%;background:#e6f2f0;cursor:pointer;transition:all .3s;}
.test-dot.active{background:var(--t);width:18px;border-radius:4px;}
@media(max-width:900px){.test-card{flex:0 0 calc(50% - 8px)!important;}.test-inner{padding:0 20px;}}
@media(max-width:600px){.test-card{flex:0 0 100%!important;}.test-inner{padding:0 14px;}}

/* Product modal dark */
@keyframes slideUp{from{transform:translateY(28px);opacity:0;}to{transform:translateY(0);opacity:1;}}
@media(max-width:640px){
  #productPanel{margin:10px!important;}
  #pdImg{height:220px!important;}
  #productPanel>div:last-child{padding:20px 16px!important;}
  .hdr-controls{display:none;}
}

/* ── NAV CTRL BAR (Dark/Light + Language) ── */
.tab-row{align-items:center;}
.nav-ctrl-bar{
  display:flex;align-items:center;gap:8px;
  margin-left:auto;flex-shrink:0;
  padding:0 12px;
}
.nav-ctrl-group{
  display:flex;gap:3px;
  background:rgba(255,255,255,.07);
  padding:4px;border-radius:10px;
  border:1px solid rgba(255,255,255,.09);
}
.nav-ctrl-sep{
  width:1px;height:24px;
  background:rgba(255,255,255,.1);
  flex-shrink:0;
}
.nav-ctrl-btn{
  background:none;border:none;
  color:rgba(255,255,255,.38);
  font-family:'Space Grotesk',sans-serif;
  font-size:11px;font-weight:700;
  padding:5px 10px;border-radius:7px;
  cursor:pointer;transition:all .22s;
  white-space:nowrap;
}
.nav-ctrl-btn.active{
  background:var(--t);color:#fff;
  box-shadow:0 2px 8px rgba(13,92,82,.4);
}
.nav-ctrl-btn:hover:not(.active){
  color:rgba(255,255,255,.78);
  background:rgba(255,255,255,.1);
}
body.dark .nav-ctrl-group{
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.07);
}
body.dark .nav-ctrl-btn.active{background:var(--tm);}


/* Header language switcher */
.header-lang{
  position:absolute;
  right:20px;
  top:12px;
  z-index:50;
}
.header-lang .nav-ctrl-group{
  background:rgba(255,255,255,.08);
}
@media(max-width:768px){
  .header-lang{
    right:12px;
    top:8px;
    transform:scale(.9);
    transform-origin:top right;
  }
}

/* ── Product modal improvements ── */
#productModal{padding:16px;box-sizing:border-box;}
#productPanel{width:100%;max-width:680px;}
@keyframes slideUp{from{transform:translateY(28px);opacity:0;}to{transform:translateY(0);opacity:1;}}
#pdSlides{will-change:transform;}
#pdSlides img{will-change:transform;object-fit:contain!important;width:100%!important;height:100%!important;background:#fff;}
/* Dark mode panel */
body.dark #productPanel{background:#132520!important;}
body.dark #productPanel h2{color:#c8e8e0!important;}
body.dark #productPanel p{color:#6a9e92!important;}
body.dark #productPanel h3{color:#c8e8e0!important;border-color:rgba(255,255,255,.08)!important;}
body.dark #productPanel table{border-color:rgba(255,255,255,.07)!important;}
body.dark #pdScrollBody{background:#132520;}
body.dark #pdPill{background:#1a3530!important;color:#6dcfbc!important;}
body.dark #pdScrollHint{color:#3a6e62!important;}
/* Scroll body custom scrollbar */
#pdScrollBody::-webkit-scrollbar{width:4px;}
#pdScrollBody::-webkit-scrollbar-track{background:transparent;}
#pdScrollBody::-webkit-scrollbar-thumb{background:rgba(13,92,82,.3);border-radius:4px;}
/* Mobile full-height modal */
@media(max-width:640px){
  #productModal{padding:8px;align-items:flex-end!important;}
  #productPanel{border-radius:20px 20px 0 0!important;max-height:94vh;}
  #pdSlideshow{height:220px!important;}
  #pdScrollBody{max-height:calc(94vh - 220px)!important;}
}

@keyframes fadeInUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}

/* ══ BVK AGRO LOADER ══ */
#bvk-loader{
  position:fixed;inset:0;z-index:99999;
  background:linear-gradient(135deg,#041e1b 0%,#0a4840 55%,#16756a 100%);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  transition:opacity .7s ease,visibility .7s ease;
}
#bvk-loader.hidden{opacity:0;visibility:hidden;pointer-events:none;}
.bldr-wrap{position:relative;width:180px;height:180px;display:flex;align-items:center;justify-content:center;}
.bldr-r{position:absolute;border-radius:50%;}
.bldr-r1{
  display:block;
  width:180px;
  height:180px;
  border:4px solid transparent;
  border-top-color:#0d5c52;
  border-right-color:#0d5c52;
  animation:bldr-spin 2s linear infinite;
}
.bldr-r2{
  display:block;
  width:150px;
  height:150px;
  border:3px solid transparent;
  border-bottom-color:#c8973a;
  border-left-color:#c8973a;
  animation:bldr-spin-rev 1.4s linear infinite;
}
.bldr-r3{display:none;}
@keyframes bldr-spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
@keyframes bldr-spin-rev{from{transform:rotate(360deg);}to{transform:rotate(0deg);}}
@keyframes bldr-spin{to{transform:rotate(360deg);}}
.bldr-dots{display:none;}
.bldr-dot{
  position:absolute;width:8px;height:8px;border-radius:50%;
  background:#c8973a;box-shadow:0 0 10px 3px rgba(200,151,58,.55);
  top:50%;left:50%;
}
.bldr-dot:nth-child(1){transform:translate(-50%,-50%) rotate(0deg)   translateY(-82px);}
.bldr-dot:nth-child(2){transform:translate(-50%,-50%) rotate(60deg)  translateY(-82px);opacity:.65;}
.bldr-dot:nth-child(3){transform:translate(-50%,-50%) rotate(120deg) translateY(-82px);opacity:.4;}
.bldr-dot:nth-child(4){transform:translate(-50%,-50%) rotate(180deg) translateY(-82px);opacity:.65;}
.bldr-dot:nth-child(5){transform:translate(-50%,-50%) rotate(240deg) translateY(-82px);opacity:.4;}
.bldr-dot:nth-child(6){transform:translate(-50%,-50%) rotate(300deg) translateY(-82px);}
.bldr-logo{
  width:120px;height:120px;border-radius:50%;
  object-fit:contain;background:#fff;padding:9px;
  position:relative;z-index:2;
  box-shadow:0 0 0 4px rgba(200,151,58,.2),0 14px 44px rgba(0,0,0,.55);
  animation:bldr-pulse 2.2s ease-in-out infinite;
}
@keyframes bldr-pulse{
  0%,100%{transform:scale(1);box-shadow:0 0 0 4px rgba(200,151,58,.2),0 14px 44px rgba(0,0,0,.55);}
  50%{transform:scale(1.05);box-shadow:0 0 0 8px rgba(200,151,58,.1),0 18px 52px rgba(0,0,0,.65);}
}
.bldr-brand{
  margin-top:28px;
  font-family:'Audiowide',cursive,sans-serif;
  font-size:18px;color:#fff;letter-spacing:1.5px;
  text-align:center;
  animation:bldr-fade .8s ease .25s both;
}
.bldr-tag{
  margin-top:7px;
  font-family:'Space Grotesk',sans-serif;
  font-size:10px;font-weight:700;
  color:rgba(200,151,58,.8);letter-spacing:3px;
  text-transform:uppercase;text-align:center;
  animation:bldr-fade .8s ease .45s both;
}
.bldr-bar-wrap{
  margin-top:24px;width:160px;height:3px;
  background:rgba(255,255,255,.1);border-radius:3px;
  overflow:hidden;animation:bldr-fade .8s ease .55s both;
}
.bldr-bar{
  height:100%;width:0;border-radius:3px;
  background:linear-gradient(90deg,#1fa898,#c8973a);
  animation:bldr-prog 2s ease .45s forwards;
}
@keyframes bldr-prog{0%{width:0%}65%{width:72%}100%{width:100%}}
@keyframes bldr-fade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}


/* Sync Indicator */
.sync-indicator{
  position:fixed;bottom:170px;right:26px;width:36px;height:36px;
  border-radius:50%;background:var(--t);
  display:flex;align-items:center;justify-content:center;
  z-index:9999;opacity:0;transform:scale(.7);
  transition:all .3s ease;box-shadow:0 4px 14px rgba(13,92,82,.35);
}
.sync-indicator.show{opacity:1;transform:scale(1);}
.sync-indicator svg{
  width:22px;height:22px;stroke:#ffffff;fill:none;
  stroke-width:3.8;stroke-linecap:round;stroke-linejoin:round;
}

/* ==========================================================================
   ADDITIONS — new components needed for the multi-page rebuild
   (breadcrumb, product detail page, quote FAB as a class, sync badge).
   Appended after the base V16 stylesheet; reuses the same design tokens.
   ========================================================================== */

/* ---------- ANCHOR RESET (card/nav/cat-card are now real <a> links for
   navigation; neutralise default browser underline + link colour) ---------- */
a.card,a.card:hover,a.card:visited,
a.main-tab,a.main-tab:hover,a.main-tab:visited,
a.cat-card,a.cat-card:hover,a.cat-card:visited{text-decoration:none;}
a.card,a.card:hover,a.card:visited,
a.cat-card,a.cat-card:hover,a.cat-card:visited{color:inherit;}

/* ---------- PRODUCT GALLERY SLIDESHOW (matches original modal pattern) ---------- */
.test-dots-dim .test-dot{opacity:.22;}
.test-dots-dim .test-dot.active{opacity:1;}
body.dark .test-dot{background:rgba(255,255,255,.14);}

.price-pending{font-family:'Nunito',sans-serif;font-size:13px;font-weight:600;color:var(--muted);opacity:.7;animation:pricePulse 1.4s ease-in-out infinite;}
@keyframes pricePulse{0%,100%{opacity:.4;}50%{opacity:.9;}}
.price-timeout .price-pending,.js-price:has(.price-timeout){color:var(--gold);}
.cprice.price-timeout,.pd-price.price-timeout{color:var(--gold);}
.cprice.price-timeout .price-pending,.pd-price.price-timeout .price-pending{animation:none;opacity:1;color:var(--gold);}
body.dark .price-pending{color:#8fa8a2;}

/* ==========================================================================
   NEW FEATURES — scroll-reveal, condensed nav, search, multi-enquiry
   ========================================================================== */

/* ---------- SCROLL-REVEAL ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1);}
.reveal.revealed{opacity:1;transform:translateY(0);}
.reveal-stagger .reveal:nth-child(1){transition-delay:0s;}
.reveal-stagger .reveal:nth-child(2){transition-delay:.08s;}
.reveal-stagger .reveal:nth-child(3){transition-delay:.16s;}
.reveal-stagger .reveal:nth-child(4){transition-delay:.24s;}
.reveal-stagger .reveal:nth-child(5){transition-delay:.32s;}
.reveal-stagger .reveal:nth-child(6){transition-delay:.4s;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}

/* ---------- HEADER / NAV CONDENSE ON SCROLL ---------- */
.main-nav{transition:box-shadow .3s ease,background .3s ease;}
.main-nav.nav-scrolled{box-shadow:0 6px 24px rgba(0,0,0,.18);}
.main-nav.nav-scrolled .main-tab{height:38px;min-height:38px;font-size:11.5px;}
body.dark .main-nav.nav-scrolled{box-shadow:0 6px 24px rgba(0,0,0,.4);}

/* ---------- HOVER POLISH ---------- */
.cat-card,.card{will-change:transform;}
.why-card,.astat,.stat-card{transition:transform .35s cubic-bezier(.2,.6,.2,1),box-shadow .35s ease;}
.why-card:hover,.stat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);}
.pd-hero img,.magic-strip img,.mstrip-item img{transition:transform .5s cubic-bezier(.2,.6,.2,1);}
.pd-hero:hover img{transform:scale(1.04);}
.btn-primary,.btn-outline,.btn-wa,.btn-quote,.cat-card .cat-cta{transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;}
.btn-primary:hover,.btn-wa:hover,.btn-quote:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.18);}
.btn-outline:hover{transform:translateY(-2px);background:rgba(255,255,255,.16);}

/* ---------- SITE SEARCH ---------- */
.search-btn{position:absolute;top:12px;right:20px;z-index:50;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);transition:background .2s,transform .2s;}
.search-btn:hover{background:rgba(255,255,255,.24);transform:scale(1.06);}
body.dark .search-btn{background:rgba(255,255,255,.08);}
#searchOverlay{display:none;position:fixed;inset:0;z-index:10500;background:rgba(4,20,18,.72);backdrop-filter:blur(6px);align-items:flex-start;justify-content:center;padding:70px 20px;}
.search-box{width:100%;max-width:560px;background:#fff;border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.4);overflow:hidden;max-height:80vh;display:flex;flex-direction:column;}
.search-input-row{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0;}
.search-input-row svg{flex-shrink:0;color:var(--muted);}
#searchInput{flex:1;border:none;outline:none;font-family:'Nunito',sans-serif;font-size:16px;color:var(--dark);background:transparent;}
.search-close-btn{border:none;background:var(--tp);color:var(--t);width:28px;height:28px;border-radius:50%;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;}
#searchResults{overflow-y:auto;padding:8px;}
.search-result{display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;text-decoration:none;color:inherit;transition:background .15s;}
.search-result:hover{background:var(--tp);}
.search-result img{width:48px;height:48px;border-radius:10px;object-fit:cover;flex-shrink:0;background:#eee;}
.search-result-name{font-family:'Space Grotesk',sans-serif;font-size:13.5px;font-weight:700;color:var(--dark);}
.search-result-cat{font-family:'Nunito',sans-serif;font-size:11.5px;color:var(--muted);}
.search-empty{padding:30px 20px;text-align:center;font-family:'Nunito',sans-serif;color:var(--muted);font-size:13.5px;}
body.dark .search-box{background:#0e1d19;}
body.dark #searchInput{color:#e2f0ed;}
body.dark .search-result:hover{background:rgba(255,255,255,.06);}
body.dark .search-result-name{color:#e2f0ed;}
body.dark .search-input-row{border-color:rgba(255,255,255,.08);}

/* ---------- MULTI-PRODUCT ENQUIRY LIST ---------- */
.card{position:relative;}
.card-select-btn{position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.92);border:1.5px solid rgba(255,255,255,.9);color:var(--t);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;box-shadow:0 3px 10px rgba(0,0,0,.25);transition:background .2s,transform .2s;}
.card-select-btn:hover{transform:scale(1.1);}
.card-select-btn.selected{background:var(--t);color:#fff;}
.card-select-btn svg{pointer-events:none;}
.card-select-btn .icon-check{display:none;}
.card-select-btn.selected .icon-plus{display:none;}
.card-select-btn.selected .icon-check{display:block;}

.enquiry-fab{position:fixed;bottom:174px;right:26px;z-index:9998;width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--goldd));border:none;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:0 6px 22px rgba(200,151,58,.45);transition:transform .2s;}
.enquiry-fab:hover{transform:scale(1.08);}
.enq-badge{position:absolute;top:-4px;right:-4px;background:var(--t);color:#fff;font-family:'Space Grotesk',sans-serif;font-size:10.5px;font-weight:700;width:19px;height:19px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #fff;}
#enquiryPanel{display:none;position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:20px;}
.enquiry-panel-inner{background:#fff;border-radius:22px;padding:26px 24px;width:100%;max-width:420px;max-height:80vh;display:flex;flex-direction:column;position:relative;box-shadow:0 30px 90px rgba(0,0,0,.4);}
.enquiry-panel-inner h3{font-family:'Space Grotesk',sans-serif;font-size:19px;font-weight:700;color:var(--dark);margin-bottom:14px;}
#enquiryPanelBody{overflow-y:auto;flex:1;margin-bottom:6px;}
.enq-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--tp);border-radius:12px;margin-bottom:8px;}
.enq-item span{font-family:'Nunito',sans-serif;font-size:13px;font-weight:600;color:var(--dark);}
.enq-item button{border:none;background:rgba(0,0,0,.08);color:var(--dark);width:22px;height:22px;border-radius:50%;cursor:pointer;flex-shrink:0;font-size:13px;line-height:1;}
.enq-empty{padding:24px 10px;text-align:center;color:var(--muted);font-family:'Nunito',sans-serif;font-size:13.5px;}
body.dark .enquiry-panel-inner{background:#0e1d19;}
body.dark .enquiry-panel-inner h3{color:#e2f0ed;}
body.dark .enq-item{background:rgba(255,255,255,.06);}
body.dark .enq-item span{color:#e2f0ed;}

@media (max-width:640px){
  .search-btn{width:36px;height:36px;}
}

/* ---------- CATEGORY PAGE ---------- */
.breadcrumb + main{padding-top:18px;}
.cat-filter-row{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:22px;padding-bottom:2px;}
.cat-filter-row::-webkit-scrollbar{display:none;}
.cat-filter-row .sub-tab{flex-shrink:0;display:inline-block;}
.card[data-sub="electric"] .cimg{background:#fff;}
.card[data-sub="electric"] .cimg img{object-fit:contain;padding:10px;}
.cat-intro{font-family:'Nunito',sans-serif;font-size:14.5px;line-height:1.8;color:var(--muted);max-width:760px;margin-bottom:26px;}
body.dark .cat-intro{color:#a9c4bd;}

/* ---------- PRODUCT DETAIL PAGE ---------- */

/* ---------- BREADCRUMB ---------- */
.breadcrumb{max-width:1180px;margin:0 auto;padding:18px 52px 0;display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-family:'Space Grotesk',sans-serif;font-size:12px;color:var(--muted);}
.breadcrumb a{color:var(--t);text-decoration:none;font-weight:600;}
.breadcrumb a:hover{text-decoration:underline;}
.breadcrumb .bc-sep{color:var(--border);}
.breadcrumb .bc-current{color:var(--dark);font-weight:600;}
body.dark .breadcrumb{color:#8fa8a2;}
body.dark .breadcrumb .bc-current{color:#e2f0ed;}

/* ---------- PRODUCT PAGE (landscape hero, single-column, professional layout) ---------- */
.pd-page{max-width:980px;margin:0 auto;}
.pd-hero{width:100%;aspect-ratio:16/9;background:#0d1f1c;position:relative;overflow:hidden;border-radius:20px;box-shadow:var(--shadow-md);}
.pd-hero img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;display:block;}
.pd-hero[data-sub="electric"]{background:#fff;}
.pd-hero[data-sub="electric"] img{object-fit:contain;padding:24px;}
body.dark .pd-hero[data-sub="electric"]{background:#f4f4f4;}
.pd-track{display:flex;height:100%;transition:transform .5s cubic-bezier(.4,0,.2,1);}
.pd-track .pd-slide{min-width:100%;height:100%;flex-shrink:0;}
.pd-track .pd-slide img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;display:block;}
.pd-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:rgba(0,0,0,.45);border:none;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);z-index:5;line-height:1;}
.pd-arrow.prev{left:14px;}.pd-arrow.next{right:14px;}
.pd-gal-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:5;}
.pd-gal-dots .pd-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.45);border:none;cursor:pointer;padding:0;transition:background .2s,transform .2s;}
.pd-gal-dots .pd-dot.active{background:#fff;transform:scale(1.3);}

.pd-info{margin-top:28px;}
.pd-pill{display:inline-block;background:var(--tp);color:var(--t);font-family:'Space Grotesk',sans-serif;font-size:10.5px;font-weight:700;padding:5px 13px;border-radius:20px;letter-spacing:.6px;text-transform:uppercase;margin-bottom:12px;}
.pd-name{font-family:'Space Grotesk',sans-serif;font-size:clamp(24px,3.4vw,32px);font-weight:700;color:var(--dark);line-height:1.25;margin-bottom:8px;}
.pd-price{font-family:'Times New Roman',Times,serif;font-size:32px;font-weight:700;color:var(--t);margin-bottom:16px;}
.pd-price span{font-family:'Nunito',sans-serif;font-size:13px;color:var(--muted);font-weight:500;}
.pd-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px;}
.pd-actions{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 26px;}
.pd-actions .btn-wa,.pd-actions .btn-quote{flex:1;min-width:200px;justify-content:center;}
.btn-quote{background:linear-gradient(135deg,var(--t),var(--tm));color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:13px;padding:11px 20px;border:none;border-radius:13px;cursor:pointer;display:flex;align-items:center;gap:8px;box-shadow:0 4px 14px rgba(13,92,82,.3);transition:opacity .2s;white-space:nowrap;}
.btn-quote:hover{opacity:.88;}
.pd-desc{background:#fafcfb;border:1px solid var(--border);border-radius:16px;padding:20px 22px;margin-bottom:8px;}
.pd-desc p{font-family:'Nunito',sans-serif;font-size:14.5px;line-height:1.85;color:var(--muted);margin-bottom:12px;}
.pd-desc p:last-child{margin-bottom:0;}

.pd-section{margin-top:34px;}
.pd-section h3{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:700;color:var(--dark);margin-bottom:14px;padding-bottom:9px;border-bottom:2px solid var(--tp);display:flex;align-items:center;gap:9px;}
.pd-benefits{list-style:none;display:grid;grid-template-columns:1fr;gap:10px;}
.pd-benefits li{display:flex;align-items:flex-start;gap:10px;font-family:'Nunito',sans-serif;font-size:14px;color:var(--dark);line-height:1.5;}
.pd-benefits .bi{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--tp);color:var(--t);display:flex;align-items:center;justify-content:center;font-size:11px;margin-top:1px;}
.spec-table{width:100%;border-collapse:collapse;font-family:'Nunito',sans-serif;font-size:13.5px;}
.spec-table tr{border-bottom:1px solid var(--border);}
.spec-table tr:nth-child(even){background:#fafcfb;}
.spec-table tr:last-child{border-bottom:none;}
.spec-table th{text-align:left;padding:11px 14px;color:var(--muted);font-weight:600;width:42%;}
.spec-table td{padding:11px 14px;color:var(--dark);font-weight:600;}
.pd-unavailable-note{display:none;background:#fdf1e7;border:1px solid #f0c896;color:#9a5b12;padding:12px 16px;border-radius:12px;font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:600;margin-bottom:18px;align-items:center;gap:8px;}
.is-unavailable .pd-unavailable-note{display:flex;}
.is-unavailable .btn-enq,.is-unavailable .pd-actions .btn-wa,.is-unavailable .pd-actions .btn-quote{opacity:.5;pointer-events:none;}
.related-wrap{margin-top:52px;max-width:980px;margin-left:auto;margin-right:auto;}
.related-wrap .sh{margin-bottom:18px;}

@media (max-width:640px){
  .pd-hero{aspect-ratio:4/3;border-radius:16px;}
  .pd-actions .btn-wa,.pd-actions .btn-quote{min-width:100%;}
}

body.dark .pd-name{color:#e2f0ed;}
body.dark .pd-desc{background:#0d1f1c;border-color:rgba(255,255,255,.08);}
body.dark .pd-desc p{color:#a9c4bd;}
body.dark .pd-section h3{color:#e2f0ed;border-color:rgba(255,255,255,.08);}
body.dark .pd-benefits li{color:#dcece7;}
body.dark .spec-table tr{border-color:rgba(255,255,255,.08);}
body.dark .spec-table tr:nth-child(even){background:rgba(255,255,255,.02);}
body.dark .spec-table td{color:#e2f0ed;}
body.dark .pd-unavailable-note{background:#2a1f10;border-color:#5c431c;color:#e8b56f;}

/* ---------- QUOTE FAB (class version, was inline style="" in V16) ---------- */
.quote-fab{position:fixed;bottom:100px;right:26px;z-index:9998;width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,#0d5c52,#157a6d);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 22px rgba(13,92,82,.45);transition:transform .2s,opacity .3s;}
.quote-fab:hover{transform:scale(1.1);}

/* ---------- BACK-TO-TOP / SECTION SPACING HELPERS ---------- */
.page-hero-spacer{height:6px;}

/* ---------- RESPONSIVE ---------- */
@media (max-width:860px){
  .pd-grid{grid-template-columns:1fr;gap:26px;}
  .breadcrumb{padding:14px 20px 0;}
}

/* ---------- DARK MODE — new components ---------- */
body.dark .pd-name{color:#e2f0ed;}
body.dark .pd-desc p{color:#a9c4bd;}
body.dark .pd-section h3{color:#e2f0ed;border-color:rgba(255,255,255,.08);}
body.dark .pd-benefits li{color:#dcece7;}
body.dark .spec-table tr{border-color:rgba(255,255,255,.08);}
body.dark .spec-table td{color:#e2f0ed;}
body.dark .pd-gallery{background:#081512;}
body.dark .pd-unavailable-note{background:#2a1f10;border-color:#5c431c;color:#e8b56f;}


/* V5 QUOTE BUTTON — remove link underline */
.btn-quote,
.btn-quote:link,
.btn-quote:visited,
.btn-quote:hover,
.btn-quote:active,
a.btn-quote {
  text-decoration: none !important;
}

/* V6 PRICE SYNC FALLBACK */
.price-unavailable{
  font-family:'Nunito',sans-serif;
  font-size:14px;
  font-weight:600;
  color:var(--gold);
}

/* V6 MOBILE SAFETY: preserve existing design while preventing horizontal overflow */
html,body{overflow-x:clip;}
@media (max-width:600px){
  .btn-quote,.btn-enq{min-height:52px;}
  .pd-price{align-items:baseline !important;}
}


/* V6.1 PRODUCT DETAIL PRICE / UNIT — FINAL */
.pd-price{
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:nowrap !important;
  column-gap:10px !important;
  white-space:nowrap !important;
}
.pd-price > span:not(.price-skeleton){
  display:inline-block !important;
  position:static !important;
  top:auto !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
  vertical-align:baseline !important;
  font-size:13px !important;
  font-weight:500 !important;
}
.pd-price .price-skeleton{
  margin:0 !important;
  padding:0 !important;
}


/* V6.2 PRICE / UNIT ALIGNMENT — LISTING + PRODUCT PAGES */
.cprice{
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:nowrap !important;
  column-gap:10px !important;
  white-space:nowrap !important;
  padding-top:6px !important;
}
.cprice > span:not(.price-skeleton){
  display:inline-block !important;
  position:static !important;
  top:auto !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
  vertical-align:baseline !important;
  font-family:'Nunito',sans-serif !important;
  font-size:12px !important;
  font-weight:500 !important;
  color:var(--muted) !important;
}
.pd-price{
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:nowrap !important;
  column-gap:10px !important;
  white-space:nowrap !important;
}
.pd-price > span:not(.price-skeleton){
  display:inline-block !important;
  position:static !important;
  top:auto !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
  vertical-align:baseline !important;
  font-family:'Nunito',sans-serif !important;
  font-size:13px !important;
  font-weight:500 !important;
}





/* ================================================================
   BVK AGRO SERVICES — V7 UI UPGRADE
   Design-only polish; existing content, prices, forms and imagery preserved.
   ================================================================ */

/* --- Reliable sticky navigation --- */
html, body{
  overflow-x:clip;
}
.main-nav{
  position:sticky !important;
  top:0 !important;
  z-index:1000 !important;
  isolation:isolate;
  box-shadow:0 2px 14px rgba(4,26,23,.10);
  border-bottom-color:rgba(13,92,82,.16);
}
.main-nav.nav-scrolled{
  box-shadow:0 8px 28px rgba(4,26,23,.22);
  background:rgba(6,31,27,.98);
}
.main-nav::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.035),transparent 28%,transparent 72%,rgba(255,255,255,.025));
}
.tab-row{
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
}
.tab-row::-webkit-scrollbar{display:none;}
.main-tab{
  transition:color .2s ease,background .2s ease,transform .2s ease;
  -webkit-tap-highlight-color:transparent;
}
.main-tab:active{transform:scale(.97);}

/* --- Product cards: cleaner depth and interaction --- */
.card{
  border-radius:22px;
  box-shadow:0 8px 28px rgba(8,54,47,.08);
  border-color:rgba(13,92,82,.16);
}
@media (hover:hover){
  .card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 38px rgba(8,54,47,.13);
  }
}
.cimg img{
  transition:transform .45s ease,filter .35s ease;
}
@media (hover:hover){
  .card:hover .cimg img{
    transform:scale(1.025);
  }
}

/* --- Price row: stable alignment on every product card --- */
.cprice,
.pd-price{
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  gap:10px !important;
}
.cprice > span:not(.price-skeleton),
.pd-price > span:not(.price-skeleton){
  position:static !important;
  top:auto !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
  vertical-align:baseline !important;
}
.cprice > span:not(.price-skeleton){
  font-size:12px !important;
  font-weight:500 !important;
}
.pd-price > span:not(.price-skeleton){
  font-size:13px !important;
  font-weight:500 !important;
}

/* --- Buttons: stronger CTA hierarchy --- */
.btn-wa,.btn-quote{
  min-height:48px;
  border-radius:14px;
  transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;
}
@media (hover:hover){
  .btn-wa:hover,.btn-quote:hover{
    transform:translateY(-2px);
  }
}
.btn-quote,
.btn-quote:hover,
.btn-quote:focus,
.btn-quote:active{
  text-decoration:none !important;
}

/* --- Section headings --- */
.sh{
  position:relative;
  padding-bottom:2px;
}
.sh h3,.sec-head{
  letter-spacing:-.02em;
}
.sh::after{
  content:"";
  flex:1;
  height:1px;
  background:linear-gradient(90deg,rgba(13,148,136,.24),transparent);
}

/* --- Product/detail page polish --- */
.pd-main{
  scroll-margin-top:70px;
}
.pd-info{
  border-radius:22px;
}
.pd-hero{
  border-radius:24px;
  box-shadow:0 10px 32px rgba(8,54,47,.10);
}
.pd-chips .chip{
  border:1px solid rgba(13,92,82,.08);
}

/* --- Form/search/lightbox focus accessibility --- */
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible{
  outline:3px solid rgba(31,168,152,.42);
  outline-offset:3px;
}

/* --- Floating controls: less intrusive and more consistent --- */
.wa-float,.quote-fab,#dmBtn{
  transition:transform .2s ease,opacity .2s ease,box-shadow .2s ease;
}
@media (hover:hover){
  .wa-float:hover,.quote-fab:hover,#dmBtn:hover{
    transform:translateY(-2px);
  }
}

/* --- Mobile: preserve touch targets and improve card rhythm --- */
@media (max-width:600px){
  .main-nav{
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
  }
  .tab-row{
    padding-left:10px;
    padding-right:10px;
  }
  .main-tab{
    min-width:max-content;
    margin-left:8px;
    margin-right:8px;
  }
  .card{
    border-radius:20px;
  }
  .cprice{gap:10px !important;}
  .pd-price{gap:10px !important;}
}

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


/* ================================================================
   V7.1 GOOGLE FORM FLOATING WINDOW + ALWAYS-TOP DARK MODE
   ================================================================ */
.dm-btn{
  z-index:12000 !important;
}
/* Dark mode is an always-available control; it is never hidden by footer logic. */

body.bvk-form-open{overflow:hidden;}
.bvk-form-modal{
  position:fixed;
  inset:0;
  z-index:11000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.bvk-form-modal.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.bvk-form-backdrop{
  position:absolute;
  inset:0;
  background:rgba(3,18,16,.70);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.bvk-form-window{
  position:relative;
  z-index:1;
  width:min(760px,100%);
  height:min(88vh,820px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(13,92,82,.14);
  border-radius:22px;
  box-shadow:0 28px 90px rgba(0,0,0,.34);
  transform:translateY(18px) scale(.98);
  transition:transform .25s ease;
}
.bvk-form-modal.open .bvk-form-window{transform:translateY(0) scale(1);}
.bvk-form-head{
  flex:0 0 auto;
  min-height:72px;
  padding:15px 18px 14px 20px;
  display:flex;
  align-items:center;
  gap:14px;
  background:linear-gradient(135deg,var(--t),var(--tl));
}
.bvk-form-head h3{
  margin:0 0 2px;
  color:#fff;
  font-family:'Space Grotesk',sans-serif;
  font-size:18px;
  font-weight:700;
}
.bvk-form-head p{
  margin:0;
  color:rgba(255,255,255,.78);
  font-family:'Nunito',sans-serif;
  font-size:12px;
}
.bvk-form-close{
  margin-left:auto;
  flex:0 0 auto;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.bvk-form-close:hover{background:rgba(255,255,255,.22);}
.bvk-form-frame-wrap{
  min-height:0;
  flex:1 1 auto;
  background:#fff;
}
.bvk-form-frame-wrap iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
  background:#fff;
}
body.dark .bvk-form-window{
  background:#132820;
  border-color:rgba(255,255,255,.08);
}
@media(max-width:600px){
  .bvk-form-modal{padding:8px;align-items:stretch;}
  .bvk-form-window{
    width:100%;
    height:calc(100vh - 16px);
    max-height:none;
    border-radius:18px;
  }
  .bvk-form-head{min-height:66px;padding:12px 12px 12px 16px;}
  .bvk-form-head h3{font-size:16px;}
  .bvk-form-head p{font-size:11px;}
  .bvk-form-close{width:40px;height:40px;font-size:26px;}
}
@media(prefers-reduced-motion:reduce){
  .bvk-form-modal,.bvk-form-window{transition:none;}
}


/* ================================================================
   BVK AGRO SERVICES — V7.2 UI + CONVERSION + PERFORMANCE POLISH
   ================================================================ */

/* 1. Dark mode control always above sticky nav and modal */
.dm-btn{
  z-index:12000 !important;
  pointer-events:auto !important;
}
.bvk-form-modal{z-index:11000 !important;}

/* 2. Quote modal: prevent background scroll while open */
body.bvk-form-open{
  overflow:hidden !important;
  overscroll-behavior:contain;
}

/* 3. Product CTA hierarchy */
.pd-actions{
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:10px;
}
.pd-actions .btn-wa,
.pd-actions .btn-quote{
  min-height:50px;
  justify-content:center;
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:700;
}
.pd-actions .btn-wa{
  box-shadow:0 8px 22px rgba(13,92,82,.18);
}
.pd-actions .btn-quote{
  box-shadow:0 8px 22px rgba(13,92,82,.12);
}

/* 4. Product card CTA polish */
.cact .btn-enq{
  min-height:44px;
  border-radius:13px;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
@media(hover:hover) and (pointer:fine){
  .cact .btn-enq:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 16px rgba(13,92,82,.14);
  }
}

/* 5. Product information hierarchy */
.pd-name{
  letter-spacing:-.025em;
  text-wrap:balance;
}
.pd-desc{
  max-width:72ch;
}
.pd-benefits li{
  transition:transform .18s ease;
}
@media(hover:hover) and (pointer:fine){
  .pd-benefits li:hover{transform:translateX(2px);}
}

/* 6. Images: reduce layout shift and improve perceived loading */
img{
  max-width:100%;
}
.cimg img,.pd-hero img{
  content-visibility:auto;
}
img[loading="lazy"]{
  background:linear-gradient(90deg,#f2f5f4,#fafcfb,#f2f5f4);
}

/* 7. Better touch targets */
.search-btn,.dm-btn,.quote-fab,.wa-float,#dmBtn{
  -webkit-tap-highlight-color:transparent;
}
@media(max-width:600px){
  .search-btn{min-width:44px;min-height:44px;}
  .pd-actions{
    grid-template-columns:1fr;
  }
  .pd-actions .btn-wa,.pd-actions .btn-quote{
    min-height:52px;
  }
}

/* 8. Cleaner floating controls spacing on narrow screens */
@media(max-width:600px){
  .quote-fab{bottom:86px !important;}
  .wa-float{bottom:20px !important;}
  .dm-btn{right:0;top:50%;}
}

/* 9. Conversion reassurance near CTA without changing content */
.pd-actions::after{
  content:"Quick enquiry • No obligation";
  grid-column:1 / -1;
  text-align:center;
  font-family:'Nunito',sans-serif;
  font-size:10px;
  font-weight:600;
  color:var(--muted);
  letter-spacing:.15px;
  margin-top:-2px;
}

/* 10. More refined form window */
.bvk-form-window{
  border-radius:24px;
}
.bvk-form-head{
  box-shadow:0 2px 14px rgba(0,0,0,.10);
}
@media(max-width:600px){
  .bvk-form-modal{padding:0;}
  .bvk-form-window{
    width:100%;
    height:100dvh;
    border-radius:0;
    border-left:0;
    border-right:0;
  }
}

/* 11. Respect reduced motion */
@media(prefers-reduced-motion:reduce){
  .card,.cimg img,.cact .btn-enq,.pd-benefits li{
    transition:none !important;
  }
}


/* V7.2.1 — GOOGLE FORM FLOATING WINDOW HARDENING */
.bvk-form-modal{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  z-index:11000 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.bvk-form-modal.open{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.bvk-form-window{
  position:relative !important;
  z-index:11001 !important;
  width:min(760px,calc(100vw - 32px)) !important;
  height:min(88dvh,820px) !important;
  max-height:calc(100dvh - 32px) !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
.bvk-form-frame-wrap{
  min-height:0 !important;
  flex:1 1 auto !important;
  overflow:hidden !important;
}
.bvk-form-frame-wrap iframe{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  border:0 !important;
}
@media(max-width:600px){
  .bvk-form-modal{
    padding:0 !important;
    align-items:stretch !important;
  }
  .bvk-form-window{
    width:100vw !important;
    height:100dvh !important;
    max-height:none !important;
    border-radius:0 !important;
  }
}

/* V7.2.2 — ROBUST FLOATING GOOGLE FORM */
html.bvk-form-open,
body.bvk-form-open{
  overflow:hidden !important;
  overscroll-behavior:none !important;
  touch-action:none !important;
}
#bvkGoogleFormModal.bvk-form-modal{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:0 !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  margin:0 !important;
  padding:16px !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  z-index:2147483000 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
#bvkGoogleFormModal.bvk-form-modal.open{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
#bvkGoogleFormModal .bvk-form-backdrop{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  background:rgba(2,15,13,.72) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
}
#bvkGoogleFormModal .bvk-form-window{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  flex-direction:column !important;
  width:min(760px,calc(100vw - 32px)) !important;
  height:min(88dvh,820px) !important;
  max-height:calc(100dvh - 32px) !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  background:#fff !important;
  border-radius:22px !important;
  border:1px solid rgba(13,92,82,.18) !important;
  box-shadow:0 30px 100px rgba(0,0,0,.42) !important;
}
#bvkGoogleFormModal .bvk-form-frame-wrap{
  position:relative !important;
  flex:1 1 auto !important;
  min-height:0 !important;
  width:100% !important;
  overflow:hidden !important;
  background:#fff !important;
}
#bvkGoogleFormModal #bvkGoogleFormFrame{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  border:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:#fff !important;
}
#bvkGoogleFormModal .bvk-form-close{
  position:relative !important;
  z-index:2 !important;
}
@media(max-width:600px){
  #bvkGoogleFormModal.bvk-form-modal{
    padding:0 !important;
    align-items:stretch !important;
  }
  #bvkGoogleFormModal .bvk-form-window{
    width:100vw !important;
    height:100dvh !important;
    max-height:none !important;
    border-radius:0 !important;
    border-left:0 !important;
    border-right:0 !important;
  }
}

/* V7.2.3 — FINAL FORM MODAL SELECTOR + CTA GAP */
#bvkGoogleFormModal{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  z-index:2147483000 !important;
  box-sizing:border-box !important;
}
#bvkGoogleFormModal.open{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
#bvkGoogleFormModal > .bvk-form-backdrop{
  position:absolute !important;
  inset:0 !important;
}
#bvkGoogleFormModal > .bvk-form-window{
  position:relative !important;
  z-index:2 !important;
  width:min(760px,calc(100vw - 32px)) !important;
  height:min(88dvh,820px) !important;
  max-height:calc(100dvh - 32px) !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  background:#fff !important;
  border-radius:22px !important;
}
.pd-actions{
  gap:16px !important;
}
@media(max-width:600px){
  .pd-actions{gap:14px !important;}
}

/* V7.2.4 — PRODUCT CTA SPACING */
.pd-actions{
  display:flex !important;
  align-items:stretch !important;
  gap:18px !important;
}
.pd-actions > .btn-wa,
.pd-actions > .btn-quote{
  flex:1 1 0 !important;
  margin:0 !important;
}
@media(max-width:600px){
  .pd-actions{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
  }
}

/* V7.2.5 CTA GAP */
.pd-actions{gap:18px !important;}
@media(max-width:600px){.pd-actions{gap:14px !important;}}


/* ================================================================
   V7.3 — JS-INDEPENDENT GOOGLE FORM FLOATING WINDOW
   The :target mechanism makes Quote work even if JavaScript is delayed,
   blocked, or interrupted by another script.
   ================================================================ */
html:has(#bvkQuoteModal:target),
body:has(#bvkQuoteModal:target){
  overflow:hidden !important;
}
.bvk-static-quote-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483640 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:16px !important;
  box-sizing:border-box !important;
  background:rgba(2,15,13,.74) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.bvk-static-quote-modal:target{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.bvk-static-quote-window{
  position:relative !important;
  width:min(760px,calc(100vw - 32px)) !important;
  height:min(88dvh,820px) !important;
  max-height:calc(100dvh - 32px) !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  background:#fff !important;
  border-radius:24px !important;
  border:1px solid rgba(13,92,82,.18) !important;
  box-shadow:0 30px 100px rgba(0,0,0,.44) !important;
}
.bvk-static-quote-head{
  flex:0 0 auto !important;
  min-height:72px !important;
  padding:14px 16px 13px 20px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  background:linear-gradient(135deg,var(--t),var(--tl)) !important;
}
.bvk-static-quote-head h3{
  margin:0 0 2px !important;
  color:#fff !important;
  font-size:18px !important;
}
.bvk-static-quote-head p{
  margin:0 !important;
  color:rgba(255,255,255,.8) !important;
  font-size:12px !important;
}
.bvk-static-quote-close{
  margin-left:auto !important;
  flex:0 0 auto !important;
  width:42px !important;
  height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  text-decoration:none !important;
  color:#fff !important;
  background:rgba(255,255,255,.14) !important;
  border:1px solid rgba(255,255,255,.25) !important;
  font-size:28px !important;
  line-height:1 !important;
}
.bvk-static-quote-body{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}
.bvk-static-quote-body iframe{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  border:0 !important;
}
@media(max-width:600px){
  .bvk-static-quote-modal{
    padding:0 !important;
    align-items:stretch !important;
  }
  .bvk-static-quote-window{
    width:100vw !important;
    height:100dvh !important;
    max-height:none !important;
    border-radius:0 !important;
    border:0 !important;
  }
  .bvk-static-quote-head{
    min-height:64px !important;
    padding:11px 12px 11px 16px !important;
  }
  .bvk-static-quote-head h3{font-size:16px !important;}
  .bvk-static-quote-head p{font-size:11px !important;}
  .bvk-static-quote-close{width:40px !important;height:40px !important;}
}


/* ================================================================
   BVK PROJECT CTA — premium glass bubble + live micro-interactions
   Replaces the plain floating quote icon while keeping the existing
   Bigin enquiry modal and WhatsApp action intact.
   ================================================================ */
/* ================================================================
   BVK PROJECT CTA — Style 8: Alternate Background (Soft Peach)
   One global enquiry CTA per page. The promotional bubble appears
   for ~3 seconds after load; the compact chat circle remains available.
   ================================================================ */
.bvk-contact-float{
  position:fixed;
  right:26px;
  bottom:100px;
  z-index:9998;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  isolation:isolate;
  pointer-events:none;
}
.bvk-contact-hint{
  position:relative;
  width:min(330px,calc(100vw - 118px));
  min-height:66px;
  padding:11px 50px 11px 15px;
  display:flex;
  align-items:center;
  gap:12px;
  color:#10221f;
  text-decoration:none;
  border:1.5px solid rgba(239,122,31,.18);
  border-radius:34px;
  background:linear-gradient(135deg,#fff0e2 0%,#ffd9c0 100%);
  box-shadow:0 12px 32px rgba(70,42,22,.16),0 0 22px rgba(239,122,31,.10),inset 0 1px 0 rgba(255,255,255,.9);
  transform:translateX(8px);
  cursor:pointer;
  pointer-events:auto;
  transition:transform .2s ease,box-shadow .2s ease;
}
.bvk-contact-hint::after{
  content:"";
  position:absolute;
  right:-18px;
  top:50%;
  width:0;height:0;
  transform:translateY(-50%);
  border-top:11px solid transparent;
  border-bottom:11px solid transparent;
  border-left:19px solid #ffd9c0;
  filter:drop-shadow(3px 0 4px rgba(239,122,31,.12));
}
.bvk-contact-hint:hover{
  transform:translateX(5px);
  box-shadow:0 15px 36px rgba(70,42,22,.20),0 0 26px rgba(239,122,31,.14),inset 0 1px 0 rgba(255,255,255,.95);
}
.bvk-contact-icon{
  flex:0 0 38px;
  width:38px;height:38px;
  display:grid;place-items:center;
  color:#ef7a1f;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.30);
}
.bvk-contact-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
  line-height:1.12;
}
.bvk-contact-copy strong{
  font-family:'Space Grotesk',sans-serif;
  font-size:14px;
  font-weight:750;
  color:#10221f;
  white-space:nowrap;
}
.bvk-contact-copy small{
  font-family:'Nunito',sans-serif;
  font-size:11.5px;
  color:#53635f;
  white-space:nowrap;
}
.bvk-contact-arrow{
  position:absolute;
  right:13px;
  width:31px;height:31px;
  display:grid;place-items:center;
  border-radius:50%;
  color:#ef7a1f;
  font-size:20px;
  font-weight:600;
  background:rgba(255,255,255,.42);
}
.bvk-contact-float .quote-fab{
  position:relative;
  right:auto;bottom:auto;
  flex:0 0 62px;
  width:62px;height:62px;
  margin-left:3px;
  border-radius:50%;
  background:linear-gradient(145deg,#16786d,#0d5c52);
  border:2px solid rgba(255,255,255,.18);
  box-shadow:0 8px 26px rgba(13,92,82,.34),0 0 0 7px rgba(13,92,82,.06);
  animation:bvkFabIn .65s cubic-bezier(.22,1,.36,1) .12s both,bvkFabPulse 3.2s ease-in-out 1s infinite;
  pointer-events:auto;
  text-decoration:none;
}
.bvk-contact-float .quote-fab::before,
.bvk-contact-float .quote-fab::after{
  content:"";
  position:absolute;
  inset:-8px;
  border:1px solid rgba(239,122,31,.45);
  border-radius:50%;
  animation:bvkRing 2.8s ease-out 1.2s infinite;
  pointer-events:none;
}
.bvk-contact-float .quote-fab::after{
  inset:-16px;
  border-color:rgba(239,122,31,.20);
  animation-delay:1.8s;
}
.bvk-contact-float .quote-fab:hover{transform:scale(1.06);}
.bvk-contact-float .quote-fab svg{position:relative;z-index:2;filter:drop-shadow(0 0 4px rgba(255,255,255,.20));}
@keyframes bvkHintIn{
  from{opacity:0;transform:translateX(42px) scale(.96)}
  to{opacity:1;transform:translateX(8px) scale(1)}
}
@keyframes bvkFabIn{
  from{opacity:0;transform:scale(.65)}
  to{opacity:1;transform:scale(1)}
}
@keyframes bvkFabPulse{
  0%,100%{box-shadow:0 8px 26px rgba(13,92,82,.34),0 0 0 7px rgba(13,92,82,.06)}
  50%{box-shadow:0 10px 31px rgba(13,92,82,.38),0 0 0 9px rgba(13,92,82,.09)}
}
@keyframes bvkRing{
  0%{opacity:.75;transform:scale(.86)}
  70%,100%{opacity:0;transform:scale(1.18)}
}
@keyframes bvkArrowNudge{
  0%,70%,100%{transform:translateX(0)}
  76%{transform:translateX(3px)}
  82%{transform:translateX(0)}
}
@media(max-width:600px){
  .bvk-contact-float{
    right:14px;
    bottom:92px;
  }
  .bvk-contact-hint{
    width:min(276px,calc(100vw - 96px));
    min-height:58px;
    padding:9px 43px 9px 11px;
    gap:8px;
    border-radius:31px;
    transform:translateX(5px);
  }
  .bvk-contact-hint::after{
    right:-14px;
    border-top-width:9px;
    border-bottom-width:9px;
    border-left-width:16px;
  }
  .bvk-contact-hint:hover{transform:translateX(5px);}
  .bvk-contact-icon{flex-basis:31px;width:31px;height:31px;}
  .bvk-contact-icon svg{width:18px;height:18px;}
  .bvk-contact-copy strong{font-size:11.5px;}
  .bvk-contact-copy small{font-size:10px;}
  .bvk-contact-arrow{right:9px;width:27px;height:27px;font-size:17px;}
  .bvk-contact-float .quote-fab{
    flex-basis:54px;
    width:54px;height:54px;
    margin-left:2px;
  }
  .bvk-contact-float .quote-fab svg{width:20px;height:20px;}
}
@media(max-width:390px){
  .bvk-contact-float{right:10px;}
  .bvk-contact-hint{width:230px;}
  .bvk-contact-copy strong{font-size:11px;}
  .bvk-contact-copy small{font-size:9.5px;}
  .bvk-contact-float .quote-fab{flex-basis:50px;width:50px;height:50px;}
}
@media(prefers-reduced-motion:reduce){
  .bvk-contact-hint,.bvk-contact-float .quote-fab,.bvk-contact-arrow,
  .bvk-contact-float .quote-fab::before,.bvk-contact-float .quote-fab::after{
    animation:none!important;
  }
}

/* Timed promotional bubble; the enquiry/chat circle stays available. */
.bvk-contact-float.bvk-cta-show .bvk-contact-hint{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  animation:bvkHintIn .75s cubic-bezier(.22,1,.36,1) both;
}
.bvk-contact-float.bvk-cta-show .bvk-contact-arrow{
  animation:bvkArrowNudge 1.9s ease-in-out .45s infinite;
}
.bvk-contact-float.bvk-cta-hide .bvk-contact-hint{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(42px) scale(.96);
  transition:opacity .45s ease,transform .45s cubic-bezier(.4,0,.2,1),visibility 0s linear .45s;
}
.bvk-contact-float.bvk-cta-hide .quote-fab{
  opacity:1;
  visibility:visible;
}
@media(max-width:600px){
  .bvk-contact-float.bvk-cta-hide .bvk-contact-hint{
    transform:translateX(42px) scale(.96);
  }
}


/* V8.1 — Product page desktop width + CTA reassurance alignment */
.pd-page{max-width:1180px !important;width:100%;}
.pd-actions{display:flex !important;flex-wrap:wrap !important;align-items:stretch !important;gap:18px !important;}
.pd-actions > .btn-wa,.pd-actions > .btn-quote{flex:1 1 0 !important;min-width:0 !important;}
.pd-actions::after{flex:0 0 100% !important;width:100% !important;display:block !important;box-sizing:border-box !important;text-align:center !important;margin-top:-2px !important;}
@media(max-width:600px){
  .pd-page{width:100% !important;}
  .pd-actions{flex-direction:column !important;gap:14px !important;}
  .pd-actions > .btn-wa,.pd-actions > .btn-quote{flex:0 0 auto !important;width:100% !important;min-width:100% !important;}
  .pd-actions::after{flex:0 0 auto !important;width:100% !important;}
}



/* ================================================================
   FINAL — Style 8 CTA timing
   Hidden on first paint, reveals after 3 seconds, remains visible
   for 3 seconds, then collapses to the enquiry icon.
   ================================================================ */
.bvk-contact-float .bvk-contact-hint{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(42px) scale(.96);
  animation:none;
}
.bvk-contact-float.bvk-cta-show .bvk-contact-hint{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  animation:bvkHintIn .75s cubic-bezier(.22,1,.36,1) both;
}
.bvk-contact-float.bvk-cta-show .bvk-contact-arrow{
  animation:bvkArrowNudge 1.9s ease-in-out .45s infinite;
}
.bvk-contact-float.bvk-cta-hide .bvk-contact-hint{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(42px) scale(.96);
  transition:opacity .45s ease,transform .45s cubic-bezier(.4,0,.2,1),visibility 0s linear .45s;
}
@media(prefers-reduced-motion:reduce){
  .bvk-contact-float .bvk-contact-hint,
  .bvk-contact-float .quote-fab,
  .bvk-contact-float .bvk-contact-arrow{
    animation:none !important;
    transition:none !important;
  }
}

/* ================================================================
   V8.5 FINAL — Style 8 CTA geometry
   Mobile intentionally uses the SAME horizontal arrangement as desktop:
   [peach enquiry bubble]  [chat icon]
   WhatsApp remains a separate floating control below.
   ================================================================ */
.bvk-contact-float{
  right:26px !important;
  bottom:100px !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:0 !important;
  width:auto !important;
  max-width:calc(100vw - 52px) !important;
}
.bvk-contact-hint{
  transform:translateX(0) !important;
  flex:0 1 330px !important;
  width:330px !important;
  max-width:330px !important;
}
.bvk-contact-float .quote-fab{
  flex:0 0 62px !important;
  width:62px !important;
  height:62px !important;
  margin-left:30px !important;
}
.bvk-contact-hint::after{right:-18px !important;}

@media(max-width:600px){
  .bvk-contact-float{
    right:14px !important;
    bottom:92px !important;
    max-width:calc(100vw - 24px) !important;
  }
  .bvk-contact-hint{
    flex:0 1 auto !important;
    width:min(235px,calc(100vw - 100px)) !important;
    max-width:235px !important;
    min-height:54px !important;
    padding:8px 40px 8px 10px !important;
    gap:7px !important;
    border-radius:29px !important;
    transform:translateX(0) !important;
  }
  .bvk-contact-hint::after{
    right:-14px !important;
    border-top-width:9px !important;
    border-bottom-width:9px !important;
    border-left-width:15px !important;
  }
  .bvk-contact-icon{flex:0 0 30px !important;width:30px !important;height:30px !important;}
  .bvk-contact-icon svg{width:17px !important;height:17px !important;}
  .bvk-contact-copy strong{font-size:11.2px !important;}
  .bvk-contact-copy small{font-size:9.6px !important;}
  .bvk-contact-arrow{right:8px !important;width:26px !important;height:26px !important;font-size:16px !important;}
  .bvk-contact-float .quote-fab{
    flex:0 0 52px !important;
    width:52px !important;
    height:52px !important;
    margin-left:26px !important;
  }
  .bvk-contact-float .quote-fab svg{width:19px !important;height:19px !important;}
}
@media(max-width:340px){
  .bvk-contact-hint{width:calc(100vw - 100px) !important;}
  .bvk-contact-float .quote-fab{flex-basis:48px !important;width:48px !important;height:48px !important;margin-left:24px !important;}
  .bvk-contact-copy strong{font-size:10.6px !important;}
  .bvk-contact-copy small{font-size:9.1px !important;}
}


/* ================================================================
   V8.6 FINAL — MOBILE CTA GEOMETRY + FULL-WIDTH PRODUCT DESCRIPTION
   Keep the exact desktop relationship on mobile:
   [peach enquiry bubble]  [chat icon]
                              [WhatsApp]
   The bubble is deliberately compact so it cannot force the CTA
   controls out of alignment on narrow screens.
   ================================================================ */

.bvk-contact-float{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:0 !important;
}

@media (max-width:600px){
  .bvk-contact-float{
    right:14px !important;
    bottom:92px !important;
    width:auto !important;
    max-width:calc(100vw - 24px) !important;
    align-items:center !important;
  }

  /* Compact Style-8 bubble — same row as the enquiry/chat icon */
  .bvk-contact-hint{
    flex:0 0 195px !important;
    width:195px !important;
    max-width:195px !important;
    min-height:50px !important;
    height:50px !important;
    box-sizing:border-box !important;
    padding:7px 36px 7px 9px !important;
    gap:6px !important;
    border-radius:26px !important;
    transform:none !important;
    align-self:center !important;
  }

  .bvk-contact-hint::after{
    right:-13px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    border-top-width:8px !important;
    border-bottom-width:8px !important;
    border-left-width:14px !important;
  }

  .bvk-contact-icon{
    flex:0 0 28px !important;
    width:28px !important;
    height:28px !important;
  }

  .bvk-contact-icon svg{
    width:16px !important;
    height:16px !important;
  }

  .bvk-contact-copy{
    gap:2px !important;
  }

  .bvk-contact-copy strong{
    font-size:10.8px !important;
    line-height:1.1 !important;
  }

  .bvk-contact-copy small{
    font-size:9.2px !important;
    line-height:1.1 !important;
  }

  .bvk-contact-arrow{
    right:7px !important;
    width:24px !important;
    height:24px !important;
    font-size:15px !important;
  }

  /* Chat icon stays in the same row, with a deliberate desktop-like gap */
  .bvk-contact-float .quote-fab{
    flex:0 0 52px !important;
    width:52px !important;
    height:52px !important;
    margin-left:18px !important;
    align-self:center !important;
  }

  .bvk-contact-float .quote-fab svg{
    width:19px !important;
    height:19px !important;
  }

  /* WhatsApp remains independently below the chat icon */
  .wa-float{
    right:14px !important;
    bottom:20px !important;
    width:56px !important;
    height:56px !important;
  }

  .wa-float svg{
    width:27px !important;
    height:27px !important;
  }

  /* Product description uses the full mobile content width */
  .pd-desc{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
  }
}

@media (max-width:340px){
  .bvk-contact-hint{
    flex-basis:175px !important;
    width:175px !important;
    max-width:175px !important;
    min-height:48px !important;
    height:48px !important;
  }

  .bvk-contact-float .quote-fab{
    flex-basis:48px !important;
    width:48px !important;
    height:48px !important;
    margin-left:16px !important;
  }

  .bvk-contact-copy strong{font-size:10px !important;}
  .bvk-contact-copy small{font-size:8.7px !important;}
}

/* ================================================================
   V8.7 — FINAL MOBILE CTA ALIGNMENT
   Force the enquiry bubble and chat button onto the exact same
   horizontal center line. WhatsApp stays independently underneath.
   ================================================================ */
@media (max-width:600px){
  .bvk-contact-float{
    position:fixed !important;
    right:14px !important;
    bottom:92px !important;
    width:52px !important;
    height:52px !important;
    max-width:none !important;
    display:block !important;
    overflow:visible !important;
    z-index:9998 !important;
  }

  .bvk-contact-float .quote-fab{
    position:absolute !important;
    right:0 !important;
    top:0 !important;
    left:auto !important;
    margin:0 !important;
    width:52px !important;
    height:52px !important;
    flex:none !important;
  }

  .bvk-contact-hint{
    position:absolute !important;
    right:70px !important;
    top:50% !important;
    left:auto !important;
    margin:0 !important;
    width:195px !important;
    max-width:195px !important;
    min-height:50px !important;
    height:50px !important;
    box-sizing:border-box !important;
    transform:translateY(-50%) !important;
    animation:none !important;
  }

  .bvk-contact-float.bvk-cta-show .bvk-contact-hint{
    animation:bvkMobileHintIn .65s cubic-bezier(.22,1,.36,1) both !important;
  }

  .bvk-contact-float.bvk-cta-hide .bvk-contact-hint{
    transform:translate(42px,-50%) scale(.96) !important;
  }

  .bvk-contact-hint::after{
    right:-13px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
  }

  .wa-float{
    position:fixed !important;
    right:14px !important;
    bottom:20px !important;
    width:56px !important;
    height:56px !important;
    z-index:9999 !important;
  }
}

@keyframes bvkMobileHintIn{
  from{opacity:0;transform:translate(42px,-50%) scale(.96)}
  to{opacity:1;transform:translate(0,-50%) scale(1)}
}

@media (max-width:340px){
  .bvk-contact-float{
    width:48px !important;
    height:48px !important;
  }
  .bvk-contact-float .quote-fab{
    width:48px !important;
    height:48px !important;
  }
  .bvk-contact-hint{
    right:64px !important;
    width:175px !important;
    max-width:175px !important;
    height:48px !important;
    min-height:48px !important;
  }
}


/* ================================================================
   V8.8 — CTA ARROW + PRODUCT DESCRIPTION WIDTH FINAL
   1) Reserve a dedicated area for the CTA arrow so it never
      overlaps the enquiry text.
   2) Product description matches the full product CTA/button width.
   ================================================================ */

/* CTA text must never run beneath the arrow control */
.bvk-contact-hint{
  padding-right:64px !important;
  overflow:visible !important;
}
.bvk-contact-copy{
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:calc(100% - 50px) !important;
  overflow:hidden !important;
}
.bvk-contact-copy strong,
.bvk-contact-copy small{
  overflow:hidden !important;
  text-overflow:clip !important;
}
.bvk-contact-arrow{
  right:12px !important;
  z-index:2 !important;
}

/* Product description: same full width as the action buttons */
.pd-desc{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}

/* Keep the compact mobile geometry while reserving arrow space */
@media(max-width:600px){
  .bvk-contact-hint{
    padding-right:42px !important;
  }
  .bvk-contact-copy{
    max-width:calc(100% - 34px) !important;
  }
  .bvk-contact-arrow{
    right:7px !important;
  }
}

/* Extra-small phones */
@media(max-width:340px){
  .bvk-contact-hint{
    padding-right:40px !important;
  }
  .bvk-contact-copy{
    max-width:calc(100% - 32px) !important;
  }
}

/* ================================================================
   V8.9 — FINAL CTA ARROW NON-OVERLAP + DESCRIPTION WIDTH
   The CTA arrow is placed in its own layout column so it can never
   cover the enquiry text. Product description is explicitly locked
   to the same full width as the product action buttons.
   ================================================================ */
.bvk-contact-hint{
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) 31px !important;
  align-items:center !important;
  column-gap:12px !important;
  padding:11px 12px 11px 15px !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}
.bvk-contact-icon{
  grid-column:1 !important;
  flex:none !important;
}
.bvk-contact-copy{
  grid-column:2 !important;
  min-width:0 !important;
  max-width:none !important;
  width:auto !important;
  overflow:visible !important;
}
.bvk-contact-copy strong,
.bvk-contact-copy small{
  overflow:visible !important;
  text-overflow:clip !important;
}
.bvk-contact-arrow{
  position:static !important;
  grid-column:3 !important;
  width:31px !important;
  height:31px !important;
  justify-self:end !important;
  z-index:2 !important;
}

/* Product description and CTA buttons share exactly the same content width. */
.pd-info,
.pd-actions,
.pd-desc{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}

@media(max-width:600px){
  .bvk-contact-hint{
    grid-template-columns:28px minmax(0,1fr) 24px !important;
    column-gap:7px !important;
    padding:7px 8px 7px 9px !important;
    width:220px !important;
    max-width:220px !important;
    min-height:50px !important;
    height:50px !important;
  }
  .bvk-contact-icon{
    width:28px !important;
    height:28px !important;
  }
  .bvk-contact-arrow{
    width:24px !important;
    height:24px !important;
    font-size:15px !important;
  }
  .bvk-contact-copy strong{
    font-size:10.8px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
  }
  .bvk-contact-copy small{
    font-size:9.2px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
  }
}

@media(max-width:340px){
  .bvk-contact-hint{
    grid-template-columns:26px minmax(0,1fr) 22px !important;
    column-gap:6px !important;
    width:205px !important;
    max-width:205px !important;
    height:48px !important;
    min-height:48px !important;
    padding:6px 7px 6px 8px !important;
  }
  .bvk-contact-icon{width:26px !important;height:26px !important;}
  .bvk-contact-arrow{width:22px !important;height:22px !important;font-size:14px !important;}
  .bvk-contact-copy strong{font-size:10px !important;}
  .bvk-contact-copy small{font-size:8.7px !important;}
}
