/* Modern CSS reset + normalize blend */
/* Box sizing + border-box inheritance */
*,*::before,*::after{box-sizing:border-box;}

/* Remove default margin */
body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0;}

/* Remove list styles on ul, ol elements with a list role set */
ul[role='list'],ol[role='list']{list-style:none;margin:0;padding:0;}

/* Set core body defaults */
html:focus-within{scroll-behavior:smooth;}
html,body{height:100%;}
body{line-height:1.4;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:'Rubik',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);}

/* Typography resets */
h1,h2,h3,h4,h5,h6{font-weight:700;font-family:'Bebas Neue','Rubik',sans-serif;line-height:1.05;}

/* Improve media defaults */
img,picture,svg,video,canvas{display:block;max-width:100%;height:auto;}
img{font-style:italic;background-repeat:no-repeat;background-size:cover;}

/* Inherit fonts for form controls */
input,button,textarea,select{font:inherit;}

/* Remove animations for reduced motion */
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important;}
}

/* Anchor reset */
a{text-decoration:none;color:inherit;}

/* Buttons */
button{background:none;border:none;cursor:pointer;color:inherit;}

/* Selection */
::selection{background:var(--color-accent);color:#fff;}
