:root{
  --bg0:#0B0A10;
  --bg1:#070611;

  --ink: rgba(255,255,255,.92);
  --muted: rgba(255,255,255,.70);

  --v1: rgba(143,107,222,.85);
  --v2: rgba(201,166,255,.55);

  --line: rgba(255,255,255,.10);
  --line2: rgba(255,255,255,.06);

  --r: 16px;
  --r2: 22px;
  --phone-max: 430px;
  --pad: 16px;

  /* measured by JS (fallback is safe) */
  --topbar-h: 74px;
  --topbar-gap: 18px;

  --shadow-soft: 0 18px 60px rgba(0,0,0,.35);
  --shadow-card: 0 10px 36px rgba(0,0,0,.28);

  --fs-xxs: 11px;
  --fs-xs: 12px;
  --fs-s: 13px;
  --fs-m: 15px;
  --fs-l: 18px;
  --fs-xl: 28px;
  --fs-xxl: 34px;
}

*{ box-sizing:border-box; }
html,body{ height:100%; }

html{
  scroll-behavior: auto;
}

body{
  margin:0;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 450;
  color: var(--ink);
  background:
    radial-gradient(1200px 900px at 18% 12%, rgba(143,107,222,.22), transparent 60%),
    radial-gradient(900px 700px at 82% 18%, rgba(201,166,255,.18), transparent 62%),
    radial-gradient(1000px 900px at 50% 70%, rgba(0,0,0,.55), transparent 70%),
    linear-gradient(180deg, var(--bg0), var(--bg1));
  overflow-x:hidden;
  scrollbar-gutter: stable;
}

a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }

.phone{
  width: min(var(--phone-max), calc(100% - (var(--pad) * 2)));
  margin: 0 auto;
}

/* accessibility */
.skip{
  position:absolute; left:-999px; top:auto;
  width:1px;height:1px; overflow:hidden;
}
.skip:focus{
  left:12px; top:12px;
  width:auto;height:auto;
  padding:10px 12px;
  border-radius:12px;
  background: rgba(0,0,0,.65);
  border:1px solid var(--line);
  z-index:9999;
}

