.site-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  justify-items: center;
  gap: 18px;
  text-align: center;
}

.header-profile {
  display: grid;
  justify-items: center;
  gap: 4px;
  line-height: 1.35;
}

.header-headshot {
  width: 96px;
  height: 96px;
  border: 3px solid var(--red);
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 3px;
}

.header-profile .brand {
  color: var(--charcoal);
  font-size: 21px;
}

.header-credentials {
  font-size: 13px;
}

.header-phone {
  color: var(--red);
  font-size: 13px;
  font-weight: 700;
  text-underline-offset: 3px;
}

.topper-brand {
  display: grid;
  justify-self: start;
  gap: 3px;
  width: min(100%, 360px);
  color: var(--charcoal);
  text-decoration: none;
}

.topper-brand img {
  display: block;
  width: 100%;
  height: auto;
}

.topper-tagline {
  color: var(--red);
  font-size: 12px;
  line-height: 1.35;
}

.site-header > nav,
.site-header > .button {
  justify-self: end;
}

.site-header > nav {
  flex-wrap: wrap;
  justify-content: flex-end;
}

@media (max-width: 680px) {
  .site-header {
    grid-template-columns: minmax(0, 1fr);
  }

  .topper-brand,
  .site-header > nav,
  .site-header > .button {
    justify-self: center;
  }

  .site-header > nav {
    justify-content: center;
  }
}
