/* Reset */

    html, body, div, span, applet, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    a, abbr, acronym, address, big, cite, code,
    del, dfn, em, img, ins, kbd, q, s, samp,
    small, strike, strong, sub, sup, tt, var,
    b, u, i, center,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td,
    article, aside, canvas, details, embed,
    figure, figcaption, footer, header, hgroup,
    menu, nav, output, ruby, section, summary,
    time, mark, audio, video,
    input, button {
    	margin: 0;
    	padding: 0;
    	border: 0;
    	font-size: 100%;
    	font: inherit;
    	vertical-align: baseline;
    }
    
    img {
        margin-bottom: 0;
        display: block;
    }

    html,
    body {
        height: 100%;
    }

    .clearfix {
        clear: both;
    }

/* Body */

    body {
        font-size: 16px;
        line-height: 26px;
        color: #555;
        font-family: 'Karla', helvetica, sans-serif;
        -webkit-font-smoothing: antialiased;
        -moz-font-smoothing: antialiased;
        font-smoothing: antialiased;
    }

/* ======== GENUS BEGIN ======== */

    /* Content */

        .gns-content {
            max-width: 1000px;
            margin-left: auto;
            margin-right: auto;
            text-align: left;
            padding: 60px;
        }

        @media only screen and (max-width: 650px) {

            .gns-content {
                padding: 30px;
            }

        }

            .gns-content.big {
                max-width: 1200px;
            }

            .gns-content.small {
                max-width: 800px;
            }

            .gns-content.tiny {
                max-width: 600px;
            }

    /* Full Screen */

        .gns-fullScreen {
            width: 100%;
            height: 100%;
            display: table;
        }

            .gns-fullScreen.bb {
                /* BB stands for border bottom */
                border-bottom: 1px solid #dedede;
            }

        .gns-fullScreenInner {
            width: 100%;
            height: 100%;
            display: table-cell;
            vertical-align: middle;
        }

    /* Text */

        /* Headings */

            h1,
            h2,
            h3,
            h4,
            h5,
            h6 {
                color: #000;
                display: block;
            }

            h1 {
                font-size: 64px;
                line-height: 74px;
            }

            h2 {
                font-size: 54px;
                line-height: 64px;
            }

            h3 {
                font-size: 44px;
                line-height: 54px;
            }

            h4 {
                font-size: 34px;
                line-height: 44px;
            }

            h5 {
                font-size: 24px;
                line-height: 34px;
            }

            h6 {
                font-size: 14px;
                line-height: 24px;
                letter-spacing: 2px;
                text-transform: uppercase;
            }

        /* Paragraphs */

            p {
                margin-bottom: 30px;
                display: block;
            }

            .gns-pFix {
                margin-top: -15px;
            }

        /* Links */

            a {
                color: #3097ca;
                text-decoration: none;
                cursor: pointer;
            }

            a:hover {
                text-decoration: underline;
            }

        /* Highlights */

            highlight {
                background: #F6F0D4;
            }

        /* Pre */

            pre {
                border: 1px solid #dedede;
                background: #f0f0f0;
                display: block;
                padding: 25px 30px;
            }

            @media only screen and (max-width: 650px) {

                pre {
                    padding: 15px 20px;
                }

            }

            code {
                font-family: 'Menlo';
                font-size: 14px;
                line-height: 24px;
                background: #f0f0f0;
            }

        /* Blockquote */

            blockquote {
                border-left: 2px solid #dedede;
                padding-left: 15px;
                font-style: italic;
            }

    /* Images */

        .gns-fullWidthImage {
            width: 100%;
            height: auto;
            display: block;
            margin: 0;
        }

    /* Buttons */

        .gns-button {
            outline: none;
            border: 0;
            -webkit-appearance: none;
            display: inline-block;
            background: #3a99d8;
            text-decoration: none;
            color: #fff;
            text-decoration: none;
            padding: 10px 20px;
            -webkit-border-radius: 2px;
            -moz-border-radius: 2px;
            border-radius: 2px;
            cursor: pointer;
        }

            .gns-button:hover {
                background: #2f81b7;
                text-decoration: none;
            }

        .gns-button.wide {
            display: block;
            text-align: center;
        }

        .gns-button.light { background: #ddd; color: #555; }
        .gns-button.light:hover { background: #bbb; }

        .gns-button.dark { background: #333; }
        .gns-button.dark:hover { background: #000; }

        .gns-button.positive { background: #39ca74; }
        .gns-button.positive:hover { background: #30ad63; }

        .gns-button.negative { background: #e54d42; }
        .gns-button.negative:hover { background: #be3a31; }
        
    /* Form Elements */
    
        /* Fields */
        
            .gns-field {
                /* Reset */
                -webkit-appearance: none;
                width: 100%;
                -webkit-box-sizing: border-box;
                -moz-box-sizing: border-box;
                box-sizing: border-box;
                outline: none;
                -webkit-font-smoothing: antialiased;
                -moz-font-smoothing: antialiased;
                font-smoothing: antialiased;
                border: 0;
                
                /* Styles */
                margin-bottom: 16px;
                -webkit-border-radius: 2px;
                -moz-border-radius: 2px;
                border-radius: 2px;
                background: #f0f0f0;
                font-size: 16px;
                line-height: 26px;
                color: #555;
                font-family: 'Karla', helvetica, sans-serif;
                padding: 12px 18px;
            }
            
            .gns-field:focus {
                outline: 1px solid #3097ca;
            }
            
        /* Checkboxes */
        
            .gns-checkbox {
                -webkit-appearance: none;
                outline: none;
                width: 16px;
                height: 16px;
                background-image: url(img/genus-checkbox.png);
                background-size: 16px 32px;
                background-position: top;
                margin-bottom: -3px;
                margin-right: 8px;
            }
            
            .gns-checkbox:checked {
                background-position: bottom;
            }
            
        /* Radio Buttons */
        
            .gns-radio {
                -webkit-appearance: none;
                outline: none;
                width: 16px;
                height: 16px;
                background-image: url(img/genus-radio.png);
                background-size: 16px 32px;
                background-position: top;
                margin-bottom: -3px;
                margin-right: 8px;
            }
            
            .gns-radio:checked {
            background-position: bottom;
            }
            
    /* Tables */
    
        .gns-table {
            border: 0;
            border-collapse: collapse;
            width: 100%;
            border: 1px solid #dedede;
        }
        
        .gns-table tr {
            border-bottom: 1px solid #dedede;
        }
        
            .gns-table tr:last-child {
                border-bottom: 0;
            }
            
        .gns-table tr td,
        .gns-table tr th {
            padding: 10px 15px;
            vertical-align: middle;
            border-right: 1px solid #dedede;
        }
        
            .gns-table tr td:last-child,
            .gns-table tr th:last-child {
                broder-right: 0;
            }
            
        .gns-table tr th {
            color: #333;
            font-weight: bold;
        }
        
    /* Pagination */
    
        .gns-paginate {
            text-align: center;
            display: block;
        }
        
        .gns-paginate a {
            display: inline-block;
        }
        
        .gns-paginate ul {
            display: inline-block;
            list-style: none;
            margin: 0 15px;
        }
        
        .gns-paginate li {
            display: inline-block;
        }
        
        .gns-paginate ul a {
            margin: 0 8px;
        }
        
        .gns-paginate ul a.active {
            color: #888;
            text-decoration: none;
            cursor: text;
        }
        
            .gns-paginate ul a.active.gns-button {
                color: #fff;
                background: #dedede;
            }
        
        .gns-paginate .gns-prev {
            margin-right: 15px;
        }
        
        .gns-paginate .gns-next {
            margin-left: 15px;
        }
        
        /* Full Width */
        
            .gns-paginate.fullWidth .gns-prev {
                float: left;
            }
            
            .gns-paginate.fullWidth .gns-next {
                float: right;
            }

    /* Gaps & Separators */

        .gns-gapB {
            margin-bottom: 60px;
        }

        .gns-gapS {
            margin-bottom: 30px;
        }

        hr {
            border: 0;
            border-top: 1px solid #dedede;
            margin-top: 60px;
            padding-bottom: 60px;
        }

        @media only screen and (max-width: 650px) {

            .gns-gapB {
                margin-bottom: 30px;
            }

            .gns-gapS {
                margin-bottom: 15px;
            }

            hr {
                margin-top: 30px;
                padding-bottom: 30px;
            }

        }

    /* Columns */

        .gns-cols {
        	overflow: hidden;
        }

        .gns-colsInner {
        	margin-left: -2%;
        	margin-right: -2%;
        }

        .gns-testBlock {
        	background: #000;
        	display: block;
        	height: 4px;
            -webkit-border-radius: 2px;
            -moz-border-radius: 2px;
            border-radius: 2px;
            margin-bottom: 4px;
        }

        .gns-col {
        	float: left;
        	display: block;
        	margin-left: 2%;
        	margin-right: 2%;
        }

        /* Columns */

        	.span_1_of_1 {
        		width: 100%;
        		margin: 0;
        	}

        	.span_1_of_2 {
        		width: 46%;
        	}

        		.span_2_of_2 {
        			width: 100%;
        			margin: 0;
        		}

        	.span_1_of_3 {
        		width: 29.333%;
        	}

        		.span_2_of_3 {
        			width: 62.666%;
        		}

        		.span_3_of_3 {
        			width: 100%;
        			margin: 0;
        		}

        	.span_1_of_4 {
        		width: 21%;
        	}

        		.span_2_of_4 {
        			width: 46%;
        		}

        		.span_3_of_4 {
        			width: 71%;
        		}

        		.span_4_of_4 {
        			width: 100%;
        			margin: 0;
        		}

        	.span_1_of_5 {
        		width: 16%;
        	}

        		.span_2_of_5 {
        			width: 36%;
        		}

        		.span_3_of_5 {
        			width: 56%;
        		}

        		.span_4_of_5 {
        			width: 76%;
        		}

        		.span_5_of_5 {
        			width: 100%;
        			margin: 0;
        		}

        	.span_1_of_6 {
        		width: 12.666%;
        	}

        		.span_2_of_6 {
        			width: 29.332%;
        		}

        		.span_3_of_6 {
        			width: 46%;
        		}

        		.span_4_of_6 {
        			width: 62.666%;
        		}

        		.span_5_of_6 {
        			width: 79.332%;
        		}

        		.span_6_of_6 {
        			width: 100%;
        			margin: 0;
        		}

        	.span_1_of_7 {
        		width: 10.286%;
        	}

        		.span_2_of_7 {
        			width: 24.572%;
        		}

        		.span_3_of_7 {
        			width: 38.858%;
        		}

        		.span_4_of_7 {
        			width: 53.114%;
        		}

        		.span_5_of_7 {
        			width: 67.43%;
        		}

        		.span_6_of_7 {
        			width: 81.716%;
        		}

        		.span_7_of_7 {
        			width: 100%;
        			margin: 0;
        		}

        	.span_1_of_8 {
        		width: 8.5%;
        	}

        		.span_2_of_8 {
        			width: 21%;
        		}

        		.span_3_of_8 {
        			width: 33.5%;
        		}

        		.span_4_of_8 {
        			width: 46%;
        		}

        		.span_5_of_8 {
        			width: 58.5%;
        		}

        		.span_6_of_8 {
        			width: 71%;
        		}

        		.span_7_of_8 {
        			width: 83.5%;
        		}

        		.span_8_of_8 {
        			width: 100%;
        			margin: 0;
        		}

            @media only screen and (max-width: 650px) {

        		.gns-colsInner {
        			margin-left: 0;
        			margin-right: 0;
        		}

        		.gns-col {
        			width: 100%;
        			margin-top: 0;
        			margin-left: 0;
        			margin-right: 0;
        		}

        		.gns-cols.spaceOnMobile {
        			margin-top: -25px;
        		}

        		.gns-cols.spaceOnMobile .col {
        			margin-top: 25px;
        		}

        	}

    /* Lists */

        ul,
        ol {
            margin-left: 18px;
        }
        
    /* Spin animation (to be used for loading spinners) */

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

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

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

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

        @keyframes gnsSpin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        .gns-spin {
            -webkit-animation-name: gnsSpin;
            -moz-animation-name: gnsSpin;
            -ms-animation-name: gnsSpin;
            -o-animation-name: gnsSpin;
            animation-name: gnsSpin;
            -webkit-animation-timing-function: linear;
            -moz-animation-timing-function: linear;
            -ms-animation-timing-function: linear;
            -o-animation-timing-function: linear;
            animation-timing-function: linear;
            -webkit-animation-duration: 1s;
            -moz-animation-duration: 1s;
            -ms-animation-duration: 1s;
            -o-animation-duration: 1s;
            animation-duration: 1s;
            -webkit-animation-fill-mode: both;
            -moz-animation-fill-mode: both;
            -ms-animation-fill-mode: both;
            -o-animation-fill-mode: both;
            animation-fill-mode: both;
            -webkit-animation-iteration-count: infinite;
            -moz-animation-iteration-count: infinite;
            -ms-animation-iteration-count: infinite;
            -o-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
        }
        
    /* Lightbox */
    
        .gns-lightboxContainer {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 1;
        }

        .gns-lightboxOverlay {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 1;
            background: rgba(0,0,0,0.8);
        }

        .gns-lightbox {
            z-index: 2;
            background: #fff;
            position: absolute;
            top: 50%;
            left: 50%;
            /* this is centered with jquery */
        }

    /* Slider */
    
        .gns-slider {
            width: 100%;
            overflow: hidden;
            position: relative;
        }

        .gns-slider ul {
            margin: 0;
            padding: 0;
            overflow: hidden;
            list-style: none;
            width: 9999px;
            -webkit-transition: 0.5s;
            -moz-transition: 0.5s;
            transition: 0.5s;
        }

        .gns-slider li {
            margin: 0;
            padding: 0;
            float: left;
            display: block;
            width: 100%;
            height: auto;
        }

        .gns-sliderNext,
        .gns-sliderPrev {
            position: absolute;
            top: 50%;
            margin-top: -15px;
            width: 30px;
            height: 30px;
            background-color: #fff;
            background-image: url(../img/genus-sliderArrows.png);
            background-size: 60px 30px;
            cursor: pointer;
        }

        .gns-sliderNext {
            right: 0;
            background-position: right center;
        }

        .gns-sliderPrev {
            left: 0;
            background-position: left center;
        }
        
    /* Masonry */
    
        .gns-masonry {
            width: 100%;
        }
        
        .gns-masonry ul {
            list-style: none;
            margin-left: -20px;
            margin-right: -20px;
            margin-bottom: -40px;
        }
        
        .gns-masonry li {
            width: 33.333%;
            float: left;
            margin-bottom: 40px;
        }
        
        .gns-masonryItem {
            padding: 0px 20px;
        }

        @media only screen and (max-width: 800px) {
            
            .gns-masonry li {
                width: 50%;
            }
            
        }

        @media only screen and (max-width: 800px) {
            
            .gns-masonry li {
                width: 50%;
            }
            
        }

        @media only screen and (max-width: 600px) {
            
            .gns-masonry li {
                width: 100%;
            }
            
        }
        
    /* FancyBox */
    
        /*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
        
        .fancybox-wrap,
        .fancybox-skin,
        .fancybox-outer,
        .fancybox-inner,
        .fancybox-image,
        .fancybox-wrap iframe,
        .fancybox-wrap object,
        .fancybox-nav,
        .fancybox-nav span,
        .fancybox-tmp
        {
        	padding: 0;
        	margin: 0;
        	border: 0;
        	outline: none;
        	vertical-align: top;
        }

        .fancybox-wrap {
        	position: absolute;
        	top: 0;
        	left: 0;
        	-webkit-transform: translate3d(0, 0, 0);
        	transform: translate3d(0, 0, 0);
        	z-index: 8020;
        }

        .fancybox-skin {
        	position: relative;
        	background: #fff;
        	text-shadow: none;
        }

        .fancybox-opened {
        	z-index: 8030;
        }

        .fancybox-opened .fancybox-skin {
        	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
        	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
        	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
        }

        .fancybox-outer, .fancybox-inner {
        	position: relative;
        }

        .fancybox-inner {
        	overflow: hidden;
        }

        .fancybox-type-iframe .fancybox-inner {
        	-webkit-overflow-scrolling: touch;
        }

        .fancybox-error {
        	margin: 0;
        	padding: 15px;
        	white-space: nowrap;
        }

        .fancybox-image, .fancybox-iframe {
        	display: block;
        	width: 100%;
        	height: 100%;
        }

        .fancybox-image {
        	max-width: 100%;
        	max-height: 100%;
        }

        #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
        	background-image: url(fancybox_sprite.png);
        }

        #fancybox-loading {
        	position: fixed;
        	top: 50%;
        	left: 50%;
        	margin-top: -22px;
        	margin-left: -22px;
        	background-position: 0 -108px;
        	opacity: 0.8;
        	cursor: pointer;
        	z-index: 8060;
        }

        #fancybox-loading div {
        	width: 44px;
        	height: 44px;
        	background: url(fancybox_loading.gif) center center no-repeat;
        }

        .fancybox-close {
        	position: absolute;
        	top: -18px;
        	right: -18px;
        	width: 36px;
        	height: 36px;
        	cursor: pointer;
        	z-index: 8040;
        }

        .fancybox-nav {
        	position: absolute;
        	top: 0;
        	width: 40%;
        	height: 100%;
        	cursor: pointer;
        	text-decoration: none;
        	background: transparent url(blank.gif); /* helps IE */
        	-webkit-tap-highlight-color: rgba(0,0,0,0);
        	z-index: 8040;
        }

        .fancybox-prev {
        	left: 0;
        }

        .fancybox-next {
        	right: 0;
        }

        .fancybox-nav span {
        	position: absolute;
        	top: 50%;
        	width: 36px;
        	height: 34px;
        	margin-top: -18px;
        	cursor: pointer;
        	z-index: 8040;
        	visibility: hidden;
        }

        .fancybox-prev span {
        	left: 10px;
        	background-position: 0 -36px;
        }

        .fancybox-next span {
        	right: 10px;
        	background-position: 0 -72px;
        }

        .fancybox-nav:hover span {
        	visibility: visible;
        }

        .fancybox-tmp {
        	position: absolute;
        	top: -99999px;
        	left: -99999px;
        	max-width: 99999px;
        	max-height: 99999px;
        	overflow: visible !important;
        }

        /* Overlay helper */

        .fancybox-lock {
            overflow: visible !important;
            width: auto;
        }

        .fancybox-lock body {
            overflow: hidden !important;
        }

        .fancybox-lock-test {
            overflow-y: hidden !important;
        }

        .fancybox-overlay {
        	position: absolute;
        	top: 0;
        	left: 0;
        	overflow: hidden;
        	display: none;
        	z-index: 8010;
            background-color: rgb(0,0,0);
            background-color: rgba(0,0,0,0.85);
        }

        .fancybox-overlay-fixed {
        	position: fixed;
        	bottom: 0;
        	right: 0;
        }

        .fancybox-lock .fancybox-overlay {
        	overflow: auto;
        	overflow-y: scroll;
        }

        /* Title helper */

        .fancybox-title {
        	visibility: hidden;
        	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
        	position: relative;
        	text-shadow: none;
        	z-index: 8050;
        }

        .fancybox-opened .fancybox-title {
        	visibility: visible;
        }

        .fancybox-title-float-wrap {
        	position: absolute;
        	bottom: 0;
        	right: 50%;
        	margin-bottom: -35px;
        	z-index: 8050;
        	text-align: center;
        }

        .fancybox-title-float-wrap .child {
        	display: inline-block;
        	margin-right: -100%;
        	padding: 2px 20px;
        	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
        	background: rgba(0, 0, 0, 0.8);
        	-webkit-border-radius: 15px;
        	   -moz-border-radius: 15px;
        	        border-radius: 15px;
        	text-shadow: 0 1px 2px #222;
        	color: #FFF;
        	font-weight: bold;
        	line-height: 24px;
        	white-space: nowrap;
        }

        .fancybox-title-outside-wrap {
        	position: relative;
        	margin-top: 10px;
        	color: #fff;
        }

        .fancybox-title-inside-wrap {
        	padding-top: 10px;
        }

        .fancybox-title-over-wrap {
        	position: absolute;
        	bottom: 0;
        	left: 0;
        	color: #fff;
        	padding: 10px;
        	background: #000;
        	background: rgba(0, 0, 0, .8);
        }

        /*Retina graphics!*/
        @media only screen and (-webkit-min-device-pixel-ratio: 1.5),
        	   only screen and (min--moz-device-pixel-ratio: 1.5),
        	   only screen and (min-device-pixel-ratio: 1.5){

        	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
        		background-image: url(fancybox_sprite@2x.png);
        		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
        	}

        	#fancybox-loading div {
        		background-image: url(fancybox_loading@2x.gif);
        		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
        	}
        }
        
    /* Flexslider */
    
        /*
         * jQuery FlexSlider v2.6.3
         * http://www.woothemes.com/flexslider/
         *
         * Copyright 2012 WooThemes
         * Free to use under the GPLv2 and later license.
         * http://www.gnu.org/licenses/gpl-2.0.html
         *
         * Contributing author: Tyler Smith (@mbmufffin)
         *
         */
        /* ====================================================================================================================
         * FONT-FACE
         * ====================================================================================================================*/
        @font-face {
          font-family: 'flexslider-icon';
          src: url('fonts/flexslider-icon.eot');
          src: url('fonts/flexslider-icon.eot?#iefix') format('embedded-opentype'), url('fonts/flexslider-icon.woff') format('woff'), url('fonts/flexslider-icon.ttf') format('truetype'), url('fonts/flexslider-icon.svg#flexslider-icon') format('svg');
          font-weight: normal;
          font-style: normal;
        }
        /* ====================================================================================================================
         * RESETS
         * ====================================================================================================================*/
        .flex-container a:hover,
        .flex-slider a:hover {
          outline: none;
        }
        .slides,
        .slides > li,
        .flex-control-nav,
        .flex-direction-nav {
          margin: 0;
          padding: 0;
          list-style: none;
        }
        .flex-pauseplay span {
          text-transform: capitalize;
        }
        /* ====================================================================================================================
         * BASE STYLES
         * ====================================================================================================================*/
        .flexslider {
          margin: 0;
          padding: 0;
        }
        .flexslider .slides > li {
          display: none;
          -webkit-backface-visibility: hidden;
        }
        .flexslider .slides img {
          width: 100%;
          display: block;
        }
        .flexslider .slides:after {
          content: "\0020";
          display: block;
          clear: both;
          visibility: hidden;
          line-height: 0;
          height: 0;
        }
        html[xmlns] .flexslider .slides {
          display: block;
        }
        * html .flexslider .slides {
          height: 1%;
        }
        .no-js .flexslider .slides > li:first-child {
          display: block;
        }
        /* ====================================================================================================================
         * DEFAULT THEME
         * ====================================================================================================================*/
        .flexslider {
          margin: 0 0 60px;
          background: #fff;
          border: 4px solid #fff;
          position: relative;
          zoom: 1;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          -webkit-box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
          -moz-box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
          -o-box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
          box-shadow: '' 0 1px 4px rgba(0, 0, 0, 0.2);
        }
        .flexslider .slides {
          zoom: 1;
        }
        .flexslider .slides img {
          height: auto;
          -moz-user-select: none;
        }
        .flex-viewport {
          max-height: 2000px;
          -webkit-transition: all 1s ease;
          -moz-transition: all 1s ease;
          -ms-transition: all 1s ease;
          -o-transition: all 1s ease;
          transition: all 1s ease;
        }
        .loading .flex-viewport {
          max-height: 300px;
        }
        .carousel li {
          margin-right: 5px;
        }
        .flex-direction-nav {
          *height: 0;
        }
        .flex-direction-nav a {
          text-decoration: none;
          display: block;
          width: 40px;
          height: 40px;
          margin: -20px 0 0;
          position: absolute;
          top: 50%;
          z-index: 10;
          overflow: hidden;
          opacity: 0;
          cursor: pointer;
          color: rgba(0, 0, 0, 0.8);
          text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
          -webkit-transition: all 0.3s ease-in-out;
          -moz-transition: all 0.3s ease-in-out;
          -ms-transition: all 0.3s ease-in-out;
          -o-transition: all 0.3s ease-in-out;
          transition: all 0.3s ease-in-out;
        }
        .flex-direction-nav a:before {
          font-family: "flexslider-icon";
          font-size: 40px;
          display: inline-block;
          content: '\f001';
          color: rgba(0, 0, 0, 0.8);
          text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
        }
        .flex-direction-nav a.flex-next:before {
          content: '\f002';
        }
        .flex-direction-nav .flex-prev {
          left: -50px;
        }
        .flex-direction-nav .flex-next {
          right: -50px;
          text-align: right;
        }
        .flexslider:hover .flex-direction-nav .flex-prev {
          opacity: 0.7;
          left: 10px;
        }
        .flexslider:hover .flex-direction-nav .flex-prev:hover {
          opacity: 1;
        }
        .flexslider:hover .flex-direction-nav .flex-next {
          opacity: 0.7;
          right: 10px;
        }
        .flexslider:hover .flex-direction-nav .flex-next:hover {
          opacity: 1;
        }
        .flex-direction-nav .flex-disabled {
          opacity: 0!important;
          filter: alpha(opacity=0);
          cursor: default;
          z-index: -1;
        }
        .flex-pauseplay a {
          display: block;
          width: 20px;
          height: 20px;
          position: absolute;
          bottom: 5px;
          left: 10px;
          opacity: 0.8;
          z-index: 10;
          overflow: hidden;
          cursor: pointer;
          color: #000;
        }
        .flex-pauseplay a:before {
          font-family: "flexslider-icon";
          font-size: 20px;
          display: inline-block;
          content: '\f004';
        }
        .flex-pauseplay a:hover {
          opacity: 1;
        }
        .flex-pauseplay a.flex-play:before {
          content: '\f003';
        }
        .flex-control-nav {
          width: 100%;
          position: absolute;
          bottom: -40px;
          text-align: center;
        }
        .flex-control-nav li {
          margin: 0 6px;
          display: inline-block;
          zoom: 1;
          *display: inline;
        }
        .flex-control-paging li a {
          width: 11px;
          height: 11px;
          display: block;
          background: #666;
          background: rgba(0, 0, 0, 0.5);
          cursor: pointer;
          text-indent: -9999px;
          -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          -moz-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          -webkit-border-radius: 20px;
          -moz-border-radius: 20px;
          border-radius: 20px;
        }
        .flex-control-paging li a:hover {
          background: #333;
          background: rgba(0, 0, 0, 0.7);
        }
        .flex-control-paging li a.flex-active {
          background: #000;
          background: rgba(0, 0, 0, 0.9);
          cursor: default;
        }
        .flex-control-thumbs {
          margin: 5px 0 0;
          position: static;
          overflow: hidden;
        }
        .flex-control-thumbs li {
          width: 25%;
          float: left;
          margin: 0;
        }
        .flex-control-thumbs img {
          width: 100%;
          height: auto;
          display: block;
          opacity: .7;
          cursor: pointer;
          -moz-user-select: none;
          -webkit-transition: all 1s ease;
          -moz-transition: all 1s ease;
          -ms-transition: all 1s ease;
          -o-transition: all 1s ease;
          transition: all 1s ease;
        }
        .flex-control-thumbs img:hover {
          opacity: 1;
        }
        .flex-control-thumbs .flex-active {
          opacity: 1;
          cursor: default;
        }
        /* ====================================================================================================================
         * RESPONSIVE
         * ====================================================================================================================*/
        @media screen and (max-width: 860px) {
          .flex-direction-nav .flex-prev {
            opacity: 1;
            left: 10px;
          }
          .flex-direction-nav .flex-next {
            opacity: 1;
            right: 10px;
          }
        }


/* ======== GENUS END ======== */

/* ======== ANIMATE.CSS BY DANIEL EDEN BEGIN ======== */

    @charset "UTF-8";

    /*!
     * 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;
    }

/* ======== ANIMATE.CSS BY DANIEL EDEN END ======== */