:root{
  --purple:#432D76;
  --purple-2:#5a3d9a;
  --purple-3:#8f67ff;
  --dark:#140d25;
  --dark-2:#1b1033;
  --text:#120d20;
  --muted:#7d7592;
  --border:#e8dff5;
  --light:#f6f1ff;
  --white:#fff;
  --radius:24px;
  --shadow:0 18px 48px rgba(67,45,118,.10);
  --shadow-2:0 26px 80px rgba(67,45,118,.18);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.6}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}
.container{width:min(1320px,calc(100% - 40px));margin:0 auto}
.top-bar{background:var(--purple);color:#fff;font-size:.72rem;letter-spacing:.06em}.top-bar-inner{display:flex;justify-content:center;gap:28px;padding:8px 0;flex-wrap:wrap}
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--border);overflow:visible}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}.logo{display:flex;align-items:center;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--purple);font-size:1.15rem}.menu,.footer-menu,.mobile-menu{display:flex;gap:26px;list-style:none;padding:0;margin:0}.menu a,.footer-menu a{font-size:.92rem;color:var(--text);font-weight:600}.menu a:hover,.footer-menu a:hover{color:var(--purple)}
.header-actions{display:flex;align-items:center;gap:12px}.header-pill,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 22px;font-weight:800;letter-spacing:.04em;transition:transform .2s ease,background .2s ease,border-color .2s ease, box-shadow .2s ease}.header-pill,.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover,.header-pill:hover{background:#fff;color:var(--purple);border-color:var(--purple);transform:translateY(-1px);box-shadow:0 14px 34px rgba(67,45,118,.16)}.btn-ghost{border:1px solid rgba(255,255,255,.24);background:transparent;color:#fff}.btn-outline,.btn-secondary{border:1.5px solid var(--border);background:#fff;color:var(--text)}.btn-outline:hover{border-color:var(--purple);color:var(--purple)}.micro{padding:10px 16px;font-size:.66rem;min-height:40px}.glow-btn{box-shadow:0 14px 30px rgba(143,103,255,.24)}
.cart-link{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border);border-radius:999px}.cart-link strong{display:grid;place-items:center;min-width:22px;height:22px;background:var(--purple);color:#fff;border-radius:999px;font-size:.78rem}.mobile-toggle{display:none;background:none;border:none;font-size:24px}.mobile-nav{display:none;border-top:1px solid var(--border)}
.hero-section{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 50%,rgba(123,92,191,.25),transparent 35%),radial-gradient(circle at 85% 40%,rgba(123,92,191,.20),transparent 30%),linear-gradient(180deg,#130a24,#241145);color:#fff;padding:72px 0 44px}.hero-noise{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;opacity:.45}.hero-grid-lines{position:absolute;inset:0;background:radial-gradient(circle at center,transparent 0,transparent 36%,rgba(255,255,255,.04) 100%)}.hero-glow,.hero-orb{position:absolute;border-radius:999px;filter:blur(50px)}.hero-glow-a{width:360px;height:360px;background:rgba(123,92,191,.22);left:8%;top:10%}.hero-glow-b{width:300px;height:300px;background:rgba(123,92,191,.16);right:10%;top:16%}.hero-orb-a{width:150px;height:150px;background:rgba(143,103,255,.14);left:42%;top:18%;animation:floatOrb 11s ease-in-out infinite}.hero-orb-b{width:190px;height:190px;background:rgba(143,103,255,.10);right:18%;bottom:12%;animation:floatOrb 14s ease-in-out infinite reverse}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:24px;align-items:center;position:relative;z-index:2;min-height:690px}.hero-copy-wrap{padding:24px 0 28px 10px;max-width:700px}.eyebrow{display:inline-flex;padding:9px 14px;border:1px solid var(--border);border-radius:999px;font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;color:#b6a5dd;background:#fff}.eyebrow.dark{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#d8cbf7}.hero-title{font-size:clamp(3.4rem,6.2vw,6.8rem);line-height:.92;margin:14px 0 14px;font-weight:900;letter-spacing:.005em;white-space:pre-line;text-wrap:balance;max-width:8.2ch}.hero-copy{max-width:520px;color:rgba(255,255,255,.82);font-size:1.02rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-stats{display:flex;gap:18px;margin-top:42px;flex-wrap:wrap}.hero-stats div{min-width:120px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}.hero-stats strong{display:block;font-size:2rem;line-height:1;font-weight:900}.hero-stats span{font-size:.8rem;color:rgba(255,255,255,.64);text-transform:uppercase;letter-spacing:.08em}
.hero-stage{position:relative;min-height:620px;display:flex;align-items:center;justify-content:center;perspective:1000px;padding-top:18px}.hero-art{position:absolute;max-width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 36px 80px rgba(0,0,0,.35));will-change:transform}.hero-art-back{width:min(78%,640px);opacity:.35;transform:translate(20px,-10px);animation:heroBack 10s ease-in-out infinite}.hero-art-front{width:min(92%,780px);animation:heroFront 8s ease-in-out infinite}.hero-floating-card{position:absolute;padding:12px 18px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px);font-size:.84rem;font-weight:800;letter-spacing:.04em;color:#fff;box-shadow:0 20px 40px rgba(0,0,0,.12)}.hero-floating-card-a{left:7%;top:8%;animation:floatCard 7s ease-in-out infinite}.hero-floating-card-b{right:7%;bottom:10%;animation:floatCard 9s ease-in-out infinite reverse}
@keyframes heroFront{0%,100%{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-12px) rotate(.6deg)}50%{transform:translateY(-6px) rotate(-.4deg)}75%{transform:translateY(-14px) rotate(.4deg)}}
@keyframes heroBack{0%,100%{transform:translate(20px,-10px) scale(.98)}50%{transform:translate(30px,8px) scale(1.02)}}
@keyframes floatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes floatOrb{0%,100%{transform:translate(0,0)}50%{transform:translate(18px,-16px)}}
.proof-strip{background:#fff;padding:18px 0 0}.proof-strip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.proof-pill{padding:16px 18px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.proof-pill strong{display:block;font-size:.92rem;margin-bottom:2px}.proof-pill span{display:block;color:var(--muted);font-size:.82rem;line-height:1.45}
.section{padding:88px 0}.best-sellers{background:#fff}.catalog-section{background:#faf7ff}.coa-home-section{background:linear-gradient(180deg,#fff,#f7f3ff)}.about-end-section{position:relative;background:linear-gradient(180deg,#1a0d31,#251147);color:#fff;overflow:hidden;padding-bottom:76px}.about-end-bg{position:absolute;inset:0;background:radial-gradient(circle at 20% 40%,rgba(123,92,191,.25),transparent 30%),radial-gradient(circle at 80% 20%,rgba(123,92,191,.22),transparent 25%)}.closing-cta-section{padding-top:24px;background:#fff}
.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:30px}.section-head.stacked{align-items:flex-start}.large-head{align-items:start}.display-title{font-size:clamp(3rem,6vw,5.4rem);line-height:.9;letter-spacing:.01em;text-transform:uppercase;font-weight:900;margin:10px 0 6px}.section-sub{max-width:760px;color:var(--muted);font-size:1rem}.count-pill{border:1px solid var(--border);border-radius:999px;padding:14px 18px;font-weight:700;color:var(--muted);background:#fff}
.catalog-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:26px}.search-wrap{min-width:280px;flex:1;max-width:370px}.search-wrap input{width:100%;padding:14px 18px;border:1.5px solid var(--border);border-radius:999px;font-size:.96rem;background:#fff}.filter-pills{display:flex;gap:10px;flex-wrap:wrap}.filter-pill{padding:12px 18px;border:1.5px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);font-weight:800;cursor:pointer;transition:.2s}.filter-pill.active,.filter-pill:hover{border-color:var(--purple);color:var(--purple);box-shadow:0 10px 24px rgba(67,45,118,.08)}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.catalog-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
.product-card{display:flex;flex-direction:column;background:#fff;border:1.5px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);transition:transform .24s ease, box-shadow .24s ease,border-color .24s ease;position:relative;isolation:isolate}.product-card:before{content:"";position:absolute;inset:-30% auto auto -120%;width:80%;height:180%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:rotate(14deg);transition:transform .9s ease;z-index:0}.product-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-2);border-color:#c8b8e8}.product-card:hover:before{transform:translateX(270%) rotate(14deg)}.product-image{background:#fff;padding:18px;height:260px;display:grid;place-items:center;position:relative;z-index:1}.catalog-card .product-image{height:188px;padding:14px}.product-image img{max-height:200px;object-fit:contain;mix-blend-mode:multiply;transition:transform .28s ease}.product-card:hover .product-image img{transform:translateY(-6px) scale(1.045) rotate(-1deg)}.catalog-card .product-image img{max-height:140px}.product-badge{position:absolute;left:14px;top:14px;background:var(--purple);color:#fff;border-radius:999px;padding:7px 11px;font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.strength-chips{display:flex;flex-wrap:wrap;gap:8px}.strength-chips.overlay{position:absolute;right:12px;bottom:12px;justify-content:flex-end}.strength-chips span{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:#f7f4fc;color:var(--purple);font-size:.72rem;font-weight:700;line-height:1}.catalog-card .strength-chips span{padding:5px 8px;font-size:.64rem}.product-body{padding:16px;display:flex;flex-direction:column;gap:10px;flex:1;position:relative;z-index:1;min-height:0}.catalog-card .product-body{padding:14px}.product-meta-row{display:flex;flex-direction:column;gap:4px}.product-category{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:var(--purple)}.product-sku-line{font-size:.75rem;color:var(--muted);font-weight:700}.product-body h3{font-size:1.1rem;line-height:1.15;margin:0}.catalog-card .product-body h3{font-size:.95rem}.product-purity{margin-top:4px;color:var(--muted);font-size:.78rem;display:flex;align-items:center;gap:8px}.dot{width:7px;height:7px;background:#5ece75;border-radius:999px;display:inline-block;flex-shrink:0}.product-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.price{font-size:1.45rem;font-weight:900;color:var(--purple);line-height:1.1}.catalog-card .price{font-size:1.15rem}.card-actions{display:flex;align-items:center;gap:8px}.eye-btn{width:38px;height:38px;border:1px solid var(--border);border-radius:999px;display:grid;place-items:center;color:var(--purple);background:#fff;font-size:.84rem}.catalog-card .eye-btn{width:34px;height:34px}.eye-btn:hover{border-color:var(--purple);background:#fff;color:var(--purple);box-shadow:0 10px 22px rgba(67,45,118,.12)}
.coa-home-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:start}.coa-points{display:grid;gap:14px}.coa-point{padding:22px;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}.coa-point strong{display:block;font-size:1rem;margin-bottom:4px}.coa-point span{color:var(--muted)}.mini-proof-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.mini-proof-row span{padding:10px 14px;border-radius:999px;background:#f5f0ff;border:1px solid var(--border);font-size:.78rem;font-weight:700;color:var(--purple)}
.about-end-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:start}.about-end-section h2{font-size:clamp(2.4rem,4vw,4.6rem);line-height:.94;text-transform:uppercase;margin:14px 0}.about-copy{font-size:1rem;max-width:620px;color:rgba(255,255,255,.76)}.about-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.about-badges span{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:.78rem}.about-card-stack{display:grid;gap:16px}.about-card-box,.about-quote{padding:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:24px;backdrop-filter:blur(8px)}.about-card-box strong{display:block;font-size:1.02rem;margin-bottom:8px}.about-card-box p,.about-quote{color:rgba(255,255,255,.76)}.tilt-card{transition:transform .22s ease,border-color .22s ease}.tilt-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.22)}
.closing-cta{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center;padding:32px;border:1px solid var(--border);border-radius:28px;background:linear-gradient(180deg,#fff,#f8f4ff);box-shadow:var(--shadow)}.closing-cta h2{font-size:clamp(2rem,3vw,3.2rem);line-height:.95;text-transform:uppercase;margin:12px 0}.closing-cta p{color:var(--muted);max-width:640px}.closing-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.site-footer{padding:46px 0;border-top:1px solid var(--border);background:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:30px}.site-footer h3,.site-footer h4{margin:0 0 10px}.site-footer p{color:var(--muted)}
.product-detail-section{padding-top:56px}.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.product-detail-gallery{background:#fff;border:1.5px solid var(--border);border-radius:28px;padding:26px;box-shadow:var(--shadow)}.product-detail-gallery .woocommerce-product-gallery__wrapper{background:#fff}.product-detail-gallery img{mix-blend-mode:multiply}.product-detail-summary{position:sticky;top:120px}.product-detail-summary h1{font-size:clamp(2.4rem,4vw,4.4rem);line-height:.95;margin:12px 0 10px}.single-price{font-size:2rem;font-weight:900;color:var(--purple);margin-bottom:10px}.single-purity-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.single-purity-row span{padding:8px 12px;border-radius:999px;background:#f5f0ff;border:1px solid var(--border);font-size:.78rem;font-weight:700;color:var(--purple)}.single-copy{color:var(--muted);margin-bottom:18px;font-size:1rem}.single-buy-box{background:#fff;border:1.5px solid var(--border);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.single-buy-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:14px}.single-buy-top strong{font-size:1rem}.single-buy-top span{font-size:.82rem;color:var(--muted)}.single-mini-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;color:var(--muted);font-size:.88rem}.single-conversion-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.mini-conversion-card{padding:10px 14px;border-radius:999px;background:#f7f3ff;border:1px solid var(--border);font-size:.78rem;font-weight:700;color:var(--purple)}
.product-tabs-wrap{padding-top:16px}.product-tab-pills{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}.product-tab-pill{padding:14px 22px;border-radius:999px;background:#3e2475;color:#fff;font-weight:800}.product-tab-pill.active,.product-tab-pill:hover{background:#a23cb0}.product-panel{background:#fff;border:1.5px solid var(--border);border-radius:28px;padding:30px;box-shadow:var(--shadow);margin-bottom:22px;scroll-margin-top:130px}.panel-head{display:flex;justify-content:space-between;gap:18px;align-items:start;margin-bottom:18px}.product-panel h2{margin:0 0 8px;font-size:clamp(2rem,3vw,3rem);color:var(--purple)}.product-panel p{color:var(--muted)}.coa-embed{background:#f8f5ff;border:1px solid var(--border);border-radius:20px;padding:18px}.coa-embed iframe{width:100%;height:900px;border:none;border-radius:14px;background:#fff}.coa-embed.image img{width:100%;height:auto;border-radius:12px;background:#fff}.coa-empty{text-align:center;padding:40px 20px}.coa-empty h3{margin:0 0 8px}.prose{max-width:none}.prose h1,.prose h2,.prose h3{line-height:1.08}.prose p,.prose li{color:#4d4762}
.reveal-up{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}.reveal-up.is-visible{opacity:1;transform:none}
.woocommerce div.product form.cart .variations{margin:0 0 12px}.woocommerce div.product form.cart .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--purple)!important;color:#fff!important;border-radius:999px!important;padding:14px 24px!important;font-weight:800!important;text-transform:none!important}.woocommerce .quantity .qty{min-height:46px;border-radius:999px;border:1px solid var(--border);padding:0 14px}.woocommerce div.product form.cart .variations select{min-height:48px;border-radius:14px;border:1px solid var(--border);padding:0 14px}.woocommerce-product-gallery__image img{width:100%!important}

.hero-copy-tight .hero-actions .btn{min-width:188px}
.hero-floating-card-lift{transform:translateY(-10px)}
.hero-floating-card-pop{animation:floatCard 9s ease-in-out infinite reverse,pulseGlow 4.6s ease-in-out infinite}
@keyframes pulseGlow{0%,100%{box-shadow:0 20px 40px rgba(0,0,0,.12),0 0 0 0 rgba(143,103,255,.0)}50%{box-shadow:0 20px 40px rgba(0,0,0,.12),0 0 0 10px rgba(143,103,255,.08)}}
.sparkle-zone{position:relative;overflow:hidden}
.sparkle-zone:before,.sparkle-zone:after{content:"";position:absolute;border-radius:999px;pointer-events:none;filter:blur(14px);opacity:.18;animation:sectionFloat 12s ease-in-out infinite}
.sparkle-zone:before{width:120px;height:120px;right:10%;top:18%;background:rgba(143,103,255,.55)}
.sparkle-zone:after{width:90px;height:90px;left:12%;bottom:12%;background:rgba(143,103,255,.35);animation-delay:-4s}
@keyframes sectionFloat{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-18px) translateX(10px)}}
.product-card .card-actions .btn.micro,.product-card .eye-btn{transition:all .22s ease}
.product-card:hover .card-actions .btn.micro{transform:translateY(-2px) scale(1.03)}
.product-card:hover .eye-btn{transform:translateY(-2px) scale(1.06)}
.product-card:hover .strength-chips span{background:#fff;border-color:#cdbef0;box-shadow:0 8px 16px rgba(67,45,118,.08)}
.product-tab-pill:hover{background:#fff!important;color:var(--purple)!important;border-color:var(--purple)!important}
.faq-item{transition:transform .24s ease, box-shadow .24s ease}
.faq-item:hover{transform:translateY(-2px)}
.single-buy-box .button:hover,.woocommerce div.product form.cart .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{background:#fff!important;color:var(--purple)!important;border-color:var(--purple)!important}

@media (max-width:1180px){.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hero-grid,.about-end-grid,.coa-home-grid,.product-detail-grid,.closing-cta,.proof-strip-grid{grid-template-columns:1fr}.hero-stage{min-height:480px}.footer-grid{grid-template-columns:1fr}.closing-actions{justify-content:flex-start}.product-detail-summary{position:static}}
@media (max-width:900px){.desktop-nav{display:none}.mobile-toggle{display:block}.mobile-nav.open{display:block}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-copy-wrap{padding:10px 0}.hero-title{font-size:clamp(3rem,12vw,5rem);max-width:7.8ch}.display-title{font-size:clamp(2.4rem,11vw,4rem)}.hero-stage{min-height:420px}.hero-floating-card{display:none}}
@media (max-width:640px){.container{width:min(100% - 24px,1320px)}.header-inner{padding:14px 0}.top-bar-inner{gap:12px;font-size:.64rem}.product-grid,.catalog-grid,.proof-strip-grid{grid-template-columns:1fr}.hero-stage{min-height:360px}.hero-art-front{width:min(100%,560px)}.hero-art-back{width:min(86%,520px)}.hero-actions,.hero-stats,.single-conversion-row{gap:12px}.product-panel{padding:20px}.coa-embed iframe{height:560px}.proof-pill,.closing-cta{padding:22px}}


/* v6 refinements */
.section-pop{position:relative;overflow:hidden}
.section-pop:before{content:"";position:absolute;inset:auto auto -80px -40px;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle,rgba(143,103,255,.18),transparent 65%);filter:blur(8px);animation:floatOrb 10s ease-in-out infinite}
.float-pop{opacity:0;transform:translateY(26px) scale(.98);transition:opacity .6s ease,transform .6s ease,box-shadow .3s ease,border-color .3s ease}
.float-pop.is-visible{opacity:1;transform:none}
.coa-home-grid h2,.about-end-section h2{max-width:760px}
.coa-point,.about-card-box{position:relative;overflow:hidden}
.coa-point:after,.about-card-box:after{content:"";position:absolute;inset:auto -20% -80% auto;width:180px;height:180px;border-radius:999px;background:radial-gradient(circle,rgba(143,103,255,.16),transparent 60%);transition:transform .35s ease,opacity .35s ease;opacity:.5}
.coa-point:hover,.about-card-box:hover{transform:translateY(-8px);box-shadow:0 22px 60px rgba(67,45,118,.16)}
.coa-point:hover:after,.about-card-box:hover:after{transform:scale(1.15);opacity:.9}
.mini-proof-row span{animation:pulseSoft 5s ease-in-out infinite}
.mini-proof-row span:nth-child(2){animation-delay:1s}.mini-proof-row span:nth-child(3){animation-delay:2s}
@keyframes pulseSoft{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.faq-home-section{background:#fff;padding-top:56px}
.faq-head{margin-bottom:26px}.faq-list{border-top:1px solid var(--border)}
.faq-item{border-bottom:1px solid var(--border);padding:0;background:#fff}.faq-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 4px;font-size:1.2rem;font-weight:800;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{width:34px;height:34px;border-radius:999px;border:1px solid var(--border);display:grid;place-items:center;color:var(--purple);font-size:1.1rem;transition:transform .25s ease,background .25s ease}.faq-item[open] summary span{transform:rotate(45deg);background:#f7f3ff}.faq-answer{padding:0 4px 24px;color:var(--muted);max-width:780px}
.site-footer{background:linear-gradient(180deg,#1a0d31,#130923);color:#fff;border-top:none;padding:76px 0 26px}.footer-shell{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}.footer-brand-block h3{font-size:2.2rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}.footer-brand-block p,.footer-links a,.footer-legal-row p{color:rgba(255,255,255,.68)}.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:12px}.footer-links a:hover{color:#fff}.footer-socials{display:flex;gap:10px;margin-top:24px}.footer-socials a{width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.15);display:grid;place-items:center;background:rgba(255,255,255,.06);font-weight:800}.footer-socials a:hover{transform:translateY(-3px);background:rgba(255,255,255,.12)}.footer-legal-row{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;border-top:1px solid rgba(255,255,255,.08);margin-top:38px;padding-top:24px}.footer-legal-row p{max-width:900px;font-size:.88rem;margin:0}.footer-legal-row span{font-size:.8rem;color:rgba(255,255,255,.46);text-transform:uppercase;letter-spacing:.08em}
.age-gate{position:fixed;inset:0;display:none;z-index:250}.age-gate.is-visible{display:block}.age-gate__backdrop{position:absolute;inset:0;background:rgba(9,4,18,.72);backdrop-filter:blur(10px)}.age-gate__panel{position:relative;z-index:1;width:min(560px,calc(100% - 24px));margin:12vh auto 0;background:#fff;border:1px solid var(--border);border-radius:28px;padding:30px;box-shadow:var(--shadow-2);animation:ageIn .45s ease}.age-gate__panel h2{font-size:clamp(2rem,4vw,3rem);line-height:.95;margin:14px 0 10px}.age-gate__panel p{color:var(--muted)}.age-gate__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.age-gate-visible{overflow:hidden}@keyframes ageIn{from{transform:translateY(18px) scale(.98);opacity:0}to{transform:none;opacity:1}}
.floating-toast{position:fixed;left:18px;bottom:18px;z-index:120;background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow);display:grid;gap:4px;transform:translateY(24px);opacity:0;pointer-events:none;transition:.35s}.floating-toast strong{font-size:.9rem}.floating-toast span{font-size:.8rem;color:var(--muted);max-width:220px}.floating-toast.is-visible{transform:none;opacity:1}
.product-coa-jump{display:inline-flex;margin-bottom:14px;padding:8px 12px;border:1px solid var(--border);border-radius:999px;font-size:.76rem;font-weight:800;color:var(--purple);background:#f8f4ff}.product-coa-jump:hover{background:#fff;color:var(--purple);border-color:var(--purple)}
.product-tab-pills{position:sticky;top:92px;z-index:10;padding:10px 0;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.84))}
.coa-panel{margin-top:34px}

.hero-copy-tight .hero-actions .btn{min-width:188px}
.hero-floating-card-lift{transform:translateY(-10px)}
.hero-floating-card-pop{animation:floatCard 9s ease-in-out infinite reverse,pulseGlow 4.6s ease-in-out infinite}
@keyframes pulseGlow{0%,100%{box-shadow:0 20px 40px rgba(0,0,0,.12),0 0 0 0 rgba(143,103,255,.0)}50%{box-shadow:0 20px 40px rgba(0,0,0,.12),0 0 0 10px rgba(143,103,255,.08)}}
.sparkle-zone{position:relative;overflow:hidden}
.sparkle-zone:before,.sparkle-zone:after{content:"";position:absolute;border-radius:999px;pointer-events:none;filter:blur(14px);opacity:.18;animation:sectionFloat 12s ease-in-out infinite}
.sparkle-zone:before{width:120px;height:120px;right:10%;top:18%;background:rgba(143,103,255,.55)}
.sparkle-zone:after{width:90px;height:90px;left:12%;bottom:12%;background:rgba(143,103,255,.35);animation-delay:-4s}
@keyframes sectionFloat{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-18px) translateX(10px)}}
.product-card .card-actions .btn.micro,.product-card .eye-btn{transition:all .22s ease}
.product-card:hover .card-actions .btn.micro{transform:translateY(-2px) scale(1.03)}
.product-card:hover .eye-btn{transform:translateY(-2px) scale(1.06)}
.product-card:hover .strength-chips span{background:#fff;border-color:#cdbef0;box-shadow:0 8px 16px rgba(67,45,118,.08)}
.product-tab-pill:hover{background:#fff!important;color:var(--purple)!important;border-color:var(--purple)!important}
.faq-item{transition:transform .24s ease, box-shadow .24s ease}
.faq-item:hover{transform:translateY(-2px)}
.single-buy-box .button:hover,.woocommerce div.product form.cart .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{background:#fff!important;color:var(--purple)!important;border-color:var(--purple)!important}

@media (max-width:1180px){.footer-shell{grid-template-columns:1fr 1fr}.footer-legal-row{flex-direction:column;align-items:flex-start}.floating-toast{display:none}}
@media (max-width:640px){.product-grid,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.header-inner{padding:12px 0;gap:10px;align-items:flex-start}.logo{font-size:.92rem;line-height:1.05;max-width:92px}.header-actions{gap:8px}.header-pill{padding:10px 14px;font-size:.88rem}.cart-link{padding:9px 10px;gap:6px}.top-bar{font-size:.58rem}.product-card{border-radius:18px}.catalog-card .product-image{height:104px;padding:8px}.catalog-card .product-image img{max-height:78px}.catalog-card .product-body{padding:8px;gap:6px}.catalog-card .product-body h3{font-size:.78rem;line-height:1.08;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:2.55em}.catalog-card .product-category{font-size:.54rem}.catalog-card .product-sku-line{font-size:.56rem}.catalog-card .product-purity{font-size:.56rem;line-height:1.25}.catalog-card .product-footer{gap:6px;padding-top:8px}.catalog-card .price{font-size:.84rem;line-height:1.04;word-break:break-word}.catalog-card .card-actions{gap:5px;align-items:flex-end}.catalog-card .btn.micro{padding:7px 8px;font-size:.5rem;min-height:30px;line-height:1;min-width:0;max-width:52px;text-align:center;white-space:normal}.catalog-card .eye-btn{width:26px;height:26px;font-size:.62rem;flex:0 0 26px}.catalog-card .strength-chips.overlay{left:6px;right:6px;bottom:6px;justify-content:flex-start;gap:4px}.catalog-card .strength-chips span{font-size:.5rem;padding:3px 5px}.footer-shell{grid-template-columns:1fr}.faq-item summary{font-size:1rem;padding:18px 0}.age-gate__panel{padding:24px}.product-tab-pills{top:72px;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.product-tab-pill{min-width:108px;text-align:center;padding:10px 14px}.product-detail-grid{grid-template-columns:1fr;gap:22px}.product-detail-summary{position:static}.single-purity-row{gap:8px}.single-purity-row span{font-size:.68rem;padding:7px 10px}.single-buy-box{padding:16px}.hero-title{font-size:clamp(2.5rem,12vw,4rem);max-width:7.2ch}.hero-copy{font-size:.92rem}.hero-actions .btn{min-width:0;flex:1}.hero-stats{display:none}.section{padding:56px 0}}


/* v9 refinements */
.hero-copy-tight .hero-title{max-width:6.4ch;line-height:.86;letter-spacing:-.03em}
.hero-copy-tight .hero-copy{max-width:490px;margin-top:12px}
.hero-copy-tight .hero-actions{margin-top:22px}
.hero-copy-tight .hero-stats{margin-top:26px}
.hero-floating-card-a{top:3%}
.hero-stage .hero-art-front{transform-origin:center center}
.hero-stage .hero-art-back{transform-origin:center center}
.featured-grid .product-card{justify-content:space-between}
.featured-card .product-footer.compact{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}
.featured-card .price{font-size:1rem;line-height:1.05;word-break:normal;overflow-wrap:anywhere}
.featured-card .product-body h3{min-height:2.3em}
.featured-card .product-purity{min-height:2.6em}
.featured-card .card-actions{justify-content:flex-end}
.featured-card .btn.micro{min-width:86px}
.peptide-motion-section{padding-top:28px;background:linear-gradient(180deg,#faf7ff,#ffffff)}
.motion-section-head{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:end;margin-bottom:24px}
.motion-section-head h2{font-size:clamp(2rem,3.5vw,3.4rem);line-height:.94;margin:10px 0 0;max-width:11ch}
.peptide-marquee-wrap{display:grid;gap:16px;overflow:hidden}
.peptide-marquee{position:relative;overflow:hidden}
.peptide-marquee:before,.peptide-marquee:after{content:"";position:absolute;top:0;bottom:0;width:110px;z-index:2;pointer-events:none}.peptide-marquee:before{left:0;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}.peptide-marquee:after{right:0;background:linear-gradient(270deg,#fff,rgba(255,255,255,0))}
.peptide-marquee-track{display:flex;align-items:center;gap:18px;width:max-content;animation:marqueeSlide 36s linear infinite}
.peptide-marquee-b .peptide-marquee-track{animation-duration:42s;animation-direction:reverse}
.peptide-marquee-item{display:flex;align-items:center;gap:14px;border:1px solid var(--border);background:#fff;border-radius:999px;padding:14px 18px;box-shadow:var(--shadow)}
.peptide-marquee-item.small{padding:10px 14px}
.peptide-marquee-item img{width:110px;height:auto;object-fit:contain;filter:drop-shadow(0 16px 34px rgba(67,45,118,.14));animation:marqueeBottleFloat 6s ease-in-out infinite}
.peptide-marquee-item.small img{width:88px}
.peptide-marquee-item span{font-weight:800;color:var(--purple);white-space:nowrap;letter-spacing:.03em}
@keyframes marqueeSlide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes marqueeBottleFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-7px) rotate(-1.2deg)}}
.select-shell{position:relative;display:block}
.select-shell:after{content:"▾";position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--purple);pointer-events:none;font-weight:900}
.woocommerce div.product form.cart .variations select,.single-buy-box select,select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:linear-gradient(180deg,#ffffff,#f7f1ff);border:1.5px solid #d9cbfb;border-radius:14px;color:var(--purple);font-weight:700;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 10px 26px rgba(67,45,118,.06);padding:13px 42px 13px 14px;min-height:48px}
.woocommerce div.product form.cart .variations select:focus,.single-buy-box select:focus,select:focus{outline:none;border-color:var(--purple-3);box-shadow:0 0 0 4px rgba(143,103,255,.12),0 12px 30px rgba(67,45,118,.08)}
.single-buy-box .variations{margin-bottom:14px}
.single-buy-box .variations td,.single-buy-box .variations th{padding-bottom:12px}
.single-buy-box .variations label{font-weight:800;color:var(--text)}
.woocommerce div.product form.cart .button,.single-buy-box .button{border:1.5px solid transparent}
[data-product-page] .product-detail-summary{z-index:1}
@media (max-width:900px){.motion-section-head{grid-template-columns:1fr}}
@media (max-width:640px){
  .hero-copy-tight .hero-title{max-width:5.4ch;line-height:.88;letter-spacing:-.04em}
  .hero-section{padding-top:48px}
  .hero-copy{max-width:100%}
  .hero-stage{margin-top:6px;min-height:310px}
  .hero-floating-card-a{display:block;top:2%;left:4%;font-size:.68rem;padding:8px 12px}
  .hero-floating-card-b{display:block;right:4%;bottom:4%;font-size:.68rem;padding:8px 12px}
  .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px;align-items:stretch}
  .featured-card .product-image{height:96px;padding:8px}
  .featured-card .product-image img{max-height:72px}
  .featured-card .product-body{padding:8px;gap:6px}
  .featured-card .product-body h3{font-size:.76rem;line-height:1.12;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
  .featured-card .product-purity{font-size:.55rem;line-height:1.2;min-height:2.4em}
  .featured-card .product-meta-row{gap:4px;align-items:flex-start}
  .featured-card .product-category,.featured-card .product-sku-line{font-size:.52rem}
  .featured-card .product-footer.compact{grid-template-columns:1fr auto;gap:4px;align-items:end}
  .featured-card .price{font-size:.72rem;line-height:1.02;word-break:break-word;display:block;max-width:100%;padding-right:2px}
  .featured-card .card-actions{gap:4px;align-items:flex-end}
  .featured-card .btn.micro{padding:6px 7px;font-size:.48rem;min-height:28px;max-width:48px;min-width:0;line-height:1;white-space:normal}
  .featured-card .eye-btn{width:24px;height:24px;font-size:.6rem;flex:0 0 24px}
  .featured-card .strength-chips.overlay{left:6px;right:6px;bottom:5px;gap:4px;justify-content:flex-start}
  .featured-card .strength-chips span{font-size:.48rem;padding:3px 5px}
  .peptide-motion-section{padding-top:16px}
  .motion-section-head h2{font-size:1.6rem;max-width:none}
  .peptide-marquee-item{padding:10px 12px;gap:10px}
  .peptide-marquee-item img{width:74px}
  .peptide-marquee-item span{font-size:.7rem}
  .product-detail-section .section{padding-top:0}
  [data-product-page] .product-detail-grid{padding-top:0}
  .product-tabs-wrap{padding-top:26px}
}
@media (prefers-reduced-motion:reduce){.peptide-marquee-track,.peptide-marquee-item img{animation:none!important}}


/* v10 final polish */
.hero-copy-tight .hero-title{max-width:4.65ch;line-height:.8;letter-spacing:-.065em;margin-bottom:10px}
.hero-copy-tight .hero-copy{max-width:470px}
.hero-copy-tight .hero-stats{margin-top:20px}
.hero-grid{min-height:650px}
.hero-stage{min-height:590px}
.hero-art-front{animation:heroFront 8s ease-in-out infinite, heroPulse 12s ease-in-out infinite}
.hero-art-back{animation:heroBack 10s ease-in-out infinite, heroBackSweep 16s ease-in-out infinite}
.hero-floating-card{backdrop-filter:blur(14px)}
.hero-stage:before{content:"";position:absolute;inset:14% 6% 10% 16%;background:radial-gradient(circle at 50% 50%,rgba(143,103,255,.14),transparent 56%);filter:blur(8px);animation:heroAura 10s ease-in-out infinite;pointer-events:none}
@keyframes heroPulse{0%,100%{filter:drop-shadow(0 36px 80px rgba(0,0,0,.35))}50%{filter:drop-shadow(0 44px 92px rgba(83,50,153,.34))}}
@keyframes heroBackSweep{0%,100%{opacity:.30}50%{opacity:.42}}
@keyframes heroAura{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
.peptide-motion-section{position:relative;padding:18px 0 10px;background:linear-gradient(180deg,#fbf9ff 0%,#ffffff 100%);overflow:hidden}
.peptide-motion-glow{position:absolute;border-radius:999px;filter:blur(42px);pointer-events:none;opacity:.24}
.peptide-motion-glow-a{width:220px;height:220px;left:4%;top:24%;background:rgba(143,103,255,.18);animation:sectionFloat 12s ease-in-out infinite}
.peptide-motion-glow-b{width:180px;height:180px;right:6%;bottom:10%;background:rgba(143,103,255,.12);animation:sectionFloat 14s ease-in-out infinite reverse}
.peptide-marquee-wrap{position:relative;display:grid;gap:18px;overflow:hidden;padding:8px 0 4px}
.peptide-marquee-track{display:flex;align-items:center;gap:20px;width:max-content;animation:marqueeSlide 34s linear infinite}
.peptide-marquee-b .peptide-marquee-track{animation-duration:40s}
.peptide-marquee-item{position:relative;overflow:hidden}
.peptide-marquee-item:before{content:"";position:absolute;inset:auto;left:-40%;top:-120%;width:80%;height:260%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);transform:rotate(18deg);animation:marqueeShine 6s ease-in-out infinite}
.peptide-marquee-item:nth-child(2n):before{animation-delay:-2.8s}
.peptide-marquee-item img{animation:marqueeBottleFloat 6s ease-in-out infinite, bottleSpinTiny 10s ease-in-out infinite}
@keyframes bottleSpinTiny{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-7px) rotate(-1.8deg)}}
@keyframes marqueeShine{0%,100%{transform:translateX(0) rotate(18deg);opacity:0}20%{opacity:.0}45%{opacity:.9}70%{opacity:0;transform:translateX(220%) rotate(18deg)}}
.proof-pill,.coa-point,.about-card-box,.closing-cta,.product-card{will-change:transform}
.proof-pill:hover,.coa-point:hover,.about-card-box:hover{transform:translateY(-4px)}
.product-card{animation:cardIdle 9s ease-in-out infinite}
.product-card:nth-child(2n){animation-delay:-2s}
.product-card:nth-child(3n){animation-delay:-4s}
@keyframes cardIdle{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.product-card:hover{animation:none}
.single-buy-top span{display:none}
.woocommerce div.product form.cart .variations select,.single-buy-box select,select{background:linear-gradient(180deg,#fefcff,#f3ebff);border-color:#ccb8fb}
.woocommerce div.product form.cart .variations select:hover,.single-buy-box select:hover,select:hover{background:#fff;border-color:var(--purple)}
@media (max-width:900px){
  .hero-copy-tight .hero-title{max-width:4.8ch;line-height:.82;letter-spacing:-.055em}
}
@media (max-width:640px){
  .hero-copy-tight .hero-title{max-width:4.25ch;line-height:.8;letter-spacing:-.075em;font-size:clamp(2.25rem,10.4vw,3.35rem)}
  .hero-copy-tight .hero-copy{max-width:92%;font-size:.9rem}
  .hero-grid{gap:8px}
  .hero-stage{margin-top:0;min-height:290px}
  .hero-stage:before{inset:18% 6% 8% 8%}
  .peptide-motion-section{padding:6px 0 0}
  .peptide-marquee-wrap{gap:12px;padding-top:0}
  .product-detail-summary{margin-top:0}
}
@media (prefers-reduced-motion:reduce){.hero-art-front,.hero-art-back,.product-card{animation:none!important}}

/* v11 hero tightening */
.hero-copy-tight .hero-title{line-height:.74!important;letter-spacing:-.075em!important;max-width:4.2ch!important;margin:10px 0 8px!important}
.hero-copy-tight .hero-title br{content:"";display:block;margin-top:-0.22em}
.hero-copy-tight .hero-copy{margin-top:6px!important}
@media (max-width:900px){.hero-copy-tight .hero-title{line-height:.76!important;max-width:4.15ch!important}.hero-copy-tight .hero-title br{margin-top:-0.18em}}
@media (max-width:640px){.hero-copy-tight .hero-title{line-height:.78!important;max-width:4.05ch!important;font-size:clamp(2.2rem,10.2vw,3.2rem)!important}.hero-copy-tight .hero-title br{margin-top:-0.14em}}




/* v13 hero headline normal spacing */
.hero-copy-tight .hero-title{
  max-width: 5.15ch !important;
  line-height: .88 !important;
  letter-spacing: -.035em !important;
  margin: 12px 0 12px !important;
}
.hero-copy-tight .hero-title br{display:none !important;}
@media (max-width: 900px){
  .hero-copy-tight .hero-title{
    max-width: 5.05ch !important;
    line-height: .9 !important;
    letter-spacing: -.032em !important;
  }
}
@media (max-width: 640px){
  .hero-copy-tight .hero-title{
    max-width: 4.95ch !important;
    line-height: .9 !important;
    letter-spacing: -.028em !important;
    font-size: clamp(2.35rem, 10.5vw, 3.45rem) !important;
  }
}


/* v15 mobile best-sellers cleanup */
@media (max-width:640px){
  .section-head.large-head{gap:10px;align-items:flex-start}
  .section-head.large-head .display-title{font-size:clamp(1.6rem,8vw,2.2rem);line-height:.92;margin-bottom:6px}
  .section-head.large-head .section-sub{font-size:.78rem;line-height:1.35;max-width:100%;margin:0}
  .section-head.large-head .btn{display:none}
  .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
  .featured-card{border-radius:18px;min-height:0}
  .featured-card .product-image{height:104px;padding:8px}
  .featured-card .product-image img{max-height:78px;width:auto;display:block}
  .featured-card .product-badge{left:8px;top:8px;padding:5px 8px;font-size:.5rem;letter-spacing:.04em}
  .featured-card .strength-chips.overlay{left:6px;right:6px;bottom:6px;justify-content:flex-start;gap:4px}
  .featured-card .strength-chips span{font-size:.5rem;padding:3px 5px}
  .featured-card .product-body{padding:8px;gap:6px}
  .featured-card .product-meta-row{gap:2px}
  .featured-card .product-category{font-size:.54rem}
  .featured-card .product-sku-line{font-size:.56rem}
  .featured-card .product-body h3{font-size:.78rem;line-height:1.08;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:2.55em}
  .featured-card .product-purity{font-size:.56rem;line-height:1.25;margin-top:2px;min-height:2.4em}
  .featured-card .product-footer{gap:6px;padding-top:8px}
  .featured-card .price{font-size:.84rem;line-height:1.02;word-break:break-word;display:block;max-width:58px}
  .featured-card .card-actions{gap:5px;align-items:flex-end}
  .featured-card .btn.micro{padding:7px 8px;font-size:.5rem;min-height:30px;line-height:1;min-width:0;max-width:52px;text-align:center;white-space:normal;border-radius:999px}
  .featured-card .eye-btn{width:26px;height:26px;font-size:.62rem;flex:0 0 26px}
}


/* v17 mobile featured cards final cleanup */
@media (max-width:640px){
  .best-sellers .section-head.large-head{margin-bottom:10px;align-items:flex-start}
  .best-sellers .section-head.large-head .section-sub{display:none}
  .best-sellers .section-head.large-head .btn{display:none}
  .featured-grid{gap:10px;align-items:start}
  .featured-card{border-radius:16px;overflow:hidden}
  .featured-card .product-badge{display:none}
  .featured-card .product-image{height:82px;padding:6px}
  .featured-card .product-image img{max-height:64px}
  .featured-card .strength-chips.overlay{left:5px;right:5px;bottom:4px;gap:3px}
  .featured-card .strength-chips span{font-size:.47rem;padding:3px 4px}
  .featured-card .product-body{padding:7px;gap:5px}
  .featured-card .product-meta-row{gap:2px}
  .featured-card .product-category{font-size:.5rem}
  .featured-card .product-sku-line{font-size:.52rem}
  .featured-card .product-body h3{font-size:.72rem;line-height:1.08;-webkit-line-clamp:2;min-height:2.1em}
  .featured-card .product-purity{font-size:.52rem;line-height:1.16;min-height:2.15em;margin-top:0}
  .featured-card .product-footer{gap:4px;padding-top:7px}
  .featured-card .price{font-size:.72rem;line-height:1.02;max-width:none;word-break:normal;overflow-wrap:anywhere}
  .featured-card .card-actions{gap:4px;align-items:flex-end}
  .featured-card .btn.micro{padding:6px 7px;font-size:.46rem;min-height:28px;max-width:46px;min-width:0;line-height:1}
  .featured-card .eye-btn{width:24px;height:24px;font-size:.58rem;flex:0 0 24px}
}


/* v18 mobile loading + reveal stability */
@media (max-width: 640px){
  .reveal-up,.reveal-up.is-visible,.float-pop,.float-pop.is-visible{opacity:1!important;transform:none!important;transition:none!important}
  .product-grid,.catalog-grid,.featured-grid{content-visibility:visible;contain-intrinsic-size:auto}
  .product-card,.featured-card,.catalog-card{animation:none!important}
  .product-card img,.hero-art,.peptide-marquee-item img{backface-visibility:hidden;transform:translateZ(0)}
  .featured-grid .product-card,.featured-card{min-height:0!important;height:auto!important}
  .featured-card .product-image{height:84px!important;padding:8px 8px 4px!important}
  .featured-card .product-image img{max-height:60px!important}
  .featured-card .product-body{padding:8px 8px 10px!important;gap:5px!important}
  .featured-card .product-body h3{font-size:.72rem!important;line-height:1.08!important;min-height:auto!important;-webkit-line-clamp:2!important}
  .featured-card .product-purity{font-size:.52rem!important;min-height:auto!important}
  .featured-card .product-footer.compact{grid-template-columns:minmax(0,1fr) auto auto!important;gap:4px!important;align-items:end!important}
  .featured-card .price{font-size:.68rem!important;line-height:1!important;white-space:normal!important}
  .featured-card .btn.micro{font-size:.46rem!important;line-height:1!important;padding:5px 6px!important;min-height:24px!important;max-width:44px!important}
  .featured-card .eye-btn{width:22px!important;height:22px!important;flex:0 0 22px!important}
  .featured-card .strength-chips.overlay{bottom:3px!important}
  .section-head .section-sub,.section-head .btn-outline{display:none!important}
}


/* v19 final fixes */
.glow-btn,.glow-btn:visited{color:#fff!important}
.glow-btn:hover,.glow-btn:focus{background:#fff!important;color:var(--purple)!important;border-color:var(--purple)!important}
.single-copy{display:none!important}
@media (max-width:640px){
  .hero-actions .glow-btn{min-width:0;padding:12px 18px;font-size:.9rem}
}


/* v20 hero/button visibility + single excerpt cleanup */
.hero-title,.hero-title *{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 0 0 #fff!important;opacity:1!important}
.hero-copy,.hero-copy *{color:rgba(255,255,255,.92)!important;-webkit-text-fill-color:rgba(255,255,255,.92)!important;opacity:1!important}
.hero-actions .btn-primary,.hero-actions .btn-primary *,a.glow-btn,a.glow-btn *, .glow-btn, .glow-btn *{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important}
.hero-actions .btn-primary:hover,.hero-actions .btn-primary:hover *,.glow-btn:hover,.glow-btn:hover *{color:var(--purple)!important;-webkit-text-fill-color:var(--purple)!important}
.single-product .woocommerce-product-details__short-description,.single-product .product_excerpt,.single-product .short-description,.single-product .summary .woocommerce-product-details__short-description,.single-product .summary p:has(+ .single-buy-box){display:none!important}
@media (max-width:640px){.hero-actions .btn-primary,.hero-actions .btn-ghost{min-height:50px;display:inline-flex;align-items:center;justify-content:center}.hero-actions .btn-primary{font-size:.96rem!important}.single-product .product-detail-summary p{word-break:normal;overflow-wrap:anywhere}}


/* v22 publish-safe hero + conversion copy fixes */
.hero-copy-fallback,.hero-stage-fallback{opacity:1!important;transform:none!important;visibility:visible!important}
.hero-copy-wrap,.hero-copy-wrap *{position:relative;z-index:3}
.hero-title{color:#fff!important;display:block!important;max-width:6.9ch;letter-spacing:-.04em!important;margin:14px 0 10px!important;text-shadow:0 4px 30px rgba(0,0,0,.14)}
.hero-title-line{display:block;line-height:.88!important;margin:0!important;padding:0!important;color:#fff!important}
.hero-copy,.hero-stats strong,.hero-stats span,.hero-stats,.hero-copy-wrap .eyebrow{opacity:1!important;visibility:visible!important}
.hero-copy{color:rgba(255,255,255,.88)!important;max-width:560px}
.hero-actions .btn-primary,.hero-actions .btn-primary:visited,.hero-actions .btn-primary span,.header-pill,.header-pill span{color:#fff!important}
.hero-actions .btn-primary:hover,.header-pill:hover{color:var(--purple)!important}
.hero-copy-wrap .eyebrow.dark{color:#efe8ff!important;background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.16)!important}
.hero-section .container{position:relative;z-index:2}
.product-body p,.product-card p,.product-card .excerpt,.product-short-desc,.product-desc-mini{display:none!important}
.woocommerce-product-details__short-description,.single-product .product-short-description{display:none!important}
.floating-toast strong,.floating-toast span{color:var(--text)}
@media (max-width:900px){.hero-title{max-width:none;font-size:clamp(3.3rem,13vw,4.9rem)!important}.hero-title-line{line-height:.9!important}}
@media (max-width:640px){.hero-title{font-size:clamp(2.8rem,13vw,4rem)!important;letter-spacing:-.045em!important}.hero-title-line{line-height:.9!important}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero-actions .btn{min-width:0}.hero-copy{font-size:.9rem!important}}


/* ================================================================
   v30 — HERO FIX + DNA MODAL + CONVERSION POLISH
   ================================================================ */

/* --- HERO TITLE: normal word-stacked layout, no huge gaps --- */
.hero-title {
  font-size: clamp(4.2rem, 7.6vw, 8rem) !important;
  line-height: .86 !important;
  letter-spacing: -.04em !important;
  max-width: none !important;
  margin: 16px 0 14px !important;
  white-space: normal !important;
}
.hero-title-line {
  display: block !important;
  line-height: .88 !important;
}
.hero-grid {
  min-height: 580px !important;
  gap: 32px;
  align-items: center;
}
.hero-section { padding: 60px 0 48px !important; }
.hero-copy-wrap { padding: 20px 0 24px !important; }
.hero-stats { margin-top: 28px !important; gap: 24px; }
.hero-stats div { min-width: 100px; }
@media (max-width: 900px) {
  .hero-title { font-size: clamp(3.4rem, 12vw, 5.4rem) !important; }
  .hero-grid { min-height: 460px !important; grid-template-columns: 1fr !important; }
  .hero-stage { min-height: 340px !important; }
}
@media (max-width: 640px) {
  .hero-title { font-size: clamp(2.9rem, 13vw, 4.2rem) !important; letter-spacing: -.045em !important; }
  .hero-section { padding: 44px 0 32px !important; }
  .hero-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .hero-actions .btn { min-width: 0; }
  .hero-stats { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 20px !important; }
  .hero-stats div { min-width: 80px; }
  .hero-stats strong { font-size: 1.5rem; }
  .hero-grid { gap: 0 !important; }
}

/* --- WOO CUSTOMIZER FRAME: make preview fill properly --- */
.wp-customizer .customize-preview iframe,
body.wp-admin.customize-controls iframe { background: #fff; }

/* --- DNA STRAND SECTION --- */
.dna-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #130a24, #1e0d3a);
  padding: 80px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
#dna-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: .85;
}
.dna-content {
  position: relative;
  z-index: 4;
  text-align: center;
  color: #fff;
  padding: 0 20px;
}
.dna-content .eyebrow { margin: 0 auto 18px; }
.dna-content h2 {
  font-size: clamp(2.4rem, 5vw, 4.4rem);
  line-height: .9;
  text-transform: uppercase;
  font-weight: 900;
  margin: 0 0 14px;
}
.dna-content p {
  color: rgba(255,255,255,.76);
  max-width: 580px;
  margin: 0 auto 30px;
  font-size: 1.02rem;
}
.dna-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, #8f67ff, #b44fff);
  color: #fff !important;
  border: none;
  border-radius: 999px;
  padding: 18px 34px;
  font-size: 1.06rem;
  font-weight: 900;
  letter-spacing: .04em;
  cursor: pointer;
  box-shadow: 0 14px 40px rgba(143, 103, 255, .38);
  transition: transform .22s ease, box-shadow .22s ease;
}
.dna-cta-btn:hover {
  transform: translateY(-3px) scale(1.025);
  box-shadow: 0 22px 52px rgba(143, 103, 255, .52);
}
.dna-proof-badges {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 22px;
}
.dna-proof-badges span {
  padding: 9px 16px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  font-size: .78rem;
  font-weight: 700;
  color: rgba(255,255,255,.88);
  letter-spacing: .04em;
}

/* --- EMAIL POPUP MODAL --- */
.pl-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(8, 4, 20, .72);
  backdrop-filter: blur(12px);
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity .38s ease;
}
.pl-modal-overlay.is-open {
  opacity: 1;
  pointer-events: all;
}
.pl-modal {
  position: relative;
  width: min(560px, calc(100% - 32px));
  background: linear-gradient(160deg, #1b0d35, #0f0820);
  border: 1px solid rgba(143, 103, 255, .28);
  border-radius: 28px;
  padding: 44px 36px 38px;
  box-shadow: 0 40px 100px rgba(0,0,0,.55), 0 0 0 1px rgba(143,103,255,.08);
  transform: translateY(24px) scale(.97);
  transition: transform .38s ease;
  overflow: hidden;
}
.pl-modal-overlay.is-open .pl-modal {
  transform: none;
}
/* DNA canvas inside modal */
#modal-dna-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: .35;
  border-radius: 28px;
}
.pl-modal-inner {
  position: relative;
  z-index: 2;
}
.pl-modal-close {
  position: absolute;
  top: 16px;
  right: 18px;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: #fff;
  font-size: 1rem;
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: background .2s;
  z-index: 3;
}
.pl-modal-close:hover { background: rgba(255,255,255,.14); }
.pl-modal-eyebrow {
  display: inline-flex;
  padding: 8px 14px;
  border: 1px solid rgba(143,103,255,.38);
  border-radius: 999px;
  font-size: .72rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #c4a8ff;
  background: rgba(143,103,255,.12);
  margin-bottom: 16px;
}
.pl-modal h3 {
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  line-height: .92;
  text-transform: uppercase;
  font-weight: 900;
  color: #fff;
  margin: 0 0 10px;
  letter-spacing: -.02em;
}
.pl-modal-sub {
  color: rgba(255,255,255,.68);
  font-size: .94rem;
  margin: 0 0 26px;
  line-height: 1.5;
}
.pl-modal-perks {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.pl-modal-perks span {
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(143,103,255,.14);
  border: 1px solid rgba(143,103,255,.22);
  font-size: .74rem;
  font-weight: 700;
  color: #c9b0ff;
  letter-spacing: .04em;
}
.pl-form {
  display: grid;
  gap: 12px;
}
.pl-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.pl-input {
  width: 100%;
  padding: 15px 18px;
  border: 1.5px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(255,255,255,.06);
  color: #fff;
  font-size: .96rem;
  font-family: inherit;
  transition: border-color .2s, background .2s;
}
.pl-input::placeholder { color: rgba(255,255,255,.36); }
.pl-input:focus {
  outline: none;
  border-color: rgba(143,103,255,.7);
  background: rgba(255,255,255,.09);
}
.pl-submit {
  width: 100%;
  padding: 17px;
  border: none;
  border-radius: 14px;
  background: linear-gradient(135deg, #8f67ff, #b44fff);
  color: #fff;
  font-size: 1.02rem;
  font-weight: 900;
  letter-spacing: .04em;
  cursor: pointer;
  box-shadow: 0 10px 30px rgba(143,103,255,.38);
  transition: transform .2s ease, box-shadow .2s ease;
}
.pl-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 42px rgba(143,103,255,.52);
}
.pl-submit:disabled {
  opacity: .6;
  cursor: not-allowed;
  transform: none;
}
.pl-legal {
  font-size: .74rem;
  color: rgba(255,255,255,.36);
  text-align: center;
  margin-top: 12px;
}
.pl-success {
  text-align: center;
  padding: 20px 0 10px;
}
.pl-success-icon {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  background: linear-gradient(135deg, #8f67ff, #b44fff);
  display: grid;
  place-items: center;
  margin: 0 auto 16px;
  font-size: 1.8rem;
  box-shadow: 0 14px 38px rgba(143,103,255,.4);
  animation: successPop .5s cubic-bezier(.18,.89,.32,1.28);
}
@keyframes successPop {
  from { transform: scale(.4); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}
.pl-success h4 {
  font-size: 1.6rem;
  color: #fff;
  margin: 0 0 8px;
  text-transform: uppercase;
  letter-spacing: -.02em;
}
.pl-success p { color: rgba(255,255,255,.68); margin: 0; }

/* mobile modal */
@media (max-width: 640px) {
  .pl-modal { padding: 36px 22px 28px; }
  .pl-form-row { grid-template-columns: 1fr; }
  .dna-section { padding: 60px 0; }
}

/* --- FLOATING SUBSCRIBE TRIGGER --- */
.pl-float-trigger {
  position: fixed;
  right: 18px;
  bottom: 90px;
  z-index: 100;
  background: linear-gradient(135deg, #8f67ff, #b44fff);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 14px 20px;
  font-size: .86rem;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 32px rgba(143,103,255,.42);
  display: flex;
  align-items: center;
  gap: 8px;
  transition: transform .22s ease, box-shadow .22s ease;
  animation: floatTrigger 4s ease-in-out infinite;
}
.pl-float-trigger:hover {
  transform: translateY(-3px) scale(1.04);
  box-shadow: 0 20px 48px rgba(143,103,255,.56);
  animation: none;
}
@keyframes floatTrigger {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

/* --- SECTION TRUST BAR BETWEEN CATALOG + COA --- */
.trust-bar-section {
  background: var(--purple);
  padding: 22px 0;
  overflow: hidden;
}
.trust-bar-track {
  display: flex;
  width: max-content;
  animation: marqueeSlide 28s linear infinite;
  gap: 0;
}
.trust-bar-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 32px;
  font-size: .82rem;
  font-weight: 800;
  color: rgba(255,255,255,.88);
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}
.trust-bar-item::before {
  content: '✦';
  color: rgba(255,255,255,.4);
  font-size: .7rem;
}

/* --- PURITY BADGE ON PRODUCT CARDS (bonus conversion element) --- */
.purity-ring {
  position: absolute;
  right: 12px;
  top: 12px;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: conic-gradient(#8f67ff 0% 99%, rgba(255,255,255,.1) 99%);
  display: grid;
  place-items: center;
  font-size: .52rem;
  font-weight: 900;
  color: #fff;
  text-align: center;
  line-height: 1.1;
  box-shadow: 0 6px 18px rgba(143,103,255,.3);
}
.catalog-card .purity-ring { width: 36px; height: 36px; font-size: .44rem; }

/* --- ENHANCED FAQ HOVER STATE --- */
.faq-item[open] {
  background: linear-gradient(180deg, #faf7ff, #fff) !important;
}
.faq-item[open] summary {
  color: var(--purple);
}

/* --- SINGLE PRODUCT PAGE CONVERSION BOOST --- */
.single-trust-badges {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: 18px 0;
  padding: 16px;
  background: #f8f4ff;
  border: 1px solid var(--border);
  border-radius: 18px;
}
.single-trust-badge {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: .8rem;
  font-weight: 700;
  color: var(--purple);
}
.single-trust-badge::before {
  content: '✓';
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--purple);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: .72rem;
  flex-shrink: 0;
}


/* ================================================================
   ACCOUNT DROPDOWN + PORTAL + LEGAL — v3.2
================================================================ */

/* ── ACCOUNT BUTTON + DROPDOWN ── */
.pl-acct-wrap { position:relative; }
.pl-acct-btn {
  width:42px; height:42px; border-radius:999px;
  border:1.5px solid var(--border); background:#fff;
  display:grid; place-items:center; cursor:pointer;
  color:var(--purple); transition:all .2s;
}
.pl-acct-btn:hover { border-color:var(--purple); background:#f8f4ff; }
.pl-acct-avatar {
  width:100%; height:100%; border-radius:999px;
  background:linear-gradient(135deg,#8f67ff,#b44fff);
  display:grid; place-items:center;
  font-size:.82rem; font-weight:900; color:#fff;
  font-style:normal;
}

/* dropdown */
.pl-acct-dropdown {
  position:absolute; top:calc(100% + 10px); right:0;
  width:300px; background:#fff;
  border:1.5px solid var(--border); border-radius:20px;
  box-shadow:0 20px 60px rgba(67,45,118,.16);
  opacity:0; transform:translateY(-8px) scale(.97);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease;
  z-index:200;
  overflow:hidden;
}
.pl-acct-dropdown.is-open {
  opacity:1; transform:none; pointer-events:all;
}

/* dropdown header (logged in) */
.pl-dd-header {
  display:flex; align-items:center; gap:12px;
  padding:18px 18px 14px; border-bottom:1px solid var(--border);
}
.pl-dd-avatar {
  width:42px; height:42px; border-radius:999px; flex-shrink:0;
  background:linear-gradient(135deg,#8f67ff,#b44fff);
  display:grid; place-items:center;
  font-size:.88rem; font-weight:900; color:#fff;
}
.pl-dd-name  { font-size:.88rem; font-weight:800; color:var(--text); }
.pl-dd-email { font-size:.72rem; color:var(--muted); }

/* reward inside dropdown */
.pl-dd-reward {
  padding:12px 16px; border-bottom:1px solid var(--border);
  background:#faf7ff;
}
.pl-dd-reward.pl-reward-unlocked { background:linear-gradient(135deg,#f0fff4,#e8f5e9); }
.pl-reward-progress-label { display:flex; justify-content:space-between; font-size:.72rem; font-weight:700; color:var(--purple); margin-bottom:6px; }
.pl-reward-bar { height:6px; background:var(--border); border-radius:999px; overflow:hidden; }
.pl-reward-fill { height:100%; background:linear-gradient(90deg,#8f67ff,#b44fff); border-radius:999px; transition:width .8s cubic-bezier(.4,0,.2,1); }
.pl-dd-reward small { font-size:.68rem; color:var(--muted); display:block; margin-top:5px; }
.pl-dd-reward.pl-reward-unlocked { display:flex; align-items:center; gap:10px; }
.pl-reward-icon { font-size:1.4rem; }
.pl-dd-reward strong { display:block; font-size:.82rem; font-weight:900; color:#2d8e46; }
.pl-dd-reward small { color:#2d8e46; opacity:.7; }

/* dropdown nav */
.pl-dd-nav { padding:8px 0; }
.pl-dd-nav a {
  display:flex; align-items:center; gap:10px;
  padding:11px 18px; font-size:.88rem; font-weight:600;
  color:var(--text); text-decoration:none;
  transition:background .15s, color .15s;
}
.pl-dd-nav a:hover { background:#f8f4ff; color:var(--purple); }
.pl-dd-nav a svg { flex-shrink:0; color:var(--muted); }
.pl-dd-logout { color:var(--muted) !important; border-top:1px solid var(--border); margin-top:4px; }
.pl-dd-logout:hover { color:#e05252 !important; background:#fff5f5 !important; }

/* dropdown auth (logged out) */
.pl-dd-auth { padding:20px 18px; }
.pl-dd-auth-head { text-align:center; margin-bottom:16px; }
.pl-dd-auth-head svg { color:var(--purple); margin-bottom:8px; }
.pl-dd-auth-head h4 { font-size:1.1rem; font-weight:900; margin:0 0 4px; }
.pl-dd-auth-head p  { font-size:.78rem; color:var(--muted); margin:0; }
.pl-dd-sign-in {
  display:block; width:100%; padding:13px; border-radius:12px; margin-bottom:8px;
  background:linear-gradient(135deg,#8f67ff,#b44fff);
  color:#fff !important; text-align:center; text-decoration:none;
  font-weight:900; font-size:.9rem; transition:transform .2s,box-shadow .2s;
  box-shadow:0 8px 22px rgba(143,103,255,.32);
}
.pl-dd-sign-in:hover { transform:translateY(-1px); box-shadow:0 12px 30px rgba(143,103,255,.44); }
.pl-dd-register {
  display:block; width:100%; padding:12px; border-radius:12px; margin-bottom:12px;
  border:1.5px solid var(--border); background:#fff;
  color:var(--text) !important; text-align:center; text-decoration:none;
  font-weight:700; font-size:.88rem; transition:border-color .2s;
  box-sizing:border-box;
}
.pl-dd-register:hover { border-color:var(--purple); color:var(--purple) !important; }
.pl-dd-reward-teaser {
  display:flex; align-items:center; gap:8px; padding:10px 12px;
  background:#faf7ff; border:1px solid var(--border); border-radius:10px;
  font-size:.74rem; color:var(--muted);
}
.pl-dd-reward-teaser span:first-child { font-size:1rem; }
.pl-dd-reward-teaser strong { color:var(--purple); }

/* ── CUSTOMER PORTAL ── */
.pl-portal-wrap { padding:40px 0 80px; }
.pl-portal-header {
  display:flex; align-items:center; gap:18px;
  padding-bottom:28px; border-bottom:1px solid var(--border); margin-bottom:32px;
}
.pl-portal-avatar {
  width:64px; height:64px; border-radius:999px; flex-shrink:0;
  background:linear-gradient(135deg,#8f67ff,#b44fff);
  display:grid; place-items:center;
  font-size:1.3rem; font-weight:900; color:#fff;
  box-shadow:0 8px 24px rgba(143,103,255,.3);
}
.pl-portal-welcome { flex:1; }
.pl-portal-welcome h1 { font-size:clamp(1.8rem,4vw,2.8rem); font-weight:900; line-height:.9; margin:6px 0 6px; text-transform:uppercase; letter-spacing:-.03em; }
.pl-portal-welcome p  { color:var(--muted); margin:0; font-size:.9rem; }
.pl-portal-logout { padding:10px 18px; border:1.5px solid var(--border); border-radius:10px; font-size:.82rem; font-weight:700; color:var(--muted); text-decoration:none; transition:all .2s; }
.pl-portal-logout:hover { border-color:#e05252; color:#e05252; }

/* reward card */
.pl-reward-card {
  background:linear-gradient(135deg,#1a0d32,#2d1259);
  border-radius:22px; padding:28px; margin-bottom:28px;
  position:relative; overflow:hidden; color:#fff;
}
.pl-reward-card.pl-reward-active { background:linear-gradient(135deg,#0d2a18,#1a4d2e); }
.pl-reward-content { display:flex; justify-content:space-between; align-items:center; gap:24px; position:relative; z-index:2; }
.pl-reward-card h2 { font-size:clamp(1.4rem,3vw,2rem); font-weight:900; margin:0 0 8px; }
.pl-reward-card p  { color:rgba(255,255,255,.7); margin:0 0 16px; max-width:480px; }
.pl-reward-stat { flex-shrink:0; text-align:center; padding:16px 20px; background:rgba(255,255,255,.1); border-radius:16px; min-width:110px; }
.pl-reward-stat strong { display:block; font-size:1.8rem; font-weight:900; }
.pl-reward-stat span   { font-size:.7rem; text-transform:uppercase; letter-spacing:.1em; color:rgba(255,255,255,.6); }
.pl-reward-bar-wrap { margin-top:12px; }
.pl-reward-bar-labels { display:flex; justify-content:space-between; font-size:.72rem; color:rgba(255,255,255,.6); margin-bottom:6px; }
.pl-reward-bar-track { height:8px; background:rgba(255,255,255,.15); border-radius:999px; overflow:hidden; }
.pl-reward-bar-fill  { height:100%; background:linear-gradient(90deg,#8f67ff,#b44fff); border-radius:999px; transition:width 1s cubic-bezier(.4,0,.2,1); }
.pl-reward-pct { font-size:.72rem; color:rgba(255,255,255,.5); margin-top:5px; }
.pl-reward-unlocked-badge { position:absolute; top:16px; right:16px; background:rgba(94,206,117,.2); border:1px solid #5ece75; color:#9effb8; padding:6px 12px; border-radius:999px; font-size:.72rem; font-weight:900; letter-spacing:.06em; }
.pl-reward-stars { position:absolute; inset:0; background:radial-gradient(circle at 20% 50%,rgba(94,206,117,.15),transparent 40%),radial-gradient(circle at 80% 20%,rgba(143,103,255,.15),transparent 40%); pointer-events:none; }

/* portal grid */
.pl-portal-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:24px; margin-bottom:40px; }
.pl-portal-section { background:#fff; border:1.5px solid var(--border); border-radius:18px; padding:22px; box-shadow:0 4px 18px rgba(67,45,118,.06); }
.pl-section-hd { display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; padding-bottom:12px; border-bottom:1px solid var(--border); }
.pl-section-hd h3 { font-size:1rem; font-weight:900; margin:0; }
.pl-section-link { font-size:.78rem; font-weight:700; color:var(--purple); text-decoration:none; }
.pl-section-link:hover { text-decoration:underline; }
.pl-empty-orders { text-align:center; padding:24px; color:var(--muted); }
.pl-empty-orders span { display:block; font-size:2rem; margin-bottom:8px; }

/* order rows */
.pl-order-row {
  display:flex; align-items:center; gap:12px; padding:12px 0;
  border-bottom:1px solid var(--border);
}
.pl-order-row:last-child { border-bottom:none; }
.pl-order-info { flex:1; }
.pl-order-info strong { display:block; font-size:.9rem; font-weight:800; }
.pl-order-info span   { font-size:.74rem; color:var(--muted); }
.pl-order-status { padding:4px 10px; border-radius:999px; font-size:.68rem; font-weight:800; background:rgba(var(--sc),0.12); color:var(--sc); border:1px solid var(--sc); white-space:nowrap; }
.pl-order-total { font-size:.9rem; font-weight:900; color:var(--purple); white-space:nowrap; }
.pl-order-view { padding:6px 12px; border-radius:8px; background:#f5f0ff; border:1px solid var(--border); font-size:.74rem; font-weight:700; color:var(--purple); text-decoration:none; transition:all .16s; white-space:nowrap; }
.pl-order-view:hover { background:var(--purple); color:#fff; border-color:var(--purple); }

/* portal quick links */
.pl-portal-links { display:grid; gap:8px; }
.pl-portal-link { display:flex; align-items:center; gap:12px; padding:13px 14px; background:#faf7ff; border:1.5px solid var(--border); border-radius:13px; text-decoration:none; transition:all .2s; }
.pl-portal-link:hover { border-color:#c8b8e8; background:#f5f0ff; transform:translateX(3px); }
.pl-pl-icon { font-size:1.2rem; flex-shrink:0; }
.pl-portal-link strong { display:block; font-size:.88rem; font-weight:800; color:var(--text); }
.pl-portal-link small  { display:block; font-size:.72rem; color:var(--muted); }

/* WC account nav + content */
.pl-portal-wc-content { margin-top:16px; }
.woocommerce-MyAccount-navigation { background:#fff; border:1.5px solid var(--border); border-radius:16px; padding:12px; margin-bottom:20px; }
.woocommerce-MyAccount-navigation ul { display:flex; gap:6px; flex-wrap:wrap; list-style:none; padding:0; margin:0; }
.woocommerce-MyAccount-navigation ul li a { padding:9px 16px; border-radius:10px; font-size:.84rem; font-weight:700; color:var(--muted); text-decoration:none; display:block; transition:all .18s; }
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover { background:#f5f0ff; color:var(--purple); }
.pl-portal-wc-body { background:#fff; border:1.5px solid var(--border); border-radius:16px; padding:24px; box-shadow:0 4px 18px rgba(67,45,118,.06); }
.woocommerce-MyAccount-content table { width:100%; border-collapse:collapse; }
.woocommerce-MyAccount-content th,.woocommerce-MyAccount-content td { padding:11px 8px; border-bottom:1px solid var(--border); font-size:.9rem; }
.woocommerce-MyAccount-content th { font-weight:800; color:var(--text); }
.woocommerce-MyAccount-content .button { background:var(--purple); color:#fff; padding:8px 16px; border-radius:8px; font-size:.82rem; font-weight:700; text-decoration:none; display:inline-block; transition:all .2s; }
.woocommerce-MyAccount-content .button:hover { background:#fff; color:var(--purple); border:1px solid var(--purple); }

/* auth page (logged out) */
.pl-auth-page { padding:40px 0 80px; }
.pl-auth-split { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.pl-auth-brand { padding:40px 0; }
.pl-auth-brand h1 { font-size:clamp(2.2rem,4vw,3.4rem); font-weight:900; line-height:.9; text-transform:uppercase; letter-spacing:-.04em; margin:10px 0 14px; }
.pl-auth-brand p  { color:var(--muted); margin-bottom:24px; }
.pl-auth-perks { display:flex; flex-direction:column; gap:10px; }
.pl-auth-perks div { display:flex; align-items:center; gap:10px; font-size:.9rem; font-weight:600; color:var(--text); padding:10px 14px; background:#f8f4ff; border:1px solid var(--border); border-radius:11px; }
.pl-auth-right .woocommerce { background:#fff; border:1.5px solid var(--border); border-radius:20px; padding:28px; box-shadow:0 10px 36px rgba(67,45,118,.09); }
.pl-auth-right .woocommerce-form__label { font-weight:700; font-size:.84rem; }
.woocommerce-form-login, .woocommerce-form-register { border:none !important; padding:0 !important; background:none !important; }
.woocommerce-form-login .woocommerce-Button,
.woocommerce-form-register .woocommerce-Button { width:100% !important; padding:15px !important; border-radius:12px !important; font-size:1rem !important; margin-top:8px !important; }

/* ── LEGAL PAGES ── */
.pl-legal-page { padding:60px 0 80px; }
.pl-legal-header { text-align:center; margin-bottom:48px; padding-bottom:32px; border-bottom:1px solid var(--border); }
.pl-legal-header h1 { font-size:clamp(2.4rem,5vw,4rem); font-weight:900; line-height:.9; text-transform:uppercase; letter-spacing:-.04em; margin:10px 0 10px; }
.pl-legal-header p  { color:var(--muted); font-size:.9rem; }
.pl-legal-body { max-width:860px; margin:0 auto; }
.pl-legal-content h2 { font-size:1.4rem; font-weight:900; margin:36px 0 10px; color:var(--text); }
.pl-legal-content h3 { font-size:1.1rem; font-weight:800; margin:24px 0 8px; color:var(--purple); }
.pl-legal-content p  { color:#4d4762; line-height:1.7; margin-bottom:14px; }
.pl-legal-content a  { color:var(--purple); }
.pl-legal-content strong { color:var(--text); }

/* ── RESPONSIVE ── */
@media (max-width:900px) {
  .pl-portal-grid { grid-template-columns:1fr; }
  .pl-auth-split  { grid-template-columns:1fr; }
  .pl-auth-brand  { padding:0 0 24px; }
  .pl-reward-content { flex-direction:column; }
  .pl-reward-stat { min-width:auto; }
}
@media (max-width:640px) {
  .pl-acct-dropdown { width:280px; right:-10px; }
  .pl-portal-header { flex-direction:column; align-items:flex-start; }
  .pl-portal-wrap { padding:24px 0 60px; }
  .woocommerce-MyAccount-navigation ul { gap:4px; }
  .woocommerce-MyAccount-navigation ul li a { padding:8px 12px; font-size:.78rem; }
}

/* eyebrow-sm utility */
.pl-eyebrow-sm {
  font-size:.66rem; letter-spacing:.14em; text-transform:uppercase;
  font-weight:900; color:var(--purple); margin-bottom:6px; display:block;
}


/* ================================================================
   DNA SECTION — FULL WIDTH IMMERSIVE v3.2
================================================================ */
.dna-section-full {
  position: relative;
  overflow: hidden;
  background: linear-gradient(160deg, #0d0620 0%, #1a0a36 40%, #100830 100%);
  padding: 100px 0 80px;
  min-height: 520px;
}
#dna-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: .9;
}

/* ambient orbs */
.dna-orb {
  position: absolute;
  border-radius: 999px;
  filter: blur(60px);
  pointer-events: none;
  animation: orbDrift 14s ease-in-out infinite;
}
.dna-orb-1 { width: 280px; height: 280px; background: rgba(143,103,255,.14); top: 10%; left: 8%; animation-delay: 0s; }
.dna-orb-2 { width: 220px; height: 220px; background: rgba(180,79,255,.1);   top: 50%; right: 10%; animation-delay: -5s; }
.dna-orb-3 { width: 180px; height: 180px; background: rgba(100,160,255,.08); bottom: 15%; left: 40%; animation-delay: -9s; }
@keyframes orbDrift {
  0%,100% { transform: translate(0,0) scale(1); }
  33%     { transform: translate(20px,-18px) scale(1.06); }
  66%     { transform: translate(-14px,12px) scale(.96); }
}

/* content grid */
.dna-content-grid {
  position: relative;
  z-index: 4;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px;
}
.dna-left { color: #fff; }
.dna-left .eyebrow.dark { margin-bottom: 14px; }
.dna-left h2 {
  font-size: clamp(2.4rem, 4.5vw, 4.2rem);
  font-weight: 900;
  line-height: .88;
  text-transform: uppercase;
  letter-spacing: -.04em;
  margin: 0 0 18px;
}
.dna-left p {
  color: rgba(255,255,255,.72);
  font-size: 1rem;
  max-width: 480px;
  margin: 0 0 28px;
  line-height: 1.6;
}

/* stats row */
.dna-stat-row {
  display: flex;
  gap: 24px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.dna-stat {
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.16);
  min-width: 90px;
}
.dna-stat strong { display: block; font-size: 1.8rem; font-weight: 900; line-height: 1; }
.dna-stat span   { font-size: .68rem; text-transform: uppercase; letter-spacing: .08em; color: rgba(255,255,255,.55); }

/* CTA button */
.dna-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, #8f67ff, #b44fff);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 16px 28px;
  font-size: .96rem;
  font-weight: 900;
  letter-spacing: .04em;
  cursor: pointer;
  font-family: inherit;
  box-shadow: 0 12px 36px rgba(143,103,255,.38);
  transition: transform .22s ease, box-shadow .22s ease;
}
.dna-cta-btn:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 20px 52px rgba(143,103,255,.54);
}

/* RIGHT: floating cards */
.dna-right {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.dna-card {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 18px;
  padding: 20px 22px;
  backdrop-filter: blur(10px);
  color: #fff;
  transition: transform .26s ease, border-color .26s ease, background .26s ease;
  animation: cardFloat 0s ease both;
}
.dna-card-1 { animation-delay: .05s; }
.dna-card-2 { animation-delay: .12s; }
.dna-card-3 { animation-delay: .19s; }
.dna-card:hover {
  transform: translateX(6px);
  border-color: rgba(143,103,255,.4);
  background: rgba(143,103,255,.1);
}
.dna-card-icon { font-size: 1.4rem; margin-bottom: 8px; }
.dna-card strong { display: block; font-size: 1rem; font-weight: 900; margin-bottom: 4px; }
.dna-card p { font-size: .84rem; color: rgba(255,255,255,.66); margin: 0; line-height: 1.5; }

/* proof badges bottom row */
.dna-proof-badges-row {
  position: relative;
  z-index: 4;
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  padding: 24px 20px 0;
  max-width: 1320px;
  margin: 0 auto;
}
.dna-proof-badges-row span {
  padding: 9px 16px;
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.14);
  font-size: .76rem;
  font-weight: 700;
  color: rgba(255,255,255,.82);
  letter-spacing: .04em;
  backdrop-filter: blur(6px);
  transition: background .2s, border-color .2s;
}
.dna-proof-badges-row span:hover {
  background: rgba(143,103,255,.2);
  border-color: rgba(143,103,255,.4);
}

/* RESPONSIVE */
@media (max-width: 860px) {
  .dna-content-grid { grid-template-columns: 1fr; gap: 32px; }
  .dna-right { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .dna-section-full { padding: 70px 0 56px; }
}
@media (max-width: 640px) {
  .dna-right { grid-template-columns: 1fr; }
  .dna-left h2 { font-size: clamp(2rem, 10vw, 3rem); }
  .dna-section-full { padding: 52px 0 40px; }
  .dna-stat-row { gap: 16px; }
}

/* ── FOOTER SOCIAL ICONS (SVG) ── */
.footer-socials a {
  width: 44px; height: 44px; border-radius: 999px;
  border: 1px solid rgba(255,255,255,.15);
  display: grid; place-items: center;
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.7);
  transition: all .22s ease;
  text-decoration: none;
}
.footer-socials a:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.14);
  color: #fff;
}
.footer-social-ig:hover { background: linear-gradient(135deg,rgba(193,53,132,.4),rgba(253,29,29,.3),rgba(252,176,69,.3)) !important; border-color: rgba(193,53,132,.4) !important; }
.footer-social-tt:hover { background: rgba(0,0,0,.3) !important; border-color: rgba(255,255,255,.3) !important; }
.footer-social-fb:hover { background: rgba(24,119,242,.3) !important; border-color: rgba(24,119,242,.4) !important; }


/* ================================================================
   SCIENCE SECTION — Particle Orbital Animation  v3.3
================================================================ */
.pl-science-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(155deg, #08041a 0%, #120830 45%, #0e0626 100%);
  padding: 96px 0 80px;
  min-height: 600px;
}
#pl-science-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: .92;
}

/* ambient depth orbs */
.pl-sci-orb {
  position: absolute;
  border-radius: 999px;
  filter: blur(70px);
  pointer-events: none;
}
.pl-sci-orb-1 { width:300px;height:300px;background:rgba(143,103,255,.10);top:5%;left:5%;animation:sciOrb 16s ease-in-out infinite; }
.pl-sci-orb-2 { width:240px;height:240px;background:rgba(80,200,200,.07);bottom:8%;right:8%;animation:sciOrb 20s ease-in-out infinite reverse; }
.pl-sci-orb-3 { width:200px;height:200px;background:rgba(180,79,255,.08);top:40%;left:50%;animation:sciOrb 18s ease-in-out infinite 3s; }
@keyframes sciOrb {
  0%,100% { transform:translate(0,0) scale(1); }
  33%      { transform:translate(22px,-18px) scale(1.08); }
  66%      { transform:translate(-14px,16px) scale(.94); }
}

/* layout */
.pl-sci-wrap { position:relative; z-index:4; }

/* headline block */
.pl-sci-head {
  text-align: center;
  max-width: 680px;
  margin: 0 auto 60px;
  color: #fff;
}
.pl-sci-head .eyebrow.dark { margin: 0 auto 16px; display: inline-flex; }
.pl-sci-head h2 {
  font-size: clamp(2.6rem, 5vw, 4.8rem);
  font-weight: 900;
  line-height: .86;
  text-transform: uppercase;
  letter-spacing: -.04em;
  margin: 0 0 18px;
}
.pl-sci-head p {
  color: rgba(255,255,255,.68);
  font-size: .98rem;
  line-height: 1.65;
  max-width: 540px;
  margin: 0 auto;
}

/* 2×2 card grid */
.pl-sci-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 48px;
}
.pl-sci-card {
  position: relative;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 22px;
  padding: 28px 22px 24px;
  color: #fff;
  backdrop-filter: blur(12px);
  overflow: hidden;
  transition: transform .28s ease, border-color .28s ease, background .28s ease;
}
/* subtle shimmer on hover */
.pl-sci-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(143,103,255,.08), transparent 60%);
  opacity: 0;
  transition: opacity .28s ease;
  border-radius: 22px;
}
.pl-sci-card:hover {
  transform: translateY(-6px);
  border-color: rgba(143,103,255,.38);
  background: rgba(143,103,255,.1);
}
.pl-sci-card:hover::before { opacity: 1; }
/* number badge */
.pl-sci-card-num {
  position: absolute;
  top: 16px;
  right: 18px;
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .12em;
  color: rgba(255,255,255,.22);
  text-transform: uppercase;
}
/* icon */
.pl-sci-card-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: rgba(143,103,255,.18);
  border: 1px solid rgba(143,103,255,.3);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}
.pl-sci-card strong {
  display: block;
  font-size: 1rem;
  font-weight: 900;
  margin-bottom: 8px;
  line-height: 1.15;
}
.pl-sci-card p {
  font-size: .84rem;
  color: rgba(255,255,255,.62);
  line-height: 1.55;
  margin: 0;
}

/* CTA row */
.pl-sci-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}
.pl-sci-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, #8f67ff, #b44fff);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 17px 32px;
  font-size: .96rem;
  font-weight: 900;
  letter-spacing: .04em;
  cursor: pointer;
  font-family: inherit;
  box-shadow: 0 12px 36px rgba(143,103,255,.38);
  transition: transform .22s ease, box-shadow .22s ease;
}
.pl-sci-btn:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 20px 52px rgba(143,103,255,.54);
}
.pl-sci-badges {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
}
.pl-sci-badges span {
  padding: 8px 16px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  font-size: .74rem;
  font-weight: 700;
  color: rgba(255,255,255,.76);
  letter-spacing: .04em;
  backdrop-filter: blur(6px);
  transition: background .2s, border-color .2s;
}
.pl-sci-badges span:hover {
  background: rgba(143,103,255,.2);
  border-color: rgba(143,103,255,.4);
}

/* responsive */
@media (max-width: 1060px) {
  .pl-sci-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
}
@media (max-width: 640px) {
  .pl-science-section { padding: 60px 0 52px; }
  .pl-sci-head { margin-bottom: 36px; }
  .pl-sci-head h2 { font-size: clamp(2rem, 10vw, 3rem); }
  .pl-sci-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .pl-sci-card { padding: 20px 16px 18px; }
  .pl-sci-card-icon { width: 42px; height: 42px; margin-bottom: 12px; }
  .pl-sci-card strong { font-size: .9rem; }
  .pl-sci-card p { font-size: .78rem; }
}

/* ================================================================
   PRODUCT CARD SIZE BOOST — bigger image, more text breathing room
================================================================ */
/* Featured cards — taller image, text pushed down */
.featured-card .product-image,
.product-grid .product-image {
  height: 300px !important;
  padding: 22px !important;
}
.featured-card .product-image img,
.product-grid .product-image img {
  max-height: 240px !important;
}
.featured-card .product-body,
.product-grid .product-body {
  padding: 20px !important;
  gap: 12px !important;
}
.featured-card .product-body h3,
.product-grid .product-body h3 {
  font-size: 1.18rem !important;
  line-height: 1.18 !important;
  min-height: auto !important;
  margin-bottom: 4px !important;
}
.featured-card .product-category,
.product-grid .product-category {
  font-size: .7rem !important;
  margin-bottom: 2px !important;
}
.featured-card .product-purity,
.product-grid .product-purity {
  font-size: .82rem !important;
  min-height: auto !important;
  margin-top: 2px !important;
}
.featured-card .product-footer,
.product-grid .product-footer {
  padding-top: 14px !important;
}
.featured-card .price,
.product-grid .price { font-size: 1.5rem !important; }
.featured-card .btn.micro { min-width: 110px !important; padding: 11px 18px !important; font-size: .74rem !important; }

/* Catalog cards — slightly bigger too */
.catalog-card .product-image { height: 200px !important; padding: 16px !important; }
.catalog-card .product-image img { max-height: 154px !important; }
.catalog-card .product-body { padding: 16px !important; gap: 8px !important; }
.catalog-card .product-body h3 { font-size: 1rem !important; line-height: 1.18 !important; min-height: auto !important; }
.catalog-card .product-purity { min-height: auto !important; font-size: .8rem !important; }
.catalog-card .price { font-size: 1.25rem !important; }

/* mobile overrides — keep small on phone */
@media (max-width: 640px) {
  .featured-card .product-image { height: 110px !important; padding: 10px !important; }
  .featured-card .product-image img { max-height: 84px !important; }
  .featured-card .product-body { padding: 10px !important; gap: 6px !important; }
  .featured-card .product-body h3 { font-size: .82rem !important; }
  .featured-card .price { font-size: .88rem !important; }
  .featured-card .btn.micro { min-width: 0 !important; max-width: 54px !important; font-size: .5rem !important; padding: 7px 8px !important; }
  .catalog-card .product-image { height: 110px !important; padding: 9px !important; }
  .catalog-card .product-image img { max-height: 82px !important; }
  .catalog-card .product-body { padding: 10px !important; }
  .catalog-card .product-body h3 { font-size: .82rem !important; }
}


/* ================================================================
   GLP-1 ERA SECTION — Biosignal waveform  v3.4
================================================================ */
.pl-glp-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(160deg, #06021a 0%, #0e0630 50%, #080420 100%);
  padding: 96px 0 88px;
  min-height: 580px;
}
#pl-glp-canvas {
  position: absolute;
  inset: 0; width: 100%; height: 100%;
  pointer-events: none; opacity: .88;
}
.pl-glp-grid-lines {
  position: absolute; inset: 0; pointer-events: none;
  background-image:
    linear-gradient(rgba(143,103,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(143,103,255,.04) 1px, transparent 1px);
  background-size: 60px 60px;
}

/* layout */
.pl-glp-wrap { position: relative; z-index: 4; }
.pl-glp-split {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 56px;
  align-items: center;
}

/* LEFT */
.pl-glp-left { color: #fff; }
.pl-glp-badge {
  display: inline-flex; align-items: center; gap: 9px;
  padding: 8px 16px; border-radius: 999px;
  background: rgba(143,103,255,.14);
  border: 1px solid rgba(143,103,255,.3);
  font-size: .72rem; font-weight: 800; color: rgba(255,255,255,.88);
  letter-spacing: .06em; text-transform: uppercase;
  margin-bottom: 20px;
  animation: badgePulse 3s ease-in-out infinite;
}
@keyframes badgePulse {
  0%,100% { box-shadow: 0 0 0 0 rgba(143,103,255,0); }
  50%      { box-shadow: 0 0 0 6px rgba(143,103,255,.1); }
}
.pl-glp-badge-dot {
  width: 8px; height: 8px; border-radius: 999px;
  background: #5ece75;
  animation: dotBlink 1.8s ease-in-out infinite;
  flex-shrink: 0;
}
@keyframes dotBlink { 0%,100%{opacity:1} 50%{opacity:.3} }

.pl-glp-h2 {
  font-size: clamp(3rem, 5.5vw, 5.4rem);
  font-weight: 900; line-height: .84;
  text-transform: uppercase; letter-spacing: -.05em;
  margin: 0 0 22px;
  background: linear-gradient(135deg, #fff 40%, rgba(180,79,255,.85) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.pl-glp-sub {
  color: rgba(255,255,255,.66);
  font-size: .98rem; line-height: 1.65;
  max-width: 500px; margin: 0 0 28px;
}
.pl-glp-signal-label {
  display: flex; align-items: center; gap: 9px;
  font-size: .78rem; font-weight: 700;
  color: rgba(255,255,255,.5);
  margin-bottom: 28px;
  letter-spacing: .04em;
}
.pl-sig-dot {
  width: 6px; height: 6px; border-radius: 999px;
  background: #8f67ff;
  box-shadow: 0 0 8px rgba(143,103,255,.8);
  animation: dotBlink 1.2s ease-in-out infinite;
}
.pl-glp-cta {
  display: inline-flex; align-items: center;
  padding: 16px 30px; border-radius: 14px;
  background: linear-gradient(135deg, #8f67ff, #b44fff);
  color: #fff !important; font-weight: 900; font-size: .96rem;
  letter-spacing: .04em; text-decoration: none;
  box-shadow: 0 12px 36px rgba(143,103,255,.38);
  transition: transform .22s ease, box-shadow .22s ease;
}
.pl-glp-cta:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 20px 52px rgba(143,103,255,.54);
  color: #fff !important;
}

/* RIGHT: 2×2 stat card grid */
.pl-glp-right {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.pl-glp-card {
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 20px;
  padding: 22px 20px 20px;
  color: #fff;
  backdrop-filter: blur(10px);
  position: relative; overflow: hidden;
  transition: transform .26s ease, border-color .26s ease, background .26s ease;
  animation: glpCardIn .5s cubic-bezier(.18,.89,.32,1.16) both;
}
.pl-glp-card:nth-child(1) { animation-delay: .08s; }
.pl-glp-card:nth-child(2) { animation-delay: .15s; }
.pl-glp-card:nth-child(3) { animation-delay: .22s; }
.pl-glp-card:nth-child(4) { animation-delay: .29s; }
@keyframes glpCardIn {
  from { opacity: 0; transform: translateY(16px) scale(.97); }
  to   { opacity: 1; transform: none; }
}
.pl-glp-card:hover {
  transform: translateY(-5px);
  border-color: rgba(143,103,255,.36);
  background: rgba(143,103,255,.1);
}
.pl-glp-card::before {
  content: '';
  position: absolute; top: 0; right: 0;
  width: 60px; height: 60px; border-radius: 0 20px 0 60px;
  background: rgba(143,103,255,.06);
}

/* card top row: icon + counter */
.pl-glp-card-top {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 12px;
}
.pl-glp-card-icon {
  width: 44px; height: 44px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.pl-gi-purple { background: rgba(143,103,255,.28); border: 1px solid rgba(143,103,255,.3); }
.pl-gi-teal   { background: rgba(80,200,200,.22);  border: 1px solid rgba(80,200,200,.25); }
.pl-gi-violet { background: rgba(180,79,255,.22);  border: 1px solid rgba(180,79,255,.25); }
.pl-gi-blue   { background: rgba(100,160,255,.22); border: 1px solid rgba(100,160,255,.25); }

.pl-glp-card-counter {
  font-size: 2.2rem; font-weight: 900; line-height: 1;
  color: #fff;
  font-variant-numeric: tabular-nums;
}
.pl-glp-card-unit {
  font-size: 1.1rem; font-weight: 900; color: rgba(255,255,255,.55);
  align-self: flex-end; padding-bottom: 3px;
}
.pl-glp-card strong {
  display: block; font-size: .88rem; font-weight: 900;
  margin-bottom: 5px; color: #fff;
}
.pl-glp-card p {
  font-size: .78rem; color: rgba(255,255,255,.56);
  line-height: 1.5; margin: 0;
}

/* remove old particle/science CSS that no longer applies */
.pl-science-section { display: none !important; }

/* RESPONSIVE */
@media (max-width: 960px) {
  .pl-glp-split { grid-template-columns: 1fr; gap: 36px; }
  .pl-glp-h2 { font-size: clamp(2.6rem, 9vw, 4rem); }
}
@media (max-width: 640px) {
  .pl-glp-section { padding: 60px 0 52px; }
  .pl-glp-h2 { font-size: clamp(2.2rem, 11vw, 3.2rem); }
  .pl-glp-right { gap: 10px; }
  .pl-glp-card { padding: 16px 14px; }
  .pl-glp-card-counter { font-size: 1.7rem; }
  .pl-glp-card-icon { width: 36px; height: 36px; }
}


/* ================================================================
   v31 — SEARCH BAR + SHOP PAGE + CARD FIXES
================================================================ */

/* ── HEADER SEARCH BUTTON ── */
.pl-search-btn {
  width: 40px; height: 40px;
  border-radius: 999px;
  border: 1.5px solid var(--border);
  background: #fff;
  display: grid; place-items: center;
  cursor: pointer;
  color: var(--muted);
  transition: all .2s ease;
  flex-shrink: 0;
}
.pl-search-btn:hover,
.pl-search-btn.is-active { border-color: var(--purple); color: var(--purple); background: #f8f4ff; }

/* ── HEADER SEARCH OVERLAY ── */
.pl-search-bar {
  position: absolute;
  top: 100%; left: 0; right: 0;
  background: #fff;
  border-bottom: 2px solid var(--purple);
  box-shadow: 0 12px 40px rgba(67,45,118,.14);
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s ease, box-shadow .3s ease;
  z-index: 59;
}
.pl-search-bar.is-open {
  max-height: 420px;
}
.pl-search-inner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 0;
}
.pl-search-icon { color: var(--muted); flex-shrink: 0; }
.pl-search-input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 1.05rem;
  font-family: inherit;
  color: var(--text);
  background: transparent;
  padding: 6px 0;
}
.pl-search-input::placeholder { color: var(--muted); }
.pl-search-clear {
  width: 30px; height: 30px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: #fff;
  color: var(--muted);
  cursor: pointer;
  font-size: .82rem;
  display: grid; place-items: center;
  flex-shrink: 0;
  transition: all .18s;
}
.pl-search-clear:hover { background: #f5f0ff; color: var(--purple); border-color: var(--purple); }

/* live results */
.pl-search-results {
  border-top: 1px solid var(--border);
  max-height: 280px;
  overflow-y: auto;
}
.pl-sr-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  text-decoration: none;
  color: var(--text);
  border-bottom: 1px solid var(--border);
  transition: background .15s;
}
.pl-sr-item:hover { background: #faf7ff; }
.pl-sr-img { width: 46px; height: 46px; object-fit: contain; background: #fff; border-radius: 10px; flex-shrink: 0; border: 1px solid var(--border); }
.pl-sr-name { font-weight: 700; font-size: .9rem; }
.pl-sr-cat  { font-size: .72rem; color: var(--muted); }
.pl-sr-price { font-weight: 900; color: var(--purple); font-size: .9rem; margin-left: auto; padding-right: 4px; white-space: nowrap; }
.pl-sr-none { padding: 16px 0; color: var(--muted); font-size: .88rem; }

/* ── SHOP HERO ── */
.pl-shop-hero {
  background: linear-gradient(160deg, #0e0630, #1a0a36);
  color: #fff;
  padding: 52px 0 44px;
}
.pl-shop-hero-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.pl-shop-hero .eyebrow.dark { margin-bottom: 10px; display: inline-flex; }
.pl-shop-title {
  font-size: clamp(2rem, 4vw, 3.4rem);
  font-weight: 900;
  line-height: .88;
  text-transform: uppercase;
  letter-spacing: -.04em;
  margin: 0 0 12px;
}
.pl-shop-sub { color: rgba(255,255,255,.65); font-size: .9rem; margin: 0; max-width: 520px; }
.pl-shop-trust { display: flex; gap: 24px; flex-shrink: 0; }
.pl-shop-stat {
  text-align: center;
  padding: 14px 18px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  min-width: 72px;
}
.pl-shop-stat strong { display: block; font-size: 1.5rem; font-weight: 900; line-height: 1; }
.pl-shop-stat span { font-size: .62rem; text-transform: uppercase; letter-spacing: .08em; color: rgba(255,255,255,.5); }

/* ── SHOP TOOLBAR ── */
.pl-shop-toolbar-wrap {
  position: sticky;
  top: 72px;
  z-index: 40;
  background: rgba(255,255,255,.97);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
  box-shadow: 0 4px 20px rgba(67,45,118,.07);
}
.pl-shop-toolbar {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 0;
  flex-wrap: wrap;
}
.pl-shop-search-wrap {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 16px;
  border: 1.5px solid var(--border);
  border-radius: 999px;
  background: #fff;
  min-width: 220px;
  flex: 0 0 auto;
  transition: border-color .2s;
}
.pl-shop-search-wrap:focus-within { border-color: var(--purple); }
.pl-shop-search-wrap svg { color: var(--muted); flex-shrink: 0; }
.pl-shop-search {
  border: none; outline: none;
  font-size: .9rem; font-family: inherit;
  color: var(--text); background: transparent;
  width: 100%;
}
.pl-shop-search::placeholder { color: var(--muted); }

/* category pills */
.pl-shop-cats {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  flex: 1;
}
.pl-shop-cat {
  padding: 9px 16px;
  border-radius: 999px;
  border: 1.5px solid var(--border);
  background: #fff;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
  transition: all .18s ease;
}
.pl-shop-cat:hover { border-color: var(--purple); color: var(--purple); }
.pl-shop-cat.active {
  background: var(--purple);
  border-color: var(--purple);
  color: #fff;
  box-shadow: 0 6px 18px rgba(67,45,118,.22);
}

/* ── SHOP META ROW ── */
.pl-shop-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 0 12px;
}
.pl-shop-count { font-size: .88rem; color: var(--muted); font-weight: 600; }
.pl-shop-sort .woocommerce-ordering select {
  padding: 9px 14px; border-radius: 10px; border: 1.5px solid var(--border);
  font-size: .84rem; font-family: inherit; background: #fff; color: var(--text);
}

/* ── SHOP SECTION ── */
.pl-shop-section { padding: 0 0 80px; }

/* no results */
.pl-empty-search {
  text-align: center;
  padding: 60px 20px;
  color: var(--muted);
}
.pl-empty-search span { display: block; font-size: 2.8rem; margin-bottom: 14px; }
.pl-empty-search h3 { font-size: 1.4rem; font-weight: 900; color: var(--text); margin-bottom: 8px; }
.pl-empty-search p  { margin-bottom: 20px; }

/* pagination */
.pl-shop-pagination { padding-top: 32px; }
.pl-shop-pagination .woocommerce-pagination { display: flex; justify-content: center; }
.pl-shop-pagination .page-numbers {
  display: flex; gap: 6px; list-style: none; padding: 0;
}
.pl-shop-pagination .page-numbers a,
.pl-shop-pagination .page-numbers span {
  padding: 10px 15px; border-radius: 10px; border: 1.5px solid var(--border);
  font-weight: 700; font-size: .88rem; text-decoration: none; color: var(--text); background: #fff;
  transition: all .18s;
}
.pl-shop-pagination .page-numbers .current,
.pl-shop-pagination .page-numbers a:hover {
  background: var(--purple); border-color: var(--purple); color: #fff;
}

/* ── CARD PRICE FIX — "From $X" ── */
.price-wrap { display: flex; align-items: baseline; gap: 4px; }
.price-from { font-size: .68rem; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: .04em; }

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .pl-shop-hero-inner { flex-direction: column; align-items: flex-start; gap: 20px; }
  .pl-shop-trust { gap: 12px; }
  .pl-shop-toolbar { gap: 10px; }
  .pl-shop-search-wrap { min-width: 160px; }
}
@media (max-width: 640px) {
  .pl-shop-hero { padding: 36px 0 30px; }
  .pl-shop-title { font-size: 2rem; }
  .pl-shop-toolbar-wrap { top: 60px; }
  .pl-shop-toolbar { padding: 10px 0; gap: 8px; }
  .pl-shop-search-wrap { min-width: 0; flex: 1; }
  .pl-shop-cats { gap: 6px; }
  .pl-shop-cat { padding: 7px 12px; font-size: .74rem; }
}


/* ================================================================
   CARD SIZING HOTFIX — cleaner vial fit + no broken prices/buttons
================================================================ */
.product-card .product-image{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  overflow:hidden !important;
}
.featured-card .product-image,
.product-grid .product-image{
  height:240px !important;
  padding:18px 18px 8px !important;
}
.catalog-card .product-image{
  height:210px !important;
  padding:16px 16px 8px !important;
}
.product-card .product-image img,
.featured-card .product-image img,
.catalog-card .product-image img,
.product-grid .product-image img{
  width:auto !important;
  height:auto !important;
  max-width:76% !important;
  max-height:170px !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  margin:0 auto !important;
}
.featured-card .product-image img,
.product-grid .product-image img{
  max-width:80% !important;
  max-height:190px !important;
}
.product-card .product-footer.compact,
.featured-card .product-footer.compact,
.catalog-card .product-footer.compact{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:end !important;
  gap:12px !important;
}
.price-wrap{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:baseline !important;
  gap:4px !important;
  min-width:0 !important;
}
.price,
.price .woocommerce-Price-amount,
.price bdi{
  white-space:nowrap !important;
  display:inline-flex !important;
  align-items:baseline !important;
}
.card-actions{
  flex-shrink:0 !important;
}
.catalog-card .btn.micro,
.featured-card .btn.micro{
  white-space:nowrap !important;
}
@media (max-width: 640px){
  .featured-card .product-image,
  .catalog-card .product-image,
  .product-grid .product-image{
    height:110px !important;
    padding:10px 10px 6px !important;
  }
  .product-card .product-image img,
  .featured-card .product-image img,
  .catalog-card .product-image img,
  .product-grid .product-image img{
    max-width:84% !important;
    max-height:84px !important;
  }
  .product-card .product-footer.compact,
  .featured-card .product-footer.compact,
  .catalog-card .product-footer.compact{
    gap:6px !important;
  }
}


/* v32 mobile stability — search re-enabled */
.pl-search-btn { display: grid !important; }

@media (max-width: 1024px) {
  .reveal-up,
  .reveal-up.is-visible,
  .float-pop,
  .float-pop.is-visible,
  .section-head.reveal-up,
  .catalog-toolbar.reveal-up,
  .product-grid.reveal-up,
  .catalog-grid.reveal-up,
  .featured-grid.reveal-up,
  .peptide-marquee-wrap.reveal-up {
    opacity: 1 !important;
    transform: none !important;
    transition: opacity .24s ease !important;
  }

  .product-grid,
  .catalog-grid,
  .featured-grid {
    content-visibility: visible !important;
    contain-intrinsic-size: auto !important;
  }
}


/* v33 shop layout + search usability */
.pl-shop-toolbar{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:12px !important;
}
.pl-shop-cats{
  width:100% !important;
  overflow-x:auto;
  flex-wrap:nowrap !important;
  padding-bottom:4px;
  scrollbar-width:none;
}
.pl-shop-cats::-webkit-scrollbar{display:none}
.pl-shop-search-row{width:100%}
.pl-shop-search-wrap{
  width:100% !important;
  min-width:0 !important;
  flex:1 1 auto !important;
  padding:12px 16px !important;
}
.pl-shop-search{min-width:0;flex:1 1 auto}
.pl-shop-search-clear{
  width:28px;height:28px;border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--muted);
  display:grid;place-items:center;font-size:18px;line-height:1;flex-shrink:0;cursor:pointer;transition:.18s ease;
}
.pl-shop-search-clear:hover{border-color:var(--purple);color:var(--purple);background:#f7f2ff}
.pl-shop-meta{align-items:center}
.pl-shop-grid.catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:22px !important}
.pl-shop-grid .product-card{min-width:0;height:100%}
.pl-shop-grid .product-image{height:230px !important;padding:14px 14px 6px !important;align-items:center !important}
.pl-shop-grid .product-image img{max-width:88% !important;max-height:182px !important;transform:translateY(8px) scale(1.08);transform-origin:center bottom}
.pl-shop-grid .product-body{padding:14px 14px 15px !important}
.pl-shop-grid .product-category{font-size:.64rem !important;line-height:1.35 !important;min-height:2.2em;display:block}
.pl-shop-grid .product-body h3{font-size:1rem !important;line-height:1.14 !important;min-height:2.3em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pl-shop-grid .product-purity{font-size:.74rem !important;line-height:1.45 !important;min-height:2.8em}
.pl-shop-grid .product-footer.compact{grid-template-columns:minmax(0,1fr) auto !important;gap:10px !important}
.pl-shop-grid .price{font-size:1.08rem !important}
.pl-shop-grid .btn.micro{padding:10px 14px !important;font-size:.72rem !important}
@media (max-width: 1380px){
  .pl-shop-grid.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
}
@media (max-width: 1100px){
  .pl-shop-grid.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media (max-width: 820px){
  .pl-shop-hero{padding:26px 0 18px !important}
  .pl-shop-title{font-size:1.7rem !important;line-height:.96 !important;margin-bottom:8px !important}
  .pl-shop-sub{font-size:.82rem !important;line-height:1.45 !important}
  .pl-shop-trust{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px !important}
  .pl-shop-stat{min-width:0 !important;padding:12px 8px !important}
  .pl-shop-grid.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important}
}
@media (max-width: 640px){
  .pl-shop-toolbar-wrap{top:58px !important}
  .pl-shop-toolbar{padding:10px 0 !important;gap:10px !important}
  .pl-shop-search-row{order:-1}
  .pl-shop-search-wrap{padding:11px 14px !important}
  .pl-shop-cats{gap:7px !important;overflow-x:auto;flex-wrap:nowrap !important;padding-bottom:2px}
  .pl-shop-cat{padding:8px 12px !important;font-size:.72rem !important;flex:0 0 auto}
  .pl-shop-meta{display:grid !important;grid-template-columns:1fr;gap:10px !important;padding:14px 0 10px !important}
  .pl-shop-sort .woocommerce-ordering, .pl-shop-sort .woocommerce-ordering select{width:100%}
  .pl-shop-grid.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}
  .pl-shop-grid .product-image{height:132px !important;padding:8px 8px 4px !important}
  .pl-shop-grid .product-image img{max-width:86% !important;max-height:96px !important;transform:translateY(4px) scale(1.05)}
  .pl-shop-grid .product-body{padding:9px 8px 10px !important;gap:7px !important}
  .pl-shop-grid .product-category{font-size:.54rem !important;min-height:2.1em !important}
  .pl-shop-grid .product-body h3{font-size:.79rem !important;min-height:2.5em !important}
  .pl-shop-grid .product-purity{font-size:.56rem !important;min-height:2.7em !important}
  .pl-shop-grid .product-footer.compact{gap:6px !important}
  .pl-shop-grid .price{font-size:.9rem !important}
  .pl-shop-grid .btn.micro{padding:7px 8px !important;font-size:.53rem !important;max-width:unset !important}
}


/* v34 shop card reset + cleaner desktop/mobile layout */
.pl-shop-toolbar{
  display:grid !important;
  grid-template-columns:minmax(280px,420px) minmax(0,1fr) !important;
  align-items:center !important;
  gap:16px !important;
}
.pl-shop-search-row{width:100%;order:0}
.pl-shop-search-wrap{
  min-height:54px;
  border-radius:18px !important;
}
.pl-shop-cats{
  width:100% !important;
  overflow-x:auto;
  flex-wrap:nowrap !important;
  justify-content:flex-start !important;
}
.pl-shop-grid.catalog-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
}
.pl-shop-grid .product-card{
  min-width:0;
  height:100%;
  border-radius:26px !important;
}
.pl-shop-grid .product-image{
  height:250px !important;
  padding:18px 18px 8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.pl-shop-grid .product-image img{
  width:auto !important;
  max-width:72% !important;
  max-height:164px !important;
  object-fit:contain !important;
  transform:none !important;
}
.pl-shop-grid .strength-chips.overlay{
  right:14px !important;
  bottom:12px !important;
}
.pl-shop-grid .product-body{
  padding:16px 16px 17px !important;
  gap:10px !important;
}
.pl-shop-grid .product-category{
  font-size:.68rem !important;
  min-height:2.5em !important;
}
.pl-shop-grid .product-body h3{
  font-size:1.02rem !important;
  line-height:1.18 !important;
  min-height:2.45em !important;
}
.pl-shop-grid .product-purity{
  font-size:.8rem !important;
  min-height:3em !important;
}
.pl-shop-grid .product-footer.compact{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:12px !important;
}
.pl-shop-grid .card-actions{
  flex-shrink:0;
}
.pl-shop-grid .btn.micro{
  padding:10px 14px !important;
  font-size:.74rem !important;
  white-space:nowrap !important;
}
.pl-shop-grid .price{
  font-size:1.18rem !important;
}
@media (max-width: 1280px){
  .pl-shop-grid.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media (max-width: 900px){
  .pl-shop-toolbar{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .pl-shop-search-row{order:-1}
  .pl-shop-grid.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important}
}
@media (max-width: 640px){
  .pl-shop-toolbar{gap:10px !important}
  .pl-shop-search-wrap{min-height:48px;padding:10px 14px !important}
  .pl-shop-grid.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important}
  .pl-shop-grid .product-image{height:146px !important;padding:10px 10px 4px !important}
  .pl-shop-grid .product-image img{max-width:82% !important;max-height:100px !important}
  .pl-shop-grid .product-body{padding:10px 10px 11px !important;gap:7px !important}
  .pl-shop-grid .product-category{font-size:.56rem !important;min-height:2.2em !important}
  .pl-shop-grid .product-body h3{font-size:.82rem !important;min-height:2.55em !important}
  .pl-shop-grid .product-purity{font-size:.58rem !important;min-height:2.8em !important}
  .pl-shop-grid .product-footer.compact{gap:7px !important}
  .pl-shop-grid .price{font-size:.92rem !important}
  .pl-shop-grid .btn.micro{padding:7px 9px !important;font-size:.56rem !important}
}


/* ===================================================
   v35 — Fix 1: Stop price being overlapped by button
   Fix 2: Reduce dead space above product images
   =================================================== */

/* ── SHOP GRID: image area ──
   Reduce height and anchor image to bottom so bottles
   sit flush against the card body with no dead air above */
.pl-shop-grid .product-image {
  height: 190px !important;
  padding: 14px 14px 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
}
.pl-shop-grid .product-image img {
  max-height: 152px !important;
  max-width: 74% !important;
  width: auto !important;
  object-fit: contain !important;
  transform: none !important;
}

/* ── SHOP GRID: footer — stack price above button ──
   This is the core fix: price wrap takes full width on
   its own line, then the actions row sits below it.    */
.pl-shop-grid .product-footer.compact {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 10px !important;
}
.pl-shop-grid .price-wrap {
  display: flex !important;
  align-items: baseline !important;
  gap: 5px !important;
  min-width: 0 !important;
}
.pl-shop-grid .price,
.pl-shop-grid .price .woocommerce-Price-amount,
.pl-shop-grid .price bdi {
  font-size: 1.2rem !important;
  white-space: nowrap !important;
}
.pl-shop-grid .price-from {
  font-size: .68rem !important;
}
.pl-shop-grid .card-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
}
.pl-shop-grid .card-actions .btn.micro {
  flex: 1 !important;
  justify-content: center !important;
  padding: 10px 14px !important;
  font-size: .74rem !important;
  white-space: nowrap !important;
  min-height: 38px !important;
}
.pl-shop-grid .card-actions .eye-btn {
  flex: 0 0 36px !important;
  width: 36px !important;
  height: 36px !important;
}

/* ── MOBILE ── */
@media (max-width: 640px) {
  .pl-shop-grid .product-image {
    height: 118px !important;
    padding: 8px 8px 0 !important;
  }
  .pl-shop-grid .product-image img {
    max-height: 90px !important;
    max-width: 78% !important;
  }
  .pl-shop-grid .product-footer.compact {
    gap: 7px !important;
  }
  .pl-shop-grid .price,
  .pl-shop-grid .price .woocommerce-Price-amount,
  .pl-shop-grid .price bdi {
    font-size: .92rem !important;
  }
  .pl-shop-grid .card-actions .btn.micro {
    padding: 8px 10px !important;
    font-size: .62rem !important;
    min-height: 32px !important;
  }
  .pl-shop-grid .card-actions .eye-btn {
    flex: 0 0 30px !important;
    width: 30px !important;
    height: 30px !important;
  }
}


/* ===================================================
   v35 FINAL — New product-footer-stack: price always
   above button, button always full width. No overlap possible.
   =================================================== */
.product-footer-stack {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}
.product-footer-stack .price-wrap {
  display: flex;
  align-items: baseline;
  gap: 5px;
  flex-wrap: wrap;
}
.product-footer-stack .price-from {
  font-size: .68rem;
  font-weight: 700;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .04em;
}
.product-footer-stack .price,
.product-footer-stack .price .woocommerce-Price-amount,
.product-footer-stack .price bdi {
  font-size: 1.25rem;
  font-weight: 900;
  color: var(--purple);
  line-height: 1.1;
  white-space: nowrap;
}
.product-footer-stack .card-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.product-footer-stack .btn.micro {
  flex: 1;
  justify-content: center;
  padding: 10px 14px;
  font-size: .74rem;
  white-space: nowrap;
}
.product-footer-stack .eye-btn {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
}

/* Reduce dead space above product images */
.catalog-card .product-image {
  height: 180px !important;
  padding: 12px 12px 0 !important;
  align-items: flex-end !important;
  display: flex !important;
  justify-content: center !important;
}
.catalog-card .product-image img {
  max-height: 148px !important;
  object-fit: contain !important;
}

@media (max-width: 640px) {
  .product-footer-stack {
    gap: 7px;
    padding-top: 8px;
  }
  .product-footer-stack .price,
  .product-footer-stack .price .woocommerce-Price-amount,
  .product-footer-stack .price bdi {
    font-size: .92rem;
  }
  .product-footer-stack .btn.micro {
    padding: 8px 10px;
    font-size: .6rem;
  }
  .product-footer-stack .eye-btn {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
  }
  .catalog-card .product-image {
    height: 110px !important;
    padding: 8px 8px 0 !important;
  }
  .catalog-card .product-image img {
    max-height: 88px !important;
  }
}


/* ===================================================
   MOBILE DRAWER NAV
   =================================================== */
.pl-drawer-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(10, 4, 26, 0.55);
  backdrop-filter: blur(4px);
  z-index: 1998;
}
.pl-drawer-overlay.open { display: block; }

.pl-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: min(340px, 88vw);
  height: 100%;
  background: #fff;
  z-index: 1999;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform .32s cubic-bezier(.4,0,.2,1);
  box-shadow: -20px 0 60px rgba(67,45,118,.18);
  overflow-y: auto;
}
.pl-drawer.open { transform: translateX(0); }

.pl-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 20px 18px;
  border-bottom: 1px solid var(--border);
}
.pl-drawer-logo {
  font-weight: 900;
  font-size: 1.05rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--purple);
}
.pl-drawer-close {
  background: none;
  border: 1px solid var(--border);
  border-radius: 999px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  font-size: .9rem;
  color: var(--muted);
  cursor: pointer;
  transition: .2s;
}
.pl-drawer-close:hover { border-color: var(--purple); color: var(--purple); }

.pl-drawer-nav {
  display: flex;
  flex-direction: column;
  padding: 10px 0;
  flex: 1;
}
.pl-drawer-link {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 22px;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text);
  text-decoration: none;
  border-bottom: 1px solid #f4f0fb;
  transition: background .18s, color .18s;
  position: relative;
}
.pl-drawer-link:hover {
  background: #f8f4ff;
  color: var(--purple);
}
.pl-drawer-icon { font-size: 1.1rem; flex-shrink: 0; width: 24px; text-align: center; }
.pl-drawer-cart-count {
  margin-left: auto;
  background: var(--purple);
  color: #fff;
  border-radius: 999px;
  font-size: .72rem;
  min-width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  padding: 0 6px;
}

.pl-drawer-footer {
  padding: 20px;
  border-top: 1px solid var(--border);
  background: #faf7ff;
}
.pl-drawer-trust {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 16px;
}
.pl-drawer-trust span {
  font-size: .78rem;
  color: var(--muted);
  font-weight: 600;
}
.pl-drawer-cta {
  display: block;
  text-align: center;
  background: var(--purple);
  color: #fff;
  border-radius: 999px;
  padding: 14px;
  font-weight: 800;
  font-size: .96rem;
  letter-spacing: .03em;
  text-decoration: none;
  transition: .2s;
}
.pl-drawer-cta:hover { background: #3e1f8a; color: #fff; }


/* ===================================================
   ABOUT US PAGE
   =================================================== */
.pl-about-hero {
  background: linear-gradient(135deg, #1a0d31 0%, #2e1460 100%);
  padding: 80px 0 70px;
  color: #fff;
}
.pl-about-hero-inner { max-width: 760px; }
.pl-about-title {
  font-size: clamp(2.6rem, 5vw, 4.4rem);
  font-weight: 900;
  line-height: .96;
  text-transform: uppercase;
  margin: 16px 0 18px;
  letter-spacing: -.01em;
}
.pl-about-sub { font-size: 1.05rem; color: rgba(255,255,255,.78); max-width: 600px; line-height: 1.65; }

.pl-about-section { padding: 80px 0; }
.pl-about-story { background: #fff; }
.pl-about-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 56px; align-items: start; }
.pl-about-text h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 900; line-height: 1; margin: 12px 0 18px; text-transform: uppercase; }
.pl-about-text p { color: var(--muted); line-height: 1.7; margin-bottom: 14px; }

.pl-about-stats-block { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.pl-about-stat-card { padding: 22px; background: #f8f4ff; border: 1px solid var(--border); border-radius: 20px; }
.pl-about-stat-card strong { display: block; font-size: 2rem; font-weight: 900; color: var(--purple); line-height: 1; margin-bottom: 6px; }
.pl-about-stat-card span { font-size: .82rem; color: var(--muted); line-height: 1.4; }

.pl-section-head { text-align: center; margin-bottom: 48px; }
.pl-section-head h2 { font-size: clamp(1.8rem, 3vw, 3rem); font-weight: 900; text-transform: uppercase; line-height: 1; margin: 12px 0 14px; }
.pl-section-sub { color: var(--muted); font-size: 1rem; max-width: 600px; margin: 0 auto; line-height: 1.65; }

.pl-team-section { background: #faf7ff; }
.pl-team-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.pl-team-card { background: #fff; border: 1.5px solid var(--border); border-radius: 28px; padding: 32px; box-shadow: var(--shadow); }
.pl-team-avatar { width: 68px; height: 68px; border-radius: 999px; background: var(--purple); color: #fff; font-size: 1.8rem; font-weight: 900; display: grid; place-items: center; margin-bottom: 18px; }
.pl-team-info h3 { font-size: 1.5rem; font-weight: 900; margin: 0 0 4px; }
.pl-team-title { font-size: .8rem; font-weight: 700; color: var(--purple); text-transform: uppercase; letter-spacing: .08em; margin-bottom: 12px; }
.pl-team-degrees { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.pl-team-degrees span { padding: 6px 12px; background: #f5f0ff; border: 1px solid var(--border); border-radius: 999px; font-size: .74rem; font-weight: 700; color: var(--purple); }
.pl-team-info p { color: var(--muted); font-size: .94rem; line-height: 1.68; margin-bottom: 12px; }
.pl-team-focus { margin-top: 16px; padding: 16px; background: #faf7ff; border-radius: 14px; }
.pl-team-focus strong { display: block; font-size: .82rem; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 10px; color: var(--purple); }
.pl-team-focus ul { margin: 0; padding-left: 18px; }
.pl-team-focus li { font-size: .86rem; color: var(--muted); margin-bottom: 5px; line-height: 1.5; }

.pl-standards-section { background: #fff; }
.pl-standards-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.pl-standard-card { padding: 26px; background: #faf7ff; border: 1px solid var(--border); border-radius: 22px; }
.pl-standard-icon { font-size: 1.8rem; margin-bottom: 14px; }
.pl-standard-card h4 { font-size: 1rem; font-weight: 800; margin: 0 0 10px; }
.pl-standard-card p { color: var(--muted); font-size: .88rem; line-height: 1.6; margin: 0; }

.pl-about-cta { background: linear-gradient(135deg, #1a0d31, #2e1460); padding: 80px 0; color: #fff; text-align: center; }
.pl-about-cta-inner h2 { font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 900; text-transform: uppercase; margin: 0 0 12px; }
.pl-about-cta-inner p { color: rgba(255,255,255,.72); margin-bottom: 28px; font-size: 1.05rem; }
.pl-about-cta-btns { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.pl-about-cta-btns .btn-outline { border-color: rgba(255,255,255,.3); color: #fff; }
.pl-about-cta-btns .btn-outline:hover { border-color: #fff; background: rgba(255,255,255,.08); color: #fff; }

@media (max-width: 900px) {
  .pl-about-grid { grid-template-columns: 1fr; gap: 32px; }
  .pl-team-grid { grid-template-columns: 1fr; }
  .pl-standards-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .pl-about-hero { padding: 56px 0 48px; }
  .pl-about-section { padding: 52px 0; }
  .pl-about-stats-block { grid-template-columns: 1fr 1fr; gap: 10px; }
  .pl-standards-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .pl-team-card { padding: 20px; }
}

/* ===================================================
   CONTACT PAGE
   =================================================== */
.pl-contact-hero {
  background: linear-gradient(135deg, #1a0d31 0%, #2e1460 100%);
  padding: 72px 0 60px;
  color: #fff;
}
.pl-contact-title { font-size: clamp(2.4rem, 5vw, 4rem); font-weight: 900; text-transform: uppercase; line-height: .96; margin: 14px 0 14px; }
.pl-contact-sub { color: rgba(255,255,255,.76); font-size: 1rem; max-width: 520px; line-height: 1.6; }

.pl-contact-section { padding: 72px 0 80px; background: #faf7ff; }
.pl-contact-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 48px; align-items: start; }

.pl-contact-form-wrap { background: #fff; border: 1.5px solid var(--border); border-radius: 28px; padding: 36px; box-shadow: var(--shadow); }
.pl-contact-form-wrap h2 { font-size: 1.6rem; font-weight: 900; margin: 0 0 6px; }
.pl-contact-note { color: var(--muted); font-size: .88rem; margin-bottom: 24px; }
.pl-contact-form { display: flex; flex-direction: column; gap: 18px; }
.pl-form-row { display: flex; gap: 14px; }
.pl-form-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.pl-form-group { display: flex; flex-direction: column; gap: 6px; flex: 1; }
.pl-form-group label { font-size: .82rem; font-weight: 700; color: var(--text); text-transform: uppercase; letter-spacing: .05em; }
.pl-form-group input, .pl-form-group textarea, .pl-form-group select { padding: 13px 16px; border: 1.5px solid var(--border); border-radius: 12px; font-size: .96rem; font-family: inherit; color: var(--text); background: #faf8ff; transition: border-color .2s, box-shadow .2s; }
.pl-form-group input:focus, .pl-form-group textarea:focus, .pl-form-group select:focus { outline: none; border-color: var(--purple); box-shadow: 0 0 0 4px rgba(143,103,255,.1); background: #fff; }
.pl-form-group textarea { resize: vertical; min-height: 140px; }
.pl-contact-form .btn { align-self: flex-start; padding: 14px 28px; }
.pl-contact-success { display: flex; align-items: center; gap: 16px; padding: 20px; background: #f0fff4; border: 1px solid #5ece75; border-radius: 14px; }
.pl-contact-success span { font-size: 1.4rem; color: #5ece75; font-weight: 900; }
.pl-contact-success strong { display: block; font-size: 1rem; margin-bottom: 2px; }
.pl-contact-success p { margin: 0; color: var(--muted); font-size: .9rem; }
.pl-contact-error { padding: 14px 16px; background: #fff5f5; border: 1px solid #e05252; border-radius: 10px; color: #c0392b; font-size: .9rem; margin-bottom: 4px; }

.pl-contact-info { display: flex; flex-direction: column; gap: 14px; }
.pl-contact-info-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 22px; box-shadow: var(--shadow); }
.pl-contact-info-icon { font-size: 1.5rem; margin-bottom: 10px; }
.pl-contact-info-card h4 { font-size: .96rem; font-weight: 800; margin: 0 0 8px; }
.pl-contact-info-card p { color: var(--muted); font-size: .86rem; line-height: 1.6; margin: 0; }
.pl-contact-response-card { background: #f8f4ff; border-color: #d8c8f0; }
.pl-contact-response-card strong { display: block; font-size: .96rem; margin-bottom: 6px; color: var(--purple); }

@media (max-width: 900px) {
  .pl-contact-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .pl-contact-form-wrap { padding: 20px; }
  .pl-form-two-col { grid-template-columns: 1fr; }
  .pl-contact-hero { padding: 52px 0 40px; }
}


/* ===================================================
   FACILITY GALLERY
   =================================================== */
.pl-facility-section { background: #0d0620; padding: 80px 0; }
.pl-facility-section .pl-section-head { color: #fff; }
.pl-facility-section .pl-section-head h2 { color: #fff; }
.pl-facility-section .pl-section-sub { color: rgba(255,255,255,.68); }
.pl-facility-section .eyebrow { border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.08); color: #c8b4f8; }

.pl-facility-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 16px;
  margin-top: 40px;
}
.pl-facility-imgs-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.pl-facility-img-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  background: #1a0d31;
}
.pl-facility-img-large { border-radius: 24px; }
.pl-facility-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
  min-height: 200px;
}
.pl-facility-img-large img { min-height: 440px; }
.pl-facility-img-wrap:hover img { transform: scale(1.04); }
.pl-facility-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 28px 18px 16px;
  background: linear-gradient(to top, rgba(10,4,26,.85), transparent);
  color: #fff;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

@media (max-width: 820px) {
  .pl-facility-grid { grid-template-columns: 1fr; }
  .pl-facility-img-large img { min-height: 260px; }
}


/* ===================================================
   MOBILE CARD FOOTER — clean button, no overflow
   =================================================== */
@media (max-width: 768px) {
  /* Make card body padding consistent */
  .catalog-card .product-body {
    padding: 12px 12px 14px !important;
  }

  /* Footer stack: price above, button row below */
  .product-footer-stack {
    padding-top: 10px !important;
    gap: 8px !important;
    margin-top: 8px !important;
  }

  /* Price clean and readable */
  .product-footer-stack .price-wrap {
    flex-wrap: nowrap !important;
    gap: 4px !important;
  }
  .product-footer-stack .price-from {
    font-size: .65rem !important;
    flex-shrink: 0 !important;
  }
  .product-footer-stack .price,
  .product-footer-stack .price .woocommerce-Price-amount,
  .product-footer-stack .price bdi {
    font-size: 1.05rem !important;
    font-weight: 900 !important;
  }

  /* Button row: button fills space, eye-btn fixed */
  .product-footer-stack .card-actions {
    gap: 6px !important;
    width: 100% !important;
  }
  .product-footer-stack .card-actions .btn.micro {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: 100% !important;
    padding: 10px 8px !important;
    font-size: .72rem !important;
    font-weight: 800 !important;
    border-radius: 999px !important;
    text-align: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 36px !important;
    background: var(--purple) !important;
    color: #fff !important;
    border: none !important;
  }
  .product-footer-stack .card-actions .eye-btn {
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    font-size: .7rem !important;
  }

  /* Ensure card never overflows its column */
  .catalog-card {
    overflow: hidden !important;
    min-width: 0 !important;
  }
  .catalog-card .product-body {
    overflow: hidden !important;
    min-width: 0 !important;
  }
}

/* ================================================================
   HOME PAGE MOBILE CTA FIX — make featured card button match shop grid
================================================================ */
@media (max-width: 640px) {
  .featured-grid .featured-card .product-footer-stack,
  .best-sellers .featured-card .product-footer-stack {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin-top: auto !important;
    padding-top: 8px !important;
    border-top: 1px solid var(--border) !important;
  }

  .featured-grid .featured-card .price-wrap,
  .best-sellers .featured-card .price-wrap {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 4px !important;
  }

  .featured-grid .featured-card .price-from,
  .best-sellers .featured-card .price-from {
    font-size: .54rem !important;
    letter-spacing: .08em !important;
  }

  .featured-grid .featured-card .price,
  .best-sellers .featured-card .price {
    font-size: .84rem !important;
    line-height: 1.02 !important;
    max-width: none !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  .featured-grid .featured-card .card-actions,
  .best-sellers .featured-card .card-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 26px !important;
    gap: 6px !important;
    align-items: center !important;
    width: 100% !important;
  }

  .featured-grid .featured-card .btn.micro,
  .best-sellers .featured-card .btn.micro {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 34px !important;
    padding: 9px 12px !important;
    font-size: .72rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-align: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
  }

  .featured-grid .featured-card .eye-btn,
  .best-sellers .featured-card .eye-btn {
    width: 26px !important;
    height: 26px !important;
    flex: 0 0 26px !important;
    font-size: .62rem !important;
  }
}


/* ================================================================
   HOME PAGE / CATALOG MOBILE CTA FIX — make catalog cards match best sellers
================================================================ */
@media (max-width: 640px) {
  .catalog-grid .catalog-card .product-footer-stack,
  .catalog-section .catalog-card .product-footer-stack,
  .catalog-card .product-footer-stack {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin-top: auto !important;
    padding-top: 8px !important;
    border-top: 1px solid var(--border) !important;
  }

  .catalog-grid .catalog-card .price-wrap,
  .catalog-section .catalog-card .price-wrap,
  .catalog-card .price-wrap {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 4px !important;
  }

  .catalog-grid .catalog-card .price-from,
  .catalog-section .catalog-card .price-from,
  .catalog-card .price-from {
    font-size: .54rem !important;
    letter-spacing: .08em !important;
  }

  .catalog-grid .catalog-card .price,
  .catalog-section .catalog-card .price,
  .catalog-card .price {
    font-size: .84rem !important;
    line-height: 1.02 !important;
    max-width: none !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  .catalog-grid .catalog-card .card-actions,
  .catalog-section .catalog-card .card-actions,
  .catalog-card .card-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 26px !important;
    gap: 6px !important;
    align-items: center !important;
    width: 100% !important;
  }

  .catalog-grid .catalog-card .btn.micro,
  .catalog-section .catalog-card .btn.micro,
  .catalog-card .btn.micro {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 34px !important;
    padding: 9px 12px !important;
    font-size: .72rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-align: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .catalog-grid .catalog-card .eye-btn,
  .catalog-section .catalog-card .eye-btn,
  .catalog-card .eye-btn {
    width: 26px !important;
    height: 26px !important;
    flex: 0 0 26px !important;
    font-size: .62rem !important;
  }
}


/* v35 fix — restore full-width category pills on desktop */
@media (min-width: 901px) {
  .pl-shop-toolbar {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .pl-shop-search-row {
    width: 100%;
    max-width: 420px;
  }
  .pl-shop-cats {
    flex-wrap: wrap !important;
    overflow-x: visible !important;
    width: 100% !important;
  }
}


/* ── v36: mobile drawer search ── */
.pl-drawer-search-wrap {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 11px 16px;
  border: 1.5px solid var(--border);
  border-radius: 999px;
  background: #f8f4ff;
  margin: 0 0 14px 0;
  transition: border-color .2s;
}
.pl-drawer-search-wrap:focus-within { border-color: var(--purple); }
.pl-drawer-search-wrap svg { color: var(--muted); flex-shrink: 0; }
.pl-drawer-search-input {
  flex: 1; border: none; outline: none;
  font-size: .9rem; font-family: inherit;
  color: var(--text); background: transparent; min-width: 0;
}
.pl-drawer-search-input::placeholder { color: var(--muted); }
.pl-drawer-search-clear {
  background: none; border: none; color: var(--muted);
  cursor: pointer; font-size: .8rem; padding: 2px 4px; line-height: 1;
}
.pl-drawer-search-results .pl-sr-item { padding: 10px 0; font-size: .85rem; }
.pl-drawer-search-results .pl-sr-img  { width: 38px; height: 38px; }


/* ── v37: mobile header fixes ── */
@media (max-width: 900px) {
  /* Hide Shop Now button on mobile — too bulky */
  .header-pill { display: none !important; }

  /* Logo: one line, no wrapping */
  .logo,
  .logo span,
  .logo a {
    white-space: nowrap !important;
    max-width: none !important;
    font-size: 1rem !important;
    line-height: 1.2 !important;
  }

  /* Tighten header */
  .header-inner { padding: 12px 0; gap: 8px; align-items: center; }
  .header-actions { gap: 8px; }
}

@media (max-width: 640px) {
  .logo { max-width: none !important; white-space: nowrap !important; font-size: 1rem !important; line-height: 1.2 !important; }
  .logo span { white-space: nowrap !important; }
  .header-pill { display: none !important; }
}


/* ── v38: homepage mobile fixes ── */

/* Logo one line everywhere — belt + suspenders */
.logo, .logo span, .logo a, a.logo, a.logo span {
  white-space: nowrap !important;
  max-width: none !important;
}

/* Homepage category pills — horizontal scroll on mobile, no stacking */
@media (max-width: 900px) {
  .catalog-toolbar {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .filter-pills {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    gap: 8px !important;
    padding-bottom: 4px;
    scrollbar-width: none;
  }
  .filter-pills::-webkit-scrollbar { display: none; }
  .filter-pill {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    padding: 10px 16px !important;
    font-size: .82rem !important;
  }
  .search-wrap {
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100%;
  }
}


/* ── v39: force homepage filter pills horizontal scroll ── */
@media (max-width: 900px) {
  /* Break the toolbar out of any overflow constraints */
  .catalog-toolbar {
    overflow: visible !important;
  }

  /* The filter-pills row must be a scroll container — use negative margins
     to extend edge-to-edge so pills don't get clipped by .container padding */
  .filter-pills {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: scroll !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    gap: 8px !important;
    padding: 4px 0 8px 0 !important;
    /* pull flush to screen edges */
    margin-left: calc(-1 * var(--container-pad, 12px));
    margin-right: calc(-1 * var(--container-pad, 12px));
    padding-left: var(--container-pad, 12px) !important;
    padding-right: var(--container-pad, 12px) !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none;
  }
  .filter-pills::-webkit-scrollbar { display: none !important; }

  .filter-pill {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    scroll-snap-align: start;
    padding: 10px 16px !important;
    font-size: .82rem !important;
  }
}


/* ── v40: catalog toolbar full restructure ── */

/* Desktop: stack search on top, pills below */
.catalog-toolbar {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
}

/* Search row takes full width */
.catalog-toolbar .pl-shop-search-row {
  width: 100% !important;
}
.catalog-toolbar .pl-shop-search-wrap {
  max-width: 420px;
  width: 100%;
}

/* Pills: always single horizontal scrolling row, never wrap */
.filter-pills {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  -webkit-overflow-scrolling: touch !important;
  gap: 8px !important;
  padding-bottom: 4px !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
  width: 100% !important;
}
.filter-pills::-webkit-scrollbar { display: none !important; }
.filter-pill {
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
