:root {
  --vm-bg: #07111f;
  --vm-bg-soft: #0d1d2d;
  --vm-surface: rgba(15, 31, 48, 0.86);
  --vm-surface-solid: #102337;
  --vm-text: #f4f7fb;
  --vm-muted: #a9b9c9;
  --vm-line: rgba(179, 211, 231, 0.18);
  --vm-cyan: #36d7ff;
  --vm-magenta: #ff4fc8;
  --vm-violet: #806cff;
  --vm-lime: #d4ff48;
  --vm-accent: #36d7ff;
  --vm-accent-2: #ff4fc8;
  --vm-stock: #d4ff48;
  --vm-stock-out: #ff7c8f;
  --vm-on-accent: #061019;
  --vm-shadow: 0 24px 80px rgba(0, 0, 0, 0.34);
  --vm-glow: 0 0 44px rgba(54, 215, 255, 0.18);
  --vm-radius-s: 10px;
  --vm-radius-m: 20px;
  --vm-radius-l: 34px;
  --vm-max: 1240px;
  --vm-header-h: 78px;
  color-scheme: dark;
}

:root[data-vm-resolved="light"] {
  --vm-bg: #f5f8fb;
  --vm-bg-soft: #e9f0f5;
  --vm-surface: rgba(255, 255, 255, 0.9);
  --vm-surface-solid: #ffffff;
  --vm-text: #0a1a29;
  --vm-muted: #4c6475;
  --vm-line: rgba(14, 45, 63, 0.16);
  --vm-accent: #006f8f;
  --vm-accent-2: #a90075;
  --vm-stock: #277500;
  --vm-stock-out: #b4233b;
  --vm-on-accent: #ffffff;
  --vm-shadow: 0 24px 70px rgba(28, 59, 77, 0.14);
  --vm-glow: 0 0 44px rgba(0, 111, 143, 0.11);
  color-scheme: light;
}

:root[data-vm-resolved="prism"] {
  --vm-bg: #12091f;
  --vm-bg-soft: #1d1031;
  --vm-surface: rgba(36, 18, 57, 0.86);
  --vm-surface-solid: #25153b;
  --vm-text: #fff8ff;
  --vm-muted: #d8c4e5;
  --vm-line: rgba(255, 154, 231, 0.25);
  --vm-accent: #d4ff48;
  --vm-accent-2: #ff4fc8;
  --vm-stock: #d4ff48;
  --vm-stock-out: #ff8cab;
  --vm-on-accent: #101508;
  --vm-shadow: 0 24px 90px rgba(27, 0, 48, 0.52);
  --vm-glow: 0 0 58px rgba(255, 79, 200, 0.24);
  color-scheme: dark;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--vm-bg); }
