/* ============================================================
   FitEvents · BASE
   Reset + elementos HTML desnudos. Todo sale de tokens.css.
   ============================================================ */

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
img,svg,video{display:block;max-width:100%;}
button{font:inherit;cursor:pointer;}
a{color:inherit;}

body{
  font-family:var(--font-sans);
  background:var(--cream);
  color:var(--ink);
  font-weight:var(--fw-regular);
  line-height:var(--lh-body);
  font-size:var(--fs-body);
}

h1,h2,h3{
  font-family:var(--font-sans);
  font-weight:var(--fw-light);
  letter-spacing:var(--track-tight);
  line-height:var(--lh-tight);
}

/* Contenedor y ritmo vertical */
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter);}
section{padding:var(--section-y) 0;}
@media (max-width:720px){ section{padding:var(--section-y-sm) 0;} }

/* Accesibilidad */
:focus-visible{outline:2px solid var(--malva-dark);outline-offset:3px;}
.skip-link{position:absolute;left:-9999px;}
.skip-link:focus{left:12px;top:12px;z-index:100;background:var(--ink);color:var(--cream);padding:10px 16px;border-radius:var(--radius-pill);}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
}
