/*!
 * pagepiling.js 1.5.4
 *
 * https://github.com/alvarotrigo/pagePiling.js
 * @license MIT licensed
 *
 * Copyright (C) 2016 alvarotrigo.com - A project by Alvaro Trigo
 */
html, body {
    overflow:hidden;
    margin:0;
    padding:0;

    /*Avoid flicker on slides transitions for mobile phones #336 */
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}
.pp-section {
    height:100%;
    position:absolute;
    width:100%;
}
.pp-easing {
    -webkit-transition: all 1000ms cubic-bezier(0.550, 0.085, 0.000, 0.990);
    -moz-transition: all 1000ms cubic-bezier(0.550, 0.085, 0.000, 0.990);
    -o-transition: all 1000ms cubic-bezier(0.550, 0.085, 0.000, 0.990);
    transition: all 1000ms cubic-bezier(0.550, 0.085, 0.000, 0.990);
    /* custom */
    -webkit-transition-timing-function: cubic-bezier(0.550, 0.085, 0.000, 0.990);
    -moz-transition-timing-function: cubic-bezier(0.550, 0.085, 0.000, 0.990);
    -o-transition-timing-function: cubic-bezier(0.550, 0.085, 0.000, 0.990);
    transition-timing-function: cubic-bezier(0.550, 0.085, 0.000, 0.990);
    /* custom */
}

#pp-nav {
    position: fixed;
    z-index: 1000;
    margin-top: -32px;
    top: 50%;
    opacity: 1;
}
#pp-nav.right {
    right: 17px;
}
#pp-nav.left {
    left: 17px;
}

.pp-tableCell {
    width: 100%;
    height: 100%;
}
.ContentPane > .pp-tableCell {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    min-height: 100vh;
    -webkit-align-content: center;
    align-content: center; 
}
.ContentPane > .pp-tableCell::before,
.ContentPane > .pp-tableCell::after{
    content: '';
    width: 100%;
    height: 0;
    overflow: hidden;
    visibility: hidden;
    display: block;
}


.pp-scrollable{
    overflow-y: scroll;
    height: 100%;
}

#dng-wrapper > section.content {
    position:fixed;
    
    width: 100%;
    top: 0;
    bottom: 0;
    z-index: 10;
    margin: 0;
    overflow: hidden;
}
.pagepuling-section.pp-section{
    position: absolute;
    top: 0;
	background-color:#FFF;
    margin: 0;
    overflow: hidden;
}
.pagepuling-section.vc_row[data-vc-full-width].vc_hidden{
    opacity: 1;
}
#dng-wrapper .content .banner{
    position: relative;
    z-index: -1;
 }
 @media only screen and (min-width: 768px) {
    .pp-section .footer_box{
        position: fixed!important;
        bottom: 0!important;
        top: auto!important;
        width: 100%;
    }
}
#pp-nav li[data-tooltip="Footer"]{
    display: none;
}

@media only screen and (max-width: 767px) {
    .mobile_not_fullpage,
    .mobile_not_fullpage body{
        overflow:visible;
    }
    .mobile_not_fullpage #dng-wrapper > section.content{
        position: relative;
        height: auto;
    }
    .mobile_not_fullpage .footer_box{
        position: relative;
    }
}


/*Animation*/

#dnn_content .pagepuling-section.pp-section{
    top: 0!important;
    opacity: 0;
    visibility: hidden;
 }


 .pp-animate-fold{
    -webkit-perspective: 1200px;
    -moz-perspective: 1200px;
    perspective: 1200px;
 }
 .pp-animate-fold .pagepuling-section.pp-section{
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
#dnn_content .pagepuling-section.pp-section.active{
    top: 0!important; 
 }
 #dnn_content .pp-section.direction-up,
 #dnn_content .pp-section.direction-down,
 #dnn_content .pp-section.anime-in{
     z-index: 100!important;
     opacity: 1;
     visibility: visible;
 }

 #dnn_content .pp-section.direction-up.anime-in{
     z-index: 101!important;
}

.pp-animate-slide .pp-section.direction-up.anime-in{
	-webkit-animation: pp-slide-up-in .6s ease both;
    animation: pp-slide-up-in .6s ease both;
}
.pp-animate-slide  .pp-section.direction-down.anime-in{
	-webkit-animation: pp-slide-down-in .6s ease both;
    animation: pp-slide-down-in .6s ease both;
}


