/* ═══════════════════════════════════════════
   ZYVARA LABS — zyvara.css
   Shopify Theme Stylesheet
═══════════════════════════════════════════ */

:root {
  --zv-midnight:  #080F1C;
  --zv-navy:      #0A1628;
  --zv-navy-2:    #0D1F3C;
  --zv-teal:      #00B4A6;
  --zv-teal-2:    #009D91;
  --zv-teal-glow: rgba(0,180,166,0.12);
  --zv-teal-edge: rgba(0,180,166,0.2);
  --zv-white:     #F5F7FA;
  --zv-white-dim: #C8D0DC;
  --zv-slate:     #8892A4;
  --zv-slate-2:   #4A5568;
  --zv-amber:     #C8A96E;
  --zv-ease:      cubic-bezier(0.16,1,0.3,1);
  --zv-font-d:    'Bebas Neue', sans-serif;
  --zv-font-ui:   'Barlow Condensed', sans-serif;
  --zv-font-mono: 'Share Tech Mono', monospace;
  --zv-font-body: 'DM Sans', sans-serif;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--zv-midnight); color:var(--zv-white); font-family:var(--zv-font-body); overflow-x:hidden; }
::-webkit-scrollbar { width:4px; }
::-webkit-scrollbar-track { background:var(--zv-midnight); }
::-webkit-scrollbar-thumb { background:var(--zv-teal-edge); border-radius:2px; }
a { color:inherit; }
img { max-width:100%; display:block; }

/* ── UTILITIES ── */
.zv-accent  { color:var(--zv-teal); }
.zv-dim     { color:var(--zv-slate-2); }
.zv-container { max-width:1320px; margin:0 auto; padding:0 48px; }

/* ── REVEAL ANIMATIONS ── */
.zv-reveal {
  opacity:0;
  transform:translateY(28px);
  transition:opacity 0.7s var(--zv-ease), transform 0.7s var(--zv-ease);
}
.zv-reveal.is-visible   { opacity:1; transform:translateY(0); }
.zv-reveal--d1.is-visible { transition-delay:0.1s; }
.zv-reveal--d2.is-visible { transition-delay:0.2s; }
.zv-reveal--d3.is-visible { transition-delay:0.3s; }

/* ── BUTTONS ── */
.zv-btn-primary {
  display:inline-flex; align-items:center; gap:12px;
  background:var(--zv-teal); color:var(--zv-midnight);
  font-family:var(--zv-font-d); font-size:18px; letter-spacing:4px;
  padding:16px 36px; text-decoration:none;
  transition:background 0.2s, transform 0.2s, box-shadow 0.2s;
}
.zv-btn-primary:hover { background:var(--zv-teal-2); transform:translateY(-2px); box-shadow:0 8px 32px rgba(0,180,166,0.3); }

.zv-btn-secondary {
  display:inline-flex; align-items:center; gap:10px;
  border:1px solid var(--zv-teal-edge); color:var(--zv-white-dim);
  font-family:var(--zv-font-ui); font-size:13px; font-weight:500; letter-spacing:2px; text-transform:uppercase;
  padding:15px 28px; text-decoration:none;
  transition:border-color 0.2s, color 0.2s;
}
.zv-btn-secondary:hover { border-color:var(--zv-teal); color:var(--zv-white); }
.zv-btn--full { width:100%; justify-content:center; }

/* ── SECTION SHARED ── */
.zv-section { padding:100px 0; }
.zv-section__header { margin-bottom:60px; }
.zv-eyebrow {
  font-family:var(--zv-font-mono); font-size:10px; letter-spacing:4px;
  color:var(--zv-teal); text-transform:uppercase; margin-bottom:12px;
  display:flex; align-items:center; gap:12px;
}
.zv-eyebrow::before { content:''; display:block; width:24px; height:1px; background:var(--zv-teal); }
.zv-eyebrow--center { justify-content:center; }
.zv-eyebrow--center::before { display:none; }
.zv-section__title { font-family:var(--zv-font-d); font-size:clamp(36px,5vw,60px); letter-spacing:3px; color:var(--zv-white); line-height:0.95; }
.zv-section__desc  { font-family:var(--zv-font-ui); font-size:18px; font-weight:300; color:var(--zv-slate); margin-top:16px; max-width:560px; line-height:1.6; letter-spacing:0.3px; }
.zv-view-all { text-align:center; margin-top:48px; }

/* ═══════════════════════════════════════════
   NAVIGATION
═══════════════════════════════════════════ */
.zv-nav {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  padding:0 48px; height:68px;
  display:flex; align-items:center; justify-content:space-between;
  border-bottom:1px solid transparent;
  transition:background 0.4s, border-color 0.4s;
}
.zv-nav.is-scrolled {
  background:rgba(8,15,28,0.96);
  border-bottom-color:var(--zv-teal-edge);
  backdrop-filter:blur(12px);
}
.zv-nav__logo { display:flex; flex-direction:column; gap:0; text-decoration:none; }
.zv-nav__logo-word { font-family:var(--zv-font-d); font-size:22px; letter-spacing:6px; color:var(--zv-white); line-height:1; }
.zv-nav__logo-sub  { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:4px; color:var(--zv-slate-2); text-transform:uppercase; margin-top:1px; }
.zv-nav__links { display:flex; align-items:center; gap:36px; list-style:none; }
.zv-nav__links a {
  font-family:var(--zv-font-ui); font-size:13px; font-weight:500; letter-spacing:2px; text-transform:uppercase;
  color:var(--zv-slate); text-decoration:none; position:relative;
  transition:color 0.2s;
}
.zv-nav__links a::after {
  content:''; position:absolute; bottom:-3px; left:0; right:100%;
  height:1px; background:var(--zv-teal); transition:right 0.3s var(--zv-ease);
}
.zv-nav__links a:hover { color:var(--zv-white); }
.zv-nav__links a:hover::after { right:0; }
.zv-nav__cta {
  background:var(--zv-teal) !important; color:var(--zv-midnight) !important;
  padding:10px 24px; font-weight:600 !important;
}
.zv-nav__cta::after { display:none !important; }
.zv-nav__cta:hover { background:var(--zv-teal-2) !important; }
.zv-nav__hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px; }
.zv-nav__hamburger span { display:block; width:24px; height:1px; background:var(--zv-white); transition:all 0.3s; }
.zv-nav__mobile {
  display:none; position:fixed; top:68px; left:0; right:0; z-index:999;
  background:rgba(8,15,28,0.98); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--zv-teal-edge); padding:24px 48px;
}
.zv-nav__mobile.is-open { display:block; }
.zv-nav__mobile ul { list-style:none; display:flex; flex-direction:column; gap:16px; }
.zv-nav__mobile a {
  font-family:var(--zv-font-ui); font-size:16px; font-weight:500; letter-spacing:2px;
  text-transform:uppercase; color:var(--zv-slate); text-decoration:none;
  transition:color 0.2s;
}
.zv-nav__mobile a:hover { color:var(--zv-white); }
.zv-nav__mobile .zv-nav__cta {
  display:inline-block; padding:12px 24px; margin-top:8px;
  color:var(--zv-midnight) !important;
}

