@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&family=Lexend:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root {
  --background: #030805;
  --foreground: #e8f5ef;
  --brand: #10b981;
  --brand-bright: #3fe0a5;
  --lime: #c6f542;
  --lime-deep: #9ecc2a;
  --surface: #0a120d;
  --surface-2: #0d1610;
  --border-brand: rgba(52, 211, 153, 0.22);
  --amber: #fbbf24;
}

* { box-sizing: border-box; }

html {
  height: 100%;
  scroll-behavior: smooth;
}

body {
  min-height: 100%;
  background: var(--background);
  color: var(--foreground);
  font-family: 'Lexend', sans-serif;
  -webkit-font-smoothing: antialiased;
}

.font-mono { font-family: 'JetBrains Mono', monospace; }
.font-display { font-family: 'Space Grotesk', sans-serif; }

.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar { display: none; }

.text-balance { text-wrap: balance; }

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.contact-marquee-track {
  display: flex;
  width: max-content;
  animation: marquee 28s linear infinite;
}

@keyframes spin-slow {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.animate-spin-slow { animation: spin-slow 20s linear infinite; }
.animate-spin-slower { animation: spin-slow 26s linear infinite; }
.animate-spin-fast { animation: spin-slow 15s linear infinite; }

.faq-content {
  display: grid;
  transition: grid-template-rows 0.3s ease, opacity 0.3s ease;
}
.faq-content.collapsed {
  grid-template-rows: 0fr;
  opacity: 0;
}
.faq-content.expanded {
  grid-template-rows: 1fr;
  opacity: 1;
}

.features-track {
  cursor: grab;
}
.features-track:active {
  cursor: grabbing;
}

#google_translate_element {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.goog-te-banner-frame.skiptranslate,
iframe.goog-te-banner-frame,
body > .skiptranslate {
  display: none !important;
}

body {
  top: 0 !important;
}
