html {
  scroll-behavior: smooth;
}

[style*="opacity:0"] {
  opacity: 1 !important;
  transform: none !important;
}

body {
  background: #060608;
}

.brand-logo {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  color: #f0ede8;
  font-family: "BravioDM", "Avenir Next", Arial, sans-serif;
  font-size: 28px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.082em;
  -webkit-font-smoothing: antialiased;
}

.brand-x {
  display: inline-block;
  margin-left: -0.025em;
  color: transparent;
  background:
    radial-gradient(circle at 14% 20%, #facc15 0 11%, transparent 22%),
    radial-gradient(circle at 82% 18%, #38bdf8 0 13%, transparent 26%),
    radial-gradient(circle at 28% 84%, #ff5c7a 0 14%, transparent 26%),
    linear-gradient(115deg, #ff8a4c 0%, #ff5c7a 25%, #8b5cf6 48%, #38bdf8 70%, #5eead4 100%);
  background-size: 180% 180%;
  background-position: 18% 50%;
  -webkit-background-clip: text;
  background-clip: text;
  text-shadow:
    0 0 0.32em rgba(255, 138, 76, 0.18),
    0 0 0.22em rgba(56, 189, 248, 0.14);
  transform-origin: 50% 52%;
}

@media (prefers-reduced-motion: no-preference) {
  .brand-x {
    animation: braviox-chroma-flow 5.6s cubic-bezier(0.16, 1, 0.3, 1) infinite;
  }
}

@keyframes braviox-chroma-flow {
  0%, 100% {
    background-position: 18% 50%;
    filter: saturate(1.04) brightness(1);
    transform: translate3d(0, 0, 0) rotate(0deg);
  }

  45% {
    background-position: 86% 46%;
    filter: saturate(1.22) brightness(1.1);
    transform: translate3d(0.012em, -0.006em, 0) rotate(-1deg);
  }

  68% {
    background-position: 58% 74%;
    filter: saturate(1.12) brightness(0.98);
    transform: translate3d(-0.006em, 0.004em, 0) rotate(0.6deg);
  }
}

.voice-demo-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.08),
    0 28px 80px rgba(0, 0, 0, 0.42);
  transition:
    border-color 360ms ease,
    box-shadow 360ms ease,
    background-color 360ms ease;
}

.voice-demo-card::before,
.voice-demo-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  border-radius: inherit;
}

.voice-demo-card::before {
  opacity: 0;
  background:
    radial-gradient(circle at 18% 16%, rgba(56, 189, 248, 0.16), transparent 34%),
    radial-gradient(circle at 86% 82%, rgba(139, 92, 246, 0.15), transparent 36%),
    linear-gradient(135deg, rgba(255, 138, 76, 0.07), transparent 42%);
  transition: opacity 420ms ease;
}

.voice-demo-card::after {
  opacity: 0;
  background: linear-gradient(112deg, transparent 0 35%, rgba(255, 255, 255, 0.11) 46%, transparent 58% 100%);
  transform: translateX(-135%);
}

.voice-demo-card.is-playing {
  box-shadow:
    inset 0 0 0 1px rgba(56, 189, 248, 0.2),
    0 0 0 1px rgba(56, 189, 248, 0.08),
    0 34px 96px rgba(8, 145, 178, 0.18),
    0 28px 80px rgba(0, 0, 0, 0.42);
}

.voice-demo-card.is-playing::before {
  opacity: 1;
}

.voice-demo-button.is-playing {
  color: rgba(240, 237, 232, 0.88) !important;
  border-color: rgba(56, 189, 248, 0.28) !important;
  background: rgba(255, 255, 255, 0.1) !important;
}

.voice-demo-bar {
  transform-origin: 50% 100%;
  will-change: transform, opacity;
}

.voice-demo-line {
  will-change: opacity, filter;
}

@media (prefers-reduced-motion: no-preference) {
  .voice-demo-card.is-playing::after {
    opacity: 1;
    animation: voice-demo-sheen 4.8s cubic-bezier(0.16, 1, 0.3, 1) infinite;
  }

  .voice-demo-card.is-playing .voice-demo-bar {
    animation: voice-demo-wave var(--voice-speed, 980ms) ease-in-out infinite;
    animation-delay: var(--voice-delay, 0ms);
  }

  .voice-demo-card.is-playing .voice-demo-line {
    animation: voice-demo-line 5.8s ease-in-out infinite;
    animation-delay: var(--line-delay, 0ms);
  }

  .voice-demo-button.is-playing svg {
    animation: voice-demo-play 1.4s ease-in-out infinite;
  }
}

@keyframes voice-demo-wave {
  0%, 100% {
    opacity: 0.45;
    transform: scaleY(0.44);
  }

  34% {
    opacity: 1;
    transform: scaleY(1.24);
  }

  62% {
    opacity: 0.72;
    transform: scaleY(0.72);
  }
}

@keyframes voice-demo-line {
  0%, 100% {
    opacity: 0.58;
    filter: blur(0);
  }

  38% {
    opacity: 1;
    filter: blur(0);
  }

  56% {
    opacity: 0.72;
    filter: blur(0.08px);
  }
}

@keyframes voice-demo-sheen {
  0%, 18% {
    transform: translateX(-135%);
  }

  56%, 100% {
    transform: translateX(135%);
  }
}

@keyframes voice-demo-play {
  0%, 100% {
    transform: translateX(0) scale(1);
    opacity: 0.8;
  }

  50% {
    transform: translateX(1px) scale(1.08);
    opacity: 1;
  }
}

.email-demo-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.08),
    0 32px 92px rgba(0, 0, 0, 0.42);
}

