:root {
  --bg: #080809;
  --panel: rgba(17, 24, 39, .88);
  --border: rgba(148, 163, 184, .18);
  --text: #f8fafc;
  --muted: #b6c2d4;
  --soft: #94a3b8;
  --primary: #e50914;
  --shadow: 0 24px 80px rgba(0, 0, 0, .38);
}

* { box-sizing: border-box; }

html {
  background: #080809;
  background-color: #080809;
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

body {
  margin: 0;
  background: #080809;
  background-color: #080809;
  min-height: 100vh;
  line-height: 1.55;
}

.bg {
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at top left, rgba(229, 9, 20, .18), transparent 34%),
    radial-gradient(circle at bottom right, rgba(255, 255, 255, .08), transparent 35%),
    linear-gradient(180deg, #101010, #080809);
  z-index: -1;
}

a { color: inherit; }

.site-header,
.site-footer,
main {
  width: min(1180px, calc(100% - clamp(24px, 5vw, 72px)));
  margin-inline: auto;
}

.site-header-clean {
  display: grid !important;
  grid-template-columns: minmax(150px, auto) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 22px 0 !important;
}

.brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
  max-width: min(100%, 340px) !important;
  min-height: 44px !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  border-radius: 15px;
  background: linear-gradient(135deg, #111, #e50914);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 14px 34px rgba(229, 9, 20, .24);
}

.brand-avatar {
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  object-fit: contain !important;
  border-radius: 14px !important;
}

.brand-logo {
  display: block !important;
  width: auto !important;
  max-width: min(var(--brand-logo-max, 220px), 24vw) !important;
  max-height: min(var(--brand-logo-height, 38px), 44px) !important;
  object-fit: contain !important;
  flex: 0 1 auto !important;
}

.brand-text {
  max-width: min(260px, 24vw);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 900;
  letter-spacing: -.04em;
  line-height: 1;
}

.site-nav-clean {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
}

.site-nav-clean .nav-home,
.site-nav-clean .header-cta,
.site-mega-menu summary {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  padding: 9px 14px;
  border-radius: 999px;
  color: var(--text);
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
  border: 1px solid var(--border);
  background: rgba(255,255,255,.055);
}

.site-nav-clean .nav-home.active,
.site-nav-clean .nav-home:hover,
.site-nav-clean .header-cta:hover,
.site-mega-menu summary:hover {
  background: rgba(255,255,255,.09);
}

.site-mega-menu {
  position: relative;
  z-index: 50;
}

.site-mega-menu summary {
  list-style: none;
  cursor: pointer;
  user-select: none;
  gap: 8px;
}

.site-mega-menu summary::-webkit-details-marker { display: none; }

.site-mega-menu summary::after {
  content: "⌄";
  font-size: 13px;
}

.site-mega-menu[open] summary::after { content: "⌃"; }

.site-mega-panel {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  width: min(760px, calc(100vw - 32px));
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, .85fr) minmax(220px, 1fr);
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 26px;
  background: rgba(5, 5, 5, .98);
  box-shadow: 0 30px 90px rgba(0,0,0,.48);
  backdrop-filter: blur(16px);
}

.site-mega-panel section {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.nav-group-title {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.site-mega-panel a {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 14px;
  color: var(--text);
  text-decoration: none;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(148,163,184,.12);
  font-weight: 850;
}

.site-mega-panel a:hover,
.site-mega-panel a.active {
  background: rgba(229, 9, 20, .16);
  border-color: rgba(229, 9, 20, .32);
}

.site-mega-cta {
  padding: 14px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(229,9,20,.14), rgba(255,255,255,.04));
  border: 1px solid rgba(229,9,20,.22);
}

.site-mega-cta p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.button.compact {
  min-height: 42px;
  padding: 10px 14px;
}

main {
  padding: clamp(34px, 6vw, 74px) 0 clamp(54px, 8vw, 96px);
}

.hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: clamp(24px, 5vw, 54px);
  align-items: center;
  margin-bottom: clamp(30px, 5vw, 58px);
}

.eyebrow {
  margin: 0 0 14px;
  color: #ff5a61;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}

h1 {
  max-width: 820px;
  margin: 0 0 18px;
  font-size: clamp(44px, 8vw, 86px);
  line-height: .96;
  letter-spacing: -.07em;
}

.lead {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(18px, 2.4vw, 23px);
}

.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 13px 22px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 900;
}

.button.primary {
  background: linear-gradient(135deg, #e50914, #ff3b43);
  box-shadow: 0 18px 48px rgba(229, 9, 20, .25);
}

.button.secondary {
  border: 1px solid var(--border);
  background: rgba(255,255,255,.045);
}

.hero-card,
.feature-card,
.cta-panel,
.notice,
.panel {
  border: 1px solid var(--border);
  background: var(--panel);
  border-radius: 28px;
  box-shadow: var(--shadow);
}

.hero-card {
  display: grid;
  gap: 14px;
  padding: clamp(24px, 4vw, 36px);
}

.hero-card h2,
.cta-panel h2,
.panel h2,
.feature-card h2 {
  margin: 0 0 10px;
  letter-spacing: -.035em;
}

.hero-card p,
.cta-panel p,
.panel p,
.feature-card p,
.notice {
  color: var(--muted);
}

.hero-card p { margin: 0; }

.hero-card a {
  justify-self: start;
  margin-top: 8px;
  color: #fecaca;
  font-weight: 900;
  text-underline-offset: 4px;
}

.status {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 6px 10px;
  border-radius: 999px;
  color: #fee2e2;
  background: rgba(229, 9, 20, .14);
  border: 1px solid rgba(229, 9, 20, .28);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2.5vw, 24px);
  margin-bottom: clamp(30px, 5vw, 58px);
}

.feature-card,
.panel { padding: clamp(22px, 3vw, 30px); }

.feature-card p,
.panel p { margin: 0; }

.notice {
  margin-bottom: 24px;
  padding: 18px 20px;
}

.cta-panel {
  padding: clamp(28px, 5vw, 44px);
  text-align: center;
}

.cta-panel p {
  max-width: 720px;
  margin: 0 auto 22px;
}

.site-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 0 32px;
  color: var(--soft);
  font-size: 14px;
}

.site-footer nav {
  display: flex;
  gap: 14px;
}

.site-footer a {
  color: var(--soft);
  text-decoration: none;
}

@media (max-width: 980px) {
  .site-header-clean {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .site-nav-clean {
    width: 100%;
    justify-content: space-between !important;
  }

  .brand {
    max-width: 100% !important;
  }

  .brand-logo {
    max-width: min(var(--brand-logo-tablet-max, 195px), 68vw) !important;
    max-height: min(var(--brand-logo-tablet-height, 34px), 40px) !important;
  }

  .site-mega-panel {
    left: 0;
    right: auto;
    grid-template-columns: 1fr 1fr;
  }

  .site-mega-cta {
    grid-column: 1 / -1;
  }

  .hero,
  .feature-grid {
    grid-template-columns: 1fr;
  }

  .hero-card {
    max-width: 680px;
  }
}

@media (max-width: 640px) {
  .site-header,
  .site-footer,
  main {
    width: min(100% - 24px, 1180px);
  }

  .brand-avatar,
  .brand-mark {
    width: 36px !important;
    height: 36px !important;
    flex-basis: 36px !important;
  }

  .brand-logo {
    max-width: min(var(--brand-logo-mobile-max, 165px), 72vw) !important;
    max-height: min(var(--brand-logo-mobile-height, 30px), 34px) !important;
  }

  .brand-text {
    max-width: 66vw;
  }

  .site-nav-clean {
    align-items: stretch;
    display: grid !important;
    grid-template-columns: 1fr auto;
  }

  .site-nav-clean .header-cta {
    grid-column: 1 / -1;
    justify-content: center;
  }

  .site-mega-panel {
    width: calc(100vw - 24px);
    grid-template-columns: 1fr;
    left: auto;
    right: 0;
    padding: 14px;
  }

  .site-mega-cta {
    grid-column: auto;
  }

  .actions .button,
  .cta-panel .button {
    width: 100%;
  }

  .site-footer {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* v0.1.8.2.3 Explore dropdown toggle alignment fix */
.site-mega-menu summary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 14px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.site-mega-menu summary::after {
  content: none !important;
  display: none !important;
}

.site-mega-menu summary .menu-label {
  display: inline-flex !important;
  align-items: center !important;
  height: 1em !important;
  line-height: 1 !important;
  transform: translateY(0) !important;
}

.site-mega-menu summary .menu-chevron {
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  flex: 0 0 8px !important;
  border-right: 2px solid currentColor !important;
  border-bottom: 2px solid currentColor !important;
  transform: rotate(45deg) translateY(-2px) !important;
  opacity: .9 !important;
  margin-left: 1px !important;
}

.site-mega-menu[open] summary .menu-chevron {
  transform: rotate(225deg) translate(-1px, -1px) !important;
}

@media (max-width: 640px) {
  .site-mega-menu summary {
    width: 100% !important;
    min-height: 42px !important;
    height: 42px !important;
  }
}


/* v0.1.9.1 unified public menu toggle redesign */
.site-mega-menu summary,
.site-mega-menu summary.om-toggle-button {
  list-style: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer !important;
  user-select: none !important;
  min-height: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 0 15px !important;
  border-radius: 999px !important;
  color: var(--text) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  border: 1px solid var(--border) !important;
  background: rgba(255,255,255,.055) !important;
  box-shadow: none !important;
  vertical-align: middle !important;
}

.site-mega-menu summary::-webkit-details-marker,
.site-mega-menu summary::marker {
  display: none !important;
  content: "" !important;
}

.site-mega-menu summary::before,
.site-mega-menu summary::after {
  content: none !important;
  display: none !important;
}

.om-toggle-label {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 1em !important;
  line-height: 1 !important;
  transform: translateY(0) !important;
}

.om-toggle-icon {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
  display: grid !important;
  align-content: center !important;
  gap: 3px !important;
}

.om-toggle-icon span {
  display: block !important;
  width: 16px !important;
  height: 2px !important;
  border-radius: 99px !important;
  background: currentColor !important;
  opacity: .92 !important;
  transform-origin: center !important;
  transition: transform .18s ease, opacity .18s ease, width .18s ease !important;
}

.om-toggle-caret {
  width: 7px !important;
  height: 7px !important;
  flex: 0 0 7px !important;
  border-right: 2px solid currentColor !important;
  border-bottom: 2px solid currentColor !important;
  transform: rotate(45deg) translateY(-2px) !important;
  opacity: .88 !important;
  transition: transform .18s ease !important;
}

.site-mega-menu[open] summary.om-toggle-button {
  color: #fff !important;
  background: rgba(229, 9, 20, .16) !important;
  border-color: rgba(229, 9, 20, .42) !important;
  box-shadow: 0 14px 40px rgba(229, 9, 20, .16) !important;
}

.site-mega-menu[open] .om-toggle-icon span:nth-child(1) {
  transform: translateY(5px) rotate(45deg) !important;
}

.site-mega-menu[open] .om-toggle-icon span:nth-child(2) {
  opacity: 0 !important;
}

.site-mega-menu[open] .om-toggle-icon span:nth-child(3) {
  transform: translateY(-5px) rotate(-45deg) !important;
}

.site-mega-menu[open] .om-toggle-caret {
  transform: rotate(225deg) translate(-1px, -1px) !important;
}

@media (max-width: 640px) {
  .site-mega-menu summary.om-toggle-button {
    width: 100% !important;
    min-height: 44px !important;
    height: 44px !important;
  }
}


/* v0.1.9.2 public mobile left slide drawer navigation */
@media (max-width: 760px) {
  .site-header-clean {
    position: relative !important;
    z-index: 80 !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
  }

  .site-nav-clean {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    width: auto !important;
    gap: 10px !important;
  }

  .site-nav-clean .nav-home,
  .site-nav-clean > .header-cta {
    display: none !important;
  }

  .site-mega-menu {
    position: static !important;
  }

  .site-mega-menu summary.om-toggle-button {
    width: auto !important;
    min-width: 112px !important;
    min-height: 44px !important;
    height: 44px !important;
    padding: 0 15px !important;
  }

  .site-mega-menu::before {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.58) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .2s ease !important;
    z-index: 998 !important;
  }

  .site-mega-menu[open]::before {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .site-mega-panel {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: min(86vw, 360px) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-y: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: start !important;
    gap: 14px !important;
    padding: 88px 18px 22px !important;
    border-radius: 0 28px 28px 0 !important;
    border-top: 0 !important;
    border-left: 0 !important;
    border-bottom: 0 !important;
    border-right: 1px solid rgba(255,255,255,.16) !important;
    background: rgba(5, 5, 5, .985) !important;
    box-shadow: 24px 0 80px rgba(0,0,0,.52) !important;
    transform: translateX(-105%) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: transform .24s ease !important;
    z-index: 999 !important;
  }

  .site-mega-menu[open] .site-mega-panel {
    transform: translateX(0) !important;
  }

  .site-mega-panel::before {
    content: "Omatic Minds" !important;
    position: absolute !important;
    top: 24px !important;
    left: 18px !important;
    right: 18px !important;
    min-height: 38px !important;
    display: flex !important;
    align-items: center !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    letter-spacing: -.04em !important;
  }

  .site-mega-panel section {
    min-width: 0 !important;
  }

  .site-mega-panel a,
  .site-mega-cta .button {
    min-height: 46px !important;
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .site-mega-cta {
    grid-column: auto !important;
  }
}


/* v0.1.9.3 public mobile drawer close + square full-height fix */
body.om-drawer-open {
  overflow: hidden !important;
  touch-action: none !important;
}

@media (max-width: 760px) {
  .site-mega-menu[open] {
    z-index: 2147483600 !important;
  }

  .site-mega-menu::before {
    z-index: 2147483601 !important;
  }

  .site-mega-panel {
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    width: min(88vw, 380px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    scrollbar-gutter: stable !important;
    border-radius: 0 !important;
    border: 0 !important;
    border-right: 1px solid rgba(255,255,255,.16) !important;
    z-index: 2147483602 !important;
    padding: 88px 18px 24px !important;
  }

  .site-mega-panel::before {
    content: "Omatic Minds" !important;
    position: absolute !important;
    top: 24px !important;
    left: 18px !important;
    right: 70px !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    letter-spacing: -.04em !important;
  }

  .drawer-close {
    position: absolute !important;
    top: 20px !important;
    right: 18px !important;
    width: 42px !important;
    height: 42px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    background: rgba(255,255,255,.065) !important;
    color: #fff !important;
    cursor: pointer !important;
    z-index: 3 !important;
    font: inherit !important;
    line-height: 1 !important;
  }

  .drawer-close span {
    display: block !important;
    font-size: 28px !important;
    line-height: 1 !important;
    transform: translateY(-1px) !important;
  }

  .drawer-close:hover,
  .drawer-close:focus-visible {
    background: rgba(229, 9, 20, .18) !important;
    border-color: rgba(229, 9, 20, .42) !important;
    outline: none !important;
  }
}


/* v0.1.9.3.2 public logo size lock */
.brand-logo {
  max-width: min(var(--brand-logo-max, 256px), 30vw) !important;
  max-height: min(var(--brand-logo-height, 30px), 30px) !important;
}

@media (max-width: 980px) {
  .brand-logo {
    max-width: min(var(--brand-logo-tablet-max, 156px), 68vw) !important;
    max-height: min(var(--brand-logo-tablet-height, 28px), 28px) !important;
  }
}

@media (max-width: 640px) {
  .brand-logo {
    max-width: min(var(--brand-logo-mobile-max, 132px), 72vw) !important;
    max-height: min(var(--brand-logo-mobile-height, 26px), 26px) !important;
  }
}


/* v0.2.0.2 public homepage dynamic background video */
.bg {
  z-index: -3 !important;
}

.home-video-backdrop {
  position: fixed;
  top: clamp(92px, 11vh, 136px);
  right: max(-90px, -7vw);
  width: min(64vw, 920px);
  height: min(56vh, 580px);
  z-index: -2;
  pointer-events: none;
  overflow: hidden;
  border-radius: 44% 0 0 44%;
  opacity: .62;
  background: rgba(0,0,0,.16);
  box-shadow:
    inset 0 0 120px rgba(0,0,0,.72),
    0 0 90px rgba(229, 9, 20, .11);
  -webkit-mask-image:
    radial-gradient(ellipse at 100% 50%, rgba(0,0,0,1) 0 54%, rgba(0,0,0,.82) 66%, rgba(0,0,0,0) 100%);
  mask-image:
    radial-gradient(ellipse at 100% 50%, rgba(0,0,0,1) 0 54%, rgba(0,0,0,.82) 66%, rgba(0,0,0,0) 100%);
}

.home-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.9) contrast(1.08) brightness(.72);
  transform: scale(1.03);
}

.home-video-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 34% 52%, rgba(229,9,20,.12), transparent 42%),
    linear-gradient(90deg, rgba(5,5,5,.94) 0%, rgba(5,5,5,.58) 30%, rgba(5,5,5,.25) 62%, rgba(5,5,5,.72) 100%),
    linear-gradient(180deg, rgba(5,5,5,.72) 0%, rgba(5,5,5,.12) 46%, rgba(5,5,5,.88) 100%);
}

.hero,
.site-header-clean,
.site-footer,
.cta-panel,
.feature-grid {
  position: relative;
  z-index: 1;
}

@media (max-width: 1100px) {
  .home-video-backdrop {
    top: 118px;
    right: -130px;
    width: 74vw;
    height: 48vh;
    opacity: .48;
  }
}

@media (max-width: 760px), (prefers-reduced-motion: reduce) {
  .home-video-backdrop {
    display: none !important;
  }
}


/* v0.2.0.2.1 public homepage video visibility fix */
html,
body {
  position: relative;
}

body {
  isolation: isolate;
}

.bg {
  z-index: 0 !important;
}

.home-video-backdrop {
  z-index: 1 !important;
  opacity: .72 !important;
  transform: translateZ(0);
}

.site-header-clean,
main,
.site-footer,
.hero,
.feature-grid,
.cta-panel {
  position: relative !important;
  z-index: 3 !important;
}

.home-video,
.home-video-overlay {
  position: absolute;
}

.home-video {
  inset: 0;
}

.home-video-overlay {
  inset: 0;
}

@media (max-width: 760px), (prefers-reduced-motion: reduce) {
  .home-video-backdrop {
    display: none !important;
  }
}


/* v0.2.0.2.2 public desktop menu stack fix */
.site-header-clean {
  position: relative !important;
  z-index: 5000 !important;
  isolation: isolate !important;
}

.site-nav-clean,
.site-mega-menu {
  position: relative !important;
  z-index: 5010 !important;
}

.site-mega-menu[open] {
  z-index: 9000 !important;
}

.site-mega-menu[open] summary.om-toggle-button,
.site-mega-menu[open] summary {
  position: relative !important;
  z-index: 9002 !important;
}

.site-mega-panel {
  z-index: 9001 !important;
  background:
    linear-gradient(180deg, rgba(8, 8, 10, .995), rgba(3, 3, 4, .985)) !important;
  border-color: rgba(255, 255, 255, .18) !important;
  box-shadow:
    0 34px 110px rgba(0, 0, 0, .78),
    0 0 0 1px rgba(229, 9, 20, .10) !important;
  backdrop-filter: blur(18px) !important;
}

.site-mega-panel::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  background:
    radial-gradient(circle at 85% 10%, rgba(229, 9, 20, .10), transparent 36%),
    linear-gradient(90deg, rgba(0,0,0,.18), transparent 55%) !important;
  z-index: -1 !important;
}

