@import url("https://fonts.googleapis.com/css?family=IBM+Plex+Sans:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i&display=swap&subset=latin-ext");
@import url("https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/css/bootstrap-reboot.min.css");
@import url("https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/css/bootstrap.min.css");
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.8.1/css/all.min.css");
:root .form-group {
  position: relative;
}
:root .form-group.required:before {
  content: "*";
  color: #dc3545;
  display: block;
  position: absolute;
  font-weight: bold;
  font-size: smaller;
  top: 0.4rem;
  left: -1.2rem;
}
:root .form-control {
  text-align: inherit;
  color: #1E4377;
  border-color: #DCE3E8;
}
:root .form-control:required {
  box-shadow: none;
}
:root .form-control:focus {
  color: inherit;
  border-color: #0082c8;
  box-shadow: 0 0 0 0.2rem rgba(0, 130, 200, 0.25);
}
:root .form-control[type=number] {
  -moz-appearance: textfield;
}
:root .form-control[type=number]::-webkit-inner-spin-button, :root .form-control[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
:root .form-control--invalid {
  border-color: #dc3545;
}
:root .form-control--invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
:root .ng5-slider {
  margin: 16px 0;
  height: 4px;
  background: rgba(216, 233, 241, 0.8);
  border-radius: 4px;
}
:root .ng5-slider .ng5-slider-pointer {
  top: -10px;
  width: 22px;
  height: 22px;
  background-color: #0082c8;
  box-shadow: none;
  transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
:root .ng5-slider .ng5-slider-pointer:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(0, 130, 200, 0.25);
}
:root .ng5-slider .ng5-slider-pointer:after {
  width: 4px;
  height: 4px;
  top: 9px;
  left: 9px;
  background: #fff;
  transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
:root .ng5-slider .ng5-slider-pointer.ng5-slider-active:after, :root .ng5-slider .ng5-slider-pointer:focus:after {
  width: 6px;
  height: 6px;
  top: 8px;
  left: 8px;
  background: #fff;
}
:root .ng5-slider .ng5-slider-tick {
  top: -2px;
  width: 14px;
  height: 14px;
  background: #fff;
  margin-left: 3px;
  box-shadow: inset 0 0 0 2px #DCE3E8;
}
:root .ng5-slider .ng5-slider-tick-legend {
  display: none;
}
:root .ng5-slider .ng5-slider-bar {
  background: none;
}
:root .ng5-slider--divide {
  margin: 10px 0;
  height: 40px;
  background: #fff;
  border: 1px solid #DCE3E8;
  overflow: hidden;
}
:root .ng5-slider--divide .ng5-slider-pointer {
  top: 3px;
  width: 15px;
  height: 32px;
  border-radius: 3px;
  margin: 0 0 0 -7px;
}
:root .ng5-slider--divide .ng5-slider-pointer:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: 1px;
  height: 40px;
  top: -4px;
  left: 7px;
  background: #0082c8;
}
:root .ng5-slider--divide .ng5-slider-pointer:after {
  width: 3px;
  height: 3px;
  top: 14px;
  left: 6px;
  z-index: 2;
}
:root .ng5-slider--divide .ng5-slider-pointer.ng5-slider-active:after, :root .ng5-slider--divide .ng5-slider-pointer:focus:after {
  width: 5px;
  height: 5px;
  top: 13px;
  left: 5px;
}
:root .ng5-slider--divide .ng5-slider-selection-bar,
:root .ng5-slider--divide .ng5-slider-right-out-selection,
:root .ng5-slider--divide .ng5-slider-left-out-selection {
  background: rgba(218, 230, 237, 0.5);
  margin: 0;
  padding: 0;
  height: 38px;
  line-height: 38px;
  border-radius: 3px;
  overflow: hidden;
  transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
:root .ng5-slider--divide .ng5-slider-bar-wrapper.ng5-slider-selection-bar .ng5-slider-bar, :root .ng5-slider--divide .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar, :root .ng5-slider--divide .ng5-slider-bar-wrapper.ng5-slider-left-out-selection .ng5-slider-bar {
  display: block;
  text-align: center;
  font-weight: 500;
  height: auto;
  background: none;
  overflow: hidden;
  padding: 0 7px 0 0;
}
:root .ng5-slider--divide .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar {
  background: #fff;
  padding: 0 0 0 7px;
}
:root .ng5-slider--divide .ng5-slider-pointer-min {
  pointer-events: none;
  display: none;
}
#toast-container {
  font-size: 0.9em;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
#toast-container.notification-bottom {
  display: block;
  position: fixed;
  z-index: 999999;
  bottom: 0;
  left: 50%;
  width: 100%;
  max-width: 640px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  contain: none;
  overflow: visible;
}
#toast-container .notification-success,
#toast-container .notification-error {
  text-align: left;
  font-weight: 500;
  display: block;
  position: absolute;
  z-index: 999999;
  bottom: 30px;
  left: 30px;
  right: 30px;
  margin: 0;
  padding: 1.2em 1.4em;
  line-height: 1.2em;
  border-radius: 0.2em;
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.07);
  -webkit-animation-name: show-notification;
          animation-name: show-notification;
  -webkit-animation-duration: 0.6s;
          animation-duration: 0.6s;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: normal;
          animation-direction: normal;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  color: inherit;
  background: #fff;
  border: 1px solid #DCE3E8;
}
#toast-container i.icon {
  font-size: inherit;
  width: 2em;
  height: 2em;
  line-height: 2em;
  text-align: center;
  margin: -0.4em 1em -0.4em -0.4em;
  background: #1E4377;
  color: #fff;
  border-radius: 50%;
  float: left;
}
#toast-container .notification-success i.icon {
  background-color: #28a745;
}
#toast-container .notification-error i.icon {
  background-color: #dc3545;
}
#toast-container small {
  display: inline-block;
  vertical-align: top;
  background: #f1f5f9;
  font-weight: bold;
  font-size: 0.6em;
  padding: 0.5em 0.8em;
  line-height: 1.2em;
  border-radius: 0.3em;
  margin: 0 0 -0.1em 1.5em;
}
#toast-container small::before {
  content: "CODE: ";
}
#toast-container .toast-close-button {
  display: block;
  float: right;
  font-size: 1.125rem;
  font-weight: bold;
  width: 1.4em;
  height: 1.4em;
  line-height: 1.4em;
  text-align: center;
  margin: -0.1em -0.45em -0.1em 1em;
  background: none;
  border-radius: 50%;
  color: inherit;
  padding: 0;
  transition: all 0.3s;
}
#toast-container .toast-close-button:hover, #toast-container .toast-close-button:focus {
  background-color: #f1f5f9;
}
#toast-container::after {
  content: "";
  display: table;
  width: 100%;
  clear: both;
}
@-webkit-keyframes show-notification {
  from {
    -webkit-transform: translateY(-1.2em);
            transform: translateY(-1.2em);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes show-notification {
  from {
    -webkit-transform: translateY(-1.2em);
            transform: translateY(-1.2em);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
:root swiper > .swiper.s-wrapper .swiper-wrapper .swiper-slide {
  overflow: hidden;
}
html {
  font-size: 15px;
}
html.page-full,
html.page-full body {
  display: block;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}
html.page-background-sky-high,
html.page-background-sky-high body {
  background: top left no-repeat url("/assets/images/background/sky-high.jpg");
  background-size: cover;
}
body {
  font-family: "IBM Plex Sans", sans-serif;
  color: #1E4377;
  line-height: 1.67;
}
h1, .h1 {
  font-weight: 600;
  font-size: 1.6rem;
}
h2, .h2 {
  font-weight: 600;
  font-size: 1.3rem;
}
h3, .h3 {
  font-weight: 600;
  font-size: 1.15rem;
}
.button {
  border-radius: 4px;
  color: #1E4377;
  background: #f1f5f9;
  padding: 15px 30px;
  line-height: 20px;
  font-weight: 500;
  text-align: center;
  min-width: 160px;
  display: inline-block;
  vertical-align: top;
  cursor: pointer;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  border: none;
  outline: 0;
  transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
.button:not(:hover):focus {
  outline: 1px dotted #1E4377;
}
.button:hover, .button:focus {
  color: #1E4377;
  background: #dfe8f1;
  text-decoration: none;
}
.button--has-icon {
  min-width: 50px;
  min-height: 50px;
  padding: 15px;
  fill: currentColor;
}
.button--disabled {
  cursor: not-allowed;
  color: rgba(30, 67, 119, 0.3);
  pointer-events: none;
}
.button--primary {
  color: white;
  background: #F39B35;
}
.button--primary:hover, .button--primary:focus {
  color: white;
  background: #f28f1d;
}
.button--loading {
  color: rgba(0, 0, 0, 0);
  pointer-events: none;
  position: relative;
}
.button--not-elevated {
  box-shadow: none;
}
.button + .button {
  margin-left: 20px;
}
.button-icon {
  display: inline-block;
  vertical-align: top;
  margin: 8px 2px 0 2px;
}
.button-icon--disabled {
  opacity: 0.3;
}
.configurator-logo {
  position: absolute;
  z-index: 4;
  width: 200px;
  height: auto;
  right: 40px;
  top: 40px;
}
.no-select {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
