/* #####################################################################################################
   This stylesheet describes the header
   ##################################################################################################### */

/*--- standard variables ---*/
/*--- product item ratio (thumb + content) ---*/
/* set ProductImageRatio in productOverview! */
/*--- media queries. When using responsive ---*/
/* Range breakpoints */
/*----- Default functions -----*/
/*----- Default Crossbrowser functions -----*/
/*----- CSS3 functions -----*/
/*----- CSS3 Animation functions -----*/
/*----- Buttons -----*/
/*----- Responsive functions -----*/
.autocompleteResults {
  border: 1px solid #dedede;
  background: white;
  z-index: 10;
  position: absolute;
  top: 40px;
  left: 0;
  right: 0;
}
.autocompleteResults:empty {
  display: none;
}
.autocompleteResults li {
  border-top: 1px solid #dedede;
}
.autocompleteResults li.active {
  background: #e6e6e6;
}
.autocompleteResults a {
  display: block;
  padding: 4%;
  color: black;
}
/* ++ Top Navigation ++ */

#topNav {
  overflow: hidden;
  transition: 0.5s;
  background: #eedcca;
}
#topNav .usp {
  font-size: 12px;
  color: black;
  display: flex;
  flex-flow: row;
  width: 100%;
  justify-content: center;
  transition: 0.5s;
}
@media only screen and (min-width: 1024px) {
  #topNav .usp {
    justify-content: space-between;
  }
}
#topNav .usp span {
  align-items: center;
  transition: all 0.4s ease-in-out;
  display: none;
  padding: 6px 0px 6px 0px;
  height: 36px;
  line-height: 26px;
  text-transform: uppercase;
  position: relative;
}
#topNav .usp span.active {
  display: inline-block;
}
@media only screen and (min-width: 1024px) {
  #topNav .usp span {
    display: inline-block;
  }
}
/* ++ Header ++ */

