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

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-height: 100vh;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

a {
  color: inherit;
  text-decoration: none;
}

ul,
ol {
  list-style: none;
}

button {
  background: none;
  border: none;
  cursor: pointer;
}

/* Design tokens */
:root {
  --color-background: #F7F7F7;
  --color-primary: #212121;
  --color-card: #FFFFFF;
  --color-secondary-1: #9BA1AE;
  --color-secondary-2: #9E9E9E;
  --color-secondary-3: #E6E7EA;

  --font-display: 'Haas Grotesk Display', sans-serif;
  --font-mono: 'Chivo Mono', monospace;

  --font-extralight: 200;
  --font-light: 300;
  --font-regular: 400;

  --leading-default: 1.2;
  --leading-tight: 1.0;

  --tracking-default: 0em;
  --tracking-wide: 0.02em;

  --edge-margin: 48px;
  --edge-margin-mobile: 24px;
}

/* Font faces — Neue Haas Grotesk Display */
@font-face {
  font-family: 'Haas Grotesk Display';
  src: url('../assets/fonts/haas-grotesk-display/NeueHaasGrotDisp-55Roman-Trial.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Font faces — Chivo Mono Local */
@font-face {
  font-family: 'Chivo Mono';
  src: url('../assets/fonts/chivo-mono/ChivoMono-ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Chivo Mono';
  src: url('../assets/fonts/chivo-mono/ChivoMono-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Chivo Mono';
  src: url('../assets/fonts/chivo-mono/ChivoMono-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Base styles */
body {
  background-color: var(--color-background);
  color: var(--color-primary);
  font-family: var(--font-display);
  font-weight: var(--font-regular);
  line-height: var(--leading-default);
  letter-spacing: var(--tracking-default);
}
