/* ── ROOT & BASE ── */
:root { --navy:#0a1628; --teal:#00c9a7; --sky:#3fa8ff; --paper:#f5f8fc; --border:#e0e8f0; --muted:#8899aa; --card:#ffffff; }
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
body { font-family:'Inter',sans-serif; background:var(--paper); color:var(--navy); overflow-x:hidden; font-size: 14px; }
button { font-family:'Inter',sans-serif; }
:focus-visible{outline: none !important;}
/* ── PROMO BANNER ── */
.promo-banner { background:var(--teal); color:var(--navy); text-align:center; padding:9px; font-size:12px; font-weight:700; cursor:pointer; }

/* ── LAYOUT ── */
.store-layout { max-width:1440px; margin:0 auto; padding:22px 18px; display:grid; grid-template-columns:220px 1fr; gap:22px; }
@media(max-width:820px) { .store-layout { grid-template-columns:1fr; } .sidebar { display:none; } }

/* ── PRODUCT GRID ── */
.product-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:18px; }
@media(max-width:1200px) { .product-grid:not(.list-view) { grid-template-columns:repeat(4,1fr); } }
@media(max-width:900px)  { .product-grid:not(.list-view) { grid-template-columns:repeat(3,1fr); } }
@media(max-width:600px)  { .product-grid:not(.list-view) { grid-template-columns:repeat(2,1fr); } }

