@charset "UTF-8";
/* 
 * 	Core Owl Carousel CSS File
 *	v1.3.3
 */

/* clearfix */
.owl-carousel .owl-wrapper:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
/* display none until init */
.owl-carousel{
	display: none;
	position: relative;
	width: 100%;
	-ms-touch-action: pan-y;
}
.owl-carousel .owl-wrapper{
	display: none;
	position: relative;
	-webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-wrapper-outer{
	overflow: hidden;
	position: relative;
	width: 100%;
}
.owl-carousel .owl-wrapper-outer.autoHeight{
	-webkit-transition: height 500ms ease-in-out;
	-moz-transition: height 500ms ease-in-out;
	-ms-transition: height 500ms ease-in-out;
	-o-transition: height 500ms ease-in-out;
	transition: height 500ms ease-in-out;
}
	
.owl-carousel .owl-item{
	float: left;
}
.owl-controls .owl-page,
.owl-controls .owl-buttons div{
	cursor: pointer;
}
.owl-controls {
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* mouse grab icon */
.grabbing { 
    cursor:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/grabbing.png) 8 8, move;
}

/* fix */
.owl-carousel  .owl-wrapper,
.owl-carousel  .owl-item{
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility:    hidden;
	-ms-backface-visibility:     hidden;
  -webkit-transform: translate3d(0,0,0);
  -moz-transform: translate3d(0,0,0);
  -ms-transform: translate3d(0,0,0);
}

/* 
 *  Owl Carousel CSS3 Transitions 
 *  v1.3.2
 */

.owl-origin {
	-webkit-perspective: 1200px;
	-webkit-perspective-origin-x : 50%;
	-webkit-perspective-origin-y : 50%;
	-moz-perspective : 1200px;
	-moz-perspective-origin-x : 50%;
	-moz-perspective-origin-y : 50%;
	perspective : 1200px;
}
/* fade */
.owl-fade-out {
  z-index: 10;
  -webkit-animation: fadeOut .7s both ease;
  -moz-animation: fadeOut .7s both ease;
  animation: fadeOut .7s both ease;
}
.owl-fade-in {
  -webkit-animation: fadeIn .7s both ease;
  -moz-animation: fadeIn .7s both ease;
  animation: fadeIn .7s both ease;
}
/* backSlide */
.owl-backSlide-out {
  -webkit-animation: backSlideOut 1s both ease;
  -moz-animation: backSlideOut 1s both ease;
  animation: backSlideOut 1s both ease;
}
.owl-backSlide-in {
  -webkit-animation: backSlideIn 1s both ease;
  -moz-animation: backSlideIn 1s both ease;
  animation: backSlideIn 1s both ease;
}
/* goDown */
.owl-goDown-out {
  -webkit-animation: scaleToFade .7s ease both;
  -moz-animation: scaleToFade .7s ease both;
  animation: scaleToFade .7s ease both;
}
.owl-goDown-in {
  -webkit-animation: goDown .6s ease both;
  -moz-animation: goDown .6s ease both;
  animation: goDown .6s ease both;
}
/* scaleUp */
.owl-fadeUp-in {
  -webkit-animation: scaleUpFrom .5s ease both;
  -moz-animation: scaleUpFrom .5s ease both;
  animation: scaleUpFrom .5s ease both;
}

.owl-fadeUp-out {
  -webkit-animation: scaleUpTo .5s ease both;
  -moz-animation: scaleUpTo .5s ease both;
  animation: scaleUpTo .5s ease both;
}
/* Keyframes */
/*empty*/
@-webkit-keyframes empty {
  0% {opacity: 1}
}
@-moz-keyframes empty {
  0% {opacity: 1}
}
@keyframes empty {
  0% {opacity: 1}
}
@-webkit-keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
@-moz-keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
@keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
@-webkit-keyframes fadeOut {
  0% { opacity:1; }
  100% { opacity:0; }
}
@-moz-keyframes fadeOut {
  0% { opacity:1; }
  100% { opacity:0; }
}
@keyframes fadeOut {
  0% { opacity:1; }
  100% { opacity:0; }
}
@-webkit-keyframes backSlideOut {
  25% { opacity: .5; -webkit-transform: translateZ(-500px); }
  75% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
  100% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
}
@-moz-keyframes backSlideOut {
  25% { opacity: .5; -moz-transform: translateZ(-500px); }
  75% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
  100% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
}
@keyframes backSlideOut {
  25% { opacity: .5; transform: translateZ(-500px); }
  75% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
  100% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
}
@-webkit-keyframes backSlideIn {
  0%, 25% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(200%); }
  75% { opacity: .5; -webkit-transform: translateZ(-500px); }
  100% { opacity: 1; -webkit-transform: translateZ(0) translateX(0); }
}
@-moz-keyframes backSlideIn {
  0%, 25% { opacity: .5; -moz-transform: translateZ(-500px) translateX(200%); }
  75% { opacity: .5; -moz-transform: translateZ(-500px); }
  100% { opacity: 1; -moz-transform: translateZ(0) translateX(0); }
}
@keyframes backSlideIn {
  0%, 25% { opacity: .5; transform: translateZ(-500px) translateX(200%); }
  75% { opacity: .5; transform: translateZ(-500px); }
  100% { opacity: 1; transform: translateZ(0) translateX(0); }
}
@-webkit-keyframes scaleToFade {
  to { opacity: 0; -webkit-transform: scale(.8); }
}
@-moz-keyframes scaleToFade {
  to { opacity: 0; -moz-transform: scale(.8); }
}
@keyframes scaleToFade {
  to { opacity: 0; transform: scale(.8); }
}
@-webkit-keyframes goDown {
  from { -webkit-transform: translateY(-100%); }
}
@-moz-keyframes goDown {
  from { -moz-transform: translateY(-100%); }
}
@keyframes goDown {
  from { transform: translateY(-100%); }
}

@-webkit-keyframes scaleUpFrom {
  from { opacity: 0; -webkit-transform: scale(1.5); }
}
@-moz-keyframes scaleUpFrom {
  from { opacity: 0; -moz-transform: scale(1.5); }
}
@keyframes scaleUpFrom {
  from { opacity: 0; transform: scale(1.5); }
}

@-webkit-keyframes scaleUpTo {
  to { opacity: 0; -webkit-transform: scale(1.5); }
}
@-moz-keyframes scaleUpTo {
  to { opacity: 0; -moz-transform: scale(1.5); }
}
@keyframes scaleUpTo {
  to { opacity: 0; transform: scale(1.5); }
}/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden; -webkit-transform: translate3d(0,0,0);}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/overlay.png) repeat 0 0; opacity: 0.9; filter: alpha(opacity = 90);}
#colorbox{outline:0;}
    #cboxTopLeft{width:21px; height:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) no-repeat -101px 0;}
    #cboxTopRight{width:21px; height:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) no-repeat -130px 0;}
    #cboxBottomLeft{width:21px; height:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) no-repeat -101px -29px;}
    #cboxBottomRight{width:21px; height:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) no-repeat -130px -29px;}
    #cboxMiddleLeft{width:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) left top repeat-y;}
    #cboxMiddleRight{width:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) right top repeat-y;}
    #cboxTopCenter{height:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/border.png) 0 0 repeat-x;}
    #cboxBottomCenter{height:21px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/border.png) 0 -29px repeat-x;}
    #cboxContent{background:#fff; overflow:hidden;}
        .cboxIframe{background:#fff;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{margin-bottom:28px;}
        #cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
        #cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
        #cboxLoadingOverlay{background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/loading_background.png) no-repeat center center;}
        #cboxLoadingGraphic{background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/loading.gif) no-repeat center center;}

        /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
        #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
        
        /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
        #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

        #cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
        #cboxPrevious{position:absolute; bottom:0; left:0; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
        #cboxPrevious:hover{background-position:-75px -25px;}
        #cboxNext{position:absolute; bottom:0; left:27px; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
        #cboxNext:hover{background-position:-50px -25px;}
        #cboxClose{position:absolute; bottom:0; right:0; background:url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}
        #cboxClose:hover{background-position:-25px -25px;}

/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}


