/* ========================================
   SELF-HOSTED FONTS
   ======================================== */
@font-face {
  font-family: 'DM Serif Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/dm-serif-display-regular.woff2') format('woff2');
}
@font-face {
  font-family: 'DM Serif Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/dm-serif-display-italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url('/fonts/instrument-sans-regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Instrument Sans';
  font-style: italic;
  font-weight: 400 500;
  font-stretch: 100%;
  font-display: swap;
  src: url('/fonts/instrument-sans-italic.woff2') format('woff2');
}

/* ========================================
   DESIGN TOKENS — Single Source of Truth
   DeliverGuard Design System
   ======================================== */
:root {
  --navy: #1a2332;
  --navy-light: #243044;
  --navy-muted: #2d3d54;
  --navy-faint: #3a4d66;
  --green: #16a34a;
  --green-hover: #15803d;
  --green-glow: rgba(22, 163, 74, 0.15);
  --green-soft: rgba(22, 163, 74, 0.08);
  --amber: #d97706;
  --amber-soft: rgba(217, 119, 6, 0.1);
  --red: #dc2626;
  --red-soft: rgba(220, 38, 38, 0.08);

  --white: #ffffff;
  --off-white: #f8f7f4;
  --warm-gray: #f0eeea;
  --border: #e2dfd8;
  --text: #1a2332;
  --text-secondary: #5a6577;
  --text-muted: #8a92a1;

  --font-display: 'DM Serif Display', Georgia, serif;
  --font-body: 'Instrument Sans', -apple-system, sans-serif;

  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2.5rem;
  --space-xl: 4rem;
  --space-2xl: 6rem;
  --space-3xl: 8rem;

  --max-width: 1200px;
  --content-width: 760px;
  --radius: 8px;
  --radius-lg: 16px;
}

/* ========================================
   RESET & BASE
   ======================================== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: var(--font-body);
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--text);
  background: var(--white);
  overflow-x: hidden;
}

img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; }

/* ========================================
   TYPOGRAPHY
   ======================================== */
h1, h2, h3 {
  font-family: var(--font-display);
  font-weight: 400;
  line-height: 1.2;
}

h1 { font-size: clamp(2.25rem, 5vw, 3.5rem); }
h2 { font-size: clamp(1.75rem, 3.5vw, 2.75rem); }
h3 { font-size: clamp(1.25rem, 2.5vw, 1.75rem); }
