/**
 * TODO:
 * Discuss use of auto-prefixer like compass or alike
 */
/* Fonts */
@font-face {
  font-family: "NNRekja";
  src: url("../fonts/NN-RekjaRegular.eot"); /* IE9 Compat Modes */
  src: url("../fonts/NN-RekjaRegular.eot?#iefix") format("embedded-opentype"), url("../fonts/NN-RekjaRegular.otf") format("opentype"), url("../fonts/NN-RekjaRegular.svg") format("svg"), url("../fonts/NN-RekjaRegular.ttf") format("truetype"), url("../fonts/NN-RekjaRegular.woff") format("woff"), url("../fonts/NN-RekjaRegular.woff2") format("woff2"); /* Modern Browsers */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "EuclidSquare";
  src: url("../fonts/EuclidSquare-Bold.eot"); /* IE9 Compat Modes */
  src: url("../fonts/EuclidSquare-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/EuclidSquare-Bold.otf") format("opentype"), url("../fonts/EuclidSquare-Bold.svg") format("svg"), url("../fonts/EuclidSquare-Bold.ttf") format("truetype"), url("../fonts/EuclidSquare-Bold.woff") format("woff"), url("../fonts/EuclidSquare-Bold.woff2") format("woff2"); /* Modern Browsers */
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "EuclidSquare";
  src: url("../fonts/EuclidSquare-Regular.eot"); /* IE9 Compat Modes */
  src: url("../fonts/EuclidSquare-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/EuclidSquare-Regular.otf") format("opentype"), url("../fonts/EuclidSquare-Regular.svg") format("svg"), url("../fonts/EuclidSquare-Regular.ttf") format("truetype"), url("../fonts/EuclidSquare-Regular.woff") format("woff"), url("../fonts/EuclidSquare-Regular.woff2") format("woff2"); /* Modern Browsers */
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "EuclidSquare";
  src: url("../fonts/EuclidSquare-Semibold.eot"); /* IE9 Compat Modes */
  src: url("../fonts/EuclidSquare-Semibold.eot?#iefix") format("embedded-opentype"), url("../fonts/EuclidSquare-Semibold.otf") format("opentype"), url("../fonts/EuclidSquare-Semibold.svg") format("svg"), url("../fonts/EuclidSquare-Semibold.ttf") format("truetype"), url("../fonts/EuclidSquare-Semibold.woff") format("woff"), url("../fonts/EuclidSquare-Semibold.woff2") format("woff2"); /* Modern Browsers */
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "bico";
  src: url("../fonts/bico.eot?v=1");
  src: url("../fonts/bico.eot?v=1#iefix") format("embedded-opentype"), url("../fonts/bico.woff?v=1") format("woff"), url("../fonts/bico.ttf?v=1") format("truetype"), url("../fonts/bico.svg?v=1#bico") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class*=icon-]:before {
  display: inline-block;
  font-family: "bico";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-bottom:before {
  content: "A";
}

.icon-arrow-left:before {
  content: "B";
}

.icon-arrow-right:before {
  content: "C";
}

.icon-calender:before {
  content: "D";
}

.icon-instagram:before {
  content: "E";
}

.icon-facebook:before {
  content: "F";
}

.icon-linkedin:before {
  content: "G";
}

.icon-mail:before {
  content: "H";
}

.icon-message:before {
  content: "I";
}

.icon-moon_active:before {
  content: "J" !important;
}

.icon-moon:before {
  content: "K";
}

.icon-phone:before {
  content: "L";
}

.icon-place:before {
  content: "M";
}

.icon-share:before {
  content: "N";
}

.icon-time:before {
  content: "O";
}

.icon-youtube:before {
  content: "P";
}

.icon-cross:before {
  content: "Q";
}

.icon-star:before {
  content: "R";
}

.icon-video-call:before {
  content: "R";
}

.icon-star:before {
  content: "S";
}

.icon-chevron:before {
  content: "T";
}

/* Start - variables */
/* End - variables */
/* Start - variables */
/* End - variables */
/* Start - mixins */
/* End - mixins */
/* Start - functions */
/* End - functions */
/* Start - helpers */
/* Start - default helpers */
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}

/* End - default helpers */
/* Start - general styles */
* {
  font-smooth: always;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-text-rendering: optimizeLegibility;
  -moz-text-rendering: optimizeLegibility;
  -ms-text-rendering: optimizeLegibility;
  -o-text-rendering: optimizeLegibility;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  text-size-adjust: none;
  -webkit-overflow-scrolling: touch;
  /* These Rules make if unnecessary to redefine color, size or font multiple times */
  color: inherit;
  font-family: inherit;
  line-height: inherit;
  font-size: inherit;
}
*:focus {
  outline: none;
}
*.stroke {
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: black;
  color: transparent !important;
}
*.remove-margin {
  margin: 0 !important;
}
*.remove-padding {
  padding: 0 !important;
}

*, ::after, ::before {
  box-sizing: border-box;
}

/* End - general styles */
.w-100 {
  width: 100% !important;
}

.vw-100 {
  width: 100vw !important;
}

.h-100 {
  height: 100% !important;
}