body.vm-site,
body.editor-styles-wrapper {
  margin: 0;
  overflow-x: clip;
  background:
    radial-gradient(circle at 12% 8%, color-mix(in srgb, var(--vm-accent) 8%, transparent), transparent 27rem),
    radial-gradient(circle at 92% 30%, color-mix(in srgb, var(--vm-accent-2) 7%, transparent), transparent 30rem),
    var(--vm-bg);
  color: var(--vm-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

body.admin-bar .vm-site-header { top: 32px; }
.wp-block-template-part:has(> .vm-announcement),
.wp-block-template-part:has(> .vm-site-footer) { display: contents; }
a { color: var(--vm-accent); text-underline-offset: 0.18em; }
a:hover { color: var(--vm-lime); }
img { max-width: 100%; height: auto; }
::selection { background: var(--vm-accent); color: var(--vm-on-accent); }
:focus-visible { outline: 3px solid var(--vm-lime); outline-offset: 4px; border-radius: 4px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.vm-skip-link { position: fixed; left: 1rem; top: -100px; z-index: 100000; padding: .75rem 1rem; border-radius: 0 0 8px 8px; background: var(--vm-lime); color: #08110d; font-weight: 800; }
.vm-skip-link:focus { top: 0; }

.vm-announcement {
  width: 100vw;
  height: 34px;
  min-height: 34px;
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 0;
  background: linear-gradient(90deg, var(--vm-accent), var(--vm-violet), var(--vm-accent-2), var(--vm-violet), var(--vm-accent));
  background-size: 240% 100%;
  animation: vm-announcement-shift 18s ease-in-out infinite alternate;
  color: #061019;
  font: 800 .7rem/1.2 "SFMono-Regular", Consolas, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-inline: calc(50% - 50vw);
  box-sizing: border-box;
}

.vm-announcement-track {
  width: max-content;
  min-height: 34px;
  display: flex;
  align-items: center;
  animation: vm-announcement-ticker 32s linear infinite;
  will-change: transform;
}
.vm-announcement-group { min-height: 34px; flex: 0 0 auto; display: flex; align-items: center; gap: clamp(2rem, 7vw, 6rem); padding-right: clamp(2rem, 7vw, 6rem); }
.vm-announcement-group span {
  flex: 0 0 auto;
  font-family: "SFMono-Regular", Consolas, monospace !important;
  font-size: .7rem !important;
  font-style: normal !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.vm-announcement:hover .vm-announcement-track,
.vm-announcement:focus-within .vm-announcement-track { animation-play-state: paused; }

@keyframes vm-announcement-shift {
  from { background-position: 0% 50%; }
  to { background-position: 100% 50%; }
}
@keyframes vm-announcement-ticker {
  to { transform: translateX(-50%); }
}

.vm-site-header {
  position: sticky;
  top: 0;
  z-index: 999;
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
  height: var(--vm-header-h);
  box-sizing: border-box;
  border-bottom: 1px solid var(--vm-line);
  background: color-mix(in srgb, var(--vm-bg) 82%, transparent);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  transition: height .22s ease, background-color .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.vm-site-header.is-scrolled { height: 72px; border-bottom-color: color-mix(in srgb, var(--vm-accent) 46%, var(--vm-line)); background: color-mix(in srgb, var(--vm-bg) 76%, transparent); box-shadow: 0 14px 34px rgba(0, 0, 0, .22), 0 1px 18px color-mix(in srgb, var(--vm-accent-2) 14%, transparent); }
.vm-header-inner { width: min(var(--vm-max), calc(100% - 2.5rem)); height: 100%; margin: 0 auto; display: flex; align-items: center; gap: 1.5rem; }
.vm-brand { flex: 0 0 clamp(155px, 19vw, 230px); display: inline-flex; align-items: center; transition: flex-basis .22s ease; }
.vm-site-header.is-scrolled .vm-brand { flex-basis: clamp(145px, 16vw, 195px); }
.vm-brand img { display: block; width: 100%; filter: drop-shadow(0 8px 14px rgba(0,0,0,.24)); }
.vm-primary-nav { display: flex; align-items: center; justify-content: center; gap: clamp(.7rem, 2vw, 1.5rem); margin-left: auto; }
.vm-primary-nav a { position: relative; padding: .55rem .15rem; color: var(--vm-text); font-size: .86rem; font-weight: 750; text-decoration: none; }
.vm-primary-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: .35rem; height: 2px; background: linear-gradient(90deg, var(--vm-accent), var(--vm-accent-2)); transition: right .2s ease; }
.vm-primary-nav a:hover::after { right: 0; }
.vm-nav-item { position: relative; }
.vm-nav-shop-row { display: flex; align-items: center; }
.vm-submenu-toggle { display: none; }
.vm-submenu-caret { display: inline-block; margin-left: .2rem; font-size: .8em; transition: transform .18s ease; }
.vm-submenu {
  position: absolute;
  top: calc(100% + .45rem);
  left: 50%;
  width: max-content;
  min-width: 220px;
  padding: .55rem;
  border: 1px solid var(--vm-line);
  border-radius: 14px;
  background: color-mix(in srgb, var(--vm-bg-soft) 94%, transparent);
  box-shadow: var(--vm-shadow);
  backdrop-filter: blur(20px) saturate(150%);
  -webkit-backdrop-filter: blur(20px) saturate(150%);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, .45rem);
  transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}
.vm-submenu a { display: block; padding: .65rem .8rem; border-radius: 9px; white-space: nowrap; }
.vm-submenu a::after { display: none; }
.vm-submenu a:hover, .vm-submenu a:focus-visible { background: color-mix(in srgb, var(--vm-accent) 12%, transparent); color: var(--vm-accent); }
.vm-nav-item:hover .vm-submenu, .vm-nav-item:focus-within .vm-submenu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.vm-nav-item:hover .vm-submenu-caret, .vm-nav-item:focus-within .vm-submenu-caret { transform: rotate(180deg); }
.vm-header-actions { display: flex; align-items: center; gap: .42rem; margin-left: .35rem; }
.vm-icon-link, .vm-theme-toggle, .vm-nav-toggle { border: 1px solid var(--vm-line); background: var(--vm-surface); color: var(--vm-text); }
.vm-auth-link { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; padding: .4rem .78rem; border: 1px solid var(--vm-line); border-radius: 999px; background: var(--vm-surface); color: var(--vm-text); font-size: .72rem; font-weight: 800; line-height: 1; text-decoration: none; white-space: nowrap; }
.vm-auth-link:hover { border-color: var(--vm-accent); color: var(--vm-accent); }
.vm-icon-link { position: relative; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; font-size: 1.25rem; text-decoration: none; }
.vm-icon-link:hover { border-color: var(--vm-accent); color: var(--vm-accent); }
.vm-tiktok-link svg { filter: drop-shadow(-1px 0 0 var(--vm-cyan)) drop-shadow(1px 0 0 var(--vm-magenta)); }
.vm-cart-icon, .vm-account-icon { overflow: visible; }
.vm-cart-count { position: absolute; right: -5px; top: -6px; display: grid; place-items: center; min-width: 19px; height: 19px; padding: 0 5px; border: 2px solid var(--vm-bg); border-radius: 999px; background: var(--vm-magenta); color: #fff; font: 850 .62rem/1 Inter, sans-serif; }
.vm-theme-toggle { min-height: 38px; display: inline-flex; align-items: center; gap: .45rem; padding: .4rem .72rem; border-radius: 999px; cursor: pointer; font: 800 .7rem/1 Inter, sans-serif; text-transform: uppercase; letter-spacing: .06em; }
.vm-theme-orb { width: 16px; height: 16px; border-radius: 50%; background: linear-gradient(135deg, var(--vm-cyan), var(--vm-violet), var(--vm-magenta), var(--vm-lime)); box-shadow: 0 0 12px color-mix(in srgb, var(--vm-accent) 60%, transparent); }
.vm-nav-toggle { position: relative; display: none; flex: 0 0 auto; width: 42px; height: 42px; padding: 9px; border-radius: 50%; cursor: pointer; }
.vm-nav-toggle > span:not(.screen-reader-text) { width: 19px; height: 2px; display: block; margin: 4px auto; border-radius: 999px; background: currentColor; opacity: 1; transition: transform .2s ease, opacity .2s ease; }
.vm-nav-toggle[aria-expanded="true"] > span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.vm-nav-toggle[aria-expanded="true"] > span:nth-child(2) { opacity: 0; }
.vm-nav-toggle[aria-expanded="true"] > span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
.vm-scroll-top { position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 997; width: 46px; height: 46px; display: grid; place-items: center; padding: 0; border: 1px solid color-mix(in srgb, var(--vm-accent) 42%, var(--vm-line)); border-radius: 50%; background: color-mix(in srgb, var(--vm-bg) 78%, transparent); color: var(--vm-text); box-shadow: 0 14px 34px rgba(0, 0, 0, .3), 0 0 22px color-mix(in srgb, var(--vm-accent) 12%, transparent); backdrop-filter: blur(18px) saturate(145%); -webkit-backdrop-filter: blur(18px) saturate(145%); cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(14px); pointer-events: none; transition: opacity .2s ease, visibility .2s ease, transform .2s ease, border-color .2s ease, color .2s ease; }
.vm-scroll-top:hover { border-color: var(--vm-accent); color: var(--vm-accent); }
.vm-scroll-top.is-visible { opacity: 1; visibility: visible; transform: none; pointer-events: auto; }
.vm-age-locked .vm-scroll-top { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }

.vm-main { min-height: 58vh; margin-block-start: 0 !important; }
.wp-site-blocks > .wp-block-template-part + .vm-main,
.wp-site-blocks > .wp-block-template-part + main.vm-main { margin-block-start: 0 !important; }
.vm-kicker { margin: 0 0 1rem; color: var(--vm-accent); font: 800 .72rem/1.25 "SFMono-Regular", Consolas, monospace; letter-spacing: .15em; text-transform: uppercase; }
.vm-hero { position: relative; isolation: isolate; width: 100vw; max-width: none; min-height: min(760px, calc(100svh - 145px)); display: grid; align-items: start; margin-inline: calc(50% - 50vw); overflow: hidden; border-bottom: 1px solid var(--vm-line); }
.vm-hero::after { content: ""; position: absolute; inset: auto 0 0; height: 35%; z-index: -1; background: linear-gradient(transparent, var(--vm-bg)); }
.vm-hero-media { position: absolute; inset: 0; z-index: -3; background: linear-gradient(90deg, rgba(3,9,17,.97) 0%, rgba(3,9,17,.9) 30%, rgba(3,9,17,.22) 72%), url("../images/hero-science-optimized.jpg") center/cover no-repeat; transform: scale(1.01); }
:root[data-vm-resolved="light"] .vm-hero-media { filter: saturate(.82) brightness(1.2); opacity: .9; }
:root[data-vm-resolved="prism"] .vm-hero-media { filter: saturate(1.35) hue-rotate(18deg); }
.vm-hero-eye-field { position: absolute; inset: 0; z-index: -2; overflow: hidden; pointer-events: none; }
.vm-hero-eye-field::before { content: ""; position: absolute; inset: 0; z-index: 2; background: linear-gradient(90deg, rgba(3,9,17,.94) 0%, rgba(3,9,17,.68) 38%, rgba(3,9,17,.08) 76%); }
.vm-hero-eye-field img { position: absolute; left: 56%; top: 45%; width: clamp(135px, 18vw, 310px); height: auto; opacity: 0; filter: saturate(1.08) drop-shadow(0 0 24px rgba(54,215,255,.38)); will-change: transform, opacity; animation: vm-eye-orbit 26s cubic-bezier(.45,.05,.3,1) infinite; }
.vm-hero-eye-field img:nth-child(1) { --vm-eye-x: -7vw; --vm-eye-y: -29vh; --vm-eye-r: -13deg; animation-delay: -2s; }
.vm-hero-eye-field img:nth-child(2) { --vm-eye-x: 19vw; --vm-eye-y: -16vh; --vm-eye-r: 16deg; animation-delay: -6.3s; animation-duration: 29s; }
.vm-hero-eye-field img:nth-child(3) { --vm-eye-x: 27vw; --vm-eye-y: 12vh; --vm-eye-r: -8deg; animation-delay: -10.6s; animation-duration: 32s; }
.vm-hero-eye-field img:nth-child(4) { --vm-eye-x: 5vw; --vm-eye-y: 25vh; --vm-eye-r: 19deg; animation-delay: -14.9s; animation-duration: 28s; }
.vm-hero-eye-field img:nth-child(5) { --vm-eye-x: -14vw; --vm-eye-y: 13vh; --vm-eye-r: -18deg; animation-delay: -19.2s; animation-duration: 31s; }
.vm-hero-eye-field img:nth-child(6) { --vm-eye-x: 11vw; --vm-eye-y: -2vh; --vm-eye-r: 8deg; animation-delay: -23.5s; animation-duration: 34s; }
@keyframes vm-eye-orbit {
  0%, 100% { opacity: 0; transform: translate3d(calc(var(--vm-eye-x) * -1.15), calc(var(--vm-eye-y) * -.8), 0) scale(.28) rotate(calc(var(--vm-eye-r) * -1)); }
  12% { opacity: .22; }
  35% { opacity: .5; transform: translate3d(var(--vm-eye-x), var(--vm-eye-y), 0) scale(.86) rotate(var(--vm-eye-r)); }
  54% { opacity: .28; transform: translate3d(calc(var(--vm-eye-x) * .42), calc(var(--vm-eye-y) * .42), 0) scale(.55) rotate(0deg); }
  67% { opacity: .58; transform: translate3d(0, 0, 0) scale(.72) rotate(0deg); }
  76% { opacity: .12; transform: translate3d(calc(var(--vm-eye-x) * -.15), calc(var(--vm-eye-y) * -.15), 0) scale(.38) rotate(calc(var(--vm-eye-r) * .2)); }
  88% { opacity: .4; transform: translate3d(calc(var(--vm-eye-x) * -.72), calc(var(--vm-eye-y) * -.62), 0) scale(1.08) rotate(calc(var(--vm-eye-r) * -.65)); }
}
:root[data-vm-resolved="light"] .vm-hero-eye-field { opacity: .72; }
:root[data-vm-resolved="prism"] .vm-hero-eye-field img { filter: saturate(1.45) hue-rotate(12deg) drop-shadow(0 0 30px rgba(255,79,200,.4)); }
.vm-hero-inner { position: relative; z-index: 1; width: min(var(--vm-max), calc(100% - 2.5rem)); margin: 0 auto; padding: clamp(3rem, 6vh, 4.5rem) 0 clamp(3.5rem, 7vh, 5.5rem); }
.vm-hero h1 { max-width: 900px; margin: 0; color: #f7fbff; font-family: "Arial Black", Inter, sans-serif; font-size: clamp(3.2rem, 7vw, 7.2rem); line-height: .88; letter-spacing: -.07em; text-transform: uppercase; }
.vm-hero h1 span { color: transparent; background: linear-gradient(100deg, var(--vm-cyan), var(--vm-violet) 42%, var(--vm-magenta) 75%, var(--vm-lime)); background-clip: text; -webkit-background-clip: text; }
.vm-hero-copy { max-width: 650px; margin: 1.4rem 0 1.5rem; color: #c6d5e2; font-size: clamp(1.05rem, 1.8vw, 1.32rem); line-height: 1.6; }
.vm-button-row { width: 100%; display: flex; flex-wrap: wrap; gap: .8rem; }
.vm-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wp-element-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
	max-width: 100%;
	box-sizing: border-box;
	white-space: normal;
	text-align: center;
  min-height: 48px;
  padding: .78rem 1.3rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-weight: 850;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}
.vm-button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .wp-element-button:hover { transform: translateY(-2px); }
.vm-button-primary, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wp-element-button { background: var(--vm-accent) !important; color: var(--vm-on-accent) !important; box-shadow: 0 9px 30px color-mix(in srgb, var(--vm-accent) 22%, transparent); }
.vm-button-primary:hover { box-shadow: 0 14px 38px color-mix(in srgb, var(--vm-accent) 33%, transparent); }
.vm-button-ghost { border-color: var(--vm-line); background: var(--vm-surface); color: var(--vm-text); backdrop-filter: blur(12px); }
.vm-button-ghost:hover { border-color: var(--vm-accent); color: var(--vm-accent); }
.vm-proof-list { display: flex; flex-wrap: wrap; gap: .7rem 1.8rem; margin: 2.2rem 0 0; padding: 0; color: #b7c8d6; list-style: none; font-size: .82rem; font-weight: 700; }
.vm-proof-list li::before { content: "✦"; margin-right: .5rem; color: var(--vm-lime); }
:root[data-vm-resolved="light"] .vm-proof-list { width: fit-content; max-width: 100%; padding: .7rem .9rem; border: 1px solid rgba(255,255,255,.2); border-radius: 14px; background: rgba(3,13,24,.76); color: #f4f8fb; box-shadow: 0 10px 28px rgba(3,13,24,.14); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
:root[data-vm-resolved="light"] .vm-proof-list li::before { color: #d8ff38; }

.vm-section { width: min(var(--vm-max), calc(100% - 2.5rem)); margin: 0 auto; padding: clamp(4.5rem, 9vw, 8rem) 0; }
.vm-section-tight { padding-bottom: clamp(3rem, 6vw, 5rem); }
.vm-section-heading { max-width: 760px; margin-bottom: clamp(2rem, 5vw, 4rem); }
.vm-section-heading h2, .vm-research-copy h2, .vm-newsletter h2 { margin: 0; font-size: clamp(2.4rem, 5vw, 5.5rem); line-height: .95; letter-spacing: -.055em; }
.vm-section-heading > p:last-child, .vm-research-copy > p:not(.vm-kicker), .vm-newsletter > div > p:last-child { color: var(--vm-muted); font-size: 1.12rem; }
.vm-heading-row { max-width: none; display: flex; align-items: end; justify-content: space-between; gap: 2rem; }
.vm-heading-row > a { white-space: nowrap; font-weight: 800; text-decoration: none; }
.vm-category-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.vm-category-card { position: relative; min-height: 360px; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 2rem; border: 1px solid var(--vm-line); border-radius: var(--vm-radius-l); background: var(--vm-surface); color: var(--vm-text); box-shadow: var(--vm-shadow); text-decoration: none; transition: transform .25s ease, border-color .25s ease; }
.vm-category-card::before { content: ""; position: absolute; inset: 0; z-index: 0; opacity: .48; transition: transform .5s ease, opacity .25s ease; }
.vm-category-card::after { content: ""; position: absolute; inset: 35% 0 0; z-index: 0; background: linear-gradient(transparent, color-mix(in srgb, var(--vm-surface-solid) 94%, transparent)); }
.vm-category-genetics::before { background: radial-gradient(circle at 70% 12%, rgba(54,215,255,.62), transparent 32%), radial-gradient(circle at 20% 40%, rgba(128,108,255,.45), transparent 34%); }
.vm-category-supplies::before { background: radial-gradient(circle at 28% 16%, rgba(212,255,72,.48), transparent 31%), radial-gradient(circle at 76% 38%, rgba(54,215,255,.3), transparent 38%); }
.vm-category-bundles::before { background: radial-gradient(circle at 72% 18%, rgba(255,79,200,.58), transparent 29%), radial-gradient(circle at 20% 42%, rgba(128,108,255,.42), transparent 38%); }
.vm-category-card > * { position: relative; z-index: 1; }
.vm-category-card > span { position: absolute; top: -1rem; right: 1.4rem; color: color-mix(in srgb, var(--vm-text) 12%, transparent); font: 900 7rem/1 "Arial Black", sans-serif; }
.vm-category-card h3 { margin: 0 0 .6rem; font-size: 1.9rem; }
.vm-category-card p { min-height: 3.2rem; margin: 0 0 1rem; color: var(--vm-muted); }
.vm-category-card b { color: var(--vm-accent); }
.vm-category-card:hover { transform: translateY(-7px); border-color: var(--vm-accent); color: var(--vm-text); }
.vm-category-card:hover::before { transform: scale(1.08); opacity: .8; }

.vm-product-feature { padding-top: 3rem; }
.vm-product-feature .woocommerce { width: 100%; }
.woocommerce ul.products, .wc-block-product-template { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.1rem; margin: 0 !important; padding: 0 !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product, .wc-block-product {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  width: auto !important;
  min-height: 100%;
  float: none !important;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid var(--vm-line);
  border-radius: var(--vm-radius-m);
  background: var(--vm-surface);
  box-shadow: 0 14px 45px rgba(0,0,0,.13);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.woocommerce ul.products li.product:hover, .wc-block-product:hover { transform: translateY(-6px); border-color: color-mix(in srgb, var(--vm-accent) 70%, var(--vm-line)); box-shadow: var(--vm-shadow), var(--vm-glow); }
.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
.wc-block-product > a,
.wc-block-product .wc-block-components-product-link {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  width: 100%;
  color: inherit;
  text-align: center;
  text-decoration: none;
}
.woocommerce ul.products li.product a img, .wc-block-components-product-image img { aspect-ratio: 1; object-fit: cover; margin: 0 !important; background: var(--vm-bg-soft); }
.woocommerce ul.products li.product .woocommerce-loop-product__title, .wc-block-components-product-name { width: 100%; margin: 0 !important; padding: 1.15rem 1.1rem .45rem !important; color: var(--vm-text); font-family: Inter, sans-serif; font-size: 1.02rem !important; line-height: 1.3; letter-spacing: -.015em; text-align: center; }
.woocommerce ul.products li.product .price { display: flex !important; flex-wrap: wrap; align-items: center; justify-content: center; gap: .25rem .4rem; width: 100%; margin: 0 0 1.1rem !important; padding: 0 1.1rem; color: var(--vm-accent) !important; font-weight: 850; text-align: center; }
.woocommerce ul.products li.product .price del { color: var(--vm-muted); opacity: .7; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button,
.wc-block-product .wp-block-button,
.wc-block-product .wp-block-button__link { align-self: center; width: calc(100% - 2.2rem); margin: auto 1.1rem 1.15rem !important; text-align: center; }
.woocommerce span.onsale { display: inline-flex; align-items: center; justify-content: center; width: auto !important; min-width: 4.4rem; min-height: auto; right: auto !important; left: 50% !important; top: .75rem !important; margin: 0 !important; padding: .42rem .85rem; transform: translateX(-50%); border-radius: 999px; background: var(--vm-magenta) !important; color: #fff; font: 850 .7rem/1 Inter, sans-serif; text-align: center; text-transform: uppercase; }
.woocommerce ul.products li.product span.onsale,
.woocommerce .wc-block-grid__product span.onsale {
  top: .75rem !important;
  right: .75rem !important;
  left: auto !important;
  min-width: 0;
  padding: .45rem .78rem;
  transform: none;
  border: 1px solid rgba(255, 255, 255, .5);
  box-shadow: 0 8px 20px rgba(20, 4, 20, .28);
  line-height: 1 !important;
  white-space: nowrap;
}
.wc-block-components-product-sale-badge,
.wc-block-grid__product-onsale {
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: .45rem .78rem !important;
  border: 1px solid rgba(255, 255, 255, .5) !important;
  border-radius: 999px !important;
  background: var(--vm-magenta) !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(20, 4, 20, .28);
  font: 850 .7rem/1 Inter, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: uppercase;
  white-space: nowrap;
}
.wc-block-components-product-sale-badge__text { color: inherit !important; font: inherit !important; }
.single-product.woocommerce div.product > span.onsale { z-index: 3; right: auto !important; left: .9rem !important; top: 2.55rem !important; transform: none; box-shadow: 0 8px 24px rgba(0, 0, 0, .28); }
.woocommerce-pagination.vm-pagination-enhanced { display: none !important; }
.vm-infinite-scroll { display: flex; flex-direction: column; align-items: center; gap: .75rem; width: 100%; margin: 2rem auto 0; text-align: center; }
.vm-infinite-scroll__button { min-width: min(100%, 240px); min-height: 50px; padding: .8rem 1.35rem; border: 0; border-radius: 999px; background: var(--vm-accent); color: var(--vm-on-accent); box-shadow: 0 9px 30px color-mix(in srgb, var(--vm-accent) 22%, transparent); font: 850 .9rem/1 Inter, sans-serif; cursor: pointer; }
.vm-infinite-scroll__button:hover { transform: translateY(-2px); }
.vm-infinite-scroll__button:disabled { cursor: progress; opacity: .62; transform: none; }
.vm-infinite-scroll__status { color: var(--vm-muted); font-size: .82rem; }

.vm-research-panel { position: relative; display: grid; grid-template-columns: 1.25fr .75fr; gap: clamp(2rem, 7vw, 7rem); align-items: center; overflow: hidden; margin-top: 3rem; padding: clamp(3rem, 7vw, 6rem); border: 1px solid var(--vm-line); border-radius: var(--vm-radius-l); background: linear-gradient(135deg, color-mix(in srgb, var(--vm-accent) 9%, var(--vm-surface-solid)), color-mix(in srgb, var(--vm-accent-2) 8%, var(--vm-surface-solid))); box-shadow: var(--vm-shadow); }
.vm-research-panel::after { content: ""; position: absolute; width: 420px; height: 420px; right: -220px; bottom: -220px; border: 1px solid var(--vm-accent); border-radius: 50%; box-shadow: 0 0 0 55px color-mix(in srgb, var(--vm-accent) 5%, transparent), 0 0 0 110px color-mix(in srgb, var(--vm-accent-2) 4%, transparent); }
.vm-research-copy, .vm-research-stats { position: relative; z-index: 1; }
.vm-research-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; overflow: hidden; border: 1px solid var(--vm-line); border-radius: var(--vm-radius-m); background: var(--vm-line); }
.vm-research-stats div { min-height: 140px; display: flex; flex-direction: column; justify-content: center; padding: 1.4rem; background: var(--vm-surface-solid); }
.vm-research-stats strong { color: var(--vm-accent); font: 900 2rem/1 "Arial Black", sans-serif; }
.vm-research-stats span { margin-top: .5rem; color: var(--vm-muted); font-size: .8rem; }
.vm-process ol { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.vm-process li { min-height: 225px; display: flex; flex-direction: column; justify-content: space-between; padding: 1.7rem; border-top: 1px solid var(--vm-accent); background: linear-gradient(180deg, color-mix(in srgb, var(--vm-accent) 5%, transparent), transparent); }
.vm-process li > span { color: var(--vm-accent); font: 800 .75rem/1 "SFMono-Regular", Consolas, monospace; }
.vm-process h3 { margin: 0 0 .45rem; font-size: 1.3rem; }
.vm-process p { margin: 0; color: var(--vm-muted); }
.vm-newsletter { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; margin-bottom: clamp(4rem, 8vw, 8rem); padding: clamp(2.5rem, 6vw, 5rem); border: 1px solid var(--vm-line); border-radius: var(--vm-radius-l); background: radial-gradient(circle at 95% 50%, color-mix(in srgb, var(--vm-accent-2) 18%, transparent), transparent 35%), var(--vm-surface); }
.home .vm-main { padding-bottom: clamp(3rem, 6vw, 5rem); }

.vm-page-shell, .vm-shop-shell, .vm-product-shell { width: min(var(--vm-max), calc(100% - 2.5rem)); margin: 0 auto; padding-top: clamp(1.5rem, 3vw, 2.75rem); padding-bottom: clamp(4rem, 9vw, 8rem); }
.vm-page-shell > h1 { max-width: 980px; margin: 0 auto 2rem 0 !important; font-size: clamp(3rem, 7vw, 7rem); line-height: .9; letter-spacing: -.065em; text-align: left; }
.vm-shop-hero h1 { max-width: 820px; margin: 0 auto 1.2rem 0 !important; font-size: clamp(2.8rem, 5vw, 5rem); line-height: .95; letter-spacing: -.055em; text-align: left; }
.vm-page-shell > .wp-block-post-content { max-width: 850px; margin-left: 0 !important; color: var(--vm-text); }
.vm-page-shell > .wp-block-post-content > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { margin-left: 0 !important; margin-right: auto !important; }
.vm-breadcrumbs, .woocommerce-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; margin: 0 0 1.4rem !important; color: var(--vm-muted) !important; font-size: .74rem !important; }
.vm-breadcrumbs a, .woocommerce-breadcrumb a { color: var(--vm-accent) !important; text-decoration: none; }
.vm-breadcrumbs a:hover, .woocommerce-breadcrumb a:hover { color: var(--vm-lime) !important; }
.vm-page-shell h2 { margin-top: 2.8rem; font-size: clamp(1.8rem, 4vw, 3rem); }
.vm-page-shell h3 { margin-top: 2rem; color: var(--vm-accent); font-size: 1.4rem; }
.vm-page-shell p, .vm-page-shell li { color: var(--vm-muted); }
.vm-page-shell strong { color: var(--vm-text); }
.vm-shop-hero { max-width: 900px; padding-bottom: 2.25rem; }
.vm-shop-hero p:last-child { max-width: 680px; color: var(--vm-muted); font-size: 1.15rem; }
.vm-catalog-toolbar { position: static !important; top: auto !important; z-index: 20; display: grid; gap: .8rem; margin: 0 0 1.5rem; padding: .9rem; border: 1px solid var(--vm-line); border-radius: 18px; background: color-mix(in srgb, var(--vm-bg) 84%, transparent); box-shadow: 0 16px 38px rgba(0, 0, 0, .18); backdrop-filter: blur(20px) saturate(145%); -webkit-backdrop-filter: blur(20px) saturate(145%); }
.vm-filter-toggle { display: none; }
.vm-category-chips { display: flex; gap: .5rem; overflow-x: auto; padding-bottom: .12rem; scrollbar-width: thin; }
.vm-category-chips a { flex: 0 0 auto; padding: .43rem .75rem; border: 1px solid var(--vm-line); border-radius: 999px; background: var(--vm-surface); color: var(--vm-muted); font-size: .74rem; font-weight: 800; text-decoration: none; }
.vm-category-chips a:hover, .vm-category-chips a.is-active { border-color: var(--vm-accent); background: color-mix(in srgb, var(--vm-accent) 13%, var(--vm-surface)); color: var(--vm-accent); }
.vm-catalog-filters { display: grid; grid-template-columns: minmax(190px, 1fr) auto auto auto auto auto; align-items: center; gap: .55rem; }
.vm-catalog-filters input[type="search"], .vm-catalog-filters select { width: 100%; min-height: 42px; padding: .55rem .75rem; border: 1px solid var(--vm-line); border-radius: 10px; background: var(--vm-surface-solid); color: var(--vm-text); font: 700 .78rem/1.2 Inter, sans-serif; }
.vm-sale-filter { min-height: 42px; display: inline-flex; align-items: center; gap: .42rem; padding: .45rem .7rem; border: 1px solid var(--vm-line); border-radius: 10px; color: var(--vm-text); font-size: .76rem; font-weight: 800; white-space: nowrap; }
.vm-sale-filter input { accent-color: var(--vm-accent); }
.vm-catalog-filters button { min-height: 42px; padding: .55rem .9rem; border: 1px solid var(--vm-accent); border-radius: 10px; background: var(--vm-accent); color: var(--vm-on-accent); font-weight: 850; cursor: pointer; }
.vm-clear-filters { padding: .45rem; color: var(--vm-muted); font-size: .75rem; font-weight: 750; white-space: nowrap; }
.vm-shop-shell .woocommerce-ordering { display: none; }
.vm-sold-out-badge { position: absolute; z-index: 5; top: .75rem; left: 50%; min-width: 5.5rem; padding: .42rem .85rem; transform: translateX(-50%); border-radius: 999px; background: #596574; color: #fff; font: 850 .7rem/1 Inter, sans-serif; text-align: center; text-transform: uppercase; }
.woocommerce ul.products li.product.outofstock img { filter: saturate(.38) brightness(.8); opacity: .82; }
.woocommerce ul.products li.product.outofstock .button { border-color: var(--vm-line) !important; background: var(--vm-surface-solid) !important; color: var(--vm-muted) !important; box-shadow: none; }
.vm-catalog-empty { margin: 2rem 0; padding: clamp(2rem, 7vw, 5rem); border: 1px solid var(--vm-line); border-radius: var(--vm-radius-l); background: radial-gradient(circle at 85% 15%, color-mix(in srgb, var(--vm-accent-2) 12%, transparent), transparent 24rem), var(--vm-surface); }
.vm-catalog-empty h2 { max-width: 760px; margin: 0; font-size: clamp(2.4rem, 6vw, 5.5rem); line-height: .94; letter-spacing: -.055em; }
.vm-catalog-empty > p:not(.vm-kicker) { color: var(--vm-muted); }
.vm-empty-state { width: min(820px, calc(100% - 2.5rem)); margin: 0 auto; padding: clamp(6rem, 14vw, 12rem) 0; text-align: center; }
.vm-empty-state h1 { margin: 0; font-size: clamp(3rem, 8vw, 7rem); }

/* WooCommerce details and block checkout */
.woocommerce .woocommerce-breadcrumb { color: var(--vm-muted); font-size: .78rem; }
.woocommerce .woocommerce-breadcrumb a { color: var(--vm-accent); }
.woocommerce div.product { display: flow-root; }
.woocommerce div.product div.images .woocommerce-product-gallery__image { overflow: hidden; border-radius: var(--vm-radius-m); }
.woocommerce div.product div.images img { border-radius: var(--vm-radius-m); background: var(--vm-bg-soft); transition: transform .35s ease, filter .35s ease; }
.woocommerce div.product div.images .woocommerce-product-gallery__image:hover img { transform: scale(1.025); filter: saturate(1.04); }
.woocommerce div.product .product_title { font-size: clamp(2.5rem, 4.6vw, 5.15rem); line-height: .92; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--vm-accent); font-size: 1.7rem; font-weight: 900; }
.woocommerce div.product .stock { color: var(--vm-stock); font-weight: 800; transition: color .2s ease; }
.woocommerce div.product .out-of-stock { color: var(--vm-stock-out); }
.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; }
.woocommerce div.product form.cart::before, .woocommerce div.product form.cart::after { display: none; }
.woocommerce div.product form.cart .quantity { display: inline-grid; grid-template-columns: 46px 60px 46px; align-items: stretch; width: auto; margin: 0 !important; overflow: hidden; border: 1px solid var(--vm-line); border-radius: 999px; background: var(--vm-surface-solid); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04); }
.woocommerce div.product form.cart .quantity .qty { width: 60px; min-height: 52px; margin: 0; padding: .45rem .15rem; border: 0; border-right: 1px solid var(--vm-line); border-left: 1px solid var(--vm-line); border-radius: 0; outline: 0; background: transparent; color: var(--vm-text); font: 850 1rem/1 Inter, sans-serif; text-align: center; appearance: textfield; -moz-appearance: textfield; }
.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button, .woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button { margin: 0; appearance: none; -webkit-appearance: none; }
.vm-quantity-step { display: inline-flex; align-items: center; justify-content: center; min-width: 46px; min-height: 52px; padding: 0; border: 0; background: transparent; color: var(--vm-text); font: 700 1.35rem/1 Inter, sans-serif; cursor: pointer; transition: background-color .18s ease, color .18s ease; }
.vm-quantity-step:hover { background: color-mix(in srgb, var(--vm-accent) 14%, transparent); color: var(--vm-accent); }
.vm-quantity-step:focus-visible, .woocommerce div.product form.cart .quantity .qty:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--vm-accent); outline-offset: -2px; }
.vm-quantity-step:disabled { color: var(--vm-muted); cursor: not-allowed; opacity: .5; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: .35rem; padding-left: 0; border-bottom: 1px solid var(--vm-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--vm-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 0 -1px; padding: 0; border: 0; border-bottom: 3px solid transparent; background: transparent; color: var(--vm-muted); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { min-height: 48px; display: inline-flex; align-items: center; padding: .65rem .75rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom-color: var(--vm-accent); background: color-mix(in srgb, var(--vm-accent) 7%, transparent); color: var(--vm-accent); }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-Tabs-panel--description p { margin-top: 0; margin-bottom: 1.45em; }
.woocommerce div.product .woocommerce-Tabs-panel--description p:last-child { margin-bottom: 0; }
.woocommerce div.product .product_meta .tagged_as { display: none; }
.vm-mobile-cart { display: none; }

/* The toast provides cart confirmation, so suppress WooCommerce's injected inline link. */
.woocommerce ul.products li.product .added_to_cart.wc-forward,
.wc-block-product .added_to_cart.wc-forward { display: none !important; }

.vm-cart-toast {
  position: fixed;
  z-index: 10020;
  right: clamp(1rem, 2.5vw, 2rem);
  bottom: clamp(1rem, 2.5vw, 2rem);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: .85rem;
  width: min(430px, calc(100vw - 2rem));
  padding: .9rem 1rem;
  border: 1px solid color-mix(in srgb, var(--vm-accent) 62%, var(--vm-line));
  border-radius: 20px;
  background: color-mix(in srgb, var(--vm-surface-solid) 94%, transparent);
  color: var(--vm-text);
  box-shadow: 0 20px 55px rgba(0, 0, 0, .3), var(--vm-glow);
  opacity: 0;
  visibility: hidden;
  transform: translateY(18px) scale(.97);
  transition: opacity .24s ease, transform .3s cubic-bezier(.2, .8, .2, 1), visibility 0s linear .3s;
  backdrop-filter: blur(18px) saturate(145%);
  -webkit-backdrop-filter: blur(18px) saturate(145%);
  pointer-events: none;
}
.vm-cart-toast.is-visible { opacity: 1; visibility: visible; transform: translateY(0) scale(1); transition-delay: 0s; pointer-events: auto; }
.vm-cart-toast__icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--vm-accent); color: var(--vm-on-accent); }
.vm-cart-toast__copy { display: grid; gap: .2rem; min-width: 0; }
.vm-cart-toast__copy strong { font: 850 .96rem/1.15 Inter, sans-serif; }
.vm-cart-toast__copy span { overflow: hidden; color: var(--vm-muted); font-size: .8rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.vm-cart-toast > a { padding: .62rem .78rem; border: 1px solid var(--vm-line); border-radius: 999px; color: var(--vm-text); font: 800 .78rem/1 Inter, sans-serif; text-align: center; text-decoration: none; white-space: nowrap; }
.vm-cart-toast > a:hover { border-color: var(--vm-accent); color: var(--vm-accent); }
.woocommerce table.shop_table { border-color: var(--vm-line); border-radius: var(--vm-radius-m); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { border-color: var(--vm-line); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.wc-block-components-text-input input, .wc-block-components-combobox .wc-block-components-combobox-control input, .wp-block-search__input {
  min-height: 48px;
  border: 1px solid var(--vm-line) !important;
  border-radius: var(--vm-radius-s) !important;
  background: var(--vm-surface-solid) !important;
  color: var(--vm-text) !important;
}
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-radius: var(--vm-radius-s); background: var(--vm-surface-solid); color: var(--vm-text); }
.woocommerce-message { border-top-color: var(--vm-lime); }
.woocommerce-info { border-top-color: var(--vm-accent); }
.woocommerce-error { border-top-color: #ff6b81; }
.wc-block-components-sidebar-layout, .wc-block-cart, .wc-block-checkout { color: var(--vm-text); }
.vm-checkout-shell > .wp-block-post-content { width: 100%; max-width: none; }
.vm-checkout-shell .wc-block-checkout,
.vm-checkout-shell .wc-block-cart { width: 100% !important; max-width: none !important; margin-right: 0 !important; margin-left: 0 !important; }
.vm-checkout-shell .wc-block-components-order-summary-item__description { display: none; }
.wc-block-components-sidebar, .wc-block-components-totals-wrapper, .wc-block-components-order-summary { border-color: var(--vm-line) !important; }
.wc-block-components-button:not(.is-link) { border-radius: 999px; background: var(--vm-accent); color: var(--vm-on-accent); font-weight: 850; }
.wc-block-components-checkbox .wc-block-components-checkbox__input { accent-color: var(--vm-accent); }
.select2-container--default .select2-selection--single { min-height: 48px; border-color: var(--vm-line); border-radius: var(--vm-radius-s); background: var(--vm-surface-solid); color: var(--vm-text); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: .8rem 1rem; border-bottom: 1px solid var(--vm-line); text-decoration: none; }

.vm-site-footer { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); border-top: 1px solid var(--vm-line); background: color-mix(in srgb, var(--vm-bg-soft) 82%, var(--vm-bg)); }
.vm-confidence-strip { width: min(var(--vm-max), calc(100% - 2.5rem)); display: grid; grid-template-columns: repeat(4, 1fr); margin: 0 auto; border-bottom: 1px solid var(--vm-line); }
.vm-confidence-strip span { display: grid; gap: .18rem; padding: 1.25rem 1.4rem; border-right: 1px solid var(--vm-line); }
.vm-confidence-strip span:last-child { border-right: 0; }
.vm-confidence-strip b { color: var(--vm-text); font-size: .78rem; letter-spacing: .035em; text-transform: uppercase; }
.vm-confidence-strip small { color: var(--vm-muted); font-size: .72rem; }
.vm-footer-grid { width: min(var(--vm-max), calc(100% - 2.5rem)); display: grid; grid-template-columns: 1.65fr repeat(3, 1fr); gap: 3rem; margin: 0 auto; padding: clamp(4rem, 8vw, 7rem) 0; }
.vm-footer-grid h2 { margin: 0 0 1rem; color: var(--vm-text); font: 850 .75rem/1 Inter, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.vm-footer-grid > div:not(.vm-footer-brand) { display: flex; flex-direction: column; align-items: flex-start; }
.vm-footer-grid a { margin: .32rem 0; color: var(--vm-muted); font-size: .9rem; text-decoration: none; }
.vm-footer-grid a:hover { color: var(--vm-accent); }
.vm-footer-brand { display: flex; gap: 1rem; align-items: flex-start; }
.vm-footer-brand img { width: 72px; aspect-ratio: 1; object-fit: contain; }
.vm-footer-brand strong { font-size: 1.12rem; }
.vm-footer-brand p, .vm-footer-notice { margin: .45rem 0 0; color: var(--vm-muted); font-size: .82rem; }
.vm-footer-bottom { width: min(var(--vm-max), calc(100% - 2.5rem)); display: flex; justify-content: space-between; gap: 2rem; margin: 0 auto; padding: 1.2rem 0 1.6rem; border-top: 1px solid var(--vm-line); color: var(--vm-muted); font-size: .76rem; }
.vm-footer-bottom a { color: var(--vm-accent); text-decoration: none; }

.vm-search-open { overflow: hidden !important; }
.vm-search-overlay { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: start center; padding: max(5rem, 10vh) 1rem 1rem; }
.vm-search-overlay[hidden] { display: none !important; }
.vm-search-backdrop { position: absolute; inset: 0; background: color-mix(in srgb, var(--vm-bg) 72%, transparent); backdrop-filter: blur(24px) saturate(135%); -webkit-backdrop-filter: blur(24px) saturate(135%); }
.vm-search-dialog { position: relative; width: min(760px, 100%); max-height: calc(100svh - max(6rem, 12vh)); overflow: auto; padding: clamp(1.4rem, 4vw, 2.5rem); border: 1px solid color-mix(in srgb, var(--vm-accent) 35%, var(--vm-line)); border-radius: 26px; background: var(--vm-surface-solid); box-shadow: var(--vm-shadow), var(--vm-glow); }
.vm-search-dialog h2 { margin: 0 0 1.3rem; font-size: clamp(2.3rem, 6vw, 4.8rem); line-height: .92; letter-spacing: -.06em; }
.vm-search-close { position: absolute; top: 1rem; right: 1rem; width: 40px; height: 40px; border: 1px solid var(--vm-line); border-radius: 50%; background: var(--vm-surface); color: var(--vm-text); font-size: 1.4rem; cursor: pointer; }
.vm-search-dialog form { display: grid; grid-template-columns: 1fr auto; gap: .55rem; }
.vm-search-dialog input[type="search"] { width: 100%; min-height: 52px; padding: .7rem 1rem; border: 1px solid var(--vm-line); border-radius: 13px; background: var(--vm-bg); color: var(--vm-text); font: 700 1rem/1.2 Inter, sans-serif; }
.vm-search-dialog form button { min-height: 52px; padding: .7rem 1.2rem; border: 0; border-radius: 13px; background: var(--vm-accent); color: var(--vm-on-accent); font-weight: 850; cursor: pointer; }
.vm-search-shortcuts { display: flex; flex-wrap: wrap; gap: .45rem; margin: .85rem 0 1rem; }
.vm-search-shortcuts a { padding: .4rem .65rem; border: 1px solid var(--vm-line); border-radius: 999px; color: var(--vm-muted); font-size: .72rem; font-weight: 800; text-decoration: none; }
.vm-search-results { display: grid; gap: .45rem; min-height: 80px; border-top: 1px solid var(--vm-line); padding-top: .8rem; }
.vm-search-results > p { color: var(--vm-muted); }
.vm-search-result { display: flex; align-items: center; gap: .8rem; padding: .55rem; border-radius: 12px; color: var(--vm-text); text-decoration: none; }
.vm-search-result:hover { background: color-mix(in srgb, var(--vm-accent) 10%, transparent); }
.vm-search-result img { width: 58px; height: 58px; flex: 0 0 auto; border-radius: 9px; background: var(--vm-bg-soft); object-fit: cover; }
.vm-search-result span { display: grid; }
.vm-search-result small { color: var(--vm-muted); }

.vm-reveal, .woocommerce ul.products li.product { opacity: 0; transform: translateY(20px); }
.vm-reveal.is-visible, .woocommerce ul.products li.product.is-visible { opacity: 1; transform: none; transition: opacity .6s ease, transform .6s ease; }
.editor-styles-wrapper .vm-reveal, .editor-styles-wrapper .woocommerce ul.products li.product { opacity: 1; transform: none; }

@media (max-width: 1020px) {
  .vm-nav-toggle { display: block; order: 2; margin-left: auto; }
  .vm-header-actions { order: 3; }
  .vm-primary-nav { position: absolute; left: .7rem; right: .7rem; top: calc(100% + .45rem); max-height: min(72vh, 560px); display: none; flex-direction: column; align-items: stretch; gap: .1rem; overflow-y: auto; padding: .7rem; border: 1px solid var(--vm-line); border-radius: 18px; background: color-mix(in srgb, var(--vm-bg) 94%, transparent); box-shadow: var(--vm-shadow); backdrop-filter: blur(22px) saturate(145%); -webkit-backdrop-filter: blur(22px) saturate(145%); }
  .vm-primary-nav[data-open="true"] { display: flex; }
  .vm-primary-nav > a, .vm-nav-shop-row > a { padding: .65rem .75rem; border-radius: 10px; }
  .vm-nav-shop-row > a { flex: 1 1 auto; }
  .vm-submenu-toggle { width: 40px; height: 40px; display: grid; place-items: center; padding: 0; border: 1px solid var(--vm-line); border-radius: 50%; background: var(--vm-surface); color: var(--vm-text); font-size: 1.15rem; cursor: pointer; }
  .vm-submenu, .vm-nav-item:hover .vm-submenu, .vm-nav-item:focus-within .vm-submenu { position: static; left: auto; width: 100%; min-width: 0; display: none; margin: .15rem 0 .35rem; padding: .35rem; border: 1px solid var(--vm-line); border-radius: 12px; background: color-mix(in srgb, var(--vm-surface-solid) 84%, transparent); box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; opacity: 1; visibility: visible; transform: none; transition: none; }
  .vm-submenu[data-open="true"], .vm-nav-item:hover .vm-submenu[data-open="true"], .vm-nav-item:focus-within .vm-submenu[data-open="true"] { display: grid; grid-template-columns: 1fr; }
  .vm-submenu a { width: 100%; box-sizing: border-box; padding: .58rem .7rem; color: var(--vm-muted); font-size: .78rem; white-space: normal; }
  .vm-submenu-caret { display: none; }
  .vm-catalog-filters { grid-template-columns: minmax(180px, 1fr) repeat(3, auto); }
  .vm-filter-search { grid-column: 1 / -1; }
  .vm-confidence-strip { grid-template-columns: 1fr 1fr; }
  .vm-confidence-strip span:nth-child(2) { border-right: 0; }
  .vm-confidence-strip span:nth-child(-n+2) { border-bottom: 1px solid var(--vm-line); }
  .vm-category-grid, .vm-process ol { grid-template-columns: 1fr 1fr; }
  .vm-category-card:last-child, .vm-process li:last-child { grid-column: 1 / -1; }
  .woocommerce ul.products, .wc-block-product-template { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .vm-footer-grid { grid-template-columns: 1.5fr 1fr 1fr; }
  .vm-footer-grid > div:last-child { grid-column: 2 / -1; }
}

@media (max-width: 780px) {
  .vm-cart-toast { right: .75rem; bottom: .75rem; width: calc(100vw - 1.5rem); grid-template-columns: auto minmax(0, 1fr); border-radius: 18px; }
  .vm-cart-toast > a { grid-column: 1 / -1; width: 100%; }
  body.admin-bar .vm-site-header { top: 46px; }
  .vm-announcement { white-space: nowrap; }
  .vm-announcement-track { animation-duration: 25s; }
  .vm-header-inner { width: min(100% - .8rem, var(--vm-max)); gap: .28rem; }
  .vm-brand { flex-basis: clamp(108px, 32vw, 132px); }
  .vm-nav-toggle { width: 44px; height: 44px; min-height: 44px; padding: 9px; }
  .vm-header-actions { gap: .24rem; margin-left: 0; }
  .vm-icon-link { width: 44px; height: 44px; min-height: 44px; }
  .vm-site-header.is-scrolled { height: 66px; }
  .vm-site-header.is-scrolled .vm-brand { flex-basis: 132px; }
  .vm-account-link { display: none; }
  .vm-search-link { display: grid; }
  .vm-auth-link { min-height: 44px; padding-inline: .55rem; font-size: .66rem; }
  .vm-tiktok-link, .vm-cart-link { display: grid; }
  .vm-theme-toggle { width: 44px; min-height: 44px; padding: .35rem; justify-content: center; }
  .vm-theme-toggle [data-vm-theme-label] { display: none; }
  .vm-scroll-top { right: .85rem; bottom: .85rem; width: 44px; height: 44px; }
  .vm-hero { min-height: auto; align-items: start; margin-top: 0 !important; }
  .vm-hero-inner { padding: 3.25rem 0 4rem; }
  .vm-hero-media { background-position: 64% center; }
  .vm-hero-eye-field img { left: 55%; top: 43%; width: clamp(110px, 34vw, 210px); }
  .vm-hero-eye-field img:nth-child(n+5) { display: none; }
  .vm-hero h1 { max-width: 100%; font-size: clamp(2.35rem, 10.6vw, 4.25rem); line-height: .92; }
  .vm-hero h1 span { display: block; font-size: .9em; letter-spacing: -.08em; }
  .vm-hero-copy { margin: 1.25rem 0 1.4rem; font-size: 1rem; }
  .vm-proof-list { display: grid; gap: .4rem; }
  .vm-category-grid, .vm-process ol, .vm-research-panel, .vm-newsletter { grid-template-columns: 1fr; }
  .vm-category-card:last-child, .vm-process li:last-child { grid-column: auto; }
  .woocommerce ul.products, .wc-block-product-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vm-research-panel { padding: 2rem 1.4rem; }
  .vm-heading-row { align-items: flex-start; flex-direction: column; }
  .vm-footer-grid { grid-template-columns: 1fr 1fr; gap: 2.5rem 1.3rem; }
  .vm-footer-brand { grid-column: 1 / -1; }
  .vm-footer-grid > div:last-child { grid-column: auto; }
  .vm-footer-bottom { flex-direction: column; gap: .5rem; }
  .vm-catalog-toolbar { gap: .55rem; padding: .6rem; border-radius: 14px; box-shadow: 0 8px 24px rgba(0,0,0,.14); backdrop-filter: none; -webkit-backdrop-filter: none; }
  .vm-category-chips { order: 2; padding: 0 1.7rem .1rem 0; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 2rem), transparent 100%); mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 2rem), transparent 100%); }
  .vm-category-chips::-webkit-scrollbar { display: none; }
  .vm-category-chips a { min-height: 40px; display: inline-flex; align-items: center; padding: .38rem .7rem; font-size: .68rem; }
  .vm-filter-toggle { width: 100%; min-height: 46px; display: flex; align-items: center; justify-content: space-between; padding: .65rem .85rem; border: 1px solid var(--vm-line); border-radius: 12px; background: var(--vm-surface-solid); color: var(--vm-text); font-weight: 850; }
  .vm-filter-toggle { order: 1; }
  body .vm-catalog-filters { order: 3; display: none !important; grid-template-columns: 1fr 1fr; padding-top: .15rem; }
  body .vm-catalog-filters[data-open="true"] { display: grid !important; }
  .vm-filter-search { grid-column: 1 / -1; }
  .vm-search-dialog form { grid-template-columns: 1fr; }
  .woocommerce div.product div.images, .woocommerce div.product div.summary { width: 100%; float: none; }
  .single-product.woocommerce div.product > span.onsale { top: 2.35rem !important; }
  .woocommerce div.product .product_title { font-size: clamp(2.4rem, 12vw, 4.6rem); }
  .woocommerce div.product .summary #payment-method-message { display: none !important; height: 0 !important; margin: 0 !important; }
  .woocommerce div.product .summary p.price { margin-bottom: .75rem !important; }
  .woocommerce div.product .summary p.stock { margin-top: 0 !important; }
}

@media (max-width: 480px) {
  .vm-section, .vm-hero-inner, .vm-page-shell, .vm-shop-shell, .vm-product-shell, .vm-footer-grid, .vm-footer-bottom { width: min(100% - 1.4rem, var(--vm-max)); }
  .vm-button-row .vm-button { width: 100%; }
  .woocommerce ul.products, .wc-block-product-template { gap: .65rem; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: .9rem !important; padding: .85rem .8rem .4rem !important; }
  .woocommerce ul.products li.product .price { margin-bottom: .8rem !important; padding: 0 .8rem; font-size: .88rem !important; }
  .woocommerce ul.products li.product .button { width: calc(100% - 1.6rem); min-height: 42px; margin: auto .8rem .85rem !important; padding: .55rem !important; font-size: .78rem !important; }
  .vm-footer-grid { grid-template-columns: 1fr; }
  .vm-footer-brand, .vm-footer-grid > div:last-child { grid-column: auto; }
  .vm-confidence-strip { width: min(100% - 1.4rem, var(--vm-max)); grid-template-columns: 1fr; }
  .vm-confidence-strip span { border-right: 0; border-bottom: 1px solid var(--vm-line); }
  .vm-confidence-strip span:last-child { border-bottom: 0; }
  .vm-tiktok-link { display: none; }
  .vm-brand { flex-basis: clamp(102px, 30vw, 118px); }
  .vm-nav-toggle, .vm-icon-link, .vm-theme-toggle { width: 44px; height: 44px; min-height: 44px; }
  .vm-auth-link { min-height: 44px; padding-inline: .45rem; font-size: .62rem; }
  .vm-catalog-filters { grid-template-columns: 1fr; }
  .vm-filter-search { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .vm-announcement { animation: none; background-position: 50% 50%; }
  .vm-announcement-track { width: 100%; justify-content: center; transform: none; animation: none; }
  .vm-announcement-group { justify-content: center; padding: 0 1rem; }
  .vm-announcement-group[aria-hidden="true"] { display: none; }
  .vm-announcement-group span:not(:first-child) { display: none; }
  .vm-hero-eye-field img { animation: none !important; }
  .vm-hero-eye-field img:first-child { opacity: .28; transform: translate3d(12vw, -5vh, 0) scale(.9); }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .vm-reveal, .woocommerce ul.products li.product { opacity: 1; transform: none; }
}

@media print {
  .vm-site-header, .vm-announcement, .vm-site-footer, .vm-age-gate { display: none !important; }
  body { background: #fff !important; color: #000 !important; }
}
