
/* Animate blocks */
.site-main-content {
  overflow-x: hidden; /* no scrollbars when animating */
}
.wcanimate,
.wcanimate .wca-child,
.wcanimate li.product {
  opacity: 0;
  animation-timing-function: ease-out;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  animation-delay: 0.2s;
}
.wcanimate.animated.animate-once,
.wcanimate.inview.wca-parent,
.wcanimate.animated.animate-once .wca-child,
.wcanimate.animated.animate-once li.product {
  animation-name: none;
  opacity: 1;
}
.wca-parent[class*="wca-persp-"] *:not(.wca-child) {
  perspective: 1000px;
}

@keyframes wca-fadein {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes wca-fadeinleft {
  0% { opacity: 0; transform: translate3d(-100vw, 0, 0); } /* translate3d(-100vw, 0, 0) was translate3d(-1000px, 0, 0), but gave problems on mobile */
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes wca-fadeinright {
  0% { opacity: 0; transform: translate3d(100vw, 0, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes wca-fadeintop {
  0% { opacity: 0; transform: translate3d(0, -100vh, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes wca-fadeinbottom {
  0% { opacity: 0; transform: translate3d(0, 100vh, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes wca-fadeinenlarge {
  0% { opacity: 0; transform: scale(0); }
  100% { opacity: 1; transform: scale(1); }
}
@keyframes wca-fadeinenlargex {
  0% { opacity: 0; transform: scaleX(0); }
  100% { opacity: 1; transform: scaleX(1); }
}
@keyframes wca-fadeinenlargey {
  0% { opacity: 0; transform: scaleY(0); }
  100% { opacity: 1; transform: scaleY(1); }
}

@keyframes wca-fadeinshrink {
  0% { opacity: 0; transform: scale(2); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes wca-fadeinpop {
  0% { opacity: 0; transform: scale(0); }
  80% { transform: scale(1.2); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes wca-fadeinbounceleft {
  0% { opacity: 0; transform: translate3d(-100vw, 0, 0); }
  50% { transform: translate3d(0, 0, 0); }
  70% { transform: translate3d(-50px, 0, 0); }
  90% { transform: translate3d(0, 0, 0); }
  95% { transform: translate3d(-25px, 0, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes wca-fadeinbounceright {
  0% { opacity: 0; transform: translate3d(100vw, 0, 0); }
  50% { transform: translate3d(0, 0, 0); }
  70% { transform: translate3d(50px, 0, 0); }
  90% { transform: translate3d(0, 0, 0); }
  95% { transform: translate3d(25px, 0, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes wca-fadeinbouncetop {
  0% { opacity: 0; transform: translate3d(0, -100vh, 0); }
  50% { transform: translate3d(0, 0, 0); }
  70% { transform: translate3d(0, -50px, 0); }
  90% { transform: translate3d(0, 0, 0); }
  95% { transform: translate3d(0, -25px, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes wca-fadeinbouncebottom {
  0% { opacity: 0; transform: translate3d(0, 100vh, 0); }
  50% { transform: translate3d(0, 0, 0); }
  70% { transform: translate3d(0, 50px, 0); }
  90% { transform: translate3d(0, 0, 0); }
  95% { transform: translate3d(0, 25px, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes wca-persp-fadeinrotate {
  0% { opacity: 0; transform: perspective(1000px) scale(0) rotate3d(0, 0, 1, 180deg); }
  100% { opacity: 1; transform: perspective(1000px) scale(1) rotate3d(0, 0, 1, 0deg); }
}
@keyframes wca-persp-fadeinrotate-child {
  0% { opacity: 0; transform: scale(0) rotate3d(0, 0, 1, 180deg); }
  100% { opacity: 1; transform: scale(1) rotate3d(0, 0, 1, 0deg); }
}
@keyframes wca-persp-fadeinrotatex {
  0% { opacity: 0; transform: perspective(1000px) scale(0) rotate3d(1, 0, 0, 180deg); }
  100% { opacity: 1; transform: perspective(1000px) scale(1) rotate3d(1, 0, 0, 0deg); }
}
@keyframes wca-persp-fadeinrotatex-child {
  0% { opacity: 0; transform: scale(0) rotate3d(1, 0, 0, 180deg); }
  100% { opacity: 1; transform: scale(1) rotate3d(1, 0, 0, 0deg); }
}
@keyframes wca-fadeinrotatey {
  0% { opacity: 0; transform: perspective(1000px) scale(0) rotate3d(0, 1, 0, 180deg); }
  100% { opacity: 1; transform: perspective(1000px) scale(1) rotate3d(0, 1, 0, 0deg); }
}
@keyframes wca-fadeinrotatey-child {
  0% { opacity: 0; transform: scale(0) rotate3d(0, 1, 0, 180deg); }
  100% { opacity: 1; transform: scale(1) rotate3d(0, 1, 0, 0deg); }
}

@keyframes wca-fadeinhinge {
  0% { opacity: 0; transform: rotate3d(0, 0, 1, 90deg); }
  100% { opacity: 1; transform: rotate3d(0, 0, 1, 0deg); }
}

@keyframes wca-persp-fadeinclosedoorleft {
  0% { opacity: 0; transform: perspective(1000px) rotate3d(0, 1, 0, 90deg); }
  100% { opacity: 1; transform: perspective(1000px) rotate3d(0, 1, 0, 0deg); }
}
@keyframes wca-persp-fadeinclosedoorleft-child {
  0% { opacity: 0; transform: rotate3d(0, 1, 0, 90deg); }
  100% { opacity: 1; transform: rotate3d(0, 1, 0, 0deg); }
}
@keyframes wca-persp-fadeinclosedoorright {
  0% { opacity: 0; transform: perspective(1000px) rotate3d(0, 1, 0, -90deg); }
  100% { opacity: 1; transform: perspective(1000px) rotate3d(0, 1, 0, 0deg); }
}
@keyframes wca-persp-fadeinclosedoorright-child {
  0% { opacity: 0; transform: rotate3d(0, 1, 0, -90deg); }
  100% { opacity: 1; transform: rotate3d(0, 1, 0, 0deg); }
}
@keyframes wca-persp-fadeinclosedoortop {
  0% { opacity: 0; transform: perspective(1000px) rotate3d(1, 0, 0, -90deg); }
  100% { opacity: 1; transform: perspective(1000px) rotate3d(1, 0, 0, 0deg); }
}
@keyframes wca-persp-fadeinclosedoortop-child {
  0% { opacity: 0; transform: rotate3d(1, 0, 0, -90deg); }
  100% { opacity: 1; transform: rotate3d(1, 0, 0, 0deg); }
}
@keyframes wca-persp-fadeinclosedoorbottom {
  0% { opacity: 0; transform: perspective(1000px) rotate3d(1, 0, 0, 90deg); }
  100% { opacity: 1; transform: perspective(1000px) rotate3d(1, 0, 0, 0deg); }
}
@keyframes wca-persp-fadeinclosedoorbottom-child {
  0% { opacity: 0; transform: rotate3d(1, 0, 0, 90deg); }
  100% { opacity: 1; transform: rotate3d(1, 0, 0, 0deg); }
}

.inview.wca-fadein,
.inview.wca-fadein .wca-child,
.inview.wca-fadein li.product {
  animation-name: wca-fadein;
}
.inview.wca-fadeinleft,
.inview.wca-fadeinleft .wca-child,
.inview.wca-fadeinleft li.product {
  animation-name: wca-fadeinleft;
}
.inview.wca-fadeinright,
.inview.wca-fadeinright .wca-child,
.inview.wca-fadeinright li.product {
  animation-name: wca-fadeinright;
}
.inview.wca-fadeintop,
.inview.wca-fadeintop .wca-child,
.inview.wca-fadeintop li.product {
  animation-name: wca-fadeintop;
}
.inview.wca-fadeinbottom,
.inview.wca-fadeinbottom .wca-child,
.inview.wca-fadeinbottom li.product {
  animation-name: wca-fadeinbottom;
}

.inview.wca-fadeinenlarge,
.inview.wca-fadeinenlarge .wca-child,
.inview.wca-fadeinenlarge li.product {
  animation-name: wca-fadeinenlarge;
}
.inview.wca-fadeinenlargex,
.inview.wca-fadeinenlargex .wca-child,
.inview.wca-fadeinenlargex li.product {
  animation-name: wca-fadeinenlargex;
}
.inview.wca-fadeinenlargey,
.inview.wca-fadeinenlargey .wca-child,
.inview.wca-fadeinenlargey li.product {
  animation-name: wca-fadeinenlargey;
}

.inview.wca-fadeinshrink,
.inview.wca-fadeinshrink .wca-child,
.inview.wca-fadeinshrink li.product {
  animation-name: wca-fadeinshrink;
}

.inview.wca-fadeinpop,
.inview.wca-fadeinpop .wca-child,
.inview.wca-fadeinpop li.product {
  animation-name: wca-fadeinpop;
}

.inview.wca-fadeinbounceleft,
.inview.wca-fadeinbounceleft .wca-child,
.inview.wca-fadeinbounceleft li.product {
  animation-name: wca-fadeinbounceleft;
  animation-duration: 0.8s;
  transform-origin: right center;
}
.inview.wca-fadeinbounceright,
.inview.wca-fadeinbounceright .wca-child,
.inview.wca-fadeinbounceright li.product {
  animation-name: wca-fadeinbounceright;
  animation-duration: 0.8s;
  transform-origin: left center;
}
.inview.wca-fadeinbouncetop,
.inview.wca-fadeinbouncetop .wca-child,
.inview.wca-fadeinbouncetop li.product {
  animation-name: wca-fadeinbouncetop;
  animation-duration: 1s;
  transform-origin: center bottom;
}
.inview.wca-fadeinbouncebottom,
.inview.wca-fadeinbouncebottom .wca-child,
.inview.wca-fadeinbouncebottom li.product {
  animation-name: wca-fadeinbouncebottom;
  animation-duration: 1s;
  transform-origin: center top;
}

.inview.wca-persp-fadeinrotate {
  animation-name: wca-persp-fadeinrotate;
}
.inview.wca-persp-fadeinrotate .wca-child,
.inview.wca-persp-fadeinrotate li.product {
  animation-name: wca-persp-fadeinrotate-child;
}
.inview.wca-persp-fadeinrotatex {
  animation-name: wca-persp-fadeinrotatex;
}
.inview.wca-persp-fadeinrotatex .wca-child,
.inview.wca-persp-fadeinrotatex li.product {
  animation-name: wca-persp-fadeinrotatex-child;
}
.inview.wca-persp-fadeinrotatey {
  animation-name: wca-persp-fadeinrotatey;
}
.inview.wca-persp-fadeinrotatey .wca-child,
.inview.wca-persp-fadeinrotatey li.product {
  animation-name: wca-persp-fadeinrotatey-child;
}

.inview.wca-fadeinhingelefttop,
.inview.wca-fadeinhingelefttop .wca-child,
.inview.wca-fadeinhingelefttop li.product {
  animation-name: wca-fadeinhinge;
  transform-origin: left top;
}
.inview.wca-fadeinhingeleftbottom,
.inview.wca-fadeinhingeleftbottom .wca-child,
.inview.wca-fadeinhingeleftbottom li.product {
  animation-name: wca-fadeinhinge;
  transform-origin: left bottom;
}
.inview.wca-fadeinhingerighttop,
.inview.wca-fadeinhingerighttop .wca-child,
.inview.wca-fadeinhingerighttop li.product {
  animation-name: wca-fadeinhinge;
  transform-origin: right top;
}
.inview.wca-fadeinhingerightbottom,
.inview.wca-fadeinhingerightbottom .wca-child,
.inview.wca-fadeinhingerightbottom li.product {
  animation-name: wca-fadeinhinge;
  transform-origin: right bottom;
}
.inview.wca-fadeinhingerightbottom,
.inview.wca-fadeinhingerightbottom .wca-child,
.inview.wca-fadeinhingerightbottom li.product {
  animation-name: wca-fadeinhinge;
  transform-origin: right bottom;
}

.inview.wca-persp-fadeinclosedoorleft {
  animation-name: wca-persp-fadeinclosedoorleft;
  transform-origin: left center;
}
.inview.wca-persp-fadeinclosedoorleft .wca-child,
.inview.wca-persp-fadeinclosedoorleft li.product {
  animation-name: wca-persp-fadeinclosedoorleft-child;
  transform-origin: left center;
}
.inview.wca-persp-fadeinclosedoorright {
  animation-name: wca-persp-fadeinclosedoorright;
  transform-origin: right center;
}
.inview.wca-persp-fadeinclosedoorright .wca-child,
.inview.wca-persp-fadeinclosedoorright li.product {
  animation-name: wca-persp-fadeinclosedoorright-child;
  transform-origin: right center;
}
.inview.wca-persp-fadeinclosedoortop {
  animation-name: wca-persp-fadeinclosedoortop;
  transform-origin: center top;
}
.inview.wca-persp-fadeinclosedoortop .wca-child,
.inview.wca-persp-fadeinclosedoortop li.product {
  animation-name: wca-persp-fadeinclosedoortop-child;
  transform-origin: center top;
}
.inview.wca-persp-fadeinclosedoorbottom {
  animation-name: wca-persp-fadeinclosedoorbottom;
  transform-origin: center bottom;
}
.inview.wca-persp-fadeinclosedoorbottom .wca-child,
.inview.wca-persp-fadeinclosedoorbottom li.product {
  animation-name: wca-persp-fadeinclosedoorbottom-child;
  transform-origin: center bottom;
}
