/* 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;
  }
}
.bigMenu {
  height: calc(100vh - 2em);
  left: -66vw;
  position: fixed;
  top: 1em;
  width: 100vw;
  z-index: 1060;
  padding-right: var(--inset-size);
  padding-left: calc(66% + var(--inset-size));
  background: var(--frame-color);
  color: #212124;
  display: flex;
  flex-direction: column;
  overflow: clip;
  -webkit-transform: translateX(-34%);
  -moz-transform: translateX(-34%);
  -o-transform: translateX(-34%);
  -ms-transform: translateX(-34%);
  transform: translateX(-34%);
  -webkit-transition: transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), background 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -moz-transition: transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), background 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -ms-transition: transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), background 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -o-transition: transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), background 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  transition: transform 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019), background 0.6s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
}
.menuHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.5em 1.5em 1.5em 1.5em;
  border-bottom: 1px solid #8e8e8e;
  flex-shrink: 0;
}
.menuHeader .menuTitle {
  font-size: 1.25em;
  font-weight: 500;
  margin: 0;
}
.menuClose {
  appearance: none;
  background: none;
  border: 0;
  padding: 0.5em;
  margin: -0.5em;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #212124;
  -webkit-transition: opacity 0.2s 0s ease;
  -moz-transition: opacity 0.2s 0s ease;
  -o-transition: opacity 0.2s 0s ease;
  transition: opacity 0.2s 0s ease;
}
.menuClose:focus {
  outline: 2px solid #bbaa6d;
  outline-offset: 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
html:not(.touch) .menuClose:hover,
.menuClose:focus {
  opacity: 0.6;
}
.menuClose .menuCloseIcon {
  position: relative;
  width: 1em;
  height: 1em;
  display: block;
  margin-right: 0.5em;
  margin-top: -0.25em;
}
.menuClose .menuCloseIcon:before,
.menuClose .menuCloseIcon:after {
  content: "";
  height: 1.5px;
  left: 0;
  position: absolute;
  top: 50%;
  width: 100%;
  background: currentColor;
  border-radius: 1px;
}
.menuClose .menuCloseIcon:before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.menuClose .menuCloseIcon:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.menuClose .menuCloseText {
  font-size: var(--font-size, 16px);
  font-weight: 700;
  line-height: 135%;
  cursor: pointer;
}
.menuBody {
  flex: 1;
  overflow-y: auto;
  padding: 1.5em;
}
.menuBody #menuItems {
  list-style: none;
  margin: 0;
  padding: 0;
}
.menuBody #menuItems > li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.menuBody #menuItems > li:not(:first-child) {
  margin-top: 0.5em;
}
.menuBody #menuItems > li .menuLink {
  color: #212124;
  text-decoration: none;
  display: block;
  position: relative;
  line-height: 1.2;
  cursor: pointer;
  width: max-content;
  max-width: 100%;
  overflow: clip;
}
.menuBody #menuItems > li .menuLink:focus {
  outline: 2px solid #bbaa6d;
  outline-offset: 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
html:not(.touch) .menuBody #menuItems > li .menuLink:hover .iconWrapper,
.menuBody #menuItems > li .menuLink:focus .iconWrapper {
  -webkit-transform: translate(0%, -50%) scale(1);
  -moz-transform: translate(0%, -50%) scale(1);
  -o-transform: translate(0%, -50%) scale(1);
  -ms-transform: translate(0%, -50%) scale(1);
  transform: translate(0%, -50%) scale(1);
}
html:not(.touch) .menuBody #menuItems > li .menuLink:hover .textWrapper,
.menuBody #menuItems > li .menuLink:focus .textWrapper {
  padding-left: 1em;
}
.menuBody #menuItems > li .menuLink .iconWrapper {
  font-size: var(--font-size, 16px);
  height: 2em;
  left: 0;
  position: absolute;
  top: 50%;
  width: auto;
  -webkit-transform: translate(-100%, -50%) scale(0.3);
  -moz-transform: translate(-100%, -50%) scale(0.3);
  -o-transform: translate(-100%, -50%) scale(0.3);
  -ms-transform: translate(-100%, -50%) scale(0.3);
  transform: translate(-100%, -50%) scale(0.3);
  -webkit-transition: transform 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -moz-transition: transform 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -o-transition: transform 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  transition: transform 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
}
.menuBody #menuItems > li .menuLink .iconWrapper svg {
  display: block;
  height: 2em;
}
.menuBody #menuItems > li .menuLink .textWrapper {
  padding-left: 0;
  -webkit-transition: padding-left 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -moz-transition: padding-left 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -o-transition: padding-left 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  transition: padding-left 0.45s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
}
.menuFooter {
  padding: 1.5em;
  flex-shrink: 0;
}
.menuFooter .menuAddress,
.menuFooter .menuTimes {
  margin-top: 1em;
}
.menuFooter .menuAddress a,
.menuFooter .menuTimes a {
  -webkit-transition: opacity 0.3s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -moz-transition: opacity 0.3s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  -o-transition: opacity 0.3s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  transition: opacity 0.3s 0s cubic-bezier(0.519, -0.014, 0.316, 1.019);
  color: #212124;
  display: block;
}
html:not(.touch) .menuFooter .menuAddress a:hover,
html:not(.touch) .menuFooter .menuTimes a:hover,
.menuFooter .menuAddress a:focus,
.menuFooter .menuTimes a:focus {
  opacity: 0.6;
}
.menuFooter .menuAddress a:focus,
.menuFooter .menuTimes a:focus {
  outline: 2px solid #bbaa6d;
  outline-offset: 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.menuFooter .socials {
  margin-top: 1.5em;
}
