/* Shared HQ laboratory scene. Decorative line art only: no measurements,
   warning diamonds, or product claims. Apparatus is not a depiction of
   sold-goods analysis.
   Asset budget (tests): hq-lab.css <= 24000, hq-lab.js <= 4500,
   _pack_layer.html <= 18000. Optimized local WebP, SVG, CSS, and JS only;
   no network images. */

body.has-pack {
  --hq-lab-ink: color-mix(in srgb, var(--pack-accent-mix, var(--accent)) 62%, var(--text));
  --hq-lab-faint: color-mix(in srgb, var(--hq-lab-ink) 24%, transparent);
  --hq-panel: color-mix(in srgb, var(--surface, var(--header)) 88%, transparent);
  --hq-lab-px: 0;
  --hq-lab-py: 0;
  --hq-lab-scroll: 0;
  --hq-lab-ox: 0px;
  --hq-lab-oy: 0px;
  --hq-lab-scale: 1;
}

.hq-lab-stage {
  position: absolute;
  inset: 0;
  overflow: hidden;
  contain: paint;
  pointer-events: none;
  color: var(--hq-lab-ink);
}

.hq-lab-photo {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: 72% center;
  opacity: 0.56;
  filter: saturate(0.82) contrast(1.08);
  transform: scale(1.025);
  transform-origin: 72% center;
  mask-image: linear-gradient(90deg, transparent 0 7%, #000 34%, #000 100%);
  pointer-events: none;
}

.hq-lab-schematic {
  position: absolute;
  z-index: 1;
  inset-inline-end: clamp(-18rem, -12vw, -4rem);
  inset-block-end: clamp(-9rem, -10vh, -3rem);
  width: min(74vw, 68rem);
  max-width: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0.7;
  transform-origin: 70% 72%;
  transform: translate3d(
    calc(var(--hq-lab-ox) + var(--hq-lab-px) * 12px),
    calc(var(--hq-lab-oy) + var(--hq-lab-py) * 8px + var(--hq-lab-scroll) * 12px),
    0
  ) scale(var(--hq-lab-scale));
  pointer-events: none;
}

.hq-lab-schematic .hq-grid {
  stroke: var(--hq-lab-faint);
  stroke-width: 1;
  stroke-dasharray: 3 12;
  opacity: 0.45;
}

.hq-lab-schematic .hq-gauge,
.hq-lab-schematic .hq-trace,
.hq-lab-schematic .hq-column-flow {
  stroke: var(--accent);
  stroke-width: 3.2;
}

.hq-lab-schematic .hq-bench { stroke-width: 1.6; opacity: 0.45; }

.hq-lab-schematic [data-hq-group] { opacity: 0.1; }
.hq-lab-schematic [data-hq-group="grid"] { opacity: 0.35; }

body.apparatus-chromatography-station .hq-lab-schematic [data-hq-group="chromatography"],
body.lab-chromatography-hall .hq-lab-schematic [data-hq-group="chromatography"] { opacity: 1; }
body.apparatus-spectroscopy-console .hq-lab-schematic [data-hq-group="spectroscopy"],
body.lab-spectroscopy-suite .hq-lab-schematic [data-hq-group="spectroscopy"] { opacity: 1; }
body.apparatus-synthesis-reactor .hq-lab-schematic [data-hq-group="synthesis"],
body.lab-synthesis-bay .hq-lab-schematic [data-hq-group="synthesis"] { opacity: 1; }
body.apparatus-microscopy-stage .hq-lab-schematic [data-hq-group="microscopy"],
body.lab-microscopy-bench .hq-lab-schematic [data-hq-group="microscopy"] { opacity: 1; }
body.apparatus-fume-hood .hq-lab-schematic [data-hq-group="hood"],
body.lab-cleanroom-hood .hq-lab-schematic [data-hq-group="hood"] { opacity: 1; }
body.apparatus-cold-cabinet .hq-lab-schematic [data-hq-group="coldchain"],
body.lab-cold-chain-vault .hq-lab-schematic [data-hq-group="coldchain"] { opacity: 1; }
body.apparatus-fluidics-deck .hq-lab-schematic [data-hq-group="microfluidics"],
body.lab-microfluidics-deck .hq-lab-schematic [data-hq-group="microfluidics"] { opacity: 1; }
body.apparatus-analytical-balance .hq-lab-schematic [data-hq-group="balance"],
body.lab-balance-studio .hq-lab-schematic [data-hq-group="balance"] { opacity: 1; }

.hq-lab-schematic [data-hq-pose] { opacity: 0; }
body.pose-loading-column .hq-lab-schematic [data-hq-pose="loading-column"],
body.pose-at-console .hq-lab-schematic [data-hq-pose="at-console"],
body.pose-monitoring-gauge .hq-lab-schematic [data-hq-pose="monitoring-gauge"],
body.pose-observing-scope .hq-lab-schematic [data-hq-pose="observing-scope"],
body.pose-at-hood .hq-lab-schematic [data-hq-pose="at-hood"],
body.pose-transferring .hq-lab-schematic [data-hq-pose="transferring"],
body.pose-pipette-stance .hq-lab-schematic [data-hq-pose="pipette-stance"],
body.pose-weighing .hq-lab-schematic [data-hq-pose="weighing"] {
  opacity: 1;
  fill: color-mix(in srgb, var(--surface, var(--bg)) 34%, transparent);
  stroke-width: 2.5;
}

body.chem-bond .hq-manifold,
body.chem-bond .hq-glassware { opacity: 1; }
body.chem-bond .hq-columns { opacity: 0.28; }
body.chem-lattice .hq-samples,
body.chem-lattice .hq-reactor,
body.chem-lattice .hq-grid { opacity: 1; }
body.chem-lattice .hq-glassware { opacity: 0.3; }
body.chem-chromatogram .hq-columns,
body.chem-chromatogram .hq-monitor { opacity: 1; }
body.chem-chromatogram .hq-samples { opacity: 0.36; }
body.chem-spectral .hq-monitor,
body.chem-spectral .hq-trace,
body.chem-spectral .hq-reactor { opacity: 1; }
body.chem-spectral .hq-glassware,
body.chem-spectral .hq-columns { opacity: 0.4; }

body.topo-right-dock { --hq-lab-ox: 6%; --hq-lab-oy: 4%; }
body.topo-left-dock { --hq-lab-ox: -28%; --hq-lab-oy: 2%; }
body.topo-left-dock .hq-lab-schematic {
  inset-inline-end: auto;
  inset-inline-start: clamp(-18rem, -12vw, -4rem);
  transform-origin: 30% 72%;
}
body.topo-split-wings { --hq-lab-scale: 1.12; --hq-lab-oy: -6%; }
body.topo-split-wings .hq-lab-schematic { width: min(92vw, 78rem); }
body.topo-corner-crop { --hq-lab-ox: 12%; --hq-lab-oy: 10%; --hq-lab-scale: 1.08; }
body.topo-mid-field { --hq-lab-ox: -8%; --hq-lab-oy: -4%; --hq-lab-scale: 0.92; }
body.topo-mid-field .hq-lab-schematic { inset-inline-end: 8%; }
body.topo-overhead-shelf { --hq-lab-oy: -18%; --hq-lab-scale: 0.88; }
body.topo-overhead-shelf .hq-lab-schematic {
  inset-block-end: auto;
  inset-block-start: 6vh;
}
body.topo-aisle-recede { --hq-lab-scale: 1.18; --hq-lab-oy: 8%; }
body.topo-horizon-band { --hq-lab-oy: 16%; --hq-lab-scale: 1.04; }
body.topo-horizon-band .hq-lab-schematic { inset-block-end: -14rem; }

body.ambient-elution-bands .hq-lab-stage::after,
body.ambient-grating-wash .hq-lab-stage::after,
body.ambient-vapor-rings .hq-lab-stage::after,
body.ambient-lattice-nodes .hq-lab-stage::after,
body.ambient-frost-lines .hq-lab-stage::after,
body.ambient-droplet-grid .hq-lab-stage::after,
body.ambient-filament-trace .hq-lab-stage::after,
body.ambient-prism-wash .hq-lab-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 2;
  opacity: 0.28;
}
body.ambient-elution-bands .hq-lab-stage::after {
  background: repeating-linear-gradient(90deg, transparent 0 18px, color-mix(in srgb, var(--accent) 22%, transparent) 18px 19px);
}
body.ambient-grating-wash .hq-lab-stage::after {
  background: repeating-linear-gradient(180deg, transparent 0 10px, color-mix(in srgb, var(--accent) 18%, transparent) 10px 11px);
}
body.ambient-vapor-rings .hq-lab-stage::after {
  background: radial-gradient(circle at 72% 58%, color-mix(in srgb, var(--accent) 22%, transparent) 0 12%, transparent 42%);
}
body.ambient-lattice-nodes .hq-lab-stage::after {
  background-image: radial-gradient(circle at 20% 30%, var(--hq-lab-ink) 0 1.5px, transparent 2px);
  background-size: 28px 28px;
}
body.ambient-frost-lines .hq-lab-stage::after {
  background: repeating-linear-gradient(18deg, transparent 0 22px, color-mix(in srgb, var(--hq-lab-ink) 18%, transparent) 22px 23px);
}
body.ambient-droplet-grid .hq-lab-stage::after {
  background-image: radial-gradient(circle, color-mix(in srgb, var(--accent) 30%, transparent) 0 1.2px, transparent 1.8px);
  background-size: 22px 18px;
}
body.ambient-filament-trace .hq-lab-stage::after {
  background: linear-gradient(118deg, transparent 0 46%, color-mix(in srgb, var(--accent) 24%, transparent) 48%, transparent 52%);
}
body.ambient-prism-wash .hq-lab-stage::after {
  background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 16%, transparent), transparent 42%, color-mix(in srgb, var(--accent-2, var(--accent)) 14%, transparent));
}