.vh-100 {
  height: 100vh !important;
}

.cursor-pointer {
  cursor: pointer;
}

/* Start - color styles */
/* End - color styles */
/* End - helpers */
/* STUIQ Styles */
#stuiq_loadmore {
  background-color: #ddd;
  border-radius: 2px;
  display: block;
  text-align: center;
  font-size: initial;
  font-weight: 600;
  letter-spacing: 1px;
  cursor: pointer;
  text-transform: uppercase;
  padding: 10px 0;
  margin: 30px 0 0 0;
  transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out;
}
#stuiq_loadmore:hover {
  background-color: #767676;
  color: #fff;
}

#stuiq_pagination {
  display: flex;
  justify-content: center;
}
#stuiq_pagination a, #stuiq_pagination span {
  padding: 5px 10px;
  margin: 0 10px;
  color: black;
}
#stuiq_pagination a.next.page-numbers, #stuiq_pagination a.prev.page-numbers, #stuiq_pagination span.next.page-numbers, #stuiq_pagination span.prev.page-numbers {
  display: inline-block;
  padding: 5px;
  background-color: #eeeeee;
}
#stuiq_pagination a.next, #stuiq_pagination span.next {
  margin: 0 0 0 15px;
}
#stuiq_pagination a.prev, #stuiq_pagination span.prev {
  margin: 0 15px 0 0;
}
#stuiq_pagination span {
  background-color: #007bff;
  color: white;
}

/*
 * This is the base, 1 rem is 10px.
 * If you want elements to have a fluid size
 * set the base font size to vw which is 10px.
 * EXAMPLE:
 * h1 is 35px on desktop, you want it to be fluid after 1400px viewport
 * 100 / 1400px * 10 -> 0.714vw
 * This way you dont need fluid-type function
 */
html {
  font-size: 10px;
}

body {
  font-family: "NNRekja", Arial, sans-serif;
  min-height: 100%;
  color: #ffffff;
  font-size: 2rem;
  line-height: 2.9rem;
}
body:before {
  content: "";
  background-color: #0f1531;
  background-image: url("../../assets/images/stars.png");
  background-size: 100% auto;
  background-repeat: repeat;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: block;
}
body .twinkling {
  background: transparent url("../../assets/images/twinkling.png") repeat top center;
  -moz-animation: move-twink-back 200s linear infinite;
  -ms-animation: move-twink-back 200s linear infinite;
  -o-animation: move-twink-back 200s linear infinite;
  /* -webkit-animation: move-twink-back 200s linear infinite; */
  animation: move-twink-back 200s linear infinite;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
}
@keyframes move-twink-back {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -10000px 5000px;
  }
}
@-webkit-keyframes move-twink-back {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -10000px 5000px;
  }
}
@-moz-keyframes move-twink-back {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -10000px 5000px;
  }
}
@-ms-keyframes move-twink-back {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -10000px 5000px;
  }
}
@keyframes move-clouds-back {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 10000px 0;
  }
}
@-webkit-keyframes move-clouds-back {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 10000px 0;
  }
}
@-moz-keyframes move-clouds-back {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 10000px 0;
  }
}
@-ms-keyframes move-clouds-back {
  from {
    background-position: 0;
  }
  to {
    background-position: 10000px 0;
  }
}

header#header {
  z-index: 10;
}
header#header #logo {
  position: absolute;
  top: 52px;
  left: 86px;
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
header#header #logo svg {
  width: 180px;
}
header#header #logo svg text {
  font-family: "EuclidSquare", Arial, sans-serif !important;
}
header#header .bico-home {
  font-family: "EuclidSquare", Arial, sans-serif;
  position: absolute;
  top: 70px;
  right: 86px;
}
header#header .bico-home.back {
  color: #b7c1d9;
}
header#header .bico-home.back:hover {
  color: #C29748;
}
header#header .bico-home.back i {
  position: relative;
  top: 3px;
  margin-right: 10px;
}
header#header #burger {
  position: absolute;
  top: 24px;
  right: 24px;
  width: 34px;
  height: 24px;
  cursor: pointer;
}
header#header #burger span {
  position: relative;
  top: 0;
  height: 4px;
  width: 50%;
  display: block;
  background-color: white;
  border-radius: 100px;
  margin-bottom: 6px;
  margin-left: auto;
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
header#header #burger span:nth-child(1) {
  width: 100%;
}
header#header #burger span:nth-child(2) {
  width: 75%;
}
header#header #burger.active span {
  width: 100%;
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}
header#header #burger.active span:first-child {
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 10px;
}
header#header #burger.active span:nth-child(2) {
  opacity: 0;
}
header#header #burger.active span:nth-child(3) {
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: -10px;
}

main {
  min-height: calc(100vh - 392px);
  position: relative;
  z-index: 1;
}

