/* Nerve site: shared base, fonts, nav, footer and the star backdrop. Page layouts live in each page. */
@font-face{font-family:'Syne';src:url(/fonts/syne.woff2) format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope';src:url(/fonts/manrope.woff2) format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'Syne Mono';src:url(/fonts/syne-mono.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--bg:#0B0B0C;--fg:#EDEBE5;--soft:#B4B2AD;--mute:#8C8A86;color-scheme:dark}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}
body{margin:0;background:var(--bg);color:var(--fg);font-family:'Manrope','Helvetica Neue',Arial,sans-serif}
img,svg,canvas{max-width:100%}
[hidden]{display:none!important}
:focus-visible{outline:2px solid #EDEBE5;outline-offset:3px}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;padding:10px 14px;border-radius:999px;background:#EDEBE5;color:#0B0B0C;font-weight:700}
.skip:focus{left:12px}

/* page shell + stars */
.pg{position:relative;isolation:isolate;overflow-x:clip;min-height:100vh}
.space{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.space svg{position:absolute;left:0;top:0}
.space .tw{animation:tw 5s ease-in-out infinite}
@keyframes tw{0%,100%{opacity:.62}50%{opacity:.15}}

/* nav */
.nv{position:relative;z-index:30;display:flex;justify-content:center;padding:24px 16px}
.nv-pill{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;padding:6px;border-radius:28px;background:rgba(18,18,20,.55);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 20px 40px rgba(0,0,0,.5);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.nv-pill a{padding:10px 14px;font-size:14px;text-decoration:none;color:#8C8A86}
.nv-pill a:hover,.nv-pill a[aria-current="page"]{color:#EDEBE5}
.nv-logo{display:flex;align-items:center;padding:13px 14px 13px 16px!important}
.nv-logo svg{display:block;width:57.4px;height:11.4px}
.nv-cta{margin-left:6px;padding:11px 18px!important;border-radius:999px;background:#EDEBE5;color:#0B0B0C!important;font-weight:700}
.nv-cta:hover{background:#FFFFFF}
.nv-phone{display:none;position:relative;width:100%;max-width:420px}
.nv-phone .nv-pill{flex-wrap:nowrap;justify-content:space-between;gap:6px}
.nv-btn{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:0;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);cursor:pointer}
.nv-btn span{display:block;width:16px;height:1.5px;background:#EDEBE5;transition:transform .2s ease,opacity .2s ease}
.nv-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nv-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.nv-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nv-drop{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:20;display:grid;padding:8px;border-radius:24px;background:rgba(18,18,20,.92);border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 40px rgba(0,0,0,.5);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.nv-drop a{padding:14px 16px;font-size:17px;text-decoration:none;color:#8C8A86}
.nv-drop a[aria-current="page"]{color:#EDEBE5}
.nv-drop a.mail{margin-top:4px;border-top:1px solid rgba(255,255,255,.08);font-size:14px}
@media (max-width:699px){.nv{padding:16px}.nv-desk{display:none}.nv-phone{display:block}}

/* footer */
.ft{color:#EDEBE5;border-top:1px solid rgba(255,255,255,.08)}
.ft-in{max-width:1200px;margin:0 auto;padding:56px clamp(16px,4vw,32px) 40px;display:flex;flex-direction:column;gap:40px}
.ft-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px}
.ft-word{display:block;width:clamp(186px,31vw,386px);height:clamp(37px,6.2vw,77px);overflow:visible}
.ft-cols{display:flex;flex-wrap:wrap;gap:32px 48px}
.ft-col{flex:1 1 130px;display:flex;flex-direction:column;gap:10px;font-size:14px}
.ft-col b{font:400 11px/1.4 'Syne Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#8C8A86}
.ft-col a,.ft-col span{color:#B4B2AD;text-decoration:none}
.ft-col a:hover{color:#FFFFFF}
.ft-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);font:400 11px/1.4 'Syne Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#8C8A86}

@media (prefers-reduced-motion:reduce){.space .tw{animation:none}*{scroll-behavior:auto!important}}
