:root{color-scheme:dark;--bg:#0f1115;--elevated:#15181e;--text:#eceff4;--muted:#8b93a4;--edge:#0d9488;--node:#5eead4;--node-bright:#99f6e4;--line:#2a303c;--ink:#042f2e;--code-dim:#7c8496;--font:"Space Grotesk", ui-sans-serif, system-ui, sans-serif;--mono:"Space Mono", ui-monospace, monospace;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}a{color:inherit;text-decoration:none}code,.mono{font-family:var(--mono)}.skip{background:var(--node);color:var(--ink);z-index:100;padding:.5rem .75rem;position:absolute;top:0;left:-9999px}.skip:focus{top:.75rem;left:.75rem}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:where(a,button):focus-visible{outline:2px solid var(--node);outline-offset:3px}.brand-mark{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.7rem;font-size:clamp(1.35rem,3.5vw,1.85rem);font-weight:700;line-height:1;display:inline-flex}.brand-mark img{filter:invert();width:clamp(2rem,4vw,2.6rem);height:clamp(2rem,4vw,2.6rem)}.brand-mark .dot{background:var(--edge);width:.45rem;height:.45rem;box-shadow:0 0 0 0 color-mix(in oklab, var(--edge) 55%, transparent);animation:pulse-dot 2.4s var(--ease) infinite;border-radius:50%}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 0 color-mix(in oklab, var(--edge) 45%, transparent)}50%{box-shadow:0 0 0 .45rem color-mix(in oklab, var(--edge) 0%, transparent)}}.headline{letter-spacing:-.035em;margin:0;font-size:clamp(2rem,5.5vw,3.35rem);font-weight:600;line-height:1.08}.lede{max-width:36rem;color:var(--muted);margin:0;font-size:clamp(1rem,2vw,1.125rem);line-height:1.55}.cta-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.btn{border:2px solid var(--edge);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.05rem;font-size:.72rem;display:inline-flex}.btn-primary{background:var(--node);border-color:var(--node);color:var(--ink)}.btn-primary:hover{background:var(--node-bright);border-color:var(--node-bright)}.btn-ghost:hover{border-color:var(--node);color:var(--node)}.cli{border:1px solid var(--line);background:var(--elevated);max-width:100%;font-family:var(--mono);flex-direction:column;align-items:stretch;display:inline-flex}.cli-tabs{border-bottom:1px solid var(--line);display:flex}.cli-tabs button{color:var(--muted);font-family:var(--mono);letter-spacing:.06em;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:.5rem .85rem;font-size:.7rem}.cli-tabs button:hover{color:var(--text)}.cli-tabs button[aria-selected=true]{border-bottom-color:var(--node);color:var(--node)}.cli-body{align-items:center;gap:.65rem;padding:.65rem .85rem;display:flex;overflow-x:auto}.cli-body code{color:var(--node);white-space:nowrap;gap:.5rem;font-size:.75rem;display:flex}.cli-copy{min-width:2.75rem;min-height:1.75rem;color:var(--muted);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;flex-shrink:0;margin-left:auto;padding:.25rem .4rem;font-size:.65rem}.cli-copy:hover{color:var(--node)}.section{padding:clamp(3.5rem,8vw,5.5rem) clamp(1.25rem,4vw,3rem)}.section-inner{width:min(68rem,100%);margin-inline:auto}.section-kicker{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--edge);margin:0 0 .65rem;font-size:.7rem}.section-title{letter-spacing:-.025em;margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2rem);line-height:1.15}.section-lede{max-width:36rem;color:var(--muted);margin:0 0 2rem}.pillars{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.5rem 1.75rem;margin:0;padding:0;list-style:none;display:grid}.pillars li{border-top:1px solid var(--line);padding-top:1rem}.pillars strong{letter-spacing:-.01em;margin-bottom:.35rem;font-size:1rem;display:block}.pillars p{color:var(--muted);margin:0;font-size:.92rem}.built-on{flex-wrap:wrap;gap:.5rem .65rem;margin:0;padding:0;list-style:none;display:flex}.built-on li{border:1px solid var(--line);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:.35rem .55rem;font-size:.68rem}.v0-note{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.04em;color:var(--muted);padding:1.25rem 0 0;font-size:.72rem}.v0-note strong{color:var(--node);font-weight:700}.close{border-top:1px solid var(--line);background:var(--elevated);padding:clamp(3rem,7vw,4.5rem) clamp(1.25rem,4vw,3rem)}.close-inner{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1.5rem;width:min(68rem,100%);margin-inline:auto;display:flex}.close h2{letter-spacing:-.02em;margin:0 0 .5rem;font-size:clamp(1.35rem,2.5vw,1.75rem)}.close p{color:var(--muted);max-width:28rem;margin:0}.code-panel{border:1px solid var(--line);background:color-mix(in oklab, var(--elevated) 88%, #000);overflow:hidden}.code-panel__bar{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .85rem;font-size:.65rem;display:flex}.code-panel pre{font-family:var(--mono);color:#c5cad6;margin:0;padding:1rem 1.1rem 1.15rem;font-size:.72rem;line-height:1.55;overflow-x:auto}.code-panel .kw{color:var(--node)}.code-panel .str{color:#7dd3c0}.code-panel .cm{color:var(--code-dim)}.code-panel .fn{color:#eceff4}.lp-schematic .hero{align-items:end;min-height:100vh;padding:clamp(2rem,5vw,3.5rem) clamp(1.25rem,4vw,3rem) clamp(2.5rem,6vw,4rem);display:grid;position:relative;overflow:hidden}.lp-schematic .map{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.lp-schematic .map .edge{fill:none;stroke:color-mix(in oklab, var(--edge) 55%, var(--line));stroke-width:1.25px;stroke-dasharray:1;stroke-dashoffset:1px;animation:draw-edge 1.2s var(--ease) forwards}.lp-schematic .map .edge:nth-of-type(2){animation-delay:.2s}.lp-schematic .map .edge:nth-of-type(3){animation-delay:.4s}.lp-schematic .map .edge:nth-of-type(4){animation-delay:.6s}@keyframes draw-edge{to{stroke-dashoffset:0}}.lp-schematic .map .node{fill:var(--bg);stroke:var(--edge);stroke-width:2px;opacity:0;animation:node-in .5s var(--ease) forwards}.lp-schematic .map .node.lit{fill:var(--node);stroke:var(--node)}.lp-schematic .map .node:first-of-type,.lp-schematic .map text:first-of-type{animation-delay:.35s}.lp-schematic .map .node:nth-of-type(2),.lp-schematic .map text:nth-of-type(2){animation-delay:.45s}.lp-schematic .map .node:nth-of-type(3),.lp-schematic .map text:nth-of-type(3){animation-delay:.55s}.lp-schematic .map .node:nth-of-type(4),.lp-schematic .map text:nth-of-type(4){animation-delay:.65s}.lp-schematic .map .node:nth-of-type(5),.lp-schematic .map text:nth-of-type(5){animation-delay:.75s}.lp-schematic .map .node:nth-of-type(6),.lp-schematic .map text:nth-of-type(6){animation-delay:.85s}.lp-schematic .map .node:nth-of-type(7),.lp-schematic .map text:nth-of-type(7){animation-delay:.95s}@keyframes node-in{to{opacity:1}}.lp-schematic .map text{fill:var(--muted);font-family:var(--mono);letter-spacing:.06em;text-anchor:middle;text-transform:uppercase;opacity:0;animation:node-in .4s var(--ease) forwards;font-size:11px}.lp-schematic .hero-copy{z-index:1;background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--bg) 92%, transparent) 18%, var(--bg));flex-direction:column;gap:1.15rem;width:min(40rem,100%);padding:1.5rem 0 0;display:flex;position:relative}.lp-schematic .compare{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=800px){.lp-schematic .compare{grid-template-columns:1fr 1fr}}.lp-schematic .compare .code-panel:first-child pre{color:var(--muted)}.lp-schematic .compare .code-panel:first-child :is(.kw,.str,.fn){color:inherit}.lp-schematic .compare .code-panel:last-child{border-color:color-mix(in oklab, var(--edge) 45%, var(--line))}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}
