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

/* Nuvofy identity layer. The shared layout, motion and responsive rules stay in concepts.css. */
.nuvofy-page {
  --cream: #f4f7fa;
  --paper: #ffffff;
  --ink: #111344;
  --muted: #566084;
  --rust: #0072bb;
  --rust-dark: #231651;
  --teal: #1e91d6;
  --teal-pale: #dff8f3;
  --line: #d8e2ea;
  --night: #111344;
  --white: #ffffff;
  --sans: 'Manrope', 'Avenir Next', sans-serif;
  --serif: 'Space Grotesk', 'Avenir Next', sans-serif;
  --mono: 'Manrope', 'Avenir Next', sans-serif;
}

.nuvofy-page::selection {
  background: #71dec9;
  color: #111344;
}

.nuvofy-page a:focus-visible,
.nuvofy-page button:focus-visible {
  outline-color: #71dec9;
}

.nuvofy-page .site-nav {
  background: color-mix(in srgb, #f4f7fa 88%, transparent);
}

.nuvofy-page .brand {
  letter-spacing: -.035em;
}

.nuvofy-page .brand-mark {
  width: 38px;
  height: 38px;
  object-fit: contain;
}

.nuvofy-page .hero h1,
.nuvofy-page .section-title,
.nuvofy-page .about-card h2,
.nuvofy-page .closing h2,
.nuvofy-page .story-step h2,
.nuvofy-page .roadmap-head h2,
.nuvofy-page .rm-copy h3 {
  font-weight: 600;
}

.nuvofy-page .signal-hero,
.nuvofy-page .closing,
.nuvofy-page .site-footer,
.nuvofy-page .roadmap-stage {
  --night: #111344;
}

.nuvofy-page .signal-hero::before {
  background-image:
    linear-gradient(rgba(113, 222, 201, .09) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30, 145, 214, .08) 1px, transparent 1px);
}

.nuvofy-page .hero-label,
.nuvofy-page .signal-hero p,
.nuvofy-page .closing p,
.nuvofy-page .roadmap-head p,
.nuvofy-page .rm-copy p {
  color: #b8c9da;
}

.nuvofy-page .site-footer {
  color: #91a3bd;
}

.nuvofy-page .signal-hero .button.secondary {
  background: rgba(17, 19, 68, .56);
  border-color: #566084;
}

.nuvofy-page .button:hover,
.nuvofy-page .closing .button:hover {
  background: #0072bb;
  border-color: #0072bb;
}

.nuvofy-page .nav-cta,
.nuvofy-page .about-card a,
.nuvofy-page .rm-index {
  color: #0072bb;
}

.nuvofy-page .indicator-seg,
.nuvofy-page .rm-dot,
.nuvofy-page .rm-fill {
  --rust: #71dec9;
}

.nuvofy-page .rm-node.active .rm-dot {
  box-shadow: 0 0 0 5px rgba(113, 222, 201, .22);
}

.nuvofy-page .rm-line,
.nuvofy-page .rm-dot {
  background: #445277;
}

.nuvofy-page .rm-node.active .rm-index {
  color: #71dec9;
}

.nuvofy-page .rm-node.active .rm-copy p {
  color: #d8e2ea;
}

@media (prefers-reduced-motion: reduce) {
  .nuvofy-page * {
    scroll-behavior: auto;
  }
}
