.header__main--fixed {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  transform: translateY(-100%);
  z-index: 110;
}

.header__main--transition {
  transition: 0.3s transform, 0.3s box-shadow;
}

.header__main--visible {
  transform: translateY(0);
}

.header__logo {
  max-width: 400px;
  height: auto;
}

.header__logo picture {
  display: block;
  visibility: visible !important;
}

.header__logo * {
  max-width: 100%;
  height: auto;
}

.header__logo--retract {
  width: auto;
  height: 40px;
}

.header__logo--retract * {
  width: auto;
  height: 100%;
}

.header__logo:not(.header__logo--retract) picture:last-child {
  display: none;
}

.header__logo--retract picture:first-child {
  display: none;
}

.header__dropdown {
  width: 110%;
  z-index: 110;
  top: 44px;
  right: 0;
}

@media only screen and (min-width: 360px) and (max-width: 767px) {
  .header__dropdown {
    width: 100%;;
  }
}

.header__dropdown a.active {
  font-weight: bold;
}

.header__dropdown--right::before,
.header__dropdown--left::before,
.header__dropdown--right::after,
.header__dropdown--left::after {
  content: '';
  width: 0;
  height: 0;
  position: absolute;
}

.header__dropdown--right::before,
.header__dropdown--left::before {
  border-top: 12px solid transparent;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-bottom: 12px solid #fff;
  top: -24px;
}

.header__dropdown--right::after,
.header__dropdown--left::after {
  border-top: 14px solid transparent;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-bottom: 14px solid #D9D9D9;
  top: -28px;
  z-index: -1;
}

.header__dropdown--right::after {
  right: 22px;
}

.header__dropdown--right::before {
  right: 24px;
}

.header__dropdown--left::after {
  left: 36px;
}

.header__dropdown--left::before {
  left: 38px;
}

.header__search-field {
  width: 100%;
  background-color: #ffffff;
  border-radius: 0.25rem;
  border: 1px solid #cccccc;
  padding-right: 0.188rem;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  z-index: 110;
  position: relative;
}

.header__search-entry {
  flex: 1;
  background-color: transparent;
  border: 0;
  padding: 0.75rem;
  font-size: 1rem;
  line-height: 1.125rem;
}
