/* Final category hero alignment: storage and MT follow the chargers cover system. */
body .pv-cover-hero,
body [data-theme="light"] .pv-cover-hero,
body [data-theme="dark"] .pv-cover-hero {
  --category-cover-accent: #a78bfa;
  --category-cover-ink: #fff;
  --category-cover-muted: rgba(255, 255, 255, .78);
  --category-cover-soft: rgba(255, 255, 255, .58);
  position: relative !important;
  min-height: 100svh !important;
  height: 100svh !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #050508 !important;
  color: var(--category-cover-ink) !important;
}

body .pv-cover-hero-photo,
body [data-theme="light"] .pv-cover-hero-photo,
body [data-theme="dark"] .pv-cover-hero-photo {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  display: block !important;
  object-fit: cover !important;
  border: 0 !important;
  border-radius: 0 !important;
  transform: none !important;
  filter: none !important;
  pointer-events: none !important;
}

body .is-storage-cover .pv-cover-hero-photo {
  object-position: 54% center !important;
}

body .is-mt-cover .pv-cover-hero-photo {
  object-position: 60% center !important;
}

body .pv-cover-hero-shade,
body [data-theme="light"] .pv-cover-hero-shade,
body [data-theme="dark"] .pv-cover-hero-shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(5, 5, 8, .94) 0%, rgba(5, 5, 8, .78) 26%, rgba(5, 5, 8, .34) 55%, rgba(5, 5, 8, .08) 82%),
    linear-gradient(180deg, rgba(5, 5, 8, .40) 0%, rgba(5, 5, 8, .08) 42%, rgba(5, 5, 8, .66) 100%) !important;
}

body .pv-cover-hero-inner,
body [data-theme="light"] .pv-cover-hero-inner,
body [data-theme="dark"] .pv-cover-hero-inner {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  width: min(100% - 96px, 1320px) !important;
  height: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

body .pv-cover-hero-copy,
body [data-theme="light"] .pv-cover-hero-copy,
body [data-theme="dark"] .pv-cover-hero-copy {
  width: min(620px, 44vw) !important;
  max-width: 620px !important;
  margin: clamp(38px, 5vh, 72px) 0 0 !important;
  color: var(--category-cover-ink) !important;
  -webkit-text-fill-color: initial !important;
  text-shadow: 0 18px 54px rgba(0, 0, 0, .78) !important;
}

body .pv-cover-hero-eyebrow,
body [data-theme="light"] .pv-cover-hero-eyebrow,
body [data-theme="dark"] .pv-cover-hero-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--category-cover-accent) !important;
  -webkit-text-fill-color: var(--category-cover-accent) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}

body .pv-cover-hero-eyebrow::before {
  content: "" !important;
  width: 52px !important;
  height: 2px !important;
  flex: 0 0 52px !important;
  display: block !important;
  border-radius: 999px !important;
  background: var(--category-cover-accent) !important;
  box-shadow: 0 0 22px rgba(167, 139, 250, .45) !important;
}

body .pv-cover-hero-title,
body [data-theme="light"] .pv-cover-hero-title,
body [data-theme="dark"] .pv-cover-hero-title {
  display: grid !important;
  gap: 0 !important;
  margin: 0 !important;
  max-width: 680px !important;
  color: var(--category-cover-ink) !important;
  -webkit-text-fill-color: var(--category-cover-ink) !important;
  font-family: var(--font-display, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif) !important;
  font-size: clamp(80px, 8.7vw, 148px) !important;
  line-height: .82 !important;
  font-weight: 840 !important;
  letter-spacing: -.055em !important;
  text-transform: uppercase !important;
}

body .pv-cover-hero-title span,
body [data-theme="light"] .pv-cover-hero-title span,
body [data-theme="dark"] .pv-cover-hero-title span {
  color: var(--category-cover-ink) !important;
  -webkit-text-fill-color: var(--category-cover-ink) !important;
  font-size: .42em !important;
  line-height: .95 !important;
  font-weight: 720 !important;
  letter-spacing: -.045em !important;
}

body .pv-cover-hero-title strong,
body [data-theme="light"] .pv-cover-hero-title strong,
body [data-theme="dark"] .pv-cover-hero-title strong {
  color: var(--category-cover-accent) !important;
  -webkit-text-fill-color: var(--category-cover-accent) !important;
  font: inherit !important;
  text-shadow: 0 0 34px rgba(167, 139, 250, .24), 0 18px 62px rgba(0, 0, 0, .82) !important;
}

body .is-mt-cover .pv-cover-hero-title,
body [data-theme="light"] .is-mt-cover .pv-cover-hero-title,
body [data-theme="dark"] .is-mt-cover .pv-cover-hero-title {
  font-size: clamp(72px, 7.2vw, 124px) !important;
}

body .pv-cover-hero-copy p,
body [data-theme="light"] .pv-cover-hero-copy p,
body [data-theme="dark"] .pv-cover-hero-copy p {
  max-width: 560px !important;
  margin: clamp(22px, 3vh, 32px) 0 0 !important;
  color: var(--category-cover-muted) !important;
  -webkit-text-fill-color: var(--category-cover-muted) !important;
  font-size: clamp(16px, 1.08vw, 19px) !important;
  line-height: 1.58 !important;
}

body .pv-cover-hero-specs,
body [data-theme="light"] .pv-cover-hero-specs,
body [data-theme="dark"] .pv-cover-hero-specs {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: min(620px, 100%) !important;
  margin: clamp(28px, 4vh, 42px) 0 0 !important;
  padding: 18px 0 0 !important;
  border-top: 1px solid rgba(255, 255, 255, .25) !important;
}

