.lucid-landing,
.lucid-landing * {
  box-sizing: border-box;
}

.lucid-landing {
  position: relative;
  isolation: isolate;
  overflow: clip;
  width: 100%;
  min-height: 100vh;
  margin: 0;
  padding: 0;
  font-family: Montserrat, Arial, sans-serif;
  color: var(--lucid-text);
  background: var(--lucid-bg, #01041F);
  font-size: 17px;
  line-height: 1.68;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.lucid-landing::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.032) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: none;
  mask-image: none;
}

.lucid-landing a {
  color: inherit;
  text-decoration: none;
}

.lucid-landing img,
.lucid-landing video,
.lucid-landing iframe,
.lucid-landing svg {
  max-width: 100%;
}

.lucid-landing button,
.lucid-landing input,
.lucid-landing select,
.lucid-landing textarea {
  font: inherit;
}

.lucid-landing h1,
.lucid-landing h2,
.lucid-landing h3,
.lucid-landing p,
.lucid-landing blockquote,
.lucid-landing figure,
.lucid-landing ul {
  margin-top: 0;
}

.lucid-landing h1,
.lucid-landing h2,
.lucid-landing h3 {
  color: #fff;
  font-family: Montserrat, Arial, sans-serif;
  text-wrap: balance;
}

.lucid-landing h1 {
  max-width: 760px;
  margin-bottom: 24px;
  font-size: clamp(2.75rem, 4.7vw, 4.25rem);
  line-height: .99;
  letter-spacing: -.046em;
  font-weight: 800;
}

.lucid-landing h2 {
  margin-bottom: 18px;
  font-size: clamp(2rem, 3.35vw, 3.12rem);
  line-height: 1.04;
  letter-spacing: -.037em;
  font-weight: 800;
}

.lucid-landing h3 {
  margin-bottom: 10px;
  font-size: clamp(1.08rem, 1.5vw, 1.32rem);
  line-height: 1.27;
  letter-spacing: -.018em;
  font-weight: 700;
}

.lucid-landing p {
  margin-bottom: 18px;
  color: var(--lucid-text-2);
}

.lucid-landing strong {
  color: #fff;
  font-weight: 700;
}

.lucid-landing :focus-visible {
  outline: 3px solid var(--lucid-cyan);
  outline-offset: 4px;
}

.lucid-landing ::selection {
  color: #fff;
  background: rgba(252,0,255,.48);
}

.lucid-landing [hidden] {
  display: none !important;
}

.lucid-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;
}
