/* ============================================================
   typography.css — Business Research Journal
   Font stack: Exo 2 (display) | Crimson Pro (body) | JetBrains Mono (accent)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Exo+2:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400&family=Crimson+Pro:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=JetBrains+Mono:wght@300;400;500&display=swap');

:root {
  --font-display:  'Exo 2', sans-serif;
  --font-body:     'Crimson Pro', Georgia, serif;
  --font-mono:     'JetBrains Mono', 'Courier New', monospace;

  --text-xs:   0.72rem;
  --text-sm:   0.875rem;
  --text-base: 1.125rem;
  --text-lg:   1.35rem;
  --text-xl:   1.6rem;
  --text-2xl:  2rem;
  --text-3xl:  2.75rem;
  --text-4xl:  3.75rem;
  --text-5xl:  5rem;

  --leading-tight:  1.15;
  --leading-snug:   1.35;
  --leading-normal: 1.6;
  --leading-loose:  1.85;

  --tracking-tight:  -0.03em;
  --tracking-normal: 0em;
  --tracking-wide:   0.08em;
  --tracking-wider:  0.15em;
  --tracking-widest: 0.25em;
}

body {
  font-family:    var(--font-body);
  font-size:      var(--text-base);
  line-height:    var(--leading-normal);
  font-weight:    300;
  -webkit-font-smoothing:  antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  font-family:    var(--font-display);
  line-height:    var(--leading-tight);
  letter-spacing: var(--tracking-tight);
  font-weight:    700;
}

h1 { font-size: var(--text-4xl); }
h2 { font-size: var(--text-3xl); }
h3 { font-size: var(--text-2xl); }
h4 { font-size: var(--text-xl);  }
h5 { font-size: var(--text-lg);  }
h6 { font-size: var(--text-base); }

.display-hero {
  font-family:    var(--font-display);
  font-size:      var(--text-5xl);
  font-weight:    800;
  line-height:    1.05;
  letter-spacing: -0.04em;
}

.label-mono {
  font-family:    var(--font-mono);
  font-size:      var(--text-xs);
  font-weight:    400;
  letter-spacing: var(--tracking-widest);
  text-transform: uppercase;
}

.body-scholarly {
  font-family:  var(--font-body);
  font-size:    var(--text-lg);
  line-height:  var(--leading-loose);
  font-weight:  300;
}

p { margin-bottom: 1.4em; }
p:last-child { margin-bottom: 0; }

a {
  text-decoration: none;
  transition: color 0.2s ease;
}

strong { font-weight: 600; }
em     { font-style: italic; }

code, pre {
  font-family: var(--font-mono);
  font-size:   var(--text-sm);
}