/* ═══════════════════════════════════════════
   HERO
═══════════════════════════════════════════ */
.zv-hero {
  min-height:100vh; display:flex; align-items:center; position:relative;
  overflow:hidden; padding:120px 48px 80px;
}
.zv-hero__grid {
  position:absolute; inset:0;
  background-image:linear-gradient(rgba(0,180,166,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,166,0.04) 1px,transparent 1px);
  background-size:60px 60px;
  animation:zvGridDrift 30s linear infinite;
}
@keyframes zvGridDrift { from{transform:translate(0,0)} to{transform:translate(60px,60px)} }
.zv-hero__glow {
  position:absolute; width:800px; height:800px; border-radius:50%;
  background:radial-gradient(circle,rgba(0,180,166,0.06) 0%,transparent 65%);
  top:50%; left:55%; transform:translate(-50%,-50%); pointer-events:none;
}
.zv-hero__molecule {
  position:absolute; right:6%; top:50%; transform:translateY(-50%); opacity:0.12;
  animation:zvFloat 8s ease-in-out infinite;
}
@keyframes zvFloat { 0%,100%{transform:translateY(-50%) rotate(0deg)} 50%{transform:translateY(calc(-50% - 20px)) rotate(3deg)} }
.zv-hero__content { position:relative; z-index:2; max-width:760px; }
.zv-hero__eyebrow { display:flex; align-items:center; gap:12px; margin-bottom:24px; opacity:0; animation:zvFadeUp 0.8s var(--zv-ease) 0.2s both; }
.zv-hero__eyebrow-line { width:32px; height:1px; background:var(--zv-teal); }
.zv-hero__eyebrow-text { font-family:var(--zv-font-mono); font-size:11px; letter-spacing:4px; color:var(--zv-teal); text-transform:uppercase; }
.zv-hero__title {
  font-family:var(--zv-font-d); font-size:clamp(64px,9vw,120px); letter-spacing:4px;
  line-height:0.92; color:var(--zv-white); margin-bottom:28px;
  opacity:0; animation:zvFadeUp 0.9s var(--zv-ease) 0.35s both;
}
.zv-hero__subtitle {
  font-family:var(--zv-font-ui); font-size:clamp(18px,2.2vw,22px); font-weight:300;
  letter-spacing:1px; color:var(--zv-slate); line-height:1.6; max-width:520px; margin-bottom:44px;
  opacity:0; animation:zvFadeUp 0.9s var(--zv-ease) 0.5s both;
}
.zv-hero__actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; opacity:0; animation:zvFadeUp 0.9s var(--zv-ease) 0.65s both; }
.zv-hero__trust {
  display:flex; align-items:center; gap:32px; flex-wrap:wrap;
  margin-top:56px; padding-top:40px; border-top:1px solid rgba(0,180,166,0.1);
  opacity:0; animation:zvFadeUp 0.9s var(--zv-ease) 0.8s both;
}
.zv-trust-item { display:flex; align-items:center; gap:10px; }
.zv-trust-dot { width:6px; height:6px; border-radius:50%; background:var(--zv-teal); flex-shrink:0; }
.zv-trust-text { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; }
.zv-hero__scroll { position:absolute; bottom:36px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:8px; opacity:0; animation:zvFadeUp 1s var(--zv-ease) 1.2s both; }
.zv-hero__scroll-line { width:1px; height:48px; background:linear-gradient(to bottom,var(--zv-teal),transparent); animation:zvScrollPulse 2s ease-in-out infinite; }
.zv-hero__scroll-text { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:3px; color:var(--zv-slate-2); text-transform:uppercase; }
@keyframes zvScrollPulse { 0%,100%{opacity:0.4} 50%{opacity:1} }
@keyframes zvFadeUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }

/* ═══════════════════════════════════════════
   TRUST BAR
═══════════════════════════════════════════ */
.zv-trust-bar { background:var(--zv-navy); border-top:1px solid var(--zv-teal-edge); border-bottom:1px solid var(--zv-teal-edge); padding:20px 48px; }
.zv-trust-bar__inner { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; }
.zv-tbi { display:flex; align-items:center; gap:12px; padding:8px 36px; border-right:1px solid rgba(0,180,166,0.12); }
.zv-tbi:last-child { border-right:none; }
.zv-tbi__icon { width:32px; height:32px; flex-shrink:0; }
.zv-tbi__label { font-family:var(--zv-font-d); font-size:17px; letter-spacing:2px; color:var(--zv-white); line-height:1; }
.zv-tbi__sub { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; margin-top:2px; }

/* ═══════════════════════════════════════════
   FEATURED PRODUCTS
═══════════════════════════════════════════ */
.zv-products-section { background:var(--zv-midnight); padding:100px 0; }
.zv-products-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; }
.zv-product-card {
  background:var(--zv-navy); position:relative; overflow:hidden;
  cursor:pointer; text-decoration:none; color:inherit; display:block;
  transition:transform 0.3s var(--zv-ease);
}
.zv-product-card::before { content:''; position:absolute; inset:0; background:var(--zv-teal-glow); opacity:0; transition:opacity 0.3s; }
.zv-product-card:hover { transform:translateY(-4px); }
.zv-product-card:hover::before { opacity:1; }
.zv-product-card:hover .zv-product-card__border { opacity:1; }
.zv-product-card:hover .zv-product-card__arrow { opacity:1; transform:translateX(0); }
.zv-product-card__stripe { height:4px; width:100%; }
.cat-recovery  { background:var(--zv-teal); }
.cat-gh        { background:#6C8EBF; }
.cat-longevity { background:#9B7FD4; }
.cat-metabolic { background:var(--zv-amber); }
.zv-product-card__border { position:absolute; inset:0; border:1px solid var(--zv-teal-edge); opacity:0; transition:opacity 0.3s; pointer-events:none; }
.zv-product-card__body { padding:28px 24px 24px; }
.zv-product-card__category { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:3px; color:var(--zv-slate-2); text-transform:uppercase; margin-bottom:10px; }
.zv-product-card__name { font-family:var(--zv-font-d); font-size:28px; letter-spacing:2px; color:var(--zv-white); line-height:1; margin-bottom:4px; }
.zv-product-card__size { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-slate); margin-bottom:16px; }
.zv-product-card__desc { font-size:13px; color:var(--zv-slate); line-height:1.6; margin-bottom:20px; }
.zv-product-card__footer { display:flex; align-items:center; justify-content:space-between; padding-top:16px; border-top:1px solid rgba(0,180,166,0.08); }
.zv-product-card__price { font-family:var(--zv-font-d); font-size:26px; letter-spacing:2px; color:var(--zv-white); }
.zv-product-card__verified { display:flex; align-items:center; gap:5px; }
.zv-verified-dot { width:5px; height:5px; border-radius:50%; background:var(--zv-teal); }
.zv-verified-text { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:1.5px; color:var(--zv-teal); text-transform:uppercase; }
.zv-product-card__arrow { position:absolute; bottom:24px; right:24px; width:32px; height:32px; border:1px solid var(--zv-teal-edge); display:flex; align-items:center; justify-content:center; opacity:0; transform:translateX(-8px); transition:opacity 0.3s, transform 0.3s; }

/* ═══════════════════════════════════════════
   QUALITY STANDARDS
═══════════════════════════════════════════ */
.zv-quality-section { background:var(--zv-navy); border-top:1px solid var(--zv-teal-edge); border-bottom:1px solid var(--zv-teal-edge); }
.zv-quality-inner { max-width:1320px; margin:0 auto; padding:100px 48px; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.zv-quality-steps { display:flex; flex-direction:column; gap:0; margin-top:40px; }
.zv-quality-step { display:flex; gap:24px; position:relative; }
.zv-quality-step:not(:last-child)::after { content:''; position:absolute; left:19px; top:40px; bottom:-16px; width:1px; background:linear-gradient(to bottom,rgba(0,180,166,0.3),transparent); }
.zv-step-number { width:40px; height:40px; border:1px solid var(--zv-teal-edge); background:var(--zv-midnight); display:flex; align-items:center; justify-content:center; font-family:var(--zv-font-mono); font-size:12px; color:var(--zv-teal); letter-spacing:1px; flex-shrink:0; }
.zv-step-content { padding-bottom:28px; }
.zv-step-title { font-family:var(--zv-font-d); font-size:20px; letter-spacing:2px; color:var(--zv-white); margin-bottom:6px; }
.zv-step-desc { font-size:14px; color:var(--zv-slate); line-height:1.6; }
.zv-quality-stats { display:grid; grid-template-columns:1fr 1fr; gap:2px; margin-bottom:16px; }
.zv-quality-stat { background:var(--zv-midnight); padding:32px 28px; position:relative; overflow:hidden; }
.zv-quality-stat::before { content:''; position:absolute; top:0; left:0; width:3px; height:100%; background:var(--zv-teal); opacity:0.4; }
.zv-qs-value { font-family:var(--zv-font-d); font-size:52px; letter-spacing:2px; color:var(--zv-teal); line-height:1; }
.zv-qs-unit { font-size:28px; }
.zv-qs-label { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; margin-top:6px; }
.zv-qs-sub { font-size:12px; color:var(--zv-slate-2); margin-top:4px; line-height:1.4; }

/* ═══════════════════════════════════════════
   BUNDLES
═══════════════════════════════════════════ */
.zv-bundles-section { background:var(--zv-midnight); padding:100px 0; }
.zv-bundles-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.zv-bundle-card {
  background:var(--zv-navy); padding:36px 32px; position:relative; overflow:hidden;
  border:1px solid transparent; text-decoration:none; color:inherit; display:block;
  transition:border-color 0.3s, transform 0.3s var(--zv-ease);
}
.zv-bundle-card:hover { border-color:var(--zv-teal-edge); transform:translateY(-3px); }
.zv-bundle-card--featured { background:var(--zv-navy-2); border-color:var(--zv-teal-edge); }
.zv-bundle-badge { position:absolute; top:0; right:0; background:var(--zv-teal); color:var(--zv-midnight); font-family:var(--zv-font-mono); font-size:9px; letter-spacing:2px; padding:5px 14px; text-transform:uppercase; }
.zv-bundle-stripe { height:3px; width:40px; margin-bottom:20px; }
.zv-bundle-name { font-family:var(--zv-font-d); font-size:28px; letter-spacing:3px; color:var(--zv-white); margin-bottom:6px; }
.zv-bundle-products { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-teal); text-transform:uppercase; margin-bottom:16px; }
.zv-bundle-desc { font-size:14px; color:var(--zv-slate); line-height:1.6; margin-bottom:24px; }
.zv-bundle-pricing { display:flex; align-items:baseline; gap:12px; margin-bottom:20px; }
.zv-bundle-price { font-family:var(--zv-font-d); font-size:36px; letter-spacing:2px; color:var(--zv-white); }
.zv-bundle-savings { font-family:var(--zv-font-ui); font-size:14px; font-weight:600; letter-spacing:1px; color:var(--zv-teal); background:var(--zv-teal-glow); border:1px solid var(--zv-teal-edge); padding:3px 10px; }
.zv-bundle-cta { font-family:var(--zv-font-d); font-size:16px; letter-spacing:3px; color:var(--zv-teal); display:flex; align-items:center; gap:10px; }
.zv-bundle-arrow { display:inline-block; width:24px; height:1px; background:var(--zv-teal); position:relative; transition:width 0.3s; }
.zv-bundle-arrow::after { content:''; position:absolute; right:0; top:-3px; width:6px; height:6px; border-right:1px solid var(--zv-teal); border-top:1px solid var(--zv-teal); transform:rotate(45deg); }
.zv-bundle-card:hover .zv-bundle-arrow { width:36px; }

/* ═══════════════════════════════════════════
   RESEARCH LIBRARY
═══════════════════════════════════════════ */
.zv-research-section { background:var(--zv-midnight); position:relative; overflow:hidden; }
.zv-research-section::before { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(0,180,166,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,166,0.025) 1px,transparent 1px); background-size:80px 80px; }
.zv-research-inner { max-width:1320px; margin:0 auto; padding:100px 48px; position:relative; z-index:1; }
.zv-research-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin-top:56px; }
.zv-research-card { background:rgba(10,22,40,0.9); border:1px solid rgba(0,180,166,0.08); padding:32px 28px; text-decoration:none; color:inherit; display:block; transition:border-color 0.3s, transform 0.3s var(--zv-ease); }
.zv-research-card:hover { border-color:var(--zv-teal-edge); transform:translateY(-3px); }
.zv-research-card__tag { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:3px; color:var(--zv-teal); text-transform:uppercase; margin-bottom:14px; display:flex; align-items:center; gap:8px; }
.zv-research-card__tag::before { content:''; display:block; width:16px; height:1px; background:var(--zv-teal); }
.zv-research-card__title { font-family:var(--zv-font-ui); font-size:20px; font-weight:600; letter-spacing:0.5px; color:var(--zv-white); line-height:1.3; margin-bottom:12px; }
.zv-research-card__excerpt { font-size:14px; color:var(--zv-slate); line-height:1.6; margin-bottom:20px; }
.zv-research-card__read { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-teal); text-transform:uppercase; display:flex; align-items:center; gap:8px; }
.zv-read-arrow { display:inline-block; width:20px; height:1px; background:var(--zv-teal); position:relative; transition:width 0.3s; }
.zv-read-arrow::after { content:''; position:absolute; right:0; top:-3px; width:6px; height:6px; border-right:1px solid var(--zv-teal); border-top:1px solid var(--zv-teal); transform:rotate(45deg); }
.zv-research-card:hover .zv-read-arrow { width:32px; }

