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

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  font-family: var(--font-body);
  background-color: var(--color-bg);
  color: var(--color-text);
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
  cursor: default;
}

::selection { 
  background: var(--color-blue); 
  color: var(--color-white); 
}

:focus-visible { 
  outline: 2px solid var(--color-blue); 
  outline-offset: 4px; 
}

/* @font-face para PP Monument Extended */
@font-face {
  font-family: 'PP Monument Extended';
  src: url('https://res.cloudinary.com/dyiqyp4lj/raw/upload/v1779212532/PPMonumentExtended-Black-BF645465a1e687b_svusu2.otf.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Monument Extended';
  src: url('https://res.cloudinary.com/dyiqyp4lj/raw/upload/v1779212532/PPMonumentExtended-Black-BF645465a1e687b_svusu2.otf.woff2') format('woff2');
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

.container {
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  padding: 0 var(--space-16);
}

@media (min-width: 480px) {
  .container { padding: 0 var(--space-24); }
}
