/* BioLabs Research — Hims-Strength Redesign v4.0
   "Research, without the noise."
   No sage green. No medical claims. RUO only. */

*{margin:0;padding:0;box-sizing:border-box}

:root{
  --bg:#FFFFFF;
  --bg-warm:#F5F2ED;
  --bg-warm2:#EFE9E0;
  --ink:#1F1F1F;
  --ink-soft:#4A4A4A;
  --ink-muted:#8A8A8A;
  --amber:#FBCF87;
  --bronze:#9A6D2A;
  --brown:#3E2B20;
  --brown-light:#5C4636;
  --border:#E8E2D8;
  --border-light:#F0EBE2;
  --radius:24px;
  --radius-sm:12px;
  --radius-pill:999px;
  --font-display:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-logo:'Fraunces',Georgia,serif;
  --maxw:1280px;
  --transition:all .35s cubic-bezier(.25,.46,.45,.94);
  --shadow-sm:0 1px 3px rgba(31,31,31,.04);
  --shadow-md:0 4px 24px rgba(31,31,31,.06);
  --shadow-lg:0 12px 48px rgba(31,31,31,.08);
  --shadow-xl:0 24px 80px rgba(31,31,31,.10);
}

html{scroll-behavior:smooth;scroll-padding-top:88px}
body{
  font-family:var(--font-display);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:16px;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

a{color:inherit;text-decoration:none}

/* ===== RUO BAR — thin black strip ===== */
.ruo-bar{
  background:var(--ink);
  color:rgba(255,255,255,.7);
  text-align:center;
  padding:8px 20px;
  font-size:11px;
  font-weight:500;
  letter-spacing:.5px;
}
.ruo-bar strong{color:var(--amber);font-weight:600;letter-spacing:.8px}

/* ===== NAV — minimal: logo + hamburger + cart ===== */
.nav{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border-light);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 48px;
}
.nav-logo{
  display:flex;
  align-items:baseline;
  gap:1px;
  text-decoration:none;
  color:inherit;
}
.nav-logo img{width:36px;height:36px;object-fit:contain}
.nav-logo-mark{font-family:var(--font-logo);font-size:28px;font-weight:500;line-height:1;letter-spacing:-.04em;color:var(--ink);display:inline-block;margin-right:0}
.nav-logo-text{
  font-family:var(--font-logo);
  font-size:22px;
  font-weight:500;
  color:var(--ink);
  letter-spacing:-.4px;
  text-transform:lowercase;
}
.nav-right{display:flex;align-items:center;gap:20px}
.nav-cart{
  background:transparent;
  border:none;
  font-family:var(--font-display);
  font-size:14px;
  font-weight:500;
  color:var(--ink);
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 4px;
  transition:var(--transition);
}
.nav-cart:hover{opacity:.6}
.nav-cart-count{background:var(--sage);
  background:var(--ink);
  color:#fff;
  font-size:11px;
  font-weight:600;
  border-radius:var(--radius-pill);
  padding:2px 8px;
  min-width:20px;
  text-align:center;
}
.nav-hamburger{
  background:transparent;
  border:none;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:8px 4px;
}
.nav-hamburger span{
  width:22px;
  height:1.5px;
  background:var(--ink);
  transition:var(--transition);
}
.nav-menu{
  position:fixed;
  top:0;
  right:-100%;
  left:auto;
  width:min(320px,100vw);
  max-width:100vw;
  height:100vh;
  background:var(--bg);
  z-index:10001;
  transition:right .4s cubic-bezier(.25,.46,.45,.94);
  display:flex;
  flex-direction:column;
  padding:80px 40px 40px;
  box-shadow:var(--shadow-xl);
}
.nav-menu.open{right:0;left:auto}
.nav-menu-close{
  position:absolute;
  top:24px;
  right:24px;
  background:transparent;
  border:none;
  font-size:24px;
  cursor:pointer;
  color:var(--ink);
}
.nav-menu a{
  font-size:20px;
  font-weight:500;
  color:var(--ink);
  padding:16px 0;
  border-bottom:1px solid var(--border-light);
  transition:var(--transition);
}
.nav-menu a:hover{color:var(--bronze)}
.nav-overlay{
  position:fixed;
  inset:0;
  background:rgba(31,31,31,.3);
  z-index:10000;
  opacity:0;
  pointer-events:none;
  transition:opacity .3s ease;
}
.nav-overlay.open{opacity:1;pointer-events:auto}

/* ===== HERO — one headline + 2 cards ===== */
.hero{
  max-width:var(--maxw);
  margin:0 auto;
  padding:80px 48px 100px;
}
.hero-headline{
  font-family:var(--font-display);
  font-size:clamp(40px,7vw,72px);
  font-weight:500;
  line-height:1.02;
  letter-spacing:-2px;
  color:var(--ink);
  margin-bottom:16px;
  max-width:800px;
}
.hero-sub{
  font-size:18px;
  color:var(--ink-soft);
  margin-bottom:48px;
  max-width:500px;
  line-height:1.5;
}
.hero-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:var(--amber);
  color:var(--ink);
  padding:14px 32px;
  border-radius:var(--radius-pill);
  font-size:14px;
  font-weight:700;
  letter-spacing:.3px;
  transition:var(--transition);
  margin-bottom:10px;
}
.hero-cta:hover{background:var(--ink);color:var(--amber);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.hero-legal{
  font-size:12px;
  color:var(--ink-muted);
  margin:0 0 48px;
  letter-spacing:.01em;
}
.hero-cta svg{width:14px;height:14px}

.hero-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.hero-tiles{
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
.hero-tiles .hero-card{aspect-ratio:4/5}
@media(max-width:1100px){
  .hero-tiles{grid-template-columns:1fr 1fr}
}
.hero-card{
  position:relative;
  border-radius:var(--radius);
  overflow:hidden;
  aspect-ratio:4/3;
  background:var(--bg-warm);
  transition:var(--transition);
  cursor:pointer;
}
.hero-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}
.hero-card img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:var(--bg-warm);
  transition:transform .6s ease;
}
.hero-card-singles img{
  object-fit:contain;
  object-position:center;
  background:var(--bg-warm);
}
.hero-card-blends img{
  object-fit:contain;
  object-position:center;
  background:var(--bg-warm);
}
.hero-card:hover img{transform:scale(1.06)}
.hero-card-blends:hover img{transform:scale(1.01)}
.hero-tiles .hero-card{
  aspect-ratio:auto;
  display:flex;
  flex-direction:column;
}
.hero-tiles .hero-card img{
  aspect-ratio:4/5;
  width:100%;
  height:auto;
  flex:0 0 auto;
}
.hero-card-overlay{
  position:static;
  padding:14px 16px 16px;
  background:var(--bg-warm,#F5F2ED);
  display:flex;
  flex-direction:column;
  gap:4px;
  min-height:76px;
}
.hero-card-title{
  font-size:22px;
  font-weight:600;
  color:var(--ink);
  letter-spacing:-.3px;
}
.hero-card-link{
  font-size:13px;
  font-weight:500;
  color:var(--bronze);
  display:flex;
  align-items:center;
  gap:6px;
}
.hero-card-blends{background:var(--bg-warm)}
.hero-card-singles{background:var(--bg-warm2)}
.hero-card-singles .hero-card-title{color:var(--ink)}
.hero-card-singles .hero-card-link{color:var(--bronze)}
.hero-card-singles .hero-card-overlay{background:linear-gradient(to top,rgba(245,242,237,.95) 0%,rgba(245,242,237,0) 100%)}


/* ===== FULL-BLEED PRODUCT SECTION ===== */
.compounds-section{
  background:var(--bg-warm);
  padding:88px 48px;
}
.compounds-inner{
  max-width:var(--maxw);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:64px;
  align-items:center;
}
.compounds-kicker{
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--bronze);
  font-weight:600;
  margin-bottom:16px;
}
.compounds-copy{text-align:left}
.compounds-title{
  font-family:var(--font-logo);
  font-size:clamp(40px,6vw,68px);
  font-weight:500;
  color:var(--ink);
  letter-spacing:-1.6px;
  line-height:1.05;
}
.compounds-title em{font-style:italic;color:var(--bronze)}
.compounds-sub{
  display:block;
  margin-top:20px;
  max-width:420px;
  font-size:18px;
  line-height:1.5;
  color:var(--ink-soft);
}
.compounds-shot{
  margin:0;
  background:#fff;
  border-radius:var(--radius);
  border:1px solid var(--border);
  padding:28px;
  box-shadow:var(--shadow-md);
}
.compounds-shot img{
  display:block;
  width:100%;
  height:auto;
  max-height:460px;
  object-fit:contain;
  background:var(--bg-warm);
  border-radius:16px;
}
@media (max-width:800px){
  .compounds-inner{grid-template-columns:1fr;gap:32px}
  .compounds-section{padding:56px 20px}
}

/* ===== CATALOG — clean 2x3 grid ===== */
.catalog-section{
  max-width:var(--maxw);
  margin:0 auto;
  padding:88px 48px 120px;
}
.catalog-header{
  margin-bottom:60px;
}
.catalog-title{
  font-family:var(--font-display);
  font-size:clamp(32px,5vw,48px);
  font-weight:700;
  color:var(--ink);
  letter-spacing:-1px;
  line-height:1.1;
}
.catalog-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.product-card{
  display:flex;
  flex-direction:column;
  text-decoration:none;
  color:inherit;
  transition:var(--transition);
}
.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.product-card-media{display:block}
.product-card-img{
  position:relative;
  width:100%;
  aspect-ratio:1/1;
  background:var(--bg-warm);
  border-radius:var(--radius);
  overflow:hidden;
  margin-bottom:10px;
}
.product-card-img img{
  width:100%;
  height:100%;
  object-fit:contain;
  background:var(--bg-warm);
  transition:transform .6s ease;
}
.product-card:hover .product-card-img img{transform:scale(1.04)}
.product-card-onimg{
  position:absolute;
  top:10px;
  left:10px;
  right:36px;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  pointer-events:none;
}
.product-card-name{
  font-size:14px;
  font-weight:700;
  color:var(--ink);
  margin:0;
  letter-spacing:-.2px;
  display:block;
  line-height:1.2;
  background:rgba(247,243,232,.88);
  padding:5px 8px;
  border-radius:6px;
}
.product-card-name.below{
  font-size:16px;
  background:none;
  padding:0;
  margin-bottom:8px;
}
.product-card-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.product-card-price{
  font-size:15px;
  color:var(--ink);
  font-weight:600;
}
.product-card-original{
  text-decoration:line-through;
  color:var(--ink-muted);
  font-weight:400;
  margin-left:6px;
}
.product-card-badge{
  display:inline-block;
  background:var(--amber);
  color:var(--ink);
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.8px;
  padding:3px 8px;
  border-radius:var(--radius-pill);
  margin:0;
  width:fit-content;
  animation:none;
}
@keyframes badge-flash{
  0%,100%{opacity:1;filter:brightness(1)}
  50%{opacity:.35;filter:brightness(1.25)}
}
@media(prefers-reduced-motion:reduce){
  .product-card-badge{animation:none}
}

/* ===== FOOTER ===== */
.footer{
  background:var(--ink);
  color:rgba(255,255,255,.5);
  padding:80px 48px 40px;
}
.footer-inner{
  max-width:var(--maxw);
  margin:0 auto;
}
.footer-top{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:48px;
  margin-bottom:60px;
}
.footer-brand-text{
  font-family:var(--font-logo);
  font-size:24px;
  font-weight:500;
  color:#fff;
  text-transform:lowercase;
  margin-bottom:12px;
}
.footer-brand-desc{
  font-size:14px;
  line-height:1.6;
  max-width:300px;
  margin-bottom:20px;
}
.footer-address{
  font-size:13px;
  color:rgba(255,255,255,.4);
  line-height:1.8;
}
.footer-col h4{
  font-size:13px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:1px;
  color:rgba(255,255,255,.8);
  margin-bottom:16px;
}
.footer-col a{
  display:block;
  color:rgba(255,255,255,.5);
  font-size:14px;
  padding:6px 0;
  transition:var(--transition);
}
.footer-col a:hover{color:#fff}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:32px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:16px;
}
.footer-disclaimer{
  font-size:13px;
  color:rgba(255,255,255,.62);
  max-width:680px;
  line-height:1.65;
}
.footer-legal-links{
  display:flex;
  gap:24px;
  font-size:13px;
}
.footer-legal-links a{
  color:rgba(255,255,255,.4);
  transition:var(--transition);
}
.footer-legal-links a:hover{color:#fff}

/* ===== CART DRAWER ===== */
.cart-overlay{
  position:fixed;
  inset:0;
  background:rgba(31,31,31,.4);
  backdrop-filter:blur(4px);
  z-index:9999;
  opacity:0;
  pointer-events:none;
  transition:opacity .3s ease;
}
.cart-overlay.open{opacity:1;pointer-events:auto}
.cart-drawer{
  position:fixed;
  top:0;
  right:-480px;
  width:420px;
  max-width:100%;
  height:100vh;
  background:var(--bg);
  z-index:10000;
  transition:right .4s cubic-bezier(.25,.46,.45,.94);
  display:flex;
  flex-direction:column;
  box-shadow:var(--shadow-xl);
}
.cart-drawer.open{right:0}
.cart-header{
  padding:24px 28px;
  border-bottom:1px solid var(--border);
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.cart-title{font-size:18px;font-weight:600;color:var(--ink)}
.cart-close{background:none;border:none;font-size:22px;cursor:pointer;color:var(--ink-muted);transition:var(--transition)}
.cart-close:hover{color:var(--ink)}
.cart-items{flex:1;overflow-y:auto;padding:28px}
.cart-empty{text-align:center;color:var(--ink-muted);padding:60px 20px;font-size:15px}
.cart-empty svg{width:48px;height:48px;margin:0 auto 16px;opacity:.3}
.cart-item{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--border-light)}
.cart-item img{width:72px;height:72px;border-radius:var(--radius-sm);object-fit:cover;background:var(--bg-warm)}
.cart-item-info{flex:1}
.cart-item-name{font-size:15px;font-weight:600;color:var(--ink)}
.cart-item-price{font-size:13px;color:var(--ink-soft);font-weight:500;margin-top:4px}
.cart-item-qty{display:flex;align-items:center;gap:12px;margin-top:8px}
.cart-item-qty button{background:var(--bg-warm);border:none;width:28px;height:28px;border-radius:8px;cursor:pointer;font-size:16px;color:var(--ink);display:flex;align-items:center;justify-content:center}
.cart-item-qty button:hover{background:var(--bg-warm2)}
.cart-item-remove{background:none;border:none;color:var(--ink-muted);cursor:pointer;font-size:14px;align-self:flex-start}
.cart-footer{padding:24px 28px;border-top:1px solid var(--border)}
.cart-subtotal{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.cart-subtotal span{font-size:15px;color:var(--ink-soft)}
.cart-subtotal strong{font-size:24px;font-weight:700;color:var(--ink)}
.btn-checkout{
  background:var(--ink);
  color:#fff;
  border:none;
  border-radius:var(--radius-pill);
  padding:16px;
  font-family:var(--font-display);
  font-size:14px;
  font-weight:600;
  cursor:pointer;
  transition:var(--transition);
  width:100%;
}
.btn-checkout:hover{background:#000;transform:translateY(-1px);box-shadow:var(--shadow-md)}
.cart-note{font-size:12px;color:var(--ink-muted);text-align:center;margin-top:12px}

/* ===== SCROLL ANIMATIONS ===== */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.hero-headline,.hero-cta,.hero-legal,.hero-cards{animation:fadeUp .7s cubic-bezier(.25,.46,.45,.94) backwards}
.hero-headline{animation-delay:.08s}
.hero-cta{animation-delay:.16s}
.hero-legal{animation-delay:.22s}
.hero-cards{animation-delay:.28s}
.catalog-section,.compounds-section,.slogan-band,.human-band,.stat-strip,.method-section,.split-section,.process-section,.recon-section,.ship-section,.vmap-section{
  animation:fadeUp .75s cubic-bezier(.25,.46,.45,.94) both;
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
}

/* ===== RESPONSIVE ===== */
@media(max-width:1024px){
  .hero{padding:60px 32px 80px}
  .hero-cards:not(.hero-tiles){grid-template-columns:1fr}
  .hero-tiles{grid-template-columns:1fr 1fr}
  .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:768px){
  .nav{padding:16px 20px}
  .nav-logo-text{font-size:20px}
  .hero{padding:40px 20px 60px}
  .hero-headline{font-size:38px}
  .hero-sub{font-size:16px}
  .compounds-section{padding:56px 20px}
  .compounds-title{font-size:32px}
  .catalog-section{padding:60px 20px}
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;margin:0;gap:10px}
  .footer{padding:60px 20px 32px}
  .footer-top{grid-template-columns:1fr;gap:32px}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .cart-drawer{width:100%;right:-100%}
  .ruo-bar{font-size:10px;padding:6px 12px}
}


/* ===== HERO STAT CHIP (Singles card) ===== */
.hero-stat{
  position:absolute;
  right:16px;
  bottom:16px;
  z-index:2;
  background:rgba(255,255,255,.92);
  border:1px solid var(--border);
  border-radius:16px;
  padding:12px 14px 10px;
  min-width:148px;
  box-shadow:var(--shadow-md);
}
.hero-stat-kicker{
  font-size:10px;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:6px;
}
.hero-stat-row{display:flex;gap:16px;align-items:flex-end}
.hero-stat-num{
  font-size:22px;
  font-weight:700;
  letter-spacing:-.6px;
  color:var(--ink);
  line-height:1;
}
.hero-stat-label{
  font-size:11px;
  color:var(--ink-soft);
  margin-top:3px;
}
.hero-stat .sparkline{width:100%;height:22px;margin-top:8px;display:block}
.hero-card-singles .hero-card-overlay{padding-right:180px}

/* ===== STAT STRIP ===== */
.stat-strip{
  background:var(--bg-warm);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  padding:72px 48px;
}
.stat-strip-inner{
  max-width:var(--maxw);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}
.stat-tile{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:32px 28px 24px;
  box-shadow:var(--shadow-sm);
}
.stat-num{
  font-size:clamp(40px,5vw,56px);
  font-weight:700;
  letter-spacing:-2px;
  color:var(--ink);
  line-height:1;
}
.stat-label{
  font-size:15px;
  color:var(--ink-soft);
  margin:10px 0 16px;
  font-weight:500;
}
.stat-tile .sparkline{width:88px;height:28px;display:block}
.stat-asterisk{
  max-width:var(--maxw);
  margin:24px auto 0;
  font-size:12px;
  color:var(--ink-muted);
}

/* ===== COA FULL BLEED ===== */
.coa-bleed{
  position:relative;
  min-height:72vh;
  background:#1a120c;
  overflow:hidden;
  padding:88px 48px;
  display:flex;
  align-items:center;
}
.coa-bleed-bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.42;
  pointer-events:none;
}
.coa-bleed-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(20,14,10,.82) 0%,rgba(62,43,32,.55) 55%,rgba(20,14,10,.75) 100%);
}
.coa-bleed-inner{
  position:relative;
  z-index:1;
  max-width:var(--maxw);
  margin:0 auto;
  width:100%;
}
.coa-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--amber);
  margin-bottom:16px;
}
.coa-headline{
  font-size:clamp(44px,7vw,80px);
  font-weight:500;
  letter-spacing:-2.4px;
  line-height:1.02;
  color:#fff;
  max-width:16ch;
  margin-bottom:20px;
}
.coa-sub{
  font-size:18px;
  color:rgba(255,255,255,.72);
  max-width:560px;
  line-height:1.55;
  margin-bottom:36px;
}
.coa-graph-card{
  background:rgba(14,10,8,.55);
  border:1px solid rgba(251,207,135,.22);
  border-radius:var(--radius);
  padding:20px 22px 12px;
  max-width:720px;
  backdrop-filter:blur(8px);
}
.coa-graph{width:100%;height:auto;display:block}
.coa-note{
  margin-top:16px;
  font-size:12px;
  color:rgba(255,255,255,.5);
}

