*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0;height:100%}
body{
  font-family:var(--body);background:var(--navy-950);color:var(--ink);
  display:flex;justify-content:center;overscroll-behavior:none;
  -webkit-font-smoothing:antialiased;
}
#app{
  width:100%;max-width:var(--app-max);position:relative;
  min-height:100vh;min-height:100dvh;height:100dvh;
  overflow:hidden;display:flex;flex-direction:column;
  background:
    radial-gradient(130% 55% at 50% 0%,var(--petrol-700) 0%,transparent 60%),
    linear-gradient(180deg,var(--navy-900) 0%,var(--navy-950) 100%);
}
#root{
  flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;display:flex;flex-direction:column;
}
h1,h2,h3{margin:0;font-family:var(--display);font-weight:800;letter-spacing:-.005em}
p{margin:0}
button{font-family:inherit;color:inherit;border:0;background:none;cursor:pointer}
a{color:var(--gold-400)}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--gold-400);outline-offset:3px;border-radius:6px}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
