/* ==========================================================================
   SEAES universal theme and support widgets
   ========================================================================== */
:root[data-effective-theme="dark"] {
  --body-color: #cbd5e1;
  --muted: #94a3b8;
  --gray-100: #0f172a;
  --gray-200: #111827;
  --gray-300: #1f2937;
  --gray-400: #334155;
  --gray-500: #94a3b8;
  --gray-600: #cbd5e1;
  --gray-700: #e2e8f0;
  --gray-800: #f1f5f9;
  --gray-900: #f8fafc;
  --white: #0b1120;
  --border-color: rgba(148, 163, 184, .22);
}

/* Header and theme controls are normalized here because product pages use
   several legacy header templates. Keep the behavior consistent everywhere. */
#top,
.o_top_menu,
.seaes-generated-header {
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.o_top_menu {
  align-items: center;
  display: flex;
  gap: 1rem;
  min-height: 4.25rem;
}

.o_logo,
.seaes-generated-logo {
  align-items: flex-start;
  display: inline-flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: .08rem;
  justify-content: center;
  text-decoration: none;
}

.seaes-pronunciation {
  color: rgba(71, 85, 105, .62);
  display: inline-flex;
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  margin-left: .25rem;
  white-space: nowrap;
}

.o_logo img {
  display: block;
  max-height: 2.15rem;
  object-fit: contain;
  width: auto;
}

html[data-effective-theme="dark"] #top .o_logo img,
html[data-effective-theme="dark"] .seaes-generated-logo img,
html[data-effective-theme="dark"] body > header:not(.seaes-generated-header) img[src*="logo"] {
  filter: brightness(0) invert(1) !important;
}

html[data-effective-theme="dark"] .seaes-pronunciation {
  color: rgba(203, 213, 225, .58);
}

.o_primary_nav {
  align-items: center;
  gap: .25rem;
  margin: 0 auto;
}

.o_primary_nav > li > a {
  white-space: nowrap;
}

.o_header_buttons {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: .5rem;
  justify-content: flex-end;
  margin-left: 0;
}

.o_header_buttons .nav-item {
  align-items: center;
  display: inline-flex;
}

.o_mobile_menu_toggle,
.seaes-compact-menu-toggle {
  align-items: center;
  aspect-ratio: 1;
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(148, 163, 184, .3);
  border-radius: 999px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .08);
  color: #1f2937;
  display: inline-flex;
  flex: 0 0 auto;
  height: 2.45rem;
  justify-content: center;
  padding: 0;
  width: 2.45rem;
}

.o_mobile_menu_toggle span,
.seaes-compact-menu-toggle span {
  display: none !important;
}

.o_mobile_menu_toggle i,
.seaes-compact-menu-toggle i {
  display: none !important;
}

.o_mobile_menu_toggle::before,
.seaes-compact-menu-toggle::before {
  background:
    linear-gradient(currentColor, currentColor) 0 0 / 100% 2px no-repeat,
    linear-gradient(currentColor, currentColor) 0 50% / 100% 2px no-repeat,
    linear-gradient(currentColor, currentColor) 0 100% / 100% 2px no-repeat;
  content: "";
  height: .76rem;
  width: 1.05rem;
}

.theme-toggle {
  align-items: center;
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(148, 163, 184, .3);
  border-radius: 999px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .08);
  color: #334155;
  display: inline-flex;
  gap: .5rem;
  line-height: 1;
  min-height: 2.45rem;
  padding: .28rem .72rem .28rem .38rem;
  white-space: nowrap;
}

.theme-toggle::before,
.theme-toggle::after {
  display: none !important;
}

.theme-toggle-track {
  background: #d7dee8;
  border-radius: 999px;
  display: inline-flex;
  height: 1.35rem;
  padding: .15rem;
  transition: background .18s ease;
  width: 2.45rem;
}

.theme-toggle-knob {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 1px 5px rgba(15, 23, 42, .24);
  display: block;
  height: 1.05rem;
  transform: translateX(0);
  transition: transform .18s ease;
  width: 1.05rem;
}

.theme-toggle[data-effective-theme="dark"] {
  background: rgba(15, 23, 42, .94);
  border-color: rgba(148, 163, 184, .3);
  color: #f8fafc;
}

