/* Header-only rating widgets. Loaded after site.css to avoid page banner inheritance. */
.site-header .brand__tagline--desktop {
  display: block !important;
}

.site-header .brand__tagline--mobile {
  display: none !important;
}

.site-header .header-rating-panel {
  inline-size: 92px !important;
  width: 92px !important;
  min-width: 0 !important;
  align-self: center !important;
  justify-self: end !important;
}

.site-header .header-rating-widgets {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 4px !important;
  inline-size: 100% !important;
  width: 100% !important;
  margin: 0 !important;
}

.site-header .header-rating-widgets .rating-widget {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 27px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  column-gap: 4px !important;
  row-gap: 0 !important;
  inline-size: 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 34px !important;
  padding: 2px 3px !important;
  border-radius: 7px !important;
  text-decoration: none !important;
}

.site-header .header-rating-widgets .rating-widget b {
  box-sizing: border-box !important;
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  inline-size: 25px !important;
  width: 25px !important;
  block-size: 25px !important;
  height: 25px !important;
  min-width: 25px !important;
  min-height: 25px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  font-size: 9.4px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
  transform: none !important;
  filter: none !important;
}

.site-header .header-rating-widgets .rating-widget span,
.site-header .header-rating-widgets .rating-widget small {
  grid-column: 2 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.site-header .header-rating-widgets .rating-widget span {
  grid-row: 1 !important;
  align-self: end !important;
  font-size: 8.4px !important;
  font-weight: 800 !important;
  line-height: 1.02 !important;
  white-space: nowrap !important;
}

.site-header .header-rating-widgets .rating-widget small {
  grid-row: 2 !important;
  align-self: start !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  line-height: 1.02 !important;
  white-space: nowrap !important;
}

.site-header .header-rating-widgets .rating-widget em {
  display: none !important;
}

body.menu-open .site-header {
  z-index: 260 !important;
  pointer-events: none !important;
}

body.menu-open .site-header .brand,
body.menu-open .site-header .header-center,
body.menu-open .site-header .header-contacts,
body.menu-open .site-header .header-rating-panel {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.menu-open .site-header .menu-toggle {
  position: fixed !important;
  top: 14px !important;
  right: clamp(12px, 4vw, 24px) !important;
  z-index: 320 !important;
  display: block !important;
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, .46) !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: rgba(16, 42, 73, .42) !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

body.menu-open .site-header .menu-toggle span {
  position: absolute !important;
  left: 10px !important;
  right: 10px !important;
  top: 50% !important;
  display: block !important;
  width: auto !important;
  height: 2px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: #fff !important;
  opacity: 1 !important;
  transform-origin: center !important;
}

body.menu-open .site-header .menu-toggle span:nth-child(1) {
  transform: translateY(-50%) rotate(45deg) !important;
}

body.menu-open .site-header .menu-toggle span:nth-child(2) {
  opacity: 0 !important;
}

body.menu-open .site-header .menu-toggle span:nth-child(3) {
  transform: translateY(-50%) rotate(-45deg) !important;
}

@media (max-width: 1180px) {
  .site-header .header-rating-panel {
    inline-size: 90px !important;
    width: 90px !important;
  }

  .site-header .header-rating-widgets .rating-widget {
    grid-template-columns: 24px minmax(0, 1fr) !important;
    min-height: 33px !important;
    padding: 3px 4px !important;
  }

  .site-header .header-rating-widgets .rating-widget b {
    inline-size: 22px !important;
    width: 22px !important;
    block-size: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    font-size: 9.4px !important;
  }
}

@media (max-width: 920px) {
  .site-header .brand__tagline--desktop {
    display: none !important;
  }

  .site-header .brand__tagline--mobile {
    display: block !important;
    max-width: 180px !important;
    margin-top: 2px !important;
    color: rgba(16, 42, 73, .66) !important;
    font-size: clamp(9px, 2.2vw, 12px) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .site-header .header-rating-panel {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    inline-size: min(166px, 52vw) !important;
    width: min(166px, 52vw) !important;
  }

  .site-header .header-rating-widgets {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 4px !important;
  }

  .site-header .header-rating-widgets .rating-widget {
    grid-template-columns: 24px minmax(0, 1fr) !important;
    min-height: 29px !important;
    padding: 2px 3px !important;
    column-gap: 4px !important;
  }

  .site-header .header-rating-widgets .rating-widget b {
    inline-size: 21px !important;
    width: 21px !important;
    block-size: 21px !important;
    height: 21px !important;
    min-width: 21px !important;
    min-height: 21px !important;
    font-size: 9.4px !important;
  }

  .site-header .header-rating-widgets .rating-widget span {
    font-size: 7.8px !important;
  }

  .site-header .header-rating-widgets .rating-widget small {
    font-size: 7px !important;
  }
}

@media (max-width: 640px) {
  .site-header .brand__tagline--mobile {
    max-width: 142px !important;
    font-size: 8.4px !important;
  }

  .site-header .header-rating-panel {
    inline-size: min(160px, 54vw) !important;
    width: min(160px, 54vw) !important;
  }

  .site-header .header-rating-widgets {
    gap: 4px !important;
  }

  .site-header .header-rating-widgets .rating-widget {
    grid-template-columns: 24px minmax(0, 1fr) !important;
    min-height: 28px !important;
    padding: 2px 3px !important;
    column-gap: 4px !important;
  }

  .site-header .header-rating-widgets .rating-widget b {
    inline-size: 21px !important;
    width: 21px !important;
    block-size: 21px !important;
    height: 21px !important;
    min-width: 21px !important;
    min-height: 21px !important;
    font-size: 9.4px !important;
  }

  .site-header .header-rating-widgets .rating-widget span {
    font-size: 7.4px !important;
  }

  .site-header .header-rating-widgets .rating-widget small {
    font-size: 6.2px !important;
  }
}