/*
Theme Name: Ecovision
Author: eloq GmbH
Author URI: https://eloq.swiss/
Description: Die eloq GmbH macht nicht einfach Internetseiten. Wir bieten Ihnen durchdachte Konzepte, mischen Designkompetenz mit technischem Können und streben so nach der perfekten Internet-Präsenz unseres Kunden. Das vorliegende Theme wurde von uns mit Passion und Freude handgefertigt. Wir hoffen, Ihnen gefällt unsere Arbeit!
Version: 1.5.7
*/

/* Imports */

@import url("css/typo.css");
@import url("css/utilities.css");
@import url("css/header.css");
@import url("css/footer.css");
/*
COLOR DEFINITIONS - GOES BELOW:
*/

:root {
  --green-main: #95c11f;
  --green-light: #ebf4de;
  --text: #5a5a56;
  --grey-light: #f4f4f4;
  --vigier-blue: #002f6b;
}

/* === Theme Specific === */

/* ----- GENERAL ----- */

body {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  min-height: 100vh;
}

body > main {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

section,
a {
  position: relative;
}

/* END GENERAL */

/* ----- WP ADMIN BAR ----- */

/*#wpadminbar {
    display: none;
  }*/

/* END WP ADMIN BAR */

/* ----- BUTTONS ----- */

/* Button classes:
        - btn_xyz_primary
        - btn_xyz_secondary 
*/

/* Button Reset */

button {
  border: none;
  margin: 0;
  padding: 0;
  width: auto;
  overflow: visible;
  background: transparent;
  /* inherit font & color from ancestor */
  color: inherit;
  font: inherit;
  /* Normalize `line-height`. Cannot be changed from `normal` in Firefox 4+. */
  line-height: normal;
  /* Corrects font smoothing for webkit */
  -webkit-font-smoothing: inherit;
  -moz-osx-font-smoothing: inherit;
  /* Corrects inability to style clickable `input` types in iOS */
  -webkit-appearance: none;
}

/*==================
    BUTTONS
      -> .btn-primary
    ==================*/
.btn-primary {
  position: relative;
  display: inline-block;
  font-family: "URWDIN-Bold";
  color: #5a5a56;
  background: #5a5a56;
  padding: 15px 30px;
  margin-bottom: 23px;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  border-color: #5a5a56;
  border-radius: 0;
}

.btn-primary:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0px;
  right: 1px;
  top: 0px;
  z-index: -10;
  background: #fff;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:focus,
a:hover .btn-primary {
  color: #fff;
  background: var(--green-main) !important;
  border-color: var(--green-main);
  text-decoration: none;
}

.btn-primary,
.btn-primary:before {
  clip-path: polygon(0% 0%, 100% 0%, 100% 50%, 100% 100%, 0% 100%);
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 50%, 100% 100%, 0% 100%);
}

.btn-primary:hover,
.btn-primary:focus,
a:hover .btn-primary {
  clip-path: polygon(
    0% 0%,
    calc(100% - 20px) 0%,
    100% 50%,
    calc(100% - 20px) 100%,
    0% 100%
  );
  -webkit-clip-path: polygon(
    0% 0%,
    calc(100% - 20px) 0%,
    100% 50%,
    calc(100% - 20px) 100%,
    0% 100%
  );
}

.btn-primary:hover::before,
a:hover .btn-primary:before,
.btn-primary:focus::before {
  clip-path: polygon(
    0% 0%,
    calc(100% - 19.7px) 0%,
    calc(100% - 0.3px) 50%,
    calc(100% - 19.7px) 100%,
    0% 100%
  );
  -webkit-clip-path: polygon(
    0% 0%,
    calc(100% - 19.7px) 0%,
    calc(100% - 0.3px) 50%,
    calc(100% - 19.7px) 100%,
    0% 100%
  );
  background: var(--green-main);
}

.btn-primary:focus,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled):active:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: 0;
}

/* iE and Edge adjustment because of clip-path property not working */

