@font-face{
  font-family:'Inter';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Inter';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('fonts/inter-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{
  --bg:#08080a;
  --surface:#0d0d10;
  --surface-2:#111115;
  --line:rgba(255,255,255,.075);
  --line-hi:rgba(255,255,255,.16);
  --text:#ededf0;
  --text-2:#a1a3ad;
  --text-3:#6b6d78;
  --accent:#19d9aa;
  --maxw:1120px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg);color:var(--text);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-size:16px;line-height:1.6;letter-spacing:-.011em;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
body::before{
  content:'';position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
a{color:inherit;text-decoration:none}
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--accent);color:#04120e;padding:12px 20px;border-radius:8px;font-weight:500}
.skip:focus{left:16px;top:16px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

.navbar{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;justify-content:center;padding:20px 16px;transition:padding .35s var(--ease)}
.navbar.scrolled{padding:12px 16px}
.pill{
  display:flex;align-items:center;gap:8px;
  background:rgba(16,16,20,.62);border:1px solid var(--line);
  backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);
  border-radius:999px;padding:7px 7px 7px 18px;
  transition:background .35s var(--ease),border-color .35s var(--ease);
}
.navbar.scrolled .pill{background:rgba(16,16,20,.85);border-color:var(--line-hi)}
.brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:14.5px;letter-spacing:-.02em;padding-right:6px}
.brand svg{width:19px;height:19px;display:block}
.pill nav{display:flex;align-items:center;gap:2px}
.pill nav a{
  font-size:13.5px;color:var(--text-2);padding:8px 14px;border-radius:999px;font-weight:450;
  transition:color .2s,background .2s;white-space:nowrap;
}
.pill nav a:hover{color:var(--text);background:rgba(255,255,255,.05)}
.cta{
  background:var(--text);color:#08080a !important;font-weight:550;font-size:13.5px;
  padding:9px 17px;border-radius:999px;transition:opacity .2s,transform .2s;white-space:nowrap;
}
.cta:hover{opacity:.87;transform:translateY(-1px)}
.burger{display:none;background:none;border:0;color:var(--text);padding:8px 12px;cursor:pointer;font-size:17px;border-radius:999px}

.hero{position:relative;padding:210px 0 128px;overflow:hidden}
.glow{
  position:absolute;top:-340px;left:50%;transform:translateX(-58%);
  width:1240px;height:820px;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(25,217,170,.15),rgba(25,217,170,.045) 38%,transparent 68%);
}
.hero .wrap{position:relative;z-index:2;max-width:960px}
.eyebrow{
  display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:500;
  color:var(--text-2);letter-spacing:.01em;border:1px solid var(--line);
  padding:6px 15px 6px 11px;border-radius:999px;background:rgba(255,255,255,.022);margin-bottom:30px;
}
.dot{width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 9px var(--accent)}
h1{font-size:clamp(2rem,4.1vw,3.4rem);font-weight:580;line-height:1.08;letter-spacing:-.032em;max-width:22ch;margin-bottom:30px}
h1 span{display:block;color:var(--text-2)}
.lead{font-size:clamp(1.02rem,1.6vw,1.2rem);color:var(--text-2);max-width:53ch;line-height:1.62;margin-bottom:42px}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 24px;border-radius:10px;font-size:14.5px;font-weight:530;transition:all .22s var(--ease)}
.btn-1{background:var(--text);color:#08080a}
.btn-1:hover{transform:translateY(-2px);box-shadow:0 10px 30px -8px rgba(255,255,255,.22)}
.btn-2{border:1px solid var(--line-hi);color:var(--text)}
.btn-2:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.28)}
.btn svg{width:15px;height:15px}

#net{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:0;transition:opacity 1.4s ease}
#net.on{opacity:1}

section{position:relative;z-index:2;scroll-margin-top:104px}
.sec{padding:112px 0}
.sec-tight{padding-top:0}
.label{display:block;font-size:12px;font-weight:560;letter-spacing:.13em;text-transform:uppercase;color:var(--text-3);margin-bottom:22px}
h2{font-size:clamp(1.85rem,3.4vw,2.6rem);font-weight:570;letter-spacing:-.032em;line-height:1.12;margin-bottom:26px;max-width:20ch}
.about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:72px;align-items:start}
.about-grid p{color:var(--text-2);margin-bottom:20px;font-size:16.5px;line-height:1.72}
.about-grid p:last-child{margin-bottom:0}
.pull{
  color:var(--text) !important;font-size:18px !important;font-weight:480;
  border-left:2px solid var(--accent);padding-left:20px;margin-top:32px !important;
}

