* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 128px; }
body { margin: 0; min-width: 320px; background: var(--color-background); color: var(--color-text); font-family: var(--font-body); line-height: 1.6; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
body::before { content: ""; position: fixed; inset: 0; z-index: -2; background: linear-gradient(135deg, rgba(0, 153, 255, .18), transparent 30%), linear-gradient(245deg, rgba(230, 57, 70, .08), transparent 32%), linear-gradient(180deg, #050914 0%, #081120 45%, #02050d 100%); }
body::after { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: .34; background-image: linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to bottom, #000 0%, transparent 78%); }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
ul { margin: 0; }
button, input, select, textarea { font: inherit; }
:focus-visible { outline: 3px solid var(--color-primary-light); outline-offset: 3px; }
.skip-link { position: absolute; top: -60px; left: 16px; z-index: 3000; padding: 10px 14px; border-radius: var(--radius-small); background: #fff; color: #06111f; font-weight: 900; }
.skip-link:focus { top: 16px; }