@supports (-ms-ime-align: auto) {
  .btn-primary {
    background: #fff;
    border: 1px solid #5a5a56;
    margin-bottom: 23px;
    padding-bottom: 15px;
  }
  .btn-primary:before {
    top: auto;
    left: auto;
    background: transparent !important;
    width: 0;
    height: 0;
    z-index: 100;
  }

  .btn-primary:hover,
  .btn-primary:not(:disabled):not(.disabled):active,
  a:hover .btn-primary {
    border: 1px solid #002f6b;
  }

  .btn-primary:before,
  .btn-primary:after {
    content: "";
    position: absolute;
    -webkit-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    -webkit-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -ms-transition: 0.3s ease;
  }
  .btn-primary:before {
    right: -19px;
    top: 0px;
    border-left: 19px solid #fff;
    border-top: 28.5px solid transparent;
    border-bottom: 28.5px solid transparent;
  }
  .btn-primary:after {
    right: -21px;
    top: -1px;
    border-left: 20px solid #5a5a56;
    border-top: 29.5px solid transparent;
    border-bottom: 29.5px solid transparent;
  }

  .btn-primary:hover,
  a:hover .btn-primary {
    padding-right: 10px;
  }
  .btn-primary:hover::before,
  a:hover .btn-primary:before {
    border-left: 19px solid #002f6b;
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
  }
  .btn-primary:hover::after,
  a:hover .btn-primary:after {
    border-left: 20px solid #002f6b;
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
  }
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .btn-primary {
    background: #fff;
    border: 1px solid #5a5a56;
    margin-bottom: 23px;
    padding-bottom: 15px;
  }
  .btn-primary:before {
    top: auto;
    left: auto;
    background: transparent !important;
    width: 0;
    height: 0;
    z-index: 100;
  }

  .btn-primary:hover,
  .btn-primary:not(:disabled):not(.disabled):active,
  a:hover .btn-primary {
    border: 1px solid #002f6b;
  }

  .btn-primary:before,
  .btn-primary:after {
    content: "";
    position: absolute;
    -webkit-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    -webkit-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -ms-transition: 0.3s ease;
  }
  .btn-primary:before {
    right: -19px;
    top: 0px;
    border-left: 19px solid #fff;
    border-top: 28.5px solid transparent;
    border-bottom: 28.5px solid transparent;
  }
  .btn-primary:after {
    right: -21px;
    top: -1px;
    border-left: 20px solid #5a5a56;
    border-top: 29.5px solid transparent;
    border-bottom: 29.5px solid transparent;
  }

  .btn-primary:hover,
  a:hover .btn-primary {
    padding-right: 10px;
  }
  .btn-primary:hover::before,
  a:hover .btn-primary:before {
    border-left: 19px solid #002f6b;
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
  }
  .btn-primary:hover::after,
  a:hover .btn-primary:after {
    border-left: 20px solid #002f6b;
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
  }
}

/* button with special intro and pulse */

.btn-wrapper--special {
  height: 56px;
  will-change: transform;
  animation-timing-function: ease-in-out, cubic-bezier(0.25, 1, 0.5, 1);
  animation-name: intro, pulse;
  animation-duration: 1s, 9s;
  animation-delay: 1s, 7s;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: both, none;
  animation-play-state: paused, paused;
}

.btn-wrapper--special.is-running {
  animation-play-state: running, running;
  -webkit-animation-play-state: running, running;
}

.btn-wrapper--special:hover {
  animation-play-state: paused;
}

@keyframes intro {
  0% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
  }

  40% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateX(-20deg);
    transform: perspective(400px) rotateX(-20deg);
  }

  60% {
    opacity: 1;
    -webkit-transform: perspective(400px) rotateX(10deg);
    transform: perspective(400px) rotateX(10deg);
  }

  80% {
    -webkit-transform: perspective(400px) rotateX(-5deg);
    transform: perspective(400px) rotateX(-5deg);
  }

  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    -webkit-transform-origin: left center;
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    transform-origin: left center;
  }

  23% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1.05, 1.05, 1.05);
    -webkit-transform-origin: left center;
    transform: translate3d(0, 0, 0) scale3d(1.05, 1.05, 1.05);
    transform-origin: left center;
  }

  50% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    -webkit-transform-origin: left center;
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    transform-origin: left center;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    -webkit-transform-origin: left center;
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    transform-origin: left center;
  }
}

@media (print), (prefers-reduced-motion: reduce) {
  .btn-special {
    animation-play-state: paused;
    animation-name: pulse;
  }
}

/*==================
      END BUTTONS
      ==================*/

/* END BUTTONS */

/* Cookie Banner */

#moove_gdpr_cookie_info_bar
  .moove-gdpr-info-bar-container
  .moove-gdpr-info-bar-content {
  flex-direction: column;
}

#moove_gdpr_cookie_info_bar * {
  max-width: 32em;
}

.moove-gdpr-cookie-notice {
  margin-bottom: 1.4em;
}

.moove-gdpr-button-holder {
  width: 100%;
  justify-content: space-between;
  padding-left: 0 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-button-holder {
  flex-direction: row;
  justify-content: space-between;
  padding-left: 0 !important;
  flex-wrap: nowrap !important;
  padding: 30px !important;
}

.moove-gdpr-button-holder button {
  width: 100%;
  border-radius: 0.375rem !important;
  border-color: transparent !important;
  box-shadow: none !important;
  font-weight: 600 !important;
}

#moove_gdpr_cookie_modal .moove-gdpr-button-holder button {
  width: 50%;
}

.mgbutton.moove-gdpr-infobar-allow-all.gdpr-fbo-0,
#moove_gdpr_cookie_modal
  .moove-gdpr-modal-content
  .moove-gdpr-modal-footer-content
  .moove-gdpr-button-holder
  button.mgbutton {
  background-color: #2d4156 !important;
  color: #eaeff2 !important;
}

.mgbutton.moove-gdpr-infobar-settings-btn.change-settings-button.gdpr-fbo-2 {
  border: none !important;
  background-color: #eaeff2 !important;
  color: #2d4156 !important;
}

#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme {
  box-shadow: 0 0.625rem 1.875rem rgba(2, 2, 3, 0.28);
  border-top: none !important;
  padding: 2em;
}

/* ----- LAZYLOAD EFFECT ----- */

img.bg_static_cover {
  -webkit-filter: blur(3px);
  filter: blur(3px);
  transition: filter 500ms, -webkit-filter 500ms;
}

img.bg_static_cover.lazyloaded {
  -webkit-filter: blur(0);
  filter: blur(0);
}

/* END LAZYLOAD EFFECT */