.theme-toggle[data-effective-theme="dark"] .theme-toggle-track {
  background: #1a5eb4;
}

.theme-toggle[data-effective-theme="dark"] .theme-toggle-knob {
  transform: translateX(1.1rem);
}

html[data-effective-theme="dark"] .o_mobile_menu_toggle,
html[data-effective-theme="dark"] .seaes-compact-menu-toggle {
  background: rgba(15, 23, 42, .94) !important;
  border-color: rgba(148, 163, 184, .3) !important;
  color: #f8fafc !important;
}

@media (min-width: 992px) {
  .o_mobile_menu_toggle {
    display: none !important;
  }

  .o_mobile_nav {
    display: none !important;
  }
}

@media (min-width: 992px) and (max-width: 1120px) {
  .o_top_menu {
    gap: .7rem;
  }

  .o_primary_nav {
    gap: .1rem;
  }

  .o_header_buttons .nav-item.d-lg-block {
    display: none !important;
  }

  .theme-toggle [data-theme-label] {
    display: none;
  }

  .theme-toggle {
    min-height: 2.45rem;
    padding: .28rem .38rem;
  }
}

@media (max-width: 991.98px) {
  #top,
  .o_top_menu,
  .seaes-generated-header {
    overflow: visible !important;
  }

  .o_top_menu {
    gap: .55rem;
    justify-content: flex-start;
    min-height: 4rem;
    padding: .65rem 1rem;
  }

  .o_logo {
    flex: 1 1 auto;
    min-width: 0;
    order: 1;
  }

  .o_logo img {
    max-height: 2rem;
    max-width: min(9rem, 42vw);
  }

  .seaes-pronunciation {
    display: inline-flex;
    font-size: .62rem;
    margin-left: .18rem;
  }

  .o_primary_nav {
    display: none !important;
  }

  .o_header_buttons {
    flex: 0 0 auto;
    margin-left: auto;
    order: 2;
  }

  .o_header_buttons .nav-item:not(:first-child) {
    display: none !important;
  }

  .o_mobile_menu_toggle {
    order: 3;
  }

  .theme-toggle [data-theme-label] {
    display: none;
  }

  .theme-toggle {
    min-height: 2.45rem;
    padding: .28rem .38rem;
  }

  .o_mobile_nav {
    background: rgba(255, 255, 255, .98);
    border: 1px solid rgba(148, 163, 184, .24);
    border-radius: 0 0 18px 18px;
    box-shadow: 0 22px 50px rgba(15, 23, 42, .14);
    display: none;
    gap: .5rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    left: .75rem;
    max-height: calc(100dvh - 5rem);
    overflow-y: auto;
    padding: .85rem;
    position: fixed;
    right: .75rem;
    top: 4rem;
    z-index: 1001;
  }

  .o_mobile_nav.active,
  .o_mobile_nav.is-open {
    display: grid !important;
  }

  .o_mobile_nav[data-mobile-enhanced="true"].active,
  .o_mobile_nav[data-mobile-enhanced="true"].is-open {
    display: block !important;
  }

  .o_mobile_nav[data-mobile-enhanced="true"] {
    gap: 0;
    padding: .85rem;
  }

  .mobile-nav-utility,
  .mobile-nav-actions {
    display: grid;
    gap: .45rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .mobile-nav-utility {
    align-items: center;
    border-bottom: 1px solid rgba(148, 163, 184, .18);
    margin-bottom: .75rem;
    padding-bottom: .75rem;
  }

  .mobile-nav-utility .mobile-theme-toggle {
    grid-column: auto;
    justify-self: end;
    margin: 0;
  }

  .mobile-nav-pill {
    align-items: center;
    background: rgba(26, 94, 180, .08) !important;
    border: 1px solid rgba(26, 94, 180, .14) !important;
    border-radius: 999px !important;
    color: #164a8f !important;
    display: inline-flex;
    font-size: .8rem !important;
    font-weight: 800 !important;
    justify-content: center !important;
    min-height: 2.25rem !important;
    padding: .55rem .7rem !important;
    text-align: center;
  }

  .mobile-nav-section {
    margin-top: .8rem;
  }

  .mobile-nav-heading,
  .mobile-nav-section summary {
    color: #64748b;
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .08em;
    margin-bottom: .45rem;
    text-transform: uppercase;
  }

  .mobile-nav-section summary {
    cursor: pointer;
    list-style: none;
    padding: .25rem 0;
  }

  .mobile-nav-section summary::-webkit-details-marker {
    display: none;
  }

  .mobile-nav-section summary::after {
    content: "+";
    float: right;
    font-size: 1rem;
    line-height: 1;
  }

  .mobile-nav-section[open] summary::after {
    content: "-";
  }

  .mobile-nav-grid {
    display: grid;
    gap: .5rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mobile-nav-card {
    align-items: flex-start !important;
    background: rgba(248, 250, 252, .9) !important;
    border: 1px solid rgba(148, 163, 184, .2) !important;
    border-radius: 13px !important;
    color: #172033 !important;
    display: flex !important;
    flex-direction: column;
    gap: .18rem;
    justify-content: center !important;
    min-height: 3.15rem !important;
    padding: .68rem .75rem !important;
  }

  .mobile-nav-card span {
    font-size: .92rem;
    font-weight: 850;
    line-height: 1.05;
  }

  .mobile-nav-card small {
    color: #64748b;
    font-size: .68rem;
    font-weight: 750;
    line-height: 1;
  }

  .mobile-nav-actions {
    border-top: 1px solid rgba(148, 163, 184, .18);
    grid-template-columns: 1fr 1fr;
    margin-top: .9rem;
    padding-top: .8rem;
  }

  .mobile-nav-action {
    align-items: center !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    font-size: .86rem !important;
    font-weight: 850 !important;
    justify-content: center !important;
    min-height: 2.65rem !important;
    padding: .7rem .9rem !important;
    text-align: center;
  }

  .mobile-nav-action.primary {
    background: #1a5eb4 !important;
    border-color: #1a5eb4 !important;
    color: #fff !important;
    grid-column: 1 / -1;
  }

  .mobile-nav-action.ghost {
    background: transparent !important;
  }

  .o_mobile_nav a,
  .o_mobile_nav .nav-link {
    align-items: center;
    background: rgba(248, 250, 252, .94);
    border: 1px solid rgba(148, 163, 184, .2);
    border-radius: 12px;
    color: #1f2937 !important;
    display: flex;
    font-size: .92rem;
    font-weight: 700;
    justify-content: flex-start;
    line-height: 1.15;
    min-height: 2.75rem;
    padding: .72rem .78rem;
    text-decoration: none;
  }

  .o_mobile_nav .btn,
  .o_mobile_nav a[href*="sales-form"],
  .o_mobile_nav a[href*="mailto"],
  .o_mobile_nav .mobile-theme-toggle {
    grid-column: 1 / -1;
  }

  .o_mobile_nav .mobile-theme-toggle {
    justify-self: end;
    margin-bottom: .2rem;
  }

  html[data-effective-theme="dark"] .o_mobile_nav {
    background: rgba(7, 13, 26, .98) !important;
    border-color: rgba(148, 163, 184, .22) !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .42) !important;
  }

  html[data-effective-theme="dark"] .o_mobile_nav a,
  html[data-effective-theme="dark"] .o_mobile_nav .nav-link {
    background: rgba(15, 23, 42, .92) !important;
    border-color: rgba(148, 163, 184, .22) !important;
    color: #f8fafc !important;
  }

  html[data-effective-theme="dark"] .mobile-nav-utility,
  html[data-effective-theme="dark"] .mobile-nav-actions {
    border-color: rgba(148, 163, 184, .18);
  }

  html[data-effective-theme="dark"] .mobile-nav-pill {
    background: rgba(26, 94, 180, .18) !important;
    border-color: rgba(96, 165, 250, .26) !important;
    color: #dbeafe !important;
  }

  html[data-effective-theme="dark"] .mobile-nav-heading,
  html[data-effective-theme="dark"] .mobile-nav-section summary,
  html[data-effective-theme="dark"] .mobile-nav-card small {
    color: #94a3b8 !important;
  }
}

@media (max-width: 480px) {
  .o_top_menu {
    padding-inline: .85rem;
  }

  .o_logo img {
    max-width: 8.25rem;
  }

  .o_mobile_menu_toggle,
  .seaes-compact-menu-toggle,
  .theme-toggle {
    height: 2.35rem;
    min-height: 2.35rem;
  }
}

html[data-effective-theme="dark"] body {
  background: #070d1a !important;
  color: #cbd5e1 !important;
}

html,
body {
  max-width: 100%;
  overflow-x: clip;
}

html[data-effective-theme="dark"] #top,
html[data-effective-theme="dark"] .o_top_menu,
html[data-effective-theme="dark"] body > header:not(.seaes-generated-header) {
  background: rgba(7, 13, 26, .94) !important;
  border-color: rgba(148, 163, 184, .18) !important;
}

html[data-effective-theme="dark"] .o_primary_nav > li > a,
html[data-effective-theme="dark"] .o_header_buttons .nav-link,
html[data-effective-theme="dark"] .o_mobile_nav a,
html[data-effective-theme="dark"] .dropdown-item,
html[data-effective-theme="dark"] body > header:not(.seaes-generated-header) a {
  color: #e2e8f0 !important;
}

html[data-effective-theme="dark"] .dropdown-menu,
html[data-effective-theme="dark"] .o_secondary_nav,
html[data-effective-theme="dark"] .o_mobile_nav {
  background: #0b1120 !important;
  border-color: rgba(148, 163, 184, .22) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .38) !important;
}

