/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite; }

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s; }

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s; }

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }
@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom; }

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }
@keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }
.flash {
  -webkit-animation-name: flash;
  animation-name: flash; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 1.15, 1.15);
    transform: scale3d(1.15, 1.15, 1.15); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 1.15, 1.15);
    transform: scale3d(1.15, 1.15, 1.15); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse; }

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand; }

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }
@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }
.shake {
  -webkit-animation-name: shake;
  animation-name: shake; }

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }
@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }
.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake; }

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }
@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }
.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing; }

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.tada {
  -webkit-animation-name: tada;
  animation-name: tada; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }
.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble; }

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg); }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg); } }
@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg); }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg); } }
.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center; }

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn; }

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown; }

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft; }

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight; }

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp; }

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }
@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }
.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut; }

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown; }

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft; }

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight; }

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp; }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn; }

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -150%, 0);
    transform: translate3d(0, -150%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -150%, 0);
    transform: translate3d(0, -150%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown; }

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig; }

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft; }

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig; }

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight; }

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig; }

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 150%, 0);
    transform: translate3d(0, 150%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 150%, 0);
    transform: translate3d(0, 150%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp; }

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig; }

@-webkit-keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
@keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut; }

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
@keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown; }

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
@keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig; }

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
@keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft; }

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
@keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig; }

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
@keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight; }

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
@keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig; }

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
@keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp; }

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
@keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig; }

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }
@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip; }

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX; }

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY; }

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }
@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }
.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }
@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }
.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY; }

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out; }

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }
@keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in; }

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn; }

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft; }

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight; }

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight; }

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }
@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }
.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut; }

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }
@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft; }

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight; }

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft; }

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }
@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight; }

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }
@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }
.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }
@keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }
.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut; }

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }
@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }
.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn; }

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown; }

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft; }

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight; }

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp; }

@-webkit-keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }
@keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }
.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut; }

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown; }

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }
.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft; }

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }
.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight; }

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp; }

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown; }

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft; }

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight; }

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp; }

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown; }

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft; }

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight; }

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp; }

/**/
@-webkit-keyframes blurFadeIn {
  0% {
    opacity: 0;
    transform: scale(1.3); }
  50% {
    opacity: 0.5; }
  100% {
    opacity: 1;
    transform: scale(1); } }
@keyframes blurFadeIn {
  0% {
    opacity: 0;
    transform: scale(1.3); }
  50% {
    opacity: 0.5; }
  100% {
    opacity: 1;
    transform: scale(1); } }
.blurFadeIn {
  -webkit-animation-name: blurFadeIn;
  animation-name: blurFadeIn; }

@-webkit-keyframes blurFadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    -o-transform: translateY(-10px);
    transform: translateY(-10px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0); } }
@keyframes blurFadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    -o-transform: translateY(-10px);
    transform: translateY(-10px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0); } }
.blurFadeInDown {
  -webkit-animation-name: blurFadeInDown;
  animation-name: blurFadeInDown; }

@-webkit-keyframes passing {
  0% {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0; }
  50% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    opacity: 1; }
  100% {
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
    opacity: 0; } }
@keyframes passing {
  0% {
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0; }
  50% {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
    opacity: 1; }
  100% {
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translateX(50%);
    opacity: 0; } }
@-webkit-keyframes passing-reverse {
  0% {
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
    opacity: 0; }
  50% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    opacity: 1; }
  100% {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0; } }
@keyframes passing-reverse {
  0% {
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translateX(50%);
    opacity: 0; }
  50% {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
    opacity: 1; }
  100% {
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0; } }
@keyframes jackInTheBox {
  from {
    opacity: 0;
    transform: scale(0.1) rotate(30deg);
    transform-origin: center bottom; }
  50% {
    transform: rotate(-10deg); }
  70% {
    transform: rotate(3deg); }
  to {
    opacity: 1;
    transform: scale(1); } }
.jackInTheBox {
  animation-name: jackInTheBox; }

.contact-display-1-row .title-contact{
  display: inline;
}
@media (max-width: 1600px) and (min-width: 1024px){
  .banner-left{
    max-width: 52%;
  }
  .banner-right{
    max-width: 46%;
  }
}
.med-bestsale .product-miniature{
  border-bottom: none;
  border-left: none;
  border-right: none;
  padding-left: 0;
  padding-right: 0;
  margin: 0 20px !important;
}
.med-bestsale .product-miniature:hover{
  border-color: #ebebeb;
}
.med-bestsale .pos-product-widget .slick-arrow{
  top: -2.957rem !important;
}
.med-bestsale .pos-product-widget .slick-next{
  right: 1rem !important;
}
.med-bestsale .pos-product-widget .slick-prev{
  right: 3.5rem !important;
}
.toy-bestsale .product-miniature{
  border-bottom: none;
  border-left: none;
  border-right: none;
  padding-left: 0;
  padding-right: 0;
  margin: 0 20px;
  border-radius:0;
}
.toy-bestsale .product-miniature:hover{
  border-color: #ebebeb;
}
.toy-bestsale .pos-product-widget .slick-slide > *:not(:last-child) {
    margin-bottom: 0;
}
.toy-bestsale .pos-product-widget .slick-next{
  right: 1rem !important;
}
.toy-bestsale .pos-product-widget .slick-prev{
  right: 3.5rem !important;
}
/*# sourceMappingURL=animate.css.map */

.list-bigger-image .style_product_list .img_block{
  max-width: 170px;
}

.has-section-inner .elementor-widget-wrap{
  display: block !important;
}
.elementor-widget-wrap > section{
  width: 100% !important;
}
.elementor-editor-active .elementor.elementor-edit-mode .elementor-top-column .elementor-widget-wrap .elementor-inner-section{
  margin-top: 0;
}





