/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(assets/images/owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-theme .owl-dots,.owl-theme .owl-nav{text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-nav{margin-top:10px}.owl-theme .owl-nav [class*=owl-]{color:#FFF;font-size:14px;margin:5px;padding:4px 7px;background:#D6D6D6;display:inline-block;cursor:pointer;border-radius:3px}.owl-theme .owl-nav [class*=owl-]:hover{background:#869791;color:#FFF;text-decoration:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#D6D6D6;display:block;-webkit-backface-visibility:visible;transition:opacity .2s ease;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#869791}
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none; }
.pswp * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
.pswp img {
  max-width: none; }

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--open {
  display: block; }

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab; }

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing; }

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0; }

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none; }

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden; }

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden; }

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0; }

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden; }

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222; }

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0; }

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC; }

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline; }

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*

	Contents:

	1. Buttons
	2. Share modal and links
	3. Index indicator ("1 of X" counter)
	4. Caption
	5. Loading indicator
	6. Additional styles (root element, top bar, idle state, hidden state, etc.)

*/
/*

	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -webkit-box-shadow: none;
  box-shadow: none; }
.pswp__button:focus, .pswp__button:hover {
  opacity: 1; }
.pswp__button:active {
  outline: none;
  opacity: 0.9; }
.pswp__button::-moz-focus-inner {
  padding: 0;
  border: 0; }

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1; }

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url(assets/images/default-skin.png) 0 0 no-repeat;
  background-size: 264px 88px;
  width: 44px;
  height: 44px; }

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
  .pswp--svg .pswp__button--arrow--left:before,
  .pswp--svg .pswp__button--arrow--right:before {
    background-image: url(assets/images/default-skin.svg); }
  .pswp--svg .pswp__button--arrow--left,
  .pswp--svg .pswp__button--arrow--right {
    background: none; } }

.pswp__button--close {
  background-position: 0 -44px; }

.pswp__button--share {
  background-position: -44px -44px; }

.pswp__button--fs {
  display: none; }

.pswp--supports-fs .pswp__button--fs {
  display: block; }

.pswp--fs .pswp__button--fs {
  background-position: -44px 0; }

.pswp__button--zoom {
  display: none;
  background-position: -88px 0; }

.pswp--zoom-allowed .pswp__button--zoom {
  display: block; }

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -132px 0; }

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden; }

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute; }

.pswp__button--arrow--left {
  left: 0; }

.pswp__button--arrow--right {
  right: 0; }

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: '';
  top: 35px;
  background-color: rgba(0, 0, 0, 0.3);
  height: 30px;
  width: 32px;
  position: absolute; }

.pswp__button--arrow--left:before {
  left: 6px;
  background-position: -138px -44px; }

.pswp__button--arrow--right:before {
  right: 6px;
  background-position: -94px -44px; }

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__share-modal--hidden {
  display: none; }

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  -webkit-transform: translateY(6px);
  -ms-transform: translateY(6px);
  transform: translateY(6px);
  -webkit-transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform; }
.pswp__share-tooltip a {
  display: block;
  padding: 8px 12px;
  color: #000;
  text-decoration: none;
  font-size: 14px;
  line-height: 18px; }
.pswp__share-tooltip a:hover {
  text-decoration: none;
  color: #000; }
.pswp__share-tooltip a:first-child {
  /* round corners on the first/last list item */
  border-radius: 2px 2px 0 0; }
.pswp__share-tooltip a:last-child {
  border-radius: 0 0 2px 2px; }

.pswp__share-modal--fade-in {
  opacity: 1; }
.pswp__share-modal--fade-in .pswp__share-tooltip {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px; }

a.pswp__share--facebook:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid transparent;
  border-bottom-color: #FFF;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none; }

a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF; }
a.pswp__share--facebook:hover:before {
  border-bottom-color: #3E5C9A; }

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF; }

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D; }

a.pswp__share--download:hover {
  background: #DDD; }

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px; }

/*

	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px; }
.pswp__caption small {
  font-size: 11px;
  color: #BBB; }

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC; }

.pswp__caption--empty {
  display: none; }

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden; }

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr; }

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px; }

.pswp__preloader--active {
  opacity: 1; }
.pswp__preloader--active .pswp__preloader__icn {
  /* We use .gif in browsers that don't support CSS animation */
  background: url(assets/images/preloader.gif) 0 0 no-repeat; }

.pswp--css_animation .pswp__preloader--active {
  opacity: 1; }
.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
  -webkit-animation: clockwise 500ms linear infinite;
  animation: clockwise 500ms linear infinite; }
.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
  -webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
  animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }

.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0; }

.pswp--css_animation .pswp__preloader__cut {
  /*
			The idea of animating inner circle is based on Polymer ("material") loading indicator
			 by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
		*/
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden; }

.pswp--css_animation .pswp__preloader__donut {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0; }

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right; } }

@-webkit-keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@-webkit-keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0); } }

@keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0); } }