footer {
  position: relative;
  z-index: 5;
}
footer .container:before {
  content: "";
  height: 2px;
  width: 100%;
  background-color: #ffffff;
  display: block;
}
footer .container .row:first-child .col-12 {
  flex-grow: unset;
}
footer address {
  margin: 0;
}
footer .address,
footer .address span,
footer .address a {
  font-family: "NNRekja", Arial, sans-serif !important;
}
footer h4, footer span, footer a {
  white-space: nowrap;
  color: inherit;
}
footer nav ul {
  padding: 0;
}
footer nav ul li {
  list-style: none;
}
footer .address.text-wrapper {
  font-family: "NNRekja", Arial, sans-serif;
}
footer .address.text-wrapper a, footer .address.text-wrapper span {
  font-size: 19px;
  line-height: 32px;
}
footer .text-wrapper.showroom-zuerich,
footer .text-wrapper.showroom-schaenis {
  font-family: "NNRekja", Arial, sans-serif;
}
footer .text-wrapper.showroom-zuerich a, footer .text-wrapper.showroom-zuerich span,
footer .text-wrapper.showroom-schaenis a,
footer .text-wrapper.showroom-schaenis span {
  font-size: 17px;
  line-height: 27px;
}
footer .showroom h4 {
  font-family: "EuclidSquare", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.7rem;
  line-height: 2.7rem;
}
footer .showroom p,
footer .showroom a,
footer a#goBico,
footer .navi a,
footer #footer-bottom-menu a {
  font-family: "EuclidSquare", Arial, sans-serif;
}

address {
  font-style: normal;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "EuclidSquare", Arial, sans-serif;
  font-weight: 600;
}

h1, .h1 {
  font-family: "NNRekja", Arial, sans-serif;
  font-size: 85px;
  line-height: 102px;
}

h2, .h2 {
  font-size: 50px;
  line-height: 64px;
}

h3, .h3 {
  font-size: 25px;
  line-height: 25px;
}

p.small {
  font-size: small;
}

a, button {
  color: inherit;
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
a:hover, button:hover {
  text-decoration: none;
  color: #C29748;
}
a.btn, button.btn {
  font-family: "EuclidSquare", Arial, sans-serif;
  color: #ffffff;
  font-size: 24px;
  line-height: 1;
  padding: 15px 25px 15px 25px;
}
a.btn.border, button.btn.border {
  border: 2px solid #b7c1d9;
  font-size: 18px;
  color: #b7c1d9;
}
a.btn.border.dark, button.btn.border.dark {
  color: #0f1531 !important;
  border-color: #0f1531 !important;
}
a.btn.border.dark:hover, button.btn.border.dark:hover {
  background-color: #0f1531 !important;
  color: #b7c1d9 !important;
}
a.btn.border:hover, button.btn.border:hover {
  background-color: #b7c1d9;
  color: #0f1531;
}
a.btn.day, button.btn.day {
  background-image: linear-gradient(to left, #CE91BA, #622750 90%);
}
a.btn.night, button.btn.night {
  background-image: linear-gradient(to right, #0f1531, #b7c1d9 90%);
}
a.btn .icon, button.btn .icon {
  font-size: 30px !important;
  position: relative;
  top: 3px;
  margin-right: 10px;
}
a.btn .icon + span, button.btn .icon + span {
  position: relative;
  top: -6px;
}
a.underline, button.underline {
  position: absolute;
  color: #ffffff;
  font-size: 16px;
}
a.underline:after, button.underline:after {
  content: "";
  background-color: #ffffff;
  height: 2px;
  display: block;
  position: relative;
  top: 3px;
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
a.underline:hover, button.underline:hover {
  color: #C29748;
}
a.underline:hover:after, button.underline:hover:after {
  background-color: #C29748;
}

ul {
  margin: 0;
  padding-left: 15px;
}

nav#icon-menu {
  position: fixed;
  top: calc(50% - 115px);
  right: 30px;
  z-index: 10;
}
nav#icon-menu ul {
  list-style: none;
  padding: 0;
}
nav#icon-menu ul li {
  position: relative;
  margin: 5px 0;
}
nav#icon-menu ul li a {
  display: inline-flex;
  color: #ffffff;
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
nav#icon-menu ul li a i {
  font-size: 45px;
  cursor: pointer;
}
nav#icon-menu ul li a:hover {
  color: #C29748;
}
nav#footer-menu ul li a {
  font-size: 16px;
  font-weight: 600;
  line-height: 32px;
  color: #b7c1d9;
}
nav#footer-menu ul li a:hover {
  color: inherit;
}
nav#footer-bottom-menu ul li {
  margin: 0 15px;
}
nav#footer-bottom-menu ul li:first-child {
  margin: 0 15px 0 0;
}
nav#footer-bottom-menu ul li:last-child {
  margin: 0 0 0 15px;
}
nav#footer-bottom-menu ul li a {
  font-size: 12px;
  font-weight: 600;
  line-height: 25px;
  color: #b7c1d9;
}
nav#footer-bottom-menu ul li a:hover {
  color: inherit;
}
nav#social-menu ul {
  padding-bottom: 5px;
}
nav#social-menu i {
  font-size: 30px;
  display: flex;
}