body.has-pack.view-home .hq-lab-photo { display: none; }

body.has-pack.view-home .block-hero,
body.has-pack.view-home main > .block:first-of-type {
  isolation: isolate;
  min-height: clamp(36rem, 72vh, 48rem) !important;
  color: #f7fbff;
  background-color: #05080d !important;
  background-image:
    linear-gradient(90deg, rgba(3, 6, 11, 0.98) 0 18%, rgba(3, 6, 11, 0.86) 34%, rgba(3, 6, 11, 0.3) 65%, rgba(3, 6, 11, 0.08) 100%),
    linear-gradient(180deg, rgba(3, 6, 11, 0.08) 52%, rgba(3, 6, 11, 0.92) 100%),
    var(--hq-hero-art) !important;
  background-repeat: no-repeat !important;
  background-position: center, center, var(--hq-hero-position, 72% center) !important;
  background-size: cover !important;
}
body.has-pack.view-home .block-hero::after,
body.has-pack.view-home main > .block:first-of-type::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 72% 48%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 32%),
    linear-gradient(110deg, color-mix(in srgb, var(--accent-2, var(--accent)) 12%, transparent), transparent 42%);
  mix-blend-mode: screen;
}
body.has-pack.view-home .block-hero .hero-copy {
  position: relative;
  z-index: 3;
  width: min(43rem, 56%);
  margin-inline-start: max(0px, calc((100vw - 76rem) / 2));
  margin-inline-end: auto;
  padding: clamp(1.35rem, 3vw, 2.5rem) !important;
  color: #f7fbff !important;
  border: 1px solid color-mix(in srgb, var(--accent) 68%, rgba(255, 255, 255, 0.22)) !important;
  border-inline-start-width: 5px !important;
  background:
    linear-gradient(135deg, rgba(5, 9, 16, 0.92), rgba(5, 9, 16, 0.68)) !important;
  box-shadow:
    0 28px 80px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(12px) saturate(1.18);
}
body.has-pack.view-home .block-hero .hero-copy :is(h1, h2, h3, p, .lede) {
  color: inherit !important;
}
body.has-pack.view-home .block-hero .hero-copy h1 {
  max-width: 13ch;
  text-wrap: balance;
  text-shadow: 0 8px 28px rgba(0, 0, 0, 0.72);
}
body.has-pack.view-home .block-hero .hero-copy .eyebrow {
  color: color-mix(in srgb, var(--accent) 72%, #fff) !important;
}
body.has-pack.view-home .block-hero .hero-copy .btn {
  color: var(--ink-on-accent, #05080d) !important;
  background: color-mix(in srgb, var(--accent) 88%, #fff) !important;
  border-color: color-mix(in srgb, var(--accent) 58%, #fff) !important;
  box-shadow: 0 0 30px color-mix(in srgb, var(--accent) 24%, transparent) !important;
}
html body.has-pack.view-home .pack-layer .pack-motif {
  opacity: 0.14 !important;
}

body.has-pack.view-home .hq-lab-schematic {
  inset-inline-end: clamp(-16rem, -10vw, -3rem);
  inset-block-end: -8rem;
  width: min(86vw, 72rem);
  opacity: 0.18;
}
body.has-pack.view-catalog .hq-lab-schematic {
  inset-inline-end: -15rem;
  inset-block-end: -7rem;
  width: min(58vw, 54rem);
  opacity: 0.42;
}
body.has-pack.view-catalog .hq-lab-photo { opacity: 0.34; }
body.has-pack.view-product .hq-lab-schematic {
  inset-inline-end: -18rem;
  inset-block-end: -5rem;
  width: min(56vw, 52rem);
  --hq-lab-ox: 4%;
}
body.has-pack.view-product .hq-lab-photo { opacity: 0.38; }
body.has-pack.view-content .hq-lab-schematic {
  inset-inline-end: -16rem;
  inset-block-start: 10vh;
  inset-block-end: auto;
  width: min(52vw, 48rem);
  opacity: 0.34;
}
body.has-pack.view-content .hq-lab-photo {
  opacity: 0.28;
  filter: saturate(0.5) contrast(1.1) blur(1px);
}
body.has-pack.journey-txn .hq-lab-stage,
body.has-pack.view-account .hq-lab-stage {
  opacity: 0.05;
}
body.has-pack.journey-txn .hq-lab-photo,
body.has-pack.view-account .hq-lab-photo { display: none; }
body.has-pack.journey-txn .hq-lab-schematic,
body.has-pack.view-account .hq-lab-schematic {
  inset-inline-end: -22rem;
  inset-block-end: -12rem;
  opacity: 0.1;
  transform: none;
}
body.has-pack.journey-txn .hq-lab-schematic [data-hq-pose] { opacity: 0; }
body.has-pack.view-account .hq-lab-stage { opacity: 0.06; }

body.has-pack.journey-discover main { position: relative; z-index: 2; }

body.has-pack:is(.view-catalog, .view-product, .view-content) {
  --hq-panel: rgba(7, 11, 18, 0.9);
  color: #edf4f8;
  background: #05080d;
}
body.has-pack:is(.view-catalog, .view-product, .view-content) main {
  color: #edf4f8;
}
body.has-pack:is(.view-catalog, .view-product, .view-content) :is(.page-head, .catalog-head, .section-head) {
  color: #f7fbff;
}
body.has-pack:is(.view-catalog, .view-product, .view-content) :is(.page-head, .catalog-head) h1 {
  color: #f7fbff !important;
  text-shadow: 0 8px 30px rgba(0, 0, 0, 0.55);
}

body.has-pack.view-catalog :is(.catalog-head, .shop-chips, .catalog-shell, .catalog-band, .product-grid) {
  position: relative;
  z-index: 2;
}
body.has-pack.view-catalog :is(.catalog-head, .shop-chips, .catalog-shell, .catalog-band) {
  border-color: color-mix(in srgb, var(--accent) 30%, rgba(255, 255, 255, 0.12)) !important;
  background: rgba(7, 11, 18, 0.9) !important;
  box-shadow: 0 22px 64px rgba(0, 0, 0, 0.24);
}
body.has-pack.view-catalog .shop-chips,
body.has-pack.view-catalog .catalog-shell {
  padding: clamp(0.75rem, 2vw, 1.25rem);
  border: 1px solid color-mix(in srgb, var(--accent) 28%, var(--line, transparent));
  background: var(--hq-panel);
}
html body.has-pack.view-catalog :is(a.shop-chip, .shop-chip) {
  color: #edf4f8;
  border-color: color-mix(in srgb, var(--accent) 54%, rgba(255, 255, 255, 0.16));
  background: rgba(255, 255, 255, 0.04);
}
html body.has-pack.view-catalog :is(a.shop-chip.on, .shop-chip.on) {
  color: var(--ink-on-accent, #05080d);
  background: var(--accent);
}
body.has-pack.view-catalog .catalog-head .search {
  position: relative;
  z-index: 2;
  max-width: 100%;
}
body.has-pack.view-catalog .product-card {
  position: relative;
  isolation: isolate;
  overflow: clip;
  color: #edf4f8 !important;
  border-color: color-mix(in srgb, var(--accent) 48%, rgba(255, 255, 255, 0.16)) !important;
  background: linear-gradient(160deg, rgba(12, 18, 28, 0.98), rgba(5, 8, 13, 0.96)) !important;
  box-shadow: 0 20px 52px rgba(0, 0, 0, 0.3);
}
body.has-pack.view-catalog .product-card :is(h2, h3, p, .price, .meta, .muted) {
  color: inherit !important;
}
body.has-pack.view-catalog .product-card .thumb {
  border-bottom: 1px solid color-mix(in srgb, var(--accent) 34%, rgba(255, 255, 255, 0.12));
  background:
    radial-gradient(circle at 72% 30%, color-mix(in srgb, var(--accent) 24%, transparent), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.055), transparent 46%),
    #0a1019;
}
body.has-pack.view-catalog .product-card::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset-inline: 0;
  inset-block-end: 0;
  inset-block-start: auto;
  height: 3px;
  background: var(--accent);
  transform: scaleX(0.18);
  transform-origin: left;
  transition: transform 180ms ease;
  pointer-events: none;
}
body.has-pack.view-catalog .product-card:hover::before,
body.has-pack.view-catalog .product-card:focus-within::before {
  transform: scaleX(1);
}

body.has-pack.view-product .product-page { position: relative; isolation: isolate; }
body.has-pack.view-product :is(.gallery, .buy) {
  color: #edf4f8;
  background: var(--hq-panel) !important;
  border: 1px solid color-mix(in srgb, var(--accent) 28%, var(--line, transparent));
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
}
body.has-pack.view-product .buy :is(h1, h2, h3, p, .price, .muted) { color: inherit !important; }
body.has-pack.view-product .gallery { padding: clamp(0.65rem, 2vw, 1.2rem); }
body.has-pack.view-product .buy { padding: clamp(1.1rem, 2.5vw, 2rem); }
body.has-pack.view-product .buy::before {
  content: "";
  display: block;
  width: min(8rem, 38%);
  height: 5px;
  margin: 0 0 1.1rem;
  background: repeating-linear-gradient(90deg, var(--accent) 0 5px, transparent 5px 10px);
}

body.has-pack.view-content :is(.article, .post-grid, .faq-list) {
  position: relative;
  z-index: 2;
  color: #edf4f8;
  background: var(--hq-panel) !important;
  border: 1px solid color-mix(in srgb, var(--accent) 28%, var(--line, transparent));
}
body.has-pack.view-content :is(.article, .post-card, .faq-item) :is(h1, h2, h3, p, li, .muted) {
  color: inherit !important;
}
body.has-pack.view-content .article {
  max-width: 62rem;
  margin-block: clamp(1rem, 4vw, 4rem);
  padding: clamp(1.25rem, 4vw, 3rem);
  border-block-start: 5px solid var(--accent);
}
body.has-pack.view-content .article > .body { max-width: 48rem; }
body.has-pack.view-content .post-card,
body.has-pack.view-content .faq-item {
  --post-pad: 1.1rem;
  padding: var(--post-pad);
  border: 1px solid color-mix(in srgb, var(--accent) 22%, var(--line, transparent));
  border-block-start: 3px solid var(--accent);
}
/* Content views run on the dark lab canvas, so the card cannot fall back to
   the pack surface the way it does on a plain theme. */
body.has-pack.view-content .post-card {
  background: linear-gradient(160deg, rgba(12, 18, 28, 0.98), rgba(5, 8, 13, 0.96));
}
/* Drawn placeholder art, retinted for this canvas: the light pack surface
   would punch a bright hole, and a near-black accent would vanish. */
body.has-pack:is(.view-catalog, .view-product, .view-content) .ph {
  --ph-ink: color-mix(in srgb, var(--accent) 55%, #edf4f8);
  --ph-ink-2: color-mix(in srgb, var(--accent-2, var(--accent)) 45%, #edf4f8);
  --ph-base: linear-gradient(160deg, #0c1220, #05080d);
}
body.has-pack:is(.view-catalog, .view-product, .view-content) .ph::before { opacity: 0.5; }
body.has-pack:is(.view-catalog, .view-product, .view-content) .ph::after {
  opacity: 0.42;
  filter: invert(1) brightness(1.6);
}
body.has-pack.view-content .post-cover {
  border-block-end: 1px solid color-mix(in srgb, var(--accent) 34%, rgba(255, 255, 255, 0.12));
}

body.has-pack.journey-txn :is(.txn-shell, .checkout, .pay-grid, .stack-form, .split) {
  position: relative;
  z-index: 3;
}

body.interact-quiet .hq-lab-schematic,
body.interact-quiet.hq-lab-tracking .hq-lab-schematic {
  transform: translate3d(var(--hq-lab-ox), var(--hq-lab-oy), 0) scale(var(--hq-lab-scale));
}
body.interact-scroll-drift .hq-lab-schematic {
  transform: translate3d(
    var(--hq-lab-ox),
    calc(var(--hq-lab-oy) + var(--hq-lab-scroll) * 18px),
    0
  ) scale(var(--hq-lab-scale));
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  body.has-pack.journey-discover:not(.fx-reduced):not(.hq-lab-offscreen).interact-gauge-idle .hq-lab-schematic .hq-gauge {
    animation: hq-lab-gauge 9s ease-in-out infinite alternate;
  }
  body.has-pack.journey-discover:not(.fx-reduced):not(.hq-lab-offscreen).interact-column-flow .hq-lab-schematic .hq-column-flow {
    stroke-dasharray: 12 20;
    animation: hq-lab-flow 11s linear infinite;
  }
  body.has-pack.journey-discover:not(.fx-reduced):not(.hq-lab-offscreen).interact-pointer-parallax .hq-lab-schematic .hq-trace,
  body.has-pack.journey-discover:not(.fx-reduced):not(.hq-lab-offscreen).interact-scroll-drift .hq-lab-schematic .hq-trace {
    stroke-dasharray: 28 18;
    animation: hq-lab-trace 8s linear infinite;
  }
}

@keyframes hq-lab-trace { to { stroke-dashoffset: -92; } }
@keyframes hq-lab-flow { to { stroke-dashoffset: -128; } }
@keyframes hq-lab-gauge {
  from { transform: rotate(-2deg); transform-origin: 570px 348px; }
  to { transform: rotate(5deg); transform-origin: 570px 348px; }
}

.hq-lab-offscreen .hq-lab-schematic,
.hq-lab-offscreen .hq-lab-schematic * {
  animation: none !important;
}

@media (max-width: 860px) {
  body.has-pack.view-home .block-hero,
  body.has-pack.view-home main > .block:first-of-type {
    min-height: 42rem !important;
    background-position: center, center, 68% center !important;
  }
  body.has-pack.view-home .block-hero .hero-copy {
    width: min(38rem, 76%);
    margin-inline: clamp(1rem, 5vw, 2.5rem) auto;
  }
  .hq-lab-schematic,
  body.has-pack.view-catalog .hq-lab-schematic,
  body.has-pack.view-product .hq-lab-schematic,
  body.has-pack.view-content .hq-lab-schematic {
    inset-inline-end: -38%;
    width: 36rem;
    opacity: 0.38;
  }
  body.has-pack.view-catalog :is(.shop-chips, .catalog-shell) { padding: 0.75rem; }
}

@media (max-width: 390px) {
  body.has-pack {
    --hq-lab-ox: 0px;
    --hq-lab-oy: 0px;
    --hq-lab-scale: 1;
  }
  .hq-lab-schematic,
  body.has-pack.view-home .hq-lab-schematic,
  body.has-pack.view-catalog .hq-lab-schematic,
  body.has-pack.view-product .hq-lab-schematic,
  body.has-pack.view-content .hq-lab-schematic {
    inset-inline-start: auto;
    inset-inline-end: -46%;
    inset-block-end: -2%;
    width: 28rem;
    opacity: 0.52;
  }
  body.has-pack.apparatus-chromatography-station .hq-lab-schematic { inset-inline-end: 1rem; }
  body.has-pack.apparatus-spectroscopy-console .hq-lab-schematic,
  body.has-pack.apparatus-microscopy-stage .hq-lab-schematic,
  body.has-pack.apparatus-analytical-balance .hq-lab-schematic { inset-inline-end: -8rem; }
  body.has-pack.apparatus-synthesis-reactor .hq-lab-schematic { inset-inline-end: -5rem; }
  body.has-pack.apparatus-fume-hood .hq-lab-schematic { inset-inline-end: -6rem; }
  body.has-pack.apparatus-cold-cabinet .hq-lab-schematic { inset-inline-end: -11rem; }
  body.has-pack.apparatus-fluidics-deck .hq-lab-schematic { inset-inline-end: -1rem; }
  body.has-pack.view-home .block-hero .hero-copy {
    width: calc(100% - 2rem);
    margin: 13rem 1rem 1rem;
    padding: 1.15rem !important;
    background: linear-gradient(145deg, rgba(5, 9, 16, 0.9), rgba(5, 9, 16, 0.72)) !important;
    backdrop-filter: blur(8px);
  }
  body.has-pack.view-home .block-hero,
  body.has-pack.view-home main > .block:first-of-type {
    min-height: 45rem !important;
    background-image:
      linear-gradient(180deg, rgba(3, 6, 11, 0.1) 0 26%, rgba(3, 6, 11, 0.32) 48%, rgba(3, 6, 11, 0.96) 100%),
      var(--hq-hero-art) !important;
    background-position: center, 66% top !important;
    background-size: cover !important;
  }
  body.has-pack.view-catalog :is(.search, .shop-chips, .catalog-shell, .catalog-head) {
    width: 100%;
    max-width: 100%;
  }
  body.has-pack.view-catalog .search :is(input, .btn) {
    width: 100%;
    max-width: 100%;
  }
  body.has-pack :is(.stack-form input, .stack-form select, .stack-form textarea, .stack-form .btn) {
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hq-lab-photo { transform: none; }
  .hq-lab-schematic,
  .hq-lab-schematic * { animation: none !important; }
  .hq-lab-schematic { transform: translate3d(var(--hq-lab-ox), var(--hq-lab-oy), 0) scale(var(--hq-lab-scale)); }
}

@media (pointer: coarse) {
  .hq-lab-schematic {
    transform: translate3d(var(--hq-lab-ox), var(--hq-lab-oy), 0) scale(var(--hq-lab-scale));
  }
}

body.rm-static .hq-lab-stage { display: none; }
body.rm-opacity-only .hq-lab-schematic,
body.rm-instant .hq-lab-schematic,
body.fx-reduced .hq-lab-schematic,
body.journey-txn .hq-lab-schematic {
  animation: none;
}

[dir="rtl"] .hq-lab-schematic { transform-origin: 30% 72%; }
[dir="rtl"] body.topo-left-dock .hq-lab-schematic { transform-origin: 70% 72%; }
[dir="rtl"] body.has-pack.view-catalog .product-card::before { transform-origin: right; }