.site-mega-panel section,
.site-mega-panel a,
.site-mega-cta {
  position: relative !important;
  z-index: 1 !important;
}

.home-video-backdrop {
  z-index: 1 !important;
}

main,
.hero,
.feature-grid,
.cta-panel,
.site-footer {
  position: relative !important;
  z-index: 3 !important;
}

.site-header-clean {
  z-index: 5000 !important;
}

@media (min-width: 761px) {
  .site-mega-panel {
    top: calc(100% + 14px) !important;
    right: 0 !important;
    left: auto !important;
    max-height: min(74vh, 560px) !important;
    overflow-y: auto !important;
  }
}

@media (max-width: 760px) {
  .site-header-clean,
  .site-nav-clean,
  .site-mega-menu,
  .site-mega-menu[open],
  .site-mega-panel {
    isolation: auto !important;
  }

  .site-mega-panel {
    z-index: 2147483602 !important;
  }
}


/* v0.2.0.2.3 homepage video render fallback / visibility boost */
body {
  isolation: isolate;
}

.bg {
  z-index: 0 !important;
}

.home-video-backdrop {
  position: fixed !important;
  top: clamp(74px, 9vh, 116px) !important;
  left: 50% !important;
  right: auto !important;
  width: min(1180px, calc(100vw - 36px)) !important;
  height: min(66vh, 640px) !important;
  transform: translateX(-50%) translateZ(0) !important;
  z-index: 1 !important;
  opacity: .56 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  border-radius: 38px !important;
  background: rgba(0,0,0,.26) !important;
  box-shadow:
    inset 0 0 140px rgba(0,0,0,.78),
    0 0 120px rgba(229, 9, 20, .14) !important;
  -webkit-mask-image:
    radial-gradient(ellipse at center, rgba(0,0,0,1) 0 54%, rgba(0,0,0,.74) 72%, rgba(0,0,0,0) 100%) !important;
  mask-image:
    radial-gradient(ellipse at center, rgba(0,0,0,1) 0 54%, rgba(0,0,0,.74) 72%, rgba(0,0,0,0) 100%) !important;
}

.home-video {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: saturate(.95) contrast(1.08) brightness(.72) !important;
  transform: scale(1.04) !important;
}

.home-video-overlay {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(229,9,20,.10), transparent 44%),
    linear-gradient(90deg, rgba(5,5,5,.90) 0%, rgba(5,5,5,.48) 28%, rgba(5,5,5,.34) 66%, rgba(5,5,5,.78) 100%),
    linear-gradient(180deg, rgba(5,5,5,.62) 0%, rgba(5,5,5,.10) 42%, rgba(5,5,5,.88) 100%) !important;
}

.site-header-clean,
main,
.site-footer,
.hero,
.feature-grid,
.cta-panel {
  position: relative !important;
  z-index: 3 !important;
}

.site-header-clean,
.site-nav-clean,
.site-mega-menu,
.site-mega-menu[open],
.site-mega-panel {
  z-index: 9000 !important;
}

@media (max-width: 1100px) {
  .home-video-backdrop {
    top: 104px !important;
    width: calc(100vw - 28px) !important;
    height: min(54vh, 520px) !important;
    opacity: .46 !important;
  }
}

@media (max-width: 760px), (prefers-reduced-motion: reduce) {
  .home-video-backdrop {
    display: none !important;
  }
}


/* v0.2.0.2.4 public homepage video top-layer placement fix */
/* The markup no longer uses .home-video-backdrop, which avoids the old mask/vector/radius rules. */
body {
  isolation: isolate;
}

.bg {
  z-index: 0 !important;
}

.homepage-video-layer {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  height: clamp(320px, 44vh, 560px) !important;
  max-height: 560px !important;
  z-index: 1 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  opacity: .56 !important;
  background: #050505 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: translateZ(0) !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

.homepage-video-layer .home-video {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  filter: saturate(.95) contrast(1.06) brightness(.72) !important;
  transform: none !important;
}

.homepage-video-layer .home-video-overlay {
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(5,5,5,.86) 0%, rgba(5,5,5,.32) 34%, rgba(5,5,5,.28) 66%, rgba(5,5,5,.78) 100%),
    linear-gradient(180deg, rgba(5,5,5,.22) 0%, rgba(5,5,5,.08) calc(100% - 30px), rgba(5,5,5,1) 100%) !important;
}

.homepage-video-layer::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 30px !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(5,5,5,0), #050505) !important;
  z-index: 2 !important;
}

.site-header-clean {
  position: relative !important;
  z-index: 5000 !important;
}

main,
.hero,
.feature-grid,
.cta-panel,
.site-footer {
  position: relative !important;
  z-index: 3 !important;
}

.site-nav-clean,
.site-mega-menu,
.site-mega-menu[open],
.site-mega-panel {
  z-index: 9000 !important;
}

@media (max-width: 1100px) and (min-width: 761px) {
  .homepage-video-layer {
    height: clamp(360px, 48vh, 600px) !important;
    max-height: 600px !important;
    opacity: .52 !important;
  }
}

@media (max-width: 760px), (prefers-reduced-motion: reduce) {
  .homepage-video-layer {
    display: none !important;
  }
}


/* v0.2.0.2.5 public fullscreen homepage video backdrop */
/* Fullscreen behavior intentionally overrides the earlier shaped/top-only video rules. */
body {
  isolation: isolate;
}

.bg {
  z-index: 0 !important;
}

@media (min-width: 761px) {
  .homepage-video-layer {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-height: none !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    z-index: 1 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    opacity: .42 !important;
    background: #050505 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: translateZ(0) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .homepage-video-layer .home-video {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    object-fit: cover !important;
    object-position: center center !important;
    filter: saturate(.95) contrast(1.06) brightness(.72) !important;
    transform: none !important;
  }

  .homepage-video-layer .home-video-overlay {
    position: absolute !important;
    inset: 0 !important;
    background:
      linear-gradient(90deg, rgba(5,5,5,.78) 0%, rgba(5,5,5,.30) 34%, rgba(5,5,5,.32) 66%, rgba(5,5,5,.78) 100%),
      linear-gradient(180deg, rgba(5,5,5,.28) 0%, rgba(5,5,5,.18) 45%, rgba(5,5,5,.86) 100%) !important;
  }

  .homepage-video-layer::after {
    content: none !important;
    display: none !important;
  }
}

.site-header-clean {
  position: relative !important;
  z-index: 5000 !important;
}

main,
.hero,
.feature-grid,
.cta-panel,
.site-footer {
  position: relative !important;
  z-index: 3 !important;
}

.site-nav-clean,
.site-mega-menu,
.site-mega-menu[open],
.site-mega-panel {
  z-index: 9000 !important;
}

@media (max-width: 760px) {
  .homepage-video-layer {
    display: none !important;
  }
}


/* v0.2.0.2.6 desktop menu cleanup */
.drawer-close {
  display: none !important;
}

@media (min-width: 761px) {
  .site-mega-panel {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(620px, calc(100vw - 32px)) !important;
  }

  .site-mega-cta {
    display: none !important;
  }
}

@media (max-width: 760px) {
  .drawer-close {
    display: grid !important;
  }
}