/* ===== RESEARCH CATEGORY TILES ===== */
.research-cats{
  background:var(--bg);
  padding:100px 48px;
}
.research-cats-inner{max-width:var(--maxw);margin:0 auto}
.research-cats-head{margin-bottom:40px;max-width:640px}
.research-cats-head h2{
  font-size:clamp(32px,5vw,52px);
  font-weight:600;
  letter-spacing:-1.4px;
  line-height:1.08;
  margin-bottom:12px;
}
.research-cats-head p{font-size:17px;color:var(--ink-soft)}
.cat-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.cat-tile{
  display:flex;
  flex-direction:column;
  background:var(--bg-warm);
  border-radius:var(--radius);
  overflow:hidden;
  border:1px solid var(--border-light);
  transition:var(--transition);
}
.cat-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.cat-photo{aspect-ratio:4/3;overflow:hidden;background:var(--brown)}
.cat-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.cat-tile:hover .cat-photo img{transform:scale(1.04)}
.cat-body{padding:24px 24px 22px}
.cat-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:.8px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:8px;
}
.cat-body h3{
  font-size:26px;
  font-weight:600;
  letter-spacing:-.6px;
  margin-bottom:8px;
}
.cat-body p{font-size:14px;color:var(--ink-soft);line-height:1.5;margin-bottom:16px}
.cat-body .sparkline{width:120px;height:32px;display:block}

/* ===== WHAT'S ON A COA ===== */
.coa-info{
  background:var(--bg-warm);
  padding:100px 48px;
}
.coa-info-inner{
  max-width:var(--maxw);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:56px;
  align-items:center;
}
.coa-info-photo img{
  width:100%;
  height:100%;
  max-height:640px;
  object-fit:cover;
  border-radius:var(--radius);
  display:block;
}
.coa-info-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:1.4px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:12px;
}
.coa-info-copy h2{
  font-size:clamp(32px,4.5vw,48px);
  font-weight:600;
  letter-spacing:-1.2px;
  line-height:1.08;
  margin-bottom:16px;
}
.coa-info-lead{
  font-size:16px;
  color:var(--ink-soft);
  line-height:1.55;
  margin-bottom:28px;
}
.coa-rows{display:flex;flex-direction:column;gap:0;margin-bottom:32px}
.coa-row{
  display:grid;
  grid-template-columns:140px 1fr;
  gap:16px;
  padding:16px 0;
  border-top:1px solid var(--border);
}
.coa-row:last-child{border-bottom:1px solid var(--border)}
.coa-row-label{font-size:13px;font-weight:700;color:var(--ink);letter-spacing:.2px}
.coa-row-text{font-size:14px;color:var(--ink-soft);line-height:1.5}
.coa-info-cta{margin-bottom:0}

@media(max-width:1024px){
  .stat-strip-inner{grid-template-columns:1fr 1fr}
  .cat-grid{grid-template-columns:1fr}
  .coa-info-inner{grid-template-columns:1fr;gap:32px}
}
@media(max-width:768px){
  .stat-strip,.coa-bleed,.research-cats,.coa-info{padding:60px 20px}
  .stat-strip-inner{grid-template-columns:1fr}
  .hero-card-singles .hero-card-overlay{padding-right:32px}
  .hero-stat{right:12px;bottom:12px}
  .coa-row{grid-template-columns:1fr;gap:6px}
}


/* ===== SHARED SECTION CHROME ===== */
.section-inner{max-width:var(--maxw);margin:0 auto}
.section-head{max-width:720px;margin-bottom:40px}
.section-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:12px;
}
.section-head h2{
  font-size:clamp(32px,5vw,52px);
  font-weight:600;
  letter-spacing:-1.4px;
  line-height:1.08;
  margin-bottom:12px;
}
.section-head p{font-size:17px;color:var(--ink-soft);line-height:1.5}

/* ===== METHOD CARDS — Identity. Purity. Residuals. ===== */
.method-section{
  background:var(--bg-warm);
  padding:88px 48px;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.method-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.method-tile{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:36px 32px 28px;
  box-shadow:var(--shadow-sm);
  min-height:280px;
  display:flex;
  flex-direction:column;
}
.method-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:10px;
}
.method-num{
  font-size:clamp(36px,4.5vw,52px);
  font-weight:700;
  letter-spacing:-1.8px;
  line-height:1;
  color:var(--ink);
  margin-bottom:16px;
}
.method-lead{
  font-size:15px;
  color:var(--ink-soft);
  line-height:1.5;
  flex:1;
}
.method-field{
  margin-top:24px;
  padding-top:16px;
  border-top:1px solid var(--border);
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
}
.method-field span{font-size:12px;color:var(--ink-muted);letter-spacing:.2px}
.method-field strong{font-size:13px;font-weight:700;color:var(--bronze)}

/* ===== CHEMISTRY TABLE ===== */
.chem-section{background:var(--bg);padding:88px 48px}
.chem-wrap{
  overflow-x:auto;
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:#fff;
}
.chem-table{
  width:100%;
  border-collapse:collapse;
  min-width:720px;
}
.chem-table th{
  text-align:left;
  font-size:11px;
  font-weight:700;
  letter-spacing:1.1px;
  text-transform:uppercase;
  color:var(--bronze);
  padding:18px 22px;
  background:var(--bg-warm);
  border-bottom:1px solid var(--border);
}
.chem-table td{
  padding:18px 22px;
  font-size:14px;
  color:var(--ink-soft);
  border-bottom:1px solid var(--border-light);
  vertical-align:top;
  line-height:1.45;
}
.chem-table tr:last-child td{border-bottom:none}
.chem-table td:first-child{font-weight:600;color:var(--ink);min-width:200px}
.chem-table td:last-child{font-weight:700;color:var(--ink);white-space:nowrap}
.chem-table a{border-bottom:1px solid transparent}
.chem-table a:hover{color:var(--bronze);border-bottom-color:var(--bronze)}
.chem-note{margin-top:16px;font-size:13px;color:var(--ink-muted);max-width:760px}

/* ===== SINGLES VS BLEND ===== */
.split-section{background:var(--bg-warm);padding:88px 48px}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.split-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  transition:var(--transition);
}
.split-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}
.split-photo{aspect-ratio:4/3;overflow:hidden;background:var(--bg-warm)}
.split-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.split-body{padding:28px 28px 26px}
.split-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:.9px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:8px;
}
.split-body h3{
  font-size:28px;
  font-weight:600;
  letter-spacing:-.7px;
  margin-bottom:16px;
}
.split-list{list-style:none;margin:0 0 20px;padding:0}
.split-list li{
  font-size:15px;
  color:var(--ink-soft);
  padding:8px 0;
  border-top:1px solid var(--border-light);
  line-height:1.45;
}
.split-link{font-size:14px;font-weight:600;color:var(--bronze)}

/* ===== PROCESS STRIP ===== */
.process-section{background:var(--bg);padding:88px 48px}
.process-grid{
  list-style:none;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin:0;
  padding:0;
}
.process-grid li{
  background:var(--bg-warm);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:28px 24px;
}
.process-step{
  display:block;
  font-size:13px;
  font-weight:700;
  letter-spacing:1.4px;
  color:var(--bronze);
  margin-bottom:14px;
}
.process-grid h3{
  font-size:22px;
  font-weight:600;
  letter-spacing:-.4px;
  margin-bottom:10px;
}
.process-grid p{font-size:14px;color:var(--ink-soft);line-height:1.5}
.process-grid a{color:var(--bronze);font-weight:600}

/* ===== CATALOG ATC ===== */
.product-card-atc{
  background:var(--ink);
  color:#fff;
  border:none;
  border-radius:var(--radius-pill);
  padding:12px 16px;
  min-height:44px;
  min-width:44px;
  font-family:var(--font-display);
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  transition:var(--transition);
  flex-shrink:0;
}
.product-card-atc:hover{background:#000}

@media(max-width:1024px){
  .method-grid,.split-grid,.process-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .method-section,.chem-section,.split-section,.process-section{padding:56px 20px}
  .method-grid,.split-grid,.process-grid{grid-template-columns:1fr}
  .chem-table{min-width:560px}
  .product-card-img{aspect-ratio:1/1}
}

.recon-section,.ship-section{padding:88px 48px}
.recon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;margin:0;padding:0}
.recon-grid h3{font-size:20px;margin:8px 0;letter-spacing:-.3px}
.recon-grid p{color:var(--ink-soft);font-size:15px;line-height:1.5}
@media(max-width:900px){
  .recon-grid{grid-template-columns:1fr 1fr}
  .recon-section,.ship-section{padding:56px 20px}
}
@media(max-width:600px){.recon-grid{grid-template-columns:1fr}}


/* ===== SCIENCE PAGE + DENSE HOME BAND (v19) ===== */
.sci-body{background:var(--bg)}
.sci-hero{
  max-width:820px;
  margin:0 auto;
  padding:72px 48px 56px;
  display:block;
  text-align:center;
}
.sci-hero-copy{max-width:800px;margin:0 auto}
.sci-hero .sci-lead{margin-left:auto;margin-right:auto}
.sci-hero .sci-toc{justify-content:center}
.sci-hero h1{
  font-family:var(--font-display);
  font-size:clamp(44px,7vw,80px);
  font-weight:500;
  letter-spacing:-2.4px;
  line-height:1.02;
  margin:8px 0 20px;
}
.sci-lead{
  font-size:18px;
  color:var(--ink-soft);
  max-width:72ch;
  line-height:1.55;
  margin-bottom:14px;
}
.sci-toc{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}
.sci-toc a{
  font-size:13px;
  font-weight:600;
  color:var(--bronze);
  border:1px solid var(--border);
  background:#fff;
  border-radius:var(--radius-pill);
  padding:8px 14px;
}
.sci-toc a:hover{background:var(--bg-warm)}
.sci-hero-photo{display:none}
.sci-hero-photo figcaption,
.sci-bleed figcaption,
.sci-photo figcaption{
  font-size:12px;
  color:var(--ink-muted);
  margin-top:10px;
  line-height:1.45;
}
.sci-band{padding:88px 0;background:#fff}
.sci-band-cream{background:var(--bg-warm);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.sci-wrap{max-width:var(--maxw);margin:0 auto;padding:0 48px}
.sci-head{max-width:760px;margin-bottom:36px}
.sci-head h2{
  font-family:var(--font-display);
  font-size:clamp(36px,5.5vw,64px);
  font-weight:500;
  letter-spacing:-1.8px;
  line-height:1.06;
  margin:8px 0 16px;
}
.sci-head p{font-size:18px;color:var(--ink-soft);max-width:72ch;line-height:1.55}
.sci-bleed{margin:0 0 36px}
.sci-bleed img{
  width:100%;
  max-height:72vh;
  object-fit:cover;
  display:block;
  background:#1a120c;
}
.sci-bleed figcaption{padding:0 48px}
.sci-anno{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin-bottom:36px;
}
.sci-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  padding:28px 24px 24px;
  box-shadow:var(--shadow-sm);
}
.sci-card-wide{padding:28px 28px 20px}
.sci-card-k{
  font-size:11px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:10px;
}
.sci-card h3{
  font-size:22px;
  font-weight:600;
  letter-spacing:-.5px;
  margin-bottom:10px;
  line-height:1.2;
}
.sci-card p{font-size:15px;color:var(--ink-soft);line-height:1.55;max-width:72ch}
.sci-prose{max-width:72ch}
.sci-prose p{font-size:17px;color:var(--ink-soft);line-height:1.65;margin-bottom:16px}
.sci-prose strong{color:var(--ink);font-weight:600}
.sci-formula{
  font-family:var(--font-display);
  font-size:18px;
  font-weight:600;
  color:var(--ink);
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  padding:18px 20px;
  letter-spacing:-.2px;
}
.sci-split{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:40px;
  align-items:start;
}
.sci-photo img{
  width:100%;
  border-radius:24px;
  display:block;
  object-fit:cover;
  background:var(--bg-warm);
}
.sci-fields{
  list-style:none;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
  margin:0 0 36px;
  padding:0;
}
.sci-fields li{
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  padding:24px 20px;
}
.sci-fields span{
  display:block;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.4px;
  color:var(--bronze);
  margin-bottom:12px;
}
.sci-fields h3{font-size:20px;margin-bottom:8px;letter-spacing:-.3px}
.sci-fields p{font-size:14px;color:var(--ink-soft);line-height:1.5}
.sci-weak{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  max-width:920px;
}
.sci-weak li{
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  padding:16px 18px;
  font-size:15px;
  color:var(--ink-soft);
  line-height:1.45;
}
.id-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.id-dl{margin:0 0 16px}
.id-dl div{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:8px;
  padding:8px 0;
  border-top:1px solid var(--border-light);
}
.id-dl dt{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--bronze);padding-top:2px}
.id-dl dd{font-size:14px;color:var(--ink);line-height:1.4}
.price-bars,.net-svg{width:100%;height:auto;display:block}
.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}

