/* ===================================================
   Biometry Peptides — "luxe" design (VIP staging build)
   =================================================== */
:root{
  --abyss:#050B14; --ink:#0A1421; --ink-2:#101E31; --ink-3:#18293F;
  --gold-1:#F6E3B0; --gold-2:#D8B45E; --gold:#C8A44E; --gold-deep:#8A6A24;
  --plat-2:#B9C4D0; --plat-3:#7C8A99;
  --signal:#17C9B4; --signal-deep:#0A7A6E;
  --txt-hi:#F4F7FA; --txt:#AEBCCA; --txt-lo:#6E7E90; --rule:rgba(255,255,255,.10);
  --f:'Archivo',system-ui,-apple-system,sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,monospace;
}

body{ background:var(--abyss) !important; color:var(--txt) !important; font-family:var(--f) !important; }
body, button, input, select { font-family:var(--f) !important; }
h1,h2,h3,h4,h5,h6 { font-family:var(--f) !important; font-weight:800 !important; letter-spacing:-.03em; color:var(--txt-hi) !important; }
a { color:inherit; }
#content, .site-content, .ast-separate-container .ast-article-single, .ast-separate-container { background:transparent !important; }
.hfeed.site { background:var(--abyss); }

.foil{ background:linear-gradient(100deg,#8A6A24 0%,#C8A44E 18%,#F6E3B0 34%,#FFF6DC 42%,#F6E3B0 50%,#C8A44E 68%,#9A7A2E 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent; }

/* header */
.site-header, #masthead, .ast-primary-header-bar, .main-header-bar{
  background:linear-gradient(180deg,#050B14,#0A1421) !important;
  border-bottom:1px solid var(--rule) !important;
}
.site-header .site-title a, .site-header .ast-site-identity a{ color:var(--txt-hi) !important; }
.main-header-menu .menu-link, .ast-primary-menu > li > a{ color:var(--txt) !important; font-weight:600 !important; }
.main-header-menu .menu-link:hover, .ast-primary-menu > li > a:hover{ color:var(--gold-1) !important; }
.ast-header-break-point .site-header{ background:var(--ink) !important; }

/* buttons (generic Astra/WooCommerce buttons pick up the gold treatment too) */
.button, button[type="submit"], input[type="submit"], .wp-block-button__link,
.woocommerce a.button, .woocommerce button.button, .woocommerce #respond input#submit{
  background:linear-gradient(140deg,#F6E3B0 0%,#D8B45E 45%,#C8A44E 100%) !important;
  color:#1A1204 !important; border:none !important; border-radius:4px !important;
  font-weight:700 !important; text-transform:uppercase; letter-spacing:.5px;
  box-shadow:0 10px 30px -10px rgba(200,164,78,.5) !important;
}
.button:hover, button[type="submit"]:hover, .woocommerce a.button:hover{ filter:brightness(1.08); }

/* ---------- bpx-* : custom page-content sections (Home) ---------- */
.bpx-page{ overflow-x:hidden; }

.bpx-hero{
  position:relative; left:50%; transform:translateX(-50%); width:100vw; max-width:100vw;
  background:
    radial-gradient(1100px 620px at 78% 18%,rgba(23,201,180,.13),transparent 62%),
    radial-gradient(900px 560px at 12% 84%,rgba(200,164,78,.11),transparent 60%),
    linear-gradient(180deg,#050B14,#0A1421 62%,#050B14);
  padding:78px 6% 70px;
  display:flex; align-items:center; justify-content:center; gap:60px; flex-wrap:wrap;
}
.bpx-hero-copy{ max-width:600px; }
.bpx-kicker{ display:inline-flex; align-items:center; gap:10px; font-family:var(--f-mono); font-size:.76rem;
  padding:8px 14px; border-radius:99px; border:1px solid rgba(23,201,180,.4); color:var(--signal);
  background:rgba(23,201,180,.08); margin-bottom:26px; }
.bpx-pip{ width:6px; height:6px; border-radius:50%; background:var(--signal); box-shadow:0 0 10px rgba(23,201,180,.9); }
.bpx-hero h1{ font-size:clamp(2.2rem,4.6vw,3.6rem) !important; line-height:1.08 !important; margin:0 0 20px !important; }
.bpx-lead{ font-size:1.08rem; color:var(--txt); max-width:47ch; margin:0 0 32px; line-height:1.6; }
.bpx-actions{ display:flex; gap:12px; flex-wrap:wrap; margin-bottom:24px; }
.bpx-btn{ display:inline-flex; align-items:center; gap:10px; padding:15px 28px; border-radius:4px;
  font-weight:700; font-size:.92rem; letter-spacing:-.01em; text-decoration:none !important; transition:.2s; }
.bpx-btn-gold{ background:linear-gradient(140deg,#F6E3B0 0%,#D8B45E 45%,#C8A44E 100%); color:#1A1204 !important;
  box-shadow:0 10px 30px -10px rgba(200,164,78,.6); }
.bpx-btn-gold:hover{ filter:brightness(1.08); transform:translateY(-1px); }
.bpx-btn-glass{ background:rgba(255,255,255,.05); color:var(--txt-hi) !important; border:1px solid rgba(255,255,255,.22); }
.bpx-btn-glass:hover{ border-color:rgba(255,255,255,.5); background:rgba(255,255,255,.09); }
.bpx-fine{ font-family:var(--f-mono); font-size:.76rem; color:var(--txt-lo); max-width:46ch; line-height:1.7; }

.bpx-hero-vial{ display:flex; gap:20px; align-items:flex-end; }
.bpx-vial-card{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.16); border-radius:8px;
  padding:22px 26px; text-align:center; }
.bpx-vial-card span{ display:block; margin-top:10px; font-family:var(--f-mono); font-size:.72rem; color:var(--txt-lo); }

/* assurance rail */
.bpx-rail{ position:relative; left:50%; transform:translateX(-50%); width:100vw; max-width:100vw;
  background:linear-gradient(180deg,#030710,#050B14); border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.bpx-rail-grid{ max-width:1280px; margin:0 auto; padding:0 40px; display:grid; grid-template-columns:repeat(4,1fr); }
.bpx-ritem{ padding:34px 0 36px 30px; border-left:1px solid var(--rule); }
.bpx-ritem:first-child{ border-left:0; padding-left:0; }
.bpx-rn{ font-size:1.9rem; font-weight:800; letter-spacing:-.04em; line-height:1; }
.bpx-rl{ font-size:.85rem; color:var(--txt-lo); margin-top:9px; line-height:1.45; max-width:24ch; }

/* generic content section */
.bpx-sec{ position:relative; left:50%; transform:translateX(-50%); width:100vw; max-width:100vw;
  background:var(--abyss); padding:88px 6%; }
.bpx-sec-inner{ max-width:1280px; margin:0 auto; }
.bpx-sec-head{ text-align:center; max-width:640px; margin:0 auto 44px; }
.bpx-eyebrow{ font-family:var(--f-mono); font-size:.77rem; color:var(--gold); margin-bottom:14px; }
.bpx-sec-head p{ color:var(--txt); margin-top:14px; }

/* categories */
.bpx-cgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--rule);
  border:1px solid var(--rule); border-radius:7px; overflow:hidden; }
.bpx-ccell{ background:linear-gradient(170deg,#0C1728,#080F1B); padding:32px 30px 28px; display:flex; flex-direction:column;
  gap:12px; min-height:170px; text-decoration:none !important; transition:background .2s; }
.bpx-ccell:hover{ background:linear-gradient(170deg,#14243A,#0C1728); }
.bpx-ccell h3{ font-size:1.1rem !important; margin:0 !important; }
.bpx-ccell p{ font-size:.9rem; color:var(--txt-lo); line-height:1.55; margin:0; }
.bpx-ccell span{ font-family:var(--f-mono); font-size:.76rem; color:var(--gold); margin-top:auto; }

/* products — style the real WooCommerce archive/shortcode grid to match */
.bpx-sec ul.products, .woocommerce ul.products{
  display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:22px !important;
  list-style:none !important; padding:0 !important; margin:0 !important;
}
.woocommerce ul.products li.product{
  background:linear-gradient(170deg,#101E31,#0A1421) !important; border:1px solid var(--rule) !important;
  border-radius:6px !important; padding:0 !important; overflow:hidden !important; transition:transform .25s,box-shadow .25s !important;
}
.woocommerce ul.products li.product:hover{ transform:translateY(-4px); box-shadow:0 30px 60px -30px rgba(0,0,0,.9); }
.bpx-pvis{ position:relative; display:grid; place-items:center; padding:30px 0 24px;
  background:radial-gradient(ellipse at 50% 78%,rgba(23,201,180,.16),transparent 66%); }
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:1.05rem !important; font-weight:800 !important; color:var(--txt-hi) !important; padding:0 20px !important; margin:0 0 6px !important;
}
.woocommerce ul.products li.product .price{ font-family:var(--f-mono) !important; font-size:1.1rem !important; font-weight:600 !important;
  color:var(--txt-hi) !important; padding:0 20px !important; display:block !important; }
.woocommerce ul.products li.product .button{ margin:16px 20px 20px !important; width:calc(100% - 40px) !important; }

/* footer + compliance */
.site-footer, footer, .bp-footer-credits{ background:#030710 !important; color:var(--txt-lo) !important; border-top:1px solid var(--rule) !important; }
.site-footer a{ color:var(--txt) !important; }
.bpx-notice{ position:relative; left:50%; transform:translateX(-50%); width:100vw; max-width:100vw;
  background:#1A1204; border-top:1px solid rgba(200,164,78,.4); padding:26px 6%; }
.bpx-notice p{ font-size:.86rem; color:#C4AE7B; line-height:1.68; max-width:1000px; margin:0 auto; }
.bpx-notice strong{ color:var(--gold-1); }

@media (max-width:900px){
  .bpx-rail-grid{ grid-template-columns:repeat(2,1fr); }
  .bpx-cgrid{ grid-template-columns:1fr 1fr; }
  .bpx-sec ul.products, .woocommerce ul.products{ grid-template-columns:repeat(2,1fr) !important; }
}
@media (max-width:600px){
  .bpx-cgrid{ grid-template-columns:1fr; }
  .bpx-sec ul.products, .woocommerce ul.products{ grid-template-columns:1fr !important; }
  .bpx-rail-grid{ grid-template-columns:1fr 1fr; }
}