/* v0.2.0.2.7 public mobile drawer overlay fix */
@media (max-width: 760px) {
  .site-header-clean {
    z-index: 2147483000 !important;
  }

  .site-mega-menu.mobile-drawer-nav {
    position: static !important;
    z-index: 2147483001 !important;
  }

  .site-mega-menu.mobile-drawer-nav::before {
    z-index: 2147483002 !important;
    background: rgba(0, 0, 0, .58) !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .site-mega-menu.mobile-drawer-nav[open]::before {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .site-mega-menu.mobile-drawer-nav .site-mega-panel {
    z-index: 2147483003 !important;
    opacity: 1 !important;
    filter: none !important;
    backdrop-filter: none !important;
    background: #050505 !important;
    background-image: linear-gradient(180deg, rgba(10,10,12,.995), rgba(3,3,4,.995)) !important;
    color: var(--text) !important;
    border-radius: 0 !important;
    box-shadow: 24px 0 80px rgba(0,0,0,.70) !important;
  }

  .site-mega-menu.mobile-drawer-nav .site-mega-panel,
  .site-mega-menu.mobile-drawer-nav .site-mega-panel * {
    opacity: 1 !important;
  }

  .site-mega-menu.mobile-drawer-nav .site-mega-panel::after {
    display: none !important;
    content: none !important;
  }

  .site-mega-menu.mobile-drawer-nav .site-mega-cta {
    display: none !important;
  }

  .site-mega-menu.mobile-drawer-nav .drawer-close {
    display: grid !important;
    opacity: 1 !important;
  }
}

@media (min-width: 761px) {
  .site-mega-menu.mobile-drawer-nav::before {
    display: none !important;
    content: none !important;
  }

  .site-mega-panel {
    opacity: 1 !important;
  }

  .site-mega-cta {
    display: none !important;
  }
}


/* v0.2.7.3 public footer links restore / auto-year fix */
.site-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.site-footer > span:first-child {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.site-footer a {
  color: var(--muted);
}

.site-footer a:hover,
.site-footer a:focus-visible {
  color: var(--text);
}

@media (max-width: 760px) {
  .site-footer {
    justify-content: center;
    text-align: center;
  }
}


/* v0.2.7.4 public footer restore checkpoint */
.site-footer {
  min-width: 0;
}


/* v0.2.7.9 public fixed footer background / padding match */
/* Match the app fixed-footer feel while keeping public branding left and links right. */
:root {
  --public-fixed-footer-safe-space: 54px;
}

body {
  padding-bottom: var(--public-fixed-footer-safe-space) !important;
}

.site-footer {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 120 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  margin: 0 !important;
  padding: 8px 16px 8px !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: left !important;
  pointer-events: none !important;
  background: rgba(5, 5, 5, 0.8) !important;
}

.site-footer > * {
  pointer-events: auto !important;
}

.site-footer > span:first-child {
  margin-right: auto !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.site-footer a {
  color: var(--muted) !important;
  text-decoration: none !important;
}

.site-footer a:hover,
.site-footer a:focus-visible {
  color: var(--text) !important;
}

@media (max-width: 760px) {
  :root {
    --public-fixed-footer-safe-space: 70px;
  }

  .site-footer {
    justify-content: center !important;
    text-align: center !important;
    padding: 8px 16px 8px !important;
  }

  .site-footer > span:first-child {
    margin-right: 0 !important;
  }
}


/* v0.2.7.10 public fixed footer inner alignment restore */
/* Keep the full-width fixed footer background, but put text/links back in the original content lane. */
.site-footer {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  bottom: 0 !important;
  transform: translateX(-50%) !important;
  z-index: 120 !important;
  width: min(1180px, calc(100vw - 48px)) !important;
  max-width: min(1180px, calc(100vw - 48px)) !important;
  box-sizing: border-box !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  margin: 0 auto !important;
  padding: 8px 0 8px !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: left !important;
  pointer-events: none !important;
  background: transparent !important;
}

/* Full-width footer bar lives behind the centered footer contents. */
.site-footer::before {
  content: "" !important;
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 100% !important;
  min-height: 36px !important;
  background: rgba(5, 5, 5, 0.8) !important;
  z-index: -1 !important;
  pointer-events: none !important;
}

.site-footer > * {
  pointer-events: auto !important;
}

.site-footer > span:first-child {
  margin-right: auto !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.site-footer a {
  color: var(--muted) !important;
  text-decoration: none !important;
}

.site-footer a:hover,
.site-footer a:focus-visible {
  color: var(--text) !important;
}

@media (max-width: 760px) {
  .site-footer {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 8px 0 8px !important;
  }

  .site-footer > span:first-child {
    margin-right: 0 !important;
  }
}


/* v0.2.7.11 public footer full-width background / centered content fix */
/* Footer bar spans the full browser width. Text/links are padded back into the original content lane. */
.site-footer {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  transform: none !important;
  z-index: 120 !important;
  width: 100vw !important;
  max-width: none !important;
  box-sizing: border-box !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  margin: 0 !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  padding-left: max(16px, calc((100vw - 1180px) / 2 + 0px)) !important;
  padding-right: max(16px, calc((100vw - 1180px) / 2 + 0px)) !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: left !important;
  pointer-events: none !important;
  background: rgba(5, 5, 5, 0.8) !important;
}

/* Kill the previous pseudo-background method so it cannot hide behind the page. */
.site-footer::before {
  content: none !important;
  display: none !important;
}

.site-footer > * {
  pointer-events: auto !important;
}

.site-footer > span:first-child {
  margin-right: auto !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.site-footer a {
  color: var(--muted) !important;
  text-decoration: none !important;
}

.site-footer a:hover,
.site-footer a:focus-visible {
  color: var(--text) !important;
}

@media (max-width: 760px) {
  .site-footer {
    justify-content: center !important;
    text-align: center !important;
    padding: 8px 16px 8px !important;
  }

  .site-footer > span:first-child {
    margin-right: 0 !important;
  }
}


/* v0.2.9.1 public homepage video opacity control */
.homepage-video-layer {
  opacity: var(--home-video-opacity, .42) !important;
}


/* v0.2.9.2 homepage video opacity Nginx cache bypass */
.homepage-video-layer {
  transition: opacity .18s ease, filter .18s ease !important;
}


/* v0.2.9.3 homepage video opacity live apply hardening */
.homepage-video-layer {
  opacity: var(--home-video-opacity, .42) !important;
}


/* v0.3.3.3 whole-site visual redesign / public polish
   Design-only: no homepage video, menu, footer, upload, or app logic changed. */
:root {
  --om-red: #e50914;
  --om-red-soft: #ff4d58;
  --om-red-deep: #7f050b;
  --om-panel: rgba(16, 16, 22, .72);
  --om-border: rgba(255, 255, 255, .12);
  --om-radius-card: 28px;
  --om-radius-soft: 18px;
  --font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --font-display: "Space Grotesk", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html,
body {
  font-family: var(--font-body) !important;
  background:
    radial-gradient(circle at 12% -8%, rgba(229, 9, 20, .18), transparent 34%),
    radial-gradient(circle at 88% 10%, rgba(255, 77, 88, .10), transparent 27%),
    linear-gradient(180deg, #050506 0%, #070708 55%, #050506 100%) !important;
}

body::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 1 !important;
  background:
    linear-gradient(rgba(255,255,255,.016) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.014) 1px, transparent 1px) !important;
  background-size: 46px 46px !important;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.58), rgba(0,0,0,.04)) !important;
}

h1, h2, h3,
.hero-title,
.brand-title,
.logo-text {
  font-family: var(--font-display) !important;
  letter-spacing: -.04em !important;
}

.site-header-clean,
.public-header,
header {
  backdrop-filter: blur(18px) saturate(130%) !important;
  background: linear-gradient(180deg, rgba(5,5,7,.80), rgba(5,5,7,.44)) !important;
  border-bottom: 1px solid rgba(255,255,255,.09) !important;
}

.hero,
.feature-grid,
.cta-panel,
.card,
.feature-card,
.public-card {
  position: relative !important;
  overflow: hidden !important;
}

.feature-grid > *,
.cta-panel,
.hero-card,
.feature-card,
.public-card,
.card {
  border-radius: var(--om-radius-card) !important;
  border: 1px solid var(--om-border) !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,.076), rgba(255,255,255,.026) 42%, rgba(229,9,20,.048)),
    var(--om-panel) !important;
  box-shadow:
    0 26px 72px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.09) !important;
  backdrop-filter: blur(18px) saturate(128%) !important;
}

.feature-grid > *::before,
.cta-panel::before,
.hero-card::before,
.feature-card::before,
.public-card::before,
.card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(229, 9, 20, .20), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,.085), transparent 20%, transparent 80%, rgba(255,255,255,.035)) !important;
  opacity: .72 !important;
}

.feature-grid > * > *,
.cta-panel > *,
.hero-card > *,
.feature-card > *,
.public-card > *,
.card > * {
  position: relative !important;
  z-index: 2 !important;
}

a.button,
.button,
button,
.nav-button,
.cta-button,
.login-button {
  border-radius: 999px !important;
  min-height: 42px !important;
  padding: 10px 18px !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  background:
    linear-gradient(135deg, #ff313d 0%, #e50914 45%, #8f060d 100%) !important;
  color: #fff !important;
  box-shadow: 0 15px 42px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.04) inset !important;
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease !important;
}

a.button:hover,
.button:hover,
button:hover,
.nav-button:hover,
.cta-button:hover,
.login-button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 18px 48px rgba(0,0,0,.42), 0 0 0 3px rgba(229,9,20,.14) !important;
}

nav a,
.site-nav a,
.menu a {
  border-radius: 999px !important;
  transition: background .16s ease, color .16s ease, transform .16s ease !important;
}

nav a:hover,
.site-nav a:hover,
.menu a:hover {
  background: rgba(229,9,20,.10) !important;
}

.homepage-video-layer {
  filter: saturate(1.08) contrast(1.04) !important;
}

.site-footer {
  border-top: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: 0 -18px 42px rgba(0,0,0,.30) !important;
}

@media (max-width: 760px) {
  .feature-grid > *,
  .cta-panel,
  .hero-card,
  .feature-card,
  .public-card,
  .card {
    border-radius: 22px !important;
  }

  a.button,
  .button,
  button,
  .nav-button,
  .cta-button,
  .login-button {
    min-height: 44px !important;
  }
}


/* v0.3.3.4 public header full-width transparent / spacing recovery */
/* Header background spans full browser width; logo/menu stay in the normal content lane. */
.site-header.site-header-clean {
  position: relative !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(150px, auto) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(14px, 2vw, 28px) !important;
  padding-top: clamp(14px, 1.8vw, 22px) !important;
  padding-bottom: clamp(14px, 1.8vw, 22px) !important;
  padding-left: max(24px, calc((100vw - 1180px) / 2)) !important;
  padding-right: max(24px, calc((100vw - 1180px) / 2)) !important;
  border-radius: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.075) !important;
  background:
    linear-gradient(180deg, rgba(5,5,7,.42), rgba(5,5,7,.22)) !important;
  box-shadow: none !important;
  backdrop-filter: blur(16px) saturate(126%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(126%) !important;
}

/* Prevent redesign CSS from making the header/menu look like a boxed card. */
.site-header.site-header-clean::before,
.site-header.site-header-clean::after {
  content: none !important;
  display: none !important;
}

