*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  font-size: 18px;
}

body {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  background: #F2F5F9;
  color: #152A45;
  overflow-x: hidden;
  cursor: none;
}

.cursor {
  position: fixed;
  width: 8px;
  height: 8px;
  background: #152A45;
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%);
  transition: transform .1s ease;
}

.cursor-ring {
  position: fixed;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(21, 42, 69, .35);
  border-radius: 50%;
  pointer-events: none;
  z-index: 9998;
  transform: translate(-50%, -50%);
  transition: transform .18s ease;
}

:root {
  --ink: #152A45;
  --ink2: #1E3B58;
  --muted: #6B7C90;
  --pale: #EDF1F7;
  --white: #F8FAFD;
  --border: #C8D4E2;
  --border-strong: #8EA8C3;
  --gold: #B8963E;
  --gold-pale: #EDE5D0;
  --green: #2B5C3F;
  --green-pale: #DDE9E3;
  --type-display: 'Libre Baskerville', Georgia, serif;
  --type-body: 'Jost', sans-serif;
  --type-mono: 'DM Mono', monospace;
}

h1,
h2,
h3,
h4 {
  font-family: var(--type-display);
  font-weight: 400;
  line-height: 1.1;
  color: var(--ink);
}

p {
  line-height: 1.85;
  color: var(--ink2);
}

a {
  color: inherit;
}

.eyebrow {
  font-family: var(--type-mono);
  font-size: .7rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--muted);
}
