/* Cardiovolt.ai brand system — June refresh.
   Self-hosted variable fonts, sourced from Google Fonts' exact Geist / Geist Mono /
   Instrument Sans files (the client's Figma export renders with these three — the
   "Andale Mono" listed in the standalone brand-guidelines PDF is not what the actual
   site design uses; Geist Mono is the real accent/eyebrow typeface). Each file below
   is a single variable-weight woff2, so one @font-face with a weight range covers the
   whole family — no separate file per weight. */

@font-face {
  font-family: 'Geist';
  src: url('../fonts/geist-variable.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Geist Mono';
  src: url('../fonts/geist-mono-variable.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Instrument Sans';
  src: url('../fonts/instrument-sans-variable.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --cv-cream: #FAFAFA;
  --cv-cream-2: #F4F0ED;
  --cv-ink: #0E0E0E;
  --cv-ink-2: #1B1B1B;
  --cv-red: #EF4444;
  --cv-maroon: #711313;
}

body {
  font-family: 'Instrument Sans', sans-serif;
  letter-spacing: -0.02em;
}

.font-heading {
  font-family: 'Geist', sans-serif;
  letter-spacing: -0.04em;
  line-height: 1.1;
}

.font-mono-eyebrow {
  font-family: 'Geist Mono', monospace;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--cv-maroon);
}

/* Same eyebrow style, tuned for use on dark (ink) section backgrounds where
   maroon doesn't have enough contrast — swap to the brighter red accent. */
.font-mono-eyebrow--on-dark {
  color: var(--cv-red);
}

.btn-cv-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--cv-red);
  color: var(--cv-ink);
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 500;
  border-radius: 0.5rem;
  padding: 0.75rem 1.5rem;
  transition: background-color 0.2s ease, transform 0.2s ease;
}
.btn-cv-primary:hover {
  background: #f16060;
}

.btn-cv-dark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--cv-ink);
  color: #fff;
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 500;
  border-radius: 0.5rem;
  padding: 0.75rem 1.5rem;
  transition: background-color 0.2s ease;
}
.btn-cv-dark:hover {
  background: var(--cv-ink-2);
}

.btn-cv-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.2);
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 500;
  border-radius: 0.5rem;
  padding: 0.75rem 1.5rem;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.btn-cv-outline:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.4);
}

.cv-card-dark {
  background: var(--cv-ink-2);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.cv-card-light {
  background: #fff;
  border: 1px solid rgba(14, 14, 14, 0.08);
}