.site-header.site-header-clean .brand,
.site-header.site-header-clean .site-nav-clean,
.site-header.site-header-clean nav {
  position: relative !important;
  z-index: 20 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.site-header.site-header-clean .site-nav-clean {
  justify-self: end !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(10px, 1.35vw, 18px) !important;
  min-width: 0 !important;
}

/* Keep menu controls clean and spaced without stretching/boxing them. */
.site-header.site-header-clean .site-nav-clean > a,
.site-header.site-header-clean .site-nav-clean summary,
.site-header.site-header-clean .site-nav-clean .nav-home {
  margin: 0 !important;
}

/* Safer page rhythm: the last visual pass made some panels/cards sit too close. */
main {
  padding-top: clamp(28px, 5vw, 72px) !important;
  padding-bottom: clamp(86px, 8vw, 132px) !important;
}

main > * + * {
  margin-top: clamp(28px, 4vw, 54px) !important;
}

.hero {
  margin-bottom: clamp(34px, 5vw, 68px) !important;
}

.hero + .notice,
.hero + .panel,
.notice + .feature-grid,
.panel + .feature-grid,
.feature-grid + .cta-panel,
.feature-grid + .panel,
.panel + .panel,
.cta-panel + .feature-grid {
  margin-top: clamp(30px, 4vw, 58px) !important;
}

/* Larger gaps and safer spacing for public cards/grids. */
.feature-grid {
  gap: clamp(24px, 3.4vw, 40px) !important;
  margin-top: clamp(28px, 4vw, 54px) !important;
  margin-bottom: clamp(42px, 6vw, 82px) !important;
  overflow: visible !important;
}

.feature-grid > *,
.feature-card,
.panel,
.notice,
.cta-panel,
.hero-card,
.public-card,
.card {
  padding: clamp(24px, 3vw, 36px) !important;
  min-height: auto !important;
}

.notice {
  margin-bottom: clamp(26px, 4vw, 50px) !important;
}

.cta-panel {
  margin-top: clamp(36px, 5vw, 74px) !important;
  margin-bottom: clamp(34px, 5vw, 70px) !important;
}

/* Keep the dropdown panel from being clipped after the header is made full-width. */
.site-mega-menu,
.mobile-drawer-nav {
  position: relative !important;
  z-index: 200 !important;
}

.site-mega-panel {
  z-index: 300 !important;
}

/* Tablet/mobile: full-width transparent header, but with safe inner padding and no card smash. */
@media (max-width: 900px) {
  .site-header.site-header-clean {
    grid-template-columns: minmax(0, 1fr) auto !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    gap: 12px !important;
  }

  .site-header.site-header-clean .site-nav-clean {
    gap: 10px !important;
  }

  main {
    padding-top: clamp(22px, 6vw, 44px) !important;
  }

  .feature-grid {
    gap: 24px !important;
  }
}

@media (max-width: 760px) {
  .site-header.site-header-clean {
    background: linear-gradient(180deg, rgba(5,5,7,.54), rgba(5,5,7,.30)) !important;
  }

  main > * + * {
    margin-top: 28px !important;
  }

  .feature-grid {
    gap: 22px !important;
    margin-top: 28px !important;
    margin-bottom: 46px !important;
  }

  .feature-grid > *,
  .feature-card,
  .panel,
  .notice,
  .cta-panel,
  .hero-card,
  .public-card,
  .card {
    padding: 22px !important;
  }
}


/* v0.3.6.1 background paint stability / fast-scroll white flash fix
   CSS-only: no public menu, video, footer, route, or app behavior changed. */

/* Real dark base layer so fast scrolling never exposes browser white. */
html {
  background-color: #050506 !important;
  background: #050506 !important;
  min-height: 100% !important;
  overscroll-behavior: none !important;
}

body {
  background-color: #050506 !important;
  background:
    radial-gradient(circle at 12% -8%, rgba(229, 9, 20, .18), transparent 34%),
    radial-gradient(circle at 88% 10%, rgba(255, 77, 88, .10), transparent 27%),
    linear-gradient(180deg, #050506 0%, #070708 55%, #050506 100%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
  min-height: 100vh !important;
  overflow-x: hidden !important;
}

/* Decorative overlay stays above the real dark base, not behind the page. */
body::before {
  z-index: 0 !important;
  background-color: transparent !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

/* Keep page content above the decorative background. */
.site-header-clean,
main,
.hero,
.feature-grid,
.cta-panel,
.site-footer,
.public-card,
.card,
.panel,
.notice {
  position: relative !important;
  z-index: 2 !important;
}

/* Homepage video remains behind content but above the dark base. */
.homepage-video-layer {
  z-index: 1 !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
}

/* Fixed/translucent footer and header keep their own dark paint while scrolling. */
.site-footer,
.site-header-clean {
  background-color: rgba(5, 5, 7, .52) !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
}

/* Mobile browsers can stutter on fixed background painting. */
@media (max-width: 900px) {
  body {
    background-attachment: scroll !important;
    background-color: #050506 !important;
  }
}


/* v0.3.6.3 menu top-layer / public footer restore fix
   CSS-only: no public menu action, homepage video, route, upload, or app behavior changed. */

/* Public header/menu must be above hero text, cards, and page panels. */
.site-header-clean,
.site-header,
.public-header,
body > header {
  position: relative !important;
  z-index: 2000 !important;
  isolation: isolate !important;
}

/* Open Explore/menu panels must sit above the hero and card content. */
.site-mega-menu,
.site-mega-panel,
.site-nav-clean details[open],
.site-nav-clean details[open] > *,
.site-nav-clean details[open] summary + *,
.public-header details[open],
.public-header details[open] > *,
.public-header details[open] summary + *,
.dropdown-panel,
.dropdown-card,
.menu-panel,
.header-dropdown,
.mobile-drawer,
.nav-drawer,
.app-drawer {
  position: absolute !important;
  z-index: 3200 !important;
  isolation: isolate !important;
}

/* Keep public page content under the open menu. */
main,
.hero,
.hero *,
.feature-grid,
.cta-panel,
.public-card,
.card,
.panel,
.notice {
  position: relative !important;
  z-index: 2 !important;
}

/* Restore public fixed footer: full browser-width background, left branding, right links. */
.site-footer {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 1200 !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  padding: 8px max(24px, calc((100vw - 1180px) / 2)) !important;
  color: var(--soft) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  background: rgba(5, 5, 5, 0.88) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: 0 -18px 42px rgba(0,0,0,.30) !important;
  transform: translateZ(0) !important;
}

/* Keep footer text in the same two original spots. */
.site-footer > *:first-child {
  margin-right: auto !important;
  text-align: left !important;
}

.site-footer > *:last-child,
.site-footer nav,
.site-footer .footer-links {
  margin-left: auto !important;
  text-align: right !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
}

/* Leave room for the fixed footer. */
body {
  padding-bottom: 58px !important;
}

/* Public open menu should beat footer and all hero/card layers. */
.site-mega-panel,
.site-mega-menu,
.site-nav-clean details[open],
.dropdown-panel,
.dropdown-card,
.menu-panel,
.header-dropdown {
  z-index: 3400 !important;
}

@media (max-width: 760px) {
  body {
    padding-bottom: 76px !important;
  }

  .site-footer {
    justify-content: center !important;
    padding: 9px 16px !important;
    font-size: 12px !important;
    text-align: center !important;
  }

  .site-footer > *:first-child,
  .site-footer > *:last-child,
  .site-footer nav,
  .site-footer .footer-links {
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
    justify-content: center !important;
  }
}


/* v0.3.6.4 menu button position / true public dropdown layer fix
   CSS-only: no public menu action, homepage video, footer action, route, upload, or app behavior changed. */

/* Public header and nav stay above content. */
.site-header.site-header-clean,
.site-header-clean,
.site-header,
.public-header,
.site-nav-clean {
  position: relative !important;
  z-index: 5000 !important;
  isolation: isolate !important;
  overflow: visible !important;
}

/* IMPORTANT: the details/summary button stays in the normal nav flex row.
   This fixes Home / Explore / Open App overlap caused by the previous broad absolute selector. */
.site-mega-menu,
.site-mega-menu.mobile-drawer-nav,
.site-mega-menu[open],
.site-mega-menu.mobile-drawer-nav[open] {
  position: relative !important;
  z-index: 5010 !important;
  inset: auto !important;
  transform: none !important;
  overflow: visible !important;
}

.site-mega-menu > summary,
.site-mega-menu[open] > summary,
.site-mega-menu > summary.om-toggle-button,
.site-mega-menu[open] > summary.om-toggle-button {
  position: relative !important;
  z-index: 5020 !important;
  inset: auto !important;
  transform: none !important;
  display: inline-flex !important;
  margin: 0 !important;
}

/* Only the actual panel floats. */
.site-mega-panel,
.site-mega-menu[open] > .site-mega-panel,
.site-mega-menu.mobile-drawer-nav[open] > .site-mega-panel {
  position: absolute !important;
  top: calc(100% + 14px) !important;
  right: 0 !important;
  left: auto !important;
  z-index: 2147483000 !important;
  isolation: isolate !important;
  width: min(620px, calc(100vw - 32px)) !important;
  max-width: min(620px, calc(100vw - 32px)) !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  overflow: visible !important;
}

/* Prevent old broad absolute menu rules from affecting direct details children other than the panel. */
.site-nav-clean details[open],
.site-nav-clean details[open] > summary,
.site-nav-clean details[open] .om-toggle-button,
.public-header details[open],
.public-header details[open] > summary,
.public-header details[open] .om-toggle-button {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
}

/* Keep hero/cards under the open public menu. */
main,
.hero,
.hero-copy,
.hero-card,
.feature-grid,
.cta-panel,
.public-card,
.card,
.panel,
.notice {
  position: relative !important;
  z-index: 1 !important;
}

/* Footer stays fixed but below menu panels. */
.site-footer {
  z-index: 1200 !important;
}

/* Keep the public nav clean and spaced. */
.site-nav-clean {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
}

.site-nav-clean .nav-home,
.site-nav-clean .header-cta,
.site-mega-menu summary {
  flex: 0 0 auto !important;
}

@media (max-width: 760px) {
  .site-mega-panel,
  .site-mega-menu[open] > .site-mega-panel,
  .site-mega-menu.mobile-drawer-nav[open] > .site-mega-panel {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    width: min(86vw, 360px) !important;
    max-width: min(86vw, 360px) !important;
    height: 100vh !important;
    max-height: 100vh !important;
    grid-template-columns: 1fr !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    border-radius: 0 !important;
  }
}


/* v0.3.7.2 Public Back-to-Top only */
.om-public-back-top-btn{position:fixed;right:18px;bottom:72px;z-index:10010;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:0;border-radius:999px;background:#050505;color:#fff;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.22);opacity:.22;transition:opacity .16s ease,transform .16s ease,background .16s ease,box-shadow .16s ease;text-decoration:none;pointer-events:auto}
.om-public-back-top-btn:hover,.om-public-back-top-btn:focus{opacity:1;background:#2271b1;color:#fff;outline:none;transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.28)}
.om-public-back-top-btn svg{display:block;width:16px;height:16px;overflow:visible;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;fill:none;flex:0 0 auto}

@media (max-width:782px){.om-public-back-top-btn{right:10px;bottom:84px;width:34px;height:34px;opacity:.34}.om-public-back-top-btn svg{width:14px;height:14px}}
@media (max-width:480px){.om-public-back-top-btn{right:8px;width:32px;height:32px}}


/* v0.3.7.2.1 public Back-to-Top site-matched style fix */
.om-public-back-top-btn {
  border: 1px solid rgba(255, 77, 88, .34) !important;
  background:
    radial-gradient(circle at 30% 18%, rgba(255, 77, 88, .26), transparent 46%),
    linear-gradient(145deg, rgba(20, 20, 26, .74), rgba(7, 7, 10, .88)) !important;
  color: #fff !important;
  box-shadow:
    0 16px 38px rgba(0,0,0,.42),
    0 0 0 1px rgba(255,255,255,.045) inset,
    0 0 22px rgba(229, 9, 20, .12) !important;
  opacity: .34 !important;
  backdrop-filter: blur(12px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(12px) saturate(130%) !important;
}

.om-public-back-top-btn:hover,
.om-public-back-top-btn:focus {
  opacity: 1 !important;
  background:
    radial-gradient(circle at 30% 18%, rgba(255, 122, 132, .34), transparent 46%),
    linear-gradient(145deg, rgba(229, 9, 20, .92), rgba(95, 5, 10, .96)) !important;
  border-color: rgba(255, 140, 150, .58) !important;
  color: #fff !important;
  outline: none !important;
  transform: translateY(-2px) !important;
  box-shadow:
    0 18px 44px rgba(0,0,0,.48),
    0 0 0 3px rgba(229,9,20,.14),
    0 0 28px rgba(229, 9, 20, .24) !important;
}


/* v0.3.8.1.8 Public Back-to-Top Scroll Threshold Visibility Fix
   Public-only visual/JS behavior: hide the bottom-right Back-to-Top button until visitors scroll down enough. */
.om-public-back-top-btn {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(10px) scale(.96) !important;
  pointer-events: none !important;
}

.om-public-back-top-btn.is-scroll-needed {
  opacity: .34 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
  pointer-events: auto !important;
}

.om-public-back-top-btn.is-scroll-needed:hover,
.om-public-back-top-btn.is-scroll-needed:focus {
  opacity: 1 !important;
  transform: translateY(-2px) scale(1) !important;
}


/* v0.5.3.26 Public header Beta pill side patch */
.brand {
  overflow: visible !important;
}

.brand-beta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 4px 10px 4px 11px;
  margin-left: 2px;
  border: 2px solid rgba(134, 239, 172, .78);
  border-radius: 999px;
  background: rgba(22, 163, 74, .16);
  color: #bbf7d0;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: 0 0 0 1px rgba(5, 150, 105, .08) inset;
  flex: 0 0 auto;
}

@media (max-width: 768px) {
  .brand-beta {
    min-height: 22px;
    padding: 4px 9px 4px 10px;
    font-size: 10px;
  }
}


/* v0.5.3.28 Public homepage layout rollback safety
   Keeps the restored red/white public layout from v0.5.3.26.
   No sticky/header reveal or hero reposition rules are added here. */


/* v0.5.3.30 Public logo scale visibility fix
   Public_html-only: removes older fixed max-height caps so Branding > Main logo display scale visibly affects the public header logo. */
.brand {
  overflow: visible !important;
  max-width: min(100%, 460px) !important;
}

.brand-logo {
  width: auto !important;
  height: auto !important;
  max-width: min(var(--brand-logo-max, 256px), 42vw) !important;
  max-height: var(--brand-logo-height, 30px) !important;
  object-fit: contain !important;
}

.brand-text {
  font-size: clamp(17px, calc(var(--brand-logo-height, 30px) * .72), 30px) !important;
  max-width: min(320px, 30vw) !important;
}

@media (max-width: 980px) {
  .brand-logo {
    max-width: min(var(--brand-logo-tablet-max, 156px), 68vw) !important;
    max-height: var(--brand-logo-tablet-height, 28px) !important;
  }

  .brand-text {
    font-size: clamp(16px, calc(var(--brand-logo-tablet-height, 28px) * .72), 26px) !important;
    max-width: 68vw !important;
  }
}

@media (max-width: 640px) {
  .brand-logo {
    max-width: min(var(--brand-logo-mobile-max, 132px), 62vw) !important;
    max-height: var(--brand-logo-mobile-height, 26px) !important;
  }

  .brand-text {
    font-size: clamp(15px, calc(var(--brand-logo-mobile-height, 26px) * .72), 24px) !important;
    max-width: 58vw !important;
  }
}


/* v0.5.3.33 Public homepage content lane / sticky header safety fix
   Public_html-only: keeps the restored red/white design, Beta pill, video background, dropdown menu, and public logo scale while preventing the homepage content from drifting off-screen. */
html,
body {
  overflow-x: hidden !important;
}

body {
  scroll-padding-top: clamp(82px, 9vw, 104px) !important;
}

.site-header.site-header-clean {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  z-index: 100000 !important;
  box-sizing: border-box !important;
  padding-left: max(24px, calc((100vw - 1180px) / 2)) !important;
  padding-right: max(24px, calc((100vw - 1180px) / 2)) !important;
  background: linear-gradient(180deg, rgba(5,5,7,.88), rgba(5,5,7,.64)) !important;
  backdrop-filter: blur(18px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(130%) !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
}

main {
  width: min(1180px, calc(100% - clamp(24px, 5vw, 72px))) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  padding-top: clamp(42px, 7vw, 84px) !important;
  overflow: visible !important;
}

.hero {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(280px, .88fr) !important;
  gap: clamp(24px, 5vw, 56px) !important;
  align-items: center !important;
  overflow: visible !important;
}

.hero-copy,
.hero-card {
  min-width: 0 !important;
  transform: none !important;
}

.hero-copy {
  justify-self: stretch !important;
  max-width: 100% !important;
}

.hero-copy h1,
.hero h1 {
  max-width: 800px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.hero-copy .lead,
.lead {
  max-width: 720px !important;
}

.hero-card {
  justify-self: end !important;
  width: min(100%, 460px) !important;
  max-width: 460px !important;
}

.feature-grid,
.cta-panel,
.notice,
.panel,
.public-card,
.card {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.site-mega-menu,
.site-mega-panel,
.mobile-drawer-nav {
  z-index: 100010 !important;
}

@media (max-width: 980px) {
  .site-header.site-header-clean {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  main {
    width: min(100% - 28px, 1180px) !important;
    padding-top: clamp(32px, 7vw, 58px) !important;
  }

  .hero {
    grid-template-columns: 1fr !important;
    gap: clamp(22px, 5vw, 38px) !important;
  }

  .hero-card {
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 680px !important;
  }
}

@media (max-width: 760px) {
  .site-header.site-header-clean {
    position: sticky !important;
    top: 0 !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  main {
    width: min(100% - 24px, 1180px) !important;
    padding-top: 30px !important;
  }
}


/* v0.5.3.34 Public fixed header always-visible correction
   Public_html-only: keeps the main-site header visible while scrolling on every public page. */
:root {
  --om-public-fixed-header-space: 92px;
}

html {
  scroll-padding-top: var(--om-public-fixed-header-space) !important;
}

body {
  padding-top: var(--om-public-fixed-header-space) !important;
}

.site-header.site-header-clean {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 84px !important;
  margin: 0 !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
  padding-left: max(24px, calc((100vw - 1180px) / 2)) !important;
  padding-right: max(24px, calc((100vw - 1180px) / 2)) !important;
  display: grid !important;
  grid-template-columns: minmax(150px, auto) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 2147482500 !important;
  background:
    linear-gradient(180deg, rgba(5, 5, 7, .96), rgba(5, 5, 7, .86)) !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 12px 42px rgba(0,0,0,.36) !important;
  backdrop-filter: blur(18px) saturate(135%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(135%) !important;
}

main {
  padding-top: clamp(34px, 5vw, 64px) !important;
}

.site-mega-menu,
.site-mega-panel,
.site-nav-clean {
  z-index: 2147482600 !important;
}

@media (max-width: 980px) {
  :root {
    --om-public-fixed-header-space: 112px;
  }

  .site-header.site-header-clean {
    min-height: 104px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }
}

@media (max-width: 760px) {
  :root {
    --om-public-fixed-header-space: 78px;
  }

  .site-header.site-header-clean {
    min-height: 72px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    padding: 14px !important;
  }

  main {
    padding-top: 30px !important;
  }
}


/* v0.5.3.35 Public homepage customer-ready content organization
   Public_html-only: organizes the main landing page, preserves fixed header, video background, menu, Beta pill, and public branding settings. */
:root {
  --om-home-card-bg: rgba(18, 18, 22, .84);
  --om-home-card-bg-strong: rgba(22, 18, 24, .92);
  --om-home-gap: clamp(18px, 3vw, 28px);
}

body {
  overflow-x: hidden !important;
}

main {
  width: min(1180px, calc(100% - clamp(24px, 5vw, 72px))) !important;
  margin-inline: auto !important;
  display: grid !important;
  gap: clamp(34px, 5vw, 58px) !important;
}

.hero {
  min-height: clamp(520px, calc(100svh - var(--om-public-fixed-header-space, 92px) - 80px), 700px) !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 430px) !important;
  align-items: center !important;
  gap: clamp(30px, 6vw, 78px) !important;
}

.hero-copy {
  min-width: 0 !important;
  max-width: 780px !important;
}

.hero-copy h1,
.hero h1 {
  max-width: 780px !important;
  margin: 0 0 20px !important;
  font-size: clamp(46px, 6vw, 78px) !important;
  line-height: .96 !important;
  letter-spacing: -.065em !important;
  text-wrap: balance;
}

.hero-copy .lead,
.lead {
  max-width: 680px !important;
  font-size: clamp(17px, 1.8vw, 22px) !important;
  line-height: 1.55 !important;
}

.hero-card {
  align-self: center !important;
  justify-self: end !important;
  width: min(100%, 430px) !important;
  max-width: 430px !important;
  padding: clamp(26px, 4vw, 38px) !important;
  background:
    radial-gradient(circle at top left, rgba(229, 9, 20, .10), transparent 42%),
    var(--om-home-card-bg-strong) !important;
}

.home-overview-panel,
.home-split-panel,
.cta-panel,
.feature-card {
  border: 1px solid var(--border) !important;
  background:
    radial-gradient(circle at top left, rgba(229, 9, 20, .08), transparent 42%),
    var(--om-home-card-bg) !important;
  box-shadow: var(--shadow) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

.home-overview-panel {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
  gap: var(--om-home-gap) !important;
  align-items: start !important;
  padding: clamp(26px, 5vw, 46px) !important;
  border-radius: 30px !important;
}

.home-overview-copy h2,
.home-split-panel h2,
.cta-panel h2 {
  margin: 0 0 12px !important;
  font-size: clamp(28px, 4vw, 46px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
}

.home-overview-copy p,
.home-split-panel p,
.home-step-list p,
.feature-card p,
.cta-panel p {
  color: var(--muted) !important;
  line-height: 1.58 !important;
}

.home-step-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

.home-step-list article {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 6px 14px !important;
  align-items: start !important;
  padding: 16px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.045) !important;
}

.home-step-list article span {
  grid-row: span 2 !important;
  min-width: 40px !important;
  min-height: 40px !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  color: #fecaca !important;
  background: rgba(229, 9, 20, .16) !important;
  border: 1px solid rgba(229, 9, 20, .28) !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
}

.home-step-list strong {
  color: #fff !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
}

.home-step-list p {
  margin: 0 !important;
}

.home-split-panel {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: var(--om-home-gap) !important;
  padding: clamp(24px, 4vw, 34px) !important;
  border-radius: 30px !important;
}

.home-split-panel article {
  min-width: 0 !important;
  padding: clamp(18px, 3vw, 26px) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.04) !important;
}

.feature-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--om-home-gap) !important;
  margin: 0 !important;
}

.feature-card {
  min-height: 190px !important;
  padding: clamp(22px, 3vw, 30px) !important;
  border-radius: 26px !important;
}

.feature-card h2 {
  margin: 0 0 10px !important;
  font-size: clamp(20px, 2vw, 25px) !important;
  line-height: 1.18 !important;
  text-wrap: balance;
}

.cta-panel {
  margin: 0 !important;
  padding: clamp(30px, 5vw, 50px) !important;
  border-radius: 32px !important;
}

.cta-panel p {
  max-width: 680px !important;
}

.site-footer {
  margin-top: clamp(22px, 4vw, 44px) !important;
}

@media (max-width: 980px) {
  main {
    width: min(100% - 28px, 1180px) !important;
    gap: clamp(26px, 6vw, 44px) !important;
  }

  .hero,
  .home-overview-panel,
  .home-split-panel,
  .feature-grid {
    grid-template-columns: 1fr !important;
  }

  .hero {
    min-height: auto !important;
    padding-top: clamp(28px, 7vw, 56px) !important;
  }

  .hero-card {
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 680px !important;
  }

  .feature-card {
    min-height: 0 !important;
  }
}

@media (max-width: 640px) {
  main {
    width: min(100% - 24px, 1180px) !important;
  }

  .hero-copy h1,
  .hero h1 {
    font-size: clamp(38px, 13vw, 58px) !important;
  }

  .home-overview-panel,
  .home-split-panel,
  .cta-panel {
    border-radius: 24px !important;
  }

  .home-step-list article {
    grid-template-columns: 1fr !important;
  }
}


/* v0.5.3.37 Public homepage background video smooth playback patch */
.homepage-video-layer {
  opacity: var(--home-video-opacity, .42) !important;
  will-change: opacity, transform !important;
  contain: layout paint style !important;
  backface-visibility: hidden !important;
  transform: translate3d(0, 0, 0) !important;
}

.homepage-video-layer .home-video {
  filter: brightness(.76) !important;
  transform: translate3d(0, 0, 0) scale(1.002) !important;
  will-change: transform !important;
  backface-visibility: hidden !important;
  image-rendering: auto !important;
}

.homepage-video-layer .home-video-overlay {
  will-change: auto !important;
  transform: translateZ(0) !important;
}

.homepage-video-layer.is-video-frame-callback-ready .home-video {
  transform: translate3d(0, 0, 0) scale(1.001) !important;
}

@media (prefers-reduced-motion: reduce) {
  .homepage-video-layer .home-video {
    transform: none !important;
  }
}

/* v0.5.3.38 Main public_html header Branding live wire
   Reads the Omatic Minds Branding logo/avatar/pill values from public_html/API cache or the app DB.
   Firefox safety: avoid relative-image collapse and keep avatar + logo visible inside the real public_html header. */
.site-header.site-header-clean .brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: clamp(8px, .9vw, 12px) !important;
  overflow: visible !important;
  contain: none !important;
  min-width: 0 !important;
  max-width: min(100%, 560px) !important;
}

.site-header.site-header-clean .brand-avatar,
.site-header.site-header-clean .brand-logo {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  object-fit: contain !important;
  transform: translateZ(0);
  backface-visibility: hidden;
}

.site-header.site-header-clean .brand-avatar {
  width: clamp(28px, calc(var(--brand-logo-height, 30px) * 1.15), 44px) !important;
  height: clamp(28px, calc(var(--brand-logo-height, 30px) * 1.15), 44px) !important;
  min-width: clamp(28px, calc(var(--brand-logo-height, 30px) * 1.15), 44px) !important;
  flex: 0 0 auto !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.08) !important;
}

.site-header.site-header-clean .brand-logo {
  width: auto !important;
  height: auto !important;
  min-width: 1px !important;
  max-width: min(var(--brand-logo-max, 256px), 42vw) !important;
  max-height: var(--brand-logo-height, 30px) !important;
  flex: 0 1 auto !important;
}

.site-header.site-header-clean .brand-beta {
  flex: 0 0 auto !important;
  max-width: min(160px, 22vw) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

@media (max-width: 980px) {
  .site-header.site-header-clean .brand-avatar {
    width: clamp(26px, calc(var(--brand-logo-tablet-height, 28px) * 1.12), 40px) !important;
    height: clamp(26px, calc(var(--brand-logo-tablet-height, 28px) * 1.12), 40px) !important;
    min-width: clamp(26px, calc(var(--brand-logo-tablet-height, 28px) * 1.12), 40px) !important;
  }

  .site-header.site-header-clean .brand-logo {
    max-width: min(var(--brand-logo-tablet-max, 156px), 58vw) !important;
    max-height: var(--brand-logo-tablet-height, 28px) !important;
  }
}

@media (max-width: 620px) {
  .site-header.site-header-clean .brand {
    max-width: min(100%, 72vw) !important;
    gap: 7px !important;
  }

  .site-header.site-header-clean .brand-avatar {
    width: clamp(24px, calc(var(--brand-logo-mobile-height, 26px) * 1.08), 36px) !important;
    height: clamp(24px, calc(var(--brand-logo-mobile-height, 26px) * 1.08), 36px) !important;
    min-width: clamp(24px, calc(var(--brand-logo-mobile-height, 26px) * 1.08), 36px) !important;
  }

  .site-header.site-header-clean .brand-logo {
    max-width: min(var(--brand-logo-mobile-max, 132px), 50vw) !important;
    max-height: var(--brand-logo-mobile-height, 26px) !important;
  }

  .site-header.site-header-clean .brand-beta {
    max-width: 74px !important;
  }
}

/* v0.5.3.39 public pricing page mirrors Omatic Minds app plan cards */
.public-pricing-hero {
  margin-bottom: clamp(28px, 4vw, 46px);
}

.public-pricing-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(18px, 3vw, 34px);
  margin-bottom: clamp(20px, 3vw, 28px);
}

.public-pricing-intro h2 {
  margin: 0 0 8px;
  letter-spacing: -.035em;
}

.public-pricing-intro p {
  max-width: 760px;
  margin: 0;
}

.billing-plan-toggle-wrap,
.public-pricing-toggle-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 16px 0 clamp(24px, 3vw, 38px);
}

.billing-plan-toggle {
  display: inline-flex;
  align-items: center;
  padding: 4px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.13);
  box-shadow: inset 0 1px 2px rgba(0,0,0,.28), 0 16px 44px rgba(0,0,0,.20);
}

.billing-plan-toggle-button {
  appearance: none;
  border: 0;
  border-radius: 999px;
  min-height: 42px;
  padding: 9px 24px;
  color: rgba(255,255,255,.76);
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  line-height: 1;
}

.billing-plan-toggle-button.is-active {
  background: linear-gradient(135deg, rgba(255,255,255,.24), rgba(255,255,255,.13));
  color: #fff;
  box-shadow: 0 8px 24px rgba(0,0,0,.24);
}

.billing-plan-compare-grid,
.public-pricing-plan-grid {
  width: 100%;
  max-width: min(1500px, calc(100vw - 72px));
  margin: clamp(24px, 3vw, 38px) auto clamp(46px, 6vw, 76px);
  display: grid;
  grid-template-columns: repeat(4, minmax(250px, 1fr));
  gap: clamp(24px, 2.5vw, 36px);
  align-items: stretch;
}

.billing-plan-card,
.public-pricing-plan-card {
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: clamp(28px, 2.8vw, 40px);
  border-radius: 28px;
  overflow: hidden;
}

.public-pricing-plan-card.is-paid-plan {
  border-color: rgba(241, 194, 50, .48);
  background:
    radial-gradient(circle at 88% 0%, rgba(241, 194, 50, .10), transparent 30%),
    rgba(17, 24, 39, .88);
}

.public-pricing-plan-card.is-free-plan {
  border-color: rgba(148, 163, 184, .20);
}

.billing-plan-card-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 0;
}

.billing-plan-card-topline h2 {
  margin: 0;
  font-size: clamp(1.45rem, 2vw, 2rem);
  letter-spacing: -.04em;
  line-height: 1.06;
}

.billing-plan-discount-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 13px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(255, 230, 120, .96), rgba(223, 166, 27, .96));
  color: #211500;
  font-weight: 950;
  font-size: .78rem;
  white-space: nowrap;
  box-shadow: 0 14px 26px rgba(0,0,0,.22);
}

.billing-plan-discount-badge[hidden],
.public-pricing-plan-card [data-public-annual-discount-badge][hidden],
.public-pricing-plan-card [data-public-plan-compare-price][hidden],
.public-pricing-plan-card [data-public-plan-savings][hidden] {
  display: none !important;
}

.billing-plan-price-row {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  margin: 20px 0 10px;
}

.billing-plan-price-row strong {
  font-size: clamp(1.75rem, 2.7vw, 2.45rem);
  line-height: 1;
  letter-spacing: -.035em;
  color: #fff;
}

.billing-plan-price-row del {
  color: rgba(255,255,255,.52);
  font-size: .78rem;
  line-height: 1.1;
}

.billing-plan-price-row span {
  color: rgba(255,255,255,.74);
  font-size: .85rem;
  line-height: 1.15;
}

.billing-plan-free-badge,
.billing-plan-available-badge {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .02em;
  margin: 2px 0 14px;
}

.billing-plan-free-badge {
  color: #dbeafe;
  background: rgba(59, 130, 246, .14);
  border: 1px solid rgba(96, 165, 250, .24);
}

.billing-plan-available-badge {
  color: #fef3c7;
  background: rgba(245, 158, 11, .14);
  border: 1px solid rgba(245, 158, 11, .24);
}

.billing-plan-description {
  margin: 4px 0 18px;
  color: var(--muted);
}

.billing-plan-value-box {
  display: grid;
  gap: 6px;
  margin: 0 0 18px;
  padding: 13px 15px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 226, 116, .26), rgba(255, 194, 36, .18));
  border: 1px solid rgba(255, 220, 102, .4);
  color: rgba(255,255,255,.92);
}

