@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root {
  --font-heading: 'Space Grotesk', sans-serif;
  --font-body: 'Space Grotesk', sans-serif;
}

body {
  font-family: var(--font-body);
}

h1, h2, h3,
.section-title,
.product-title {
  font-family: var(--font-heading);
  font-weight: 800;
}

    :root{
      --font-color: white;
      --bg-color: black;
      --secondary-color: black;
      --bg2:#0b0f16;
      --glass: rgba(10, 14, 22, .55);
      --glass2: rgba(14, 18, 28, .62);
      --border: rgba(255,255,255,.08);
      --text:#e7eaf0;
      --muted: rgba(231,234,240,.70);
      --muted2: rgba(231,234,240,.55);
      --shadow: 0 20px 60px rgba(0,0,0,.55);
      --shadow2: 0 12px 40px rgba(0,0,0,.45);
      --radius: 14px;
      --radius2: 18px;
      --grad: linear-gradient(90deg, #8b5cf6, #22d3ee, #a78bfa);
      --grad2: linear-gradient(135deg, rgba(139,92,246,.25), rgba(34,211,238,.18));
      --btn: rgba(255,255,255,.08);
      --btnHover: rgba(255,255,255,.12);
      --focus: rgba(34,211,238,.35);
      --max: 1180px;
    }

    *{box-sizing:border-box}
    html,body{height:100%}
    body{
      margin:0;
      font-family: 'Space Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
      background:black;
      color:var(--text);
      overflow-x:hidden;
    }

    .nx-nav-wrap{
      position: sticky;
	    top: 0;
	    z-index: 50;
	    backdrop-filter: blur(14px);
	    -webkit-backdrop-filter: blur(14px);
	    background: black;
      border-image: linear-gradient(90deg, #00000000, orange, #00000000) 1;
	    border-bottom-style: solid;
	    border-width: 2px;
	    box-shadow: 0 1px 12px rgba(0, 0, 0, 0.55), 0 1px 0 rgba(255, 255, 255, 0.03);
    }

    .nx-nav{
      max-width: var(--max);
      margin: 0 auto;
      padding: 14px 18px;
      display:flex;
      align-items:center;
      gap:14px;
      justify-content:space-between;
    }

    .brand{
      display:flex;
      align-items:center;
      gap:10px;
      text-decoration:none;
      color:var(--text);
    }
    .logo{
      width:34px; height:34px;
      border-radius: 10px;
      background:
      radial-gradient(circle at 30% 30%, rgba(34,211,238,.85), transparent 55%),
      radial-gradient(circle at 70% 60%, rgba(139,92,246,.85), transparent 55%),
      linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.02));
      border: 1px solid rgba(255,255,255,.12);
      box-shadow: 0 8px 24px rgba(0,0,0,.35);
      position: relative;
      overflow:hidden;
    }
    .logo:after{
      content:"";
      position:absolute; inset:-40%;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
      transform: rotate(25deg) translateX(-30%);
      animation: shimmer 4.5s infinite;
      opacity:.8;
    }
    @keyframes shimmer{
      0%{transform:rotate(25deg) translateX(-55%)}
      55%{transform:rotate(25deg) translateX(55%)}
      100%{transform:rotate(25deg) translateX(55%)}
    }
    .brand span{
      font-weight: 700;
      letter-spacing: .2px;
    }
    .badge{
      font-size: 12px;
      padding: 4px 8px;
      border-radius: 999px;
      border: 1px solid rgba(34,211,238,.25);
      color: rgba(34,211,238,.95);
      background: rgba(34,211,238,.08);
      margin-left: 6px;
    }

    .nx-nav_ left{
      display:flex;
      align-items:center;
      gap:12px;
      flex:1;
    }

    .nx-nav-left{
      display:flex;
      align-items:center;
      gap:12px;
      flex:1;
    }

    .nx-nav-links{
      display:flex;
      align-items:center;
      gap: 4px;
      margin-left: 8px;
    }

    .nx-nav-item{
      position: relative;
    }

    .nx-nav-btn{
      border: 1px solid transparent;
      background: transparent;
      color: var(--muted);
      font-weight: 600;
      font-size: 14px;
      padding: 10px 10px;
      border-radius: 10px;
      cursor: pointer;
      display:flex;
      align-items:center;
      gap:8px;
      transition: .15s ease;
      user-select:none;
    }
    .nx-nav-btn:hover{
      color: var(--text);
      background: rgba(255,255,255,.06);
      border-color: rgba(255,255,255,.08);
    }
    .nx-nav-btn[aria-expanded="true"]{
      color: var(--text);
      background: rgba(255,255,255,.08);
      border-color: rgba(34,211,238,.18);
      box-shadow: 0 0 0 3px rgba(34,211,238,.10);
    }

    .chev {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-top: 0;
	margin-left: auto;
	border-radius: 999px;
	background: radial-gradient(circle at 30% 30%, rgba(255, 255, 255, .12), rgba(255, 255, 255, .02) 62%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .10), 0 8px 18px rgba(0, 0, 0, .20);
	opacity: .96;
	transition: transform .22s cubic-bezier(.16, 1, .3, 1), background .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.chev::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translate(-50%, -60%) rotate(45deg);
	transform-origin: center;
	transition: transform .22s cubic-bezier(.16, 1, .3, 1);
}

