header {
     height: var(--header-height);
     box-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
     position: fixed;
     top: 0;
     left: 0;
     transition: 0.15s;
     z-index: 9;
     background-color: var(--color-white);
}
header.smallnav {
     height: var(--header-smallheight);
}
#home-logo {
     height: 85%;
     width: calc(220px + 5vw);
     margin-left: var(--space-small);
     object-fit: scale-down;
}
#header-phone {
     margin-right: var(--space-small);
}
#header-phone img {
     margin-right: var(--space-xsmall);
}
#main-nav {
     width: calc(100% - calc(220px + 5vw));
     margin-left: var(--space-small);
}
.header-endnav {
     margin-right: var(--space-small);
}
.main-nav-mainitem {
     padding: 0;
     white-space: nowrap;
}
.main-nav-mainitem-inside {
     text-transform: uppercase;
     letter-spacing: 0.5px;
}
.main-nav-mainitem-inside::before {
     content: "";
     position: absolute;
     transition: transform 0.22s ease;
     left: 0;
     bottom: -4px;
     width: 100%;
     height: 3px;
     background: #B71E2D;
     transform: scaleX(0);
}
.main-nav-mainitem:hover .main-nav-mainitem-inside::before {
     transform: scaleX(1);
}
.button-blue.button-blue-from-header {
     min-width: auto;
     width: calc(92px + 4.5vw);
     /* margin-right: var(--space-small) */
}
.button-blue.button-blue-from-header span {
     letter-spacing: 0.5px;
}
.main-nav-subitems .main-nav-subitem:first-of-type {
     margin-top: calc(3px + 0.1vw);
}
.main-nav-subitems {
     opacity: 0;
     display: none;
     position: absolute;
     flex-direction: column;
     justify-content: center;
     align-items: flex-start;
     z-index: 2;
     left: 0;
     min-width: 100%;
     width: calc(150px + 1.8vw);
     padding: calc(8px + 0.5vw);
     background-color: white;
     border-radius: 0 0 2px 2px;
     top: var(--header-height);
     border-top: 1px solid #f4f4f4;
     transition: 0.15s;
}
header.smallnav .main-nav-subitems {
     top: var(--header-smallheight);
}
.main-nav-item {
     margin: 0 0.7vw;
}
.main-nav-item:hover .main-nav-subitems {
     opacity: 1;
     display: flex;
     transition: 0.28s;
}
#searchform .searchfield {
     width: calc(100px + 4.8vw);
     height: 100%;
     font-size: var(--font-size-n);
     line-height: var(--line-height-n);
     color: var(--color-primary);
     border: 1px solid var(--color-primary);
     padding: calc(6px + 0.4vw) calc(8px + 0.58vw);
     border-radius: 10px;
     font-family: var(--font-primary);
}
#searchform .searchfield::-webkit-input-placeholder {
     color: var(--color-primary);
     opacity: 1;
     font-weight: bold;
}
#searchform .searchfield::-moz-placeholder {
     color: var(--color-primary);
     opacity: 1;
     font-weight: bold;
}
#searchform .searchfield::-ms-placeholder {
     color: var(--color-primary);
     opacity: 1;
     font-weight: bold;
}
#searchform .searchfield::placeholder {
     color: var(--color-primary);
     opacity: 1;
     font-weight: bold;
}
#searchform .searchform_img {
     position: absolute;
     right: calc(6px + 0.38vw);
     top: 50%;
     transform: translateY(-50%);
     width: calc(24px + 0.5vw);
     height: calc(24px + 0.5vw);
     object-fit: scale-down;
}
#searchform .searchbutton {
     position: absolute;
     right: calc(6px + 0.38vw);
     top: 50%;
     transform: translateY(-50%);
     width: calc(24px + 0.5vw);
     height: calc(24px + 0.5vw);
     background-color: transparent;
     border: unset;
     cursor: pointer;
}
.burger, .burger_nav, .overlay {
     display: none;
}
.burger {
     width: 50px;
     height: 50px;
     position: absolute;
     border-radius: 4px;
     z-index: 10;
     margin-right: var(--space-xsmall);
     right: var(--space-xsmall);
     top: 50%;
     transform: translateY(-50%);
 }
