/* ============================================================
   MatterMake — Base
   A light, opinionated reset that establishes the black-on-white
   ground, body type and heading rhythm. Consumers get this for
   free by linking styles.css.
   ============================================================ */

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

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

body {
  margin: 0;
  font: var(--type-body);
  color: var(--text-primary);
  background: var(--surface);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-family: var(--font-display);
  font-weight: var(--weight-regular);
  letter-spacing: var(--tracking-tight);
  color: var(--text-primary);
  text-wrap: balance;
}

h1 { font: var(--type-h1); letter-spacing: var(--tracking-tight); }
h2 { font: var(--type-h2); letter-spacing: var(--tracking-tight); }
h3 { font: var(--type-h3); }
h4 { font: var(--type-h4); }

p {
  margin: 0 0 1em;
  text-wrap: pretty;
}

a {
  color: inherit;
  text-decoration: none;
  text-underline-offset: 0.18em;
  text-decoration-thickness: 1px;
  transition: color var(--dur-fast) var(--ease-standard);
}
a:hover { color: var(--accent); }

strong, b { font-weight: var(--weight-medium); }

hr {
  border: none;
  border-top: var(--line-rule);
  margin: var(--space-6) 0;
}

::selection {
  background: var(--rust);
  color: var(--paper);
}

:focus-visible {
  outline: 2px solid var(--focus-ring);
  outline-offset: 2px;
}

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

/* ---------- A few brand utilities ---------- */

/* The signature eyebrow: small caps display label, wide tracking */
.mm-eyebrow {
  font-family: var(--font-display);
  font-weight: var(--weight-medium);
  font-size: var(--text-2xs);
  letter-spacing: var(--tracking-caps);
  text-transform: uppercase;
  color: var(--text-secondary);
}

/* Oversized section numeral — the studio's signature device */
.mm-numeral {
  font-family: var(--font-numeral);
  font-weight: var(--weight-regular);
  font-size: var(--text-numeral);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-tight);
  color: var(--ink);
}

/* Full-bleed rust field (section dividers, covers) */
.mm-field-rust {
  background: var(--rust);
  color: var(--paper);
}
.mm-field-ink {
  background: var(--ink);
  color: var(--paper);
}