menu {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  background: #0f1531;
  margin: 0;
  padding: 70px 30px 0 30px;
  flex-direction: column;
  justify-content: center;
  height: -webkit-fill-available;
  height: 100vh;
  opacity: 0;
  visibility: hidden;
  z-index: -10;
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
menu:before {
  content: "";
  background-color: #0f1531;
  background-image: url("../../assets/images/stars.png");
  background-size: 100% auto;
  background-repeat: repeat;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: block;
}
menu.open {
  opacity: 1;
  visibility: visible;
  z-index: -1;
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}
menu nav ul {
  list-style: none;
  text-align: center;
  padding: 0;
}
menu nav ul li {
  margin-bottom: 35px;
}
menu nav ul li a {
  font-size: 23px;
  line-height: 1;
}
menu a.underline {
  margin: 0 auto;
  display: block;
  width: fit-content;
  position: static;
}
menu .link-wrapper {
  right: 0;
  bottom: 50px;
}

img {
  max-width: 100%;
}

picture img {
  max-width: none;
  width: 100%;
}

picture, img, iframe, video {
  display: block;
}

/* Start - recurring styles (buttons, box-types, etc.) */
.text-wrapper p {
  margin: 0;
}
.text-wrapper p + p {
  margin: 2rem 0 0 0;
}

.lockdown p {
  font-family: "EuclidSquare", Arial, sans-serif;
  font-size: 1.8rem;
}

.img-wrapper {
  overflow: hidden;
}
.img-wrapper img {
  width: 100%;
  height: auto;
}
.img-wrapper a img {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
.img-wrapper a:hover img, .img-wrapper a.active img {
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}

.form-wrapper .form-element {
  display: flex;
}
.form-wrapper .form-element label {
  white-space: nowrap;
  margin-right: 30px;
}
.form-wrapper span.wpcf7-form-control-wrap {
  width: 100%;
}
.form-wrapper input {
  width: 100%;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid #ffffff;
  padding: 10px;
}
.form-wrapper input[type=radio] {
  width: auto;
}
.form-wrapper input::placeholder {
  color: inherit;
}
.form-wrapper button.send {
  background-color: transparent;
  width: fit-content;
  margin: 40px auto 0 auto;
  border: 2px solid #b7c1d9;
  border-radius: 0 !important;
  color: #b7c1d9;
  font-weight: 600;
  padding: 11px 25px 10px 25px;
  -webkit-transition: color 0.3s ease-in 0s, background-color 0.3s ease-in 0s;
  -moz-transition: color 0.3s ease-in 0s, background-color 0.3s ease-in 0s;
  -o-transition: color 0.3s ease-in 0s, background-color 0.3s ease-in 0s;
  transition: color 0.3s ease-in 0s, background-color 0.3s ease-in 0s;
  cursor: pointer;
  height: 52px;
}
.form-wrapper button.send:hover, .form-wrapper button.send.load {
  background-color: #b7c1d9;
  color: #0f1531;
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}
.form-wrapper button.send:focus {
  outline: none;
}
.form-wrapper .radio-wrapper label {
  position: relative;
  cursor: pointer;
}
.form-wrapper .radio-wrapper label input {
  display: none;
}
.form-wrapper .radio-wrapper label input:checked ~ span:after {
  display: inline-block;
}
.form-wrapper .radio-wrapper label span:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: transparent;
  border: 1px solid #ffffff;
  border-radius: 100%;
  margin-right: 10px;
  position: relative;
  top: 5px;
}
.form-wrapper .radio-wrapper label span:after {
  content: "";
  position: absolute;
  top: 5px;
  left: 0px;
  display: none;
  width: 20px;
  height: 20px;
  background-color: #ffffff;
  border-radius: 100%;
}
.form-wrapper button[type=submit] {
  position: relative;
  min-width: 187px;
}
.form-wrapper button[type=submit].load {
  font-size: 0;
}
.form-wrapper button[type=submit].load:before {
  display: inline-block;
}
.form-wrapper button[type=submit]:before {
  content: "";
  display: none;
  background-image: url(../../assets/images/loader.svg);
  background-size: 49px;
  width: 49px;
  height: 49px;
  position: absolute;
  top: 0;
  left: calc(50% - 24.5px);
}

div.wpcf7 form .wpcf7-response-output {
  margin: 30px 0 0 0;
  padding: 0;
  border: 0 !important;
  text-align: center;
}
div.wpcf7 form .wpcf7-response-output.mailsent {
  font-size: 25px;
  line-height: 1.5;
}
div.wpcf7 .ajax-loader {
  display: none !important;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  opacity: 0;
  -webkit-animation: fadeIn 2s normal forwards ease-out 1.5s;
  -moz-animation: fadeIn 2s normal forwards ease-out 1.5s;
  -o-animation: fadeIn 2s normal forwards ease-out 1.5s;
  animation: fadeIn 2s normal forwards ease-out 1.5s;
}

.swiper-container .pagination-star {
  position: static;
  margin: 20px 0 0 0;
}
.swiper-container .pagination-star .icon-moon {
  margin: 0 10px;
  cursor: pointer;
}

.accordions {
  color: #000000;
}
.accordions dt.accordion-title {
  color: #0f1531;
  font-family: "EuclidSquare", Arial, sans-serif;
  background-color: #ffffff;
  padding: 3rem 4rem 3rem 5rem;
  cursor: pointer;
}
@media (max-width: 767px) {
  .accordions dt.accordion-title {
    padding: 1.5rem 2rem 1.5rem 2rem !important;
  }
}
.accordions dt.accordion-title a {
  font-size: 2rem;
  font-weight: 500;
}
.accordions dt.accordion-title a .icon-chevron {
  font-size: 14px;
}
.accordions dt.accordion-title a .icon-chevron:before {
  -webkit-transition: transform 0.3s ease-out 0s;
  -moz-transition: transform 0.3s ease-out 0s;
  -o-transition: transform 0.3s ease-out 0s;
  transition: transform 0.3s ease-out 0s;
}
.accordions dt.accordion-title.open .icon-chevron:before {
  -webkit-transition: transform 0.3s ease-in 0s;
  -moz-transition: transform 0.3s ease-in 0s;
  -o-transition: transform 0.3s ease-in 0s;
  transition: transform 0.3s ease-in 0s;
}
.accordions dt.accordion-title.open .icon-chevron:before {
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.accordions dd.accordion-content {
  background-color: #ffffff;
  display: none;
  margin: -3rem 0 0 0;
  padding: 1rem 4rem 3rem 5rem;
}
@media (max-width: 767px) {
  .accordions dd.accordion-content {
    padding: 1.5rem 2rem 1.5rem 2rem !important;
  }
}
.accordions dd.accordion-content p span {
  display: inline-block;
  margin-bottom: 1rem;
}
.accordions dd.accordion-content p span:last-of-type {
  margin-bottom: 0;
}
.accordions .icon-accordion-bundle {
  position: relative;
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  overflow: hidden;
}
.accordions .icon-accordion-bundle:after, .accordions .icon-accordion-bundle:before {
  position: absolute;
  top: 0;
  -webkit-transition: left 0.3s ease-in 0s;
  -moz-transition: left 0.3s ease-in 0s;
  -o-transition: left 0.3s ease-in 0s;
  transition: left 0.3s ease-in 0s;
}
.accordions .icon-accordion-bundle:after {
  left: -4rem;
}
.accordions .icon-accordion-bundle:before {
  left: 0;
}
@media (max-width: 1024px) {
  .accordions dt.accordion-title {
    padding: 3rem 2rem 3rem 2rem;
  }
  .accordions dd.accordion-content {
    margin: -2rem 0 0 0;
    padding: 0 2rem 3rem 2rem;
  }
}
.accordions table {
  width: 100%;
  border: 0;
}
.accordions table td {
  vertical-align: top;
}
.accordions table tr td:first-of-type {
  padding-right: 1rem;
}
@media (max-width: 767px) {
  .accordions table tr {
    display: block;
    margin-bottom: 2rem;
  }
  .accordions table tr td {
    display: block;
  }
}

.border-radius {
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  overflow: hidden;
}

.box-shadow {
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.16);
}

/* End - recurring styles */
/* Start - page styles */
/* End - page styles */
/* Start - modules styles */
#header-image {
  position: relative;
  background-color: #071533;
}
#header-image:before {
  content: "";
  background-size: cover;
  background-position: top center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  -webkit-animation: fadeIn 2s ease-out;
  -moz-animation: fadeIn 2s ease-out;
  -o-animation: fadeIn 2s ease-out;
  animation: fadeIn 2s ease-out;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#header-image:after {
  content: "";
  width: 100%;
  height: 200px;
  display: block;
  position: absolute;
  bottom: -100px;
  background: rgb(255, 255, 255);
  background: -moz-linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(7, 21, 51) 32%, rgb(7, 21, 51) 65%, rgba(255, 255, 255, 0) 100%);
  background: -webkit-linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(7, 21, 51) 32%, rgb(7, 21, 51) 65%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(7, 21, 51) 32%, rgb(7, 21, 51) 65%, rgba(255, 255, 255, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
}
#header-image.day:before {
  background-image: url("../../assets/images/zueri_morgen_web.jpg");
}
#header-image.night:before {
  background-image: url("../../assets/images/zueri_nacht_web.jpg");
}
#header-image h2 {
  font-family: "NNRekja", Arial, sans-serif;
  font-weight: 400;
  filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.7));
}
#header-image .header-text-slider h2 {
  font-family: "NNRekja", Arial, sans-serif;
  font-weight: 400;
  filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.7));
}
#header-image #nextSection {
  z-index: 1;
  left: calc(50% - 15px);
  bottom: 15px;
  font-size: 21px;
  -webkit-animation: bounce 1s infinite alternate;
  -moz-animation: bounce 1s infinite alternate;
  -o-animation: bounce 1s infinite alternate;
  animation: bounce 1s infinite alternate;
}
@-webkit-keyframes bounce {
  from {
    transform: translateY(0px);
  }
  to {
    transform: translateY(-15px);
  }
}
@-moz-keyframes bounce {
  from {
    transform: translateY(0px);
  }
  to {
    transform: translateY(-15px);
  }
}
@-o-keyframes bounce {
  from {
    transform: translateY(0px);
  }
  to {
    transform: translateY(-15px);
  }
}
@keyframes bounce {
  from {
    transform: translateY(0px);
  }
  to {
    transform: translateY(-15px);
  }
}
#header-image #goToCalendly {
  line-height: 1.2;
}
#header-image #goToCalendly span {
  font-size: 18px;
}
#header-image span#close_promo {
  position: absolute;
  right: 0;
  transform: translate(-15px, 13px);
}