[data-public-pricing-grid][data-current-interval="monthly"] .billing-plan-annual-value-box,
.public-pricing-plan-card.is-viewing-monthly .billing-plan-annual-value-box,
.public-pricing-plan-card:not(.is-viewing-annual) .billing-plan-annual-value-box,
.billing-plan-annual-value-box[hidden],
[data-public-plan-value-box][hidden],
[data-public-plan-value-box][aria-hidden="true"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-width: 0 !important;
  overflow: hidden !important;
}

[data-public-pricing-grid][data-current-interval="annual"] .public-pricing-plan-card.is-viewing-annual .billing-plan-annual-value-box:not([hidden]),
[data-public-pricing-grid][data-current-interval="annual"] .public-pricing-plan-card.is-viewing-annual [data-public-plan-value-box]:not([hidden]) {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.membership-limit-grid,
.billing-limit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0 18px;
}

.membership-limit-grid > *,
.billing-limit-grid > * {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 12px 10px;
  border-radius: 16px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.10);
  text-align: center;
}

.billing-limit-grid span {
  color: rgba(255,255,255,.62);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.billing-limit-grid strong {
  color: #fff;
  font-size: 1.08rem;
  line-height: 1;
}

.billing-plan-feature-groups {
  display: grid;
  gap: 16px;
  margin: 16px 0 20px;
}

.billing-plan-feature-group {
  border-top: 1px solid rgba(255,255,255,.10);
  padding-top: 14px;
}

.billing-plan-feature-group h3 {
  margin: 0 0 9px;
  font-size: .96rem;
  color: rgba(255,255,255,.92);
}

.billing-plan-feature-group ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
}

.billing-plan-feature-group li {
  position: relative;
  padding-left: 24px;
  color: rgba(255,255,255,.80);
}

.billing-plan-feature-group li::before {
  content: '✓';
  position: absolute;
  left: 0;
  top: 0;
  color: #79e368;
  font-weight: 950;
}

.public-pricing-plan-cta {
  margin-top: auto;
  width: 100%;
}

.home-split-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 3vw, 28px);
  margin: clamp(28px, 4vw, 48px) 0;
}

.home-split-panel article {
  border: 1px solid var(--border);
  background: var(--panel);
  border-radius: 28px;
  box-shadow: var(--shadow);
  padding: clamp(22px, 3vw, 30px);
}

.home-split-panel h2 {
  margin: 0 0 10px;
  letter-spacing: -.035em;
}

.home-split-panel p:last-child {
  margin-bottom: 0;
}

@media (max-width: 1240px) {
  .billing-plan-compare-grid,
  .public-pricing-plan-grid {
    grid-template-columns: repeat(2, minmax(280px, 1fr));
    max-width: min(980px, calc(100vw - 48px));
    gap: clamp(22px, 3vw, 32px);
  }
}

@media (max-width: 760px) {
  .public-pricing-intro,
  .home-split-panel {
    grid-template-columns: 1fr;
  }

  .public-pricing-intro {
    align-items: stretch;
  }

  .billing-plan-compare-grid,
  .public-pricing-plan-grid {
    grid-template-columns: 1fr;
    max-width: calc(100vw - 28px);
    gap: 22px;
    margin-top: 24px;
  }

  .billing-plan-card,
  .public-pricing-plan-card {
    padding: 24px;
    border-radius: 24px;
  }

  .membership-limit-grid,
  .billing-limit-grid {
    grid-template-columns: 1fr;
  }

  .billing-plan-toggle-wrap,
  .public-pricing-toggle-wrap {
    justify-content: flex-start;
  }

  .billing-plan-toggle {
    width: 100%;
  }

  .billing-plan-toggle-button {
    flex: 1;
    padding-inline: 14px;
  }
}

/* v0.5.3.40 pricing page spacing/card layout polish */
.public-pricing-hero {
  margin-bottom: clamp(16px, 2.4vw, 28px) !important;
}