html[data-effective-theme="dark"] .dropdown-item:hover,
html[data-effective-theme="dark"] .dropdown-item:focus,
html[data-effective-theme="dark"] .o_mobile_nav a:hover,
html[data-effective-theme="dark"] .o_primary_nav > li > a:hover {
  background: rgba(26, 94, 180, .18) !important;
  color: #ffffff !important;
}

html[data-effective-theme="dark"] main,
html[data-effective-theme="dark"] .vox-landing,
html[data-effective-theme="dark"] section:not(.o_demo_hero):not(.o_footer):not(.o_cta),
html[data-effective-theme="dark"] .bg-white,
html[data-effective-theme="dark"] .bg-slate-50,
html[data-effective-theme="dark"] .bg-blue-50,
html[data-effective-theme="dark"] .bg-gray-50,
html[data-effective-theme="dark"] .bg-gradient-to-b,
html[data-effective-theme="dark"] .bg-gradient-to-br,
html[data-effective-theme="dark"] .from-white,
html[data-effective-theme="dark"] .to-blue-50,
html[data-effective-theme="dark"] .to-gray-50,
html[data-effective-theme="dark"] .bg-200 {
  background-color: #070d1a !important;
  background-image: none !important;
}

html[data-effective-theme="dark"] .card,
html[data-effective-theme="dark"] .glass-card,
html[data-effective-theme="dark"] .o_feature_card,
html[data-effective-theme="dark"] .o_cap_card,
html[data-effective-theme="dark"] .o_levelup_card,
html[data-effective-theme="dark"] .o_principle_card,
html[data-effective-theme="dark"] .o_work_step,
html[data-effective-theme="dark"] .o_testimonial_card,
html[data-effective-theme="dark"] .sales-form-card,
html[data-effective-theme="dark"] .doc-card,
html[data-effective-theme="dark"] .resource-card,
html[data-effective-theme="dark"] .docs-cta,
html[data-effective-theme="dark"] [style*="background:#fff"],
html[data-effective-theme="dark"] [style*="background: #fff"],
html[data-effective-theme="dark"] [style*="background:white"],
html[data-effective-theme="dark"] [style*="background: white"] {
  background: #111827 !important;
  border-color: rgba(148, 163, 184, .22) !important;
  color: #e2e8f0 !important;
}