body .pv-cover-hero-specs strong,
body [data-theme="light"] .pv-cover-hero-specs strong,
body [data-theme="dark"] .pv-cover-hero-specs strong {
  display: block !important;
  color: var(--category-cover-ink) !important;
  -webkit-text-fill-color: var(--category-cover-ink) !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

body .pv-cover-hero-specs span,
body [data-theme="light"] .pv-cover-hero-specs span,
body [data-theme="dark"] .pv-cover-hero-specs span {
  display: block !important;
  margin-top: 6px !important;
  color: var(--category-cover-soft) !important;
  -webkit-text-fill-color: var(--category-cover-soft) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

@media (max-width: 860px) {
  body .pv-cover-hero,
  body [data-theme="light"] .pv-cover-hero,
  body [data-theme="dark"] .pv-cover-hero {
    min-height: 100svh !important;
    height: auto !important;
  }

  body .is-storage-cover .pv-cover-hero-photo {
    object-position: 58% center !important;
  }

  body .is-mt-cover .pv-cover-hero-photo {
    object-position: 70% center !important;
  }

  body .pv-cover-hero-shade {
    background:
      linear-gradient(180deg, rgba(5, 5, 8, .18) 0%, rgba(5, 5, 8, .24) 35%, rgba(5, 5, 8, .90) 70%, rgba(5, 5, 8, .98) 100%),
      linear-gradient(90deg, rgba(5, 5, 8, .44) 0%, rgba(5, 5, 8, .08) 100%) !important;
  }

  body .pv-cover-hero-inner,
  body [data-theme="light"] .pv-cover-hero-inner,
  body [data-theme="dark"] .pv-cover-hero-inner {
    position: relative !important;
    inset: auto !important;
    width: min(100% - 40px, 1320px) !important;
    min-height: 100svh !important;
    height: auto !important;
    padding: 108px 0 64px !important;
    align-items: flex-end !important;
  }

  body .pv-cover-hero-copy,
  body [data-theme="light"] .pv-cover-hero-copy,
  body [data-theme="dark"] .pv-cover-hero-copy {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  body .pv-cover-hero-title,
  body .is-mt-cover .pv-cover-hero-title {
    font-size: clamp(58px, 17vw, 96px) !important;
  }

  body .pv-cover-hero-specs {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}

/* Home capability cards: align text rows across the four tiles. */
body .pv-cap4-grid {
  align-items: stretch !important;
}

body .pv-cap4-card {
  display: grid !important;
  grid-template-rows: 22px 92px 32px minmax(92px, 1fr) auto !important;
  row-gap: 0 !important;
  min-height: 410px !important;
  padding: clamp(34px, 3vw, 44px) clamp(30px, 2.8vw, 42px) !important;
}

body .pv-cap4-eyebrow {
  align-self: start !important;
  margin: 0 !important;
  min-width: 0 !important;
}

body .pv-cap4-value,
body .pv-cap4-infinity {
  align-self: center !important;
  width: 100% !important;
  height: 92px !important;
  min-height: 92px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

body .pv-cap4-value {
  gap: 6px !important;
}

body .pv-cap4-value b {
  font-size: clamp(58px, 5.2vw, 76px) !important;
  line-height: .92 !important;
}

body .pv-cap4-value small {
  font-size: clamp(24px, 2.1vw, 32px) !important;
  line-height: 1 !important;
}

body .pv-cap4-value.is-text b {
  font-size: clamp(56px, 5vw, 76px) !important;
}

body .pv-infinity-glyph {
  font-size: clamp(82px, 7vw, 112px) !important;
  line-height: .82 !important;
  transform: translateY(-2px) scaleX(1.04) !important;
}

body .pv-cap4-sub {
  align-self: start !important;
  margin: 0 !important;
  min-height: 32px !important;
  display: flex !important;
  align-items: flex-start !important;
}

body .pv-cap4-note {
  align-self: start !important;
  margin: 0 !important;
  max-width: 29ch !important;
}

body .pv-cap4-tags {
  align-self: end !important;
  margin: 0 !important;
  padding-top: 16px !important;
}

@media (max-width: 980px) {
  body .pv-cap4-card {
    min-height: 360px !important;
    grid-template-rows: 22px 82px 30px minmax(74px, 1fr) auto !important;
  }

  body .pv-cap4-value,
  body .pv-cap4-infinity {
    height: 82px !important;
    min-height: 82px !important;
  }
}

/* Home hero: restore the subtle floating motes that were already in the markup. */
body .pv-hero-suite-section {
  position: relative !important;
  isolation: isolate !important;
}

body .pv-hero-suite-section .pv-index-stars,
body .pv-hero-suite-section .pv-index-particles {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  z-index: 4 !important;
  mix-blend-mode: screen !important;
}

body .pv-hero-suite-section .pv-index-stars i,
body .pv-hero-suite-section .pv-index-particles i {
  position: absolute !important;
  display: block !important;
  border-radius: 999px !important;
  pointer-events: none !important;
}

body .pv-hero-suite-section .pv-index-stars i {
  left: var(--x) !important;
  top: var(--y) !important;
  animation: pv-star 4.8s ease-in-out var(--d) infinite !important;
}

body .pv-hero-suite-section .pv-index-particles i {
  left: var(--px) !important;
  top: var(--py) !important;
}

body .pv-hero-suite-section .pv-index-stars {
  opacity: .54 !important;
}

body .pv-hero-suite-section .pv-index-stars i {
  width: 2px !important;
  height: 2px !important;
  background: rgba(255, 255, 255, .82) !important;
  box-shadow: 0 0 12px rgba(255, 255, 255, .48), 0 0 26px rgba(167, 139, 250, .22) !important;
}

body .pv-hero-suite-section .pv-index-particles {
  opacity: .72 !important;
  -webkit-mask-image: radial-gradient(ellipse 80% 74% at 50% 46%, #000 0%, #000 54%, transparent 100%) !important;
  mask-image: radial-gradient(ellipse 80% 74% at 50% 46%, #000 0%, #000 54%, transparent 100%) !important;
}

body .pv-hero-suite-section .pv-index-particles i {
  width: max(2px, var(--ps)) !important;
  height: max(2px, var(--ps)) !important;
  opacity: .22 !important;
  background: rgba(255, 255, 255, .88) !important;
  box-shadow:
    0 0 10px rgba(255, 255, 255, .46),
    0 0 24px rgba(167, 139, 250, .22) !important;
  filter: blur(var(--blur)) !important;
  animation: pv-particle-drift-soft var(--pt) ease-in-out var(--pd) infinite !important;
}

body .pv-hero-suite-section .pv-index-particles i:nth-child(3n) {
  opacity: .14 !important;
}

body .pv-hero-suite-section .pv-index-particles i:nth-child(4n) {
  background: rgba(196, 181, 253, .84) !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-stars,
html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles,
body[data-theme="light"] .pv-hero-suite-section .pv-index-stars,
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles {
  mix-blend-mode: normal !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-stars,
body[data-theme="light"] .pv-hero-suite-section .pv-index-stars {
  opacity: .78 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-stars i,
body[data-theme="light"] .pv-hero-suite-section .pv-index-stars i {
  background: rgba(74, 55, 132, .70) !important;
  box-shadow:
    0 0 8px rgba(74, 55, 132, .28),
    0 0 18px rgba(139, 92, 246, .20) !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles,
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles {
  opacity: .84 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles i,
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles i {
  opacity: .34 !important;
  background: rgba(85, 61, 154, .72) !important;
  box-shadow:
    0 0 8px rgba(85, 61, 154, .22),
    0 0 18px rgba(139, 92, 246, .18) !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles i:nth-child(3n),
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles i:nth-child(3n) {
  opacity: .22 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles i:nth-child(4n),
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles i:nth-child(4n) {
  background: rgba(124, 92, 214, .66) !important;
}

body .pv-hero-suite-section .pv-index-copy,
body .pv-hero-suite-section .pv-hero-suite {
  position: relative !important;
  z-index: 6 !important;
}

@media (prefers-reduced-motion: reduce) {
  body .pv-hero-suite-section .pv-index-stars i,
  body .pv-hero-suite-section .pv-index-particles i {
    animation: none !important;
  }
}

/* r20: make home hero dust motes more visible without turning them into snow. */
body .pv-hero-suite-section .pv-index-stars {
  opacity: .68 !important;
}

body .pv-hero-suite-section .pv-index-stars i {
  width: 2.5px !important;
  height: 2.5px !important;
  opacity: .72 !important;
  box-shadow:
    0 0 14px rgba(255, 255, 255, .62),
    0 0 30px rgba(167, 139, 250, .30) !important;
}

body .pv-hero-suite-section .pv-index-particles {
  opacity: .92 !important;
}

body .pv-hero-suite-section .pv-index-particles i {
  width: max(3px, calc(var(--ps) * 1.25)) !important;
  height: max(3px, calc(var(--ps) * 1.25)) !important;
  opacity: .36 !important;
  box-shadow:
    0 0 13px rgba(255, 255, 255, .58),
    0 0 28px rgba(167, 139, 250, .28) !important;
}

body .pv-hero-suite-section .pv-index-particles i:nth-child(3n) {
  opacity: .24 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-stars,
body[data-theme="light"] .pv-hero-suite-section .pv-index-stars {
  opacity: .90 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-stars i,
body[data-theme="light"] .pv-hero-suite-section .pv-index-stars i {
  background: rgba(64, 45, 126, .84) !important;
  box-shadow:
    0 0 10px rgba(64, 45, 126, .34),
    0 0 22px rgba(139, 92, 246, .24) !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles,
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles {
  opacity: .96 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles i,
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles i {
  opacity: .48 !important;
  background: rgba(78, 55, 145, .82) !important;
  box-shadow:
    0 0 10px rgba(78, 55, 145, .28),
    0 0 22px rgba(139, 92, 246, .22) !important;
}

/* r21: make the home hero dust field more present while keeping it premium. */
body .pv-hero-suite-section .pv-index-stars {
  opacity: .76 !important;
}

body .pv-hero-suite-section .pv-index-stars i {
  width: 3px !important;
  height: 3px !important;
  opacity: .82 !important;
  box-shadow:
    0 0 16px rgba(255, 255, 255, .72),
    0 0 34px rgba(167, 139, 250, .36) !important;
}

body .pv-hero-suite-section .pv-index-particles {
  opacity: 1 !important;
}

body .pv-hero-suite-section .pv-index-particles i {
  width: max(3.5px, calc(var(--ps) * 1.45)) !important;
  height: max(3.5px, calc(var(--ps) * 1.45)) !important;
  opacity: .46 !important;
  box-shadow:
    0 0 15px rgba(255, 255, 255, .66),
    0 0 34px rgba(167, 139, 250, .34) !important;
  animation-duration: calc(var(--pt) * .88) !important;
}

body .pv-hero-suite-section .pv-index-particles i:nth-child(3n) {
  opacity: .32 !important;
}

body .pv-hero-suite-section .pv-index-particles i:nth-child(4n) {
  opacity: .52 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-stars,
body[data-theme="light"] .pv-hero-suite-section .pv-index-stars {
  opacity: 1 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-stars i,
body[data-theme="light"] .pv-hero-suite-section .pv-index-stars i {
  background: rgba(54, 37, 112, .92) !important;
  box-shadow:
    0 0 12px rgba(54, 37, 112, .42),
    0 0 26px rgba(139, 92, 246, .30) !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles,
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles {
  opacity: 1 !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles i,
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles i {
  opacity: .62 !important;
  background: rgba(70, 49, 134, .92) !important;
  box-shadow:
    0 0 12px rgba(70, 49, 134, .34),
    0 0 26px rgba(139, 92, 246, .28) !important;
}

html[data-theme="light"] body .pv-hero-suite-section .pv-index-particles i:nth-child(3n),
body[data-theme="light"] .pv-hero-suite-section .pv-index-particles i:nth-child(3n) {
  opacity: .44 !important;
}


/* r-nav-fix — kill the r107 lilac nav tint in light mode; loads last so wins */
html[data-theme="light"] .nav:not(.scrolled),
body[data-theme="light"] .nav:not(.scrolled) {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
}

/* App route: align VoltCore with the industrial product system. */
body .pv-app-sky {
  background:
    linear-gradient(180deg, color-mix(in oklab, var(--bg) 96%, #ffffff 4%) 0%, var(--bg) 100%) !important;
  color: var(--fg) !important;
}

body .pv-app-sky::before {
  opacity: .32 !important;
  background-image:
    linear-gradient(color-mix(in oklab, var(--fg) 8%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in oklab, var(--fg) 6%, transparent) 1px, transparent 1px) !important;
  background-size: 72px 72px !important;
  mask-image: linear-gradient(180deg, #000 0%, transparent 62%) !important;
}

body .pv-app-sky-frame {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  box-shadow: 0 22px 70px rgba(17, 20, 29, .08) !important;
  border-radius: 24px !important;
}

body .pv-app-sky-copy h1,
body .pv-app-sky-heading h2 {
  color: var(--fg) !important;
  letter-spacing: -.04em !important;
}

body .pv-app-sky-copy p,
body .pv-app-sky-heading p,
body .pv-app-soft-card p {
  color: color-mix(in oklab, var(--fg) 66%, var(--bg) 34%) !important;
}

body .pv-app-sky-badge {
  width: fit-content !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 0 0 18px !important;
  border-radius: 0 !important;
  color: var(--accent) !important;
  position: relative !important;
  letter-spacing: .16em !important;
}

body .pv-app-sky-badge::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 999px !important;
  background: var(--accent) !important;
  transform: translateY(-50%) !important;
}

body .pv-app-sky-switch {
  background: color-mix(in oklab, var(--surface) 84%, var(--fg) 4%) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
}

body .pv-app-sky-switch button {
  color: var(--muted) !important;
}

body .pv-app-sky-switch button.is-active {
  color: #fff !important;
  background: var(--accent) !important;
  box-shadow: none !important;
}

body .pv-app-sky-actions .btn-ghost {
  background: transparent !important;
  border-color: var(--border) !important;
  color: var(--fg) !important;
}

body .pv-app-sky-visual {
  isolation: isolate !important;
}

body .pv-app-sky-glow {
  opacity: .18 !important;
  background: radial-gradient(circle at 50% 42%, color-mix(in oklab, var(--accent) 28%, transparent), transparent 64%) !important;
  filter: blur(20px) !important;
}

body .pv-app-sky-phone,
body .pv-app-story-phone,
body .pv-app-story-phone.alt {
  transform: none !important;
  box-shadow: 0 26px 58px rgba(17, 20, 29, .22) !important;
}

body .pv-app-sky-metrics article {
  background: color-mix(in oklab, var(--surface) 92%, var(--fg) 5%) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
  border-radius: 12px !important;
}

body .pv-app-sky-metrics strong {
  color: var(--fg) !important;
}

body .pv-app-sky-metrics span {
  color: var(--muted) !important;
}

body .pv-app-soft-card {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
  border-radius: 14px !important;
}

body .pv-app-soft-visual span {
  background: color-mix(in oklab, var(--accent) 10%, var(--surface) 90%) !important;
  border: 1px solid color-mix(in oklab, var(--accent) 18%, var(--border) 82%) !important;
  color: var(--accent) !important;
}

body .pv-app-soft-visual i {
  background: linear-gradient(90deg, color-mix(in oklab, var(--accent) 38%, transparent), transparent) !important;
}

body .pv-app-soft-card h3 {
  color: var(--fg) !important;
}

body .pv-app-midnight {
  background: #13141a !important;
  color: #f4f2ed !important;
}

body .pv-app-midnight::before {
  opacity: .18 !important;
  background:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px) !important;
  background-size: 72px 72px !important;
}

body .pv-app-orb,
body .pv-app-orb.is-secondary {
  opacity: .18 !important;
  background: radial-gradient(circle, rgba(167,139,250,.42), transparent 68%) !important;
}

body .pv-app-floating-chip,
body .pv-app-floating-panel,
body .pv-app-story-badges span,
body .pv-app-integrations-dark {
  border-color: rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.055) !important;
  box-shadow: none !important;
}

body .pv-app-story-copy h2,
body .pv-app-integrations-dark h2,
body .pv-app-floating-panel strong,
body .pv-app-story-points h3,
body .pv-app-story-badges span {
  color: #f4f2ed !important;
}

body .pv-app-story-copy p,
body .pv-app-story-points p,
body .pv-app-floating-panel p {
  color: rgba(244,242,237,.68) !important;
}

body .pv-app-story-points article > span {
  background: rgba(167,139,250,.10) !important;
  border: 1px solid rgba(167,139,250,.16) !important;
}

@media (max-width: 980px) {
  body .pv-app-sky-frame {
    border-radius: 18px !important;
  }

  body .pv-app-sky-top {
    gap: 34px !important;
  }
}

/* VoltCore visual fixes: keep cards and callouts clear of the phone mockups. */
body .pv-app-sky-visual {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  align-items: center !important;
  justify-items: center !important;
  gap: 22px !important;
  min-height: 660px !important;
  padding: 10px 0 0 !important;
  overflow: visible !important;
}

body .pv-app-sky-phone {
  grid-row: 1 !important;
  z-index: 3 !important;
}

body .pv-app-sky-metrics {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  grid-row: 2 !important;
  z-index: 2 !important;
  width: min(100%, 620px) !important;
  grid-template-columns: repeat(4, minmax(118px, 1fr)) !important;
  margin: 0 !important;
}

body .pv-app-sky-metrics article {
  min-height: 108px !important;
  display: grid !important;
  align-content: center !important;
  padding: 18px 16px !important;
}

body .pv-app-story-visual.secondary {
  justify-content: flex-start !important;
  padding-right: min(34vw, 420px) !important;
}

body .pv-app-story-phone.alt {
  z-index: 3 !important;
}

body .pv-app-floating-panel {
  right: clamp(10px, 3vw, 48px) !important;
  bottom: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: clamp(240px, 38%, 300px) !important;
  z-index: 4 !important;
}

@media (max-width: 1100px) {
  body .pv-app-sky-visual {
    min-height: 620px !important;
  }

  body .pv-app-sky-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(100%, 420px) !important;
  }

  body .pv-app-story-visual.secondary {
    padding-right: 0 !important;
    justify-content: center !important;
  }

  body .pv-app-floating-panel {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: min(100%, 320px) !important;
    margin: 22px auto 0 !important;
  }
}

@media (max-width: 640px) {
  body .pv-app-sky-visual {
    min-height: auto !important;
    gap: 18px !important;
    padding-top: 18px !important;
  }

  body .pv-app-sky-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body .pv-app-sky-metrics article {
    min-height: 92px !important;
  }
}

/* r9: App page background aligned with Empresa / Recursos */
body .pv-app-sky,
body .pv-app-midnight {
  background: linear-gradient(180deg, #f3effa 0%, #f7f5fc 52%, #fbfafe 100%) !important;
  color: #111319 !important;
}

body[data-theme="dark"] .pv-app-sky,
body[data-theme="dark"] .pv-app-midnight,
html[data-theme="dark"] body .pv-app-sky,
html[data-theme="dark"] body .pv-app-midnight {
  background: linear-gradient(180deg, #0c0d13 0%, #10111a 52%, #0c0d13 100%) !important;
  color: #f4f2ed !important;
}

body .pv-app-sky-frame,
body .pv-app-integrations-dark,
body .pv-app-floating-panel,
body .pv-app-floating-chip,
body .pv-app-story-badges span,
body .pv-app-story-points article {
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(244,239,253,.92)) !important;
  border: 1px solid rgba(18,22,30,.08) !important;
  box-shadow: 0 12px 28px rgba(15,18,28,.06) !important;
}

body[data-theme="dark"] .pv-app-sky-frame,
body[data-theme="dark"] .pv-app-integrations-dark,
body[data-theme="dark"] .pv-app-floating-panel,
body[data-theme="dark"] .pv-app-floating-chip,
body[data-theme="dark"] .pv-app-story-badges span,
body[data-theme="dark"] .pv-app-story-points article,
html[data-theme="dark"] body .pv-app-sky-frame,
html[data-theme="dark"] body .pv-app-integrations-dark,
html[data-theme="dark"] body .pv-app-floating-panel,
html[data-theme="dark"] body .pv-app-floating-chip,
html[data-theme="dark"] body .pv-app-story-badges span,
html[data-theme="dark"] body .pv-app-story-points article {
  background: linear-gradient(180deg, rgba(23,24,34,.84), rgba(14,15,23,.92)) !important;
  border-color: rgba(255,255,255,.07) !important;
  box-shadow: 0 18px 36px rgba(0,0,0,.22) !important;
}

body .pv-app-midnight::before,
body .pv-app-orb,
body .pv-app-orb.is-secondary,
body .pv-app-sky-glow {
  opacity: 0 !important;
}

body .pv-app-story-copy h2,
body .pv-app-integrations-dark h2,
body .pv-app-floating-panel strong,
body .pv-app-story-points h3,
body .pv-app-story-badges span {
  color: #111319 !important;
}

body .pv-app-story-copy p,
body .pv-app-story-points p,
body .pv-app-floating-panel p {
  color: rgba(19,21,29,.68) !important;
}

body[data-theme="dark"] .pv-app-story-copy h2,
body[data-theme="dark"] .pv-app-integrations-dark h2,
body[data-theme="dark"] .pv-app-floating-panel strong,
body[data-theme="dark"] .pv-app-story-points h3,
body[data-theme="dark"] .pv-app-story-badges span,
html[data-theme="dark"] body .pv-app-story-copy h2,
html[data-theme="dark"] body .pv-app-integrations-dark h2,
html[data-theme="dark"] body .pv-app-floating-panel strong,
html[data-theme="dark"] body .pv-app-story-points h3,
html[data-theme="dark"] body .pv-app-story-badges span {
  color: #f4f2ed !important;
}

body[data-theme="dark"] .pv-app-story-copy p,
body[data-theme="dark"] .pv-app-story-points p,
body[data-theme="dark"] .pv-app-floating-panel p,
html[data-theme="dark"] body .pv-app-story-copy p,
html[data-theme="dark"] body .pv-app-story-points p,
html[data-theme="dark"] body .pv-app-floating-panel p {
  color: rgba(244,242,237,.68) !important;
}

body .pv-app-midnight-inner {
  padding-top: clamp(32px, 5vw, 64px) !important;
  padding-bottom: clamp(56px, 7vw, 88px) !important;
}

/* r10: product detail side labels must not collide with responsive hero images */
body .ultra-hero-art,
body .pv-ref-art {
  isolation: isolate !important;
}

body .ultra-product,
body .pv-ref-product {
  position: relative !important;
  z-index: 3 !important;
}

body .ultra-side-text,
body .pv-ref-side-text {
  z-index: 2 !important;
  pointer-events: none !important;
  max-width: 78vh !important;
}

@media (max-width: 1480px) {
  body .ultra-side-text,
  body .pv-ref-side-text {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    top: clamp(18px, 4vw, 34px) !important;
    right: clamp(18px, 5vw, 54px) !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    z-index: 5 !important;
    max-width: min(72vw, 520px) !important;
    padding: 9px 12px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 999px !important;
    background: rgba(10,11,17,.44) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    backdrop-filter: blur(14px) !important;
    pointer-events: none !important;
  }

  body .ultra-side-text span,
  body .pv-ref-side-text span {
    display: inline-block !important;
    font-family: var(--font-body) !important;
    font-size: clamp(11px, 1.4vw, 13px) !important;
    line-height: 1 !important;
    letter-spacing: .08em !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
    color: rgba(255,255,255,.78) !important;
    opacity: 1 !important;
  }

  body .ultra-side-text span:first-child,
  body .pv-ref-side-text span:first-child {
    color: var(--accent) !important;
  }
}

@media (max-width: 620px) {
  body .ultra-side-text,
  body .pv-ref-side-text {
    top: 14px !important;
    right: 14px !important;
    max-width: calc(100% - 28px) !important;
    padding: 8px 10px !important;
  }

  body .ultra-side-text span,
  body .pv-ref-side-text span {
    font-size: 10px !important;
    letter-spacing: .06em !important;
  }
}

@media (min-width: 1481px) {
  body .ultra-side-text,
  body .pv-ref-side-text {
    display: flex !important;
    visibility: visible !important;
    opacity: .58 !important;
    pointer-events: none !important;
  }
}

/* r12: keep vertical product labels only on wide desktop */
body .ultra-detail-page .ultra-side-text,
body .pv-ref-detail-page .pv-ref-side-text,
body .ultra-detail-page .ultra-side-text span,
body .pv-ref-detail-page .pv-ref-side-text span {
  pointer-events: none !important;
}

/* r14: language dropdown contrast over photographic heroes */
body .nav .nav-lang-dropdown {
  right: 0 !important;
  top: calc(100% + 10px) !important;
  min-width: 122px !important;
  padding: 10px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background: rgba(18,19,27,.88) !important;
  color: rgba(255,255,255,.88) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.28) !important;
  -webkit-backdrop-filter: blur(18px) saturate(130%) !important;
  backdrop-filter: blur(18px) saturate(130%) !important;
}

body .nav .nav-lang-grid {
  gap: 4px 6px !important;
}

body .nav .nav-lang-opt {
  color: inherit !important;
  border-radius: 9px !important;
  min-height: 32px !important;
  opacity: .74 !important;
}

body .nav .nav-lang-opt:hover,
body .nav .nav-lang-opt:focus-visible {
  opacity: 1 !important;
  background: rgba(255,255,255,.10) !important;
  outline: none !important;
}

body .nav .nav-lang-opt.is-active {
  opacity: 1 !important;
  color: #fff !important;
  background: rgba(167,139,250,.22) !important;
}

body .nav.scrolled[data-dark="false"] .nav-lang-dropdown {
  border-color: rgba(20,22,30,.10) !important;
  background: rgba(255,255,255,.94) !important;
  color: rgba(18,20,28,.84) !important;
  box-shadow: 0 18px 44px rgba(18,20,32,.13) !important;
}

body .nav.scrolled[data-dark="false"] .nav-lang-opt:hover,
body .nav.scrolled[data-dark="false"] .nav-lang-opt:focus-visible {
  background: rgba(18,20,28,.06) !important;
}

body .nav.scrolled[data-dark="false"] .nav-lang-opt.is-active {
  color: #18151f !important;
  background: rgba(167,139,250,.16) !important;
}

/* r15: final responsive polish for app, MT title, product cards and home fold */
@media (min-width: 981px) {
  body .pv-app-sky-top {
    grid-template-columns: minmax(360px, .86fr) minmax(420px, 1.14fr) !important;
    align-items: center !important;
    gap: clamp(34px, 5vw, 72px) !important;
  }

  body .pv-app-sky-copy h1 {
    max-width: 11.5ch !important;
    font-size: clamp(48px, 5.3vw, 82px) !important;
    line-height: .98 !important;
  }

  body .pv-app-sky-phone {
    margin-inline: auto !important;
  }
}

@media (max-width: 760px) {
  body .pv-app-sky {
    padding-top: 84px !important;
  }

  body .pv-app-sky-frame {
    padding: clamp(18px, 5vw, 26px) !important;
  }

  body .pv-app-sky-top {
    gap: 18px !important;
  }

  body .pv-app-sky-copy h1 {
    max-width: 12ch !important;
    font-size: clamp(38px, 10.8vw, 52px) !important;
    line-height: 1 !important;
    letter-spacing: -.045em !important;
  }

  body .pv-app-sky-copy p {
    font-size: 15px !important;
    line-height: 1.48 !important;
  }

  body .pv-app-sky-visual {
    padding-top: 4px !important;
    gap: 14px !important;
  }

  body .pv-app-sky-phone {
    transform: scale(.92) !important;
    transform-origin: top center !important;
  }
}

@media (max-width: 620px) {
  body .is-mt-cover .pv-cover-hero-title {
    font-size: clamp(48px, 13.5vw, 70px) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
  }

  body .is-mt-cover .pv-cover-hero-title strong {
    max-width: 9.4ch !important;
    overflow-wrap: anywhere !important;
    hyphens: auto !important;
  }

  body .is-mt-cover .pv-cover-hero-copy p {
    max-width: 31ch !important;
  }

  body .pv-family-image {
    min-height: 180px !important;
    padding: 14px 18px 0 !important;
    overflow: hidden !important;
  }

  body .pv-family-image img {
    width: auto !important;
    max-width: 88% !important;
    height: 168px !important;
    max-height: 168px !important;
    object-fit: contain !important;
    transform: none !important;
  }
}

@media (max-width: 560px) {
  body .pv-index-hero {
    min-height: 840px !important;
    padding-bottom: 46px !important;
  }

  body .pv-index-copy {
    margin-top: 0 !important;
  }

  body .pv-index-title {
    font-size: clamp(46px, 12.4vw, 64px) !important;
    line-height: .94 !important;
  }

  body .pv-index-lead {
    max-width: 31ch !important;
    margin-top: 18px !important;
    font-size: 16px !important;
  }

  body .pv-index-actions {
    margin-top: 22px !important;
  }

  body .pv-index-lineup-wrap {
    width: 112vw !important;
    height: 230px !important;
    margin-top: 28px !important;
    margin-left: -6vw !important;
  }

  body .pv-index-lineup {
    transform: translateY(2px) scale(1.12) !important;
  }
}

/* r17: VoltCore story points as a flat technical list, no nested cards */
body .pv-app-story-points {
  gap: 0 !important;
  border-top: 1px solid rgba(18,20,28,.12) !important;
}

body .pv-app-story-points article {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 20px !important;
  min-height: auto !important;
  padding: 22px 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(18,20,28,.12) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .pv-app-story-points article > span {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  justify-self: start !important;
  padding-top: 2px !important;
}

body .pv-app-story-points article > span::before {
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: .12em !important;
  font-weight: 800 !important;
  color: #7c5cff !important;
}

body .pv-app-story-points article > span::after {
  display: none !important;
}

body .pv-app-story-points article > div {
  min-width: 0 !important;
  padding-top: 0 !important;
}

body .pv-app-story-points h3 {
  margin: 0 0 8px !important;
  font-size: clamp(22px, 2vw, 28px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.035em !important;
}

body .pv-app-story-points p {
  margin: 0 !important;
  max-width: 64ch !important;
  font-size: 14.5px !important;
  line-height: 1.48 !important;
}

body[data-theme="dark"] .pv-app-story-points article,
html[data-theme="dark"] body .pv-app-story-points article {
  border-color: rgba(255,255,255,.12) !important;
  background: transparent !important;
}

body[data-theme="dark"] .pv-app-story-points article > span,
html[data-theme="dark"] body .pv-app-story-points article > span {
  background: transparent !important;
  border-color: transparent !important;
}

@media (max-width: 620px) {
  body .pv-app-story-points article {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 18px 0 !important;
  }

  body .pv-app-story-points article > span {
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
  }

  body .pv-app-story-points h3 {
    font-size: 20px !important;
    line-height: 1.05 !important;
  }

body .pv-app-story-points p {
    font-size: 13.5px !important;
  }
}

/* r18: VoltCore story points fully open, remove the remaining panel shape */
body .pv-app-story-copy {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body .pv-app-story-points {
  display: grid !important;
  gap: 0 !important;
  margin-top: 30px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .pv-app-story-points article {
  grid-template-columns: 30px minmax(0, 1fr) !important;
  gap: 18px !important;
  padding: 18px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  position: relative !important;
}

body .pv-app-story-points article + article::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 48px !important;
  right: min(0px, 0px) !important;
  width: min(420px, calc(100% - 48px)) !important;
  height: 1px !important;
  background: rgba(18,20,28,.12) !important;
}

body .pv-app-story-points article > span {
  padding-top: 4px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body .pv-app-story-points article > span::before {
  font-size: 11px !important;
  letter-spacing: .16em !important;
  color: #7c5cff !important;
}

body[data-theme="dark"] .pv-app-story-points article,
html[data-theme="dark"] body .pv-app-story-points article,
body[data-theme="dark"] .pv-app-story-copy,
html[data-theme="dark"] body .pv-app-story-copy {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

body[data-theme="dark"] .pv-app-story-points article + article::before,
html[data-theme="dark"] body .pv-app-story-points article + article::before {
  background: rgba(255,255,255,.13) !important;
}

@media (max-width: 620px) {
  body .pv-app-story-points article {
    grid-template-columns: 26px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 16px 0 !important;
  }

  body .pv-app-story-points article + article::before {
    left: 38px !important;
    width: calc(100% - 38px) !important;
  }
}

/* r19: remove floating numeric rail from VoltCore story points */
body .pv-app-story-points {
  display: grid !important;
  gap: 18px !important;
  margin-top: 28px !important;
  max-width: 680px !important;
}

body .pv-app-story-points article {
  display: block !important;
  padding: 0 0 20px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(18,20,28,.13) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .pv-app-story-points article::before,
body .pv-app-story-points article::after,
body .pv-app-story-points article + article::before,
body .pv-app-story-points article > span,
body .pv-app-story-points article > span::before,
body .pv-app-story-points article > span::after {
  content: none !important;
  display: none !important;
}

body .pv-app-story-points h3 {
  margin: 0 0 7px !important;
  font-size: clamp(20px, 1.8vw, 26px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em !important;
}

body .pv-app-story-points p {
  max-width: 58ch !important;
  color: rgba(18,20,28,.66) !important;
}

body[data-theme="dark"] .pv-app-story-points article,
html[data-theme="dark"] body .pv-app-story-points article {
  border-bottom-color: rgba(255,255,255,.13) !important;
}

body[data-theme="dark"] .pv-app-story-points p,
html[data-theme="dark"] body .pv-app-story-points p {
  color: rgba(255,255,255,.68) !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   CONTACT FORM — Enhanced with privacy checkbox and honeypot
───────────────────────────────────────────────────────────────────────────── */
.pv-contact-privacy {
  padding: 12px 0 !important;
}

.pv-checkbox-label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  cursor: pointer !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: var(--fg-dim) !important;
}

.pv-checkbox-label input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin-top: 2px !important;
  accent-color: var(--accent) !important;
  cursor: pointer !important;
}

.pv-checkbox-label a {
  color: var(--accent) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

.pv-contact-submit:disabled {
  opacity: .5 !important;
  cursor: not-allowed !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   NEWSLETTER FORM
───────────────────────────────────────────────────────────────────────────── */
.pv-newsletter-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.pv-newsletter-row {
  display: flex;
  gap: 8px;
}

.pv-newsletter-row input[type="email"] {
  flex: 1;
  background: var(--bg-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 14px;
  color: var(--fg);
  font: inherit;
  font-size: 14px;
  transition: border-color 160ms;
  min-width: 0;
}

.pv-newsletter-row input[type="email"]:focus {
  outline: none;
  border-color: var(--accent);
}

.pv-newsletter-row button {
  background: var(--accent);
  color: var(--accent-fg, #0d0d12);
  border: none;
  border-radius: 8px;
  padding: 10px 20px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -.01em;
  cursor: pointer;
  white-space: nowrap;
  transition: opacity 160ms;
}

.pv-newsletter-row button:hover:not(:disabled) {
  opacity: .85;
}

.pv-newsletter-row button:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.pv-newsletter-consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12px;
  line-height: 1.5;
  color: var(--fg-mute);
  cursor: pointer;
}

.pv-newsletter-consent input[type="checkbox"] {
  width: 14px;
  height: 14px;
  min-width: 14px;
  margin-top: 2px;
  accent-color: var(--accent);
  cursor: pointer;
}

.pv-newsletter-success {
  font-size: 14px;
  color: var(--accent);
  padding: 12px 0;
  font-weight: 500;
}

.pv-newsletter-compact .pv-newsletter-row input[type="email"] {
  font-size: 13px;
  padding: 8px 12px;
}

.pv-newsletter-compact .pv-newsletter-row button {
  padding: 8px 16px;
  font-size: 12px;
}

/* ─────────────────────────────────────────────────────────────────────────────
   LEGAL PAGES — Full GDPR content layout
───────────────────────────────────────────────────────────────────────────── */
.pv-legal-meta {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--fg-mute);
  letter-spacing: .05em;
  margin-bottom: 48px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--line);
}

.pv-legal-body {
  max-width: 720px;
}

.pv-legal-section {
  margin-bottom: 40px;
}

.pv-legal-section h2 {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -.02em;
  margin-bottom: 12px;
  color: var(--fg);
}

.pv-legal-section p {
  font-size: 14px;
  line-height: 1.7;
  color: var(--fg-dim);
  margin-bottom: 10px;
}

.pv-legal-section ul {
  list-style: none;
  padding: 0;
  margin: 8px 0;
}

.pv-legal-section ul li {
  font-size: 14px;
  line-height: 1.7;
  color: var(--fg-dim);
  padding: 4px 0 4px 20px;
  position: relative;
}

.pv-legal-section ul li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: var(--accent);
  font-size: 12px;
}

.pv-legal-section a {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pv-legal-table {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  font-size: 13px;
  line-height: 1.4;
  margin: 12px 0;
}

.pv-legal-table-row {
  display: grid;
  grid-template-columns: 2fr 1fr 3fr 1fr;
  gap: 0;
  border-bottom: 1px solid var(--line);
}

.pv-legal-table-row:last-child {
  border-bottom: none;
}

.pv-legal-table-row span {
  padding: 10px 14px;
  color: var(--fg-dim);
  border-right: 1px solid var(--line);
}

.pv-legal-table-row span:last-child {
  border-right: none;
}

.pv-legal-table-head {
  background: var(--bg-soft);
}

.pv-legal-table-head span {
  color: var(--fg);
  font-weight: 600;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.pv-policy-actions {
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid var(--line);
  display: flex;
  gap: 12px;
}

/* ─────────────────────────────────────────────────────────────────────────────
   FOOTER — Enhanced bottom bar with legal links and social
───────────────────────────────────────────────────────────────────────────── */
.pv-footer-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}

.pv-footer-bottom-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--fg-mute);
  letter-spacing: .04em;
  text-align: center;
}

.pv-footer-email {
  color: var(--fg-mute) !important;
  text-decoration: none;
  transition: color 160ms;
}

.pv-footer-email:hover {
  color: var(--fg-dim) !important;
}

.pv-footer-social {
  display: flex;
  gap: 12px;
  align-items: center;
}

.pv-footer-social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  border: 1px solid var(--line);
  color: var(--fg-mute);
  text-decoration: none;
  transition: color 160ms, border-color 160ms;
}

.pv-footer-social-link:hover {
  color: var(--fg);
  border-color: var(--fg-dim);
}

/* ─────────────────────────────────────────────────────────────────────────────
   COOKIE BANNER
───────────────────────────────────────────────────────────────────────────── */
#pv-cookie-banner {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
  width: min(calc(100vw - 32px), 720px);
  background: var(--bg-elev, #1a1a22);
  border: 1px solid var(--line, rgba(255,255,255,.1));
  border-radius: 16px;
  padding: 20px 24px;
  box-shadow: 0 24px 64px rgba(0,0,0,.48);
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-family: 'Inter Tight', system-ui, sans-serif;
  animation: pv-cookie-slide-up .28s cubic-bezier(.22,.78,0,1) both;
}

@keyframes pv-cookie-slide-up {
  from { opacity: 0; transform: translateX(-50%) translateY(20px); }
  to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

#pv-cookie-banner.is-hidden {
  display: none;
}

.pv-cookie-text {
  font-size: 13px;
  line-height: 1.6;
  color: rgba(244,242,237,.72);
}

.pv-cookie-text a {
  color: #a78bfa;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pv-cookie-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}

.pv-cookie-btn {
  padding: 9px 18px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -.01em;
  cursor: pointer;
  border: none;
  transition: opacity 160ms;
  font-family: inherit;
}

.pv-cookie-btn:hover { opacity: .82; }

.pv-cookie-btn-accept {
  background: #a78bfa;
  color: #0d0d12;
}

.pv-cookie-btn-reject {
  background: transparent;
  border: 1px solid rgba(244,242,237,.18) !important;
  color: rgba(244,242,237,.72);
}

.pv-cookie-btn-configure {
  background: transparent;
  border: none !important;
  color: rgba(244,242,237,.48);
  padding: 9px 8px;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pv-cookie-configure-panel {
  border-top: 1px solid rgba(244,242,237,.1);
  padding-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.pv-cookie-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.pv-cookie-option-label {
  font-size: 13px;
  color: rgba(244,242,237,.72);
}

.pv-cookie-option-label strong {
  display: block;
  color: rgba(244,242,237,.92);
  font-weight: 600;
  margin-bottom: 2px;
}

.pv-cookie-toggle {
  position: relative;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
  cursor: pointer;
}

.pv-cookie-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.pv-cookie-slider {
  position: absolute;
  inset: 0;
  border-radius: 10px;
  background: rgba(244,242,237,.2);
  transition: background 200ms;
}

.pv-cookie-slider::before {
  content: '';
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  left: 3px;
  top: 3px;
  transition: transform 200ms;
}

.pv-cookie-toggle input:checked + .pv-cookie-slider {
  background: #a78bfa;
}

.pv-cookie-toggle input:checked + .pv-cookie-slider::before {
  transform: translateX(16px);
}

@media (max-width: 600px) {
  #pv-cookie-banner {
    bottom: 12px;
    padding: 16px;
    border-radius: 12px;
  }

  .pv-legal-table-row {
    grid-template-columns: 1fr 1fr;
  }

  .pv-newsletter-row {
    flex-direction: column;
  }
}
/* Production forms/footer pass */
.pv-honeypot {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  pointer-events: none !important;
}

.pv-contact-field input:invalid:not(:placeholder-shown),
.pv-contact-field textarea:invalid:not(:placeholder-shown),
.pv-newsletter-row input:invalid:not(:placeholder-shown) {
  border-color: color-mix(in oklab, #ef4444 72%, var(--line)) !important;
}

.pv-newsletter-legal {
  margin: 10px 0 0;
  color: var(--fg-mute);
  font-size: 11px;
  line-height: 1.55;
  max-width: 56ch;
}

.pv-footer-newsletter {
  min-width: min(320px, 100%);
}

.pv-footer-newsletter h3 {
  margin: 0 0 12px;
}

.pv-footer-newsletter p {
  margin: 0 0 14px;
  max-width: 32ch;
  color: var(--fg-mute);
  font-size: 13px;
  line-height: 1.5;
}

.pv-footer-cookie-link {
  display: block;
  padding: 6px 0;
  border: 0;
  background: transparent;
  color: var(--fg-dim);
  font: inherit;
  font-size: 14px;
  text-align: left;
  cursor: pointer;
}

.pv-footer-cookie-link:hover,
.pv-footer-cookie-link:focus-visible {
  color: var(--fg);
  outline: none;
}

.pv-legal-identity {
  display: grid;
  gap: 10px;
  margin: 18px 0;
}

@media (max-width: 820px) {
  .pv-footer-newsletter {
    grid-column: 1 / -1;
  }
}

/* Final production polish: cookie banner contrast + footer newsletter rhythm */
#pv-cookie-banner {
  width: min(calc(100vw - 32px), 760px) !important;
  background: rgba(17, 16, 24, .96) !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  color: #f6f2ff !important;
  box-shadow: 0 26px 80px rgba(0, 0, 0, .42) !important;
  backdrop-filter: blur(18px) saturate(140%) !important;
}

#pv-cookie-banner .pv-cookie-text,
#pv-cookie-banner .pv-cookie-option-label {
  color: rgba(246, 242, 255, .78) !important;
}

#pv-cookie-banner .pv-cookie-option-label strong {
  color: rgba(246, 242, 255, .96) !important;
}

#pv-cookie-banner .pv-cookie-text a,
#pv-cookie-banner .pv-cookie-btn-configure {
  color: #c4b5fd !important;
}

#pv-cookie-banner .pv-cookie-btn-accept {
  background: #a78bfa !important;
  color: #100f18 !important;
}

#pv-cookie-banner .pv-cookie-btn-reject {
  color: rgba(246, 242, 255, .82) !important;
  border-color: rgba(246, 242, 255, .24) !important;
}

#pv-cookie-banner .pv-cookie-actions {
  gap: 10px !important;
}

#pv-cookie-banner .pv-cookie-btn {
  min-height: 38px !important;
}

.pv-footer .pv-footer-top {
  grid-template-columns: minmax(0, 1.05fr) minmax(440px, .95fr) !important;
}

.pv-footer .pv-footer-nav {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px 24px !important;
}

.pv-footer .pv-footer-newsletter {
  grid-column: 1 / -1 !important;
  width: min(100%, 520px) !important;
  min-width: 0 !important;
  padding-top: 8px !important;
}

.pv-footer .pv-footer-newsletter h3 {
  margin-bottom: 10px !important;
}

.pv-footer .pv-footer-newsletter p {
  max-width: 46ch !important;
  margin-bottom: 14px !important;
}

.pv-footer .pv-newsletter-compact {
  max-width: 460px !important;
}

.pv-footer .pv-newsletter-compact .pv-newsletter-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
}

.pv-footer .pv-newsletter-compact .pv-newsletter-row input[type="email"] {
  min-height: 40px !important;
  width: 100% !important;
}

.pv-footer .pv-newsletter-compact .pv-newsletter-row button {
  min-height: 40px !important;
  padding-inline: 18px !important;
}

.pv-footer .pv-newsletter-consent {
  max-width: 42ch !important;
  gap: 10px !important;
  line-height: 1.45 !important;
}

.pv-footer .pv-newsletter-legal {
  max-width: 44ch !important;
  color: var(--fg-mute) !important;
}

@media (max-width: 980px) {
  .pv-footer .pv-footer-top {
    grid-template-columns: 1fr !important;
  }

  .pv-footer .pv-footer-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 620px) {
  #pv-cookie-banner {
    width: min(calc(100vw - 20px), 420px) !important;
    bottom: 10px !important;
    padding: 16px !important;
  }

  #pv-cookie-banner .pv-cookie-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  #pv-cookie-banner .pv-cookie-btn {
    width: 100% !important;
  }

  .pv-footer .pv-footer-nav {
    grid-template-columns: 1fr !important;
  }

  .pv-footer .pv-newsletter-compact .pv-newsletter-row {
    grid-template-columns: 1fr !important;
  }

  .pv-footer .pv-newsletter-compact .pv-newsletter-row button {
    width: 100% !important;
  }
}

/* Final readability pass: category hero text + contact form */
.pv-chargers-cover,
.pv-cover-hero {
  --category-cover-ink: #ffffff !important;
  --category-cover-muted: rgba(255, 255, 255, .82) !important;
  --category-cover-soft: rgba(255, 255, 255, .64) !important;
}

.pv-chargers-cover-copy,
.pv-cover-hero-copy {
  color: #ffffff !important;
  text-shadow: 0 20px 58px rgba(0, 0, 0, .82) !important;
}

.pv-chargers-cover-title,
.pv-chargers-cover-title span,
.pv-cover-hero-title,
.pv-cover-hero-title span,
.pv-cover-hero-specs strong,
.pv-chargers-cover-specs strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.pv-chargers-cover-title strong,
.pv-cover-hero-title strong,
.pv-chargers-cover-eyebrow,
.pv-cover-hero-eyebrow {
  color: #a78bfa !important;
  -webkit-text-fill-color: #a78bfa !important;
}

.pv-chargers-cover-copy p,
.pv-cover-hero-copy p {
  color: rgba(255, 255, 255, .82) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, .82) !important;
}

.pv-chargers-cover-specs span,
.pv-cover-hero-specs span {
  color: rgba(255, 255, 255, .64) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, .64) !important;
}

.pv-contact-field label {
  letter-spacing: .055em !important;
  line-height: 1.3 !important;
  color: color-mix(in oklab, var(--fg) 58%, var(--fg-mute)) !important;
}

.pv-contact-privacy {
  margin: 24px 0 26px !important;
}

.pv-checkbox-label {
  align-items: flex-start !important;
  gap: 12px !important;
  color: color-mix(in oklab, var(--fg) 70%, var(--fg-mute)) !important;
  font-family: var(--font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.pv-checkbox-label span {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.pv-checkbox-label a {
  letter-spacing: .02em !important;
  color: #7c3aed !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

.pv-contact-error {
  letter-spacing: 0 !important;
  line-height: 1.45 !important;
}