/* ═══════════════════════════════════════════
   REVIEWS
═══════════════════════════════════════════ */
.zv-reviews-section { background:var(--zv-navy); border-top:1px solid var(--zv-teal-edge); }
.zv-reviews-inner { max-width:1320px; margin:0 auto; padding:100px 48px; }
.zv-reviews-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin-top:56px; }
.zv-review-card { background:var(--zv-midnight); padding:32px 28px; border:1px solid rgba(0,180,166,0.06); position:relative; }
.zv-review-quote { position:absolute; top:24px; right:24px; font-family:var(--zv-font-d); font-size:60px; color:rgba(0,180,166,0.08); line-height:1; }
.zv-review-stars { font-size:14px; color:var(--zv-amber); margin-bottom:14px; letter-spacing:2px; }
.zv-review-text { font-size:15px; color:var(--zv-white-dim); line-height:1.7; margin-bottom:20px; font-style:italic; }
.zv-review-divider { height:1px; background:linear-gradient(to right,var(--zv-teal-edge),transparent); margin-bottom:16px; }
.zv-review-author { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; }
.zv-review-author span { color:var(--zv-teal); }

/* ═══════════════════════════════════════════
   EMAIL CAPTURE
═══════════════════════════════════════════ */
.zv-capture-section { background:var(--zv-midnight); position:relative; overflow:hidden; }
.zv-capture-section::before { content:''; position:absolute; width:600px; height:600px; border-radius:50%; background:radial-gradient(circle,rgba(0,180,166,0.06) 0%,transparent 70%); top:50%; left:50%; transform:translate(-50%,-50%); }
.zv-capture-inner { max-width:700px; margin:0 auto; padding:100px 48px; text-align:center; position:relative; z-index:1; }
.zv-capture-title { font-family:var(--zv-font-d); font-size:clamp(40px,5vw,64px); letter-spacing:4px; color:var(--zv-white); line-height:1; margin-bottom:16px; }
.zv-capture-sub { font-family:var(--zv-font-ui); font-size:18px; font-weight:300; color:var(--zv-slate); letter-spacing:0.5px; margin-bottom:40px; line-height:1.5; }
.zv-capture-form__row { display:flex; gap:0; max-width:480px; margin:0 auto 16px; }
.zv-capture-input { flex:1; background:var(--zv-navy); border:1px solid var(--zv-teal-edge); border-right:none; color:var(--zv-white); font-family:var(--zv-font-body); font-size:15px; padding:16px 20px; outline:none; transition:border-color 0.2s; }
.zv-capture-input::placeholder { color:var(--zv-slate-2); }
.zv-capture-input:focus { border-color:var(--zv-teal); }
.zv-capture-submit { background:var(--zv-teal); border:none; color:var(--zv-midnight); font-family:var(--zv-font-d); font-size:16px; letter-spacing:3px; padding:16px 28px; cursor:pointer; transition:background 0.2s; white-space:nowrap; }
.zv-capture-submit:hover { background:var(--zv-teal-2); }
.zv-capture-disclaimer { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:2px; color:var(--zv-slate-2); text-transform:uppercase; }
.zv-form-error { color:#E05555; font-size:13px; margin-top:8px; }
.zv-form-success { color:var(--zv-teal); font-family:var(--zv-font-mono); font-size:11px; letter-spacing:2px; text-transform:uppercase; margin-top:8px; }

/* ═══════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════ */
.zv-footer { background:#060C16; border-top:1px solid var(--zv-teal-edge); padding:72px 48px 40px; }
.zv-footer__inner { max-width:1320px; margin:0 auto; }
.zv-footer__top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; margin-bottom:60px; }
.zv-footer__logo-word { font-family:var(--zv-font-d); font-size:28px; letter-spacing:6px; color:var(--zv-white); line-height:1; }
.zv-footer__logo-sub { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:5px; color:var(--zv-slate-2); text-transform:uppercase; margin:4px 0 16px; }
.zv-footer__tagline { font-size:14px; color:var(--zv-slate); line-height:1.7; max-width:280px; margin-bottom:20px; }
.zv-footer__compliance { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; line-height:1.7; border-left:2px solid var(--zv-teal-edge); padding-left:12px; }
.zv-footer__col-title { font-family:var(--zv-font-d); font-size:14px; letter-spacing:3px; color:var(--zv-white); margin-bottom:20px; padding-bottom:10px; border-bottom:1px solid rgba(0,180,166,0.1); }
.zv-footer__col-links { list-style:none; display:flex; flex-direction:column; gap:10px; }
.zv-footer__col-links a { font-size:14px; color:var(--zv-slate); text-decoration:none; display:flex; align-items:center; gap:8px; transition:color 0.2s; }
.zv-footer__col-links a::before { content:''; display:block; width:12px; height:1px; background:var(--zv-teal-edge); transition:width 0.2s, background 0.2s; }
.zv-footer__col-links a:hover { color:var(--zv-white); }
.zv-footer__col-links a:hover::before { width:18px; background:var(--zv-teal); }
.zv-footer__bottom { padding-top:32px; border-top:1px solid rgba(0,180,166,0.06); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.zv-footer__legal { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; }
.zv-footer__links-bottom { display:flex; gap:24px; }
.zv-footer__links-bottom a { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; text-decoration:none; transition:color 0.2s; }
.zv-footer__links-bottom a:hover { color:var(--zv-teal); }

/* ═══════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════ */
@media (max-width:1200px) {
  .zv-products-grid { grid-template-columns:repeat(2,1fr); }
  .zv-bundles-grid { grid-template-columns:1fr 1fr; }
  .zv-quality-inner { grid-template-columns:1fr; gap:48px; }
  .zv-footer__top { grid-template-columns:1fr 1fr; }
  .zv-research-grid { grid-template-columns:1fr 1fr; }
  .zv-reviews-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
  .zv-nav { padding:0 24px; }
  .zv-nav__links { display:none; }
  .zv-nav__hamburger { display:flex; }
  .zv-hero { padding:100px 24px 72px; }
  .zv-hero__molecule { display:none; }
  .zv-container { padding:0 24px; }
  .zv-trust-bar { padding:16px 24px; }
  .zv-trust-bar__inner { flex-direction:column; gap:12px; }
  .zv-tbi { border-right:none; padding:8px 0; border-bottom:1px solid rgba(0,180,166,0.08); width:100%; }
  .zv-tbi:last-child { border-bottom:none; }
  .zv-products-grid { grid-template-columns:1fr; }
  .zv-quality-inner, .zv-research-inner, .zv-reviews-inner { padding:72px 24px; }
  .zv-bundles-grid { grid-template-columns:1fr; }
  .zv-research-grid { grid-template-columns:1fr; }
  .zv-reviews-grid { grid-template-columns:1fr; }
  .zv-footer__top { grid-template-columns:1fr; }
  .zv-footer { padding:48px 24px 32px; }
  .zv-capture-inner { padding:72px 24px; }
  .zv-capture-form__row { flex-direction:column; }
  .zv-capture-input { border-right:1px solid var(--zv-teal-edge); border-bottom:none; }
  .zv-nav__mobile { padding:24px; }
}
/* ═══════════════════════════════════════════
   ZYVARA LABS — zyvara-pages.css
   Additional styles for product, COA, about pages
═══════════════════════════════════════════ */

/* ── PRODUCT PAGE ── */
.zv-product { padding:100px 0 60px; }
.zv-product__inner { max-width:1320px; margin:0 auto; padding:0 48px; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.zv-product__media { position:sticky; top:100px; }
.zv-product__vial-wrap { background:var(--zv-navy); border:1px solid var(--zv-teal-edge); padding:48px; display:flex; align-items:center; justify-content:center; position:relative; min-height:420px; }
.zv-product__vial-placeholder { display:flex; align-items:center; justify-content:center; }
.zv-vial-svg { width:200px; height:auto; }
.zv-product__image { width:100%; height:auto; display:block; }
.zv-product__coa-badge { position:absolute; bottom:20px; left:20px; display:flex; align-items:center; gap:10px; background:rgba(8,15,28,0.9); border:1px solid rgba(0,180,166,0.3); padding:10px 16px; backdrop-filter:blur(8px); }
.zv-coa-badge__dot { width:8px; height:8px; border-radius:50%; background:var(--zv-teal); flex-shrink:0; animation:zvPulse 2s ease-in-out infinite; }
@keyframes zvPulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.6;transform:scale(0.85)} }
.zv-coa-badge__label { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-teal); text-transform:uppercase; }
.zv-coa-badge__sub { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; margin-top:1px; }
.zv-product__thumbs { display:flex; gap:8px; margin-top:12px; }
.zv-product__thumb { width:64px; height:64px; border:1px solid var(--zv-teal-edge); overflow:hidden; cursor:pointer; opacity:0.6; transition:opacity 0.2s, border-color 0.2s; }
.zv-product__thumb.is-active { opacity:1; border-color:var(--zv-teal); }
.zv-product__thumb img { width:100%; height:100%; object-fit:cover; }

