@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2017 Daniel Eden
 */

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

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

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

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

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    transform: translate3d(0,-4px,0);
  }
}

.bounce {
  animation-name: bounce;
  transform-origin: center bottom;
}

@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

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

.flash {
  animation-name: flash;
}

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

@keyframes pulse {
  from {
    transform: scale3d(1, 1, 1);
  }

  50% {
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  animation-name: pulse;
}

@keyframes rubberBand {
  from {
    transform: scale3d(1, 1, 1);
  }

  30% {
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    transform: scale3d(1.05, .95, 1);
  }

  to {
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  animation-name: rubberBand;
}

@keyframes shake {
  from, to {
    transform: translate3d(0, 0, 0);
  }

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

  20%, 40%, 60%, 80% {
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  animation-name: shake;
}

@keyframes headShake {
  0% {
    transform: translateX(0);
  }

  6.5% {
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    transform: translateX(0);
  }
}

.headShake {
  animation-timing-function: ease-in-out;
  animation-name: headShake;
}

@keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

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

@keyframes tada {
  from {
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  animation-name: tada;
}

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

@keyframes wobble {
  from {
    transform: none;
  }

  15% {
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    transform: none;
  }
}

.wobble {
  animation-name: wobble;
}

@keyframes jello {
  from, 11.1%, to {
    transform: none;
  }

  22.2% {
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  animation-name: jello;
  transform-origin: center;
}

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }

  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    transform: scale3d(.9, .9, .9);
  }

  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    transform: scale3d(.97, .97, .97);
  }

  to {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  animation-name: bounceIn;
}

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }

  75% {
    transform: translate3d(0, -10px, 0);
  }

  90% {
    transform: translate3d(0, 5px, 0);
  }

  to {
    transform: none;
  }
}

.bounceInDown {
  animation-name: bounceInDown;
}

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }

  75% {
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    transform: translate3d(5px, 0, 0);
  }

  to {
    transform: none;
  }
}

.bounceInLeft {
  animation-name: bounceInLeft;
}

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    transform: translate3d(10px, 0, 0);
  }

  90% {
    transform: translate3d(-5px, 0, 0);
  }

  to {
    transform: none;
  }
}

