/* =================================================================
   BP Track Pro — main.css
   Pixel-faithful conversion of the React + Tailwind app to plain CSS.
   ================================================================= */

:root{
	--brand-orange:#F58220;
	--brand-orange-soft:#FFE3C8;
	--brand-green:#2EA44F;
	--brand-green-soft:#D6F2DE;
	--background:#fffdf8;
	--foreground:#1a1f2c;
	--muted:#f1f3f6;
	--muted-fg:#6b7280;
	--border:#e6e8ef;
	--whatsapp:#25D366;

	--gradient-brand: linear-gradient(135deg, var(--brand-orange) 0%, var(--brand-green) 100%);
	--gradient-brand-soft: linear-gradient(135deg, #fff1de 0%, #e1f7e6 100%);
	--gradient-hero: linear-gradient(180deg,#fffaf0 0%, #effbf2 100%);
	--gradient-glow: radial-gradient(circle at 30% 30%, rgba(245,130,32,.35), transparent 60%), radial-gradient(circle at 70% 70%, rgba(46,164,79,.30), transparent 60%);

	--glass-bg: rgba(255,255,255,.65);
	--glass-bg-strong: rgba(255,255,255,.85);
	--glass-border: rgba(255,255,255,.6);
	--glass-shadow: 0 8px 32px -8px rgba(40,55,90,.18);

	--shadow-soft: 0 1px 2px rgba(20,30,60,.04), 0 8px 24px -8px rgba(20,30,60,.12);
	--shadow-elev: 0 2px 4px rgba(20,30,60,.05), 0 20px 50px -20px rgba(20,30,60,.18);
	--glow-orange:0 0 24px rgba(245,130,32,.45),0 0 60px rgba(245,130,32,.25);
	--glow-green: 0 0 24px rgba(46,164,79,.45), 0 0 60px rgba(46,164,79,.25);
	--glow-mix:   0 10px 40px -10px rgba(245,130,32,.4),0 10px 40px -10px rgba(46,164,79,.4);

	--font-sans:'Inter',ui-sans-serif,system-ui,sans-serif;
	--font-display:'Plus Jakarta Sans','Inter',sans-serif;
}

html{scroll-behavior:smooth;overflow-x:hidden;}
body{
	background:var(--background); color:var(--foreground);
	font-family:var(--font-sans); -webkit-font-smoothing:antialiased;
	overflow-x:hidden;
	background-image:radial-gradient(circle at 10% 0%, rgba(245,130,32,.06), transparent 40%),
	                 radial-gradient(circle at 90% 20%, rgba(46,164,79,.06), transparent 45%);
	background-attachment:fixed;
}
h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0;}
p{margin:0;}
ul{list-style:none;padding:0;margin:0;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;height:auto;}

.container{max-width:1280px;margin:0 auto;padding:0 20px;}
.container-narrow{max-width:780px;margin:0 auto;padding:0 20px;}
.section{padding:56px 0;}
.section-soft{background:linear-gradient(135deg,rgba(255,241,222,.4),rgba(225,247,230,.4));}
.text-center{text-align:center;}
.mt-8{margin-top:32px;}
.w-full{width:100%;}

@media (min-width:640px){.section{padding:96px 0;}.container{padding:0 24px;}}

/* ---------- Glass / utility ---------- */
.glass{background:var(--glass-bg);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);}
.glass-strong{background:var(--glass-bg-strong);backdrop-filter:blur(22px) saturate(180%);-webkit-backdrop-filter:blur(22px) saturate(180%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);}
.text-gradient-brand{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;color:transparent;}
.glow-mix{box-shadow:var(--glow-mix);}
.glow-orange{box-shadow:var(--glow-orange);}
.glow-green{box-shadow:var(--glow-green);}
.hover-lift{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s;}
.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-elev);}

.shine-border{position:relative;isolation:isolate;}
.shine-border::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;
	background:linear-gradient(120deg,transparent 30%,var(--brand-orange) 50%,var(--brand-green) 70%,transparent 90%);
	background-size:200% 200%;animation:shine 3s linear infinite;
	-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
	-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}

/* Icons */
.icon{width:20px;height:20px;}
.icon-xs{width:12px;height:12px;}
.icon-sm{width:16px;height:16px;}
.icon-md{width:22px;height:22px;}
.icon-lg{width:28px;height:28px;}
.icon-orange{color:var(--brand-orange);} .icon-green{color:var(--brand-green);}
.filled{fill:currentColor;}

/* Buttons */
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 24px;height:48px;border-radius:14px;font-weight:600;color:#fff;background:var(--gradient-brand);box-shadow:0 14px 40px -10px rgba(245,130,32,.55),0 14px 40px -10px rgba(46,164,79,.55);transition:opacity .2s,transform .2s;border:0;cursor:pointer;}
.btn-primary:hover{opacity:.95;}
.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 24px;height:48px;border-radius:14px;font-weight:600;background:rgba(255,255,255,.7);border:2px solid rgba(20,30,60,.12);transition:all .2s;backdrop-filter:blur(8px);}
.btn-outline:hover{border-color:var(--whatsapp);color:var(--whatsapp);background:#fff;}

/* ---------- TopNav ---------- */
.gpp-topnav{position:fixed;inset:0 0 auto 0;z-index:40;border-bottom:1px solid rgba(255,255,255,.4);transition:box-shadow .25s,padding .25s;}
.gpp-topnav.scrolled{box-shadow:var(--shadow-soft);}
.topnav-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;transition:padding .2s;}
.gpp-topnav.scrolled .topnav-row{padding:8px 0;}
.brand{display:flex;align-items:center;gap:8px;}
.brand-logo{height:34px;width:auto;}
@media (min-width:640px){.brand-logo{height:40px;}}
@media (max-width:767px){
  .gpp-topnav{box-sizing:border-box;}
  .gpp-topnav *,
  .gpp-topnav *::before,
  .gpp-topnav *::after{box-sizing:border-box;}
  .gpp-topnav .container,
  .gpp-topnav .container.topnav-row{
    width:100%;
    max-width:100%;
    padding-left:calc(14px + env(safe-area-inset-left,0px)) !important;
    padding-right:calc(14px + env(safe-area-inset-right,0px)) !important;
    gap:10px;
    min-width:0;
  }
  .gpp-topnav .topnav-row{padding-top:8px;padding-bottom:8px;}
  .gpp-topnav.scrolled .topnav-row{padding-top:6px;padding-bottom:6px;}
  .brand{flex-shrink:1;min-width:0;display:inline-flex;align-items:center;overflow:hidden;}
  .brand-logo{height:28px;max-width:100%;display:block;}
  .nav-actions{flex-shrink:0;gap:6px;}
  .btn-menu{width:38px;height:38px;border-radius:11px;flex-shrink:0;padding:0;}
}
.nav-desktop{display:none;align-items:center;gap:4px;}
.nav-desktop a{padding:8px 12px;font-size:14px;font-weight:500;color:rgba(26,31,44,.8);border-radius:8px;transition:background .2s,color .2s;}
.nav-desktop a:hover{background:rgba(241,243,246,.6);color:var(--foreground);}
@media (min-width:768px){.nav-desktop{display:flex;}}
.nav-actions{display:flex;align-items:center;gap:8px;}
.btn-login{display:none;align-items:center;gap:8px;padding:6px 16px 6px 8px;border-radius:12px;font-size:14px;font-weight:600;background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.6);box-shadow:var(--shadow-soft);transition:all .2s;}
.btn-login:hover{box-shadow:var(--shadow-elev);transform:translateY(-2px);}
.btn-login-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--gradient-brand);color:#fff;}
@media (min-width:768px){.btn-login{display:inline-flex;}}
.btn-menu{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--gradient-brand);color:#fff;border:0;cursor:pointer;}
@media (min-width:768px){.btn-menu{display:none;}}

/* ---------- Hero ---------- */
.hero-section{position:relative;overflow:hidden;padding:96px 0 80px;}
@media (min-width:640px){.hero-section{padding:128px 0 112px;}}
.hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none;}
.hero-bg-gradient{position:absolute;inset:0;background:var(--gradient-hero);}
.hero-bg-grid{position:absolute;inset:0;opacity:.07;background-image:linear-gradient(#1a1f2c 1px,transparent 1px),linear-gradient(90deg,#1a1f2c 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,#000 40%,transparent 80%);mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,#000 40%,transparent 80%);}
.hero-blob{position:absolute;border-radius:9999px;filter:blur(110px);animation:blob 14s ease-in-out infinite;}
.hero-blob-a{top:-96px;left:-64px;width:28rem;height:28rem;background:rgba(245,130,32,.45);}
.hero-blob-b{top:128px;right:-96px;width:32rem;height:32rem;background:rgba(46,164,79,.45);animation-delay:-4s;}
.hero-blob-c{bottom:0;left:50%;transform:translateX(-50%);width:40rem;height:18rem;background:rgba(245,130,32,.25);animation-delay:-8s;}
.hero-rings{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;}
.ring{position:absolute;border-radius:9999px;}
.ring-1{width:18rem;height:18rem;border:1px solid rgba(46,164,79,.3);animation:ping-slow 3.5s cubic-bezier(0,0,.2,1) infinite;}
.ring-2{width:14rem;height:14rem;border:1px solid rgba(245,130,32,.4);animation:ping-slow 5s cubic-bezier(0,0,.2,1) infinite;}
.ring-3{width:10rem;height:10rem;border:2px solid rgba(46,164,79,.5);animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite;}
.ring-glow{position:absolute;width:8rem;height:8rem;border-radius:9999px;background:linear-gradient(135deg,rgba(245,130,32,.3),rgba(46,164,79,.3));filter:blur(40px);animation:glow-pulse 2.4s ease-in-out infinite;}
.ring-core{position:relative;width:14px;height:14px;border-radius:9999px;background:var(--gradient-brand);box-shadow:0 0 30px 8px rgba(245,130,32,.6);animation:pulse 2s ease-in-out infinite;}
@media (min-width:640px){.ring-1{width:28rem;height:28rem;}.ring-2{width:20rem;height:20rem;}.ring-3{width:15rem;height:15rem;}.ring-glow{width:12rem;height:12rem;}.ring-core{width:16px;height:16px;}}

.hero-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
@media (min-width:1024px){.hero-grid{grid-template-columns:1fr 1fr;gap:64px;}}
.hero-text{text-align:center;}
@media (min-width:1024px){.hero-text{text-align:left;}}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:9999px;font-size:12px;font-weight:600;}
.badge-dot{position:relative;display:inline-flex;width:8px;height:8px;}
.badge-dot>span{position:absolute;inset:0;border-radius:9999px;background:var(--brand-green);opacity:.75;animation:ping 1s cubic-bezier(0,0,.2,1) infinite;}
.badge-dot .dot{position:relative;width:8px;height:8px;background:var(--brand-green);animation:none;opacity:1;}
.hero-title{margin-top:24px;font-size:40px;line-height:1.02;font-weight:800;letter-spacing:-.02em;min-height:1em;}
@media (min-width:640px){.hero-title{font-size:60px;}}
@media (min-width:1024px){.hero-title{font-size:72px;}}
.word-wrap{position:relative;display:inline-block;}
.underline-svg{position:absolute;left:0;bottom:-8px;width:100%;height:12px;}
.hero-sub{margin:24px auto 0;max-width:36rem;font-size:16px;line-height:1.6;color:rgba(26,31,44,.7);}
@media (min-width:1024px){.hero-sub{margin-left:0;font-size:18px;}}
.hero-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;}
@media (min-width:1024px){.hero-ctas{justify-content:flex-start;}}
.hero-stats{margin-top:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:32rem;}
@media (min-width:1024px){.hero-stats{margin-left:0;}}
@media (min-width:640px){.hero-stats{margin-top:40px;gap:16px;}}
.stat-card{position:relative;border-radius:16px;padding:10px 8px;overflow:hidden;text-align:left;min-height:76px;}
@media (min-width:640px){.stat-card{padding:16px;}}
.stat-card::after{content:"";position:absolute;top:-24px;right:-24px;width:80px;height:80px;border-radius:9999px;background:var(--gradient-brand);opacity:.1;filter:blur(32px);transition:opacity .3s;}
.stat-card:hover::after{opacity:.25;}
.stat-value{font-size:20px;font-weight:800;letter-spacing:-.02em;margin-top:4px;line-height:1.1;}
@media (min-width:640px){.stat-value{font-size:30px;}}
.stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:rgba(26,31,44,.6);font-weight:600;margin-top:3px;line-height:1.2;}
@media (min-width:640px){.stat-label{font-size:11px;}}

