/* Breakpoints */
/* Desktop */
/* body font-size in design - no px */
/* screen-size in design - no px */
/* Tablet */
/* Mobile Landscape */
/* Mobile Portrait */
/* CSS Custom Properties for runtime scaling (needed for clamp/calc) */
:root {
  --size-unit: 16;
  --size-container-ideal: 1600;
  --size-container-min: 992px;
  --size-container-max: 1920px;
  --size-container: clamp(var(--size-container-min), 100vw, var(--size-container-max));
  --size-font: calc(var(--size-container) / (var(--size-container-ideal) / var(--size-unit)));
  --spacing-block: 7.75em;
  --spacing-huge: 5em;
  --spacing-large: 2.5em;
  --spacing-big: 2em;
  --spacing-medium: 1.5em;
  --spacing-normal: 1em;
  --spacing-small: 0.75em;
  --spacing-tiny: 0.5em;
  --frame-color: #ffffff;
  --inset-size: 20px;
  --hole-radius: 10px;
  --header-offset: 160px;
}
@media screen and (max-width: 991px) {
  :root {
    --size-unit: 16;
    --size-container-ideal: 834;
    --size-container-min: 768px;
    --size-container-max: 991px;
  }
}
@media screen and (max-width: 767px) {
  :root {
    --size-unit: 16;
    --size-container-ideal: 550;
    --size-container-min: 480px;
    --size-container-max: 767px;
    --spacing-block: 7.5em;
    --spacing-huge: 4em;
    --spacing-large: 2.5em;
    --spacing-big: 2em;
    --spacing-medium: 1.5em;
    --spacing-normal: 1em;
    --spacing-small: 0.75em;
    --spacing-tiny: 0.5em;
  }
}
@media screen and (max-width: 479px) {
  :root {
    --size-unit: 16;
    --size-container-ideal: 390;
    --size-container-min: 320px;
    --size-container-max: 479px;
  }
}
.menuOpen header .innerHeader .containerWrapper .col:not(.logoCol),
.cartOpen header .innerHeader .containerWrapper .col:not(.logoCol) {
  opacity: 0;
  pointer-events: none;
}
header {
  height: auto;
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 1000;
  color: #ffffff;
  -webkit-transition: margin 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -moz-transition: margin 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -ms-transition: margin 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -o-transition: margin 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  transition: margin 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
}
header.hide {
  -webkit-transform: translateY(-100%);
  -moz-transform: translateY(-100%);
  -o-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
  opacity: 0;
}
header .innerHeader {
  position: relative;
  padding: 2em 0 0 0;
}
header .innerHeader .container {
  display: block;
  align-items: center;
}
header .innerHeader .container .containerWrapper {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  position: relative;
  align-items: center;
}
header .innerHeader .container .col {
  display: inline-block;
  vertical-align: top;
  width: calc((100% - 3.5em) / 2);
  padding-top: 1em;
}
header .innerHeader .container .col:not(.logoCol) {
  -webkit-transition: opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -moz-transition: opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -o-transition: opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  transition: opacity 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
}
header .innerHeader .container .col.logoCol {
  padding-top: 0;
  width: 3.5em;
  flex-shrink: 0;
}
header .innerHeader .container .col.logoCol .logo svg {
  display: block;
}
header .innerHeader .container .col.logoCol .navLine {
  width: calc(100% + 2.375em);
  position: relative;
  margin-left: -1.1875em;
}
header .innerHeader .container .col.logoCol .navLine:before {
  height: 1px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100vw;
  -webkit-transform: translateX(calc(100% * -1 + 1px));
  -moz-transform: translateX(calc(100% * -1 + 1px));
  -o-transform: translateX(calc(100% * -1 + 1px));
  -ms-transform: translateX(calc(100% * -1 + 1px));
  transform: translateX(calc(100% * -1 + 1px));
  content: "";
  background: #ffffff;
}
header .innerHeader .container .col.logoCol .navLine:after {
  height: 1px;
  left: auto;
  position: absolute;
  top: 0;
  width: 100vw;
  right: 0;
  -webkit-transform: translateX(calc(100% - 1px));
  -moz-transform: translateX(calc(100% - 1px));
  -o-transform: translateX(calc(100% - 1px));
  -ms-transform: translateX(calc(100% - 1px));
  transform: translateX(calc(100% - 1px));
  content: "";
  background: #ffffff;
}
header .innerHeader .container .col.logoCol .navLine svg {
  width: 100%;
}
header .innerHeader .container .col .topMenu {
  display: inline-block;
}
header .innerHeader .container .col .topMenu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
header .innerHeader .container .col .topMenu ul li {
  display: inline-block;
  margin-left: 2em;
}
header .innerHeader .container .col .burgerWrapper {
  display: inline-block;
  vertical-align: middle;
  width: 1.5em;
  height: 1em;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
header .innerHeader .container .col .burgerWrapper .hamburger {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0;
  width: 1.5em;
  height: 1em;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
  color: inherit;
}
header .innerHeader .container .col .burgerWrapper .hamburger:focus {
  outline: 2px solid #ffffff;
  outline-offset: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
html:not(.touch) header .innerHeader .container .col .burgerWrapper .hamburger:hover .bar:last-child,
header .innerHeader .container .col .burgerWrapper .hamburger:focus .bar:last-child {
  -webkit-transform: scaleX(0.5);
  -moz-transform: scaleX(0.5);
  -o-transform: scaleX(0.5);
  -ms-transform: scaleX(0.5);
  transform: scaleX(0.5);
  transform-origin: left;
}
header .innerHeader .container .col .burgerWrapper .hamburger .bar {
  display: block;
  width: 100%;
  height: 1px;
  background: #ffffff;
  -webkit-transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
  -o-transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
  transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
  transform-origin: left;
}
header .innerHeader .container .col .logo {
  display: block;
  width: 100%;
}
header .innerHeader .container .col.rightCol .innerCol {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2em;
}
header .innerHeader .container .col.rightCol .innerCol .cartLink {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
}
header .innerHeader .container .col.rightCol .innerCol .cartLink .cartCount {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.75em;
  height: 1.75em;
  padding: 0 0.5em;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  font-size: 0.875em;
  line-height: 1;
}
header .innerHeader .container .col .headerLink {
  color: #ffffff;
  text-decoration: none;
  display: inline-flex;
  position: relative;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
}
header .innerHeader .container .col .headerLink .innerTextWrapper {
  position: relative;
  display: inline-block;
}
header .innerHeader .container .col .headerLink .innerTextWrapper:after {
  height: 1px;
  left: 0;
  position: absolute;
  top: auto;
  width: 100%;
  bottom: -0.125em;
  background: #ffffff;
  content: "";
  transform: scaleX(0);
  transform-origin: right;
  -webkit-transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
  -o-transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
  transition: transform 0.3s 0s cubic-bezier(0.77, 0, 0.175, 1);
}
html:not(.touch) header .innerHeader .container .col .headerLink:hover .innerTextWrapper:after,
header .innerHeader .container .col .headerLink:focus .innerTextWrapper:after {
  transform: scaleX(1);
  transform-origin: left;
}
header .innerHeader .container .col .headerLink:focus {
  outline: 2px solid #ffffff;
  outline-offset: 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