html[data-effective-theme="dark"] h1,
html[data-effective-theme="dark"] h2,
html[data-effective-theme="dark"] h3,
html[data-effective-theme="dark"] h4,
html[data-effective-theme="dark"] h5,
html[data-effective-theme="dark"] h6,
html[data-effective-theme="dark"] p,
html[data-effective-theme="dark"] li,
html[data-effective-theme="dark"] td,
html[data-effective-theme="dark"] th,
html[data-effective-theme="dark"] label,
html[data-effective-theme="dark"] .doc-card h3,
html[data-effective-theme="dark"] .doc-card p,
html[data-effective-theme="dark"] .resource-card h4,
html[data-effective-theme="dark"] .resource-card p,
html[data-effective-theme="dark"] [style*="color:#111827"],
html[data-effective-theme="dark"] [style*="color:#1e293b"],
html[data-effective-theme="dark"] [style*="color:#374151"],
html[data-effective-theme="dark"] [style*="color:#475569"],
html[data-effective-theme="dark"] [style*="color:#64748b"],
html[data-effective-theme="dark"] [style*="color: #111827"],
html[data-effective-theme="dark"] [style*="color: #1e293b"],
html[data-effective-theme="dark"] [style*="color: #374151"],
html[data-effective-theme="dark"] [style*="color: #475569"],
html[data-effective-theme="dark"] [style*="color: #64748b"] {
  color: #e2e8f0 !important;
}