/* Product Info */
.zv-product__breadcrumb { display:flex; align-items:center; gap:8px; margin-bottom:20px; }
.zv-product__breadcrumb a { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-slate-2); text-decoration:none; text-transform:uppercase; transition:color 0.2s; }
.zv-product__breadcrumb a:hover { color:var(--zv-teal); }
.zv-breadcrumb__sep { font-family:var(--zv-font-mono); font-size:10px; color:var(--zv-slate-2); }
.zv-product__category-tag { display:inline-block; font-family:var(--zv-font-mono); font-size:9px; letter-spacing:3px; text-transform:uppercase; border:1px solid; padding:4px 12px; margin-bottom:16px; }
.zv-product__title { font-family:var(--zv-font-d); font-size:clamp(48px,6vw,72px); letter-spacing:4px; color:var(--zv-white); line-height:0.95; margin-bottom:24px; }
.zv-product__specs { display:flex; gap:0; margin-bottom:28px; border:1px solid rgba(0,180,166,0.1); }
.zv-spec { padding:16px 20px; text-align:center; flex:1; }
.zv-spec__value { font-family:var(--zv-font-d); font-size:22px; letter-spacing:2px; color:var(--zv-white); line-height:1; }
.zv-spec__unit { font-size:14px; color:var(--zv-teal); }
.zv-spec__label { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; margin-top:4px; }
.zv-spec__sep { width:1px; background:rgba(0,180,166,0.1); }
.zv-product__price-row { display:flex; align-items:baseline; gap:16px; margin-bottom:28px; flex-wrap:wrap; }
.zv-product__price { font-family:var(--zv-font-d); font-size:48px; letter-spacing:3px; color:var(--zv-white); line-height:1; }
.zv-product__compare { font-family:var(--zv-font-d); font-size:28px; color:var(--zv-slate-2); text-decoration:line-through; }
.zv-product__per-unit { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; }
.zv-product__variants { margin-bottom:24px; }
.zv-variants__label { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; margin-bottom:10px; }
.zv-variants__options { display:flex; gap:8px; flex-wrap:wrap; }
.zv-variant-option { padding:10px 20px; border:1px solid var(--zv-teal-edge); font-family:var(--zv-font-mono); font-size:11px; letter-spacing:2px; color:var(--zv-slate); cursor:pointer; transition:all 0.2s; }
.zv-variant-option:hover,.zv-variant-option.is-active { border-color:var(--zv-teal); color:var(--zv-teal); background:var(--zv-teal-glow); }
.zv-product__atc-wrap { margin-bottom:28px; }
.zv-product__atc { width:100%; background:var(--zv-teal); border:none; color:var(--zv-midnight); font-family:var(--zv-font-d); font-size:20px; letter-spacing:4px; padding:20px 36px; cursor:pointer; transition:background 0.2s, transform 0.2s; margin-bottom:12px; }
.zv-product__atc:hover { background:var(--zv-teal-2); transform:translateY(-1px); }
.zv-product__atc.is-sold-out { background:var(--zv-slate-2); cursor:not-allowed; }
.zv-product__bundle-link { display:flex; align-items:center; justify-content:center; gap:8px; font-family:var(--zv-font-mono); font-size:11px; letter-spacing:2px; color:var(--zv-teal); text-decoration:none; padding:12px; border:1px solid rgba(0,180,166,0.15); transition:border-color 0.2s; text-transform:uppercase; }
.zv-product__bundle-link:hover { border-color:var(--zv-teal); }
.zv-product__trust-grid { display:grid; grid-template-columns:1fr 1fr; gap:2px; margin-bottom:20px; }
.zv-product__trust-item { display:flex; align-items:center; gap:10px; padding:12px 16px; background:var(--zv-navy); font-family:var(--zv-font-mono); font-size:10px; letter-spacing:1.5px; color:var(--zv-slate); text-transform:uppercase; }
.zv-product__trust-item svg { flex-shrink:0; }
.zv-product__disclaimer { display:flex; align-items:flex-start; gap:10px; padding:14px 16px; background:rgba(200,169,110,0.05); border:1px solid rgba(200,169,110,0.15); font-family:var(--zv-font-mono); font-size:9px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; line-height:1.6; }
.zv-disclaimer__icon { color:var(--zv-amber); flex-shrink:0; font-size:12px; }