.pp-animate-fade .pp-section.direction-up.anime-in{
    -webkit-animation: pp-slide-up-in .6s ease both;
    animation: pp-slide-up-in .6s ease both;
}
.pp-animate-fade .pp-section.direction-up.anime-out{
    -webkit-animation: pp-fade-out .6s ease both;
    animation: pp-fade-out .6s ease both;
}
.pp-animate-fade .pp-section.direction-down.anime-in{
	-webkit-animation: pp-slide-down-in .6s ease both;
    animation: pp-slide-down-in .6s ease both;
}
.pp-animate-fade .pp-section.direction-down.anime-out{
    -webkit-animation: pp-fade-out .6s ease both;
    animation: pp-fade-out .6s ease both; 
}

.pp-animate-scale .pp-section.direction-up.anime-in{
    -webkit-animation: pp-slide-up-in .6s ease both;
    animation: pp-slide-up-in .6s ease both;
}
.pp-animate-scale .pp-section.direction-up.anime-out{
    -webkit-animation: pp-scale-out .6s ease both;
    animation: pp-scale-out .6s ease both;
  
}
.pp-animate-scale .pp-section.direction-down.anime-in{
	-webkit-animation: pp-slide-down-in .6s ease both;
    animation: pp-slide-down-in .6s ease both;
}
.pp-animate-scale .pp-section.direction-down.anime-out{
    -webkit-animation: pp-scale-out .6s ease both;
    animation: pp-scale-out .6s ease both; 
}

.pp-animate-fold .pp-section.direction-up.anime-in{
    -webkit-animation: pp-slide-up-in .6s ease both;
    animation: pp-slide-up-in .6s ease both;
}
.pp-animate-fold .pp-section.direction-up.anime-out{
    -webkit-animation:pp-fold-down-out .6s ease both;
    animation: pp-fold-down-out .6s ease both;
    -webkit-transform-origin: 50% 0;
	transform-origin: 50% 0;
}
.pp-animate-fold .pp-section.direction-down.anime-in{
	-webkit-animation: pp-slide-down-in .6s ease both;
    animation: pp-slide-down-in .6s ease both;
}
.pp-animate-fold .pp-section.direction-down.anime-out{
    -webkit-animation: pp-fold-up-out .6s ease both;
    animation: pp-fold-up-out .6s ease both;
    -webkit-transform-origin:50% 100%;
	transform-origin: 50% 100%;
}
.pp-animate-scaleup .pp-section.direction-up.anime-in{
    -webkit-animation: pp-scaledown-in .6s ease both;
    animation: pp-scaledown-in .6s ease both;
}
.pp-animate-scaleup .pp-section.direction-up.anime-out{
    -webkit-animation: pp-scaledown-out .6s ease both;
    animation: pp-scaledown-out .6s ease both;
	-webkit-animation-delay: .1s;
	animation-delay: .1s;
}

.pp-animate-scaleup .pp-section.direction-down.anime-in{
    -webkit-animation: pp-scaleup-in .6s ease both;
    animation: pp-scaleup-in .6s ease both;
	-webkit-animation-delay: .2s;
	animation-delay: .2s;
}
.pp-animate-scaleup .pp-section.direction-down.anime-out{
    -webkit-animation: pp-scaleup-out .6s ease both;
    animation: pp-scaleup-out .6s ease both;
}



@-webkit-keyframes pp-slide-up-in {
	from { -webkit-transform: translateY(-100%);opacity: 1; }
	to { -webkit-transform: translateY(0%); }
}
@keyframes pp-slide-up-in {
	from { transform: translateY(-100%);opacity: 1; }
	to { transform: translateY(0%); }
}
@-webkit-keyframes pp-slide-down-in {
	from { -webkit-transform: translateY(100%);opacity: 1; }
	to { -webkit-transform: translateY(0%); }
}
@keyframes pp-slide-down-in {
	from { transform: translateY(100%);opacity: 1; }
	to { transform: translateY(0%); }
}

@-webkit-keyframes pp-slide-up-out {
	from { -webkit-transform: translateY(0%);opacity: 1; }
	to { -webkit-transform: translateY(-100%); }
}
@keyframes pp-slide-up-out {
	from { transform: translateY(0%);opacity: 1; }
	to { transform: translateY(-100%); }
}
@-webkit-keyframes pp-slide-down-out {
	from { -webkit-transform: translateY(0%);opacity: 1; }
	to { -webkit-transform: translateY(100%); }
}
@keyframes pp-slide-down-out {
	from { transform: translateY(0%);opacity: 1; }
	to { transform: translateY(100%); }
}

