@font-face {
  font-family: 'Geist';
  src: url('../fonts/Geist/webfonts/Geist%5Bwght%5D.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Geist';
  src: url('../fonts/Geist/webfonts/Geist-Italic%5Bwght%5D.woff2') format('woff2');
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Geist', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* Light grey floating navbar on scroll */
#site-header {
  padding: 1rem 1rem 0;
  pointer-events: none;
  transition: padding 0.35s ease;
}

#site-header.header--floating {
  padding-top: 0.75rem;
}

#header-inner {
  pointer-events: auto;
  background-color: rgb(241 245 249); /* slate-100 */
  transition:
    max-width 0.35s ease,
    border-radius 0.35s ease,
    box-shadow 0.35s ease,
    border-color 0.35s ease;
}

#site-header.header--floating #header-inner {
  max-width: 56rem;
  border-radius: 9999px;
  border-color: rgb(226 232 240);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

#mobile-nav {
  pointer-events: auto;
}

.site-logo {
  display: block;
  height: 2.75rem;
  width: auto;
  object-fit: contain;
}

@media (max-width: 767px) {
  #site-header.header--floating #header-inner {
    max-width: 100%;
    border-radius: 0.75rem;
  }
}
