/*
 * base.css
 * Reset, body defaults, global typography, and keyframe animations
 */

/* ── Reset ── */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* ── Body ── */
body {
  font-family: var(--font-body);
  background-color: var(--color-bg);
  color: var(--color-text);
  min-height: 100vh;
  overflow-x: hidden;
}

/* ── Links ── */
a {
  text-decoration: none;
  color: inherit;
}

/* ── Images ── */
img {
  display: block;
  max-width: 100%;
}

/* ── Buttons ── */
button {
  font-family: var(--font-body);
  cursor: pointer;
  border: none;
  background: none;
}

/* ── Headings ── */
h1, h2, h3 {
  font-family: var(--font-display);
  font-weight: normal;
  line-height: 1.1;
}

/* ── Keyframes ── */
@keyframes marquee {
  from { transform: translateX(100vw); }
  to   { transform: translateX(-100%); }
}

@keyframes shimmer {
  from { left: -60%; }
  to   { left: 160%; }
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

@keyframes pulse {
  0%, 100% { opacity: 1;  transform: scale(1);   }
  50%       { opacity: 0.4; transform: scale(0.7); }
}

@keyframes btn-shine {
  from { left: -100%; }
  to   { left: 200%;  }
}