/* ── PRODUCT CARD ── */
.p-card { background:var(--card); border:1.5px solid var(--border); border-radius:16px; overflow:visible; position:relative; transition:box-shadow .2s,transform .2s; display:flex; flex-direction:column; }
.p-card:hover { box-shadow:0 8px 28px rgba(10,22,40,.1); transform:translateY(-2px); }
.p-badge { position:absolute; top:12px; left:12px; z-index:2; font-size:10px; font-weight:800; padding:3px 10px; border-radius:20px; }
.badge-hot { background:#fff0e8; color:#b54000; }
.badge-new { background:#e0f8f3; color:#007d67; }
.badge-sale { background:#fff0e8; color:#b54000; }
.wishlist-btn { position:absolute; top:12px; right:12px; width:30px; height:30px; border-radius:50%; background:white; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:14px; color:var(--muted); z-index:2; transition:all .15s; }
.wishlist-btn:hover { color:#e0407a; border-color:#e0407a; }
.p-img { width:100%; aspect-ratio:auto; border-radius:14px 14px 0 0; overflow:hidden; position:relative; }
.p-body { padding:14px 14px 0; flex:1; display:flex; flex-direction:column; }
.p-cat-tag { font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; margin-bottom:4px; }
.p-name { font-family:'Syne',sans-serif; font-size:16px; font-weight:800; line-height:1.15; margin-bottom:2px; cursor:pointer; }
.p-name:hover { color:var(--teal); }
.p-aka { font-size:11px; color:var(--muted); margin-bottom:6px; }
.p-purity { display:flex; align-items:center; gap:5px; font-size:10.5px; color:var(--muted); margin-bottom:10px; }
.purity-dot { width:7px; height:7px; border-radius:50%; background:var(--teal); flex-shrink:0; }
.p-bottom { padding:12px 0px; margin-top:auto; }
.p-price-row { display:flex; align-items:baseline; gap:7px; flex-wrap:wrap; margin-bottom:8px; }
.p-price { font-family:'Syne',sans-serif; font-size:20px; font-weight:900; line-height:1; }
.p-price-old { font-size:13px; color:var(--muted); text-decoration:line-through; }
.p-price-save { font-size:11px; font-weight:700; color:#e05a30; }
.p-sizes { display:flex; gap:5px; flex-wrap:wrap; margin-bottom:10px; }
.psize { font-size:10px; font-weight:600; padding:3px 8px; border:1.5px solid var(--border); border-radius:6px; cursor:pointer; color:var(--muted); transition:all .15s; }
.psize.on { border-color:var(--navy); background:var(--navy); color:white; }
.psize:hover:not(.on) { border-color:var(--sky); color:var(--sky); }
.add-btn { width:100%; background:var(--navy); color:white; border:none; border-radius:10px; padding:11px; font-weight:700; font-size:13px; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:7px; transition:background .15s; }
.add-btn:hover { background:#1a2e4a; }
.add-btn.unavail { background:#c8cdd6 !important; color:#8899aa !important; cursor:not-allowed !important; pointer-events:none; }
.p-img .modal-vial-bg{width:100%; height:100%;}
.p-img .modal-vial-label{position: absolute; left: 51%; top: 62%; width: 51%; transform: translate(-50%, -50%); z-index: 2; pointer-events: none;}
.p-img .modal-vial-label svg{display: block; width: 100%; height: auto;}

.yith-add-to-wishlist-button-block { position:absolute; top:12px; right:12px; width:30px; height:30px; border-radius:50%; background:white; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:14px; color:var(--muted); z-index:2; transition:all .15s; margin: 0 !important; }
.yith-wcwl-add-to-wishlist-button__label {display: none;}
.yith-add-to-wishlist-button-block svg.yith-wcwl-icon {width: 15px !important; height: auto !important;}
.yith-add-to-wishlist-button-block:hover { color:#e0407a; border-color:#e0407a; }
.wishlist_table .product-name a, .wishlist_table .product-thumbnail > a {pointer-events: none;cursor: default;text-decoration: none;color: inherit;}

/* ── PACK ROW + QUANTITY STEPPER ── */
.qty-toggle-wrap { margin-bottom:10px; }
.pack-row { display:flex; align-items:center; justify-content:space-between; gap:5px; margin-bottom:10px; }
.pack-label { font-size:11px; font-weight:700; color:#0a6a5a; background:#d6f5ec; border-radius:6px; padding:4px 10px; white-space:nowrap; line-height:1; }
.qty-stepper { display:inline-flex; align-items:center; border:1.5px solid #d0d8e8; border-radius:8px; overflow:hidden; background:#f5f8fc; }
.qty-stepper .qty-step-btn { width:25px; height:25px; padding:0; border:none; cursor:pointer; background:#f5f8fc; color:#0a1628; font-size:17px; font-weight:700; line-height:1; display:inline-flex; align-items:center; justify-content:center; transition:background .15s; }
.qty-stepper .qty-step-btn:hover { background:#e3ebf5; }
.qty-stepper .qty-step-val { min-width:30px; text-align:center; font-size:13px; font-weight:700; color:#0a1628; padding:0 4px; user-select:none; }
.lv-pack-row { flex-direction:column; align-items:stretch; gap:6px; margin-bottom:0; }
.lv-pack-row .pack-label { text-align:center; }
.lv-pack-row .qty-stepper { width:100%; justify-content:space-between; }
.modal-pack-row { margin-bottom:0; }


/* ── LIST VIEW ── */
.lv-name-col, .lv-sizes-col, .lv-toggle-col, .lv-price-col, .lv-cart-col { display:none; }
#productGrid.list-view { display:flex; flex-direction:column; gap:6px; }
#productGrid.list-view .p-card { display:grid; grid-template-columns:64px minmax(180px,240px) minmax(80px,1fr) 220px 100px 120px; align-items:center; column-gap:16px; padding:12px 20px; border-radius:12px; overflow:hidden; transform:none; }
#productGrid.list-view .lv-sizes-col { grid-column:3; grid-row:1; display:flex !important; flex-wrap:wrap; gap:4px; align-items:flex-start; align-content:flex-start; max-height:56px; overflow:hidden; }
#productGrid.list-view .p-card:hover { transform:none; box-shadow:0 2px 12px rgba(10,22,40,.08); }
#productGrid.list-view .p-badge { display:none !important; }
#productGrid.list-view .wishlist-btn { display:none !important; }
#productGrid.list-view .yith-add-to-wishlist-button-block { display:none !important; }
#productGrid.list-view .p-body { display:contents; }
#productGrid.list-view .p-body > .p-cat-tag, #productGrid.list-view .p-body > .p-name, #productGrid.list-view .p-body > .p-aka, #productGrid.list-view .p-body > .p-purity, #productGrid.list-view .p-body > .p-bottom { display:none !important; }
#productGrid.list-view .p-img { grid-column:1; grid-row:1; width:64px; height:64px; border-radius:8px; overflow:hidden; cursor:pointer; aspect-ratio:auto; }
#productGrid.list-view .lv-name-col { grid-column:2; grid-row:1; overflow:visible; display:flex !important; flex-direction:column; justify-content:center; min-width:0; }
#productGrid.list-view .lv-toggle-col { grid-column:4; grid-row:1; width:220px; overflow:hidden; display:block !important; }
#productGrid.list-view .lv-price-col { grid-column:5; grid-row:1; width:100px; text-align:right; overflow:hidden; display:block !important; }
#productGrid.list-view .lv-cart-col { grid-column:6; grid-row:1; width:120px; overflow:hidden; display:block !important; }
#productGrid.list-view .lv-cart-col .add-btn { width:100%; padding:8px 6px; font-size:11px; gap:4px; border-radius:7px; }
.lv-name-col .lv-cat { font-size:8px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; margin-bottom:2px; }
.lv-name-col .lv-name { font-family:'Syne',sans-serif; font-size:13px; font-weight:800; line-height:1.2; cursor:pointer; white-space:normal; overflow:visible; }
.lv-name-col .lv-name:hover { color:var(--teal); }
.lv-name-col .lv-aka { font-size:10px; color:var(--muted); white-space:normal; overflow:visible; margin-top:1px; }
.lv-name-col .lv-pur { font-size:9px; margin-top:3px; display:flex; align-items:center; gap:4px; }
#productGrid.list-view .lv-sizes-col .psize { font-size:9.5px; padding:2px 7px; }
.lv-price-col .lv-p { font-family:'Syne',sans-serif; font-size:16px; font-weight:900; line-height:1; display:block; white-space:nowrap; }
.lv-price-col .lv-saving { font-size:8px; color:#00875a; font-weight:700; margin-top:3px; display:none; white-space:nowrap; }

/* ── CART DRAWER ── */
.cart-overlay { position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:300; display:none; }
.cart-overlay.open { display:block; }
.cart-drawer { position:fixed; right:-420px; top:0; bottom:0; width:420px; max-width:96vw; background:white; z-index:310; box-shadow:-4px 0 30px rgba(0,0,0,.15); transition:right .3s cubic-bezier(.4,0,.2,1); display:flex; flex-direction:column; }
.cart-drawer.open { right:0; }
.cart-hdr { display:flex; align-items:center; justify-content:space-between; padding:18px 20px; border-bottom:1px solid var(--border); flex-shrink:0; }
.cart-title { font-family:'Syne',sans-serif; font-size:17px; font-weight:800; }
.cart-close { background:none; border:none; font-size:22px; cursor:pointer; color:var(--muted); padding:0; line-height:1; }
.cart-close:hover { color:var(--navy); }
.cart-items { flex:1; overflow-y:auto; padding:12px 20px; }
.empty-cart { text-align:center; padding:48px 0; color:var(--muted); }
.empty-cart svg { width:44px; height:44px; margin-bottom:12px; opacity:.4; }
.empty-cart p { font-size:13px; }
.cart-item { display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--border); }
.ci-img { width:48px; height:48px; border-radius:10px; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:24px; }
.ci-info { flex:1; min-width:0; }
.ci-name { font-weight:700; font-size:13px; margin-bottom:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ci-size { font-size:10px; color:var(--muted); margin-bottom:3px; display:flex; align-items:center; gap:5px; }
.ci-price { font-size:11px; color:var(--muted); margin-bottom:5px; }
.ci-qty { display:flex; align-items:center; gap:6px; }
.ci-qty-btn { background:#f0f4fa; border:1px solid #d0d8e8; border-radius:5px; width:26px; height:26px; font-size:15px; font-weight:700; cursor:pointer; color:#0a1628; display:inline-flex; align-items:center; justify-content:center; padding:0; line-height:1; }
.ci-qty-btn:hover { background:#dde6f2; }
.ci-rm-btn { background:none; border:none; color:#aab4c0; font-size:14px; cursor:pointer; padding:0 2px; margin-left:4px; }
.ci-rm-btn:hover { color:#cc2200; }
.cart-ftr { padding:16px 20px; border-top:1px solid var(--border); flex-shrink:0; }
.cart-nudge { background:linear-gradient(90deg,#eafaf4,#d6f5ec); border:1px solid #b6ebdc; color:#0a6a5a; font-size:12px; font-weight:600; border-radius:9px; padding:9px 12px; margin-bottom:12px; text-align:center; line-height:1.4; }
.cart-tier-strip { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-bottom:12px; }
.tier-strip-title { font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:#8899aa; margin-right:2px; }
.tier-chip { font-size:10.5px; font-weight:700; color:#5a6a7a; background:#f0f4fa; border:1px solid #e0e8f0; border-radius:5px; padding:3px 7px; transition:all .15s; }
.tier-chip.tier-active { background:#0a6a5a; border-color:#0a6a5a; color:#fff; }
.cart-breakdown { margin-bottom:10px; }
.cart-line { display:flex; justify-content:space-between; font-size:12.5px; color:var(--muted); margin-bottom:5px; }
.cart-line-disc { color:#00875a; font-weight:700; }
.cart-total-row { display:flex; justify-content:space-between; font-size:14px; font-weight:700; margin-bottom:12px; }
.cart-checkout-btn { width:100%; background:var(--teal); color:var(--navy); border:none; border-radius:10px; padding:13px; font-weight:800; font-size:14px; cursor:pointer; transition:background .15s; display:block; text-align:center; text-decoration:none;}
.cart-checkout-btn:hover { background:#00e0bc; }
.promo-row { display:flex; gap:8px; margin-bottom:12px; }
.promo-input { flex:1; border:1.5px solid var(--border); border-radius:8px; padding:8px 12px; font-size:12px; outline:none; }
.promo-input:focus { border-color:var(--teal); }
.promo-apply-btn { background:var(--navy); color:white; border:none; border-radius:8px; padding:8px 14px; font-size:12px; font-weight:700; cursor:pointer; }
.cart-count-tag { font-size:10px; background:var(--border); color:var(--muted); border-radius:10px; padding:1px 7px; font-weight:700; }

/* ── MODAL ── */
.modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,.5); z-index:400; display:none; align-items:center; justify-content:center; padding:20px; }
.modal-overlay.open { display:flex; }
.modal { background:white; border-radius:18px; width:100%; max-width:900px; max-height:90vh; display:flex; flex-direction:column; overflow:hidden; box-shadow:0 24px 60px rgba(0,0,0,.25); }
.modal-header { padding:22px 22px 16px; border-bottom:1px solid var(--border); display:flex; gap:18px; align-items:flex-start; flex-shrink:0; }
.modal-vial-wrap { width:100px; height:100px; flex-shrink:0; border-radius:12px; overflow:hidden; background:var(--paper); }
.modal-title { font-family:'Syne',sans-serif; font-size:22px; font-weight:900; line-height:1.1; }
.modal-sub { font-size:12px; color:var(--muted); margin-top:4px; }
.modal-badges { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.mbadge { font-size:9px; font-weight:700; padding:2px 8px; border-radius:10px; }
.mbadge-cat { background:var(--paper); color:var(--muted); }
.mbadge-approved { background:#d6f0e0; color:#1a5c38; }
.mbadge-partial { background:#fef3cd; color:#5a4200; }
.mbadge-unapproved { background:#fde8e4; color:#8c2a0d; }
.modal-price-box { margin-left:auto; text-align:right; flex-shrink:0; }
.modal-price { font-family:'Syne',sans-serif; font-size:26px; font-weight:900; line-height:1; }
.modal-price-old { font-size:13px; color:var(--muted); text-decoration:line-through; }
.modal-purity { font-size:10px; color:var(--muted); margin-top:4px; }
.modal-tabs { display:flex; padding:0 22px; border-bottom:1px solid var(--border); flex-shrink:0; }
.mtab { padding:12px 16px; font-size:12px; font-weight:600; color:var(--muted); cursor:pointer; border-bottom:2.5px solid transparent; transition:all .15s; }
.mtab.active { color:var(--navy); border-bottom-color:var(--navy); }
.modal-body { padding:20px 22px; overflow-y:auto; flex:1; }
.tab-pane { display:none; }
.tab-pane.active { display:block; }
.detail-section { margin-bottom:18px; }
.detail-label { font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--teal); margin-bottom:6px; }
.detail-text { font-size:13px; line-height:1.75; color:#2a3a4a; }
.related-tags { display:flex; flex-wrap:wrap; gap:5px; }
.rtag { font-size:10px; font-weight:600; padding:3px 9px; background:var(--paper); border:1px solid var(--border); border-radius:10px; color:var(--muted); }
.safety-chips { display:flex; flex-wrap:wrap; gap:6px; }
.sch { font-size:10px; font-weight:700; padding:4px 10px; border-radius:6px; }
.sch-g { background:#d6f0e0; color:#1a5c38; }
.sch-y { background:#fef3cd; color:#5a4200; }
.sch-r { background:#fde8e4; color:#8c2a0d; }
.modal-close-btn { background:none; border:1px solid var(--border); border-radius:8px; padding:6px 12px; font-size:12px; cursor:pointer; color:var(--muted); margin-top:16px; }
.modal-close-btn:hover { border-color:var(--navy); color:var(--navy); }

/* ── PAGINATION ── */
.pagination { display:flex; justify-content:center; gap:6px; margin-top:22px; flex-wrap:wrap; }
.pg-btn { background:var(--card); border:1.5px solid var(--border); border-radius:8px; padding:7px 13px; font-size:12px; font-weight:600; cursor:pointer; color:var(--muted); transition:all .15s; }
.pg-btn:hover { border-color:var(--navy); color:var(--navy); }
.pg-btn.on { background:var(--navy); color:white; border-color:var(--navy); }

/* ── TOAST ── */
.toast { position:fixed; bottom:24px; left:50%; transform:translateX(-50%) translateY(80px); background:var(--navy); color:white; padding:11px 22px; border-radius:10px; font-size:13px; font-weight:600; z-index:500; transition:transform .3s; white-space:nowrap; box-shadow:0 6px 20px rgba(0,0,0,.2); }
.toast.show { transform:translateX(-50%) translateY(0); }

/* ── ANNOUNCEMENT BAR ── */
.announce-bar { background:#0b1a2e; color:rgba(255,255,255,.7); text-align:center; padding:8px 16px; font-size:12px; }
.announce-bar strong { color:#00c9a7; }
.announce-bar .a-code { color:#00c9a7; font-weight:800; letter-spacing:.05em; }

/* ── NAV ── */
.top-nav { background:#0d1f35; padding:0; position:sticky; top:0; z-index:200; box-shadow:0 2px 16px rgba(0,0,0,.3); border-bottom:1px solid rgba(255,255,255,.06); }
.top-nav-inner { max-width:1440px; margin:0 auto; padding:0 18px; height:64px; display:flex; align-items:center; gap:22px; }
.nav-logo-wrap { display:flex; align-items:center; gap:11px; cursor:pointer; flex-shrink:0; text-decoration:none; }
.nav-logo-hex { width:34px; height:32px; }
.nav-logo { font-family:'Poppins',sans-serif; font-size:21px; font-weight:600; color:white; letter-spacing:2px; }
.nav-logo em { color:#00c9a7; font-style:normal; }
.nav-search-wrap { flex:1; position:relative; max-width:560px; }
.nav-search { width:100%; background:rgba(255,255,255,.07); border:1.5px solid rgba(255,255,255,.12); border-radius:10px; padding:10px 16px 10px 42px; font-size:13px; color:white; outline:none; transition:border-color .2s; }
.nav-search::placeholder { color:rgba(255,255,255,.35); }
.nav-search:focus { border-color:#00c9a7; background:rgba(255,255,255,.1); }
.nav-search-icon { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:rgba(255,255,255,.35); pointer-events:none; }
.nav-right { display:flex; align-items:center; gap:10px; margin-left:auto; flex-shrink:0; }
.nav-cart-btn { display:flex; align-items:center; gap:8px; background:transparent; border:1.5px solid rgba(255,255,255,.18); border-radius:10px; padding:0 18px; height:40px; color:white; font-size:13px; font-weight:600; cursor:pointer; transition:all .18s; white-space:nowrap; }
.nav-cart-btn:hover { border-color:#00c9a7; color:#00c9a7; }
.cart-badge { background:#ff4455; color:white; font-size:9px; font-weight:800; border-radius:50%; width:19px; height:19px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.nav-acct-btn { display:flex; align-items:center; gap:7px; background:#00c9a7; border:none; border-radius:10px; padding:0 20px; height:40px; color:#081424; font-size:13px; font-weight:800; cursor:pointer; transition:background .18s; white-space:nowrap; text-decoration:none;}
.nav-acct-btn:hover { background:#00e0bc; }

/* ── HERO ── */
.hero { background:linear-gradient(160deg,#081424 0%,#0a1e38 45%,#0e2a4a 100%); padding:28px 0 24px; }
.hero-inner { max-width:1440px; margin:0 auto; padding:0 18px; display:grid; grid-template-columns:1fr 360px; gap:36px; align-items:center; }
.hero-eyebrow { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:#00c9a7; margin-bottom:14px; padding:5px 12px; border:1px solid rgba(0,201,167,.35); border-radius:20px; background:rgba(0,201,167,.08); }
.hero-title { font-family:'Syne',sans-serif; font-size:clamp(24px,3vw,38px); font-weight:900; color:white; line-height:1.0; letter-spacing:-.02em; margin-bottom:10px; }
.hero-title em { color:#00c9a7; font-style:normal; display:inline; }
.hero-sub { font-size:13px; color:rgba(255,255,255,.55); line-height:1.65; max-width:500px; margin-bottom:16px; }
.hero-btns { display:flex; gap:10px; flex-wrap:wrap; }
.hero-btn-primary { background:#00c9a7; color:#081424; border:none; border-radius:8px; padding:10px 20px; font-size:13px; font-weight:800; cursor:pointer; transition:background .18s; }
.hero-btn-primary:hover { background:#00e0bc; }
.hero-btn-secondary { background:transparent; color:white; border:1.5px solid rgba(255,255,255,.22); border-radius:8px; padding:10px 20px; font-size:13px; font-weight:700; cursor:pointer; transition:all .18s; }
.hero-btn-secondary:hover { border-color:rgba(255,255,255,.6); }
.hero-stats { display:flex; gap:0; margin-top:18px; padding-top:16px; border-top:1px solid rgba(255,255,255,.09); }
.hero-stat { flex:0 0 auto; }
.hero-stat-num { font-family:'Syne',sans-serif; font-size:20px; font-weight:900; color:#00c9a7; line-height:1; }
.hero-stat-lbl { font-size:10px; color:rgba(255,255,255,.45); margin-top:3px; }
.hero-stat-sep { width:1px; background:rgba(255,255,255,.1); margin:0 20px; height:32px; align-self:center; }
.hero-cards { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.hero-card { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:10px; padding:12px 14px; display:flex; align-items:center; gap:10px; backdrop-filter:blur(8px); transition:background .2s; }
.hero-card:hover { background:rgba(255,255,255,.1); }
.hero-card-icon { width:32px; height:32px; background:rgba(0,201,167,.12); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; }
.hero-card-title { font-size:12px; font-weight:700; color:white; margin-bottom:2px; }
.hero-card-sub { font-size:10.5px; color:rgba(255,255,255,.45); line-height:1.3; }

/* ── TRUST BAR ── */
.trust-bar { background:white; border-bottom:1px solid #e4ecf4; padding:15px 0; }
.trust-bar-inner { max-width:1440px; margin:0 auto; padding:0 18px; display:flex; align-items:center; justify-content:space-around; gap:8px; flex-wrap:wrap; }
.trust-item { display:flex; align-items:center; gap:7px; font-size:12.5px; color:#4a5a6a; white-space:nowrap; }
.trust-item svg { flex-shrink:0; }
.trust-item strong { color:#0a1628; }

/* ── SIDEBAR ── */
.sidebar { position:sticky; top:80px; height:fit-content; display:flex; flex-direction:column; gap:14px; }
.sidebar-section { background:white; border:1px solid #e4ecf4; border-radius:16px; overflow:hidden; }
.sidebar-title { font-size:10.5px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:#8899aa; padding:16px 18px 12px; }
.cat-item { display:flex; align-items:center; justify-content:space-between; padding:10px 18px; cursor:pointer; border-left:3px solid transparent; transition:all .15s; }
.cat-item:hover { background:#f5f8fc; }
.cat-item.active { background:rgba(0,201,167,.07); border-left-color:#00c9a7; }
.cat-name { font-size:13px; font-weight:500; color:#2a3a4a; }
.cat-item.active .cat-name { font-weight:700; color:#0a1628; }
.cat-count { font-size:11px; font-weight:700; color:#8899aa; background:#eef2f7; border-radius:20px; padding:1px 8px; min-width:24px; text-align:center; }
.cat-item.active .cat-count { background:rgba(0,201,167,.15); color:#007d67; }

/* Price filter */
.price-filter { padding:4px 18px 18px; }
.price-inputs { display:flex; align-items:center; gap:8px; margin-bottom:12px; }
.price-input-wrap { flex:1; display:flex; align-items:center; gap:5px; border:1.5px solid #d8e4f0; border-radius:9px; padding:8px; background:white; }
.price-prefix { font-size:11.5px; color:#8899aa; white-space:nowrap; font-weight:500; }
.price-input { min-width:0; border:none; background:none; width:100%; font-size:13px; color:#0a1628; outline:none; -webkit-appearance: auto; appearance: auto; }
.price-dash { color:#8899aa; font-size:16px; font-weight:300; flex-shrink:0; }
.price-apply-btn { width:100%; background:#0a1628; color:white; border:none; border-radius:9px; padding:11px; font-size:13px; font-weight:700; cursor:pointer; transition:background .18s; }
.price-apply-btn:hover { background:#1a2e4a; }
.price-input-wrap.error {border: 1.5px solid #dc2626;}
.price-input::-webkit-inner-spin-button, .price-input::-webkit-outer-spin-button { opacity: 1; }

/* Popular tags */
.pop-tags { display:flex; flex-wrap:wrap; gap:7px; padding:4px 18px 18px; }
.pop-tag { font-size:12px; font-weight:600; padding:5px 13px; border:1.5px solid #d8e4f0; border-radius:20px; cursor:pointer; color:#6a7a8e; background:white; transition:all .15s; }
.pop-tag:hover { border-color:#0a1628; color:#0a1628; }
.pop-tag.on { border-color:#0a1628; background:#0a1628; color:white; }
.pop-tag.disabled { opacity:.4; cursor:default; pointer-events:none; }

/* Promo box */
.sidebar-promo { background:linear-gradient(145deg,#081424,#0e2240); border-radius:16px; padding:26px 20px 22px; text-align:center; cursor:pointer; border:1px solid rgba(0,201,167,.2); }
.sidebar-promo-pct { font-family:'Syne',sans-serif; font-size:50px; font-weight:900; color:#00c9a7; line-height:.9; margin-bottom:10px; }
.sidebar-promo-sub { font-size:12px; color:rgba(255,255,255,.55); line-height:1.6; margin-bottom:16px; }
.sidebar-promo-code { font-family:'Syne',sans-serif; font-size:12px; font-weight:800; letter-spacing:.1em; color:#00c9a7; border:1.5px dashed rgba(0,201,167,.45); border-radius:9px; padding:9px 14px; line-height:1.4; transition:all .2s; }
.sidebar-promo:hover .sidebar-promo-code { background:rgba(0,201,167,.1); border-color:#00c9a7; }

/* Research disclaimer */
.research-disc { background:#fffbea; border:1px solid #f0d060; border-radius:12px; padding:13px 16px; margin-bottom:16px; display:flex; gap:11px; align-items:flex-start; }
.research-disc-text { font-size:12px; color:#5a4200; line-height:1.65; }
.research-disc-text strong { color:#b87a00; }

/* Toolbar */
.toolbar { display:flex; align-items:center; gap:10px; margin-bottom:16px; }
.result-count { font-size:13px; color:#6a7a8e; }
.result-count strong { color:#0a1628; }
.sort-sel { font-size:12px; border:1.5px solid #d8e4f0; border-radius:8px; padding:7px 28px 7px 12px; background:white; color:#0a1628; cursor:pointer; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%238899aa' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 8px center; background-size:11px; }
.view-toggle { display:flex; border:1.5px solid #d8e4f0; border-radius:9px; overflow:hidden; }
.vt-btn { padding:7px 11px; background:white; border:none; cursor:pointer; color:#8899aa; transition:all .15s; display:flex; align-items:center; justify-content:center; }
.vt-btn.on { background:#0a1628; color:white; }
.vt-btn:not(.on):hover { background:#f0f4fa; }

@media(max-width:1024px) { .hero-inner { grid-template-columns:1fr; } .hero-cards { grid-template-columns:1fr 1fr; } }
@media(max-width:768px) { .store-layout { grid-template-columns:1fr; } .sidebar { display:none; } .hero-title { font-size:38px; } }

/* ── VIAL LABEL ── */
.frame { width:100%; height:100%; position:relative; background:linear-gradient(135deg,#f0f4fa,#e8eef6); }
.frame img { width:100%; height:100%; object-fit:contain; display:block; }
.lbl-wrap {
  position:absolute; top:46.7%; left:31.9%; width:38%; height:36.2%;
  border-radius:2px; overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.15) 3%,rgba(0,0,0,.88) 8%,black 14%,black 86%,rgba(0,0,0,.88) 92%,rgba(0,0,0,.15) 97%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.15) 3%,rgba(0,0,0,.88) 8%,black 14%,black 86%,rgba(0,0,0,.88) 92%,rgba(0,0,0,.15) 97%,transparent 100%);
}
.lbl { width:100%; height:100%; display:flex; flex-direction:column; background:#fff; font-family:Arial,Helvetica,sans-serif; }

/* Header — 15% of ~72px = ~11px tall */
.v-hdr { flex:0 0 15%; display:flex; align-items:center; justify-content:space-between; padding:0 4%; }
.v-hdr-brand { display:flex; align-items:center; gap:2px; }
.v-hdr-hex { width:6px; height:5.5px; flex-shrink:0; }
.v-hdr-wm { font-family:'Poppins','Arial Black',Arial,sans-serif; font-size:4.8px; font-weight:600; color:#fff; letter-spacing:.3px; line-height:1; }
.v-hdr-wm span { color:#00c9a7; }
.v-hdr-rx { font-family:'Times New Roman',serif; font-style:italic; font-size:6px; color:rgba(255,255,255,.55); line-height:1; }

/* Stripe — 2% = ~1.5px */
.v-stripe { flex:0 0 2%; }

/* Footer — 18% = ~13px — increased for legibility */
.v-ftr { flex:0 0 18%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1px; padding:0 2%; }

/* Body — fills remaining ~47px */
.v-body { flex:1; display:flex; flex-direction:column; padding:1px 4% 1px; overflow:hidden; gap:1px; }

/* Drug name — 9px, bold, prominent but fits */
.v-drug-name { font-family:'Arial Black',Arial,sans-serif; font-size:9px; font-weight:900; color:#0b1e3a; line-height:1; flex-shrink:0; }

/* Drug class (aka) — 5.5px, uppercase */
.v-drug-class { font-size:5.5px; color:#3a5a80; letter-spacing:.04em; text-transform:uppercase; line-height:1; white-space:nowrap; overflow:hidden; flex-shrink:0; }

/* Rule */
.v-rule { flex-shrink:0; height:1px; background:#c8d8e8; }

/* Dose row */
.v-dose-row { display:flex; align-items:baseline; gap:2%; flex-shrink:0; }
.v-dose-num  { font-family:'Arial Black',Arial,sans-serif; font-size:13px; font-weight:900; line-height:1; }
.v-dose-unit { font-family:'Arial Black',Arial,sans-serif; font-size:6px; font-weight:700; line-height:1; }

/* Specs — Purity + Storage */
.v-specs { display:grid; grid-template-columns:1fr 1fr; gap:0 4%; flex-shrink:0; }
.v-spec-label { font-size:4px; text-transform:uppercase; letter-spacing:.3px; color:#8099b0; line-height:1.2; }
.v-spec-val   { font-family:'Arial Black',Arial,sans-serif; font-size:6px; font-weight:900; color:#0b1e3a; line-height:1; }

/* Warning footer — SVG handles text, just style the container */
.v-ftr-w1 { font-family:'Arial Black',Arial,sans-serif; font-size:5.5%; font-weight:900; color:rgba(255,255,255,.92); letter-spacing:.1em; text-align:center; line-height:1; }
.v-ftr-w2 { font-family:'Arial Black',Arial,sans-serif; font-size:4.8%; font-weight:700; color:rgba(255,255,255,.72); letter-spacing:.08em; text-align:center; line-height:1; }

/* Glare */
.v-glare { position:absolute; top:46.7%; left:31.9%; width:38%; height:36.2%; pointer-events:none; border-radius:2px;
  background:linear-gradient(to right,rgba(255,255,255,.18) 0%,rgba(255,255,255,.05) 8%,transparent 28%,transparent 78%,rgba(255,255,255,.05) 90%,rgba(255,255,255,.14) 100%); }

/* ── FEATURES BAR ── */
.features-bar { background:white; border-top:1px solid #e4ecf4; border-bottom:1px solid #e4ecf4; padding:24px 0; }
.features-bar-inner { max-width:1440px; margin:0 auto; padding:0 18px; display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.feat-item { display:flex; align-items:flex-start; gap:12px; }
.feat-icon { width:38px; height:38px; background:#edf8f5; border-radius:9px; display:flex; align-items:center; justify-content:center; color:#00c9a7; flex-shrink:0; }
.feat-title { font-size:13px; font-weight:700; color:#0a1628; margin-bottom:3px; }
.feat-sub { font-size:11.5px; color:#6a7a8e; line-height:1.55; }

/* ── NEWSLETTER ── */
.newsletter { background:linear-gradient(160deg,#081424 0%,#0a1e38 60%,#0e2a4a 100%); padding:36px 18px; text-align:center; }
.newsletter-title { font-family:'Syne',sans-serif; font-size:28px; font-weight:900; color:white; margin-bottom:6px; }
.newsletter-title em { color:#00c9a7; font-style:normal; }
.newsletter-sub { font-size:13px; color:rgba(255,255,255,.55); margin-bottom:20px; }
.newsletter .mc4wp-form-fields { display:flex; gap:0; max-width:500px; margin:0 auto 10px; border-radius:10px; overflow:hidden; box-shadow:0 4px 24px rgba(0,0,0,.3); }
.newsletter-input { flex:1; background:rgba(255,255,255,.08); border:1.5px solid rgba(255,255,255,.15); border-right:none; border-radius:10px 0 0 10px; padding:12px 18px; font-size:13px; color:white; outline:none; }
.newsletter-input::placeholder { color:rgba(255,255,255,.35); }
.newsletter-input:focus { background:rgba(255,255,255,.12); border-color:#00c9a7; }
.newsletter-btn { background:#00c9a7; color:#081424; border:none; border-radius:0 10px 10px 0; padding:12px 22px; font-size:13px; font-weight:800; cursor:pointer; white-space:nowrap; transition:background .18s; }
.newsletter-btn:hover { background:#00e0bc; }
.newsletter-note { font-size:11px; color:rgba(255,255,255,.35); }
.mc4wp-alert.mc4wp-error {color: red; margin-bottom: 10px;}
.mc4wp-alert.mc4wp-success {color: green; margin-bottom: 10px;}

/* ── FOOTER ── */
.site-footer { background:#081424; padding:32px 0 20px; }
.footer-inner { max-width:1440px; margin:0 auto; padding:0 18px; }
.footer-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:40px; margin-bottom:24px; }
.footer-logo { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.footer-logo-hex { width:28px; height:26px; }
.footer-logo-name { font-family:'Poppins',sans-serif; font-size:17px; font-weight:600; color:white; letter-spacing:2px; }
.footer-logo-name em { color:#00c9a7; font-style:normal; }
.footer-tagline { font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#00c9a7; margin-bottom:12px; }
.footer-brand-desc { font-size:12px; color:rgba(255,255,255,.4); line-height:1.65; max-width:240px; }
.footer-col-title { font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.5); margin-bottom:12px; }
.footer-links { display:flex; flex-direction:column; gap:8px; }
.footer-link { font-size:13px; color:rgba(255,255,255,.45); text-decoration:none; transition:color .15s; cursor:pointer; }
.footer-link:hover { color:#00c9a7; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.07); padding-top:16px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.footer-copy { font-size:11.5px; color:rgba(255,255,255,.3); }
.footer-payment { display:flex; gap:6px; align-items:center; }
.pay-chip { border:1px solid rgba(255,255,255,.15); border-radius:5px; padding:3px 8px; font-size:10px; font-weight:700; color:rgba(255,255,255,.4); }

@media(max-width:900px) {
  .features-bar-inner { grid-template-columns:1fr 1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:20px; }
}
@media(max-width:600px) {
  .features-bar-inner { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr; }
  .newsletter-form { flex-direction:column; border-radius:10px; overflow:visible; }
  .newsletter-input { border-radius:10px; border-right:1.5px solid rgba(255,255,255,.15); margin-bottom:8px; }
  .newsletter-btn { border-radius:10px; }
}


/* ── FOOTER CONTENT MODAL ── */
.fc-overlay { position:fixed; inset:0; background:rgba(0,0,0,.6); z-index:500; display:none; align-items:center; justify-content:center; padding:24px; }
.fc-overlay.open { display:flex; }
.fc-modal { background:white; border-radius:16px; width:100%; max-width:900px; max-height:82vh; display:flex; flex-direction:column; overflow:hidden; box-shadow:0 24px 60px rgba(0,0,0,.35); }
.fc-hdr { display:flex; align-items:center; justify-content:space-between; padding:20px 24px 16px; border-bottom:1px solid #e4ecf4; flex-shrink:0; }
.fc-title { font-family:'Syne',sans-serif; font-size:18px; font-weight:900; color:#0a1628; }
.fc-close { background:none; border:1px solid #d8e4f0; border-radius:8px; width:32px; height:32px; cursor:pointer; color:#8899aa; font-size:18px; line-height:1; display:flex; align-items:center; justify-content:center; }
.fc-close:hover { border-color:#0a1628; color:#0a1628; }
.fc-body { padding:20px 24px 24px; overflow-y:auto; font-size:13.5px; line-height:1.8; color:#3a4a5a; }
.fc-body p { margin-bottom:12px; }
.fc-body h4 { font-family:'Syne',sans-serif; font-size:13px; font-weight:800; color:#0a1628; margin:18px 0 8px; text-transform:uppercase; letter-spacing:.05em; }
.fc-body ul { margin:0 0 12px 18px; }
.fc-body ul li { margin-bottom:6px; }
.fc-body a { color:#00c9a7; }

/* ── CHECKOUT OVERLAY ── */
.co-overlay { position:fixed; inset:0; background:rgba(0,0,0,.6); z-index:600; display:none; align-items:center; justify-content:center; padding:16px; }
.co-overlay.open { display:flex; }
.co-modal { background:#f5f8fc; border-radius:18px; width:100%; max-width:820px; max-height:92vh; display:flex; flex-direction:column; overflow:hidden; box-shadow:0 28px 80px rgba(0,0,0,.4); }

/* Checkout header */
.co-hdr { background:#0a1628; color:white; padding:18px 24px; display:flex; align-items:center; justify-content:space-between; flex-shrink:0; }
.co-hdr-title { font-family:'Syne',sans-serif; font-size:17px; font-weight:900; }
.co-hdr-steps { display:flex; gap:6px; align-items:center; }
.co-step { font-size:10px; font-weight:700; padding:3px 10px; border-radius:10px; border:1px solid rgba(255,255,255,.2); color:rgba(255,255,255,.5); }
.co-step.active { background:#00c9a7; color:#0a1628; border-color:#00c9a7; }
.co-step.done { background:rgba(0,201,167,.2); color:#00c9a7; border-color:rgba(0,201,167,.4); }
.co-close { background:none; border:1px solid rgba(255,255,255,.2); border-radius:8px; color:rgba(255,255,255,.6); width:30px; height:30px; cursor:pointer; font-size:16px; display:flex; align-items:center; justify-content:center; }
.co-close:hover { border-color:white; color:white; }

/* Checkout body */
.co-body { flex:1; overflow-y:auto; padding:24px; display:grid; grid-template-columns:1fr 280px; gap:20px; }
@media(max-width:640px) { .co-body { grid-template-columns:1fr; } }

/* Form sections */
.co-section { background:white; border:1px solid #e0e8f0; border-radius:12px; padding:20px; margin-bottom:14px; }
.co-section-title { font-family:'Syne',sans-serif; font-size:13px; font-weight:800; color:#0a1628; margin-bottom:14px; text-transform:uppercase; letter-spacing:.05em; }
.co-field-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.co-field { display:flex; flex-direction:column; gap:5px; margin-bottom:10px; }
.co-label { font-size:11px; font-weight:700; color:#5a6a7a; letter-spacing:.04em; text-transform:uppercase; }
.co-input { border:1.5px solid #d8e4f0; border-radius:9px; padding:10px 13px; font-size:13px; color:#0a1628; outline:none; transition:border-color .15s; background:white; }
.co-input:focus { border-color:#00c9a7; }
.co-select { border:1.5px solid #d8e4f0; border-radius:9px; padding:10px 13px; font-size:13px; color:#0a1628; outline:none; background:white; width:100%; appearance:none; cursor:pointer; }

/* Payment method tiles */
.pay-methods { display:flex; flex-direction:column; gap:10px; }
.pay-method { border:2px solid #d8e4f0; border-radius:12px; padding:14px 16px; cursor:pointer; transition:all .18s; background:white; }
.pay-method:hover { border-color:#00c9a7; background:#f0fdf9; }
.pay-method.selected { border-color:#00c9a7; background:#f0fdf9; box-shadow:0 0 0 3px rgba(0,201,167,.12); }
.pay-method-hdr { display:flex; align-items:center; gap:10px; }
.pay-method-icon { font-size:20px; width:36px; text-align:center; flex-shrink:0; }
.pay-method-name { font-size:13px; font-weight:700; color:#0a1628; }
.pay-method-chips { display:flex; gap:4px; flex-wrap:wrap; margin-top:2px; }
.pay-chip-sm { font-size:9px; font-weight:700; background:#f0f4fa; color:#6a7a8e; border-radius:4px; padding:1px 6px; }
.pay-chip-sm.teal { background:#e0faf5; color:#007d67; }
.pay-method-badge { margin-left:auto; font-size:9px; font-weight:800; padding:2px 8px; border-radius:10px; flex-shrink:0; }
.badge-recommended { background:#00c9a7; color:#0a1628; }
.badge-popular { background:#e8eef6; color:#4a5a70; }
.badge-discount { background:#fff0e8; color:#b54000; }
.pay-method-detail { margin-top:10px; padding-top:10px; border-top:1px solid #e8f0f8; display:none; font-size:12px; color:#5a6a7a; line-height:1.65; }
.pay-method.selected .pay-method-detail { display:block; }

/* Crypto detail */
.crypto-options { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.crypto-btn { border:1.5px solid #d8e4f0; border-radius:8px; padding:6px 12px; font-size:11px; font-weight:700; cursor:pointer; background:white; color:#4a5a70; transition:all .15s; display:flex; align-items:center; gap:5px; }
.crypto-btn.on { border-color:#00c9a7; background:#e0faf5; color:#007d67; }
.crypto-note { font-size:11px; color:#00875a; background:#e8f8f0; border-radius:7px; padding:7px 10px; margin-top:8px; }
.wire-steps { margin-top:8px; }
.wire-step { display:flex; gap:8px; align-items:flex-start; margin-bottom:6px; font-size:12px; }
.wire-step-num { width:20px; height:20px; border-radius:50%; background:#0a1628; color:white; font-size:9px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:1px; }

/* Order summary sidebar */
.co-summary { position:sticky; top:0; }
.co-summary-box { background:white; border:1px solid #e0e8f0; border-radius:12px; padding:18px; }
.co-sum-title { font-family:'Syne',sans-serif; font-size:12px; font-weight:800; color:#0a1628; text-transform:uppercase; letter-spacing:.06em; margin-bottom:12px; }
.co-sum-items { max-height:200px; overflow-y:auto; margin-bottom:12px; }
.co-sum-item { display:flex; align-items:center; gap:8px; padding:7px 0; border-bottom:1px solid #f0f4f8; }
.co-sum-item:last-child { border-bottom:none; }
.co-sum-dot { width:8px; height:8px; border-radius:50%; background:#00c9a7; flex-shrink:0; }
.co-sum-name { font-size:11.5px; font-weight:600; color:#0a1628; flex:1; }
.co-sum-sz { font-size:10px; color:#8899aa; }
.co-sum-price { font-size:12px; font-weight:700; color:#0a1628; white-space:nowrap; }
.co-sum-row { display:flex; justify-content:space-between; font-size:12px; color:#6a7a8e; margin-bottom:6px; }
.co-sum-total { display:flex; justify-content:space-between; font-family:'Syne',sans-serif; font-size:16px; font-weight:900; color:#0a1628; margin-top:10px; padding-top:10px; border-top:1px solid #e0e8f0; }
.co-discount-note { font-size:10.5px; color:#00875a; background:#e8f8f0; border-radius:6px; padding:6px 9px; margin-top:8px; font-weight:600; }
.co-promo-row { display:flex; gap:6px; margin-top:10px; }
.co-promo-input { flex:1; border:1.5px solid #d8e4f0; border-radius:8px; padding:8px 10px; font-size:11px; outline:none; color:#0a1628; }
.co-promo-input:focus { border-color:#00c9a7; }
.co-promo-btn { background:#0a1628; color:white; border:none; border-radius:8px; padding:8px 12px; font-size:11px; font-weight:700; cursor:pointer; }

/* Footer button */
.co-ftr { padding:16px 24px; border-top:1px solid #e0e8f0; background:white; flex-shrink:0; display:flex; gap:10px; align-items:center; }
.co-next-btn { flex:1; background:#00c9a7; color:#0a1628; border:none; border-radius:10px; padding:13px; font-size:14px; font-weight:800; cursor:pointer; transition:background .18s; }
.co-next-btn:hover { background:#00e0bc; }
.co-back-btn { background:#f0f4fa; color:#6a7a8e; border:none; border-radius:10px; padding:13px 18px; font-size:13px; font-weight:600; cursor:pointer; }
.co-back-btn:hover { background:#e0e8f4; color:#0a1628; }
.co-security-note { font-size:10px; color:#8899aa; display:flex; align-items:center; gap:4px; flex-shrink:0; }

/* Success screen */
.co-success { text-align:center; padding:40px 24px; display:none; flex-direction:column; align-items:center; }
.co-success.show { display:flex; }
.co-success-icon { font-size:56px; margin-bottom:16px; }
.co-success-title { font-family:'Syne',sans-serif; font-size:22px; font-weight:900; color:#0a1628; margin-bottom:8px; }
.co-success-sub { font-size:14px; color:#6a7a8e; line-height:1.7; max-width:420px; margin-bottom:24px; }
.co-order-ref { background:#e0faf5; border-radius:10px; padding:12px 24px; font-family:'Syne',sans-serif; font-size:20px; font-weight:900; color:#007d67; letter-spacing:.06em; margin-bottom:16px; }
.co-success-steps { text-align:left; background:#f5f8fc; border-radius:12px; padding:16px 20px; max-width:400px; width:100%; }
.co-success-step { display:flex; gap:10px; align-items:flex-start; margin-bottom:10px; font-size:12.5px; color:#4a5a6a; line-height:1.5; }
.co-success-step:last-child { margin-bottom:0; }
.co-ss-num { width:22px; height:22px; border-radius:50%; background:#0a1628; color:white; font-size:10px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; }

/* ── COA TAB ── */
.coa-doc { background:#f7f9fc; border:1px solid var(--border); border-radius:12px; overflow:hidden; font-size:12.5px; }
.coa-doc-head { background:var(--navy); color:white; padding:16px 20px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.coa-doc-brand { font-family:'Poppins',sans-serif; font-weight:600; font-size:16px; display:flex; align-items:center; gap:8px; letter-spacing:1.5px; }
.coa-doc-hex { width:22px; height:20px; flex-shrink:0; }
.coa-doc-brand em { color:#00c9a7; font-style:normal; }
.coa-doc-tagline { font-size:8.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:#00c9a7; margin-top:3px; }
.coa-doc-ttl { font-size:16px; font-weight:800; }
.coa-doc-sub { font-size:10px; color:rgba(255,255,255,.5); margin-top:2px; }
.coa-stamp { width:50px; height:50px; border-radius:50%; border:2px solid #00c9a7; display:flex; flex-direction:column; align-items:center; justify-content:center; font-size:7.5px; font-weight:800; color:#00c9a7; text-align:center; line-height:1.3; flex-shrink:0; }
.coa-meta-grid { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid var(--border); }
.coa-mc { padding:10px 14px; border-right:1px solid var(--border); }
.coa-mc:last-child { border-right:none; }
.coa-mc-lbl { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:var(--muted); margin-bottom:2px; }
.coa-mc-val { font-size:12.5px; font-weight:700; color:var(--navy); }
.coa-tbl { width:100%; border-collapse:collapse; }
.coa-tbl th { background:#eef2f7; font-size:9.5px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; color:var(--muted); padding:7px 14px; text-align:left; border-bottom:1px solid var(--border); }
.coa-tbl td { padding:8px 14px; border-bottom:1px solid #f0f3f7; color:var(--navy); vertical-align:middle; }
.coa-tbl tr:last-child td { border-bottom:none; }
.coa-tbl td:first-child { font-weight:600; }
.coa-tbl td:nth-child(2) { font-size:11px; color:var(--muted); }
.coa-tbl td:nth-child(3) { font-size:11.5px; color:var(--muted); }
.coa-pass { display:inline-flex; align-items:center; gap:3px; background:#d6f0e0; color:#1a5c38; font-size:10px; font-weight:800; padding:2px 8px; border-radius:20px; }
.coa-hplc { padding:14px 16px; border-top:1px solid var(--border); }
.coa-hplc-ttl { font-size:9.5px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; color:var(--muted); margin-bottom:10px; }
.coa-bar-row { display:flex; align-items:center; gap:10px; margin-bottom:6px; }
.coa-bar-lbl { font-size:10.5px; color:var(--muted); width:120px; flex-shrink:0; text-align:right; }
.coa-bar-track { flex:1; background:#e8edf2; border-radius:3px; height:14px; overflow:hidden; }
.coa-bar-fill { height:100%; border-radius:3px; display:flex; align-items:center; justify-content:flex-end; padding-right:6px; font-size:9.5px; font-weight:800; color:white; }
.coa-sig-row { display:flex; align-items:flex-end; gap:20px; padding:12px 16px; border-top:1px solid var(--border); }
.coa-sig { flex:1; }
.coa-sig-line { border-top:1px solid #aab; margin-bottom:4px; }
.coa-sig-lbl { font-size:9.5px; color:var(--muted); }
.coa-verified { display:flex; align-items:center; gap:8px; background:#d6f0e0; border-radius:8px; padding:8px 12px; flex-shrink:0; }
.coa-verified-icon { width:26px; height:26px; border-radius:50%; background:#1a5c38; display:flex; align-items:center; justify-content:center; color:white; font-size:12px; flex-shrink:0; }
.coa-verified-txt strong { display:block; font-size:11px; color:#1a5c38; }
.coa-verified-txt span { font-size:10px; color:#2d7a4f; }
.coa-footer { background:#eef2f7; border-top:1px solid var(--border); padding:12px 16px; display:flex; align-items:center; justify-content:end; gap:12px; }
.coa-footer-txt { font-size:10.5px; color:var(--muted); line-height:1.5; }
.coa-dl-btn { display:inline-flex; align-items:center; gap:6px; background:var(--navy); color:white; font-size:11px; font-weight:700; padding:7px 14px; border-radius:7px; border:none; cursor:pointer; transition:background .15s; white-space:nowrap; flex-shrink:0; }
.coa-dl-btn:hover { background:#1a3a5c; }

.popup-loader{min-height:300px;display:flex;align-items:center;justify-content:center;}
.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#000;border-radius:50%;animation:spin .8s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}

button.button{background:#0a1628!important;color:#fff!important;border:none!important;border-radius:8px!important;padding:15px 20px!important;font-size:14px!important;font-weight:700!important;cursor:pointer!important;margin-top:20px!important;}

#coa-pdf-viewer{max-width:900px;margin:auto;}
#coa-pdf-viewer canvas{width:100%;height:auto;display:block;margin-bottom:25px;}

.woocommerce-account{background:var(--paper);}
.woocommerce-account .woocommerce{display:flex;flex-wrap:wrap;gap:15px;align-items:flex-start;}
.woocommerce-account .woocommerce-error,.woocommerce-account .woocommerce-info,.woocommerce-account .woocommerce-message{flex:0 0 100%;width:100%;}

.woocommerce-account .woocommerce-MyAccount-navigation{flex:0 0 260px;}
.woocommerce-account .woocommerce-MyAccount-navigation ul{margin:0;padding:15px 0;list-style:none;background:#fff;border:1px solid var(--border);border-radius:16px;}
.woocommerce-account .woocommerce-MyAccount-navigation li+li{margin-top:4px;}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:13px 16px;color:var(--navy);text-decoration:none;font-size:15px;font-weight:600;transition:.25s;}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{background:var(--paper);color:var(--teal);}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{background:rgba(0,201,167,.08);border-left:3px solid var(--teal);color:var(--navy);font-weight:700;}

.woocommerce-account .woocommerce-MyAccount-content{flex:1;background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px;}
.woocommerce-account .woocommerce-MyAccount-content h2,.woocommerce-account .woocommerce-MyAccount-content h3{margin:0 0 18px;color:var(--navy);}
.woocommerce-account .woocommerce-MyAccount-content p{margin:0 0 1rem;line-height:1.8;color:#5d6b7a;}
.woocommerce-account .woocommerce-MyAccount-content strong{color:var(--navy);}
.woocommerce-account .woocommerce-MyAccount-content a{color:var(--teal);text-decoration:none;font-weight:600;}
.woocommerce-account .woocommerce-MyAccount-content a:hover{color:var(--navy);text-decoration:underline;}
.woocommerce-account .woocommerce-MyAccount-content>p:first-child{background:var(--paper);border:1px solid var(--border);border-radius:16px;padding:18px 22px;margin-bottom:24px;color:var(--navy);}

.woocommerce-account .form-row{margin-bottom:18px;}
.woocommerce-account .form-row label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--navy);}
.woocommerce-account input.input-text,.woocommerce-account textarea,.woocommerce-account select{width:100%;min-height:48px;padding:.75rem 1rem;border:1px solid #ddd;border-radius:4px;background:#fff;transition:.25s;}
.woocommerce-account textarea{min-height:120px;resize:vertical;}
.woocommerce-account input.input-text:focus,.woocommerce-account textarea:focus,.woocommerce-account select:focus,.woocommerce-account .select2-container--default.select2-container--focus .select2-selection--single{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(0,201,167,.08);}

.woocommerce-account .select2-container{width:100%!important;}
.woocommerce-account .select2-container--default .select2-selection--single{height:48px;border:1px solid #ddd;border-radius:4px;}
.woocommerce-account .select2-container--default .select2-selection__rendered{line-height:32px;padding-left:14px;}
.woocommerce-account .select2-container--default .select2-selection__arrow{height:46px;}

.woocommerce-account fieldset{margin-top:32px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--paper);}
.woocommerce-account fieldset legend{padding:0 8px;color:var(--navy);font-size:1rem;font-weight:700;}
.woocommerce-account fieldset .form-row:last-child{margin-bottom:0;}

.woocommerce-account .button,.woocommerce-account button.button,.woocommerce-account input.button{border-radius:10px;padding:12px 22px;transition:.25s;}

.woocommerce-account table.shop_table{margin:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;border-collapse:separate;border-spacing:0;}
.woocommerce-account table.shop_table th{background:var(--paper);color:var(--navy);font-weight:700;}
.woocommerce-account table.shop_table th,.woocommerce-account table.shop_table td{padding:14px;}

.woocommerce-account address{line-height:1.8;}
.woocommerce-account .woocommerce-Address{padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--paper);}

.woocommerce-notices-wrapper{width:100%;}
.woocommerce-account .woocommerce-message,.woocommerce-account .woocommerce-info,.woocommerce-account .woocommerce-error{border:1px solid var(--border);border-left:4px solid var(--teal);background:var(--paper);}
.woocommerce-account .woocommerce-error{border-left-color:#d63638;}

.woocommerce-account .woocommerce-MyAccount-content ul{margin:1rem 0;padding-left:1.2rem;}
.woocommerce-account .woocommerce-MyAccount-content li{margin-bottom:.5rem;}

button.button,button.woocommerce-button,.wc-block-components-checkout-place-order-button{width:100%;background:var(--teal)!important;color:var(--navy)!important;border:none;border-radius:10px;padding:13px;font-weight:700;font-size:14px;cursor:pointer;transition:background .15s;text-align:center;text-decoration:none;}
.cart-checkout-btn.disabled{opacity:.5; pointer-events:none; cursor:not-allowed;}

/* ═══════════ PEPTIDE CALCULATOR MODAL ═══════════ */
.pc-overlay{position:fixed;inset:0;background:rgba(8,20,36,.62);z-index:500;display:none;align-items:flex-start;justify-content:center;padding:28px 16px;overflow-y:auto;}
.pc-overlay.open{display:flex;}
.pc-modal{background:var(--paper);border-radius:20px;width:100%;max-width:860px;margin:auto 0;box-shadow:0 30px 80px rgba(8,20,36,.4);overflow:hidden;}
.pc-head{background:linear-gradient(160deg,#081424 0%,#0a1e38 50%,#0e2a4a 100%);color:#fff;padding:26px 30px;position:relative;}
.pc-head h2{font-family:'Syne',sans-serif;font-size:26px;font-weight:900;line-height:1.1;margin-bottom:6px;}
.pc-head h2 em{color:var(--teal);font-style:normal;}
.pc-head p{font-size:12.5px;color:rgba(255,255,255,.7);max-width:560px;}
.pc-x{position:absolute;top:20px;right:22px;width:34px;height:34px;border-radius:9px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;font-size:17px;cursor:pointer;line-height:1;}
.pc-x:hover{background:rgba(255,255,255,.18);}
.pc-body{padding:26px 30px 30px;}
.pc-step{margin-bottom:24px;}
.pc-step-label{display:flex;align-items:center;gap:10px;font-family:'Poppins',sans-serif;font-size:13.5px;font-weight:600;color:var(--navy);margin-bottom:12px;}
.pc-step-ico{width:30px;height:30px;flex:none;border-radius:8px;background:#e0f8f3;display:flex;align-items:center;justify-content:center;}
.pc-opts{display:flex;flex-wrap:wrap;gap:9px;}
.pc-opt{border:1.5px solid var(--border);background:var(--card);border-radius:10px;padding:11px 16px;font-size:13px;font-weight:700;color:var(--navy);cursor:pointer;transition:all .15s;display:flex;flex-direction:column;align-items:center;gap:7px;min-width:70px;}
.pc-opt:hover{border-color:var(--sky);color:var(--sky);}
.pc-opt.on{border-color:var(--teal);background:#eafbf7;color:#068a72;box-shadow:0 0 0 3px rgba(0,201,167,.14);}
.pc-opt svg{display:block;}
.pc-input{margin-top:10px;width:100%;max-width:260px;border:1.5px solid var(--border);border-radius:10px;padding:11px 14px;font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:var(--navy);display:none;}
.pc-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(0,201,167,.14);}
.pc-input.show{display:block;}
.pc-result{background:var(--card);border:1.5px solid var(--border);border-radius:16px;padding:24px;margin-top:6px;}
.pc-result-syringe{margin:0 auto 18px;display:block;max-width:100%;}
.pc-result-text{text-align:center;font-family:'Poppins',sans-serif;font-size:15px;color:var(--navy);line-height:1.6;}
.pc-result-text b{color:#068a72;}
.pc-units{font-family:'Syne',sans-serif;font-size:34px;font-weight:900;color:var(--teal);display:block;margin:2px 0;}
.pc-warn{display:none;margin-top:14px;background:#fff4e5;border:1.5px solid #ffd9a8;color:#9a5b00;border-radius:12px;padding:13px 16px;font-size:12.5px;font-weight:600;text-align:center;}
.pc-warn.show{display:block;}
.pc-note{font-size:11px;color:var(--muted);text-align:center;margin-top:16px;line-height:1.5;}
/* ── RECONSTITUTION GUIDE ACCORDION ── */
.pc-guide{margin-top:30px;border-top:1px solid var(--border);padding-top:26px;}
.pc-guide-h{font-family:'Syne',sans-serif;font-size:20px;font-weight:900;color:var(--navy);margin-bottom:6px;}
.pc-guide-h em{color:var(--teal);font-style:normal;}
.pc-guide-intro{font-size:12.5px;color:var(--muted);line-height:1.6;margin-bottom:18px;max-width:640px;}
.pc-acc{border:1.5px solid var(--border);border-radius:12px;overflow:hidden;background:var(--card);margin-bottom:10px;}
.pc-acc-head{width:100%;display:flex;align-items:center;gap:12px;padding:15px 18px;background:var(--card);border:none;cursor:pointer;text-align:left;font-family:'Poppins',sans-serif;font-size:13.5px;font-weight:600;color:var(--navy);transition:background .15s;}
.pc-acc-head:hover{background:#f7fbfa;}
.pc-acc-num{width:26px;height:26px;flex:none;border-radius:7px;background:#e0f8f3;color:#068a72;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:'Inter',sans-serif;}
.pc-acc-title{flex:1;}
.pc-acc-chev{flex:none;color:var(--muted);transition:transform .25s;}
.pc-acc.open .pc-acc-chev{transform:rotate(180deg);color:var(--teal);}
.pc-acc-panel{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.pc-acc.open .pc-acc-panel{max-height:600px;}
.pc-acc-inner{padding:2px 18px 18px 56px;font-size:12.5px;color:#4a5a6e;line-height:1.7;}
.pc-acc-inner p{margin-bottom:10px;}
.pc-acc-inner strong{color:var(--navy);}
.pc-acc-inner ul{margin:0 0 6px 0;padding-left:18px;}
.pc-acc-inner li{margin-bottom:5px;}
@media(max-width:560px){.pc-acc-inner{padding-left:18px;}}
.pc-cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px;}
.pc-cta button{border:none;border-radius:9px;padding:11px 20px;font-size:12.5px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;}
.pc-cta .pc-cta-primary{background:var(--navy);color:#fff;}
.pc-cta .pc-cta-primary:hover{background:#1a2e4a;}
.pc-cta .pc-cta-ghost{background:transparent;border:1.5px solid var(--border);color:var(--navy);}
.pc-cta .pc-cta-ghost:hover{border-color:var(--navy);}
@media(max-width:560px){.pc-body{padding:20px;}.pc-head{padding:22px 20px;}}

/*  Responsive adjustments */
@media (max-width:1024px){
  .store-layout{grid-template-columns:1fr;padding:18px 16px;gap:18px;}
  .sidebar{display:none;}
  .hero-inner{grid-template-columns:1fr;gap:28px;}
  .hero-cards,.features-bar-inner,.footer-grid{grid-template-columns:repeat(2,1fr);}
  .top-nav-inner{gap:14px;}
  .product-grid:not(.list-view){grid-template-columns:repeat(3,1fr);}
  #productGrid.list-view .p-card{grid-template-columns:60px 1fr;row-gap:12px;padding:14px;}
  .lv-sizes-col,.lv-toggle-col,.lv-price-col,.lv-cart-col{grid-column:2;width:100%;text-align:left;}
  .co-body{grid-template-columns:1fr;}
  .co-summary{position:static;}
}

@media (max-width:991px){
  .woocommerce-account .woocommerce{flex-direction:column;}
  .woocommerce-account .woocommerce-MyAccount-navigation{flex:0 0 100%;width:100%;}
  .woocommerce-account .woocommerce-MyAccount-content{width:100%;padding:22px;}
}

@media (max-width:768px){
  body{font-size:13px;line-height:1.6;}

  .top-nav-inner{flex-wrap:wrap;height:auto;padding:10px 14px;gap:10px;}
  .nav-logo-wrap{width:100%;justify-content:center;order:1;}
  .nav-search-wrap{width:100%;max-width:none;order:2;}
  .nav-search{font-size:12px;padding:10px 14px 10px 40px;}
  .nav-right{width:100%;display:flex;gap:10px;order:3;}
  .nav-cart-btn,.nav-acct-btn{flex:1;font-size:12px;height:40px;padding:0 12px;}

  .hero{padding:20px 0;}
  .hero-eyebrow{font-size:10px;padding:4px 10px;margin-bottom:10px;}
  .hero-title{font-size:28px;line-height:1.15;}
  .hero-sub{font-size:13px;margin-bottom:14px;}
  .hero-btns{flex-direction:column;}
  .hero-btn-primary,.hero-btn-secondary{width:100%;font-size:13px;padding:11px 18px;}
  .hero-stats{flex-wrap:wrap;gap:18px;}
  .hero-stat-num{font-size:18px;}
  .hero-stat-lbl{font-size:9px;}
  .hero-card{padding:10px;gap:8px;}
  .hero-card-icon{width:28px;height:28px;font-size:14px;}
  .hero-card-title{font-size:11px;}
  .hero-card-sub{font-size:10px;}

  .store-layout{padding:14px;gap:14px;}

  .toolbar{flex-wrap:wrap;gap:8px;margin-bottom:14px;}
  .result-count{font-size:12px;}
  .sort-sel{flex:1;font-size:12px;}
  .view-toggle{width:100%;}

  .product-grid:not(.list-view){grid-template-columns:repeat(2,1fr);gap:14px;}
  .p-card{border-radius:12px;}
  .p-body{padding:12px 12px 0;}
  .p-bottom{padding:10px 0px;}
  .p-cat-tag{font-size:8px;}
  .p-name{font-size:15px;line-height:1.25;}
  .p-aka{font-size:10px;}
  .p-purity{font-size:10px;margin-bottom:8px;}
  .p-price{font-size:20px;}
  .p-price-old{font-size:11px;}
  .p-price-save{font-size:10px;}
  .psize{font-size:9px;padding:3px 7px;}
  .pack-label{font-size:10px;padding:4px 8px;}
  .qty-stepper .qty-step-btn{width:22px;height:22px;font-size:15px;}
  .qty-stepper .qty-step-val{font-size:12px;}
  .add-btn{font-size:12px;padding:10px;border-radius:8px;}
  .p-img{aspect-ratio: auto;text-align:center;margin-bottom:8px;}


  #productGrid.list-view{display:block;}
  #productGrid.list-view .p-card{display:grid;grid-template-columns:80px 1fr;grid-template-areas:"img title""img purity""img sizes""img price""img qty""img cart";gap:8px 12px;padding:12px;align-items:start;}
  #productGrid.list-view .p-img-wrap{grid-area:img;width:80px;height:80px;margin:0;}
  #productGrid.list-view .lv-title-col{grid-area:title;}
  #productGrid.list-view .lv-toggle-col{grid-area:purity;}
  #productGrid.list-view .lv-sizes-col{grid-area:sizes;}
  #productGrid.list-view .lv-price-col{grid-area:price;}
  #productGrid.list-view .lv-qty-col{grid-area:qty;}
  #productGrid.list-view .lv-cart-col{grid-area:cart;}
  #productGrid.list-view .qty-stepper,#productGrid.list-view .add-btn{width:100%;}


  .modal{max-height:95vh;}
  .modal-header{flex-direction:column;align-items:flex-start;padding:16px;gap:14px;}
  .modal-price-box{margin-left:0;text-align:left;}
  .modal-title{font-size:20px;}
  .modal-price{font-size:24px;}
  .modal-tabs{overflow-x:auto;white-space:nowrap;}
  .modal-body{padding:16px;}
  .detail-label{font-size:8px;}
  .detail-text{font-size:12px;line-height:1.7;}
  .rtag,.sch{font-size:9px;}

  .cart-hdr{padding:16px;}
  .cart-title{font-size:16px;}
  .cart-items{padding:12px 16px;}
  .cart-item{gap:10px;}
  .ci-name{font-size:12px;}
  .ci-price{font-size:11px;}
  .cart-ftr{padding:16px;}
  .cart-line{font-size:12px;}
  .cart-total-row{font-size:14px;}
  .cart-checkout-btn{font-size:13px;padding:12px;}

  .co-body{padding:16px;gap:14px;}
  .co-field-row{grid-template-columns:1fr;}
  .co-section{padding:16px;}
  .co-section-title{font-size:12px;}
  .co-label{font-size:10px;}
  .co-input,.co-select{font-size:12px;padding:10px;}
  .pay-method{padding:12px;}
  .pay-method-name{font-size:12px;}
  .pay-method-detail{font-size:11px;}
  .co-ftr{flex-direction:column;padding:16px;}
  .co-next-btn,.co-back-btn{width:100%;font-size:13px;padding:12px;}

  .coa-doc-head{padding:14px;}
  .coa-doc-ttl{font-size:14px;}
  .coa-doc-sub{font-size:9px;}
  .coa-meta-grid{grid-template-columns:repeat(2,1fr);}
  .coa-mc{padding:10px;}
  .coa-mc-lbl{font-size:8px;}
  .coa-mc-val{font-size:11px;}
  .coa-tbl{display:block;overflow-x:auto;white-space:nowrap;}
  .coa-tbl th{font-size:8px;padding:6px 10px;}
  .coa-tbl td{font-size:11px;padding:7px 10px;}
  .coa-footer{padding:12px;}
  .coa-footer-txt{font-size:10px;}
  .coa-dl-btn{font-size:11px;padding:8px 14px;}

  .newsletter{padding:28px 16px;}
  .newsletter-title{font-size:24px;}
  .newsletter-sub{font-size:12px;}
  .newsletter-form{flex-direction:column;}
  .newsletter-input{border-radius:10px;border-right:1.5px solid rgba(255,255,255,.15);margin-bottom:8px;font-size:12px;padding:11px 14px;}
  .newsletter-btn{border-radius:10px;font-size:12px;padding:11px 16px;}

  .features-bar-inner,.footer-grid{grid-template-columns:1fr;}
  .footer-brand-desc{font-size:11px;}
  .footer-col-title{font-size:9px;}
  .footer-link{font-size:12px;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .footer-copy{font-size:10px;}
  .pay-chip{font-size:9px;padding:3px 7px;}

  .top-nav-inner{flex-wrap:wrap;padding:10px;height:auto;}
  .nav-logo-wrap{width:100%;display:flex;justify-content:center;order:1;}
  .nav-search-wrap{width:100%;order:2;}
  .nav-search{width:100%;}
  .nav-right{width:100%;display:flex;justify-content:space-between;gap:10px;order:3;}
  .nav-cart-btn,.nav-acct-btn{flex:1;}

  .woocommerce-account .woocommerce-MyAccount-navigation ul{padding:6px;}
  .woocommerce-account .woocommerce-MyAccount-navigation a{padding:12px 14px;font-size:14px;}
  .woocommerce-account .woocommerce-MyAccount-content{padding:18px;}
  .woocommerce-account table.shop_table{display:block;overflow-x:auto;white-space:nowrap;}
  .woocommerce-account fieldset{padding:16px;}

  .woocommerce-account .woocommerce{display:block;}
  .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:100%;flex:0 0 100%;}
  .woocommerce-account .woocommerce-MyAccount-content{padding:16px;border-radius:12px;}
  .woocommerce-account .woocommerce-MyAccount-navigation ul{padding:6px;}
  .woocommerce-account .woocommerce-MyAccount-navigation a{padding:10px 14px;font-size:13px;}
  .woocommerce-account h2,.woocommerce-account h3{font-size:20px;}
  .woocommerce-account p,.woocommerce-account label,.woocommerce-account address{font-size:13px;line-height:1.6;}
  .woocommerce-account input.input-text,.woocommerce-account textarea,.woocommerce-account select{min-height:44px;padding:10px 12px;font-size:13px;}
  .woocommerce-account .button,.woocommerce-account button.button,.woocommerce-account input.button{width:100%;padding:12px;font-size:13px;}
  .woocommerce-account table.shop_table,.woocommerce-account table.shop_table thead,.woocommerce-account table.shop_table tbody,.woocommerce-account table.shop_table tr,.woocommerce-account table.shop_table th,.woocommerce-account table.shop_table td{display:block;width:100%;}
  .woocommerce-account table.shop_table thead{display:none;}
  .woocommerce-account table.shop_table tr{margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fff;}
  .woocommerce-account table.shop_table td{padding:6px 0;border:none;text-align:left;white-space:normal;}
  .woocommerce-account table.shop_table td:before{content:attr(data-title);display:block;font-size:11px;font-weight:700;color:var(--navy);margin-bottom:2px;}
  .woocommerce-account .woocommerce-orders-table__cell-order-actions .button{display:inline-block;width:auto;}
  .woocommerce-account .woocommerce-Address{padding:14px;}
  .woocommerce-account fieldset{padding:14px;margin-top:20px;}
  .woocommerce-account .form-row{margin-bottom:14px;}
  .woocommerce-account .woocommerce-message,.woocommerce-account .woocommerce-info,.woocommerce-account .woocommerce-error{padding:12px;font-size:12px;}
  .woocommerce-account .select2-container--default .select2-selection--single{height:44px;}
  .woocommerce-account .select2-container--default .select2-selection__rendered{line-height:42px;font-size:13px;}
  .woocommerce-account .select2-container--default .select2-selection__arrow{height:42px;}

  .woocommerce-order-details,.woocommerce-order-downloads,.woocommerce-customer-details{margin-top:20px;}
  .woocommerce-order-details h2,.woocommerce-order-downloads h2,.woocommerce-customer-details h2{font-size:18px;margin-bottom:12px;}
  .woocommerce-order-details table.shop_table,.woocommerce-order-details table.shop_table thead,.woocommerce-order-details table.shop_table tbody,.woocommerce-order-details table.shop_table tr,.woocommerce-order-details table.shop_table th,.woocommerce-order-details table.shop_table td,.woocommerce-order-downloads table.shop_table,.woocommerce-order-downloads table.shop_table thead,.woocommerce-order-downloads table.shop_table tbody,.woocommerce-order-downloads table.shop_table tr,.woocommerce-order-downloads table.shop_table th,.woocommerce-order-downloads table.shop_table td{display:block;width:100%;}
  .woocommerce-order-details table.shop_table thead,.woocommerce-order-downloads table.shop_table thead{display:none;}
  .woocommerce-order-details table.shop_table tr,.woocommerce-order-downloads table.shop_table tr{padding:12px;margin-bottom:14px;border:1px solid var(--border);border-radius:10px;background:#fff;}
  .woocommerce-order-details table.shop_table td,.woocommerce-order-downloads table.shop_table td{padding:6px 0;border:none;text-align:left;white-space:normal;}
  .woocommerce-order-details table.shop_table td:before,.woocommerce-order-downloads table.shop_table td:before{content:attr(data-title);display:block;font-size:11px;font-weight:700;color:var(--navy);margin-bottom:2px;}
  .woocommerce-order-details tfoot tr{border-top:1px solid var(--border);padding-top:10px;}
  .woocommerce-customer-details address{padding:14px;font-size:13px;line-height:1.7;border:1px solid var(--border);border-radius:10px;background:var(--paper);}
}

@media (max-width:480px){

  body{font-size:12px;}

  .product-grid:not(.list-view){grid-template-columns:1fr;}

  .hero-title{font-size:24px;}
  .hero-sub{font-size:12px;}
  .hero-cards{grid-template-columns:1fr;}

  .p-name{font-size:14px;}
  .p-price{font-size:18px;}
  .add-btn{font-size:11px;padding:9px;}

  .modal-title{font-size:18px;}
  .modal-price{font-size:20px;}

  .coa-meta-grid{grid-template-columns:1fr;}
  .coa-doc-head{flex-direction:column;align-items:flex-start;gap:12px;}
  .coa-footer{flex-direction:column;align-items:flex-start;}
  .coa-dl-btn{width:100%;justify-content:center;}

  .newsletter-title{font-size:22px;}
  .footer-logo-name{font-size:15px;}

  .woocommerce-account .woocommerce-MyAccount-content{padding:14px;}
  .woocommerce-account h2,.woocommerce-account h3{font-size:18px;}
  .woocommerce-account p,.woocommerce-account label,.woocommerce-account address{font-size:12px;}
  .woocommerce-account table.shop_table tr{padding:10px;}
  .woocommerce-account table.shop_table td{font-size:12px;}
  .woocommerce-account table.shop_table td:before{font-size:10px;}
  .woocommerce-account .woocommerce-orders-table__cell-order-actions .button{font-size:11px;padding:10px;}
  .woocommerce-account .woocommerce-Address{padding:12px;}

  .woocommerce-order-details h2,.woocommerce-order-downloads h2,.woocommerce-customer-details h2{font-size:16px;}
  .woocommerce-order-details table.shop_table tr,.woocommerce-order-downloads table.shop_table tr{padding:10px;}
  .woocommerce-order-details table.shop_table td,.woocommerce-order-downloads table.shop_table td{font-size:12px;}
  .woocommerce-order-details table.shop_table td:before,.woocommerce-order-downloads table.shop_table td:before{font-size:10px;}
  .woocommerce-customer-details address{padding:12px;font-size:12px;}
}