/* ── PRODUCT TABS ── */
.zv-product-tabs { background:var(--zv-midnight); border-top:1px solid rgba(0,180,166,0.08); }
.zv-product-tabs__nav { max-width:1320px; margin:0 auto; padding:0 48px; display:flex; border-bottom:1px solid rgba(0,180,166,0.1); overflow-x:auto; }
.zv-tab-btn { padding:20px 28px; font-family:var(--zv-font-ui); font-size:13px; font-weight:500; letter-spacing:2px; text-transform:uppercase; color:var(--zv-slate); background:none; border:none; border-bottom:2px solid transparent; cursor:pointer; white-space:nowrap; transition:color 0.2s, border-color 0.2s; }
.zv-tab-btn:hover { color:var(--zv-white); }
.zv-tab-btn.is-active { color:var(--zv-teal); border-bottom-color:var(--zv-teal); }
.zv-product-tabs__body { max-width:1320px; margin:0 auto; padding:48px; }
.zv-tab-panel { display:none; }
.zv-tab-panel.is-active { display:block; }
.zv-tab-content { font-size:16px; color:var(--zv-slate); line-height:1.8; max-width:800px; }
.zv-tab-content h2 { font-family:var(--zv-font-d); font-size:24px; letter-spacing:3px; color:var(--zv-white); margin:32px 0 12px; }
.zv-tab-content h2:first-child { margin-top:0; }
.zv-tab-content p { margin-bottom:16px; }
.zv-tab-content ul { padding-left:0; list-style:none; margin-bottom:16px; }
.zv-tab-content ul li { padding:6px 0 6px 20px; position:relative; border-bottom:1px solid rgba(0,0,0,0.1); }
.zv-tab-content ul li::before { content:''; position:absolute; left:0; top:15px; width:6px; height:6px; border-radius:50%; background:var(--zv-teal); }
.zv-tab-content strong { color:var(--zv-white); }

/* COA Tab */
.zv-coa-section { max-width:800px; }
.zv-coa-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:32px; flex-wrap:wrap; }
.zv-coa-title { font-family:var(--zv-font-d); font-size:28px; letter-spacing:3px; color:var(--zv-white); margin:8px 0; }
.zv-coa-intro { font-size:14px; color:var(--zv-slate); line-height:1.6; max-width:440px; }
.zv-coa-results { display:flex; flex-direction:column; gap:12px; margin-bottom:28px; }
.zv-coa-result { display:grid; grid-template-columns:180px 1fr 140px; align-items:center; gap:16px; }
.zv-coa-result__test { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; }
.zv-coa-result__bar-wrap { height:4px; background:rgba(0,180,166,0.1); border-radius:2px; overflow:hidden; }
.zv-coa-result__bar { height:100%; background:var(--zv-teal); border-radius:2px; transition:width 1s var(--zv-ease); }
.zv-coa-result__value { font-family:var(--zv-font-d); font-size:16px; letter-spacing:2px; color:var(--zv-teal); text-align:right; }
.zv-coa-pass { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:2px; background:rgba(0,180,166,0.1); border:1px solid rgba(0,180,166,0.3); padding:2px 6px; margin-left:6px; vertical-align:middle; }
.zv-coa-footer { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; padding:20px 0; border-top:1px solid rgba(0,180,166,0.1); }
.zv-coa-footer__label { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:2px; color:var(--zv-slate-2); text-transform:uppercase; margin-bottom:4px; }
.zv-coa-footer__value { font-family:var(--zv-font-mono); font-size:11px; letter-spacing:1px; color:var(--zv-white); }

/* Specs Tab */
.zv-specs-grid { display:flex; flex-direction:column; gap:0; max-width:700px; }
.zv-spec-row { display:grid; grid-template-columns:200px 1fr; gap:24px; padding:16px 0; border-bottom:1px solid rgba(0,180,166,0.06); }
.zv-spec-row__key { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; padding-top:2px; }
.zv-spec-row__val { font-size:15px; color:var(--zv-white-dim); line-height:1.5; }

/* Storage Tab */
.zv-storage-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.zv-storage-card { background:var(--zv-navy); padding:28px 24px; border:1px solid rgba(0,180,166,0.06); }
.zv-storage-card__icon { font-size:24px; margin-bottom:12px; display:block; }
.zv-storage-card__title { font-family:var(--zv-font-d); font-size:18px; letter-spacing:2px; color:var(--zv-white); margin-bottom:10px; }
.zv-storage-card__desc { font-size:14px; color:var(--zv-slate); line-height:1.6; }

/* Related Products */
.zv-related-section { background:var(--zv-navy); border-top:1px solid var(--zv-teal-edge); padding:80px 0; }

/* ── COA LIBRARY ── */
.zv-coa-library { }
.zv-coa-lib__hero { background:var(--zv-midnight); padding:120px 48px 80px; position:relative; overflow:hidden; }
.zv-coa-lib__hero-grid { position:absolute; inset:0; background-image:linear-gradient(rgba(0,180,166,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,166,0.03) 1px,transparent 1px); background-size:60px 60px; }
.zv-coa-lib__hero-content { max-width:1320px; margin:0 auto; position:relative; z-index:1; }
.zv-coa-lib__title { font-family:var(--zv-font-d); font-size:clamp(60px,8vw,100px); letter-spacing:4px; color:var(--zv-white); line-height:0.9; margin:16px 0 20px; }
.zv-coa-lib__sub { font-family:var(--zv-font-ui); font-size:18px; font-weight:300; color:var(--zv-slate); max-width:640px; line-height:1.6; margin-bottom:40px; }
.zv-coa-lib__stats { display:flex; gap:0; }
.zv-coa-lib__stat { padding:20px 36px; background:var(--zv-navy); border:1px solid rgba(0,180,166,0.1); }
.zv-coa-lib__stat:first-child { border-left:3px solid var(--zv-teal); }
.zv-coa-lib__stat-value { font-family:var(--zv-font-d); font-size:36px; letter-spacing:2px; color:var(--zv-teal); line-height:1; }
.zv-coa-lib__stat-label { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; margin-top:4px; }
.zv-coa-lib__stat-sep { width:1px; background:rgba(0,180,166,0.15); }

/* Filter bar */
.zv-coa-lib__filters { background:var(--zv-navy); border-bottom:1px solid var(--zv-teal-edge); padding:0 48px; }
.zv-coa-lib__filters-inner { max-width:1320px; margin:0 auto; display:flex; gap:0; overflow-x:auto; }
.zv-filter-btn { padding:16px 24px; font-family:var(--zv-font-mono); font-size:10px; letter-spacing:3px; text-transform:uppercase; color:var(--zv-slate); background:none; border:none; border-bottom:2px solid transparent; cursor:pointer; white-space:nowrap; transition:all 0.2s; }
.zv-filter-btn:hover { color:var(--zv-white); }
.zv-filter-btn.is-active { color:var(--zv-teal); border-bottom-color:var(--zv-teal); }