#certificates-block .img-wrapper {
  width: 33%;
}
#certificates-block .img-wrapper .certificates-img {
  padding: 0 10px;
}

#text-block.confirm i.icon-calender {
  font-size: 60px;
  display: block;
}
#text-block.impressum strong {
  font-family: "EuclidSquare", Arial, sans-serif;
}
#text-block.impressum a {
  font-family: "NNRekja", Arial, sans-serif;
}

#showroom-block {
  overflow: hidden;
}
#showroom-block .swiper-showroom {
  position: relative;
}
#showroom-block .swiper-showroom .swiper-showroom-button-prev,
#showroom-block .swiper-showroom .swiper-showroom-button-next {
  position: absolute;
  z-index: 5;
  top: 0;
  bottom: 67px;
  width: 50%;
  cursor: pointer;
}
#showroom-block .swiper-showroom .swiper-showroom-button-next {
  right: 0;
}
#showroom-block .content h3 {
  font-family: "EuclidSquare", Arial, sans-serif;
  font-weight: 600;
  margin-bottom: 10px;
}
#showroom-block .content a {
  color: inherit;
}
#showroom-block .content a:hover {
  color: #C29748;
}
#showroom-block .icon i {
  position: relative;
  top: -18px;
  font-size: 50px;
}
#showroom-block .icon i.icon-time {
  font-size: 45px;
}
#showroom-block .paddingY .img-wrapper img {
  object-fit: cover;
  height: 100%;
}
#showroom-block .opentime,
#showroom-block .place {
  font-family: "EuclidSquare", Arial, sans-serif !important;
  font-size: 1.8rem;
}

