/* ===============================
   BASE — reset, root, tokens
================================ */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 0.5208vw; /* 1rem = 10px until 1920px, then scales up */
}

@media (max-width: 1199px) {
  html {
    font-size: 62.5%; /* 1rem = 10px fixed */
  }
}

:root {
  --color-white: #ffffff;
  --color-accent: #93dbff;
  --color-cta: #429de1;
  --color-overlay: #000000;
  --font-heading: 'Plus Jakarta Sans', sans-serif;
  --font-body: 'Plus Jakarta Sans', sans-serif;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
}

body {
  margin: 0;
  font-family: var(--font-body);
  font-weight: var(--weight-medium);
  color: var(--color-overlay);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