.nx-nav-btn:hover .chev,
.nx-nav-btn:focus-visible .chev,
.nx-nav-btn[aria-expanded="true"] .chev {
	background: radial-gradient(circle at 30% 30%, rgba(163, 230, 53, .22), rgba(99, 102, 241, .10) 68%, rgba(255, 255, 255, .03));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14), 0 10px 22px rgba(0, 0, 0, .24), 0 0 0 1px rgba(163, 230, 53, .10);
}

.nx-nav-btn[aria-expanded="true"] .chev::before {
	transform: translate(-50%, -40%) rotate(225deg);
}

    .nx-nav-right{
      display:flex;
      align-items:center;
      gap:10px;
      min-width: 240px;
      justify-content:flex-end;
    }

    .pill{
      display:flex;
      align-items:center;
      gap:8px;
      padding: 10px 12px;
      border-radius: 999px;
      border: 1px solid var(--border);
      background: rgba(255,255,255,.05);
      color: var(--muted);
      font-size: 13px;
      cursor:pointer;
      transition:.15s ease;
    }
    .pill:hover{ background: rgba(255,255,255,.08); color: var(--text); }
    .dot{
      width:8px;height:8px;border-radius:999px;
      background: rgba(34,211,238,.9);
      box-shadow: 0 0 0 4px rgba(34,211,238,.12);
    }

    .link{
      color: var(--muted);
      text-decoration:none;
      font-weight:600;
      font-size: 14px;
      padding: 10px 10px;
      border-radius: 10px;
      transition:.15s ease;
      border:1px solid transparent;
    }
    .link:hover{
      color: var(--text);
      background: rgba(255,255,255,.06);
      border-color: rgba(255,255,255,.08);
    }

    .cta{
      text-decoration:none;
      color: #061018;
      font-weight: 800;
      font-size: 14px;
      padding: 10px 14px;
      border-radius: 999px;
      background: var(--grad);
      box-shadow: 0 16px 40px rgba(34,211,238,.08), 0 16px 40px rgba(139,92,246,.10);
      transition: transform .15s ease, filter .15s ease;
      white-space: nowrap;
    }
    .cta:hover{ transform: translateY(-1px); filter: brightness(1.05); }
    .cta:active{ transform: translateY(0px); }

    .menu {
	  position: absolute;
    top: calc(100% + 10px);
    left: 0;
    width: 820px;
    max-width: calc(100vw - 28px);
    background: linear-gradient(181deg, rgb(0 0 0), rgb(0 0 0));
    border-radius: var(--radius2);
    box-shadow: var(--shadow);
    padding: 16px;
    display: none;
    transform-origin: top left;
    transform: translateY(6px) scale(.98);
    opacity: 0;
    transition: .16s ease;
    overflow: hidden;
    border-image: linear-gradient(90deg, #00000000, orange, #00000000) 1;
    border-bottom-style: solid;
    border-width: 2px;

}
    .menu.open{
      display:block;
      opacity:1;
      transform: translateY(0) scale(1);
    }
    .menu:before{
      content:"";
      position:absolute; inset:0;
      background: radial-gradient(800px 300px at 10% 0%, rgba(34,211,238,.13), transparent 60%),
      radial-gradient(800px 300px at 90% 0%, rgba(139,92,246,.14), transparent 60%);
      pointer-events:none;
    }

    .menu-grid{
      position:relative;
      display:grid;
      grid-template-columns: 1.2fr 1fr;
      gap: 14px;
    }

    .menu-col{
      border: 1px solid rgba(255,255,255,.08);
      background: rgba(255,255,255,.04);
      border-radius: 14px;
      padding: 14px;
      overflow:hidden;
    }

    .menu-title{
      font-weight: 800;
      font-size: 13px;
      letter-spacing: .2px;
      color: rgba(231,234,240,.90);
      margin: 0 0 10px 0;
      display:flex;
      align-items:center;
      justify-content:space-between;
    }
    .menu-title small{
      font-weight:700;
      font-size: 12px;
      color: rgba(34,211,238,.85);
      border: 1px solid rgba(34,211,238,.22);
      background: rgba(34,211,238,.08);
      padding: 4px 8px;
      border-radius: 999px;
    }

    .menu-list{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:10px;
    }

    .menu-card{
      display:flex;
      gap:10px;
      padding: 10px;
      border-radius: 12px;
      text-decoration:none;
      border: 1px solid rgba(255,255,255,.08);
      background: rgba(0,0,0,.12);
      transition:.15s ease;
      min-height: 66px;
    }
    .menu-card:hover{
      border-color: rgba(34,211,238,.22);
      background: rgba(255,255,255,.06);
      transform: translateY(-1px);
    }

    .ic{
      width:34px;height:34px;border-radius: 12px;
      background: var(--grad2);
      border: 1px solid rgba(255,255,255,.10);
      flex:0 0 auto;
    }

    .menu-card b{
      display:block;
      color: var(--text);
      font-size: 13px;
      margin-bottom: 2px;
      letter-spacing:.1px;
    }
    .menu-card p{
      margin:0;
      color: var(--muted2);
      font-size: 12px;
      line-height: 1.25;
    }

    .menu-side{
      display:flex;
      flex-direction:column;
      gap:10px;
    }

    .side-hero{
      border-radius: 14px;
      padding: 14px;
      border: 1px solid rgba(255,255,255,.10);
      background:
      radial-gradient(420px 200px at 20% 0%, rgba(34,211,238,.18), transparent 60%),
      radial-gradient(420px 200px at 90% 0%, rgba(139,92,246,.22), transparent 60%),
      rgba(255,255,255,.04);
      box-shadow: 0 10px 30px rgba(0,0,0,.25);
      overflow:hidden;
      position:relative;
    }
    .side-hero h4{
      margin:0 0 6px 0;
      font-size: 13px;
      letter-spacing:.2px;
    }
    .side-hero p{
      margin:0 0 10px 0;
      color: var(--muted);
      font-size: 12px;
      line-height:1.35;
    }
    .side-hero a{
      display:inline-flex;
      align-items:center;
      gap:8px;
      text-decoration:none;
      color: var(--text);
      background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.12);
      padding: 9px 12px;
      border-radius: 999px;
      font-weight: 700;
      font-size: 13px;
      transition:.15s ease;
    }
    .side-hero a:hover{ background: rgba(255,255,255,.12); }

    .tiny{
      display:flex;
      gap:10px;
    }
    .tiny a{
      flex:1;
      text-decoration:none;
      color: var(--muted);
      background: rgba(255,255,255,.04);
      border: 1px solid rgba(255,255,255,.08);
      padding: 10px 12px;
      border-radius: 12px;
      font-size: 12px;
      font-weight: 700;
      transition:.15s ease;
      text-align:center;
    }
    .tiny a:hover{
      background: rgba(255,255,255,.08);
      color: var(--text);
      border-color: rgba(34,211,238,.18);
    }

    .hamburger{
      display:none;
      width:42px;height:42px;
      border-radius: 12px;
      border: 0px solid rgba(255,255,255,.10);
      background: rgba(255,255,255,.05);
      cursor:pointer;
      transition:.15s ease;
      align-items:center;
      justify-content:center;
      gap:5px;
      flex-direction:column;
    }
    .hamburger:hover{ background: rgba(255,255,255,.08); }
    .hamburger span{
      width:18px;height:2px;background: rgba(231,234,240,.85);
      border-radius: 99px;
      transition:.15s ease;
    }