#slogan-block {
  position: relative;
  background-image: linear-gradient(to right, #0f1531, #b7c1d9 90%);
}
#slogan-block h2 {
  margin: 45px 0 35px 0;
  font-family: "NNRekja", Arial, sans-serif;
  font-weight: 400;
}
#slogan-block.day {
  background-image: linear-gradient(to left, #CE91BA, #622750 90%);
}

#promo-block {
  font-family: "EuclidSquare", Arial, sans-serif;
}
#promo-block:not(.promo-image-only) {
  background-color: #B7C1D9;
}
#promo-block h3 {
  font-size: 51px;
  line-height: 1;
  font-weight: 600;
  color: #ffffff;
}
#promo-block p {
  font-size: 30px;
  line-height: 40px;
  color: #0f1531;
}
#promo-block p.small {
  font-size: 19px;
  line-height: 30px;
  font-weight: 600;
}
#promo-block a.btn.border {
  border-color: #0f1531 !important;
  color: #0f1531;
}
#promo-block a.btn.border:hover {
  background-color: #0f1531;
  color: #ffffff;
}

#promo-block-stoerrer {
  background-color: #B7C1D9;
  font-family: "EuclidSquare", Arial, sans-serif;
  position: absolute;
  z-index: 1;
  text-align: center;
  width: 420px;
  color: #0f1531;
}
#promo-block-stoerrer .text-wrapper {
  max-width: 300px;
  margin: auto;
  text-align: left;
}
#promo-block-stoerrer h3 {
  color: #ffffff;
}
#promo-block-stoerrer p {
  font-weight: 600;
}
#promo-block-stoerrer a.btn.border {
  border-color: #0f1531 !important;
  color: #0f1531;
  width: 100%;
  text-align: center;
}
#promo-block-stoerrer a.btn.border:hover {
  background-color: #0f1531;
  color: #ffffff;
}
#promo-block-stoerrer.promo-image-only {
  top: 54.3%;
  left: 0;
  max-width: 420px;
  width: 29%;
}
#promo-block-stoerrer:not(.promo-image-only) img {
  width: 300px;
  margin: -30% auto 0 auto;
}

#text-slider-block {
  overflow: hidden;
}
#text-slider-block h2 {
  font-size: 99px;
  line-height: 1;
}
#text-slider-block p {
  font-size: 35px;
  line-height: 60px;
}
#text-slider-block p:first-child {
  font-size: 26px;
  line-height: 31px;
}
#text-slider-block p, #text-slider-block h2 {
  font-family: "NNRekja", Arial, sans-serif;
  color: #b7c1d9;
}
#text-slider-block p strong, #text-slider-block h2 strong {
  color: #ffffff;
  font-size: 45px;
}
#text-slider-block .height {
  height: 50vh !important;
}
#text-slider-block .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0 !important;
}
#text-slider-block .swiper-slide-active {
  opacity: 1 !important;
}

#sleep-counseling {
  position: relative;
}

#contact-block {
  position: relative;
}