.email-demo-card::before,
.email-demo-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
}

.email-demo-card > * {
  position: relative;
  z-index: 1;
}

.email-demo-card::before {
  opacity: 0;
  background:
    radial-gradient(circle at 16% 14%, rgba(255, 138, 76, 0.1), transparent 34%),
    radial-gradient(circle at 82% 78%, rgba(139, 92, 246, 0.11), transparent 38%);
  transition: opacity 360ms ease;
}

.email-demo-card::after {
  opacity: 0;
  background: linear-gradient(108deg, transparent 0 36%, rgba(255, 255, 255, 0.09) 48%, transparent 61% 100%);
  transform: translateX(-130%);
}

.email-demo-card.is-live::before {
  opacity: 1;
}

.email-demo-live-pill {
  position: relative;
  overflow: hidden;
}

.email-demo-window-dot,
.email-demo-field-row,
.email-demo-body-line,
.email-demo-real-time-badge,
.email-demo-subject {
  will-change: opacity, transform, filter;
}

@media (prefers-reduced-motion: no-preference) {
  .email-demo-card.is-live {
    animation: email-card-breathe 7.4s ease-in-out infinite;
  }

  .email-demo-card.is-live::after {
    opacity: 1;
    animation: email-card-sheen 6.2s cubic-bezier(0.16, 1, 0.3, 1) infinite;
  }

  .email-demo-card.is-live .email-demo-window-dot {
    animation: email-window-dot 2.7s ease-in-out infinite;
    animation-delay: var(--email-dot-delay, 0ms);
  }

  .email-demo-card.is-live .email-demo-live-pill {
    animation: email-live-pulse 2.2s ease-in-out infinite;
  }

  .email-demo-card.is-live .email-demo-field-row {
    animation: email-field-reveal 5.8s ease-in-out infinite;
    animation-delay: var(--email-row-delay, 0ms);
  }

  .email-demo-card.is-live .email-demo-body-line {
    animation: email-line-reveal 6.4s ease-in-out infinite;
    animation-delay: var(--email-line-delay, 0ms);
  }

  .email-demo-card.is-live .email-demo-real-time-badge {
    animation: email-badge-scan 3.6s ease-in-out infinite;
  }

  .email-demo-card.is-live .email-demo-subject {
    animation: email-subject-focus 4.8s ease-in-out infinite;
  }
}

