*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.65 var(--body);
  background-image:radial-gradient(60rem 40rem at 88% -6%,var(--glow-a),transparent 60%),radial-gradient(50rem 36rem at -10% 18%,var(--glow-b),transparent 60%);
  background-repeat:no-repeat;overflow-x:hidden;min-height:100dvh}
img,svg,canvas,video,iframe{max-width:100%}
img,video{height:auto}
a{color:var(--link);text-underline-offset:.2em}
a:hover{filter:brightness(1.15)}
:focus-visible{outline:3px solid var(--lagoon);outline-offset:3px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--marigold);color:var(--ink-3);padding:.5rem 1rem;border-radius:8px;z-index:50;font-weight:700}
.skip:focus{left:8px}
.muted{color:var(--muted)} .small{font-size:.9rem}
h1,h2,h3,h4{font-family:var(--display);line-height:1.15;margin:0;color:var(--h1-face)}
p{margin:0 0 1rem}
ul,ol{margin:0 0 1rem}
.notice{background:var(--card);border-left:5px solid var(--marigold);padding:1rem 1.2rem;border-radius:10px;margin:0 0 1.2rem;box-shadow:inset 0 0 0 1px var(--line)}
.disclaimer{font-size:.95rem;color:var(--text-soft);background:var(--deep);padding:.85rem 1rem;border-radius:14px}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