#event-block {
  overflow: hidden;
}
#event-block h3 {
  font-family: "EuclidSquare", Arial, sans-serif;
  font-weight: 600;
}
#event-block .btn {
  width: fit-content;
  margin: 0 auto;
}
#event-block .swiper-events {
  overflow: visible;
}
#event-block .swiper-events .swiper-slide {
  height: auto;
}

#review-block {
  position: relative;
}
#review-block span#goReview {
  top: 100px;
}

#event-detail .event-info h4 {
  font-family: "EuclidSquare", Arial, sans-serif;
  font-weight: 700;
}
#event-detail .event-info h4 i {
  font-size: 25px;
}
#event-detail .event-info p, #event-detail .event-info a, #event-detail .event-info h4 {
  font-size: 20px;
  line-height: 35px;
}

#navi .link-wrapper a {
  display: flex;
  flex-direction: row;
  align-items: center;
  color: #b7c1d9;
}
#navi .link-wrapper a:hover {
  color: #C29748;
}
#navi .link-wrapper a i {
  display: flex;
  font-size: 30px;
}

#cta {
  position: absolute;
  bottom: 0;
  right: -30px;
  z-index: 1;
  padding: 25px;
  background-color: #b7c1d9;
  width: 720px;
  color: #0f1531;
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: all 0.3s ease-in 0s;
  -moz-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
#cta h3 {
  font-family: "EuclidSquare", Arial, sans-serif;
  font-weight: 600;
}
#cta a.btn {
  padding: 5px 15px 5px 15px !important;
  margin: 10px 0 5px 0;
}
#cta.show {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: all 0.3s ease-out 0s;
  -moz-transition: all 0.3s ease-out 0s;
  -o-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}
#cta #closeCTA {
  position: absolute;
  top: 15px;
  right: 15px;
  font-size: 25px;
  display: inline-flex;
}

#eventform .form-element {
  margin-bottom: 30px;
}
#eventform .form-element button.wpcf7-form-control.wpcf7-submit {
  margin: 0 0 0 auto;
}

#calendly {
  min-width: 320px;
  height: 665px;
}

#pop-up-mobile,
#pop-up {
  position: fixed;
  z-index: 100;
  background-color: #b7c1d9;
  width: 100%;
  padding: 15px;
}
#pop-up-mobile a,
#pop-up a {
  white-space: nowrap;
  align-items: center;
  margin: 0 50px;
}
#pop-up-mobile a:hover,
#pop-up a:hover {
  background-color: #0f1531;
  color: #b7c1d9;
}
#pop-up-mobile a, #pop-up-mobile p, #pop-up-mobile span,
#pop-up a,
#pop-up p,
#pop-up span {
  font-family: "EuclidSquare", Arial, sans-serif;
  color: #0f1531;
  border-color: #0f1531 !important;
}

#pop-up-mobile {
  position: relative;
  padding: 30px;
}
#pop-up-mobile a {
  text-align: center;
  margin: 30px 0 0 0;
}

.pop-up-active header#header {
  top: 55px;
}

/* End - modules styles */
.error404 .link-wrapper {
  width: fit-content;
  margin: 0 auto;
}
.error404 .link-wrapper a {
  position: static;
}

.safari #header-image:after {
  display: none;
}

@media (max-width: 575px) {
  body #sleep-counseling #calendly {
    height: 840px !important;
  }
}
@media (max-width: 767px) {
  header#header:before,
.page-id-10 header#header:before {
    content: "";
    background: rgb(15, 21, 49);
    background: linear-gradient(180deg, rgb(15, 21, 49) 90%, rgba(15, 21, 49, 0) 100%);
    display: block;
    height: 75px;
    width: 100%;
    opacity: 0;
    -webkit-transition: all 0.3s ease-in 0s;
    -moz-transition: all 0.3s ease-in 0s;
    -o-transition: all 0.3s ease-in 0s;
    transition: all 0.3s ease-in 0s;
  }
  header#header.show-bg:before,