/* COA Grid */
.zv-coa-lib__grid { max-width:1320px; margin:0 auto; padding:48px; display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.zv-coa-card { background:var(--zv-navy); border:1px solid rgba(0,180,166,0.06); overflow:hidden; transition:border-color 0.3s, transform 0.3s var(--zv-ease); }
.zv-coa-card:hover { border-color:var(--zv-teal-edge); transform:translateY(-3px); }
.zv-coa-card__stripe { height:3px; width:100%; }
.zv-coa-card__body { padding:24px 22px; }
.zv-coa-card__header { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:20px; gap:12px; }
.zv-coa-card__name { font-family:var(--zv-font-d); font-size:24px; letter-spacing:2px; color:var(--zv-white); line-height:1; }
.zv-coa-card__size { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:2px; color:var(--zv-slate); text-transform:uppercase; margin-top:4px; }
.zv-coa-card__lot { text-align:right; }
.zv-coa-card__lot-label { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:2px; color:var(--zv-slate-2); text-transform:uppercase; }
.zv-coa-card__lot-value { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:1px; color:var(--zv-white); margin-top:2px; }
.zv-coa-card__results { display:flex; flex-direction:column; gap:8px; margin-bottom:20px; }
.zv-coa-card__result { display:grid; grid-template-columns:100px 1fr 80px; align-items:center; gap:10px; }
.zv-coa-card__test { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; }
.zv-coa-card__bar-wrap { height:3px; background:rgba(0,180,166,0.08); border-radius:2px; overflow:hidden; }
.zv-coa-card__bar { height:100%; border-radius:2px; }
.zv-coa-card__value { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:1px; text-align:right; }
.zv-coa-card__footer { display:flex; align-items:center; justify-content:space-between; padding-top:16px; border-top:1px solid rgba(0,180,166,0.08); }
.zv-coa-card__date { font-family:var(--zv-font-mono); font-size:8px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; }
.zv-coa-card__download { display:flex; align-items:center; gap:6px; font-family:var(--zv-font-mono); font-size:9px; letter-spacing:2px; color:var(--zv-teal); text-decoration:none; text-transform:uppercase; transition:opacity 0.2s; }
.zv-coa-card__download:hover { opacity:0.7; }
.zv-coa-card.is-hidden { display:none; }
.zv-coa-lib__disclaimer { background:var(--zv-midnight); border-top:1px solid rgba(0,180,166,0.08); padding:32px 48px; }
.zv-coa-lib__disclaimer-inner { max-width:1320px; margin:0 auto; display:flex; gap:16px; align-items:flex-start; }
.zv-coa-lib__disclaimer-icon { color:var(--zv-amber); font-size:16px; flex-shrink:0; margin-top:2px; }
.zv-coa-lib__disclaimer p { font-family:var(--zv-font-mono); font-size:9px; letter-spacing:1.5px; color:var(--zv-slate-2); text-transform:uppercase; line-height:1.8; }

/* ── ABOUT / STANDARDS PAGE ── */
.zv-about-hero { background:var(--zv-midnight); padding:120px 48px 80px; position:relative; overflow:hidden; }
.zv-about-hero__grid { position:absolute; inset:0; background-image:linear-gradient(rgba(0,180,166,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,166,0.03) 1px,transparent 1px); background-size:60px 60px; }
.zv-about-hero__inner { max-width:1320px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; position:relative; z-index:1; }
.zv-about-hero__title { font-family:var(--zv-font-d); font-size:clamp(56px,7vw,90px); letter-spacing:4px; color:var(--zv-white); line-height:0.92; margin:16px 0 20px; }
.zv-about-hero__sub { font-family:var(--zv-font-ui); font-size:18px; font-weight:300; color:var(--zv-slate); line-height:1.7; }
.zv-manifesto-item { display:flex; gap:20px; padding:20px 0; border-bottom:1px solid rgba(0,180,166,0.08); }
.zv-manifesto-item:last-child { border-bottom:none; }
.zv-manifesto-number { font-family:var(--zv-font-mono); font-size:11px; letter-spacing:2px; color:var(--zv-teal); flex-shrink:0; margin-top:2px; }
.zv-manifesto-text { font-size:15px; color:var(--zv-slate); line-height:1.7; }

/* Standards Sections */
.zv-standards-section { background:var(--zv-midnight); }
.zv-standards-inner { max-width:1100px; margin:0 auto; padding:80px 48px; }
.zv-standards-block { padding:60px 0; }
.zv-standards-block__eyebrow { font-family:var(--zv-font-mono); font-size:10px; letter-spacing:4px; color:var(--zv-teal); text-transform:uppercase; margin-bottom:12px; display:flex; align-items:center; gap:12px; }
.zv-standards-block__eyebrow::before { content:''; display:block; width:24px; height:1px; background:var(--zv-teal); }
.zv-standards-block__title { font-family:var(--zv-font-d); font-size:clamp(32px,4vw,52px); letter-spacing:3px; color:var(--zv-white); line-height:0.95; margin-bottom:32px; }
.zv-standards-block__body > p { font-size:16px; color:var(--zv-slate); line-height:1.8; margin-bottom:32px; max-width:740px; }
.zv-standards-divider { height:1px; background:linear-gradient(to right,var(--zv-teal-edge),transparent); }
.zv-standards-tests { display:flex; flex-direction:column; gap:0; }
.zv-standards-test { display:flex; gap:24px; padding:24px 0; border-bottom:1px solid rgba(0,180,166,0.06); }
.zv-standards-test:last-child { border-bottom:none; }
.zv-standards-test__num { width:36px; height:36px; border:1px solid var(--zv-teal-edge); background:var(--zv-navy); display:flex; align-items:center; justify-content:center; font-family:var(--zv-font-mono); font-size:12px; color:var(--zv-teal); flex-shrink:0; }
.zv-standards-test__name { font-family:var(--zv-font-d); font-size:18px; letter-spacing:2px; color:var(--zv-white); margin-bottom:6px; }
.zv-standards-test__desc { font-size:14px; color:var(--zv-slate); line-height:1.7; }
.zv-standards-grid { display:grid; grid-template-columns:1fr 1fr; gap:2px; }
.zv-standards-grid-item { background:var(--zv-navy); padding:28px 24px; border-left:3px solid rgba(0,180,166,0.2); }
.zv-standards-grid-item__title { font-family:var(--zv-font-d); font-size:18px; letter-spacing:2px; color:var(--zv-white); margin-bottom:10px; }
.zv-standards-grid-item p { font-size:14px; color:var(--zv-slate); line-height:1.7; }
.zv-standards-label-items { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:20px 0; }
.zv-standards-label-item { display:flex; align-items:center; gap:10px; font-family:var(--zv-font-mono); font-size:10px; letter-spacing:1.5px; color:var(--zv-slate); text-transform:uppercase; padding:10px 14px; background:var(--zv-navy); }
.zv-label-check { color:var(--zv-teal); font-size:12px; flex-shrink:0; }
.zv-label-x { color:#E05555; font-size:12px; flex-shrink:0; }
.zv-standards-note { font-size:14px; color:var(--zv-slate-2); line-height:1.7; font-style:italic; margin-top:16px; padding:16px; border-left:3px solid rgba(0,180,166,0.2); }
.zv-standards-compliance { display:grid; grid-template-columns:1fr 1fr; gap:2px; }
.zv-compliance-item { background:var(--zv-navy); padding:28px 24px; }
.zv-compliance-item__title { font-family:var(--zv-font-d); font-size:18px; letter-spacing:2px; color:var(--zv-white); margin-bottom:10px; }
.zv-compliance-item p { font-size:14px; color:var(--zv-slate); line-height:1.7; }

/* ── RESPONSIVE ADDITIONS ── */
@media (max-width:1024px) {
  .zv-product__inner { grid-template-columns:1fr; gap:48px; }
  .zv-product__media { position:static; }
  .zv-about-hero__inner { grid-template-columns:1fr; gap:40px; }
  .zv-coa-lib__grid { grid-template-columns:repeat(2,1fr); }
  .zv-storage-grid { grid-template-columns:repeat(2,1fr); }
  .zv-standards-grid { grid-template-columns:1fr; }
  .zv-standards-compliance { grid-template-columns:1fr; }
}
@media (max-width:768px) {
  .zv-product { padding:80px 0 40px; }
  .zv-product__inner { padding:0 24px; }
  .zv-product-tabs__nav { padding:0 24px; }
  .zv-product-tabs__body { padding:32px 24px; }
  .zv-coa-result { grid-template-columns:120px 1fr 100px; }
  .zv-coa-footer { grid-template-columns:1fr 1fr; }
  .zv-coa-lib__hero { padding:100px 24px 60px; }
  .zv-coa-lib__filters { padding:0 24px; }
  .zv-coa-lib__grid { padding:32px 24px; grid-template-columns:1fr; }
  .zv-coa-lib__stats { flex-direction:column; }
  .zv-coa-lib__stat-sep { display:none; }
  .zv-about-hero { padding:100px 24px 60px; }
  .zv-standards-inner { padding:60px 24px; }
  .zv-standards-label-items { grid-template-columns:1fr; }
  .zv-storage-grid { grid-template-columns:1fr; }
  .zv-product__trust-grid { grid-template-columns:1fr; }
  .zv-spec-row { grid-template-columns:1fr; gap:4px; }
}

/* ═══════════════════════════════════════════
   COLLECTION, BUNDLES & BLOG PAGES
═══════════════════════════════════════════ */

/* ── COLLECTION HERO ── */
.zv-collection-hero {
  background:var(--zv-midnight);
  padding:120px 48px 64px;
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--zv-teal-edge);
}
.zv-collection-hero::before {
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(0,180,166,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,166,0.03) 1px,transparent 1px);
  background-size:60px 60px;
}
.zv-collection-hero__inner {
  max-width:1320px;margin:0 auto;
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:40px;flex-wrap:wrap;position:relative;z-index:1;
}
.zv-collection-hero__title {
  font-family:var(--zv-font-d);
  font-size:clamp(52px,7vw,88px);
  letter-spacing:4px;color:var(--zv-white);
  line-height:0.92;margin:12px 0 16px;
}
.zv-collection-hero__desc {
  font-family:var(--zv-font-ui);font-size:17px;font-weight:300;
  color:var(--zv-slate);max-width:520px;line-height:1.6;
}
.zv-collection-hero__stats {
  display:flex;align-items:center;gap:0;flex-shrink:0;
}
.zv-ch-stat {
  padding:16px 28px;background:var(--zv-navy);
  border:1px solid var(--zv-teal-edge);text-align:center;
}
.zv-ch-stat__val {
  font-family:var(--zv-font-d);font-size:32px;letter-spacing:2px;
  color:var(--zv-teal);line-height:1;
}
.zv-ch-stat__lbl {
  font-family:var(--zv-font-mono);font-size:8px;letter-spacing:2px;
  color:var(--zv-slate);text-transform:uppercase;margin-top:4px;
}
.zv-ch-stat__sep {width:1px;background:var(--zv-teal-edge);align-self:stretch;}

