/* ===== Nullius Labs : minimal, dark ===== */
:root {
  --bg: #0a0a0b;
  --text: #ededea;
  --dim: #8a8a90;
  --faint: #55555c;
  --hl: #eaeae6;
  --serif: "Newsreader", Georgia, "Times New Roman", serif;
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Each idea gets its own screen, generously spaced. */
.screen {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: 12vh 8vw;
}

.inner {
  width: 100%;
  max-width: 640px;
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 1s ease, transform 1s ease;
}
.inner.in { opacity: 1; transform: none; }

/* Hero */
.wordmark {
  font-family: var(--serif);
  font-weight: 300;
  font-size: clamp(2.4rem, 6vw, 4rem);
  letter-spacing: -0.02em;
  line-height: 1;
}
.tagline {
  font-family: var(--serif);
  font-style: italic;
  font-weight: 300;
  font-size: clamp(1.1rem, 2.4vw, 1.6rem);
  color: var(--dim);
  margin-top: 18px;
}

/* Statements */
.statement {
  font-family: var(--serif);
  font-weight: 300;
  font-size: clamp(1.35rem, 3.4vw, 2.1rem);
  line-height: 1.5;
  letter-spacing: -0.01em;
  color: var(--text);
}
.statement .hl { color: var(--hl); font-style: italic; }
.answer .soft {
  display: block;
  margin-top: 18px;
  font-size: clamp(1rem, 2vw, 1.25rem);
  color: var(--dim);
}

/* Contact */
.contact .inner { text-align: center; }
.motto {
  font-family: var(--serif);
  font-style: italic;
  font-weight: 300;
  font-size: clamp(1.5rem, 4vw, 2.4rem);
  letter-spacing: -0.01em;
  color: var(--text);
}
.footer-note {
  margin-top: 40px;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--faint);
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .inner { opacity: 1; transform: none; transition: none; }
}