.page-id-10 header#header:before {
    opacity: 1;
    -webkit-transition: all 0.3s ease-out 0s;
    -moz-transition: all 0.3s ease-out 0s;
    -o-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
  }
  body {
    font-size: 1.7rem;
    line-height: 2.7rem;
  }
  h1, .h1 {
    font-size: 57px;
    line-height: 68px;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
  }
  h2, .h2 {
    font-size: 35px;
    line-height: 42px;
  }
  h3, .h3 {
    font-size: 20px;
    line-height: 35px;
  }
  a.btn {
    position: relative;
    text-align: center;
    font-size: 22px;
    line-height: 30px;
    padding: 9px 25px 9px 25px;
  }
  a.btn i.icon {
    position: absolute;
    left: 10px;
    top: 8px;
    display: flex;
  }
  a.btn i.icon + span {
    position: static;
  }
  menu {
    display: flex;
  }
  section {
    padding: 0 15px;
  }
  header#header .bico-home {
    top: 21px;
    right: 18px;
    color: #ffffff !important;
  }
  header#header .bico-home i {
    font-size: 25px;
  }
  header#header #logo {
    top: 18px;
    left: 28px;
  }
  header#header #logo svg {
    width: 95px;
  }
  .form-wrapper button.send {
    background-color: transparent;
    width: 100%;
    margin: 40px 0 0 0;
  }
  #header-image {
    min-height: 100vh;
    min-height: -webkit-fill-available;
  }
  #header-image.day:before {
    background-image: url("../../assets/images/zueri_morgen_web_mobile.jpg") !important;
  }
  #header-image.night:before {
    background-image: url("../../assets/images/zueri_nacht_web_mobile.jpg") !important;
  }
  #header-image:before {
    background-position: bottom center;
  }
  #header-image:after {
    display: none;
  }
  #header-image.vh-100 {
    height: auto !important;
  }
  #showroom-block .paddingY {
    padding: 0;
    margin: 0 -15px;
    min-width: calc(100% + 30px);
  }
  #showroom-block .icons {
    position: relative;
    top: 3px;
    margin-right: 15px;
  }
  #showroom-block .img-wrapper img {
    min-width: 150%;
  }
  #map {
    height: 233px !important;
  }
  #sleep-counseling #calendly {
    height: 770px;
    border: 2px solid #b7c1d9;
    border-radius: 3px;
  }
  footer nav#footer-bottom-menu {
    width: 100%;
  }
  footer nav#social-menu ul {
    padding-bottom: 0;
  }
  footer nav#social-menu ul li {
    margin-right: 30px;
  }
  footer nav#social-menu ul li a i {
    font-size: 36px;
  }
  footer a.underline {
    font-family: "EuclidSquare", Arial, sans-serif;
    font-weight: 600;
    color: #b7c1d9;
    width: fit-content;
    position: static;
    display: flow-root;
  }
  footer a.underline:after {
    background-color: #b7c1d9;
  }
  footer .address.text-wrapper a,
footer .address.text-wrapper span {
    font-size: 18px;
    line-height: 30px;
  }
  #eventform .form-element input.wpcf7-form-control.wpcf7-submit {
    width: 100%;
  }
  #navi .next {
    width: 100%;
  }
  #navi .next a {
    justify-content: flex-end;
  }
  .single-event #burger {
    display: none !important;
  }
  .single-event .form-wrapper button.send {
    margin: 40px 0 0 0 !important;
  }
  .no-padding {
    padding: 0 !important;
  }
  #event-block {
    padding: 0;
  }
  .swiper-container .pagination-star .icon-moon {
    font-size: 12px;
  }
  #review-block span#goReview {
    top: 0;
  }
  #promo-block {
    text-align: center;
  }
  #promo-block h3 {
    font-size: 25px;
  }
  #promo-block p {
    font-size: 17px;
    line-height: 26px;
  }
  #promo-block p.small {
    font-size: 14px;
    line-height: 22px;
  }
  #promo-block a {
    font-size: 18px;
    line-height: 27px;
  }
  #promo-block-stoerrer {
    position: relative;
    z-index: 1;
    width: 100%;
    color: #0f1531;
  }
  #promo-block-stoerrer .text-wrapper {
    text-align: center;
  }
  #promo-block-stoerrer h3 {
    color: #ffffff;
  }
  #promo-block-stoerrer a.btn.border {
    border-color: #0f1531 !important;
    color: #0f1531;
  }
  #promo-block-stoerrer a.btn.border:hover {
    background-color: #0f1531;
    color: #ffffff;
  }
  #promo-block-stoerrer.promo-image-only {
    width: 100%;
    background-color: transparent;
    margin: 0 auto;
  }
  #promo-block-stoerrer:not(.promo-image-only) img {
    width: 300px;
    margin: 0 auto 0 auto;
  }
}
@media (max-width: 991px) {
  #header-image.day:before {
    background-image: url("../../assets/images/zueri_morgen_web_tablet.jpg");
  }
  #header-image.night:before {
    background-image: url("../../assets/images/zueri_nacht_web_tablet.jpg");
  }
}
@media (max-width: 1199px) {
  #calendly {
    height: 905px;
  }
  .pop-up-active header#header {
    top: 0;
  }
}
/* IE Hacks */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  footer .address span {
    white-space: pre-wrap;
  }
  .socialMenu {
    max-width: 100px;
  }
  body #text-slider-block .row {
    display: none !important;
  }
}
#lockdown {
  font-family: "EuclidSquare", Arial, sans-serif;
}
#lockdown .modal-content {
  background-color: #0f1531;
  border-radius: 8px;
  border: 1px solid white !important;
}
#lockdown .modal-content .modal-header {
  border-bottom: 1px solid #e9ecef;
}
#lockdown .modal-content .modal-body p:last-of-type {
  margin: 0 !important;
}
#lockdown .modal-content button.close {
  background: transparent;
  border: none;
  cursor: pointer;
}
#lockdown .modal-content button.close:focus {
  outline: none;
}
#lockdown .modal-content button.close span {
  font-size: 27px;
}

.wprev_preview_tcolor1_T1 {
  font-style: normal !important;
}

.wprevpro_t1_DIV_2 {
  padding: 20px !important;
}
.wprevpro_t1_DIV_2:before {
  display: none !important;
}

@media (max-width: 767px) {
  .modal-content {
    width: 90%;
    margin: auto;
  }
}

/*# sourceMappingURL=style.css.map */
