:root {
  --display: "Inter Tight", "Manrope", sans-serif;
  --motion-y: 0px;
  --section-progress: 0.5;
}

/* One display family, varied by weight and posture instead of random font swaps. */
.site-section h2,
.waitlist-section-complete h2,
.product-demo-heading h2 {
  font-family: var(--display);
  font-weight: 520;
  letter-spacing: -0.045em;
  line-height: 0.94;
}

.expressive-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  column-gap: 0.18em;
  row-gap: 0.06em;
  max-width: 980px;
}

.expressive-heading > span {
  display: inline-block;
}

.expressive-heading .type-heavy {
  font-weight: 780;
  letter-spacing: -0.052em;
}

.expressive-heading .type-medium {
  color: rgba(245, 246, 247, 0.82);
  font-weight: 540;
}

.expressive-heading .type-light {
  color: rgba(245, 246, 247, 0.62);
  font-weight: 340;
  letter-spacing: -0.04em;
}

.expressive-heading .type-accent {
  color: rgba(245, 246, 247, 0.92);
  font-family: var(--display);
  font-style: italic;
  font-weight: 520;
  letter-spacing: -0.042em;
  line-height: 1.08;
  padding-bottom: 0.04em;
}

.heading-stack {
  display: grid;
  justify-items: start;
  row-gap: 0.08em;
}

.heading-stack > * {
  display: block;
}

.copy-emphasis,
.section-lead strong,
.record-points strong {
  color: rgba(255, 255, 255, 0.94);
  font-weight: 700;
}

.section-lead strong {
  letter-spacing: -0.018em;
}

.section-context {
  color: rgba(245, 246, 247, 0.68);
  font-family: var(--display);
  font-size: clamp(17px, 1.45vw, 22px);
  font-style: italic;
  font-weight: 430;
  letter-spacing: -0.018em;
  line-height: 1.28;
}

.metric-row h3,
.workflow-steps h3,
.validation-principles h3 {
  font-family: var(--display);
}

/* Flat surfaces and background shifts replace decorative glow blobs. */
.site-section::before,
.site-section[data-ambient-word]::after,
.waitlist-watermark {
  display: none;
}

.product-intro {
  background: #050505;
}

.metrics-section,
.record-section,
.launch-section {
  background: #050505;
}

.workflow-section-complete,
.validation-section-complete {
  background: #08090b;
}

/* Measurement rows stay quiet; scroll entrance provides the motion. */
.metric-row {
  position: relative;
  isolation: isolate;
}

.metric-row::before,
.metric-row::after {
  display: none;
}

.metric-row > div,
.metric-code {
  transition-property: color;
  transition-duration: 180ms;
  transition-timing-function: ease-out;
}

.metric-row:hover .metric-code,
.metric-row:focus-within .metric-code {
  color: white;
}

/* The workflow keeps one meaningful line: completed scroll progress. */
.workflow-steps {
  position: relative;
}

.workflow-steps::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 21px;
  width: 1px;
  background: var(--signal);
  opacity: 0.7;
  pointer-events: none;
  transform: scaleY(var(--workflow-progress, 0));
  transform-origin: top center;
  will-change: transform;
}

.workflow-steps li > span {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 50%;
  color: var(--signal);
  background: #08090b;
  transition-property: border-color, color;
  transition-duration: 180ms;
  transition-timing-function: ease-out;
}

.workflow-steps li:hover > span {
  border-color: rgba(255, 255, 255, 0.56);
  color: white;
}

/* Product screenshot receives only physical parallax, no scanning beam. */
.record-device img {
  transform: translate3d(0, var(--record-image-y, 0px), 0) scale(var(--record-image-scale, 1.02));
  transform-origin: center top;
  will-change: transform;
}

.record-device::before {
  display: none;
}

.record-points li {
  transition-property: color;
  transition-duration: 180ms;
  transition-timing-function: ease-out;
}

.record-points li:hover {
  color: white;
}

/* Validation stays factual and still. */
.validation-principles article::before {
  display: none;
}

.validation-status-line > span {
  animation: none;
}

/* The close is intentionally flat and direct. */
.waitlist-section-complete {
  isolation: isolate;
  background: #050505;
}

.waitlist-section-complete::before {
  display: none;
}

.waitlist-inner-complete {
  position: relative;
  z-index: 1;
}

.waitlist-control {
  box-shadow: none;
  transition-property: border-color, background-color;
  transition-duration: 180ms;
  transition-timing-function: ease-out;
}

.waitlist-control:hover {
  border-color: rgba(255, 255, 255, 0.42);
}

.waitlist-control button span:last-child {
  transition-property: transform;
  transition-duration: 180ms;
  transition-timing-function: var(--ease-out);
}

.waitlist-control button:hover span:last-child,
.waitlist-control button:focus-visible span:last-child {
  transform: translate(3px, -3px);
}

.site-footer-complete .brand {
  gap: 14px;
  font-family: "Michroma", sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.24em;
}

.site-footer-complete .brand span {
  font-family: inherit;
  font-size: inherit;
  font-style: normal;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .expressive-heading {
    row-gap: 0.08em;
  }
}

@media (max-width: 820px) {
  .expressive-heading {
    display: grid;
    justify-items: start;
    column-gap: 0;
  }

  .expressive-heading > span {
    display: block;
  }

  .workflow-steps::after {
    left: 21px;
  }
}

@media (max-width: 560px) {
  .site-section h2,
  .waitlist-section-complete h2,
  .product-demo-heading h2 {
    letter-spacing: -0.04em;
    line-height: 0.97;
  }

  .expressive-heading .type-accent {
    line-height: 1.1;
  }

  .section-context {
    font-size: 17px;
  }

  .workflow-steps::after {
    left: 20px;
  }
}

@media (hover: none) {
  .record-points li:hover {
    color: inherit;
  }
}

@media (prefers-reduced-motion: reduce) {
  .record-device img {
    transform: none !important;
  }

  .workflow-steps::after {
    transform: scaleY(1);
  }
}
