*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h-mobile) + 8px);}
@media (min-width:768px){html{scroll-padding-top:calc(var(--header-h) + 12px);}}
body{
  background:var(--bg);
  color:var(--text);
  font-family:var(--ff-body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:clip;
}
img,video,iframe{max-width:100%;display:block;}
figure{margin:0;}
button{font-family:inherit;border:0;background:none;cursor:pointer;color:inherit;}
a{color:var(--text);text-decoration:none;}
a:hover{color:var(--accent);}
h1,h2,h3,h4{font-family:var(--ff-display);font-weight:500;line-height:1.15;letter-spacing:-0.005em;margin:0;color:var(--text);}
p{margin:0 0 1em;}
p:last-child{margin-bottom:0;}
ul,ol{margin:0;padding:0;list-style:none;}
[hidden]{display:none !important;}
::selection{background:var(--accent);color:#fff;}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px;}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track{background:var(--bg-alt);}
::-webkit-scrollbar-thumb{background:var(--accent);border-radius:6px;}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:0.001ms !important;transition-duration:0.001ms !important;}
}