.public-pricing-hero.hero {
  padding-top: clamp(54px, 8vw, 92px) !important;
  padding-bottom: clamp(34px, 5vw, 62px) !important;
}

.public-pricing-hero .hero-card {
  min-height: 0 !important;
}

.public-pricing-toggle-wrap {
  margin: clamp(12px, 2vw, 20px) auto clamp(18px, 2.4vw, 28px) !important;
}

.public-pricing-plan-grid {
  max-width: min(1120px, calc(100vw - 56px)) !important;
  grid-template-columns: repeat(2, minmax(320px, 1fr)) !important;
  gap: clamp(22px, 2.4vw, 32px) !important;
  margin: clamp(18px, 2.5vw, 30px) auto clamp(34px, 4vw, 56px) !important;
  align-items: stretch !important;
}

.public-pricing-plan-card {
  padding: clamp(26px, 2.5vw, 34px) !important;
  min-height: 0 !important;
}

.public-pricing-plan-card .billing-plan-card-topline {
  margin-bottom: 12px !important;
}

.public-pricing-plan-card .billing-plan-card-topline .eyebrow {
  display: none !important;
}

.public-pricing-plan-card .billing-plan-price-row {
  margin: clamp(14px, 2vw, 20px) 0 10px !important;
}

.public-pricing-plan-card .billing-plan-price-row strong {
  font-size: clamp(2.15rem, 4.2vw, 3.45rem) !important;
}

.public-pricing-plan-card .billing-plan-description {
  margin: 12px 0 18px !important;
  min-height: 0 !important;
}

.public-pricing-plan-card .billing-limit-grid {
  margin: 16px 0 18px !important;
  gap: 10px !important;
}

.public-pricing-plan-card .billing-plan-feature-groups {
  margin: 14px 0 18px !important;
  gap: 14px !important;
}

.public-pricing-plan-card .billing-plan-feature-group {
  padding-top: 12px !important;
}

.public-pricing-note.home-split-panel {
  margin-top: clamp(18px, 2.8vw, 34px) !important;
  margin-bottom: clamp(26px, 3.5vw, 46px) !important;
}

.pricing-page .cta-panel,
body:has(.public-pricing-plan-grid) .cta-panel {
  margin-top: clamp(26px, 3.8vw, 54px) !important;
}

@media (min-width: 1500px) {
  .public-pricing-plan-grid {
    max-width: 1180px !important;
  }
}

@media (max-width: 920px) {
  .public-pricing-plan-grid {
    grid-template-columns: 1fr !important;
    max-width: min(620px, calc(100vw - 32px)) !important;
  }
}

@media (max-width: 760px) {
  .public-pricing-hero.hero {
    padding-top: 46px !important;
    padding-bottom: 38px !important;
  }

  .public-pricing-plan-grid {
    max-width: calc(100vw - 28px) !important;
    gap: 20px !important;
  }

  .public-pricing-plan-card {
    padding: 24px !important;
  }
}

/* v0.5.3.41 public pricing page padding/margin alignment polish
   Tightens the public pricing page to the inspected layout: compact hero, closer toggle/cards, wider readable cards. */
body:has(.public-pricing-plan-grid) main {
  gap: clamp(18px, 2.4vw, 32px) !important;
  padding-top: clamp(26px, 4vw, 48px) !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-hero.hero {
  min-height: 0 !important;
  padding-top: clamp(42px, 6vw, 72px) !important;
  padding-bottom: clamp(30px, 4.5vw, 54px) !important;
  margin: 0 0 clamp(10px, 1.6vw, 20px) !important;
  gap: clamp(30px, 5vw, 62px) !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-hero .hero-copy h1,
body:has(.public-pricing-plan-grid) .public-pricing-hero h1 {
  margin-bottom: 14px !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-hero .lead {
  margin-bottom: 18px !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-hero .hero-card {
  padding: clamp(22px, 3vw, 32px) !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-intro,
body:has(.public-pricing-plan-grid) section.public-pricing-intro {
  margin: clamp(4px, 1vw, 12px) auto clamp(10px, 1.6vw, 18px) !important;
  padding: clamp(22px, 2.8vw, 30px) !important;
  max-width: min(1120px, calc(100vw - 56px)) !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-toggle-wrap {
  margin: clamp(8px, 1.2vw, 14px) auto clamp(20px, 2.2vw, 30px) !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-plan-grid {
  max-width: min(1120px, calc(100vw - 56px)) !important;
  grid-template-columns: repeat(2, minmax(360px, 1fr)) !important;
  gap: clamp(22px, 2.4vw, 30px) !important;
  margin: 0 auto clamp(46px, 5vw, 70px) !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-plan-card {
  padding: clamp(24px, 2.4vw, 32px) !important;
  border-radius: 24px !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-plan-card .billing-plan-price-row {
  margin: clamp(12px, 1.6vw, 18px) 0 10px !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-plan-card .billing-plan-description {
  margin: 10px 0 16px !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-plan-card .billing-limit-grid {
  margin: 14px 0 16px !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-plan-card .billing-plan-feature-groups {
  margin: 12px 0 18px !important;
}

body:has(.public-pricing-plan-grid) .public-pricing-note.home-split-panel {
  max-width: min(1120px, calc(100vw - 56px)) !important;
  margin: clamp(24px, 3vw, 40px) auto clamp(36px, 4vw, 58px) !important;
}

body:has(.public-pricing-plan-grid) .cta-panel {
  max-width: min(1120px, calc(100vw - 56px)) !important;
  margin: clamp(26px, 3vw, 42px) auto clamp(34px, 4vw, 58px) !important;
  padding-top: clamp(34px, 4vw, 54px) !important;
  padding-bottom: clamp(34px, 4vw, 54px) !important;
}

@media (max-width: 920px) {
  body:has(.public-pricing-plan-grid) .public-pricing-plan-grid {
    grid-template-columns: 1fr !important;
    max-width: min(640px, calc(100vw - 32px)) !important;
  }

  body:has(.public-pricing-plan-grid) .public-pricing-intro,
  body:has(.public-pricing-plan-grid) .public-pricing-note.home-split-panel,
  body:has(.public-pricing-plan-grid) .cta-panel {
    max-width: min(640px, calc(100vw - 32px)) !important;
  }
}

@media (max-width: 760px) {
  body:has(.public-pricing-plan-grid) main {
    gap: 20px !important;
  }

  body:has(.public-pricing-plan-grid) .public-pricing-hero.hero {
    padding-top: 34px !important;
    padding-bottom: 32px !important;
  }

  body:has(.public-pricing-plan-grid) .public-pricing-toggle-wrap {
    justify-content: center !important;
  }

  body:has(.public-pricing-plan-grid) .public-pricing-plan-card {
    padding: 22px !important;
  }
}

/* v0.5.3.42 global fixed-header spacing alignment
   Applies the cleaner pricing-page header-to-content spacing to all public_html pages. */
main {
  gap: clamp(18px, 2.6vw, 36px) !important;
  padding-top: clamp(26px, 4vw, 48px) !important;
  padding-bottom: clamp(48px, 7vw, 86px) !important;
}

.hero {
  min-height: 0 !important;
  padding-top: clamp(42px, 6vw, 72px) !important;
  padding-bottom: clamp(30px, 4.5vw, 54px) !important;
  margin-bottom: clamp(18px, 3vw, 34px) !important;
}

.hero .actions,
.hero-copy .actions {
  margin-top: clamp(22px, 3vw, 30px) !important;
}

.hero-card {
  align-self: center !important;
}

.feature-grid,
.home-overview-panel,
.home-split-panel,
.cta-panel,
.notice,
.panel {
  margin-top: 0 !important;
  margin-bottom: clamp(22px, 3.5vw, 44px) !important;
}

.feature-grid {
  gap: clamp(18px, 2.4vw, 26px) !important;
}

.cta-panel {
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 980px) {
  main {
    gap: clamp(20px, 5vw, 36px) !important;
    padding-top: clamp(28px, 6vw, 44px) !important;
  }

  .hero {
    padding-top: clamp(28px, 7vw, 50px) !important;
    padding-bottom: clamp(26px, 6vw, 42px) !important;
    margin-bottom: clamp(16px, 4vw, 28px) !important;
  }
}

@media (max-width: 640px) {
  main {
    padding-top: 26px !important;
  }

  .hero {
    padding-top: 26px !important;
    padding-bottom: 30px !important;
  }
}


/* v0.5.3.43 Pricing Toggle Active-State Polish
   Public pricing page: one selected red option, unselected transparent option. */
.public-pricing-toggle-wrap {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: clamp(12px, 2vw, 20px) auto clamp(18px, 2.4vw, 28px) !important;
}

.public-pricing-toggle-wrap .billing-plan-toggle,
.billing-plan-toggle[data-public-pricing-toggle] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  width: fit-content !important;
  max-width: calc(100vw - 32px) !important;
  padding: 4px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background: rgba(255,255,255,.07) !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.28), 0 12px 28px rgba(0,0,0,.18) !important;
  overflow: hidden !important;
}

.public-pricing-toggle-wrap .billing-plan-toggle-button,
.billing-plan-toggle[data-public-pricing-toggle] .billing-plan-toggle-button {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  min-width: 104px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: rgba(255,255,255,.78) !important;
  box-shadow: none !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

.public-pricing-toggle-wrap .billing-plan-toggle-button:not(.is-active):not([aria-pressed="true"]),
.billing-plan-toggle[data-public-pricing-toggle] .billing-plan-toggle-button:not(.is-active):not([aria-pressed="true"]) {
  background: transparent !important;
  color: rgba(255,255,255,.74) !important;
  box-shadow: none !important;
}

.public-pricing-toggle-wrap .billing-plan-toggle-button.is-active,
.public-pricing-toggle-wrap .billing-plan-toggle-button[aria-pressed="true"],
.billing-plan-toggle[data-public-pricing-toggle] .billing-plan-toggle-button.is-active,
.billing-plan-toggle[data-public-pricing-toggle] .billing-plan-toggle-button[aria-pressed="true"] {
  background: linear-gradient(135deg, #ef2336 0%, #c80818 100%) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(200,8,24,.34), inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.public-pricing-toggle-wrap .billing-plan-toggle-button:focus-visible,
.billing-plan-toggle[data-public-pricing-toggle] .billing-plan-toggle-button:focus-visible {
  outline: 2px solid rgba(255,255,255,.78) !important;
  outline-offset: 2px !important;
}

@media (max-width: 560px) {
  .public-pricing-toggle-wrap .billing-plan-toggle,
  .billing-plan-toggle[data-public-pricing-toggle] {
    width: min(100%, 360px) !important;
  }

  .public-pricing-toggle-wrap .billing-plan-toggle-button,
  .billing-plan-toggle[data-public-pricing-toggle] .billing-plan-toggle-button {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    padding-inline: 14px !important;
  }
}


/* v0.5.3.45 / app v0.5.10.48.10.9.18 Public Pill / Badge No-Wrap Guard */
.status-pill,
.eyebrow,
.plan-badge,
.badge,
.billing-plan-tag,
.billing-plan-save-badge,
.billing-plan-toggle-button,
.public-pricing-toggle-wrap .billing-plan-toggle-button {
    white-space: nowrap !important;
    text-wrap: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    line-height: 1 !important;
}

.status-pill,
.eyebrow,
.plan-badge,
.badge,
.billing-plan-tag,
.billing-plan-save-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    min-width: max-content !important;
    max-width: 100% !important;
}


/* v0.5.3.46 Guest Minds Chat Public Entry */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.om-public-guest-entry {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
  width: min(780px, 100%);
  margin: 26px 0 18px;
  padding: 10px 10px 10px 18px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 32px;
  background: rgba(34,34,39,.96);
  box-shadow: 0 24px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06);
}

.om-public-guest-entry textarea {
  width: 100%;
  min-height: 48px;
  max-height: 138px;
  resize: none;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font: inherit;
  line-height: 1.45;
  padding: 13px 4px;
}

.om-public-guest-entry textarea::placeholder {
  color: rgba(255,255,255,.58);
}

.om-public-guest-entry button {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: #050509;
  font-size: 24px;
  font-weight: 950;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(0,0,0,.30);
}

.om-public-guest-entry button:focus-visible,
.om-public-guest-entry textarea:focus-visible {
  outline: 2px solid rgba(229,9,20,.72);
  outline-offset: 3px;
}

.header-cta {
  white-space: nowrap !important;
}

@media (max-width: 720px) {
  .om-public-guest-entry {
    border-radius: 26px;
    margin-top: 22px;
    padding-left: 14px;
  }

  .om-public-guest-entry button {
    width: 44px;
    height: 44px;
  }
}


/* v0.6.0 Guest Launcher OpenAI-Style Centered Entry */
.om-public-guest-launch {
  min-height: min(52vh, 520px);
  display: grid;
  align-content: end;
  justify-items: center;
  gap: 18px;
  padding: clamp(76px, 12vh, 150px) 0 48px;
  text-align: center;
}

.om-public-guest-launch h1 {
  margin: 0 0 8px;
  font-size: clamp(26px, 4vw, 42px);
  line-height: 1.05;
  letter-spacing: -.045em;
  font-weight: 900;
}

.om-public-guest-launch .om-public-guest-entry {
  margin: 0;
}

.om-public-guest-entry {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: min(780px, 100%);
  min-height: 104px;
  padding: 14px 12px 14px 22px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 26px;
  background: rgba(34,34,39,.96);
  box-shadow: 0 24px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06);
}

.om-public-guest-entry textarea {
  width: 100%;
  min-height: 62px;
  max-height: 138px;
  resize: none;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font: inherit;
  line-height: 1.45;
  padding: 10px 4px;
}

.om-public-guest-entry button {
  display: inline-grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: #050509;
  font-size: 22px;
  font-weight: 950;
  cursor: pointer;
  align-self: end;
  margin-bottom: 2px;
}

.om-public-guest-prompt-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  width: min(820px, 100%);
}

.om-public-guest-prompt-pills button {
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(0,0,0,.18);
  color: rgba(255,255,255,.84);
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.om-public-guest-prompt-pills button:hover,
.om-public-guest-prompt-pills button:focus-visible {
  border-color: rgba(255,255,255,.32);
  background: rgba(255,255,255,.08);
}

.hero-after-guest-launch {
  margin-top: 48px !important;
}

.compact-guest-entry {
  min-height: 76px;
  border-radius: 28px;
  margin: 22px 0 16px;
}

.compact-guest-entry textarea {
  min-height: 44px;
}

@media (max-width: 720px) {
  .om-public-guest-launch {
    min-height: auto;
    padding: 58px 0 38px;
  }

  .om-public-guest-entry {
    min-height: 92px;
    border-radius: 24px;
    padding-left: 16px;
  }

  .om-public-guest-prompt-pills {
    justify-content: flex-start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 4px;
  }

  .om-public-guest-prompt-pills button {
    white-space: nowrap;
  }

  .hero-after-guest-launch {
    margin-top: 40px !important;
  }
}


/* v0.6.1 Guest Launcher Design Correction */
.om-public-guest-launch {
  padding-bottom: 50px !important;
}

.om-public-guest-entry,
.om-public-guest-launch .om-public-guest-entry {
  width: min(780px, 100%) !important;
  min-height: 104px !important;
  padding: 14px 12px 14px 22px !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  border-radius: 28px !important;
  background: rgba(36,36,41,.98) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.om-public-guest-entry textarea {
  min-height: 62px !important;
  color: #fff !important;
  padding: 10px 4px !important;
}

.om-public-guest-entry button {
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #07070a !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 22px !important;
  margin-bottom: 4px !important;
}

.om-public-guest-prompt-pills button {
  border: 1px solid rgba(255,255,255,.16) !important;
  background: rgba(0,0,0,.18) !important;
  color: rgba(255,255,255,.84) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.om-public-guest-prompt-pills button:hover,
.om-public-guest-prompt-pills button:focus-visible {
  border-color: rgba(255,255,255,.34) !important;
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
}

.hero-after-guest-launch {
  margin-top: 46px !important;
}

.hero-after-guest-launch .hero-copy .lead {
  max-width: 700px !important;
}

@media (max-width: 720px) {
  .om-public-guest-entry,
  .om-public-guest-launch .om-public-guest-entry {
    min-height: 92px !important;
    border-radius: 24px !important;
  }
}


/* v0.6.1.3 Public Guest Launcher Polish */
.compact-guest-entry {
  display: none !important;
}

.hero .hero-copy > .om-public-guest-entry {
  display: none !important;
}

.om-public-guest-launch {
  padding-bottom: 48px !important;
}

.om-public-guest-launch .om-public-guest-entry {
  width: min(780px, 100%) !important;
  min-height: 104px !important;
  height: 104px !important;
  align-items: end !important;
  padding: 14px 12px 14px 22px !important;
  border-radius: 28px !important;
  background: rgba(36,36,41,.98) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}

.om-public-guest-launch .om-public-guest-entry:focus-within {
  border-color: rgba(255,255,255,.20) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.om-public-guest-launch .om-public-guest-entry textarea {
  height: 66px !important;
  min-height: 66px !important;
  max-height: 66px !important;
  overflow-y: auto !important;
  padding: 11px 4px !important;
}

.om-public-guest-launch .om-public-guest-entry button {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #07070a !important;
  border: 0 !important;
  box-shadow: none !important;
  line-height: 1 !important;
  font-size: 22px !important;
  font-weight: 950 !important;
  align-self: end !important;
  margin: 0 0 2px !important;
  transform: none !important;
}

.om-public-guest-prompt-pills {
  width: min(780px, 100%) !important;
  gap: 7px !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
}

.om-public-guest-prompt-pills button {
  padding: 8px 9px !important;
  font-size: 10.5px !important;
  line-height: 1.1 !important;
  font-weight: 720 !important;
  white-space: nowrap !important;
  border-color: rgba(255,255,255,.16) !important;
  background: rgba(0,0,0,.18) !important;
  color: rgba(255,255,255,.84) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.om-public-guest-prompt-pills button:hover,
.om-public-guest-prompt-pills button:focus-visible {
  border-color: rgba(255,255,255,.34) !important;
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
}

@media (max-width: 840px) {
  .om-public-guest-prompt-pills {
    justify-content: flex-start !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    padding-bottom: 4px !important;
  }
}

@media (max-width: 720px) {
  .om-public-guest-launch .om-public-guest-entry {
    height: 94px !important;
    min-height: 94px !important;
    border-radius: 24px !important;
  }

  .om-public-guest-launch .om-public-guest-entry textarea {
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
  }
}


/* v0.6.1.5 Public Guest Launcher Focus / Send Button Fix */
.om-public-guest-launch .om-public-guest-entry,
.om-public-guest-entry {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 38px !important;
  align-items: center !important;
  width: min(780px, 100%) !important;
  height: 104px !important;
  min-height: 104px !important;
  max-height: 104px !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  border-radius: 28px !important;
  background: rgba(36,36,41,.98) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06) !important;
  transform: none !important;
}

.om-public-guest-launch .om-public-guest-entry:hover,
.om-public-guest-launch .om-public-guest-entry:focus,
.om-public-guest-launch .om-public-guest-entry:focus-within,
.om-public-guest-entry:hover,
.om-public-guest-entry:focus,
.om-public-guest-entry:focus-within {
  height: 104px !important;
  min-height: 104px !important;
  max-height: 104px !important;
  margin: 0 !important;
  transform: none !important;
  border-color: rgba(255,255,255,.13) !important;
  outline: none !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.om-public-guest-launch .om-public-guest-entry textarea,
.om-public-guest-entry textarea {
  display: block !important;
  width: 100% !important;
  height: 62px !important;
  min-height: 62px !important;
  max-height: 62px !important;
  margin: 0 !important;
  padding: 10px 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
  resize: none !important;
  overflow-y: auto !important;
  transform: none !important;
  line-height: 1.45 !important;
}

.om-public-guest-launch .om-public-guest-entry textarea:focus,
.om-public-guest-launch .om-public-guest-entry textarea:focus-visible,
.om-public-guest-entry textarea:focus,
.om-public-guest-entry textarea:focus-visible,
.om-public-guest-launch .om-public-guest-entry button:focus,
.om-public-guest-launch .om-public-guest-entry button:focus-visible,
.om-public-guest-entry button:focus,
.om-public-guest-entry button:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
  transform: none !important;
}

.om-public-guest-launch .om-public-guest-entry button,
.om-public-guest-entry button {
  display: grid !important;
  place-items: center !important;
  align-self: center !important;
  justify-self: end !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  color: #0b0b0e !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transform: none !important;
}

.om-public-guest-launch .om-public-guest-entry button span,
.om-public-guest-entry button span {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 100% !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 720px) {
  .om-public-guest-launch .om-public-guest-entry,
  .om-public-guest-entry {
    height: 94px !important;
    min-height: 94px !important;
    max-height: 94px !important;
    border-radius: 24px !important;
    padding: 14px 16px !important;
  }

  .om-public-guest-launch .om-public-guest-entry:hover,
  .om-public-guest-launch .om-public-guest-entry:focus,
  .om-public-guest-launch .om-public-guest-entry:focus-within,
  .om-public-guest-entry:hover,
  .om-public-guest-entry:focus,
  .om-public-guest-entry:focus-within {
    height: 94px !important;
    min-height: 94px !important;
    max-height: 94px !important;
  }

  .om-public-guest-launch .om-public-guest-entry textarea,
  .om-public-guest-entry textarea {
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
  }
}


/* v0.6.1.8.2 Public Guest Launcher App-Style Send Arrow */
.om-public-guest-entry .om-chat-send-button,
.om-public-guest-entry .om-public-guest-send-button,
.om-public-guest-launch .om-public-guest-entry .om-chat-send-button,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  justify-self: end !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  color: #0b0b0e !important;
  box-shadow: none !important;
  line-height: 1 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  transform: none !important;
}

.om-public-guest-entry .om-chat-send-button span,
.om-public-guest-entry .om-public-guest-send-button span,
.om-public-guest-launch .om-public-guest-entry .om-chat-send-button span,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  line-height: 18px !important;
  transform: translateY(-1px) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.om-public-guest-entry .om-chat-send-button:focus,
.om-public-guest-entry .om-chat-send-button:focus-visible,
.om-public-guest-entry .om-public-guest-send-button:focus,
.om-public-guest-entry .om-public-guest-send-button:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border: 0 !important;
}


/* v0.6.1.8.3 Public Guest Launcher Thick App-Style Arrow */
.om-public-guest-entry .om-public-guest-send-button,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  justify-self: end !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  color: #0b0b0e !important;
  box-shadow: none !important;
  line-height: 1 !important;
  transform: none !important;
  overflow: hidden !important;
}

.om-public-guest-entry .om-public-guest-send-button span,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button span {
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  position: relative !important;
  transform: translateY(-1px) !important;
}

.om-public-guest-entry .om-public-guest-send-button span::before,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button span::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 2px !important;
  width: 9px !important;
  height: 9px !important;
  border-left: 3px solid #0b0b0e !important;
  border-top: 3px solid #0b0b0e !important;
  transform: translateX(-50%) rotate(45deg) !important;
  border-radius: 1px !important;
}

.om-public-guest-entry .om-public-guest-send-button span::after,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button span::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 5px !important;
  width: 3px !important;
  height: 13px !important;
  background: #0b0b0e !important;
  border-radius: 999px !important;
  transform: translateX(-50%) !important;
}

.om-public-guest-entry .om-public-guest-send-button:hover,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button:hover,
.om-public-guest-entry .om-public-guest-send-button:focus,
.om-public-guest-entry .om-public-guest-send-button:focus-visible,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button:focus,
.om-public-guest-launch .om-public-guest-entry .om-public-guest-send-button:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border: 0 !important;
}


/* v0.6.1.10.2.10 public_html background-only red gradient removal
   Removes red/maroon gradient washes from page, section, card, and media backgrounds.
   Keeps brand red accents, buttons, pills, links, badges, and CTA text intact. */
html,
body {
  background-color: #050506 !important;
  background:
    radial-gradient(circle at 12% -8%, rgba(255, 255, 255, .045), transparent 34%),
    radial-gradient(circle at 88% 10%, rgba(255, 255, 255, .032), transparent 27%),
    linear-gradient(180deg, #050506 0%, #070708 55%, #050506 100%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
}

.bg {
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, .055), transparent 34%),
    radial-gradient(circle at bottom right, rgba(255, 255, 255, .065), transparent 35%),
    linear-gradient(180deg, #101010, #050505) !important;
}

.feature-grid > *,
.cta-panel,
.hero-card,
.feature-card,
.public-card,
.card {
  background:
    linear-gradient(145deg, rgba(255,255,255,.076), rgba(255,255,255,.026) 42%, rgba(255,255,255,.026)),
    var(--om-panel) !important;
}

.feature-grid > *::before,
.cta-panel::before,
.hero-card::before,
.feature-card::before,
.public-card::before,
.card::before {
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.090), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,.070), transparent 20%, transparent 80%, rgba(255,255,255,.030)) !important;
}

.hero-card {
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.060), transparent 42%),
    var(--om-home-card-bg-strong) !important;
}

.home-overview-panel,
.home-split-panel,
.cta-panel,
.feature-card {
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.050), transparent 42%),
    var(--om-home-card-bg) !important;
}