/* ── COLLECTION FILTERS ── */
.zv-collection-filters {
  background:var(--zv-navy);
  border-bottom:1px solid var(--zv-teal-edge);
  padding:0 48px;
  position:sticky;top:68px;z-index:90;
}
.zv-collection-filters__inner {
  max-width:1320px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;overflow-x:auto;
}
.zv-collection-count {
  font-family:var(--zv-font-mono);font-size:10px;
  letter-spacing:2px;color:var(--zv-slate);text-transform:uppercase;
  white-space:nowrap;flex-shrink:0;padding:16px 0;
}
.zv-collection-filters__right {
  display:flex;gap:4px;padding:10px 0;
}
.zv-filter-pill {
  font-family:var(--zv-font-mono);font-size:10px;letter-spacing:2px;
  text-transform:uppercase;color:var(--zv-slate);text-decoration:none;
  padding:8px 16px;border:1px solid transparent;
  transition:all 0.2s;white-space:nowrap;
}
.zv-filter-pill:hover {color:var(--zv-white);border-color:var(--zv-teal-edge);}
.zv-filter-pill.is-active {color:var(--zv-teal);border-color:var(--zv-teal-edge);background:var(--zv-teal-glow);}

/* ── COLLECTION GRID ── */
.zv-collection-section {padding:48px 0 80px;}
.zv-collection-grid {
  max-width:1320px;margin:0 auto;padding:48px 48px 0;
  display:grid;grid-template-columns:repeat(4,1fr);gap:2px;
}
.zv-product-card__img-wrap {
  height:220px;overflow:hidden;background:var(--zv-midnight);
  display:flex;align-items:center;justify-content:center;
  border-bottom:1px solid rgba(0,180,166,0.06);
}
.zv-product-card__img {
  width:100%;height:100%;object-fit:contain;padding:16px;
  transition:transform 0.4s var(--zv-ease);
}
.zv-product-card:hover .zv-product-card__img {transform:scale(1.04);}
.zv-product-card__img-placeholder {
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  opacity:0.6;
}
.zv-collection-empty {
  grid-column:1/-1;text-align:center;padding:80px 24px;
}
.zv-collection-empty__title {
  font-family:var(--zv-font-d);font-size:32px;letter-spacing:3px;
  color:var(--zv-white);margin-bottom:12px;
}
.zv-collection-empty__desc {
  font-size:16px;color:var(--zv-slate);margin-bottom:28px;
}
.zv-collection-disclaimer {
  max-width:1320px;margin:40px auto 0;padding:0 48px;
  display:flex;align-items:center;gap:12px;
  font-family:var(--zv-font-mono);font-size:9px;
  letter-spacing:1.5px;color:var(--zv-slate-2);text-transform:uppercase;
}
.zv-pagination {
  max-width:1320px;margin:48px auto 0;padding:0 48px;
  display:flex;justify-content:center;gap:8px;
}
.zv-pagination .page {
  font-family:var(--zv-font-mono);font-size:11px;letter-spacing:2px;
  color:var(--zv-slate);text-decoration:none;padding:10px 16px;
  border:1px solid var(--zv-teal-edge);transition:all 0.2s;
}
.zv-pagination .page:hover,.zv-pagination .page.current {
  color:var(--zv-teal);background:var(--zv-teal-glow);
}

/* ── BUNDLES PAGE ── */
.zv-bundles-page {padding:64px 0 80px;}
.zv-bundles-page-grid {
  display:flex;flex-direction:column;gap:2px;margin-top:0;
}
.zv-bundle-card-full {
  background:var(--zv-navy);border:1px solid rgba(0,180,166,0.08);
  position:relative;overflow:hidden;
  transition:border-color 0.3s;
  text-decoration:none;color:inherit;display:block;
}
.zv-bundle-card-full:hover {border-color:var(--zv-teal-edge);}
.zv-bundle-card-full__body {padding:36px 40px;}
.zv-bundle-card-full__header {
  display:flex;align-items:flex-start;justify-content:space-between;
  gap:24px;margin-bottom:16px;
}
.zv-bundle-card-full__img {
  width:80px;height:80px;object-fit:contain;opacity:0.8;flex-shrink:0;
}
.zv-bundle-compare {
  font-family:var(--zv-font-d);font-size:24px;letter-spacing:2px;
  color:var(--zv-slate-2);text-decoration:line-through;margin-left:12px;
}
.zv-bundle-features {
  display:flex;flex-direction:column;gap:6px;margin:20px 0 24px;
}
.zv-bundle-feature {
  display:flex;align-items:center;gap:10px;
  font-family:var(--zv-font-mono);font-size:10px;
  letter-spacing:1.5px;color:var(--zv-slate);text-transform:uppercase;
}
.zv-bundle-cta-row {margin-top:4px;}

/* ── BLOG / RESEARCH LIBRARY ── */
.zv-blog-section {padding:0 0 80px;}
.zv-blog-inner {max-width:1320px;margin:0 auto;padding:0 48px;}
.zv-blog-filters {
  display:flex;gap:0;padding:0;margin-bottom:0;
  border-bottom:1px solid rgba(0,180,166,0.1);
  overflow-x:auto;
}
.zv-blog-grid {
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:2px;margin-top:48px;
}
.zv-blog-card {
  background:var(--zv-navy);text-decoration:none;color:inherit;
  display:flex;flex-direction:column;
  border:1px solid rgba(0,180,166,0.06);
  transition:border-color 0.3s,transform 0.3s var(--zv-ease);
}
.zv-blog-card:hover {border-color:var(--zv-teal-edge);transform:translateY(-3px);}
.zv-blog-card__img-wrap {height:180px;overflow:hidden;}
.zv-blog-card__img {
  width:100%;height:100%;object-fit:cover;
  transition:transform 0.4s var(--zv-ease);
}
.zv-blog-card:hover .zv-blog-card__img {transform:scale(1.04);}
.zv-blog-card__img-placeholder {height:180px;overflow:hidden;}
.zv-blog-card__body {padding:24px;flex:1;display:flex;flex-direction:column;}
.zv-blog-card__title {
  font-family:var(--zv-font-ui);font-size:18px;font-weight:600;
  letter-spacing:0.5px;color:var(--zv-white);line-height:1.3;
  margin:10px 0 10px;
}
.zv-blog-card__excerpt {
  font-size:14px;color:var(--zv-slate);line-height:1.6;
  flex:1;margin-bottom:16px;
}
.zv-blog-card__meta {
  display:flex;align-items:center;justify-content:space-between;
  padding-top:12px;border-top:1px solid rgba(0,180,166,0.08);
}
.zv-blog-card__date {
  font-family:var(--zv-font-mono);font-size:9px;
  letter-spacing:2px;color:var(--zv-slate-2);text-transform:uppercase;
}

/* ── RESPONSIVE ADDITIONS ── */
@media(max-width:1024px){
  .zv-collection-grid{grid-template-columns:repeat(2,1fr);}
  .zv-blog-grid{grid-template-columns:repeat(2,1fr);}
  .zv-bundle-card-full__body{padding:24px;}
}
@media(max-width:768px){
  .zv-collection-hero{padding:100px 24px 48px;}
  .zv-collection-hero__inner{flex-direction:column;align-items:flex-start;}
  .zv-collection-filters{padding:0 24px;top:68px;}
  .zv-collection-grid{padding:32px 24px 0;grid-template-columns:1fr;}
  .zv-blog-inner{padding:0 24px;}
  .zv-blog-grid{grid-template-columns:1fr;}
  .zv-blog-filters{padding:0;}
  .zv-collection-disclaimer{padding:0 24px;}
  .zv-bundles-page-grid{gap:12px;}
  .zv-bundle-card-full__body{padding:20px 24px;}
}