/* homepage dense band */
.dense-band{
  background:var(--bg-warm);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  padding:88px 0 72px;
}
.dense-wrap{max-width:var(--maxw);margin:0 auto;padding:0 48px}
.dense-head{max-width:720px;margin-bottom:28px}
.dense-head h2{
  font-size:clamp(36px,5vw,56px);
  font-weight:500;
  letter-spacing:-1.6px;
  line-height:1.06;
  margin:8px 0 12px;
}
.dense-head p{font-size:17px;color:var(--ink-soft);max-width:72ch;line-height:1.55}
.dense-bleed{
  margin:0 48px 28px;
  overflow:visible;
}
.dense-bleed img{
  width:100%;
  max-height:none;
  height:auto;
  object-fit:contain;
  object-position:center;
  display:block;
  background:var(--bg-warm);
}
.dense-bleed figcaption{padding:10px 48px 0;font-size:12px;color:var(--ink-muted)}
.dense-split{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:32px;
  align-items:center;
  margin:40px 0;
}
.dense-split img{
  width:100%;
  height:auto;
  border-radius:24px;
  display:block;
  object-fit:contain;
  object-position:center;
  background:var(--bg-warm);
}
.dense-split h3{
  font-size:32px;
  font-weight:600;
  letter-spacing:-.8px;
  margin-bottom:12px;
}
.dense-split p{font-size:16px;color:var(--ink-soft);line-height:1.55;max-width:72ch;margin-bottom:12px}
.dense-price{
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  padding:28px 28px 18px;
  margin-top:8px;
}
.dense-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:28px;
  background:var(--ink);
  color:#fff;
  padding:14px 28px;
  border-radius:var(--radius-pill);
  font-size:14px;
  font-weight:600;
}
.dense-cta:hover{background:#000}
.hero-notes{
  display:inline-block;
  margin:0 0 40px 16px;
  font-size:14px;
  font-weight:600;
  color:var(--bronze);
}

@media(max-width:1024px){
  .sci-hero,.sci-split,.dense-split,.sci-fields,.sci-anno,.id-grid,.faq-list,.sci-weak{grid-template-columns:1fr 1fr}
  .sci-fields{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .sci-hero,.sci-wrap,.dense-wrap{padding-left:20px;padding-right:20px}
  .sci-hero{grid-template-columns:1fr;padding-top:40px}
  .sci-band,.dense-band{padding:56px 0}
  .sci-anno,.sci-fields,.id-grid,.faq-list,.sci-weak,.sci-split,.dense-split{grid-template-columns:1fr}
  .sci-bleed figcaption,.dense-bleed figcaption{padding-left:20px;padding-right:20px}
  .dense-bleed{margin-left:20px;margin-right:20px}
  .hero-notes{display:block;margin:12px 0 36px}
}


/* ===== SCIENCE CALC + TAKEAWAYS (v20) ===== */
.take-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:14px;
  max-width:920px;
  counter-reset:take;
}
.take-list li{
  background:#fff;
  border:1px solid var(--border);
  border-radius:20px;
  padding:18px 20px 18px 68px;
  position:relative;
  font-size:16px;
  color:var(--ink-soft);
  line-height:1.5;
  counter-increment:take;
}
.take-list li::before{
  content:counter(take);
  position:absolute;
  left:18px;
  top:18px;
  width:36px;
  height:36px;
  border-radius:50%;
  background:var(--amber);
  color:var(--brown);
  font-weight:700;
  font-size:14px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.take-list strong{color:var(--ink);font-weight:600}
.calc-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
  align-items:stretch;
  margin-bottom:28px;
}
.calc-form{
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  padding:28px 28px 22px;
}
.calc-field{display:block;margin-bottom:18px}
.calc-field span{
  display:block;
  font-size:12px;
  font-weight:600;
  color:var(--ink-muted);
  margin-bottom:8px;
}
.calc-field input{
  width:100%;
  border:1px solid var(--border);
  background:var(--bg-warm);
  border-radius:16px;
  padding:16px 18px;
  font-family:var(--font-display);
  font-size:22px;
  font-weight:600;
  color:var(--ink);
  letter-spacing:-.4px;
}
.calc-field input:focus{outline:2px solid var(--amber);border-color:var(--amber)}
.calc-formula{
  font-size:15px;
  font-weight:600;
  color:var(--ink);
  margin:8px 0 10px;
}
.calc-note,.calc-flag{
  font-size:13px;
  color:var(--ink-soft);
  line-height:1.45;
  max-width:48ch;
}
.calc-result{
  border-radius:24px;
  overflow:hidden;
  background:var(--amber);
  min-height:100%;
  display:flex;
  flex-direction:column;
}
.calc-result-k{
  background:var(--brown);
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.1px;
  text-transform:uppercase;
  padding:14px 24px;
}
.calc-result-body{padding:28px 28px 24px;flex:1}
.calc-num{
  font-size:clamp(40px,6vw,64px);
  font-weight:600;
  letter-spacing:-2px;
  line-height:1;
  color:var(--ink);
  margin-bottom:12px;
}
.calc-num span{font-size:22px;letter-spacing:-.4px;font-weight:600;color:var(--brown)}
.calc-sub{font-size:15px;color:var(--ink-soft);margin-bottom:16px}
.calc-explain{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.faq-cluster{margin-bottom:36px}
.faq-cluster-title{
  font-size:13px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--bronze);
  margin:0 0 14px;
}
.ref-list{
  list-style:none;
  margin:0;
  padding:0;
  max-width:860px;
  display:grid;
  gap:16px;
}
.ref-list li{
  border-top:1px solid var(--border);
  padding-top:16px;
}
.ref-list a{
  display:block;
  font-size:17px;
  font-weight:600;
  color:var(--ink);
  margin-bottom:6px;
}
.ref-list a:hover{color:var(--bronze)}
.ref-list span{display:block;font-size:14px;color:var(--ink-soft);line-height:1.5}
@media(max-width:1024px){
  .calc-grid,.calc-explain{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .calc-grid,.calc-explain{grid-template-columns:1fr}
  .take-list li{padding-left:68px}
}


/* ===== VERTICALS MAP — merchandising cards, not API ===== */
.vmap-section{
  background:var(--bg-warm);
  padding:88px 48px 96px;
  border-top:1px solid var(--border);
}
.vmap-inner{max-width:var(--maxw);margin:0 auto}
.vmap-head{max-width:720px;margin-bottom:36px}
.vmap-head h2{
  font-size:clamp(32px,5vw,52px);
  font-weight:600;
  letter-spacing:-1.4px;
  line-height:1.08;
  margin-bottom:12px;
}
.vmap-head p{font-size:17px;color:var(--ink-soft);line-height:1.5;max-width:62ch}
.vmap-sub{
  font-size:13px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--bronze);
  margin:40px 0 16px;
}
.vmap-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.vmap-grid-more{grid-template-columns:repeat(3,1fr);gap:12px}
.vmap-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:196px;
  padding:26px 24px 22px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  color:inherit;
  text-decoration:none;
  transition:var(--transition);
}
.vmap-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}
.vmap-lane{
  font-size:11px;
  font-weight:700;
  letter-spacing:.9px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:10px;
}
.vmap-name{
  font-size:clamp(22px,2.4vw,28px);
  font-weight:600;
  letter-spacing:-.7px;
  line-height:1.15;
  color:var(--ink);
  margin-bottom:8px;
}
.vmap-meta{
  font-size:13px;
  color:var(--ink-muted);
  margin-bottom:auto;
}
.vmap-cta{
  margin-top:20px;
  font-size:14px;
  font-weight:600;
  color:var(--ink);
}
.vmap-card:hover .vmap-cta{color:var(--bronze)}
.vmap-card.is-coming{
  background:transparent;
  border-style:dashed;
  border-color:#d9d1c6;
  min-height:148px;
  opacity:.72;
}
.vmap-card.is-coming:hover{
  transform:none;
  box-shadow:none;
  opacity:.92;
}
.vmap-card.is-coming .vmap-name{font-size:20px;font-weight:500;color:var(--ink-soft)}
.vmap-card.is-coming .vmap-cta{color:var(--ink-muted);font-weight:500}
.vmap-grid-more .vmap-card{min-height:112px;padding:20px 20px 16px}
.vmap-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.vmap-chips span{
  display:inline-flex;
  align-items:center;
  padding:10px 16px;
  border-radius:var(--radius-pill);
  background:#fff;
  border:1px solid var(--border);
  font-size:14px;
  font-weight:600;
  color:var(--ink);
  letter-spacing:-.2px;
}
.vmap-note{
  margin-top:16px;
  font-size:14px;
  color:var(--ink-soft);
  max-width:62ch;
  line-height:1.5;
}
@media(max-width:1024px){
  .vmap-grid,.vmap-grid-more{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .vmap-section{padding:56px 20px 64px}
  .vmap-grid,.vmap-grid-more{grid-template-columns:1fr}
  .vmap-card{min-height:0}
}

/* ===== COMING CATALOG ROW ===== */
.catalog-coming{
  margin-top:72px;
  padding-top:56px;
  border-top:1px solid var(--border);
}
.catalog-coming-header{margin-bottom:32px}
.catalog-coming-title{
  font-size:clamp(24px,3.4vw,32px);
  font-weight:700;
  letter-spacing:-.6px;
  color:var(--ink);
  margin:6px 0 10px;
}
.catalog-coming-note{
  font-size:14px;
  color:var(--ink-muted);
  max-width:560px;
  line-height:1.55;
}
.product-card-coming{
  background:var(--bg-warm);
  border:1px dashed var(--border);
  border-radius:var(--radius);
  padding:22px 22px 20px;
  min-height:168px;
  justify-content:space-between;
}
.product-card-coming:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.product-card-coming .product-card-name{margin-bottom:4px}
.product-card-ruo{
  font-size:12px;
  color:var(--ink-muted);
  margin-bottom:16px;
}
.product-card-listnote{
  font-size:12px;
  color:var(--ink-muted);
  font-weight:500;
  margin-left:6px;
  text-transform:lowercase;
}
.product-card-inquire{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  color:var(--ink);
  border:1px solid var(--ink);
  border-radius:var(--radius-pill);
  padding:8px 14px;
  font-size:13px;
  font-weight:600;
  letter-spacing:.2px;
  text-decoration:none;
  white-space:nowrap;
}
.product-card-inquire:hover{background:var(--ink);color:#fff}

.coming-pdp{
  max-width:720px;
  margin:0 auto;
  padding:80px 48px 120px;
}
.coming-pdp-back{
  display:inline-flex;
  font-size:14px;
  font-weight:500;
  margin-bottom:28px;
}
.coming-pdp-kicker{
  font-size:12px;
  font-weight:600;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:10px;
}
.coming-pdp h1{
  font-size:clamp(32px,5vw,48px);
  font-weight:700;
  letter-spacing:-1px;
  line-height:1.1;
  margin-bottom:16px;
}
.coming-pdp-ruo{
  font-size:15px;
  color:var(--ink-soft);
  line-height:1.65;
  margin-bottom:24px;
}
.coming-pdp-price{
  font-size:28px;
  font-weight:700;
  letter-spacing:-.4px;
  margin-bottom:20px;
}
.coming-pdp-price span{
  font-size:14px;
  font-weight:500;
  color:var(--ink-muted);
}
.coming-pdp-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--ink);
  color:#fff;
  border-radius:var(--radius-pill);
  padding:14px 22px;
  font-size:15px;
  font-weight:600;
  text-decoration:none;
  margin-bottom:28px;
}
.coming-pdp-cta:hover{opacity:.88}
.coming-pdp-note{
  font-size:14px;
  color:var(--ink-muted);
  line-height:1.6;
  max-width:520px;
}
@media(max-width:768px){
  .catalog-coming{margin-top:48px;padding-top:40px}
  .coming-pdp{padding:56px 20px 80px}
}

.catalog-coming{display:none!important}


/* ===== SLOGAN BAND — Hims density, RUO voice ===== */
.slogan-band{
  background:var(--ink);
  color:#fff;
  padding:72px 48px;
  text-align:center;
}
.slogan-line{
  font-family:var(--font-logo);
  font-size:clamp(28px,4.4vw,48px);
  font-weight:500;
  letter-spacing:-1.2px;
  line-height:1.15;
  margin:0 0 10px;
}
.slogan-line-em{color:var(--amber);font-style:italic}