.home-video-backdrop {
  box-shadow:
    inset 0 0 140px rgba(0,0,0,.78),
    0 0 120px rgba(255,255,255,.035) !important;
}

.home-video-overlay {
  background:
    radial-gradient(ellipse at 50% 50%, rgba(255,255,255,.040), transparent 44%),
    linear-gradient(90deg, rgba(5,5,5,.90) 0%, rgba(5,5,5,.48) 28%, rgba(5,5,5,.34) 66%, rgba(5,5,5,.78) 100%),
    linear-gradient(180deg, rgba(5,5,5,.62) 0%, rgba(5,5,5,.10) 42%, rgba(5,5,5,.88) 100%) !important;
}

.homepage-video-layer .home-video-overlay {
  background:
    linear-gradient(90deg, rgba(5,5,5,.78) 0%, rgba(5,5,5,.30) 34%, rgba(5,5,5,.32) 66%, rgba(5,5,5,.78) 100%),
    linear-gradient(180deg, rgba(5,5,5,.28) 0%, rgba(5,5,5,.18) 45%, rgba(5,5,5,.86) 100%) !important;
}

.site-mega-panel::after {
  background:
    radial-gradient(circle at 85% 10%, rgba(255,255,255,.045), transparent 36%),
    linear-gradient(90deg, rgba(0,0,0,.18), transparent 55%) !important;
}

.site-mega-cta {
  background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.035)) !important;
}


/* v0.6.1.10.2.12 public homepage video fit controls
   Defaults to contain so the full video can be seen instead of center-cropped. */
.homepage-video-layer .home-video {
  object-fit: var(--home-video-fit, contain) !important;
  object-position: var(--home-video-position, center center) !important;
  background: #050506 !important;
  transform: none !important;
}
.homepage-video-layer.is-video-frame-callback-ready .home-video {
  transform: none !important;
}

/* v0.6.1.10.2.13 public PHP Legal Center foundation */
.legal-version-panel,
.legal-archive-panel {
  width: min(1180px, calc(100% - 32px));
  margin: clamp(20px, 4vw, 44px) auto;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(15, 23, 42, 0.88), rgba(2, 6, 23, 0.9));
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.34);
  padding: clamp(20px, 4vw, 38px);
  overflow: hidden;
}

.legal-version-header {
  display: grid;
  gap: 14px;
  margin-bottom: 22px;
}

.legal-version-header h2 {
  margin: 0;
  font-size: clamp(1.6rem, 3vw, 2.45rem);
  letter-spacing: -0.04em;
}

.legal-version-header p,
.legal-version-body p,
.legal-archive-row p {
  color: rgba(226, 232, 240, 0.84);
  line-height: 1.75;
}

.legal-version-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 8px 0 4px;
}

.legal-version-meta div,
.legal-archive-row {
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 18px;
  background: rgba(15, 23, 42, 0.68);
  padding: 14px 16px;
}

.legal-version-meta dt {
  color: rgba(148, 163, 184, 0.86);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.legal-version-meta dd {
  margin: 4px 0 0;
  font-weight: 800;
  color: rgba(248, 250, 252, 0.96);
}

.legal-version-body {
  display: grid;
  gap: 18px;
}

.legal-copy-block {
  display: grid;
  gap: 12px;
}

.legal-copy-block h2,
.legal-copy-block h3 {
  margin: 10px 0 0;
  color: rgba(248, 250, 252, 0.98);
}

.legal-copy-block h3 {
  font-size: clamp(1.05rem, 2vw, 1.35rem);
}

.legal-archive-hero.hero {
  margin-bottom: 0;
}

.legal-archive-list {
  display: grid;
  gap: 12px;
}

.legal-archive-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.legal-archive-row strong {
  color: rgba(248, 250, 252, 0.96);
}

.legal-archive-row small {
  color: rgba(148, 163, 184, 0.9);
}

@media (max-width: 760px) {
  .legal-version-meta {
    grid-template-columns: 1fr;
  }

  .legal-archive-row {
    align-items: stretch;
    flex-direction: column;
  }
}


/* v0.6.1.10.2.15 public legal longform polish */
.omatic-legal-longform h3,
.legal-copy-block h3 {
  margin-top: 1.35rem;
}

.omatic-legal-longform p,
.legal-copy-block p {
  line-height: 1.65;
}

.legal-version-meta a,
.legal-archive-link,
.legal-copy-block a {
  white-space: nowrap;
}

/* v0.6.1.10.2.20 Public legal archive button/pill containment
   Keeps public_html legal action pills readable and prevents two-line button labels like "View\nversion". */
.legal-archive-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(16px, 2.4vw, 28px) !important;
}

