/* Heisenberg Peptide theme for generated product, resource, policy and catalog pages. */
:root {
  --pine: #087bff;
  --pine-deep: #020817;
  --pine-light: #14bdf5;
  --fluo: #16e8ff;
  --fluo-dim: #09c8f0;
  --frosty: #061326;
  --frosty-deep: #091a31;
  --misty: #c7f2ff;
  --ink: #eef9ff;
  --ink-soft: #8ea8bc;
  --muted: #6f8ba1;
  --line: rgba(111, 210, 255, .2);
  --line-soft: rgba(111, 210, 255, .1);
  --surface: #0a1b30;
  --brand: var(--pine);
  --brand-dark: var(--pine-deep);
  --accent: var(--fluo);
}

html { background: var(--pine-deep); }
body {
  background:
    radial-gradient(circle at 90% 7%, rgba(11, 145, 255, .1), transparent 28%),
    #030b19;
  color: var(--ink);
}
h1, h2, h3 { color: #f1fbff; }
:focus-visible { outline-color: var(--fluo); box-shadow: 0 0 0 5px rgba(14, 151, 255, .3); }

.seo-header {
  border-color: rgba(111, 210, 255, .13);
  background: rgba(2, 8, 23, .88);
  box-shadow: 0 12px 40px rgba(0, 4, 17, .24);
  backdrop-filter: blur(20px) saturate(1.2);
}
.seo-lockup { width: 230px; height: 64px; object-fit: contain; object-position: left center; }
.seo-element {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border: 1px solid rgba(22, 232, 255, .68);
  background: linear-gradient(145deg, #0b4d89, #041b34);
  color: #fff;
  font-size: 1.08rem;
  font-weight: 700;
}
.seo-brand strong { color: #fff; }
.seo-brand small { color: var(--fluo); }
.seo-header nav { color: #93aabd; }
.seo-header nav a:hover { color: #fff; }
.seo-shop,
.button-link,
.product-actions button,
.pp-add {
  border-color: var(--fluo);
  background: linear-gradient(135deg, #16e8ff, #168dff);
  color: #001322;
  box-shadow: 0 0 22px rgba(22, 216, 255, .12);
}
.seo-shop:hover,
.button-link:hover,
.product-actions button:hover,
.pp-add:hover { background: linear-gradient(135deg, #62f2ff, #3ba5ff); box-shadow: 0 0 30px rgba(22, 216, 255, .26); }
.pp-add {
  border-color: #168dff;
  background: linear-gradient(135deg, #0788ff, #004fcb);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 17, 38, .4);
}
.pp-add:hover {
  background: linear-gradient(135deg, #169cff, #0866df);
  color: #fff;
}

.breadcrumbs { color: #6f8ba1; }
.breadcrumbs a:hover { color: var(--fluo); }
.pp-hero {
  border: 1px solid rgba(103, 209, 255, .2);
  background:
    radial-gradient(70% 90% at 100% 0%, rgba(9, 147, 255, .35), transparent 60%),
    linear-gradient(150deg, #092b4d 0%, #06162b 48%, #020817 100%);
  box-shadow: 0 32px 90px rgba(0, 5, 20, .44);
}
.pp-hero::before { background-image: linear-gradient(rgba(106, 216, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(106, 216, 255, .04) 1px, transparent 1px); }
.pp-photo,
.product-photo,
.pp-card-photo {
  border-color: rgba(99, 207, 255, .18);
  background:
    radial-gradient(circle at 50% 40%, rgba(20, 183, 255, .22), transparent 38%),
    linear-gradient(145deg, #0b223c, #061326 58%, #020817);
}
.pp-photo .vial-art,
.product-photo .vial-art,
.pp-card-photo .vial-art { filter: drop-shadow(0 24px 30px rgba(0, 3, 16, .55)); }
.pp-card-photo { position: relative; display: grid; place-items: center; }
.pp-card-photo .vial-wrap { display: block; width: 52%; height: 80%; }
.pp-card-photo .vial-art { display: block; width: 100%; height: 100%; }
.pp-kicker span,
.pp-hero .pp-eyebrow { color: var(--fluo); }
.stock-pill i { background: var(--fluo); box-shadow: 0 0 12px var(--fluo); }
.pp-facts > div { border-color: rgba(110, 210, 255, .18); background: rgba(5, 29, 52, .58); }
.pp-facts b { color: var(--fluo); }
.pp-buy,
.product-summary dl,
.detail-faq section,
.application-card,
.spec-table-wrap,
.source-details > details,
.source-faq-card,
.article-answer,
.article-contents,
.pp-toc-buy,
.pp-table,
.pp-info-cards > div,
.pp-card,
.pp-article {
  border-color: #d5e5ec;
  background: #f8fcfe;
  color: #102433;
}
.pp-buy h2,
.pp-buy h3,
.pp-toc-buy strong,
.pp-toc-buy b,
.pp-card h3,
.pp-article strong,
.pp-info-cards strong,
.article-answer h2,
.article-contents h2 { color: #083d62; }
.pp-buy .pp-note,
.pp-buy .pp-label,
.pp-buy .pp-total,
.pp-card-body p,
.pp-article p,
.pp-info-cards p { color: #557080; }
.pp-size { border-color: #bfd6e1; color: #086a9c; }
.pp-size.is-active { border-color: #087bff; background: #087bff; color: #fff; }
.pp-size.is-active small { color: #dffbff; }
.pp-qty { border-color: #c2d6e0; }
.pp-qty button { background: #eaf5f9; color: #087bff; }
.pp-qty input { border-color: #c2d6e0; color: #102433; }
.pp-ship { border-color: var(--fluo); background: #e4f8ff; color: #073752; }
.pp-chips { border-color: rgba(109, 210, 255, .2); }
.pp-chips > div { border-color: rgba(109, 210, 255, .12); }
.pp-chips b { color: #f0fbff; }
.pp-accessory { border: 1px solid rgba(109, 210, 255, .13); background: #08182d; }
.pp-accessory-items > div { background: #f8fcfe; color: #193445; }
.pp-accessory strong { color: #dff9ff; }
.pp-toc nav a.is-active { border-color: var(--fluo); background: rgba(12, 94, 150, .22); color: #fff; }
.pp-section h2 { color: #f0fbff; }
.pp-bullets li { border: 1px solid rgba(106, 210, 255, .12); background: #07172a; }
.pp-bullets li::before { background: var(--fluo); color: #001322; box-shadow: none; }
.pp-table td { color: #152f3f; }
.pp-table tbody th { background: #eaf4f8; color: #45606f; }
.pp-faq { border-color: rgba(107, 211, 255, .16); }
.pp-faq details { border-color: rgba(107, 211, 255, .16); }
.pp-faq summary { color: #eaf9ff; }
.pp-faq summary::after { background: #0c2946; color: var(--fluo); }
.pp-faq details p { color: var(--ink-soft); }
.pp-bar { border-color: rgba(100, 206, 255, .24); background: rgba(4, 18, 37, .95); box-shadow: 0 18px 50px rgba(0, 4, 18, .55); }
.pp-bar-name strong, .pp-bar-inner > b { color: #fff; }

.article-page > article,
.policy-page,
.hub-page { color: var(--ink); }
.article-type { color: var(--fluo); }
.article-intro { border-color: rgba(106, 210, 255, .18); color: var(--ink-soft); }
.article-body p,
.article-facts ul,
.article-body > section ul { color: #a8bac8; }
.article-body > section { border-color: rgba(106, 210, 255, .16); }
.article-body p a,
.article-body li a,
.article-sources a { color: var(--fluo); }
.article-answer p,
.article-contents ol { color: #4d6676; }
.article-table .pp-table thead th { background: #e9f4f8; color: #075f8e; }
.editorial-faq, .editorial-faq:last-child { border-color: rgba(107, 211, 255, .16); }
.editorial-faq summary { color: #eaf9ff; }
.hub-next { border: 1px solid rgba(105, 210, 255, .18); background: linear-gradient(135deg, #082b4d, #020817); }

.seo-footer { border-top: 1px solid rgba(107, 211, 255, .16); background: #01050e; }
.footer-lockup { width: 270px; height: 82px; object-fit: contain; object-position: left center; }
.footer-links a:hover { color: var(--fluo); }
.mobile-action-bar { border-color: rgba(105, 210, 255, .16); background: rgba(2, 8, 23, .96); }
.mobile-action-bar .tab { color: #7794aa; }
.mobile-action-bar .tab.is-active { color: var(--fluo); }

/* Price list uses light data surfaces inside the dark cyber theme. Keep every
   table value explicit so global light text never washes out on white rows. */
.pl-switch { border-color: #b9d7e7; background: #f8fcfe; }
.pl-switch a { color: #355b73; }
.pl-switch a:hover { color: #087bff; }
.pl-switch a[aria-current="page"] { background: #087bff; color: #fff; }
.pl-search input { border-color: #b9d7e7; background: #f8fcfe; color: #102f45; }
.pl-search input::placeholder { color: #648096; opacity: 1; }
.pl-search svg { color: #087bff; }
.pl-chips a { border-color: #9dc7df; background: #f3f9fc; color: #075f91; }
.pl-chips a span { color: #4e7188; }
.pl-group { border: 1px solid #a9cfe3; background: #fff; box-shadow: 0 16px 42px rgba(0, 5, 20, .3); }
.pl-group-head { background: linear-gradient(90deg, #087bff, #0f92f2); }
.pl-group-head span { color: #d9fbff; }
.pl-table th { background: #e7f1f6; color: #355f78; }
.pl-table td { border-color: #d5e7f0; color: #17384e; }
.pl-table tbody tr:hover { background: #eef8fd; }
.pl-table tbody tr.is-selected { background: #e1f6ff; box-shadow: inset 3px 0 0 #087bff; }
.pl-name a { color: #0871e8; }
td.pl-spec { color: #124f72; font-weight: 650; }
td.pl-sku { color: #4e7088; }
.pl-table td.pl-price { color: #0871e8; }
.pl-stepper button { border-color: #087bff; background: #f4faff; color: #0871e8; }
.pl-stepper button:hover:not(:disabled) { background: #087bff; color: #fff; }
.pl-qty input { border-color: #087bff; background: #fff; color: #123a55; }
.pl-qty input:focus { box-shadow: 0 0 0 4px rgba(8, 123, 255, .2); }
.pl-add {
  border-color: #168dff;
  background: linear-gradient(135deg, #0788ff, #004fcb);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 17, 38, .4);
}
.pl-add:hover {
  border-color: #169cff;
  background: linear-gradient(135deg, #169cff, #0866df);
  color: #fff;
}
.pl-empty, .pl-terms div { border: 1px solid #b8d6e5; background: #f8fcfe; color: #17384e; }
.pl-terms p { color: #526f81; }

@media (max-width: 1180px) {
  .seo-lockup { display: none; }
  .seo-compact { display: flex; }
}

@media (max-width: 720px) {
  .seo-header { background: rgba(2, 8, 23, .96); }
  .pp-hero { padding: 22px; }
  .footer-lockup { width: 230px; height: 72px; }
}
