*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

html{scroll-behavior:smooth}
body{
  position:relative;
  overflow-x:hidden;
  font-family:'Inter',system-ui,sans-serif;
  background:linear-gradient(180deg,#0b1220 0%,#080d18 100%);
  color:var(--text);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

a{color:var(--text-soft);text-decoration:none;transition:color .15s ease}
a:hover{color:var(--heading)}

.container{position:relative;z-index:1;max-width:var(--ui-container-max,1180px);margin:0 auto;padding:0 var(--ui-page-padding,24px)}

.header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:20;
  padding:0 var(--ui-page-padding,24px);
  background:rgba(8,13,24,.85);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
}
.header .container{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-gap-lg,18px);height:64px}
.logo{font-family:'Inter',sans-serif;font-size:1.18rem;font-weight:700;color:var(--heading);letter-spacing:-.01em}
.logo span{color:var(--accent)}
.nav{display:flex;align-items:center;gap:var(--ui-gap-xl,26px);flex-wrap:wrap;justify-content:flex-end}
.nav a{color:var(--text-muted);font-size:.9rem;font-weight:500;transition:color .15s ease}
.nav a:hover,.nav a.active{color:var(--heading)}
.nav a.btn-primary,.nav a.btn-primary:hover{color:#fff}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:0 18px;
  border-radius:8px;
  border:1px solid transparent;
  cursor:pointer;
  font-size:.88rem;
  font-weight:600;
  transition:background .15s ease,border-color .15s ease,color .15s ease;
}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-hover);color:#fff}
.btn-outline{background:transparent;color:var(--text);border-color:var(--border-strong)}
.btn-outline:hover{border-color:rgba(160,183,255,.4);color:var(--heading);background:rgba(255,255,255,.04)}
.btn-sm{min-height:34px;padding:0 14px;font-size:.82rem}