/* ===== HUMAN EDITORIAL ===== */
.human-band{
  background:var(--bg-warm);
  padding:88px 48px;
}
.human-inner{max-width:var(--maxw);margin:0 auto}
.human-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.human-shot{
  margin:0;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:16px;
  min-height:280px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.human-shot img{
  display:block;
  width:100%;
  height:auto;
  max-height:360px;
  object-fit:contain;
  object-position:center;
  background:var(--bg-warm);
  border-radius:12px;
}
@media(max-width:800px){
  .slogan-band{padding:48px 20px}
  .human-band{padding:56px 20px}
  .human-grid{grid-template-columns:1fr}
}

/* ===== WARM HUMAN BLEED ===== */
.warm-bleed{background:#1a120c}
.warm-hero{position:relative;margin:0;height:min(78vh,820px);min-height:420px;overflow:hidden}
.warm-hero img,.warm-cell img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}
.warm-hero figcaption{position:absolute;left:0;right:0;bottom:0;padding:48px 48px 40px;background:linear-gradient(to top,rgba(26,18,12,.72),rgba(26,18,12,0));color:#fff}
.warm-hero figcaption p{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:var(--amber);margin:0 0 8px;font-weight:600}
.warm-hero figcaption h2{font-family:var(--font-logo);font-size:clamp(40px,6vw,72px);font-weight:500;letter-spacing:-1.8px;line-height:1.02;margin:0}
.warm-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px;padding:8px;background:#1a120c}
.warm-cell{margin:0;height:min(42vh,420px);overflow:hidden;border-radius:0}
@keyframes ken{0%{transform:scale(1) translate3d(0,0,0)}100%{transform:scale(1.1) translate3d(0,-2%,0)}}
.warm-ken{animation:ken 22s ease-in-out alternate infinite;will-change:transform}
.warm-ken-delay{animation-delay:-8s}
@media(max-width:800px){
  .warm-hero{height:62vh;min-height:360px}
  .warm-hero figcaption{padding:28px 20px}
  .warm-row{grid-template-columns:1fr;gap:8px;padding:8px}
  .warm-cell{height:38vh}
}
@media(prefers-reduced-motion:reduce){
  .warm-ken,.warm-ken-delay{animation:none}
}

/* ===== HERS RISE — fade headlines in ===== */
@keyframes rise-in{from{opacity:0;transform:translateY(14px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.hero-headline{animation:rise-in .85s ease both}
.slogan-line{animation:rise-in .8s ease both}
.slogan-line:nth-child(2){animation-delay:.08s}
.slogan-line:nth-child(3){animation-delay:.16s}
.warm-hero figcaption h2{animation:rise-in .9s ease both}
@media(prefers-reduced-motion:reduce){
  .hero-headline,.slogan-line,.warm-hero figcaption h2{animation:none}
}

/* RUO gate — same key as PDP */
.tc-overlay{position:fixed;inset:0;background:rgba(31,31,31,.72);backdrop-filter:blur(8px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s}
.tc-overlay.active{opacity:1;visibility:visible;pointer-events:auto}
.tc-modal{background:#fff;border-radius:24px;max-width:440px;width:100%;padding:36px 32px;text-align:center}
.tc-modal h2{font-family:var(--font-logo);font-size:28px;margin:0 0 8px}
.tc-modal-badge{display:inline-block;background:var(--bg-warm);color:var(--bronze);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:4px 12px;border-radius:999px;margin-bottom:16px}
.tc-modal-text{font-size:14px;color:var(--ink-soft);margin-bottom:20px;line-height:1.5}
.tc-checks{text-align:left;margin:0 0 20px}
.tc-check-label{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--ink);margin:0 0 10px}
.tc-enter-btn{background:#1B2A4A;color:#fff;border:0;border-radius:999px;padding:12px 28px;font-weight:700;cursor:pointer}
.tc-enter-btn:disabled{background:#c4a574;color:#fff;opacity:1;cursor:not-allowed}
.tc-enter-hint{font-size:13px;color:#4a453f;margin:10px 0 0;line-height:1.4}
@media(max-width:800px){
  .hero-tiles .hero-card-overlay{background:rgba(245,242,237,.97);padding:14px 16px}
  .hero-tiles .hero-card-title{font-size:16px}
  .hero-tiles .hero-card-link{font-size:12px}
}

.spec-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:18px 0 8px;padding:16px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.spec-strip dt{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--bronze)}
.spec-strip dd{font-size:14px;color:var(--ink);font-family:ui-monospace,monospace}
.spec-note{font-size:12px;color:var(--ink-muted);margin:0 0 16px}
@media(max-width:700px){.spec-strip{grid-template-columns:1fr}}


.research-note{font-size:14px;line-height:1.55;color:var(--ink);margin:8px 0 16px;padding:12px 14px;background:var(--bg-warm);border-radius:8px}
.research-note h3{font-size:11px;letter-spacing:.7px;text-transform:uppercase;color:var(--bronze);margin:0 0 8px;font-weight:700}
.research-note p{margin:0 0 8px}
.research-note p:last-child{margin:0;color:var(--ink-muted);font-size:13px}

.product-card-body{padding:2px 2px 10px;flex:1;display:flex;flex-direction:column}
.product-card-body .product-card-name{background:none;padding:0;margin:0 0 8px;font-size:15px;min-height:2.4em}
.product-card-body .product-card-row{margin-top:auto}
.product-card-badge-spacer{visibility:hidden}



/* Hims-quiet category pills — text left, pack shot right */
.hero-tiles{
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.hero-tiles .hero-card{
  aspect-ratio:auto !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:168px;
  padding:18px 8px 18px 36px;
  border-radius:999px 80px 80px 999px;
  overflow:visible;
  background:#E2D1CA;
  border:none;
}
.hero-tiles .hero-card-singles{background:#E2D1CA}
.hero-tiles .hero-card-blends{background:#E8D4C4}
.hero-tiles .hero-card:nth-child(3){background:#E8DDD3}
.hero-tiles .hero-card:nth-child(4){background:#DDD0C6}
.hero-tiles .hero-card-overlay{
  position:static !important;
  background:transparent !important;
  padding:0 !important;
  min-height:0 !important;
  flex:1 1 auto;
  justify-content:center;
  gap:6px;
}
.hero-tiles .hero-card-title{
  font-size:clamp(22px,2.4vw,32px);
  font-weight:600;
  color:#6B4F48;
  letter-spacing:-.6px;
}
.hero-tiles .hero-card-link{
  color:#8A6A60;
  font-size:14px;
}
.hero-tiles .hero-card img{
  aspect-ratio:auto !important;
  width:46% !important;
  max-width:220px;
  height:auto !important;
  flex:0 0 auto;
  object-fit:contain !important;
  background:transparent !important;
  filter:drop-shadow(0 14px 18px rgba(70,42,32,.2));
  border-radius:0;
}
.hero-tiles .hero-card:hover{transform:translateY(-3px)}
.hero-tiles .hero-card:hover img{transform:translateY(-6px) scale(1.03)}
@media(max-width:800px){
  .hero-tiles{grid-template-columns:1fr;gap:14px}
  .hero-tiles .hero-card{min-height:140px;padding:14px 8px 14px 28px;border-radius:80px 56px 56px 80px}
  .hero-tiles .hero-card img{max-width:150px;width:40% !important}
}


/* unify hero pills: one beige, inset photo, rounded chevron */
.hero-tiles .hero-card,
.hero-tiles .hero-card-singles,
.hero-tiles .hero-card-blends,
.hero-tiles .hero-card:nth-child(3),
.hero-tiles .hero-card:nth-child(4){
  background:#E2D1CA !important;
}
.hero-tiles .hero-card{
  box-shadow:0 8px 24px rgba(90,60,45,.08);
}
.hero-tiles .hero-card img{
  width:44% !important;
  max-width:210px;
  height:128px !important;
  object-fit:cover !important;
  object-position:center;
  background:#EFE6DF !important;
  border-radius:18px;
  filter:none;
  margin-right:10px;
}
.hero-tiles .hero-card:hover img{transform:scale(1.03)}
.hero-card-link,
.split-link,
.vmap-cta{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.chev{
  display:inline-block;
  flex:0 0 14px;
  color:#3A2A26;
  vertical-align:middle;
}
.hero-card-link .chev{color:#6B4F48}

/* ===== Hims-scale type (v52) — large display copy, legal stays small ===== */
body{font-size:18px;line-height:1.5}
.hero-headline{
  font-size:clamp(52px,8.2vw,92px)!important;
  font-weight:600!important;
  letter-spacing:-2.6px!important;
  line-height:.96!important;
}
.hero-cta{
  font-size:17px!important;
  padding:16px 36px!important;
  font-weight:700!important;
}
.hero-tiles .hero-card{
  min-height:188px;
  padding:20px 12px 20px 36px;
}
.hero-tiles .hero-card-title,
.hero-card-title{
  font-size:clamp(32px,3.8vw,46px)!important;
  font-weight:700!important;
  letter-spacing:-1.2px!important;
  line-height:1.02!important;
}
.hero-tiles .hero-card-link,
.hero-card-link{
  font-size:16px!important;
  font-weight:600!important;
}
.hero-card-link .chev,
.split-link .chev,
.vmap-cta .chev{
  width:18px;height:18px;flex-basis:18px;
}
.section-head h2,
.vmap-head h2,
.dense-head h2,
.research-cats-head h2,
.coa-info-copy h2{
  font-size:clamp(40px,6.2vw,72px)!important;
  font-weight:700!important;
  letter-spacing:-1.8px!important;
  line-height:1.05!important;
}
.catalog-title{
  font-size:clamp(40px,6vw,68px)!important;
  font-weight:700!important;
}
.compounds-title{
  font-size:clamp(48px,7.2vw,88px)!important;
  font-weight:600!important;
}
.compounds-sub{font-size:20px!important;line-height:1.4!important}
.split-body h3,
.dense-split h3,
.cat-body h3{
  font-size:clamp(34px,4.2vw,52px)!important;
  font-weight:700!important;
  letter-spacing:-1.2px!important;
}
.split-link{font-size:17px!important;font-weight:600!important}
.split-list li{font-size:17px!important}
.vmap-name{
  font-size:clamp(30px,3.4vw,44px)!important;
  font-weight:700!important;
}
.vmap-meta{font-size:15px!important}
.slogan-line{
  font-size:clamp(40px,5.8vw,72px)!important;
  font-weight:600!important;
}
.product-card-name,
.product-card-name.below,
.product-card-body .product-card-name{
  font-size:20px!important;
  font-weight:700!important;
  line-height:1.15!important;
  min-height:0!important;
}
.product-card-price{font-size:18px!important}
.product-card-atc{font-size:15px!important;padding:12px 18px!important}
.nav-logo-mark{font-size:28px!important}.nav-logo-text{font-size:22px!important}
.nav-menu a, .nav-link, header nav a{font-size:16px!important}
.method-num{font-size:clamp(48px,6vw,72px)!important}
.method-lead{font-size:17px!important}
.process-grid h3{font-size:28px!important}
.process-grid p{font-size:16px!important}
.faq-q, .faq-question, details summary{font-size:20px!important;font-weight:700!important}
.recon-grid h3{font-size:24px!important}

/* PDPs — name/price/buy stay large; CAS stays below */
.product-title,
.pdp-name, .product-name, .sku-title, .buy-panel h1, .product-hero-name{
  font-size:clamp(40px,5.4vw,58px)!important;
  font-weight:800!important;
  letter-spacing:-1.6px!important;
}
.pdp-price, .product-price, .buy-panel .price, .coming-pdp-price{
  font-size:26px!important;
  font-weight:700!important;
}
.pdp-atc, .buy-panel button, .atc-btn, .btn-order, .coming-pdp-cta{
  font-size:16px!important;
  padding:16px 22px!important;
}

@media(max-width:800px){
  .hero-tiles .hero-card{min-height:168px;padding:16px 8px 16px 28px}
  .hero-tiles .hero-card-title{font-size:clamp(26px,7vw,34px)!important}
  .hero-headline{font-size:clamp(40px,11vw,56px)!important}
}

/* keep legal / RUO tiny */
.ruo-bar{font-size:11px!important}
.hero-legal{font-size:12px!important}
.footer-disclaimer, .footer-copy, .legal-tiny, .fine-print{font-size:12px!important}


/* PDP review card v53 */
/* PDP review card v53 */
.pdp-review{background:#2A221C;color:#fff;border-radius:24px;padding:22px 22px 18px;margin-top:4px}
.pdp-review-stars{display:flex;align-items:center;gap:3px;margin-bottom:14px}
.pdp-review-star{display:block;flex-shrink:0}
.pdp-review-quote{font-family:"Fraunces",Georgia,"Times New Roman",serif;font-size:22px;font-weight:500;line-height:1.22;letter-spacing:-0.02em;color:#fff;margin:0 0 16px}
.pdp-review-who{display:flex;align-items:center;gap:10px}
.pdp-review-thumb{width:36px;height:36px;border-radius:50%;object-fit:cover;object-position:center;background:#3a3028;border:1px solid rgba(255,255,255,.12);flex-shrink:0}
.pdp-review-who-text{font-family:Inter,-apple-system,sans-serif;font-size:12px;font-weight:500;color:rgba(255,255,255,.72);line-height:1.35}
@media(max-width:900px){
  .pdp-review{margin-top:8px;margin-bottom:0}
  .pdp-review-quote{font-size:20px}
}\n\n/* science hero: real vial, no fake overlay box */\n.sci-hero-photo img{\n  object-fit:contain !important;\n  background:var(--bg-warm) !important;\n}\n

/* footer bottom: white accessible text, no giant wordmark */
.footer-disclaimer,
.footer-legal-links,
.footer-legal-links a{
  color:#fff !important;
  opacity:1 !important;
}
.footer-legal-links a:hover{color:#FBCF87 !important;}
.footer-wordmark{display:none !important;}

/* hero tiles: no photo box, product sits on card */
.hero-tiles .hero-card img{
  background:transparent !important;
  border-radius:0 !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  width:auto !important;
  max-width:46% !important;
  height:148px !important;
  filter:drop-shadow(0 10px 14px rgba(70,42,32,.28));
  mix-blend-mode:multiply;
  margin-right:18px;
  padding:0 !important;
}
.hero-tiles .hero-card:hover img{transform:none; filter:drop-shadow(0 14px 18px rgba(70,42,32,.32));}

/* science hero chromatogram, not a vial */
.sci-hero-photo img{
  object-fit:contain !important;
  background:#F5F2ED !important;
  aspect-ratio:4/5;
}

/* hero tiles v63: true cutouts, no photo box */
.hero-tiles .hero-card img{
  background:transparent !important;
  border-radius:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  width:auto !important;
  max-width:48% !important;
  height:152px !important;
  mix-blend-mode:normal !important;
  filter:drop-shadow(0 14px 12px rgba(70,42,32,.28));
  margin-right:16px;
  padding:0 !important;
}
.hero-tiles .hero-card:hover img{transform:translateY(-4px);}

/* science hero v64 scientist photo */
.sci-hero-photo img{
  object-fit:cover !important;
  object-position:center 20% !important;
  background:#0b1c28 !important;
}

/* hero tiles: round ALL four corners, not only the left */
.hero-tiles .hero-card,
.hero-tiles .hero-card-singles,
.hero-tiles .hero-card-blends{
  border-radius:999px !important;
  overflow:hidden;
}
@media(max-width:800px){
  .hero-tiles .hero-card{
    border-radius:999px !important;
  }
}




/* cart add-more: compact horizontal cards pinned to drawer bottom */
#cartAddMore,.cart-addmore-slot{flex:0 0 auto;background:#fff;border-top:1px solid #eee;max-width:100%;overflow:hidden}
#cartAddMore:empty,.cart-addmore-slot:empty{display:none}
.cart-addmore{margin:0;padding:12px 0 4px;border:0}
.cart-addmore-title{text-align:center;font-size:15px;font-weight:800;margin:0 0 10px;padding:0 16px;color:#1a3a2a;letter-spacing:-.2px}
.cart-addmore-track{display:flex !important;flex-wrap:nowrap !important;gap:8px !important;overflow-x:scroll !important;overflow-y:hidden !important;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain;padding:0 16px 14px;scrollbar-width:thin}
.cart-addmore-track::-webkit-scrollbar{height:6px}
.cart-addmore-track::-webkit-scrollbar-thumb{background:#ccc;border-radius:99px}
.cart-addcard{flex:0 0 110px !important;width:110px !important;min-width:110px !important;max-width:110px !important;background:#f3f7f4 !important;border-radius:22px !important;padding:10px 8px 12px !important;text-align:center;display:flex !important;flex-direction:column !important;align-items:center;gap:6px}
.cart-addcard img{width:64px !important;height:64px !important;max-width:64px !important;object-fit:contain !important;background:transparent !important}
.cart-addcard-name{font-size:11px !important;font-weight:700 !important;line-height:1.2;color:#1F1F1F;min-height:28px}
.cart-addcard-price{font-size:16px !important;font-weight:800 !important;color:#2a9a7a !important;letter-spacing:-.3px}
.cart-addcard-btn{background:#fff;color:#111;border:1.5px solid #111;border-radius:999px;padding:5px 16px;font-size:12px;font-weight:700;cursor:pointer;width:auto}
.cart-addcard-btn:hover{background:#111;color:#fff}
.cart-addmore-row,.cart-addmore-all,.cart-addmore-btn,.cart-addmore-info{display:none !important}

/* cart line items stay large so you can read the name */
.cart-title{font-size:26px !important;font-weight:800 !important}
.ci-img, .cart-item > img, .oi-img{width:88px !important;height:88px !important;border-radius:14px !important;background:#F5F2ED !important}
.ci-img img, .oi-img img, .cart-item > img{object-fit:contain !important}
.ci-name, .cart-item-name, .oi-name{font-size:18px !important;font-weight:800 !important;line-height:1.2 !important;white-space:normal !important}
.ci-price, .cart-item-price, .oi-price{font-size:18px !important;font-weight:700 !important}

/* Product card tagline — short research description next to each bottle */
.product-card-tagline{
  font-size:13px!important;
  color:var(--ink-muted)!important;
  line-height:1.4!important;
  margin:0 0 12px!important;
  font-weight:400!important;
  min-height:2.6em;
}

/* Product card description — full research description in catalog */
.product-card-desc{
  font-size:12px!important;
  color:var(--ink-muted)!important;
  line-height:1.45!important;
  margin:0 0 14px!important;
  font-weight:400!important;
  min-height:3.6em;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Cart drawer item layout fix — .ci-* classes were unstyled, causing the
   remove button to stretch to full row height (default flex align-items:stretch) */
.cart-item{align-items:flex-start!important}
.ci-info{flex:1!important;display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important}
.ci-qty{display:flex!important;align-items:center!important;gap:10px!important;margin-top:8px!important}
.ci-qty button{background:var(--bg-warm)!important;border:none!important;width:28px!important;height:28px!important;flex:0 0 28px!important;border-radius:8px!important;cursor:pointer!important;font-size:16px!important;color:var(--ink)!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important}
.ci-qty button:hover{background:var(--bg-warm2)!important}
.ci-qty span{font-size:15px!important;font-weight:600!important;min-width:20px!important;text-align:center!important}
.ci-remove{background:none!important;border:none!important;color:var(--ink-muted)!important;cursor:pointer!important;font-size:16px!important;align-self:flex-start!important;flex:0 0 28px!important;width:28px!important;height:28px!important;max-height:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important}
.ci-remove:hover{color:var(--ink)!important}


/* science hero docs row v77 */
.sci-hero{
  text-align:center;
  padding:72px 48px 48px;
}
/* h1 size stays on .sci-hero h1 clamp */
.sci-hero .sci-lead{
  max-width:640px;
  font-size:18px;
  line-height:1.55;
  color:var(--ink-soft);
  margin:0 auto 28px;
}
.sci-hero-docs{
  list-style:none;
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
  padding:0;
  margin:0 auto 32px;
  max-width:760px;
}
.sci-hero-docs li{
  flex:1 1 180px;
  max-width:240px;
  background:var(--bg-warm, #f5f0e8);
  border-radius:999px;
  padding:14px 18px;
  font-size:14px;
  line-height:1.35;
  color:var(--ink-soft);
  text-align:left;
}
.sci-hero-docs strong{
  display:block;
  color:var(--ink);
  font-size:13px;
  letter-spacing:0.04em;
  text-transform:uppercase;
  margin-bottom:2px;
}
@media(max-width:768px){
  .sci-hero{padding:48px 20px 32px}
  .sci-hero h1{font-size:36px}
  .sci-hero-docs li{max-width:none;flex:1 1 100%}
}


/* ===== sequoia-like ship bar + lab-meet (v79) ===== */
.ship-bar{
  display:block;
  background:#F2D191;
  color:#111;
  text-align:center;
  padding:10px 16px;
  font-size:14px;
  font-weight:700;
  letter-spacing:.02em;
  text-decoration:none;
  line-height:1.2;
}
.ship-bar:hover{color:#111;filter:brightness(.97)}

.lab-meet{
  padding:0 24px 88px;
  background:var(--bg);
}
.lab-meet-hero{
  max-width:var(--maxw);
  margin:0 auto;
  border-radius:28px;
  overflow:hidden;
  position:relative;
  min-height:280px;
  color:#fff;
  background:#1c1c1c url("/media/nature-square.webp?v=83") center/cover no-repeat;
}
.lab-meet-hero:after{
  content:"";
  display:block;
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(20,24,12,.55) 0%,rgba(20,24,12,.28) 55%,rgba(20,24,12,.16) 100%);
}
.lab-meet-hero-inner{
  position:relative;z-index:1;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  padding:56px 48px 44px;
}
.lab-meet-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
  margin-bottom:12px;
}
.lab-meet-copy h2{
  font-size:clamp(28px,4.2vw,44px);
  font-weight:700;
  letter-spacing:-1.2px;
  line-height:1.08;
  max-width:16ch;
  margin:0 0 10px;
  color:#fff;
}
.lab-meet-line{
  font-size:clamp(18px,2.2vw,24px);
  font-weight:600;
  color:#fff;
  margin:0 0 12px;
  letter-spacing:-.3px;
}
.lab-meet-copy p{
  max-width:46ch;
  color:rgba(255,255,255,.86);
  font-size:16px;
  line-height:1.5;
  margin:0;
}
.lab-meet-cta{
  flex-shrink:0;
  background:#D6F26A;
  color:#111;
  border-radius:999px;
  padding:14px 22px;
  font-weight:700;
  font-size:14px;
  text-decoration:none;
  white-space:nowrap;
}
.lab-meet-cta:hover{filter:brightness(.97);color:#111}
.lab-meet-cards{
  max-width:var(--maxw);
  margin:-56px auto 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  position:relative;
  z-index:2;
  padding:0 8px;
  list-style:none;
}
.lab-meet-card{
  background:#F5F2ED;
  border-radius:22px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:420px;
}
.lab-meet-card img{
  width:100%;
  height:250px;
  object-fit:contain;
  object-position:center bottom;
  background:#F5F2ED;
  padding:18px 18px 0;
  display:block;
}
.lab-meet-cap{padding:14px 18px 22px}
.lab-meet-cap span{
  display:block;
  color:var(--bronze);
  font-size:12px;
  font-weight:700;
  letter-spacing:1.3px;
  margin-bottom:6px;
}
.lab-meet-card h3{
  font-size:18px;
  font-weight:700;
  letter-spacing:-.3px;
  margin:0 0 6px;
  color:var(--ink);
}
.lab-meet-card p{
  font-size:14px;
  color:var(--ink-soft);
  line-height:1.45;
  margin:0;
}
@media(max-width:900px){
  .lab-meet-hero-inner{flex-direction:column;align-items:flex-start;padding:40px 24px 32px}
  .lab-meet-cards{grid-template-columns:1fr 1fr;margin-top:16px;padding:0}
  .lab-meet-card{min-height:0}
  .lab-meet{padding:0 16px 64px}
}
@media(max-width:600px){
  .lab-meet-cards{grid-template-columns:1fr}
  .lab-meet-copy h2{max-width:none}
}


.sci-cards{
  max-width:var(--maxw);
  margin:-56px auto 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  position:relative;
  z-index:2;
  padding:0 8px;
  list-style:none;
}
.sci-cards .sci-card{
  position:relative;
  background:#C9BFAF;
  border-radius:28px;
  overflow:hidden;
  aspect-ratio:3/4;
}
.sci-cards .sci-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  background:#C9BFAF;
}
.sci-chip{
  position:absolute;
  right:12px;
  bottom:14px;
  background:#D6F26A;
  color:#111;
  border-radius:12px;
  padding:8px 12px 7px;
  line-height:1.15;
  max-width:calc(100% - 24px);
}
.sci-chip strong{
  display:block;
  font-size:13px;
  font-weight:800;
}
.sci-chip span{
  display:block;
  font-size:11px;
  font-weight:600;
  color:#333;
}
@media(max-width:900px){
  .sci-cards{grid-template-columns:1fr 1fr;margin-top:16px;padding:0}
}
@media(max-width:600px){
  .sci-cards{grid-template-columns:1fr}
}


.sci-chip{
  opacity:0;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.sci-cards .sci-card:hover .sci-chip,
.sci-cards .sci-card:focus-within .sci-chip{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
@media (hover:none){
  .sci-chip{opacity:1;transform:none;pointer-events:auto}
}

.sci-panel{
  position:absolute;
  left:12px;right:12px;bottom:12px;
  background:rgba(255,255,255,.94);
  border-radius:18px;
  padding:14px 16px 16px;
  text-align:left;
  opacity:0;
  transform:translateY(10px);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease;
}
.sci-cards .sci-card:hover .sci-panel,
.sci-cards .sci-card:focus-within .sci-panel{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.sci-name{
  display:inline-block;
  background:#D7F0B8;
  color:#2C4A22;
  border-radius:999px;
  padding:5px 11px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.01em;
}
.sci-panel h3{
  font-size:20px;
  font-weight:800;
  color:#1B2430;
  margin:10px 0 6px;
  letter-spacing:-.3px;
}
.sci-panel p{
  font-size:13px;
  line-height:1.45;
  color:#6B7280;
  margin:0;
}
.sci-chip{display:none !important}

.lab-meet{
  padding: 8px 24px 72px;
  background: var(--bg);
}
.lab-meet-stage{
  max-width: var(--maxw);
  margin: 0 auto;
  border-radius: 36px;
  overflow: hidden;
  position: relative;
  padding: 64px 40px 40px;
  background: #b8a84a url("/media/sequoia-bg.webp?v=85") center/cover no-repeat;
}
.lab-meet-stage:before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(90,100,30,.28) 0%,rgba(140,130,40,.12) 45%,rgba(160,140,50,.08) 100%);
  pointer-events:none;
}
.lab-meet-copy{
  position:relative;
  z-index:1;
  text-align:center;
  max-width:720px;
  margin: 0 auto 48px;
  color:#fff;
}
.lab-meet-copy h2{
  max-width:none;
  margin: 0 auto 10px;
  color:#fff;
  text-align:center;
}
.lab-meet-kicker{
  text-align:center;
  color:rgba(255,255,255,.82);
}
.lab-meet-line{
  text-align:center;
  color:#fff;
}
.lab-meet-copy p{
  margin-left:auto;
  margin-right:auto;
  color:rgba(255,255,255,.9);
}
.sci-cards{
  position:relative;
  z-index:1;
  margin:0;
  padding:0;
  max-width:none;
}
@media(max-width:900px){
  .lab-meet{padding:8px 16px 48px}
  .lab-meet-stage{padding:40px 20px 24px;border-radius:24px}
  .lab-meet-copy{margin-bottom:28px}
}

.lab-meet-copy,
.lab-meet-copy h2,
.lab-meet-copy p,
.lab-meet-kicker,
.lab-meet-line{
  color:#fff !important;
  text-shadow:0 1px 12px rgba(40,40,10,.35);
}
.sci-name{
  font-size:13px;
  padding:6px 12px;
}

.sci-cards .sci-card,.sci-cards .sci-card img{background:#C9BFAF !important}

.lab-meet{padding:8px 12px 80px !important}
.lab-meet-stage{padding:56px 20px 28px !important;border-radius:32px !important}
.sci-cards{gap:14px !important}
.sci-cards .sci-card{aspect-ratio:3/4.2 !important;min-height:520px !important;border-radius:32px !important}
.lab-meet-copy h2{font-size:clamp(36px,5.4vw,56px) !important}
.lab-meet-line{font-size:clamp(22px,2.6vw,30px) !important}
.sci-panel h3{font-size:22px !important}
@media(max-width:900px){
  .sci-cards .sci-card{min-height:360px !important}
}

.lab-meet-copy{
  text-align:right !important;
  margin-left:auto !important;
  margin-right:0 !important;
  max-width:640px !important;
  padding-right:8px;
}
.lab-meet-copy h2,
.lab-meet-kicker,
.lab-meet-line,
.lab-meet-copy p{
  text-align:right !important;
}
.lab-meet-kicker{
  font-size:15px !important;
  letter-spacing:2px !important;
  margin-bottom:14px !important;
}
.lab-meet-copy h2{
  font-size:clamp(42px,6.2vw,72px) !important;
  line-height:1.02 !important;
  letter-spacing:-2px !important;
  margin-bottom:16px !important;
  max-width:none !important;
}
.lab-meet-line{
  font-size:clamp(26px,3.2vw,40px) !important;
  font-weight:700 !important;
  margin-bottom:16px !important;
}
.lab-meet-copy p{
  font-size:18px !important;
  line-height:1.55 !important;
  max-width:34em;
  margin-left:auto !important;
}
@media(max-width:700px){
  .lab-meet-copy{max-width:none !important}
}

/* Sequoia professors row match v90 */
.lab-meet{padding:12px 24px 72px !important;background:var(--bg) !important}
.lab-meet-stage{
  max-width:var(--maxw) !important;
  margin:0 auto !important;
  border-radius:60px !important;
  overflow:hidden !important;
  position:relative !important;
  padding:72px 48px 48px !important;
  background:#091512 url("/media/sequoia-bg.webp?v=85") center/cover no-repeat !important;
  display:flex !important;
  flex-direction:column !important;
  gap:36px !important;
}
.lab-meet-stage:before{
  content:"" !important;
  position:absolute !important;inset:0 !important;
  background:rgba(9,21,18,.45) !important;
  pointer-events:none !important;
}
.lab-meet-copy{
  position:relative !important;
  z-index:1 !important;
  text-align:right !important;
  max-width:720px !important;
  margin:0 0 0 auto !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:8px !important;
}
.lab-meet-kicker{
  color:#fff !important;
  text-align:right !important;
  font-size:32px !important;
  font-weight:500 !important;
  line-height:40px !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  margin:0 !important;
  text-shadow:none !important;
}
.lab-meet-copy h2{display:none !important}
.lab-meet-line{
  color:rgba(255,255,255,.85) !important;
  text-align:right !important;
  font-size:48px !important;
  font-weight:500 !important;
  line-height:54px !important;
  margin:0 !important;
  text-shadow:none !important;
}
.lab-meet-copy p{
  color:#fff !important;
  text-align:right !important;
  font-size:20px !important;
  font-weight:500 !important;
  line-height:24px !important;
  margin:0 !important;
  max-width:none !important;
  text-shadow:none !important;
}
.sci-cards{
  position:relative !important;
  z-index:1 !important;
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:20px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  max-width:none !important;
}
.sci-cards .sci-card{
  position:relative !important;
  border-radius:18px !important;
  overflow:hidden !important;
  aspect-ratio:3/4 !important;
  min-height:0 !important;
  background:#d4c5a9 !important;
}
.sci-cards .sci-card img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center top !important;
  display:block !important;
  background:#d4c5a9 !important;
  padding:0 !important;
}
.sci-panel{
  position:absolute !important;
  left:0 !important;right:0 !important;bottom:0 !important;
  width:100% !important;
  background:rgba(255,255,255,.5) !important;
  border-radius:36px 36px 18px 18px !important;
  padding:20px 24px !important;
  text-align:left !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translate3d(0,100%,0) !important;
  pointer-events:none !important;
  transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .32s ease,visibility .32s !important;
}
.sci-cards .sci-card:hover .sci-panel,
.sci-cards .sci-card:focus-within .sci-panel{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  pointer-events:auto !important;
}
.sci-name{
  display:inline-block !important;
  background:#c8ec87 !important;
  color:#1f4645 !important;
  border-radius:30px !important;
  padding:3px 8px !important;
  font-size:16px !important;
  font-weight:600 !important;
  margin:0 0 7px !important;
}
.sci-panel h3{
  font-size:20px !important;
  font-weight:500 !important;
  color:#1f4645 !important;
  margin:0 0 4px !important;
  letter-spacing:0 !important;
}
.sci-panel p{
  font-size:16px !important;
  font-weight:400 !important;
  line-height:130% !important;
  color:#2a2929 !important;
  margin:0 !important;
}
@media(max-width:900px){
  .lab-meet-stage{padding:40px 20px 24px !important;border-radius:32px !important;gap:24px !important}
  .lab-meet-kicker{font-size:22px !important;line-height:28px !important}
  .lab-meet-line{font-size:28px !important;line-height:34px !important}
  .sci-cards{grid-template-columns:1fr 1fr !important;gap:12px !important}
}

/* full HBI-like block v91 */
.lab-meet-stage{
  padding:72px 56px 56px !important;
  gap:48px !important;
  border-radius:60px !important;
}
.hbi-row1{
  position:relative;z-index:1;
  display:grid;
  grid-template-columns:2fr 3fr;
  gap:40px;
  align-items:center;
}
.hbi-vials{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.hbi-vials a{
  background:#d4c5a9;
  border-radius:18px;
  overflow:hidden;
  aspect-ratio:1;
  display:block;
}
.hbi-vials img{
  width:100%;height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  padding:8px;
}
.lab-meet-kicker{color:#c8ec87 !important;font-size:32px !important;line-height:40px !important;font-weight:500 !important}
.lab-meet-line{font-size:48px !important;line-height:54px !important;font-weight:500 !important;color:rgba(255,255,255,.85) !important}
.lab-meet-copy p{font-size:20px !important;line-height:24px !important}
.hbi-stats{
  position:relative;z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:20px;
  width:100%;
}
.hbi-stat{
  flex:1 1 200px;
  text-align:right;
}
.hbi-stat strong{
  display:block;
  color:#c8ec87;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:72px;
  font-weight:500;
  line-height:1;
  margin-bottom:12px;
}
.hbi-stat span{
  display:block;
  color:#fff;
  font-size:18px;
  font-weight:500;
  line-height:1.3;
}
@media(max-width:900px){
  .hbi-row1{grid-template-columns:1fr;gap:20px}
  .hbi-vials{order:2}
  .lab-meet-copy{order:1;max-width:none !important}
  .hbi-stat strong{font-size:48px}
  .lab-meet-stage{padding:40px 20px 28px !important}
}

/* Sequoia tokens 1:1 v92 */
.lab-meet{padding:24px !important}
.lab-meet-stage{
  background-color:#091512 !important;
  background-image:url("/media/sequoia-bg.webp?v=85") !important;
  background-size:cover !important;
  background-position:center !important;
  color:#fff !important;
  border-radius:60px !important;
  padding:98px 68px !important;
  gap:56px !important;
}
.lab-meet-stage:before{background:rgba(9,21,18,.55) !important}
.lab-meet-kicker{
  color:#c8ec87 !important;
  font-size:32px !important;
  font-weight:500 !important;
  line-height:40px !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
.lab-meet-line{
  color:rgba(255,255,255,.85) !important;
  font-size:48px !important;
  font-weight:500 !important;
  line-height:54px !important;
}
.lab-meet-copy p{
  color:#fff !important;
  font-size:20px !important;
  font-weight:500 !important;
  line-height:24px !important;
}
.hbi-stat strong{
  color:#c8ec87 !important;
  font-size:78px !important;
  font-weight:500 !important;
  line-height:54px !important;
  font-family:"Geist Mono",ui-monospace,Menlo,Consolas,monospace !important;
}
.hbi-stat span{
  color:#fff !important;
  font-size:20px !important;
  font-weight:500 !important;
  line-height:24px !important;
}
.sci-cards .sci-card,.sci-cards .sci-card img{background:#d4c5a9 !important}
.sci-card{border-radius:18px !important}
.sci-cards{gap:20px !important}
.sci-name{
  background:#c8ec87 !important;
  color:#1f4645 !important;
  border-radius:30px !important;
  font-size:16px !important;
  font-weight:600 !important;
}
.sci-panel{
  background:rgba(255,255,255,.5) !important;
  border-radius:36px 36px 18px 18px !important;
  padding:20px 24px !important;
}
.sci-panel h3{color:#1f4645 !important;font-size:20px !important;font-weight:500 !important}
.sci-panel p{color:#2a2929 !important;font-size:16px !important;font-weight:400 !important}
@media(max-width:899px){
  .lab-meet-stage{padding:72px 24px 40px !important;border-radius:32px !important}
  .lab-meet-line{font-size:clamp(26px,8vw,48px) !important;line-height:1.125 !important}
  .lab-meet-kicker{font-size:22px !important;line-height:28px !important}
}

/* ===== v106 — RTL Lab Team section with dark molecular background ===== */
@import url('https://fonts.googleapis.com/css2?family=Assistant:wght@300;400;500;600;700&display=swap');

.lab-team-rtl{
  position:relative;
  direction:rtl;
  padding:100px 24px;
  overflow:hidden;
  background:#0a2e22 url('/media/lab-bg-molecular.webp') center/cover no-repeat;
}
.lab-team-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(8,30,22,.92) 0%,rgba(8,30,22,.85) 40%,rgba(8,30,22,.95) 100%);
  z-index:0;
}
.lab-team-stage{
  position:relative;z-index:1;
  max-width:1200px;margin:0 auto;
}
.lab-team-head{
  max-width:560px;
  margin:0 0 56px auto;
  text-align:right;
}
.lab-team-kicker{
  font-family:'Assistant',sans-serif;
  font-size:16px;font-weight:500;
  color:#c8ec87;
  margin:0 0 16px;
  letter-spacing:.03em;
}
.lab-team-title{
  font-family:'Assistant',sans-serif;
  font-size:42px;font-weight:700;
  color:#ffffff;
  line-height:1.2;
  margin:0 0 20px;
}
.lab-team-desc{
  font-family:'Assistant',sans-serif;
  font-size:17px;font-weight:400;
  color:rgba(255,255,255,.72);
  line-height:1.6;
  margin:0 0 32px;
}
.lab-team-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:14px 36px;
  border-radius:50px;
  background:#C6D981;
  color:#1a2e14;
  font-family:'Assistant',sans-serif;
  font-size:16px;font-weight:600;
  text-decoration:none;
  transition:all .25s ease;
}
.lab-team-cta:hover{
  background:#d4e89a;
  box-shadow:0 4px 20px rgba(198,217,129,.35);
  transform:translateY(-1px);
}
.lab-team-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}
.lab-team-card{
  background:#eae7e1;
  border-radius:12px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .3s ease,box-shadow .3s ease;
}
.lab-team-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 32px rgba(0,0,0,.2);
}
.lab-team-card-img{
  padding:20px 20px 0;
  display:flex;
  justify-content:center;
}
.lab-team-card-img img{
  width:100%;
  height:auto;
  max-height:320px;
  object-fit:contain;
}
.lab-team-card-body{
  padding:20px 24px 28px;
  text-align:right;
}
.lab-team-name{
  display:block;
  font-family:'Assistant',sans-serif;
  font-size:15px;font-weight:600;
  color:#555;
  margin-bottom:8px;
}
.lab-team-card-body h3{
  font-family:'Assistant',sans-serif;
  font-size:22px;font-weight:700;
  color:#1f4645;
  margin:0 0 10px;
}
.lab-team-card-body p{
  font-family:'Assistant',sans-serif;
  font-size:14px;font-weight:400;
  color:#666;
  line-height:1.5;
  margin:0;
}

/* ===== Responsive ===== */
@media(max-width:1099px){
  .lab-team-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:599px){
  .lab-team-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .lab-team-head{margin-bottom:32px;max-width:100%}
  .lab-team-title{font-size:28px}
  .lab-team-card-img{max-height:260px}
}

/* lab-team spec v93 */
.lab-team-rtl{
  position:relative;
  direction:rtl;
  padding:24px;
  overflow:hidden;
  font-family:'Assistant','Heebo',sans-serif;
  background:#091512 url('/media/lab-bg-molecular.webp') center/cover no-repeat;
  background-color:#091512;
}
.lab-team-overlay{
  position:absolute;inset:0;z-index:0;
  background:linear-gradient(180deg,rgba(9,21,18,.72) 0%,rgba(9,21,18,.55) 45%,rgba(9,21,18,.78) 100%);
}
.lab-team-stage{
  position:relative;z-index:1;
  max-width:1280px;margin:0 auto;
  padding:72px 48px 56px;
}
.lab-team-head{
  max-width:720px;
  margin:0 0 36px auto;
  text-align:right;
  display:flex;flex-direction:column;align-items:flex-start;gap:8px;
}
.lab-team-kicker{
  margin:0;
  color:#C6D981;
  font-size:32px;font-weight:500;line-height:40px;
  letter-spacing:0;text-transform:none;
}
.lab-team-title{
  margin:0;
  color:#fff;
  font-size:48px;font-weight:500;line-height:54px;
}
.lab-team-desc{
  margin:0;
  color:rgba(255,255,255,.82);
  font-size:20px;font-weight:500;line-height:24px;
}
.lab-team-cta{
  display:inline-flex;align-items:center;justify-content:center;
  margin-top:8px;
  padding:12px 32px;
  border-radius:50px;
  background:#C6D981;
  color:#1a2e14;
  font-size:16px;font-weight:600;line-height:24px;
  text-decoration:none;
  transition:background .18s ease,transform .14s ease;
}
.lab-team-cta:hover{
  background:#d4e89a;
  transform:translateY(-1px);
  color:#1a2e14;
}
.lab-team-grid{
  list-style:none;margin:0;padding:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}
.lab-team-card{
  position:relative;
  background:#eae7e1;
  border-radius:12px;
  overflow:hidden;
  aspect-ratio:3/4;
}
.lab-team-card img{
  width:100%;height:100%;
  object-fit:cover;object-position:center top;
  display:block;
  background:#eae7e1;
}
.lab-team-panel{
  position:absolute;left:0;right:0;bottom:0;
  padding:20px 24px;
  background:rgba(255,255,255,.5);
  border-radius:36px 36px 12px 12px;
  text-align:right;
  transform:translateY(100%);
  opacity:0;visibility:hidden;
  transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .32s ease,visibility .32s;
}
.lab-team-card:hover .lab-team-panel,
.lab-team-card:focus-within .lab-team-panel{
  transform:none;opacity:1;visibility:visible;
}
.lab-team-name{
  display:inline-block;
  background:#C6D981;color:#1f4645;
  border-radius:30px;
  padding:3px 8px;
  font-size:16px;font-weight:600;
  margin:0 0 7px;
}
.lab-team-panel h3{
  margin:0 0 4px;
  color:#1f4645;
  font-size:20px;font-weight:500;
}
.lab-team-panel p{
  margin:0;
  color:#2a2929;
  font-size:16px;font-weight:400;line-height:1.3;
}
@media(max-width:900px){
  .lab-team-stage{padding:40px 20px 28px}
  .lab-team-kicker{font-size:22px;line-height:28px}
  .lab-team-title{font-size:28px;line-height:34px}
  .lab-team-grid{
    display:flex;overflow-x:auto;gap:12px;
    grid-template-columns:none;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  }
  .lab-team-card{flex:0 0 72%;scroll-snap-align:start}
}

/* lab-team English v94 — keep right stack, LTR copy */
.lab-team-rtl{direction:ltr}
.lab-team-head{text-align:right;align-items:flex-end}
.lab-team-panel{text-align:left}

/* lab-team LTR left stack v98 */
.lab-team-rtl{direction:ltr}
.lab-team-head{
  margin:0 auto 36px 0;
  text-align:left;
  align-items:flex-start;
}
.lab-team-kicker,.lab-team-title,.lab-team-desc{text-align:left}
.lab-team-panel{text-align:left}

/* hover only, click dismisses, no sticky focus v100 */
.lab-team-card{outline:none}
.lab-team-panel{
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
}
.lab-team-card:hover .lab-team-panel,
.lab-team-card:focus-within .lab-team-panel{
  transform:translateY(100%) !important;
  opacity:0 !important;
  visibility:hidden !important;
}
@media (hover:hover){
  .lab-team-card:hover .lab-team-panel{
    transform:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  .lab-team-card.panel-off:hover .lab-team-panel,
  .lab-team-card.panel-off .lab-team-panel{
    transform:translateY(100%) !important;
    opacity:0 !important;
    visibility:hidden !important;
  }
}
.lab-team-card.is-open .lab-team-panel{
  transform:none !important;
  opacity:1 !important;
  visibility:visible !important;
}

.lab-team-card.panel-off .lab-team-panel,
.lab-team-card.panel-off.is-open .lab-team-panel{
  transform:translateY(100%) !important;
  opacity:0 !important;
  visibility:hidden !important;
}

/* lab-points v102 */
.lab-points{
  list-style:none;margin:56px 0 0;padding:0;
  display:grid;grid-template-columns:repeat(3,1fr);gap:28px 20px;
}
.lab-points li{
  position:relative;
  background:#C6D981;
  color:#1a2e14;
  border-radius:22px;
  padding:48px 28px 32px;
  text-align:center;
  font-family:'Assistant','Heebo',sans-serif;
}
.lab-points-ico{
  position:absolute;top:0;left:50%;
  width:56px;height:56px;
  margin:0;transform:translate(-50%,-50%);
  background:#1f4645;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}
.lab-points-ico svg{width:26px;height:26px}
.lab-points h3{
  margin:0 0 10px;
  font-size:22px;font-weight:700;line-height:1.2;
  color:#1a2e14;
}
.lab-points p{
  margin:0;
  font-size:15px;font-weight:400;line-height:1.45;
  color:#1a2e14;
}
@media(max-width:800px){
  .lab-points{grid-template-columns:1fr;gap:36px;margin-top:40px}
}

/* lab-points in process slot v104 */
.lab-points-section{
  background:#f6f1e8;
  padding:72px 24px;
}
.lab-points-section .section-inner{max-width:1200px;margin:0 auto}
.lab-points-section .lab-points{margin:0}
.process-section .lab-points li{box-shadow:none}

/* lab-points beige v106 */
.lab-points li{
  background:#F2D191 !important;
  color:#111 !important;
}
.lab-points h3,.lab-points p{color:#111 !important}
.lab-points-ico{background:#3a2a18}

/* kicker white v108 */
.lab-team-kicker{color:#fff !important}

/* kicker amber v109 */
.lab-team-kicker{color:#FBCF87 !important}

/* scientists cream bg v112 */
.lab-team-rtl{
  background:#f6f1e8 !important;
  background-image:none !important;
  background-color:#f6f1e8 !important;
}
.lab-team-overlay{display:none !important}
.lab-team-kicker{color:#c48a2a !important}
.lab-team-title{color:#1a1a1a !important}
.lab-team-desc{color:#4a453c !important}

/* journal cards v116 */
.jrnl-section{background:#fff;padding:72px 24px}
.jrnl-inner{max-width:1280px;margin:0 auto}
.jrnl-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}
.jrnl-head h2{margin:0;font-size:42px;font-weight:700;color:#1a1a1a;letter-spacing:-.02em}
.jrnl-head p{margin:8px 0 0;font-size:16px;color:#6b6560}
.jrnl-all{color:#1a1a1a;font-weight:600;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.jrnl-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.jrnl-card{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.jrnl-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;background:#f0ebe3;display:block}
.jrnl-date{margin:14px 0 6px;font-size:13px;color:#8a847c}
.jrnl-card h3{margin:0 0 8px;font-size:18px;font-weight:700;line-height:1.25;color:#1a1a1a}
.jrnl-card p{margin:0 0 12px;font-size:14px;line-height:1.45;color:#5c574f;flex:1}
.jrnl-more{font-size:14px;font-weight:600;color:#1a1a1a;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
  .jrnl-grid{display:flex;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory}
  .jrnl-grid li{flex:0 0 78%;scroll-snap-align:start}
  .jrnl-head h2{font-size:28px}
}

/* balloon bold headings v119 */
.lab-team-title,
.jrnl-head h2{
  font-family:'Baloo 2', 'Assistant', sans-serif !important;
  font-weight:800 !important;
  letter-spacing:.01em;
}

/* continue shopping v120 */
.btn-continue{
  display:block;width:100%;
  margin-top:10px;
  padding:14px 20px;
  border-radius:999px;
  border:1.5px solid #1a1a1a;
  background:#fff;
  color:#1a1a1a;
  font-size:15px;font-weight:700;
  cursor:pointer;
}
.btn-continue:hover{background:#f6f1e8}

/* ship orange + cart count/was v121 */
.ship-bar{background:#F2D191 !important;color:#111 !important}
.ci-price .was{font-size:14px;font-weight:500;color:#8a847c;text-decoration:line-through;margin-left:8px}
.cart-count-label{font-size:.55em;font-weight:600;color:#6b6560;margin-left:8px;letter-spacing:0}
.btn-continue{
  display:block;width:100%;
  margin-top:10px;
  padding:14px 20px;
  border-radius:999px;
  border:1.5px solid #1a1a1a;
  background:#fff;
  color:#1a1a1a;
  font-size:15px;font-weight:700;
  cursor:pointer;
}
.btn-continue:hover{background:#f6f1e8}

/* ship orange + cart count/was v121 */
.ship-bar{background:#F2D191 !important;color:#111 !important}
.ci-price .was{font-size:14px;font-weight:500;color:#8a847c;text-decoration:line-through;margin-left:8px}
.cart-count-label{font-size:.55em;font-weight:600;color:#6b6560;margin-left:8px;letter-spacing:0}
.btn-continue{
  display:block;width:100%;
  margin-top:10px;
  padding:14px 20px;
  border-radius:999px;
  border:1.5px solid #1a1a1a;
  background:#fff;
  color:#1a1a1a;
  font-size:15px;font-weight:700;
  cursor:pointer;
}
.btn-continue:hover{background:#f6f1e8}

/* continue shopping polish v122 */
.cart-footer .btn-continue{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;
  margin:16px 0 0;
  padding:15px 22px;
  border-radius:999px;
  border:0;
  background:#f6f1e8;
  color:#1a1a1a;
  font-size:15px;font-weight:700;
  letter-spacing:.01em;
  cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(26,26,26,.12);
  transition:background .18s ease, transform .14s ease;
}
.cart-footer .btn-continue:hover{
  background:#F2D191;
  transform:translateY(-1px);
}
.cart-footer .cart-note{margin-top:10px;margin-bottom:0}

/* footer polish v123 */
.footer{
  background:#161310 !important;
  color:#fff !important;
  padding:72px 48px 36px !important;
  overflow:hidden;
}
.footer-inner{max-width:1280px;margin:0 auto}
.footer-hero{margin-bottom:48px}
a.footer-brand{
  display:inline-block;
  font-family:'Fraunces',Georgia,serif !important;
  font-size:42px !important;
  font-weight:500 !important;
  color:#fff !important;
  text-transform:lowercase;
  letter-spacing:-.03em;
  text-decoration:none !important;
  line-height:1;
}
.footer-brand-desc{
  margin:12px 0 0;
  font-size:16px;
  color:rgba(255,255,255,.72) !important;
  max-width:none;
}
.footer-top{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:40px 32px !important;
  margin-bottom:56px !important;
  padding-top:36px;
  border-top:1px solid rgba(255,255,255,.12);
}
.footer-col h4{
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.14em !important;
  color:#FBCF87 !important;
  margin-bottom:18px !important;
}
.footer-col a{
  color:rgba(255,255,255,.82) !important;
  font-size:15px !important;
  padding:5px 0 !important;
}
.footer-col a:hover{color:#FBCF87 !important}
.footer-chip{
  display:inline-flex !important;
  align-items:center;
  width:auto !important;
  margin:0 8px 10px 0 !important;
  padding:10px 16px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.08);
  color:#fff !important;
  font-size:14px !important;
  font-weight:600;
}
.footer-chip:hover{background:#F2D191;color:#1a1a1a !important}
.footer-address{
  margin-top:18px;
  font-size:13px !important;
  color:rgba(255,255,255,.7) !important;
  line-height:1.7;
}
.footer-wordmark{
  display:block !important;
  font-family:'Fraunces',Georgia,serif !important;
  font-size:clamp(48px,10vw,132px) !important;
  font-weight:500 !important;
  color:rgba(255,255,255,.08) !important;
  text-transform:lowercase;
  letter-spacing:-.04em;
  line-height:.85;
  margin:8px 0 28px;
  pointer-events:none;
  white-space:nowrap;
  overflow:hidden;
}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12) !important;
  padding-top:24px !important;
}
.footer-disclaimer{
  color:#fff !important;
  font-size:13px !important;
  max-width:820px;
  line-height:1.65;
}
@media(max-width:800px){
  .footer{padding:48px 20px 28px !important}
  a.footer-brand{font-size:32px !important}
  .footer-top{grid-template-columns:1fr 1fr !important;gap:28px 20px !important}
}

/* nav-logo-mobile-nowrap */
.nav-logo{white-space:nowrap;flex-shrink:0;align-items:baseline}
.nav-logo-text{white-space:nowrap}
@media(max-width:768px){
  .nav{padding:12px 16px;gap:8px}
  .nav-logo-mark{font-size:22px!important}
  .nav-logo-text{font-size:16px!important;white-space:nowrap;letter-spacing:-.5px}
  .nav-right{gap:10px;flex-shrink:0}
  .nav-cart{font-size:13px;padding:6px 2px}
}
@media(max-width:420px){
  .nav-logo-mark{font-size:22px!important}
  .nav-logo-text{font-size:14px!important}
  .nav-right{gap:6px}
}
/* /nav-logo-mobile-nowrap */

/* unified-vial-cream */
.product-img-main{background:#F5F2ED!important}
.product-img-main img{background:#F5F2ED!important}
.product-card-img,.product-card-img img{background:#F5F2ED!important}


.ci-img{background:#F5F2ED!important}
/* /unified-vial-cream */

/* catalog-popular-head */
.catalog-header .section-kicker{color:#c48a2a;font-size:13px;letter-spacing:.14em}
.catalog-title{
  font-family:var(--font, system-ui, sans-serif) !important;
  font-weight:800 !important;
  font-size:clamp(40px,6vw,64px) !important;
  letter-spacing:-.04em !important;
  color:#1a1a1a !important;
  line-height:1.05 !important;
}
/* /catalog-popular-head */



/* compounds-four-clear */
.compounds-shot{
  background:#fff !important;
  border:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  border-radius:28px !important;
  overflow:hidden;
}
.compounds-shot img{
  background:#fff !important;
  border-radius:0 !important;
  max-height:none !important;
  object-fit:cover !important;
  width:100% !important;
  height:auto !important;
}
/* /compounds-four-clear */

/* hero-launch-inset */
.hero-tiles .hero-card,
.hero-tiles .hero-card-singles,
.hero-tiles .hero-card-blends,
.hero-tiles .hero-card:nth-child(3),
.hero-tiles .hero-card:nth-child(4){
  background:#E2D1CA !important;
  overflow:hidden;
  padding:18px 22px 18px 32px !important;
  min-height:176px !important;
  align-items:center !important;
}
.hero-tiles .hero-card-title{
  font-family:var(--font, system-ui, sans-serif) !important;
  font-weight:800 !important;
  letter-spacing:-.04em !important;
}
.hero-tiles .hero-card img{
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  width:auto !important;
  max-width:38% !important;
  height:128px !important;
  margin:0 8px 0 0 !important;
  align-self:center !important;
  filter:none !important;
}
@media(max-width:800px){
  .hero-tiles .hero-card{padding:16px 18px 16px 24px !important; min-height:148px !important;}
  .hero-tiles .hero-card img{height:108px !important; max-width:36% !important;}
}
.split-photo{background:#E2D1CA !important;}
.split-photo img{object-fit:contain !important; background:transparent !important;}
/* /hero-launch-inset */

/* cart-no-square */
.cart-addcard{padding:0 0 12px !important;overflow:hidden !important}
.cart-addcard img,.cart-addmore .cart-addcard img{
  width:100% !important;height:96px !important;max-width:none !important;max-height:none !important;
  object-fit:cover !important;object-position:center 38% !important;
  background:#f3f7f4 !important;border-radius:0 !important;display:block !important;
}
.ci-img, .cart-item > img, .oi-img{
  overflow:hidden !important;background:#F5F2ED !important;
}
.ci-img img, .oi-img img, .cart-item > img{
  width:100% !important;height:100% !important;
  object-fit:cover !important;object-position:center 38% !important;
  background:#F5F2ED !important;
}
.product-img-main, .product-card-img{
  overflow:hidden !important;background:#F5F2ED !important;
}
.product-img-main img, .product-card-img img{
  object-fit:cover !important;object-position:center 42% !important;
  width:100% !important;background:#F5F2ED !important;
}
.split-photo{background:#F5F2ED !important}
.split-photo img{object-fit:contain !important;background:transparent !important}
/* /cart-no-square */

/* cart-img-pdp-link */
.ci-img a,.oi-img a{display:block;width:100%;height:100%}
.ci-img a img,.oi-img a img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.cart-addcard a{display:block;width:100%;line-height:0}
/* /cart-img-pdp-link */

/* continue-arrow-size */
.btn-continue span[aria-hidden],
.cart-footer .btn-continue span[aria-hidden]{
  font-size:1.2em;
  line-height:1;
  font-weight:400;
  display:inline-flex;
  align-items:center;
  transform:scale(1.15);
  transform-origin:center;
}
.btn-continue svg,
.cart-footer .btn-continue svg{
  width:1em;
  height:1em;
  flex-shrink:0;
}
/* /continue-arrow-size */
/* pdp-story */
.pdp-expect-wrap{margin:36px 0 8px;background:#F7F4EE}
.pdp-trustbar{background:#1B2A4A;color:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;padding:12px 24px;font-size:12px;font-weight:700;letter-spacing:.02em}
.pdp-trustbar i{width:4px;height:4px;border-radius:50%;background:#c4a574;display:inline-block}
.pdp-expect{max-width:1100px;margin:0 auto;padding:36px 28px 48px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:28px;align-items:center}
.pdp-expect-visual{display:flex;align-items:center;justify-content:center}
.pdp-body-sketch{width:min(100%,340px);height:auto;display:block;margin:0 auto;object-fit:contain}
.pdp-expect-col h2{font-family:var(--font, system-ui, sans-serif);font-size:clamp(32px,4.4vw,48px);font-weight:800;letter-spacing:-.04em;color:#1B2A4A;margin:0 0 22px;text-align:center}
.pdp-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;position:relative}
.pdp-steps li{display:grid;grid-template-columns:1fr 36px;gap:14px;align-items:stretch;position:relative}
.pdp-steps li:not(:last-child)::after{content:"";position:absolute;right:17px;top:40px;bottom:-14px;width:2px;background:#d9c7a2}
.pdp-step-card{background:#fff;border-radius:16px;padding:16px 18px;box-shadow:0 8px 28px rgba(27,42,74,.06)}
.pdp-step-when{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#c4a574;margin:0 0 6px}
.pdp-step-card h3{font-size:18px;font-weight:800;margin:0 0 6px;color:#1B2A4A}
.pdp-step-card p{font-size:14px;line-height:1.5;color:#4a453f;margin:0}
.pdp-step-num{width:36px;height:36px;border-radius:50%;background:#1B2A4A;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;z-index:1;align-self:center}
.pdp-docs-wrap{background:#F7F4EE;margin:0;padding:8px 0 40px}
.pdp-docs-inner,.pdp-also-inner{max-width:1100px;margin:0 auto;padding:0 28px}
.pdp-docs-wrap h2,.pdp-also-wrap h2{font-family:var(--font, system-ui, sans-serif);font-size:clamp(28px,4vw,42px);font-weight:800;letter-spacing:-.04em;color:#1B2A4A;margin:28px 0 10px;line-height:1.1}
.pdp-lead{font-size:16px;line-height:1.65;color:#4a453f;margin:0 0 22px;max-width:720px}
.pdp-docs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:8px 0 4px}
.pdp-docs article{background:#fff;border-radius:22px;padding:8px 18px 20px;box-shadow:0 8px 28px rgba(27,42,74,.05)}
.pdp-doc-art{height:88px;display:flex;align-items:center;justify-content:center;margin:4px 0 6px}
.pdp-doc-fig{width:100%;height:88px;display:block}
.pdp-docs h3{font-size:18px;font-weight:800;margin:0 0 8px;color:#1B2A4A}
.pdp-docs p{font-size:14px;line-height:1.5;color:#4a453f;margin:0}
.pdp-coa-btn{margin-top:14px;display:inline-block;background:#1B2A4A;color:#fff;border:0;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:800;cursor:pointer}
.pdp-also-wrap{background:#fff;padding:8px 0 56px}
.pdp-also{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:8px}
.pdp-also-card{display:flex;flex-direction:column;align-items:center;text-decoration:none;background:#F5F2ED;border-radius:28px;padding:18px 12px 20px;color:#1a1a1a}
.pdp-also-card img{width:100%;height:240px;object-fit:contain;object-position:center;background:#F5F2ED}
.pdp-also-card strong{font-size:18px;font-weight:800;margin-top:10px;text-align:center;color:#1B2A4A}
.pdp-also-price{font-size:16px;font-weight:800;color:#c4a574;margin-top:4px}
.pdp-also-view{margin-top:10px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#1B2A4A;background:#fff;border-radius:999px;padding:7px 14px}
.pdp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 36px}
.pdp-chips span{background:#F5F2ED;border:1px solid rgba(26,26,26,.08);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700;color:#1a1a1a}
.pdp-faq{background:#fff;border:1px solid #e8e2d8;border-radius:14px;padding:4px 16px;margin:0 0 8px}
.pdp-faq summary{cursor:pointer;font-weight:700;font-size:16px;padding:14px 0;list-style:none;color:#1a1a1a}
.pdp-faq summary::-webkit-details-marker{display:none}
.pdp-faq p{margin:0 0 14px;font-size:15px;line-height:1.6;color:#4a453f}
@media(max-width:800px){
  .pdp-expect{grid-template-columns:1fr;padding:24px 16px 32px}
  .pdp-body-sketch{width:min(100%,260px)}
  .pdp-docs-inner,.pdp-also-inner{padding:0 16px}
  .pdp-docs,.pdp-also{grid-template-columns:1fr}
  .pdp-also-card img{height:280px}
}
/* /pdp-story */

/* science.html text cards must not inherit homepage scientist 3:4 portraits */
.sci-body .sci-card{
  aspect-ratio:auto !important;
  min-height:0 !important;
  height:auto !important;
  background:#fff !important;
  overflow:visible !important;
}
.sci-body .sci-card img{
  height:auto !important;
  width:auto !important;
  max-width:100%;
  object-fit:contain !important;
  background:transparent !important;
}

/* v141 science.html notes: undo leftover scientist-tile chrome */
.sci-body .sci-card{
  position:static !important;
  display:block !important;
  background:#fff !important;
  border:1px solid var(--border, #E8E2D8) !important;
  border-radius:24px !important;
  overflow:visible !important;
  aspect-ratio:auto !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  padding:28px 24px 24px !important;
  box-shadow:var(--shadow-sm, 0 1px 3px rgba(31,31,31,.04)) !important;
}
.sci-body .sci-card-wide{
  padding:28px 28px 20px !important;
  overflow:visible !important;
}
.sci-body .sci-card img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
  padding:0 !important;
  aspect-ratio:auto !important;
}
.sci-body .sci-bleed img{
  background:#F5F2ED !important;
  object-fit:contain !important;
  max-height:72vh;
}
.sci-body .sci-photo img{
  background:#F5F2ED !important;
  object-fit:contain !important;
}
.sci-body .sci-card h3,
.sci-body .id-dl dd,
.sci-body .sci-card-k{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.sci-body .price-bars,
.sci-body .net-svg{
  overflow:visible;
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
}
.sci-body .id-dl div{
  min-width:0;
}

/* promo-stack */
.promo-stack{position:sticky;top:0;z-index:70;font-family:var(--font,system-ui,sans-serif)}
.ruo-bar{background:#F8EBC8;color:#111;text-align:center;padding:7px 12px;font-size:11px;font-weight:800;letter-spacing:.06em;line-height:1.25}
.promo-bar{background:#0d2137;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px}
.promo-off{font-size:18px;font-weight:800;letter-spacing:.01em;line-height:1;white-space:nowrap}
.promo-mid{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin-left:auto}
.promo-kicker{font-size:10px;font-weight:700;letter-spacing:.14em;opacity:.85}
.promo-code{background:#F2D191;color:#111;font-weight:800;font-size:15px;letter-spacing:.04em;padding:8px 14px;border-radius:8px;border:0;cursor:pointer;line-height:1}
.promo-code:hover{filter:brightness(.97)}
.cutoff-bar{background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid #eee}
.cutoff-copy{display:flex;flex-direction:column;gap:1px;min-width:0}
.cutoff-copy strong{font-size:12px;letter-spacing:.08em;color:#0d2137}
.cutoff-copy span{font-size:12px;color:#4a6358}
.cutoff-timer{flex:0 0 auto;font-variant-numeric:tabular-nums;font-weight:800;font-size:18px;letter-spacing:.04em;color:#0d2137;border:1.5px solid #0d2137;border-radius:10px;padding:6px 12px;line-height:1}
@media (max-width:640px){
  .promo-off{font-size:14px;max-width:58%}
  .promo-code{font-size:13px;padding:7px 10px}
  .cutoff-timer{font-size:15px;padding:5px 8px}
  .cutoff-copy span{font-size:11px}
}

/* mg-picker */
.mg-picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px}
.mg-picker-label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#4a6358;width:100%}
.mg-picker button,.size-options .size-btn{padding:8px 16px;border:1.5px solid #0d2137;border-radius:999px;background:#fff;color:#0d2137;font-weight:800;font-size:13px;cursor:pointer}
.mg-picker button.on,.mg-picker button[data-mg].on,.size-btn.active{background:#0d2137;color:#fff}

/* nav-northline — logo left */
.nav{
  position:sticky;
  top:34px;
  z-index:1000;
  background:#F5F2EC;
  border-bottom:1px solid rgba(13,33,55,.08);
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:28px;
  padding:14px 40px;
}
.nav-logo{order:0;flex-shrink:0;margin-right:4px}
.nav-left{display:flex;align-items:center;gap:40px;order:1}
.nav-left a{font-size:15px;font-weight:500;color:#1F1F1F;text-decoration:none;letter-spacing:.01em}
.nav-left a:hover{opacity:.55}
.nav-right{margin-left:auto;order:2;display:flex;align-items:center;gap:26px}
.nav-cart-count{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:18px;height:18px;padding:0 5px;border-radius:999px;
  background:#1a3a2a;color:#fff;font-size:11px;font-weight:700;line-height:1;
}
@media (max-width:800px){
  .nav{display:flex;justify-content:space-between;padding:12px 16px}
  .nav-left{display:none}
}

/* promo-one-row */
.promo-stack{position:sticky;top:0;z-index:1100}
.promo-bar{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;padding:8px 16px}
.promo-off{font-size:16px}
.promo-ends{color:#F2D191;font-size:13px;font-weight:700;letter-spacing:.04em}
.promo-bar .cutoff-timer{border:0;padding:0;color:#F2D191;font-size:15px}
.nav-util{
  width:38px;height:38px;padding:0;margin-right:0;
  border:1.5px solid #0d2137;border-radius:50%;
  color:#0d2137;text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:0;line-height:0;
}
.nav-util svg{width:18px;height:18px;display:block}
.nav-util:hover{opacity:.55}
.insider-club{max-width:1100px;margin:0 auto 48px;background:#0d2137;color:#fff;border-radius:22px;padding:28px 28px 24px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}
.insider-club h3{margin:0 0 6px;font-size:22px}
.insider-club h3 em{color:#F2D191;font-style:normal}
.insider-club p{margin:0 0 14px;opacity:.85;font-size:14px}
.insider-club-form{display:flex;gap:8px;flex-wrap:wrap}
.insider-club input{flex:1;min-width:200px;border:0;border-radius:999px;padding:12px 16px;font-size:15px}
.insider-club button{border:0;border-radius:999px;background:#F2D191;color:#111;font-weight:800;padding:12px 18px;cursor:pointer}
.insider-club-badge{border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:6px 10px;font-size:11px;letter-spacing:.12em;font-weight:700}
.insider-out{margin-top:10px;font-size:14px;color:#F2D191}
@media (max-width:700px){
  .insider-club{grid-template-columns:1fr;padding:22px 18px}
}

/* gold-bars */
.promo-bar{background:#F2D191;color:#111}
.promo-off{color:#111}
.promo-code{background:#0d2137;color:#fff}
.promo-ends,.promo-bar .cutoff-timer{color:#111}
.ruo-bar{background:#F2D191;color:#111}
.insider-club{background:#F2D191;color:#111}
.insider-club h3 em{color:#0d2137}
.insider-club p{opacity:.9;color:#1F1F1F}
.insider-club-badge{border-color:#0d2137;color:#0d2137}
.insider-club button{background:#0d2137;color:#fff}
.insider-out{color:#0d2137}

/* insider-large */
.insider-club{
  max-width:720px;
  width:fit-content;
  margin:24px auto 64px;
  background:#F2D191;
  color:#111;
  border-radius:28px;
  padding:32px 36px 28px;
  min-height:0;
  display:block;
}
.insider-club h3{margin:0 0 18px;font-size:34px;line-height:1.15;font-weight:800}
.insider-club h3 em{color:#0d2137;font-style:normal}
.insider-club p{display:none}
.insider-club-form{display:flex;gap:10px;flex-wrap:wrap;max-width:640px}
.insider-club input{
  flex:1;min-width:240px;height:52px;border:0;border-radius:999px;
  padding:0 20px;font-size:16px;background:#fff;color:#111
}
.insider-club button{
  height:52px;border:0;border-radius:999px;background:#0d2137;color:#fff;
  font-weight:800;font-size:16px;padding:0 22px;cursor:pointer
}
.insider-club-badge{display:none !important}
@media (max-width:700px){
  .insider-club{grid-template-columns:1fr;padding:28px 20px;min-height:0}
  .insider-club h3{font-size:26px}
}



/* nl-hero */
.hero{
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  height:auto !important;
  display:block;
  position:relative;
  overflow:visible;
  background:#F5F2EC;
}
.hero::before{display:none !important;content:none !important}
.nl-hero{
  position:relative;
  z-index:1;
  max-width:1200px;
  width:100%;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);
  gap:20px 24px;
  align-items:center;
  padding:28px 40px 20px;
  min-height:0;
  height:auto;
  box-sizing:border-box;
  overflow:visible;
}
.nl-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:4px 0 8px;
  max-width:540px;
}
.nl-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  background:#F2D191;
  color:#0d2137;
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
  padding:7px 12px;
  border-radius:999px;
  margin:0 0 14px;
  border:0;
}
.nl-dot{
  width:8px;height:8px;border-radius:50%;
  background:#0d2137;display:inline-block;flex:0 0 auto;
}
.nl-title{
  font-family:'Saira',var(--font-display),sans-serif;
  font-size:clamp(40px,4.8vw,58px);
  line-height:.98;
  font-weight:800;
  color:#0d2137;
  margin:0 0 12px;
  letter-spacing:-.035em;
  max-width:none;
}
.nl-title .nl-off{color:#C9A46A;font-weight:800}
.nl-sub{
  font-size:16px;
  line-height:1.45;
  color:#2f3b48;
  margin:0 0 10px;
  max-width:420px;
  font-weight:500;
}
.nl-price{
  margin:0 0 14px;
  font-size:15px;
  font-weight:800;
  letter-spacing:.02em;
  color:#0d2137;
}
.nl-offer,.nl-offer-ico,.nl-btn-ghost{display:none !important}
.nl-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px;align-items:center}
.nl-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:999px;
  padding:13px 24px;
  font-weight:700;
  font-size:15px;
  text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease;
}
.nl-btn-primary{
  background:#0d2137;
  color:#fff;
  box-shadow:0 10px 22px rgba(13,33,55,.18);
  border:1.5px solid #0d2137;
}
.nl-btn-primary:hover{
  background:#163252;
  color:#fff;
  transform:translateY(-1px);
}
.nl-btn-secondary{
  background:transparent;
  color:#0d2137;
  border:1.5px solid #0d2137;
}
.nl-btn-secondary:hover{
  background:#0d2137;
  color:#fff;
}
.nl-btn-arrow{font-weight:700;line-height:1}
.nl-trust-row{
  list-style:none;
  margin:0 0 10px;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
}
.nl-trust-row li{
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:13px;
  font-weight:600;
  color:#0d2137;
  line-height:1.2;
}
.nl-trust-ico{
  width:28px;height:28px;
  border-radius:50%;
  background:#F2D191;
  color:#0d2137;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.nl-trust{
  margin:0;
  font-size:12px;
  color:#4a5560;
  letter-spacing:.01em;
}
.nl-stage{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  min-height:0;
  height:auto;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  padding:4px 12px 8px;
  overflow:visible;
  box-shadow:none !important;
}
.nl-stock{display:none !important}
.nl-stage img{
  width:auto;
  height:min(52vh, 520px);
  max-height:min(52vh, 520px);
  max-width:100%;
  object-fit:contain;
  object-position:center center;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  display:block;
  filter:drop-shadow(0 18px 26px rgba(13,33,55,.16));
}
.hero + .catalog-section{padding-top:20px; background:#fff}
@media (max-width:860px){
  .nl-hero{
    grid-template-columns:1fr;
    gap:12px;
    padding:20px 18px 12px;
  }
  .nl-title{font-size:clamp(32px,8.5vw,44px);max-width:none}
  .nl-copy{padding:0;max-width:none}
  .nl-stage{
    min-height:0;
    height:auto;
    aspect-ratio:auto;
    max-height:none;
    justify-content:center;
    padding:4px 8px 12px;
  }
  .nl-stage img{
    height:auto;
    max-height:42vh;
    width:auto;
    max-width:78%;
    margin:0 auto;
  }
  .nl-actions{flex-direction:column;align-items:stretch}
  .nl-btn{width:100%}
}


/* nav-cart-circle */
.nav-cart{
  width:38px;height:38px;padding:0;gap:0;
  border:1.5px solid #0d2137;
  border-radius:50%;
  background:transparent;
  color:#0d2137;
  position:relative;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:0;line-height:0;
}
.nav-cart svg{width:18px;height:18px;display:block}
.nav-cart-count{
  position:absolute;top:-5px;right:-5px;
  min-width:16px;height:16px;padding:0 4px;
  border-radius:999px;
  background:#0d2137;color:#fff;
  font-size:10px;font-weight:700;line-height:16px;
  display:inline-flex;align-items:center;justify-content:center;
}
.nav-cart.continue-shop{
  width:auto;height:auto;padding:8px 4px;
  border:0;border-radius:0;font-size:15px;line-height:1.2;
  color:#1F1F1F;
}

/* hide-header-ruo-bar */
.ruo-bar{display:none !important;height:0 !important;padding:0 !important;overflow:hidden !important}
.promo-stack .ruo-bar{display:none !important}

/* promo-marquee */
.promo-stack{position:sticky;top:0;z-index:1100;overflow:hidden;width:100%}
.promo-bar{
  background:#0d2137 !important;color:#fff !important;
  overflow:hidden !important;height:34px !important;padding:0 !important;
  display:flex !important;align-items:center !important;justify-content:flex-start !important;
  flex-wrap:nowrap !important;gap:0 !important;width:100%;
  border:0 !important;
}
.promo-track{
  display:flex;align-items:center;flex-wrap:nowrap;
  width:max-content;
  animation:promo-marquee 70s linear infinite;
}
.promo-bar:hover .promo-track{animation-play-state:paused}
.promo-group{display:flex;align-items:center;flex:0 0 auto}
.promo-seg{
  display:inline-flex;align-items:center;gap:10px;
  padding:0 8px 0 4px;white-space:nowrap;
  font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;
}
.promo-sep{
  width:14px;height:14px;margin:0 22px;border:1px solid rgba(242,209,145,.7);
  border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  font-size:9px;line-height:1;color:#F2D191;flex:0 0 auto;
}
.promo-seg .promo-code{
  background:#F2D191;color:#0d2137;font-weight:800;font-size:11px;letter-spacing:.08em;
  padding:3px 10px;border-radius:999px;border:0;cursor:pointer;line-height:1;text-transform:uppercase;
}
.promo-seg .cutoff-timer{font-variant-numeric:tabular-nums;color:#F2D191}
@keyframes promo-marquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media (prefers-reduced-motion:reduce){
  .promo-track{animation:none}
}

/* white-header */
.nav{
  background:#fff !important;
  top:34px;
}

/* insider-off-gold */
.insider-club h3 em,
.insider-club h3 .insider-off{
  color:#C9A46A !important;
  background:#0d2137;
  font-style:normal !important;
  font-weight:900;
  padding:0.06em 0.28em;
  border-radius:0.28em;
  letter-spacing:.03em;
  display:inline-block;
  line-height:1.15;
}


/* === CRM LOCK 2026-09-04: cream hero (NO GREEN) + vertical VIP card === */
/* Marketing/ELITE/Yehuda lock: cream+gold. Do not redeploy green Northline hero. */
.hero{
  background:#F5F2EC !important;
  background-image:none !important;
}
.hero::before{display:none !important;content:none !important;opacity:0 !important}
.nl-kicker{
  background:#EFE8DC !important;
  color:#0d2137 !important;
  border:1px solid rgba(13,33,55,.08) !important;
}
.nl-dot{background:#0d2137 !important}
.nl-title,.nl-title .nl-off{color:#0d2137 !important}
.nl-sub{color:#4A5560 !important}
.nl-btn-primary{
  background:#0d2137 !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(13,33,55,.18) !important;
}
.nl-btn-primary:hover{background:#091826 !important;color:#fff !important}
.nl-trust{color:#5A6570 !important}
.nl-stage{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  padding:12px !important;
}
.nl-stage img{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  max-width:85% !important;
  height:72% !important;
  max-height:72% !important;
  filter:drop-shadow(0 18px 28px rgba(13,33,55,.12));
}

.insider-club{
  max-width:440px !important;
  width:calc(100% - 48px) !important;
  margin:36px auto 64px !important;
  background:#E3D5B0 !important;
  color:#0d2137 !important;
  border-radius:28px !important;
  padding:36px 32px 28px !important;
  display:block !important;
  grid-template-columns:unset !important;
  box-sizing:border-box;
  box-shadow:0 12px 36px rgba(13,33,55,.10);
  min-height:0 !important;
}
.insider-club-inner{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}
.insider-club-badge{
  display:inline-block !important;
  background:#C9C2B0 !important;
  color:#1a1a1a !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase;
  padding:7px 14px !important;
  border-radius:999px !important;
  margin:0 0 18px !important;
  border:0 !important;
}
.insider-club h3{
  margin:0 0 10px !important;
  font-size:clamp(26px,5vw,34px) !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#0d2137 !important;
  max-width:16ch;
}
.insider-club h3 em,.insider-club h3 .insider-off{
  color:inherit !important;background:transparent !important;padding:0 !important;
  border-radius:0 !important;display:inline !important;font-weight:800 !important;font-style:normal !important;
}
.insider-club-sub{display:block !important;margin:0 0 22px !important;font-size:14px !important;line-height:1.45 !important;color:#4A5560 !important;opacity:1 !important;max-width:28ch}
.insider-club-form{display:flex !important;flex-direction:column !important;gap:12px !important;width:100% !important;max-width:100% !important;flex-wrap:nowrap !important}
.insider-club input{width:100% !important;flex:none !important;min-width:0 !important;height:52px !important;border:0 !important;border-radius:999px !important;padding:0 20px !important;font-size:16px !important;background:#fff !important;color:#0d2137 !important;box-sizing:border-box}
.insider-club button{width:100% !important;flex:none !important;height:52px !important;border:0 !important;border-radius:999px !important;background:#0d2137 !important;color:#fff !important;font-weight:800 !important;font-size:16px !important;padding:0 22px !important;cursor:pointer;display:inline-flex !important;align-items:center;justify-content:center;gap:8px;white-space:nowrap}
.insider-club-note{display:block !important;margin:14px 0 0 !important;font-size:12px !important;line-height:1.4 !important;color:#6B6354 !important;opacity:1 !important}
.insider-club-proof{display:block !important;margin:18px 0 0 !important;font-size:11px !important;font-weight:700 !important;letter-spacing:.14em !important;text-transform:uppercase;color:#8A8170 !important;opacity:1 !important}
.insider-out{color:#0d2137 !important;margin-top:14px}
@media (max-width:700px){.insider-club{width:calc(100% - 32px) !important;padding:28px 22px !important}}

/* === INDIAN HERO POLISH 2026-09-04 === */
/* After CRM cream lock: compact cream hero, big cutout vial, darker sub, secondary CTA */
.hero{background:#F5F2EC !important;background-image:none !important;overflow:visible !important}
.nl-hero{
  max-width:1200px !important;
  gap:20px 24px !important;
  padding:28px 40px 20px !important;
  min-height:0 !important;
  height:auto !important;
  grid-template-columns:minmax(0,1fr) minmax(320px,.95fr) !important;
  align-items:center !important;
}
.nl-kicker{background:#F2D191 !important;color:#0d2137 !important;border:0 !important}
.nl-title{color:#0d2137 !important;font-size:clamp(40px,4.8vw,58px) !important;margin:0 0 12px !important}
.nl-sub{color:#2f3b48 !important;font-weight:500 !important;margin:0 0 10px !important}
.nl-price{margin:0 0 14px;font-size:15px;font-weight:800;color:#0d2137}
.nl-actions{gap:10px !important;margin:0 0 16px !important}
.nl-btn-secondary{
  display:inline-flex !important;
  align-items:center;justify-content:center;
  border-radius:999px;padding:13px 24px;font-weight:700;font-size:15px;text-decoration:none;
  background:transparent !important;color:#0d2137 !important;border:1.5px solid #0d2137 !important;
}
.nl-btn-secondary:hover{background:#0d2137 !important;color:#fff !important}
.nl-trust-row{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:10px 16px}
.nl-trust-row li{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#0d2137}
.nl-trust-ico{width:28px;height:28px;border-radius:50%;background:#F2D191;color:#0d2137;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.nl-trust{color:#4a5560 !important;font-size:12px !important}
.nl-stage{
  background:transparent !important;background-image:none !important;
  border:0 !important;border-radius:0 !important;box-shadow:none !important;
  overflow:visible !important;padding:4px 12px 8px !important;
  height:auto !important;min-height:0 !important;
}
.nl-stage img{
  background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;
  width:auto !important;
  height:auto !important;
  max-height:min(52vh, 520px) !important;
  max-width:100% !important;
  filter:drop-shadow(0 18px 26px rgba(13,33,55,.16)) !important;
}
.hero + .catalog-section{padding-top:20px !important}
@media (max-width:860px){
  .nl-hero{grid-template-columns:1fr !important;gap:12px !important;padding:20px 18px 12px !important}
  .nl-stage img{max-height:42vh !important;max-width:78% !important;margin:0 auto !important}
  .nl-actions{flex-direction:column;align-items:stretch}
  .nl-btn,.nl-btn-secondary{width:100%;box-sizing:border-box}
}


/* === CRM VIAL 2026-09-04: rounded PDP card + no fake VIP count === */
.nl-stage{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  padding:8px !important;
}
.nl-stage img{
  width:auto !important;
  height:auto !important;
  max-width:min(640px, 96%) !important;
  max-height:min(58vh, 520px) !important;
  object-fit:contain !important;
  transform:none !important;
  border-radius:28px !important;
  filter:drop-shadow(0 16px 28px rgba(13,33,55,.14)) !important;
}
.insider-club-proof{display:none !important}


/* === PRODUCT RAIL — pairs-well cards, cream+navy, RUO-safe === */
.product-rail{
  width:100%;
  background:#F5F2EC;
  padding:28px 0 36px;
  overflow:hidden;
  border-top:1px solid rgba(13,33,55,.06);
  border-bottom:1px solid rgba(13,33,55,.06);
}
.pr-head{
  max-width:1240px;
  margin:0 auto 18px;
  padding:0 24px;
}
.pr-title{
  margin:0;
  font-family:var(--font-display), Georgia, serif;
  font-size:clamp(26px,3.2vw,36px);
  font-weight:700;
  color:#0d2137;
  letter-spacing:-.02em;
}
.pr-viewport{overflow:hidden;width:100%}
.pr-track{
  display:flex;
  width:max-content;
  animation:pr-marquee var(--pr-duration, 42s) linear infinite;
  will-change:transform;
}
.product-rail:hover .pr-track{animation-play-state:paused}
.pr-group{display:flex;gap:16px;padding:4px 12px;flex:0 0 auto}
.pr-card{
  flex:0 0 auto;
  width:240px;
  background:#fff;
  border:1px solid rgba(13,33,55,.08);
  border-radius:20px;
  padding:14px 14px 14px;
  display:flex;
  flex-direction:column;
  gap:6px;
  box-shadow:0 10px 24px rgba(13,33,55,.06);
}
.pr-card-media{
  display:block;
  background:#F5F2EC;
  border-radius:14px;
  aspect-ratio:1;
  overflow:hidden;
  margin-bottom:4px;
}
.pr-card-media img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.pr-card-stock{
  display:inline-flex;
  align-items:center;
  gap:6px;
  align-self:flex-start;
  background:#E8F0E9;
  color:#1F3A24;
  font-size:11px;
  font-weight:700;
  padding:4px 10px;
  border-radius:999px;
}
.pr-card-stock-dot{
  width:7px;height:7px;border-radius:50%;
  background:#2F6B3A;display:inline-block;
}
.pr-card-stock-out{background:#F0E8E8;color:#5A3030}
.pr-card-cat{
  margin:2px 0 0;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  color:#8A8170;
  text-transform:uppercase;
}
.pr-card-name{
  font-size:15px;
  font-weight:800;
  color:#0d2137;
  text-decoration:none;
  line-height:1.25;
  min-height:2.4em;
}
.pr-card-name:hover{opacity:.75}
.pr-card-spec{
  margin:0;
  font-size:12px;
  color:#6B6354;
  line-height:1.35;
}
.pr-card-price{
  margin:4px 0 2px;
  font-size:18px;
  font-weight:800;
  color:#0d2137;
}
.pr-card-actions{
  display:flex;
  gap:8px;
  margin-top:auto;
  padding-top:4px;
}
.pr-card-view{
  flex:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:40px;
  border:1.5px solid #0d2137;
  border-radius:999px;
  color:#0d2137;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  background:#fff;
}
.pr-card-view:hover{background:#F5F2EC}
.pr-card-atc{
  flex:1.2;
  height:40px;
  border:0;
  border-radius:999px;
  background:#0d2137;
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.03em;
  padding:0 10px;
  cursor:pointer;
  white-space:nowrap;
}
.pr-card-atc:hover{background:#091826}
@keyframes pr-marquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media (max-width:700px){
  .pr-head{padding:0 16px;margin-bottom:14px}
  .pr-card{width:200px}
  .pr-card-atc{font-size:10px}
}


/* === SEARCH OVERLAY — command palette, cream+navy === */
.so[hidden]{display:none !important}
.so{
  position:fixed;inset:0;z-index:12000;
  display:flex;align-items:flex-start;justify-content:center;
  padding:12vh 16px 24px;
  box-sizing:border-box;
}
.so.on{display:flex}
.so-scrim{
  position:absolute;inset:0;
  background:rgba(13,33,55,.42);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.so-panel{
  position:relative;z-index:1;
  width:min(640px,100%);
  background:#F7F3EA;
  border:1px solid rgba(13,33,55,.10);
  border-radius:22px;
  box-shadow:0 28px 80px rgba(13,33,55,.28);
  overflow:hidden;
  display:flex;flex-direction:column;
  max-height:min(72vh,640px);
}
.so-head{
  display:flex;align-items:center;gap:10px;
  padding:16px 16px 14px;
  border-bottom:1px solid rgba(13,33,55,.08);
  background:#FBF8F1;
}
.so-search-ico{flex:0 0 auto;color:#0d2137;opacity:.55}
.so-input{
  flex:1;min-width:0;border:0;outline:none;background:transparent;
  font-size:17px;font-weight:600;color:#0d2137;
  font-family:inherit;
}
.so-input::placeholder{color:#9A9180;font-weight:500}
.so-esc{
  flex:0 0 auto;
  font-size:11px;font-weight:700;letter-spacing:.04em;
  color:#0d2137;background:#EFE8DC;border:1px solid rgba(13,33,55,.12);
  border-radius:8px;padding:5px 8px;cursor:pointer;
  font-family:inherit;
}
.so-kicker{
  margin:14px 18px 6px;
  font-size:11px;font-weight:800;letter-spacing:.14em;
  color:#8A8170;text-transform:uppercase;
}
.so-list{
  flex:1;overflow:auto;padding:4px 10px 12px;
  -webkit-overflow-scrolling:touch;
}
.so-row{
  display:flex;align-items:center;gap:12px;
  padding:10px 10px;border-radius:14px;
  text-decoration:none;color:inherit;
  transition:background .15s ease;
}
.so-row:hover,.so-row:focus{background:rgba(13,33,55,.06);outline:none}
.so-thumb{
  width:55px;height:55px;border-radius:12px;object-fit:cover;object-position:center;
  background:#F5F2EC;border:1px solid rgba(13,33,55,.06);flex:0 0 auto;
}
.so-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.so-name{font-size:15px;font-weight:800;color:#0d2137;line-height:1.2}
.so-sub{font-size:12px;color:#6B6354;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.so-go{color:#0d2137;opacity:.35;font-weight:700;flex:0 0 auto}
.so-empty{margin:18px 10px;color:#6B6354;font-size:14px}
.so-foot{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:12px 18px;border-top:1px solid rgba(13,33,55,.08);
  font-size:10px;font-weight:700;letter-spacing:.12em;color:#8A8170;text-transform:uppercase;
  background:#FBF8F1;
}
.so-foot-right{letter-spacing:.08em;opacity:.8}
@media (max-width:600px){
  .so{padding:8vh 10px 16px;align-items:flex-start}
  .so-panel{border-radius:18px;max-height:80vh}
  .so-input{font-size:16px}
}


/* === CRM PROMO TICKER LOCK — single row only === */
.promo-stack{
  position:sticky !important;top:0 !important;z-index:1100 !important;
  overflow:hidden !important;width:100% !important;height:34px !important;
  background:#0d2137 !important;
}
.promo-stack .ruo-bar{display:none !important}
.promo-bar{
  background:#0d2137 !important;color:#fff !important;
  overflow:hidden !important;height:34px !important;max-height:34px !important;
  padding:0 !important;margin:0 !important;border:0 !important;
  display:block !important;width:100% !important;
  flex-wrap:nowrap !important;
}
.promo-track{
  display:flex !important;align-items:center !important;flex-wrap:nowrap !important;
  width:max-content !important;height:34px !important;
  animation:promo-marquee 70s linear infinite !important;
  will-change:transform;
}
.promo-bar:hover .promo-track{animation-play-state:paused !important}
.promo-group{
  display:flex !important;align-items:center !important;flex:0 0 auto !important;
  flex-wrap:nowrap !important;height:34px !important;
}
.promo-seg{
  display:inline-flex !important;align-items:center !important;gap:8px !important;
  padding:0 6px !important;white-space:nowrap !important;
  font-size:11px !important;font-weight:700 !important;letter-spacing:.1em !important;
  text-transform:uppercase !important;color:#fff !important;line-height:34px !important;
}
.promo-sep{
  display:inline-flex !important;align-items:center !important;justify-content:center !important;
  width:auto !important;height:auto !important;margin:0 18px !important;
  border:0 !important;border-radius:0 !important;background:transparent !important;
  color:rgba(242,209,145,.85) !important;font-size:14px !important;line-height:1 !important;
  flex:0 0 auto !important;
}
.promo-seg .promo-code{
  background:#F2D191 !important;color:#0d2137 !important;font-weight:800 !important;
  font-size:11px !important;letter-spacing:.08em !important;padding:3px 10px !important;
  border-radius:999px !important;border:0 !important;cursor:pointer !important;line-height:1 !important;
}
.promo-seg .cutoff-timer{
  font-variant-numeric:tabular-nums !important;color:#F2D191 !important;
  border:0 !important;padding:0 !important;font-size:11px !important;
}
.nav{top:34px !important}
@keyframes promo-marquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media (prefers-reduced-motion:reduce){
  .promo-track{animation:none !important}
}


/* strength chips — on card, never on vial art */
.product-card-strengths{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}
.product-card-mg{
  display:inline-flex;align-items:center;
  background:#F5F2EC;color:#0d2137;
  border:1px solid rgba(13,33,55,.10);
  border-radius:999px;padding:4px 10px;
  font-size:11px;font-weight:800;letter-spacing:.02em;
}


/* p0e-nav-logo-left */
.nav{display:flex;flex-direction:row;align-items:center}
.nav-logo{flex-shrink:0}
.nav-right{margin-left:auto}
@media(max-width:800px){
  .nav{display:flex;justify-content:flex-start;gap:8px}
  .nav-left{display:none}
  .nav-logo{order:0}
  .nav-right{margin-left:auto;order:2}
  .nav-logo-mark{font-size:22px!important;min-width:22px}
}

/* nav-logo-left */
.nav{
  position:sticky;
  top:34px;
  z-index:1000;
  background:#F5F2EC;
  border-bottom:1px solid rgba(13,33,55,.08);
  display:flex;
  align-items:center;
  gap:28px;
  padding:14px 40px;
}
.nav-logo{
  order:0;
  justify-self:auto;
  display:inline-flex;
  align-items:center;
  text-decoration:none;
  color:#0d2137;
  flex:0 0 auto;
}
.nav-logo-mark{font-family:var(--font-logo);font-size:30px;font-weight:500;line-height:1;letter-spacing:-.04em;color:#0d2137;display:inline-block}
.nav-logo-text{font-family:var(--font-logo);font-size:22px;font-weight:500;letter-spacing:-.02em;color:#0d2137}
.nav-left{display:flex;align-items:center;gap:28px;justify-self:auto;order:1}
.nav-left a{font-size:15px;font-weight:500;color:#1F1F1F;text-decoration:none;letter-spacing:.01em}
.nav-left a:hover{opacity:.55}
.nav-right{margin-left:auto;justify-self:auto;display:flex;align-items:center;gap:18px;order:2}
@media (max-width:800px){
  .nav{padding:12px 16px;gap:12px}
  .nav-left{display:none}
  .nav-logo-mark{font-size:26px}
  .nav-logo-text{font-size:18px}
}


/* === LOGO LEFT FORCE 2026-09-04 === */
.nav{display:flex !important;align-items:center !important;grid-template-columns:none !important;gap:28px !important}
.nav-logo{order:0 !important;justify-self:auto !important;margin:0 !important}
.nav-left{order:1 !important;justify-self:auto !important}
.nav-right{order:2 !important;margin-left:auto !important;justify-self:auto !important}

/* split-v140-fill */
.split-photo{
  aspect-ratio:5/4 !important;
  background:#F5F2EC !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.split-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 40% !important;
}


/* popular-search-v141 */
.product-card-img{
  aspect-ratio:1/1 !important;
  background:#F5F2EC !important;
  overflow:hidden !important;
}
.product-card-img img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 38% !important;
  background:#F5F2EC !important;
}
.so-thumb{
  width:55px;height:55px;border-radius:12px;object-fit:cover;object-position:center;
  background:#F5F2EC;border:1px solid rgba(13,33,55,.06);flex:0 0 auto;
}
.so-row{align-items:center !important; gap:12px !important;}

/* so-thumb-v186 — PDP masters, no letterbox, large enough for Yehuda */
.so-thumb,
img.so-thumb,
.so-list .so-thumb{
  width:80px !important;
  height:80px !important;
  min-width:80px !important;
  min-height:80px !important;
  max-width:80px !important;
  max-height:80px !important;
  border-radius:14px !important;
  object-fit:cover !important;
  object-position:center !important;
  background:#F5F2EC !important;
  border:1px solid rgba(13,33,55,.08) !important;
  flex:0 0 auto !important;
  padding:0 !important;
  box-sizing:border-box !important;
}
.so-row{align-items:center !important; gap:14px !important;}
.so-search-ico{width:18px !important;height:18px !important;flex:0 0 auto !important;}


/* split-pdp-v142 */
#singles-blend .split-photo{
  aspect-ratio:1/1 !important;
  background:#F5F2EC !important;
  overflow:hidden !important;
  padding:0 !important;
}
#singles-blend .split-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:scale(1.1) !important;
}

/* singles-blends-v188 — exact PDP vial masters, full-bleed in card */
#singles-blend .split-photo{
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  background: #F5F2EC !important;
}
#singles-blend .split-photo img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 35% !important;
  display: block !important;
  background: #F5F2EC !important;
}


/* split-hide-nums-v203 — no giant numbers over Singles/Blends copy */
.split-card::before,.split-card::after,.split-photo::before,.split-body::before,
.split-num,.split-index{content:none!important;display:none!important;background:none!important}


.mg-picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px}
.mg-picker-label{font-size:12px;font-weight:700;color:#0d2137;margin-right:4px}
.mg-picker .mg-btn{padding:8px 16px;border:1.5px solid #0d2137;border-radius:999px;background:#fff;color:#0d2137;font-weight:800;font-size:13px;cursor:pointer}
.mg-picker .mg-btn.on,.mg-picker .mg-btn.active{background:#0d2137;color:#fff}

/* ELITE cart flex leftover height 20260904 */
.cart-drawer{
  height:100dvh !important;
  max-height:100dvh !important;
  min-height:0 !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
}
.cart-header,
.cart-footer,
#cartProgress{flex:0 0 auto !important}
.cart-footer{padding:14px 18px !important}
.cart-drawer .cart-items{
  flex:1 1 0% !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch;
  padding:16px 20px !important;
}
#cartAddMore,.cart-addmore-slot{
  flex:0 0 auto !important;
  max-height:120px !important;
  overflow:hidden !important;
}
.cart-addmore-track{overscroll-behavior:contain !important;overflow-y:hidden !important}
#cartProgress.on{padding:8px 14px 10px !important}
#cartProgress .cp-msg{font-size:12px !important;margin:0 0 6px !important}
#cartProgress .cp-kicker{font-size:10px !important;margin:0 0 2px !important}
#cartProgress .cp-track{height:8px !important;margin:4px 4px 14px !important}

/* ELITE addmore slot stacking 20260904 */
#cartAddMore,.cart-addmore-slot{
  position:relative !important;
  background:#fff !important;
  z-index:1 !important;
  flex:0 0 auto !important;
  max-height:120px !important;
  overflow:hidden !important;
}
.cart-drawer .cart-items{
  position:relative;
  z-index:0;
  flex:1 1 0% !important;
  min-height:0 !important;
  overflow-y:auto !important;
}


/* CRM cart Yehuda: hide inquiry note, header clear, Add visible */
.cart-note{display:none!important}
.cart-drawer{z-index:10050!important}
#cartOverlay.cart-overlay,.cart-overlay{z-index:10040!important}
.cart-header{padding-top:max(16px,env(safe-area-inset-top))!important}
#cartAddMore{max-height:168px!important;overflow:visible!important}
/* cart header under sticky promo */
.cart-drawer .cart-header{padding-top:max(28px, calc(env(safe-area-inset-top) + 12px)) !important}

/* Catalog strength chips selectable (tappable) */
.product-card-mg{
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none;
  display:inline-flex;
  align-items:center;
  gap:0;
  padding:6px 12px;
  border:1.5px solid #0d2137;
  border-radius:999px;
  background:#fff;
  color:#0d2137;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  line-height:1.2;
  transition:background .15s,color .15s,border-color .15s;
}
button.product-card-mg{font:inherit;appearance:none;-webkit-appearance:none}
.product-card-mg.on,
.product-card-mg.active,
button.product-card-mg.on,
button.product-card-mg.active{
  background:#0d2137!important;
  border-color:#0d2137!important;
  color:#fff!important;
  font-weight:800!important;
}
.product-card-mg:hover{border-color:#0d2137}
.product-card-mg:focus-visible{outline:2px solid #0d2137;outline-offset:2px}


/* CRM hide product-card-desc 2026-09-06 */
.product-card-desc{display:none!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}

/* logo-b-stable 2026-09-06: keep B aligned with wordmark, no FOUT jump */
.nav-logo{
  display:inline-flex !important;
  align-items:baseline !important;
  gap:0 !important;
  line-height:1 !important;
}
.nav-logo-mark{
  font-family:var(--font-logo) !important;
  font-size:28px !important;
  font-weight:500 !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
  display:inline-block !important;
  vertical-align:baseline !important;
  transform:none !important;
  position:relative !important;
  top:0 !important;
  margin:0 !important;
  padding:0 !important;
}
.nav-logo-text{
  font-family:var(--font-logo) !important;
  font-size:22px !important;
  font-weight:500 !important;
  line-height:1 !important;
  letter-spacing:-.02em !important;
  display:inline-block !important;
  vertical-align:baseline !important;
  transform:none !important;
  position:relative !important;
  top:0 !important;
}
@media (max-width:800px){
  .nav-logo-mark{font-size:24px !important;}
  .nav-logo-text{font-size:17px !important;}
}


/* CRM blog card fog fix 2026-09-06 — no washed lifestyle thumbs */
.blog-card-img{opacity:1!important}
.blog-card-img img{opacity:1!important;filter:none!important;object-fit:contain!important;object-position:center!important;padding:12px!important;background:#F5F2ED!important}
.jrnl-card img{opacity:1!important;filter:none!important;object-fit:contain!important;background:#F5F2ED}

/* blog-no-fog-v219 */
.blog-card-img,.blog-card-img img,.jrnl-card img{opacity:1!important;filter:none!important}
.blog-card-img img,.jrnl-card img{object-fit:contain!important;background:#F5F2ED!important}