/* MAPARAPHARMACIE HOME SIGNATURE - BEGIN */
/* MaParapharmacie — accueil signature. Scoped additions only. */
#wrapper>.container:has(.mpa){width:100%;max-width:none;padding-left:0;padding-right:0}
.elementor-section.mpa{--mpa-teal:#009b8c;--mpa-dark:#333333;--mpa-gold:#f9be32;--mpa-soft:#eff8f5;--mpa-line:#d7e6e1;width:100%;max-width:none;margin:0!important;box-sizing:border-box;color:var(--mpa-dark)}
.mpa>.elementor-container{max-width:1440px;width:100%;margin:auto}
.mpa>.elementor-container>.elementor-row{width:100%;display:flex;flex-wrap:wrap}
.mpa .elementor-column{min-width:0}
.mpa .elementor-column-wrap{padding:0!important}
.mpa .elementor-widget-wrap{align-content:flex-start}
.mpa-copy,.mpa-title,.mpa-more,.mpa-tile{font-family:'DM Sans',sans-serif;color:var(--mpa-dark);margin:0!important}
.mpa-copy .elementor-text-editor,.mpa-title .elementor-text-editor,.mpa-more .elementor-text-editor,.mpa-tile .elementor-text-editor{font-family:inherit;color:inherit}
.mpa-copy h1,.mpa-copy h2,.mpa-title h2,.mpa-tile h3{font-family:inherit!important;font-weight:600;letter-spacing:-.045em;line-height:1.06;color:inherit;text-transform:none;margin:0;overflow-wrap:break-word}
.mpa-copy h1{font-size:clamp(42px,4.1vw,68px)}
.mpa-copy h2{font-size:clamp(34px,3.5vw,54px)}
.mpa-copy em{font-style:normal;color:var(--mpa-teal)}
.mpa .mpa-copy .mpa-kicker,.mpa .mpa-title .mpa-kicker{font-size:11px;line-height:1.5;letter-spacing:.16em;font-weight:700;margin:0 0 16px;text-transform:uppercase;color:var(--mpa-teal)}
.mpa .mpa-copy .mpa-description,.mpa .mpa-tile .mpa-description{font-size:16px;line-height:1.65;font-weight:400;letter-spacing:0;margin:20px 0 0;color:inherit;max-width:440px}
.mpa .mpa-cta{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;max-width:100%;padding:14px 23px;margin-top:24px;border:1px solid var(--mpa-teal);border-radius:4px;background:var(--mpa-teal);color:#fff;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:700;line-height:1.4;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s;box-sizing:border-box}
.mpa .mpa-cta:hover{background:var(--mpa-dark);border-color:var(--mpa-dark);color:#fff;box-shadow:0 4px 14px #123e3820}
.mpa .mpa-cta:focus-visible{outline:3px solid var(--mpa-gold);outline-offset:4px}
.mpa .mpa-cta-text{background:transparent;border:0;border-bottom:1px solid var(--mpa-line);border-radius:0;color:var(--mpa-dark);padding:12px 0;min-height:44px;justify-content:space-between;gap:30px;margin-top:0}
.mpa .mpa-cta-text:hover{background:transparent;color:var(--mpa-teal);box-shadow:none}
.elementor-section.mpa-banner{padding:0!important;background-repeat:no-repeat;background-size:100% auto;background-position:bottom center;position:relative}
.mpa-banner>.elementor-container{max-width:none}
.mpa-banner>.elementor-container>.elementor-row{min-height:33.333vw}
.mpa-banner .mpa-banner-column{width:100%}
.mpa-banner .mpa-banner-column>.elementor-column-wrap{width:100%;display:flex;align-items:center}
.mpa-banner .mpa-banner-column>.elementor-column-wrap>.elementor-widget-wrap{align-content:center;min-height:inherit}
.mpa-banner .mpa-copy{width:48%!important;max-width:700px;padding:38px max(28px,4vw);box-sizing:border-box}
.mpa-banner .mpa-copy .mpa-discount{font-size:62px;line-height:1;font-weight:700;letter-spacing:-.065em;margin:16px 0 0;color:var(--mpa-teal)}
.mpa-banner .mpa-discount span{font-size:.6em;letter-spacing:-.03em}
.mpa-banner .mpa-discount+.mpa-cta{margin-top:18px}
.mpa-banner-hero{background-color:#f3f8f5;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v3/hero-desktop.webp')}
.mpa-banner-cerave{background-color:#fff1ee;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/cerave-desktop.webp')}
.mpa-banner-laroche{background-color:#f5f7f9;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/laroche-desktop.webp')}
.mpa-banner-premium{background-color:#f2f0ee;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/premium-desktop.webp')}
.mpa-banner-cheveux{background-color:#edf3df;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/cheveux-desktop.webp')}
.mpa-banner-ducray{background-color:#eff5f5;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/ducray-desktop.webp')}
.mpa-banner-bebe-maman{background-color:#f1f7fa;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/bebe-maman-desktop.webp')}
.mpa-banner-complements{background-color:#fffae5;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/complements-desktop.webp')}
.mpa-banner-solaire{background-color:#fcf0d9;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/solaire-desktop.webp')}
.mpa-banner-cheveux .mpa-copy{background:none;width:51%!important}
.mpa-banner-ducray .mpa-copy{margin-left:54%!important;width:46%!important}
.mpa-banner-complements .mpa-copy{margin-left:29%!important;width:42%!important;padding-left:2vw;padding-right:2vw;text-align:center}
.mpa-banner-complements .mpa-description{margin-left:auto;margin-right:auto}
.mpa-banner-complements h2{font-size:clamp(32px,3vw,48px)}
.mpa-banner-solaire .mpa-copy{background:none;margin-left:3vw!important;width:43%!important;padding:30px}
.elementor-section.mpa-listing{padding:42px 40px 46px!important;background:#fff}
.mpa-title{padding:0 0 24px}
.mpa-title h2{font-size:clamp(28px,2.6vw,40px);line-height:1.13;letter-spacing:-.035em}
.mpa .mpa-title .mpa-kicker{margin-bottom:10px}
.mpa-more{padding-top:18px}
.elementor-section.mpa-split{padding:0 40px 22px!important;background:#fff}
.mpa-split>.elementor-container>.elementor-row{gap:0;align-items:stretch}
.mpa-split .mpa-art{min-height:0;background-position:center;background-repeat:no-repeat;background-size:cover}
.mpa-split .mpa-art>.elementor-column-wrap{width:100%}
.mpa-split .mpa-art .mpa-copy{padding:34px 28px;box-sizing:border-box}
.mpa-split .mpa-art h2{font-size:clamp(30px,2.4vw,40px)}
.mpa-split .mpa-split-catalogue>.elementor-column-wrap{padding:28px 0 0 30px!important}
.mpa-reverse .mpa-split-catalogue>.elementor-column-wrap{padding:28px 30px 0 0!important}
.mpa-art-visage{background-color:#eff7f3;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/visage-desktop.webp')}
.mpa-art-corps{background-color:#eff7ef;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/corps-desktop.webp')}
.mpa-art-kbeauty{background-color:#eff6ef;background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/kbeauty-desktop.webp')}
.elementor-section.mpa-needs{padding:0 40px 54px!important;background:#fff}
.mpa-needs>.elementor-container>.elementor-row{border-top:1px solid var(--mpa-line);border-bottom:1px solid var(--mpa-line)}
.mpa-needs .mpa-tile-column>.elementor-column-wrap{padding:26px!important;border-right:1px solid var(--mpa-line);width:100%}
.mpa-needs .mpa-tile-column:last-child>.elementor-column-wrap{border-right:0}
.mpa .mpa-tile .mpa-tile-number{font-size:12px;font-weight:700;color:var(--mpa-teal);margin:0 0 18px}
.mpa-tile h3{font-size:26px;line-height:1.1}
.mpa .mpa-tile .mpa-description{font-size:14px;margin-top:12px}
.mpa-tile .mpa-cta{margin-top:16px;min-width:150px}
.elementor-section.mpa-brand-section{padding:48px 40px 60px!important;background:#f3f9f6}
.mpa-brands .elementor-image-carousel img{width:128px;height:64px;object-fit:contain;padding:8px;background:#fff;border:0;border-radius:0;box-sizing:border-box;margin:auto}
.mpa-brands .elementor-image-carousel-caption{display:none}
.elementor-section.mpa-closing{padding:55px 40px!important;background:#ffe7a1}
.mpa-closing .mpa-copy{padding:0 24px}
.mpa-closing .mpa-description{max-width:600px}
@media(min-width:1600px){.mpa-banner .mpa-copy{padding-left:max(50px,calc((100vw - 1340px)/2));max-width:none;width:49%!important}}
@media(min-width:768px) and (max-width:1024px){.mpa-banner .mpa-copy{padding:28px;width:50%!important}.mpa-copy h1{font-size:42px}.mpa-copy h2{font-size:36px}.mpa-banner .mpa-copy .mpa-discount{font-size:52px}.mpa .mpa-cta{padding:12px 16px;gap:16px}.elementor-section.mpa-listing,.elementor-section.mpa-categories,.elementor-section.mpa-brand-section{padding-left:24px!important;padding-right:24px!important}.elementor-section.mpa-split,.elementor-section.mpa-needs{padding-left:24px!important;padding-right:24px!important}.mpa-split .mpa-art .mpa-copy{padding:28px 20px}.mpa-split .mpa-art h2{font-size:31px}.mpa-title h2{font-size:30px}.mpa-split .mpa-art{min-height:0}.mpa-needs .mpa-tile-column>.elementor-column-wrap{padding:22px 18px!important}.mpa-tile h3{font-size:23px}}
@media(max-width:767px){
 .elementor-section.mpa{padding-left:0!important;padding-right:0!important}
 .mpa>.elementor-container{max-width:none}
 .mpa>.elementor-container>.elementor-row>.elementor-column{width:100%!important}
 .mpa-copy h1{font-size:35px;line-height:1.04;letter-spacing:-.05em}
 .mpa-copy h2{font-size:32px;line-height:1.07;letter-spacing:-.045em}
 .mpa .mpa-copy .mpa-kicker,.mpa .mpa-title .mpa-kicker{font-size:10px;letter-spacing:.13em;margin-bottom:12px;line-height:1.5}
 .mpa .mpa-copy .mpa-description{font-size:14px;line-height:1.55;margin-top:14px;max-width:100%}
 .mpa .mpa-cta{font-size:12px;min-height:44px;padding:12px 17px;gap:20px;margin-top:18px}
 .mpa .mpa-cta-text{margin-top:0;padding:12px 0}
 .elementor-section.mpa-banner{background-size:100% auto;background-position:bottom center}
 .mpa-banner>.elementor-container>.elementor-row{min-height:133.333vw}
 .mpa-banner .mpa-banner-column>.elementor-column-wrap{align-items:stretch}
 .mpa-banner .mpa-banner-column>.elementor-column-wrap>.elementor-widget-wrap{align-content:flex-start}
 .mpa-banner .mpa-copy,.mpa-banner-cheveux .mpa-copy{width:100%!important;max-width:none;padding:26px 16px 0;background:none;margin-left:0!important;text-align:left}
 .mpa-banner .mpa-copy .mpa-discount{font-size:45px;margin-top:10px}
 .mpa-banner .mpa-discount+.mpa-cta{margin-top:12px}
 .mpa-banner-hero{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v3/hero-mobile.webp')}
 .mpa-banner-cerave{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/cerave-mobile.webp')}
 .mpa-banner-laroche{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/laroche-mobile.webp')}
 .mpa-banner-premium{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/premium-mobile.webp')}
 .mpa-banner-cheveux{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/cheveux-mobile.webp')}
 .mpa-banner-ducray{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/ducray-mobile.webp')}
 .mpa-banner-bebe-maman{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/bebe-maman-mobile.webp')}
 .mpa-banner-complements{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/complements-mobile.webp')}
 .mpa-banner-solaire{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/solaire-mobile.webp')}
     .elementor-section.mpa-listing{padding-top:30px!important;padding-bottom:32px!important}
 .mpa-title{padding:0 16px 22px}
 .mpa-title h2{font-size:28px;line-height:1.13;letter-spacing:-.04em}
 .mpa-more{padding:14px 16px 0}
 .elementor-section.mpa-split{padding-bottom:28px!important}
 .mpa-split .mpa-art{min-height:133.333vw;background-size:100% auto;background-position:bottom center}
 .mpa-split .mpa-art .mpa-copy{padding:26px 16px 0}
 .mpa-split .mpa-art h2{font-size:32px}
 .mpa-split .mpa-split-catalogue>.elementor-column-wrap,.mpa-reverse .mpa-split-catalogue>.elementor-column-wrap{padding:30px 0 0!important}
 .mpa-reverse .mpa-art{order:0}.mpa-reverse .mpa-split-catalogue{order:1}
 .mpa-art-visage{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/visage-mobile.webp')}
 .mpa-art-corps{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/corps-mobile.webp')}
 .mpa-art-kbeauty{background-image:url('https://maparapharmacie.online/img/cms/mapara-home-v2/kbeauty-mobile.webp')}
 .elementor-section.mpa-needs{padding:0 16px 34px!important}
 .mpa-needs>.elementor-container>.elementor-row{display:block;border:0}
 .mpa-needs .mpa-tile-column>.elementor-column-wrap{padding:22px 0!important;border-right:0;border-top:1px solid var(--mpa-line)}
 .mpa .mpa-tile .mpa-tile-number{margin-bottom:10px}
 .mpa-tile h3{font-size:24px}
 .mpa .mpa-tile .mpa-description{font-size:14px;line-height:1.5;margin-top:10px}
 .mpa-tile .mpa-cta{margin-top:10px}
 .elementor-section.mpa-brand-section{padding:32px 16px 42px!important}
 .mpa-brand-section .mpa-title{padding-left:0;padding-right:0}
 .mpa-brands .elementor-image-carousel img{width:90px;height:52px;padding:7px}
 .elementor-section.mpa-closing{padding:34px 16px!important}
 .mpa-closing .mpa-copy{padding:0}
}
@media(max-width:359px){.mpa-copy h1{font-size:30px}.mpa-copy h2,.mpa-split .mpa-art h2{font-size:28px}.mpa .mpa-copy .mpa-kicker{font-size:9px;letter-spacing:.1em}.mpa-banner .mpa-copy,.mpa-split .mpa-art .mpa-copy{padding-top:22px}.mpa-banner .mpa-copy .mpa-discount{font-size:39px}.mpa .mpa-cta{font-size:11px;padding:11px 14px;gap:16px}.mpa .mpa-copy .mpa-description{font-size:13px}}
@media(prefers-reduced-motion:reduce){.mpa .mpa-cta{transition:none}.mpa-copy,.mpa-title{animation:none!important;opacity:1!important;visibility:visible!important}}

@media(max-width:359px){.mpa-hero .mpa-copy h1{font-size:28px}.mpa-hero .mpa-copy .mpa-kicker{margin-bottom:8px}.mpa-hero .mpa-copy .mpa-description{margin-top:10px}.mpa-hero .mpa-copy .mpa-cta{margin-top:14px;min-height:40px}}

@media(max-width:767px){.mpa-promotion .mpa-copy{padding-top:22px}.mpa-promotion .mpa-copy .mpa-kicker{margin-bottom:8px}.mpa-promotion .mpa-copy h2{font-size:30px}.mpa-promotion .mpa-copy .mpa-discount{font-size:38px;margin-top:8px}}
@media(max-width:359px){.mpa-promotion .mpa-copy{padding-top:18px}.mpa-promotion .mpa-copy h2{font-size:26px}.mpa-promotion .mpa-copy .mpa-discount{font-size:34px}.mpa-promotion .mpa-copy .mpa-cta{min-height:40px;margin-top:8px}}

@media(min-width:768px) and (max-width:1024px){.mpa-banner .mpa-copy{padding:22px 28px}.mpa-banner .mpa-copy h1{font-size:32px}.mpa-banner .mpa-copy h2{font-size:28px}.mpa-banner .mpa-copy .mpa-kicker{font-size:9px;letter-spacing:.1em;margin-bottom:8px}.mpa-banner .mpa-copy .mpa-description{font-size:13px;line-height:1.5;margin-top:12px}.mpa-banner .mpa-copy .mpa-discount{font-size:40px;margin-top:8px}.mpa-banner .mpa-copy .mpa-cta{min-height:40px;font-size:11px;padding:11px 14px;margin-top:12px}.mpa-banner-ducray .mpa-copy{width:46%!important}.mpa-banner-complements .mpa-copy{width:42%!important;padding-left:12px;padding-right:12px}.mpa-banner-solaire .mpa-copy{width:43%!important;padding:22px}}

/* V2: darker reading color, genuine centered supplement copy, red promotions. */
.mpa .mpa-copy,.mpa .mpa-title,.mpa .mpa-more,.mpa .mpa-tile{color:#333!important}
.mpa .mpa-copy .elementor-text-editor,.mpa .mpa-title .elementor-text-editor,.mpa .mpa-more .elementor-text-editor,.mpa .mpa-tile .elementor-text-editor{color:inherit!important}
.mpa .mpa-copy h1,.mpa .mpa-copy h2,.mpa .mpa-title h2,.mpa .mpa-tile h3{color:inherit!important}
.mpa-banner-complements .mpa-copy{width:42%!important;max-width:none;margin-left:29%!important;padding:38px 16px!important;text-align:center!important}
.mpa-banner-complements .mpa-copy .mpa-description{margin-left:auto!important;margin-right:auto!important;text-align:center}
.mpa-banner-complements .mpa-copy .elementor-text-editor{text-align:center}
.mpa-promotion{--mpa-red:#cf2838}
.mpa-promotion::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--mpa-red);z-index:1}
.mpa-promotion .mpa-copy .mpa-kicker{display:inline-block;padding:5px 10px;margin-bottom:12px;border-radius:3px;background:var(--mpa-red);color:#fff;letter-spacing:.08em}
.mpa-promotion .mpa-copy .mpa-discount{color:var(--mpa-red)}
.mpa-promotion .mpa-copy .mpa-cta{background:var(--mpa-red);border-color:var(--mpa-red)}
.mpa-promotion .mpa-copy .mpa-cta:hover{background:#a91f2d;border-color:#a91f2d}
.mpa-listing-promo .mpa-title .mpa-kicker,.mpa-listing-promo .mpa-more .mpa-cta-text{color:#bf2433}
.mpa-listing-promo .mpa-more .mpa-cta-text{border-bottom-color:#ecc1c6}
@media(min-width:768px) and (max-width:1440px){.mpa-split .mpa-art .mpa-copy{padding-left:20px;padding-right:20px}.mpa-split .mpa-art h2{font-size:28px}.mpa-split .mpa-art .mpa-kicker{font-size:10px;letter-spacing:.1em}}
@media(min-width:768px) and (max-width:1024px){.mpa-split .mpa-art h2{font-size:24px}.mpa-split .mpa-art .mpa-copy{padding:24px 15px}.mpa-split .mpa-art .mpa-cta{padding:10px 12px;gap:12px;font-size:11px}}
@media(max-width:767px){.mpa-banner-complements .mpa-copy{width:100%!important;margin-left:0!important;padding:26px 16px 0!important;text-align:center!important}.mpa-promotion .mpa-copy .mpa-kicker{margin-bottom:8px;font-size:9px}}
@media(max-width:359px){.mpa-banner-complements .mpa-copy{padding-top:22px!important}.mpa-promotion .mpa-copy .mpa-kicker{font-size:8px;padding:4px 8px}}

@media(min-width:768px){.mpa-split .mpa-art .mpa-copy{padding:26px 22px 20px}.mpa-split .mpa-art .mpa-copy .mpa-kicker{margin-bottom:12px}.mpa-split .mpa-art .mpa-copy .mpa-cta{margin-top:16px;min-height:44px}}
@media(min-width:768px) and (max-width:1024px){.mpa-split .mpa-art .mpa-copy{padding:20px 15px}.mpa-split .mpa-art h2{font-size:22px}.mpa-split .mpa-art .mpa-copy .mpa-cta{min-height:40px}}

/* V3: editorial product focus, followed by genuine native POS essentials. */
.elementor-section.mpa-feature{padding:64px 40px 38px!important;background:#fff}
.mpa-feature>.elementor-container>.elementor-row{align-items:center}
.mpa-feature-content>.elementor-column-wrap{padding:0 56px 0 0!important;width:100%}
.mpa-feature-content>.elementor-column-wrap>.elementor-widget-wrap{display:flex;flex-wrap:wrap;align-content:center;align-items:flex-start}
.mpa-feature .mpa-feature-intro{width:100%!important;padding:0 0 28px}
.mpa-feature .mpa-feature-intro h2{font-size:clamp(34px,3.4vw,52px);line-height:1.08}
.mpa-feature .mpa-feature-intro .mpa-description{max-width:490px;margin-top:18px;font-size:15px}
.mpa .mpa-feature-benefit{width:50%!important;margin:0!important;padding:12px 24px 18px 48px;position:relative;box-sizing:border-box;font-family:'DM Sans',sans-serif;color:#333}
.mpa-feature-benefit .mpa-benefit-icon{position:absolute;top:13px;left:0;display:flex;align-items:center;justify-content:center;width:32px;height:36px;font-size:26px;color:#009b8c}
.mpa-feature-benefit:nth-child(3) .mpa-benefit-icon,.mpa-feature-benefit:nth-child(4) .mpa-benefit-icon{color:#b67c06}
.mpa .mpa-feature-benefit h3{font-family:inherit;font-size:15px;line-height:1.4;font-weight:700;letter-spacing:0;text-transform:none;color:#333;margin:0 0 7px}
.mpa .mpa-feature-benefit p{font-family:inherit;font-size:13px;line-height:1.55;color:#333;margin:0;letter-spacing:0}
.mpa-feature .mpa-feature-link{width:100%!important;padding-top:6px}
.mpa-feature .mpa-feature-link .mpa-cta{margin-top:12px}
.mpa-feature .mpa-feature-image{width:100%;margin:0!important}
.mpa-feature .mpa-feature-image img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:6px}
.mpa-feature-visual>.elementor-column-wrap{width:100%}
.elementor-section.mpa-essentials{padding-top:12px!important;padding-bottom:56px!important}
.mpa-essentials .mpa-title h2{font-size:clamp(25px,2.2vw,34px)}
@media(min-width:768px) and (max-width:1100px){
 .elementor-section.mpa-feature{padding:40px 24px 28px!important}
 .mpa-feature-content>.elementor-column-wrap{padding-right:30px!important}
 .mpa-feature .mpa-feature-intro{padding-bottom:16px}
 .mpa .mpa-feature-benefit{padding:10px 12px 14px 33px}
 .mpa-feature-benefit .mpa-benefit-icon{width:23px;font-size:22px}
 .mpa .mpa-feature-benefit h3{font-size:13px}
 .mpa .mpa-feature-benefit p{font-size:12px}
}
@media(max-width:767px){
 .elementor-section.mpa-feature{padding:34px 0 20px!important}
 .mpa-feature-content>.elementor-column-wrap{padding:0 16px!important}
 .mpa-feature .mpa-feature-intro{padding-bottom:16px}
 .mpa-feature .mpa-feature-intro h2{font-size:34px}
 .mpa-feature .mpa-feature-intro .mpa-description{font-size:14px;margin-top:14px}
 .mpa .mpa-feature-benefit{padding:10px 12px 13px 34px}
 .mpa-feature-benefit .mpa-benefit-icon{width:24px;top:10px;font-size:22px}
 .mpa .mpa-feature-benefit h3{font-size:13px}
 .mpa .mpa-feature-benefit p{font-size:12px;line-height:1.5}
 .mpa-feature .mpa-feature-link{padding:0 0 24px}
 .mpa-feature .mpa-feature-image img{border-radius:0;max-height:430px;object-fit:contain;background:#f9f2e8}
 .elementor-section.mpa-essentials{padding-top:10px!important;padding-bottom:36px!important}
 .mpa-essentials .mpa-title{padding-bottom:18px}
 .mpa-essentials .mpa-title h2{font-size:26px}
}

/* MAPARAPHARMACIE HOME SIGNATURE - END */





/* Ajouter à la fin du CSS existant : section catégories Visage uniquement. */
.elementor-section.mpa-face-categories{background:#fff!important;padding:58px 28px 62px!important}
.elementor-section.mpa-face-categories>.elementor-container{max-width:1080px!important;margin:0 auto}
.mpa-face-categories>.elementor-container>.elementor-row>.mpa-face-content{width:100%!important}
.mpa-face-categories .elementor-column-wrap,.mpa-face-categories .elementor-widget-wrap{padding:0!important}
.mpa-face-categories .elementor-widget{margin:0!important}
.mpa-face-categories .mpa-face-heading{text-align:center;padding:0 0 38px!important}
.mpa-face-categories .mpa-face-heading .mpa-kicker{margin:0 0 12px;font:700 11px/1.6 'DM Sans',sans-serif;letter-spacing:2px;color:#009b8c;text-transform:uppercase}
.mpa-face-categories .mpa-face-heading h2{margin:0;color:#333;font:600 36px/1.2 'DM Sans',sans-serif;letter-spacing:-1px;text-transform:none}
.mpa-face-categories .mpa-face-grid{padding:0!important;margin:0!important;width:100%}
.mpa-face-categories .mpa-face-grid>.elementor-container{max-width:none!important}
.mpa-face-categories .mpa-face-grid>.elementor-container>.elementor-row{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:38px;row-gap:34px;width:100%}
.mpa-face-categories .mpa-face-card{grid-column:span 2;width:auto!important;min-width:0;margin:0!important;text-align:center}
.mpa-face-categories .mpa-face-card:nth-child(4){grid-column:2/span 2}
.mpa-face-categories .mpa-face-card:nth-child(5){grid-column:4/span 2}
.mpa-face-categories .mpa-face-card>.elementor-column-wrap{width:100%;background:transparent!important}
.mpa-face-categories .mpa-face-card>.elementor-column-wrap>.elementor-widget-wrap{position:relative;display:block}
.mpa-face-categories .mpa-face-image{width:100%!important}
.mpa-face-categories .mpa-face-image .elementor-image{line-height:0}
.mpa-face-categories .mpa-face-image img{display:block;width:210px!important;max-width:100%!important;height:auto!important;aspect-ratio:1;object-fit:cover;border-radius:50%!important;margin:0 auto;transition:transform .25s ease}
.mpa-face-categories .mpa-face-title,.mpa-face-categories .mpa-face-title>.elementor-widget-container,.mpa-face-categories .mpa-face-title .elementor-text-editor{position:static!important;width:100%!important}
.mpa-face-categories .mpa-face-title h3{margin:17px 0 7px;color:#333;font:600 20px/1.3 'DM Sans',sans-serif;letter-spacing:-.3px;text-transform:none;min-height:26px}
.mpa-face-categories .mpa-face-title a{color:#333;text-decoration:none!important}
.mpa-face-categories .mpa-face-title a:after{content:'';position:absolute;inset:0;z-index:2;border-radius:8px}
.mpa-face-categories .mpa-face-title a:focus-visible{outline:none}
.mpa-face-categories .mpa-face-title a:focus-visible:after{outline:2px solid #009b8c;outline-offset:6px}
.mpa-face-categories .mpa-face-title p{margin:0;color:#009b8c;font:600 12px/1.5 'DM Sans',sans-serif;letter-spacing:.4px}
.mpa-face-categories .mpa-face-title p span{margin-left:5px}
@media(hover:hover){.mpa-face-categories .mpa-face-card:hover .mpa-face-image img{transform:translateY(-3px)}.mpa-face-categories .mpa-face-card:hover .mpa-face-title a{color:#009b8c}}
@media(min-width:768px) and (max-width:1024px){.elementor-section.mpa-face-categories{padding:44px 28px 48px!important}.mpa-face-categories .mpa-face-grid>.elementor-container>.elementor-row{column-gap:28px;row-gap:30px}.mpa-face-categories .mpa-face-image img{width:185px!important}.mpa-face-categories .mpa-face-title h3{font-size:18px}}
@media(max-width:767px){
 .elementor-section.mpa-face-categories{padding:34px 20px 40px!important}
 .mpa-face-categories .mpa-face-heading{padding-bottom:28px!important}
 .mpa-face-categories .mpa-face-heading h2{font-size:28px;letter-spacing:-.7px}
 .mpa-face-categories .mpa-face-heading .mpa-kicker{font-size:10px;letter-spacing:1.7px;margin-bottom:10px}
 .mpa-face-categories .mpa-face-grid>.elementor-container>.elementor-row{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:22px;row-gap:28px}
 .mpa-face-categories .mpa-face-card:nth-child(3){grid-column:2/span 2}
 .mpa-face-categories .mpa-face-card:nth-child(4),.mpa-face-categories .mpa-face-card:nth-child(5){grid-column:span 2}
 .mpa-face-categories .mpa-face-image img{width:150px!important}
 .mpa-face-categories .mpa-face-title h3{font-size:17px;margin-top:12px;letter-spacing:-.3px;min-height:0}
 .mpa-face-categories .mpa-face-title p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.mpa-face-categories .mpa-face-image img{transition:none}}




/* À ajouter à la fin du CSS actuel. Uniquement les quatre catégories Cheveux. */
.elementor-section.mpa-hair-categories{background:#fff!important;padding:44px 28px 56px!important}
.elementor-section.mpa-hair-categories>.elementor-container{max-width:1120px!important;margin:0 auto}
.mpa-hair-categories>.elementor-container>.elementor-row>.mpa-hair-content{width:100%!important}
.mpa-hair-categories .elementor-column-wrap,.mpa-hair-categories .elementor-widget-wrap{padding:0!important}
.mpa-hair-categories .elementor-widget{margin:0!important}
.mpa-hair-categories .mpa-hair-heading{text-align:center;padding:0 0 34px!important}
.mpa-hair-categories .mpa-hair-heading .mpa-kicker{margin:0 0 12px;font:700 11px/1.6 'DM Sans',sans-serif;letter-spacing:2px;color:#009b8c;text-transform:uppercase}
.mpa-hair-categories .mpa-hair-heading h2{margin:0;color:#333;font:600 34px/1.2 'DM Sans',sans-serif;letter-spacing:-1px;text-transform:none}
.mpa-hair-categories .mpa-hair-grid{padding:0!important;margin:0!important;width:100%}
.mpa-hair-categories .mpa-hair-grid>.elementor-container{max-width:none!important}
.mpa-hair-categories .mpa-hair-grid>.elementor-container>.elementor-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;width:100%}
.mpa-hair-categories .mpa-hair-card{width:auto!important;min-width:0;margin:0!important;text-align:center}
.mpa-hair-categories .mpa-hair-card>.elementor-column-wrap{width:100%;background:transparent!important}
.mpa-hair-categories .mpa-hair-card>.elementor-column-wrap>.elementor-widget-wrap{position:relative;display:block}
.mpa-hair-categories .mpa-hair-image{width:100%!important}
.mpa-hair-categories .mpa-hair-image .elementor-image{line-height:0}
.mpa-hair-categories .mpa-hair-image img{display:block;width:210px!important;max-width:100%!important;height:auto!important;aspect-ratio:1;object-fit:cover;border-radius:50%!important;margin:0 auto;transition:transform .25s ease}
.mpa-hair-categories .mpa-hair-title,.mpa-hair-categories .mpa-hair-title>.elementor-widget-container,.mpa-hair-categories .mpa-hair-title .elementor-text-editor{position:static!important;width:100%!important}
.mpa-hair-categories .mpa-hair-title h3{margin:16px 0 7px;color:#333;font:600 19px/1.3 'DM Sans',sans-serif;letter-spacing:-.3px;text-transform:none;min-height:26px}
.mpa-hair-categories .mpa-hair-title a{color:#333;text-decoration:none!important}
.mpa-hair-categories .mpa-hair-title a:after{content:'';position:absolute;inset:0;z-index:2;border-radius:8px}
.mpa-hair-categories .mpa-hair-title a:focus-visible{outline:none}
.mpa-hair-categories .mpa-hair-title a:focus-visible:after{outline:2px solid #009b8c;outline-offset:6px}
.mpa-hair-categories .mpa-hair-title p{margin:0;color:#009b8c;font:600 12px/1.5 'DM Sans',sans-serif;letter-spacing:.4px}
.mpa-hair-categories .mpa-hair-title p span{margin-left:5px}
@media(hover:hover){.mpa-hair-categories .mpa-hair-card:hover .mpa-hair-image img{transform:translateY(-3px)}.mpa-hair-categories .mpa-hair-card:hover .mpa-hair-title a{color:#009b8c}}
@media(min-width:768px) and (max-width:1024px){.elementor-section.mpa-hair-categories{padding:38px 24px 44px!important}.mpa-hair-categories .mpa-hair-grid>.elementor-container>.elementor-row{gap:22px}.mpa-hair-categories .mpa-hair-image img{width:180px!important}.mpa-hair-categories .mpa-hair-title h3{font-size:16px;min-height:42px}}
@media(max-width:767px){
 .elementor-section.mpa-hair-categories{padding:32px 20px 40px!important}
 .mpa-hair-categories .mpa-hair-heading{padding-bottom:28px!important}
 .mpa-hair-categories .mpa-hair-heading h2{font-size:28px;letter-spacing:-.7px}
 .mpa-hair-categories .mpa-hair-heading .mpa-kicker{font-size:10px;letter-spacing:1.7px;margin-bottom:10px}
 .mpa-hair-categories .mpa-hair-grid>.elementor-container>.elementor-row{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;row-gap:28px}
 .mpa-hair-categories .mpa-hair-image img{width:150px!important}
 .mpa-hair-categories .mpa-hair-title h3{font-size:16px;margin-top:12px;letter-spacing:-.3px;min-height:42px}
 .mpa-hair-categories .mpa-hair-title p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.mpa-hair-categories .mpa-hair-image img{transition:none}}




/* Footer MaParapharmacie : tous les sélecteurs ciblent uniquement .mpf. */
#footer:has(.mpf){margin-top:0!important;padding-top:0!important;background:#fff!important}
.elementor-section.mpf{margin:0!important;font-family:'DM Sans',sans-serif;color:#333}
.mpf>.elementor-container{max-width:1360px!important;margin:0 auto}
.mpf>.elementor-container>.elementor-row{display:flex;flex-wrap:wrap;align-items:flex-start}
.mpf .elementor-column-wrap,.mpf .elementor-widget-wrap{padding:0!important;width:100%}
.mpf .elementor-widget{margin:0!important}
.mpf h3,.mpf p{font-family:'DM Sans',sans-serif;letter-spacing:0;text-transform:none}
.mpf ul{list-style:none!important;padding:0!important;margin:0!important}
.mpf a{text-decoration:none;color:inherit}
.mpf a:focus-visible{outline:2px solid #009b8c;outline-offset:5px}
.elementor-section.mpf-reassurance{padding:34px 36px!important;background:#007f73!important;color:#fff}
.mpf-reassurance .mpf-service-col{width:33.333333%!important;padding:0 26px!important}
.mpf .mpf-service{text-align:center}
.mpf .mpf-service a{display:block;color:#fff!important}
.mpf .mpf-service .mpf-service-icon{font-size:36px;line-height:1;display:block;margin:0 0 18px;color:#fff}
.mpf .mpf-service h3{font-size:18px;font-weight:600;line-height:1.35;margin:0 0 10px;color:#fff}
.mpf .mpf-service p{font-size:14px;line-height:1.7;color:#fff;margin:0}
.mpf .mpf-service a:focus-visible{outline-color:#f7c649}
.elementor-section.mpf-main{padding:64px 36px 62px!important;background:#fff!important}
.mpf-main .mpf-brand{width:30%!important;padding-right:44px!important}
.mpf-main .mpf-info,.mpf-main .mpf-shopping{width:16%!important;padding-right:22px!important}
.mpf-main .mpf-news{width:38%!important;padding-left:26px!important}
.mpf .mpf-logo .elementor-image{text-align:left;line-height:0}
.mpf .mpf-logo img{display:block;width:275px!important;max-width:100%!important;height:auto!important;margin:0}
.mpf .mpf-intro{margin-top:22px!important}
.mpf .mpf-intro p{font-size:14px;line-height:1.8;color:#333;margin:0}
.mpf .mpf-contact{margin-top:23px!important}
.mpf .mpf-contact li{display:flex;align-items:baseline;gap:12px;padding:0 0 12px;font-size:14px;line-height:1.5;color:#333}
.mpf .mpf-contact i{flex:0 0 18px;width:18px;text-align:center;color:#009b8c;font-size:18px}
.mpf .mpf-contact a{overflow-wrap:anywhere;color:#333}
.mpf .mpf-heading h3{font-size:17px;font-weight:700;line-height:1.45;margin:0 0 25px;color:#333}
.mpf .mpf-links li{padding:0 0 12px;line-height:1.6;font-size:14px;color:#333}
.mpf .mpf-links a:hover,.mpf .mpf-contact a:hover,.mpf .mpf-copyright a:hover{color:#007f73;text-decoration:underline}
.mpf .mpf-news-copy p{font-size:14px;line-height:1.75;color:#333;margin:0 0 21px}
.mpf .mpf-newsletter .block_newsletter,.mpf .mpf-newsletter .pos-newsletter-widget{width:100%;max-width:none;padding:0;margin:0;background:transparent}
.mpf .mpf-newsletter form{display:flex;flex-wrap:wrap;position:relative;width:100%;margin:0;background:#fff;border:1px solid #dce4e1;border-radius:30px;min-height:56px;overflow:visible}
.mpf .mpf-newsletter input[type=email]{flex:1 1 0;min-width:0;width:calc(100% - 56px)!important;height:54px!important;margin:0!important;border:0!important;border-radius:30px!important;background:transparent!important;padding:0 18px!important;font:400 14px/1.4 'DM Sans',sans-serif;color:#333;box-shadow:none!important}
.mpf .mpf-newsletter input[type=email]::placeholder{color:#666;opacity:1}
.mpf .mpf-newsletter form:focus-within{outline:2px solid #009b8c;outline-offset:3px}
.mpf .mpf-newsletter button{flex:0 0 54px!important;position:relative;width:54px!important;min-width:54px!important;height:54px!important;min-height:54px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;color:#007f73!important;box-shadow:none!important}
.mpf .mpf-newsletter button>span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.mpf .mpf-newsletter button:after{content:'↗';font:400 27px/54px 'DM Sans',sans-serif;display:block}
.mpf .mpf-newsletter button:hover{background:#eaf5f2!important;color:#007f73!important}
.mpf .mpf-newsletter .pos-newsletter-response{flex:0 0 100%;width:100%;font-size:13px;line-height:1.5}
.mpf .mpf-newsletter .pos-newsletter-response:empty{display:none}
.mpf .mpf-newsletter .pos-newsletter-response:not(:empty){padding:10px 16px}
.mpf .mpf-consent p{font-size:12px;line-height:1.7;margin:16px 0 0;color:#333}
.mpf .mpf-social{margin-top:23px!important}
.mpf .mpf-social ul{display:flex;gap:10px}
.mpf .mpf-social a{display:flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid #dce4e1;border-radius:50%;color:#333;font-size:16px}
.mpf .mpf-social a:hover{background:#007f73;border-color:#007f73;color:#fff}
.elementor-section.mpf-bottom{padding:0 36px 24px!important;background:#fff!important}
.mpf-bottom>.elementor-container{border-top:1px solid #e4e9e6;padding-top:22px}
.mpf-bottom>.elementor-container>.elementor-row{align-items:center}
.mpf-bottom .mpf-bottom-left{width:72%!important}
.mpf-bottom .mpf-bottom-right{width:28%!important}
.mpf .mpf-copyright p{font-size:12px;line-height:1.7;margin:0;color:#333}
.mpf .mpf-credit{display:inline-block;margin-left:15px}
.mpf .mpf-credit a{text-decoration:underline}
.mpf .mpf-payment p{display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:12px;line-height:1.7;margin:0;color:#333}
.mpf .mpf-payment i{color:#007f73;font-size:16px}
@media(min-width:768px) and (max-width:1100px){
 .elementor-section.mpf-main{padding:44px 28px!important}
 .mpf-main .mpf-brand{width:50%!important;padding-right:36px!important;padding-bottom:36px!important}
 .mpf-main .mpf-info,.mpf-main .mpf-shopping{width:25%!important;padding-right:18px!important}
 .mpf-main .mpf-news{width:100%!important;padding-left:0!important;max-width:600px}
 .mpf-main .mpf-news .mpf-heading h3{margin-bottom:14px}
}
@media(max-width:767px){
 .elementor-section.mpf-reassurance{padding:26px 24px!important}
 .mpf-reassurance .mpf-service-col{width:100%!important;padding:18px 0!important}
 .mpf-reassurance .mpf-service-col+.mpf-service-col{border-top:1px solid #ffffff2b}
 .mpf .mpf-service{text-align:left}
 .mpf .mpf-service a{position:relative;padding-left:55px}
 .mpf .mpf-service .mpf-service-icon{position:absolute;left:0;top:4px;font-size:30px;margin:0}
 .mpf .mpf-service h3{font-size:16px;margin-bottom:5px}
 .mpf .mpf-service p{font-size:13px}
 .elementor-section.mpf-main{padding:38px 22px 34px!important}
 .mpf-main .mpf-brand{width:100%!important;padding-right:0!important;padding-bottom:30px!important}
 .mpf .mpf-logo img{width:245px!important}
 .mpf .mpf-intro{margin-top:18px!important}
 .mpf .mpf-contact{margin-top:20px!important}
 .mpf .mpf-contact li{font-size:13px}
 .mpf-main .mpf-info,.mpf-main .mpf-shopping{width:50%!important;padding:0 10px 30px 0!important}
 .mpf .mpf-heading h3{font-size:16px;margin-bottom:18px}
 .mpf .mpf-links li{font-size:13px;padding-bottom:11px}
 .mpf-main .mpf-news{width:100%!important;padding:0!important}
 .mpf .mpf-news-copy p{font-size:13px;margin-bottom:18px}
 .mpf .mpf-news .mpf-heading h3{margin-bottom:13px}
 .mpf .mpf-social{margin-top:20px!important}
 .elementor-section.mpf-bottom{padding:0 22px 22px!important}
 .mpf-bottom>.elementor-container{padding-top:20px}
 .mpf-bottom .mpf-bottom-left,.mpf-bottom .mpf-bottom-right{width:100%!important}
 .mpf .mpf-copyright p{font-size:11px;line-height:1.8}
 .mpf .mpf-credit{display:block;margin-left:0}
 .mpf .mpf-payment p{justify-content:flex-start;font-size:11px;margin-top:12px}
}

.mpf .mpf-facebook-mark{font:700 21px/1 Arial,sans-serif;display:block}
