@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/rubik/rubik-v8-latin-300.eot');
  src: local('Rubik Light'), local('Rubik-Light'), url('../fonts/rubik/rubik-v8-latin-300.eot?#iefix') format('embedded-opentype'), url('../fonts/rubik/rubik-v8-latin-300.woff2') format('woff2'), url('../fonts/rubik/rubik-v8-latin-300.woff') format('woff'), url('../fonts/rubik/rubik-v8-latin-300.ttf') format('truetype'), url('../fonts/rubik/rubik-v8-latin-300.svg#Rubik') format('svg');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/rubik/rubik-v8-latin-regular.eot');
  src: local('Rubik'), local('Rubik-Regular'), url('../fonts/rubik/rubik-v8-latin-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/rubik/rubik-v8-latin-regular.woff2') format('woff2'), url('../fonts/rubik/rubik-v8-latin-regular.woff') format('woff'), url('../fonts/rubik/rubik-v8-latin-regular.ttf') format('truetype'), url('../fonts/rubik/rubik-v8-latin-regular.svg#Rubik') format('svg');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/rubik/rubik-v8-latin-500.eot');
  src: local('Rubik Medium'), local('Rubik-Medium'), url('../fonts/rubik/rubik-v8-latin-500.eot?#iefix') format('embedded-opentype'), url('../fonts/rubik/rubik-v8-latin-500.woff2') format('woff2'), url('../fonts/rubik/rubik-v8-latin-500.woff') format('woff'), url('../fonts/rubik/rubik-v8-latin-500.ttf') format('truetype'), url('../fonts/rubik/rubik-v8-latin-500.svg#Rubik') format('svg');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/rubik/rubik-v8-latin-700.eot');
  src: local('Rubik Bold'), local('Rubik-Bold'), url('../fonts/rubik/rubik-v8-latin-700.eot?#iefix') format('embedded-opentype'), url('../fonts/rubik/rubik-v8-latin-700.woff2') format('woff2'), url('../fonts/rubik/rubik-v8-latin-700.woff') format('woff'), url('../fonts/rubik/rubik-v8-latin-700.ttf') format('truetype'), url('../fonts/rubik/rubik-v8-latin-700.svg#Rubik') format('svg');
}
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/rubik/rubik-v8-latin-900.eot');
  src: local('Rubik Black'), local('Rubik-Black'), url('../fonts/rubik/rubik-v8-latin-900.eot?#iefix') format('embedded-opentype'), url('../fonts/rubik/rubik-v8-latin-900.woff2') format('woff2'), url('../fonts/rubik/rubik-v8-latin-900.woff') format('woff'), url('../fonts/rubik/rubik-v8-latin-900.ttf') format('truetype'), url('../fonts/rubik/rubik-v8-latin-900.svg#Rubik') format('svg');
}
.fw-light {
  font-weight: 300;
}
.fw-normal {
  font-weight: 400;
}
.fw-medium {
  font-weight: 500;
}
.fw-bold {
  font-weight: 600;
}
.fw-black {
  font-weight: 900;
}
#toolbar {
  position: fixed;
  top: 1vh;
  left: 0px;
  right: 0px;
  text-align: center;
  max-width: 40%;
  margin: 0px auto;
  z-index: 9080;
}
#toolbar #btn_signup {
  position: relative;
}
#footer-toolbar {
  position: absolute;
  top: 5vh;
  left: 0px;
  right: 0px;
  text-align: center;
  max-width: 40%;
  margin: 0px auto;
  z-index: 9100;
}
#footer-toolbar #btn_signup {
  position: relative;
}
@media (orientation: portrait) {
  #footer-toolbar {
    top: 6.5vh;
    max-width: 96%;
  }
}
.cnav,
.scrollbar,
#toolbar,
#langswitch {
  display: none;
}
body.shownav .cnav,
body.shownav .scrollbar,
body.shownav #toolbar,
body.shownav #langswitch {
  display: block;
}
.cnav,
.scrollbar {
  position: fixed;
  z-index: 9001;
}
.cnav {
  color: #00a005;
  line-height: 1em;
  font-size: 3.5vh;
  max-width: 30vw;
}
body.is-dark .cnav,
body.is-dark #langswitch a {
  color: #ffffff;
}
body.is-dark .scrollbar .state {
  background-image: url(../imgs/scroll_horizontal_white.svg) !important;
}
body.is-dark .scrollbar.pos-r .state,
body.is-dark .scrollbar.pos-l .state {
  background-image: url(../imgs/scroll_vertical_white.svg) !important;
}
.scrollbar {
  z-index: 9000;
}
.scrollbar .state {
  position: absolute;
  background: url(../imgs/scroll_horizontal.svg) repeat-x;
  background-size: 20px 20px;
}
.scrollbar.pos-t,
.scrollbar.pos-b {
  height: 15px;
}
.scrollbar.pos-t .state,
.scrollbar.pos-b .state {
  height: 15px;
}
.scrollbar.pos-r,
.scrollbar.pos-l {
  width: 20px;
}
.scrollbar.pos-r .state,
.scrollbar.pos-l .state {
  width: 20px;
  background-image: url(../imgs/scroll_vertical.svg);
  background-repeat: repeat-y;
}
.scrollbar.pos-b .state {
  right: 0px;
  background-position: center right;
}
.scrollbar.pos-l .state {
  bottom: 0px;
  background-position: bottom center;
}
.pos-tl {
  top: 1vh;
  left: 1vh;
}
.pos-tr {
  top: 1vh;
  right: 1vh;
  text-align: right;
}
.pos-br {
  bottom: 1vh;
  right: 1vh;
  text-align: right;
}
.pos-bl {
  bottom: 1vh;
  left: 1vh;
}
.pos-t {
  top: 1vh;
  left: 5vh;
  right: 5vh;
  height: 2vh;
}
.pos-b {
  bottom: 1vh;
  left: 5vh;
  right: 5vh;
  height: 2vh;
}
.pos-r {
  top: 5vh;
  right: 1vh;
  bottom: 5vh;
  width: 2vh;
}
.pos-l {
  top: 5vh;
  left: 1vh;
  bottom: 5vh;
  width: 2vh;
}
@media only screen and (max-width: 767px) {
  .cnav {
    font-size: 2vh;
  }
}
.flower_logo {
  width: 230px;
  height: 170px;
  display: inline-block;
  background-image: url('../imgs/sprites/logo_230_170.png');
  background-position: 2% center;
}
.flower_logo.do {
  animation: flower_logo 2.6s steps(20);
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.lang-de .flower_logo {
  background-image: url('../imgs/sprites/logo_230_170_de.png');
}
.lang-fr .flower_logo {
  background-image: url('../imgs/sprites/logo_230_170_fr.png');
}
@keyframes flower_logo {
  100% {
    background-position: 98% center;
  }
}
@keyframes checks {
  100% {
    background-position: 100% 0%;
  }
}
@keyframes full_height {
  100% {
    height: 300vh;
  }
}
@keyframes bg_resize {
  100% {
    height: 300vh;
    background-size: 100% 180%;
    background-position: center 100%;
  }
}
.move_top.do {
  animation: move_top 2.0s;
  animation-delay: 1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
@keyframes whip_to_left {
  0% {
    margin-left: 100vw;
  }
  100% {
    margin-left: 0;
  }
}
@keyframes whip_to_right {
  0% {
    right: 100vw;
  }
  100% {
    right: 0;
  }
}
@keyframes whip_to_top {
  0% {
    margin-top: 100vh;
  }
  100% {
    margin-top: 0;
  }
}
@keyframes move_top {
  0% {
    top: 100vh;
  }
  100% {
    top: 0;
  }
}
@keyframes padd_to_null {
  100% {
    padding-top: 0vh;
  }
}
@keyframes fadein {
  100% {
    opacity: 1;
  }
}
.ani {
  overflow: hidden;
  white-space: nowrap;
}
.ani.ofv {
  overflow: visible;
}
.ani span {
  display: inline-block;
}
.ani.do span {
  animation-duration: 0.3s;
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}
.ani.do span.e0 {
  animation-delay: 0s;
}
.ani.do span.e1 {
  animation-delay: 0.5s;
}
.ani.do span.e2 {
  animation-delay: 1.0s;
}
.ani.ani-triple-left span {
  margin-left: 100vw;
}
.ani.ani-triple-left.do span {
  margin-left: 100vw;
  animation-name: whip_to_left;
}
.ani.ani-triple-right span {
  right: 100vw;
  position: relative;
}
.ani.ani-triple-right.do span {
  right: 100vw;
  animation-name: whip_to_right;
}
.ani.ani-triple-top span {
  margin-top: 100vw;
  vertical-align: top;
}
.ani.ani-triple-top.do span {
  margin-top: 100vw;
  animation-name: whip_to_top;
}
.spinner {
  display: inline-block;
  width: 64px;
  height: 64px;
}
.spinner:after {
  content: " ";
  display: block;
  width: 46px;
  height: 46px;
  margin: 1px;
  border-radius: 50%;
  border: 5px solid #000;
  border-color: #000 transparent #000 transparent;
  animation: lds-dual-ring 1.2s linear infinite;
}
@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes arrow {
  100% {
    background-position: 50% center;
  }
}
.arrow {
  width: 50px;
  height: 200px;
  display: none;
  position: absolute;
  top: -12vmin;
  left: 50%;
  margin-left: -25px;
  background: url('../imgs/sprites/arrow_50_200.png') 2.325% center;
}
.arrow.show {
  display: inline-block;
}
.arrow.do {
  animation: arrow steps(205);
  animation-duration: 15s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
@keyframes padder {
  0% {
    padding-top: 20vh;
  }
  55% {
    padding-top: 0vh;
  }
  85% {
    padding-top: 2vh;
  }
  100% {
    padding-top: 1vh;
  }
}
@keyframes bounce {
  0% {
    margin-top: 0px;
  }
  2% {
    margin-top: 25px;
  }
  4% {
    margin-top: 0px;
  }
  6% {
    margin-top: 15px;
  }
  8% {
    margin-top: 0px;
  }
  10% {
    margin-top: 5px;
  }
  12% {
    margin-top: 0px;
  }
  100% {
    margin-top: 0px;
  }
}
.ani-engage {
  height: 20vh;
  padding-top: 20vh;
  overflow: hidden;
  position: relative;
}
.ani-engage.do {
  animation-duration: 1s;
  animation-iteration-count: 1;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
  animation-name: padder;
}
.facts.ani {
  white-space: normal;
}
@keyframes top_white {
  100% {
    color: #fff;
  }
}
@keyframes top_to_0 {
  100% {
    top: 0vh;
  }
}
@keyframes padd_top_to_0 {
  100% {
    padding-top: 0vh;
  }
}
@keyframes padd_top_to_20 {
  99% {
    color: #000;
  }
  100% {
    padding-top: 20vh;
    color: #fff;
  }
}
@keyframes padd_top_to_40 {
  100% {
    padding-top: 40vh;
  }
}
.stage .headliner .hl-mid {
  padding-top: 100vh;
}
.stage.do .ani {
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}
.stage.do .ani span {
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-duration: 0.3s;
}
.stage.do .ani span.e0 {
  animation-delay: 0s;
}
.stage.do .ani span.e1 {
  animation-delay: 0.5s;
}
.stage.do .ani span.e2 {
  animation-delay: 1.0s;
}
.stage.do .ani-triple-top span {
  margin-top: 100vw;
  animation-name: whip_to_top;
}
.stage.do .facts {
  animation-timing-function: ease-out;
  animation-name: padd_top_to_20;
  animation-duration: 1.2s;
  animation-delay: 2.0s;
}
.stage.do .headliner .hl-mid {
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-name: padd_top_to_0;
  animation-duration: 1.2s;
  animation-delay: 2.0s;
}
.stage.do .img-fader {
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-name: top_to_0;
  animation-duration: 0.9s;
  animation-delay: 2.3s;
}
.stage.do .ani-engage {
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-name: padder;
  animation-duration: 0.9s;
  animation-delay: 3.2s;
}
#debug {
  display: none;
  position: fixed;
  top: 50px;
  right: 50px;
  background: rgba(100,100,100,0.5);
  font-size: 12px;
}
#debug.show {
  display: block;
}
.mtopminus {
  margin-top: -20vh;
}
.colora,
.colora.colorb {
  color: black;
}
.colorb {
  color: white;
}
.bg-red {
  background: rgba(77,16,16,0.685);
}
.bg-blue {
  background: rgba(7,7,63,0.603);
}
.bg-green {
  background: rgba(3,43,3,0.61);
}
.bg-grey {
  background: rgba(100,100,100,0.5);
}
.bg-green1 {
  background-color: #a0ff96;
}
.bg-image {
  background: url(../imgs/test.jpg) center center;
  background-size: cover;
}
.bg-sample {
  background: url(../imgs/sample.jpg) center center;
  background-size: cover;
}
.bg-topic {
  background-position: center center;
  background-size: cover;
}
.bg-topic-1 {
  background: url(../imgs/topics/topic_1.jpg) center center;
  background-size: cover;
}
.bg-topic-2 {
  background: url(../imgs/topics/topic_2.jpg) right top;
  background-size: cover;
}
.bg-topic-3 {
  background: url(../imgs/topics/topic_3.jpg) center center;
  background-size: cover;
}
.bg-topic-4 {
  background: url(../imgs/topics/topic_4.jpg) center center;
  background-size: cover;
}
.imgblock {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}
#sharebox {
  width: 170px;
  margin: 10px auto;
  padding: 10px 10px 0px 10px;
  background: rgba(255,255,255,0.8);
}
#sharebox .shariff {
  display: inline-block;
  width: 190px;
}
@keyframes move_bg_out {
  0% {
    top: 0vh;
  }
  100% {
    top: -100vh;
  }
}
@keyframes move_bg_in_out {
  0% {
    top: 100vh;
  }
  20% {
    top: 0vh;
  }
  60% {
    top: 0vh;
  }
  100% {
    top: -100vh;
  }
}
@keyframes move_bg_in {
  0% {
    top: 100vh;
  }
  100% {
    top: 0vh;
  }
}
.multi-bg .bg {
  position: absolute;
  left: 0;
  right: 0;
  background-repeat: no-repeat;
}
.multi-bg.do.multi-bg-parts-3 .bg1 {
  animation-name: move_bg_out;
  animation-duration: 2s;
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-delay: 1s;
}
.multi-bg.do.multi-bg-parts-3 .bg2 {
  animation-name: move_bg_in_out;
  animation-duration: 5s;
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-delay: 1s;
}
.multi-bg.do.multi-bg-parts-3 .bg3 {
  animation-name: move_bg_in;
  animation-duration: 1s;
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-delay: 4s;
}
.multi-bg.do.multi-bg-parts-2 .bg1 {
  animation-name: move_bg_out;
  animation-duration: 2s;
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-delay: 1s;
}
.multi-bg.do.multi-bg-parts-2 .bg2 {
  animation-name: move_bg_in;
  animation-duration: 1s;
  animation-iteration-count: 1;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-delay: 1s;
}
[data-cont] {
  position: relative;
  overflow: hidden;
  opacity: 0;
}
.fdh,
.ddh,
.hdh {
  font-size: 32px;
  text-align: center;
  height: 100vh;
  position: relative;
}
#wacm_padd {
  margin-top: -10vh;
}
@media (orientation: portrait) {
  #wacm_padd {
    margin-top: -18vh;
  }
}
.vphalf {
  height: 50vh;
  position: relative;
}
.vph {
  height: 100vh;
  position: relative;
}
.vph70 {
  height: 70vh;
  position: relative;
}
.vph2 {
  height: 200vh;
  position: relative;
}
.vph3 {
  height: 300vh;
  position: relative;
}
.vph4 {
  height: 400vh;
  position: relative;
}
.vpw {
  width: 100%;
}
.vpw.pat_0 {
  position: relative;
}
.vpw img {
  display: block;
  width: 100%;
  height: auto;
}
.sq {
  position: relative;
  width: 100vmin;
  height: 70vmin;
  margin: 15vmin auto;
}
.sq .txt {
  height: 70vmin;
}
.sq.half {
  height: auto;
}
.sq.half .txt {
  height: 100%;
  min-height: 30vmin;
}
.ce {
  position: relative;
  width: 70vw;
  height: auto;
  margin: 15vmin auto;
}
.ce.ce-bigtext {
  width: 100vw;
}
.sq.no-marg,
.ce.no-marg {
  margin-top: 0px;
  margin-bottom: 0px;
}
@media (orientation: portrait) {
  .ce {
    width: 100vw;
  }
  .ce.ce-bigtext {
    width: 100vw;
  }
}
.txt {
  text-align: center;
  display: table-cell;
  height: 100vh;
  width: 100vw;
  vertical-align: middle;
  position: relative;
}
.txt.h50 {
  height: 50vh;
}
.txt.h40 {
  height: 40vh;
}
.txt.h70 {
  height: 70vh;
}
.hdh {
  height: 50vh;
}
.hdh .txt {
  height: 50vh;
}
.ddh {
  height: 200vh;
}
.z100 {
  z-index: 9100;
}
.z99 {
  z-index: 9099;
}
.z80 {
  z-index: 9080;
}
.z10 {
  z-index: 6010;
}
.z8 {
  z-index: 6008;
}
.z5 {
  z-index: 6005;
}
body {
  font-family: Rubik, sans-serif;
  font-weight: 300;
}
a {
  color: #008200;
}
a:hover,
a:active,
a:visited,
a:focus {
  color: #008200;
  text-decoration: none;
}
.fs-small {
  font-size: 2vh;
}
.fs-normal {
  font-size: 3.5vh;
}
.fs-subline {
  font-size: 6vmin;
}
.fs-medium {
  font-size: 12vmin;
  line-height: 1.2em;
}
.fs-nav {
  font-size: 3.5vh;
}
.fs-button {
  font-size: 2.0vh;
}
.fs-text {
  font-size: 4vmin;
}
.fs-mega {
  font-size: 26vh;
  line-height: 0.9em;
  font-weight: 900;
}
.fs-mega2 {
  font-size: 22vh;
  line-height: 0.9em;
  font-weight: 900;
}
.lang-fr .fs-medium {
  font-size: 10vmin;
}
.lang-fr .fs-mega {
  font-size: 16vh;
}
.lang-fr .fs-mega2 {
  font-size: 16vh;
}
.lang-fr .fs-subline {
  font-size: 4vmin;
}
.lang-de .fs-medium {
  font-size: 11vmin;
}
.lang-de .fs-mega {
  font-size: 21vh;
}
.lang-de .fs-mega2 {
  font-size: 19vh;
}
.lang-de .fs-subline {
  font-size: 4vmin;
}
@media (orientation: portrait) {
  .fs-mega {
    font-size: 16vw;
  }
  .fs-mega2 {
    font-size: 12vw;
  }
  .fs-button {
    font-size: 2vh;
  }
  .fs-normal {
    font-size: 4vw;
  }
  .lang-fr .fs-medium {
    font-size: 8vmin;
  }
  .lang-fr .fs-mega {
    font-size: 10vw;
  }
  .lang-fr .fs-mega2 {
    font-size: 8vw;
  }
  .lang-de .fs-medium {
    font-size: 11vmin;
  }
  .lang-de .fs-mega {
    font-size: 14vw;
  }
  .lang-de .fs-mega2 {
    font-size: 10vw;
  }
  .lang-de .fs-subline {
    font-size: 4vmin;
  }
}
.tc {
  text-align: center;
}
.tl {
  text-align: left;
}
.tr {
  text-align: right;
}
.taj {
  text-align: justify;
}
.pal {
  padding-left: 10vw;
}
.par {
  padding-right: 10vw;
}
.pb {
  padding-bottom: 6vw;
}
@media (orientation: portrait) {
  .pal {
    padding-left: 4vw;
  }
  .par {
    padding-right: 4vw;
  }
}
.pr {
  position: relative;
}
.loading {
  text-align: center;
  padding: 40vh 0px 0 0;
}
@keyframes slide_up {
  100% {
    top: 0;
  }
}
@keyframes slide_left {
  100% {
    right: 0;
  }
}
@keyframes slide_right {
  100% {
    left: 0;
  }
}
.ani-slide-up.do {
  animation-name: slide_up;
  animation-duration: 0.8s;
  animation-iteration-count: 1;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
.ani-slide-left.do {
  animation-name: slide_left;
  animation-duration: 0.8s;
  animation-iteration-count: 1;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
.ani-slide-right.do {
  animation-name: slide_right;
  animation-duration: 0.8s;
  animation-iteration-count: 1;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
.ce .ani-slide-up.img,
.ce .ani-slide-up.pr {
  top: 70vmin;
}
.ce .ani-slide-left.img,
.ce .ani-slide-left.pr {
  right: -100vw;
}
.ce .ani-slide-right.img,
.ce .ani-slide-right.pr {
  left: -100vw;
}
.ce b,
.ce strong {
  font-weight: 900;
}
.ce h2 {
  text-transform: uppercase;
  color: #00b400;
  text-align: center;
  font-size: 6vmin;
  font-weight: 400;
  padding: 0 10vmin 0.5em 10vmin;
}
.ce a {
  color: #00b400;
  border-color: #00b400;
  text-decoration: underline;
}
.ce .img {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  left: 0;
}
.ce .txt {
  padding: 2% 10% 2% 10%;
}
.ce.ce-img-right .img {
  width: 50%;
  left: auto;
}
.ce.ce-img-right .txt {
  padding: 2% 30% 2% 2%;
}
.ce.ce-img-left .img {
  width: 50%;
  right: auto;
}
.ce.ce-img-left .txt {
  padding: 2% 2% 2% 40%;
}
.ce.ce-img-full {
  text-decoration: underline;
  color: #ffffff;
}
.ce.ce-img-full em {
  color: #000000;
  text-decoration: underline;
}
.ce em {
  color: #00b400;
  font-style: normal;
}
.ce u {
  background-color: #a0ff96;
  display: inline-block;
  padding: 0 0.2em 0 0.1em;
  text-decoration: none;
}
.ce ul {
  padding: 0;
}
.ce li {
  font-size: 4vmin;
  padding-bottom: 1.5em;
  padding-left: 10vmin;
  padding-right: 10vmin;
  list-style-type: none;
  text-align: center;
}
.ce li:before {
  content: " ";
  display: block;
  opacity: 0;
  width: 42px;
  height: 42px;
  margin: 0px auto;
  background-image: url(../imgs/sprites/checkmark_95_95.png);
  background-size: 2700% 100%;
  background-position: 0% 0%;
}
.ce li.view:before {
  opacity: 1;
  animation: checks 3.0s steps(27);
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.ce.high-red em,
.ce.high-orange em {
  color: #ff6932;
}
.ce.high-yellow em,
.ce.high-yellow h2 {
  color: #ffbe28;
}
.ce.high-yellow li:before {
  background-image: url(../imgs/sprites/circle_95_95.png);
}
.accordion .trigger {
  cursor: pointer;
  background-color: #ededed;
  font-size: 6vmin;
  font-weight: 300;
  padding: 1em;
  margin: 0;
}
.accordion .content {
  display: none;
  position: relative;
}
.accordion .content .inner {
  width: auto;
  height: auto;
  margin: auto;
  padding: 1em 15%;
}
.accordion.active .content {
  display: block;
}
@media (orientation: portrait) {
  .accordion .content .inner {
    width: 100vmin;
    padding: 1em;
  }
}
#langswitch {
  position: fixed;
  bottom: 3vh;
  left: 50%;
  z-index: 9000;
  padding: 0;
  margin: 0;
  margin-left: -1.7em;
}
#langswitch li {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: inline-block;
}
.typewriter {
  opacity: 0;
}
.typewriter.show {
  opacity: 1;
}
.button {
  display: inline-block;
  text-decoration: none;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 6vmin;
}
.button:hover,
.button:active,
.button:visited,
.button:focus {
  color: #ffffff;
}
.button.button-md {
  font-size: 2.0vh;
  padding: 0.4em 1.2em;
  line-height: 1.2em;
}
.button.pink {
  background-color: #ea4eb6;
}
.button.orange {
  background-color: #ff6932;
}
@media (orientation: portrait) {
  .button.button-md {
    font-size: 2vh;
  }
}
.btn-dotted {
  display: inline-block;
  vertical-align: top;
  padding-bottom: 0.1em;
  border-bottom: 1px dotted #008200;
}
.footer-links.move {
  padding-top: 100vh;
  opacity: 1;
}
.footer-links.fade {
  padding-top: 0;
  opacity: 0;
}
.footer-links.fade.do {
  animation: fadein 1.0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
  animation-delay: 1.5s;
}
.footer-links.move.do {
  animation: padd_to_null 0.8s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
  animation-delay: 1.5s;
}
.t-caret {
  text-decoration-style: none !important;
}
.color-white {
  color: #fff;
}
.color-black {
  color: #000;
}
.color-green-dark {
  color: #008200;
}
.pa {
  position: absolute;
}
.pat {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.pab {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.oh {
  overflow: hidden;
}
.uc {
  text-transform: uppercase;
}
.pat_0 {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_40 {
  position: absolute;
  top: 40vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_50 {
  position: absolute;
  top: 50vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_100 {
  position: absolute;
  top: 100vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_150 {
  position: absolute;
  top: 150vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_200 {
  position: absolute;
  top: 200vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_300 {
  position: absolute;
  top: 300vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_400 {
  position: absolute;
  top: 400vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pat_500 {
  position: absolute;
  top: 500vh;
  bottom: 0;
  left: 0;
  right: 0;
}
.pfixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
.fixed_25 {
  position: fixed;
  top: 25vh;
  left: 0;
  right: 0;
}
.pab_0 {
  position: absolute !important;
  bottom: 0;
  top: auto;
  left: 0;
  right: 0;
}
.pab_8 {
  position: absolute !important;
  bottom: 5vmin;
  top: auto;
  left: 0;
  right: 0;
}
.facts {
  height: 100vh;
  padding-top: 50vh;
  overflow: hidden;
}
.padd_25 .facts {
  padding-top: 25vh;
}
.hl-mid {
  color: #90ffac;
  text-transform: uppercase;
}
.engage {
  text-align: center;
  animation: bounce 6.0s;
  animation-timing-function: cubic-bezier(0,0.33,0.66,1);
  animation-iteration-count: infinite;
  text-decoration: underline;
}
.engage a {
  color: #fff;
  text-decoration: none;
  font-size: 3vw;
  text-transform: uppercase;
}
#play {
  position: absolute;
  top: 40px;
  right: 40px;
}
.sticky {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.sticky.stick {
  position: fixed;
  top: 0;
}
.sticky.reached {
  position: absolute;
  top: auto;
  bottom: 0;
}
.color-changer .colora,
.color-changer .colorb {
  font-size: 10vw !important;
  font-weight: bold;
  height: 100vh;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  line-height: 1em;
  text-align: center;
}
.color-changer .colorb {
  clip-path: inset(100vh 0px 0px 0px);
  -webkit-clip-path: inset(100vh 0px 0px 0px);
}
.ani-color-pal {
  overflow: hidden;
  height: 0;
}
.ani-color-pal .color-pal {
  background-size: 100% 100%;
  background-position: center 0%;
}
.ani-color-pal.do.slow {
  animation: full_height 4.0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
}
.ani-color-pal.do.slow .color-pal {
  animation: bg_resize 4.0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
}
.ani-color-pal.do.fast {
  animation: full_height 1.5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
}
.ani-color-pal.do.fast .color-pal {
  animation: bg_resize 1.5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in;
}
.color-pal {
  background: linear-gradient(to bottom,#a0ff96,#a0ff96 20%,#32f000 20%,#32f000 35%,#00b400 35%,#00b400 50%,#008200 50%,#008200 63%,#ffbe28 63%,#ffbe28 75%,#ff6932 75%,#ff6932 90%,#ea4eb6 90%,#ea4eb6 98%,#d7008c 98%,#d7008c 100%);
}
.rainbow {
  position: absolute;
  top: 100vh;
  left: 0;
  right: 0;
  height: 100vh;
  background: linear-gradient(to bottom,#a0ff96,#a0ff96 15%,#32f000 15%,#32f000 32%,#00b400 32%,#00b400 50%,#008200 50%,#008200 68%,#ffbe28 68%,#ffbe28 80%,#ff6932 80%,#ff6932 92%,#ea4eb6 92%,#ea4eb6 98%,#d7008c 98%,#d7008c 100%);
}
.greens-content {
  max-width: 1240px;
  padding: 0px 20px;
  margin: 0px auto;
}
.greens-content .greens-content {
  max-width: 100%;
  padding: 0;
  margin: 0;
}
ul.greens-content,
.greens-content ul {
  padding-left: 20px;
}
ul.greens-content li,
.greens-content ul li {
  padding-bottom: 10px;
}
.greens-content.su-posts-default-loop .su-post {
  border: 1px solid #e6e6e6;
  padding: 20px;
}
.greens-content.su-posts-default-loop .su-post-thumbnail {
  width: 300px;
  height: auto;
  margin-right: 24px;
}
.greens-content.su-posts-default-loop .su-post-thumbnail img {
  max-width: 300px;
  width: 300px;
  height: auto;
  max-height: none;
}
@media only screen and (max-width: 767px) {
  .greens-content.su-posts-default-loop .su-post-thumbnail {
    width: 100%;
    height: auto;
    margin-bottom: 16px;
  }
  .greens-content.su-posts-default-loop .su-post-thumbnail img {
    max-width: none;
    width: 100%;
  }
}
.su-post-thumbnail img {
  display: block;
  max-width: 100%;
  height: auto;
}
body.single .entry-header {
  padding-top: 128px;
}
body.single .greens-content .ce.ce-bigtext {
  width: 100%;
}
body.single .greens-content .ce.ce-bigtext .txt {
  padding: 2% 0px 2% 0px;
}