.legal-archive-row > div {
  min-width: 0 !important;
}

.legal-archive-row .button,
.legal-archive-row a.button,
.legal-version-header .button,
.legal-version-header a.button,
.legal-version-meta .button,
.legal-version-meta a.button,
a.legal-archive-link,
.legal-archive-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: max-content !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  line-height: 1.08 !important;
  padding: 12px 24px !important;
  flex: 0 0 auto !important;
  text-align: center !important;
}

.legal-archive-row .button.compact,
.legal-archive-row a.button.compact {
  min-height: 46px !important;
  min-width: 156px !important;
}

.button,
a.button,
button,
.nav-button,
.cta-button,
.login-button {
  white-space: nowrap !important;
  line-height: 1.08 !important;
}

@media (max-width: 760px) {
  .legal-archive-row {
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
  }

  .legal-archive-row .button,
  .legal-archive-row a.button {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* v0.6.1.10.2.20 Full legal policy readability / disclosure table polish */
.omatic-legal-longform {
  display: block;
}
.omatic-legal-longform h3 {
  margin-top: 1.55rem;
  margin-bottom: 0.55rem;
}
.omatic-legal-longform p {
  margin-bottom: 0.95rem;
}
.omatic-legal-table-wrap {
  width: 100%;
  overflow-x: auto;
  margin: 1rem 0 1.35rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(2, 6, 23, .36);
}
.omatic-legal-disclosure-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  font-size: .92rem;
  line-height: 1.55;
}
.omatic-legal-disclosure-table th,
.omatic-legal-disclosure-table td {
  padding: .9rem 1rem;
  border-bottom: 1px solid rgba(255,255,255,.1);
  text-align: left;
  vertical-align: top;
}
.omatic-legal-disclosure-table th {
  color: #fff;
  background: rgba(255,255,255,.055);
  font-weight: 800;
  letter-spacing: .02em;
}
.omatic-legal-disclosure-table tr:last-child td {
  border-bottom: 0;
}


/* v0.6.2 - Stable Compliance / Branding / Legal Checkpoint
   Version/cache checkpoint only. No new UI or behavior rules added. */
/* v0.6.2 - Legal Acceptance Exact Card Reset Guard: controller/view reset-post fix only; no CSS behavior required. */

/* v0.6.2 - Image Studio Foundation: app-only feature; public site unchanged. */

/* v0.6.2.23 - Public hard dark loading fallback
   Prevents white page flash before the public grid/gradient background renders. */
html,
body {
  background-color: #080809 !important;
}
body::backdrop {
  background-color: #080809;
}


/* v0.6.2.39.2.5 public_html footer copyright bar scroll fix
   Public main-site only: footer is no longer fixed/sticky. It scrolls with page content. */
:root {
  --public-fixed-footer-safe-space: 0px !important;
}
html,
body {
  min-height: 100% !important;
}
body {
  padding-bottom: 0 !important;
}
.site-footer {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  top: auto !important;
  transform: none !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  margin: clamp(34px, 5vw, 70px) 0 0 !important;
  padding: 10px max(24px, calc((100vw - 1180px) / 2)) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  background: rgba(5, 5, 5, 0.88) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: none !important;
  pointer-events: auto !important;
}
.site-footer::before,
.site-footer::after {
  content: none !important;
  display: none !important;
}
.site-footer > * {
  pointer-events: auto !important;
}
.site-footer > *:first-child,
.site-footer > span:first-child {
  margin-right: auto !important;
  text-align: left !important;
}
.site-footer > *:last-child,
.site-footer nav,
.site-footer .footer-links {
  margin-left: auto !important;
  text-align: right !important;
}
@media (max-width: 760px) {
  body {
    padding-bottom: 0 !important;
  }
  .site-footer {
    justify-content: center !important;
    text-align: center !important;
    padding: 10px 16px !important;
  }
  .site-footer > *:first-child,
  .site-footer > span:first-child,
  .site-footer > *:last-child,
  .site-footer nav,
  .site-footer .footer-links {
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
    justify-content: center !important;
  }
}


/* v0.6.2.39.2.6 Public scroll navigation true-circle polish */
.om-public-back-top-btn,
button.om-public-back-top-btn,
a.om-public-back-top-btn {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  text-align: center !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.om-public-back-top-btn svg {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  margin: 0 !important;
}
@media (max-width:782px) {
  .om-public-back-top-btn,
  button.om-public-back-top-btn,
  a.om-public-back-top-btn {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    max-width: 34px !important;
    max-height: 34px !important;
  }
  .om-public-back-top-btn svg {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    min-height: 14px !important;
    max-width: 14px !important;
    max-height: 14px !important;
  }
}
@media (max-width:480px) {
  .om-public-back-top-btn,
  button.om-public-back-top-btn,
  a.om-public-back-top-btn {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    max-width: 32px !important;
    max-height: 32px !important;
  }
}


/* v0.6.2.45 HubSpot public lead capture panels */
.hubspot-public-embed-panel {
  position: relative;
  z-index: 1;
  width: min(1120px, calc(100% - 32px));
  margin: 32px auto;
  padding: 28px;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 28px;
  background: rgba(8, 12, 22, .72);
  box-shadow: 0 20px 60px rgba(0,0,0,.28);
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 22px;
  align-items: start;
}
.hubspot-public-embed-copy h2 { margin: 4px 0 10px; }
.hubspot-public-embed-copy p:last-child { color: rgba(226,232,240,.76); }
.hubspot-public-embed-box {
  min-height: 120px;
  padding: 18px;
  border-radius: 22px;
  background: rgba(15,23,42,.74);
  border: 1px solid rgba(148,163,184,.14);
  overflow: hidden;
}
.hubspot-public-embed-box iframe,
.hubspot-public-embed-box form { max-width: 100% !important; }
@media (max-width: 820px) {
  .hubspot-public-embed-panel { grid-template-columns: 1fr; padding: 22px; }
}


/* v0.6.2.45.2 HubSpot public contact copy polish */
.hubspot-public-embed-panel .hubspot-public-embed-copy .eyebrow {
  color: rgba(239, 68, 68, 0.92);
}
.hubspot-public-embed-box {
  color-scheme: dark;
}

/* v0.6.2.45.2 Native Omatic Minds lead forms / HubSpot background submit */
.om-native-lead-panel {
  position: relative;
  z-index: 1;
  width: min(1120px, calc(100% - 32px));
  margin: 32px auto;
  padding: 28px;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 28px;
  background: rgba(8, 12, 22, .72);
  box-shadow: 0 20px 60px rgba(0,0,0,.28);
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
  gap: 22px;
  align-items: start;
}
.om-native-lead-copy h2 { margin: 4px 0 10px; }
.om-native-lead-copy p:last-child,
.om-native-lead-privacy {
  color: rgba(148, 163, 184, .88);
}
.om-native-lead-privacy {
  font-size: .86rem;
  line-height: 1.55;
  margin-top: 14px;
}
.om-native-lead-form {
  display: grid;
  gap: 14px;
  padding: 18px;
  border-radius: 22px;
  background: rgba(15,23,42,.74);
  border: 1px solid rgba(148,163,184,.14);
  color: #e5e7eb;
}
.om-native-lead-form label {
  display: grid;
  gap: 7px;
  font-weight: 800;
  color: #e5e7eb;
}
.om-native-lead-form input,
.om-native-lead-form textarea {
  width: 100%;
  border-radius: 14px;
  border: 1px solid rgba(51,65,85,.96);
  background: rgba(11,15,23,.96);
  color: #f8fafc;
  padding: 12px 13px;
  font: inherit;
  box-sizing: border-box;
}
.om-native-lead-form textarea { resize: vertical; min-height: 140px; }
.om-native-lead-form input::placeholder,
.om-native-lead-form textarea::placeholder { color: #94a3b8; }
.om-native-lead-form input:focus,
.om-native-lead-form textarea:focus {
  outline: 2px solid rgba(239,68,68,.45);
  outline-offset: 2px;
}
.om-native-lead-form .button.primary {
  justify-self: start;
  border-radius: 16px;
  background: #ef4444;
  color: #fff;
  border-color: rgba(239,68,68,.72);
}
.om-native-lead-form .button.primary:hover { background: #dc2626; }
.om-native-lead-hp {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.om-native-lead-notice {
  width: min(1120px, calc(100% - 32px));
  margin: 24px auto 0;
  padding: 14px 18px;
  border-radius: 18px;
  font-weight: 800;
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(15,23,42,.74);
  color: #e5e7eb;
}
.om-native-lead-notice.is-ok {
  border-color: rgba(34,197,94,.28);
  color: #bbf7d0;
  background: rgba(20,83,45,.18);
}
.om-native-lead-notice.is-error {
  border-color: rgba(248,113,113,.28);
  color: #fecaca;
  background: rgba(127,29,29,.18);
}
@media (max-width: 820px) {
  .om-native-lead-panel { grid-template-columns: 1fr; padding: 22px; }
}


/* v0.6.2.45.5 Native lead form phone field polish */
.om-native-lead-phone-row {
  display: grid;
  grid-template-columns: minmax(110px, 150px) minmax(0, 1fr);
  gap: 12px;
  align-items: end;
}
.om-native-lead-phone-row label {
  min-width: 0;
}
.om-native-lead-phone-row select,
.om-native-lead-phone-row input {
  width: 100%;
}
@media (max-width: 640px) {
  .om-native-lead-phone-row {
    grid-template-columns: 1fr;
  }
}


/* v0.6.2.45.5 Native lead required consent / split-name polish */
.om-native-lead-name-row,
.om-native-lead-phone-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
}
.om-native-lead-consent {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 16px;
  background: rgba(15, 23, 42, 0.48);
  color: rgba(226, 232, 240, 0.86);
}
.om-native-lead-consent p {
  margin: 0;
  color: rgba(226, 232, 240, 0.78);
  font-size: 0.92rem;
  line-height: 1.5;
}
.om-native-lead-checkbox {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  margin: 0 !important;
}
.om-native-lead-checkbox input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin-top: 3px;
  accent-color: #ef4444;
}
.om-native-lead-checkbox span {
  color: #e5e7eb;
  line-height: 1.45;
}
.om-native-lead-privacy-link a {
  color: #f87171;
  font-weight: 800;
  text-decoration: none;
}
.om-native-lead-privacy-link a:hover { text-decoration: underline; }
@media (max-width: 720px) {
  .om-native-lead-name-row,
  .om-native-lead-phone-row { grid-template-columns: 1fr; }
}


/* v0.6.2.45.6 Native lead form country code select polish */
.om-native-lead-form select,
.om-native-lead-phone-row select {
  width: 100%;
  min-height: 52px;
  border-radius: 14px;
  border: 1px solid rgba(51,65,85,.96);
  background: rgba(11,15,23,.96);
  color: #f8fafc;
  padding: 12px 44px 12px 13px;
  font: inherit;
  font-weight: 700;
  line-height: 1.25;
  box-sizing: border-box;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #94a3b8 50%),
    linear-gradient(135deg, #94a3b8 50%, transparent 50%),
    linear-gradient(to right, rgba(51,65,85,.78), rgba(51,65,85,.78));
  background-position:
    calc(100% - 22px) 50%,
    calc(100% - 16px) 50%,
    calc(100% - 42px) 50%;
  background-size: 6px 6px, 6px 6px, 1px 26px;
  background-repeat: no-repeat;
}
.om-native-lead-form select:focus,
.om-native-lead-phone-row select:focus {
  outline: 2px solid rgba(239,68,68,.45);
  outline-offset: 2px;
  border-color: rgba(239,68,68,.62);
}
.om-native-lead-form select:hover,
.om-native-lead-phone-row select:hover {
  border-color: rgba(148,163,184,.62);
}
.om-native-lead-form select option,
.om-native-lead-phone-row select option {
  background: #0b0f17;
  color: #f8fafc;
}
.om-native-lead-phone-row {
  grid-template-columns: minmax(132px, 170px) minmax(0, 1fr);
}
@media (max-width: 640px) {
  .om-native-lead-form select,
  .om-native-lead-phone-row select {
    min-height: 50px;
  }
}


/* v0.6.2.45.12 Public contact lead notice auto-fade */
.om-native-lead-notice {
  transition: opacity .45s ease, transform .45s ease, max-height .45s ease, margin .45s ease, padding .45s ease, border-width .45s ease;
  will-change: opacity, transform, max-height;
}
.om-native-lead-notice.is-fading,
.om-native-lead-notice.is-hidden {
  opacity: 0;
  transform: translateY(-8px);
  max-height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-width: 0 !important;
  overflow: hidden;
  pointer-events: none;
}


/* v0.6.2.55.5: Public pricing cards show Image Studio limits and model access */
.billing-image-plan-detail-box {
  display: grid;
  gap: 5px;
  padding: 12px 14px;
  border: 1px solid rgba(148, 163, 184, .16);
  border-radius: 16px;
  background: rgba(15, 23, 42, .42);
  color: #e5e7eb;
}
.billing-image-plan-detail-box span {
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(226, 232, 240, .76);
}
.billing-image-plan-detail-box strong {
  font-size: .96rem;
  line-height: 1.35;
}


/* v0.6.6.3 public Explore dropdown unified pill polish */
.site-mega-panel section {
  align-content: start !important;
  gap: 10px !important;
}
.site-mega-panel a,
.site-mega-panel a:visited,
.site-mega-cta .button,
.site-mega-cta .button:visited {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-height: 48px !important;
  height: 48px !important;
  padding: 0 18px !important;
  box-sizing: border-box !important;
  border-radius: 999px !important;
  border: 1px solid rgba(148, 163, 184, .16) !important;
  background: linear-gradient(180deg, rgba(255,255,255,.060), rgba(255,255,255,.034)) !important;
  color: #f8fafc !important;
  text-decoration: none !important;
  font-size: 0.94rem !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
  transform: none !important;
}
.site-mega-panel a:hover,
.site-mega-panel a:focus-visible,
.site-mega-panel a.active,
.site-mega-cta .button:hover,
.site-mega-cta .button:focus-visible {
  min-height: 48px !important;
  height: 48px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  border-color: rgba(229, 9, 20, .42) !important;
  background: linear-gradient(180deg, rgba(129, 8, 18, .72), rgba(80, 7, 14, .60)) !important;
  color: #fff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 10px 26px rgba(229,9,20,.12) !important;
  transform: none !important;
}
.site-mega-panel a.active {
  cursor: default !important;
}
.site-mega-cta {
  border-radius: 24px !important;
}
@media (max-width: 760px) {
  .site-mega-panel a,
  .site-mega-panel a:visited,
  .site-mega-cta .button,
  .site-mega-cta .button:visited,
  .site-mega-panel a:hover,
  .site-mega-panel a:focus-visible,
  .site-mega-panel a.active,
  .site-mega-cta .button:hover,
  .site-mega-cta .button:focus-visible {
    min-height: 50px !important;
    height: 50px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
  }
}

/* v0.6.8.107.66 public footer version display intentionally removed. Public versioning stays in README/package notes only. */
