

/* Start:/local/templates/main/assets/css/animate.css?177252514268760*/
@charset "UTF-8";

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT

Copyright (c) 2013 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;
}

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -webkit-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
}

@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  0%, 50%, 100% {
    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 {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  50% {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  30% {
    -webkit-transform: scaleX(1.25) scaleY(0.75);
    transform: scaleX(1.25) scaleY(0.75);
  }

  40% {
    -webkit-transform: scaleX(0.75) scaleY(1.25);
    transform: scaleX(0.75) scaleY(1.25);
  }

  60% {
    -webkit-transform: scaleX(1.15) scaleY(0.85);
    transform: scaleX(1.15) scaleY(0.85);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes rubberBand {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  30% {
    -webkit-transform: scaleX(1.25) scaleY(0.75);
    -ms-transform: scaleX(1.25) scaleY(0.75);
    transform: scaleX(1.25) scaleY(0.75);
  }

  40% {
    -webkit-transform: scaleX(0.75) scaleY(1.25);
    -ms-transform: scaleX(0.75) scaleY(1.25);
    transform: scaleX(0.75) scaleY(1.25);
  }

  60% {
    -webkit-transform: scaleX(1.15) scaleY(0.85);
    -ms-transform: scaleX(1.15) scaleY(0.85);
    transform: scaleX(1.15) scaleY(0.85);
  }

  100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
}

@keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
    -ms-transform: translateX(10px);
    transform: translateX(10px);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }

  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }

  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }

  100% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    transform: rotate(15deg);
  }

  40% {
    -webkit-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  60% {
    -webkit-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    transform: rotate(5deg);
  }

  80% {
    -webkit-transform: rotate(-5deg);
    -ms-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }

  100% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
    transform: scale(0.9) rotate(-3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
    transform: scale(1.1) rotate(3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
    transform: scale(1.1) rotate(-3deg);
  }

  100% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}

@keyframes tada {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
    -ms-transform: scale(0.9) rotate(-3deg);
    transform: scale(0.9) rotate(-3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
    -ms-transform: scale(1.1) rotate(3deg);
    transform: scale(1.1) rotate(3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
    -ms-transform: scale(1.1) rotate(-3deg);
    transform: scale(1.1) rotate(-3deg);
  }

  100% {
    -webkit-transform: scale(1) rotate(0);
    -ms-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
    transform: translateX(-25%) rotate(-5deg);
  }

  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
    transform: translateX(20%) rotate(3deg);
  }

  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
    transform: translateX(-15%) rotate(-3deg);
  }

  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
    transform: translateX(10%) rotate(2deg);
  }

  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
    transform: translateX(-5%) rotate(-1deg);
  }

  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
  }

  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
    -ms-transform: translateX(-25%) rotate(-5deg);
    transform: translateX(-25%) rotate(-5deg);
  }

  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
    -ms-transform: translateX(20%) rotate(3deg);
    transform: translateX(20%) rotate(3deg);
  }

  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
    -ms-transform: translateX(-15%) rotate(-3deg);
    transform: translateX(-15%) rotate(-3deg);
  }

  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
    -ms-transform: translateX(10%) rotate(2deg);
    transform: translateX(10%) rotate(2deg);
  }

  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
    -ms-transform: translateX(-5%) rotate(-1deg);
    transform: translateX(-5%) rotate(-1deg);
  }

  100% {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3);
    transform: scale(.3);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }

  70% {
    -webkit-transform: scale(.9);
    transform: scale(.9);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3);
    -ms-transform: scale(.3);
    transform: scale(.3);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
  }

  70% {
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }

  80% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
  }

  80% {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
  }

  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
  }

  80% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
  }

  80% {
    -webkit-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
  }

  80% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    -ms-transform: translateX(-30px);
    transform: translateX(-30px);
  }

  80% {
    -webkit-transform: translateX(10px);
    -ms-transform: translateX(10px);
    transform: translateX(10px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  80% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  80% {
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
  }

  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  25% {
    -webkit-transform: scale(.95);
    transform: scale(.95);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.3);
    transform: scale(.3);
  }
}

@keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  25% {
    -webkit-transform: scale(.95);
    -ms-transform: scale(.95);
    transform: scale(.95);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.3);
    -ms-transform: scale(.3);
    transform: scale(.3);
  }
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

@keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

@keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
}

@keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}

@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }
}

@keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}

@keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(-360deg) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(-360deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(0deg) scale(.95);
    transform: perspective(400px) translateZ(0) rotateY(0deg) scale(.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  100% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(0deg) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(0deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  0% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(-360deg) scale(1);
    -ms-transform: perspective(400px) translateZ(0) rotateY(-360deg) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(-360deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);
    -ms-transform: perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);
    -ms-transform: perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(0deg) scale(.95);
    -ms-transform: perspective(400px) translateZ(0) rotateY(0deg) scale(.95);
    transform: perspective(400px) translateZ(0) rotateY(0deg) scale(.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  100% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(0deg) scale(1);
    -ms-transform: perspective(400px) translateZ(0) rotateY(0deg) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(0deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  -ms-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }

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

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

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

@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    -ms-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
    -ms-transform: perspective(400px) rotateX(-10deg);
    transform: perspective(400px) rotateX(-10deg);
  }

  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    -ms-transform: perspective(400px) rotateX(10deg);
    transform: perspective(400px) rotateX(10deg);
  }

  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    -ms-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
    transform: perspective(400px) rotateY(-10deg);
  }

  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    -ms-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
    -ms-transform: perspective(400px) rotateY(-10deg);
    transform: perspective(400px) rotateY(-10deg);
  }

  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    -ms-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    -ms-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    -ms-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    -ms-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    -ms-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    -ms-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}

@keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    -ms-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    -ms-transform: translateX(-20%) skewX(30deg);
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    -ms-transform: translateX(0%) skewX(-15deg);
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    -ms-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    -ms-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    -ms-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) 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 {
  0% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    transform: rotate(-200deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    -ms-transform: rotate(-200deg);
    transform: rotate(-200deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(200deg);
    transform: rotate(200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(200deg);
    -ms-transform: rotate(200deg);
    transform: rotate(200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes slideInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes slideInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

@keyframes slideOutLeft {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

@keyframes slideOutRight {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

@-webkit-keyframes slideInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes slideInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@keyframes slideOutDown {
  0% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(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: rotate(80deg);
    transform: rotate(80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40% {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    transform: rotate(60deg) translateY(0);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  100% {
    -webkit-transform: translateY(700px);
    transform: translateY(700px);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: top left;
    -ms-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: rotate(80deg);
    -ms-transform: rotate(80deg);
    transform: rotate(80deg);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40% {
    -webkit-transform: rotate(60deg);
    -ms-transform: rotate(60deg);
    transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    -ms-transform: rotate(60deg) translateY(0);
    transform: rotate(60deg) translateY(0);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  100% {
    -webkit-transform: translateY(700px);
    -ms-transform: translateY(700px);
    transform: translateY(700px);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
    transform: translateX(-100%) rotate(-120deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }
}

@keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
    -ms-transform: translateX(-100%) rotate(-120deg);
    transform: translateX(-100%) rotate(-120deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    -ms-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
    transform: translateX(100%) rotate(120deg);
  }
}

@keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    -ms-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
    -ms-transform: translateX(100%) rotate(120deg);
    transform: translateX(100%) rotate(120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3);
    transform: scale(.3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3);
    -ms-transform: scale(.3);
    transform: scale(.3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(-2000px);
    transform: scale(.1) translateY(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(60px);
    transform: scale(.475) translateY(60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(-2000px);
    -ms-transform: scale(.1) translateY(-2000px);
    transform: scale(.1) translateY(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(60px);
    -ms-transform: scale(.475) translateY(60px);
    transform: scale(.475) translateY(60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(-2000px);
    transform: scale(.1) translateX(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(48px);
    transform: scale(.475) translateX(48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(-2000px);
    -ms-transform: scale(.1) translateX(-2000px);
    transform: scale(.1) translateX(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(48px);
    -ms-transform: scale(.475) translateX(48px);
    transform: scale(.475) translateX(48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(2000px);
    transform: scale(.1) translateX(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(-48px);
    transform: scale(.475) translateX(-48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(2000px);
    -ms-transform: scale(.1) translateX(2000px);
    transform: scale(.1) translateX(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(-48px);
    -ms-transform: scale(.475) translateX(-48px);
    transform: scale(.475) translateX(-48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(2000px);
    transform: scale(.1) translateY(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(-60px);
    transform: scale(.475) translateY(-60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(2000px);
    -ms-transform: scale(.1) translateY(2000px);
    transform: scale(.1) translateY(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(-60px);
    -ms-transform: scale(.475) translateY(-60px);
    transform: scale(.475) translateY(-60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(.3);
    transform: scale(.3);
  }

  100% {
    opacity: 0;
  }
}

@keyframes zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  50% {
    opacity: 0;
    -webkit-transform: scale(.3);
    -ms-transform: scale(.3);
    transform: scale(.3);
  }

  100% {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(-60px);
    transform: scale(.475) translateY(-60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(2000px);
    transform: scale(.1) translateY(2000px);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(-60px);
    -ms-transform: scale(.475) translateY(-60px);
    transform: scale(.475) translateY(-60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(2000px);
    -ms-transform: scale(.1) translateY(2000px);
    transform: scale(.1) translateY(2000px);
    -webkit-transform-origin: center bottom;
    -ms-transform-origin: center bottom;
    transform-origin: center bottom;
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(42px);
    transform: scale(.475) translateX(42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(-2000px);
    transform: scale(.1) translateX(-2000px);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(42px);
    -ms-transform: scale(.475) translateX(42px);
    transform: scale(.475) translateX(42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(-2000px);
    -ms-transform: scale(.1) translateX(-2000px);
    transform: scale(.1) translateX(-2000px);
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(-42px);
    transform: scale(.475) translateX(-42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(2000px);
    transform: scale(.1) translateX(2000px);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateX(-42px);
    -ms-transform: scale(.475) translateX(-42px);
    transform: scale(.475) translateX(-42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateX(2000px);
    -ms-transform: scale(.1) translateX(2000px);
    transform: scale(.1) translateX(2000px);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(60px);
    transform: scale(.475) translateY(60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(-2000px);
    transform: scale(.1) translateY(-2000px);
    -webkit-transform-origin: center top;
    transform-origin: center top;
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale(.475) translateY(60px);
    -ms-transform: scale(.475) translateY(60px);
    transform: scale(.475) translateY(60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.1) translateY(-2000px);
    -ms-transform: scale(.1) translateY(-2000px);
    transform: scale(.1) translateY(-2000px);
    -webkit-transform-origin: center top;
    -ms-transform-origin: center top;
    transform-origin: center top;
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}
/* End */


/* Start:/local/templates/main/components/bitrix/menu/header_menu/style.css?17733292993839*/
@media (max-width: 1200px) {
    .header__bottom-nav {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        top: 100px;
        z-index: 9999;
        background: var(--black);
        display: block !important;
        transform: translateX(100%);
        transition: transform .25s ease;
        overflow: hidden;
    }

    .header--menu-open .header__bottom-nav {
        transform: translateX(0);
    }

    .header__bottom-nav .header__bottom-list {
        margin: 0;
        padding: 16px;
        list-style: none;
        height: 100%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        flex-direction: column;
        display: block;
    }

    .header__bottom-item {
        position: relative;
        border-bottom: 1px solid rgba(255,255,255,.12);
    }

    .header__bottom-item-link {
        display: flex;
        align-items: center;
        justify-content: space-between;

        padding: 16px 44px 16px 0;
        text-decoration: none;
    }

    .header__mobile-toggle {
        position: absolute;
        top: 0;
        right: 0;
        width: 44px;
        display: inline-flex;
        justify-content: center;

        background: transparent;
        border: 0;
        cursor: pointer;
        color: #fff;
        opacity: .9;
        height: 50px;
        align-items: anchor-center;
    }

    .header__mobile-toggle::before {
        content: "";
        width: 8px;
        height: 8px;
        border-right: 2px solid rgba(255,255,255,.85);
        border-bottom: 2px solid rgba(255,255,255,.85);
        transform: rotate(45deg);
        transition: transform .2s ease;
    }

    .header__bottom-item.is-expanded > .header__mobile-toggle::before {
        transform: rotate(-135deg);
    }

    .header__mega {
        position: static !important;
        left: auto !important;
        top: auto !important;
        width: auto !important;

        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;

        background: transparent !important;
        padding: 0 !important;
        transform: none !important;
        transition: none !important;

        /* аккордеон */
        max-height: 0;
        overflow: hidden;
        transition: max-height .25s ease;
        border-top: 1px solid rgba(255,255,255,.08);
    }
    .header__mega::before {
        display: none !important;
    }
    .header__bottom-item.is-expanded > .header__mega {
        max-height: 2000px;
    }

    /* сетку в колонку */
    .header__mega .header__container {
        padding: 0;
    }
    .header__mega-grid {
        display: block;
        grid-template-columns: repeat(1, 1fr) !important;
        padding: 0;
        gap: 16px !important;
    }

    .has-mega.is-expanded .header__mega {
        border-top: none;
    }

    .mega-col {
        border-bottom: 1px solid rgba(255,255,255,.08);
    }
    .mega-col:last-child {
        border-bottom: 0;
    }

    .mega-title {
        display: block;
        text-decoration: none;
        color: #D4E1F5 !important;
    }

    .mega-link {
        display: block;
        text-decoration: none;
        opacity: .9;
        color: #fff !important;
    }

    body.is-locked {
        overflow: hidden;
        touch-action: none;
    }

    .header__bottom-item.has-mega:hover .header__mega,
    .header__bottom-item.has-mega:focus-within .header__mega{
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}

@media (max-device-width: 820px) {
    .header__bottom-nav {
        top: 159px;
    }
}
/* End */


/* Start:/local/templates/main/components/bitrix/breadcrumb/breadcrumb/style.css?1772525142480*/
.breadcrumb {
   background: var(--gray-3);
   padding: 16px 0;
}
.breadcrumb ul {
   display: flex;
   flex-direction: row;
   align-items: center;
   gap: 13.5px;
   flex-wrap: wrap;
}
.breadcrumb span {
   font-size: 5.6px;
   transform: rotate(-90deg) translateY(2px);
}
.breadcrumb a {
   position: relative;
}
.breadcrumb a::before {
   position: absolute;
   content: "";
   height: 1px;
   background: #a5a5a5;
   width: 100%;
   bottom: -2px;
}

/* End */


/* Start:/local/templates/main/template_styles.css?178006712239758*/
@font-face {
	font-family: "Pretendard";
	font-display: swap;
	src:
		url("/local/templates/main/./assets/fonts/Pretendard-Light.woff") format("woff"),
		url("/local/templates/main/./assets/fonts/Pretendard-Light.woff2") format("woff2");
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: "Pretendard";
	font-display: swap;
	src:
		url("/local/templates/main/./assets/fonts/Pretendard-Regular.woff") format("woff"),
		url("/local/templates/main/./assets/fonts/Pretendard-Regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: "Pretendard";
	font-display: swap;
	src:
		url("/local/templates/main/./assets/fonts/Pretendard-Medium.woff") format("woff"),
		url("/local/templates/main/./assets/fonts/Pretendard-Medium.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: "Pretendard";
	font-display: swap;
	src:
		url("/local/templates/main/./assets/fonts/Pretendard-SemiBold.woff") format("woff"),
		url("/local/templates/main/./assets/fonts/Pretendard-SemiBold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: "Pretendard";
	font-display: swap;
	src:
		url("/local/templates/main/./assets/fonts/Pretendard-Bold.woff") format("woff"),
		url("/local/templates/main/./assets/fonts/Pretendard-Bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: "Pretendard";
	font-display: swap;
	src:
		url("/local/templates/main/./assets/fonts/Pretendard-ExtraBold.woff") format("woff"),
		url("/local/templates/main/./assets/fonts/Pretendard-ExtraBold.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
}

@font-face {
	font-family: "ico";
	src: url("/local/templates/main/./assets/fonts/ico.eot?zej317");
	src:
		url("/local/templates/main/./assets/fonts/ico.eot?zej317#iefix") format("embedded-opentype"),
		url("/local/templates/main/./assets/fonts/ico.ttf?zej317") format("truetype"),
		url("/local/templates/main/./assets/fonts/ico.woff?zej317") format("woff"),
		url("/local/templates/main/./assets/fonts/ico.svg?zej317#ico") format("svg");
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

:root {
	--font-primary: "Pretendard";
	--black: #0f0f0f;
	--gray-1: #353535;
	--gray-2: #666666;
	--gray-3: #ededed;
	--gray-4: #f9f9f9;
	--white: #ffffff;
	--blue-1: #4e4cb0;
	--blue-2: #7a79d3;
	--blue-3: #d4e1f5;
	--blue-4: #e5edf6;
	--green: #00a4a7;
	--green-2: #25bec4;
	--red: #f85957;
	--transition: all 0.3s ease;
	--modal-bg: #4e4cb0;
	--text: #fff;
	--accent: #00a4a7;
	--error: #f85957;
}

* {
	padding: 0px;
	margin: 0px;
	border: 0px;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

:focus,
:active {
	outline: none;
}

a:focus,
a:active {
	outline: none;
}

body {
	color: var(--black);
	font-size: 14px;
	line-height: 1.1;
	font-family: var(--font-primary), sans-serif;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

input,
button,
textarea {
	font-family: var(--font-primary);
	font-size: inherit;
	line-height: inherit;
}

button {
	cursor: pointer;
	color: inherit;
	background-color: transparent;
}

a {
	color: inherit;
	text-decoration: none;
	cursor: pointer;
}

ul li {
	list-style: none;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: inherit;
	font-size: inherit;
}

body.lock {
	overflow: hidden;
	touch-action: none;
	overscroll-behavior: none;
}

.wrapper {
	min-height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

header {
	position: relative;
}

.sticky-header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
	transition: var(--transition);
}

@supports (overflow: clip) {
	.wrapper {
		overflow: clip;
	}
}

.wrapper footer>main {
	flex: 1 1 auto;
}

/* Фикс для слайдеров */
.wrapper>* {
	min-width: 0;
}

[class*="__container"] {
	margin: 0 auto;
	max-width: 1232px;
	padding: 0 16px;
}

@media (max-width: 1232px) {
	[class*="__container"] {
		max-width: 100vw;
	}
}

@media (max-width: 720px) {
	[class*="__container"] {}
}

[class^="icon_"],
[class*=" icon_"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: "ico" !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* --------------------- */
.h1 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 800;
	font-size: 70px;
	line-height: 100%;
	letter-spacing: -0.02em;
}

.h2 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 700;
	font-size: 42px;
	line-height: 100%;
	letter-spacing: -0.02em;
}

.h3 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 700;
	font-size: 32px;
	line-height: 100%;
	letter-spacing: -0.02em;
}

.h4a {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 300;
	font-size: 24px;
	line-height: 100%;
	letter-spacing: -0.02em;
}

.h4b {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 600;
	font-size: 24px;
	line-height: 100%;
	letter-spacing: -0.02em;
}

.p1 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	font-size: 18px;
	line-height: 120%;
	letter-spacing: -0.02em;
}

.p2 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 140%;
	letter-spacing: -0.02em;
}

.p3 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 120%;
	letter-spacing: -0.02em;
}

.l1 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 400;
	font-size: 14px;
	line-height: 100%;
	letter-spacing: -0.02em;
}

.l2 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	font-size: 12px;
	line-height: 16px;
	letter-spacing: -0.02em;
}

.l4 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 18px;
	letter-spacing: -0.02em;
}

.c1 {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 700;
	font-size: 108px;
	line-height: 80%;
	letter-spacing: -0.02em;
}

.c2 {
	font-weight: 500;
	font-style: Medium;
	font-size: 12px;

	line-height: 16px;
	letter-spacing: -0.02em;
}

.text-center {
	text-align: center;
}

.blue-1 {
	color: var(--blue-1);
}

.gray-2 {
	color: var(--gray-2);
}

.gray-3 {
	color: var(--gray-3);
}

.gray-4 {
	color: var(--gray-4);
}

.white {
	color: var(--white);
}

.white-half {
	color: var(--white);
	opacity: 0.5;
}

.h2-title {
	margin-bottom: 24px;
}

/* --------------------- */
.icon_phone:before {
	content: "\e90c";
}

.icon_chevron:before {
	content: "\e901";
}

.icon_calendar:before {
	content: "\e902";
}

.icon_burger:before {
	content: "\e903";
}

.icon_arrow:before {
	content: "\e900";
}

.icon_close:before {
	content: "\e904";
}

.icon_info:before {
	content: "\e905";
}

.icon_instagram:before {
	content: "\e906";
}

.icon_location:before {
	content: "\e907";
}

.icon_rutube:before {
	content: "\e908";
}

.icon_search:before {
	content: "\e909";
}

.icon_telegram:before {
	content: "\e90a";
}

.icon_vk:before {
	content: "\e90b";
}

.btn-circle {
	width: 100px;
	height: 100px;
	border-radius: 50%;
	transition: all 0.3s ease 0s;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.btn-blue {
	background: var(--blue-1);
}

.btn-green {
	background: var(--green);
}

.btn {
	padding: 15.5px 20px;
	border-radius: 99px;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex: none;
	order: 0;
	flex-grow: 0;
	transition: all 0.3s ease 0s;
	cursor: pointer;
}

.btn-2 {
	padding: 12.5px 16px;
	border-radius: 99px;
	display: inline-flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex: none;
	order: 0;
	flex-grow: 0;
	transition: all 0.3s ease 0s;
	cursor: pointer;
	font-weight: 500;
	font-size: 14px;
	line-height: 120%;
	letter-spacing: -0.02em;
}

.btn-black {
	background: var(--black);
}

.btn-circle:hover {
	transform: scale(1.1);
}

.btn-blue:hover {
	background: var(--blue-2);
}

.btn-black:hover {
	background: var(--gray-1);
}

.btn-green:hover {
	background: var(--green-2);
}

/* --------------------- */
header {
	background: var(--black);
}

.header__wrapper {
	display: flex;
	gap: 15px;
	justify-content: space-between;
	align-items: center;
}

.header__top {
	padding: 12px 0 8px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.header__top-wrapper {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: end;
}

.header__top-nav {}

.header__top-list {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 24px;
}

.header__top-item-wr {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 4px;
}

.header__top-item-link {
	transition: all 0.3s ease 0s;
}

.header__top-item-icon {
	font-size: 16px;
	transition: all 0.3s ease 0s;
}

.header__top-item:hover .header__top-item-link,
.header__top-item:hover .header__top-item-icon {
	opacity: 0.5;
}

.header__bottom {
	padding: 8px 0 20px 0;
}

.header__bottom-wrapper {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-end;
}

.header__bottom-logo img {
	height: 60px;
	width: auto;
}

.header__bottom-nav {}

.header__bottom-list {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 24px;
}

.header__bottom-item {}

.header__bottom-item-link {
	transition: all 0.3s ease 0s;
}

.header__bottom-item-link:hover {
	opacity: 0.5;
	text-decoration: none;
	color: #fff;
}

.header__bottom-burger {
	display: none;
	width: 21px;
	flex-direction: column;
	gap: 3px;
}

.header__bottom-burger .header__bottom-burger-item {
	transition: all 0.3s ease 0s;
	width: 100%;
	height: 2px;
	border-radius: 30px;
	background: #fff;
	cursor: pointer;
}

.header__bottom-burger:hover .header__bottom-burger-item {
	opacity: 0.5;
}

.header__bottom-burger-item {}

@media (max-width: 1025px) {}

/* --------------------- */
footer {
	background: var(--black);
}

.footer__container {}

.footer__wrapper {
	padding: 40px 0;
}

.footer__body {
	padding-bottom: 40px;
}

.footer__nav {}

.footer__list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 20px;
}

.footer__item {
	flex: 0 0 183px;
}

.footer__item:nth-child(7),
.footer__item:nth-child(8),
.footer__item:nth-child(9),
.footer__item:nth-child(10) {
	margin-top: 22px;
}

.footer__sublist-wrapper {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.footer__sublist-title {
	transition: all 0.3s ease 0s;
}

.footer__sublist-title:hover {
	opacity: 0.5;
}

.footer__sublist {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.footer__sublist-item {}

.footer__sublist-link {
	transition: all 0.3s ease 0s;
	opacity: 0.5;
}

.footer__sublist-link:hover {
	opacity: 1;
}

.footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.25);
	padding-top: 20px;
}

.footer__bottom-row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.footer__contacts {}

.footer__contacts-row {
	display: flex;
	gap: 16px;
}

.footer__contacts-row:nth-child(2) {
	margin-top: 10px;
}

.footer__contacts-item {
	display: flex;
	flex-direction: row;
	gap: 6px;
}

.footer__contacts-list {
	display: flex;
	flex-direction: row;
	gap: 8px;
}

.footer__contacts-list-item {}

.footer__contacts-list-link {
	transition: all 0.3s ease 0s;
}

.footer__contacts-list-link:hover {
	opacity: 1;
}

.separator {
	border-left: 1px solid rgba(255, 255, 255, 0.5);
	height: 16px;
}

.footer__socials {}

.footer__socials-list {
	display: flex;
	flex-direction: row;
	gap: 4px;
	justify-content: flex-end;
}

.footer__socials-item {}

.footer__socials-link {
	font-size: 24px;
	transition: all 0.3s ease 0s;
}

.footer__socials-link:hover {
	opacity: 0.5;
}

.footer__socials-sublink {
	margin-top: 42px;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
}

.footer__socials-sublink span {
	transition: all 0.3s ease 0s;
}

.footer__socials-sublink span:nth-child(2) {
	font-size: 20px;
}

.footer__socials-sublink:hover span {
	opacity: 0.5;
}

.footer__rights {
	margin-top: -19px;
	max-width: 350px;
}

/* Modal */
.simple-modal-wrapper {
	display: none;
}

.simple-modal-wrapper.is-open {
	display: block;
}

.modal-overlay {
	position: fixed;
	inset: 0;
	background: rgba(57, 60, 67, 0.82);
	z-index: 10;
}

.modal {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 11;
	max-width: 484px;
	width: calc(100% - 32px);
	padding: 32px;
	border-radius: 32px;
	background: var(--modal-bg);
	color: var(--text);
}

.modal-close {
	position: absolute;
	top: 23px;
	right: 23px;
	width: 18px;
	height: 18px;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
}

.modal-title {
	margin: 0 0 16px;
	font-weight: 600;
	font-size: 32px;
	line-height: 1;
}

.modal-form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.modal-rows {
	display: grid;
	gap: 8px;
}

.modal-field {
	display: grid;
	gap: 4px;
}

.form-input {
	padding: 17px 20px;
	border-radius: 39px;
	border: 1px solid transparent;
	outline: none;
}

.modal-error {
	display: none;
	margin-left: 12px;
	font-weight: 500;
	font-size: 12px;
	line-height: 16px;
	color: var(--error);
}

.modal-field.error .form-input {
	border-color: var(--error);
}

.modal-field.error .modal-error {
	display: block;
}

.modal-agree {
	display: grid;
	grid-template-columns: 20px 1fr;
	gap: 12px;
	align-items: start;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.2;
	cursor: pointer;
}

.modal-agree a {
	color: var(--text);
	text-decoration: underline;
}

.checkbox-input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.checkbox-box {
	width: 20px;
	height: 20px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.25);
	display: inline-block;
	position: relative;
}

.checkbox-input:checked+.checkbox-box::after {
	content: "";
	position: absolute;
	inset: 4px;
	border-radius: 2px;
	background: #fff;
}

.modal-submit {
	padding: 15.5px;
	border: none;
	border-radius: 99px;
	width: 100%;
	color: var(--text);
	font-weight: 500;
	font-size: 14px;
	cursor: pointer;
	transition: var(--transition);
	background: var(--green);
}

.modal-submit:hover {
	background: var(--green-2);
}

.mfp-content .mfp-close {
	font-size: 42px;
}

.header__top-item .btn-top {
	height: 24px;
	color: #fff;
	padding: 6px 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #3c5fe9;
	transition: var(--transition);
	border-radius: 29px;
}

.header__top-item .btn-top:hover {
	background: var(--accent);
	opacity: 1;
}

/* --------------------- */
@media (max-width: 1025px) {
	.h1 {
		font-size: 38px;
	}

	.h2 {
		font-size: 32px;
	}

	.h3 {
		font-size: 26px;
	}

	.h4a {
		font-size: 18px;
	}

	.h4b {
		font-size: 18px;
	}

	.p1 {
		font-size: 16px;
	}

	.p2 {
		font-size: 14px;
	}

	.p3 {
		font-size: 12px;
	}

	.c1 {
		font-size: 88px;
		line-height: 72%;
	}

	.l2 {
		font-family: "Pretendard";
		font-style: normal;
		font-weight: 500;
		font-size: 12px;
		line-height: 16px;
		letter-spacing: -0.02em;
	}

	.l4 {
		font-family: "Pretendard";
		font-style: normal;
		font-weight: 500;
		font-size: 14px;
		line-height: 18px;
		letter-spacing: -0.02em;
	}

	.index-banner__item {
		font-size: 14px;
	}

	.footer__bottom-row {
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}

	.footer__contacts-row {
		flex-wrap: wrap;
	}

	.footer__contacts-item:nth-child(1) {
		width: 100%;
		flex: 0 0 100%;
		margin-bottom: 12px;
	}

	.footer__contacts {
		display: flex;
		justify-content: flex-start;
		flex-direction: row;
		align-items: flex-start;
	}

	.footer__contacts-row {
		gap: 0px;
	}

	.footer__contacts-row:nth-child(1) {
		width: 352px;
		flex: 0 0 352px;
	}

	.footer__contacts-row:nth-child(2) {
		margin-top: 0px;
	}

	.footer__socials {
		display: flex;
		justify-content: space-between;
		width: 100%;
	}

	.footer__socials-sublink span {
		font-size: 14px;
	}

	.footer__contacts-item:nth-child(2) {
		margin-bottom: 4px;
	}

	.footer__socials-sublink {
		margin-top: 0px;
	}

	.footer__socials-list {
		gap: 12px;
	}

	.footer__socials-link {
		font-size: 42px;
	}

	.footer__rights {
		margin-top: 12px;
	}

	.footer__socials {
		margin-top: 20px;
	}

	.footer__contacts-list {
		gap: 8px;
		width: 100%;
		margin-top: 8px;
	}

	.footer__item {
		flex: 0 0 168px;
	}

	.footer__wrapper {
		padding: 32px 0;
	}

	.footer__body {
		padding-bottom: 32px;
	}

	.footer__bottom {
		padding-top: 16px;
	}

	.footer__sublist-wrapper {
		gap: 12px;
	}
}

@media (max-width: 790px) {
	.footer__contacts {
		flex-direction: column;
	}

	.footer__contacts-row:nth-child(1) {
		width: 100%;
		flex: auto;
	}

	.footer__contacts-row:nth-child(1) {
		width: 100%;
		flex: auto;
		gap: 10px;
	}

	.footer__contacts-item:nth-child(1) {
		margin-bottom: 0px;
		width: 90px;
		flex: 0 0 90px;
	}

	.footer__contacts-row {
		gap: 10px;
	}

	.footer__contacts-list {
		margin-top: 0px;
	}

	.footer__contacts-row:nth-child(1) {
		margin-bottom: 10px;
	}
}

@media (max-width: 590px) {
	.separator {
		display: none;
	}

	.footer__contacts-list {
		flex-direction: column;
	}

	.footer__socials {
		flex-direction: column;
		align-items: flex-start;
		gap: 24px;
		margin-top: 24px;
	}

	.footer__rights {
		margin-top: 24px;
	}

	.footer__contacts-row {
		gap: 12px;
		flex-direction: column;
	}

	.footer__contacts-item:nth-child(1) {
		flex: auto;
	}

	.footer__contacts-row:nth-child(2) {
		margin-top: 24px;
	}

	.footer__contacts-row:nth-child(1) {
		margin-bottom: 0px;
	}

	.footer__contacts-row:nth-child(1) {
		gap: 4px;
	}

	.footer__contacts-row:nth-child(1) .footer__contacts-item:nth-child(1) {
		margin-bottom: 8px;
	}

	.footer__contacts-item:nth-child(2) {
		margin-bottom: 0px;
	}
}

@media (max-width: 550px) {
	.btn {
		padding: 12.5px 20px;
	}

	.footer__bottom {
		padding-top: 0px;
		border-top: 0px solid rgba(255, 255, 255, 0.25);
	}

	.footer__list {
		flex-direction: column;
		gap: 0px;
	}

	.footer__item {
		flex: auto;
	}

	.footer__sublist {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.4s ease;
	}

	.footer__sublist.open {
		max-height: 500px;
	}

	.footer__sublist-title {
		position: relative;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		font-weight: 400;
		font-size: 14px;
		line-height: 100%;
		letter-spacing: -0.02em;
	}

	.footer__sublist-title:after {
		content: "\e901";
		position: relative;
		color: #fff;
		font-size: 11px;
		font-family: "ico" !important;
		speak: never;
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		transition: all 0.3s ease 0s;
	}

	.footer__sublist-title._active::after {
		transform: rotate(180deg);
	}

	.footer__sublist-wrapper {
		gap: 12px;
	}

	.footer__item:nth-child(7),
	.footer__item:nth-child(8),
	.footer__item:nth-child(9),
	.footer__item:nth-child(10) {
		margin-top: 0px;
	}

	.footer__item .footer__sublist-title {
		padding-top: 10px;
		padding-bottom: 12px;
		border-top: 1px solid rgba(255, 255, 255, 0.25);
	}

	.footer__item:last-child {
		padding-bottom: 0px;
	}

	.footer__item,
	.footer__sublist .footer__sublist-item:last-child {
		padding-bottom: 12px;
	}

	.footer__sublist-wrapper {
		gap: 0;
	}
}

/* --------------------- */
.page__row {
	padding: 60px 0 120px 0;
	display: flex;
	flex-direction: row;
	gap: 107px;
	position: relative;
	z-index: 2;
}

.page__wrapper {
	position: relative;
}

.page__img-bg {
	position: absolute;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
	z-index: 1;
}

.page__img-bg img {
	object-fit: cover;
	width: 100%;
}

.page__content {
	width: 100%;
}

@media (max-width: 1250px) {
	.page__row {
		gap: 48px;
		padding: 40px 0 64px 0;
	}
}

@media (max-width: 950px) {
	.page__row {
		gap: 20px;
	}
}

@media (max-width: 768px) {
	.page__row {
		padding: 24px 0 64px 0;
		display: flex;
		flex-direction: column;
		gap: 32px;
	}
}

/* --------------------- */
.sidebar-left {
	max-width: 300px;
	flex: 0 0 300px;
}

.sidebar-left__title {
	margin-bottom: 24px;
}

.sidebar-left__navigation {
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 8px;

	background: rgba(255, 255, 255, 0.24);

	backdrop-filter: blur(2.35px);
}

.sidebar-left__link {
	padding: 16px;
	display: block;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	transition: all 0.3s ease 0s;
}

.sidebar-left__item:last-child .sidebar-left__link {
	border-bottom: 0px solid rgba(255, 255, 255, 0.5);
}

.sidebar-left__link:hover {
	color: var(--gray-2);
}

.sidebar-left__sublist-title {
	padding: 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	transition: all 0.3s ease 0s;
	cursor: pointer;
}

.sidebar-left__sublist-title._active,
.sidebar-left__sublist-title._active-list,
.sidebar-left__sublist-item._active,
.sidebar-left__link._active {
	color: var(--blue-1);
	background: #f9f9f9;
}

.sidebar-left__sublist-title._active+.sidebar-left__siblist-wrapper .sidebar-left__sublist .sidebar-left__sublist-item,
.sidebar-left__sublist-title._active-list+.sidebar-left__siblist-wrapper .sidebar-left__sublist .sidebar-left__sublist-item {
	background: #f9f9f9;
}

.sidebar-left__sublist-title:hover {
	color: var(--gray-2);
}

.sidebar-left__sublist-item {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	padding: 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	cursor: pointer;
	transition: all 0.3s ease 0s;
}

.sidebar-left__sublist-arrow {
	color: var(--gray-2);
	font-size: 10px;
	transform: rotate(-90deg);
	transition: all 0.3s ease 0s;
}

.sidebar-left__sublist-link {
	transition: all 0.3s ease 0s;
}

.sidebar-left__siblist-wrapper {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s ease;
}

.sidebar-left__sublist-item:hover .sidebar-left__sublist-link {
	color: var(--gray-2);
}

.sidebar-left__navigation-title-mobile {
	display: none;
}

@media (max-width: 1025px) {

	.sidebar-left__link.p2,
	.sidebar-left__sublist-title.p2,
	.sidebar-left__sublist-link.p2 {
		font-size: 16px;
	}
}

@media (max-width: 768px) {
	.sidebar-left__title {
		display: none;
	}

	.sidebar-left {
		max-width: 100%;
		flex: auto;
	}

	.sidebar-left__navigation-title-mobile {
		display: block;
		background: #ffffff;
		box-shadow: 0px 12px 24px rgba(0, 0, 0, 0.12);
		border-radius: 8px;
		padding: 16px;
		position: relative;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}

	.sidebar-left__navigation-title-mobile:after {
		content: "\e901";
		position: relative;
		font-size: 11px;
		font-family: "ico" !important;
		speak: never;
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		transition: all 0.3s ease 0s;
	}

	.sidebar-left__navigation {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.4s ease;
		box-shadow: 0px 12px 24px rgba(0, 0, 0, 0.12);
		backdrop-filter: none;
		background: transparent;
		border-radius: 8px;
		border: 0px solid rgba(255, 255, 255, 0.25);
		position: relative;
		z-index: 2;
	}

	.sidebar-left__list {
		overflow: hidden;
		border-radius: 8px;
		border: 1px solid rgba(255, 255, 255, 0.25);
		background: #ffffff;
		margin-top: 13px;
	}

	.sidebar-left__navigation-title-mobile._active-list:after {
		transform: rotate(180deg);
	}

	.sidebar-left__siblist-wrapper {
		max-height: 100%;
		padding: 3px 0;
	}

	.sidebar-left__link {
		color: var(--gray-2);
	}

	.sidebar-left__sublist-title {
		color: var(--gray-2);
		padding: 13.5px 16px 2.5px 16px;
	}

	.sidebar-left__sublist-item {
		padding: 13px 16px 13px 23px;
	}

	.sidebar-left__sublist-item {
		color: var(--gray-2);
	}

	.sidebar-left__link {
		padding: 13px 16px;
	}

	.sidebar-left__sublist {
		display: flex;
		flex-direction: column;
		padding-bottom: 3px;
	}

	.sidebar-left__item {
		border-top: 1px solid var(--gray-3);
	}

	.sidebar-left__item:first-child {
		border-top: 0px solid var(--gray-3);
	}
}

/* --------------------- */
.content__title {
	margin-bottom: 60px;
}

@media (max-width: 1025px) {
	.content__title {
		margin-bottom: 32px;
	}
}

@media (max-width: 768px) {
	.content__title {
		margin-bottom: 24px;
	}
}

/* --------------------- */
.social-widget {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 9999;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
}

.social-toggle {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--blue-1);
	border: none;
	cursor: pointer;
	position: relative;
	transition: var(--transition);
}

.social-toggle:hover {
	background: var(--accent);
}

.social-toggle span {
	position: absolute;
	left: 50%;
	width: 4px;
	height: 4px;
	background: #fff;
	border-radius: 50%;
	transform: translateX(-50%);
	transition: 0.3s;
}

.social-toggle span:nth-child(1) {
	top: 16px;
}

.social-toggle span:nth-child(2) {
	top: 23px;
}

.social-toggle span:nth-child(3) {
	top: 30px;
}

/* крестик */
.social-widget.open .social-toggle span:nth-child(1) {
	top: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	width: 18px;
	height: 2px;
	border-radius: 2px;
}

.social-widget.open .social-toggle span:nth-child(2) {
	opacity: 0;
}

.social-widget.open .social-toggle span:nth-child(3) {
	top: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	width: 18px;
	height: 2px;
	border-radius: 2px;
}

.social-list {
	position: absolute;
	bottom: 58px;
	display: flex;
	flex-direction: column;
	gap: 7px;
	pointer-events: none;
}

.social-item {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #e5edf6;
	color: var(--blue-1);
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: translateY(20px) scale(0);
	opacity: 0;
	transition: 0.3s;
	text-decoration: none;
	font-size: 20px;
	transition: all 0.3s ease 0s;
}

.social-item:hover {
	background: #d4e1f5;
}

.social-widget.open .social-item {
	transform: translateY(0) scale(1);
	opacity: 1;
	pointer-events: auto;
}

.social-item:nth-child(1) {
	transition-delay: 0.05s;
}

.social-item:nth-child(2) {
	transition-delay: 0.1s;
}

.social-item:nth-child(3) {
	transition-delay: 0.15s;
}

.social-item:nth-child(4) {
	transition-delay: 0.2s;
}

@media (max-width: 1025px) {
	.social-widget {
		bottom: 24px;
	}
}

@media (max-width: 768px) {
	.social-widget {
		bottom: 20px;
	}
}

/* --------------------- */
.page-404 {}

.page-404__wrapper {
	position: relative;
	height: calc(100vh - 95px);
}

.page-404__container {
	position: relative;
	z-index: 2;
}

.page-404__block {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding-top: 150px;
	max-width: 472px;
}

.page-404__btn {
	width: fit-content;
}

.page-404__img-d {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.page-404__img-t {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.page-404__img-m {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

@media (max-width: 1025px) {
	.page-404__img-d {
		display: none;
	}

	.page-404__img-t {
		display: block;
	}

	.page-404__block {
		padding-top: 210px;
	}
}

@media (max-width: 768px) {
	.page-404__img-t {
		display: none;
	}

	.page-404__img-m {
		display: block;
	}

	.page-404__block {
		padding-top: 32px;
	}
}

.index__form-popup {
	padding: 16px;
	position: absolute;
	filter: drop-shadow(0px 10px 42.6px rgba(0, 0, 0, 0.25));
	border-radius: 16px;
	background: #fff;
	max-width: 380px;
	right: 0;
	opacity: 0;
	transition: all 0.6s ease 0s;
}

.index__form-popup._active {
	opacity: 1;
}

.index__form-popup-description {}

.index__form-popup-title {
	margin-bottom: 4px;
}

.index__form-popup-close {
	position: absolute;
	top: 16px;
	right: 16px;
	transition: all 0.3s ease 0s;
	opacity: 0.25;
	cursor: pointer;
	font-size: 24px;
}

.index__form-popup-close:hover {
	opacity: 1;
}

/*******************************************************/
.about-banner {
	height: 360px;
}

.about-banner__wrapper {
	width: 100%;
	height: 100%;
	position: relative;
}

.about-banner__container {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 100%;
	overflow: hidden;
}

.about-banner__title {
	text-align: center;
}

.about-banner__subtitle {
	opacity: 0.25;
	position: absolute;
	bottom: 0;
	white-space: nowrap;
}

.about-banner__img {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
}

.about-banner__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width: 1200px) {
	.about-banner__subtitle {
		font-size: 88px !important;
	}
}

@media (max-width: 1025px) {
	/*.about-banner {
      height: 540px;
   }*/
}

@media (max-width: 900px) {
	.about-banner__subtitle {
		font-size: 60px !important;
	}
}

@media (max-width: 768px) {

	/*.about-banner {
      height: 684px;
   }*/
	.about-banner__subtitle {
		font-size: 40px !important;
	}

	.about-banner__img img {
		object-position: 80%;
	}
}

/******************************************************/
.about-navigation {
	background: var(--gray-4);
	height: 102px;
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.about-navigation__container {
	height: 100%;
}

.about-navigation__wrapper {
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.about-navigation__list {
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 24px;
}

.about-navigation__link {
	position: relative;
	font-weight: 500;
	font-size: 18px;
	line-height: 120%;
	text-align: center;
	letter-spacing: -0.02em;
	color: var(--gray-2);
	transition: all 0.3s ease 0s;
}

.about-navigation__item._active .about-navigation__link {
	display: flex;
	flex-direction: column;
	gap: 16px;
	color: #0f0f0f;
}

.about-navigation__item._active .about-navigation__link::after {
	content: "";
	width: 100%;
	height: 2px;
	background: #0f0f0f;
}

.about-navigation__link:hover {
	color: #0f0f0f;
}

@media (max-width: 768px) {
	.about-navigation__link {
		font-size: 16px;
	}

	.about-navigation__item._active .about-navigation__link {
		gap: 8px;
	}

	.about-navigation {
		height: initial;
		padding: 32px 0;
	}

	.about-navigation__list {
		flex-wrap: wrap;
	}
}

/*******************************************************************/
.contacts-list__title {
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 11px;
	margin-left: 3px;
	margin-bottom: 16px;
}

.contacts-list__title::before {
	content: "";
	position: relative;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: var(--green);
}

.contacts-list__title::after {
	content: "";
	position: absolute;
	width: 5.5px;
	height: 5.5px;
	left: 3px;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 50%;
	background: #fff;
}

.contacts-list__list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.contacts-list__item {
	padding: 24px 32px 24px 24px;
	background: #ffffff;
	box-shadow: 0px 6px 24px rgba(0, 0, 0, 0.12);
	border-radius: 4px;
	border-left: 8px solid var(--blue-1);
}

.contacts-list__item-sublist {
	display: flex;
	flex-direction: column;
	padding-left: 20px;
	gap: 10px;
}

.contacts-list__item-sublist-item {
	list-style: disc;
}

.contacts-list__item-label {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 140%;
	letter-spacing: -0.02em;
	color: #0f0f0f;
}

.contacts-list__item-value {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 140%;
	letter-spacing: -0.02em;
	color: #666;
}

a.contacts-list__item-value {
	text-decoration: underline;
	cursor: pointer;
	transition: all 0.3s ease 0s;
}

a.contacts-list__item-value {
	color: #0f0f0f;
}

.header__mega {
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	background: var(--black);
	z-index: 200;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;

	transform: none;
	transition:
		opacity 0.18s ease,
		visibility 0.18s ease;

	padding: 56px 0;
}

.header__mega::before {
	content: "";
	position: absolute;
	left: 0;
	top: -28px;
	width: 100%;
	height: 28px;
	background: transparent;
}

.header__mega-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 40px;
}

.header__mega-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(180px, 1fr));
	gap: 56px;
}

.mega-col {
	min-width: 0;
}

.mega-title {
	color: #d4e1f5;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	margin: 0 0 18px 0;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.16);
	display: block;
}

.mega-link {
	display: block;
	text-decoration: none;
	color: rgba(255, 255, 255, 0.65);
	font-size: 14px;
	line-height: 1.45;
	margin: 10px 0;
	transition:
		color 0.15s ease,
		opacity 0.15s ease;
}

.mega-link:hover {
	color: #fff;
	opacity: 1;
}

.header__bottom-item.has-mega:hover .header__mega,
.header__bottom-item.has-mega:focus-within .header__mega {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.header__bottom-item.has-mega .header__mega:hover {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.product__products-text {
	color: #000;
	font-size: 16px;
	line-height: 1.4;
	max-width: 1000px;
	margin-inline: auto;
}

.product__products-text h2,
.product__products-text .h2 {
	margin: 1em 0;
	font-size: 30px;
	font-weight: 600;
}

.product__products-text h3,
.product__products-text .h3 {
	margin: 1em 0;
	font-size: 24px;
	font-weight: 600;
}

.product__products-text p,
.product__products-text ul,
.product__products-text ol {
	margin: 1em 0;
}

.product__products-text ul,
.product__products-text ol {
	padding-left: 35px;
}

.ufii-grid {
	display: grid;
	grid-template-rows: repeat(4, auto);
	grid-template-columns: repeat(3, 1fr);
	grid-auto-flow: column;
	column-gap: 2em;
	row-gap: 2.8em;
	max-width: 1000px;
	margin-bottom: 50px;
	margin-inline: auto;
	font-size: clamp(12px, 1.4vw, 14px);
}

.ufii-item--main {
	grid-row: 1 / 5;
}

.ufii-item--side {
	padding-bottom: 1.5em;
}

.ufii-item--side:nth-child(1),
.ufii-item--side:nth-child(6) {
	padding-top: 2em;
}

.ufii-item--side:nth-child(1),
.ufii-item--side:nth-child(2),
.ufii-item--side:nth-child(3),
.ufii-item--side:nth-child(6),
.ufii-item--side:nth-child(7),
.ufii-item--side:nth-child(8) {
	border-bottom: 2px solid #ddd;
}

.ufii-item__title {
	color: var(--blue-1);
	font-size: clamp(12px, 1.8vw, 1.5em);
	font-weight: 700;
	margin-bottom: 0.3em;
}

.ufii-item__subtitle {
	color: #000;
	font-size: revert;
	font-size: clamp(12px, 1.5vw, 1.1em);
	margin-bottom: 0.6em;
}

.ufii-item p {
	margin: 0;
}

.ufiii-grid {
	display: grid;
	grid-template-rows: repeat(2, auto);
	grid-template-columns: 5fr 6fr 5fr;
	grid-auto-flow: column;
	max-width: 1000px;
	margin-bottom: 50px;
	margin-inline: auto;
	font-size: clamp(12px, 1.4vw, 16px);
}

.ufiii-item p {
	margin: 0;
}

.ufiii-item--main {
	grid-row: 1 / 3;
	transform: translateX(-12%);
}

.ufiii-item--side {
	margin-top: 1em;
	padding-top: 1.8em;
	border-top: 2px solid #bbb;
	position: relative;
	z-index: 1;
}

.ufiii-item__title {
	color: var(--blue-1);
	font-size: clamp(13px, 2vw, 1.8em);
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 1.1em;
}

.ftn-title {
	color: var(--blue-1);
	font-size: clamp(16px, 2vw, 2em);
	font-weight: 700;
	margin-bottom: 1em;
}

.ftn-grid {
	display: grid;
	grid-template-rows: repeat(2, auto);
	grid-template-columns: repeat(2, 1fr);
	grid-auto-flow: column;
	gap: 2em;
	max-width: 1000px;
	margin-inline: auto;
	font-size: clamp(14px, 1.4vw, 16px);
}

.ftn-item {
	text-wrap: balance;
}

.ftn-item p {
	margin: 0;
}

.ftn-item__title {
	color: var(--blue-1);
	font-size: clamp(15px, 2vw, 1.6em);
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 1em;
}

.uf-int-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2em;
	max-width: 800px;
	margin-inline: auto;
	font-size: clamp(14px, 1.4vw, 16px);
}

.uf-int-grid__img {
	text-align: center;
}

.uf-int-grid__text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	row-gap: 2em;
}

.uf-int-item {
	border-bottom: 2px solid #bbb;
	padding-bottom: 2em;
}

.uf-int-item:last-child {
	border-bottom: none;
}

.uf-int-item__title {
	color: var(--blue-1);
	font-size: clamp(14px, 2vw, 1.6em);
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 1em;
}

.uf-int-item p {
	margin: 0;
}


.protem-grid {
	display: grid;
	grid-template-columns: 5fr 6fr;
	gap: 2em;
	max-width: 800px;
	margin-inline: auto;
	font-size: clamp(14px, 1.4vw, 16px);
}

.protem-grid__img {
	text-align: center;
}

.protem-grid__text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	row-gap: 1em;
}

.protem-title {
	color: var(--blue-1);
	font-size: clamp(24px, 2vw, 1.8em);
	font-weight: 500;
	line-height: 1.1;
}

.protem-subtitle {
	color: var(--blue-1);
	font-size: clamp(17px, 2vw, 1.4em);
	font-weight: 700;
	line-height: 1.1;
}

.protem-item {
	border-bottom: 2px solid #bbb;
	padding-bottom: 1em;
}

.protem-item:last-child {
	border-bottom: none;
}

.protem-item__title {
	color: var(--blue-1);
	font-size: clamp(16px, 2vw, 1.4em);
	font-weight: 500;
	line-height: 1.1;
	margin-bottom: 1em;
}

.protem-item p:first-child {
	margin-top: 0;
}

.protem-item p:last-child {
	margin-bottom: 0;
}


@media (max-width: 1200px) {
	.header__mega-grid {
		grid-template-columns: repeat(2, minmax(180px, 1fr));
		gap: 40px;
	}

	.header__right {
		flex-grow: 1;
	}

	.header__bottom-nav {
		display: none;
		margin-top: 5px;
	}

	.header__bottom-burger {
		display: flex;
	}
}

@media (max-width: 820px) {
	/*.header__top-wrapper,
   .header__bottom-wrapper{
      padding: 14px 18px;
   }*/

	.header__bottom-nav {
		justify-content: flex-end;
	}

	.header__mega {
		padding: 24px 0;
	}

	.header__mega-container {
		padding: 0 18px;
	}

	.header__mega-grid {
		grid-template-columns: 1fr;
		gap: 22px;
	}
}

@media (max-width: 767px) {
	.ufii-grid {
		display: grid;
		grid-template-rows: repeat(6, auto);
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5em;
		font-size: clamp(12px, 2vw, 14px);
		margin-bottom: 30px;
	}

	.ufii-item--side:nth-child(1),
	.ufii-item--side:nth-child(2) {
		order: 1;
	}

	.ufii-item--side:nth-child(6),
	.ufii-item--side:nth-child(7),
	.ufii-item--side:nth-child(8),
	.ufii-item--side:nth-child(9) {
		order: 2;
	}

	.ufii-item--side:nth-child(3),
	.ufii-item--side:nth-child(4) {
		order: 3;
	}

	.ufii-item--side:nth-child(1),
	.ufii-item--side:nth-child(6) {
		padding-top: revert;
	}

	.ufii-item--side:nth-child(2) {
		border-bottom: none;
	}

	.ufii-item--side:nth-child(9) {
		border-bottom: 2px solid rgb(221, 221, 221);
	}

	.ufii-item__title {
		font-size: clamp(12px, 2.7vw, 1.5em);
	}

	.ufii-item__subtitle {
		font-size: clamp(12px, 2.2vw, 1.1em);
	}

	.ufiii-grid {
		display: grid;
		grid-template-rows: repeat(3, auto);
		grid-template-columns: 1fr 1fr;
		column-gap: 2em;
	}

	.ufiii-item--main {
		order: 1;
		transform: none;
	}

	.ufiii-item--side:nth-child(5) {
		order: 1;
	}

	.ufiii-item__title br {
		display: none;
	}

	.uf-int-grid {
		grid-template-columns: 1fr;
	}

	.uf-int-grid__text {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 1.5em;
		row-gap: 1.5em;
	}

	.protem-grid {
		grid-template-columns: 1fr;
	}

	.protem-grid__img img {
		max-width: 200px;
	}

	.protem-title {
		text-align: center;
	}

}

@media (max-width: 450px) {
	.header__bottom-logo img {
		height: 40px;
	}
}

/* End */
/* /local/templates/main/assets/css/animate.css?177252514268760 */
/* /local/templates/main/components/bitrix/menu/header_menu/style.css?17733292993839 */
/* /local/templates/main/components/bitrix/breadcrumb/breadcrumb/style.css?1772525142480 */
/* /local/templates/main/template_styles.css?178006712239758 */