@keyframes email-card-breathe {
  0%, 100% {
    filter: saturate(1) brightness(1);
    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, 0.08),
      0 32px 92px rgba(0, 0, 0, 0.42);
  }

  50% {
    filter: saturate(1.08) brightness(1.035);
    box-shadow:
      inset 0 0 0 1px rgba(255, 138, 76, 0.18),
      0 28px 80px rgba(139, 92, 246, 0.08),
      0 32px 92px rgba(0, 0, 0, 0.42);
  }
}

@keyframes email-card-sheen {
  0%, 24% {
    transform: translateX(-130%);
  }

  66%, 100% {
    transform: translateX(130%);
  }
}

@keyframes email-window-dot {
  0%, 100% {
    opacity: 0.74;
    transform: scale(1);
  }

  42% {
    opacity: 1;
    transform: scale(1.16);
  }
}

@keyframes email-live-pulse {
  0%, 100% {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
    filter: brightness(1);
  }

  50% {
    box-shadow:
      inset 0 0 0 1px rgba(134, 239, 172, 0.22),
      0 0 18px rgba(134, 239, 172, 0.08);
    filter: brightness(1.08);
  }
}

@keyframes email-field-reveal {
  0%, 100% {
    opacity: 0.72;
    transform: translateX(0);
  }

  42% {
    opacity: 1;
    transform: translateX(4px);
  }
}

@keyframes email-line-reveal {
  0%, 100% {
    opacity: 0.68;
    transform: translateY(0);
  }

  40% {
    opacity: 1;
    transform: translateY(-2px);
  }
}

@keyframes email-badge-scan {
  0%, 100% {
    opacity: 0.68;
    filter: saturate(1);
    box-shadow: none;
  }

  50% {
    opacity: 1;
    filter: saturate(1.2);
    box-shadow: 0 0 18px rgba(139, 92, 246, 0.1);
  }
}

@keyframes email-subject-focus {
  0%, 100% {
    filter: brightness(1);
  }

  48% {
    filter: brightness(1.18);
  }
}

.campaign-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.08),
    0 30px 90px rgba(0, 0, 0, 0.44);
}

.campaign-card::before,
.campaign-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
}

.campaign-card > * {
  position: relative;
  z-index: 1;
}

.campaign-card::before {
  opacity: 0;
  background:
    radial-gradient(circle at 22% 18%, rgba(255, 138, 76, 0.11), transparent 32%),
    radial-gradient(circle at 82% 76%, rgba(56, 189, 248, 0.09), transparent 34%);
  transition: opacity 360ms ease;
}

.campaign-card::after {
  opacity: 0;
  background: linear-gradient(108deg, transparent 0 36%, rgba(255, 255, 255, 0.09) 48%, transparent 60% 100%);
  transform: translateX(-130%);
}

.campaign-card.is-running::before {
  opacity: 1;
}

.campaign-status-pill {
  position: relative;
  overflow: hidden;
}

.campaign-metric,
.campaign-activity-row {
  will-change: opacity, transform, filter;
}

.campaign-metric {
  position: relative;
  overflow: hidden;
}

.campaign-metric::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 0 35%, rgba(255, 255, 255, 0.13) 48%, transparent 62% 100%);
  transform: translateX(-120%);
}