/* hero visual */
.hero-visual{position:relative;}
.hero-tilt{position:relative;margin:0 auto;aspect-ratio:4/3;max-width:36rem;perspective:1400px;}
.hero-card{position:absolute;inset:0;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-elev);transform:rotateX(8deg) rotateY(-8deg);}
.hero-card-bg{position:absolute;inset:0;opacity:.9;background-image:linear-gradient(120deg,rgba(214,242,222,.8),rgba(255,227,200,.6)),repeating-linear-gradient(0deg,rgba(180,190,210,.4) 0 1px,transparent 1px 36px),repeating-linear-gradient(90deg,rgba(180,190,210,.4) 0 1px,transparent 1px 36px);}
.hero-route{position:absolute;inset:0;width:100%;height:100%;}
.route-anim{animation:route-dash 4s linear infinite;}
.pin{position:absolute;}
.pin span{display:inline-flex;padding:4px 8px;border-radius:9999px;font-size:10px;font-weight:700;color:#fff;}
.pin-orange span{background:var(--brand-orange);box-shadow:var(--glow-orange);}
.pin-green span{background:var(--brand-green);box-shadow:var(--glow-green);}
.pin{animation:float 6s ease-in-out infinite;}

.float-card{position:absolute;border-radius:16px;padding:8px;width:128px;font-size:10px;}
@media (min-width:640px){.float-card{padding:16px;width:208px;font-size:12px;border-radius:20px;}}
.float-card-fuel{left:-8px;top:16px;transform:rotateY(8deg);}
@media (min-width:640px){.float-card-fuel{left:-40px;top:32px;}}
.float-card-gps{right:-4px;bottom:16px;transform:rotateY(-10deg);}
@media (min-width:640px){.float-card-gps{right:-24px;bottom:24px;width:224px;}}
.fc-row{display:flex;align-items:center;gap:6px;color:var(--muted-fg);}
.fc-main{display:flex;justify-content:space-between;align-items:flex-end;margin-top:4px;}
.fc-main strong{font-size:14px;font-weight:700;}
@media (min-width:640px){.fc-main strong{font-size:24px;}}
.fc-main span{color:var(--brand-green);font-weight:700;font-size:10px;}
@media (min-width:640px){.fc-main span{font-size:12px;}}
.fc-bar{height:6px;border-radius:9999px;background:var(--muted);overflow:hidden;margin-top:6px;}
.fc-bar span{display:block;height:100%;background:var(--gradient-brand);}
.fc-loc{font-weight:600;margin-top:4px;font-size:11px;}
@media (min-width:640px){.fc-loc{font-size:14px;}}
.fc-meta{color:var(--muted-fg);font-size:10px;margin-top:2px;}
.fc-conn{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:700;color:var(--whatsapp);margin-top:6px;}
.dot{display:inline-block;width:6px;height:6px;border-radius:9999px;background:currentColor;}
.pulse{animation:pulse 2s ease-in-out infinite;}
.float{animation:float 6s ease-in-out infinite;}
.float-slow{animation:float 9s ease-in-out infinite;}
.float-pill{position:absolute;top:-12px;right:16px;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:9999px;font-size:10px;font-weight:600;}
@media (min-width:640px){.float-pill{right:24px;font-size:12px;}}

/* ---------- Clients marquee ---------- */
.clients-section{padding:40px 0;border-top:1px solid rgba(230,232,239,.6);border-bottom:1px solid rgba(230,232,239,.6);background:rgba(255,255,255,.4);backdrop-filter:blur(8px);}
.clients-eyebrow{text-align:center;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--muted-fg);}
.marquee-mask{margin-top:20px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);}
.marquee{display:flex;gap:40px;width:max-content;animation:marquee 30s linear infinite;}
.marquee-item{font-size:18px;font-weight:700;letter-spacing:-.02em;color:rgba(26,31,44,.4);white-space:nowrap;transition:color .2s;}
.marquee-item:hover{color:rgba(26,31,44,.7);}
@media (min-width:640px){.marquee-item{font-size:20px;}}

/* ---------- Section heading ---------- */
.section-heading{max-width:42rem;margin:0 auto;text-align:center;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:9999px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--brand-green);}
@media (min-width:640px){.eyebrow{font-size:12px;}}
.section-heading h2{margin-top:14px;font-size:30px;font-weight:800;letter-spacing:-.02em;}
@media (min-width:640px){.section-heading h2{font-size:42px;}}
.section-heading .subtitle{margin-top:14px;color:var(--muted-fg);font-size:15px;line-height:1.6;}

/* ---------- Features ---------- */
.features-grid{margin-top:40px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media (min-width:640px){.features-grid{gap:20px;margin-top:48px;}}
@media (min-width:1024px){.features-grid{grid-template-columns:repeat(4,1fr);}}
.feature-card{padding:12px;border-radius:16px;background:rgba(255,255,255,.8);backdrop-filter:blur(18px);border:1px solid var(--border);box-shadow:var(--shadow-soft);position:relative;animation:fade-up .6s ease-out both;}
@media (min-width:640px){.feature-card{padding:20px;}}
.feature-card:hover{box-shadow:0 14px 36px -10px rgba(245,130,32,.18),0 14px 36px -10px rgba(46,164,79,.18);}
.feature-ic{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--gradient-brand-soft);box-shadow:var(--shadow-soft);}
@media (min-width:640px){.feature-ic{width:48px;height:48px;border-radius:14px;}}
.feature-card h3{margin-top:10px;font-size:14px;font-weight:600;line-height:1.2;}
@media (min-width:640px){.feature-card h3{margin-top:16px;font-size:18px;}}
.feature-card p{margin-top:4px;font-size:11px;color:var(--muted-fg);line-height:1.4;}
@media (min-width:640px){.feature-card p{font-size:14px;line-height:1.6;}}

/* ---------- How it works ---------- */
.how-grid{margin-top:56px;display:grid;grid-template-columns:1fr;gap:24px;position:relative;}
@media (min-width:768px){.how-grid{grid-template-columns:repeat(3,1fr);}}
.how-line{display:none;position:absolute;top:48px;left:16%;right:16%;height:2px;background:linear-gradient(90deg,var(--brand-orange),var(--brand-green),var(--brand-orange));opacity:.5;}
@media (min-width:768px){.how-line{display:block;}}
.how-card{position:relative;padding:24px;border-radius:18px;text-align:center;animation:fade-up .6s ease-out both;}
.how-ic{position:relative;margin:0 auto;display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:18px;background:var(--gradient-brand);color:#fff;box-shadow:var(--glow-mix);}
.how-ring{position:absolute;inset:-4px;border-radius:18px;border:1px solid rgba(255,255,255,.4);animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite;}
.how-card h3{margin-top:20px;font-size:20px;font-weight:600;}
.how-card p{margin-top:8px;font-size:14px;color:var(--muted-fg);line-height:1.6;}

/* ---------- Demo ---------- */
.demo-grid{margin-top:48px;display:grid;grid-template-columns:1fr;gap:32px;align-items:center;}
@media (min-width:1024px){.demo-grid{grid-template-columns:3fr 2fr;}}
.demo-mock{position:relative;}
.demo-frame{margin:0 auto;max-width:36rem;border-radius:32px;padding:12px;box-shadow:var(--shadow-elev);}
.demo-window{border-radius:24px;overflow:hidden;border:1px solid var(--border);background:#fff;}
.demo-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;background:rgba(241,243,246,.6);border-bottom:1px solid var(--border);}
.demo-dot{width:10px;height:10px;border-radius:9999px;}
.demo-dot-r{background:#e63946;} .demo-dot-y{background:#f1c40f;} .demo-dot-g{background:var(--whatsapp);}
.demo-url{margin-left:12px;font:600 11px/1 ui-monospace,monospace;color:var(--muted-fg);}
.demo-img{position:relative;aspect-ratio:16/10;background:var(--gradient-brand-soft);}
.demo-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.demo-glow{position:absolute;inset:-24px;z-index:-1;background:var(--gradient-glow);filter:blur(32px);opacity:.7;}
.demo-card{padding:24px;border-radius:18px;}
.demo-tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--brand-green);}
.demo-card h3{margin-top:8px;font-size:24px;font-weight:700;}
.copy-field{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.7);border:1px solid var(--border);}
.cf-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted-fg);}
.cf-value{font:700 14px/1.2 ui-monospace,monospace;}
.cf-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;border-radius:8px;cursor:pointer;color:var(--foreground);}
.cf-btn:hover{background:var(--muted);}
.cf-btn.copied{color:var(--brand-green);}
.demo-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;}
.demo-pair .btn-outline{height:40px;border-radius:12px;}
.demo-card .btn-primary{margin-top:20px;width:100%;border-radius:12px;}

/* ---------- Apps ---------- */
.apps-row{margin-top:40px;display:flex;flex-wrap:wrap;justify-content:center;gap:16px;}
.app-btn{display:flex;align-items:center;gap:12px;padding:12px 20px;border-radius:18px;}
.app-mini{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted-fg);}
.app-name{display:block;font-weight:600;}

