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

/*
 * Media query breakpoints.
 * Processed by postcss/postcss-custom-media.
 */

/* Navigation related breakpoints */

/* Grid related breakpoints */

/* Grid shifts from 6 to 14 columns. */

/* Width of the entire grid maxes out. */

.site-branding {
  display: flex;
  flex-shrink: 1;
  /*
   * Below --md the wordmark (.site-branding__text) is hidden, so it's just
   * the icon: center it like the other header icons instead of bottom-
   * aligning it (bottom-alignment is for matching the icon to the
   * wordmark's text baseline, which only applies once the wordmark shows).
   */
  align-items: center;
  /*
   * No min-width below --md: the wordmark is hidden until --md, so
   * reserving grid-column space for it here would just be empty air behind
   * the icon.
   */
  min-height: var(--sp3);
  margin-inline: calc(-1 * var(--container-padding)) var(--sp); /* Negative margin to break out of .container element. */
  padding-inline-start: var(--container-padding);
  padding-inline-end: var(--container-padding);
}

@media (min-width: 500px) {

.site-branding {
    min-height: var(--sp4);
}
  }

@media (min-width: 768px) {

.site-branding {
    align-items: flex-end;
    min-width: calc((4 * var(--grid-col-width)) + (4 * var(--grid-gap)) + var(--container-padding)); /* Span minimum of 4 column widths. */
    min-height: var(--sp3);
    padding-block-end: var(--sp0-5);
}
  }

@media (min-width: 1024px) {

.site-branding {
    min-width: calc((2 * var(--grid-col-width)) + (2 * var(--grid-gap)) + var(--container-padding)); /* Span minimum of 2 column widths. */
}
  }

@media (min-width: 1200px) {

.site-branding {
    min-height: var(--site-header-height-wide);
    margin-inline-start: calc(-1 * var(--container-padding));
    padding-block: 0;
}
  }

[dir="rtl"] .site-branding {
  background-image: linear-gradient(-160deg, var(--color--primary-50) 0%, var(--color--primary-40) 78.66%);
}

.site-branding--bg-gray {
  background: var(--color--gray-100);
}

.site-branding--bg-white {
  background: var(--color--white);
}

.site-branding__inner {
  display: flex;
  align-items: center;
}

.site-branding__inner a {
    text-decoration: none;
  }

@media (min-width: 1200px) {

.site-branding__inner {
    height: var(--header-height-wide-when-fixed);
    padding-block: var(--sp0-5);
    padding-inline-start: 0;
    padding-inline-end: 0;
}
  }

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

.site-branding__logo img {
    width: auto;
    max-width: 100%;
    max-height: var(--sp2);
  }

@media (min-width: 768px) {

.site-branding__logo img {
      max-height: var(--sp2-5);
  }
    }

@media (min-width: 1200px) {

.site-branding__logo img {
      max-height: calc(var(--header-height-wide-when-fixed) - var(--sp));
  }
    }

.site-branding__text {
  color: #B4F000;
  font-size: 18px;
  font-weight: bold;
  display: none;
}

.site-branding__text a {
    color: inherit;
  }

@media (min-width: 768px) {

.site-branding__text {
    display: block;
    font-size: 28px;
    line-height: 28px;
}
  }

@media (min-width: 1200px) {

.site-branding__text {
    letter-spacing: 0.02em;
    font-size: 32px;
    line-height: var(--sp2);
}
  }

.site-branding__name-logo {
  display: block;
  width: auto;
  max-width: 100%;
  height: var(--sp2);
}

@media (min-width: 500px) {

.site-branding__name-logo {
    height: var(--sp3);
}
  }

@media (min-width: 768px) {

.site-branding__name-logo {
    height: var(--sp4);
}
  }

@media (min-width: 1200px) {

.site-branding__name-logo {
    height: calc(var(--header-height-wide-when-fixed) - var(--sp));
}
  }

.site-branding--bg-gray .site-branding__text,
.site-branding--bg-white .site-branding__text {
  color: var(--color--primary-50);
}

.site-branding__logo + .site-branding__text {
  text-transform: uppercase;
}

@media (min-width: 768px) {

.site-branding__logo + .site-branding__text {
    margin-inline-start: 12px;
}
  }
