@font-face {
  font-family: "Inter Brand";
  src: url("fonts/Inter-Light.woff2") format("woff2");
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}

:root {
  --serif: "Segoe UI Variable Display", "Segoe UI Light", "Segoe UI", sans-serif;
  --sans: "Segoe UI Variable Text", "Segoe UI", Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;
}

.hero h1,
.section-heading h2,
.access-section h2,
.final-cta h2 {
  font-weight: 347;
  letter-spacing: -.035em;
}

.product-body section h2,
.exam-card strong,
.feature h3,
.process-list h3,
.faq summary,
.price {
  font-weight: 462;
}

.brand strong {
  font-weight: 650;
}

.brand-wordmark {
  color: #245c4e;
  font-family: "Inter Brand", Inter, "Segoe UI Light", sans-serif;
  font-size: 30px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: .13em;
}

.footer-wordmark {
  color: #f7f2e6;
  font-size: 22px;
}

.footer-top .footer-contact {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: #c0d0c8;
  font-family: var(--sans);
  font-size: 12px;
  font-style: normal;
}

.footer-contact strong {
  color: #f7f2e6;
  font-size: 11px;
  letter-spacing: .09em;
}

.footer-contact a {
  color: #c0d0c8;
}

.site-header {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
}

.site-header .header-wordmark {
  grid-column: 1;
  justify-self: start;
  margin: 0;
}

.site-header .header-menu {
  grid-column: 2;
  justify-self: end;
}

.header-right {
  grid-column: 3;
  display: flex;
  align-items: center;
  justify-self: end;
  gap: 16px;
}

.header-logo-mark {
  display: flex;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  align-items: center;
  height: 100%;
}

.header-logo-mark img {
  height: 84px;
  width: auto;
  display: block;
}

@media (max-width: 980px) {
  .site-header {
    display: flex;
    justify-content: space-between;
  }

  .header-logo-mark {
    position: static;
    transform: none;
    height: auto;
    margin-left: auto;
  }

  .header-logo-mark img {
    height: 40px;
  }
}

@media (max-width: 620px) {
  .header-logo-mark img {
    height: 32px;
  }
}

.brand-logo-frame {
  width: 92px;
  height: 54px;
  flex: 0 0 92px;
  overflow: hidden;
  background: transparent;
}

.brand-logo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media (max-width: 620px) {
  .brand-logo-frame {
    width: 70px;
    height: 44px;
    flex-basis: 70px;
  }

  .brand-wordmark {
    font-size: 24px;
    letter-spacing: .11em;
  }

  .site-header {
    grid-template-columns: auto 1fr auto;
    gap: 10px;
  }

  .header-right {
    gap: 6px;
  }
}