/* ---------- Pricing / Products ---------- */
.products-grid{margin-top:40px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media (min-width:640px){.products-grid{gap:20px;}}
@media (min-width:1024px){.products-grid{grid-template-columns:repeat(3,1fr);}}
.product-card{position:relative;display:flex;flex-direction:column;border-radius:18px;overflow:hidden;animation:fade-up .6s ease-out both;}
.product-card.highlight{grid-column:span 2;}
@media (min-width:1024px){.product-card.highlight{grid-column:auto;}}
.product-img{aspect-ratio:1/1;background:#fafafa;}
.product-img img{width:100%;height:100%;object-fit:contain;padding:16px;}
.product-meta{padding:12px;display:flex;flex-direction:column;gap:4px;flex:1;}
.product-cat{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted-fg);}
.product-name{font-weight:600;font-size:13px;line-height:1.3;}
@media (min-width:640px){.product-name{font-size:15px;}}
.product-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px;}
.product-price{font-weight:700;font-size:14px;color:var(--brand-green);}
.product-price.dim{color:var(--muted-fg);font-weight:500;font-size:12px;}
.product-cta{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--gradient-brand);color:#fff;transition:transform .2s;}
.product-card:hover .product-cta{transform:scale(1.1);}
.product-badge{position:absolute;top:8px;left:8px;z-index:2;background:var(--gradient-brand);color:#fff;font-size:9px;font-weight:700;padding:2px 8px;border-radius:9999px;text-transform:uppercase;letter-spacing:.1em;}

/* ---------- WhatsApp section ---------- */
.wa-grid{margin-top:48px;display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
@media (min-width:1024px){.wa-grid{grid-template-columns:1fr 1fr;}}
.wa-phone{position:relative;margin:0 auto;width:100%;max-width:24rem;}
.wa-glow{position:absolute;inset:-32px;z-index:-1;background:var(--gradient-glow);filter:blur(32px);opacity:.8;}
.wa-frame{padding:8px;border-radius:40px;box-shadow:var(--shadow-elev);}
.wa-screen{border-radius:36px;overflow:hidden;background:#e5ddd5;}
.wa-head{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#075E54;color:#fff;}
.wa-avatar{width:40px;height:40px;border-radius:9999px;background:var(--gradient-brand);display:inline-flex;align-items:center;justify-content:center;font-weight:700;}
.wa-head-info{flex:1;min-width:0;}
.wa-name{font-weight:600;line-height:1.2;}
.wa-status{font-size:11px;opacity:.85;display:flex;align-items:center;gap:4px;}
.wa-msgs{padding:16px 12px;height:420px;overflow:hidden;display:flex;flex-direction:column;gap:8px;background-image:radial-gradient(rgba(220,205,180,.5) 1px,transparent 1px);background-size:18px 18px;}
.wa-msg{display:flex;animation:chat-in .45s cubic-bezier(.2,.8,.2,1) both;}
.wa-msg.me{justify-content:flex-end;}
.wa-msg .bubble{position:relative;max-width:80%;border-radius:16px;padding:8px 12px;font-size:14px;box-shadow:var(--shadow-soft);background:#fff;}
.wa-msg.me .bubble{background:#dcf8c6;border-bottom-right-radius:4px;}
.wa-msg.them .bubble{border-bottom-left-radius:4px;}
.bubble .time{margin-top:2px;display:flex;align-items:center;justify-content:flex-end;gap:4px;font-size:10px;color:var(--muted-fg);}
.wa-typing{display:flex;animation:chat-in .45s both;}
.wa-typing .bubble{background:#fff;border-radius:16px;border-bottom-left-radius:4px;padding:10px 12px;}
.wa-typing .dots{display:flex;gap:4px;}
.wa-typing .dots span{width:6px;height:6px;border-radius:9999px;background:rgba(26,31,44,.4);animation:bounce 1s infinite;}
.wa-typing .dots span:nth-child(2){animation-delay:.15s;}
.wa-typing .dots span:nth-child(3){animation-delay:.3s;}
.wa-input{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#f3eee7;}
.wa-input-box{flex:1;background:#fff;border-radius:9999px;padding:8px 16px;font-size:14px;color:var(--muted-fg);}
.wa-send{width:36px;height:36px;border-radius:9999px;background:#075E54;color:#fff;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;}
.wa-cta h3{font-size:24px;font-weight:700;}
.wa-cta p{margin-top:8px;color:var(--muted-fg);}
.wa-cta .btn-primary{margin-top:20px;}

/* ---------- Reviews ---------- */
.reviews-grid{margin-top:40px;display:grid;grid-template-columns:1fr;gap:12px;}
@media (min-width:640px){.reviews-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:48px;}}
@media (min-width:1024px){.reviews-grid{grid-template-columns:repeat(3,1fr);}}
.review-card{padding:16px;border-radius:18px;animation:fade-up .6s ease-out both;}
@media (min-width:640px){.review-card{padding:24px;}}
.stars{display:flex;gap:2px;color:var(--brand-orange);}
.review-quote{margin-top:12px;font-size:14px;color:rgba(26,31,44,.85);line-height:1.6;}
.review-foot{margin-top:20px;display:flex;align-items:center;gap:12px;}
.avatar{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:9999px;color:#fff;font-weight:700;}
.avatar-orange{background:var(--brand-orange);box-shadow:var(--glow-orange);}
.avatar-green{background:var(--brand-green);box-shadow:var(--glow-green);}
.r-name{font-weight:600;font-size:14px;} .r-role{font-size:12px;color:var(--muted-fg);}

/* ---------- FAQ ---------- */
.faq-card{margin-top:40px;border-radius:18px;padding:8px;}
@media (min-width:640px){.faq-card{padding:16px;}}
.faq-item{padding:6px 0;border-bottom:1px solid rgba(230,232,239,.6);}
.faq-item:last-child{border-bottom:0;}
.faq-item summary{list-style:none;cursor:pointer;font-weight:600;padding:12px;display:flex;align-items:center;justify-content:space-between;border-radius:8px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary:hover{background:rgba(241,243,246,.4);}
.faq-chev{transition:transform .2s;font-weight:400;font-size:18px;color:var(--muted-fg);}
.faq-item[open] .faq-chev{transform:rotate(45deg);}
.faq-a{padding:0 12px 12px;color:var(--muted-fg);font-size:14px;line-height:1.6;}

/* ---------- Contact ---------- */
.contact-grid{margin-top:48px;display:grid;grid-template-columns:1fr;gap:32px;}
@media (min-width:1024px){.contact-grid{grid-template-columns:2fr 3fr;}}
.contact-info{display:flex;flex-direction:column;gap:12px;}
.contact-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:18px;}
.contact-ic{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:var(--gradient-brand);color:#fff;box-shadow:var(--glow-mix);}
.contact-val{font-weight:600;}
.contact-form{position:relative;padding:24px;border-radius:18px;display:flex;flex-direction:column;gap:16px;}
@media (min-width:640px){.contact-form{padding:32px;}}
.contact-form label{font-size:13px;font-weight:500;display:block;margin-bottom:6px;}
.contact-form input,.contact-form textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.7);font-family:inherit;font-size:14px;outline:0;transition:border-color .2s,box-shadow .2s;}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--brand-green);box-shadow:0 0 0 3px rgba(46,164,79,.15);}
.row-2{display:grid;grid-template-columns:1fr;gap:16px;}
@media (min-width:640px){.row-2{grid-template-columns:1fr 1fr;}}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}

/* ---------- Footer ---------- */
.gpp-footer{position:relative;padding:64px 0 112px;border-top:1px solid rgba(230,232,239,.6);background:linear-gradient(180deg,transparent,rgba(214,242,222,.4));}
@media (min-width:768px){.gpp-footer{padding-bottom:48px;}}
.footer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;}
@media (min-width:768px){.footer-grid{grid-template-columns:repeat(4,1fr);}}
.footer-brand{grid-column:span 2;}
@media (min-width:768px){.footer-brand{grid-column:span 2;}}
.footer-logo{height:40px;width:auto;}
.footer-brand p{margin-top:16px;max-width:24rem;font-size:14px;color:var(--muted-fg);}
.footer-title{font-weight:600;margin-bottom:12px;}
.gpp-footer ul li{margin:8px 0;font-size:14px;color:var(--muted-fg);}
.gpp-footer ul li a:hover{color:var(--foreground);}
.socials{display:flex;align-items:center;gap:8px;}
.socials a{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--glass-bg);border:1px solid var(--glass-border);transition:box-shadow .2s;}
.socials a:hover{box-shadow:var(--glow-mix);}
.socials-desktop{display:none;margin-top:16px;}
@media (min-width:768px){.socials-desktop{display:flex;}.socials-mobile{display:none;}}
.socials-mobile{grid-column:span 2;}
.footer-bottom{margin-top:40px;padding-top:24px;border-top:1px solid rgba(230,232,239,.6);display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted-fg);}
@media (min-width:640px){.footer-bottom{flex-direction:row;}}
.footer-links{display:flex;gap:16px;}

/* ---------- Mobile bottom nav ---------- */
.gpp-bottomnav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:40;}
@media (max-width:767px){.gpp-bottomnav{display:block;}}
.bottomnav-inner{display:flex;align-items:center;justify-content:space-between;gap:2px;padding:8px calc(12px + env(safe-area-inset-left,0px)) calc(env(safe-area-inset-bottom) + 8px) calc(12px + env(safe-area-inset-right,0px));border-top:1px solid rgba(230,232,239,.4);box-shadow:var(--shadow-elev);}
.gpp-bottomnav .bn-tab,.gpp-bottomnav .bn-home{min-width:0;}
.bn-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;font-size:11px;font-weight:500;color:rgba(26,31,44,.6);background:transparent;border:0;cursor:pointer;}
.bn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;color:rgba(26,31,44,.7);}
.bn-tab.active .bn-icon{background:var(--gradient-brand);color:#fff;box-shadow:0 6px 20px -4px rgba(46,164,79,.5);}
.bn-tab.active{color:var(--foreground);}
.bn-home{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;}
.bn-home-wrap{position:absolute;top:-28px;display:flex;align-items:center;justify-content:center;}
.bn-ring{position:absolute;width:56px;height:56px;border-radius:9999px;}
.bn-ring-a{background:rgba(46,164,79,.4);animation:ping 1.5s cubic-bezier(0,0,.2,1) infinite;}
.bn-ring-b{background:rgba(245,130,32,.3);animation:ping 1.5s cubic-bezier(0,0,.2,1) infinite;animation-delay:.6s;}
.bn-home-btn{position:relative;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:9999px;background:var(--gradient-brand);color:#fff;box-shadow:0 10px 30px -6px rgba(46,164,79,.6);outline:4px solid var(--background);}
.bn-spacer{margin-top:36px;}

/* ---------- Drawer ---------- */
.gpp-drawer{position:fixed;inset:0;z-index:50;visibility:hidden;}
.gpp-drawer.open{visibility:visible;}
.drawer-overlay{position:absolute;inset:0;background:rgba(20,30,60,.45);opacity:0;transition:opacity .3s;}
.gpp-drawer.open .drawer-overlay{opacity:1;}
.drawer-panel{position:absolute;left:0;top:0;bottom:0;width:80%;max-width:300px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.85),rgba(214,242,222,.4));backdrop-filter:blur(24px);border-right:1px solid rgba(255,255,255,.4);transform:translateX(-100%);transition:transform .3s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;}
.gpp-drawer.open .drawer-panel{transform:translateX(0);}
.drawer-head{position:relative;overflow:hidden;}
.drawer-head-bg{position:absolute;inset:0;background:var(--gradient-brand);opacity:.95;}
.drawer-glow{position:absolute;border-radius:9999px;filter:blur(32px);}
.drawer-glow-a{top:-40px;right:-40px;width:128px;height:128px;background:rgba(255,255,255,.2);}
.drawer-glow-b{bottom:-32px;left:-24px;width:96px;height:96px;background:rgba(245,130,32,.4);}
.drawer-head-row{position:relative;display:flex;align-items:center;gap:12px;padding:16px 16px 20px;}
.drawer-logo-card{flex:1;display:flex;align-items:center;justify-content:center;height:56px;border-radius:16px;background:rgba(255,255,255,.95);box-shadow:var(--shadow-elev);ring:1px solid rgba(255,255,255,.6);padding:8px 16px;}
.drawer-logo-card img{height:36px;width:auto;max-width:100%;}
.drawer-close{flex-shrink:0;width:36px;height:36px;border-radius:12px;background:rgba(255,255,255,.15);color:#fff;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s;}
.drawer-close:hover{background:rgba(255,255,255,.3);transform:rotate(90deg);}
.drawer-nav{padding:8px;display:flex;flex-direction:column;gap:2px;flex:1;overflow:auto;}
.drawer-nav a{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;font-size:13px;font-weight:500;color:rgba(26,31,44,.85);transition:background .2s;}
.drawer-nav a:hover{background:var(--gradient-brand-soft);color:var(--foreground);}
.drawer-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,.7);box-shadow:var(--shadow-soft);}
.drawer-foot{padding:12px;border-top:1px solid var(--border);}
.drawer-login{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:12px;background:var(--gradient-brand);color:#fff;font-weight:600;}

/* ---------- WhatsApp float ---------- */
.gpp-wa-float{position:fixed;right:16px;bottom:96px;z-index:50;}
@media (min-width:768px){.gpp-wa-float{bottom:24px;}}
.wa-bubble{position:relative;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:9999px;background:var(--whatsapp);color:#fff;box-shadow:0 10px 30px -6px rgba(37,211,102,.6);transition:transform .2s;}
.wa-bubble:hover{transform:scale(1.05);}
.wa-ring{position:absolute;inset:0;border-radius:9999px;background:var(--whatsapp);animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite;}

/* =================================================================
   KEYFRAMES
   ================================================================= */
@keyframes float{0%,100%{transform:translateY(0) rotate(0);}50%{transform:translateY(-14px) rotate(.6deg);}}
@keyframes glow-pulse{0%,100%{box-shadow:0 0 0 0 rgba(245,130,32,.45),0 0 24px rgba(46,164,79,.25);}50%{box-shadow:0 0 0 14px rgba(245,130,32,0),0 0 40px rgba(46,164,79,.35);}}
@keyframes marquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
@keyframes chat-in{0%{opacity:0;transform:translateY(8px) scale(.96);}100%{opacity:1;transform:translateY(0) scale(1);}}
@keyframes shine{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
@keyframes pulse-ring{0%{transform:scale(.9);opacity:.7;}80%,100%{transform:scale(1.6);opacity:0;}}
@keyframes ping-slow{0%{transform:scale(.85);opacity:.6;}80%,100%{transform:scale(1.8);opacity:0;}}
@keyframes ping{75%,100%{transform:scale(2);opacity:0;}}
@keyframes blob{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(30px,-20px) scale(1.06);}66%{transform:translate(-20px,24px) scale(.97);}}
@keyframes route-dash{to{stroke-dashoffset:-200;}}
@keyframes fade-up{0%{opacity:0;transform:translateY(24px);}100%{opacity:1;transform:translateY(0);}}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.5;}}
@keyframes bounce{0%,100%{transform:translateY(0);}50%{transform:translateY(-4px);}}