.burger span {
     position: relative;
     margin-top: 9px;
     margin-bottom: 9px;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     position: absolute;
     top: 50%;
     left: 50%;
     margin-left: -15px;
     margin-top: -1.5px;
}
.burger span, .burger span::before, .burger span::after {
     display: block;
     width: 30px;
     height: 3px;
     background-color: var(--color-primary);
     outline: 1px solid transparent;
     -webkit-transition-property: background-color, -webkit-transform;
     -moz-transition-property: background-color, -moz-transform;
     -o-transition-property: background-color, -o-transform;
     transition-property: background-color, transform;
     -webkit-transition-duration: 0.3s;
     -moz-transition-duration: 0.3s;
     -o-transition-duration: 0.3s;
     transition-duration: 0.3s;
}
.burger span::before, .burger span::after {
     position: absolute;
     content: "";
}
.burger span::before {
     top: -9px;
}
.burger span::after {
     top: 9px;
}
.burger.clicked span {
     background-color: transparent;
}
.burger.clicked span::before {
     -webkit-transform: translateY(9px) rotate(45deg);
     -moz-transform: translateY(9px) rotate(45deg);
     -ms-transform: translateY(9px) rotate(45deg);
     -o-transform: translateY(9px) rotate(45deg);
     transform: translateY(9px) rotate(45deg);
}
.burger.clicked span::after {
     -webkit-transform: translateY(-9px) rotate(-45deg);
     -moz-transform: translateY(-9px) rotate(-45deg);
     -ms-transform: translateY(-9px) rotate(-45deg);
     -o-transform: translateY(-9px) rotate(-45deg);
     transform: translateY(-9px) rotate(-45deg);
}
.burger.clicked span:before, .burger.clicked span:after {
     background-color: #ffffff;
}
.burger:hover {
     cursor: pointer;
}
.burger_nav {
     background-color: var(--color-dark);
     box-shadow: 0 0 0px #181818;
     position: fixed;
     z-index: 9;
     top: 0;
     right: 0;
     height: calc(100vh - var(--space-xlarge) - var(--space-medium));
     max-width: 340px;
     width: 100%;
     padding: var(--space-xlarge) var(--space-medium) var(--space-medium) var(--space-medium);
     overflow-y: auto;
     -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
     -ms-transform: translateX(100%);
     -o-transform: translateX(100%);
     transform: translateX(100%);
     -webkit-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
     -moz-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
     -o-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
     transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
.burger_nav.show {
     -webkit-transform: translateX(0px);
     -moz-transform: translateX(0px);
     -ms-transform: translateX(0px);
     -o-transform: translateX(0px);
     transform: translateX(0px);
     box-shadow: 0 0 22px #181818;
}
.burger_nav.show ul li {
     -webkit-transform: translateX(0px);
     -moz-transform: translateX(0px);
     -ms-transform: translateX(0px);
     -o-transform: translateX(0px);
     transform: translateX(0px);
     opacity: 1;
}
.burger_nav.show ul li:nth-child(1) {
     transition-delay: 0.15s;
}
.burger_nav.show ul li:nth-child(2) {
     transition-delay: 0.3s;
}
.burger_nav.show ul li:nth-child(3) {
     transition-delay: 0.45s;
}
.burger_nav.show ul li:nth-child(4) {
     transition-delay: 0.6s;
}
.burger_nav.show ul li:nth-child(5) {
     transition-delay: 0.75s;
}
.burger_nav.show ul li:nth-child(6) {
     transition-delay: 0.9s;
}
.burger_nav.show ul li:nth-child(7) {
     transition-delay: 1.05s;
}
.burger_nav.show ul li:nth-child(8) {
     transition-delay: 1.2s;
}
.burger_nav.show ul li:nth-child(9) {
     transition-delay: 1.35s;
}
.burger_nav.show ul li:nth-child(10) {
     transition-delay: 1.5s;
}
.burger_nav.show ul li:nth-child(11) {
     transition-delay: 1.65s;
}
.burger_nav ul {
     list-style-type: none;
}
.burger_nav ul li {
     margin-bottom: calc(16px + 0.75vh);
     -webkit-transform: translateX(40px);
     -moz-transform: translateX(40px);
     -ms-transform: translateX(40px);
     -o-transform: translateX(40px);
     transform: translateX(40px);
     opacity: 0;
     -webkit-transition: all 0.3s ease;
     -moz-transition: all 0.3s ease;
     -o-transition: all 0.3s ease;
     transition: all 0.3s ease;
}
.burger_nav ul li:last-of-type {
     margin-bottom: 0px;
}
.overlay {
     position: fixed;
     top: 0;
     left: 0;
     z-index: 1;
     width: 100%;
     height: 100%;
     -webkit-transition: all 0.3s ease-in-out;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
     background-color: #333333;
     opacity: 0;
     visibility: hidden;
}
.overlay.show {
     opacity: 0.8;
     visibility: visible;
}
#sidebutton-mail,
#sidebutton-phone,
#sidebutton-facebook {
     display: block;
     position: fixed;
     right: calc(10px + 0.75vw);
     transform: translateY(-50%);
     height: 50px;
     width: 50px;
     overflow: hidden;
     transition: 0.12s;
     /* border-radius: 50%; */
     /* border-radius: 7px; */
     /* box-shadow: 0 0 6px #00000070; */
     /* background-color: var(--color-white); */
}
#sidebutton-mail:hover,
#sidebutton-phone:hover,
#sidebutton-facebook:hover {
     height: 54px;
     width: 54px;
     right: calc(8px + 0.75vw);
}
#sidebutton-mail img,
#sidebutton-phone img,
#sidebutton-facebook img {
     position: relative;
     width: 100%;
     height: 100%;
     object-fit: scale-down;
}
#sidebutton-phone {
     top: calc(50%);
}
#sidebutton-mail {
     top: calc(50% + 52px);
}
#sidebutton-facebook {
     top: calc(50% + 104px);
}
.burger_nav ul li a {
     font-size: clamp(20px, 2.5vw, 24px);
     line-height: clamp(20px, 2.5vw, 24px);
     background-color: var(--color-primary);
     font-weight: var(--font-medium);
     padding: calc(4px + 0.25vw) calc(6px + 0.3vw);
     font-family: var(--font-primary);
     letter-spacing: calc(0.5px + 0.02vw);
     box-shadow: -1px 1px 6px #00000070;
}
@media screen and (max-width: 1500px) {
     #home-logo {
          width: 170px;
     }
     #main-nav {
          width: calc(100% - 170px);
      }
     .main-nav-mainitem {
          padding: 0 4px;
     }
     .button-blue.button-blue-from-header {
          margin-left: 10px;
          margin-right: 10px !important;
          padding: 10px 6px;
     }
}
@media screen and (max-width: 1199px) {
     .main-nav-item {
          margin: 0 3px;
     }
     #main-nav .main-nav-item:first-of-type {
          display: none;
     }
     #searchform .searchfield {
          width: calc(70px + 4.8vw);
      }
}
@media screen and (max-width: 991px) {
     #header-phone a img {
          display: none;
     }
     .main-nav-mainitem-inside {
          letter-spacing: -0.5px;
     }
}
@media screen and (max-width: 959px) {
     #home-logo {
          margin-left: var(--space-xsmall);
     }
     #header-phone {
          margin-right: var(--space-xsmall);
     }
     .main-nav-mainitem {
          padding: 0 var(--space-xxsmall);
     }
     .main-nav-mainitem-inside,
     #header-phone a span {
          letter-spacing: -1px;
     }
     #header-phone {
          display: none;
     }
     #main-nav {
          margin-right: var(--space-small);
     }
     #sidebutton-mail,
     #sidebutton-phone,
     #sidebutton-facebook {
          display: none;
     }
     .burger, .burger_nav, .overlay {
          display: block;
     }
     #main-nav, #header-phone {
          display: none;
     }
}
@media screen and (max-width: 767px) {

}