/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0,-4px,0);
    transform: translate3d(0,-4px,0);
  }
}

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0,-4px,0);
    transform: translate3d(0,-4px,0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(.97, .97, .97);
    transform: scale3d(.97, .97, .97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(.97, .97, .97);
    transform: scale3d(.97, .97, .97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(.95, .95, .95);
    transform: perspective(400px) scale3d(.95, .95, .95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(.95, .95, .95);
    transform: perspective(400px) scale3d(.95, .95, .95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}
/*** templatesnext toolkit Shortcode - content elements ***/

/*		Heading
---------------------------------------------------------------*/

.tx-heading-style-default {
	padding: 2px 0;
}
.tx-heading-style-default .tx-heading-inner {
	padding: 0px;
}
.tx-heading.tx-heading-align-left { text-align: left; }
.tx-heading.tx-heading-align-left .tx-heading-inner { padding-left: 0px; }
.tx-heading.tx-heading-align-right { text-align: right; }
.tx-heading.tx-heading-align-right .tx-heading-inner { padding-right: 0px; }
.tx-heading.tx-heading-align-center { text-align: center; }

/*		Divider
---------------------------------------------------------------*/

.tx-divider {
	clear: both;
	position: relative;
	height: 1px;
	margin: 2.5em 0 1.5em 0;
	background: #999;
	background-color: #e7e7e7;
}
.tx-divider a {
	position: absolute;
	right: 0;
	bottom: 5px;
	display: inline-block;
	color: #777;
	font-size: 12px;
	text-decoration: none;
}

/*		Spacer
---------------------------------------------------------------*/

.tx-spacer {
	display: block;
	height: 0;
	clear: both;
	overflow: hidden;
}
.tx-spacer-5 { height: 5px }
.tx-spacer-10 { height: 10px }
.tx-spacer-20 { height: 20px }
.tx-spacer-30 { height: 30px }
.tx-spacer-40 { height: 40px }

/*		Highlight
---------------------------------------------------------------*/

.tx-highlight {
	display: inline;
	padding: 1px 0;
}


/*		List
---------------------------------------------------------------*/

.tx-list ul {
	list-style: none !important;
	margin: 0 0 1.5em 0 !important;
	padding: 0 !important;
}
.tx-list ul li {
	position: relative;
	list-style-type: none !important;
	display: block !important;
	line-height: 1.3em;
	margin: 0 !important;
	padding: 4px 0 4px 2em !important;
}
.tx-list ul li > img {
	position: absolute;
	left: 0;
	top: 4px;
	width: 1.3em;
	height: 1.3em;
	padding: 0;
	margin: 0;
	border: none;
}
.tx-list ul li i {
	position: absolute;
	left: 0;
	top: 4px;
	width: 1.3em;
	height: 1.3em;
	line-height: 1.3em;
	text-align: center;
}

/*		Button
---------------------------------------------------------------*/

.tx-button {
	display: inline-block !important;
	text-align: center;
	text-decoration: none !important;
	box-sizing: content-box !important;
	-moz-box-sizing: content-box !important;
	-webkit-box-sizing: content-box !important;
	transition: all .2s;
	-o-transition: all .2s;
	-ie-transition: all .2s;
	-moz-transition: all .2s;
	-webkit-transition: all .2s;
}
.tx-button-wide {
	display: block !important;
	margin: 1em 0;
}
.tx-button-center { text-align: center; }
.tx-button span {
	display: block !important;
	text-decoration: none !important;
	box-sizing: content-box !important;
	-moz-box-sizing: content-box !important;
	-webkit-box-sizing: content-box !important;
	transition: all .2s;
	-o-transition: all .2s;
	-ie-transition: all .2s;
	-moz-transition: all .2s;
	-webkit-transition: all .2s;
}
.tx-button img {
	border: none !important;
	vertical-align: middle !important;
	margin: -0.2em 0.4em 0 -0.3em !important;
	box-shadow: none !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
}
.tx-button i {
	display: inline-block;
	width: 1em;
	height: 1em;
	margin: 0 0.5em 0 0 !important;
	text-align: center;
	line-height: 1em;
}
.tx-button.tx-button-float-icon img { margin: 0 0.5em !important }
.tx-button small {
	display: block;
	margin: -0.2em 0 0 0;
	color: inherit;
	text-align: center;
	font-style: normal;
	font-size: 0.8em;
	line-height: 1;
	opacity: 0.7;
	filter: alpha(opacity=70);
}
.tx-button-style-default {
	border-width: 0px;
	border-style: solid;
}

.tx-button-style-default:hover {
	background-color: #333333!important;
	color: #FFFFFF!important;
}


.tx-button-style-default span {
	border-top-width: 0px;
	border-bottom-width: 0px;
	border-top-style: solid;
	border-bottom-style: solid;
}

.tx-button-style-stroked span {
	margin: 1px;
	border: 1px dashed #fff !important;
}
.tx-button-style-stroked:hover span {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
	opacity: 0.7;
}
.tx-button-style-3d {
	border-bottom-style: solid;
	border-bottom-width: 6px;
}
.tx-button-style-3d span {
	border-bottom-style: solid;
	border-bottom-width: 1px;
}
.tx-button-style-3d:hover {
	position: relative;
	top: 3px;
	border-bottom-width: 3px;
}

.tx-button a:hover {
	background-color: #373737;
	color: #ffffff;
}

/*		Row + Column
---------------------------------------------------------------*/

.tx-row {
	clear: both;
	zoom: 1;
	margin-bottom: 24px;
}
.tx-row:before,
.tx-row:after {
	display: table;
	content: "";
}
.tx-row:after { clear: both; }
.tx-column {
	display: block;
	margin: 0 4% 0 0;
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.tx-column-last { margin-right: 0; }
.tx-row .tx-column { margin: 0 0 0 4%; }
.tx-row .tx-column .tx-column { margin: 0px!important; display: inline-block; width: 49%; }
.tx-row .tx-column.tx-column-size-1-1 { margin-left: 0; margin-right: 0; }
.tx-row .tx-column:first-child { margin-left: 0; }
.tx-column-centered {
	margin-right: auto !important;
	margin-left: auto !important;
	float: none !important;
}
.tx-column img,
.tx-column iframe,
.tx-column object,
.tx-column embed { max-width: 100%; }
@media only screen {
	[class*="nx-column"] + [class*="nx-column"]:last-child { float: right; }
}

.tx-column {
	display: block;
	margin: 0 0 0 0;
	padding: 0px 16px;
}
.tx-column-last { padding-right: 0px; }
.tx-row .tx-column { margin: 0%; }
.tx-row .tx-column.tx-column-size-1-1 { padding-left: 0; padding-right: 0; }
.tx-row .tx-column:first-child { padding-left: 0px; }
.tx-row .tx-column:last-child { padding-right: 0px; }

.tx-column-size-1-1 { width: 100%; }
.tx-column-size-1-2 { width: 50%; }
.tx-column-size-1-3 { width: 33.33%; }
.tx-column-size-2-3 { width: 66.66%; }
.tx-column-size-1-4 { width: 25%; }
.tx-column-size-3-4 { width: 75%; }
.tx-column-size-1-5 { width: 20%; }
.tx-column-size-2-5 { width: 40%; }
.tx-column-size-3-5 { width: 60%; }
.tx-column-size-4-5 { width: 80%; }
.tx-column-size-1-6 { width: 16.66%; }
.tx-column-size-5-6 { width: 83.33%; }

/* Styles for screens that are less than 768px */
@media only screen and (max-width: 768px) {
	.tx-column {
		width: 100% !important;
		margin: 0 0 24px 0 !important;
		float: none !important;
	}
	
	.tx-row .tx-column:last-child,
	.fancy-inner .tx-column:last-child {
		margin-bottom: 0 !important;
	}
}

.site-content .tx-row.lined div.tx-column {
	border: 1px solid #999;
}



/* portfolio Shortcode css Starts */


.tx-col-1-2 {
	width: 50%;
	display: block;
	float: left;
}
.tx-col-1-3 {
	width: 33.3%;
}
.tx-col-2-3 {
	width: 66.6%;
}
.tx-col-1-4 {
	width: 25%;
}

.tx-post-row {
	display: block;
	position: relative;
	clear: both;
	width : 100%;
	width: calc(100% + 32px);
	margin-left: -16px;
	margin-right: -16px;
}

.tx-post-row.folio-style-gallery {
	width : 100%;
	margin-left: 0px;
	margin-right: 0px;
}

.tx-post-row:after {
	content: " ";
	display: block;
	clear: both;
	height: 0px;
}

.tx-post-col-1 {
	display: block;
	float: none;
	padding-right: 16px;
	padding-left: 16px;
	width: 100%;
}
.tx-post-col-2 {
	display: block;
	float: left;
	padding-left: 16px;
	padding-right: 16px;	
	width: 50%;
}
.tx-post-col-3 {
	display: block;
	float: left;
	padding-left: 16px;
	padding-right: 16px;	
	width: 33.33%;
}
.tx-post-col-4 {
	display: block;
	float: left;
	padding-left: 16px;
	padding-right: 16px;	
	width: 25%;
}

.tx-post-row.folio-style-gallery .tx-portfolio-item {
	padding: 0px;
	/* overflow: hidden; */
}

.tx-carousel .tx-post-col-1,
.tx-carousel .tx-post-col-2,
.tx-carousel .tx-post-col-3,
.tx-carousel .tx-post-col-4 {
	width: auto;
}

.tx-post-row .tx-portfolio-item .tx-border-box {
	padding-bottom: 32px;
}

.folio-style-gallery.tx-post-row .tx-portfolio-item .tx-border-box {
	padding-bottom: 0px;
}

.tx-post-row .tx-folio-title {
	font-size: 24px;
	font-weight: 500;
	margin: 12px 0px;
	margin-bottom: 2px;
}

.tx-post-row .tx-folio-title a,
.tx-post-row .tx-folio-title a:visited {
	color: #565656;
	text-decoration: none;
}

.tx-folio-category {
	display: block;
	color: #999;
	font-size: 12px;
	margin-bottom: 16px;
}

.folio-style-gallery.tx-post-row .tx-folio-title {
	position: absolute;
	left: 12px;
	bottom: -20px;
	margin-bottom: 0px;
	opacity: 0;
	transition-property: all;
	transition-duration: 0.3s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.4s;	
}

.folio-style-gallery.tx-post-row .tx-folio-title a,
.folio-style-gallery.tx-post-row .tx-folio-title a:visited {
	color: #FFFFFF;
}

.folio-style-gallery.tx-post-row .tx-folio-category {
	color: #ddd;
	position: absolute;
	left: 12px;
	bottom: -32px;
	margin-bottom: 0px;
	opacity: 0;
	transition-property: all;
	transition-duration: 0.3s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.6s;		
}

.folio-style-gallery.tx-post-row .tx-portfolio-item:hover .tx-folio-title {
	bottom: 32px;
	opacity: 1;
}

.folio-style-gallery.tx-post-row .tx-portfolio-item:hover .tx-folio-category {
	bottom: 12px;
	opacity: 1;
}

.tx-post-row a.moretag,
.tx-post-row a.moretag:visited {
	display: block;
	clear: both;
	text-align: right;
	text-decoration: none;
	padding-top: 6px;
	font-size: 12px;
}

.tx-post-row a.moretag:hover {
	text-decoration: underline;
}

.tx-post-row .tx-border-box .tx-folio-img {
	overflow: hidden;
}

.tx-post-row .tx-portfolio-item img.folio-img {
	width: 100%;
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;	
}

.tx-post-row .tx-portfolio-item:hover img.folio-img {
	transform: scale(1.1);
}

.tx-folio-img,
.tx-folio-img-wrap {
	position: relative;
}

.tx-folio-img .folio-links {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	background-color: rgba(0,0,0,0.4);
	padding-top: 12px;
	padding-bottom: 12px;
	text-align: center;
	overflow: hidden;
	
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;
	
	bottom: -64px;
	z-index: 101;
	visibility: hidden;
}

.folio-style-gallery .tx-folio-img .folio-links {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	bottom: 0px;
	background-color: rgba(0,0,0,0.0);	
}

.tx-folio-img:hover .folio-links {
	bottom: 0px;
	visibility: visible;
}

.folio-style-gallery .tx-portfolio-item:hover .tx-folio-img .folio-links {
	background-color: rgba(0,0,0,0.4);
	bottom: 0px;
	visibility: visible;		
}

.tx-folio-img .folio-links .folio-linkico,
.tx-folio-img .folio-links .folio-zoomico {
	display: inline-block;
	height: 32px;
	width: 32px;
	background-color: #666;
	color: #FFF;
	text-align: center;
	line-height: 32px;
	margin: auto 2px;
	border-radius: 3px;
	transition-property: all;
	transition-duration: 0.2s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.3s;
}

.folio-style-gallery .tx-folio-img .folio-links span,
.folio-style-gallery .tx-folio-img .folio-links span {
	display: block;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 50%;
	margin-top: -22px;
}

.folio-style-gallery .folio-head {
	display: block;
	width: 100%;
	position: absolute;
	left: 0px;
	bottom: 0px;
	padding: 0px 12px;
	z-index: 102;
}


.folio-style-gallery .tx-post-row .tx-folio-title a, 
.folio-style-gallery .tx-post-row .tx-folio-title a:visited {}

.folio-style-gallery .tx-folio-category {}

.tx-folio-img .folio-links .folio-linkico {
	margin-right: 64px;
	opacity: 0;
}
.tx-folio-img .folio-links .folio-zoomico {
	margin-left: 64px;
	opacity: 0;
}

.tx-folio-img:hover .folio-links .folio-linkico,
.folio-style-gallery .tx-portfolio-item:hover .tx-folio-img .folio-links .folio-linkico {
	margin-right: 2px;
	opacity: 1;
}
.tx-folio-img:hover .folio-links .folio-zoomico,
.folio-style-gallery .tx-portfolio-item:hover .tx-folio-img .folio-links .folio-zoomico {
	margin-left: 2px;
	opacity: 1;
}

.tx-folio-img .folio-links .folio-linkico {}
.tx-folio-img .folio-links .folio-zoomico {
	transition-delay: 0.5s;			
}

.tx-subtitle {
	font-size: 20px;
	font-weight: 500;
}

.tx-blog-img {
	margin-bottom: 16px;
	position: relative;
	overflow: hidden;
}

.tx-blog-imgpad {
	height: 16px;
}

.tx-blog .tx-blog-item {
	margin-bottom: 32px;
}

.tx-blog-item .blog-image {
	width: 100%;
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;		
}

.tx-blog-item .blog-image:hover {
	transform:scale(1.1);
}

.tx-blog .tx-blog-item .tx-post-title {
	padding: 0px;
	margin: 0px;
	padding-bottom: 4px;
}

.tx-blog .tx-blog-item  h3.tx-post-title a {
	color: #565656;
	font-weight: 500;
	text-decoration: none;
}
.tx-category {
	margin-bottom: 16px;
	font-size: 12px;	
	color: #999;	
}

.tx-category a {
	text-decoration: none;
}

.tx-meta {
	padding-top: 8px;
	font-size: 11px;
	color: #999;
}

.tx-post-content {
	padding: 0px 32px 32px 32px;
}

.tx-blog .tx-blog-item .tx-border-box {
	border: 1px solid #e7e7e7;
}

.tx-post-comm {
	display: block;
	position: absolute;
	bottom: 12px;
	right: 12px;
	height: 32px;
	width: 32px;
	text-align: center;
	line-height: 32px;
	color: #FFFFFF;
}

.tx-post-comm span {
	display: block;
	position: relative;
	height: 32px;
	width: 32px;
	text-align: center;
	z-index: 107;
}

.tx-post-comm:after { 
   content: '\f075';
   font-family: FontAwesome;
   font-weight: normal;
   font-style: normal;
   margin:0px;
   text-decoration:none;
   height: 32px;
   line-height: 32px;
   font-size: 32px;
   position: absolute;
   left: 0px;
   top: 0px;
   color: #f00;
   z-index: 106;
   width: 32px;
   text-align: center;
}

/* testimonials */
.entry-content .owl-theme .owl-controls .owl-page span {
	background-color: rgba(0,0,0,0.5);
}

.tx-testimonials {
	display: block;
	padding: 32px;
	background-color: #CCC;
}

.tx-testimonials {
	display: block;
	padding: 32px;
	padding-top: 56px;
	background-color: #f7f7f7;
}

.tx-testimonials:after {
	position: absolute;
	left: calc(50% - 15px);
	top: 16px;
	content: "\f10d";
	display: inline-block;
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 32px;
	width: 32px;
	text-align: center;
	color: #999;	
}

.tx-testimonials .tx-testi-item {
	text-align: center;
}

.tx-testimonials .tx-testi-name {
	display: block;
	font-weight: 700;
	color: #666;
	padding-top: 16px;
}
.tx-testimonials .tx-testi-desig {
	display: inline-block;
	font-size: 12px;
	color: #999;
	padding-right: 6px;
}
.tx-testimonials .tx-testi-org {
	display: inline-block;
	font-size: 12px;
	color: #999;	
}

@media (min-width: 1200px) {
	.tx-fullwidthrow .tx-fw-content .tx-testi-item {
		margin-left: 64px;
	}	
}



/* tx Button */
.tx-button {
	display: inline-block;
	padding: 10px 16px;
	border-radius: 3px;
}

.tx-button:hover {
	background-color: #373737!important;
	color: #FFFFFF!important;
}

.tx-cta {
	display: block;
	clear: both;
	padding: 32px;
	margin-bottom: 32px;
	background-color: #f7f7f7;
	border-left: 6px solid #06C;
	color: #474747;
}

.tx-cta .tx-cta-text {
	display: inline-block;
	font-size: 24px;
	line-height: 40px;
	font-weight: 500;
}

.tx-cta a.cta-button,
.tx-cta a.cta-button:visited {
	display: block;
	float: right;
	line-height: 40px;
	color: #FFF;
	padding-left: 16px;
	padding-right: 16px;
	border-radius: 3px;
	text-decoration: none;
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;	
}

.tx-cta a.cta-button:hover {
	background-color: #373737;
	color: #ffffff;
}

.tx-service {}
.tx-service-icon {
	display: block;
	text-align: center;
}

.tx-animate,
.tx-service-icon span,
.tx-service-icon span i,
.tx-service-icon span i:before,
.tx-service-icon span i:after,
.tx-carousel .owl-controls .owl-buttons .owl-prev,
.tx-carousel .owl-controls .owl-buttons .owl-next  {
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;
}

.tx-service-icon span {
	display: inline-block;
	width: 92px;
	height: 92px;
	border: 2px solid #069;
	border-radius: 50%;
	text-align: center;
	font-size: 48px;
	line-height: 88px;
	color: #069;
}

.tx-service-icon span {
	border: 2px solid #069;
}
.tx-service-icon span i {
	color: #069;
	line-height: 88px;
}

.tx-service-icon span i:before {
	line-height: 88px;
}

.tx-service:hover .tx-service-icon span {
	background-color: #069;
}
.tx-service:hover .tx-service-icon span i {
	color: #FFF;	
}

.tx-service.curved .tx-service-icon span {
	border-radius: 12px;
	margin-bottom: 12px;
}

.tx-service.square .tx-service-icon span {
	border-radius: 0px;
	margin-bottom: 12px;
}

.tx-service-title {
	text-align: center;
	font-size: 24px;
	padding: 6px 0px 16px 0px;
}
.tx-service-text {
	text-align: center;
	padding-bottom: 32px;
}


/* owl carousel */
.tx-carousel .owl-controls .owl-buttons .owl-prev {}

.tx-carousel .owl-controls .owl-buttons {
	position: absolute;
	width: 100%;
	top: 50%;
	top: calc(50% - 40px);
	left: 0px;
}
.tx-carousel .owl-controls .owl-buttons .owl-prev {
	position: absolute;
	left: 48px;
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;	
	color: #fff;
	background-color: rgba(0,0,0,0.5);
	border-radius: 0px 3px 3px 0px;
	opacity: 0;
}
.tx-carousel .owl-controls .owl-buttons .owl-next {
	position: absolute;
	right: 48px;
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	color: #fff;
	background-color: rgba(0,0,0,0.5);
	border-radius: 3px 0px 0px 3px;
	opacity: 0;
}


.tx-carousel:hover .owl-controls .owl-buttons .owl-prev {
	left: 16px;
	opacity: 1;
}
.tx-carousel:hover .owl-controls .owl-buttons .owl-next {
	right: 16px;
	opacity: 1;
}


.tx-carousel .owl-controls .owl-buttons .owl-prev span {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;	
	color: #fff;
}
.tx-carousel .owl-controls .owl-buttons .owl-next span {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	color: #fff;
}

.nx-paging {
	display: block;
	clear: both;
	text-align: center;
	margin: 16px 0px;
}

.nx-paging .nx-paging-inner {
	display: inline-block;
	margin: 0px auto;
}

.nx-paging > div.nx-paging-inner > a,
.nx-paging > div.nx-paging-inner > a:visited,
.nx-paging > div.nx-paging-inner > span {
	display: inline-block;
	height: 28px;
	line-height: 28px;
	padding: 0px 10px;
	border: 1px solid #d7d7d7;
	text-decoration: none;
	color: #999999;
}

.nx-paging > div.nx-paging-inner > span {
	color: #CCC;
	border: 1px solid #e7e7e7;
}

.nx-paging > div.nx-paging-inner > a:hover {
	background-color: #e7e7e7;
	color: #373737;
}

.nx-paging > div.nx-paging-inner > a.prev.page-numbers {}

/*
* Heading
*/

.tx-heading {
	border-bottom: 1px solid #CCC;
	padding-bottom: 6px;
}

.tx-heading .tx-heading-tag {
	font-weight: 500;
	margin: 0px;
	padding: 0px;
}

/*
* related Product
*/

.related.products {
	position: relative;
	overflow: hidden;
}

.related.products .products .owl-controls .owl-buttons {
	position: absolute;
	width: 100%;
	left: 0px;
	top: 45%;
}

.related.products .products .owl-controls .owl-buttons .owl-next,
.related.products .products .owl-controls .owl-buttons .owl-prev {
	display: block;
	height: 32px;
	width: 24px;
	line-height: 24px;
	text-align: center;
	color: #ffffff;
	background-color: rgba(0,0,0,0.4);
	position: absolute;
	left: 0px;
	top: 0px;
	opacity: 0;

	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;	
}


.related.products .products .owl-controls .owl-buttons .owl-next {
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
	margin-left: -100px;		
}

.related.products .products .owl-controls .owl-buttons .owl-prev {
	left: auto;
	right: 0px;
	top: 0px;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
	margin-right: -100px;
}


.related.products .products .owl-controls .owl-buttons .owl-next span,
.related.products .products .owl-controls .owl-buttons .owl-prev span {
	line-height: 32px;
}

.related.products .products:hover .owl-controls .owl-buttons .owl-next {
	margin-left: 0px;
	opacity: 1;
}

.related.products .products:hover .owl-controls .owl-buttons .owl-prev {
	margin-right: 0px;
	opacity: 1;
}

/*
* Slider
*/

.tx-slider {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: auto;
}

.tx-slider img {
	width: 100%;
	max-width: 100%;
}

.tx-slider .owl-controls {
}

.tx-slider-item {
	background-color: #E6E6E6;
}

.tx-slider .owl-controls .owl-buttons {
	position: absolute;
	top: 45%;
	left: 0px;
	width: 100%;
	height: 1px;
	overflow: visible;
	z-index: 102;
}


.tx-slider .owl-controls .owl-buttons .owl-next,
.tx-slider .owl-controls .owl-buttons .owl-prev {
	display: block;
	height: 56px;
	width: 32px;
	line-height: 32px;
	text-align: center;
	color: #ffffff;
	background-color: rgba(0,0,0,0.36);
	position: absolute;
	left: 0px;
	top: 0px;

	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;	
}


.tx-slider .owl-controls .owl-buttons .owl-next {
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	margin-left: -100px;		
}

.tx-slider .owl-controls .owl-buttons .owl-prev {
	left: auto;
	right: 0px;
	top: 0px;
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
	margin-right: -100px;
}


.tx-slider .owl-controls .owl-buttons .owl-next span,
.tx-slider .owl-controls .owl-buttons .owl-prev span {
	line-height: 56px;
}

.tx-slider:hover .owl-controls .owl-buttons .owl-next {
	margin-left: 0px;
}

.tx-slider:hover .owl-controls .owl-buttons .owl-prev {
	margin-right: 0px;
}

.tx-slider .owl-wrapper .tx-slider-box {
	position: relative;
}

.tx-slider .owl-wrapper .tx-slide-content {
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	margin: 0px auto;
	width: 100%;
	height: 100%;
	z-index: 304;
	text-align: left;
}

.tx-slider .owl-wrapper .tx-slide-content .tx-slide-content-inner {
	display: block;
	position: relative;
	margin: 0px auto;
	width: 100%;
	max-width: 1200px;
	padding: 0px 36px;
	z-index: 305;
	
	top: 45%;
	transform: translateY(-50%);	
}

.tx-slide-title {
	display: inline-block;
	font-weight: 500;
	font-size: 48px;
	padding: 8px 16px;
	color: #FFF;
	background-color: rgba(0,0,0,0.36);
	margin-bottom: 12px;
	visibility: hidden;
}

.tx-slide-details p {
	display: inline-block;	
	padding: 8px 16px;
	color: #FFF;
	background-color: rgba(0,0,0,0.4);
	max-width: 50%;
	margin-bottom: 12px;
	visibility: hidden;
}

.tx-slide-button {
	visibility: hidden;
}

.tx-slider .tx-slide-button a,
.tx-slider .tx-slide-button a:visited {
	display: inline-table;
	padding: 12px 16px;
	background-color: #575757;
	border-radius: 3px;
	color: #ffffff;
	text-decoration: none;
	font-size: 12px;
}

.tx-slider .tx-slide-button a:hover {
	text-decoration: none;		
}

.owl-item .tx-slide-title {
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.2s;
	opacity: 0;
}

.owl-item .tx-slide-details p {
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.5s;
	opacity: 0;
	margin-left: 120px;
}

.tx-slider .owl-item .tx-slide-button {
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: .3s;
	margin-top: 80px;
	opacity: 0;	
}

.owl-item.active .tx-slide-title {
	visibility: visible;
	opacity: 1;	
}

.owl-item.active .tx-slide-details p {
	visibility: visible;
	opacity: 1;
	margin-left: 0px;
}

.tx-slider .owl-item.active .tx-slide-button {
	visibility: visible;
	margin-top: 0px;
	opacity: 1;	
}

.tx-slider .owl-pagination {
	display: block;
	width: 100%;
	position: absolute;
	bottom: 12px;
	left: 0px;
	text-align: center;
	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: .0s;	
	opacity: 0;
}

.tx-slider:hover .owl-pagination {
	opacity: 1;
}

.tx-slider .owl-pagination .owl-page {
	display: inline-block;
	margin: 0px 4px;
}

.tx-slider .owl-pagination .owl-page span {
	display: block;
	background-color: rgba(0,0,0,0.4);
	height: 12px;
	width: 12px;
	border-radius: 6px;
}

.tx-slider .owl-pagination .owl-page.active span {
	background-color: rgba(0,0,0,0.8);	
}

.tx-slider .owl-controls {
}

.portfolio .entry-thumbnail.tx-slider .owl-controls {
	top: 45%;
	height: auto;
}

.portfolio .entry-thumbnail.tx-slider .owl-controls .owl-pagination {
	display: none;
}


.tx-slider.shadow .tx-slide-title {
	background: transparent-color: rgba(0, 0, 0, 0.0);;
	background: transparent;
	text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);	
}

.tx-slider.shadow .tx-slide-details p {
	background: transparent-color: rgba(0, 0, 0, 0.0);;
	background: transparent;	
	text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.4);	
}

.tx-slider.shadow .tx-slide-button a {
	box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.4);	
}


/*
* Widgets 
*/

.site .widget .recent-comments-list li.nx-comment {
	display: block;
	clear: both;
	height: auto;
	border: none;
}

.site .widget .recent-comments-list li.nx-comment .comment-wrap {
	padding-top: 6px;
	padding-bottom: 6px;
}

.widget .recent-comments-list li.nx-comment .comment-wrap .comment-avatar {
	display: inline-block;
}

.widget .recent-comments-list li.nx-comment .comment-wrap .comment-avatar img {
	border-radius: 3px;
}

.widget .recent-comments-list li.nx-comment .comment-wrap .comment-content {
	width: 72%;
	width: calc( 100% - 64px );
	border: 1px solid rgba(154,154,154,0.4);
	border-radius: 3px;
	padding: 6px 6px 0px 6px;
}

.widget .recent-comments-list li.nx-comment .comment-wrap .comment-content .comment-meta {
	color: #999;
	font-size: 12px;
	line-height: 1;
}

.widget .recent-comments-list li.nx-comment .comment-wrap .comment-content .comment-body {
	padding-top: 8px;
	padding-bottom: 0px;
}

.widget .recent-comments-list li.nx-comment .comment-wrap .comment-content .comment-body p {
	margin: 0px;
	margin-bottom: 12px;
}

.widget .recent-posts-list li.nx-recent-post {
	display: block;
	clear: both;
	min-height: 96px;
}

.widget .recent-posts-list li.nx-recent-post a.recent-post-image img {
	width: 72px;
	display: block;
	float: left;
	padding-top: 4px;
	border-radius: 6px;
}

.widget .recent-posts-list li.nx-recent-post .recent-post-details.thumbyes {
	display: inline-block;
	width: 60%;
	width: calc( 100% - 72px);
	padding-left: 12px;
}

.widget .recent-posts-list li.nx-recent-post .recent-post-title {
	display: block;
	clear: both;
}

.widget .recent-posts-list li.nx-recent-post .recent-post-details.thumbyes span.post-meta {
	font-size: 11px;
}

.widget .portfolio-grid {
	padding-top: 12px;
}

.widget .portfolio-grid li a.grid-image img {}

.widget .portfolio-grid li {
	display: block;
	float: left;
	margin: 0px;
	width: 33.33%;
	border: none;
	border-bottom: none!important;
	padding: 1px!important;
}

.widget .portfolio-grid li a.grid-image img {}

.nx-wide .tx-fullwidthrow {
	position: relative;
}

.nx-boxed .tx-fullwidthrow {}

.nx-wide .tx-fullwidthrow .tx-fullwidthinner {
	display: block;
	clear: both;
}

.nx-wide .tx-fullwidthrow .tx-fullwidthinner:after,
.nx-boxed .tx-fullwidthrow .tx-fullwidthinner:after {
  content: "";
  display: table;
  clear: both;
  background-color: #f00;
}
/*
.nx-boxed .tx-fullwidthrow .tx-fullwidthinner {
	margin-left: -32px;
	margin-right: 32px;
}
*/

.tx-fw-inner {
}

.tx-fw-overlay {
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.4);
	padding-left: 32px;
	padding-right: 32px;
}

.tx-fw-content {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;	
}

span.tx-animate {
	display: inline-block;
}


/*		Divider
---------------------------------------------------------------*/

.tx-team{}

.tx-team .tx-team-item {
	display: block;
	float: left; 
}

.tx-team.tx-2-column-team .tx-team-item {
	width: 50%;
}
.tx-team.tx-3-column-team .tx-team-item {
	width: 33.33%
}
.tx-team.tx-4-column-team .tx-team-item {
	width: 25%;
}


.tx-team {
	margin-left: -16px;
	margin-right: -16px;
	width: calc( 100% + 32px );
}

.tx-team .tx-team-item .tx-team-box {
	display: block;
	position: relative;
	padding: 16px;
}

.tx-team .tx-team-content {}

.tx-team .tx-team-content .tx-team-content-inner {
	display: block;
	position: relative;
	text-align: center;
	padding-bottom: 6px;
}

.tx-team  .tx-team-img {
	display: block;
	position: relative;
	text-align: center;
	overflow: hidden;
}

.tx-team .tx-team-box .tx-team-img img {
	transition-property: all;
	transition-duration: 0.2s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.0s;	
}

.tx-team .tx-team-box:hover .tx-team-img img {
	transform: scale(1.1, 1.1);
}

.tx-team .tx-team-socials {

	transition-property: all;
	transition-duration: 0.4s;
	transition-timing-function: ease-in-out;
	transition-delay: 0.2s;		
	
	display: block;
	position: absolute;
	left: 0px;
	bottom: 0px;
	margin-bottom: -58px;
	width: 100%;
	background-color: rgba(0,0,0,.6);

	z-index: 101;
}

.tx-team .tx-team-box:hover .tx-team-socials {
	margin-bottom: 0px;
}

.tx-team  .tx-team-socials span {
	color: #FFF;
	display: inline-block;
	margin: 12px 4px;
}

.tx-team .tx-team-socials span > a > i {
	display: inline-table;
	color: #FFF;
	border: 1px solid #FFF;
	border-radius: 3px;
	width: 32px;
	height: 32px;
	line-height: 32px;
	font-size: 20px;
}


.tx-team .tx-team-content-inner h3 {
	font-size: 24px;
	font-weight: 500;
	margin: 6px auto 2px auto;
	padding: 0px;	
}

.tx-team .tx-team-content-inner .desig {
	font-size: 13px;
	font-weight: 300;
	color: #666;
	line-height: 16px;
}

.tx-noposts {
	display: block;
	width: 100%;
	padding: 32px;
	background-color: #F60;
	color: #FFF;
}

@media (max-width: 999px) {
	.folio-col-1 {
		display: block;
		float: none;
		padding-right: 0px;
		width: 100%;
	}
	.folio-col-2 {
		display: block;
		float: none;
		padding-left: 0px;
		width: 100%;
	}
	.tx-col-1-2 {
		width: 50%;
		display: block;
		float: left;
	}
	.tx-col-1-3 {
		width: 50%;
	}
	.tx-col-1-4 {
		width: 50%;
	}	
	.tx-posts.tx-posts-col-2.tx-posts-layout-masonry .post {
	}
	
	.tx-posts.tx-posts-col-3.tx-posts-layout-masonry .post {
		width: 50%;
	}
	.tx-posts.tx-posts-col-4.tx-posts-layout-masonry .post {
		width: 33.3%;
	}
	
	.tx-post-col-1 {
		float: none;
		width: 100%;
	}
	.tx-post-col-2 {
		float: none;
		width: 100%;
	}
	.tx-post-col-3 {
		float: none;
		width: 100%;
	}
	.tx-post-col-4 {
		float: none;
		width: 100%;
	}
	
	.tx-row .tx-column {
		width: 100%;
		padding-left: 0px;
		padding-right: 0px;
		padding-bottom: 32px;
	}
	
	.tx-slider .owl-wrapper .tx-slide-content .tx-slide-content-inner {
		text-align: center;
	}
	
	.owl-item .tx-slide-details p {
		max-width: 100%;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		max-height: 48px;	
	}
	
	.owl-item .tx-slide-title {
		font-size: 24px;
		font-weight: 500;
		margin-top: 0px;
		padding-top: 6px;
		padding-bottom: 6px;
	}
	
	.tx-slider .tx-slide-button a {
		padding-top: 6px;
		padding-bottom: 6px;
	}

	
}


@media (max-width: 999px) {
}

@media (min-width: 768px) {

}

@media (max-width: 767px) {
	.tx-team.tx-2-column-team .tx-team-item {
		width: 100%;
	}
	.tx-team.tx-3-column-team .tx-team-item {
		width: 100%
	}
	.tx-team.tx-4-column-team .tx-team-item {
		width: 100%;
	}
}



/* Mobile devices */
@media (max-width: 359px) {
	.tx-col-1-2 {
		width: 100%;
	}
	.tx-col-1-3 {
		width: 100%;
	}
	.tx-col-1-4 {
		width: 100%;
	}	
}

.tx-vslider{
	position: relative;
	display: block;
	overflow: hidden;
}

.tx-imagebg {
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	height: 100%;
	width: 100%;
	z-index: 2;
}

.tx-video-background {
	position: absolute;
	top: 0; 
	right: 0; 
	bottom: 0; 
	left: 0;
	z-index: 3;
}
.tx-video-foreground,
.tx-video-background iframe,
.tx-video-background .tx-video-player {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.tx-vslider-content {
	position: absolute;
	display: block;
	z-index: 4;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	color: #FFF;
	
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	transform-style: preserve-3d;	
}

.tx-vslider-content.vignette {
	background-image: url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/vig-32.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	background-size: cover;
}

.tx-vslider-content.pixel {
	background-image: url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/homepage-banner-bg3.png);
	background-repeat: repeat;
}

.tx-vslider-content .content-wrap {
	position: relative;
	top: 50%;
	transform: perspective(1px) translateY(-50%);
	max-height: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}

.vslider-img {
	display: block;
	margin: auto;
	max-height: 20%;
	max-width: 400px;
}

.tx-vslider-content .content-wrap h2 {
	font-size: 64px;
	line-height: 64px;
	margin-bottom: 16px;

	max-width: 900px;
	padding-left: 32px;
	padding-right: 32px;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.tx-vslider-content .content-wrap p {
	font-size: 15px;
	
	max-width: 900px;
	padding-left: 32px;
	padding-right: 32px;
	display: block;
	margin-left: auto;
	margin-right: auto;	
}

.vslider_button,
.vslider_button:visited {
	display: inline-block;
	height: 48px;
	line-height: 48px;
	padding: 0px 48px;
	color: #FFF;
	text-transform: uppercase;
	background-color: #333;
	text-decoration: none;
}

.vslider_button:hover {
	text-decoration: none;
	background-color: #333!important;	
}

.tx-youtube-warp {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
}
.tx-youtube-warp iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media (min-aspect-ratio: 16/9) {
	.tx-video-foreground { height: 300%; top: -100%; }
}
@media (max-aspect-ratio: 16/9) {
	.tx-video-foreground { width: 300%; left: -100%; }
}

@media (max-width: 768px) {
	.vslider-img {
		max-height: 20%;
		max-width: 300px;
	}
	
	.tx-vslider-content .content-wrap h2 {
		font-size: 48px;
		line-height: 48px;
		margin-bottom: 16px;
	}
	
	.tx-vslider-content .content-wrap p {
		font-size: 14px;
	}
	
	.vslider_button {
		height: 36px;
		line-height: 36px;
		padding: 0px 36px;
	}
}

@media (max-width: 480px) {
	.vslider-img {
		max-height: 20%;
		max-width: 100px;
	}
	
	.tx-vslider-content .content-wrap h2 {
		font-size: 24px;
		line-height: 24px;
		margin-bottom: 8px;
	}
	
	.tx-vslider-content .content-wrap p {
		font-size: 13px;
	}
	
	.vslider_button {
		height: 32px;
		line-height: 32px;
		padding: 0px 32px;
	}
}

/* Page builder fix */


.entry-content .panel-layout .panel-grid .widget ul {
	list-style-type: square;
	padding: 0px;
	margin: 0px;
	padding-left: 24px;
}
.entry-content .panel-layout .panel-grid .widget ul li {
	border: none;
	color: #373737;
	padding: 0px;
	padding-left: 0px;
	margin-left: 0px;
	line-height: 30px;
}

.tx-site-origin-blog .textwidget .tx-blog-item .tx-border-box {
	background-color: #FFF;
}

.tx-site-origin-feature .sow-features-list .sow-features-feature .textwidget {
	padding-left: 12px;
}
.tx-site-origin-feature .sow-features-list .sow-features-feature .textwidget > h5 {
	margin-top: 0px;
	font-weight: 400;
	margin-bottom: .5em;
}

.tx-site-origin-feature .sow-features-list .sow-features-feature > a {
	padding-top: 6px;
}

.entry-content .panel-grid .so-panel.widget h3.widget-title {
	font-size: 32px;
	border: 0px solid #FFF;
	padding: 0px;
	margin: 0px;
}

.tx-slider.shadow .tx-slider-box .tx-slide-content .tx-slide-details p,
.tx-slider.softvignette .tx-slider-box .tx-slide-content .tx-slide-details p,
.tx-slider.hardvignette .tx-slider-box .tx-slide-content .tx-slide-details p,
.tx-slider.darkoverlay .tx-slider-box .tx-slide-content .tx-slide-details p,
.tx-slider.custombg .tx-slider-box .tx-slide-content .tx-slide-details p,
.tx-slider.pattern .tx-slider-box .tx-slide-content .tx-slide-details p,
.tx-slider.siftvignette .tx-slider-box .tx-slide-content .tx-slide-details p {
	background: transparent;
	padding-left: 0px;
	padding-right: 0px;
	margin-top: 0px;
}

.tx-slider.shadow .tx-slider-box .tx-slide-content .tx-slide-title,
.tx-slider.softvignette .tx-slider-box .tx-slide-content .tx-slide-title,
.tx-slider.hardvignette .tx-slider-box .tx-slide-content .tx-slide-title,
.tx-slider.darkoverlay .tx-slider-box .tx-slide-content .tx-slide-title,
.tx-slider.custombg .tx-slider-box .tx-slide-content .tx-slide-title,
.tx-slider.pattern .tx-slider-box .tx-slide-content .tx-slide-title {
	background: transparent;
	padding-left: 0px;
	padding-right: 0px;
	margin-bottom: 0px;
	line-height: 1em;
}


.tx-slider.softvignette .tx-slider-box .tx-slide-content {
	background-image: url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/vig-24.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.tx-slider.hardvignette .tx-slider-box .tx-slide-content {
	background-image: url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/vig-32.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.tx-slider.darkoverlay .tx-slider-box .tx-slide-content {
	background-color: rgba(0,0,0,0.4);
}

.tx-slider.pattern .tx-slider-box .tx-slide-content {
	background-image: url(//www.a-pc-gmbh.de/wp-content/plugins/templatesnext-toolkit/css/images/homepage-banner-bg3.png);
	background-repeat: repeat;
	background-position: 0px 0px;
}


.tx-slider .owl-pagination .owl-page > span {
	background: transparent;
	border-radius: 0px;
	border-width: 1px;
	border-style: solid;
}
.tx-slider .owl-pagination .owl-page.active > span { 
	background-color: #FFF; 
}

.tx-slider .owl-buttons div { 
	background-color: #F60; 
}


/* TX Skill bar */

.prograss-container {
	display: block;
	padding: 0px 0px 16px 0px;
}

.pbar-outer {
	display: block;
	position: relative;
	width: 100%;
	background-color: #e7e7e7;
	border-radius: 3px;
	color: #FFFFFF;
}

.pbar-inner {
	display: block;
	width: 0%;
	color: #FFFFFF;
	display: block;
	border-radius: 3px;	
	position: absolute;
	left: 0px;
	top: 0px;

	transition-property: all;
	transition-duration: 1.1s;
	transition-timing-function: ease-in-out;
	transition-delay: 0s;
	z-index: 501;
	overflow: hidden;
		
}

.pbar-text {
	display: block;
	position: absolute;
	overflow: visible;
	left: 0px;
	top: 0px;
	padding: 0px 16px;
	z-index: 502;
	color: #ffffff;
	font-weight: 500;
	font-size: 15px;
	text-align: right;
	transition-property: all;
	transition-duration: 1.1s;
	transition-timing-function: ease-in-out;
	transition-delay: 0s;
	width: auto;
}

.bpercent {
	margin-left: 16px;
}


.pbar-inner .candystrip {
  position: absolute;
  top: 0;
  left: 0;
  right: -32px;
  bottom: 0;
  height: 100%;
  width: 100%;
  width: calc(100% + 32px);

  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  -webkit-background-size: 32px 32px;
  -moz-background-size: 32px 32px;
  -o-background-size: 32px 32px;
  background-size: 32px 32px;

  -webkit-animation: pace-stripe-animation 500ms linear infinite;
  -moz-animation: pace-stripe-animation 500ms linear infinite;
  -ms-animation: pace-stripe-animation 500ms linear infinite;
  -o-animation: pace-stripe-animation 500ms linear infinite;
  animation: pace-stripe-animation 500ms linear infinite;
}

@-webkit-keyframes pace-stripe-animation {
  0% { -webkit-transform: none; transform: none; }
  100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@-moz-keyframes pace-stripe-animation {
  0% { -moz-transform: none; transform: none; }
  100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@-o-keyframes pace-stripe-animation {
  0% { -o-transform: none; transform: none; }
  100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@-ms-keyframes pace-stripe-animation {
  0% { -ms-transform: none; transform: none; }
  100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@keyframes pace-stripe-animation {
  0% { transform: none; transform: none; }
  100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
}

.nx-cunter {
	display: block;
	clear: both;
	text-align: center;
}

@media only screen and (max-width: 999px) {
	.nx-cunter {
		text-align: left;
	}
}

@media (max-width: 720px) {
	.tx-slider .tx-slider-box .nx-slider-container {
		padding-top: 32px;
		padding-left: 32px;
		padding-right: 32px;
	}	
	
	.tx-slider,
	.tx-slider .tx-slider-box {
		min-width: 360px;
	}
	.tx-slider .tx-slider-box .tx-slider-img {
		display: block;
		overflow: hidden;
		text-align: center;
		margin: auto;
		position: relative;		
	}
	.tx-slider .tx-slider-box .tx-slider-img a img {
		width: auto;
		min-height: 320px;
		max-width: 883px;
		
		margin: auto;
		display: block;
		
		margin-left: 50%;
		transform: translateX(-50%);	
	}	
}.cmplz-video.cmplz-iframe-styles{background-color:transparent}.cmplz-video.cmplz-hidden{visibility:hidden !important}.cmplz-blocked-content-notice{display:none}.cmplz-placeholder-parent{height:inherit}.cmplz-optin .cmplz-blocked-content-container .cmplz-blocked-content-notice,.cmplz-optin .cmplz-wp-video .cmplz-blocked-content-notice,.cmplz-optout .cmplz-blocked-content-container .cmplz-blocked-content-notice,.cmplz-optout .cmplz-wp-video .cmplz-blocked-content-notice{display:block}.cmplz-blocked-content-container,.cmplz-wp-video{animation-name:cmplz-fadein;animation-duration:600ms;background:#FFF;border:0;border-radius:3px;box-shadow:0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15);display:flex;justify-content:center;align-items:center;background-repeat:no-repeat !important;background-size:cover !important;height:inherit;position:relative}.cmplz-blocked-content-container.gmw-map-cover,.cmplz-wp-video.gmw-map-cover{max-height:100%;position:absolute}.cmplz-blocked-content-container.cmplz-video-placeholder,.cmplz-wp-video.cmplz-video-placeholder{padding-bottom:initial}.cmplz-blocked-content-container iframe,.cmplz-wp-video iframe{visibility:hidden;max-height:100%;border:0 !important}.cmplz-blocked-content-container .cmplz-custom-accept-btn,.cmplz-wp-video .cmplz-custom-accept-btn{white-space:normal;text-transform:initial;cursor:pointer;position:absolute !important;width:100%;top:50%;left:50%;transform:translate(-50%,-50%);max-width:200px;font-size:14px;padding:10px;background-color:rgba(0,0,0,0.5);color:#fff;text-align:center;z-index:98;line-height:23px}.cmplz-blocked-content-container .cmplz-custom-accept-btn:focus,.cmplz-wp-video .cmplz-custom-accept-btn:focus{border:1px dotted #cecece}.cmplz-blocked-content-container .cmplz-blocked-content-notice,.cmplz-wp-video .cmplz-blocked-content-notice{white-space:normal;text-transform:initial;position:absolute !important;width:100%;top:50%;left:50%;transform:translate(-50%,-50%);max-width:300px;font-size:14px;padding:10px;background-color:rgba(0,0,0,0.5);color:#fff;text-align:center;z-index:98;line-height:23px}.cmplz-blocked-content-container .cmplz-blocked-content-notice .cmplz-links,.cmplz-wp-video .cmplz-blocked-content-notice .cmplz-links{display:block;margin-bottom:10px}.cmplz-blocked-content-container .cmplz-blocked-content-notice .cmplz-links a,.cmplz-wp-video .cmplz-blocked-content-notice .cmplz-links a{color:#fff}.cmplz-blocked-content-container .cmplz-blocked-content-notice .cmplz-blocked-content-notice-body,.cmplz-wp-video .cmplz-blocked-content-notice .cmplz-blocked-content-notice-body{display:block}.cmplz-blocked-content-container div div{display:none}.cmplz-wp-video .cmplz-placeholder-element{width:100%;height:inherit}@keyframes cmplz-fadein{from{opacity:0}to{opacity:1}}/* Lokal gehostete Schriften (DSGVO-konform, keine Google-Server). SIL OFL 1.1. */
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:400;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/space-grotesk-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:500;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/space-grotesk-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:600;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/space-grotesk-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:700;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/space-grotesk-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:700;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/ibm-plex-sans-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:600;font-display:swap;src:url(//www.a-pc-gmbh.de/wp-content/themes/a-pc-theme/assets/fonts/ibm-plex-mono-latin-600-normal.woff2) format("woff2")}
/*
Theme Name: A-PC Informationstechnologie
Theme URI: https://a-pc-gmbh.de
Author: A-PC Informationstechnologie GmbH & Co. KG
Description: Eigenständiges Theme für A-PC Informationstechnologie — Audits mit Durchblick. ISMS, BCM, Datenschutz, TISAX, KRITIS. Präzises, instrumentenhaftes Design mit Prüfsiegel als Signature-Element.
Version: 1.4.8
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: a-pc
*/

/* Das eigentliche Styling liegt aus Performance-Gründen in assets/css/main.css
   und wird über functions.php geladen. Diese Datei trägt nur den Theme-Header. */
:root{
  --ink:#0E2629;
  --ink-2:#143438;
  --paper:#ECEEEB;
  --paper-2:#E2E6E1;
  --brass:#C28A40;
  --brass-soft:#D9B077;
  --verify:#2F6B57;
  --slate:#5B6E6F;
  --line:rgba(14,38,41,0.12);
  --line-d:rgba(236,238,235,0.14);
  --maxw:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:"IBM Plex Sans",system-ui,sans-serif;
  font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.mono{font-family:"IBM Plex Mono",monospace;letter-spacing:.02em}
.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--brass)}
h1,h2,h3{font-family:"Space Grotesk",sans-serif;font-weight:600;line-height:1.02;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:2px}

/* NAV */
header{position:sticky;top:0;z-index:50;background:rgba(236,238,235,0.82);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:11px;font-family:"Space Grotesk";font-weight:700;font-size:18px;letter-spacing:-.01em}
.brand .glyph{width:30px;height:30px;flex:none}
.brand-name{font-family:"Space Grotesk";font-weight:700;font-size:17px;line-height:1;letter-spacing:-.01em;white-space:nowrap}
.brand-light{font-weight:500;color:var(--slate)}
.brand img.custom-logo{max-height:44px;width:auto}
.nav-links{display:flex;gap:24px;align-items:center;flex-wrap:nowrap}
.nav-links a{font-size:14.5px;color:var(--slate);font-weight:500;transition:color .2s}
.nav-links a:hover{color:var(--ink)}
.nav-links .nav-cta,.nav-links li.menu-item-cta a{font-family:"IBM Plex Sans";font-size:14px;font-weight:600;background:var(--ink);color:var(--paper);padding:9px 18px;border-radius:2px;transition:background .2s,transform .2s}
.nav-links .nav-cta:hover,.nav-links li.menu-item-cta a:hover{background:var(--ink-2);color:var(--paper);transform:translateY(-1px)}
.nav-links ul{list-style:none;display:flex;gap:30px;align-items:center;margin:0;padding:0}
.burger{display:none;background:none;border:0;cursor:pointer;width:30px;height:30px;color:var(--ink)}

/* HERO */
.hero{position:relative;padding:96px 0 78px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.hero .eyebrow{margin-bottom:22px;display:inline-block}
.hero h1{font-size:clamp(44px,6.4vw,82px);font-weight:700}
.hero h1 .accent{color:var(--brass);font-style:normal}
.hero p.lead{font-size:clamp(17px,2vw,20px);color:var(--slate);margin:26px 0 34px;max-width:30em;line-height:1.5}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{font-family:"IBM Plex Sans";font-size:15px;font-weight:600;padding:13px 26px;border-radius:2px;cursor:pointer;border:1px solid transparent;transition:transform .2s,background .2s,border-color .2s;display:inline-flex;align-items:center;gap:9px}
.btn-primary{background:var(--ink);color:var(--paper)}
.btn-primary:hover{background:var(--ink-2);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink);transform:translateY(-2px)}
.btn svg{width:15px;height:15px}
.ruler{position:absolute;left:0;right:0;bottom:30px;height:24px;opacity:.5;pointer-events:none}
.hero-codes{display:flex;gap:8px;flex-wrap:wrap;margin-top:42px}
.code-chip{font-family:"IBM Plex Mono";font-size:12.5px;color:var(--slate);border:1px solid var(--line);border-radius:2px;padding:5px 11px;background:rgba(255,255,255,.35)}

/* SEAL */
.seal-stage{display:flex;align-items:center;justify-content:center;position:relative}
.seal{width:min(360px,80vw);height:auto;filter:drop-shadow(0 18px 40px rgba(14,38,41,.16))}
.seal .ring{fill:none;stroke:var(--ink);stroke-width:1.4}
.seal .ring-2{stroke:var(--brass);stroke-dasharray:4 5}
.seal .seal-text{font-family:"IBM Plex Mono";font-size:7.6px;letter-spacing:.16em;fill:var(--ink)}
.seal .center-disc{fill:#fff}
.seal .check{fill:none;stroke:var(--verify);stroke-width:5.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:96;stroke-dashoffset:96;animation:draw 1.1s .5s cubic-bezier(.6,0,.2,1) forwards}
.seal .rotor{transform-origin:130px 130px;animation:spin 60s linear infinite}
.seal .conf{font-family:"Space Grotesk";font-weight:700;font-size:13px;fill:var(--ink);letter-spacing:.02em}
.seal .iso{font-family:"IBM Plex Mono";font-size:7px;fill:var(--slate);letter-spacing:.1em}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes spin{to{transform:rotate(360deg)}}

/* SECTION */
section{padding:84px 0}
.sec-head{max-width:640px;margin-bottom:48px}
.sec-head .eyebrow{margin-bottom:16px;display:block}
.sec-head h2{font-size:clamp(30px,4vw,44px)}
.sec-head p{color:var(--slate);margin-top:18px;font-size:18px}

/* SERVICES */
.services{background:var(--ink);color:var(--paper)}
.services .eyebrow{color:var(--brass-soft)}
.services .sec-head p{color:rgba(236,238,235,.66)}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-d);border:1px solid var(--line-d);border-radius:3px;overflow:hidden}
.svc{background:var(--ink);padding:34px 30px 38px;position:relative;transition:background .25s;min-height:236px;display:flex;flex-direction:column}
.svc:hover{background:var(--ink-2)}
.svc .num{font-family:"IBM Plex Mono";font-size:12px;color:var(--brass-soft);letter-spacing:.1em}
.svc h3{font-size:22px;margin:18px 0 10px;color:var(--paper)}
.svc p{font-size:14.5px;color:rgba(236,238,235,.62);line-height:1.55;flex:1}
.svc .std{font-family:"IBM Plex Mono";font-size:11.5px;color:var(--paper);margin-top:18px;padding-top:14px;border-top:1px solid var(--line-d);display:flex;align-items:center;gap:8px}
.svc .std::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--verify);flex:none}

/* PROCESS */
.proc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:8px}
.step{padding:28px 22px 28px 0;border-top:2px solid var(--ink);position:relative}
.step .sn{font-family:"IBM Plex Mono";font-size:13px;color:var(--brass);font-weight:500}
.step h3{font-size:18px;margin:14px 0 8px}
.step p{font-size:13.5px;color:var(--slate);line-height:1.5}
.step::before{content:"";position:absolute;top:-7px;left:0;width:11px;height:11px;background:var(--brass);border-radius:50%}

/* ABOUT */
.about{background:var(--paper-2)}
.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center}
.about h2{font-size:clamp(30px,4vw,46px);margin-bottom:22px}
.about p{color:var(--slate);font-size:17px;margin-bottom:16px}
.about .name{font-family:"Space Grotesk";font-weight:600;color:var(--ink);font-size:18px}
.creds{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:3px;overflow:hidden}
.cred{background:var(--paper);padding:20px 24px;display:flex;align-items:flex-start;gap:16px}
.cred .k{font-family:"IBM Plex Mono";font-size:11px;color:var(--brass);letter-spacing:.12em;text-transform:uppercase;padding-top:3px;min-width:96px;flex:none}
.cred .v{font-size:15px;color:var(--ink);line-height:1.45}
.cred .v strong{font-weight:600}

/* TRUST */
.trust{padding:44px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px}
.trust-row .label{font-family:"IBM Plex Mono";font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.acc{display:flex;gap:30px;flex-wrap:wrap}
.acc span{font-family:"Space Grotesk";font-weight:600;font-size:17px;color:var(--ink);opacity:.82}

/* CONTACT */
.contact{background:var(--ink);color:var(--paper)}
.contact .eyebrow{color:var(--brass-soft)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.contact h2{font-size:clamp(32px,4.4vw,52px);color:var(--paper);max-width:9em}
.contact .lead{color:rgba(236,238,235,.7);margin:22px 0 0;font-size:18px;max-width:30em}
.contact-card{background:var(--ink-2);border:1px solid var(--line-d);border-radius:3px;padding:36px}
.ci{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line-d)}
.ci:last-child{border-bottom:0;padding-bottom:0}
.ci:first-child{padding-top:0}
.ci .ico{width:20px;height:20px;color:var(--brass-soft);flex:none;margin-top:2px}
.ci .k{font-family:"IBM Plex Mono";font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(236,238,235,.5);margin-bottom:4px}
.ci .v{font-size:16px;color:var(--paper)}
.ci a.v:hover{color:var(--brass-soft)}
.contact .btn-primary{background:var(--brass);color:var(--ink);margin-top:30px;width:100%;justify-content:center}
.contact .btn-primary:hover{background:var(--brass-soft)}

/* CONTENT PAGES (Impressum/Datenschutz/Blog) */
.content-section{padding:80px 0;min-height:50vh}
.content-narrow{max-width:760px}
.entry-head{margin-bottom:32px}
.entry-head .eyebrow{display:block;margin-bottom:14px}
.entry-title{font-size:clamp(30px,4vw,46px);margin-bottom:8px}
.entry-content{color:var(--slate);font-size:17px;line-height:1.7}
.entry-content h2{font-size:26px;color:var(--ink);margin:34px 0 14px}
.entry-content h3{font-size:20px;color:var(--ink);margin:26px 0 10px}
.entry-content p{margin-bottom:16px}
.entry-content a{color:var(--brass);text-decoration:underline;text-underline-offset:2px}
.entry-content ul,.entry-content ol{margin:0 0 16px 22px}
.entry-content li{margin-bottom:6px}

/* FOOTER */
footer{background:var(--ink);color:rgba(236,238,235,.5);padding:40px 0;border-top:1px solid var(--line-d)}
.foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:13px}
.foot a{color:rgba(236,238,235,.5)}
.foot a:hover{color:var(--paper)}
.foot .mono{color:rgba(236,238,235,.4)}

/* REVEAL */
/* REVEAL — Progressive Enhancement: Inhalt ist ohne JS immer sichtbar.
   Die Animation greift nur, wenn JS die Klasse .apc-anim gesetzt hat. */
.reveal{opacity:1;transform:none}
.apc-anim .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1)}
.apc-anim .reveal.in{opacity:1;transform:none}

/* RESPONSIVE */
@media(max-width:920px){
  .hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:40px}
  .seal-stage{order:-1}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .proc-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .step{padding-right:18px}
  /* Navigation klappt schon hier ins Burger-Menue, damit die Kopfleiste nicht ueberlaeuft */
  .nav-links{display:none}
  .burger{display:flex;align-items:center;justify-content:center}
  .nav-links.open{display:flex;position:absolute;top:68px;left:0;right:0;flex-direction:column;background:var(--paper);padding:20px 24px;gap:18px;border-bottom:1px solid var(--line);z-index:70}
  .nav-links.open ul{flex-direction:column;align-items:flex-start;gap:18px}
  .lang-switch{margin-left:0;padding-left:0;border-left:0}
}
@media(max-width:640px){
  body{font-size:16px}
  .wrap{padding:0 20px}
  .hero{padding:60px 0 50px}
  section{padding:60px 0}
  .svc-grid,.proc-grid{grid-template-columns:1fr}
  .trust-row{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
  .seal .check{stroke-dashoffset:0}
}

/* ============================================================
 *  LEISTUNGS-UNTERSEITEN (v1.1)
 * ============================================================ */
.lhero{padding:64px 0 52px;border-bottom:1px solid var(--line)}
.lhero .back{font-family:"IBM Plex Mono";font-size:13px;color:var(--slate);display:inline-block;margin-bottom:22px;transition:color .2s}
.lhero .back:hover{color:var(--brass)}
.lhero .eyebrow{display:inline-block;margin-bottom:16px}
.lhero h1{font-size:clamp(34px,5vw,58px);font-weight:700;max-width:14em}
.lhero .lead{font-size:clamp(17px,2vw,20px);color:var(--slate);margin:22px 0 30px;max-width:40em;line-height:1.5}

.lcontent{padding:64px 0}
.lcontent .content-narrow > .reveal:first-child p{font-size:19px;color:var(--ink);line-height:1.65}
.lblock{margin-top:40px}
.lblock h2{font-size:clamp(24px,3vw,30px);margin-bottom:14px}
.lblock p{color:var(--slate);font-size:17px;line-height:1.7;margin-bottom:14px}
.lblock p strong{color:var(--ink);font-weight:600}

.lcheck{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}
.lcheck li{position:relative;padding-left:30px;font-size:15.5px;color:var(--ink);line-height:1.45}
.lcheck li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;background:var(--verify);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/13px no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/13px no-repeat}

/* related */
.related-sec{padding:56px 0;background:var(--paper-2);border-top:1px solid var(--line)}
.related-sec .eyebrow{display:block;margin-bottom:22px}
.related{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.rel-card{display:flex;flex-direction:column;gap:8px;padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:3px;transition:transform .2s,border-color .2s}
.rel-card:hover{transform:translateY(-3px);border-color:var(--ink)}
.rel-code{font-family:"IBM Plex Mono";font-size:11px;color:var(--brass);letter-spacing:.04em}
.rel-label{font-family:"Space Grotesk";font-weight:600;font-size:15px;color:var(--ink);line-height:1.2}

/* cta band */
.lcta{background:var(--ink);color:var(--paper);padding:72px 0}
.lcta .eyebrow{color:var(--brass-soft);display:block;margin-bottom:16px}
.lcta h2{font-size:clamp(28px,4vw,44px);color:var(--paper);max-width:13em}
.lcta p{color:rgba(236,238,235,.7);font-size:18px;margin:18px 0 30px;max-width:34em}
.lcta .btn-primary{background:var(--brass);color:var(--ink)}
.lcta .btn-primary:hover{background:var(--brass-soft)}
.lcta .btn-ghost{color:var(--paper);border-color:var(--line-d)}
.lcta .btn-ghost:hover{border-color:var(--paper)}

@media(max-width:920px){
  .related{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:640px){
  .lcheck{grid-template-columns:1fr}
  .related{grid-template-columns:1fr 1fr}
}

/* ============================================================
 *  v1.2 — klickbare Leistungskacheln, lange Inhaltsseiten,
 *  flexibles "Weitere Leistungen"-Raster
 * ============================================================ */

/* Leistungskacheln auf der Startseite sind jetzt Links */
a.svc{text-decoration:none;color:inherit}
a.svc:focus-visible{outline:2px solid var(--brass-soft);outline-offset:-2px}
.svc::after{content:"\2192";position:absolute;top:22px;right:24px;font-family:"IBM Plex Mono",monospace;font-size:15px;color:var(--brass-soft);opacity:0;transform:translateX(-5px);transition:opacity .2s,transform .2s}
.svc:hover::after{opacity:1;transform:none}

/* "Weitere Leistungen" passt sich jetzt an 6 Karten an */
.related{grid-template-columns:repeat(auto-fill,minmax(155px,1fr))}

/* Lange Inhaltsseiten (Datenschutz, Impressum): vollständige Überschriften-Stufen */
.entry-content h4{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:18px;color:var(--ink);margin:28px 0 10px;letter-spacing:-.01em}
.entry-content h5,.entry-content h6{font-family:"IBM Plex Sans",sans-serif;font-weight:600;font-size:15.5px;color:var(--ink);margin:22px 0 8px}
.entry-content ul,.entry-content ol{margin:0 0 16px 22px}
.entry-content li{margin-bottom:8px}
.entry-content strong{color:var(--ink);font-weight:600}
.entry-content a{word-break:break-word}

/* ============================================================
 *  v1.3 — Sprachumschalter + externe Kachel
 * ============================================================ */
.langswitch{display:flex;align-items:center;gap:6px;font-family:"IBM Plex Mono",monospace;font-size:13px;margin-left:6px}
.langswitch a{color:var(--slate);padding:3px 5px;border-radius:2px;transition:color .2s}
.langswitch a:hover{color:var(--ink)}
.langswitch a.active{color:var(--ink);font-weight:600;background:rgba(14,38,41,.07)}
.langswitch span{color:var(--line);opacity:.6}

/* externe Kachel (z. B. Opitz Dechant) – dezent abgesetzt */
.svc-ext{position:relative}
.svc-ext .std{color:var(--brass-soft)}
.svc-ext .std::before{background:var(--brass-soft)}
.svc-ext::after{content:"\2197";color:var(--brass-soft)}

@media(max-width:640px){
  .langswitch{margin-left:0;margin-right:8px}
}

/* ============================================================
 *  v1.3 — Sprachumschalter & externe Kachel
 * ============================================================ */
.lang-switch{display:inline-flex;align-items:center;gap:9px;margin-left:10px;padding-left:16px;border-left:1px solid var(--line)}
.lang-switch .flag{display:inline-flex;align-items:center;opacity:.42;border-radius:3px;transition:opacity .2s,transform .2s}
.lang-switch .flag:hover{opacity:1;transform:translateY(-1px)}
.lang-switch .flag.is-active{opacity:1}
.lang-switch .flag-svg{display:block;border-radius:3px;box-shadow:0 0 0 1px rgba(14,38,41,.15)}
.lang-switch .flag.is-active .flag-svg{box-shadow:0 0 0 1px rgba(14,38,41,.2),0 0 0 3px var(--brass)}

/* Externe Kachel (Opitz Dechant): dezent abgesetzt durch Messing-Akzentlinie */
.svc-ext{background:linear-gradient(180deg, var(--ink) 0%, #16383d 100%)}
.svc-ext::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--brass)}
.svc-ext h3{color:var(--brass-soft)}
.svc-ext:hover{background:linear-gradient(180deg, var(--ink-2) 0%, #1a4147 100%)}

@media(max-width:640px){
  .lang-switch{margin-left:0;padding-left:0;border-left:0}
}

/* Hinweis maschinelle Übersetzung (EN-Rechtstexte) */
.mt-notice{background:rgba(194,138,64,0.10);border:1px solid var(--brass);border-left:4px solid var(--brass);border-radius:3px;padding:16px 20px;margin:0 0 28px;font-size:15px;line-height:1.55;color:var(--ink)}
.mt-notice strong{font-weight:600}
.mt-notice a{color:var(--brass);font-weight:600;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}

/* Voller Firmenname: auf kleinen Schirmen etwas kleiner, aber immer vollständig */
@media(max-width:600px){ .brand-name{font-size:14.5px} }
@media(max-width:360px){ .brand-name{font-size:13px} }

/* Beitrag: Zurück-Link */
.post-back{margin-top:40px;padding-top:22px;border-top:1px solid var(--line)}
.post-back a{color:var(--brass);font-weight:600;text-decoration:none}
.post-back a:hover{text-decoration:underline}

/* Blog-Übersicht (home.php) */
.blog-intro{font-size:18px;color:var(--slate);max-width:62ch;line-height:1.6;margin:0 0 30px}
.blog-intro p{margin:0 0 12px}
.blog-group{font-family:"IBM Plex Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:var(--brass);margin:40px 0 18px;font-weight:600}
.post-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.post-card{display:block;padding:24px 26px;border:1px solid var(--line);border-radius:6px;background:#fff;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.post-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(14,38,41,.10);border-color:var(--brass)}
.pc-date{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--slate)}
.pc-title{font-family:"Space Grotesk",sans-serif;font-size:20px;line-height:1.25;color:var(--ink);margin:8px 0 10px}
.pc-excerpt{color:var(--slate);font-size:15px;line-height:1.55;margin:0 0 14px}
.pc-more{color:var(--brass);font-weight:600;font-size:14px}
@media(max-width:640px){.post-list{grid-template-columns:1fr}}