*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}
body{
  font-family:var(--font-body);
  background:var(--navy-950);
  color:var(--ink-100);
  line-height:1.6;
  font-size:var(--fs-body);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img,svg,video{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none; }
ul,ol{ list-style:none; }
button,input,textarea,select{ font:inherit; color:inherit; background:none; border:none; }
button{ cursor:pointer; }
h1,h2,h3,h4{ font-family:var(--font-display); line-height:1.12; font-weight:600; letter-spacing:-.01em; }
h1{ font-size:var(--fs-h1); }
h2{ font-size:var(--fs-h2); }
h3{ font-size:var(--fs-h3); }
p{ color:var(--ink-300); }
.container{ width:100%; max-width:var(--container); margin-inline:auto; padding-inline:var(--sp-5); }
section{ position:relative; padding-block:var(--sp-9); }
:focus-visible{ outline:2px solid var(--cyan-300); outline-offset:3px; border-radius:4px; }
