/* Concept 2 — Line Brain: serif + italic headline over a living line drawing */
.lb-svg { position: absolute; overflow: visible; }
.lb-path {
  fill: none; stroke: var(--line); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round;
  stroke-dasharray: 1; stroke-dashoffset: 1;
  animation: lb-draw 2.4s var(--d, 0s) cubic-bezier(.65, 0, .35, 1) forwards;
}
.lb-path:first-child { stroke-width: 2.6; }
@keyframes lb-draw { to { stroke-dashoffset: 0; } }
.lb-pulse path { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.lb-pulse .core { stroke: var(--node-strong); stroke-width: 2.4; }
.lb-pulse .halo { stroke: var(--node); stroke-width: 6; opacity: .35; }
.lb-pulse.glint .core { stroke: var(--pepto-deep); }
.lb-pulse.glint .halo { stroke: var(--glint); }
@media (prefers-reduced-motion: reduce) { .lb-path { stroke-dashoffset: 0; } }

/* Home hero */
.lb-hero { padding-top: calc(env(safe-area-inset-top, 0px) + 128px); padding-bottom: 5.5rem; text-align: center; }
.lb-hero .hero-bg::after {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(ellipse 40% 22% at 50% 70%, var(--page) 20%, transparent 100%),
              linear-gradient(0deg, var(--page), transparent 16%);
}
.lb-hero .wrap { display: flex; flex-direction: column; align-items: center; }
.lb-hero .char { width: clamp(150px, 19vw, 220px); margin-top: 1.6rem; }
.lb-hero h1 {
  font-family: var(--font-serif); font-weight: 400; letter-spacing: -.015em; line-height: .95;
  font-size: clamp(3.1rem, 8.6vw, 7rem); margin: 2rem 0 1.2rem;
}
.lb-hero h1 em { display: block; font-style: italic; color: var(--accent); }
.lb-hero .sub { color: var(--muted); font-size: clamp(1.02rem, 1.6vw, 1.18rem); max-width: 44ch; margin: 0 auto 2.1rem; }
.lb-hero .signup-wrap { display: flex; flex-direction: column; align-items: center; gap: .9rem; width: 100%; }

/* Concept 2 leans serif in its interior headings too */
.lb .band h1 { font-family: var(--font-serif); font-weight: 400; letter-spacing: -.015em; font-size: clamp(2.8rem, 7.5vw, 5.6rem); line-height: .98; }
.lb .two-tone { font-family: var(--font-serif); font-weight: 400; letter-spacing: -.01em; font-size: clamp(2.1rem, 4.8vw, 3.8rem); line-height: 1.05; }
.lb .chapter h2 { font-family: var(--font-serif); font-weight: 400; letter-spacing: -.01em; font-size: clamp(2.2rem, 5vw, 3.6rem); line-height: 1.02; }
