html{scroll-behavior:smooth}
body{
  font-family:var(--font-body);
  color:var(--text);
  background:
    radial-gradient(1200px 500px at 10% -10%,rgba(15,122,108,.12),transparent 55%),
    radial-gradient(900px 420px at 90% 0%,rgba(228,87,46,.10),transparent 50%),
    linear-gradient(180deg,#f3f7fb 0%,var(--background) 40%,#eef3f8 100%);
  min-height:100vh;
  line-height:1.6;
}
h1,h2,h3{
  font-family:var(--font-display);
  line-height:1.15;
  letter-spacing:-.02em;
}
h1{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:0.75rem}
h2{font-size:clamp(1.4rem,2.4vw,1.9rem);margin-bottom:0.75rem}
h3{font-size:1.15rem;margin-bottom:0.4rem}
p{margin-bottom:1rem;color:var(--text)}
a{text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:var(--primary)}
:focus-visible{outline:none;box-shadow:var(--focus)}
.visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.skip-link{
  position:absolute;left:1rem;top:-3rem;background:var(--primary);color:#fff;
  padding:.6rem 1rem;border-radius:999px;z-index:1000;
}
.skip-link:focus{top:1rem}
code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  background:var(--surface-secondary);
  padding:.1rem .35rem;
  border-radius:6px;
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