/* ═══════════════════════════════════════════
   COLOR FIXES — White on Navy, Kill Grey Wash
   All navigation, body text, links upgraded
═══════════════════════════════════════════ */

/* ── NAV LINKS — white, bright active state ── */
.zv-nav__links a {
  color: #E8EDF5 !important;
}
.zv-nav__links a:hover {
  color: #FFFFFF !important;
}
.zv-nav__link--active {
  color: var(--zv-teal) !important;
  border-bottom-color: var(--zv-teal) !important;
}
.zv-nav__links a::after {
  background: var(--zv-teal) !important;
}

/* ── MOBILE NAV — white ── */
.zv-nav__mobile a {
  color: #E8EDF5 !important;
  font-size: 17px !important;
  letter-spacing: 1px !important;
}
.zv-nav__mobile a:hover {
  color: var(--zv-teal) !important;
}
.zv-nav__mobile .zv-nav__link--active {
  color: var(--zv-teal) !important;
}

/* ── NAV — scrolled state stays crisp ── */
.zv-nav.is-scrolled {
  background: rgba(8,15,28,0.97) !important;
  border-bottom-color: rgba(0,180,166,0.25) !important;
}

/* ── HERO SUBTITLE — bright white ── */
.zv-hero__subtitle {
  color: #C8D4E8 !important;
}

/* ── HERO TRUST TEXT ── */
.zv-trust-text {
  color: #C8D4E8 !important;
  font-weight: 500 !important;
}

/* ── SECTION DESCRIPTIONS — readable white ── */
.zv-section__desc {
  color: #C0CDE0 !important;
}

/* ── PRODUCT CARDS — bright text ── */
.zv-product-card__category {
  color: #8FACD4 !important;
  letter-spacing: 2px !important;
}
.zv-product-card__size {
  color: #9AAEC4 !important;
}
.zv-product-card__desc {
  color: #B8C8DC !important;
  font-size: 14px !important;
}

/* ── QUALITY STEPS ── */
.zv-step-desc {
  color: #B8C8DC !important;
}
.zv-qs-sub {
  color: #9AAEC4 !important;
}

/* ── BUNDLE CARDS ── */
.zv-bundle-desc {
  color: #B8C8DC !important;
}

/* ── RESEARCH CARDS ── */
.zv-research-card__excerpt {
  color: #B8C8DC !important;
}

/* ── REVIEWS ── */
.zv-review-text {
  color: #E0E8F4 !important;
}
.zv-review-author {
  color: #9AAEC4 !important;
}

/* ── COLLECTION HERO ── */
.zv-collection-hero__desc {
  color: #C0CDE0 !important;
}
.zv-collection-count {
  color: #B8C8DC !important;
}

/* ── COLLECTION FILTER PILLS ── */
.zv-filter-pill {
  color: #C0CDE0 !important;
}
.zv-filter-pill:hover {
  color: #FFFFFF !important;
}
.zv-filter-pill.is-active {
  color: var(--zv-teal) !important;
}

/* ── COLLECTION GRID BLOG FILTER ── */
.zv-filter-btn {
  color: #C0CDE0 !important;
}
.zv-filter-btn:hover {
  color: #FFFFFF !important;
}
.zv-filter-btn.is-active {
  color: var(--zv-teal) !important;
}

/* ── TRUST BAR ── */
.zv-tbi__sub {
  color: #9AAEC4 !important;
}
.zv-tbi__label {
  color: #F0F4FA !important;
}

/* ── PRODUCT PAGE ── */
.zv-product__per-unit {
  color: #9AAEC4 !important;
}
.zv-product__desc {
  color: #B8C8DC !important;
}
.zv-product__trust-item {
  color: #C0CDE0 !important;
}
.zv-step-desc {
  color: #B8C8DC !important;
}
.zv-spec-lbl {
  color: #9AAEC4 !important;
}

/* ── PRODUCT TABS ── */
.zv-tab-btn {
  color: #C0CDE0 !important;
}
.zv-tab-btn:hover {
  color: #FFFFFF !important;
}
.zv-tab-btn.is-active {
  color: var(--zv-teal) !important;
}
.zv-tab-content {
  color: #C0CDE0 !important;
}
.zv-tab-content h2 {
  color: #F0F4FA !important;
}
.zv-tab-content strong {
  color: #FFFFFF !important;
}
.zv-tab-content ul li {
  color: #C0CDE0 !important;
}
.zv-coa-intro {
  color: #B8C8DC !important;
}
.zv-coa-footer__value {
  color: #E8EDF5 !important;
}
.zv-spec-row__val {
  color: #E8EDF5 !important;
}
.zv-storage-card__desc {
  color: #B8C8DC !important;
}

/* ── BLOG CARDS ── */
.zv-blog-card__excerpt {
  color: #B8C8DC !important;
}
.zv-blog-card__date {
  color: #8FACD4 !important;
}
.zv-blog-card__title {
  color: #F0F4FA !important;
}

/* ── BUNDLE PAGE ── */
.zv-bundle-card-full .zv-bundle-desc {
  color: #B8C8DC !important;
}
.zv-bundle-feature {
  color: #C0CDE0 !important;
}

/* ── FOOTER — bright white links ── */
.zv-footer__col-links a {
  color: #C8D4E8 !important;
}
.zv-footer__col-links a:hover {
  color: #FFFFFF !important;
}
.zv-footer__col-links a::before {
  background: rgba(0,180,166,0.3) !important;
}
.zv-footer__col-links a:hover::before {
  background: var(--zv-teal) !important;
}
.zv-footer__tagline {
  color: #C0CDE0 !important;
}
.zv-footer__compliance {
  color: #8FACD4 !important;
  border-left-color: rgba(0,180,166,0.25) !important;
}
.zv-footer__legal {
  color: #8FACD4 !important;
}
.zv-footer__links-bottom a {
  color: #8FACD4 !important;
}
.zv-footer__links-bottom a:hover {
  color: var(--zv-teal) !important;
}

/* ── ABOUT / STANDARDS ── */
.zv-manifesto-text {
  color: #C0CDE0 !important;
}
.zv-standards-block__body > p {
  color: #C0CDE0 !important;
}
.zv-standards-test__desc {
  color: #B8C8DC !important;
}
.zv-standards-grid-item p {
  color: #B8C8DC !important;
}
.zv-compliance-item p {
  color: #B8C8DC !important;
}
.zv-standards-label-item {
  color: #C0CDE0 !important;
}
.zv-standards-note {
  color: #9AAEC4 !important;
}

/* ── COA LIBRARY ── */
.zv-coa-lib__sub {
  color: #C0CDE0 !important;
}
.zv-coa-lib__disclaimer p {
  color: #8FACD4 !important;
}
.zv-coa-card__size {
  color: #9AAEC4 !important;
}
.zv-coa-card__lot-label {
  color: #8FACD4 !important;
}
.zv-coa-card__lot-value {
  color: #E0E8F4 !important;
}
.zv-coa-card__test {
  color: #9AAEC4 !important;
}
.zv-coa-card__date {
  color: #8FACD4 !important;
}

/* ── CAPTURE SECTION ── */
.zv-capture-sub {
  color: #C0CDE0 !important;
}
.zv-capture-disclaimer {
  color: #8FACD4 !important;
}

/* ── COLLECTION EMPTY ── */
.zv-collection-empty__desc {
  color: #B8C8DC !important;
}

/* ── BREADCRUMB ── */
.zv-product__breadcrumb a {
  color: #9AAEC4 !important;
}
.zv-product__breadcrumb a:hover {
  color: var(--zv-teal) !important;
}
.zv-breadcrumb__sep {
  color: #4A5568 !important;
}
.zv-product__breadcrumb span:last-child {
  color: #C0CDE0 !important;
}

/* ── ABOUT HERO SUB ── */
.zv-about-hero__sub {
  color: #C0CDE0 !important;
}

/* ── GENERAL BODY TEXT wherever DM Sans is used ── */
body {
  color: #E8EDF5 !important;
}
p {
  color: #C0CDE0;
}