.overlay {
	position: fixed;
	inset: 0;
	background: rgb(0 0 0 / 85%);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(6px);
	opacity: 0;
	pointer-events: none;
	transition: .18s ease;
	z-index: 60;
}

.overlay.open {
	opacity: 1;
	pointer-events: auto;
}

.drawer {
	position: fixed;
	top: 0;
	right: 0;
	height: 100%;
	width: min(420px, 92vw);
	border-left: 1px solid rgba(255, 255, 255, .10);
	box-shadow: var(--shadow);
	transform: translateX(110%);
	transition: .2s ease;
	z-index: 70;
	display: flex;
	flex-direction: column;
}
    .drawer.open{ transform: translateX(0); }

    .drawer-top{
      padding: 14px 14px 10px 14px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      border-bottom: 1px solid rgba(255,255,255,.08);
    }
    .drawer-top .brand{ min-width: 0; }
    .close{
      width:42px;height:42px;border-radius: 12px;
      border: 1px solid rgba(255,255,255,.10);
      background: rgba(255,255,255,.06);
      cursor:pointer;
      transition:.15s ease;
      color: var(--text);
      font-weight: 900;
      font-size: 16px;
    }
    .close:hover{ background: rgb(255 255 255); }

    .drawer-body{
      padding: 12px 14px 18px;
      overflow:auto;
    }

    .m-section{
      margin: 10px 0 12px;
      border: 1px solid rgba(255,255,255,.08);
      background: rgba(255,255,255,.04);
      border-radius: 14px;
      overflow:hidden;
    }
    .m-head{
      width:100%;
      padding: 12px 12px;
      border:0;
      background: transparent;
      color: var(--text);
      display:flex;
      align-items:center;
      justify-content:space-between;
      cursor:pointer;
      font-weight: 800;
      font-size: 13px;
    }
    .m-head span{ color: var(--muted); font-weight:700; font-size: 12px; }
    .m-panel{
      max-height:0;
      overflow:hidden;
      transition: max-height .2s ease;
      border-top: 1px solid rgba(255,255,255,.08);
    }
    .m-panel.open{ max-height: 560px; }

    .m-links{
      display:flex;
      flex-direction:column;
      padding: 10px;
      gap:8px;
    }
    .m-links a{
      display:flex;
      gap:10px;
      text-decoration:none;
      color: var(--text);
      border: 1px solid rgba(255,255,255,.08);
      background: rgba(0,0,0,.10);
      padding: 10px;
      border-radius: 12px;
      transition:.15s ease;
    }
    .m-links a:hover{
      background: rgba(255,255,255,.06);
      border-color: rgba(34,211,238,.18);
    }
    .m-links a b{ font-size: 13px; }
    .m-links a small{ color: var(--muted2); display:block; margin-top:2px; }

    .drawer-cta{
      margin-top: 12px;
      display:flex;
      gap:10px;
    }
    .drawer-cta a{
      flex:1;
      text-align:center;
      text-decoration:none;
      font-weight: 900;
      padding: 12px 12px;
      border-radius: 999px;
      border:1px solid rgba(255,255,255,.10);
      background: rgba(255,255,255,.06);
      color: var(--text);
      transition:.15s ease;
    }
    .drawer-cta a:hover{ background: rgba(255,255,255,.10); }
    .drawer-cta a.primary{
      border:0;
      background: var(--grad);
      color:#061018;
    }

    @media (max-width: 1024px){
      .nx-nav-links{ display:none; }
      .nx-nav-right .pill, .nx-nav-right .link{ display:none; }
      .hamburger{ display:flex; }
      .nx-nav-right{ min-width: auto; }
      .brand{ min-width:auto; }
    }

    .hero{
      max-width: var(--max);
      margin: 40px auto 0;
      padding: 0 18px 80px;
    }
    .hero h1{
      font-size: clamp(28px, 4vw, 52px);
      line-height:1.05;
      margin: 30px 0 10px;
      letter-spacing:-.02em;
    }
    .hero p{
      margin:0;
      color: var(--muted);
      max-width: 70ch;
      line-height:1.5;
    }
    .card-demo{
      margin-top: 22px;
      border: 1px solid rgba(255,255,255,.10);
      background: rgba(255,255,255,.04);
      border-radius: 18px;
      padding: 18px;
      box-shadow: var(--shadow2);
    }
    .u7b-alert-wrap {
      margin: 0 0 20px;
    }
    .u7b-alert-card {
      position: relative;
      display: flex;
      align-items: flex-start;
      gap: 13px;
      width: 100%;
      padding: 16px 48px 16px 16px;
      border-radius: 16px;
      border: 1px solid rgba(255, 255, 255, .14);
      background: rgba(12, 14, 18, .78);
      box-shadow: 0 18px 48px rgba(0, 0, 0, .32), inset 0 1px 0 rgba(255, 255, 255, .08);
      color: var(--text);
      overflow: hidden;
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
    }
    .u7b-alert-card:before {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      background:
        linear-gradient(120deg, rgba(255, 255, 255, .13), transparent 46%),
        radial-gradient(360px 120px at 12% 0%, rgba(255, 255, 255, .10), transparent 60%);
    }
    .u7b-alert-card:after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 4px;
    }
    .u7b-alert-card.is-success {
      border-color: rgba(34, 197, 94, .38);
      background: linear-gradient(135deg, rgba(20, 83, 45, .72), rgba(12, 14, 18, .78));
    }
    .u7b-alert-card.is-warning {
      border-color: rgba(251, 191, 36, .42);
      background: linear-gradient(135deg, rgba(69, 47, 16, .82), rgba(12, 14, 18, .78));
    }
    .u7b-alert-card.is-success:after {
      background: linear-gradient(180deg, #22c55e, #86efac);
    }
    .u7b-alert-card.is-warning:after {
      background: linear-gradient(180deg, #f59e0b, #facc15);
    }
    .u7b-alert-icon {
      position: relative;
      width: 42px;
      height: 42px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 42px;
      font-weight: 900;
      font-size: 18px;
      color: #fff;
      box-shadow: 0 12px 28px rgba(0, 0, 0, .30);
      z-index: 1;
    }
    .u7b-alert-card.is-success .u7b-alert-icon {
      background: linear-gradient(135deg, #16a34a, #22c55e);
    }
    .u7b-alert-card.is-warning .u7b-alert-icon {
      background: linear-gradient(135deg, #f59e0b, #f97316);
    }
    .u7b-alert-card.is-success .u7b-alert-icon:before {
      content: "\2713";
    }
    .u7b-alert-card.is-warning .u7b-alert-icon:before {
      content: "!";
    }
    .u7b-alert-body {
      position: relative;
      min-width: 0;
      text-align: left;
      z-index: 1;
      padding-top: 1px;
    }
    .u7b-alert-title {
      margin: 0 0 4px;
      font-size: 15px;
      font-weight: 800;
      line-height: 1.25;
      color: #fff;
      text-align: left;
    }
    .u7b-alert-text {
      margin: 0;
      font-size: 13px;
      line-height: 1.5;
      color: rgba(255, 255, 255, .82);
      text-align: left;
    }
    .u7b-alert-close {
      position: absolute;
      top: 12px;
      right: 12px;
      width: 32px;
      height: 32px;
      border: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, .09);
      color: rgba(255, 255, 255, .88);
      font-size: 20px;
      line-height: 1;
      cursor: pointer;
      transition: .15s ease;
      z-index: 1;
    }
    .u7b-alert-close:hover {
      background: rgba(255, 255, 255, .18);
      color: #fff;
      transform: scale(1.04);
    }
    .u7b-input.is-invalid {
      border-color: rgba(248, 113, 113, .78) !important;
      box-shadow: 0 0 0 3px rgba(248, 113, 113, .14), inset 0 1px 0 rgba(255, 255, 255, .04);
    }
    .u7b-field-error {
      position: relative;
      margin: -7px 0 12px;
      padding: 10px 12px 10px 38px;
      border-radius: 12px;
      border: 1px solid rgba(248, 113, 113, .32);
      background: linear-gradient(135deg, rgba(127, 29, 29, .92), rgba(24, 24, 27, .94));
      color: rgba(255, 255, 255, .88);
      font-size: 12px;
      font-weight: 600;
      line-height: 1.45;
      text-align: left;
      box-shadow: 0 12px 30px rgba(0, 0, 0, .28);
    }
    .u7b-field-error:before {
      content: "!";
      position: absolute;
      left: 12px;
      top: 50%;
      width: 18px;
      height: 18px;
      border-radius: 6px;
      background: linear-gradient(135deg, #f97316, #ef4444);
      color: #fff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      transform: translateY(-50%);
      font-size: 12px;
      font-weight: 900;
    }
    @media (max-width: 480px) {
      .u7b-alert-card {
        gap: 11px;
        padding: 14px 44px 14px 14px;
      }
      .u7b-alert-icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
      }
      .u7b-alert-title {
        font-size: 14px;
      }
      .u7b-alert-text {
        font-size: 12px;
      }
    }
    .vc-user-icon {
     position: absolute;
     inset: 0;
     width: 100%;
     height: 100%;
     border-radius: 50%;

     display: flex;
     align-items: center;
     justify-content: center;
   }

   .vc-user-icon i {
    font-size: 20px;
    line-height: 1;
  }