html[data-effective-theme="dark"] .text-muted,
html[data-effective-theme="dark"] .text-slate-600,
html[data-effective-theme="dark"] .text-gray-600,
html[data-effective-theme="dark"] small {
  color: #94a3b8 !important;
}

html[data-effective-theme="dark"] input,
html[data-effective-theme="dark"] textarea,
html[data-effective-theme="dark"] select,
html[data-effective-theme="dark"] .form-control,
html[data-effective-theme="dark"] .form-select {
  background: #070d1a !important;
  color: #f8fafc !important;
  border-color: rgba(148, 163, 184, .28) !important;
}

.theme-toggle {
  align-items: center;
  background: rgba(255, 255, 255, .82);
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 999px;
  color: var(--body-color, #374151);
  cursor: pointer;
  display: inline-flex;
  font-size: .82rem;
  font-weight: 650;
  gap: .45rem;
  min-height: 2.1rem;
  padding: .35rem .75rem;
}

.theme-toggle::before {
  background: #cbd5e1;
  border-radius: 999px;
  content: "";
  height: 1.05rem;
  width: 2rem;
}

.theme-toggle::after {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 1px 5px rgba(15, 23, 42, .22);
  content: "";
  height: .82rem;
  left: .52rem;
  position: absolute;
  transform: translateY(-50%);
  transition: transform .18s ease;
  top: 50%;
  width: .82rem;
}

.theme-toggle {
  position: relative;
}

.theme-toggle[data-effective-theme="dark"] {
  background: rgba(15, 23, 42, .9);
  color: #f8fafc;
}

.theme-toggle[data-effective-theme="dark"]::before {
  background: #1a5eb4;
}

.theme-toggle[data-effective-theme="dark"]::after {
  transform: translate(0.92rem, -50%);
}

.theme-toggle i {
  display: none;
}

.seaes-universal-nav {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  flex: 1 1 auto;
  gap: .5rem 1rem;
  justify-content: flex-end;
  margin-left: auto;
  min-width: 0;
  max-width: 100%;
}

.seaes-universal-nav a {
  border-radius: 999px;
  color: var(--body-color, #374151);
  font-size: .88rem;
  font-weight: 650;
  line-height: 1;
  padding: .55rem .7rem;
  text-decoration: none;
}

.seaes-universal-nav a:hover,
.seaes-universal-nav a:focus-visible {
  background: rgba(26, 94, 180, .1);
  color: var(--primary, #1a5eb4);
}

.seaes-universal-nav .theme-toggle {
  margin-left: .25rem;
}

.seaes-compact-menu-toggle {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 999px;
  color: var(--body-color, #374151);
  cursor: pointer;
  display: none;
  font-size: .84rem;
  font-weight: 750;
  gap: .45rem;
  min-height: 2.1rem;
  padding: .35rem .75rem;
}

.seaes-compact-menu-toggle i {
  display: none;
}

.seaes-compact-menu-toggle::before {
  content: "";
  width: 1rem;
  height: .72rem;
  background:
    linear-gradient(currentColor, currentColor) 0 0 / 100% 2px no-repeat,
    linear-gradient(currentColor, currentColor) 0 50% / 100% 2px no-repeat,
    linear-gradient(currentColor, currentColor) 0 100% / 100% 2px no-repeat;
}

.seaes-compact-theme-toggle {
  margin-left: auto;
}

.seaes-generated-header {
  background: rgba(255, 255, 255, .92);
  border-bottom: 1px solid rgba(148, 163, 184, .2);
  position: sticky;
  top: 0;
  z-index: 1000;
}

.seaes-generated-header-inner {
  align-items: center;
  display: flex;
  gap: 1rem;
  margin: 0 auto;
  max-width: 1180px;
  min-height: 4.25rem;
  padding: .75rem 1rem;
}

.seaes-generated-logo {
  display: inline-flex;
  flex: 0 0 auto;
}

.seaes-generated-logo img {
  display: block;
  height: 2.15rem !important;
  max-height: 2.15rem !important;
  max-width: 9.5rem !important;
  object-fit: contain;
  width: auto !important;
}

html[data-effective-theme="dark"] .seaes-universal-nav a {
  color: #e2e8f0;
}

html[data-effective-theme="dark"] .seaes-universal-nav a:hover,
html[data-effective-theme="dark"] .seaes-universal-nav a:focus-visible {
  background: rgba(26, 94, 180, .18);
  color: #ffffff;
}

html[data-effective-theme="dark"] .seaes-generated-header {
  background: rgba(7, 13, 26, .94);
  border-color: rgba(148, 163, 184, .18);
}

html[data-effective-theme="dark"] .seaes-compact-menu-toggle {
  background: rgba(15, 23, 42, .9);
  border-color: rgba(148, 163, 184, .26);
  color: #f8fafc;
}

@media (max-width: 900px) {
  .seaes-universal-nav {
    flex-basis: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: .75rem;
    overflow: visible;
    padding-bottom: 0;
    width: 100%;
  }
  .seaes-universal-nav a,
  .seaes-universal-nav .theme-toggle {
    flex: 0 1 auto;
  }
  .seaes-compact-header {
    position: sticky;
    top: 0;
    z-index: 1000;
  }
  .seaes-compact-header .container,
  .seaes-generated-header-inner {
    gap: .55rem;
  }
  .seaes-compact-menu-toggle {
    display: inline-flex;
  }
  .seaes-compact-header .seaes-universal-nav {
    background: rgba(255, 255, 255, .98);
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 16px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, .08);
    display: none;
    gap: .35rem;
    margin: .65rem 0 0;
    padding: .55rem;
  }
  .seaes-compact-header .seaes-universal-nav.is-open {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .seaes-compact-header .seaes-universal-nav a {
    border-radius: 10px;
    line-height: 1.15;
    padding: .75rem .8rem;
  }
  html[data-effective-theme="dark"] .seaes-compact-header .seaes-universal-nav {
    background: rgba(15, 23, 42, .98);
    border-color: rgba(148, 163, 184, .22);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .32);
  }
}

.seaes-voice-widget {
  bottom: 5.25rem;
  position: fixed;
  right: 1rem;
  z-index: 9998;
}

.seaes-voice-fab {
  align-items: center;
  background: linear-gradient(135deg, #1a5eb4, #0f3f7f);
  border: 0;
  border-radius: 999px;
  box-shadow: 0 16px 38px rgba(26, 94, 180, .32);
  color: #fff;
  display: inline-flex;
  font-weight: 750;
  gap: .55rem;
  padding: .8rem 1rem;
}

.seaes-voice-panel {
  background: var(--white, #fff);
  border: 1px solid var(--border-color, #e5e7eb);
  border-radius: 18px;
  bottom: 3.8rem;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .22);
  color: var(--body-color, #374151);
  max-width: min(360px, calc(100vw - 2rem));
  overflow: hidden;
  position: absolute;
  right: 0;
  width: 360px;
}

.seaes-voice-head {
  align-items: flex-start;
  background: linear-gradient(135deg, #0f172a, #1a5eb4);
  color: #fff;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
}

.seaes-voice-head span {
  color: rgba(255, 255, 255, .72);
  display: block;
  font-size: .8rem;
  margin-top: .2rem;
}

.seaes-voice-close {
  background: rgba(255, 255, 255, .12);
  border: 0;
  border-radius: 999px;
  color: #fff;
  height: 2rem;
  width: 2rem;
}

.seaes-voice-log {
  max-height: 220px;
  overflow: auto;
  padding: 1rem;
}

.seaes-voice-log p {
  font-size: .86rem;
  line-height: 1.55;
  margin: 0 0 .75rem;
}

.seaes-voice-actions {
  display: flex;
  gap: .6rem;
  padding: 0 1rem 1rem;
}

.seaes-voice-talk,
.seaes-voice-email {
  align-items: center;
  border-radius: 10px;
  display: inline-flex;
  flex: 1;
  font-size: .86rem;
  font-weight: 700;
  gap: .45rem;
  justify-content: center;
  padding: .7rem .8rem;
}

.seaes-voice-talk {
  background: #1a5eb4;
  border: 0;
  color: #fff;
}

.seaes-voice-talk.is-listening {
  background: #dc2626;
}

.seaes-voice-email {
  border: 1px solid var(--border-color, #e5e7eb);
  color: var(--primary, #1a5eb4);
  text-decoration: none;
}

.seaes-voice-status {
  color: var(--muted, #64748b);
  font-size: .78rem;
  margin: -.4rem 1rem 1rem;
}

@media (max-width: 640px) {
  body {
    font-size: .97rem;
  }
  #top,
  .o_top_menu {
    max-width: 100vw;
    overflow: clip;
  }
  .o_top_menu {
    gap: .45rem;
    padding-inline: .9rem;
  }
  .o_logo img {
    height: 32px;
  }
  .theme-toggle [data-theme-label],
  .seaes-compact-menu-toggle span {
    display: none;
  }
  .theme-toggle {
    gap: 0;
    min-height: 2rem;
    padding: .28rem .48rem;
  }
  .theme-toggle::before {
    height: 1rem;
    width: 1.9rem;
  }
  .theme-toggle::after {
    height: .78rem;
    left: .58rem;
    width: .78rem;
  }
  .o_header_buttons .nav-item:not(:first-child) {
    display: none !important;
  }
  .o_header_buttons {
    flex: 0 0 auto;
    min-width: 0;
  }
  .o_deco,
  .o_deco_blob,
  [class*="blur-3xl"] {
    display: none !important;
  }
  .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .container,
  .container-fluid {
    overflow-x: clip;
  }
  .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .seaes-generated-header-inner {
    min-height: auto;
    padding: .75rem .9rem;
  }
  .seaes-generated-logo img {
    height: 1.8rem !important;
    max-height: 1.8rem !important;
    max-width: 8rem !important;
  }
  .seaes-universal-nav {
    gap: .35rem;
    margin-top: .55rem;
  }
  .seaes-universal-nav a {
    font-size: .78rem;
    padding: .68rem .7rem;
  }
  .seaes-universal-nav .theme-toggle {
    font-size: .78rem;
    margin-left: 0;
    min-height: 1.95rem;
    padding: .3rem .55rem;
  }
  .min-w-\[600px\],
  .min-w-\[640px\] {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }
  .min-w-\[600px\] > table,
  .min-w-\[640px\] > table {
    min-width: 600px;
  }
  .ping-ticker,
  .ticker,
  .o_marquee,
  .o_integrations {
    max-width: 100vw;
    overflow: hidden !important;
  }
  .display-1,
  .display-2,
  .display-3,
  h1 {
    overflow-wrap: anywhere;
  }
  .o_demo_live_hero {
    min-height: min(690px, calc(100svh - 1px)) !important;
    padding-bottom: 2.25rem !important;
    padding-top: 5.25rem !important;
  }
  .o_demo_live_hero h1 {
    font-size: clamp(2.05rem, 9.4vw, 3.15rem) !important;
    line-height: 1.08 !important;
    max-width: 21rem;
  }
  .o_demo_live_hero .o_hero_sub {
    font-size: .96rem !important;
    line-height: 1.55;
    max-width: 21rem;
  }
  .o_demo_live_hero .btn,
  .o_demo_hero .btn {
    min-height: 2.75rem;
    padding: .76rem 1rem;
  }
  .o_demo_hero .d-flex {
    gap: .6rem !important;
  }
  .o_levelup_grid {
    grid-template-columns: 1fr !important;
    gap: .8rem;
  }
  .o_levelup_card,
  .o_feature_card,
  .o_cap_card,
  .o_work_step,
  .o_principle_card,
  .doc-card,
  .resource-card,
  .pricing-card,
  .sales-form {
    border-radius: 14px !important;
    padding: 1.1rem !important;
  }
  .o_cta {
    padding: 3.25rem 0 !important;
  }
  .o_cta h2,
  .o_cta .display-4 {
    font-size: clamp(1.75rem, 8vw, 2.35rem) !important;
    line-height: 1.12 !important;
  }
  .sales-form-section,
  .seaes-philosophy-block,
  section.py-5 {
    padding-top: 3.25rem !important;
    padding-bottom: 3.25rem !important;
  }
  .o_footer {
    padding: 3rem 0 5.5rem !important;
  }
  .o_footer .row > [class*="col-"] {
    margin-bottom: 1.4rem !important;
  }
  .seaes-voice-widget {
    bottom: 1rem;
    left: .85rem;
    max-width: calc(100vw - 1.5rem);
    right: auto;
  }
  .seaes-voice-fab {
    min-height: 2.9rem;
    padding: .75rem .9rem;
  }
  .seaes-voice-fab span {
    display: none;
  }
}

/* Final header pass: this stays at the end to beat older product-page CSS. */
#top,
.o_top_menu,
.seaes-generated-header {
  background: #ffffff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html[data-effective-theme="light"] #top,
html[data-effective-theme="light"] .o_top_menu,
html[data-effective-theme="light"] .seaes-generated-header,
html[data-theme="light"] #top,
html[data-theme="light"] .o_top_menu,
html[data-theme="light"] .seaes-generated-header {
  background: #ffffff !important;
}

html[data-effective-theme="dark"] #top,
html[data-effective-theme="dark"] .o_top_menu,
html[data-effective-theme="dark"] .seaes-generated-header {
  background: #070d1a !important;
}

html[data-effective-theme="dark"] #top .o_logo img,
html[data-effective-theme="dark"] .seaes-generated-logo img,
html[data-effective-theme="dark"] body > header:not(.seaes-generated-header) img[src*="logo"] {
  filter: brightness(0) invert(1) !important;
}

.theme-toggle::before,
.theme-toggle::after {
  display: none !important;
}

.theme-toggle {
  align-items: center !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  gap: .5rem !important;
  height: 2.35rem !important;
  justify-content: center !important;
  min-height: 2.35rem !important;
  padding: .28rem .65rem .28rem .38rem !important;
  width: 7.25rem !important;
}

.theme-toggle .theme-toggle-track {
  background: #d7dee8;
  border-radius: 999px;
  flex: 0 0 auto;
  display: inline-flex;
  height: 1.35rem;
  padding: .15rem;
  width: 2.45rem;
}

.theme-toggle .theme-toggle-knob {
  background: #fff;
  border-radius: 999px;
  box-shadow: 0 1px 5px rgba(15, 23, 42, .24);
  display: block;
  height: 1.05rem;
  transition: transform .18s ease;
  width: 1.05rem;
}

.theme-toggle[data-effective-theme="dark"] .theme-toggle-track {
  background: #1a5eb4;
}

.theme-toggle[data-effective-theme="dark"] .theme-toggle-knob {
  transform: translateX(1.1rem);
}

.theme-toggle [data-theme-label] {
  display: inline-block;
  flex: 0 0 3.1rem;
  text-align: left;
}

@media (min-width: 992px) and (max-width: 1120px) {
  .theme-toggle {
    padding: .28rem .38rem !important;
    width: 3.25rem !important;
  }

  .theme-toggle [data-theme-label] {
    display: none !important;
  }
}

@media (max-width: 991.98px) {
  .o_top_menu {
    align-items: center !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: .55rem !important;
    min-height: 4rem !important;
    overflow: visible !important;
  }

  .o_logo {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    order: 1 !important;
  }

  .o_header_buttons {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    order: 2 !important;
  }

  .theme-toggle {
    padding: .28rem .38rem !important;
    width: 3.25rem !important;
  }

  .theme-toggle [data-theme-label] {
    display: none !important;
  }

  .o_mobile_menu_toggle {
    order: 3 !important;
  }

  .o_mobile_nav.active,
  .o_mobile_nav.is-open {
    display: grid !important;
  }

  .o_mobile_nav[data-mobile-enhanced="true"].active,
  .o_mobile_nav[data-mobile-enhanced="true"].is-open {
    display: block !important;
  }
}
