*{ box-sizing:border-box; }

html{ scroll-behaviour:smooth; }
/* Note: some browsers use American spelling internally; we also set it correctly below */
html{ scroll-behavior:smooth; }

body{
  margin:0;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--font-body);
  line-height: 1.5;
}

img{
  max-width:100%;
  height:auto;
  display:block;
}

a{ color: inherit; }

.container{
  width: min(var(--max), calc(100% - 2*var(--space-4)));
  margin-inline: auto;
}

.section{ padding: var(--space-7) 0; }
.section--tight{ padding: var(--space-6) 0; }

.kicker{
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
  color: var(--muted);
}

.h1{
  font-family: var(--font-display);
  font-weight: 600;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.05;
  margin: 12px 0 16px;
}

.h2{
  font-family: var(--font-display);
  font-weight: 600;
  font-size: clamp(24px, 3vw, 36px);
  line-height: 1.15;
  margin: 0 0 16px;
}

.p{
  margin: 0 0 14px;
  color: var(--muted);
  font-size: 16px;
}