.bounceInRight {
  animation-name: bounceInRight;
}

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }

  75% {
    transform: translate3d(0, 10px, 0);
  }

  90% {
    transform: translate3d(0, -5px, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  animation-name: bounceInUp;
}

@keyframes bounceOut {
  20% {
    transform: scale3d(.9, .9, .9);
  }

  50%, 55% {
    opacity: 1;
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }
}

.bounceOut {
  animation-name: bounceOut;
}

@keyframes bounceOutDown {
  20% {
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  animation-name: bounceOutDown;
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  animation-name: bounceOutLeft;
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  animation-name: bounceOutRight;
}

@keyframes bounceOutUp {
  20% {
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  animation-name: bounceOutUp;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  animation-name: fadeIn;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInDown {
  animation-name: fadeInDown;
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInDownBig {
  animation-name: fadeInDownBig;
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInLeft {
  animation-name: fadeInLeft;
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInLeftBig {
  animation-name: fadeInLeftBig;
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInRight {
  animation-name: fadeInRight;
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInRightBig {
  animation-name: fadeInRightBig;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInUp {
  animation-name: fadeInUp;
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInUpBig {
  animation-name: fadeInUpBig;
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  animation-name: fadeOutDown;
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  animation-name: fadeOutDownBig;
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  animation-name: fadeOutLeft;
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  animation-name: fadeOutLeftBig;
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  animation-name: fadeOutRight;
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  animation-name: fadeOutRightBig;
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  animation-name: fadeOutUp;
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  animation-name: fadeOutUpBig;
}

@keyframes flip {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    animation-timing-function: ease-out;
  }

  40% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    animation-timing-function: ease-out;
  }

  50% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    animation-timing-function: ease-in;
  }

  80% {
    transform: perspective(400px) scale3d(.95, .95, .95);
    animation-timing-function: ease-in;
  }

  to {
    transform: perspective(400px);
    animation-timing-function: ease-in;
  }
}

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

@keyframes flipInX {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    animation-timing-function: ease-in;
  }

  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    transform: perspective(400px);
  }
}

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

@keyframes flipInY {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    animation-timing-function: ease-in;
  }

  60% {
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    transform: perspective(400px);
  }
}

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

@keyframes flipOutX {
  from {
    transform: perspective(400px);
  }

  30% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

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

@keyframes flipOutY {
  from {
    transform: perspective(400px);
  }

  30% {
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

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

@keyframes lightSpeedIn {
  from {
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    transform: skewX(-5deg);
    opacity: 1;
  }

  to {
    transform: none;
    opacity: 1;
  }
}

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

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  animation-name: lightSpeedOut;
  animation-timing-function: ease-in;
}

@keyframes rotateIn {
  from {
    transform-origin: center;
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    transform-origin: center;
    transform: none;
    opacity: 1;
  }
}

.rotateIn {
  animation-name: rotateIn;
}

@keyframes rotateInDownLeft {
  from {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    transform-origin: left bottom;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownLeft {
  animation-name: rotateInDownLeft;
}

@keyframes rotateInDownRight {
  from {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    transform-origin: right bottom;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownRight {
  animation-name: rotateInDownRight;
}

@keyframes rotateInUpLeft {
  from {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    transform-origin: left bottom;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpLeft {
  animation-name: rotateInUpLeft;
}

@keyframes rotateInUpRight {
  from {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    transform-origin: right bottom;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpRight {
  animation-name: rotateInUpRight;
}

@keyframes rotateOut {
  from {
    transform-origin: center;
    opacity: 1;
  }

  to {
    transform-origin: center;
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  animation-name: rotateOut;
}

@keyframes rotateOutDownLeft {
  from {
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  animation-name: rotateOutDownLeft;
}

@keyframes rotateOutDownRight {
  from {
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  animation-name: rotateOutDownRight;
}

@keyframes rotateOutUpLeft {
  from {
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  animation-name: rotateOutUpLeft;
}

@keyframes rotateOutUpRight {
  from {
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  animation-name: rotateOutUpRight;
}

@keyframes hinge {
  0% {
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    transform: rotate3d(0, 0, 1, 80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }

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

  to {
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  animation-name: hinge;
}

@keyframes jackInTheBox {
  from {
    opacity: 0;
    transform: scale(0.1) rotate(30deg);
    transform-origin: center bottom;
  }

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

  70% {
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.jackInTheBox {
  animation-name: jackInTheBox;
}

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

@keyframes rollIn {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.rollIn {
  animation-name: rollIn;
}

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

@keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  animation-name: rollOut;
}

@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  animation-name: zoomIn;
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInDown {
  animation-name: zoomInDown;
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInLeft {
  animation-name: zoomInLeft;
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInRight {
  animation-name: zoomInRight;
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInUp {
  animation-name: zoomInUp;
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

.zoomOut {
  animation-name: zoomOut;
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutDown {
  animation-name: zoomOutDown;
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    transform: scale(.1) translate3d(-2000px, 0, 0);
    transform-origin: left center;
  }
}

.zoomOutLeft {
  animation-name: zoomOutLeft;
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    transform: scale(.1) translate3d(2000px, 0, 0);
    transform-origin: right center;
  }
}

.zoomOutRight {
  animation-name: zoomOutRight;
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutUp {
  animation-name: zoomOutUp;
}

@keyframes slideInDown {
  from {
    transform: translate3d(0, -16%, 0);
    visibility: visible;
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  animation-name: slideInDown;
}

@keyframes slideInLeft {
  from {
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  animation-name: slideInLeft;
}

@keyframes slideInRight {
  from {
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  animation-name: slideInRight;
}

@keyframes slideInUp {
  from {
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  animation-name: slideInUp;
}

@keyframes slideOutDown {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  animation-name: slideOutDown;
}

@keyframes slideOutLeft {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  animation-name: slideOutLeft;
}

@keyframes slideOutRight {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  animation-name: slideOutRight;
}

@keyframes slideOutUp {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  animation-name: slideOutUp;
}


/* --- GLOBAL STYLES --- */
html {
	overflow-x: hidden;
}

* {
	background: none;
}

body {
	background-color: #fff;
	color: #000;
	font-family: 'Rubik', sans-serif;
	min-width: 320px;
	overflow-x: hidden;
        padding: 0 !important;
}

img {
	max-width: 100%;
}

h4, h5, h6 {
	font-weight: 700;
}

h4 {
	font-size: 18px;
}

h5 {
	font-size: 16px;
}

h6 {
	font-size: 14px;
}

p {
	margin: 0;
}

b {
	font-weight: 500;
}

/* --- END GLOBAL STYLES --- */


/* --- GLOBALL CLASS STYLES --- */

/* header styles */
.header-lg {
	font-size: 60px;
	font-weight: 900;
	letter-spacing: 12px;
	text-align: center;
	text-transform: uppercase;
}

h1.header-lg {
	margin-top: 45px;
}

.header-slider {
    color: #fff;
    font-size: 50px;
    font-weight: 700;
    text-transform: uppercase;
}

.header-content {
	color: #dcdee0;
	bottom: 150px;
	font-size: 58px;
	font-weight: 700;
	margin: 0;
	padding: 0;
	position: relative;
	right: 19px;
	text-transform: uppercase;
}

.header-sidebar {
	color: #f3f3f3;
	bottom: 50px;
	font-size: 58px;
	font-weight: 700;
	margin: 0;
	padding: 0;
	position: relative;
    right: 19px;
	text-transform: uppercase;
}

.logo {
	position: relative;
    bottom: 8px;
}
.logo img {
	max-width: 130px;
}

.telephones .orange {
    color: #ed802f;
	font-weight: 700;
}

.telephones a:hover{
    text-decoration: none;
}

.telephones a {
    color: #000;
}

/* bg styles */
.bg-grey {
	background-color: #efefef;
}

.bg-blue {
    background-image: url(../img/contacts-bg.png);
    background-position: center;
}

.bg-black {
	background-color: #231f20;
}

/* height styles */
.height-lg {
	margin-bottom: 65px;
	margin-top: 65px;
}

.height-md {
	margin-bottom: 45px;
	margin-top: 45px;
}

.height-sm {
	margin-bottom: 35px;
	margin-top: 35px;
}

.height-xs {
	margin-top: 20px;
}

.height-xs > div {
	margin-bottom: 20px;
}


/* btn styles */
.btn {
	border: none;
	border-radius: 2px;
	color: #000;
	padding: 8.5px 12px;
	position: relative;
	outline: none !Important;
}

.btn-lg {
	border-radius: 5px;
	font-size: 14px;
	font-weight: 500;
	padding: 26px 40px 24px;
	text-transform: uppercase;
}

.btn-cb {
	border: none;
	border-radius: 5px;
	padding: 16px 28px 14px;
	line-height: 125%;
}

.btn-buy {
	font-weight: 700;
	padding: 12px 16px 10px;
	transition: all 0.2s ease-in-out;
}

.btn-buy i {
	color: #408a00;
	font-size: 14px;
	padding-right: 12px;
	vertical-align: text-top;
}

.btn-default {
	background-color: #c9ff9b;
	border: 5px solid rgba(255, 255, 255, 1);
	transition: all 0.2s ease-in-out;
}

.btn-default:hover,
.btn-default:active, 
.btn-default:focus {
	background-color: #c9ff9b;
	border: 5px solid #c9ff9c;
	color: inherit;
	transition: all 0.2s ease-in-out;
}

.btn-success {
	background-color: #8fe741;
	border: none;
	transition: all 0.2s ease-in-out;
}

.btn-success:hover,
.btn-success:active, 
.btn-success:focus {
	background-color: #a9ff5f;
	color: #000;
	transition: all 0.2s ease-in-out;
}

.btn-success-lumin {
	background-color: #8fe741;
	box-shadow: 0px 7px 18px 0px rgba(145, 247, 0, 0.51);
}

.btn-success-lumin:hover, 
.btn-success-lumin:active, 
.btn-success-lumin:focus {
  	background-color: #a9ff5f;
	box-shadow: 0px 7px 18px 0px rgba(145, 247, 0, 0.51);
}

.btn-warning {
	background-color: #ffcb00;
	box-shadow: 0px 7px 18px 0px rgba(255, 222, 0, 0.51);
}

.btn-warning:hover,
.btn-warning:active, 
.btn-warning:focus {
	background-color: #ffe63e;
	box-shadow: 0px 7px 18px 0px rgba(255, 222, 0, 0.51);
	color: #000;
}

/* btm brackets */
a.btn-bracket::before {
	content: url(../img/bracket-left.svg);
	left: 0;
	position: absolute;
	top: 0;
	transition: all 0.2s ease-in-out;
}



a.btn-bracket:hover::before {
	content: url(../img/bracket-left.svg);
	left: 0;
	position: absolute;
	top: 0;
	transition: all 0.2s ease-in-out;
}

a.btn-bracket::after {
	content: url(../img/bracket-right.svg);
	position: absolute;
	right: 0;
	top: 0;
	transition: 0.2s ease-in-out;
}

a.btn-bracket:hover::after {
	content: url(../img/bracket-right.svg);
	right: 0;
	position: absolute;
	top: 0;
	transition: all 0.2s ease-in-out;
}

a.btn-sm-bracket::before {
	content: url(../img/bracket-sm-left.svg);
	left: 15px;
	position: absolute;
	top: 14px;
	transition: all 0.2s ease-in-out;
}

a.btn-sm-bracket:hover::before {
	content: url(../img/bracket-sm-left.svg);
	left: 10px;
	position: absolute;
	top: 14px;
	transition: all 0.2s ease-in-out;
}

a.btn-sm-bracket::after {
	content: url(../img/bracket-sm-right.svg);
	right: 15px;
	position: absolute;
	top: 14px;
	transition: all 0.2s ease-in-out;
}

a.btn-sm-bracket:hover::after {
	content: url(../img/bracket-sm-right.svg);
	right: 10px;
	position: absolute;
	top: 14px;
	transition: all 0.2s ease-in-out;
}

a.btn-lg-bracket::before, 
button.btn-lg-bracket::before {
	content: url(../img/bracket-lg-left.svg);
	left: 16px;
	position: absolute;
	top: 15px;
	transition: all 0.2s ease-in-out;
}

a.btn-lg-bracket:hover::before, 
button.btn-lg-bracket:hover::before {
	content: url(../img/bracket-lg-left.svg);
	left: 10px;
	position: absolute;
	top: 15px;
	transition: all 0.2s ease-in-out;
}

a.btn-lg-bracket::after, 
button.btn-lg-bracket::after {
	content: url(../img/bracket-lg-right.svg);
	right: 16px;
	position: absolute;
	top: 15px;
	transition: all 0.2s ease-in-out;
}

a.btn-lg-bracket:hover::after, 
button.btn-lg-bracket:hover::after {
	content: url(../img/bracket-lg-right.svg);
	right: 10px;
	position: absolute;
	top: 15px;
	transition: all 0.2s ease-in-out;
}

.btn-success:active:hover,
.btn-success:active:focus {
	
}

.btn-link {
	cursor: pointer;
	padding: 0;
	position: relative;
	transition: all 0.2s ease-in-out;
}

.btn-link:hover, 
.btn-link:focus {
	color: #79d02e;
	text-decoration: none;
	transition: all 0.2s ease-in-out;
}

/* download more styles */
.download-more {
	margin: 25px 0 45px;
    text-align: center;
}

.download-more i {
	color: #00a8ff;
	margin-right: 8px;
    vertical-align: middle;
}

.download-more .btn-link {
	color: #00a8ff;
	text-decoration: underline;
	transition: all 0.2s ease-in-out;
}

.download-more .btn-link:hover {
	color: #00a8ff;
	text-decoration: none;
}

/* text styles */
.text-white {
	color: #fff !important;
}

.text-muted {
	color: #3a3a3a !important;
}
.text-primary {
	color: #808080 !important;
}

.text-success {
	color: #96ee4a !important;
}

.text-info {
	color: #00a8ff !important;
}

.text-warning {
	color: #fcff00 !important;
}

.text-danger {
	color: #ff5400 !important;
}

/* breadcrumb styles */
.breadcrumb {
	background: none;
	margin-bottom: 0;
	padding: 0;
}

.breadcrumb li a {
	color: #808080;
	transition: all 0.15s ease-in-out;
}

.breadcrumb li a:hover {
	color: #00a8ff;
	transition: all 0.15s ease-in-out;
}

.breadcrumb li:last-child a {
	color: #00a8ff;
}

.breadcrumb > li + li:before {
	content: '/';
	padding-right: 10px;
}

/* pagination styles */
.pagination {
	font-weight: 700;
	margin: 0;
	z-index: 2;
}

.pagination > li > a {
	background: none;
	border: none;
	color: #c1c1c1;
	transition: all 0.2s ease-in-out;
}

.pagination > li > a:hover, 
.pagination > li > a:focus,
.pagination > li > a:active {
	background: none;
	color: #000;
	transition: all 0.2s ease-in-out;
}

.pagination > li > a > i {
	vertical-align: text-top;
}

.pagination-popular-slider {
    top: 12px;
    position: relative;
}

.slick-dots {
    list-style-type: none;
    display: -webkit-inline-box;
    padding: 0;
}

.slick-dots button {
	position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    text-decoration: none;
	background: none;
    border: none;
    color: #c1c1c1;
	outline: none !Important;
    transition: all 0.2s ease-in-out;
}

.slick-dots button:hover, 
.slick-dots button:focus,
.slick-dots button:active {
	background: none;
	color: #000;
	transition: all 0.2s ease-in-out;
}

.slick-arrow button {
    border: none;
    background: none;
    color: #c1c1c1;
	outline: none !Important;
    transition: all 0.2s ease-in-out;
}

.slick-arrow button:hover, 
.slick-arrow button:focus,
.slick-arrow button:active {
	color: #000;
	transition: all 0.2s ease-in-out;
}

/* Callback */

input.error,
span.error{
    background-color: rgba(238, 33, 33, 0.24);
}

.modal .success{
    color: forestgreen;
    padding: 40px 20px;
    font-size: 20px;
}

.modal.main-form form,
.modal.main-form .success{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.closebtn {
    position: absolute;
    top: -7px;
    right: 15px;
    font-size: 35px;
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.captcha legend, .captcha .control-label{
    display: none;
}

/* --- END GLOBAL STYLES --- */


/* --- HEADER STYLES --- */
.header {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 18px 0 16px;
}

.contacts .row {
	display: flex;
	align-items: center;
}

.telephones {
	display: flex;
	justify-content: center;
}

.timetable {
	display: flex;
	justify-content: center;
}

.contacts .text-info {
	font-size: 12px;
	font-weight: 700;
}

.callback {
	display: flex;
	justify-content: flex-end;
	padding-right: 20px;
}

/* NAV STYLES */
.navbar > .container {
	padding: 12px 0;
}

.navbar {
	border-radius: 0;
	margin-bottom: 0;
}

.navbar-inverse {
	background-color: #231f20;
	border: none;
	box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.25);
}

.navbar-collapse {
	padding: 0;
}

/* nav-pills styles */
.nav-pills > li > a {
	color: #fff;
	font-size: 16px;
}

.nav-pills > li + li {
	margin-left: 4px;
}

.nav-pills > li > a {
	border-radius: 3px;
	padding: 14px 16px;
}

.nav > li > a:hover,
.nav > li > a:focus {
	background-color: #00a8ff;
}

.nav-pills>li.active>a, 
.nav-pills>li.active>a:focus, 
.nav-pills>li.active>a:hover {
    background-color: #00a8ff;
}

.nav .open > a, 
.nav .open > a:hover, 
.nav .open > a:focus {
	background-color: #00a8ff;
}

.nav-pills > li > a.text-warning {
	color: #fcff00 !important;
	font-weight: 500;
}

.nav-pills > li > a > img {
	margin-right: 9px;
	vertical-align: baseline;
}

/* nav open styles */
.dropdown:hover .dropdown-menu { 
	display: block; 
}

.dropdown:hover::before { 
	content: ' ';
	background-color: #00a8ff;
	border-radius: 3px;
	bottom: -14px;
	height: 130%;
	position: absolute;
	width: 100%;
}

.dropdown .dropdown-menu {
	background-color: #00a8ff;
	border: none;
	border-radius: 0 0 3px 3px;
	margin: 12px 0;
	padding: 0;
}

.dropdown .dropdown-menu li::before {
	content: none;
}

.dropdown .dropdown-menu li .dropdown-menu {
	display: none;
	position: absolute;
	top: -12px;
	margin-left: 100%;
}

.dropdown .dropdown-menu li:hover .dropdown-menu {
	display: block;
}

.dropdown .dropdown-menu li .dropdown-menu li .dropdown-menu {
	display: none;
}

.dropdown .dropdown-menu li .dropdown-menu li:hover .dropdown-menu {
	display: block;
}


.dropdown .dropdown-menu > li > a {
	border-bottom: 1px solid #33b9ff;
	color: #fff;
	font-weight: 500;
	padding: 17px 22px;
}

.dropdown-menu>.active>a, 
.dropdown-menu>.active>a:focus, 
.dropdown-menu>.active>a:hover {
    background-color: #33b9ff;
}

.dropdown .dropdown-menu > li:last-child > a {
	border-bottom: none;
}

.dropdown .dropdown-menu > li > a:hover,
.dropdown .dropdown-menu > li > a:focus {
	background-color: #33b9ff;
	color: #000;
}




/* --- END HEADER STYLES --- */


/* --- SLIDER STYLES --- */
.carousel-indicators {
    bottom: 15px;
    left: 19%;
    margin: 20px 0;
    text-align: left;
    z-index: 999;
}

.carousel-indicators .active {
	background: none;
	height: 0;
	margin: 0;
	width: 0;
}

.carousel-indicators li {
	border: none;
	color: rgba(255, 255, 255, 0.2);
	cursor: pointer;
	font-weight: 700;
	padding: 0 20px;
	text-indent: 0;
}

.carousel-indicators li.active {
	color: #fff;
	font-size: 18px;
}

.carousel-indicators li > a > i{
	color: rgba(255, 255, 255, 0.2);
	font-weight: 700;
}

.man {
	bottom: 0;
	position: absolute;
	right: 15%;
	z-index: 999;
}

.carousel-caption {
	text-align: left;
	text-shadow: none;
	top: 0;
	padding: 0;
}

.carousel-caption h4 {
	margin: 15% 0 10%;
}

.carousel-caption p {
  	font-weight: 300;
    margin-bottom: 10%;
	padding-right: 20%;
}

/* slyder adaptive styles */
@media (min-width: 1450px) and (max-width: 1599px) {
	.header-slider {
		font-size: 45px;
	}

	.carousel-caption h4 {
		margin: 12% 0 9%;
	}

	.carousel-caption p {
		margin-bottom: 9%;
	}
}

@media (min-width: 1300px) and (max-width: 1449px) {
	.header-slider {
		font-size: 40px;
	}

	.carousel-caption h4 {
		margin: 15% 0 5%;
	}

	.carousel-caption p {
		margin-bottom: 5%;
	}
}

@media (min-width: 1200px) and (max-width: 1299px) {
	.header-slider {
		font-size: 38px;
	}
	.carousel-caption h4 {
		margin: 10% 0 6%;
	}
	.carousel-caption p {
		margin-bottom: 6%;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.header-slider {
		font-size: 30px;
	}
	.carousel-caption h4 {
		margin: 7% 0 5%;
	}
	.carousel-caption p {
		margin-bottom: 5%;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.carousel-caption {
		left: 15%;
		text-align: center;
	}
	.header-slider {
    	font-size: 28px;
	}
	.carousel-caption h4 {
		margin: 5% 0;
		padding-right: 0%;
	}
	.carousel-caption p {
		font-size: 12px;
		padding-right: 0%;
		margin-bottom: 5%;
	}
}

/* --- END SLIDER STYLES --- */


/* --- LIGHTBOX STYLES --- */
.lb-outerContainer {
	border-radius: 0;
}

.lb-nav a.lb-next {
	position: absolute;
	float: none;
	right: -40px;
}

.lb-nav a.lb-prev {
	position: absolute;
	float: none;
	left: -40px;
}

.lb-dataContainer {
	padding-top: 15px;
}

.thumbnail {
	border-radius: 0;
}

/* --- LIGHTBOX STYLES --- */


/* --- SERVICE STYLES --- */
.services {
	height: 480px;
	margin-left: 0;
	z-index: 99;
}

.services-position {
	background-color: #fff;
	border: 1px solid transparent;
	-webkit-border-image: url(../img/dotted.png) 10% round;
	-o-border-image: url(../img/dotted.png) 10% round;
	border-image: url(../img/dotted.png) 10% round;
	box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
	margin: 150px 0px 0 30px;
	position: relative;
	padding: 70px 24px 10px;
}

.services-position:before {
	background: transparent;
	bottom: 0;
	content: ' ';
	height: 100%;
	left: -35px;
	position: absolute;
	width: 35px;
}

.services-position img {
	box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);
	position: absolute;
	right: 35px;
	top: -110px;
	cursor: pointer;
}

.services-position h5 {
	font-size: 16px;
	line-height: 17px;
	margin-bottom: 24px;
	text-transform: uppercase;
}

/*.services-position .hidden-section {
	display: none;
}*/

.services-position:hover .hidden-section {
	display: block;
	transform: all 2s ease-in-out;
}

.services-position ul {
	margin-bottom: 25px;
}

.services-position ul li {
	padding: 8px 0;
	position: relative;
}

.services-position ul li:before {
	color: #00a8ff;
	content: '\f178';
	font-family: FontAwesome;
	left: -50px;
	position: absolute;
    top: 6px;
}

.services-position p {
	margin-bottom: 24px;
}

.services-position .hidden-section li a {
	color: inherit;
}
/* --- END SERVICE STYLES --- */


/* --- CATALOG STYLES --- */
.catalog-main {
	position: relative;
	margin-bottom: 160px;
}

.main-page-map .header-lg {
	font-size: 36px;
}

.main-page-map h5 {
	text-align: center;
	color: grey;
}

.catalog-main #boiler img {
	max-width: none;
	position: absolute;
	right: 46px;
	top: -156px;
	width: 120%;
}

.catalog-main #catalog {
	padding-bottom: 60px;
	padding-left: 0;
}

.catalog-main ul {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	list-style-type: none;
}

.catalog-main ul li img {
	height: 21px;
	margin-right: 20px;
	vertical-align: middle;
	width: 21px;
}

.catalog-main ul li a {
	color: #808080;
	line-height: 45px;
	transition: all 0.15s ease-in-out;
}

.catalog-main ul li a:hover {
	color: #00a8ff;
	text-decoration: underline;
	transition: all 0.15s ease-in-out;
}

.catalog-main p {
	float: right;
	margin-top: 45px;
}
/* --- END CATALOG STYLES --- */


/* --- CATALOG PAGE STYLES --- */
.catalog-page {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.catalog-page img {
	margin-bottom: 20px;
	position: relative;
	top: 1px;
	width: 100%;
}

.catalog-page h5 {
	margin-bottom: 15px;
	text-align: center;
	text-transform: uppercase;
}

.catalog-page-content {
	background-color: #fff;
	border: 1px solid transparent;
	-webkit-border-image: url(../img/dotted.png) 10% round;
	-o-border-image: url(../img/dotted.png) 10% round;
	border-image: url(../img/dotted.png) 10% round;
	box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
	padding: 20px 20px 10px;
	margin-bottom: 45px;
}

.catalog-page-content li {
	padding: 8px 0;
}

.catalog-page-content li:before {
	font-family: FontAwesome;
	color: #00a8ff;
	content: '\f178';
	margin-right: 16px;
}

.catalog-page-content li a {
	color: inherit;
}

.catalog-page-content li a:hover {
	color: #00a8ff;
	text-decoration: underline;
	transition: all 0.15s ease-in-out;
}
/* --- END CATALOG PAGE STYLES --- */


/* --- PRODUCT STYLES --- */
.products {
	margin-left: 0;
    margin-right: -30px;
    padding-right: 0;
    z-index: 99;
    display: flex;
    flex-wrap: wrap;
}
.products > div  {
    margin-bottom: 85px;
    margin-top: 35px;
    float: none;
}

.products.slick-slide > div{
    float: left;
}

.slick-dots button::before{
    content: '0';
}

.products .card-product {
	background-color: #fff;
	border: 1px solid transparent;
	-webkit-border-image: url(../img/dotted.png) 10% round;
	-o-border-image: url(../img/dotted.png) 10% round;
	border-image: url(../img/dotted.png) 10% round;
	box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
        cursor: pointer;
	margin: 100px 10px 0;
	padding: 130px 24px 24px;
	position: relative;
}

.card-product {
	margin-bottom: 40px;
}

.products .card-product:before {
	background: transparent;
	bottom: 0;
	content: ' ';
	height: 100%;
	left: -35px;
	position: absolute;
	width: 35px;
}

.products .card-product h5 {
	font-size: 14px;
	line-height: 20px;
	margin-bottom: 30px;
	text-decoration: underline;
}

.products .card-product:hover h5 {
	color: #00a8ff !Important;
}

.products .card-product h5 a {
	color: inherit;
}

.products .card-product img {
	box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.1);
	position: absolute;
	right: 30px;
	top: -110px;
	width: 100%;
}

.products .card-product p span.text-danger {
	background-color: #ffe400;
	padding: 7px 6px;
}

.products .card-product p span.old-price {
	color: #aaaaaa;
	font-size: 12px;
	margin-left: 15px;
	text-decoration: line-through;
}

.products .card-product .product-category {
	bottom: 25px;
	left: -45px;
	position: absolute;
	-ms-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	width: 22%;
}

.products .card-product .hidden-section {
	display: none;
	font-size: 12px;
}

.products .card-product:hover .hidden-section {
	display: block;
}

.products .card-product .hidden-section ul {
	margin-bottom: 30px;
}

.products .card-product .hidden-section ul li {
	line-height: 18px;
}

.products .card-product .product-action {
	font-weight: 700;
	right: -5px;
	position: absolute;
	top: -60px;
	-ms-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}

.products .card-product .product-category a, 
.products .card-product .product-action a {
	color: inherit;
	text-decoration: none;
}

.products .card-product p > a {
	margin-top: 30px;
}

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

.product-read-more {
	margin: 35px 0 65px;
	text-align: center;
}

/* catalog open styles */
.catalog-header {
	position: relative;
}

.catalog-header h1 {
	font-size: 16px;
	font-weight: 700;
	margin: 0 0 20px;
	text-transform: uppercase;
}

.catalog-header h1 small {
	font-size: 15px;
	padding-left: 5px;
}

.catalog-header .dropdown {
	position: absolute;
	right: 0;
	top: 0;
}

@media (max-width: 539px) {
	.catalog-header .dropdown {
		top: -40px;
	}
}

.catalog-header .dropdown a {
    color: #000;
    padding: 15px 0;
    text-decoration: none;
}

.catalog-header .dropdown:hover:before {
	display: none;
}

.catalog-header .dropdown > a:after {
	content: url(../img/filter-icon.svg);
	margin-left: 12px;
}

.catalog-header .dropdown-menu {
	background-color: #00a8ff;
	border: none;
	border-radius: 3px;
  	box-shadow: 0px 20px 32px 0px rgba(0, 90, 255, 0.25);
	margin: 12px 0;
	padding: 0;
}

.catalog-header .dropdown-menu:before {
	content: ' ';
	border: 10px solid transparent;
	border-bottom: 10px solid #00a8ff;
	position: absolute;
	right: 15px;
	top: -20px;
}

.catalog-header .dropdown-menu > li > a {
	border-bottom: 1px solid #33b9ff;
	color: #fff;
	font-weight: 500;
	padding: 17px 22px;
	text-transform: lowercase;
	text-decoration: none;
}

.catalog-header .dropdown-menu > li:last-child > a {
	border-bottom: none;
}

.catalog-header .dropdown-menu > li > a:hover,
.catalog-header .dropdown-menu > li > a:focus {
	background-color: #33b9ff;
	border-radius: 3px;
	color: #000;
}

main .product {
	margin-top: 30px;
}

/* product open styles */
.card h1 {
	font-size: 18px;
	font-weight: 700;
	margin: 0 0 20px;
}

.card .vendor-code {
	margin: 0 0 50px;
}

.card .vendor-code span {
	background-color: #00a8ff;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 8px 10px;
}

.card-img {
	border: 1px solid #ebebeb;
}

.card-img span {
	background-color: #ff5400;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 8px 10px;
    position: absolute;
    text-align: center;
    top: 0;
    right: 0;
}

.card-img-rest {
	text-align: center;
}

.card-img-rest img {
	border: 1px solid #ebebeb;
	height: 65px;
	padding: 3px;
	width: 65px;
}

.card-img-rest img:hover {
	border: 2px solid #00a8ff;
	cursor: pointer;
	padding: 2px;
}

.card-img-rest .slick-current img {
    border: 2px solid #00a8ff;
    padding: 2px;
    outline: none;
}

.slick-slide{
    outline: none;
}

.card-img-rest p {
	margin: 35px 0;
}

.card-img-rest p i {
	margin-right: 8px;
}

.card-img-rest p a {
	color: inherit;
	text-decoration: underline;
}

.card-img-rest p a:hover {
	text-decoration: none;
}

.card-img-rest .thumb{
    display: inline-block;
}
 
.card-main {
	margin: 0 0 45px;
    padding: 0;
}

.card-main-price {
	font-size: 36px;
    font-weight: 700;
    text-align: center;
    border: 1px solid #ebebeb;
	margin-bottom: -1px;
}

.card-main-price p {
	color: #00a8ff;
	padding: 35px 0;
}

.card-main-price small {
	font-size: 16px;
}

.card-main-price .old-price {
	display: none;
}

/* promo price */
.card-main-price .text-danger {
	padding: 20px 0;
}

.card-main-price .text-danger small {
	font-size: 16px;
}

.card-main-price .text-danger .old-price {
	display: block;
	font-size: 14px;
	font-weight: 400;
	position: relative;
	top: -5px;
	text-decoration: line-through;
}

.card-main-service {
	background-color: #fafafa;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0;
	padding: 20px 20px 10px;
}

.card-main-service .checkbox {
	padding-left: 20px;
}

.card-main-service h6 {
	color: #408a00;
	margin-top: 0;
}

.card-main-service p {
	margin-bottom: 5px;
}

.card-main-service p a {
	color: #00a8ff;
	text-decoration: underline;
}

.card-main-service p a:hover {
	text-decoration: none;
}

.card-main-confirm {
	border: 1px solid #ebebeb;
	padding: 30px 0 25px;
	text-align: center;
}

.card-main-confirm .in-credit {
	color: #ff5400;
    margin-top: 10px;
    font-size: 13px;
}

.card-main-confirm .in-credit a {
	color: inherit;
	text-decoration: underline;
}

.card-main-confirm .in-credit a:hover {
	text-decoration: none;
}

/* card-info styles */
.media:first-child {
    margin-top: 15px;
}

.card-info {
	padding-left: 30px;
	padding-right: 0;
}

.card-info .media-body {
	margin-bottom: 14px;
}

.card-info .media-body p {
	font-size: 14px;
	font-weight: 700;
}

.card-info .media-left {
	vertical-align: middle;
}

.card-info .media > p {
	font-size: 12px;
	font-weight: 300;
	margin: 12px 0 5px;
}

.card-info .media > a {
	color: inherit;
	font-size: 12px;
	font-weight: 300;
	text-decoration: underline;
}

.card-info .media > a:hover {
	text-decoration: none;
}
/* --- END PRODUCT STYLES --- */


/* --- LANDING STYLES --- */
.landing .container-fluid {
    padding-right: 0;
    padding-left: 0;
}

.landing .pSlide {
	color: #ffffff;
	background-color: #231f20;
    margin-bottom: 30px;
}

.landing2 .pSlide {
	background-color: #ff9d1e !important;
}

.landing3 .pSlide {
	background-color: #80cf47 !important;
}

.landing h1 {
	text-transform: uppercase;
    font-weight: 700;
    font-size: 30px;
    padding: 0;
    margin: 100px 0 50px;
	line-height: 36px;
	z-index: 2;
}

.landing .pSlide p {
	padding: 0;
	z-index: 2;
}

.landing .pSlide a {
	margin: 50px 0 100px;
}

.landing .pSlide img {
    position: absolute;
	margin-top: 30px;
    max-width: none;
    right: 0%;
    z-index: 1;
}

.landing2 .pSlide img {
    margin-top: 50px !important;
}

.landing3 .pSlide img {
	margin-top: 35px !important;
    width: 120%;
}

.landing h1 > span {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 56px;
	margin-right: 100%;
}

.landing .pLeft h2, 
.landing .pRight h2 {
    font-size: 34px;
    font-weight: 400;
    margin-bottom: 45px;
    line-height: 45px;
}

.landing .pLeft p, 
.landing .pRight p {
    font-weight: 300;
}

.landing .pLeft ul li, 
.landing .pRight ul li {
    font-weight: 300;
}

.landing .pLeft {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
    margin: 50px -15px;
}

.landing .pLeft .itemRight {
	top: 25px;
}

.landing .pLeft .itemRight img {
	max-width: none;
    width: 175%;
}

.landing .pRight {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
    margin: auto -15px;
}

.landing2 .pRight {
    margin: 25px -15px !important;
}

.landing3 .pRight {
	margin: 50px 0 0 !important;
}

.landing .pRight .itemLeft img {
    max-width: none;
    position: relative;
    right: 75%;
    top: 30px;
    width: 175%;
}

.landing2 .pRight .itemLeft img {
    top: 0 !Important;
}

.landing .pCenter {
	background-color: #e6f9ff;
    padding: 80px 0 55px;
}

.landing2 .pCenter {
    padding: 55px 0 !important;
	margin-top: 35px;
}

.order {
	padding-top: 85px;
}

.order p {
    padding: 0 15%;
    text-align: center;
    font-weight: 300;
    margin-bottom: 100px;
}

.landing .product {
    background-color: #e6f9ff;
    margin: 60px 0 40px;
    padding: 20px 0 40px;
}

.landing .product img {
	position: relative;
	bottom: 40px;
	box-shadow: 0px 20px 30px 0px rgba(0, 0, 0, 0.15);
}

.landing .product h2 {
	font-size: 17px;
}

.landing .product p, .landing .product li {
	font-size: 13px;
}

.heat-pumps h1 > span {
    margin-right: 0;
}

.heat-pumps .pSlide img {
	max-width: 70%;
}

.heat-pumps h4 {
    margin-top: 20px;
}

.heat-pumps .pCenter {
    padding: 30px 0;
}

/* --- END LANDING STYLES --- */


/* --- ARTICLE STYLES --- */
article h1 {
	font-size: 36px;
	font-weight: 400;
	line-height: 45px;
	margin: 0 0 50px;
	padding: 0 10%;
}

article h2 {
	font-size: 18px;
	font-weight: 700;
	margin: 30px 0 20px;
}

article h3 {
	font-size: 16px;
	font-weight: 700;
	margin: 25px 0 15px;
}

article p {
	line-height: 24px;
	margin: 5px 0 20px;
}

article blockquote {
	background-color: #fff;
	background-position: center left 30px;
	background-repeat: no-repeat;
	border: 1px solid transparent;
	-webkit-border-image: url(../img/dotted.png) 10% round;
	-o-border-image: url(../img/dotted.png) 10% round;
	border-image: url(../img/dotted.png) 10% round;
	box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
	margin: 50px 0;
	padding: 30px 30px 30px 90px;
	position: relative;
}

article blockquote::before {
    content: '';
    display: inline-flex;
    position: absolute;
    top: 44%;
    left: 30px;
    width: 34px;
    height: 21px;
    background: url(../img/sprites.png) -157px -194px;
}

article blockquote p {
	font-size: 14px;
	font-style: italic;
	line-height: 24px;
}

article .embed-responsive {
	margin: 25px 0 50px;
}

article .table {
	margin: 35px 0;
}

article img.pull-left {
	margin-right: 30px;
}

article img.pull-right {
	margin-left: 30px;
}

article ul {
	list-style-type: none;
	padding-left: 0;
}

article ul li, article ol li {
	line-height: 24px;
}

article ul li:before {
	color: #00a8ff;
	content: '\f178';
	font-family: FontAwesome;
	margin-right: 5px;
}

article .btn-link {
	margin: 20px 0 30px;
}

article .btn-link::before {
	background-image: -moz-linear-gradient( 90deg, rgb(239,239,239) 0%, rgba(239,239,239,0) 100%);
	background-image: -webkit-linear-gradient( 90deg, rgb(239,239,239) 0%, rgba(239,239,239,0) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(239,239,239) 0%, rgba(239,239,239,0) 100%);
	background-image: linear-gradient( 0deg, rgb(239,239,239) 0%, rgba(239,239,239,0) 100%);
	bottom: 20px;
	content: ' ';
	height: 150px;
	left: -2px;
	position: absolute;
	width: 999%;
}

article .btn-link:focus::before {
	content: none;
}

article .btn-link:after {
	color: #79d02e;
	content: "\f078";
	font-family: FontAwesome;
	margin-left: 8px;
}

/* table styles */
table {
	width: 100%;
}
table > thead > tr > th {
	border: 1px solid #dadada;
	font-size: 17px;
	font-weight: 600;
	padding: 18px 30px;
}

table > tbody > tr > td {
    border-left: 1px solid #dadada;
    border-right: 1px solid #dadada;
    padding: 12px 30px;
}

table > tbody > tr:last-child {
    border-bottom: 1px solid #dadada;
}

.table-responsive table th {
	text-align: center;
}

/* main styles */
main {
    padding-bottom: 45px;
}

.main {
	background-image: -moz-linear-gradient( 90deg, rgb(239,239,239) 66%, rgb(220,222,224) 100%);
	background-image: -webkit-linear-gradient( 90deg, rgb(239,239,239) 66%, rgb(220,222,224) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(239,239,239) 66%, rgb(220,222,224) 100%);
	background-image: linear-gradient( 0deg, rgb(239,239,239) 66%, rgb(220,222,224) 100%);
    padding-bottom: 0 !important;
}

main.container-fluid {
	padding-right: 0;
	padding-left: 0;
    padding-bottom: 0;
}

.main-article {
	background-image: url(../img/chandelier.png);
	background-position: top 5px left 40%;
	background-repeat: no-repeat;
	padding-top: 100px;
	padding-right: 35px;
}

.main-article h1 {
	font-size: 18px;
	font-weight: 700;
	margin: 20px 0 30px;
	padding: 0;
}

.main-article .family {
    bottom: 0;
    max-width: 130%;
    right: 26%;
    position: relative;
}
/* --- END ARTICLE STYLES --- */


/* --- SIDEBAR STYLES --- */
.main-sidebar {
	background-color: #efefef;
	padding-left: 15px;
}

.main-sidebar .btn {
	margin-bottom: 45px;
}

.addition .main-sidebar {
	padding-left: 10px;
}

.main-sidebar:after {
	background-color: #efefef;
	content: ' ';
	display: block;
	height: 100%;
	left: 100%;
	position: absolute;
	top: 0;
	width: 1000px;
}

.media-top img {
	max-width: none;
	padding-right: 15px;
}

.main-sidebar .media-body {
	font-weight: 700;
	padding-top: 8px;
	text-decoration: underline;
}

.main-sidebar .media-body a {
	color: #000;
	transition: all 0.2s ease-in-out;
}

.main-sidebar .media-body:hover a {
	color: #00a8ff;
	transition: all 0.2s ease-in-out;
}

.main-sidebar .media-content {
	padding: 35px 0;
}

.main-sidebar .media > p {
	font-size: 13px;
	font-weight: 300;
}

.main-sidebar .btn-link {
	float: right;

	line-height: normal;
}

.main-sidebar .btn-link:after {
	color: #79d02e;
	content: '\f178';
	font-family: FontAwesome;
	margin-left: 10px;
}

.main-sidebar .btn-default {
	border: 5px solid rgb(239, 239, 239);
}

.main-sidebar .btn-default:hover {
	border-color: #c9ff9c;
}

/* filter sidebar */
h6.accordion {
    cursor: pointer;
    border: none;
    text-align: left;
    outline: none;
    transition: 0.4s;
	margin-top: 25px;
}

div.panel {
    overflow: hidden;
    transition: max-height 0.2s ease-out;
}

.filter .accordion + .panel{
    max-height: 0;
}

.filter .accordion.active + .panel{
    max-height: 330px;
	overflow: auto;
}

.filter > .accordion.active:first-of-type + .panel {
    max-height: none;
}

.filter h6:before {
	color: #79d02e;
	content: "\f054";
	font-family: FontAwesome;
	margin-right: 6px;
	vertical-align: text-top;
}

.filter .active:before {
	color: #79d02e;
	content: "\f078";
	font-family: FontAwesome;
	margin-right: 6px;
	vertical-align: text-top;
}

.filter .checkbox {
    margin-left: 20px;
}

.clear-out a {
	color: inherit;
}

.clear-out i {
	background-color: #ffe400;
	border-radius: 30px;
	color: #000;
	font-size: 12px;
	font-weight: 700;
	margin-right: 10px;
	padding: 3px 5px;   
}

.filter .radio label, 
.filter .checkbox label {
	display: block;
}

/* checkbox styles */
.checkbox {
	position:relative;
}

.checkbox label {
	font-weight: 300;
	line-height: normal;
	padding-bottom: 10px;
	padding-left: 20px;
	position: relative;
}

.checkbox label:before {
	background:#fff;
	border: 1px solid #00a8ff;
	content: ' ';
	height: 15px;
	left: 0;
	position: absolute;
	top: 1px;
	width: 15px;
}

.checkbox label:after {
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	content: ' ';
	height: 9px;
	left: 6px;
	opacity: 0;
	position: absolute;
	top: 3px;
	-ms-transform: rotate(40deg);
	-moz-transform: rotate(40deg);
	-webkit-transform: rotate(40deg);
	transform: rotate(40deg);
	width: 4px;
}

.checkbox input[type="checkbox"] {
	cursor: pointer; 
	height:100%;
	opacity: 0;
	position:absolute;
	width:100%;
	z-index: 1;
}

.checkbox input[type="checkbox"]:hover + label:after { 
	border-color:#bdbdbd;
	opacity: 1;
}

.filter .checkbox input[type="checkbox"]:hover + label:after { 
	border-color:#bdbdbd;
}

.checkbox input[type="checkbox"]:checked + label:after, 
.checkbox input[type="checkbox"]:checked + label:before {
	opacity: 1;
}

.checkbox input[type="checkbox"]:checked + label:before {
	background: #00a8ff;
}

.checkbox input[type="checkbox"]:checked + label {
	color: inherit;
}

#search {
	padding: 10px 0 20px;
}

.input-group input {
	font-size: 12px;
    margin: 0;
    height: 32px;
    border-radius: 0;
    width: 200px;
}

.input-group-btn .btn {
	background: #00a8ff;
    margin: 0;
    padding: 7px 10px;
    outline: none !important;
    border: none;
    color: #fff;
}
/* --- END SIDEBAR STYLES --- */


/* --- PORTFOLIO STYLES --- */
.portfolio {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}

.portfolio img {
	margin-bottom: -1px;
	position: relative;
	top: 1px;
}

.portfolio figcaption {
	background-color: #fff;
	border: 1px solid transparent;
	-webkit-border-image: url(../img/dotted.png) 10% round;
	-o-border-image: url(../img/dotted.png) 10% round;
	border-image: url(../img/dotted.png) 10% round;
	box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
	font-weight: 700;
	line-height: 20px;
	padding: 30px 25px 25px;
	text-align: center;
	text-decoration: underline;
}

.portfolio figure {
	margin-bottom: 45px;
}

.portfolio figure a {
	color: #000;
	transition: all 0.2s ease-in-out;
}

.portfolio figure:hover a {
	color: #00a8ff;
	transition: all 0.2s ease-in-out;
}
/* --- END PORTFOLIO STYLES --- */


/* --- FORM STYLES --- */
form {
	background-color: #fff;
	padding: 35px 0 50px;
}

form .btn-warning {
    margin-top: 45px;
}

.form-group {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 30px;
	
}

.form-group input, 
.form-group textarea, 
.form-group select {
	border-color: #bdbdbd;
	border-radius: 0;
	box-shadow: none;
	color: #000;
	font-weight: 600;
    height: 42px;
    padding: 1px 13px;
}

.form-group input[type="file"] {
	padding: 0;
	border: none;
}


.form-group textarea {
	height: 100px !Important;
  	padding-top: 10px;
}

.form-group select {
    height: 42px;
    padding: 0 12px;
}

.form-group select:hover {
	border: 2px solid #00a8ff;
	transition: all 0.2s ease-in-out;
  height: 42px;
  padding: 0 12px;
}

.form-group input:hover, 
.form-group textarea:hover {
	border: 2px solid #00a8ff;
  	height: 42px;
  	padding: 0 12px;
}

.form-group textarea:hover {
	height: 100px !Important;
  	padding-top: 10px;
}

.form-control::-moz-placeholder {
	color: #808080;
	opacity: 1;
	font-weight: 400;
}

.form-control:-ms-input-placeholder {
	color: #808080;
	font-weight: 400;
}

.form-control::-webkit-input-placeholder {
	color: #808080;
	font-weight: 400;
}

.radio-inline, 
.checkbox-inline {
    padding: 20px;
    color: #000;
}

.modal.main-form .radio-inline input[type=radio] {
    margin-top: 1px;
}

.modal.main-form h4{
    color: #000;
    margin: 20px 0 5px;
}

/* main form styles */
.main-form .form-group {
	padding: 10px 65px;
	margin: 0;
}

.main-form textarea {
	margin-bottom: 10px;
}

/* leave-rewiev styles */
.leave-review h6 {
	margin: 0;
}

.leave-review small {
	font-size: 90%;
}

.rewiev-body h6:before {
	content: "\f2bd";
	font-family: FontAwesome;
	margin-right: 5px;
	vertical-align: text-top;
}

.rewiev-body {
	background-color: #fff;
	border: 1px solid transparent;
	-webkit-border-image: url(../img/dotted.png) 10% round;
	-o-border-image: url(../img/dotted.png) 10% round;
	border-image: url(../img/dotted.png) 10% round;
	box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
	padding: 28px;
}

.rewiev-body p {
	margin: 20px 0;
}

.rewiev-rating {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	font-weight: 700;
}

.rewiev-rating span {
	margin-left: 6px;
	margin-top: 2px;
}

.rating-static {
	background: url('../img/raiting.png') 0 0 no-repeat;
	display: block;
	height: 16px;
	width: 85px;
}

.rating-1 {
	background-position: -65px 0;
}
.rating-2 {
	background-position: -48px 0;
} 
.rating-3 {
	background-position: -30px 0;
}
.rating-4 {
	background-position: -16px 0;
}
.rating-5 {
	background-position: 0 0;
}

/* product review styles*/
.product-review {
	box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.1);
	margin-left: 0px;
	margin-right: 0px;
}

.product-review p {
	text-align: right;
}

.product-review .rating {
	margin-left: 4px;
}

/* raiting styles */
.rating {
	direction: rtl;
	unicode-bidi: bidi-override;
 }

.rating span {
	margin-left: 4px;
}

.rating > i {
	color: #bdbdbd;
	cursor: pointer;
	padding: 0 2px;
}

.rating > i:hover:before,
.rating > i.active:before,
.rating > i:hover ~ i:before,
.rating > i.active ~ i:before{
	color: #00a8ff;
	content: "\f005";
}
/* --- END FORM STYLES --- */


/* --- CONTACTS PAGE STYLES --- */
.contacts-page {
	background-image: url(../img/contacts-bg.png);
	background-position: bottom;
    padding: 0;
}

.contacts-page-info {
    margin-bottom: 25px;
    margin-left: 0;
}

.contacts-page .list-inline > li > a {
	color: #fff;
}

.contacts-page-info a {
	color: #fff;
}

.contacts-page-info > div {
    padding: 0 0 25px;
    line-height: 24px;
}

.contacts-page-info h6 {
	text-transform: uppercase;
}

.contacts-page-info .list-inline {
	margin-top: 25px;
}

.contacts-page-info .list-inline > li > a > i {
	background-color: #00a8ff;
	border-radius: 30px;
	margin-right: 10px;
	padding: 10px;
	text-align: center;
	width: 35px;
	transition: all 0.2s ease-in-out;
}

.contacts-page-info .list-inline > li a > i:hover {
	background-color: #48c1ff;
	transition: all 0.2s ease-in-out;
}

.contacts-page .main-form {
	padding-top: 55px;
	margin: auto;
}

.map {
	line-height: 0;
	padding: 0;
}
/* --- END CONTACTS PAGE STYLES --- */


/* --- BLOG PAGE STYLES --- */
.blog {
    padding: 0 15px;
}

.blog .catalog-header {
	padding-bottom: 80px;
}

.blog .list-inline > li {
    padding-right: 12px;
    padding-left: 12px;
}

.blog .list-inline a {
	color: #00a8ff;
	text-decoration: underline;
	transition: all 0.2s ease-in-out;
}

.blog .list-inline a:hover {
	color: #000;
	text-decoration: none;
	transition: all 0.2s ease-in-out;
}

.blog .list-inline li.active a {
	color: #000;
	text-decoration: none;
}

.blog-item {
	position: relative;
	margin-bottom: 60px;
}

.blog-img {
	position: absolute;
	top: -20px;
}

.blog-content {
	background-color: #fff;
	border: 1px solid transparent;
	-webkit-border-image: url(../img/dotted.png) 10% round;
	-o-border-image: url(../img/dotted.png) 10% round;
	border-image: url(../img/dotted.png) 10% round;
	box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
	padding: 30px 30px 30px 90px;
}

.blog-content h4 {
	margin-bottom: 35px;
}

.blog-content p {
	line-height: 24px;
}

.blog-footer {
	margin-top: 45px;
}

.blog-footer p {
    font-size: 12px;
    font-weight: 300;
}

.blog-footer .btn-link {
	padding-left: 40px;
    line-height: normal;
}

.blog-footer .btn-link:after {
    color: #79d02e;
    content: '\f178';
    font-family: FontAwesome;
    margin-left: 10px;
}

/* --- END BLOG PAGE STYLES --- */


/* --- SERVCES PAGE STYLES --- */
.services-page {
	position: relative;
}

.services-page-item:hover {
	background: rgba(0,0,0,0.3);
	transition: all 0.2s ease-in-out;
}

.services-page > div {
	padding: 0;
}

.services-page > div img {
	width: 100%;
}

.services-page-item {
    position: absolute;
    z-index: 1;
    top: 0;
	width: 100%;
    height: 100%;
    padding: 55% 20px 0;
}

.services-page-item h1, 
.services-page-item h2, 
.services-page-item h3, 
.services-page-item h4 {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	padding-left: 40px;
	padding-right: 10px;
	margin: 0 0 30px;
}

.services-page-item p {
    margin: 10px 0 20px;
	padding-left: 40px;

	color: #fff;
	font-weight: 300;
}

.services-page-item li {
    padding: 6px 0;
	color: #fff;
}

.services-page-item li a {
    padding: inherit;
	color: inherit;
}

.services-page-item li:before {
	font-family: FontAwesome;
	color: #00a8ff;
	content: '\f178';
	margin-right: 25px;
}

.services-page-item .hidden-section {
    display: none;
}

.services-page-item:hover .hidden-section {
    display: block;
    margin-top: 30px;
}
/* --- END SERVCES PAGE STYLES --- */


/* --- TESTIMONIALS PAGE STYLES --- */
.testimonials {
	margin-bottom: 65px;
}

.testimonials h4 {
	margin-top: 20px;
	font-size: 16px;
}

.testimonials h5 {
	margin: 30px 0 15px;
}

.testimonials-latest {
	text-align: center;
	padding: 0 40px;
}

.testimonials-latest blockquote {
	font-size: 14px;
	font-style: italic;
	border: none;
}

.testimonials-latest blockquote:before {
	content: url(../img/blockquote.png);
	margin-bottom: 15px;
}

.testimonials-latest blockquote p {
	margin-top: 5px;
}

.testimonials-latest img{
    margin: 0 auto;
}

.testimonials-item-footer {
	text-align: center;
	font-weight: 700;
	margin-bottom: 45px;
}

.testimonials-item-footer h6 {
	margin-bottom: 6px;
}
/* --- END TESTIMONIALS PAGE STYLES --- */


/* --- CART PAGE STYLES --- */
.header-cart {
	height: 160px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.header-cart h1 {
	font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
	margin: 0;
}

.header-cart .download-more {
	margin: 0;
	text-align: left;
}

.header-cart .telephones {
	margin-top: 0;
	padding-left: 50px;
}

.telephones-cart {
	-webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    list-style-type: none;
}

.telephones-cart a {
	font-weight: 700;
}

.cart-order {
	background-color: #fff;
    border: 1px solid transparent;
    -webkit-border-image: url(../img/dotted.png) 10% round;
    -o-border-image: url(../img/dotted.png) 10% round;
    border-image: url(../img/dotted.png) 10% round;
    box-shadow: inset 0px 1px 49px 0px rgba(0, 0, 0, 0.07);
    margin: 0 0 20px;
    padding: 12px 0;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.card-item-img {
	padding-right: 0;
}

.card-item-img img {
    position: relative;
    right: 0;
    top: 0;
    min-width: 100px;
    float: left;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.1);
}

.card-item h5 {
	color: #000;
	text-decoration: underline;
}
.card-item h5 a {
	color: inherit;
}

.card-item:hover h5 {
    color: #00a8ff !Important;
}

.cart-number {
	padding: 0;
}

.cart-number .input-number {
    height: 40px;
    width: 46px;
    text-align: center;
    border: 1px solid #bdbdbd;
}

.input-number-decrement {
	margin-right: 10px;
	color: #00a8ff;
	cursor: pointer;
}

.input-number-increment {
	margin-left: 10px;
	color: #00a8ff;
	cursor: pointer;
}

.cart-price .sum {
	padding-right: 10px;
	color: #000 !important;
}

.cart-price {
	color: #00a8ff;
}

.clear-out p {
	color: #00a8ff;
	font-weight: 300;
}

.card-service {
	-webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 20px 0;
}

.card-service .checkbox {
    width: 4%;
}

.card-service h6 {
	color: #408a00;
	margin-top: 0;
}

.card-service p {
	font-size: 12px;
	font-weight: 300;
}

.card-service .cart-price {
	margin-left: 52px;
}

.card-service .cart-price p {
	font-size: 14px;
	font-weight: 400;
}

.cart-form label {
	font-weight: 400;
}

.cart-confirm {
	-webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.cart-confirm .download-more {
	text-align: left;
	margin: 0;
}

.cart-confirm-price {
	padding: 0;
}

.cart-confirm-price span {
	margin-left: 15px;}
	
.cart-confirm .btn-buy i {
    color: #fff;
}
/* --- END CART PAGE STYLES --- */


/* --- FOOTER STYLES --- */
footer {
	background-color: #000;
	color: #fffefe;
	font-size: 12px;
	padding: 0 !Important;
}

.footer {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
}

.footer-logo {
	padding-left: 0;
	padding-right: 0;
    position: relative;
    bottom: 8px;
}

.footer-logo img {
	width: 120px;
}

.footer-menu {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	list-style-type: none;
}

.footer-menu li a {
	color: inherit;
	line-height: 24px;
	text-decoration: underline;
}

.footer-menu li a:hover {
	color: #00a8ff;
}

.footer-address a {
	color: #fff;
	font-weight: 700;
}

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

.copyright {
	font-size: 13px;
}

.copyright p {
	line-height: 20px;
}

.copyright strong a {
	color: #b6b6b6;
}

.copyright ul {
	float: right;
	font-weight: 500;
	margin: 0;
}

.copyright li > a {
	font-size: 14px;
}

.copyright li > a > i {
	color: #fff;
	padding: 0 10px;
	vertical-align: text-bottom;
}
/* --- END FOOTER STYLES --- */


/* --- ADAPTIVE STYLES --- */
@media (max-width: 767px) {
	.btn-warning {
		box-shadow: none;
	}
	.header-lg {
    	font-size: 30px;
    	letter-spacing: 4px;
	}
	.logo {
		bottom: 4px;
	}
	.breadcrumbs {
    	margin-top: 0;
	}
	.breadcrumb {
		font-size: 13px;
	}
	.table-responsive {
		border: none;
	}
	#header-info .pull-left a {
		padding: 0;
	}
	.nav-pills > li {
    	float: none;
	}
	.nav .dropdown .dropdown-menu {
		display: none !important;
	}
	.navbar-inverse .navbar-toggle {
    	border: none;
	}
	.nav-pills > li + li {
    	margin-left: 0;
	}
	.nav .dropdown:hover:before {
    	content: none;
	}
	.nav-pills > li > a > img {
		display: none;}
	.nav > li > a:hover, .nav > li > a:focus {
    	border-radius: 0;
	}
	.navbar-collapse {
    	margin-top: 10px;
	}
	.navbar > .container {
    	padding: 10px 15px;
	}
	.navbar-brand {
    	padding: 0 15px;
	}
	.navbar-brand > img {
    	height: 48px;
	}
	.address-xs {
    	text-align: center;
    	margin: 20px 0;
	}
	.address-xs p {
		color: #FFF;
		font-size: 13px;
	}
	.header {
    	position: absolute;
    	z-index: 2;
    	height: 67px;
		width: calc(100% - 72px);
		background-color: #FFF;
	}
	.logo img {
		height: 40px;
	}
	.cart {
		padding-right: 0;
	}
	.modal.main-form form, .modal.main-form .success {
		width: 90%;
	}
	/*content*/
	.landing .pLeft {
		margin: 0 -15px 25px;
	}
	.landing .pLeft .itemRight {
		top: 0;
	}
	.landing .pLeft .itemRight img {
		max-width: 100%;
	}
	
	.landing .pRight .itemLeft img {
		max-width: 100%;
		right: 0;
		margin-bottom: 45px;
	}
	.landing .pCenter {
		padding: 0 0 5px;
		margin-bottom: 20px;
	}
	.order {
		padding-top: 35px;
	}
	.order p {
		padding: 0;
		margin-bottom: 75px;
	}
	table > thead > tr > th {
		font-size: 16px;
		padding: 9px 15px;
	}
	
	table > tbody > tr > td {
		font-size: 14px;
		padding: 6px 15px;
	}
	.slider .carousel-inner .item {
		height: 520px;
		text-align: center;
		background-color: #076aa8;
	}
	.carousel-caption {
		text-align: center;
	}
	.carousel-caption h4 {
		font-size: 25px;
	}
	.carousel-caption p {
		font-size: 14px;
		font-weight: 300;
		padding-right: 0;
	}
	.carousel-indicators {
		text-align:center;
	    left: 18%;
	}	
	.services img {
		display:none;
	}
	.services-position {
		margin: 0 15px 35px 0;
    	padding: 15px 25px 30px;
    	text-align: center;
	}
	.services-position .hidden-section {
    	display: block !important;
	}
	.services-position h5 {
    	margin: 20px 0;
	}
	.services-position ul {
    	margin-bottom: 10px;
	}
	.services-position ul li:before {
    	left: -10px;
    	position: relative;
    	top: -1px;
	}
	.services-position p {
    	margin: 20px 0 5px;
	}
	.services-position:before {
		display: none;
	}
	.services-page img {
		width: 100%;
	}
	.catalog-main {
		text-align: center;
	}
	.catalog-main h4 {
		font-size: 40px;
    	letter-spacing: 8px;
	}
	.catalog-main #catalog {
		padding-bottom: 0;
    	padding-left: 15px;
	}
	.catalog-main ul {
    	-webkit-column-count: 1;
    	-moz-column-count: 1;
    	column-count: 1;
	}
	.catalog-main p {
    	float: none;
   	 margin-top: 30px;
	}
	.catalog-main ul li a {
    	margin-right: 40px;
	}
	.card-info .media {
		margin-bottom: 35px;
	}
	.characteristics {
		margin-top: 0;
	}
	.product-review p {
    	text-align: center;
	    margin-top: 35px;
	}
	.raiting-wrap {
		margin-top: 35px;
		text-align: center;
	}
	.products {
    	margin-left: 0;
    	margin-right: 0;
    	padding-right: 0;
	}
	.products .card-product p > a {
    	display: none;
	}
	.products .card-product .product-category {
		display: none;
	}
	.products .card-product .product-action {
		display: none;
	}
	.products .card-product {
		background-color: #fff;
    	border: none;
    	box-shadow: none;
    	margin: 0;
    	padding: 0;
	}
	.products .card-product .hidden-section {
    	display: none !important;
	}
	.products > div {
    	margin: 0;
    	padding: 0;
	}
	.products .card-product p span.old-price {
		margin-left: 0;
	}
	.products .card-product img {
    	position: relative;
    	right: 0;
    	top: 0;
    	width: 160px;
    	min-width: 100px;
    	float: left;
    	margin-right: 15px;
	}
	.products .card-product:before {
    	content: none;
	}
	.products > div:hover  {
		margin-bottom: 30px;
	}
	.products .card-product h5 {
		margin-bottom: 15px;
	}
	.product-pagination {
    	text-align: center;
    	margin-top: 30px;
	}
	.product-read-more {
    	margin: 35px 0 25px;
	}
	.header-cart .logo {
		margin: 15px 0 45px;
    	text-align: center;
	}
	.header-cart .logo img {
		height: 100%;
	}
	.cart-number {
		padding-left: 15px;
	}
	.cart-price {
		margin: 30px 0;
	}
	.cart-confirm .download-more {
		text-align: center;
		margin-bottom: 45px;
	}
	.cart-confirm-price span {
		margin-left: 5px;
	}
	.cart-confirm-price {
		padding-left: 15px;
	}
	article h1 {
    	font-size: 28px;
    	line-height: 30px;
    	margin: 0 0 50px;
    	padding: 0;
	}
	article img{
    	margin-bottom: 20px;
    	margin-top: 10px;
	}
	article .embed-responsive {
    	margin: 25px 0;
	}
	article blockquote {
    	padding: 10px 20px 20px;
		background-image: none;
	}
	article blockquote::before {
		content: none;
	}
	aside {
		margin-bottom: 20px;
		margin-left: 0;
	}
	p.filter {
		margin-top: 30px;
	}
	.main-article {
    	background: none;
    	padding: 35px 15px;
	}
	.header-content {
		display: none;
	}
	.header-sidebar {
		color: #f3f3f3;
    	bottom: 22px;
    	font-size: 27px;
    	margin: 0;
    	padding: 0;
    	position: relative;
    	left: 0;
    	text-transform: uppercase;
	}
	.main-article .family {
		display: none;
	}
	.header-sidebar {
		display: none;
	}
	.main-sidebar {
    	margin-top: 25px;
	}
	.main-sidebar .btn-link {
    	margin-right: 25px;
	}
	.main-sidebar:after {
		content: none;
	}
	.portfolio figure {
    	margin: 0 15px 45px;
	}
	.radio-inline, .checkbox-inline {
    	padding: 5px 15px;
    	text-align: right;
	}
	.main-form .form-group {
    	padding: 0;
		margin: auto 15px;
	}
	.form-group input, .form-group textarea {
		margin: 10px 0;
	}
	.testimonials-latest {
    	margin-top: 65px;
	}
	.services-page-item .hidden-section {
		display: block;
		margin-top: 30px;
	}
	.services-page-item {
		padding-top: 50%;
	}
	.services-page-item p {
    	padding-left: 20px;
    	padding-right: 20px;
	}
	.blog-item {
    	margin: 25px 0 60px;
	}
	.blog-img {
    	position: relative;
    	top: 1px;
	}
	.blog-img img {
    	width: 100%;
	}
	.blog .list-inline > li {
		padding-right: 8px;
		padding-left: 8px;
	}
	.catalog-header h1 {
    	margin-bottom: 30px;
	}
	.blog-content {
    	padding: 15px 20px 25px;
	}
	.blog-content h4 {
    	margin-bottom: 20px;
	}
	.blog-footer {
    	margin-top: 20px;
	}
	.addition .main-sidebar {
		padding-top: 45px;
	}
	article table > thead > tr > th {
    	font-size: 14px;
    	padding: 9px 15px;
	}
	article table > tbody > tr > td {
    	padding: 9px 15px;
    	font-size: 13px;
	}
	.pagination > li > a, .pagination > li > span {
    	padding: 3px 8px;
	}
	/*footer*/
	.footer-logo {
    	padding-left: 15px;
    	padding-right: 15px;
		text-align: center;
	}
	.footer-menu {
    	-webkit-column-count: 1;
    	-moz-column-count: 1;
    	column-count: 1;
		padding: 35px 0;
    	text-align: center;
    	margin: 0;
	}
	.footer-menu li {
		padding: 10px 0;
    	font-size: 15px;
	}
	.footer-address {
		text-align: center;
	}
	.footer-address p {
		padding-bottom: 15px;
		font-size: 14px;
	}
	.footer-callback {
    	text-align: center;
    	margin-top: 20px;
	}
	.copyright {
		text-align:center;
	}
	.copyright ul {
    	float: none;
		padding: 8px 0 15px;
	}
	
	/* OVERLAY STYLES */
	aside div.filter,
	.overlay {
        height: 100%;
        width: 0;
        position: fixed;
        z-index: 4;
        top: 69px;
        left: -40px;
        background-color: #fff;
        overflow-x: hidden;
        padding: 20px;
	}
	/* END OVERLAY STYLES */

	.callback-form .attach-file {
		margin-top: 0!important;
	}

	.callback-link-policy {
		margin-top: 15px!important;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	header {
		font-size: 13px;	
	}
	
	blockquote {
		padding: 0;
		margin-bottom: 10px;
	}
	/*header*/
	.contacts {
		padding-left: 0;
	}

	.telephones {
		padding-left: 0;
	}
	.header-sidebar {
		display: none;
	}
	.callback  {
    	padding: 0;
	}
	
	.cart p.pull-left {
		width: 100%;
		margin: 10px 0 0 5px;
	}
	/*navigation*/
	.nav-pills > li > a {
		color: #fff;
		font-size: 15px;
	}
	
	.nav-pills > li + li {
		margin-left: 15px;
	}
	/*navigation*/
	.nav-pills > li > a {
		color: #fff;
		font-size: 13px;
	}
	
	.nav-pills > li + li {
		margin-left: 5px;
	}
	
	.nav-pills > li > a {
		padding: 10px 12px;
	}
	
	.dropdown:hover:before {
		height: 140%;
	}
	/*content*/
	.landing .pLeft {
		margin: 25px -15px;
	}
	.landing .pLeft .itemRight {
		top: 0;
	}
	.landing .pLeft .itemRight img {
		max-width: 100%;
	}
	
	.landing .pRight .itemLeft img {
		max-width: 100%;
		right: 0;
		margin-bottom: 45px;
	}
	.landing .pCenter {
		padding: 0 0 5px;
		margin-bottom: 20px;
	}
	.landing .order p {
		padding: 0;
	}
	article h1 {
		font-size: 34px;
		padding: 0 10%;
	}
	.main-sidebar {
    	margin-top: 65px;
	}
	.main-article .family {
		right: 20%;
	}
	.testimonials-latest {
		margin-top: 55px;
	}
	
	.services > div {
		padding-left: 30px;
		padding-right: 30px;
	}
	
	.services-position img {
    	width: 100%;
    	top: -150px;
	}
	.services-page-item h1, 
	.services-page-item h2, 
	.services-page-item h3, 
	.services-page-item h4 {
		font-size: 15px;
		padding: 0;
	}
	
	.services-page-item {
    	font-size: 13px;
    	padding: 40% 0 0 20px;
	}
	
	.services-page-item .btn {
		font-size: 13px;
	}
	
	.services-page-item p {
		padding-left: 0;
		font-size: 12px;
	}
	
	.services .services-position ul li:before {
    	top: auto;
	}
	
	.catalog-main {
		font-size: 14px;
	}
	.modal.main-form form, .modal.main-form .success {
    	min-width: 500px;
	}
	.blog-img img {
		width: 70%;
	}
	
	.blog-content {
		padding: 15px 15px 20px 80px;
	}
	
	.blog-content h4 {
		margin-bottom: 20px;
		font-size: 17px;
	}
	
	.blog-content p {
		line-height: 20px;
		font-size: 13px;
	}
	
	.blog-footer .btn-link {
		font-size: 13px;
	}

	.blog-footer {
		margin-top: 20px;
	}
	
	.services {
		height: auto;
		display: flex;
    	flex-wrap: wrap;
	}
	
	.services > div {
		float: none;
	}
	
	.services-position {
    	margin-bottom: 45px;
    	margin-top: 190px;
	}
	
	.services-position .hidden-section {
		display: block !important;
	}
	
	.products .card-product {
    	padding: 210px 24px 24px;
	}
	
	.catalog .card-product {
    	padding: 130px 24px 24px;
	}
	
	.product-search .catalog .card-product {
    	padding: 90px 24px 24px;
	}

	.btn-default {
		font-size: 14px !important;
	}
	
	.main-sidebar .btn {
		margin-bottom: 45px;
	}
	
	.main-sidebar .media {
    	margin-bottom: 0;
	}
	
	.product-review form {
		padding-left: 45px;
		padding-right: 45px;
	}
	
	.product-review form .btn {
		font-size: 14px;
	}
	
	.carousel-indicators {
    	left: 13%;
	}
	
	/*footer*/
	.footer-menu {
		padding:0;
	}
	
	.footer-address {
		padding-left: 0;
	}
	
	.footer-callback {
		padding-left: 5px;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	header {
		font-size: 13px;
	}
	
	h5 {
    	font-size: 15px;
	}
	.btn {
		font-size: 13px;
	}
	
	blockquote {
		font-size: 13px !important;
		padding: 0;
		margin-bottom: 10px;
	}
	/*header*/
	.timetable {
		text-align: right;
	}
	
	.cart p.pull-left {
		margin: 20px 5px 10px 30px;
	}
	
	.cart p {
		margin-top: 18px;
	}
	
	/*navigation*/
	.nav-pills > li > a {
		color: #fff;
		font-size: 15px;
	}
	
	.nav-pills > li + li {
		margin-left: 6px;
	}
	
	/*content*/
	article blockquote p {
		font-size: 13px;
	}
	
	.header-lg {
		font-size: 50px;
	}
	
	.media-top img {
		padding-right: 0;
	}
	
	.header-content {
		bottom: 120px;
		font-size: 45px;
		right: 19px;
	}
	
	.header-sidebar {
		bottom: 40px;
		font-size: 45px;
		right: 17px;
	}
	
	.main-sidebar .media-content {
		padding: 25px 0;
	}
	
	.main-article {
		padding-top: 80px;
	}

	.services-position {
    	margin: 150px 0px 0 10px;
    	padding: 40px 20px 10px;
	}
	
	.products .card-product {
    	margin: 100px 10px 0;
    	padding: 85px 20px 24px;
	}
	.header-cart h1 {
    	font-size: 13px;
	}
	
	.blog-img img {
		width: 85%;
	}
	
	.blog-content {
		padding: 15px 20px 25px 80px;
	}
	
	.blog-content h4 {
		margin-bottom: 20px;
	}
	
	.blog-content p {
		line-height: 20px;
	}
	
	.blog-footer {
		margin-top: 20px;
	}
	.landing .pSlide {
		margin-bottom: 0;
	}
	.landing .pSlide img {
		right: -20%;
		top: 15px;
	}
	.heat-pumps .pSlide img {
		right: 0;
		top: 15px;
		width: 90%;
	}
	.landing .pRight .itemLeft img {
		right: 125%;
		bottom: 0;
		width: 225%;
	}
	.landing .pCenter {
		padding: 50px 0;
	}
	.catalog-main #boiler img {
    	top: -145px;
	}
	.form-group .btn {
		font-size: 14px;
	}
	.card-service .cart-price {
    margin-left: 44px;
	}
	/*footer*/
	.footer-logo {
		padding-left: 15px;
	}
	
	.footer .footer-address {
		width: 27%;
	}
	
	.footer-callback {
		text-align: right;
		width: 23%;
	}
}
/* --- END ADAPTIVE STYLES --- */


#banner img{
    width: 100%;
}

#cart-product:empty{
    display: none;
}

.not-found{
    text-align: center;
    font-size: 20px;
}


/* Callback files */
.callback-form .attach-file{
    margin-top: -2rem;
    text-align: left;
    color: #000;
}

.callback-form .attach-file a, .callback-form .attach-file label {
    opacity: 0.5;
}

.callback-form .attach-file a:hover, .callback-form .attach-file label:hover {
    opacity: 1;
}

.callback-form .attach-file label {
    margin-bottom: -1.2rem;
    margin-top: -2px;
    font-size: 1.2rem;
}

.callback-form .attach-file input{
    display: none;
}

.callback-form .file {
    display: inline-block;
    font-size: 1rem;
    margin-right: 10px;
}

.callback-form .icon {
    display: inline-block;
    margin-right: 0.4rem;
    vertical-align: sub;
    font-size: 25px;
    line-height: 25px;
    height: 1.8rem;
    width: 1.8rem;
}

.icon-remove {
    background: url(../img/icon-remove.svg) no-repeat center;
    height: 1rem;
    width: 1rem;
    margin-top: 2px;
    margin-right: 3px;
}

.toolbar .fil-cat {
	margin: 0 5px 10px 0;
	text-transform: uppercase;
	line-height: 106%;
}
.media .media-body p {
    height: 60px;
    overflow: hidden;
}

.image-cover {
    width: 100%;
    height: 500px;
    object-fit: cover;
}

.language {
	line-height: 190%;
}

.language a {
	color: #808080;
}

.language a:hover {
	text-decoration: none;
	color: #337ab7;
}

.language a .active {
	color: #337ab7;
}

.language a:first-child::after {
	content: '/';
	color: #808080;
}

.language::after {
    content: '';
    width: 200%;
    height: 1px;
    background-color: #efefef;
    display: block;
    position: relative;
    left: -50%;
}

.language form {
    padding: 10px 0;
}

.c-green {
	background-color: #77C61B;
}
.c-orange {
	background-color: #ED802F;
}
.c-blue {
	background-color: #709AC4;
}
.carousel-caption .btn {
	margin-bottom: 10px;
}

.googlemaps {
    margin: auto;
    position: relative;
    top: -120px;
    margin-bottom: -120px;
}

.googlemaps h3 {
	display: none;
}
.main-page-map h4, .catalog-main h4 {
	color: #595959!important
}

.slider-bottom {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	gap: 15px;
}

@media (max-width: 767px) {
	.carousel-caption {
		left: 5%;
		right: 5%;
	}
	.carousel-caption .btn-cb {
		padding: 14px 20px 14px;
	}
	.carousel-caption .btn-cb::before, .carousel-caption .btn-cb::after {
		content: '';
	}
}

.product-description {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	gap: 20px;
}
.product-description .description {
	flex: 1 1 60%;
	max-width: 60%;
}
.product-description .description h2 {
	margin: 20px 0;
}
.product-description .description p {
	margin-bottom: 15px;
}
.product-description .table-responsive {
	flex: 1 1 40%;
	max-width: 40%;
}

@media (max-width: 991px) {
	.product-description {
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		-o-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.product-description .description {
		flex: 1 1 100%;
		max-width: 100%;
	}
	.product-description .description h2 {
		text-align: center;
	}
	.product-description .table-responsive {
		flex: 1 1 100%;
		max-width: 100%;
	}
}

.fancybox {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}

.card-info-content {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	gap: 10px;
	margin-bottom: 20px;
}
.card-info-content figure {
	width: 35px;
}
.card-info-content a {
	color: #000;
}

@media (max-width: 991px) {
	.card-info-flex {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;
		gap: 20px;
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		-o-flex-wrap: wrap;
		flex-wrap: wrap;
		padding-right: 30px;
	}
}

@media (max-width: 767px) {
	.product-review .height-sm {
		margin-bottom: 15px;
	}
	.product-review .form-group {
		margin-bottom: 15px;
	}
	.product-review .raiting-wrap {
		margin-top: 15px;
	}
	.product-review p {
		margin-top: 0;
	}
}

@media (max-width: 539px) {
	.card-info-flex .height-sm {
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		-o-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.card-info-content {
		width: 100%;
		margin-bottom: 5px;
	}
}

[class^="product-category"] .products > div, [class^="product-search"] .products > div {
	margin-bottom: 35px;	
}
@media (max-width: 767px) {
	[class^="product-category"] .products > div, [class^="product-search"] .products > div {
		width: 100%;
	}
}

.product-search .search-form .btn-warning {
	height: 42px;
}

.product-search .radio-inline, .checkbox-inline {
	padding: 0 20px 10px;
}

@media (max-width: 767px) {
	.product-search .form-group {
		margin-bottom: 0;
	}
	.product-search .radio-inline, .checkbox-inline {
		padding: 15px 20px 20px;
		line-height: 150%;
	}
}

.header-search #search {
	padding: 0;
}

.header-search .form-control {
	height: 40px;
	font-size: 14px;
}

.header-search .btn-default {
	height: 40px;
}

#navbar {
	position: relative;
}

.header-search {
    position: absolute;
    top: -85px;
    left: 175px;
}

@media (max-width: 1023px) {
	.header {
		display: flex;
		flex-wrap: wrap;
	}
	.header-search {
		order: 2;
	}
}
@media (max-width: 767px) {
	.header-search {
		position: relative;
		top: 0;
		left: 0;
		padding: 0;
	}
	.header-search .btn-default {
		width: 72px;
		border-radius: unset;
	}
}

.products .card-product h5 {
	text-decoration: none;
	margin-bottom: 10px;
}
.products .card-product .text-danger {
	margin: 15px 0;
}

.slick-track {
	margin-left: 0;
}

.cart-content {
	display: none;
}


@media (max-width: 767px) {
	.contacts {
		position: absolute;
		left: 90px;
		width: 150px;
	}
	.contacts a {
		color: inherit;
		text-decoration: none;
	}
	.contacts a:hover {
		text-decoration: underline;
	}
}

.cart {
	margin-top: 10px;
}

.cart img {
	width: 25px;
}

.cart .cart-quantity {
    position: absolute;
    top: -32px;
    left: 0;
    font-size: 12px;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: #00a8ff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFF;
}

.cart a > div:nth-child(2) {
    color: #ff5400;
    font-size: 12px;
	position: absolute;
    left: 40px;
    bottom: 4px;
	white-space: nowrap;
}

.cart a:hover {
   text-decoration: none;
}

@media (max-width: 767px) {
	.cart {
		position: absolute;
        right: 28px;
	}
	.cart a > div:nth-child(2) {
		display: none;
	}
}

.cart-page .alert.alert-danger {
	display: none;
}

.checkout-cart .telephones-cart {
	width: 270px;
}

  .checkout-cart .header-cart {
      height: 100px;
  }
@media (max-width: 767px) {
	.checkout-cart .header-cart {
		height: 70px;
	}
}

.product-products .breadcrumbs {
	margin-top: 0;
}

.products-category-card img {
	width: 75%;
}

.products-category-card__count {
    color: #939393;
    font-size: 13px;
    position: relative;
    top: -20px;
}

.related-category-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 20px;
}
.related-category-item {
	display: inline-block;
	padding: 12px 22px;
	text-decoration: none;
	background: #f5f5f5;
	color: #333;
	font-weight: 500;
	transition: all .2s ease;
}
.related-category-item:hover {
	text-decoration: none;
	background: #ffcc00;
	color: #000;
}

.breadcrumb>li:last-child span {
	color: #393939;
}
.listing {
	margin-top: 40px;
}
@media (max-width: 767px) {
	.listing {
		margin-top: 30px;
	}
}
.openfilter {
	cursor: pointer;
}



.products-hero {
	margin-bottom: 30px;
}

.products-catalog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
}

.products-catalog-grid [class*="col-"] {
    width: auto;
    padding: 0;
}

.products-category-card {
    display: flex;
    min-height: 218px;
    padding: 10px 10px 15px;
    border: 1px solid #e5e8ec;
    border-radius: 9px;
    background: #ffffff;
    box-shadow: 0 2px 10px rgba(17, 24, 39, 0.07);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.products-category-card:hover {
    box-shadow: 0 6px 18px rgba(17, 24, 39, 0.11);
}

.products-category-card__image {
    position: relative;
    flex: 0 0 46%;
    min-height: 196px;
    overflow: hidden;
    border-radius: 6px;
    background: #f4f6f8;
}

.products-category-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.products-category-card__body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-width: 0;
    padding: 5px 6px 0 18px;
}

.products-category-card__top {
    margin-bottom: 9px;
}

.products-category-card__top h2 {
    margin: 0 0 2px;
    font-size: 20px;
    line-height: 1.12;
    font-weight: 500;
    letter-spacing: -0.015em;
    color: #171b21;
}

.products-category-card__top h2 a {
	color: #000;
	text-decoration: none;
}

.products-category-card__count {
    font-size: 14px;
    line-height: 1.35;
    color: #66717d;
}

.products-category-card__description,
.products-category-card__children-title {
    display: none;
}

.products-category-card__children {
    margin: 0 0 12px;
    padding: 0;
    list-style: none;
}

.products-category-card__children li {
    position: relative;
    margin: 0 0 5px;
    padding-left: 15px;
    font-size: 13px;
    line-height: 1.35;
    color: #27313b;
}

.products-category-card__children li a {
	color: #000;
}

.products-category-card__children li::before {
    content: '\f178';
	font-family: FontAwesome;
    position: absolute;
    left: 0;
    top: 3px;
    font-size: 11px;
    line-height: 1;
  	color: #00a8ff;
}

.products-category-card__footer {
    margin-top: auto;
}

@media (max-width: 1199px) {
    .products-catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .products-catalog-grid {
        grid-template-columns: 1fr;
    }

    .products-category-card {
        min-height: 0;
    }

    .products-category-card__image {
        flex-basis: 42%;
        min-height: 170px;
    }

    .products-category-card__body {
        padding-left: 14px;
    }
}

@media (max-width: 520px) {
    .products-category-card {
        flex-direction: column;
    }

    .products-category-card__image {
        flex-basis: auto;
        width: 100%;
        height: 205px;
        min-height: 0;
    }

    .products-category-card__body {
        padding: 14px 4px 0;
    }
	
	.products-category-card__footer .btn {
		width: 100%;
	}
}