:root{
  --bg: #0b0d13;
  --panel: #0f121a;
  --text: #e6e9ef;
  --muted: #9aa3b2;
  --accent: #7A5CFF;
  --accent-2: #6AE3FF;
  --ring: 24px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color: var(--text);
  background: radial-gradient(1200px 700px at 70% -20%, #1a1f2b 0%, var(--bg) 60%),
              linear-gradient(180deg, #0b0d13 0%, #0b0d13 100%);
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
a.button, button{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 16px; border-radius:16px; border:1px solid #232838;
  background:linear-gradient(180deg,#151a25,#0f121a);
  color:var(--text); font-weight:600; letter-spacing:.2px;
  box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 6px 24px rgba(0,0,0,.3);
  transition: transform .08s ease, border-color .2s ease, background .2s ease;
}
a.button:hover, button:hover{border-color:#2b3350; transform: translateY(-1px);}
a.button.primary, button.primary{
  background: linear-gradient(180deg, var(--accent), #4c37d6);
  border: none;
}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.grid{display:grid;gap:20px}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{
  background:linear-gradient(180deg,#121622,#0e111a);
  border:1px solid #1f2636; border-radius:24px; padding:20px;
  box-shadow: 0 12px 40px rgba(0,0,0,.35);
}
nav.site{
  position:sticky; top:0; z-index:50; backdrop-filter:saturate(1.2) blur(10px);
  background: rgba(11,13,19,.6); border-bottom:1px solid rgba(255,255,255,.05);
}
nav .wrap{display:flex;align-items:center;gap:18px;padding:14px 0}
nav img.logo{height:28px}
nav .spacer{flex:1}
nav .links a{padding:8px 10px;border-radius:12px;color:var(--muted)}
nav .links a.active, nav .links a:hover{color:var(--text);background:#151a22}
.hero{position:relative;min-height:72vh;display:flex;align-items:center}
h1{font-size: clamp(34px, 6vw, 64px); line-height:1.08; margin:0 0 12px}
.subtitle{color:var(--muted); font-size: clamp(14px, 2.2vw, 18px); max-width:720px}
.hero-cta{display:flex;gap:12px; margin-top:18px; flex-wrap:wrap}
.badge{display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; font-weight:600;
  background: rgba(122,92,255,.15); border:1px solid rgba(122,92,255,.4); color:#d6d0ff}
.section{padding:60px 0}
.section h2{font-size: clamp(24px, 4vw, 38px); margin:0 0 8px}
.section p.lead{color:var(--muted); max-width:800px}
.footer{
  margin-top:40px; border-top:1px solid #1f2636; padding:28px 0; color:var(--muted); font-size:14px
}
.kbd{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  background:#0b0e15; border:1px solid #20263a; padding:2px 6px; border-radius:8px}
/* Cards */
.feature{
  display:flex; flex-direction:column; gap:8px;
}
.feature h3{margin:0;font-size:18px}
.feature p{margin:0;color:var(--muted)}
/* Responsive */
@media (max-width: 900px){
  .grid-3{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .grid-3, .grid-2{grid-template-columns:1fr}
  nav .links{display:none}
}
/* Canvas holder for the globe */
#globe-wrap{position:absolute; inset:0; pointer-events:none;}
#globe-canvas{width:100%; height:100%; display:block; opacity:.75}
/* Page headers */
.pagehead{padding:64px 0 30px; border-bottom:1px solid #1f2636; background:linear-gradient(180deg,rgba(122,92,255,.08),rgba(122,92,255,0))}
.pagehead h1{margin:0}
.pagehead p{color:var(--muted)}
.table{width:100%; border-collapse:collapse}
.table th, .table td{padding:12px 14px; border-bottom:1px solid #1f2636; text-align:left}
input, textarea, select{
  width:100%; padding:12px 14px; border-radius:14px; border:1px solid #20263a; background:#0f121a; color:var(--text);
}
form .row{display:grid; gap:14px; grid-template-columns:1fr 1fr}
@media (max-width: 720px){ form .row{grid-template-columns:1fr}}
.alert{padding:14px 16px; background:#101626; border:1px solid #1e2a4a; border-radius:16px}