/*
Theme Name: Qureshi Labs
Theme URI: https://qureshilabs.com
Author: Qureshi Labs
Author URI: https://qureshilabs.com
Description: A blue, research-grade WooCommerce theme for Qureshi Labs — premium research peptides. Includes a four-panel hero with levitating vials, styled WooCommerce shop, COA and Affiliate page templates, an age gate, and a scrolling announcement bar.
Version: 1.5.6
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: qureshi-labs
WC requires at least: 7.0
WC tested up to: 9.0
*/

:root{
  --ink:#0b1729; --ink-soft:#5b6b85; --line:#e3e9f4; --white:#ffffff;
  --blue:#2563eb; --blue-deep:#1d4ed8; --sky:#dbeafe; --ice:#eff5ff;
  --peri:#e3e9ff; --cyan:#dbf0fb; --accent:#0ea5e9; --sale:#e11d6b;
  --display:"Space Grotesk", system-ui, sans-serif; --body:"Inter", system-ui, sans-serif;
}
*{box-sizing:border-box}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1240px;margin:0 auto;padding:0 clamp(18px,4vw,56px)}
h1,h2,h3,h4,h5{margin:0}

/* ticker */
.ql-ticker{background:linear-gradient(90deg,var(--blue),var(--blue-deep));color:#fff;font-family:var(--display);font-weight:500;font-size:12.5px;letter-spacing:.14em;overflow:hidden;white-space:nowrap}
.ql-ticker .run{display:inline-block;padding:9px 0;animation:ql-marq 26s linear infinite}
.ql-ticker .run span{margin:0 26px}.ql-ticker .run b{color:#bfdbfe}
@media(max-width:680px){.ql-ticker{font-size:10px;letter-spacing:.09em}.ql-ticker .run{padding:5px 0}.ql-ticker .run span{margin:0 16px}}
@keyframes ql-marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* nav */
.ql-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px clamp(18px,4vw,56px);border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);z-index:60}
.ql-brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.02em}
.ql-brand img{max-height:38px;width:auto}
.ql-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--blue),var(--accent));display:grid;place-items:center;color:#fff;font-size:15px;font-family:var(--display);font-weight:700;box-shadow:0 6px 16px -6px rgba(37,99,235,.6)}
.ql-menu{display:flex;gap:26px;font-size:14.5px;font-weight:500;color:var(--ink-soft);list-style:none;margin:0;padding:0;flex-wrap:wrap}
.ql-menu a{position:relative;padding:4px 0;transition:color .18s}
.ql-menu a:hover{color:var(--ink)}
.ql-menu .current-menu-item>a,.ql-menu .current_page_item>a{color:var(--blue)}
.ql-right{display:flex;align-items:center;gap:14px}
.ql-discord{display:inline-flex;align-items:center;gap:7px;font-family:var(--display);font-weight:600;font-size:13.5px;color:#fff;background:#5865F2;padding:9px 15px;border-radius:100px;transition:transform .18s}
.ql-discord:hover{transform:translateY(-1px)}
.ql-cart{position:relative;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:border-color .18s}
.ql-cart:hover{border-color:var(--blue)}
.ql-cart .count{position:absolute;top:-4px;right:-4px;background:var(--blue);color:#fff;font-size:11px;font-weight:600;min-width:18px;height:18px;padding:0 4px;border-radius:9px;display:grid;place-items:center}
.ql-hamb{display:none;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:none;cursor:pointer}
@media(max-width:1000px){.ql-menu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fff;border-bottom:1px solid var(--line);padding:16px clamp(18px,4vw,56px);gap:6px;box-shadow:0 18px 30px -20px rgba(11,23,41,.4)}.ql-menu.open{display:flex}.ql-menu a{padding:10px 0;font-size:16px}.ql-hamb{display:grid;order:-1;margin-right:2px}.ql-brand{order:0;position:absolute;left:50%;transform:translateX(-50%);margin:0}.ql-brand img{max-height:48px}.ql-acct{display:none}.ql-right{order:1;margin-left:auto}}

/* buttons */
.ql-btn{display:inline-flex;align-items:center;gap:11px;font-family:var(--display);font-weight:600;font-size:15px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-deep));padding:14px 26px;border-radius:100px;cursor:pointer;border:none;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 26px -10px rgba(37,99,235,.6)}
.ql-btn:hover{transform:translateY(-2px);box-shadow:0 16px 32px -10px rgba(37,99,235,.6);color:#fff}
.ql-btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.ql-btn.ghost:hover{border-color:var(--blue);color:var(--blue)}
.ql-arrow{transition:transform .2s}.ql-btn:hover .ql-arrow{transform:translateX(4px)}

/* shared section bits */
.ql-eyebrow{font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--blue);display:inline-flex;align-items:center;gap:8px}
.ql-eyebrow .pip{width:7px;height:7px;border-radius:50%;background:var(--accent)}
.ql-h1{font-family:var(--display);font-weight:700;font-size:clamp(34px,4.7vw,58px);line-height:1.02;letter-spacing:-.025em}
.ql-h2{font-family:var(--display);font-weight:700;font-size:clamp(26px,3vw,38px);letter-spacing:-.02em}
.ql-section{padding-top:clamp(56px,7vw,90px)}
.ql-section-head{text-align:center;max-width:640px;margin:0 auto clamp(28px,4vw,46px)}
.ql-section-head p{color:var(--ink-soft);margin-top:12px}

/* four-box hero */
.ql-grid4{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(520px,58vh) minmax(520px,58vh)}
.ql-cell{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:clamp(26px,4vw,62px)}
.c-hero{background:var(--white)}
.c-show{background:linear-gradient(140deg,var(--peri) 0%,var(--sky) 56%,var(--cyan) 100%);overflow:visible;z-index:2}
.c-pair{background:linear-gradient(160deg,var(--peri) 0%,var(--ice) 55%,var(--cyan) 100%)}
.c-guar{background:var(--white);border-left:1px solid var(--line);border-top:1px solid var(--line)}
.hero-sub{font-size:clamp(15px,1.1vw,17px);color:var(--ink-soft);max-width:430px;margin:18px 0 28px}
.sale-badge{display:inline-flex;align-items:center;gap:8px;background:var(--sky);color:var(--blue-deep);font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.06em;padding:7px 14px;border-radius:100px;margin-bottom:20px;align-self:flex-start}
.vial{position:absolute;filter:drop-shadow(0 26px 26px rgba(20,60,120,.22));will-change:transform}
.show-v1{width:clamp(275px,34vw,480px);top:54%;left:24%;transform:translate(-50%,-50%) rotate(-9deg);animation:vIn .8s ease both,fa 6s ease-in-out .8s infinite;z-index:3}
.show-v2{width:clamp(180px,20vw,295px);top:11%;right:30%;left:auto;transform:rotate(12deg);animation:vIn .8s ease .18s both,fd 7.2s ease-in-out 1s infinite;z-index:2}
.show-v3{width:clamp(145px,16.5vw,240px);top:42%;right:11%;left:auto;bottom:auto;transform:rotate(-13deg);animation:vIn .8s ease .36s both,fe 8s ease-in-out 1.2s infinite;z-index:2}
.show-v5{display:none}
.ql-clusters{display:none}
@keyframes ql-cluster-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.show-glow{position:absolute;width:60%;height:60%;top:20%;left:20%;background:radial-gradient(circle,rgba(255,255,255,.85),transparent 68%);filter:blur(8px)}
.pair-v1{width:clamp(290px,34vw,510px);left:-2%;top:30%;transform:rotate(-8deg);animation:fb 7s ease-in-out infinite}
.pair-v2{width:clamp(330px,39vw,570px);right:-2%;top:1%;transform:rotate(7deg);animation:fc 6.4s ease-in-out infinite .6s}
.show-v4{width:clamp(165px,19vw,275px);top:38%;left:34%;transform:rotate(14deg);animation:vIn .8s ease .5s both,ff 7.6s ease-in-out 1.3s infinite;z-index:2}
@keyframes vIn{from{opacity:0}to{opacity:1}}
@keyframes fa{0%,100%{transform:translate(-50%,-50%) rotate(-9deg)}50%{transform:translate(-50%,calc(-50% - 20px)) rotate(-6deg)}}
@keyframes fb{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-18px) rotate(-10deg)}}
@keyframes fc{0%,100%{transform:translateY(0) rotate(7deg)}50%{transform:translateY(-22px) rotate(4deg)}}
@keyframes fd{0%,100%{transform:translateY(0) rotate(12deg)}50%{transform:translateY(-14px) rotate(15deg)}}
@keyframes fe{0%,100%{transform:translateY(0) rotate(-13deg)}50%{transform:translateY(-18px) rotate(-10deg)}}
@keyframes ff{0%,100%{transform:translateY(0) rotate(14deg)}50%{transform:translateY(-15px) rotate(11deg)}}
.show-tag{position:absolute;bottom:24px;left:clamp(26px,4vw,62px);font-family:var(--display);font-weight:600;font-size:12.5px;color:var(--ink);background:rgba(255,255,255,.72);backdrop-filter:blur(4px);padding:7px 14px;border-radius:100px;border:1px solid rgba(255,255,255,.9);z-index:7}
.g-head{font-family:var(--display);font-weight:700;font-size:clamp(22px,2vw,28px);letter-spacing:-.02em;margin-bottom:10px}
.g-sub{font-size:14.5px;color:var(--ink-soft);max-width:430px;margin-bottom:22px}
.g-list{display:flex;flex-direction:column;gap:11px}
.g-row{display:flex;align-items:center;gap:15px;padding:15px 17px;border:1px solid var(--line);border-radius:15px;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}
.g-row:hover{transform:translateY(-2px);box-shadow:0 14px 28px -18px rgba(11,23,41,.3);border-color:#cfe0fb}
.g-ico{flex:0 0 auto;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--ice)}
.g-ico svg{width:22px;height:22px;stroke:var(--blue)}
.g-txt h3{font-family:var(--display);font-weight:600;font-size:15px;margin-bottom:2px}
.g-txt p{font-size:13px;color:var(--ink-soft);margin:0}
@media(max-width:880px){.ql-grid4{grid-template-columns:1fr;grid-template-rows:none}.ql-cell{min-height:auto}.c-guar{border-left:none}
  .c-show{order:1;position:relative;min-height:360px;padding:0;overflow:hidden}
  .c-show .show-tag{bottom:18px;left:22px}
  .show-v1{width:min(42vw,200px);left:37%;top:44%;right:auto;bottom:auto;transform:translate(-50%,-50%) rotate(-8deg);animation:vIn .8s ease both,m1 6.5s ease-in-out .8s infinite;z-index:3}
  .show-v2{width:min(24vw,115px);left:58%;top:29%;right:auto;bottom:auto;transform:translate(-50%,-50%) rotate(9deg);animation:vIn .8s ease .18s both,m2 7.2s ease-in-out 1s infinite;z-index:2}
  .show-v4{width:min(23vw,110px);left:57%;top:62%;right:auto;bottom:auto;transform:translate(-50%,-50%) rotate(12deg);animation:vIn .8s ease .5s both,m4 7.6s ease-in-out 1.3s infinite;z-index:3}
  .show-v3{width:min(25vw,120px);left:75%;top:47%;right:auto;bottom:auto;transform:translate(-50%,-50%) rotate(-11deg);animation:vIn .8s ease .36s both,m3 8s ease-in-out 1.2s infinite;z-index:2}
  .show-v5{display:block;width:min(28vw,135px);left:20%;top:56%;right:auto;bottom:auto;transform:translate(-50%,-50%) rotate(-6deg);animation:vIn .8s ease .6s both,m5 7.4s ease-in-out 1.4s infinite;z-index:1}
  .show-v1,.show-v2,.show-v3,.show-v4,.show-v5,.show-glow{display:none !important}
  .ql-clusters{display:block;position:absolute;inset:0;overflow:hidden;z-index:1}
  .ql-clusters-track{display:flex;height:100%;width:max-content;animation:ql-cluster-scroll 32s linear infinite;will-change:transform}
  .ql-slide{position:relative;flex:0 0 100vw;height:100%}
  .ql-slide .ql-cv{position:absolute;filter:drop-shadow(0 18px 20px rgba(20,60,120,.24))}
  .ql-slide .p1{width:min(42vw,200px);left:37%;top:44%;transform:translate(-50%,-50%) rotate(-8deg);z-index:3}
  .ql-slide .p2{width:min(24vw,115px);left:58%;top:29%;transform:translate(-50%,-50%) rotate(9deg);z-index:2}
  .ql-slide .p3{width:min(23vw,110px);left:57%;top:62%;transform:translate(-50%,-50%) rotate(12deg);z-index:3}
  .ql-slide .p4{width:min(25vw,120px);left:75%;top:47%;transform:translate(-50%,-50%) rotate(-11deg);z-index:2}
  .ql-slide .p5{width:min(28vw,135px);left:20%;top:56%;transform:translate(-50%,-50%) rotate(-6deg);z-index:1}
  .c-show .show-tag{z-index:4}
  @keyframes m1{0%,100%{transform:translate(-50%,-50%) rotate(-8deg)}50%{transform:translate(-50%,calc(-50% - 10px)) rotate(-8deg)}}
  @keyframes m2{0%,100%{transform:translate(-50%,-50%) rotate(9deg)}50%{transform:translate(-50%,calc(-50% - 10px)) rotate(9deg)}}
  @keyframes m3{0%,100%{transform:translate(-50%,-50%) rotate(-11deg)}50%{transform:translate(-50%,calc(-50% - 10px)) rotate(-11deg)}}
  @keyframes m4{0%,100%{transform:translate(-50%,-50%) rotate(12deg)}50%{transform:translate(-50%,calc(-50% - 10px)) rotate(12deg)}}
  @keyframes m5{0%,100%{transform:translate(-50%,-50%) rotate(-6deg)}50%{transform:translate(-50%,calc(-50% - 10px)) rotate(-6deg)}}
  .c-hero{order:2;text-align:left;position:relative;z-index:2;margin-top:-26px;border-radius:26px 26px 0 0;padding-top:34px}.c-guar{order:3}.c-pair{display:none}
  .c-hero .sale-badge{align-self:flex-start}}
