/**
 * @file
 * Site branding in header.
 */

.site-branding {
  display: flex;
  flex: 0 1 auto;
  align-items: center;
  min-width: 0;
  height: var(--sp3);
  margin-inline: calc(-1 * var(--container-padding)) var(--sp); /* Negative margin to break out of .container element. */
  padding-block: var(--sp0-5);
  padding-inline-start: var(--container-padding);
  padding-inline-end: var(--container-padding);

  @media (min-width: 31.25rem) {
    height: var(--sp6);
  }

  @media (min-width: 75rem) {
    height: var(--site-header-height-wide);
  }
}

.site-header__fixable.is-fixed .site-branding {
  @media (min-width: 75rem) {
    height: var(--header-height-wide-when-fixed);
  }
}

.site-branding__inner {
  display: flex;
  align-items: center;
  gap: var(--sp0-5);

  & a {
    text-decoration: none;
  }
}

.site-branding__logo {
  flex-shrink: 0;
  max-width: 100%;

  & img {
    width: auto;
    max-height: var(--sp2);

    @media (min-width: 31.25rem) {
      max-height: var(--sp3);
    }

    @media (min-width: 43.75rem) {
      max-height: var(--sp4);
    }
  }
}

.site-branding__text {
  color: var(--color--primary-50);

  & a {
    color: inherit;
  }

  @media (min-width: 43.75rem) {
    display: grid;
    gap: var(--sp0-5);
  }
}

.site-branding__name {
  font-size: clamp(1.125rem, 0.8rem + 1.6vw, 2rem);
  font-weight: bold;
  line-height: 1.25;
}

.site-branding__slogan {
  font-size: var(--font-size-xs);
  line-height: var(--line-height-s);

  @media (min-width: 43.75rem) {
    font-size: var(--font-size-base);
  }
}