#header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 110;
  background: white;
  /* ++ Logo ++ */

  /* ++ Menu toggle ++ */

  /* ++ Search Box ++ */

}
#header.shrunk #topNav {
  height: 0;
  line-height: 0;
  overflow: hidden;
  transition: 0.5s;
}
#header.shrunk #searchNav #searchDropdown {
  top: 69px;
}
#header .container {
  height: inherit;
}
@media only screen and (min-width: 1024px) {
  #header .container {
    border: 0;
  }
}
#header .header__main {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  padding: 16px 13px 16px 15px;
}
@media only screen and (min-width: 1280px) {
  #header .header__main {
    align-items: flex-end;
    flex-flow: row wrap;
  }
}
#header .header__main.container:after {
  display: none;
}
#header .header__main-left {
  display: flex;
  justify-content: center;
}
#header .header__main-middle {
  flex: 1 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 6%;
}
@media only screen and (min-width: 1024px) {
  #header .header__main-middle {
    flex: 1 auto;
    padding-left: 0px;
    justify-content: left;
  }
}
#header .header__main-right {
  display: flex;
  flex-flow: row;
  min-width: 102px;
  justify-content: flex-end;
}
@media only screen and (min-width: 500px) {
  #header .header__main-right {
    min-width: 179px;
  }
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right {
    min-width: 225px;
  }
}
#header .header__main-right a {
  display: flex;
  color: black;
  margin-left: 10px;
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right a {
    display: block;
    margin-left: 20px;
  }
}
#header .header__main-right a span {
  display: none;
  font-size: 8px;
}
@media only screen and (min-width: 500px) {
  #header .header__main-right a span {
    display: flex;
  }
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right a span {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right-row-1 {
    margin-bottom: 5px;
  }
}
#header .header__main-right-row-1 #LoggedInOptions,
#header .header__main-right-row-1 #LoggedOutOptions {
  position: relative;
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right-row-1 #LoggedInOptions,
  #header .header__main-right-row-1 #LoggedOutOptions {
    margin-left: 25px;
    width: auto;
  }
}
@media only screen and (min-width: 500px) {
  #header .header__main-right-row-1 #LoggedInOptions .headerLink {
    width: 64px;
  }
}
@media only screen and (min-width: 768px) {
  #header .header__main-right-row-1 #LoggedInOptions .headerLink {
    width: auto;
  }
}
#header .header__main-right .logout-logo {
  color: black;
  background-color: #eedcca;
  position: absolute;
  width: 13px;
  height: 13px;
  font-size: 10px;
  vertical-align: middle;
  top: -4px;
  right: -18%;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
}
@media only screen and (min-width: 768px) {
  #header .header__main-right .logout-logo {
    right: 12%;
  }
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right .logout-logo {
    right: 20px;
  }
}
#header .header__main-right .logout-logo span svg {
  position: relative;
  top: 1px;
}
#header .header__main-right .login-logo {
  color: black;
  background-color: #eedcca;
  position: absolute;
  width: 13px;
  height: 13px;
  font-size: 10px;
  vertical-align: middle;
  top: -4px;
  right: -20%;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
}
@media only screen and (min-width: 500px) {
  #header .header__main-right .login-logo {
    right: -2%;
  }
}
@media only screen and (min-width: 768px) {
  #header .header__main-right .login-logo {
    right: -18%;
  }
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right .login-logo {
    right: -2%;
  }
}
#header .header__main-right-row-1,
#header .header__main-right-row-2 {
  display: flex;
  flex-flow: row;
  justify-content: flex-end;
}
#header .header__main-right-row-1 a,
#header .header__main-right-row-2 a {
  position: relative;
  display: flex;
  flex-flow: column-reverse;
  align-items: center;
  gap: 4px;
  justify-content: flex-end;
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right-row-1 a,
  #header .header__main-right-row-2 a {
    gap: 2px;
  }
}
#header .header__main-right-row-1 a svg,
#header .header__main-right-row-2 a svg {
  margin-left: 5px;
  width: 19px;
  height: 19px;
  filter: invert(1);
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right-row-1 a svg,
  #header .header__main-right-row-2 a svg {
    width: initial;
    height: initial;
  }
}
#header .header__main-right-row-1 a:after,
#header .header__main-right-row-2 a:after {
  margin-left: 5px;
}
#header .header__main-right-row-1 a.shopLink,
#header .header__main-right-row-2 a.shopLink {
  display: none;
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right-row-1 a.shopLink,
  #header .header__main-right-row-2 a.shopLink {
    display: flex;
  }
}
#header .header__main-right-row-1 a.shopLink:after,
#header .header__main-right-row-2 a.shopLink:after {
  content: "\f041 ";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: 13px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: auto;
  height: auto;
  line-height: auto;
}
#header .header__main-right-row-1 a .amountWrapper,
#header .header__main-right-row-2 a .amountWrapper {
  background: #eedcca;
  position: absolute;
  right: -36%;
  top: -3px;
  display: block;
  overflow: hidden;
  border-radius: 100%;
  width: 13px;
  height: 13px;
  font-size: 10px;
  text-align: center;
  padding-top: 0;
  vertical-align: middle;
}
@media only screen and (min-width: 768px) {
  #header .header__main-right-row-1 a .amountWrapper,
  #header .header__main-right-row-2 a .amountWrapper {
    right: 0;
  }
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right-row-1 a .amountWrapper,
  #header .header__main-right-row-2 a .amountWrapper {
    right: 14%;
  }
}
#header .header__main-right-row-1 a .amountWrapper#ShoppingCartCount,
#header .header__main-right-row-2 a .amountWrapper#ShoppingCartCount {
  right: -25%;
}
@media only screen and (min-width: 768px) {
  #header .header__main-right-row-1 a .amountWrapper#ShoppingCartCount,
  #header .header__main-right-row-2 a .amountWrapper#ShoppingCartCount {
    right: 8%;
  }
}
@media only screen and (min-width: 1024px) {
  #header .header__main-right-row-1 a .amountWrapper#ShoppingCartCount,
  #header .header__main-right-row-2 a .amountWrapper#ShoppingCartCount {
    right: 20%;
  }
}
#header .header__main .vatpicker {
  position: absolute;
  left: 320px;
  top: 30px;
}
#header .header__main .vatpicker a {
  padding: 0 10px 0 0;
}
#header .header__main .productComparison {
  position: absolute;
  left: 320px;
  top: 53px;
}
#header #logo img {
  width: 200px;
  height: auto;
  position: relative;
  bottom: -2px;
  right: -8px;
}
@media only screen and (min-width: 1024px) {
  #header #logo img {
    bottom: initial;
    right: initial;
    max-height: initial;
  }
}
#header #menuToggle {
  height: 100%;
  overflow: hidden;
  color: black;
  font-size: 14px;
  line-height: 16px;
  text-transform: uppercase;
  display: flex;
  flex-flow: row;
  gap: 2px;
  align-items: center;
  -webkit-transition: none;
  -moz-transition: none;
  -o-transition: color 0 ease-in;
  transition: none;
}
#header #menuToggle span {
  position: relative;
  top: 2px;
  text-transform: none;
}
#header #menuToggle:hover {
  text-decoration: none;
}
@media only screen and (min-width: 1024px) {
  #header #menuToggle {
    display: none;
  }
}
#header #menuToggle:before {
  display: block;
  margin-right: 6px;
  content: "\f0c9";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: 20px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: auto;
  height: auto;
  line-height: auto;
  top: 2px;
  position: relative;
}
.panelOpen.mobileNavPanel #header #menuToggle:before {
  content: "\f00d ";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: 20px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: auto;
  height: auto;
  line-height: auto;
}
#header #searchNav {
  min-width: 380px;
  height: calc(100% - 3px);
  background: white;
}
@media only screen and (min-width: 1024px) {
  #header #searchNav {
    min-width: 230px;
  }
}
@media only screen and (min-width: 1280px) {
  #header #searchNav {
    min-width: 380px;
  }
}
#header #searchNav input {
  line-height: 27px;
  border: 1px solid black;
  width: 100%;
  padding: 2px 10px;
  min-height: auto;
}
@media only screen and (min-width: 1024px) {
  #header #searchNav input {
    min-height: 0;
  }
}
#header #searchNav .bttn {
  width: 35px;
  min-width: 35px;
  height: 100%;
  text-indent: 100%;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 0 none;
  position: absolute;
  right: 0;
  top: 0;
  background: none;
  cursor: pointer;
}
#header #searchNav #searchToggle {
  width: 100%;
  height: 100%;
  color: black;
}
@media only screen and (min-width: 1024px) {
  #header #searchNav #searchToggle {
    display: none;
  }
}
#header #searchNav #searchToggle:before {
  content: "\f002";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: 20px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
  height: 20px;
  line-height: 20px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#header #searchNav #searchDropdown {
  position: fixed;
  left: 0;
  width: 100%;
  top: 88px;
  padding: 15px;
  background: white;
  transition: 0.5s;
}
@media only screen and (min-width: 1024px) {
  #header #searchNav #searchDropdown {
    display: block !important;
    /* overwrite js toggle for mobile */
    padding: 0;
    border: 0 none;
    top: auto;
    left: auto;
    width: 100%;
    position: relative;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }
}
#header #searchNav #searchDropdown .arrow {
  position: absolute;
  right: 75px;
  top: -28px;
  display: none;
}
@media only screen and (min-width: 1024px) {
  #header #searchNav #searchDropdown .arrow {
    display: none;
  }
}
#header .languagePicker {
  float: left;
  margin-left: 50px;
}
#header .languagePicker li {
  display: inline-block;
  vertical-align: middle;
  margin-left: 20px;
  margin-right: -4px;
  line-height: 40px;
  color: black;
}
#header .languagePicker li:first-child {
  margin-left: 0;
}
#header .languagePicker li a {
  color: inherit;
}
#header .languagePicker li a:hover {
  color: black;
  text-decoration: underline;
}
#header .autocompleteResults {
  border: 1px solid #dedede;
  background: white;
  z-index: 10;
  position: absolute;
  top: 33px;
  left: 0;
  right: 0;
}
#header .autocompleteResults li {
  border-top: 1px solid #dedede;
}
#header .autocompleteResults li.active {
  background: #e6e6e6;
}
#header .autocompleteResults a {
  display: block;
  padding: 4%;
  color: black;
}
#header html.panelOpen.mobileNavPanel #menuToggle {
  position: absolute;
  left: -50px;
  top: -35px;
  font-size: 0px;
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#header html.panelOpen.mobileNavPanel #menuToggle:before {
  color: black;
  font-size: 22px;
}
#header html.panelOpen.mobileNavPanel body.shrunk #menuToggle {
  top: 1px;
}