@keyframes floatm{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-14px) rotate(-4deg)}}

/* feature cards */
.ql-feat{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ql-feat .f{background:linear-gradient(160deg,var(--ice),#fff);border:1px solid var(--line);border-radius:18px;padding:28px;text-align:center}
.ql-feat .f .ic{width:54px;height:54px;border-radius:14px;margin:0 auto 16px;display:grid;place-items:center;background:#fff;border:1px solid var(--line)}
.ql-feat .f .ic svg{width:26px;height:26px;stroke:var(--blue)}
.ql-feat .f h3{font-family:var(--display);font-weight:600;font-size:17px;margin-bottom:8px}
.ql-feat .f p{font-size:14px;color:var(--ink-soft);margin:0}
@media(max-width:820px){.ql-feat{grid-template-columns:1fr}}

/* why band */
.ql-why{background:linear-gradient(150deg,var(--peri),var(--cyan));border-radius:26px;padding:clamp(30px,5vw,60px);display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.ql-why .pts{display:flex;flex-direction:column;gap:14px;margin-top:22px}
.ql-why .pt{display:flex;gap:13px;align-items:flex-start}
.ql-why .pt .dot{flex:0 0 auto;width:26px;height:26px;border-radius:8px;background:#fff;display:grid;place-items:center}
.ql-why .pt .dot svg{width:15px;height:15px;stroke:var(--blue)}
.ql-why .pt h4{font-family:var(--display);font-weight:600;font-size:15.5px}
.ql-why .pt p{font-size:13.5px;color:var(--ink-soft);margin:0}
.ql-why .art{aspect-ratio:1/1;border-radius:20px;background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.9),transparent 70%);position:relative;overflow:hidden}
.ql-why .art img{position:absolute;top:50%;filter:drop-shadow(0 22px 24px rgba(20,60,120,.25));animation:fa 6.5s ease-in-out infinite}
.ql-why .art .art-mt2{width:54%;left:63%;transform:translate(-50%,-52%) rotate(9deg);z-index:2;animation:artmt2 6.5s ease-in-out infinite}
.ql-why .art .art-box{width:52%;left:35%;top:48%;transform:translate(-50%,-50%) rotate(-13deg);z-index:1;animation:artbox 7s ease-in-out infinite .5s}
@keyframes artmt2{0%,100%{transform:translate(-50%,-52%) rotate(9deg)}50%{transform:translate(-50%,-58%) rotate(9deg)}}
@keyframes artbox{0%,100%{transform:translate(-50%,-50%) rotate(-13deg)}50%{transform:translate(-50%,-55%) rotate(-13deg)}}
@media(max-width:820px){.ql-why{grid-template-columns:1fr}.ql-why .art{display:none}}

/* faq */
.ql-faq{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.ql-q{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff}
.ql-q button{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-family:var(--display);font-weight:600;font-size:15.5px;cursor:pointer;background:none;border:none;color:var(--ink)}
.ql-q .qa{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--ink-soft);font-size:14.5px}
.ql-q .qa p{padding:0 22px 20px;margin:0}
.ql-q.open .qa{max-height:600px}
.ql-q .pl{flex:0 0 auto;width:24px;height:24px;border-radius:7px;background:var(--ice);display:grid;place-items:center;color:var(--blue);font-size:18px;transition:transform .3s}
.ql-q.open .pl{transform:rotate(45deg)}

/* footer */
/* ===== Bottom CTA + newsletter band ===== */
.ql-cta{position:relative;background:linear-gradient(115deg,var(--ice) 0%,var(--sky) 48%,var(--peri) 100%);padding:clamp(56px,8vw,104px) 0 clamp(42px,5vw,64px);margin-top:clamp(40px,6vw,80px)}
.ql-cta .wrap{position:relative;z-index:2}
.ql-cta-v{position:absolute;z-index:1;pointer-events:none;filter:drop-shadow(0 24px 40px rgba(13,42,99,.28))}
.ql-cta-v img{display:block;width:100%;height:auto}
.ql-cta-v.v1{width:clamp(110px,14vw,190px);top:-26px;left:clamp(8px,4vw,70px);transform:rotate(-14deg);animation:floatc1 7s ease-in-out infinite}
.ql-cta-v.v2{width:clamp(120px,15vw,210px);bottom:60px;right:clamp(8px,4vw,70px);transform:rotate(10deg);animation:floatc2 7.6s ease-in-out infinite}
@keyframes floatc1{0%,100%{transform:translateY(0) rotate(-14deg)}50%{transform:translateY(-16px) rotate(-11deg)}}
@keyframes floatc2{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-18px) rotate(13deg)}}
.ql-cta-inner{text-align:center;max-width:680px;margin:0 auto;padding:0 10px}
.ql-cta-inner .ql-h2{color:var(--ink);font-size:clamp(24px,3.4vw,40px);line-height:1.14;margin:0 auto 26px}
.ql-cta-inner .ql-btn{margin:0 auto}
.ql-news{position:relative;z-index:3;max-width:1080px;margin:clamp(40px,6vw,72px) auto 0;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 60px -28px rgba(13,42,99,.42);padding:clamp(22px,3vw,34px) clamp(22px,3.4vw,42px);display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.ql-news-text h3{font-family:var(--display);font-weight:700;font-size:clamp(18px,2.2vw,23px);color:var(--ink);margin:0 0 8px}
.ql-news-text p{font-size:14px;line-height:1.55;color:var(--ink-soft);margin:0 0 8px;max-width:440px}
.ql-news-text .fine{font-size:12px;color:var(--ink-soft);opacity:.85}
.ql-news-form{display:flex;align-items:center;background:var(--ice);border:1px solid var(--line);border-radius:100px;padding:5px 5px 5px 8px;min-width:308px}
.ql-news-form input{flex:1;min-width:0;border:none;background:transparent;outline:none;font-family:var(--body);font-size:14px;color:var(--ink);padding:10px 12px}
.ql-news-btn{flex-shrink:0;font-family:var(--display);font-weight:600;font-size:14px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-deep));border:none;border-radius:100px;padding:11px 22px;cursor:pointer;transition:transform .2s}
.ql-news-btn:hover{transform:translateY(-1px)}
.ql-news-form.is-done{justify-content:center;color:var(--blue-deep);font-family:var(--display);font-weight:600;font-size:14.5px;padding:14px}
@media(max-width:760px){
  .ql-cta{padding-top:clamp(40px,9vw,64px)}
  .ql-cta-v.v1{width:78px;top:-12px;left:4px}
  .ql-cta-v.v2{width:86px;bottom:auto;top:34px;right:4px}
  .ql-cta-inner{padding:0 56px}
  .ql-news{flex-direction:column;align-items:stretch;text-align:left;margin-bottom:0}
  .ql-news-form{width:100%;min-width:0}
}
.ql-footer{background:var(--ink);color:#a9bbd6;padding:clamp(48px,5vw,70px) 0 30px;margin-top:0}
.ql-fcols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px}
.ql-footer .ql-brand{color:#fff;margin-bottom:14px}
.ql-footer p{font-size:13.5px;line-height:1.6;max-width:320px}
.ql-footer h5{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#7c8eaf;margin-bottom:14px}
.ql-footer ul{list-style:none;display:flex;flex-direction:column;gap:9px;margin:0;padding:0}
.ql-footer ul a{font-size:14px;color:#a9bbd6;transition:color .18s}
.ql-footer ul a:hover{color:#fff}
.ql-disc{border-top:1px solid #1d2c45;margin-top:38px;padding-top:24px;font-size:11.5px;line-height:1.7;color:#6f82a3}
.ql-copybar{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:20px;font-size:12.5px;color:#6f82a3}
@media(max-width:820px){.ql-fcols{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ql-fcols{grid-template-columns:1fr}}

/* age gate */
.ql-gate{position:fixed;inset:0;z-index:200;background:linear-gradient(160deg,#f5f8fc,#e9eef6);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px;overflow:hidden}
html.ql-verified .ql-gate{display:none}
.ql-gate-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.ql-gate-bg .gv{position:absolute;width:150px;filter:drop-shadow(0 22px 26px rgba(20,60,120,.18));opacity:.9}
.ql-gate-bg .gv1{top:6%;left:4%;transform:rotate(-12deg);width:180px}
.ql-gate-bg .gv2{top:10%;right:8%;transform:rotate(10deg);width:120px}
.ql-gate-bg .gv3{bottom:8%;left:9%;transform:rotate(8deg);width:140px}
.ql-gate-bg .gv4{bottom:6%;right:6%;transform:rotate(-9deg);width:150px}
.ql-gate-bg .gv5{top:44%;left:-2%;transform:rotate(14deg);width:120px;opacity:.7}
.ql-gate-card{position:relative;z-index:2;background:#fff;border-radius:26px;max-width:560px;width:100%;padding:44px 44px 36px;text-align:left;box-shadow:0 50px 90px -40px rgba(15,35,80,.4)}
.ql-gate-card h2{font-family:var(--display);font-weight:700;font-size:30px;letter-spacing:-.02em;margin-bottom:14px}
.ql-gate-card p{font-size:15.5px;line-height:1.55;color:var(--ink-soft);margin-bottom:26px}
.ql-gate-check{display:flex;gap:15px;align-items:flex-start;border:1px solid var(--line);border-radius:15px;padding:17px 20px;margin-bottom:14px;cursor:pointer;transition:border-color .15s,background .15s}
.ql-gate-check:hover{border-color:#c3d0e6}
.ql-gate-check.checked{border-color:var(--blue);background:rgba(37,99,235,.045)}
.ql-gate-check input{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:24px;height:24px;margin:0;border:2px solid #c3d0e6;border-radius:7px;background:#fff;cursor:pointer;position:relative;transition:.15s}
.ql-gate-check input:checked{background:var(--blue);border-color:var(--blue)}
.ql-gate-check input:checked::after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.ql-gate-check span{font-size:15px;line-height:1.5;color:var(--ink)}
#ql-gate-enter{width:100%;justify-content:center;margin-top:10px;font-size:16px;padding:16px}
#ql-gate-enter:disabled{background:#c3d0ea;color:#fff;cursor:not-allowed;box-shadow:none;transform:none}
.ql-gate-card .fine{font-size:12.5px;line-height:1.55;color:#9aa7bd;margin-top:22px;margin-bottom:0}
.ql-gate-exit{position:relative;z-index:2;font-size:14.5px;color:var(--ink-soft);text-decoration:none}
.ql-gate-exit strong{color:var(--ink);font-weight:700}
.ql-gate-exit:hover strong{text-decoration:underline}
@media(max-width:680px){
	.ql-gate-card{padding:32px 26px 28px}
	.ql-gate-card h2{font-size:25px}
	.ql-gate-bg .gv2,.ql-gate-bg .gv5{display:none}
	.ql-gate-bg .gv1{width:120px;opacity:.55}
	.ql-gate-bg .gv3{width:100px;opacity:.55}
	.ql-gate-bg .gv4{width:110px;opacity:.55}
}

/* generic page */
.ql-page{max-width:820px;margin:0 auto;padding:clamp(40px,5vw,70px) 0}
.ql-page h1{font-family:var(--display);font-weight:700;letter-spacing:-.02em;margin-bottom:18px}
.ql-page p{color:#33405a;margin:0 0 16px}

/* ===== COA template ===== */
.coa-search{display:flex;gap:12px;max-width:520px;margin:0 auto 32px}
.coa-search input{flex:1;padding:14px 18px;border:1px solid var(--line);border-radius:12px;font-family:var(--body);font-size:15px;outline:none}
.coa-search input:focus{border-color:var(--blue)}
.coa-list{display:flex;flex-direction:column;gap:10px;max-width:820px;margin:0 auto}
.coa-item{display:flex;align-items:center;gap:16px;padding:16px 20px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:border-color .18s,box-shadow .18s}
.coa-item:hover{border-color:#cfe0fb;box-shadow:0 12px 26px -18px rgba(11,23,41,.3)}
.coa-item .vic{width:42px;height:42px;border-radius:11px;background:var(--ice);display:grid;place-items:center;flex:0 0 auto}
.coa-item .vic svg{width:21px;height:21px;stroke:var(--blue)}
.coa-item .meta{flex:1}
.coa-item .meta h4{font-family:var(--display);font-weight:600;font-size:15.5px}
.coa-item .meta span{font-size:13px;color:var(--ink-soft)}
.coa-item .lot{font-family:var(--display);font-size:12.5px;color:var(--ink-soft);background:var(--ice);padding:5px 11px;border-radius:8px}
.coa-item .view{font-family:var(--display);font-weight:600;font-size:13.5px;color:var(--blue);border:1px solid #d6e4fb;padding:9px 16px;border-radius:10px;transition:background .18s,color .18s;white-space:nowrap}
.coa-item .view:hover{background:var(--blue);color:#fff}
@media(max-width:640px){.coa-item .lot{display:none}}

/* ===== Affiliate template ===== */
.aff-hero{background:linear-gradient(150deg,var(--peri),var(--sky) 60%,var(--cyan));border-radius:26px;padding:clamp(34px,5vw,64px);text-align:center}
.aff-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:760px;margin:30px auto 0}
.aff-stat{background:rgba(255,255,255,.7);backdrop-filter:blur(4px);border-radius:16px;padding:22px}
.aff-stat .num{font-family:var(--display);font-weight:700;font-size:34px;color:var(--blue);letter-spacing:-.02em}
.aff-stat .lab{font-size:13px;color:var(--ink-soft);margin-top:4px}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.tier{border:1px solid var(--line);border-radius:20px;padding:30px;background:#fff;position:relative}
.tier.feature{border-color:var(--blue);box-shadow:0 22px 44px -26px rgba(37,99,235,.5)}
.tier .badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--blue);color:#fff;font-family:var(--display);font-weight:600;font-size:12px;padding:5px 14px;border-radius:100px}
.tier h3{font-family:var(--display);font-weight:600;font-size:19px;margin-bottom:6px}
.tier .rate{font-family:var(--display);font-weight:700;font-size:40px;color:var(--blue);letter-spacing:-.02em;margin:8px 0}
.tier .rate small{font-size:15px;color:var(--ink-soft);font-weight:500}
.tier ul{list-style:none;margin:18px 0;padding:0;display:flex;flex-direction:column;gap:11px}
.tier li{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--ink-soft)}
.tier li svg{width:17px;height:17px;stroke:var(--accent);flex:0 0 auto}
@media(max-width:820px){.aff-stats,.tiers{grid-template-columns:1fr}}

/* =========================================================
   WooCommerce overrides — make the native shop match the theme
   ========================================================= */
.woocommerce .wrap, .woocommerce-page .wrap{padding-top:clamp(30px,4vw,56px)}
.ql-main{max-width:1240px;margin:0 auto;padding:clamp(30px,4vw,56px) clamp(18px,4vw,56px) clamp(40px,6vw,80px)}
.woocommerce-products-header__title.page-title,.woocommerce h1{font-family:var(--display);font-weight:700;letter-spacing:-.02em}
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(218px,1fr));gap:20px;margin:0 0 30px;padding:0}
@media(max-width:680px){
  .home .ql-section ul.products{display:flex !important;flex-wrap:nowrap;overflow-x:auto;gap:14px;padding:4px 18px 16px;margin:0 -18px 24px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .home .ql-section ul.products::-webkit-scrollbar{display:none}
  .home .ql-section ul.products li.product{flex:0 0 76%;max-width:300px;scroll-snap-align:center}
  body:not(.home) .woocommerce ul.products,
  body:not(.home) ul.products{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;margin:0 0 24px !important}
  body:not(.home) .woocommerce ul.products li.product,
  body:not(.home) ul.products li.product{width:auto !important;min-width:0 !important;float:none !important;margin:0 !important;clear:none !important}
  body:not(.home) .woocommerce ul.products li.product a img{padding:8px}
  body:not(.home) .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13.5px;padding:11px 12px 3px}
  body:not(.home) .woocommerce ul.products li.product .price{padding:0 12px;font-size:15.5px}
  body:not(.home) .woocommerce ul.products li.product .price del{font-size:12.5px}
  body:not(.home) .woocommerce ul.products li.product .button{width:calc(100% - 24px);font-size:13px;padding:11px 10px}
  body:not(.home) .woocommerce ul.products li.product span.onsale{top:12px;right:10px;font-size:11px;padding:5px 10px}
}
.woocommerce ul.products li.product{width:auto !important;margin:0 !important;float:none !important;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;padding:0;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;flex-direction:column}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(11,23,41,.32);border-color:#cfe0fb}
.woocommerce ul.products li.product a img{margin:0;border-radius:0;background:linear-gradient(150deg,var(--peri),var(--cyan));padding:22px;transition:transform .3s}
.woocommerce ul.products li.product:hover a img{transform:translateY(-4px)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--display);font-weight:600;font-size:15.5px;letter-spacing:-.01em;color:var(--ink);padding:14px 18px 4px}
.woocommerce ul.products li.product .price{display:block;padding:0 18px;font-family:var(--display);font-weight:700;font-size:18px;color:var(--ink)}
.woocommerce ul.products li.product .price del{color:#9aa7bd;font-weight:500;font-size:14px;margin-right:6px}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--ink)}
.woocommerce span.onsale{background:var(--blue);color:#fff;font-family:var(--display);font-weight:700;font-size:11.5px;border-radius:100px;min-height:auto;min-width:auto;padding:5px 11px;margin:0}
.woocommerce ul.products li.product{position:relative}
.woocommerce ul.products li.product span.onsale{position:absolute;top:18px;right:16px;left:auto;bottom:auto;margin:0;z-index:3}
.woocommerce ul.products li.product .button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{
  font-family:var(--display);font-weight:600;font-size:14px;background:var(--ice);color:var(--blue);border:1px solid #d6e4fb;border-radius:11px;padding:11px 18px;margin:12px 18px 18px;text-transform:none;transition:background .18s,color .18s;display:inline-block}
.woocommerce ul.products li.product .button{width:calc(100% - 36px);text-align:center;margin-top:auto}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce ul.products li.product .button:hover,
.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--blue);color:#fff}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{margin-bottom:18px}
/* single product */
.woocommerce div.product .product_title{font-family:var(--display);font-weight:700;letter-spacing:-.02em}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-family:var(--display);font-weight:700}
.woocommerce div.product form.cart .button{background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;border:none}
.woocommerce .quantity input{border:1px solid var(--line);border-radius:10px}
.woocommerce-tabs ul.tabs li.active{border-color:var(--line)}

/* ===== Single product page (modern PDP) ===== */
.woocommerce .woocommerce-breadcrumb{max-width:1240px;margin:0 auto 22px;padding:0;font-size:13px;color:var(--ink-soft)}
.woocommerce .woocommerce-breadcrumb a{color:var(--blue)}
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,52px);max-width:1240px;margin:0 auto;padding:clamp(10px,2vw,28px) 0}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none !important;width:auto !important;margin:0}
.woocommerce div.product div.images .woocommerce-product-gallery{background:linear-gradient(160deg,var(--ice),#f7faff);border:1px solid var(--line);border-radius:24px;padding:clamp(22px,4vw,52px);position:relative}
.woocommerce div.product div.images img{border-radius:14px}
.woocommerce div.product .woocommerce-product-gallery__trigger{top:18px;right:18px}
.woocommerce div.product .flex-control-thumbs{margin-top:14px;display:flex;gap:10px}
.woocommerce div.product .flex-control-thumbs li{width:64px !important;float:none}
.woocommerce div.product .flex-control-thumbs img{border:1px solid var(--line);border-radius:10px}
.woocommerce div.product .summary>.ql-eyebrow{margin-bottom:4px}
.woocommerce div.product .product_title{font-size:clamp(28px,3vw,42px);line-height:1.05;margin:6px 0 12px}
.woocommerce div.product p.price,.woocommerce div.product .single_variation .price{font-size:26px;margin-bottom:22px}
.woocommerce div.product p.price del{color:#9aa7bd;font-weight:500;font-size:18px;margin-right:8px}
.woocommerce div.product p.price ins{text-decoration:none;color:var(--ink)}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--ink-soft);font-size:15px;margin-bottom:22px}

/* variation rows + pills */
.woocommerce div.product form.cart .variations{margin:0 0 16px;border:0}
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{padding:4px 0;border:0;display:block;text-align:left}
.woocommerce div.product form.cart .variations label{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 8px}
.woocommerce div.product form.cart .variations select{min-width:220px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;font-family:var(--body);font-size:15px;background:#fff}
.woocommerce div.product form.cart .reset_variations{display:none!important}
.ql-pills{display:flex;gap:10px;flex-wrap:wrap}
.ql-pill{font-family:var(--display);font-weight:600;font-size:14px;padding:11px 22px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer;transition:border-color .16s,background .16s,color .16s}
.ql-pill:hover{border-color:var(--blue)}
.ql-pill.on{background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;border-color:var(--blue-deep)}

/* qty + add to cart */
.woocommerce div.product .woocommerce-variation-add-to-cart,
.woocommerce div.product form.cart:not(.variations_form){display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.woocommerce div.product form.cart div.quantity{margin:0;float:none}
.woocommerce .quantity input.qty{width:78px;height:54px;border:1.5px solid var(--line);border-radius:12px;text-align:center;font-family:var(--display);font-weight:600;font-size:16px}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;min-width:200px;height:54px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--blue),var(--blue-deep)) !important;color:#fff !important;border:none;border-radius:100px;font-family:var(--display);font-weight:600;font-size:16px;text-transform:none;box-shadow:0 12px 26px -12px rgba(37,99,235,.5);transition:transform .18s,background .18s}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{transform:translateY(-2px);background:linear-gradient(135deg,var(--blue-deep),#163a86) !important}
.woocommerce div.product .single_variation_wrap{margin-top:4px}

/* CoA secondary button */
.ql-coa-btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:14px;padding:15px;border:1.5px solid var(--line);border-radius:100px;font-family:var(--display);font-weight:600;font-size:15px;color:var(--ink);background:#fff;transition:border-color .18s,color .18s}
.ql-coa-btn:hover{border-color:var(--blue);color:var(--blue)}
.ql-coa-btn svg{stroke:currentColor}

/* trust + payments */
.ql-prod-trust{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px;padding:16px 18px;background:var(--ice);border:1px solid var(--line);border-radius:16px}
.ql-prod-trust .t{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--ink-soft);flex:1;min-width:160px}
.ql-prod-trust .t svg{width:20px;height:20px;stroke:var(--blue);flex:0 0 auto}
.ql-prod-pay{display:flex;align-items:center;gap:12px;margin-top:18px;font-size:13px;color:var(--ink-soft);flex-wrap:wrap}
.ql-prod-pay .marks{display:flex;gap:8px;flex-wrap:wrap}
.ql-prod-pay .mark{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.03em;color:#5b6b85;border:1px solid var(--line);border-radius:6px;padding:5px 9px;background:#fff}
.woocommerce div.product .product_meta{margin-top:20px;font-size:13px;color:var(--ink-soft)}
.woocommerce div.product .product_meta a{color:var(--blue)}

/* tabs + related below, full width */
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1 / -1}
.woocommerce .related>h2,.woocommerce .upsells>h2{font-family:var(--display);font-weight:700;letter-spacing:-.02em;margin-bottom:20px}
@media(max-width:880px){.woocommerce div.product{grid-template-columns:1fr;gap:24px}}
/* cart & checkout buttons */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order{background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;font-family:var(--display);font-weight:600;border:none;border-radius:100px}
.woocommerce-checkout #place_order,
.woocommerce form.checkout #place_order,
form.woocommerce-checkout button[type="submit"],
.wc-block-components-checkout-place-order-button,
button.wc-block-components-checkout-place-order-button,
#payment #place_order,
.woocommerce #place_order{background:linear-gradient(135deg,var(--blue),var(--blue-deep)) !important;color:#fff !important;font-family:var(--display);font-weight:600;border:none !important;border-radius:100px !important;padding:16px 28px !important;box-shadow:0 8px 22px rgba(37,99,235,.28);transition:filter .15s ease,transform .15s ease}
.woocommerce-checkout #place_order:hover,
.wc-block-components-checkout-place-order-button:hover,
.woocommerce #place_order:hover{filter:brightness(1.06);transform:translateY(-1px)}
.woocommerce table.shop_table{border-radius:14px;border-color:var(--line)}
.woocommerce-message,.woocommerce-info{border-top-color:var(--blue)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--blue)}

@media(prefers-reduced-motion:reduce){.vial,.ql-why .art img{animation:none!important}.ql-ticker .run{animation:none}.ql-clusters-track{animation:none!important}}

/* =========================================================
   Single product — premium layout
   ========================================================= */
.single-product .ql-main{max-width:1180px}
.ql-research-banner{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#111418;color:#c9ced8;font-family:var(--display);font-weight:500;font-size:12.5px;line-height:1.5;text-align:center;padding:11px 20px;border-top:2px solid #e0a417;border-bottom:1px solid rgba(255,255,255,.06);border-radius:0}
.ql-research-banner .ql-rb-ico{color:#f0b429}
.ql-research-banner .ql-rb-warn{color:#ff5b52;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ql-research-banner .ql-rb-dash{color:#7b8494;margin:0 2px}
@media(max-width:600px){.ql-research-banner{font-size:11px;padding:9px 14px}}

.woocommerce div.product{position:relative}
.woocommerce div.product .woocommerce-product-gallery{background:linear-gradient(160deg,var(--ice),#fff);border:1px solid var(--line);border-radius:24px;padding:32px;box-sizing:border-box}
.woocommerce div.product .woocommerce-product-gallery__image img{border-radius:14px}
.woocommerce div.product .summary{padding-left:8px}
.woocommerce div.product .product_title{font-family:var(--display);font-weight:700;font-size:clamp(28px,3vw,40px);letter-spacing:-.025em;line-height:1.05;margin:4px 0 12px}
.woocommerce div.product p.price,.woocommerce div.product .summary>.price{font-family:var(--display);font-weight:700;font-size:26px;color:var(--ink);margin:0 0 20px}
.woocommerce div.product p.price del,.woocommerce div.product .price del{color:#9aa7bd;font-weight:500;font-size:18px;opacity:1}
.woocommerce div.product p.price ins,.woocommerce div.product .price ins{text-decoration:none;color:var(--ink)}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--ink-soft);font-size:15px;line-height:1.6;margin-bottom:22px}

.woocommerce div.product form.cart .variations{margin-bottom:18px;border-collapse:collapse}
.woocommerce div.product form.cart .variations th.label{font-family:var(--display);font-weight:600;font-size:14px;color:var(--ink);padding:10px 14px 10px 0;vertical-align:middle;text-align:left}
.woocommerce div.product form.cart .variations td.value{padding:2px 0}
.woocommerce div.product form.cart .variations select{font-family:var(--body);font-size:15px;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;min-width:240px;cursor:pointer}
.woocommerce div.product form.cart .variations td.value .reset_variations,
.woocommerce div.product form.cart a.reset_variations{display:none!important}

.woocommerce div.product div.quantity{float:none;display:inline-flex;margin:0 0 14px}
.woocommerce .quantity .qty{height:50px;width:84px;border:1px solid var(--line);border-radius:12px;font-family:var(--display);font-weight:600;font-size:16px;text-align:center;color:var(--ink)}
.woocommerce div.product form.cart .single_add_to_cart_button{display:block;width:100%;clear:both;float:none;text-align:center;background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;border:none;font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:.01em;border-radius:100px;padding:17px 28px;margin:0;cursor:pointer;box-shadow:0 16px 32px -14px rgba(11,23,41,.65);transition:background .2s,transform .2s}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:linear-gradient(135deg,var(--blue),var(--blue-deep));transform:translateY(-2px);color:#fff}
.woocommerce div.product form.cart .single_add_to_cart_button.disabled,.woocommerce div.product form.cart .single_add_to_cart_button[disabled]{opacity:.4;box-shadow:none;cursor:not-allowed}
.woocommerce div.product .woocommerce-variation-add-to-cart{margin-top:6px}
.woocommerce div.product .woocommerce-variation-price{margin-bottom:12px;font-family:var(--display);font-weight:700;font-size:22px;color:var(--ink)}

.ql-coa-btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;font-family:var(--display);font-weight:600;font-size:15px;color:var(--ink);border:1px solid var(--line);border-radius:100px;padding:15px 24px;margin-top:12px;background:#fff;transition:border-color .18s,color .18s}
.ql-coa-btn:hover{border-color:var(--blue);color:var(--blue)}
.ql-coa-btn svg{width:18px;height:18px;stroke:currentColor}

.woocommerce div.product .product_meta{font-size:13px;color:var(--ink-soft);margin-top:22px;border-top:1px solid var(--line);padding-top:18px}
.woocommerce div.product .product_meta>span{display:block;margin-bottom:4px}
.woocommerce div.product .product_meta a{color:var(--blue)}

.ql-trust{display:flex;gap:10px;background:var(--ice);border:1px solid var(--line);border-radius:16px;padding:16px 14px;margin-top:22px}
.ql-trust .t{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px}
.ql-trust .t svg{width:22px;height:22px;stroke:var(--blue);fill:none}
.ql-trust .t span{font-family:var(--display);font-weight:500;font-size:11.5px;color:var(--ink-soft);line-height:1.3}
.ql-pay{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}
.ql-pay .lab{font-size:12.5px;color:var(--ink-soft);margin-right:2px}
.ql-pay .pill{font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.04em;color:#3a4762;background:#fff;border:1px solid var(--line);border-radius:7px;padding:6px 9px}

.woocommerce div.product .woocommerce-tabs{clear:both;padding-top:20px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0;margin-left:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:10px 10px 0 0;border-color:var(--line);background:var(--ice)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#fff;border-bottom-color:#fff}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-family:var(--display);font-weight:600;color:var(--ink)}
.woocommerce .related.products>h2,.woocommerce .upsells>h2{font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:24px;margin-top:30px}

@media(max-width:880px){
  .woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product .summary{width:100% !important;float:none !important}
  .woocommerce div.product .summary{padding-left:0;margin-top:24px}
  .ql-trust{flex-wrap:wrap}
}

/* =========================================================
   Shop archive header (search + category chips + sort)
   ========================================================= */
.woocommerce .ql-main, .woocommerce-page .ql-main{max-width:1240px}
.woocommerce-products-header{margin-bottom:6px}
.woocommerce-products-header__title{font-family:var(--display);font-weight:700;letter-spacing:-.025em;font-size:clamp(30px,3.4vw,44px)}
.ql-shop-head{margin:4px 0 26px}
.ql-shop-sub{color:var(--ink-soft);font-size:15.5px;max-width:560px;margin:0 0 22px}
.ql-shop-search{max-width:560px;margin-bottom:18px}
.ql-shop-search form{position:relative}
.ql-shop-search input[type="search"],.ql-shop-search input.search-field{width:100%;padding:14px 18px;border:1px solid var(--line);border-radius:100px;font-family:var(--body);font-size:15px;background:var(--ice);outline:none}
.ql-shop-search input:focus{border-color:var(--blue);background:#fff}
.ql-shop-search button[type="submit"]{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:var(--blue);color:#fff;border:none;border-radius:100px;padding:9px 18px;font-family:var(--display);font-weight:600;font-size:14px;cursor:pointer}
.ql-chips{display:flex;flex-wrap:wrap;gap:10px}
.ql-chip{font-family:var(--display);font-weight:600;font-size:13.5px;color:var(--ink-soft);background:#fff;border:1px solid var(--line);border-radius:100px;padding:10px 18px;transition:all .18s}
.ql-chip:hover{border-color:var(--blue);color:var(--blue)}
.ql-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.woocommerce .woocommerce-ordering{float:right;margin-bottom:20px}
.woocommerce .woocommerce-ordering select{font-family:var(--body);font-size:14px;padding:11px 16px;border:1px solid var(--line);border-radius:100px;background:#fff;cursor:pointer}
.woocommerce .woocommerce-result-count{color:var(--ink-soft);font-size:13.5px;margin-bottom:20px;padding-top:8px}

/* bigger, richer product cards */
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px;margin:0 0 40px;padding:0;clear:both}
.woocommerce ul.products li.product a img{aspect-ratio:1/1;object-fit:contain;background:linear-gradient(150deg,var(--peri),var(--cyan));padding:26px;margin:0;border-radius:0}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:16px 18px 4px;min-height:0}
.woocommerce ul.products li.product .price{padding:0 18px 2px}
.woocommerce ul.products li.product .button{margin:14px 18px 18px;width:calc(100% - 36px);text-align:center;background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;border:none;border-radius:100px;font-weight:700;padding:13px}
.woocommerce ul.products li.product .button:hover{background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff}

/* =========================================================
   Cart page
   ========================================================= */
.woocommerce-cart .ql-main h1,.woocommerce-cart-form+*  h2{font-family:var(--display);font-weight:700;letter-spacing:-.02em}
.woocommerce-cart table.shop_table{border:1px solid var(--line);border-radius:18px;overflow:hidden;border-collapse:separate;border-spacing:0}
.woocommerce-cart table.shop_table th{font-family:var(--display);font-weight:600;color:var(--ink);font-size:13px;letter-spacing:.04em;text-transform:uppercase;background:var(--ice)}
.woocommerce-cart table.shop_table td{padding:18px 16px;vertical-align:middle}
.woocommerce-cart .product-thumbnail img{width:64px;border-radius:12px;background:var(--ice)}
.woocommerce a.remove{color:var(--sale) !important;font-weight:400}
.woocommerce-cart .cart_totals h2{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px}
.woocommerce-cart .cart_totals table.shop_table{border-radius:18px}
.woocommerce-cart .cart-collaterals .cart_totals{background:var(--ice);border:1px solid var(--line);border-radius:20px;padding:26px}
.woocommerce-cart .cart_totals .order-total .amount{font-family:var(--display);font-weight:700;font-size:22px;color:var(--ink)}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:block;width:100%;text-align:center;background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;font-family:var(--display);font-weight:700;font-size:16px;border-radius:100px;padding:16px;box-shadow:0 14px 30px -12px rgba(11,23,41,.6)}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:linear-gradient(135deg,var(--blue),var(--blue-deep))}
.woocommerce-cart .quantity input.qty{border:1px solid var(--line);border-radius:10px}
.woocommerce-cart .actions .button{background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;border:none;border-radius:100px}

/* payment image on product page */
.ql-pay-img{max-width:min(100%,300px)!important;width:auto!important;height:auto!important;display:block;margin:16px auto 0}

/* =========================================================
   Affiliate program page
   ========================================================= */
.ql-aff-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;margin-bottom:clamp(50px,7vw,90px)}
.ql-aff-hero h1{font-family:var(--display);font-weight:700;font-size:clamp(40px,5vw,66px);line-height:1;letter-spacing:-.03em;margin:16px 0 18px}
.ql-aff-hero .lead{color:var(--ink-soft);font-size:17px;line-height:1.6;max-width:440px;margin-bottom:28px}
.ql-aff-hero .lead strong{color:var(--ink)}
.ql-aff-stats{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px;max-width:420px;margin-bottom:30px}
.ql-aff-stats .num{font-family:var(--display);font-weight:700;font-size:30px;letter-spacing:-.02em;color:var(--ink)}
.ql-aff-stats .lab{font-size:13.5px;color:var(--ink-soft);margin-top:2px}
.ql-aff-art{position:relative;aspect-ratio:1/1;border-radius:28px;background:linear-gradient(150deg,var(--peri),var(--sky) 55%,var(--cyan));overflow:hidden}
.ql-aff-art .v{position:absolute;filter:drop-shadow(0 22px 24px rgba(20,60,120,.22))}
.ql-aff-art .va{width:30%;top:14%;left:10%;transform:rotate(-10deg);animation:fb 7s ease-in-out infinite}
.ql-aff-art .vb{width:36%;bottom:8%;right:9%;transform:rotate(8deg);animation:fc 6.5s ease-in-out infinite .5s}
.ql-aff-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:18px;padding:22px 24px;box-shadow:0 30px 60px -24px rgba(11,23,41,.4);width:74%;max-width:300px}
.ql-aff-card .t{font-size:12.5px;color:var(--ink-soft)}
.ql-aff-card .big{font-family:var(--display);font-weight:700;font-size:34px;color:var(--ink);letter-spacing:-.02em;margin:2px 0 12px}
.ql-aff-card .r{display:flex;justify-content:space-between;font-size:13px;padding:6px 0;border-top:1px solid var(--line)}
.ql-aff-card .r b{color:var(--blue);font-weight:700}
.ql-aff-card .r .g{color:#16a34a;font-weight:700}
.ql-aff-section{text-align:center;margin-bottom:40px}
.ql-aff-bigstats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:36px 0 48px;text-align:center}
.ql-aff-bigstats .n{font-family:var(--display);font-weight:700;font-size:clamp(34px,4vw,52px);letter-spacing:-.02em;color:var(--ink)}
.ql-aff-bigstats .l{font-family:var(--display);font-weight:600;font-size:15px;margin-top:4px}
.ql-aff-bigstats .s{font-size:13px;color:var(--ink-soft);margin-top:4px}
.ql-aff-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:980px;margin:0 auto;text-align:left}
.ql-aff-cols h4{font-family:var(--display);font-weight:600;font-size:16.5px;margin-bottom:8px}
.ql-aff-cols p{font-size:14px;color:var(--ink-soft);line-height:1.55}
@media(max-width:880px){.ql-aff-hero{grid-template-columns:1fr}.ql-aff-bigstats{grid-template-columns:1fr 1fr}.ql-aff-cols{grid-template-columns:1fr}}

/* Ensure tabs / related / upsells span full width under the 2-col product grid */
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .up-sells,
.woocommerce div.product .upsells{grid-column:1 / -1}

/* Cart free-gift promo bar */
.ql-cart-promo{background:linear-gradient(135deg,var(--peri),var(--cyan));border:1px solid #cfe0fb;border-radius:14px;padding:16px 20px;margin:0 0 26px;font-family:var(--body)}
.ql-cart-promo .msg{font-size:14.5px;color:var(--ink);line-height:1.45}
.ql-cart-promo .msg strong{color:var(--blue-deep);font-weight:700}
.ql-cart-promo .ico{margin-right:6px}
.ql-cart-promo-bar{height:8px;border-radius:100px;background:#fff;margin-top:12px;overflow:hidden}
.ql-cart-promo-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--accent));border-radius:100px;transition:width .4s ease}

/* Block-cart "Proceed to Checkout" button */
.wc-block-cart__submit-button,
a.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block a{
  display:block !important;width:100%;box-sizing:border-box;text-align:center;
  background:linear-gradient(135deg,var(--blue),var(--blue-deep)) !important;color:#fff !important;
  font-family:var(--display);font-weight:700;font-size:16px;border:none !important;
  border-radius:100px !important;padding:16px 24px !important;text-decoration:none !important;
  box-shadow:0 14px 30px -12px rgba(11,23,41,.6);transition:background .2s,transform .2s;cursor:pointer}
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a:hover{background:linear-gradient(135deg,var(--blue),var(--blue-deep)) !important;transform:translateY(-2px)}
.wc-block-cart__submit-button .wc-block-components-button__text,
.wp-block-woocommerce-proceed-to-checkout-block a .wc-block-components-button__text{color:#fff !important}

/* Darker-blue hover for primary buttons (default is now blue) */
.woocommerce ul.products li.product .button:hover,
.woocommerce div.product form.cart .single_add_to_cart_button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a:hover{background:linear-gradient(135deg,var(--blue-deep),#163a86) !important;color:#fff !important}

/* Discount tag next to the product price */
.ql-off-tag{display:inline-block;background:var(--sky);color:var(--blue-deep);font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.03em;padding:6px 12px;border-radius:100px;margin:-10px 0 18px}
/* Sale flash badge sized for "X% OFF" text */
.woocommerce span.onsale{line-height:1.2;white-space:nowrap}

/* ===== Order tracking ===== */
.ql-track{margin:26px 0 30px;padding:22px clamp(18px,3vw,28px);border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff,var(--ice))}
.ql-track-h{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.01em;color:var(--ink);margin:0 0 18px}
.ql-track-steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin-bottom:14px}
.ql-step{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;padding:0 4px}
.ql-step::before,.ql-step::after{content:"";position:absolute;top:16px;height:3px;background:var(--line);z-index:0}
.ql-step::before{left:0;width:50%}
.ql-step::after{right:0;width:50%}
.ql-step:first-child::before{display:none}
.ql-step:last-child::after{display:none}
.ql-step .dot{position:relative;z-index:1;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:14px;background:#fff;border:2px solid var(--line);color:var(--ink-soft)}
.ql-step .lbl{font-family:var(--display);font-weight:600;font-size:12.5px;color:var(--ink-soft);line-height:1.25}
.ql-step.done .dot,.ql-step.current .dot{background:linear-gradient(135deg,var(--blue),var(--blue-deep));border-color:transparent;color:#fff}
.ql-step.current .dot{box-shadow:0 0 0 5px var(--sky)}
.ql-step.done .lbl,.ql-step.current .lbl{color:var(--ink)}
.ql-step.done::before,.ql-step.done::after,.ql-step.current::before{background:var(--blue)}
.ql-track-now{font-family:var(--display);font-weight:600;font-size:15px;color:var(--blue-deep);margin:8px 0 0;text-align:center}
.ql-track-ship{margin-top:18px;display:flex;flex-direction:column;gap:10px}
.ql-ship-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.ql-ship-meta{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.ql-ship-meta .cr{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--ink);padding:3px 8px;border-radius:6px}
.ql-ship-meta .no{font-family:var(--display);font-weight:600;font-size:14px;color:var(--ink)}
.ql-ship-meta .dt{font-size:12.5px;color:var(--ink-soft)}
.ql-track-btn{font-size:13px;padding:9px 16px}
@media(max-width:560px){
  .ql-step .lbl{font-size:11px}
  .ql-step .dot{width:30px;height:30px;font-size:13px}
  .ql-step::before,.ql-step::after{top:14px}
  .ql-ship-row{flex-direction:column;align-items:stretch}
  .ql-track-btn{justify-content:center}
}
.ql-ostat{display:inline-block;font-family:var(--display);font-weight:600;font-size:12.5px;padding:4px 11px;border-radius:100px;border:1px solid transparent}
.ql-st-1{background:var(--ice);color:var(--ink-soft);border-color:var(--line)}
.ql-st-2{background:var(--sky);color:var(--blue-deep)}
.ql-st-3{background:#e3f0ff;color:var(--blue-deep);border-color:#bcd8ff}
.ql-st-4{background:#e7f8ee;color:#177245;border-color:#bfe9cf}

/* ===== My Account ===== */
.ql-acct{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;transition:border-color .18s,transform .18s}
.ql-acct:hover{border-color:var(--blue);transform:translateY(-1px)}
.woocommerce-account.logged-in .woocommerce{display:flex;flex-wrap:wrap;gap:clamp(20px,3vw,40px);align-items:flex-start}
.woocommerce-account .woocommerce-MyAccount-navigation{flex:0 0 230px}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:11px 16px;border-radius:11px;font-family:var(--display);font-weight:600;font-size:14.5px;color:var(--ink-soft);transition:background .15s,color .15s}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--ice);color:var(--ink)}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff}
.woocommerce-account .woocommerce-MyAccount-content{flex:1;min-width:300px}
@media(max-width:760px){.woocommerce-account .woocommerce-MyAccount-navigation{flex:1 1 100%}}
.woocommerce-orders-table,.woocommerce-table--order-details{width:100%;border-collapse:collapse;font-size:14px}
.woocommerce-orders-table th,.woocommerce-table--order-details th{text-align:left;font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);padding:12px;border-bottom:1px solid var(--line)}
.woocommerce-orders-table td,.woocommerce-table--order-details td{padding:14px 12px;border-bottom:1px solid var(--line);color:var(--ink)}
.woocommerce-account .woocommerce-button,.woocommerce-account .button{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:600;font-size:14px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-deep));border:none;border-radius:100px;padding:11px 20px;cursor:pointer;transition:transform .2s;text-align:center}
.woocommerce-account .woocommerce-button:hover,.woocommerce-account .button:hover{transform:translateY(-1px);color:#fff}
.woocommerce form .form-row label,.woocommerce-account label{display:block;font-family:var(--display);font-weight:600;font-size:13.5px;color:var(--ink);margin-bottom:6px}
.woocommerce form .input-text,.woocommerce-account input[type=text],.woocommerce-account input[type=email],.woocommerce-account input[type=password],.woocommerce-account input[type=tel]{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px 14px;font-family:var(--body);font-size:14.5px;background:#fff;outline:none}
.woocommerce form .input-text:focus{border-color:var(--blue)}
.woocommerce-form-login,.woocommerce-form-register{max-width:460px;border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,30px);background:linear-gradient(180deg,#fff,var(--ice))}

/* ===== My Account — refined auth + content ===== */
.woocommerce-account .ql-page{max-width:1040px}
.woocommerce-account:not(.logged-in) .ql-page{padding-top:clamp(28px,4vw,50px)}
.woocommerce-account:not(.logged-in) .ql-page > h1{display:none}
.ql-auth-head{text-align:center;max-width:560px;margin:0 auto clamp(26px,4vw,40px)}
.ql-auth-head .ql-auth-mark{display:inline-grid;place-items:center;width:54px;height:54px;font-size:20px;border-radius:16px;margin:0 auto 16px}
.ql-auth-head h2{font-family:var(--display);font-weight:700;font-size:clamp(24px,3vw,32px);letter-spacing:-.02em;color:var(--ink);margin:0 0 10px}
.ql-auth-head p{color:var(--ink-soft);font-size:15px;line-height:1.55;margin:0}
#customer_login.col2-set,#customer_login.u-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:900px;margin:0 auto;width:auto}
#customer_login .col-1,#customer_login .col-2,#customer_login .u-column1,#customer_login .u-column2{width:auto;float:none;margin:0;padding:0}
#customer_login .col-1,#customer_login .col-2{background:linear-gradient(180deg,#fff,var(--ice));border:1px solid var(--line);border-radius:20px;padding:clamp(22px,3vw,32px);box-shadow:0 24px 50px -34px rgba(13,42,99,.4)}
#customer_login h2{font-family:var(--display);font-weight:700;font-size:19px;letter-spacing:-.01em;color:var(--ink);margin:0 0 18px;padding:0;border:none}
/* the forms themselves are plain now — the columns are the cards */
.woocommerce-form-login,.woocommerce-form-register{max-width:none;border:none;background:none;padding:0;border-radius:0}
.woocommerce form .form-row,.woocommerce-account .woocommerce-form-row{margin:0 0 15px}
.woocommerce-form__label-for-checkbox{display:flex;align-items:center;gap:8px;font-weight:500;font-size:13.5px;color:var(--ink-soft);margin:2px 0 14px}
.woocommerce-form-login__submit,.woocommerce-form-register__submit,#customer_login .button{width:100%;justify-content:center;margin-top:4px}
.woocommerce-LostPassword{margin:14px 0 0;font-size:13.5px}
.woocommerce-LostPassword a{color:var(--blue);font-weight:600}
.woocommerce-privacy-policy-text p{font-size:12.5px;color:var(--ink-soft);line-height:1.55}
@media(max-width:680px){#customer_login.col2-set,#customer_login.u-columns{grid-template-columns:1fr}}

/* logged-in account content polish */
.woocommerce-MyAccount-content{font-size:14.5px;color:var(--ink-soft)}
.woocommerce-MyAccount-content p{line-height:1.6}
.woocommerce-MyAccount-content a:not(.button):not(.ql-btn):not(.ql-track-btn){color:var(--blue);font-weight:600}
.woocommerce-MyAccount-content mark{background:var(--sky);color:var(--blue-deep);padding:0 5px;border-radius:5px}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{font-family:var(--display);font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.woocommerce-order-details__title,.woocommerce-column__title{font-family:var(--display);font-weight:700;letter-spacing:-.01em;color:var(--ink);font-size:19px;margin:26px 0 14px}
.woocommerce-customer-details address,.woocommerce-Address address{border:1px solid var(--line);border-radius:14px;padding:16px 18px;font-style:normal;line-height:1.7;color:var(--ink);background:#fff}
.woocommerce-Addresses .woocommerce-Address{margin-bottom:8px}
.woocommerce-account .woocommerce-MyAccount-content .order-again{margin-top:18px}

/* ===== Order view — modern refinement ===== */
.woocommerce-order-details__title,.woocommerce-column__title{font-size:18px;margin:30px 0 16px}
.woocommerce-table--order-details{border:1px solid var(--line);border-radius:16px;border-collapse:separate;border-spacing:0;overflow:hidden;background:#fff;box-shadow:0 20px 44px -34px rgba(13,42,99,.4);width:100%}
.woocommerce-table--order-details th,.woocommerce-table--order-details td{border:none}
.woocommerce-table--order-details thead th{background:var(--ice);text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:var(--ink-soft);padding:13px 18px;font-family:var(--display);font-weight:600}
.woocommerce-table--order-details thead th.woocommerce-table__product-total,.woocommerce-table--order-details tbody td.product-total,.woocommerce-table--order-details tfoot td{text-align:right}
.woocommerce-table--order-details tbody td{padding:15px 18px;border-top:1px solid var(--line);font-size:14.5px;color:var(--ink);vertical-align:top}
.woocommerce-table--order-details tbody tr:first-child td{border-top:none}
.woocommerce-table--order-details tbody .product-name{font-weight:500;color:var(--ink)}
.woocommerce-table--order-details tbody .product-name a{color:var(--ink);font-weight:600}
.woocommerce-table--order-details tbody .product-total{font-weight:600;white-space:nowrap}
.woocommerce-table--order-details .product-quantity{color:var(--ink-soft);font-weight:600}
.woocommerce-table--order-details tfoot th,.woocommerce-table--order-details tfoot td{padding:11px 18px;border-top:1px solid var(--line);font-size:14px}
.woocommerce-table--order-details tfoot th{font-family:var(--display);font-weight:600;color:var(--ink-soft);text-transform:none;letter-spacing:0;text-align:left}
.woocommerce-table--order-details tfoot td{font-weight:600;color:var(--ink)}
.woocommerce-table--order-details tfoot tr:last-child th,.woocommerce-table--order-details tfoot tr:last-child td{padding-bottom:16px}
.ql-ototal-v{font-family:var(--display);font-weight:800;font-size:17px;color:var(--blue-deep)}

/* address cards */
.woocommerce-customer-details .col2-set,.woocommerce-customer-details .addresses,.woocommerce-customer-details .woocommerce-columns--addresses{display:flex;flex-wrap:wrap;gap:20px;width:100%;float:none}
.woocommerce-customer-details .col-1,.woocommerce-customer-details .col-2,.woocommerce-customer-details .woocommerce-column{flex:1 1 280px;width:auto;float:none;margin:0;max-width:none}
.woocommerce-customer-details address,.woocommerce-Address address{border:1px solid var(--line);border-radius:16px;padding:18px 20px;font-style:normal;line-height:1.8;color:var(--ink);background:#fff;box-shadow:0 16px 36px -32px rgba(13,42,99,.35)}
.woocommerce-customer-details address .woocommerce-customer-details--phone,.woocommerce-customer-details address .woocommerce-customer-details--email{display:block;margin-top:10px;color:var(--ink-soft);font-size:13.5px}
.woocommerce-customer-details a{color:var(--blue);font-weight:600}

/* tracker — premium polish */
.ql-track{background:linear-gradient(180deg,#fff,var(--ice));border:1px solid var(--line);box-shadow:0 22px 48px -34px rgba(13,42,99,.4);border-radius:20px;padding:clamp(22px,3vw,30px)}
.ql-track-h{font-size:17px;display:flex;align-items:center;gap:10px}
.ql-track-h::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--sky)}
.ql-step.current .dot{animation:qlpulse 2.2s ease-in-out infinite}
@keyframes qlpulse{0%,100%{box-shadow:0 0 0 5px var(--sky)}50%{box-shadow:0 0 0 9px rgba(37,99,235,.14)}}

/* Animated gradient underline in the CTA headline (Amino-style accent) */
.ql-h1 .ql-grad-underline{background-size:220px 5px;padding-bottom:5px}
.ql-grad-underline{display:inline-block;white-space:nowrap;padding-bottom:7px;background-image:linear-gradient(90deg,var(--blue),#3b82f6,#06b6d4,#3b82f6,var(--blue));background-size:220px 4px;background-repeat:repeat-x;background-position:0 100%;border-radius:2px;animation:qlgrad 3s linear infinite}
@keyframes qlgrad{to{background-position:220px 100%}}
@media(prefers-reduced-motion:reduce){.ql-grad-underline{animation:none}}


/* Age-gate logo image */
.ql-gate-logo{display:block;height:44px;width:auto;max-width:180px;margin:0 0 20px;object-fit:contain}
.ql-gate-card h2 .ql-grad-underline{background-size:200px 5px;padding-bottom:6px;white-space:normal}

/* In-stock / out-of-stock badge under the grid price */
.woocommerce ul.products li.product .ql-stock{display:inline-flex;align-items:center;gap:6px;font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.01em;padding:4px 11px;border-radius:100px;margin:8px 18px 2px}
.ql-stock::before{content:"";width:7px;height:7px;border-radius:50%}
.ql-stock--in{background:#e7f8ee;color:#177245}
.ql-stock--in::before{background:#22c55e}
.ql-stock--out{background:#fdeaea;color:#b42318}
.ql-stock--out::before{background:#ef4444}
.ql-stock--back{background:#fff4e5;color:#b26a00}
.ql-stock--back::before{background:#f59e0b}
.ql-delivery{display:flex;align-items:center;gap:7px;font-size:14px;color:#5b6b86;margin:2px 0 10px}
.ql-delivery svg{width:17px;height:17px;color:#2f6df6;flex:0 0 auto}
.ql-delivery strong{color:#0b1424}

/* ===== Slide-in cart drawer ===== */
.ql-drawer-overlay{position:fixed;inset:0;background:rgba(11,23,41,.5);opacity:0;transition:opacity .3s;z-index:1200;pointer-events:none}
.ql-drawer-overlay.open{opacity:1;pointer-events:auto}
.ql-drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,92vw);background:#fff;box-shadow:-24px 0 60px -24px rgba(11,23,41,.4);transform:translateX(105%);transition:transform .34s cubic-bezier(.4,0,.2,1);z-index:1201;display:flex;flex-direction:column}
.ql-drawer.open{transform:translateX(0)}
.ql-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line);flex:0 0 auto}
.ql-drawer-title{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.01em;color:var(--ink)}
.ql-drawer-close{background:none;border:none;font-size:26px;line-height:1;color:var(--ink-soft);cursor:pointer;padding:0 4px}
.ql-drawer-close:hover{color:var(--ink)}
.ql-cart-fragment{flex:1;display:flex;flex-direction:column;min-height:0}
.ql-drawer-body{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.ql-cart-items{list-style:none;margin:0;padding:6px 22px;overflow-y:auto;flex:1;display:flex;flex-direction:column}
.ql-cart-item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.ql-ci-thumb{flex:0 0 60px;line-height:0}
.ql-ci-thumb img{width:60px;height:60px;object-fit:contain;border-radius:12px;background:linear-gradient(150deg,var(--peri),var(--cyan));padding:6px}
.ql-ci-info{flex:1;min-width:0}
.ql-ci-name{display:block;font-family:var(--display);font-weight:600;font-size:14px;color:var(--ink);text-decoration:none;line-height:1.3}
.ql-ci-name:hover{color:var(--blue)}
.ql-ci-meta{font-size:13px;color:var(--ink-soft);margin-top:4px}
.ql-ci-remove{flex:0 0 auto;font-size:20px;line-height:1;color:#b9c2d4;text-decoration:none;padding:0 4px}
.ql-ci-remove:hover{color:var(--sale)}
.ql-cart-empty{padding:56px 22px;text-align:center;color:var(--ink-soft)}
.ql-cart-empty .ql-btn{margin:16px auto 0}
.ql-sugg{margin:12px 22px 0;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--ice);flex:0 0 auto}
.ql-sugg-tag{display:inline-block;font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--blue);margin-bottom:10px}
.ql-sugg-row{display:flex;align-items:center;gap:12px}
.ql-sugg-thumb{flex:0 0 46px;line-height:0}
.ql-sugg-thumb img{width:46px;height:46px;object-fit:contain;border-radius:10px;background:#fff}
.ql-sugg-info{flex:1;min-width:0}
.ql-sugg-name{display:block;font-family:var(--display);font-weight:600;font-size:13.5px;color:var(--ink);text-decoration:none;line-height:1.25}
.ql-sugg-price{font-size:13px;color:var(--ink-soft)}
.ql-sugg-price del{color:#9aa7bd;margin-right:4px}
.ql-sugg-add{flex:0 0 auto;font-family:var(--display);font-weight:600;font-size:13px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-deep));border:none;border-radius:100px;padding:9px 18px;cursor:pointer;text-decoration:none;transition:transform .2s}
.ql-sugg-add:hover{transform:translateY(-1px);color:#fff}
.ql-sugg-add.loading{opacity:.6;pointer-events:none}
.ql-cart-foot{border-top:1px solid var(--line);padding:18px 22px 22px;background:#fff;flex:0 0 auto}
.ql-cart-sub{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;font-family:var(--display);font-weight:600;font-size:15px;color:var(--ink)}
.ql-cart-sub-amt{font-weight:800;font-size:18px}
.ql-cart-checkout{display:flex;width:100%;justify-content:center;margin-bottom:10px}
.ql-cart-viewcart{display:block;text-align:center;font-family:var(--display);font-weight:600;font-size:14px;color:var(--blue);text-decoration:none}
.ql-cart-viewcart:hover{text-decoration:underline}
.single_add_to_cart_button.loading{opacity:.7;pointer-events:none}
body.ql-drawer-lock{overflow:hidden}
@media(max-width:480px){.ql-drawer{width:100vw}}

/* Ensure the account icon is hidden on mobile (higher specificity than the base rule) */
@media(max-width:1000px){.ql-nav .ql-acct{display:none}}

/* Hide empty WooCommerce notice boxes (add-to-cart messages are suppressed; drawer is the feedback) */
.woocommerce-message:empty,.woocommerce-info:empty,.woocommerce-error:empty,.woocommerce-notices-wrapper:empty{display:none!important}

/* ===== Same-day ship timer ===== */
.ql-shiptimer{display:flex;width:max-content;max-width:100%;align-items:center;gap:9px;background:#e7f8ee;color:#177245;border:1px solid #bfe9cf;border-radius:100px;padding:9px 16px;font-family:var(--display);font-weight:600;font-size:14px;margin:6px 0 6px}
.ql-shiptimer .ql-st-dot{width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.18);flex:0 0 auto}
.ql-shiptimer strong{font-weight:800}
.ql-shiptimer.ql-st-late{background:var(--ice);color:var(--ink-soft);border-color:var(--line)}
.ql-shiptimer.ql-st-late .ql-st-dot{background:#9aa7bd;box-shadow:none}

/* ===== Hero CTA row + trust strip ===== */
.ql-hero-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:4px}
.ql-hero-cta .ql-btn.ghost{padding:14px 24px}
.ql-hero-trust{display:grid;grid-template-columns:auto auto;justify-content:start;align-items:center;row-gap:18px;margin-top:30px}
.ql-ht{display:flex;align-items:center;gap:10px;padding:2px 20px}
.ql-ht:nth-child(2){order:1;padding-left:0}
.ql-ht:nth-child(3){order:2;border-left:1px solid var(--line)}
.ql-ht:nth-child(1){order:3;grid-column:1 / -1;justify-self:center;padding:0}
.ql-ht-stars{color:var(--blue);font-size:15px;letter-spacing:1px;white-space:nowrap}
.ql-ht svg{color:var(--blue);flex:0 0 auto;width:22px;height:22px}
.ql-ht-txt{display:flex;flex-direction:column;line-height:1.25}
.ql-ht-txt strong{font-family:var(--display);font-weight:700;font-size:14.5px;color:var(--ink);white-space:nowrap}
.ql-ht-txt small{font-size:12.5px;color:var(--ink-soft);margin-top:2px;white-space:nowrap}
@media(max-width:680px){
  .ql-hero-cta .ql-btn{flex:1 1 auto;justify-content:center}
  .ql-hero-trust{row-gap:14px;margin-top:24px}
  .ql-ht{gap:8px;padding:2px 12px}
  .ql-ht:nth-child(2){padding-left:0}
  .ql-ht svg{width:19px;height:19px}
  .ql-ht-txt strong{font-size:13px}
  .ql-ht-txt small{font-size:11.5px}
  .ql-ht-stars{font-size:13px}
}

/* Affiliate upsell on order-received page */
.ql-aff-promo{position:relative;overflow:hidden;margin:0 0 30px;padding:28px 30px;border-radius:20px;background:linear-gradient(135deg,#1b45c9,#2f6df6);color:#fff;box-shadow:0 18px 44px rgba(27,69,201,.28)}
.ql-aff-promo::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.10)}
.ql-aff-badge{display:inline-block;font-family:var(--display,inherit);font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.18);padding:5px 12px;border-radius:100px;margin-bottom:12px}
.ql-aff-promo h3{font-size:26px;line-height:1.2;margin:0 0 8px;font-weight:800;color:#fff}
.ql-aff-promo h3 strong{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.5);text-underline-offset:3px}
.ql-aff-promo p{margin:0 0 18px;font-size:15.5px;line-height:1.5;color:#eaf1ff;max-width:640px}
.ql-aff-promo p strong{color:#fff}
.ql-aff-btn{display:inline-block;background:#fff;color:#1b45c9;font-weight:800;font-size:16px;text-decoration:none;padding:13px 26px;border-radius:100px;transition:transform .15s,box-shadow .15s}
.ql-aff-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.18);color:#1b45c9}
@media(max-width:600px){.ql-aff-promo{padding:22px 20px}.ql-aff-promo h3{font-size:22px}}

/* Stylized product description (heading sections -> icon cards) */
.qld-intro{margin:0 0 22px}
.qld-intro h2{font-family:var(--display,inherit);font-weight:800;font-size:24px;color:#0b1424;margin:0 0 10px}
.qld-intro p{color:#5b6b86;font-size:15.5px;line-height:1.6;margin:0 0 10px}
.qld-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;background:#f4f8ff;border:1px solid #e6ecf7;border-radius:20px;padding:22px}
.qld-card{position:relative;background:#fff;border:1px solid #e6ecf7;border-radius:14px;padding:20px 18px 16px;overflow:hidden;box-shadow:0 6px 18px rgba(15,35,80,.04)}
.qld-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2f6df6,#1b45c9)}
.qld-card-head{display:flex;align-items:center;gap:11px;margin-bottom:12px}
.qld-ic{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#2f6df6,#1b45c9);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.qld-ic svg{width:19px;height:19px;color:#fff}
.qld-card-head h3{font-family:var(--display,inherit);font-size:13.5px;font-weight:800;margin:0;color:#0b1424;text-transform:uppercase;letter-spacing:.03em;line-height:1.3;display:inline-block;padding-bottom:5px;background-image:linear-gradient(90deg,var(--blue),#3b82f6,#06b6d4,#3b82f6,var(--blue));background-size:200px 3px;background-repeat:repeat-x;background-position:0 100%;border-radius:2px;animation:qlgrad 3s linear infinite}
@media(prefers-reduced-motion:reduce){.qld-card-head h3{animation:none}}
.qld-card-body{color:#5b6b86;font-size:14px;line-height:1.55}
.qld-card-body p{margin:0 0 8px}
.qld-card-body p:last-child{margin:0}
.qld-card-body ul{margin:0;padding-left:18px}
@media(max-width:600px){.qld-cards{padding:14px;gap:12px}.qld-intro h2{font-size:21px}}

/* Cart drawer badges & labels */
.ql-cart-ship{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#0b1424;margin-top:8px}
.ql-cart-free{color:#177245;font-weight:800}
.ql-cart-shipnote{font-size:12px;color:#98a4ba;margin:3px 0 12px}
.ql-cart-shiptimer{margin:0 0 10px}
.ql-cart-arrives{display:flex;align-items:center;gap:8px;font-size:13.5px;color:#5b6b86;margin:0 0 12px}
.ql-cart-arrives svg{width:16px;height:16px;color:#177245;flex:0 0 auto}
.ql-cart-arrives strong{color:#0b1424}
.ql-cart-trust{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px 0 12px;flex-wrap:wrap}
.ql-cart-secure{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#50607a}
.ql-cart-secure svg{width:14px;height:14px;flex:0 0 auto}
.ql-cart-pay{display:inline-flex;align-items:center}
.ql-cart-pay img{height:22px;width:auto;opacity:.95;display:block}

/* Free-shipping progress bar (cart drawer) */
.ql-ship-bar{margin:0 0 16px;padding:12px 14px;border-radius:14px;background:#f4f8ff;border:1px solid #e6ecf7}
.ql-ship-bar.is-unlocked{background:#e7f8ee;border-color:#c9ecd8}
.ql-ship-bar-msg{font-size:13.5px;color:#0b1424;margin-bottom:9px;text-align:center;line-height:1.4}
.ql-ship-bar-msg strong{color:#1b45c9}
.ql-ship-bar.is-unlocked .ql-ship-bar-msg strong{color:#177245}
.ql-ship-ico{margin-right:2px}
.ql-ship-bar-track{height:8px;border-radius:100px;background:#dbe7fb;overflow:hidden}
.ql-ship-bar-fill{height:100%;border-radius:100px;background:linear-gradient(90deg,#2f6df6,#06b6d4);transition:width .45s ease;min-width:6px}
.ql-ship-bar.is-unlocked .ql-ship-bar-track{background:#c9ecd8}
.ql-ship-bar.is-unlocked .ql-ship-bar-fill{background:linear-gradient(90deg,#22c55e,#16a34a)}
.ql-cart-ship-calc{color:#5b6b86;font-weight:600}
