/* Small helpers Tailwind utilities can't express. */
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { font-family: 'Inter', ui-sans-serif, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }

/* Soft lavender hero backdrops */
.bg-hero-soft {
  background:
    radial-gradient(60% 50% at 85% 10%, rgba(139,108,255,.28), transparent 70%),
    radial-gradient(50% 45% at 5% 60%, rgba(160,130,255,.22), transparent 70%),
    linear-gradient(180deg, #F3EFFF 0%, #FFFFFF 100%);
}
.bg-dots {
  background-image: radial-gradient(rgba(124,88,250,.35) 1.2px, transparent 1.2px);
  background-size: 14px 14px;
}
.bg-orb {
  background: radial-gradient(circle at 30% 25%, #FFFFFF 0%, #DCD0FF 35%, #9F82FF 100%);
}
.bg-night-wave {
  background:
    radial-gradient(70% 90% at 100% 100%, rgba(106,60,255,.75), transparent 65%),
    radial-gradient(50% 60% at 0% 100%, rgba(90,46,240,.45), transparent 70%),
    #0B0A1A;
}

/* FAQ plus -> x rotation */
details[open] .faq-plus { transform: rotate(45deg); }
details > summary { list-style: none; }
details > summary::-webkit-details-marker { display: none; }

/* Hide scrollbar on horizontal scrollers */
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { scrollbar-width: none; }

/* Header mega-menus (Product / Solutions). State lives in a data attribute so it
   doesn't depend on Tailwind generating classes at runtime. static/js/main.js sets [data-open]. */
[data-mega-panel] {
  visibility: hidden; opacity: 0; pointer-events: none;
  transform: translate(-50%, 6px);
  transition: opacity .15s ease, transform .15s ease, visibility .15s;
  z-index: 60;
}
[data-mega][data-open] [data-mega-panel] {
  visibility: visible; opacity: 1; pointer-events: auto; transform: translate(-50%, 0);
}
[data-mega-caret] { transition: transform .15s ease; }
[data-mega][data-open] [data-mega-caret] { transform: rotate(180deg); }