.fade-up{animation:fade-up .8s ease-out both;}

/* =============================================================
 * BP Track Pro v6 — Blog, Page, Archive, Search, 404 + WooCommerce
 * Scoped under specific class roots so the one-page composition is untouched.
 * ============================================================= */

/* Container helpers reused */
.gpp-main .container-narrow{max-width:820px;margin-left:auto;margin-right:auto;}

/* ---------- Page hero band (page/archive/search/blog index) ---------- */
.gpp-pagehero{
  position:relative;
  padding:120px 0 56px;
  overflow:hidden;
  background:
    radial-gradient(1200px 400px at 10% 0%, oklch(0.72 0.18 55 / .14), transparent 60%),
    radial-gradient(1000px 360px at 90% 10%, oklch(0.62 0.16 145 / .14), transparent 60%),
    linear-gradient(180deg, #fff 0%, oklch(0.97 0.02 150 / .35) 100%);
  border-bottom:1px solid oklch(0.92 0.01 240);
}
.gpp-pagehero-bg{
  position:absolute; inset:-40% -10% auto -10%; height:80%;
  background:
    radial-gradient(circle at 30% 30%, oklch(0.72 0.18 55 / .12), transparent 60%),
    radial-gradient(circle at 70% 70%, oklch(0.62 0.16 145 / .12), transparent 60%);
  filter:blur(40px);
  pointer-events:none;
}
.gpp-pagehero-eyebrow{
  display:inline-block; font-size:11px; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase;
  color:#fff; padding:6px 12px; border-radius:999px;
  background:linear-gradient(135deg, var(--brand-orange,#F58220), var(--brand-green,#2EA44F));
  box-shadow:0 8px 24px -8px oklch(0.62 0.16 145 / .4);
  margin-bottom:14px;
}
.gpp-pagehero-title{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:clamp(28px, 5vw, 48px);
  line-height:1.1; letter-spacing:-.02em;
  margin:0 0 12px; color:#1a1f2c;
}
.gpp-pagehero-sub{
  max-width:720px; color:oklch(0.45 0.02 240);
  font-size:clamp(15px,1.6vw,18px); line-height:1.55; margin:0;
}
.gpp-pagehero-image{margin-top:28px; border-radius:18px; overflow:hidden; box-shadow:0 20px 50px -20px oklch(0.2 0.02 240 / .25);}
.gpp-pagehero-image img{width:100%; height:auto; display:block;}
.gpp-pagehero-search{margin-top:24px; max-width:600px;}
@media (max-width:767px){
  .gpp-pagehero{padding:96px 0 40px;}
}

/* ---------- Breadcrumbs ---------- */
.gpp-crumbs{
  font-size:13px; color:oklch(0.45 0.02 240);
  margin-bottom:14px; display:flex; flex-wrap:wrap; gap:6px; align-items:center;
}
.gpp-crumbs a{color:oklch(0.45 0.02 240); text-decoration:none;}
.gpp-crumbs a:hover{color:var(--brand-green,#2EA44F);}
.gpp-crumbs-current{color:#1a1f2c; font-weight:600;}

/* ---------- Post chip ---------- */
.gpp-chip{
  display:inline-block; font-size:11px; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--brand-orange,#F58220);
  background:oklch(0.97 0.05 60); padding:5px 11px; border-radius:999px;
  text-decoration:none; margin-bottom:14px;
}

/* ---------- Single post hero ---------- */
.gpp-post-hero{
  padding:120px 0 24px;
  background:
    radial-gradient(900px 300px at 80% 0%, oklch(0.72 0.18 55 / .10), transparent 60%),
    radial-gradient(900px 300px at 10% 20%, oklch(0.62 0.16 145 / .10), transparent 60%),
    linear-gradient(180deg, #fff 0%, oklch(0.99 0.01 80) 100%);
}
.gpp-post-title{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:clamp(28px, 4.2vw, 44px); line-height:1.15; letter-spacing:-.02em;
  margin:0 0 14px; color:#1a1f2c; max-width:880px;
}
.gpp-post-meta{
  display:flex; gap:10px; align-items:center; flex-wrap:wrap;
  font-size:14px; color:oklch(0.45 0.02 240);
}
.gpp-post-meta .dot{opacity:.5;}
.gpp-post-cover{
  margin-top:28px; border-radius:20px; overflow:hidden;
  box-shadow:0 24px 60px -20px oklch(0.2 0.02 240 / .3);
}
.gpp-post-cover img{width:100%; height:auto; display:block; aspect-ratio:16/9; object-fit:cover;}
@media (max-width:767px){ .gpp-post-hero{padding:96px 0 16px;} }

/* ---------- Post layout ---------- */
.gpp-post-layout{
  display:grid;
  grid-template-columns: minmax(0,1fr) 300px;
  gap:48px;
  align-items:start;
}
.gpp-post-layout.is-full{ grid-template-columns: minmax(0,1fr); max-width:820px; margin:0 auto; }
.gpp-post-side{
  position:sticky; top:96px;
  display:flex; flex-direction:column; gap:18px;
}
@media (max-width:1023px){
  .gpp-post-layout{ grid-template-columns: minmax(0,1fr); }
  .gpp-post-side{ display:none; }
}

/* ---------- TOC ---------- */
.gpp-toc{ padding:18px; border-radius:16px; }
.gpp-toc-label{
  font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
  color:oklch(0.45 0.02 240); margin-bottom:10px;
}
.gpp-toc-list{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:4px; }
.gpp-toc-list li.lvl-3{ padding-left:14px; }
.gpp-toc-list a{
  display:block; padding:6px 10px; border-radius:8px;
  font-size:14px; color:oklch(0.35 0.02 240); text-decoration:none;
  border-left:2px solid transparent; transition:all .2s ease;
}
.gpp-toc-list a:hover{ background:oklch(0.96 0.005 240); color:#1a1f2c; }
.gpp-toc-list a.is-active{
  color:var(--brand-green,#2EA44F);
  border-left-color:var(--brand-green,#2EA44F);
  background:oklch(0.93 0.06 150 / .4); font-weight:600;
}

/* ---------- Share row ---------- */
.gpp-share{ padding:18px; border-radius:16px; background:#fff; border:1px solid oklch(0.92 0.01 240); }
.gpp-share.is-compact{ padding:0; border:0; background:transparent; }
.gpp-share-label{
  font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
  color:oklch(0.45 0.02 240); margin-bottom:10px;
}
.gpp-share-row{ display:flex; flex-wrap:wrap; gap:8px; }
.gpp-share-btn{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; border-radius:12px; cursor:pointer;
  background:#fff; border:1px solid oklch(0.92 0.01 240);
  color:oklch(0.35 0.02 240); transition:all .2s ease;
}
.gpp-share-btn:hover{
  color:#fff; border-color:transparent;
  background:linear-gradient(135deg, var(--brand-orange,#F58220), var(--brand-green,#2EA44F));
  transform:translateY(-2px); box-shadow:0 10px 24px -10px oklch(0.62 0.16 145 / .5);
}
.gpp-share-btn.gpp-share-wa:hover{ background:#25D366; }
.gpp-share-btn .icon{width:18px; height:18px;}

/* ---------- Prose / typography for the_content() ---------- */
.prose-gpp{ color:oklch(0.25 0.02 240); font-size:17px; line-height:1.75; }
.prose-gpp > * + *{ margin-top:1.1em; }
.prose-gpp h2{ font-family:"Plus Jakarta Sans",sans-serif; font-size:1.7em; line-height:1.25; letter-spacing:-.01em; margin-top:2em; color:#1a1f2c; scroll-margin-top:100px; }
.prose-gpp h3{ font-family:"Plus Jakarta Sans",sans-serif; font-size:1.3em; line-height:1.3; margin-top:1.6em; color:#1a1f2c; scroll-margin-top:100px; }
.prose-gpp h4{ font-size:1.1em; font-weight:700; margin-top:1.4em; color:#1a1f2c; }
.prose-gpp p{ margin:0; }
.prose-gpp a{ color:var(--brand-green,#2EA44F); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }
.prose-gpp a:hover{ color:var(--brand-orange,#F58220); }
.prose-gpp ul, .prose-gpp ol{ padding-left:1.4em; margin:0; }
.prose-gpp li{ margin:.4em 0; }
.prose-gpp ul > li::marker{ color:var(--brand-orange,#F58220); }
.prose-gpp blockquote{
  margin:1.6em 0; padding:14px 20px; border-left:4px solid var(--brand-orange,#F58220);
  background:oklch(0.97 0.05 60 / .5); border-radius:0 12px 12px 0;
  font-style:italic; color:oklch(0.30 0.02 240);
}
.prose-gpp blockquote p{ margin:0; }
.prose-gpp code{ background:oklch(0.96 0.005 240); padding:2px 6px; border-radius:6px; font-size:.9em; font-family:ui-monospace, SFMono-Regular, Menlo, monospace; color:oklch(0.35 0.10 25); }
.prose-gpp pre{ background:#0f172a; color:#e2e8f0; padding:18px 20px; border-radius:14px; overflow:auto; line-height:1.55; font-size:14px; }
.prose-gpp pre code{ background:transparent; padding:0; color:inherit; }
.prose-gpp img, .prose-gpp .wp-block-image img{ border-radius:14px; box-shadow:0 14px 36px -14px oklch(0.2 0.02 240 / .3); height:auto; max-width:100%; }
.prose-gpp figure{ margin:1.6em 0; }
.prose-gpp figcaption{ font-size:13px; color:oklch(0.45 0.02 240); text-align:center; margin-top:8px; }
.prose-gpp hr{ border:0; border-top:1px solid oklch(0.92 0.01 240); margin:2em 0; }
.prose-gpp table{ width:100%; border-collapse:collapse; font-size:15px; }
.prose-gpp th, .prose-gpp td{ padding:10px 12px; border-bottom:1px solid oklch(0.92 0.01 240); text-align:left; }
.prose-gpp th{ background:oklch(0.96 0.005 240); font-weight:700; color:#1a1f2c; }

/* ---------- Post foot / tags ---------- */
.gpp-post-foot{ display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-top:48px; padding-top:24px; border-top:1px solid oklch(0.92 0.01 240); }
.gpp-post-tags{ margin-top:32px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.gpp-tags-label{ font-size:13px; font-weight:600; color:oklch(0.45 0.02 240); }
.gpp-post-tags a{ display:inline-block; padding:4px 10px; border-radius:999px; background:oklch(0.96 0.005 240); color:oklch(0.35 0.02 240); font-size:13px; text-decoration:none; }
.gpp-post-tags a:hover{ background:oklch(0.93 0.06 150 / .5); color:var(--brand-green,#2EA44F); }

/* ---------- Buttons (extras) ---------- */
.btn-primary{
  display:inline-flex; align-items:center; gap:8px;
  background:linear-gradient(135deg, var(--brand-orange,#F58220), var(--brand-green,#2EA44F));
  color:#fff !important; padding:12px 22px; border-radius:12px; font-weight:600;
  text-decoration:none; box-shadow:0 10px 30px -10px oklch(0.62 0.16 145 / .5);
  transition:transform .2s ease, box-shadow .2s ease;
}
.btn-primary:hover{ transform:translateY(-2px); box-shadow:0 14px 36px -10px oklch(0.62 0.16 145 / .6); }
.btn-ghost{
  display:inline-flex; align-items:center; gap:8px;
  background:#fff; color:#1a1f2c; padding:11px 20px; border-radius:12px; font-weight:600;
  text-decoration:none; border:1px solid oklch(0.92 0.01 240);
  transition:all .2s ease;
}
.btn-ghost:hover{ border-color:var(--brand-green,#2EA44F); color:var(--brand-green,#2EA44F); transform:translateY(-1px); }

/* ---------- Post grid (archive/search/blog index) ---------- */
.gpp-postgrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:22px; }
.gpp-post-card{
  display:flex; flex-direction:column; background:#fff;
  border:1px solid oklch(0.92 0.01 240); border-radius:18px; overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
  list-style:none;
}
.gpp-post-card:hover{ transform:translateY(-4px); box-shadow:0 24px 50px -20px oklch(0.2 0.02 240 / .25); }
.gpp-post-card-media{ position:relative; display:block; aspect-ratio:16/10; background:oklch(0.96 0.005 240); overflow:hidden; }
.gpp-post-card-media img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.gpp-post-card:hover .gpp-post-card-media img{ transform:scale(1.06); }
.gpp-post-card-fallback{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg, oklch(0.97 0.05 60), oklch(0.93 0.06 150)); color:#fff; }
.gpp-post-card-fallback .icon{ width:42px; height:42px; opacity:.8; }
.gpp-post-card-time{
  position:absolute; top:10px; right:10px;
  background:rgba(255,255,255,.92); color:#1a1f2c; font-size:11px; font-weight:700;
  padding:4px 9px; border-radius:999px; backdrop-filter:blur(10px);
}
.gpp-post-card-body{ padding:18px 18px 20px; display:flex; flex-direction:column; flex:1; }
.gpp-post-card-cat{
  display:inline-block; align-self:flex-start;
  font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--brand-orange,#F58220); text-decoration:none; margin-bottom:8px;
}
.gpp-post-card-title{ font-family:"Plus Jakarta Sans",sans-serif; font-size:18px; line-height:1.3; margin:0 0 8px; color:#1a1f2c; }
.gpp-post-card-title a{ color:inherit; text-decoration:none; }
.gpp-post-card-title a:hover{ background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.gpp-post-card-excerpt{ font-size:14px; color:oklch(0.45 0.02 240); margin:0 0 14px; line-height:1.55; flex:1; }
.gpp-post-card-foot{ display:flex; justify-content:space-between; align-items:center; font-size:13px; color:oklch(0.45 0.02 240); }
.gpp-post-card-more{ display:inline-flex; align-items:center; gap:4px; color:var(--brand-green,#2EA44F); font-weight:600; text-decoration:none; }
.gpp-post-card-more .icon{ width:14px; height:14px; }

/* ---------- Pagination ---------- */
.gpp-pagination{ margin-top:36px; display:flex; justify-content:center; }
.gpp-pagination ul{ list-style:none; padding:0; margin:0; display:flex; gap:6px; flex-wrap:wrap; }
.gpp-pagination a, .gpp-pagination span{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:40px; height:40px; padding:0 12px; border-radius:10px;
  font-weight:600; font-size:14px; text-decoration:none;
  background:#fff; color:#1a1f2c; border:1px solid oklch(0.92 0.01 240);
}
.gpp-pagination a:hover{ border-color:var(--brand-green,#2EA44F); color:var(--brand-green,#2EA44F); }
.gpp-pagination .current, .gpp-pagination span.current{
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F));
  color:#fff; border-color:transparent;
}

/* ---------- Empty state ---------- */
.gpp-empty{ padding:48px 28px; text-align:center; border-radius:20px; max-width:680px; margin:0 auto; }
.gpp-empty h2{ font-family:"Plus Jakarta Sans",sans-serif; font-size:24px; margin:0 0 10px; }
.gpp-empty p{ color:oklch(0.45 0.02 240); margin:0 0 18px; }
.gpp-empty-cta{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:14px; }

/* ---------- 404 ---------- */
.gpp-404{ padding:160px 0 100px; text-align:center; }
.gpp-404-eyebrow{ font-size:12px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:oklch(0.45 0.02 240); margin-bottom:10px; }
.gpp-404-num{ font-family:"Plus Jakarta Sans",sans-serif; font-weight:800; font-size:clamp(120px, 22vw, 220px); line-height:1; letter-spacing:-.04em; }
.gpp-404-title{ font-family:"Plus Jakarta Sans",sans-serif; font-size:clamp(24px, 3.5vw, 36px); margin:10px 0 12px; color:#1a1f2c; }
.gpp-404-sub{ max-width:560px; margin:0 auto 28px; color:oklch(0.45 0.02 240); font-size:16px; line-height:1.6; }
.gpp-404-form{ max-width:520px; margin:0 auto 24px; }
.gpp-404-cta{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }

/* ---------- Search form ---------- */
.gpp-searchform{ width:100%; }
.gpp-searchfield{
  display:flex; align-items:center; gap:8px;
  padding:6px 6px 6px 14px; border-radius:14px;
}
.gpp-search-icon{ display:inline-flex; color:oklch(0.45 0.02 240); }
.gpp-search-icon .icon{ width:18px; height:18px; }
.gpp-searchfield input[type=search]{
  flex:1; min-width:0; border:0; outline:0; background:transparent;
  padding:10px 4px; font-size:15px; color:#1a1f2c;
}
.gpp-search-submit{
  border:0; cursor:pointer; padding:10px 18px; border-radius:10px;
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F));
  color:#fff; font-weight:600; font-size:14px;
}

/* =============================================================
 * WooCommerce
 * ============================================================= */
.gpp-woo .container, .gpp-woo .woocommerce > .container{ max-width:1200px; margin-left:auto; margin-right:auto; padding-left:16px; padding-right:16px; }

/* shop bar */
.gpp-shop-bar{
  display:flex; justify-content:space-between; align-items:center; gap:12px;
  flex-wrap:wrap; margin-bottom:24px;
  padding:14px 18px; background:#fff; border:1px solid oklch(0.92 0.01 240); border-radius:14px;
}
.gpp-shop-result{ font-size:14px; color:oklch(0.45 0.02 240); margin:0; }
.gpp-shop-sort select{
  padding:8px 14px; border-radius:10px; border:1px solid oklch(0.92 0.01 240);
  background:#fff; font-size:14px; color:#1a1f2c; cursor:pointer;
}

/* product grid */
.woocommerce ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));
  gap:20px; padding:0; margin:0; list-style:none;
}
.woocommerce ul.products li.product{ width:auto !important; margin:0 !important; padding:0 !important; float:none !important; }
.gpp-prod-card{
  position:relative; background:#fff; border:1px solid oklch(0.92 0.01 240);
  border-radius:18px; overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
  display:flex; flex-direction:column;
}
.gpp-prod-card:hover{ transform:translateY(-4px); box-shadow:0 24px 50px -20px oklch(0.2 0.02 240 / .25); }
.gpp-prod-card-inner{ display:flex; flex-direction:column; flex:1; text-decoration:none; color:inherit; }
.gpp-prod-media{
  aspect-ratio:1/1; background:linear-gradient(135deg, #fff, oklch(0.93 0.06 150 / .25));
  display:flex; align-items:center; justify-content:center; padding:18px;
}
.gpp-prod-media img{ max-width:100%; max-height:100%; height:auto; width:auto; object-fit:contain; transition:transform .5s ease; }
.gpp-prod-card:hover .gpp-prod-media img{ transform:scale(1.06); }
.gpp-prod-body{ padding:14px 16px 16px; border-top:1px solid oklch(0.92 0.01 240 / .6); display:flex; flex-direction:column; flex:1; }
.gpp-prod-cat{ font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--brand-orange,#F58220); margin-bottom:4px; }
.gpp-prod-title{ font-family:"Plus Jakarta Sans",sans-serif; font-size:14px; line-height:1.3; color:#1a1f2c; margin:0 0 10px; min-height:2.6em; }
.gpp-prod-foot{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; }
.gpp-prod-price{ font-family:"Plus Jakarta Sans",sans-serif; font-size:18px; font-weight:800; background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.gpp-prod-price del{ opacity:.4; -webkit-text-fill-color:initial; color:oklch(0.45 0.02 240); margin-right:6px; font-size:14px; }
.gpp-prod-price ins{ text-decoration:none; }
.gpp-prod-cta{
  display:inline-flex; align-items:center; justify-content:center;
  width:32px; height:32px; border-radius:10px; color:#fff;
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F));
  box-shadow:0 6px 14px -6px oklch(0.62 0.16 145 / .5);
  transition:transform .2s ease;
}
.gpp-prod-card:hover .gpp-prod-cta{ transform:scale(1.1); }
.gpp-prod-cta .icon{ width:14px; height:14px; }
.gpp-prod-add{ padding:0 16px 14px; }
.gpp-prod-add .button{
  display:block; width:100%; text-align:center;
  background:#fff !important; color:#1a1f2c !important;
  border:1px solid oklch(0.92 0.01 240) !important; border-radius:10px !important;
  padding:9px 12px !important; font-size:13px !important; font-weight:600 !important;
  text-decoration:none; transition:all .2s ease;
}
.gpp-prod-add .button:hover{ border-color:var(--brand-green,#2EA44F) !important; color:var(--brand-green,#2EA44F) !important; }
.gpp-prod-add .added_to_cart{ display:none; }
.gpp-prod-badge{
  position:absolute; top:10px; left:10px; z-index:2;
  font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  padding:4px 9px; border-radius:999px; color:#fff;
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F));
}
.gpp-prod-badge-out{ background:oklch(0.45 0.02 240); }

/* single product */
.gpp-product-grid{
  display:grid; grid-template-columns:1.05fr 1fr; gap:40px; align-items:start;
}
@media (max-width:899px){ .gpp-product-grid{ grid-template-columns:1fr; gap:28px; } }
.gpp-product-media{ padding:18px; border-radius:20px; }
.gpp-product-media .woocommerce-product-gallery{ width:100% !important; float:none !important; margin:0 !important; }
.gpp-product-media .woocommerce-product-gallery__image img{ border-radius:14px; }
.gpp-product-media .flex-control-thumbs{ display:flex !important; gap:8px; padding:0; margin-top:10px; flex-wrap:wrap; }
.gpp-product-media .flex-control-thumbs li{ width:64px !important; margin:0 !important; }
.gpp-product-media .flex-control-thumbs img{ border-radius:8px; cursor:pointer; opacity:.7; transition:opacity .2s ease; }
.gpp-product-media .flex-control-thumbs img.flex-active, .gpp-product-media .flex-control-thumbs img:hover{ opacity:1; }
.gpp-product-eyebrow{ font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--brand-orange,#F58220); margin-bottom:8px; }
.gpp-product-title{ font-family:"Plus Jakarta Sans",sans-serif; font-size:clamp(26px,3.4vw,38px); line-height:1.15; letter-spacing:-.02em; margin:0 0 12px; }
.gpp-product-rating{ margin-bottom:10px; }
.gpp-product-rating .star-rating{ float:none; margin:0; }
.gpp-product-price{ font-family:"Plus Jakarta Sans",sans-serif; font-size:28px; font-weight:800; color:#1a1f2c; margin-bottom:14px; }
.gpp-product-price del{ font-size:18px; opacity:.5; margin-right:10px; }
.gpp-product-price ins{ text-decoration:none; background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.gpp-product-short{ font-size:15px; color:oklch(0.35 0.02 240); margin-bottom:18px; }
.gpp-product-cart .quantity{ display:inline-flex; margin-right:10px; }
.gpp-product-cart .quantity input{ width:64px; padding:11px 10px; border-radius:10px; border:1px solid oklch(0.92 0.01 240); text-align:center; font-weight:600; }
.gpp-product-cart .single_add_to_cart_button{
  display:inline-flex !important; align-items:center; gap:8px;
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F)) !important;
  color:#fff !important; border:0 !important; border-radius:12px !important;
  padding:13px 24px !important; font-weight:700 !important; font-size:15px !important;
  box-shadow:0 12px 30px -10px oklch(0.62 0.16 145 / .5);
  cursor:pointer; transition:transform .2s ease;
}
.gpp-product-cart .single_add_to_cart_button:hover{ transform:translateY(-2px); }
.gpp-product-wa{
  display:inline-flex; align-items:center; gap:8px; margin-top:14px;
  padding:11px 20px; border-radius:12px; background:#25D366; color:#fff;
  font-weight:600; text-decoration:none; box-shadow:0 10px 24px -10px rgba(37,211,102,.5);
  transition:transform .2s ease;
}
.gpp-product-wa:hover{ transform:translateY(-2px); color:#fff; }
.gpp-product-trust{
  list-style:none; padding:14px 16px; margin:24px 0 0;
  background:oklch(0.97 0.025 60 / .6); border-radius:14px;
  display:grid; grid-template-columns:1fr 1fr; gap:10px 18px;
}
.gpp-product-trust li{ display:flex; align-items:center; gap:8px; font-size:13px; color:#1a1f2c; }
.gpp-product-trust .t-ic{ display:inline-flex; color:var(--brand-green,#2EA44F); }
.gpp-product-trust .t-ic .icon{ width:18px; height:18px; }
.gpp-product-meta{ margin-top:14px; font-size:13px; color:oklch(0.45 0.02 240); }

/* tabs */
.gpp-product-tabs{ margin-top:48px; }
.woocommerce-tabs ul.tabs{
  list-style:none !important; padding:0 !important; margin:0 0 18px !important;
  display:flex; flex-wrap:wrap; gap:6px; border-bottom:1px solid oklch(0.92 0.01 240);
}
.woocommerce-tabs ul.tabs::before, .woocommerce-tabs ul.tabs::after{ display:none !important; }
.woocommerce-tabs ul.tabs li{
  background:transparent !important; border:0 !important; border-radius:10px 10px 0 0 !important;
  padding:0 !important; margin:0 !important;
}
.woocommerce-tabs ul.tabs li a{
  display:inline-block; padding:10px 18px; font-weight:600; color:oklch(0.45 0.02 240) !important;
  text-decoration:none !important; border-bottom:2px solid transparent;
}
.woocommerce-tabs ul.tabs li.active a{ color:var(--brand-green,#2EA44F) !important; border-bottom-color:var(--brand-green,#2EA44F); }
.woocommerce-Tabs-panel{ padding:18px 0 0; }
.woocommerce-Tabs-panel h2{ display:none; }

/* related */
.related.products > h2, .upsells.products > h2{
  font-family:"Plus Jakarta Sans",sans-serif; font-size:24px; margin:48px 0 18px;
}

/* Woo notices */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error{
  border-radius:12px; padding:14px 18px; border-left-width:4px;
}
.woocommerce-message{ border-left-color:var(--brand-green,#2EA44F); background:oklch(0.93 0.06 150 / .35); }
.woocommerce-info{ border-left-color:var(--brand-orange,#F58220); background:oklch(0.97 0.05 60 / .5); }

/* cart, checkout pages — minimal polish */
.woocommerce table.shop_table{ border-radius:12px; overflow:hidden; border:1px solid oklch(0.92 0.01 240); }
.woocommerce .button{ border-radius:10px !important; }

/* Reset Woo's default product image float on single */
.woocommerce div.product div.images, .woocommerce div.product div.summary{
  width:100% !important; float:none !important; margin:0 !important;
}


/* =============================================================
 * v6.1 — Blog & WooCommerce polish
 * ============================================================= */

/* Single post: prevent empty sticky sidebar showing as blank gap */
.gpp-post-side:empty{ display:none; }
.gpp-post-side > *:empty{ display:none; }
.gpp-toc[hidden]{ display:none !important; }

/* Better post hero on mobile */
@media (max-width:767px){
  .gpp-post-hero{ padding:88px 0 12px; }
  .gpp-post-title{ font-size:clamp(24px, 7vw, 32px); }
  .gpp-post-cover{ margin-top:18px; border-radius:14px; }
  .gpp-post-layout{ gap:24px; }
  .prose-gpp{ font-size:16px; line-height:1.7; }
  .prose-gpp h2{ font-size:1.45em; margin-top:1.6em; }
  .prose-gpp h3{ font-size:1.2em; }
}

/* Page hero refinements */
.gpp-pagehero{ position:relative; overflow:hidden; }
.gpp-pagehero .container{ position:relative; z-index:1; }

/* WooCommerce — ensure brand-coloured gradient title */
.gpp-woo-single .gpp-product-title{
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;
}

/* Force gallery to fill its column nicely */
.gpp-product-media{
  background:linear-gradient(135deg, #fff, oklch(0.97 0.05 150 / .35));
  border:1px solid oklch(0.92 0.01 240);
  box-shadow:0 18px 50px -24px oklch(0.2 0.02 240 / .25);
  padding:18px; border-radius:20px;
}
.gpp-product-media .woocommerce-product-gallery{ opacity:1 !important; width:100% !important; float:none !important; margin:0 !important; }
.gpp-product-media .woocommerce-product-gallery img{ display:block; max-width:100%; height:auto; border-radius:12px; }
.gpp-product-media .woocommerce-product-gallery__wrapper{ margin:0; }
.gpp-product-media .woocommerce-product-gallery__trigger{
  position:absolute; top:14px; right:14px; z-index:3;
  width:38px; height:38px; border-radius:999px;
  background:#fff; color:#1a1f2c; display:inline-flex; align-items:center; justify-content:center;
  font-size:0; box-shadow:0 8px 20px -8px oklch(0.2 0.02 240 / .3); text-decoration:none;
}
.gpp-product-media .woocommerce-product-gallery__trigger::before{
  content:""; width:16px; height:16px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.4'><circle cx='11' cy='11' r='7'/><path d='m21 21-4.3-4.3'/><path d='M11 8v6'/><path d='M8 11h6'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.4'><circle cx='11' cy='11' r='7'/><path d='m21 21-4.3-4.3'/><path d='M11 8v6'/><path d='M8 11h6'/></svg>") center/contain no-repeat;
}

/* Variations form */
.gpp-product-info .variations{ width:100%; margin:0 0 14px; }
.gpp-product-info .variations th, .gpp-product-info .variations td{ padding:8px 0; vertical-align:middle; }
.gpp-product-info .variations select{
  padding:9px 12px; border-radius:10px; border:1px solid oklch(0.92 0.01 240);
  background:#fff; font-size:14px; min-width:160px;
}
.gpp-product-info .reset_variations{ display:inline-block; margin-left:10px; font-size:13px; color:var(--brand-orange,#F58220); }
.gpp-product-info .woocommerce-variation-price{ margin:10px 0; font-weight:700; }

/* Tabs panel typography — use prose */
.woocommerce-Tabs-panel{ font-size:15px; line-height:1.7; color:oklch(0.25 0.02 240); }
.woocommerce-Tabs-panel p{ margin:0 0 1em; }
.woocommerce-Tabs-panel ul, .woocommerce-Tabs-panel ol{ padding-left:1.4em; }

/* Reviews */
#reviews .commentlist{ list-style:none; padding:0; margin:0 0 24px; display:flex; flex-direction:column; gap:14px; }
#reviews .comment_container{
  background:#fff; border:1px solid oklch(0.92 0.01 240); border-radius:14px;
  padding:14px 16px; display:flex; gap:14px; align-items:flex-start;
}
#reviews .avatar{ border-radius:999px; }
#reviews .comment-text{ flex:1; }
#review_form_wrapper .comment-form{ display:grid; gap:12px; }
#review_form_wrapper textarea, #review_form_wrapper input[type=text], #review_form_wrapper input[type=email]{
  width:100%; padding:11px 14px; border-radius:10px; border:1px solid oklch(0.92 0.01 240);
  font-size:15px; background:#fff; outline:none;
}
#review_form_wrapper textarea:focus, #review_form_wrapper input:focus{ border-color:var(--brand-green,#2EA44F); }
#review_form_wrapper .submit{
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F)) !important;
  color:#fff !important; border:0 !important; border-radius:10px !important;
  padding:11px 22px !important; font-weight:700 !important; cursor:pointer;
}

/* Related / upsells grid uses same product card */
.related.products ul.products,
.upsells.products ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
  gap:18px; padding:0; margin:0; list-style:none;
}

/* Mobile single product */
@media (max-width:767px){
  .gpp-product-grid{ gap:20px; }
  .gpp-product-media{ padding:12px; border-radius:16px; }
  .gpp-product-title{ font-size:clamp(22px,6.5vw,28px); }
  .gpp-product-price{ font-size:24px; }
  .gpp-product-trust{ grid-template-columns:1fr; }
  .gpp-product-cart .quantity input{ width:56px; }
  .gpp-product-cart .single_add_to_cart_button{ padding:12px 18px !important; font-size:14px !important; }
  .gpp-product-wa{ width:100%; justify-content:center; }
}

/* Shop archive — chip gallery filter look (categories) */
.gpp-woo-archive .term-description{ color:oklch(0.45 0.02 240); margin:0 0 16px; font-size:15px; }
.gpp-woo-archive .gpp-shop-bar{ position:sticky; top:78px; z-index:5; box-shadow:0 8px 24px -16px oklch(0.2 0.02 240 / .2); }

/* Mobile shop grid: 2 cols min */
@media (max-width:600px){
  .woocommerce ul.products{ grid-template-columns:repeat(2, 1fr) !important; gap:12px; }
  .gpp-prod-media{ padding:10px; }
  .gpp-prod-body{ padding:10px 12px 12px; }
  .gpp-prod-title{ font-size:13px; min-height:2.4em; }
  .gpp-prod-price{ font-size:15px; }
  .gpp-prod-add{ padding:0 12px 10px; }
  .gpp-prod-add .button{ padding:8px 10px !important; font-size:12px !important; }
}

/* Cart/checkout polish */
.woocommerce-cart .cart_totals h2,
.woocommerce-checkout #order_review_heading{
  font-family:"Plus Jakarta Sans",sans-serif; font-size:22px; margin:0 0 14px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  padding:11px 14px !important; border-radius:10px !important;
  border:1px solid oklch(0.92 0.01 240) !important; font-size:15px !important; background:#fff !important;
}
.woocommerce-cart table.cart img{ width:64px; height:auto; border-radius:8px; }
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt{
  background:linear-gradient(135deg,var(--brand-orange,#F58220),var(--brand-green,#2EA44F)) !important;
  color:#fff !important; border:0 !important; border-radius:10px !important;
  padding:11px 22px !important; font-weight:700 !important;
}

/* Stars colour */
.woocommerce .star-rating::before,
.woocommerce p.stars a{ color:var(--brand-orange,#F58220) !important; }
.woocommerce .star-rating span::before{ color:var(--brand-orange,#F58220); }

/* Page (page.php) — give the article more breathing room */
.gpp-main .container-narrow .prose-gpp{ padding:8px 0 0; }

/* Ensure no horizontal overflow on Woo pages from native styles */
.gpp-woo, .gpp-woo .container{ overflow-x:clip; }

/* =========================================================================
   v6.2 — Modern cover-image card hero (single.php + page-hero.php)
   ========================================================================= */
.gpp-post-hero.has-cover{ padding:108px 0 24px; background:linear-gradient(180deg,#fff 0%,oklch(0.99 0.01 80) 100%); }
.gpp-post-hero.no-cover .gpp-post-hero__band{ padding:24px 0 16px; }
.gpp-pagehero.has-cover{ padding:104px 0 40px; }

.gpp-cover-card{
  position:relative;
  margin:18px 0 0;
  border-radius:24px;
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(135deg, oklch(0.72 0.18 55 / .12), oklch(0.62 0.16 145 / .12));
  box-shadow:
    0 24px 60px -22px oklch(0.72 0.18 55 / .35),
    0 24px 60px -22px oklch(0.62 0.16 145 / .35),
    0 1px 2px oklch(0.2 0.02 240 / .08);
  border:1px solid oklch(1 0 0 / .6);
}
.gpp-cover-card__media{
  position:relative;
  aspect-ratio:21/9;
  width:100%;
  background:linear-gradient(135deg, oklch(0.72 0.18 55), oklch(0.62 0.16 145));
}
.gpp-cover-card__media img,
.gpp-cover-card__media .wp-post-image{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  display:block;
  border-radius:0 !important;
  box-shadow:none !important;
  margin:0 !important;
}
.gpp-cover-card__scrim{
  position:absolute; inset:0;
  background:linear-gradient(180deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,0) 35%,
    rgba(0,0,0,.35) 65%,
    rgba(0,0,0,.78) 100%);
  pointer-events:none;
  z-index:1;
}
.gpp-cover-card__overlay{
  position:absolute; left:0; right:0; bottom:0;
  z-index:2;
  padding:28px 32px 28px;
  color:#fff;
  display:flex; flex-direction:column; gap:10px;
}
.gpp-cover-card__title{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:clamp(24px, 3.6vw, 44px);
  line-height:1.12;
  letter-spacing:-.02em;
  margin:0;
  color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.4);
  max-width:920px;
}
.gpp-cover-card__sub{
  margin:0; max-width:760px;
  color:rgba(255,255,255,.88);
  font-size:clamp(14px,1.5vw,17px);
  line-height:1.55;
}
.gpp-cover-card__meta{
  display:flex; flex-wrap:wrap; gap:10px; align-items:center;
  font-size:14px; color:rgba(255,255,255,.85);
  margin-top:2px;
}
.gpp-cover-card__meta .dot{opacity:.6;}
.gpp-chip--on-dark{
  background:rgba(255,255,255,.18);
  color:#fff;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.28);
  margin-bottom:0;
}
.gpp-chip--on-dark:hover{ background:rgba(255,255,255,.28); }

@media (max-width:767px){
  .gpp-post-hero.has-cover{ padding:96px 0 16px; }
  .gpp-pagehero.has-cover{ padding:92px 0 28px; }
  .gpp-cover-card{ border-radius:18px; }
  .gpp-cover-card__media{ aspect-ratio:4/3; }
  .gpp-cover-card__overlay{ padding:18px 18px 18px; gap:8px; }
  .gpp-cover-card__title{ font-size:clamp(20px, 6vw, 28px); }
  .gpp-cover-card__meta{ font-size:13px; }
}

/* Page hero band — make sure title clears the sticky header */
.gpp-pagehero{ padding:128px 0 56px; min-height:240px; }
@media (max-width:767px){
  .gpp-pagehero{ padding:104px 0 36px; min-height:auto; }
}

/* =========================================================================
   v6.2 — Bullet-proof prose against inline SVGs / pasted breadcrumb lists
   ========================================================================= */
.prose-gpp svg{
  max-width:1.2em;
  max-height:1.2em;
  width:auto; height:1em;
  vertical-align:-.18em;
  display:inline-block;
  flex-shrink:0;
}
.prose-gpp ul, .prose-gpp ol{ list-style-position:outside; }
.prose-gpp ul{ list-style:disc; }
.prose-gpp ol{ list-style:decimal; }
.prose-gpp ul ul{ list-style:circle; }
.prose-gpp ol ol{ list-style:lower-alpha; }
.prose-gpp li > svg:first-child{ width:.9em; height:.9em; margin-right:.25em; }

/* Hide a stray "Home > X" breadcrumb list pasted as the very first block of a page */
.prose-gpp > ul:first-child:has(li:first-child + li svg){ display:none; }

/* =========================================================================
   v6.2 — WooCommerce: cover-card around gallery, image fallback, mobile CTA
   ========================================================================= */
.gpp-product-cover-card{
  border-radius:24px;
  background:linear-gradient(135deg, #fff, oklch(0.97 0.05 150 / .35));
  border:1px solid oklch(0.92 0.01 240);
  box-shadow:0 24px 60px -22px oklch(0.62 0.16 145 / .25);
  padding:18px;
  position:relative;
  overflow:hidden;
}
.gpp-product-cover-card .woocommerce-product-gallery{ margin:0 !important; }
.gpp-product-cover-card .woocommerce-product-gallery__image img{ border-radius:14px; }

.gpp-prod-media{ position:relative; aspect-ratio:1/1; overflow:hidden; border-radius:14px; background:oklch(0.97 0.005 240); }
.gpp-prod-media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s; }
.gpp-prod-card:hover .gpp-prod-media img{ transform:scale(1.05); }
.gpp-prod-media-fallback{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, oklch(0.72 0.18 55 / .15), oklch(0.62 0.16 145 / .15));
  color:oklch(0.62 0.16 145);
}
.gpp-prod-media-fallback svg{ width:48px; height:48px; opacity:.5; position:absolute; }
.gpp-prod-media-letter{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:64px; font-weight:800;
  background:linear-gradient(135deg, oklch(0.72 0.18 55), oklch(0.62 0.16 145));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
  position:relative;
}

/* Mobile sticky add-to-cart on single product */
@media (max-width:767px){
  .gpp-woo-single .gpp-product-cart{
    position:sticky; bottom:0; left:0; right:0;
    z-index:30;
    margin:16px -16px 0;
    padding:12px 16px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-top:1px solid oklch(0.92 0.01 240);
    box-shadow:0 -8px 24px -10px oklch(0.2 0.02 240 / .15);
  }
  .gpp-woo-single .gpp-product-cart .single_add_to_cart_button{ width:100%; }
}

/* Tabs polish */
.gpp-product-tabs .woocommerce-tabs ul.tabs{
  list-style:none; padding:0; margin:0 0 24px;
  display:flex; flex-wrap:wrap; gap:8px;
  border-bottom:1px solid oklch(0.92 0.01 240);
}
.gpp-product-tabs .woocommerce-tabs ul.tabs li{
  margin:0; padding:0; background:transparent; border:0;
}
.gpp-product-tabs .woocommerce-tabs ul.tabs li a{
  display:inline-block;
  padding:10px 18px;
  border-radius:999px 999px 0 0;
  font-weight:600; font-size:14px;
  color:oklch(0.45 0.02 240);
  text-decoration:none;
  transition:all .2s;
}
.gpp-product-tabs .woocommerce-tabs ul.tabs li.active a,
.gpp-product-tabs .woocommerce-tabs ul.tabs li a:hover{
  color:#fff;
  background:linear-gradient(135deg, oklch(0.72 0.18 55), oklch(0.62 0.16 145));
}

/* Restore .container-narrow article spacing on cover-card pages */
.gpp-pagehero.has-cover + section .prose-gpp{ padding-top:0; }

/* =====================================================================
   v9 — WooCommerce single-product polish + global header/logo fixes
   ===================================================================== */

/* A) Cap the WordPress custom-logo on every page so it never towers over content */
.gpp-topnav .custom-logo,
.gpp-topnav img.custom-logo,
.wp-custom-logo .gpp-topnav .custom-logo{
  max-height:44px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain;
}
@media (max-width:900px){
  .gpp-topnav .custom-logo{ max-height:36px !important; }
}
/* If the logo wrapper is also styled, keep it tidy */
.gpp-topnav .custom-logo-link,
.gpp-topnav .site-logo{ display:inline-flex; align-items:center; max-height:48px; }

/* B) Reserve room for the fixed header on Woo pages (home/single/page/archive
   already handle their own offset via .hero-section / .gpp-pagehero / .gpp-post-hero) */
.gpp-woo{ padding-top:96px; }
@media (max-width:900px){ .gpp-woo{ padding-top:80px; } }
.gpp-woo > section:first-child{ padding-top:24px; }

/* C) Single-product grid — stop placeholder image from inflating the row */
.gpp-woo-single .gpp-product-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  gap:48px;
  align-items:start;
}
@media (max-width:899px){
  .gpp-woo-single .gpp-product-grid{ grid-template-columns:1fr; gap:24px; }
}

/* D) Cover-card image well — constrain placeholder, brand the empty state */
.gpp-woo-single .gpp-product-cover-card{
  position:relative;
  background:linear-gradient(135deg,
    color-mix(in oklab, var(--brand-orange) 6%, white),
    color-mix(in oklab, var(--brand-green) 6%, white));
  border:1px solid color-mix(in oklab, var(--brand-orange) 14%, white);
  border-radius:22px;
  padding:18px;
  box-shadow:0 24px 60px -32px rgba(0,0,0,.18);
  overflow:hidden;
}
.gpp-woo-single .gpp-product-cover-card .woocommerce-product-gallery{
  display:flex; align-items:center; justify-content:center;
  width:100% !important; margin:0 !important; opacity:1 !important;
}
.gpp-woo-single .gpp-product-cover-card .woocommerce-product-gallery__wrapper{
  width:100%; margin:0;
}
.gpp-woo-single .gpp-product-cover-card .woocommerce-product-gallery img{
  display:block; width:100%; height:auto; max-height:520px;
  object-fit:contain; border-radius:14px;
}
/* Branded "no image" placeholder */
.gpp-woo-single .woocommerce-product-gallery--without-images{
  min-height:380px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,
    color-mix(in oklab, var(--brand-orange) 10%, white),
    color-mix(in oklab, var(--brand-green) 10%, white));
  border-radius:14px;
}
.gpp-woo-single .woocommerce-product-gallery--without-images img{
  max-width:55%; max-height:280px; opacity:.32;
}
.gpp-woo-single .gpp-product-cover-card .onsale{
  position:absolute; top:18px; left:18px; z-index:2;
  background:linear-gradient(135deg, var(--brand-orange), var(--brand-green));
  color:#fff; font-weight:700; font-size:12px; letter-spacing:.06em;
  padding:6px 14px; border-radius:999px;
  box-shadow:0 8px 20px -8px color-mix(in oklab, var(--brand-orange) 60%, transparent);
}

/* E) Info column — chip eyebrow, trust grid, polish */
.gpp-woo-single .gpp-product-info{
  display:flex; flex-direction:column; gap:14px;
}
.gpp-woo-single .gpp-product-eyebrow{
  display:inline-flex; align-self:flex-start; align-items:center;
  padding:5px 14px; border-radius:999px;
  background:linear-gradient(135deg, var(--brand-orange), var(--brand-green));
  color:#fff !important; font-size:11px; font-weight:700;
  letter-spacing:.16em; text-transform:uppercase; margin-bottom:0;
}
.gpp-woo-single .gpp-product-title{
  margin:0; font-size:clamp(28px,3.6vw,40px); line-height:1.12;
  font-weight:800; letter-spacing:-.02em;
}
.gpp-woo-single .gpp-product-price{
  margin:0; font-size:30px; font-weight:800;
  display:flex; flex-wrap:wrap; align-items:baseline; gap:10px;
}
.gpp-woo-single .gpp-product-price ins{
  background:linear-gradient(135deg, var(--brand-orange), var(--brand-green));
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; text-decoration:none;
}
.gpp-woo-single .gpp-product-short{
  font-size:15.5px; line-height:1.65; color:oklch(0.35 0.02 240);
  margin:0; padding:14px 16px;
  background:color-mix(in oklab, var(--brand-orange) 4%, white);
  border-left:3px solid var(--brand-orange);
  border-radius:6px;
}
.gpp-woo-single .gpp-product-trust{
  display:grid !important; grid-template-columns:1fr 1fr;
  gap:12px 18px; list-style:none;
  padding:18px; margin:6px 0 0;
  background:color-mix(in oklab, var(--brand-green) 5%, white);
  border:1px solid color-mix(in oklab, var(--brand-green) 14%, white);
  border-radius:16px;
}
.gpp-woo-single .gpp-product-trust li{
  display:flex; align-items:center; gap:10px;
  font-size:13.5px; font-weight:600; color:#1a1f2c; margin:0;
}
.gpp-woo-single .gpp-product-trust .t-ic{
  display:inline-flex; width:32px; height:32px; flex:0 0 32px;
  align-items:center; justify-content:center; border-radius:10px;
  background:#fff; color:var(--brand-green);
  box-shadow:0 4px 12px -6px rgba(0,0,0,.15);
}
.gpp-woo-single .gpp-product-trust .t-ic .icon{ width:18px; height:18px; }
@media (max-width:600px){
  .gpp-woo-single .gpp-product-trust{ grid-template-columns:1fr; }
}

/* WhatsApp enquire as a real branded button */
.gpp-woo-single .gpp-product-wa{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:14px 22px; border-radius:14px;
  background:linear-gradient(135deg, #25D366, #128C7E);
  color:#fff !important; font-weight:700; text-decoration:none;
  box-shadow:0 14px 28px -14px rgba(37,211,102,.55);
  transition:transform .2s ease, box-shadow .2s ease;
}
.gpp-woo-single .gpp-product-wa:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 32px -14px rgba(37,211,102,.7);
}

/* F) Mobile sticky add-to-cart bar */
@media (max-width:899px){
  .gpp-woo-single .gpp-product-cart{
    position:sticky; bottom:0; z-index:30;
    margin:14px -16px 0; padding:12px 16px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
    border-top:1px solid color-mix(in oklab, var(--brand-orange) 18%, white);
    box-shadow:0 -10px 24px -16px rgba(0,0,0,.22);
  }
  .gpp-woo-single .gpp-product-cart form.cart{
    display:flex; gap:10px; align-items:stretch; margin:0;
  }
  .gpp-woo-single .gpp-product-cart .quantity{ flex:0 0 auto; margin:0; }
  .gpp-woo-single .gpp-product-cart .single_add_to_cart_button{
    flex:1; padding:14px 18px !important; font-size:15px !important;
  }
}

/* G) Tabs — wrap in a card with pill tabs */
.gpp-woo-single .gpp-product-tabs{
  margin-top:56px; padding:28px;
  background:#fff; border-radius:20px;
  border:1px solid oklch(0.94 0.005 240);
  box-shadow:0 18px 40px -28px rgba(0,0,0,.18);
}
@media (max-width:600px){
  .gpp-woo-single .gpp-product-tabs{ padding:18px; border-radius:16px; }
}
.gpp-woo-single .woocommerce-tabs ul.tabs{
  list-style:none !important; padding:0 !important; margin:0 0 20px !important;
  display:flex; gap:8px; flex-wrap:wrap;
  border-bottom:1px solid oklch(0.92 0.01 240);
}
.gpp-woo-single .woocommerce-tabs ul.tabs::before,
.gpp-woo-single .woocommerce-tabs ul.tabs::after{ display:none !important; }
.gpp-woo-single .woocommerce-tabs ul.tabs li{
  margin:0 !important; padding:0 !important;
  background:transparent !important; border:none !important;
}
.gpp-woo-single .woocommerce-tabs ul.tabs li::before,
.gpp-woo-single .woocommerce-tabs ul.tabs li::after{ display:none !important; }
.gpp-woo-single .woocommerce-tabs ul.tabs li a{
  display:inline-block; padding:11px 20px;
  border-radius:12px 12px 0 0;
  color:oklch(0.42 0.02 240); font-weight:600; text-decoration:none;
  transition:color .2s ease, background .2s ease;
}
.gpp-woo-single .woocommerce-tabs ul.tabs li.active a{
  background:linear-gradient(135deg, var(--brand-orange), var(--brand-green));
  color:#fff !important;
}
.gpp-woo-single .woocommerce-tabs ul.tabs li a:hover{
  color:var(--brand-green);
}
/* Hide WooCommerce's auto-injected duplicate "Description" / "Additional information" h2 */
.gpp-woo-single .woocommerce-Tabs-panel > h2:first-child{ display:none; }

/* H) Mobile order: trust + WA above the sticky cart */
@media (max-width:899px){
  .gpp-woo-single .gpp-product-info{ display:flex; flex-direction:column; }
  .gpp-woo-single .gpp-product-eyebrow{ order:1; }
  .gpp-woo-single .gpp-product-title{ order:2; }
  .gpp-woo-single .gpp-product-price{ order:3; }
  .gpp-woo-single .gpp-product-short{ order:4; }
  .gpp-woo-single .gpp-product-wa{ order:5; }
  .gpp-woo-single .gpp-product-trust{ order:6; }
  .gpp-woo-single .gpp-product-meta{ order:7; }
  .gpp-woo-single .gpp-product-cart{ order:99; }
}