@media (prefers-reduced-motion: no-preference) {
  .campaign-card.is-running {
    animation: campaign-card-breathe 7s ease-in-out infinite;
  }

  .campaign-card.is-running::after {
    opacity: 1;
    animation: campaign-card-sheen 5.6s cubic-bezier(0.16, 1, 0.3, 1) infinite;
  }

  .campaign-card.is-running .campaign-status-pill {
    animation: campaign-status-glow 2.2s ease-in-out infinite;
  }

  .campaign-card.is-running .campaign-metric {
    animation: campaign-metric-lift 4.8s ease-in-out infinite;
    animation-delay: var(--campaign-delay, 0ms);
  }

  .campaign-card.is-running .campaign-metric::after {
    animation: campaign-metric-sheen 4.8s ease-in-out infinite;
    animation-delay: var(--campaign-delay, 0ms);
  }

  .campaign-card.is-running .campaign-activity-row {
    animation: campaign-activity-pulse 5.4s ease-in-out infinite;
    animation-delay: var(--campaign-row-delay, 0ms);
  }
}

@keyframes campaign-card-breathe {
  0%, 100% {
    filter: saturate(1) brightness(1);
    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, 0.08),
      0 30px 90px rgba(0, 0, 0, 0.44);
  }

  50% {
    filter: saturate(1.08) brightness(1.04);
    box-shadow:
      inset 0 0 0 1px rgba(255, 138, 76, 0.18),
      0 34px 96px rgba(255, 138, 76, 0.08),
      0 30px 90px rgba(0, 0, 0, 0.44);
  }
}

@keyframes campaign-card-sheen {
  0%, 22% {
    transform: translateX(-130%);
  }

  64%, 100% {
    transform: translateX(130%);
  }
}

@keyframes campaign-status-glow {
  0%, 100% {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
  }

  50% {
    box-shadow:
      inset 0 0 0 1px rgba(134, 239, 172, 0.22),
      0 0 18px rgba(134, 239, 172, 0.08);
  }
}

@keyframes campaign-metric-lift {
  0%, 100% {
    opacity: 0.82;
    transform: translate3d(0, 0, 0);
  }

  18%, 34% {
    opacity: 1;
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes campaign-metric-sheen {
  0%, 16% {
    opacity: 0;
    transform: translateX(-120%);
  }

  28% {
    opacity: 1;
  }

  46%, 100% {
    opacity: 0;
    transform: translateX(120%);
  }
}

@keyframes campaign-activity-pulse {
  0%, 100% {
    opacity: 0.58;
    transform: translate3d(0, 0, 0);
  }

  20%, 38% {
    opacity: 1;
    transform: translate3d(6px, 0, 0);
  }
}

.crm-marquee-shell {
  position: relative;
  isolation: isolate;
}

.crm-marquee-shell::before,
.crm-marquee-shell::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: min(8vw, 96px);
  pointer-events: none;
}

.crm-marquee-shell::before {
  left: 0;
  background: linear-gradient(90deg, #0a0a0d 0%, rgba(10, 10, 13, 0) 100%);
}

.crm-marquee-shell::after {
  right: 0;
  background: linear-gradient(270deg, #0a0a0d 0%, rgba(10, 10, 13, 0) 100%);
}

.crm-marquee-track {
  align-items: center;
  will-change: transform;
  transform: translate3d(0, 0, 0);
}

.crm-logo-tile {
  opacity: 0.88;
  transition:
    opacity 220ms ease,
    filter 220ms ease,
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

.crm-marquee-shell:hover .crm-logo-tile {
  opacity: 0.62;
}

.crm-logo-tile:hover {
  opacity: 1 !important;
  filter: saturate(1.1) brightness(1.08);
  transform: translate3d(0, -3px, 0) scale(1.04);
}

@media (prefers-reduced-motion: no-preference) {
  .crm-marquee-track.is-animated {
    animation: crm-marquee-slide var(--marquee-duration, 36s) linear infinite;
  }

  .crm-marquee-shell:hover .crm-marquee-track.is-animated {
    animation-play-state: paused;
  }
}

@media (prefers-reduced-motion: reduce) {
  .crm-marquee-track {
    transform: none !important;
  }
}

@keyframes crm-marquee-slide {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(calc(-1 * var(--marquee-distance, 50%)), 0, 0);
  }
}

canvas {
  opacity: 0.92;
}

form[action=""] {
  pointer-events: auto;
}