.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:52px}
.card{
  position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:16px;padding:34px 32px;overflow:hidden;
  transition:border-color .3s var(--ease),background .3s var(--ease),transform .3s var(--ease);
}
.card:hover{border-color:var(--line-hi);background:var(--surface-2);transform:translateY(-3px)}
.card.big{grid-column:span 2}
.card.wide{grid-column:span 2}
.ico{
  width:38px;height:38px;border-radius:10px;background:rgba(25,217,170,.09);
  border:1px solid rgba(25,217,170,.19);display:flex;align-items:center;justify-content:center;margin-bottom:22px;
}
.ico svg{width:18px;height:18px;stroke:var(--accent)}
.card h3{font-size:17.5px;font-weight:560;letter-spacing:-.022em;margin-bottom:12px}
.card p{font-size:14.8px;color:var(--text-2);line-height:1.68}
.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.tag{font-size:11.5px;color:var(--text-3);border:1px solid var(--line);padding:4px 11px;border-radius:999px}

.contact{border-top:1px solid var(--line);padding:112px 0 116px;position:relative;overflow:hidden}
.contact .glow{top:auto;bottom:-480px;transform:translateX(-50%);opacity:.72}
.contact .wrap{position:relative;z-index:2;text-align:center;max-width:660px}
.contact h2{margin:0 auto 20px;max-width:none}
.contact p{color:var(--text-2);margin-bottom:36px;font-size:17px}
.mail{
  display:inline-flex;align-items:center;gap:11px;font-size:1.32rem;font-weight:540;
  letter-spacing:-.025em;padding-bottom:5px;border-bottom:1px solid var(--line-hi);transition:border-color .25s,color .25s;
}
.mail:hover{border-bottom-color:var(--accent);color:var(--accent)}
.mail svg{width:19px;height:19px}

.legal{padding:170px 0 100px}
.legal .wrap{max-width:820px}
.legal h1{font-size:clamp(1.9rem,3.6vw,2.5rem);font-weight:570;letter-spacing:-.032em;max-width:none;margin-bottom:18px}
.legal .intro{color:var(--text-2);font-size:15.5px;line-height:1.7;margin-bottom:8px}
.legal h2{font-size:1.02rem;font-weight:570;letter-spacing:-.015em;margin:48px 0 16px;max-width:none;padding-bottom:12px;border-bottom:1px solid var(--line)}
.legal h3{font-size:15.5px;font-weight:550;margin:28px 0 10px;color:var(--text)}
.legal p{color:var(--text-2);margin-bottom:14px;line-height:1.72}
.legal ul{color:var(--text-2);padding-left:20px;margin-bottom:14px;line-height:1.72}
.legal li{margin-bottom:6px}
.legal a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.legal table{width:100%;border-collapse:collapse;margin:18px 0;font-size:15px}
.legal th,.legal td{border:1px solid var(--line);padding:11px 15px;text-align:left;vertical-align:top}
.legal th{color:var(--text);font-weight:520;width:36%;background:rgba(255,255,255,.018)}
.legal td{color:var(--text-2)}
.legal .updated{margin-top:44px;padding-top:20px;border-top:1px solid var(--line);font-size:14px;color:var(--text-3)}
.back{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--text-3);margin-bottom:30px;transition:color .2s}
.back:hover{color:var(--text)}
.back svg{width:14px;height:14px}

footer{position:relative;z-index:2;border-top:1px solid var(--line);padding:34px 0}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:13px;color:var(--text-3)}
footer nav{display:flex;gap:24px}
footer nav a:hover{color:var(--text-2)}

.rv{opacity:0;transform:translateY(11px);transition:opacity .62s var(--ease),transform .62s var(--ease)}
.rv.in{opacity:1;transform:none}

@media(max-width:900px){
  .about-grid{grid-template-columns:1fr;gap:34px}
  .bento{grid-template-columns:1fr}
  .card.big,.card.wide{grid-column:span 1}
}
@media(max-width:680px){
  .wrap{padding:0 20px}
  .pill nav{
    display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;
    align-items:stretch;background:rgba(16,16,20,.96);backdrop-filter:blur(20px);
    border:1px solid var(--line);border-radius:16px;padding:10px;gap:2px;
  }
  .pill nav.open{display:flex}
  .pill nav a{padding:12px 16px;border-radius:10px;font-size:15px}
  .cta{text-align:center}
  .burger{display:block}
  .pill{width:100%;max-width:420px;justify-content:space-between;position:relative;padding:7px 7px 7px 16px}
  .hero{padding:150px 0 88px}
  .sec{padding:76px 0}
  .legal{padding:130px 0 70px}
  .legal table,.legal tbody,.legal tr,.legal th,.legal td{display:block;width:auto}
  .legal tr{border:1px solid var(--line);margin-bottom:10px}
  .legal th,.legal td{border:0;padding:10px 14px}
  .legal th{padding-bottom:2px;background:none;font-size:12.5px;color:var(--text-3)}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none !important;transition-duration:.01ms !important}
  .rv{opacity:1;transform:none}
  html{scroll-behavior:auto}
}