/*

	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550; }

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%; }

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible; }

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5); }

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3); }

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0; }

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0; }

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001; }

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none; }

.pswp__element--disabled {
  display: none !important; }

.pswp--minimal--dark .pswp__top-bar {
  background: none; }

@charset "UTF-8";


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

Copyright (c) 2013 Daniel Eden

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.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 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% {
    -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% {
    -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(0) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

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

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

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

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

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

  40% {
    -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-out;
    animation-timing-function: ease-out;
  }

  50% {
    -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-in;
    animation-timing-function: ease-in;
  }

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

  100% {
    -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-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 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);
    opacity: 1;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  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);
    opacity: 1;
    -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;
  }

  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;
}


* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  overflow-x: hidden;
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  scroll-behavior: smooth;
  font-family: "Montserrat", sans-serif;
}

.container {
  width: 1200px;
  margin: 0 auto;
}

.font-h1 {
  font-weight: bold;
  font-size: 36px;
  line-height: 140%;
  color: #1F1B20;
}
@media (max-width: 1169px) {
  .font-h1 {
    font-size: 30px;
  }
}
@media (max-width: 767px) {
  .font-h1 {
    font-size: 26px;
  }
}

.font-h2 {
  font-weight: 600;
  font-size: 30px;
  line-height: 140%;
  color: #1F1B20;
}
@media (max-width: 1169px) {
  .font-h2 {
    font-size: 24px;
  }
}

.font-h3 {
  font-weight: 500;
  font-size: 18px;
  line-height: 140%;
  color: #625F63;
}
@media (max-width: 767px) {
  .font-h3 {
    font-size: 16px;
  }
}

.font-subtitle {
  font-weight: 500;
  font-size: 24px;
  line-height: 140%;
  color: #1F1B20;
}
@media (max-width: 1169px) {
  .font-subtitle {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .font-subtitle {
    font-size: 17px;
  }
}

.font-regular {
  font-weight: 500;
  font-size: 16px;
  line-height: 148%;
  color: #625F63;
}
@media (max-width: 1169px) {
  .font-regular {
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .font-regular {
    font-size: 14px;
  }
}

.font-extra {
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
  color: #625F63;
}
@media (max-width: 1169px) {
  .font-extra {
    font-size: 13px;
  }
}

.font-extra-2 {
  font-weight: 500;
  font-size: 12px;
  line-height: 140%;
  color: #625F63;
}

.main-bg-wrap {
  width: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-center: center;
  z-index: -1;
  overflow: hidden;
}
.main-bg img {
  width: 2200px;
}

a {
  text-decoration: none;
}

ul {
  list-style: none;
}

.btn {
  outline: none;
  cursor: pointer;
  transition: 0.3s ease-in-out;
}
.btn-fill {
  font-weight: 500;
  padding-top: 1px;
  line-height: 140%;
  color: #ffffff;
  background-color: #1F1B20;
  border: none;
  border-radius: 100px;
  width: 260px;
  height: 60px;
  font-size: 18px;
}
@media (max-width: 767px) {
  .btn-fill {
    width: 224px;
    height: 52px;
    font-size: 16px;
  }
}
.btn-fill:hover {
  background-color: #FDD109;
  color: #1F1B20;
}
.btn-fill-white {
  margin-top: 15px;
  color: #1F1B20;
  background-color: #ffffff;
}
.btn-fill-yellow {
  background-color: #FDD109;
  color: #1F1B20;
}
.btn-fill-yellow:hover {
  color: #ffffff;
  background-color: #1F1B20;
}
.btn-fill-yellow.disabled {
  color: #ffffff;
  background-color: #1F1B20;
  pointer-events: none;
}
.btn-fill-yellow.disabled:hover {
  color: #ffffff;
  background-color: #1F1B20;
}
.btn-round {
  font-weight: 500;
  width: 60px;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 140%;
  color: #1F1B20;
  background-color: #ffffff;
  border: none;
  border-radius: 100%;
}
.btn-o {
  font-weight: 500;
  line-height: 140%;
  color: #1F1B20;
  border-radius: 100px;
  border: 1px solid #1F1B20;
  background-color: transparent;
  width: 212px;
  height: 55px;
  font-size: 16px;
}
@media (max-width: 767px) {
  .btn-o {
    width: 208px;
    height: 48px;
    font-size: 15px;
  }
}
.btn-o:hover {
  border-color: #FA6427;
  color: #FA6427;
}

.mt {
  margin-top: 160px;
}
@media (max-width: 1169px) {
  .mt {
    margin-top: 140px;
  }
}
@media (max-width: 767px) {
  .mt {
    margin-top: 120px;
  }
}

.radio-input-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.radio-input-wrap:first-child {
  margin-right: 46px;
}
.radio-input-text {
  margin-right: 10px;
  transition: 0.3s ease-in-out;
}
.radio-input-text-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}
.radio-input-element:checked ~ .radio-input-text-wrap .radio-input-after-round {
  opacity: 1;
}
.radio-input-element:checked ~ .radio-input-text-wrap .radio-input-text {
  color: #FA6427;
}
.radio-input-after {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  background-color: #DADADA;
  width: 17px;
  height: 17px;
}
.radio-input-after-round {
  opacity: 0;
  transition: 0.3s ease-in-out;
  width: 9px;
  height: 9px;
  background-color: #FA6427;
  border-radius: 100%;
}

.custom-checkbox {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
}
.custom-checkbox-icon {
  margin-top: 1px;
  min-width: 13px;
  height: 13px;
  background-color: #DADADA;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}
.custom-checkbox-icon-check {
  display: none;
}
.custom-checkbox-text {
  padding-left: 8px;
  color: #1F1B20;
}
.custom-checkbox input[type=checkbox]:checked ~ .custom-checkbox-icon .custom-checkbox-icon-check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}

.video-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
}
.pswp__caption {
  display: none;
}

.form-input-upload {
  cursor: pointer;
  display: block;
  margin-bottom: 50px;
}
.form-input-upload-hidden {
  display: none;
}
.form-input-upload-wrap {
  display: inline-block;
}
.form-input-upload-wrap i {
  display: inline-block;
  color: white;
  margin-right: 7px;
  transition: 0.4s ease-in-out;
}
.form-input-upload .form-input-upload-icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: 11px;
}
.form-input-upload .form-input-upload-icon svg path {
  transition: 0.3s ease-in-out;
}
.form-input-upload:hover .form-input-upload-text {
  color: #FA6427;
}
.form-input-upload:hover .form-input-upload-icon svg path {
  fill: #FA6427;
}
.form-input-upload-text {
  vertical-align: middle;
  display: inline-block;
  position: relative;
  transition: 0.3s ease-in-out;
}
.form-input-upload-text .remove-icon {
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}
.form-input-upload-text .remove-icon svg {
  width: 16px;
  height: 16px;
}
.form-input-upload-text .remove-icon svg path {
  fill: #625F63;
}
.form-input-upload-text.uploaded-file .remove-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}

.mobile-menu {
  display: none;
}

.modal-window-text {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.modal-window-text-wrap {
  width: 100%;
  height: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal-window-text-close-area {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: -1;
}
.modal-window-text-content {
  background-color: rgba(248, 248, 248, 0.98);
  position: relative;
  width: calc(100% - 30px);
  max-width: 720px;
  min-height: 389px;
  max-height: 100vh;
}
.modal-window-text-close {
  position: absolute;
  right: 20px;
  top: 20px;
  width: 29px;
  height: 29px;
  cursor: pointer;
}
.modal-window-text-close svg {
  width: 100%;
  height: 100%;
}

.modal-window-reviews {
  display: none;
}
.modal-window-reviews .modal-window-text-content {
  max-height: calc(100% - 50px);
  background-color: rgba(248, 248, 248, 0.98);
  position: relative;
  padding: 120px 100px 110px 48px;
  position: relative;
}
.modal-window-reviews .modal-window-text-text {
  max-height: calc(100vh - 280px);
  overflow-y: auto;
}
.modal-window-reviews .modal-window-text-text span {
  display: block;
}
.modal-window-reviews .modal-window-text-close {
  position: absolute;
  right: 20px;
  top: 20px;
  width: 29px;
  height: 29px;
  cursor: pointer;
}
.modal-window-reviews .modal-window-text-close svg {
  width: 100%;
  height: 100%;
}

.modal-window-thanks {
  display: none;
}
.modal-window-thanks .modal-window-text-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.modal-window-thanks .modal-window-text-title {
  margin-bottom: 23px;
  padding-left: 15px;
  padding-right: 15px;
  text-align: center;
}
.modal-window-thanks .modal-window-text-text {
  text-align: center;
}

@media (max-width: 1170px) {
  .modal-window-text-content {
    max-width: 500px;
    min-height: 280px;
  }
  .modal-window-reviews .modal-window-text-content {
    padding: 80px 30px 80px 30px;
  }
}
@media (max-width: 768px) {
  .modal-window-reviews .modal-window-text-content {
    margin-bottom: 30px;
  }
}
@media (max-width: 420px) {
  .modal-window-thanks .modal-window-text-text {
    max-width: 220px;
  }

  .modal-window-reviews .modal-window-text-content {
    padding: 80px 20px 80px 20px;
  }
}
.header {
  padding-top: 14px;
}
.header-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
}
.header-logo {
  width: 160px;
}
.header-logo img {
  width: 100%;
}
.header-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.header-contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  margin-top: 15px;
  margin-bottom: 12px;
}
.header-contact__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.header-contact .header-city {
  margin-right: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.header-contact .header-city-name {
  margin-right: 10px;
  font-weight: 500;
  font-size: 16px;
  line-height: 148%;
  color: #625F63;
  transition: 0.3s ease-in-out;
}
.header-contact .header-city-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.header-contact .header-city-icon svg {
  fill: #625F63;
  transition: 0.3s ease-in-out;
}
.header-contact .header-city:hover .header-city-name {
  color: #FA6427;
}
.header-contact .header-city:hover .header-city-icon svg {
  fill: #FA6427;
}
.header-contact-phone {
  font-weight: bold;
  font-size: 20px;
  line-height: 24px;
  color: #1F1B20;
  margin-right: 20px;
}
.header-contact-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.header-contact-links-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-right: 13px;
}
.header-contact-links-item:last-child {
  margin-right: 0;
}
.header-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.header-menu-item {
  margin-right: 40px;
}
.header-menu-item:last-child {
  margin-right: 0;
}
.header-menu-link {
  transition: 0.3s ease-in-out;
}
.header-menu-link:hover {
  color: #FA6427;
}

.modal-window-cities {
  display: none;
}
.modal-window-cities .modal-window-text-content {
  padding: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  flex-direction: column;
  max-width: 1000px;
}
.modal-window-cities .modal-window-text-title {
  width: 100%;
  margin-bottom: 23px;
  padding-right: 15px;
  font-size: 20px;
  font-weight: 500;
}
.modal-window-cities .modal-window-text-text {
  text-align: center;
}

.modal-city-content {
  width: 100%;
  height: 60vh;
  max-height: 600px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

.modal-city-item {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}

.modal-city-item-letter {
  color: #FA6427;
  font-weight: 500;
  font-size: 20px;
  margin-bottom: 14px;
}

.modal-city-item-elem {
  margin-top: 4px;
  cursor: pointer;
}
.modal-city-item-elem a {
  text-decoration: none;
  color: #292929;
}

.main {
  padding-top: 50px;
}
.main-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.main-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}
.main-text-title {
  margin-bottom: 25px;
}
.main-text-subtitle {
  margin-bottom: 30px;
  max-width: 385px;
}
.main-image {
  min-width: 650px;
  max-width: 650px;
  height: 650px;
  display: block;
  position: relative;
}
.main-image:hover .main-image-box-wrap-icon {
  transform: translate(-50%, -50%) scale(1.15);
}
.main-image-box {
  transform: translate(-50%, -50%) rotate(45deg);
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  width: 70.4225352113%;
  height: 70.4225352113%;
  overflow: hidden;
  border-radius: 32px;
}
.main-image-box-wrap {
  width: 100%;
  height: 100%;
  position: relative;
}
.main-image-box-wrap-icon {
  z-index: 1;
  position: absolute;
  width: 55px;
  height: 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.35);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.3s ease-in-out;
  cursor: pointer;
}
.main-image img {
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 142%;
  position: absolute;
  left: 50%;
  top: 50%;
}

.about {
  margin-top: 220px;
}
.about-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.about-image {
  width: 552px;
  height: 404px;
  position: relative;
  overflow: hidden;
}
.about-image-slider {
  height: 100%;
  position: relative;
}
.about-image-slider .owl-stage-outer {
  height: 100%;
}
.about-image-slider .owl-stage-outer .owl-stage {
  height: 100%;
}
.about-image-slider .owl-stage-outer .owl-stage .owl-item {
  height: 100%;
}
.about-image-slider .owl-nav .owl-prev {
  position: absolute;
  outline: none;
  top: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.about-image-slider .owl-nav .owl-prev svg {
  margin-left: 27px;
  margin-right: 10px;
}
.about-image-slider .owl-nav .owl-prev svg path {
  transition: 0.3s ease-in-out;
}
.about-image-slider .owl-nav .owl-prev.disabled {
  opacity: 0;
  cursor: default;
}
.about-image-slider .owl-nav .owl-prev:not(.disabled):hover svg path {
  stroke: #FA6427;
}
.about-image-slider .owl-nav .owl-next {
  position: absolute;
  outline: none;
  top: 0;
  right: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.about-image-slider .owl-nav .owl-next svg {
  margin-right: 27px;
  margin-right: 10px;
}
.about-image-slider .owl-nav .owl-next svg path {
  transition: 0.3s ease-in-out;
}
.about-image-slider .owl-nav .owl-next.disabled {
  opacity: 0;
  cursor: default;
}
.about-image-slider .owl-nav .owl-next:not(.disabled):hover svg path {
  stroke: #FA6427;
}
.about-image-slider .owl-dots {
  display: none !important;
}
.about-image-slider-counter {
  position: absolute;
  right: 15px;
  z-index: 1;
  bottom: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.about-image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.about-text {
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-right: 50px;
}
.about-title {
  margin-bottom: 44px;
}
.about-description p {
  margin-bottom: 16px;
}
.about-description p:last-child {
  margin-bottom: 0;
}

.help-container {
  position: relative;
}
.help-round {
  position: absolute;
  z-index: -1;
  width: 250px;
  height: 250px;
  background: linear-gradient(49.08deg, #FDD009 14.91%, #FC7621 44.7%, #F32F37 86.41%);
  right: -60px;
  top: 0;
  border-radius: 100%;
}
.help-title {
  margin-bottom: 75px;
}
.help-wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 27px;
}
.help-item {
  background-color: #F8F8F8;
  padding: 60px 24px 40px 24px;
}
.help-item-title {
  color: #FA6427;
  margin-bottom: 30px;
}
.help-item-btn {
  margin-top: 28px;
}

.example-slider {
  position: relative;
}
.example-slider .owl-nav .owl-prev {
  position: absolute;
  outline: none;
  top: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.example-slider .owl-nav .owl-prev svg {
  margin-left: 27px;
  margin-right: 10px;
}
.example-slider .owl-nav .owl-prev svg path {
  transition: 0.3s ease-in-out;
}
.example-slider .owl-nav .owl-prev:hover svg path {
  stroke: #FA6427;
}
.example-slider .owl-nav .owl-next {
  position: absolute;
  outline: none;
  top: 0;
  right: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.example-slider .owl-nav .owl-next svg {
  margin-right: 27px;
  margin-right: 10px;
}
.example-slider .owl-nav .owl-next svg path {
  transition: 0.3s ease-in-out;
}
.example-slider .owl-nav .owl-next:hover svg path {
  stroke: #FA6427;
}
.example-slider-item {
  position: relative;
}
.example-slider-item-images {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 1px;
}
.example-slider-item-image-1 {
  position: relative;
  width: 100%;
  padding-bottom: 100%;
  overflow: hidden;
}
.example-slider-item-image-1 img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.example-slider-item-image-2 {
  position: relative;
  width: 100%;
  padding-bottom: 100%;
  overflow: hidden;
}
.example-slider-item-image-2 img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.example-slider-item-text {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color: #F8F8F8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  padding: 12px 25px;
}
.example-slider-item-text-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  margin-left: 25px;
}
.example-slider-item-text-item:first-child {
  margin-left: 0;
}
.example-slider-item-text-item .title {
  color: #1F1B20;
  margin-right: 8px;
  white-space: nowrap;
}
.example-slider-item-text-item .value {
  white-space: nowrap;
}
.example-slider-item-text-cart {
  margin-left: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}

.calc {
  padding-top: 120px;
  background-color: #F8F8F8;
  padding-bottom: 120px;
}
.calc-round-1 {
  display: block;
  border-radius: 100%;
  width: 89px;
  height: 89px;
  background: linear-gradient(54.62deg, #FC7621 12.66%, #F32F37 86.59%);
  position: absolute;
  top: 100px;
  right: 0;
}
.calc-round-2 {
  display: block;
  border-radius: 100%;
  width: 124px;
  height: 124px;
  background: linear-gradient(49.08deg, #FDD009 14.91%, #FC7621 44.7%, #F32F37 86.41%);
  position: absolute;
  bottom: -35px;
  left: -60px;
}
.calc-container {
  position: relative;
}
.calc-title {
  margin-bottom: 25px;
}
.calc-description {
  color: #1F1B20;
  max-width: 370px;
}
.calc-info {
  margin-top: 15px;
  color: #FA6427;
}
.calc-wrap {
  margin-top: 45px;
}
.calc-wrap-info {
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
  color: #625F63;
}
.calc-wrap-container {
  padding-top: 11px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.calc-wrap-container-item {
  display: grid;
  grid-gap: 16px;
}
.calc-wrap-container-item-top {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 16px;
}
.calc-wrap-container-item-top-item {
  cursor: pointer;
  background-color: #fff;
  padding: 20px 12px 10px 16px;
  position: relative;
  min-height: 114px;
}
.calc-wrap-container-item-top-item .calc-wrap-container-item-top-item-title {
  margin-bottom: 6px;
  transition: 0.3s ease-in-out;
}
.calc-wrap-container-item-top-item .calc-wrap-container-item-top-item-subtitle {
  transition: 0.3s ease-in-out;
}
.calc-wrap-container-item-top-item .calc-wrap-container-item-top-item-price {
  transition: 0.3s ease-in-out;
}
.calc-wrap-container-item-top-item:hover .calc-wrap-container-item-top-item-title {
  color: #FA6427;
}
.calc-wrap-container-item-top-item:hover .calc-wrap-container-item-top-item-subtitle {
  color: #FA6427;
}
.calc-wrap-container-item-top-item:hover .calc-wrap-container-item-top-item-price {
  color: #FA6427;
}
.calc-wrap-container-item-top-item-price {
  position: absolute;
  left: 16px;
  bottom: 7px;
}
.calc-wrap-container-item-top-item.active .calc-wrap-container-item-top-item-title {
  color: #FA6427;
}
.calc-wrap-container-item-top-item.active .calc-wrap-container-item-top-item-subtitle {
  color: #FA6427;
}
.calc-wrap-container-item-top-item.active .calc-wrap-container-item-top-item-price {
  color: #FA6427;
}
.calc-wrap-container-item-bottom {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 16px;
}
.calc-wrap-container-item-bottom-item {
  background-color: #fff;
  padding-top: 20px;
  padding-left: 17px;
  min-height: 200px;
  position: relative;
}
.calc-wrap-container-item-bottom-item.active .calc-wrap-container-item-bottom-item-title {
  color: #FA6427;
}
.calc-wrap-container-item-bottom-item.active .radio-input-text {
  color: #FA6427;
}
.calc-wrap-container-item-bottom-item-title {
  margin-bottom: 27px;
}
.calc-wrap-container-item-bottom-item-radio-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.calc-wrap-container-item-bottom-item-price {
  position: absolute;
  left: 25px;
  bottom: 7px;
}
.calc-wrap-container-item-bottom-item-input {
  width: 180px;
  margin-right: 6px;
  border: none;
  border-bottom: 1px solid #DADADA;
  padding-bottom: 6px;
  color: #FA6427;
  outline: none;
}
.calc-wrap-container-item-bottom-item-input-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  margin-bottom: 22px;
}
.calc-wrap-container-item-bottom-item-input::-moz-placeholder {
  color: #625F63;
}
.calc-wrap-container-item-bottom-item-input:-ms-input-placeholder {
  color: #625F63;
}
.calc-wrap-container-item-bottom-item-input::placeholder {
  color: #625F63;
}
.calc-wrap-container-item-final {
  padding-left: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.calc-wrap-container-item-final-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  padding-bottom: 20px;
  border-bottom: 1px solid #DADADA;
}
.calc-wrap-container-item-final-top-title {
  width: 260px;
}
.calc-wrap-container-item-final-top-content {
  padding-top: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}
.calc-wrap-container-item-final-top-content-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  margin-bottom: 12px;
}
.calc-wrap-container-item-final-top-content-item:last-child {
  margin-bottom: 0;
}
.calc-wrap-container-item-final-top-content-item .title {
  color: #1F1B20;
  white-space: nowrap;
  margin-right: 30px;
}
.calc-wrap-container-item-final-bottom-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  margin-bottom: 38px;
}
.calc-wrap-container-item-final-bottom .title {
  width: 260px;
}
.calc-wrap-container-item-final-bottom .value {
  padding-top: 8px;
}

.calc-wrap-container-item-bottom-item-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}

.custom-calc-checkbox {
  flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 16px;
}
.custom-calc-checkbox:last-child {
  margin-bottom: 0;
}
.custom-calc-checkbox-input {
  display: none;
}
.custom-calc-checkbox-input:checked ~ .custom-calc-checkbox-visible .custom-calc-checkbox-visible-text-title {
  color: #FA6427;
}
.custom-calc-checkbox-input:checked ~ .custom-calc-checkbox-visible .custom-calc-checkbox-visible-icon svg {
  opacity: 1;
}
.custom-calc-checkbox-visible {
  flex-grow: 1;
  padding: 10px 16px 10px 16px;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
}
.custom-calc-checkbox-visible-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
}
.custom-calc-checkbox-visible-icon {
  margin-top: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  margin-right: 10px;
  min-width: 17px;
  height: 17px;
  background-color: #DADADA;
}
.custom-calc-checkbox-visible-icon svg {
  opacity: 0;
  transition: 0.3s ease-in-out;
}
.custom-calc-checkbox-visible-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}
.workstage-title {
  text-align: center;
}
.workstage-content {
  padding-top: 80px;
}
.workstage-content-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  width: calc(50% + 33px);
  justify-content: flex-end;
  position: relative;
  padding-top: 20px;
  padding-bottom: 20px;
}
.workstage-content-item:first-child {
  padding-top: 0;
}
.workstage-content-item:first-child .workstage-content-item-icon:after {
  height: 50%;
  top: 50%;
}
.workstage-content-item:last-child {
  padding-bottom: 0;
}
.workstage-content-item:last-child .workstage-content-item-icon:after {
  height: 50%;
  top: unset;
  bottom: 50%;
}
.workstage-content-item-left {
  justify-content: flex-start;
  margin-left: calc(50% - 33px);
}
.workstage-content-item-left .workstage-content-item-image {
  order: 1;
}
.workstage-content-item-left .workstage-content-item-text {
  order: 2;
}
.workstage-content-item-left .workstage-content-item-icon {
  margin-left: 0;
  margin-right: 35px;
}
.workstage-content-item-left .workstage-content-item-icon:after {
  right: unset;
  left: 32px;
}
.workstage-content-item-image {
  min-width: 160px;
  max-width: 160px;
  height: 160px;
  display: block;
  position: relative;
}
.workstage-content-item-image-box {
  transform: translate(-50%, -50%) rotate(45deg);
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  width: 70.4225352113%;
  height: 70.4225352113%;
  overflow: hidden;
  border-radius: 19px;
}
.workstage-content-item-image-box-wrap {
  width: 100%;
  height: 100%;
  position: relative;
}
.workstage-content-item-image img {
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 142%;
  position: absolute;
  left: 50%;
  top: 50%;
}
.workstage-content-item-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  margin-left: 16px;
}
.workstage-content-item-text-title {
  margin-bottom: 10px;
}
.workstage-content-item-text-description {
  width: 290px;
}
.workstage-content-item-icon {
  margin-left: 23px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 66px;
  min-width: 66px;
  height: 100%;
}
.workstage-content-item-icon::after {
  position: absolute;
  top: 0;
  right: 31px;
  z-index: -1;
  height: 100%;
  background-color: #F8F8F8;
  width: 3px;
  content: "";
}
.workstage-content-item-icon-text {
  width: 100%;
  height: 65px;
  background-color: #F8F8F8;
  color: #FA6427;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
}
.workstage-content-item-icon-text svg path {
  fill: #FA6427;
}

.contacts-form {
  background-color: #F8F8F8;
}
.contacts-form .container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.contacts-form-element {
  padding-top: 150px;
  padding-bottom: 150px;
}
.contacts-form-element-title {
  margin-bottom: 11px;
}
.contacts-form-element-description {
  margin-bottom: 80px;
}
.contacts-form-element-input {
  width: 350px;
  border: none;
  border-bottom: 1px solid #DADADA;
  padding-bottom: 6px;
  color: #FA6427;
  outline: none;
  background-color: transparent;
  margin-bottom: 32px;
}
.contacts-form-element-input:last-of-type {
  margin-bottom: 13px;
}
.contacts-form-element-input::-moz-placeholder {
  color: #1F1B20;
}
.contacts-form-element-input:-ms-input-placeholder {
  color: #1F1B20;
}
.contacts-form-element-input::placeholder {
  color: #1F1B20;
}
.contacts-form-element .custom-checkbox {
  margin-top: 0;
  margin-bottom: 30px;
  max-width: 100%;
}
.contacts-form-image {
  position: relative;
}
.contacts-form-image-abs {
  position: absolute;
  width: 50vw;
  left: 0;
  top: 0;
  height: 100%;
}
.contacts-form-image-wrap {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.contacts-form-image-element {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 100%;
  transform: translate(-50%, -50%);
}

.advantages-title {
  margin-bottom: 80px;
}
.advantages-description {
  max-width: 700px;
}
.advantages-content {
  margin-top: 50px;
  padding-top: 50px;
  border-top: 1px solid #DADADA;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 116px;
}
.advantages-content-item-title {
  color: #625F63;
  margin-bottom: 30px;
}
.advantages-content-item-list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  margin-bottom: 16px;
}
.advantages-content-item-list-item:last-of-type {
  margin-bottom: 0;
}
.advantages-content-item-list-item-icon {
  margin-right: 15px;
  margin-top: 2px;
}
.advantages-content-item-highlighted .advantages-content-item-title {
  color: #FA6427;
}

.sale-title {
  margin-bottom: 80px;
}
.sale-container {
  display: grid;
  grid-template-areas: "a b" "a c";
  grid-gap: 18px;
  grid-template-columns: repeat(2, 1fr);
}
.sale-item {
  position: relative;
  cursor: pointer;
}
.sale-item .btn-round {
  position: absolute;
  right: 30px;
  bottom: 30px;
}
.sale-item-image {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.sale-item-image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.sale-item-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: block;
  opacity: 1;
  transition: 0.3s ease-in-out;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(31, 27, 32, 0.92)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(31, 27, 32, 0.92) 100%);
}
.sale-item-image::before {
  content: "";
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: block;
  transition: 0.3s ease-in-out;
  background: linear-gradient(49.08deg, rgba(253, 208, 9, 0.6) 14.91%, rgba(252, 118, 33, 0.6) 44.7%, rgba(243, 47, 55, 0.6) 86.41%);
}
.sale-item:hover .sale-item-image::after {
  opacity: 0;
}
.sale-item:hover .sale-item-image::before {
  opacity: 1;
}
.sale-item:hover .btn {
  background-color: #FDD109 !important;
}
.sale-item-text {
  z-index: 10;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.sale-item-title {
  margin-bottom: 16px;
  color: #ffffff;
}
.sale-item-description {
  color: #ffffff;
}
.sale-item-main {
  grid-area: a;
  height: 100%;
}
.sale-item-extra-1 {
  grid-area: b;
  height: 220px;
}
.sale-item-extra-1 .sale-item-text {
  padding-right: 120px;
}
.sale-item-extra-2 {
  grid-area: c;
  height: 220px;
}
.sale-item-extra-2 .sale-item-text {
  padding-right: 120px;
}

.reviews-title {
  margin-bottom: 80px;
}
.reviews-content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 30px;
  margin-bottom: 50px;
}
.reviews-content-item {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 27px;
  position: relative;
}
.reviews-content-item-col {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 30px;
}
.reviews-content-item-video {
  height: 200px;
  width: 100%;
  position: relative;
}
.reviews-content-item-video-element {
  width: 100%;
  height: 100%;
}
.reviews-content-item-video-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}
.reviews-content-item-video-image:hover .reviews-content-item-video-image-icon {
  transform: translate(-50%, -50%) scale(1.1);
}
.reviews-content-item-video-image-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.reviews-content-item-video-image-wrap img {
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.reviews-content-item-video-image-icon {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 55px;
  height: 55px;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.35);
  cursor: pointer;
  padding-left: 2px;
  transition: 0.3s ease-in-out;
}
.reviews-content-item-text {
  border-bottom: 1px solid #DADADA;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.reviews-content-item-text-title {
  margin-bottom: 16px;
}
.reviews-content-item-text-link {
  text-decoration: underline;
  font-size: 12px;
  line-height: 140%;
  color: #5F5F5F;
  margin-top: 12px;
  cursor: pointer;
  transition: 0.3s ease-in-out;
}
.reviews-content-item-text-link:hover {
  color: #FA6427;
}
.reviews-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}
.reviews-social-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.reviews-social-text {
  margin-right: 15px;
}
.reviews-social-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}

.balloons {
  position: relative;
}
.balloons-bg-wrap {
  width: 100%;
  position: absolute;
  top: 10%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-center: center;
  z-index: -1;
  overflow: hidden;
}
.balloons-bg img {
  width: 2200px;
}
.balloons-wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 63px;
}
.balloons-item {
  position: relative;
  padding-bottom: 100%;
}
.balloons-item-wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 100%;
  background: linear-gradient(49.08deg, #FDD009 14.91%, #FC7621 44.7%, #F32F37 86.41%);
  padding-top: 64px;
  padding-left: 25px;
  padding-right: 25px;
}
.balloons-item-title {
  margin-bottom: 16px;
  color: #ffffff;
}
.balloons-item-description {
  color: #ffffff;
}
.balloons-btn {
  margin-left: auto;
  margin-right: auto;
  margin-top: 50px;
  display: block;
}

.contacts-title {
  color: #FA6427;
  margin-bottom: 36px;
}
.contacts-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 45px;
}
.contacts-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.contacts-text-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-row-gap: 50px;
  grid-column-gap: 38px;
}
.contacts-text-item {
  padding-bottom: 28px;
  border-bottom: 1px solid #DADADA;
}
.contacts-text-item .title {
  margin-bottom: 11px;
}
.contacts-text-item .value {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.contacts-text-item-link {
  transition: 0.3s ease-in-out;
}
.contacts-text-item-link:hover {
  color: #FA6427;
}
.contacts-text-item-link-social {
  margin-left: 7px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.contacts-text-item-link-social-item {
  margin-left: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.contacts-map {
  height: 380px;
}
.contacts-map #map {
  width: 100%;
  height: 100%;
}

.footer {
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #1F1B20;
}
.footer-container {
  display: grid;
  grid-template-columns: auto auto auto;
}
.footer-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.footer-logo {
  width: 152px;
  height: 94px;
  position: relative;
  overflow: hidden;
  margin-bottom: 46px;
}
.footer-logo img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.footer-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex-grow: 1;
}
.footer-social-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  margin-right: 20px;
}
.footer-social-item svg path {
  transition: 0.3s ease-in-out;
}
.footer-social-item:hover svg path {
  fill: #FDD109;
  fill-opacity: 1;
}
.footer-copyright {
  margin-top: 35px;
  color: #ffffff;
}
.footer-develop {
  margin-top: 11px;
  transition: 0.3s ease-in-out;
}
.footer-develop:hover {
  color: #ffffff;
}
.footer-menu {
  padding-top: 6px;
}
.footer-menu-item {
  margin-bottom: 9px;
}
.footer-menu-item:last-of-type {
  margin-bottom: 0;
}
.footer-menu-link {
  color: #ffffff;
  transition: 0.3s ease-in-out;
}
.footer-menu-link:hover {
  color: #FDD009;
}
.footer-form-title {
  color: #ffffff;
  margin-bottom: 40px;
}
.footer-form-input {
  border: none;
  outline: none;
  border-bottom: 1px solid #ffffff;
  padding-bottom: 3px;
  color: #FDD009;
  background-color: transparent;
  width: 350px;
  margin-bottom: 14px;
}
.footer-form-input::-moz-placeholder {
  color: #ffffff;
}
.footer-form-input:-ms-input-placeholder {
  color: #ffffff;
}
.footer-form-input::placeholder {
  color: #ffffff;
}
.footer-form .custom-checkbox-text {
  color: #ffffff;
}
.footer-form-btn {
  background-color: #ffffff;
  color: #1F1B20;
  margin-top: 28px;
}

.video {
  padding-top: 120px;
  padding-bottom: 120px;
  background-color: #F8F8F8;
}
.video-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 30px;
}
.video-text {
  padding-top: 70px;
}
.video-text-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}
.video-text-items-element {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 21px;
  margin-bottom: 21px;
  border-bottom: 1px solid #DADADA;
  cursor: pointer;
}
.video-text-items-element-icon {
  width: 37px;
  height: 37px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  border-radius: 100%;
}
.video-text-items-element.active .video-text-items-element-title {
  color: #FA6427;
}
.video-text-items-element:hover .video-text-items-element-icon {
  background-color: #FDD109;
}
.video-title {
  margin-bottom: 46px;
}
.video-item-element {
  display: none;
  width: 100%;
}
.video-item-element.active {
  display: block;
}
.video-item-element-block {
  padding-bottom: 90%;
  width: 100%;
  display: block;
  position: relative;
}
.video-item-element-block-element {
  width: 100%;
  height: 100%;
}
.video-item-element-block-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}
.video-item-element-block-image:hover .video-item-element-block-icon {
  transform: translate(-50%, -50%) scale(1.1);
}
.video-item-element-block-image-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.video-item-element-block-image-wrap img {
  position: relative;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}
.video-item-element-block-image-icon {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 55px;
  height: 55px;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.35);
  cursor: pointer;
  padding-left: 2px;
  transition: 0.3s ease-in-out;
}

.calc-new {
  padding-top: 190px;
  margin-bottom: 200px;
}
.calc-new-title {
  max-width: 780px;
  position: relative;
  margin-bottom: 70px;
}
.calc-new-title-figure {
  position: absolute;
  left: 0;
  top: 45px;
  width: 116px;
  height: 116px;
  background: linear-gradient(49.08deg, #FDD009 14.91%, #FC7621 44.7%, #F32F37 86.41%);
  border-radius: 100%;
  z-index: -1;
  transform: translateY(-100%);
}
.calc-new-line {
  width: 100%;
  position: relative;
  margin-bottom: 30px;
}
.calc-new-line::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: block;
  content: "";
  height: 2px;
  background-color: #DADADA;
  z-index: 0;
}
.calc-new-line-wrap {
  width: 100%;
  z-index: 1;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  padding-left: 20px;
  padding-right: 20px;
  justify-content: space-between;
}
.calc-new-line-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: -7px;
}
.calc-new-line-item .round {
  width: 17px;
  height: 17px;
  display: block;
  border-radius: 100%;
  background: #1F1B20;
  margin-bottom: 11px;
}
.calc-new-line-item.active .round {
  background: linear-gradient(54.62deg, #FC7621 12.66%, #F32F37 86.59%);
}
.calc-new-line-item.active .indicator {
  color: #FA6427;
}
.calc-new-questions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.calc-new-questions-grid {
  width: 100%;
}
.calc-new-questions-mobile-block {
  display: none;
}
.calc-new-questions-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 45px;
  align-items: stretch;
  width: 100%;
}
.calc-new-questions-item {
  display: none;
  background: #F8F8F8;
  padding: 30px 10px 30px 20px;
}
.calc-new-questions-item-title {
  color: #FA6427;
  margin-bottom: 20px;
}
.calc-new-questions-item-radio-label {
  margin-bottom: 16px;
  display: block;
  cursor: pointer;
}
.calc-new-questions-item-radio-label:last-child {
  margin-bottom: 0;
}
.calc-new-questions-item-radio-label-input {
  display: none;
}
.calc-new-questions-item-radio-label-input:checked ~ .calc-new-questions-item-radio-label-visible .calc-new-questions-item-radio-label-visible-icon span {
  display: block;
}
.calc-new-questions-item-radio-label-visible {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.calc-new-questions-item-radio-label-visible-icon {
  width: 17px;
  min-width: 17px;
  height: 17px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #DADADA;
  border-radius: 100%;
  margin-right: 15px;
}
.calc-new-questions-item-radio-label-visible-icon span {
  display: none;
  width: 9px;
  height: 9px;
  background: #FA6427;
  border-radius: 100%;
}
.calc-new-questions-btn {
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
}
.calc-new-final {
  display: none;
}
.calc-new-final-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-end;
  margin-bottom: 30px;
}
.calc-new-final-top .btn-renew-calc-new {
  display: none;
}
.calc-new-final-top-text {
  font-weight: 500;
  font-size: 24px;
  line-height: 140%;
  color: #000000;
  margin-right: 37px;
}
.calc-new-final-top-title {
  font-weight: bold;
  font-size: 36px;
  line-height: 100%;
  color: #FA6427;
}
.calc-new-final-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.calc-new-final-form .btn-renew-calc-new {
  margin-top: 40px;
}
.calc-new-final-form-block {
  background: #F8F8F8;
  padding: 30px;
}
.calc-new-final-form-title {
  margin-bottom: 20px;
}
.calc-new-final-form-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.calc-new-final-form-wrap .contacts-form-element-input-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-end;
}
.calc-new-final-form-wrap .contacts-form-element-input {
  width: 400px;
  margin-bottom: 0 !important;
}
.calc-new-final-form-wrap .custom-checkbox {
  margin-top: 15px;
}

.calc-new.state-1 .calc-new-questions-item:nth-child(1) {
  display: block;
}
.calc-new.state-1 .calc-new-questions-item:nth-child(2) {
  display: none;
}
.calc-new.state-1 .calc-new-questions-item:nth-child(3) {
  display: none;
}
.calc-new.state-1 .calc-new-questions-mobile-block {
  display: none;
}
.calc-new.state-1 .calc-new-final {
  display: none;
}
.calc-new.state-1 .calc-new-final-top {
  display: none;
}

.calc-new.state-2 .calc-new-questions-item:nth-child(1) {
  display: block;
}
.calc-new.state-2 .calc-new-questions-item:nth-child(2) {
  display: block;
}
.calc-new.state-2 .calc-new-questions-item:nth-child(3) {
  display: none;
}
.calc-new.state-2 .calc-new-questions-mobile-block {
  display: none;
}
.calc-new.state-2 .calc-new-final {
  display: none;
}
.calc-new.state-2 .calc-new-final-top {
  display: none;
}

.calc-new.state-3 .calc-new-questions-item:nth-child(1) {
  display: block;
}
.calc-new.state-3 .calc-new-questions-item:nth-child(2) {
  display: block;
}
.calc-new.state-3 .calc-new-questions-item:nth-child(3) {
  display: block;
}
.calc-new.state-3 .calc-new-questions-mobile-block {
  display: none;
}
.calc-new.state-3 .calc-new-final {
  display: none;
}
.calc-new.state-3 .calc-new-final-top {
  display: none;
}

.calc-new.state-4 .calc-new-questions-btn {
  display: none;
}
.calc-new.state-4 .calc-new-questions-item:nth-child(1) {
  display: none;
}
.calc-new.state-4 .calc-new-questions-item:nth-child(2) {
  display: none;
}
.calc-new.state-4 .calc-new-questions-item:nth-child(3) {
  display: none;
}
.calc-new.state-4 .calc-new-questions-mobile-block {
  display: none;
}
.calc-new.state-4 .calc-new-final {
  display: block;
}
.calc-new.state-4 .calc-new-final-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.modal-window-order {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000000000;
  background-color: rgba(248, 248, 248, 0.98);
  max-height: 100vh;
}
.modal-window-order-close {
  position: absolute;
  top: -60px;
  right: 0vw;
  cursor: pointer;
}
.modal-window-order-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 80px;
  padding-bottom: 40px;
}
.modal-window-order .container {
  position: relative;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.modal-window-order-thanks {
  display: none;
}
.modal-window-order-thanks-image {
  margin-bottom: 44px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}
.modal-window-order-thanks-title {
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.03em;
  color: #292929;
  text-align: center;
  margin-bottom: 29px;
}
.modal-window-order-thanks-description {
  max-width: 300px;
  font-size: 18px;
  line-height: 140.02%;
  text-align: center;
  letter-spacing: 0.01em;
  color: #292929;
  margin: 0 auto;
  margin-bottom: 29px;
}
.modal-window-order-thanks-btn {
  margin: 0 auto;
  border-color: #292929;
  color: #292929;
  width: 284px;
  height: 65px;
}
.modal-window-order-form {
  width: 100%;
  overflow-y: auto;
  max-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}
.modal-window-order-form-wrap {
  height: 100%;
  width: 100%;
}
.modal-window-order-form-title {
  margin-bottom: 23px;
}
.modal-window-order-form-subtitle {
  margin-bottom: 40px;
}
.modal-window-order-form-input {
  width: 100%;
  height: 70px;
  border: none;
  outline: none;
  padding-left: 28px;
  max-width: 690px;
  margin-bottom: 16px;
}
.modal-window-order-form-input::-moz-placeholder {
  color: rgba(163, 163, 163, 0.6);
}
.modal-window-order-form-input:-ms-input-placeholder {
  color: rgba(163, 163, 163, 0.6);
}
.modal-window-order-form-input::placeholder {
  color: rgba(163, 163, 163, 0.6);
}
.modal-window-order-form-btn {
  border-color: #292929;
  color: #292929;
  width: 284px;
  height: 65px;
}
.modal-window-order-form .custom-checkbox {
  width: 100%;
  margin-top: 0;
  margin-bottom: 40px;
}
@media (max-width: 1170px) {
  .modal-window-order-form-title {
    margin-bottom: 23px;
  }
  .modal-window-order-form-subtitle {
    margin-bottom: 60px;
  }
  .modal-window-order-form-input {
    height: 89px;
    margin-bottom: 20px;
  }
}
@media (max-width: 768px) {
  .form-input-upload-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .modal-window-order-close {
    width: 43px;
    height: 43px;
    top: -70px;
  }
  .modal-window-order-close svg {
    width: 100%;
  }
  .modal-window-order-wrap {
    padding-top: 50px;
  }
  .modal-window-order-form-title {
    margin-bottom: 16px;
  }
  .modal-window-order-form-subtitle {
    margin-bottom: 50px;
  }
  .modal-window-order-form-input {
    height: 69px;
  }
}
@media (max-width: 1259px) {
  .container {
    width: 1140px;
    margin: 0 auto;
  }
}
@media (max-width: 1169px) {
  .container {
    width: 960px;
    margin: 0 auto;
  }

  .main-bg img {
    width: 1800px;
  }

  .header-menu-item {
    margin-right: 20px;
  }
  .main-image {
    min-width: 500px;
    max-width: 500px;
    height: 500px;
  }
  .about {
    margin-top: 170px;
  }
  .about-image {
    width: 420px;
    height: 308px;
  }
  .help-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
  .help-item {
    padding-top: 50px;
    min-height: 280px;
  }
  .help-item-content {
    max-width: 317px;
  }
  .calc-new-questions-wrap {
    grid-gap: 25px;
  }
  .calc-new-final-form-wrap .contacts-form-element-input {
    width: 270px;
  }
  .video {
    padding-top: 110px;
    padding-bottom: 110px;
  }
  .video-text {
    padding-top: 35px;
  }
  .calc-round-2 {
    z-index: 0;
    bottom: 339px;
  }
  .calc-wrap-container {
    grid-template-columns: 1fr;
    grid-gap: 50px;
  }
  .calc-wrap-container-item-final {
    padding-left: 0;
  }
  .workstage-content-item {
    width: 100%;
    justify-content: flex-start;
  }
  .workstage-content-item-left {
    margin-left: 0;
  }
  .workstage-content-item-left .workstage-content-item-image {
    order: 1;
  }
  .workstage-content-item-left .workstage-content-item-text {
    order: 2;
  }
  .workstage-content-item-left .workstage-content-item-icon {
    margin-right: 40px;
    order: 0;
  }
  .workstage-content-item-image {
    order: 1;
  }
  .workstage-content-item-text {
    order: 2;
  }
  .workstage-content-item-icon {
    margin-left: 0;
    order: 0;
    margin-right: 40px;
  }
  .workstage-content-item-icon::after {
    right: unset;
    left: 32px;
  }
  .reviews-content-item {
    grid-template-columns: 40% 60%;
  }
  .reviews-content-item-video {
    height: 160px;
  }
  .balloons-wrap {
    grid-gap: 35px;
  }
}
@media (max-width: 991px) {
  body {
    padding-bottom: 60px;
  }

  .container {
    width: 740px;
    margin: 0 auto;
  }

  .main-bg img {
    width: 1500px;
  }

  .mobile-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 100;
    width: 100vw;
    bottom: 0;
    position: fixed;
  }
  .mobile-menu-container {
    width: 100%;
    background-color: #5F5F5F;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px;
  }
  .mobile-menu-container-icon {
    height: 26px;
    width: 32px;
    position: relative;
  }
  .mobile-menu-container-icon.active span {
    background-color: #FA6427;
  }
  .mobile-menu-container-icon.active span:nth-child(1) {
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
  }
  .mobile-menu-container-icon.active span:nth-child(2) {
    top: 50%;
    opacity: 0;
    transform: translate(-50%, -50%);
  }
  .mobile-menu-container-icon.active span:nth-child(3) {
    top: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .mobile-menu-container-icon span {
    width: 100%;
    background-color: #fff;
    border-radius: 2px;
    height: 3px;
    position: absolute;
    display: block;
    left: 50%;
    transition: 0.3s ease-in-out;
    opacity: 1;
  }
  .mobile-menu-container-icon span:nth-child(1) {
    top: 0;
    transform: translate(-50%, 0);
  }
  .mobile-menu-container-icon span:nth-child(2) {
    top: 50%;
    transform: translate(-50%, -50%);
  }
  .mobile-menu-container-icon span:nth-child(3) {
    top: 100%;
    transform: translate(-50%, -100%);
  }
  .mobile-menu-container-list {
    display: none;
    position: absolute;
    bottom: 60px;
    height: calc(100vh - 60px);
    background-color: #F8F8F8;
    width: 100%;
  }
  .mobile-menu-container-list-wrap {
    padding-top: 30px;
    overflow-y: auto;
    width: 100%;
    height: calc(100vh - 60px);
    padding-bottom: 30px;
  }
  .mobile-menu-container-list-wrap .mobile-menu-list {
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .mobile-menu-container-list-wrap .mobile-menu-list-item {
    width: 120px;
    margin-bottom: 25px;
  }
  .mobile-menu-container-list-wrap .mobile-menu-list-item:last-of-type {
    margin-bottom: 0;
  }

  .header-container {
    align-items: center;
  }
  .header-wrap {
    flex-direction: column;
  }
  .header-contact {
    flex-direction: column;
    align-items: flex-end;
  }
  .header-contact .header-city {
    margin-bottom: 10px;
    margin-right: 0;
  }
  .header-menu {
    display: none;
  }
  .main-text-title {
    font-size: 26px;
    margin-bottom: 22px;
  }
  .main-text-subtitle {
    margin-bottom: 35px;
  }
  .main-image {
    min-width: 350px;
    max-width: 350px;
    height: 350px;
  }
  .about {
    margin-top: 120px;
  }
  .about-container {
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .about-image {
    margin-top: 112px;
    margin-bottom: 50px;
    width: 100%;
    height: 450px;
  }
  .about-text {
    width: 100%;
  }
  .about-title {
    position: absolute;
    top: 0;
    left: 0;
  }
  .video-wrap {
    grid-template-columns: 1fr;
    grid-gap: unset;
  }
  .video-text {
    padding-top: 0;
  }
  .video-text-items-element:last-child {
    border-bottom: none;
  }
  .video-text-items-element-icon {
    background-color: #fff;
  }
  .video-text-items-element.active .video-text-items-element-icon {
    background-color: #FDD109;
  }
  .video-item-element-block {
    padding-bottom: 60%;
  }
  .calc-new-questions-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 28px;
  }
  .calc-new-questions-mobile-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    font-weight: 500;
    font-size: 20px;
    line-height: 140%;
  }
  .calc-new-questions-wrap {
    grid-template-columns: 1fr;
  }
  .calc-new-final-top {
    display: none;
  }
  .calc-new-final-top .btn-renew-calc-new {
    display: block;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
  }
  .calc-new-final-form .btn-renew-calc-new {
    display: none;
  }
  .calc-new-final-form-title {
    margin-bottom: 30px;
  }
  .calc-new-final-form-wrap {
    flex-direction: column;
  }
  .calc-new-final-form-wrap .contacts-form-element-input-wrap {
    margin-bottom: 20px;
  }
  .calc-new-final-form-wrap .contacts-form-element-input {
    width: 100%;
  }
  .calc-new-final-form-wrap .btn {
    order: 1;
    margin-top: 20px;
  }
  .calc-new-final-form-wrap .custom-checkbox {
    margin-top: 0;
  }

  .calc-new.state-1 .calc-new-questions-item:nth-child(1) {
    display: block;
  }
  .calc-new.state-1 .calc-new-questions-item:nth-child(2) {
    display: none;
  }
  .calc-new.state-1 .calc-new-questions-item:nth-child(3) {
    display: none;
  }
  .calc-new.state-1 .calc-new-questions-mobile-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .calc-new.state-1 .calc-new-final {
    display: none;
  }
  .calc-new.state-1 .calc-new-final-top {
    display: none;
  }

  .calc-new.state-2 .calc-new-questions-item:nth-child(1) {
    display: none;
  }
  .calc-new.state-2 .calc-new-questions-item:nth-child(2) {
    display: block;
  }
  .calc-new.state-2 .calc-new-questions-item:nth-child(3) {
    display: none;
  }
  .calc-new.state-2 .calc-new-questions-mobile-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .calc-new.state-2 .calc-new-final {
    display: none;
  }
  .calc-new.state-2 .calc-new-final-top {
    display: none;
  }

  .calc-new.state-3 .calc-new-questions-item:nth-child(1) {
    display: none;
  }
  .calc-new.state-3 .calc-new-questions-item:nth-child(2) {
    display: none;
  }
  .calc-new.state-3 .calc-new-questions-item:nth-child(3) {
    display: block;
  }
  .calc-new.state-3 .calc-new-questions-mobile-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .calc-new.state-3 .calc-new-final {
    display: none;
  }
  .calc-new.state-3 .calc-new-final-top {
    display: none;
  }
}
@media (max-width: 991px) and (min-width: 768px) {
  .calc-new.state-4 .calc-new-questions-item:nth-child(1) {
    display: none;
  }
  .calc-new.state-4 .calc-new-questions-item:nth-child(2) {
    display: none;
  }
  .calc-new.state-4 .calc-new-questions-item:nth-child(3) {
    display: none;
  }
  .calc-new.state-4 .calc-new-questions-mobile-block {
    display: none;
  }
  .calc-new.state-4 .calc-new-final {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 28px;
  }
  .calc-new.state-4 .calc-new-final-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    order: 1;
  }
  .calc-new.state-4 .calc-new-final-top .calc-new-final-top-text {
    font-weight: 500;
    font-size: 20px;
    line-height: 140%;
  }
  .calc-new.state-4 .calc-new-final-top .calc-new-final-top-title {
    font-weight: bold;
    font-size: 30px;
    line-height: 100%;
    margin-top: 15px;
  }
  .calc-new.state-4 .calc-new-questions-btn {
    display: none;
  }
}
@media (max-width: 991px) {
  .contacts-form .container {
    grid-template-columns: 1fr;
  }
  .contacts-form-element {
    padding-bottom: 70px;
  }
  .contacts-form-element-input {
    display: block;
    width: 100%;
  }
  .contacts-form-image {
    width: 100%;
    padding-bottom: 72%;
  }
  .contacts-form-image-abs {
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
  }
  .contacts-form-image-element {
    width: 100%;
    height: unset;
  }
}
@media (max-width: 991px) {
  .advantages-content {
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 80px;
    grid-row-gap: 40px;
  }
}
@media (max-width: 991px) {
  .sale-container {
    grid-template-areas: "a" "b" "c";
    grid-gap: 18px;
    grid-template-columns: 1fr;
  }
  .sale-item-image img {
    height: unset;
    width: 100%;
  }
  .sale-item-main {
    height: unset;
  }
  .sale-item-main .sale-item-image {
    height: unset;
    padding-bottom: 72%;
  }
  .sale-item-extra-1 {
    height: 270px;
  }
  .sale-item-extra-2 {
    height: 270px;
  }
}
@media (max-width: 991px) {
  .reviews-content-item-text-description {
    max-width: 280px;
  }
}
@media (max-width: 991px) {
  .balloons-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .balloons-item {
    margin-top: 20px;
    margin-bottom: 20px;
    width: 240px;
    padding-bottom: 0;
    height: 240px;
    margin-left: 35px;
    margin-right: 35px;
  }
  .balloons-item:nth-child(1) {
    margin-top: 0;
  }
  .balloons-item:nth-child(2) {
    margin-top: 0;
  }
  .balloons-btn {
    margin-top: 20px;
  }
}
@media (max-width: 991px) {
  .contacts-wrap {
    grid-template-columns: 1fr;
  }
  .contacts-text-wrap {
    width: 100%;
    grid-column-gap: 1fr;
  }
  .contacts-text-item {
    width: 270px;
  }
}
@media (max-width: 991px) {
  .footer-container {
    grid-template-columns: auto auto 350px;
  }
  .footer-logo {
    width: 150px;
  }
}
@media (max-width: 767px) {
  .container {
    width: 540px;
    margin: 0 auto;
  }

  .main-bg img {
    width: 1800px;
    margin-right: 100px;
  }

  .header-logo {
    width: 124px;
  }
  .header-contact-phone {
    font-size: 17px;
  }
  .modal-city-item {
    margin-top: 20px;
  }

  .main {
    padding-top: 60px;
  }
  .main-container {
    flex-direction: column;
    align-items: flex-start;
  }
  .main-text {
    max-width: 450px;
    margin-bottom: 30px;
  }
  .main-image {
    min-width: 540px;
    max-width: 540px;
    height: 540px;
  }
  .about {
    margin-top: 65px;
  }
  .about-image {
    margin-top: 90px;
    margin-bottom: 40px;
    height: 350px;
  }
  .video {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .video-text-items-element {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .video-text-items-element-icon {
    margin-left: 20px;
    width: 31px;
    height: 31px;
  }
  .video-title {
    margin-bottom: 50px;
  }
  .calc-new-line-wrap {
    padding-left: 0;
    padding-right: 0;
  }
  .calc-new-questions-grid {
    width: 100%;
    grid-template-columns: 1fr;
  }
  .calc-new-questions-mobile-block {
    display: none;
  }
  .calc-new-final-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .calc-new-final-top-text {
    font-size: 20px;
    line-height: 140%;
  }
  .calc-new-final-top-title {
    margin-top: 10px;
    font-size: 30px;
    line-height: 100%;
  }
  .calc-new-final-form-wrap .btn {
    width: 100%;
  }
  .calc-new.state-1 .calc-new-questions-item:nth-child(1) {
    display: block;
  }
  .calc-new.state-1 .calc-new-questions-item:nth-child(2) {
    display: none;
  }
  .calc-new.state-1 .calc-new-questions-item:nth-child(3) {
    display: none;
  }
  .calc-new.state-1 .calc-new-questions-mobile-block {
    display: none;
  }
  .calc-new.state-1 .calc-new-final {
    display: none;
  }
  .calc-new.state-1 .calc-new-final-top {
    display: none;
  }

  .calc-new.state-2 .calc-new-questions-item:nth-child(1) {
    display: none;
  }
  .calc-new.state-2 .calc-new-questions-item:nth-child(2) {
    display: block;
  }
  .calc-new.state-2 .calc-new-questions-item:nth-child(3) {
    display: none;
  }
  .calc-new.state-2 .calc-new-questions-mobile-block {
    display: none;
  }
  .calc-new.state-2 .calc-new-final {
    display: none;
  }
  .calc-new.state-2 .calc-new-final-top {
    display: none;
  }

  .calc-new.state-3 .calc-new-questions-item:nth-child(1) {
    display: none;
  }
  .calc-new.state-3 .calc-new-questions-item:nth-child(2) {
    display: none;
  }
  .calc-new.state-3 .calc-new-questions-item:nth-child(3) {
    display: block;
  }
  .calc-new.state-3 .calc-new-questions-mobile-block {
    display: none;
  }
  .calc-new.state-3 .calc-new-final {
    display: none;
  }
  .calc-new.state-3 .calc-new-final-top {
    display: none;
  }

  .calc-new.state-4 .calc-new-questions-btn {
    display: none;
  }
  .calc-new.state-4 .calc-new-questions-item:nth-child(1) {
    display: none;
  }
  .calc-new.state-4 .calc-new-questions-item:nth-child(2) {
    display: none;
  }
  .calc-new.state-4 .calc-new-questions-item:nth-child(3) {
    display: none;
  }
  .calc-new.state-4 .calc-new-questions-mobile-block {
    display: none;
  }
  .calc-new.state-4 .calc-new-final {
    display: block;
  }
  .calc-new.state-4 .calc-new-final-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .help-title {
    margin-bottom: 60px;
  }
  .calc-wrap-container-item-final-top-title {
    width: 150px;
  }
  .calc-wrap-container-item-final-top-content {
    padding-top: 1px;
  }
  .calc-wrap-container-item-final-bottom .title {
    width: 150px;
  }
  .calc-wrap-container-item-final-bottom .value {
    padding-top: 1px;
    white-space: nowrap;
  }

  .workstage-content-item-left .workstage-content-item-icon {
    margin-right: 20px;
  }
  .workstage-content-item-image {
    min-width: 120px;
    max-width: 120px;
    height: 120px;
  }
  .workstage-content-item-icon {
    margin-right: 20px;
  }
  .balloons-wrap {
    grid-gap: unset;
  }
  .balloons-item {
    margin-left: 0;
    margin-right: 0;
    width: 220px;
    height: 220px;
  }
  .balloons-item:nth-child(1) {
    margin-right: 30px;
  }
  .balloons-item:nth-child(2) {
    margin-left: 30px;
  }
  .balloons-item:nth-child(3) {
    margin-right: 30px;
  }
  .balloons-item:nth-child(4) {
    margin-left: 30px;
  }
  .contacts-text-item {
    width: 100%;
  }
  .footer-menu {
    margin-left: 40px;
    flex-grow: 1;
    min-width: 150px;
  }
  .footer-form {
    display: none;
  }
}
@media (max-width: 575px) {
  .container {
    width: 100%;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
  }

  .header {
    padding-top: 0;
  }
  .header-container {
    align-items: flex-start;
    padding-top: 5px;
  }
  .header-contact__block {
    margin-top: 0;
    margin-bottom: 0;
    flex-direction: column;
    align-items: flex-end;
    padding-top: 5px;
  }
  .header-contact .header-city {
    margin-bottom: 0;
  }
  .header-contact-phone {
    margin-right: 0;
    margin-bottom: 5px;
  }
  .modal-city-content {
    flex-grow: 1;
    height: auto;
    max-height: 650px;
  }

  .modal-city-content {
    max-height: unset;
  }

  .main-image {
    margin-left: -15px;
    width: 100vw;
    min-width: 100vw;
    max-width: 100vw;
    height: 100vw;
  }
  .about-image {
    height: calc(70vw - 30px);
  }
  .about-title {
    left: 15px;
  }
  .help-wrap {
    grid-template-columns: 1fr;
  }
  .help-item {
    height: 270px;
    min-height: 270px;
  }
  .example-slider-item-images {
    grid-template-columns: 1fr;
  }
  .example-slider-item-text {
    padding-left: 10px;
    padding-right: 10px;
    width: 100%;
  }
  .example-slider-item-text-item .title {
    font-size: 12px;
  }
  .example-slider-item-text-item .value {
    font-size: 12px;
  }
  .example-slider-item-text-cart {
    margin-left: auto;
  }
  .example-slider-item-text-time {
    margin-left: 10px;
  }

  .calc {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .calc-round-1 {
    top: 24px;
    z-index: 0;
  }
  .calc-round-2 {
    display: none;
    z-index: 0;
    bottom: 339px;
    left: -10px;
  }
  .calc-description {
    position: relative;
  }
  .calc-wrap-container-item-top {
    grid-template-columns: repeat(2, 1fr);
  }
  .calc-wrap-container-item-bottom {
    grid-template-columns: 1fr;
  }
  .calc-wrap-container-item-final-top {
    flex-direction: column;
  }
  .calc-wrap-container-item-final-top-title {
    margin-bottom: 16px;
  }
  .calc-wrap-container-item-final-top-content-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .calc-wrap-container-item-final-top-content-item .title {
    font-weight: 600;
    width: 170px;
    margin-right: 0;
  }
  .calc-wrap-container-item-final-bottom .title {
    width: 140px;
    margin-right: 30px;
  }
  .workstage-content-item {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .workstage-content-item-left .workstage-content-item-icon:after {
    left: 25px;
  }
  .workstage-content-item-image {
    display: none;
  }
  .workstage-content-item-text-description {
    width: 100%;
  }
  .workstage-content-item-icon {
    width: 55px;
    min-width: 55px;
  }
  .workstage-content-item-icon::after {
    left: 25px;
  }
  .workstage-content-item-icon-text {
    height: 55px;
  }
  .contacts-form-element {
    padding-top: 70px;
  }
  .contacts-form-image {
    padding-bottom: 100%;
  }
  .contacts-form-image-element {
    width: unset;
    height: 100%;
  }

  .advantages-title {
    margin-bottom: 60px;
  }
  .advantages-content {
    grid-template-columns: 1fr;
  }
  .sale-title {
    margin-bottom: 60px;
  }
  .sale-item .btn-round {
    position: relative;
    margin-top: 10px;
    right: 0;
    bottom: 0;
    width: 50px;
    height: 50px;
  }
  .sale-item-image img {
    width: unset;
    height: 100%;
  }
  .sale-item-main .sale-item-image {
    padding-bottom: 160%;
  }
  .sale-item-extra-1 .sale-item-text {
    padding-right: 0px;
  }
  .sale-item-extra-2 .sale-item-text {
    padding-right: 0px;
  }

  .reviews-content .reviews-content-item-col {
    grid-gap: 40px;
  }
  .reviews-content-item {
    grid-template-columns: 1fr;
  }
  .reviews-content-item-video {
    height: 230px;
  }
  .reviews-content-item-text {
    padding-top: 0;
    padding-bottom: 40px;
  }
  .reviews-content-item-text-description {
    height: unset;
  }
  .balloons-wrap {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 30px;
  }
  .balloons-item {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .balloons-item:nth-child(1) {
    margin-left: 0;
    margin-right: 0;
  }
  .balloons-item:nth-child(2) {
    margin-left: 0;
    margin-right: 0;
  }
  .balloons-item:nth-child(3) {
    margin-left: 0;
    margin-right: 0;
  }
  .balloons-item:nth-child(4) {
    margin-left: 0;
    margin-right: 0;
  }
  .contacts-text-wrap {
    grid-template-columns: 1fr;
    grid-row-gap: 50px;
    grid-column-gap: 38px;
  }
}
.hidden {
    display: none;
}
