* { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 16px; }

body {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--charcoal);
  background: var(--ivory);
  -webkit-font-smoothing: antialiased;
}

.coming-soon {
  max-width: var(--content-max);
  margin: 0 auto;
  padding: var(--sp-8) var(--gutter-desktop);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

@media (max-width: 768px) {
  .coming-soon { padding: var(--sp-7) var(--gutter-mobile); }
}

.kicker {
  font-family: var(--font-display-sans);
  font-size: var(--fs-caption);
  letter-spacing: var(--tracking-caps);
  text-transform: uppercase;
  color: var(--graphite);
  margin-bottom: var(--sp-4);
}

.display {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: var(--fs-display-l);
  line-height: var(--lh-display);
  letter-spacing: var(--tracking-display);
  color: var(--ink);
  margin-bottom: var(--sp-5);
}

.display .script {
  font-family: var(--font-display);
  font-weight: 400;
  font-style: italic;
  color: var(--accent);
  font-size: 1.05em;
}

@media (max-width: 768px) {
  .display { font-size: var(--fs-display-m); }
}

.sign {
  font-family: var(--font-body-serif);
  font-style: italic;
  color: var(--graphite);
  margin-top: var(--sp-6);
}