@-webkit-keyframes pp-fade-out {	
	from { opacity: 1; }
	to { opacity: .5; }
}
@keyframes pp-fade-out {
	from { opacity: 1; }
	to { opacity: .5; }
}

@-webkit-keyframes pp-scale-out {
	from { -webkit-transform:scale(1);opacity: 1; }
	to { -webkit-transform: scale(.9);opacity: .5; }
}
@keyframes pp-scale-out {
	from { transform:scale(1);opacity: 1; }
	to { transform:scale(.9);opacity: .5; }
}

@-webkit-keyframes pp-fold-up-out {
	from { -webkit-transform: translateY(0%) rotateX(0deg);opacity: 1; }
	to { -webkit-transform: translateY(-100%) rotateX(90deg);opacity:0; }
}
@keyframes pp-fold-up-out {
	from { transform: translateY(0%) rotateX(0deg);opacity: 1; }
	to { transform: translateY(-100%) rotateX(90deg);opacity:0; }
}

@-webkit-keyframes pp-fold-down-out {
	from { -webkit-transform: translateY(0%) rotateX(0deg);opacity: 1; }
	to { -webkit-transform: translateY(100%) rotateX(-90deg);opacity:0; }
}
@keyframes pp-fold-down-out {
	from { transform: translateY(0%) rotateX(0deg);opacity: 1; }
	to { transform: translateY(100%) rotateX(-90deg);opacity:0; }
}

@-webkit-keyframes pp-scaleup-in {
	from { -webkit-transform: scale(0.85);opacity: 0; }
	to { -webkit-transform:scale(1);opacity:1; }
}
@keyframes pp-scaleup-in {
	from { -webkit-transform: scale(0.85);opacity: 0 }
	to { -webkit-transform: scale(1);opacity:1; }
}

@-webkit-keyframes pp-scaleup-out {
	from { -webkit-transform: scale(1);opacity: 1  }
	to { -webkit-transform: scale(1.15);opacity: 0  }
}
@keyframes pp-scaleup-out {
	from { -webkit-transform: scale(1);opacity: 1 }
	to { -webkit-transform: scale(1.15);opacity: 0  }
}

@-webkit-keyframes pp-scaledown-in {
	from { -webkit-transform: scale(1.15);opacity:0; }
	to { -webkit-transform: scale(1);opacity:1; }
}
@keyframes pp-scaledown-in {
	from { -webkit-transform:scale(1.15);opacity:0; }
	to { -webkit-transform: scale(1);opacity:1; }
}

@-webkit-keyframes pp-scaledown-out {
	from { -webkit-transform: scale(1);opacity: 1; }
	to { -webkit-transform: scale(0.85);opacity: 0;}
}
@keyframes pp-scaledown-out {
	from { -webkit-transform: scale(1);opacity: 1; }
	to { -webkit-transform: scale(0.85);opacity: 0; }
}

/*header*/
.header_bg.header-wrap{
    top: 0;
    position: absolute;
}

/*dnn_content*/
#dnn_content{
    min-height: 100vh!important;
    padding: 0!important;
}

/*footer*/
footer.footer{
    position: absolute;
    bottom: 0;
    width: 100%;
}
.dnnEditState footer.footer{
    position: relative;
}

@media only screen and (max-width: 767px) {
    footer.footer{
        position: relative;
    }
}

.pagepuling-section.last-page.translate {
    -webkit-transition: -webkit-transform ease-in .3s!important;
    transition:transform ease-in .3s!important;
    z-index: 102!important;
    -webkit-animation: none!important;
    animation: none!important;
}
.pagepuling-section.last-page.translate-delay:not(.translate) {
    -webkit-transform: translate3d(0)!important;
    transform: translate3d(0)!important;   
    -webkit-animation: none!important;
    animation: none!important;   
    -webkit-transition: -webkit-transform ease-in .3s!important;
    transition:transform ease-in .3s!important;
    z-index: 102!important;
}
#dnn_content .pagepuling-section.no-animate,
#dnn_content .pagepuling-section.no-animate.direction-up.anime-in{
    -webkit-animation: none!important;
    animation: none!important;
    z-index: 99!important; 
}
.pagepuling-section.last-page.opacity-100,
.pagepuling-section.last-page.translate-delay:not(.translate).opacity-100{
    visibility: visible;
    opacity: 1;
    z-index: 99!important;
}
.pagepuling-section.last-page.opacity-100 + .pagepuling-section{
     z-index: 98!important;
}

.pagepuling-section.vc_row.vc_row-o-full-height{
    height: 100%!important;
    min-height: auto!important;
}
 

body{
    position: relative!important;
}