/* Minification failed. Returning unminified contents.
(733,13): run-time error CSS1035: Expected colon, found '.'
(1519,21): run-time error CSS1035: Expected colon, found '.'
 */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/*! HTML5 Boilerplate v6.1.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

.slider {
    width: 80% !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    height: auto !important;
}

.wrapper {
    background-color: transparent !important;
}

.slide {
    width: 70vw !important;
    background-color: transparent !important;
    height: auto !important;
}
/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

a {
    cursor: pointer;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
@font-face {
    font-family: 'Adobe-Arabic-Regular';
    src: url('../fonts/Adobe-Arabic-Regular.otf');
    src: local('Adobe-Arabic-Regular'), url('../fonts/Adobe-Arabic-Regular.otf') format('opentype');
}


@font-face {
    font-family: 'Rajdhani-SemiBold';
    src: url('../fonts/Rajdhani-SemiBold.ttf');
    src: local('Rajdhani-SemiBold'), url('../fonts/Rajdhani-SemiBold.ttf') format('truetype');
}

@font-face {
    font-family: 'Rajdhani-Bold';
    src: url('../fonts/Rajdhani-Bold.ttf');
    src: local('Rajdhani-Bold'), url('../fonts/Rajdhani-Bold.ttf') format('truetype');
}
/* use this class to attach this font to any element i.e. <p class="fontsforweb_fontid_1091">Text with this font applied</p> */


html,
body {
    height: 100%;
    overflow: hidden;
    font-family: Rajdhani-SemiBold;
}


/* landing page style */

.landing {
    background-image: url('../img/bg/bg.jpg');
    background-size: cover;
    width: 100%;
    height: 100%;
    overflow-y: auto;
}

    .landing .container {
    }


    .landing .bag {
        position: absolute;
        left: 2vw;
        top: 60%;
        right: 0px;
        width: 15vw;
        display: block;
        margin: 0px auto;
    }

    .landing .wheel, .landing .clouds {
        position: absolute;
        left: 0px;
        right: 0px;
        top: 6vh;
    }


    .landing a {
        color: white;
        text-decoration: underline;
        margin: 0px 3px;
    }

    .landing p {
        color: white;
        margin: 4px;
    }

    .landing p#message {
        color: red;
        margin:15px 4px;
    }


.clouds1-img {
    position: absolute;
    right: 10vw;
    width: 15vw;
}

.clouds2-img {
    position: absolute;
    left: 10vw;
    width: 15vw;
}

.parashutte-img {
    position: absolute;
    bottom: -4vw;
    width: 10vw;
    left: 10vw;
    right: 0px;
}

.landing .wheel .wheel-img {
    width: 40vw;
    display: block;
    margin: 0px auto;
}

.landing .wheel .shadow {
    position: absolute;
    bottom: -1.1vw;
    width: 80vw;
    left: 0px;
    right: 0px;
    display: block;
    margin: 0px auto;
}


.landing .title {
    position: absolute;
    left: 2vw;
    top: 125%;
    right: 0px;
    width: 27vw;
    display: block;
    margin: 0px auto;
}

.checkin {
    width: 25px;
    cursor: pointer;
    margin: 5px;
}

.landing .code:focus {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.landing .loading {
    background-color: transparent;
    border: 2px solid white;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    height: 2vh;
    top: 85vh;
    left: 0px;
    right: 0px;
    width: 30vw;
    position: absolute;
    display: block;
    margin: 0px auto;
}

    .landing .loading::before {
        content: "";
        background: #ffb938;
        position: absolute;
        height: 100%;
        width: 0%;
        top: 0px;
        border-radius: 20px;
        -webkit-border-radius: 20px;
        -moz-border-radius: 20px;
        -ms-border-radius: 20px;
        -o-border-radius: 20px;
    }


    .landing .loading::after {
        position: absolute;
        background-image: url('../img/logo.png');
        background-size: contain;
        background-repeat: no-repeat;
        display: inline-block;
        width: 100%;
        height: 410%;
        content: "";
        top: -160%;
        left: 0%;
    }

.loginContainer {
    font-family: Rajdhani-SemiBold;
    width: 300px;
    margin: auto;
}
.loginContainer .resetPasswordDiv{
    margin-top:76px;
}

    .loginContainer .logo {
        padding-top:40px;
        text-align: center;
    }

    .loginContainer .homeTitle {
        color: #fff;
        font-size: 30px;
        text-align: center;
        margin: 40px auto 50px;
    }


    .loginContainer .inputBox {
        width: 100%;
        height: 52px;
        box-sizing: border-box;
        background-color: #fff;
        border-radius: 5px;
        padding: 2px 10px 5px;
        margin-bottom: 20px;
    }

            .loginContainer .inputBox label {
                color: #ffb938;
                font-size: 10px;
                text-transform:uppercase;
                width:100%;
            }

            .loginContainer .inputBox .code-input {
                font-size: 20px;
                color: #30384f;
                font-family: Rajdhani-Bold;
                width:100%;
                border:0;
                background-color:transparent;
            }
        .loginContainer .checkin {
            width:100%;
            background-color: #ffb938;
            color: #30384f;
            font-size: 20px;
            display: block;
            font-family: Rajdhani-Bold;
            height: 52px;
            border-radius: 5px;
            text-transform: uppercase;
            text-decoration: none;
            padding: 11px 10px 0;
            margin: 0;
            box-sizing:border-box;
        }

            .loginContainer .checkin img {
                float: right;
                padding-top: 3px;
            }
            .loginContainer .links{width:100%;margin-top:30px;display:table;}
            .loginContainer .links .link {float:left;font-size:10px;color:#fff;}
            .loginContainer .links .link:last-child {float:right;}
            .loginContainer .links .link a{font-size:10px;color:#ffb938;text-transform:uppercase;}


.footer{width:100%;position:absolute;bottom:0;z-index:99999;}
.footer .footerContainer{width:60%;min-width:700px;height:60px;background-image:url('../img/bg/footerbg.png');background-size:100% 100%;text-align:center;margin: auto;}
.footer .footerContainer .footerContent{width:fit-content;margin:auto;display:table;}
.footer .footerContainer .footerContent .liFooter{float:left;color:#496172;padding-top:20px;font-family:Rajdhani-Bold;}
.footer .footerContainer .footerContent .liFooter a{color:#496172;}
.footer .footerContainer .footerContent .liFooter:first-child{font-family:Rajdhani-SemiBold;}
.footer .footerContainer .footerContent .sep{float:left;margin:0 10px;padding-top:20px;}


/* end of landing page style */


.reset-title {
    margin-top: 0px;
    text-align: center;
    color: white;
    .footer .footerContainer position: absolute;
    left: 0px;
    right: 0px;
    margin: 0px auto;
    top: 15vh;
}

.resetDiv {
    top: 40vh !important;
}

/* Header Style */

header {
    position: absolute;
    top: 0;
    width: 100%;
    min-height: 100px;
    z-index: 100;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: -webkit-space-between;
    overflow: hidden;
}
header .gameHeader{width:40%;margin:auto;}

.airport {
    transform: scaleX(-1);
}

.home header {
    min-height: 150px;
}

.header-left {
    float: left;
    position: absolute;
    top: 15px;
    left: 5vw;
    /*color: #153350;*/
    color: white;
    font-size: 22px;
    font-weight: bold;
}

    .header-left p {
        float: right;
        margin: 3px;
    }

    .header-left img {
        width: 4vw;
    }

.header-right {
    float: right;
    position: absolute;
    top: 15px;
    right: 5vw;
    /*color: #153350;*/
    color: white;
    text-align: center;
    font-size: 22px;
    font-weight: bold;
}

    .header-right img {
        width: 4vw;
    }

    .header-right p {
        white-space: nowrap;
        margin: 3px;
    }

/* End Header */

/* home page style */

/* SIDE NAV */

.sidenav .header-right p {
    color: #31aae0;
}

.sidenav {
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 10000;
    top: 0;
    right: 0;
    background-color: #fff;
    overflow-x: hidden;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    padding-top: 60px;
}

    .sidenav a {
        padding: 8px 8px 25px 32px;
        text-decoration: none;
        font-size: 25px;
        color: #31aae0;
        display: block;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

        .sidenav a:hover {
            color: #c1c1c1;
        }

    .sidenav .closebtn {
        position: absolute;
        top: 0;
        right: 25px;
        font-size: 36px;
        margin-left: 50px;
    }

.sidenav-menu {
    margin-top: 70px;
}

.sidenav .menu-item img {
    width: 2vw;
    margin-right: 10px;
}

@media screen and (max-height: 450px) {
    .sidenav {
        padding-top: 15px;
    }

        .sidenav a {
            font-size: 18px;
        }
}
/* END SIDENAV */

.home {
    height: 100%;
}

    .home .container {
        background: url('../img/home/bkg.png') left top no-repeat,-webkit-gradient(linear, left top, left bottom, from(#2ba4dc), to(#48beed)) left top no-repeat;
        background: url('../img/home/bkg.png') left top no-repeat,-webkit-linear-gradient(#2ba4dc, #48beed) left top no-repeat;
        background: url('../img/home/bkg.png') left top no-repeat,-o-linear-gradient(#2ba4dc, #48beed) left top no-repeat;
        background: url('../img/home/bkg.png') left top no-repeat,linear-gradient(#2ba4dc, #48beed) left top no-repeat;
        background-size: contain;
        width: 100%;
        height: 100%;
    }



    .home .sections {
        position: absolute;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        text-align: center;
        left: 0px;
        right: 0px;
        margin: 0px auto;
        width: 63vw;
        z-index: 1000;
    }

a {
    text-decoration: none;
}

.home .sections > div {
    text-align: center;
    position: relative;
}

.home .sightseeing {
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2;
}

.home .sections .strain1 {
    height: 20%;
}

.home .sections .strain2 {
    height: 20%;
}

.home .strain-left {
    margin-left: 4.5vw;
}

.home .strain-right {
    margin-right: 4.5vw;
}



.home .content {
    position: relative;
    margin: 0px auto;
    display: block;
    background-color: white;
    border: 3px solid #cccccc;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
    padding: 10px 15px;
    color: #56c3ee;
    font-size: 3.5vw;
    /* font-weight :600; */
    z-index: 50;
}

.home .holder-shadow {
    position: relative;
    width: 50%;
    height: 50px;
    margin: 0px auto;
    left: 0px;
    right: 0;
    top: -35px;
}



#backdrop-dark, .backdrop-dark {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: black;
    opacity: 0;
    display: none;
    z-index: 10000;
    -webkit-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s;
}

.home .content {
    width: 10vw;
}

.home .content-large {
    width: 16vw;
}

.home .sections p {
    margin: 0px;
    margin-top: 2px;
}

.home .safari .icon {
    max-width: 100%;
}

.safari p {
}

#puzzle-example {

position:fixed;
z-index:10000;
margin:0px auto;
top:30vh;
left:0;
right:0;
display:none;
width:100px;

}


#preview img {
    margin: 15px auto;
    display: block;
    /* width: 30vw; */
    max-height: 60vh;
    max-width: 75vh;
}

.play-btn {
    background-color: #ffb938;
    border: 2px solid white;
    border-radius: 5px;
    color: white;
    width: 20vw;
    font-family:Rajdhani-Bold;
    text-align: center;
    margin: 15px auto;
    height: 60px;
    font-size: 2.5em;
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
    text-transform:uppercase;
}

.home .guess .icon {
    max-width: 50%;
}

.home .guess p {
}

.home .sightseeing .icon {
    max-width: 31%;
}

.home .sightseeing p {
}

.home .plane-img {
    position: absolute;
    right: 4vw;
    bottom: 0px;
    height: 100%;
    z-index: 0;
}

.home .chairs-div {
    position: absolute;
    left: 5vw;
    bottom: 0px;
    /* height:30%; */
    max-height: 350px;
    max-width: 25%;
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
    -webkit-box-align: bottom;
    -ms-flex-align: bottom;
    align-items: bottom;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.chairs-img {
    width: 100%;
    -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 1; /* OLD - Firefox 19- */
  
    -ms-flex: 1; /* IE 10 */
    flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.updown-img {
    width: 5vw;
    margin: 1.5vw;
    margin-bottom: 25px;
}

.home .cart-img {
    position: absolute;
    right: 8vw;
    bottom: 0px;
    height: 30%;
    max-height: 350px;
    max-width: 30%;
}

/* end of home page style */

/* levels page style */

.levels-header-right,
.levels-header-left {
    /*top: 3vh;
    position: absolute;*/
    text-align: right;
    color: white;
    padding: 10px;
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.levels-header-left {
    /*left: 3vh;*/
    float: left;
}

.levels-header-right {
    /*right: 3vh;*/
    float: right;
}

    .levels-header-right img,
    .levels-header-left img {
        width: 30px;
        cursor: pointer;
    }

    .levels-header-right img {
        margin-left: 5px;
    }

    .levels-header-right a,
    .levels-header-left a {
        color: white;
        text-decoration: none;
    }

    .levels-header-right > a,
    .levels-header-left > a {
        display: block;
        width: 74px;
        font-size: 18px;
        text-align: center;
    }

.level-number {
    float: right;
    margin: 5px;
    font-size: 30px;
}

.level-name {
    text-align: left;
    margin: 5px;
    margin-left: 0px;
    font-size: 22px;
    line-height: 1;
}

.levels {
    height: 100%;
    border-top:5px solid #ffb938;
}

    .levels .level-name {
        height: 100%;
    }

    .levels .container {
        background-size: cover !important;
        width: 100%;
        height: 100%;
        overflow-y:auto;
    }

    .levels.stitchit .container {
        background-image: url('../img/bg/bgSTT.jpg');
        background-repeat: no-repeat;
        background-size: contain;
        border-top: 5px solid #ffb938;
    }

    .levels.memorizeit .container {
        background-image: url('../img/bg/bgMemT.jpg');
        background-repeat: no-repeat;
        background-size: contain;
        border-top: 5px solid #ffb938;
    }

    .levels.solveit .container {
        background-image: url('../img/bg/bgSoT.jpg');
        background-repeat: no-repeat;
        background-size: contain;
        border-top: 5px solid #ffb938;
        overflow-y:auto;
    }

    .levels.trivia .container {
        background-image: url('../img/bg/bgtriT.jpg');
        background-repeat: no-repeat;
        background-size: contain;
        border-top: 5px solid #ffb938;
        overflow-y: auto;
    }

    .levels.triviaDetails .container {
        background-image: url('../img/bg/bgtriT.jpg');
        background-repeat: no-repeat;
        background-size: contain;
        border-top: 5px solid #ffb938;
        overflow-y: auto;
        display: table;
        width: 100%;
        vertical-align: middle;
    }

    .levels.guess.guess-inside .container {
        background-image: url('../img/bg/bgSoT.jpg');
        background-repeat: no-repeat;
        background-size: contain;
    }

    .levels.end {
        background-size: cover;
    }

    .levels.end-solveit {
        /*background: url('../img/bg/bgSo.jpg');*/
        background-color:#000;
        border-top: 10px solid #ffb938;
    }

    .levels.end-memorizeit {
        /*background: url('../img/bg/bgMem.jpg');*/
        background-color: #000;
        border-top: 10px solid #ffb938;
    }

    .levels.end-stitchit {
        /*background: url('../img/bg/bgST.jpg');*/
        background-color: #000;
        background-size: cover;
        background-position: center;
        border-top: 10px solid #ffb938;
    }

    .levels.end-trivia {
        /*background: url('../img/bg/bgSo.jpg');*/
        background-color: #000;
        border-top: 10px solid #ffb938;
    }



.safari-footer, .sightseeing-footer, .guess-footer {
    display: none;
}

.levels.safari .safari-footer {
    display: block;
}

.levels.sightseeing .sightseeing-footer {
    display: block;
}

.levels.guess .guess-footer {
    display: block;
}

.levels .arrow-right, .levels .arrow-left {
    position: absolute;
    top: 45%;
}

    .levels .arrow-right img, .levels .arrow-left img {
        width: 5vw;
    }


.levels .arrow-right {
    right: 5vw;
}

.levels .arrow-left {
    left: 5vw;
}


.levels-grid {
    /*width: 70%;
    margin: 0px auto;
    position: absolute;
    top: 18vh;
    left: 0;
    right: 0;*/
    display: grid;
    display: -ms-grid;
    grid-template-columns: repeat(6, 1fr);
    -ms-grid-columns: 6fr 1fr;
    -webkit-column-gap: 1.2vw;
    column-gap: 1.2vw;
    row-gap: 1.2vw;
    z-index: 100;
}

    .levels-grid .level-block {
        width: 10vw;
        height: 10vw;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -ms-border-radius: 5px;
        -o-border-radius: 5px;
        cursor: pointer;
        background-size: cover;
    }

    .levels .levelNum{font-size:55px;color:#ffb938;font-family:Rajdhani-Bold;position:absolute;bottom:0px;right:12px;line-height:1;}

.levels.safari .levels-grid .level-block {
    background-color: #30384f;
}

.levels.sightseeing .levels-grid .level-block {
    background-color: #30384f;
}

.levels.guess .levels-grid .level-block.locked {
    background-color:#30384f;
}

.level-block.locked {
    background-color: #30384f;
    background-image: url(../img/btns/key.png);
    background-position: center;
    background-size: 25%;
    background-repeat: no-repeat;
}


.levels .bottom-left,
.levels .bottom-right {
    position: absolute;
    bottom: 0px;
    /* height:30%; */
    max-height: 350px;
    max-width: 25%;
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    -webkit-box-align: bottom;
    -ms-flex-align: bottom;
    align-items: bottom;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.levels .bottom-center {
    position: absolute;
    bottom: 0px;
    /* height:30%; */
    max-width: 70%;
    right: 5vw;
    bottom: vh;
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    -webkit-box-align: bottom;
    -ms-flex-align: bottom;
    align-items: bottom;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

    .levels .bottom-center img {
        width: 100%;
    }

.levels .bottom-left {
    left: 5vw;
}

.levels .bottom-right {
    right: 5vw;
}


    .levels .bottom-left img,
    .levels .bottom-right img {
        width: 100%;
        -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- */ /* Chrome */
        -ms-flex: 1; /* IE 10 */
        flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
    }

/* end of levels page style */

/*  guess page style */

/*.header-guess .levels-header-left img {
    width: 2vw;
}*/

/*.header-guess {
    height: 12vh;
}*/

.levels.end
.inside-content {
    margin-top: 0
}

.inside-content {
    margin-top: 130px;
    z-index:99999;
    position: relative;
    width: 100%;
}

.inside-content-safari {
    /*top: 10vh;*/
}
.header-stitchit {
}
.backdrop {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: white;
    opacity: 0.3;
    z-index: 0;
}

.guess-pics {
    max-width: 40vh;
    margin: 0px auto;
   

    z-index: 100;
}

    .guess-pics > div {
    width:50%;
    display:inline-block;
    text-align:center;
    }
    .guess-pics img {

        margin:10px;
        width: 90%;
    }

.guess-letters {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 55px;
    max-height: 10vh;
    margin: 0px auto;
    margin-top: 2vw;
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    -webkit-column-gap: 1vw;
    column-gap: 1vw;
    z-index: 100;
}

.pic-block img {
    border-radius: 12px;
}

.guess-letters-suggestions {
    max-height: 10vh;
    margin: 0px auto;
    margin-top: 10px; /* 6vh;*/
    .loginContainer .inputBox .code-input display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    text-align: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 1vw;
    column-gap: 1vw;
    z-index: 100;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.letter-block {
    margin: 0px 1vw;
    width: 100%;
    height: 100%;
    background-color: #30384f;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    -webkit-box-shadow: inset 0 0 8px #000000;
    box-shadow: inset 0 0 8px #000000;
    width: 5vw;
    height: 5vw;
    min-width: 25px;
    min-height: 25px;
    max-width: 50px;
    max-height: 50px;
    color: white;
    font-size: 2vw;
    font-weight: bold;
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
    margin-top: 8px;
}
    .letter-block.empty {
        background: transparent;
        box-shadow: none;
        margin-left: 0;
        margin-right: 0;
    }

    .guess-letters-suggestions .letter-block {
        -webkit-box-shadow: unset;
        box-shadow: unset;
        width: 5.5vw;
        height: 5.5vw;
        font-size: 3vw;
        max-width: 60px;
        max-height: 60px;
    }

.wrong.letter-block {
    -webkit-animation-name: wrong;
    animation-name: wrong;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}


@-webkit-keyframes wrong {
    from {
        color: white;
    }

    to {
        color: red;
    }
}


@keyframes wrong {
    from {
        color: white;
    }

    to {
        color: red;
    }
}

.correct.letter-block {
    -webkit-animation-name: correct;
    animation-name: correct;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}


@-webkit-keyframes correct {
    from {
        color: white;
    }

    to {
        color: green;
    }
}


@keyframes correct {
    from {
        color: white;
    }

    to {
        color: green;
    }
}

/* end of guess page style */

/*sightseeing page style*/
.header-memorizeit .levels-header-left img {
    width: 2vw;
}

.header-memorizeit {
    height: 12vh;
}

.overlay-tutorial {

    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    height:100%;
    z-index:250;
    background:rgba(0,0,0,0);
}

.sightseeing-tutorial .content{
    top:15vh;
    position:absolute;
    display:block;
    margin:0px auto;
    left:0;
    right:0;
    width:30vw;

}


.sightseeing-tutorial .img-box {
    width: 48%;
    display:inline-block;
    box-sizing:border-box;
    padding:10px;
}

.sightseeing-tutorial img {
  width:100%;
  
}

.timer {
    background-color:white;
    color: darkgray;
   margin:0px auto;
   width:10vw;
    padding: 0px 15px;
    border-radius: 15px;
}



.sightseeing-tutorial .back-face {
    width: 100%;
    height:100%;
}

.introjs-helperNumberLayer {
    background: -webkit-linear-gradient(top,#ffb938 0,#30384f 100%) !important;
    background: linear-gradient(to bottom,#ffb938 0,#30384f 100%) !important;
}

.introjs-skipbutton {
    background: #ffb938 !important;
    color: white !important;
    text-shadow: none !important;
}

.introjs-helperLayer {
    background-color: rgba(255,255,255,0.5) !important;
}

.introjs-tooltip {
border-radius:10px !important;
padding:22px !important;

}

.flickity-page-dots {
display:none;
}

.introjs-button {
    border: none !important;
    padding: 10px !important;
}

/*end of sightseeing page style*/
/* end game page style */
.levels-header-center {
    width: 100%;
    text-align: center;
    float:left;
    display: block;
    color: white;
    margin: 12px auto;
    font-size: 2vw;
}

.action-btns form {
    margin-top: 5px;
}

.action-btns {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom:30px;
}

    .action-btns a {
        color: white;
    }

    .action-btns > div {
        margin: 5px;
        padding:0 10px;
        height:50px;
        box-sizing:border-box;
        width: 200px;
        color: #30384f;
        text-align: center;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -ms-border-radius: 5px;
        -o-border-radius: 5px;
    }

.end-solveit .action-btns > div {
    background-color: #ffb938;
}

.end-memorizeit .action-btns > div {
    background-color: #ffb938;
}

.end-stitchit .action-btns > div {
    background-color: #ffb938;
}
.end-trivia .action-btns > div {
    background-color: #ffb938;
}

.action-btns img {
    height: 50px;
    float:right;
    width:30px;height:auto;
    padding-top:7px;
}

.action-btns p {
    margin: 5px;
    float:left;font-size:20px;font-family:Rajdhani-Bold;
    text-transform:uppercase;
}
.end-solveit .action-btns .replay, .end-stitchit .action-btns .replay, .end-memorizeit .action-btns .replay, .end-trivia .action-btns .replay {
    background-color: #30384f;
}
.action-btns .replay img{padding-top:5px;}
.action-btns .replay p{color:#ffb938;}

.action-btns .next p{color:#30384f;}

/* end of end game page style */

/* my profile page style */

.passport {
    height: 100%;
    font-family: Rajdhani-SemiBold;
}

.passport-exit {
    color: #496172;
}

.passport-title {
    float: right;
    margin: 5px;
    font-size: 22px;
    color: #496172;
    font-family: Georgia;
}

.profile-loader {
    display: none;
    width: 25px;
    margin: 0px auto;
}

.passport .container {
    width: 100%;
    height: 100%;
}

.passport form {  
    width: 50%;
    margin:auto;
    padding-top:150px  ;
}
#passwordForm {
left:auto;
padding:0;
width:auto;
}


.passport #saveBtn, .passport #changePass {
    width: 48%;
    height: 52px;
    background-color: #ffb938;
    color: #30384f;
    font-size: 20px;
    display: block;
    font-family: Rajdhani-Bold;
    border-radius: 5px;
    text-transform: uppercase;
    text-decoration: none;
    padding: 16px 10px 0;
    margin: 10px 1%;
    float: left;
    text-align: left;
    box-sizing: border-box;
    border: 0;
    outline: 0;
    line-height:1;
}
 .passport #changePass{
     background-color:#30384f;
     color:#ffb938;
     background-image:url('../img/btns/changepswd.png');background-repeat:no-repeat;background-position:95% 9px;
 }
.passport #saveBtn {
    padding-top: 0;
    background-image: url('../img/btns/loginArw.png');
    background-repeat: no-repeat;
    background-position: 95% 13px;
}


.passport .form-group {
    width:48%;
    height: 52px;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 5px;
    padding: 3px 10px;
    margin-bottom: 20px;
    margin:10px 1%;
    float:left;
}

.passport .form-group label {
    color: #ffb938;
    font-size: 10px;
    text-transform: uppercase;
    width: 100%;
}

    .passport .form-group .txtInput {
        font-size: 16px;
        color: #30384f;
        font-family: Rajdhani-Bold;
        width: 100%;
        border: 0;
        text-transform:uppercase;
        background-color:transparent;
    }

    .passport .form-group .ddlSelect {
        font-size: 16px;
        color: #30384f;
        font-family: Rajdhani-Bold;
        width: 100%;
        border: 0;
        overflow:hidden;
        background-image:url('../img/btns/ddlArw.png');background-repeat:no-repeat;background-position:98% 0px;
    }
    .passport .form-group .ddlSelect select {
    border:0;outline:0;width:120%;background:transparent;
    margin-left:-4px;text-transform:uppercase;
    }

.gender label {
    width: auto;
}

.passport .frame {
    width: 30vw;
    position: absolute;
    top: 15vh;
    right: 10vw;
}


input:focus {
    outline: none;
}

input {
    -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 1; /* OLD - Firefox 19- */
    width: 20%; /* For old syntax, otherwise collapses. */ /* Chrome */
    -ms-flex: 1; /* IE 10 */
    flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.birth-group {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    float: right;
    text-align: center;
    -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 1; /* OLD - Firefox 19- */
    width: 20%; /* For old syntax, otherwise collapses. */ /* Chrome */
    -ms-flex: 1; /* IE 10 */
    flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

    .birth-group input {
        text-align: center;
        margin: 0px 5px;
    }

.birth input.year {
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2;
    margin-right: 0px;
}

.birth input.day {
    margin-left: 0px;
}

.gender input {
    display: none;
}

.gender .radio-helper {
    width: 40px;
    height: 40px;
    display: block;
    float: right;
    margin-right: 10px;
    background-color: #fff5ea;
    border: 2px solid #496172;
}


.gender input[checked=checked] + .radio-helper {
    background-color: #496172;
}

.gender-group {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */ /* NEW - Chrome */
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 1; /* OLD - Firefox 19- */
    width: 20%; /* For old syntax, otherwise collapses. */ /* Chrome */
    -ms-flex: 1; /* IE 10 */
    flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

    .gender-group * {
        -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
        -moz-box-flex: 1; /* OLD - Firefox 19- */
        width: 20%; /* For old syntax, otherwise collapses. */ /* Chrome */
        -ms-flex: 1; /* IE 10 */
        flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
    }

/* end of my profile page style */

.info {
margin:0px 5px;
}
.info-panel {
    background-color: #ffffff;
    color: black;
    padding: 8px;
    border-radius: 10px;
    position: relative;
    width: 50%;
    margin: 25px;
}

    .info-panel img {
        float: left;
        position: relative;
        left: -15px;
        top: -15px;
        width: 43px;
    }
    .info-panel .gameImg {
        float: left;
        position: unset;
        margin-right: 10px;
        width:100px;
    }
    .end .info-panel{margin:25px auto 50px;display:table;}

/* leaderboard page style */
.board {
    height: 100%;
}

.board-exit {
    color: #496172;
}

.board-title {
    float: right;
    margin: 5px;
    font-size: 22px;
    color: #496172;
}

.board .main-board {
    position: absolute;
    top: 24vh;
    left: 0px;
    right: 0px;
    margin: 0px auto;
    border-radius: 20px;
    width:60%;
    padding: 1vw;
    text-align: center;
}

    .board .main-board table {
        text-align: left;
        margin: 0px auto;
        border-spacing:0;
    }
    .board .main-board th {
        padding: 5px 15px;
        font-size: 16px;
        color: #ffb938;
       text-transform:uppercase;
        font-family: Rajdhani-Bold !important;
        border-top: 2px solid #ffb938;
        border-bottom: 2px solid #ffb938;
    }
        .board .main-board th:first-child {
            border-right: 2px solid #ffb938;
        }
        .board .main-board th:last-child {
            border-left: 2px solid #ffb938;
        }

        .board .main-board td {
            padding: 5px 15px;
            font-size: 16px;
            color: #fff;
            text-transform:uppercase;
            font-family: Rajdhani-Bold !important;
            border-bottom: 1px solid #fff;
        }

    .board .main-board tbody tr:first-child td {
        padding-top: 20px;
    }

.td-name {
    width: 100%;
}

.board .main-board .text-left {
    text-align: left !important;
}


.error-message {
    color: #ffb938;
    margin-left:1%;
}

.scrnLoader {
    position: fixed;
    width: 40px;
    left: 0px;
    right: 0px;
    display: block;
    margin: 0px auto;
    top: calc(50% - 4vw);
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    z-index: 100000;
}


/* end of leaderboard page style */
/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Hide visually and from screen readers
 */
.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap; /* 1 */
}

    /*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

    .visuallyhidden.focusable:active,
    .visuallyhidden.focusable:focus {
        clip: auto;
        height: auto;
        margin: 0;
        overflow: visible;
        position: static;
        width: auto;
        white-space: inherit;
    }

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print, (-webkit-min-device-pixel-ratio: 1.25), (-o-min-device-pixel-ratio: 5/4), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster */
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

        a[href]:after {
            content: " (" attr(href) ")";
        }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}

@media only screen and (max-height : 600px) and (orientation : landscape) {


    .passport #saveBtn, .passport #changePass {
       font-size:0.9em;
    }
    #preview img {
        max-width: 40vw;
        max-height:60vh;
    }

    .play-btn {
        font-size: 1.5em;
    }


    header {
        min-height: 50px;
    }
    .home header {
        min-height:100px;
    }

    .landing .code {
        top: 70vh;
    }

    .input-box {
        height: 2vh;
        font-size: 75%;
        border-width: 1px;
    }

    .gender .radio-helper {
        width: 20px;
        height: 20px;
    }

    .passport #passwordForm {
        top:auto;
    }

    .passport .form-group {
        margin: 3vh 0px;
    }
}


@media only screen and (max-width : 812px) and (orientation : portrait) {



    #preview img {
        width: 80vw;
        max-width: 75vh;
    }

    .modal__inner {
        padding: 2px !important;
    }
    .play-btn {
        width: 60vw;
        height: 60px;
        font-size: 2em;
    }




    .main-carousel {
        width: 90% !important;
    }

    .landing .code-input {
        width: auto;
    }

    .landing .loading {
        width: 80vw;
    }

    .landing .wheel .wheel-img {
        width: 90vw;
    }

    .landing .bag {
        width: 32vw;
    }

    .landing .title {
        width: 80vw;
    }


    /*END LANDING*/

    .home .cart-img {
        height: auto;
    }

    .home .plane-img {
        width: 90%;
        height: auto;
    }

    .home .sections {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        top: 15vh;
    }

        .home .sections .strain1, .home .sections .strain2 {
            display: none;
        }

    .home .content {
        width: 30vw;
        font-size: 6.5vw;
    }


    .levels-grid {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
        text-align: center;
    }

    .levels .bottom-left, .levels .bottom-right {
        max-width: 40%;
    }

    .levels-grid .level-block {
        width: 25vw;
        height: 25vw;
    }

    /* End Levels */

    .resetGuess {
    cursor:pointer;
    }

    .letter-block {
        width: 5vw;
        height: 5vw;
        font-size: 3vw;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -ms-border-radius: 5px;
        -o-border-radius: 5px;
    }

    .guess-letters-suggestions .letter-block {
        width: 5vw;
        height:5vw;
        font-size: 4vw;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -ms-border-radius: 5px;
        -o-border-radius: 5px;
    }

    .levels-header-center {
        font-size: 4vw;
        /*margin-top: 18px;*/
        width: 45%;
    }

    .header-memorizeit .levels-header-left img {
        width: 5vw;
    }

    .memory-game {
        width: 80vw !important;
        height: 80vw !important;
    }

    .board .main-board {
        width: 90vw;
    }

    .sidenav .menu-item img {
        width: 5vw;
    }

    .header-right img {
        width: 6vw;
    }

    .header-left img {
        width: 8vw;
    }

    .home .safari .icon {
        max-width: 75%;
    }

    .passport form {
        width: 90%;
    }

    .birth-group input {
        font-size: 80%;
    }

    .passport form label {
        font-size: 3.5vw;
    }

    .passport .frame {
        display: none;
    }

    .passport #saveBtn, .passport #changePass {
    white-space:nowrap;
    }
        .info-panel {
        width: 90%;
    }
}

@media only screen and (min-width : 720px) and (max-width:768px) and (orientation : portrait) {
    .landing .code {
        top: 70vh;
    }
}

@media only screen and (max-width : 767px) and (orientation : portrait) {
    .landing .code {
        top: 55vh;
    }
}




/* [Object] Modal
 * =============================== */
.modal {
    opacity: 0;
    visibility: hidden;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    text-align: left;
    background: rgba(0,0,0, .9);
    transition: opacity .25s ease;
    z-index:999999;
}

.modal__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    cursor: pointer;
}

.modal-state {
    display: none;
}

    .modal-state:checked + .modal {
        opacity: 1;
        visibility: visible;
    }

        .modal-state:checked + .modal .modal__inner {
            top: 0;
        }

.modal__inner {
    transition: top .25s ease;
    position: absolute;
    top: -20%;
    right: 0;
    bottom: 0;
    left: 0;
    width: 50%;
    margin: auto;
    overflow: auto;
    background: #fff;
    border-radius: 5px;
    padding: 1em 2em;
    height: 50%;
    background: White;
    background-image: url('../img/bg/bgprofile.jpg');
    background-size: cover;
}

.modal__close {
    position: absolute;
    right: 1em;
    top: 1em;
    width: 1.1em;
    height: 1.1em;
    cursor: pointer;
}

    .modal__close:after,
    .modal__close:before {
        content: '';
        position: absolute;
        width: 2px;
        height: 1.5em;
        background: #ccc;
        display: block;
        transform: rotate(45deg);
        left: 50%;
        margin: -3px 0 0 -1px;
        top: 0;
    }

    .modal__close:hover:after,
    .modal__close:hover:before {
        background: #aaa;
    }

    .modal__close:before {
        transform: rotate(-45deg);
    }

@media screen and (max-width: 768px) {

    .modal__inner {
        width: 90%;
        height: 90%;
        box-sizing: border-box;
    }
}


/* Other
 * =============================== */

.btn {
    cursor: pointer;
 text-align:center;
 margin-bottom:5px;
}

    .btn:hover,
    .btn:focus {
        background: #2ecc71;
    }

    .btn:active {
        background: #27ae60;
        box-shadow: 0 1px 2px rgba(0,0,0, .2) inset;
    }

.btn--blue {
    background: #2980b9;
}

    .btn--blue:hover,
    .btn--blue:focus {
        background: #3498db;
    }

    .btn--blue:active {
        background: #2980b9;
    }

p img {
    max-width: 200px;
    height: auto;
    float: left;
    margin: 0 1em 1em 0;
}

.carousel-cell {
    width: 100%;
}

.levels-grid {
    width: 100%;
    text-align: center;
    padding: 10px 0;
}

.main-carousel {
    width: 80% ;
    margin: 0px auto;
    left: 0px;
    right: 0px;
    top: auto;
    z-index: 10000;
    margin-bottom:150px;
}

.flickity-prev-next-button.previous {
    left: -50px !important;
}

.flickity-prev-next-button.next {
    right: -50px !important;
}

.clear{clear:both;}

.levels .titleSection{padding:70px 0 40px;text-align:center;font-family:Rajdhani-Bold;text-transform:uppercase;line-height:1;}
.levels .titleSection .subTitle{font-size:17px;color:#ffb938;}
.levels .titleSection .title{font-size:55px;color:white;}

.chooseLanguage{height:100%;background-image:url('../img/bg/bgLang.png');background-size:cover;overflow-y:auto;}
.chooseLanguage .langContainer .logo { padding-top:40px; text-align: center;padding-bottom:10px}
.chooseLanguage .langContainer{width:300px;margin:auto;}
.chooseLanguage .langContainer .homeTitle{margin:10px 0; color: #fff; font-size: 30px; text-align: center;line-height:1; font-family: Rajdhani-Bold;}
.chooseLanguage .langContainer .homeTitle.ar{word-spacing:30px;font-family: Adobe-Arabic-Regular;}
.chooseLanguage .hr-sep{width:50px;height:4px;background-color:#ffb938;margin:0px auto 25px;}
.chooseLanguage .language{width:300px;cursor:pointer;font-size:20px;font-family:Rajdhani-Bold; box-sizing:border-box;height:52px;background-color:transparent;color:#fff;text-align:center;border:1px solid #fff;border-radius:5px;margin:0 auto 20px;padding-top:10px;}
.chooseLanguage .language.selected{background-color:#fff;color:#30384f; border:2px solid #ffb938;}
.chooseLanguage .langContainer .languageLink {width: 300px;background-color: #ffb938;color: #30384f;font-size: 20px;display: block;font-family: Rajdhani-Bold;height: 52px;max-height: 52px;border-radius: 5px;text-transform: uppercase;text-decoration: none;padding: 11px 10px 0;margin: 0 auto;box-sizing:border-box;}
.chooseLanguage .langContainer .languageLink img {float: right;padding-top: 3px;}

.dashboardPage{height:100%;background-image:url('../img/bg/bgDashboardT.jpg');background-size:cover;border-top:10px solid #ffb938;}
.dashboardPage .carousel{width:100%;}
.dashboardPage .carousel .ms-slide .gameContent{width:100%;height:100%;padding:20px;box-sizing:border-box;border-radius:5px;}
.dashboardPage .carousel .ms-slide .gameContent .infoSec{width:50%;float:left;text-transform:uppercase;position:absolute;bottom:25px;}
.dashboardPage .carousel .ms-slide .gameContent .infoSec .lbl{font-size:17px;font-family:Rajdhani-Bold;color:#ffb938;line-height:1;}
.dashboardPage .carousel .ms-slide .gameContent .infoSec .title{font-size:55px;font-family:Rajdhani-Bold;color:#fff;line-height:1;}
.dashboardPage .carousel .ms-slide .gameContent .infoSec .desc{font-size:15px;font-family:Rajdhani-SemiBold;line-height:18px; color:#fff;text-transform:capitalize;padding-bottom:10px;}
.dashboardPage .carousel .ms-slide .gameContent .btnPlay{float:right;width:180px; height:52px;display:block; box-sizing:border-box;border-radius:5px;position:absolute;bottom:25px;right:25px; font-size:20px;font-family:Rajdhani-Bold;color:#30384f;background-image:url('../img/btns/btnPlay.png');background-position:90% 15px;background-repeat:no-repeat;background-color:#ffb938;padding:12px 10px 0;}
.dashboardPage .carousel .ms-slide .gameContent .watch{float:right;font-size:20px;font-family:Rajdhani-Bold;color:#fff;position:absolute;bottom:25px;right:25px;text-transform:uppercase;}
.dashboardPage .ms-bullets.ms-dir-h{width:125px !important;bottom:-50px}
.dashboardPage .ms-bullets .ms-bullet{width:15px;height:15px;border:1px solid #fff;background-color:transparent;border-radius:10px;background-image:none;}
.dashboardPage .ms-bullets .ms-bullet.ms-bullet-selected{width:15px;height:15px;border:1px solid #ffb938;background-color:#ffb938;}


.header{width:100%;position:absolute;top:0;display:block;z-index:5;}
.header .headerContainer{width:60%;min-width:800px;height:105px;margin:auto;background-image:url('../img/bg/bgHeader.png');background-size:100% 100%;background-repeat:no-repeat;box-sizing:border-box;}
.header .headerContainer .headerContent{width:fit-content;margin:auto;display:table;}
.header .headerContainer .headerContent .menuLi{font-size:17px;color:#fff;font-family:Rajdhani-SemiBold;float:left;margin:30px 15px 0;}
.header .headerContainer .headerContent .menuLi.selected{color:#ffb938;}
.header .headerContainer .headerContent .menuLi img{padding-left:3px;}
.header .headerContainer .headerContent .logo{float:left;padding:6px 10px 0;}
.header .headerContainer .headerContent .welcome{float:left;color:#fff;padding-top:32px;padding-left:15px;}
.header .headerContainer .headerContent .welcome .txt{float:left;font-family:Rajdhani-Bold;font-size:13px;}
.header .headerContainer .headerContent .welcome .txt span{float:left;font-family:Rajdhani-SemiBold;font-size:11px;padding-top:5px;line-height:1;padding-right:3px;}
.header .headerContainer .headerContent .welcome .pts{float:right;font-family:Rajdhani-Bold;font-size:18px;color:#ffb938;line-height:1;}
.header .headerContainer .headerContent .welcome .pts span{float:right;font-family:Rajdhani-Bold;color:#ffb938;padding-top:2px; font-size:15px;padding-left:2px;}
.header .headerContainer .headerContent .welcome img{padding-left:5px;padding-right:5px;margin-top:-5px;}
.header .headerContainer .headerContent .welcome .logout{color:#ffb938;float:right;cursor:pointer;}
.header .headerContainer .language{position:absolute;left:73%;top:10px;color:#fff;text-decoration:none;cursor:pointer;}

@media screen and (max-width:1200px) {
    .header .headerContainer .language {
        left: 77%;
    }
}
@media screen and (max-width:1000px) {
    .header .headerContainer .language {
        left: 80%;
    }
}
.leaderboardPage{height:100%;background-image:url('../img/bg/bgLeaderboard.jpg');background-size:cover;}
.leaderboardPage .hdLeaderboard{}
.leaderboardPage .hdLeaderboard .title {float:left;margin-bottom:50px;text-transform:uppercase;}
.leaderboardPage .hdLeaderboard .title .ttl{color:#fff;font-size:30px;font-family:Rajdhani-Bold;float:left;}
.leaderboardPage .hdLeaderboard .title .sep{color:#ffb938;font-size:30px;font-family:Rajdhani-Bold;float:left;}
.leaderboardPage .hdLeaderboard .title .selected{color:#ffb938;font-size:30px;font-family:Rajdhani-Bold;float:left;}
.leaderboardPage .hdLeaderboard .selectGame{width:160px;height:52px;float:right;box-sizing:border-box;border:1px solid #fff;border-radius:5px;text-align: left;padding: 7px 15px;text-transform:uppercase;}
.leaderboardPage .hdLeaderboard .selectGame .lbl{font-size:10px;color:#ffb938;font-family:Rajdhani-SemiBold;}
.leaderboardPage .hdLeaderboard .selectGame .ddlSelect{width:100%;overflow:hidden;cursor:pointer; font-size:16px;color:#fff;outline:0; font-family:Rajdhani-Bold;color:#fff;margin-left:-4px; background-image:url('../img/btns/ddlarw.png');background-repeat:no-repeat;background-position:right top;}
.leaderboardPage .hdLeaderboard .selectGame .ddlSelect select{width:120%;background-color:transparent;outline:0;border:0;color:#fff;text-transform:uppercase;}
.leaderboardPage .hdLeaderboard .selectGame .ddlSelect select option{padding:0;color:#ffb938}

.profilePage{height:100%;background-image:url('../img/bg/bgProfile.jpg');background-size:cover;}
.profilePage .pageTitle{text-align:center;color:#fff;font-family:Rajdhani-Bold;font-size:30px;text-transform:uppercase;margin-bottom:30px;}
.profilePage .logout{float:right;cursor:pointer;color:#fff;padding-right:10px;}

.pswdPopup .title{text-align:center;color:#fff;font-family:Rajdhani-Bold;font-size:30px;text-transform:uppercase;margin-bottom:30px;}
.pswdPopup .form-group {width:48%;height: 52px;box-sizing: border-box;background-color: #fff;border-radius: 5px;padding: 3px 10px;margin-bottom: 20px;margin:10px auto;float:none;}
.pswdPopup #changePass {float:none;padding-top:0px;margin:10px auto;}

.dividedHeader{width:100%;position:absolute;top:0;z-index:200;display:block;}
.dividedHeader .leftHeader{width:400px;height:105px;background-image:url('../img/bg/leftHd.png');float:left;background-size:contain;background-repeat:no-repeat;}
.dividedHeader .leftHeader .logo{float:left;padding:6px 10px 0;}
.dividedHeader .leftHeader .logo img{width:90%;}
.dividedHeader .leftHeader .welcome{float:left;color:#fff;padding-top:15px;padding-left:15px;}
.dividedHeader .leftHeader .welcome .txt{float:left;font-family:Rajdhani-Bold;font-size:13px;}
.dividedHeader .leftHeader .welcome .txt span{float:left;font-family:Rajdhani-SemiBold;font-size:11px;padding-top:2px;padding-right:3px;}
.dividedHeader .leftHeader .welcome .txt .pts{float:right;font-family:Rajdhani-Bold;font-size:21px;color:#ffb938;line-height:1;}
.dividedHeader .leftHeader .welcome .txt .pts span{float:right;font-family:Rajdhani-Bold;font-size:19px;color:#ffb938;padding-left:2px;}
.dividedHeader .leftHeader .welcome img{padding-left:5px;}
.dividedHeader .leftHeader .welcome .logout{color:#ffb938;float:right;cursor:pointer;}
.dividedHeader .rightHeader{width:400px;height:105px;background-image:url('../img/bg/rightHd.png');float:right;background-size:contain;background-repeat:no-repeat;}
.dividedHeader .rightHeader .exit{font-size:20px;cursor:pointer;display:block; font-family:Rajdhani-Bold;color:#fff;text-align:center;text-transform:uppercase;padding-top:22px;}
.dividedHeader .rightHeader .exit img{padding-left:20px;}

.mobileHeader {display:none;}

.triviaContainer{width:50%;margin:auto;font-family:Rajdhani-Bold;text-align:center;}
.triviaContainer .questContainer{}
.triviaContainer .questContainer .qTtl{font-size:30px;color:#ffb938;}
.triviaContainer .questContainer .question{font-size:30px; color:#fff;}
.triviaContainer .questContainer .sep{width:30px;height:3px;background-color:#ffb938;margin:20px auto;}
.triviaContainer .answerContainer{}
.triviaContainer .answerContainer .multipleChoice{margin-top:30px;display:table;width:100%;}
.triviaContainer .answerContainer .multipleChoice .answer{width:48%;height:50px;cursor:pointer; float:left;box-sizing:border-box;font-size:20px; margin :5px 1%;border:1px solid #fff;padding:9px 10px 0;border-radius:3px;text-align:left;text-transform:uppercase;color:#fff;}
.triviaContainer .answerContainer .multipleChoice .answer.selected{background-color:#fff;border:2px solid #ffb938;background-image:url('../img/btns/tick.png');background-repeat:no-repeat;background-position:95% 12px;color:#ffb938;}
.triviaContainer .hint{text-transform:uppercase;color:#ffb938;margin:40px 0 20px;}
.triviaContainer .btnSubmit{width:48%;height:50px;min-width:220px;margin:20px auto;padding:10px 10px 0;box-sizing:border-box;cursor:pointer; background-color:#ffb938;color:#30384f;font-size:20px;text-align:left;border-radius:3px; background-image:url('../img/btns/loginarw.png');background-repeat:no-repeat;background-position:95% 12px;text-transform:uppercase;}
.triviaContainer button{border:0;padding:0 10px !important;}
.triviaContainer .lblMsg{color:#ffb938}

/*radio button & checkbox*/
    .triviaContainer .radioBtns {
        width: 48%;
        height: 50px;
        cursor: pointer;
        float: left;
        box-sizing: border-box;
        font-size: 20px;
        margin: 5px 1%;
        border: 1px solid #fff;
        padding:0; /*9px 10px 0;*/
        border-radius: 3px;
        text-align: left;
        text-transform: uppercase;
        color: #fff;
    }

.triviaContainer input[type="radio"], input[type="checkbox"] {
    display: none;
}

.triviaContainer input[type="radio"] + label, .triviaContainer input[type="checkbox"] + label {
    /*font-family: @lightFont;
    font-size: @fontLarge;*/
    font-weight: normal;
    margin-bottom: 0;
    position:relative;
    top:-40px;
    left:10px;
}

    .triviaContainer input[type="radio"] + label span, .triviaContainer input[type="checkbox"] + label span {
        display: inline-block;
        width: 100%;
        box-sizing:border-box;
        height: 50px;
        margin-left: 0;
        vertical-align: middle;
        cursor: pointer;
        /*border: 1px solid #ccc;*/
        float: right;
        position:relative;top:40px;
        padding-left:5px;
    }

.triviaContainer input[type="radio"]:checked + label span, .triviaContainer input[type="checkbox"]:checked + label span {
    background-image: url('../img/btns/tick.png');
    background-size: 15px;
    background-position: 93% center;
    background-repeat: no-repeat;
    background-color: transparent;
}

.triviaContainer input[type="radio"] + label span, input[type="radio"]:checked + label span, .triviaContainer input[type="checkbox"] + label span, input[type="checkbox"]:checked + label span {
    -webkit-transition: background-color 0.4s linear;
    -o-transition: background-color 0.4s linear;
    -moz-transition: background-color 0.4s linear;
    transition: background-color 0.4s linear;
}

.triviaContainer input[type="radio"]:checked + label span.selected, .triviaContainer input[type="checkbox"]:checked + label span.selected {
    background-image: url('../img/btn/tickB.png');
    background-size: 15px;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: transparent;
}
/*End radio button*/


.levels.triviaDetails .titleSection {
    padding: 0;
}

@media screen and (max-width:1200px) {
    header .gameHeader{width:35%;margin:auto;}
}

@media screen and (max-width:1000px) {
    .dividedHeader .leftHeader{width:330px;background-size:100% 100%;}
    .dividedHeader .rightHeader{width:300px;background-size:100% 100%;}
    .pswdPopup .form-group{width:100%;}

    .passport{overflow-y:auto;}
    .passport #saveBtn{margin-bottom:100px;}

    .board .main-board{width:80%;top:18vh;}
}

@media screen and (max-width:850px){
    .header{display:none;}
    .dividedHeader{display:none;}
    .mobileHeader {display:block;position:absolute;top:0;width:100%;height:60px;background-color:#30384f; text-align:center;z-index:999999;}
    .mobileHeader .burgerMenu {width:32px;height:32px;float:left;cursor:pointer;margin:19px 30px 0;}
    .mobileHeader .burgerMenu span{width:32px;height:4px;background-color:#ffb938;margin-bottom:5px;display:block;}
    .mobileHeader .logo{margin-left:15px}
    .mobileHeader .logo img{width:70px;padding-top:5px;}
    .mobileHeader .navHeader{background-color:#30384f;color:#fff;position:relative;z-index:9999999;text-align:left;padding:20px;display:none;}
    .mobileHeader .navHeader .welcome{color:#fff;padding-top:10px;padding-left:15px;float:right;margin-bottom:10px;}
    .mobileHeader .navHeader .welcome .txt{float:left;font-family:Rajdhani-Bold;font-size:13px;}
    .mobileHeader .navHeader .welcome .txt span{float:left;font-family:Rajdhani-SemiBold;font-size:11px;padding-top:2px;padding-right:3px;}
    .mobileHeader .navHeader .welcome .pts{float:right;font-family:Rajdhani-Bold;font-size:21px;color:#ffb938;line-height:1;}
    .mobileHeader .navHeader .welcome .pts span{float:right;font-family:Rajdhani-Bold;color:#ffb938;font-size:18px;padding-top:3px;padding-left:2px;}
    .mobileHeader .navHeader .welcome img{padding-left:5px;padding-right:5px;margin-top:-5px;}
    .mobileHeader .navHeader .welcome .logout{color:#ffb938;float:right;cursor:pointer;}
    .mobileHeader .navHeader .menuLi{width:100%;height:50px;display:block;color:#fff;border-top:1px solid #fff;padding-top:13px;box-sizing:border-box;text-decoration:none;}
    .mobileHeader .navHeader .menuLi img{float:right;padding-top:5px;}
    .mobileHeader .navHeader .menuLi.selected{color:#ffb938;}
    .mobileHeader .exit{color:#fff;float:right;text-transform:uppercase;font-size:12px;padding:20px 10px 0 0 }
    .mobileHeader .exit img{width:20px;padding-left:10px;}

    .footer .footerContainer{width:300px;min-width:300px;height:50px;}
    .footer .footerContainer .footerContent .liFooter{padding-top:5px;font-size:10px;}
    .footer .footerContainer .footerContent .sep{padding-top:5px;font-size:10px;margin:0 5px;}
    .footer .footerContainer .liFooter:first-child{padding-top:10px;font-size:10px;float:none;}
    .footer .footerContainer .footerContent .sep:first-child{display:none;}
    
    .levels .levelNum{font-size:5vw;}

    header{top:50px;z-index:2;}
    header .gameHeader{width:90%;}
    .levels-header-center{width:100%;margin:22px auto;}
    .levels-header-right{margin-top:5px;}
    .passport form{padding-top:80px;}
    .profilePage .pageTitle{margin-bottom:10px;}
     .board .main-board{width:90%;top:100px;}
    .leaderboardPage .hdLeaderboard .title{float:none;}
    .leaderboardPage .hdLeaderboard .title .ttl{font-size:20px;}
    .leaderboardPage .hdLeaderboard .title .sep{font-size:20px;}
    .leaderboardPage .hdLeaderboard .title .selected{font-size:20px;}
    .leaderboardPage .hdLeaderboard .selectGame{margin-bottom:30px;margin-top:20px;}

    .levels .titleSection{padding:100px 0 0;}
    .levels .titleSection .subTitle{font-size:18px;line-height:1;}
    .levels .titleSection .title{font-size:25px;line-height:1;}
    #resetGuess{width:15px !important;height:15px !important; margin-top:10px!important;}
    .triviaContainer{width:80%;}
    .triviaContainer .questContainer .qTtl {font-size:15px;margin-top:20px;}
    .triviaContainer .questContainer .question {font-size:18px;}
    .triviaContainer .questContainer .sep{margin:10px auto;}
    .triviaContainer .answerContainer .multipleChoice .answer{font-size:18px;}
    .triviaDetails .container{padding-top:50px;}
    .end .info-panel{margin:45px auto 25px;display:table;width:90%;}

}

@media screen and (max-width:700px) {
    .dashboardPage .carousel {
        width: 90%;margin:auto;
    }
}

@media screen and (max-width:600px) {    
    .dashboardPage .carousel .ms-slide .gameContent .infoSec .lbl{font-size:12px;}
    .dashboardPage .carousel .ms-slide .gameContent .infoSec .title {font-size:18px;}
    .dashboardPage .carousel .ms-slide .gameContent .infoSec .desc{font-size:12px;line-height:1;}
    .dashboardPage .carousel .ms-slide .gameContent .btnPlay{width:90px;height:35px;padding:10px 8px 0;font-size:12px;background-size:10px;background-position:90% 10px;}
    .dashboardPage .carousel .ms-slide .gameContent .watch{font-size:10px;}
    .dashboardPage .carousel .ms-slide .gameContent .watch img{width:30px;}

    .dashboardPage .ms-bullets .ms-bullet{width:5px;height:5px;}
    .dashboardPage .ms-bullets .ms-bullet.ms-bullet-selected{width:5px;height:5px;}

    .passport .form-group{width:90%;margin:10px auto;float:none;}
    .passport #saveBtn, .passport #changePass{width:90%;margin:10px auto;float:none;}
    .passport .error-message{margin-bottom:100px;}

    .leaderboardPage .hdLeaderboard .title{width:100%;margin-bottom:10px;}
    .leaderboardPage .hdLeaderboard .selectGame{width:120px;padding:7px 5px;}
    .board .main-board th{font-size:12px;}
    .board .main-board td{font-size:12px;}

    .loginContainer .logo{padding-top:20px;}
    .chooseLanguage .langContainer .logo{padding:20px 0 ;}
    .chooseLanguage .langContainer .homeTitle{font-size:20px;margin:10px 0;}
    .chooseLanguage .hr-sep{margin:0 auto 25px;}
    .loginContainer .homeTitle{font-size:20px;margin:10px 0;}

    .levels-grid .level-block {width: 30vw;height: 30vw;}
    .triviaContainer{width:95%;}
    .triviaContainer .answerContainer .multipleChoice .answer{width:80%;margin:5px auto;float:none;}
    .triviaContainer .answerContainer .multipleChoice{margin-top:10px;}
    .triviaContainer .radioBtns{width:95%;margin:5px 2.5%;height:40px;font-size:15px;}
    .triviaContainer input[type="radio"]:checked + label span, .triviaContainer input[type="checkbox"]:checked + label span{height:40px;}
    .triviaContainer input[type="radio"] + label span, .triviaContainer input[type="checkbox"] + label span{height:40px;top:31px;}
    .triviaContainer input[type="radio"] + label, .triviaContainer input[type="checkbox"] + label{top:-32px;}
    .triviaContainer .btnSubmit{margin:10px auto;}
    .triviaContainer .questContainer .qTtl{margin-top:5px;}

    .levels .titleSection{padding:100px 0 0;}
    .dashboardPage .carousel .ms-slide .gameContent .infoSec .desc{padding-bottom:0;}
}

@media screen and (max-width:450px){
    .action-btns > div{width:150px;}
    .end .info-panel{width:70%;}
    .info-panel .gameImg{width:50px;}
    .levels .titleSection .subTitle{font-size:12px;line-height:1;}
    .levels .titleSection .title{font-size:14px;line-height:1;}
    .level-number{font-size:25px;}
}

@media screen and (max-width:400px) {
    .mobileHeader{height:60px;}
    .mobileHeader .burgerMenu{margin:19px 30px 0;}
    .mobileHeader .logo img{width:70px;padding-top:5px;}
     header{top:40px;}
    .passport form{padding-top:80px;}
    .pswdPopup .title{margin-top:40px;}
    .mobileHeader .exit{font-size:12px;padding:20px 10px 0 0 ;}
    .mobileHeader .exit img{width:20px;}
    .mobileHeader .logo{margin-left:10px;}
    .levels-header-right, .levels-header-left{padding:20px 10px 0;}
}

/*@media screen and (orientation: landscape) {
    .dashboardPage .carousel{max-height:calc(100% - 120px);}
}*/

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

.prefix {
    position: relative;
    right: -3px;
    color: grey;
    width: 30px;
    float: left;
}

input.has-prefix {
    width: calc(100% - 60px) !important;
    font-size:17px !important;text-align:left !important;
}
/*!
 * Hover.css (http://ianlunn.github.io/Hover/)
 * Version: 2.3.2
 * Author: Ian Lunn @IanLunn
 * Author URL: http://ianlunn.co.uk/
 * Github: https://github.com/IanLunn/Hover
 * Hover.css Copyright Ian Lunn 2017. Generated with Sass.
 */
/* 2D TRANSITIONS */
/* Grow */
.hvr-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-grow:hover, .hvr-grow:focus, .hvr-grow:active {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Shrink */
.hvr-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-shrink:hover, .hvr-shrink:focus, .hvr-shrink:active {
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

/* Pulse */
@-webkit-keyframes hvr-pulse {
  25% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  75% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}
@keyframes hvr-pulse {
  25% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  75% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}
.hvr-pulse {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-pulse:hover, .hvr-pulse:focus, .hvr-pulse:active {
  -webkit-animation-name: hvr-pulse;
  animation-name: hvr-pulse;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Pulse Grow */
@-webkit-keyframes hvr-pulse-grow {
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
@keyframes hvr-pulse-grow {
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
.hvr-pulse-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-pulse-grow:hover, .hvr-pulse-grow:focus, .hvr-pulse-grow:active {
  /*-webkit-animation-name: hvr-pulse-grow;
  animation-name: hvr-pulse-grow;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;*/
}

/* Pulse Shrink */
@-webkit-keyframes hvr-pulse-shrink {
  to {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}
@keyframes hvr-pulse-shrink {
  to {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}
.hvr-pulse-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-pulse-shrink:hover, .hvr-pulse-shrink:focus, .hvr-pulse-shrink:active {
  -webkit-animation-name: hvr-pulse-shrink;
  animation-name: hvr-pulse-shrink;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Push */
@-webkit-keyframes hvr-push {
  50% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes hvr-push {
  50% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.hvr-push {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-push:hover, .hvr-push:focus, .hvr-push:active {
  -webkit-animation-name: hvr-push;
  animation-name: hvr-push;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Pop */
@-webkit-keyframes hvr-pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@keyframes hvr-pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
.hvr-pop {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-pop:hover, .hvr-pop:focus, .hvr-pop:active {
  -webkit-animation-name: hvr-pop;
  animation-name: hvr-pop;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Bounce In */
.hvr-bounce-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-in:hover, .hvr-bounce-in:focus, .hvr-bounce-in:active {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Bounce Out */
.hvr-bounce-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-out:hover, .hvr-bounce-out:focus, .hvr-bounce-out:active {
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
  -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Rotate */
.hvr-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-rotate:hover, .hvr-rotate:focus, .hvr-rotate:active {
  -webkit-transform: rotate(4deg);
  transform: rotate(4deg);
}

/* Grow Rotate */
.hvr-grow-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-grow-rotate:hover, .hvr-grow-rotate:focus, .hvr-grow-rotate:active {
  -webkit-transform: scale(1.1) rotate(4deg);
  transform: scale(1.1) rotate(4deg);
}

/* Float */
.hvr-float {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-float:hover, .hvr-float:focus, .hvr-float:active {
  -webkit-transform: translateY(-8px);
  transform: translateY(-8px);
}

/* Sink */
.hvr-sink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sink:hover, .hvr-sink:focus, .hvr-sink:active {
  -webkit-transform: translateY(8px);
  transform: translateY(8px);
}

/* Bob */
@-webkit-keyframes hvr-bob {
  0% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  50% {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
  }
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}
@keyframes hvr-bob {
  0% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  50% {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
  }
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}
@-webkit-keyframes hvr-bob-float {
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}
@keyframes hvr-bob-float {
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}
.hvr-bob {
  /* display: inline-block; */
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-bob:hover, .hvr-bob:focus, .hvr-bob:active {
  -webkit-animation-name: hvr-bob-float, hvr-bob;
  animation-name: hvr-bob-float, hvr-bob;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Hang */
@-webkit-keyframes hvr-hang {
  0% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
  50% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
}
@keyframes hvr-hang {
  0% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
  50% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
}
@-webkit-keyframes hvr-hang-sink {
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
}
@keyframes hvr-hang-sink {
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
}
.hvr-hang {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-hang:hover, .hvr-hang:focus, .hvr-hang:active {
  -webkit-animation-name: hvr-hang-sink, hvr-hang;
  animation-name: hvr-hang-sink, hvr-hang;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Skew */
.hvr-skew {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-skew:hover, .hvr-skew:focus, .hvr-skew:active {
  -webkit-transform: skew(-10deg);
  transform: skew(-10deg);
}

/* Skew Forward */
.hvr-skew-forward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}
.hvr-skew-forward:hover, .hvr-skew-forward:focus, .hvr-skew-forward:active {
  -webkit-transform: skew(-10deg);
  transform: skew(-10deg);
}

/* Skew Backward */
.hvr-skew-backward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}
.hvr-skew-backward:hover, .hvr-skew-backward:focus, .hvr-skew-backward:active {
  -webkit-transform: skew(10deg);
  transform: skew(10deg);
}

/* Wobble Vertical */
@-webkit-keyframes hvr-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
  33.3% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }
  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes hvr-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
  33.3% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }
  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
.hvr-wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-wobble-vertical:hover, .hvr-wobble-vertical:focus, .hvr-wobble-vertical:active {
  -webkit-animation-name: hvr-wobble-vertical;
  animation-name: hvr-wobble-vertical;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Horizontal */
@-webkit-keyframes hvr-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
  }
  33.3% {
    -webkit-transform: translateX(-6px);
    transform: translateX(-6px);
  }
  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }
  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }
  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes hvr-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
  }
  33.3% {
    -webkit-transform: translateX(-6px);
    transform: translateX(-6px);
  }
  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }
  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }
  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
.hvr-wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-wobble-horizontal:hover, .hvr-wobble-horizontal:focus, .hvr-wobble-horizontal:active {
  -webkit-animation-name: hvr-wobble-horizontal;
  animation-name: hvr-wobble-horizontal;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble To Bottom Right */
@-webkit-keyframes hvr-wobble-to-bottom-right {
  16.65% {
    -webkit-transform: translate(8px, 8px);
    transform: translate(8px, 8px);
  }
  33.3% {
    -webkit-transform: translate(-6px, -6px);
    transform: translate(-6px, -6px);
  }
  49.95% {
    -webkit-transform: translate(4px, 4px);
    transform: translate(4px, 4px);
  }
  66.6% {
    -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px);
  }
  83.25% {
    -webkit-transform: translate(1px, 1px);
    transform: translate(1px, 1px);
  }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
@keyframes hvr-wobble-to-bottom-right {
  16.65% {
    -webkit-transform: translate(8px, 8px);
    transform: translate(8px, 8px);
  }
  33.3% {
    -webkit-transform: translate(-6px, -6px);
    transform: translate(-6px, -6px);
  }
  49.95% {
    -webkit-transform: translate(4px, 4px);
    transform: translate(4px, 4px);
  }
  66.6% {
    -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px);
  }
  83.25% {
    -webkit-transform: translate(1px, 1px);
    transform: translate(1px, 1px);
  }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.hvr-wobble-to-bottom-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-wobble-to-bottom-right:hover, .hvr-wobble-to-bottom-right:focus, .hvr-wobble-to-bottom-right:active {
  -webkit-animation-name: hvr-wobble-to-bottom-right;
  animation-name: hvr-wobble-to-bottom-right;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble To Top Right */
@-webkit-keyframes hvr-wobble-to-top-right {
  16.65% {
    -webkit-transform: translate(8px, -8px);
    transform: translate(8px, -8px);
  }
  33.3% {
    -webkit-transform: translate(-6px, 6px);
    transform: translate(-6px, 6px);
  }
  49.95% {
    -webkit-transform: translate(4px, -4px);
    transform: translate(4px, -4px);
  }
  66.6% {
    -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px);
  }
  83.25% {
    -webkit-transform: translate(1px, -1px);
    transform: translate(1px, -1px);
  }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
@keyframes hvr-wobble-to-top-right {
  16.65% {
    -webkit-transform: translate(8px, -8px);
    transform: translate(8px, -8px);
  }
  33.3% {
    -webkit-transform: translate(-6px, 6px);
    transform: translate(-6px, 6px);
  }
  49.95% {
    -webkit-transform: translate(4px, -4px);
    transform: translate(4px, -4px);
  }
  66.6% {
    -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px);
  }
  83.25% {
    -webkit-transform: translate(1px, -1px);
    transform: translate(1px, -1px);
  }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.hvr-wobble-to-top-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-wobble-to-top-right:hover, .hvr-wobble-to-top-right:focus, .hvr-wobble-to-top-right:active {
  -webkit-animation-name: hvr-wobble-to-top-right;
  animation-name: hvr-wobble-to-top-right;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Top */
@-webkit-keyframes hvr-wobble-top {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }
  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }
  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }
  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }
  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }
  100% {
    -webkit-transform: skew(0);
    transform: skew(0);
  }
}
@keyframes hvr-wobble-top {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }
  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }
  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }
  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }
  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }
  100% {
    -webkit-transform: skew(0);
    transform: skew(0);
  }
}
.hvr-wobble-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}
.hvr-wobble-top:hover, .hvr-wobble-top:focus, .hvr-wobble-top:active {
  -webkit-animation-name: hvr-wobble-top;
  animation-name: hvr-wobble-top;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Bottom */
@-webkit-keyframes hvr-wobble-bottom {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }
  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }
  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }
  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }
  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }
  100% {
    -webkit-transform: skew(0);
    transform: skew(0);
  }
}
@keyframes hvr-wobble-bottom {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }
  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }
  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }
  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }
  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }
  100% {
    -webkit-transform: skew(0);
    transform: skew(0);
  }
}
.hvr-wobble-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}
.hvr-wobble-bottom:hover, .hvr-wobble-bottom:focus, .hvr-wobble-bottom:active {
  -webkit-animation-name: hvr-wobble-bottom;
  animation-name: hvr-wobble-bottom;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Skew */
@-webkit-keyframes hvr-wobble-skew {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }
  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }
  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }
  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }
  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }
  100% {
    -webkit-transform: skew(0);
    transform: skew(0);
  }
}
@keyframes hvr-wobble-skew {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }
  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }
  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }
  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }
  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }
  100% {
    -webkit-transform: skew(0);
    transform: skew(0);
  }
}
.hvr-wobble-skew {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-wobble-skew:hover, .hvr-wobble-skew:focus, .hvr-wobble-skew:active {
  -webkit-animation-name: hvr-wobble-skew;
  animation-name: hvr-wobble-skew;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Buzz */
@-webkit-keyframes hvr-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}
@keyframes hvr-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}
.hvr-buzz {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-buzz:hover, .hvr-buzz:focus, .hvr-buzz:active {
  -webkit-animation-name: hvr-buzz;
  animation-name: hvr-buzz;
  -webkit-animation-duration: 0.15s;
  animation-duration: 0.15s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Buzz Out */
@-webkit-keyframes hvr-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0);
  }
}
@keyframes hvr-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0);
  }
}
.hvr-buzz-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-buzz-out:hover, .hvr-buzz-out:focus, .hvr-buzz-out:active {
  -webkit-animation-name: hvr-buzz-out;
  animation-name: hvr-buzz-out;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Forward */
.hvr-forward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-forward:hover, .hvr-forward:focus, .hvr-forward:active {
  -webkit-transform: translateX(8px);
  transform: translateX(8px);
}

/* Backward */
.hvr-backward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-backward:hover, .hvr-backward:focus, .hvr-backward:active {
  -webkit-transform: translateX(-8px);
  transform: translateX(-8px);
}

/* BACKGROUND TRANSITIONS */
/* Fade */
.hvr-fade {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  overflow: hidden;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
}
.hvr-fade:hover, .hvr-fade:focus, .hvr-fade:active {
  background-color: #2098D1;
  color: white;
}

/* Back Pulse */
@-webkit-keyframes hvr-back-pulse {
  50% {
    background-color: rgba(32, 152, 209, 0.75);
  }
}
@keyframes hvr-back-pulse {
  50% {
    background-color: rgba(32, 152, 209, 0.75);
  }
}
.hvr-back-pulse {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  overflow: hidden;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
}
.hvr-back-pulse:hover, .hvr-back-pulse:focus, .hvr-back-pulse:active {
  -webkit-animation-name: hvr-back-pulse;
  animation-name: hvr-back-pulse;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  background-color: #2098D1;
  background-color: #2098d1;
  color: white;
}

/* Sweep To Right */
.hvr-sweep-to-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-right:hover, .hvr-sweep-to-right:focus, .hvr-sweep-to-right:active {
  color: white;
}
.hvr-sweep-to-right:hover:before, .hvr-sweep-to-right:focus:before, .hvr-sweep-to-right:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

/* Sweep To Left */
.hvr-sweep-to-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-left:hover, .hvr-sweep-to-left:focus, .hvr-sweep-to-left:active {
  color: white;
}
.hvr-sweep-to-left:hover:before, .hvr-sweep-to-left:focus:before, .hvr-sweep-to-left:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

/* Sweep To Bottom */
.hvr-sweep-to-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-bottom:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-bottom:hover, .hvr-sweep-to-bottom:focus, .hvr-sweep-to-bottom:active {
  color: white;
}
.hvr-sweep-to-bottom:hover:before, .hvr-sweep-to-bottom:focus:before, .hvr-sweep-to-bottom:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

/* Sweep To Top */
.hvr-sweep-to-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-top:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-top:hover, .hvr-sweep-to-top:focus, .hvr-sweep-to-top:active {
  color: white;
}
.hvr-sweep-to-top:hover:before, .hvr-sweep-to-top:focus:before, .hvr-sweep-to-top:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

/* Bounce To Right */
.hvr-bounce-to-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-right:hover, .hvr-bounce-to-right:focus, .hvr-bounce-to-right:active {
  color: white;
}
.hvr-bounce-to-right:hover:before, .hvr-bounce-to-right:focus:before, .hvr-bounce-to-right:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Bounce To Left */
.hvr-bounce-to-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-left:hover, .hvr-bounce-to-left:focus, .hvr-bounce-to-left:active {
  color: white;
}
.hvr-bounce-to-left:hover:before, .hvr-bounce-to-left:focus:before, .hvr-bounce-to-left:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Bounce To Bottom */
.hvr-bounce-to-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-bottom:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-bottom:hover, .hvr-bounce-to-bottom:focus, .hvr-bounce-to-bottom:active {
  color: white;
}
.hvr-bounce-to-bottom:hover:before, .hvr-bounce-to-bottom:focus:before, .hvr-bounce-to-bottom:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Bounce To Top */
.hvr-bounce-to-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-top:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-top:hover, .hvr-bounce-to-top:focus, .hvr-bounce-to-top:active {
  color: white;
}
.hvr-bounce-to-top:hover:before, .hvr-bounce-to-top:focus:before, .hvr-bounce-to-top:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Radial Out */
.hvr-radial-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-radial-out:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  border-radius: 100%;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-radial-out:hover, .hvr-radial-out:focus, .hvr-radial-out:active {
  color: white;
}
.hvr-radial-out:hover:before, .hvr-radial-out:focus:before, .hvr-radial-out:active:before {
  -webkit-transform: scale(2);
  transform: scale(2);
}

/* Radial In */
.hvr-radial-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
  background: #2098D1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-radial-in:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #e1e1e1;
  border-radius: 100%;
  -webkit-transform: scale(2);
  transform: scale(2);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-radial-in:hover, .hvr-radial-in:focus, .hvr-radial-in:active {
  color: white;
}
.hvr-radial-in:hover:before, .hvr-radial-in:focus:before, .hvr-radial-in:active:before {
  -webkit-transform: scale(0);
  transform: scale(0);
}

/* Rectangle In */
.hvr-rectangle-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  background: #2098D1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-rectangle-in:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #e1e1e1;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-rectangle-in:hover, .hvr-rectangle-in:focus, .hvr-rectangle-in:active {
  color: white;
}
.hvr-rectangle-in:hover:before, .hvr-rectangle-in:focus:before, .hvr-rectangle-in:active:before {
  -webkit-transform: scale(0);
  transform: scale(0);
}

/* Rectangle Out */
.hvr-rectangle-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-rectangle-out:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-rectangle-out:hover, .hvr-rectangle-out:focus, .hvr-rectangle-out:active {
  color: white;
}
.hvr-rectangle-out:hover:before, .hvr-rectangle-out:focus:before, .hvr-rectangle-out:active:before {
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* Shutter In Horizontal */
.hvr-shutter-in-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  background: #2098D1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-in-horizontal:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #e1e1e1;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-in-horizontal:hover, .hvr-shutter-in-horizontal:focus, .hvr-shutter-in-horizontal:active {
  color: white;
}
.hvr-shutter-in-horizontal:hover:before, .hvr-shutter-in-horizontal:focus:before, .hvr-shutter-in-horizontal:active:before {
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
}

/* Shutter Out Horizontal */
.hvr-shutter-out-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-out-horizontal:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #2098D1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-out-horizontal:hover, .hvr-shutter-out-horizontal:focus, .hvr-shutter-out-horizontal:active {
  color: white;
}
.hvr-shutter-out-horizontal:hover:before, .hvr-shutter-out-horizontal:focus:before, .hvr-shutter-out-horizontal:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

/* Shutter In Vertical */
.hvr-shutter-in-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  background: #2098D1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-in-vertical:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #e1e1e1;
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-in-vertical:hover, .hvr-shutter-in-vertical:focus, .hvr-shutter-in-vertical:active {
  color: white;
}
.hvr-shutter-in-vertical:hover:before, .hvr-shutter-in-vertical:focus:before, .hvr-shutter-in-vertical:active:before {
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
}

/* Shutter Out Vertical */
.hvr-shutter-out-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-out-vertical:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #2098D1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-out-vertical:hover, .hvr-shutter-out-vertical:focus, .hvr-shutter-out-vertical:active {
  color: white;
}
.hvr-shutter-out-vertical:hover:before, .hvr-shutter-out-vertical:focus:before, .hvr-shutter-out-vertical:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

/* BORDER TRANSITIONS */
/* Border Fade */
.hvr-border-fade {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
  box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.hvr-border-fade:hover, .hvr-border-fade:focus, .hvr-border-fade:active {
  box-shadow: inset 0 0 0 4px #2098D1, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}

/* Hollow */
.hvr-hollow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: background;
  transition-property: background;
  box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.hvr-hollow:hover, .hvr-hollow:focus, .hvr-hollow:active {
  background: none;
}

/* Trim */
.hvr-trim {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-trim:before {
  content: '';
  position: absolute;
  border: white solid 4px;
  top: 4px;
  left: 4px;
  right: 4px;
  bottom: 4px;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
.hvr-trim:hover:before, .hvr-trim:focus:before, .hvr-trim:active:before {
  opacity: 1;
}

/* Ripple Out */
@-webkit-keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}
@keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}
.hvr-ripple-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-ripple-out:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 6px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}
.hvr-ripple-out:hover:before, .hvr-ripple-out:focus:before, .hvr-ripple-out:active:before {
  -webkit-animation-name: hvr-ripple-out;
  animation-name: hvr-ripple-out;
}

/* Ripple In */
@-webkit-keyframes hvr-ripple-in {
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
  }
}
@keyframes hvr-ripple-in {
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
  }
}
.hvr-ripple-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-ripple-in:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 4px;
  top: -12px;
  right: -12px;
  bottom: -12px;
  left: -12px;
  opacity: 0;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}
.hvr-ripple-in:hover:before, .hvr-ripple-in:focus:before, .hvr-ripple-in:active:before {
  -webkit-animation-name: hvr-ripple-in;
  animation-name: hvr-ripple-in;
}

/* Outline Out */
.hvr-outline-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-outline-out:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 4px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: top, right, bottom, left;
  transition-property: top, right, bottom, left;
}
.hvr-outline-out:hover:before, .hvr-outline-out:focus:before, .hvr-outline-out:active:before {
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
}

/* Outline In */
.hvr-outline-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-outline-in:before {
  pointer-events: none;
  content: '';
  position: absolute;
  border: #e1e1e1 solid 4px;
  top: -16px;
  right: -16px;
  bottom: -16px;
  left: -16px;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: top, right, bottom, left;
  transition-property: top, right, bottom, left;
}
.hvr-outline-in:hover:before, .hvr-outline-in:focus:before, .hvr-outline-in:active:before {
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
  opacity: 1;
}

/* Round Corners */
.hvr-round-corners {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: border-radius;
  transition-property: border-radius;
}
.hvr-round-corners:hover, .hvr-round-corners:focus, .hvr-round-corners:active {
  border-radius: 1em;
}

/* Underline From Left */
.hvr-underline-from-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  bottom: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-left:hover:before, .hvr-underline-from-left:focus:before, .hvr-underline-from-left:active:before {
  right: 0;
}

/* Underline From Center */
.hvr-underline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-center:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 51%;
  right: 51%;
  bottom: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {
  left: 0;
  right: 0;
}

/* Underline From Right */
.hvr-underline-from-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 100%;
  right: 0;
  bottom: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transition-property: left;
  transition-property: left;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-right:hover:before, .hvr-underline-from-right:focus:before, .hvr-underline-from-right:active:before {
  left: 0;
}

/* Overline From Left */
.hvr-overline-from-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-overline-from-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  top: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-from-left:hover:before, .hvr-overline-from-left:focus:before, .hvr-overline-from-left:active:before {
  right: 0;
}

/* Overline From Center */
.hvr-overline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-overline-from-center:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 51%;
  right: 51%;
  top: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-from-center:hover:before, .hvr-overline-from-center:focus:before, .hvr-overline-from-center:active:before {
  left: 0;
  right: 0;
}

/* Overline From Right */
.hvr-overline-from-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-overline-from-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 100%;
  right: 0;
  top: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transition-property: left;
  transition-property: left;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-from-right:hover:before, .hvr-overline-from-right:focus:before, .hvr-overline-from-right:active:before {
  left: 0;
}

/* Reveal */
.hvr-reveal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-reveal:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  border-color: #2098D1;
  border-style: solid;
  border-width: 0;
  -webkit-transition-property: border-width;
  transition-property: border-width;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-reveal:hover:before, .hvr-reveal:focus:before, .hvr-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  border-width: 4px;
}

/* Underline Reveal */
.hvr-underline-reveal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-underline-reveal:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-reveal:hover:before, .hvr-underline-reveal:focus:before, .hvr-underline-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* Overline Reveal */
.hvr-overline-reveal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-overline-reveal:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  top: 0;
  background: #2098D1;
  height: 4px;
  -webkit-transform: translateY(-4px);
  transform: translateY(-4px);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-reveal:hover:before, .hvr-overline-reveal:focus:before, .hvr-overline-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* SHADOW/GLOW TRANSITIONS */
/* Glow */
.hvr-glow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
}
.hvr-glow:hover, .hvr-glow:focus, .hvr-glow:active {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}

/* Shadow */
.hvr-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
}
.hvr-shadow:hover, .hvr-shadow:focus, .hvr-shadow:active {
  box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
}

/* Grow Shadow */
.hvr-grow-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow, transform;
  transition-property: box-shadow, transform;
}
.hvr-grow-shadow:hover, .hvr-grow-shadow:focus, .hvr-grow-shadow:active {
  box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Box Shadow Outset */
.hvr-box-shadow-outset {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
}
.hvr-box-shadow-outset:hover, .hvr-box-shadow-outset:focus, .hvr-box-shadow-outset:active {
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.6);
}

/* Box Shadow Inset */
.hvr-box-shadow-inset {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
  box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.6), 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.hvr-box-shadow-inset:hover, .hvr-box-shadow-inset:focus, .hvr-box-shadow-inset:active {
  box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.6), 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}

/* Float Shadow */
.hvr-float-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-float-shadow:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  /* W3C */
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform, opacity;
  transition-property: transform, opacity;
}
.hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
  /* move the element up by 5px */
}
.hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before {
  opacity: 1;
  -webkit-transform: translateY(5px);
  transform: translateY(5px);
  /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */
}

/* Shadow Radial */
.hvr-shadow-radial {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-shadow-radial:before, .hvr-shadow-radial:after {
  pointer-events: none;
  position: absolute;
  content: '';
  left: 0;
  width: 100%;
  box-sizing: border-box;
  background-repeat: no-repeat;
  height: 5px;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
.hvr-shadow-radial:before {
  bottom: 100%;
  background: -webkit-radial-gradient(50% 150%, ellipse, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at 50% 150%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
}
.hvr-shadow-radial:after {
  top: 100%;
  background: -webkit-radial-gradient(50% -50%, ellipse, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at 50% -50%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
}
.hvr-shadow-radial:hover:before, .hvr-shadow-radial:focus:before, .hvr-shadow-radial:active:before, .hvr-shadow-radial:hover:after, .hvr-shadow-radial:focus:after, .hvr-shadow-radial:active:after {
  opacity: 1;
}

/* SPEECH BUBBLES */
/* Bubble Top */
.hvr-bubble-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-bubble-top:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  left: calc(50% - 10px);
  top: 0;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #e1e1e1 transparent;
}
.hvr-bubble-top:hover:before, .hvr-bubble-top:focus:before, .hvr-bubble-top:active:before {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}

/* Bubble Right */
.hvr-bubble-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-bubble-right:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  top: calc(50% - 10px);
  right: 0;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #e1e1e1;
}
.hvr-bubble-right:hover:before, .hvr-bubble-right:focus:before, .hvr-bubble-right:active:before {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

/* Bubble Bottom */
.hvr-bubble-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-bubble-bottom:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  left: calc(50% - 10px);
  bottom: 0;
  border-width: 10px 10px 0 10px;
  border-color: #e1e1e1 transparent transparent transparent;
}
.hvr-bubble-bottom:hover:before, .hvr-bubble-bottom:focus:before, .hvr-bubble-bottom:active:before {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

/* Bubble Left */
.hvr-bubble-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-bubble-left:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  top: calc(50% - 10px);
  left: 0;
  border-width: 10px 10px 10px 0;
  border-color: transparent #e1e1e1 transparent transparent;
}
.hvr-bubble-left:hover:before, .hvr-bubble-left:focus:before, .hvr-bubble-left:active:before {
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}

/* Bubble Float Top */
.hvr-bubble-float-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-top:before {
  position: absolute;
  z-index: -1;
  content: '';
  left: calc(50% - 10px);
  top: 0;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #e1e1e1 transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-top:hover, .hvr-bubble-float-top:focus, .hvr-bubble-float-top:active {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}
.hvr-bubble-float-top:hover:before, .hvr-bubble-float-top:focus:before, .hvr-bubble-float-top:active:before {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}

/* Bubble Float Right */
.hvr-bubble-float-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-right:before {
  position: absolute;
  z-index: -1;
  top: calc(50% - 10px);
  right: 0;
  content: '';
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #e1e1e1;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-right:hover, .hvr-bubble-float-right:focus, .hvr-bubble-float-right:active {
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}
.hvr-bubble-float-right:hover:before, .hvr-bubble-float-right:focus:before, .hvr-bubble-float-right:active:before {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

/* Bubble Float Bottom */
.hvr-bubble-float-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-bottom:before {
  position: absolute;
  z-index: -1;
  content: '';
  left: calc(50% - 10px);
  bottom: 0;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #e1e1e1 transparent transparent transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-bottom:hover, .hvr-bubble-float-bottom:focus, .hvr-bubble-float-bottom:active {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}
.hvr-bubble-float-bottom:hover:before, .hvr-bubble-float-bottom:focus:before, .hvr-bubble-float-bottom:active:before {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

/* Bubble Float Left */
.hvr-bubble-float-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-left:before {
  position: absolute;
  z-index: -1;
  content: '';
  top: calc(50% - 10px);
  left: 0;
  border-style: solid;
  border-width: 10px 10px 10px 0;
  border-color: transparent #e1e1e1 transparent transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-left:hover, .hvr-bubble-float-left:focus, .hvr-bubble-float-left:active {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}
.hvr-bubble-float-left:hover:before, .hvr-bubble-float-left:focus:before, .hvr-bubble-float-left:active:before {
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}

/* ICONS */
/* Icon Back */
.hvr-icon-back {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
}
.hvr-icon-back .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-back:hover .hvr-icon, .hvr-icon-back:focus .hvr-icon, .hvr-icon-back:active .hvr-icon {
  -webkit-transform: translateX(-4px);
  transform: translateX(-4px);
}

/* Icon Forward */
.hvr-icon-forward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
}
.hvr-icon-forward .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-forward:hover .hvr-icon, .hvr-icon-forward:focus .hvr-icon, .hvr-icon-forward:active .hvr-icon {
  -webkit-transform: translateX(4px);
  transform: translateX(4px);
}

/* Icon Down */
@-webkit-keyframes hvr-icon-down {
  0%,
	50%,
	100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
	75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}
@keyframes hvr-icon-down {
  0%,
	50%,
	100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
	75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}
/* Icon Down */
.hvr-icon-down {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-down .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-down:hover .hvr-icon, .hvr-icon-down:focus .hvr-icon, .hvr-icon-down:active .hvr-icon {
  -webkit-animation-name: hvr-icon-down;
  animation-name: hvr-icon-down;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Up */
@-webkit-keyframes hvr-icon-up {
  0%,
	50%,
	100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
	75% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
@keyframes hvr-icon-up {
  0%,
	50%,
	100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
	75% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
/* Icon Up */
.hvr-icon-up {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-up .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-up:hover .hvr-icon, .hvr-icon-up:focus .hvr-icon, .hvr-icon-up:active .hvr-icon {
  -webkit-animation-name: hvr-icon-up;
  animation-name: hvr-icon-up;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Spin */
.hvr-icon-spin {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-spin .hvr-icon {
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}
.hvr-icon-spin:hover .hvr-icon, .hvr-icon-spin:focus .hvr-icon, .hvr-icon-spin:active .hvr-icon {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}

/* Icon Drop */
@-webkit-keyframes hvr-icon-drop {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  51%,
	100% {
    opacity: 1;
  }
}
@keyframes hvr-icon-drop {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  51%,
	100% {
    opacity: 1;
  }
}
/* Icon Drop */
.hvr-icon-drop {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-drop .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-drop:hover .hvr-icon, .hvr-icon-drop:focus .hvr-icon, .hvr-icon-drop:active .hvr-icon {
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-animation-name: hvr-icon-drop;
  animation-name: hvr-icon-drop;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  animation-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Icon Fade */
.hvr-icon-fade {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-fade .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-property: color;
  transition-property: color;
}
.hvr-icon-fade:hover .hvr-icon, .hvr-icon-fade:focus .hvr-icon, .hvr-icon-fade:active .hvr-icon {
  color: #0F9E5E;
}

/* Icon Float Away */
@-webkit-keyframes hvr-icon-float-away {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-1em);
    transform: translateY(-1em);
  }
}
@keyframes hvr-icon-float-away {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-1em);
    transform: translateY(-1em);
  }
}
/* Icon Float Away */
.hvr-icon-float-away {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-float-away .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
.hvr-icon-float-away:hover .hvr-icon, .hvr-icon-float-away:focus .hvr-icon, .hvr-icon-float-away:active .hvr-icon {
  -webkit-animation-name: hvr-icon-float-away;
  animation-name: hvr-icon-float-away;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Sink Away */
@-webkit-keyframes hvr-icon-sink-away {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(1em);
    transform: translateY(1em);
  }
}
@keyframes hvr-icon-sink-away {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(1em);
    transform: translateY(1em);
  }
}
/* Icon Sink Away */
.hvr-icon-sink-away {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-sink-away .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
.hvr-icon-sink-away:hover .hvr-icon, .hvr-icon-sink-away:focus .hvr-icon, .hvr-icon-sink-away:active .hvr-icon {
  -webkit-animation-name: hvr-icon-sink-away;
  animation-name: hvr-icon-sink-away;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Grow */
.hvr-icon-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-grow .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-grow:hover .hvr-icon, .hvr-icon-grow:focus .hvr-icon, .hvr-icon-grow:active .hvr-icon {
  -webkit-transform: scale(1.3) translateZ(0);
  transform: scale(1.3) translateZ(0);
}

/* Icon Shrink */
.hvr-icon-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-shrink .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-shrink:hover .hvr-icon, .hvr-icon-shrink:focus .hvr-icon, .hvr-icon-shrink:active .hvr-icon {
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

/* Icon Pulse */
@-webkit-keyframes hvr-icon-pulse {
  25% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  75% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}
@keyframes hvr-icon-pulse {
  25% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  75% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}
.hvr-icon-pulse {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-pulse .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pulse:hover .hvr-icon, .hvr-icon-pulse:focus .hvr-icon, .hvr-icon-pulse:active .hvr-icon {
  -webkit-animation-name: hvr-icon-pulse;
  animation-name: hvr-icon-pulse;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Icon Pulse Grow */
@-webkit-keyframes hvr-icon-pulse-grow {
  to {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
}
@keyframes hvr-icon-pulse-grow {
  to {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
}
.hvr-icon-pulse-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-pulse-grow .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pulse-grow:hover .hvr-icon, .hvr-icon-pulse-grow:focus .hvr-icon, .hvr-icon-pulse-grow:active .hvr-icon {
  -webkit-animation-name: hvr-icon-pulse-grow;
  animation-name: hvr-icon-pulse-grow;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Icon Pulse Shrink */
@-webkit-keyframes hvr-icon-pulse-shrink {
  to {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}
@keyframes hvr-icon-pulse-shrink {
  to {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}
.hvr-icon-pulse-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-pulse-shrink .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pulse-shrink:hover .hvr-icon, .hvr-icon-pulse-shrink:focus .hvr-icon, .hvr-icon-pulse-shrink:active .hvr-icon {
  -webkit-animation-name: hvr-icon-pulse-shrink;
  animation-name: hvr-icon-pulse-shrink;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Icon Push */
@-webkit-keyframes hvr-icon-push {
  50% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
}
@keyframes hvr-icon-push {
  50% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
}
.hvr-icon-push {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-push .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-push:hover .hvr-icon, .hvr-icon-push:focus .hvr-icon, .hvr-icon-push:active .hvr-icon {
  -webkit-animation-name: hvr-icon-push;
  animation-name: hvr-icon-push;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Pop */
@-webkit-keyframes hvr-icon-pop {
  50% {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
}
@keyframes hvr-icon-pop {
  50% {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
}
.hvr-icon-pop {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-pop .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pop:hover .hvr-icon, .hvr-icon-pop:focus .hvr-icon, .hvr-icon-pop:active .hvr-icon {
  -webkit-animation-name: hvr-icon-pop;
  animation-name: hvr-icon-pop;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Bounce */
.hvr-icon-bounce {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-bounce .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-bounce:hover .hvr-icon, .hvr-icon-bounce:focus .hvr-icon, .hvr-icon-bounce:active .hvr-icon {
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
  -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Icon Rotate */
.hvr-icon-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-rotate .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-rotate:hover .hvr-icon, .hvr-icon-rotate:focus .hvr-icon, .hvr-icon-rotate:active .hvr-icon {
  -webkit-transform: rotate(20deg);
  transform: rotate(20deg);
}

/* Icon Grow Rotate */
.hvr-icon-grow-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-grow-rotate .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-grow-rotate:hover .hvr-icon, .hvr-icon-grow-rotate:focus .hvr-icon, .hvr-icon-grow-rotate:active .hvr-icon {
  -webkit-transform: scale(1.5) rotate(12deg);
  transform: scale(1.5) rotate(12deg);
}

/* Icon Float */
.hvr-icon-float {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-float .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-float:hover .hvr-icon, .hvr-icon-float:focus .hvr-icon, .hvr-icon-float:active .hvr-icon {
  -webkit-transform: translateY(-4px);
  transform: translateY(-4px);
}

/* Icon Sink */
.hvr-icon-sink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-sink .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-sink:hover .hvr-icon, .hvr-icon-sink:focus .hvr-icon, .hvr-icon-sink:active .hvr-icon {
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
}

/* Icon Bob */
@-webkit-keyframes hvr-icon-bob {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
@keyframes hvr-icon-bob {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
@-webkit-keyframes hvr-icon-bob-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
@keyframes hvr-icon-bob-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}
.hvr-icon-bob {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-bob .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-bob:hover .hvr-icon, .hvr-icon-bob:focus .hvr-icon, .hvr-icon-bob:active .hvr-icon {
  -webkit-animation-name: hvr-icon-bob-float, hvr-icon-bob;
  animation-name: hvr-icon-bob-float, hvr-icon-bob;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Icon Hang */
@-webkit-keyframes hvr-icon-hang {
  0% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
  50% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}
@keyframes hvr-icon-hang {
  0% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
  50% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}
@-webkit-keyframes hvr-icon-hang-sink {
  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}
@keyframes hvr-icon-hang-sink {
  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}
.hvr-icon-hang {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-hang .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-hang:hover .hvr-icon, .hvr-icon-hang:focus .hvr-icon, .hvr-icon-hang:active .hvr-icon {
  -webkit-animation-name: hvr-icon-hang-sink, hvr-icon-hang;
  animation-name: hvr-icon-hang-sink, hvr-icon-hang;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Icon Wobble Horizontal */
@-webkit-keyframes hvr-icon-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(6px);
    transform: translateX(6px);
  }
  33.3% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }
  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }
  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes hvr-icon-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(6px);
    transform: translateX(6px);
  }
  33.3% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }
  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }
  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
.hvr-icon-wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-wobble-horizontal .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-wobble-horizontal:hover .hvr-icon, .hvr-icon-wobble-horizontal:focus .hvr-icon, .hvr-icon-wobble-horizontal:active .hvr-icon {
  -webkit-animation-name: hvr-icon-wobble-horizontal;
  animation-name: hvr-icon-wobble-horizontal;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Wobble Vertical */
@-webkit-keyframes hvr-icon-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
  33.3% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }
  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes hvr-icon-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
  33.3% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }
  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
.hvr-icon-wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-wobble-vertical .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-wobble-vertical:hover .hvr-icon, .hvr-icon-wobble-vertical:focus .hvr-icon, .hvr-icon-wobble-vertical:active .hvr-icon {
  -webkit-animation-name: hvr-icon-wobble-vertical;
  animation-name: hvr-icon-wobble-vertical;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Buzz */
@-webkit-keyframes hvr-icon-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}
@keyframes hvr-icon-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}
.hvr-icon-buzz {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-buzz .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-buzz:hover .hvr-icon, .hvr-icon-buzz:focus .hvr-icon, .hvr-icon-buzz:active .hvr-icon {
  -webkit-animation-name: hvr-icon-buzz;
  animation-name: hvr-icon-buzz;
  -webkit-animation-duration: 0.15s;
  animation-duration: 0.15s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Icon Buzz Out */
@-webkit-keyframes hvr-icon-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0);
  }
}
@keyframes hvr-icon-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0);
  }
}
.hvr-icon-buzz-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-buzz-out .hvr-icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-buzz-out:hover .hvr-icon, .hvr-icon-buzz-out:focus .hvr-icon, .hvr-icon-buzz-out:active .hvr-icon {
  -webkit-animation-name: hvr-icon-buzz-out;
  animation-name: hvr-icon-buzz-out;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* CURLS */
/* Curl Top Left */
.hvr-curl-top-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-curl-top-left:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  top: 0;
  left: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(135deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff', endColorstr='#000000');
  /*For IE7-8-9*/
  z-index: 1000;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-top-left:hover:before, .hvr-curl-top-left:focus:before, .hvr-curl-top-left:active:before {
  width: 25px;
  height: 25px;
}

/* Curl Top Right */
.hvr-curl-top-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-curl-top-right:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  top: 0;
  right: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(225deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
  box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-top-right:hover:before, .hvr-curl-top-right:focus:before, .hvr-curl-top-right:active:before {
  width: 25px;
  height: 25px;
}

/* Curl Bottom Right */
.hvr-curl-bottom-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-curl-bottom-right:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  bottom: 0;
  right: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(315deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
  box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-bottom-right:hover:before, .hvr-curl-bottom-right:focus:before, .hvr-curl-bottom-right:active:before {
  width: 25px;
  height: 25px;
}

/* Curl Bottom Left */
.hvr-curl-bottom-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}
.hvr-curl-bottom-left:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  bottom: 0;
  left: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(45deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
  box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-bottom-left:hover:before, .hvr-curl-bottom-left:focus:before, .hvr-curl-bottom-left:active:before {
  width: 25px;
  height: 25px;
}

/*# sourceMappingURL=hover.css.map */

/*! * * * * * * * * * * * * * * * * * * * *\  
  CSShake :: Package
  v1.5.0
  CSS classes to move your DOM
  (c) 2015 @elrumordelaluz
  http://elrumordelaluz.github.io/csshake/
  Licensed under MIT
\* * * * * * * * * * * * * * * * * * * * */
.shake, .shake-little, .shake-slow, .shake-hard, .shake-horizontal, .shake-vertical, .shake-rotate, .shake-opacity, .shake-crazy, .shake-chunk {
  display: inherit;
  transform-origin: center center; }

.shake-freeze,
.shake-constant.shake-constant--hover:hover,
.shake-trigger:hover .shake-constant.shake-constant--hover {
  animation-play-state: paused; }

.shake-freeze:hover,
.shake-trigger:hover .shake-freeze, .shake:hover,
.shake-trigger:hover .shake, .shake-little:hover,
.shake-trigger:hover .shake-little, .shake-slow:hover,
.shake-trigger:hover .shake-slow, .shake-hard:hover,
.shake-trigger:hover .shake-hard, .shake-horizontal:hover,
.shake-trigger:hover .shake-horizontal, .shake-vertical:hover,
.shake-trigger:hover .shake-vertical, .shake-rotate:hover,
.shake-trigger:hover .shake-rotate, .shake-opacity:hover,
.shake-trigger:hover .shake-opacity, .shake-crazy:hover,
.shake-trigger:hover .shake-crazy, .shake-chunk:hover,
.shake-trigger:hover .shake-chunk {
  animation-play-state: running; }

@keyframes shake {
  2% {
    transform: translate(2.5px, 0.5px) rotate(1.5deg); }
  4% {
    transform: translate(1.5px, -1.5px) rotate(1.5deg); }
  6% {
    transform: translate(-1.5px, 1.5px) rotate(1.5deg); }
  8% {
    transform: translate(-0.5px, 1.5px) rotate(1.5deg); }
  10% {
    transform: translate(1.5px, 1.5px) rotate(1.5deg); }
  12% {
    transform: translate(0.5px, 1.5px) rotate(-0.5deg); }
  14% {
    transform: translate(-0.5px, 1.5px) rotate(1.5deg); }
  16% {
    transform: translate(-0.5px, 1.5px) rotate(-0.5deg); }
  18% {
    transform: translate(-1.5px, 2.5px) rotate(1.5deg); }
  20% {
    transform: translate(-1.5px, 2.5px) rotate(-0.5deg); }
  22% {
    transform: translate(0.5px, 1.5px) rotate(-0.5deg); }
  24% {
    transform: translate(1.5px, 2.5px) rotate(0.5deg); }
  26% {
    transform: translate(2.5px, 1.5px) rotate(1.5deg); }
  28% {
    transform: translate(-1.5px, 2.5px) rotate(-0.5deg); }
  30% {
    transform: translate(-1.5px, 1.5px) rotate(-0.5deg); }
  32% {
    transform: translate(0.5px, -1.5px) rotate(-0.5deg); }
  34% {
    transform: translate(-0.5px, 1.5px) rotate(-0.5deg); }
  36% {
    transform: translate(0.5px, 2.5px) rotate(1.5deg); }
  38% {
    transform: translate(1.5px, 0.5px) rotate(1.5deg); }
  40% {
    transform: translate(-1.5px, 0.5px) rotate(1.5deg); }
  42% {
    transform: translate(0.5px, -0.5px) rotate(-0.5deg); }
  44% {
    transform: translate(0.5px, 2.5px) rotate(0.5deg); }
  46% {
    transform: translate(-1.5px, -1.5px) rotate(0.5deg); }
  48% {
    transform: translate(0.5px, -1.5px) rotate(0.5deg); }
  50% {
    transform: translate(2.5px, 2.5px) rotate(1.5deg); }
  52% {
    transform: translate(-0.5px, -0.5px) rotate(1.5deg); }
  54% {
    transform: translate(2.5px, 2.5px) rotate(1.5deg); }
  56% {
    transform: translate(-0.5px, 1.5px) rotate(-0.5deg); }
  58% {
    transform: translate(1.5px, 1.5px) rotate(1.5deg); }
  60% {
    transform: translate(2.5px, 0.5px) rotate(-0.5deg); }
  62% {
    transform: translate(2.5px, 2.5px) rotate(-0.5deg); }
  64% {
    transform: translate(-1.5px, -1.5px) rotate(-0.5deg); }
  66% {
    transform: translate(-1.5px, 2.5px) rotate(1.5deg); }
  68% {
    transform: translate(-0.5px, 1.5px) rotate(-0.5deg); }
  70% {
    transform: translate(1.5px, -1.5px) rotate(-0.5deg); }
  72% {
    transform: translate(-1.5px, -0.5px) rotate(0.5deg); }
  74% {
    transform: translate(2.5px, 1.5px) rotate(-0.5deg); }
  76% {
    transform: translate(0.5px, -0.5px) rotate(1.5deg); }
  78% {
    transform: translate(-1.5px, 1.5px) rotate(1.5deg); }
  80% {
    transform: translate(1.5px, -1.5px) rotate(0.5deg); }
  82% {
    transform: translate(1.5px, 1.5px) rotate(-0.5deg); }
  84% {
    transform: translate(0.5px, 2.5px) rotate(-0.5deg); }
  86% {
    transform: translate(1.5px, 2.5px) rotate(1.5deg); }
  88% {
    transform: translate(0.5px, -0.5px) rotate(0.5deg); }
  90% {
    transform: translate(-0.5px, 0.5px) rotate(-0.5deg); }
  92% {
    transform: translate(-0.5px, 1.5px) rotate(-0.5deg); }
  94% {
    transform: translate(-0.5px, -0.5px) rotate(-0.5deg); }
  96% {
    transform: translate(0.5px, 0.5px) rotate(0.5deg); }
  98% {
    transform: translate(1.5px, -0.5px) rotate(0.5deg); }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake:hover,
.shake-trigger:hover .shake, .shake.shake-freeze, .shake.shake-constant {
  animation-name: shake;
  animation-duration: 100ms;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-little {
  2% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  4% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  6% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  8% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  10% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  12% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  14% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  16% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  18% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  20% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  22% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  24% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  26% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  28% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  30% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  32% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  34% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  36% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  38% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  40% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  42% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  44% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  46% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  48% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  50% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  52% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  54% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  56% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  58% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  60% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  62% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  64% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  66% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  68% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  70% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  72% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  74% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  76% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  78% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  80% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  82% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  84% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  86% {
    transform: translate(0px, 1px) rotate(0.5deg); }
  88% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  90% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  92% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  94% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  96% {
    transform: translate(0px, 0px) rotate(0.5deg); }
  98% {
    transform: translate(1px, 0px) rotate(0.5deg); }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-little:hover,
.shake-trigger:hover .shake-little, .shake-little.shake-freeze, .shake-little.shake-constant {
  animation-name: shake-little;
  animation-duration: 100ms;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-slow {
  2% {
    transform: translate(10px, -5px) rotate(3.5deg); }
  4% {
    transform: translate(6px, -5px) rotate(0.5deg); }
  6% {
    transform: translate(1px, 1px) rotate(1.5deg); }
  8% {
    transform: translate(-6px, 7px) rotate(3.5deg); }
  10% {
    transform: translate(1px, -1px) rotate(3.5deg); }
  12% {
    transform: translate(2px, 10px) rotate(0.5deg); }
  14% {
    transform: translate(5px, 8px) rotate(3.5deg); }
  16% {
    transform: translate(9px, 1px) rotate(1.5deg); }
  18% {
    transform: translate(-2px, 0px) rotate(-0.5deg); }
  20% {
    transform: translate(2px, -2px) rotate(0.5deg); }
  22% {
    transform: translate(-7px, 6px) rotate(0.5deg); }
  24% {
    transform: translate(-2px, 0px) rotate(1.5deg); }
  26% {
    transform: translate(8px, 6px) rotate(0.5deg); }
  28% {
    transform: translate(-6px, 2px) rotate(3.5deg); }
  30% {
    transform: translate(7px, -6px) rotate(2.5deg); }
  32% {
    transform: translate(-7px, -2px) rotate(-1.5deg); }
  34% {
    transform: translate(5px, -4px) rotate(1.5deg); }
  36% {
    transform: translate(-9px, 8px) rotate(-0.5deg); }
  38% {
    transform: translate(-4px, -2px) rotate(-2.5deg); }
  40% {
    transform: translate(1px, -1px) rotate(3.5deg); }
  42% {
    transform: translate(10px, -3px) rotate(-2.5deg); }
  44% {
    transform: translate(6px, 7px) rotate(0.5deg); }
  46% {
    transform: translate(-9px, 10px) rotate(3.5deg); }
  48% {
    transform: translate(-4px, 1px) rotate(-2.5deg); }
  50% {
    transform: translate(-7px, 7px) rotate(2.5deg); }
  52% {
    transform: translate(6px, -4px) rotate(1.5deg); }
  54% {
    transform: translate(1px, 5px) rotate(-1.5deg); }
  56% {
    transform: translate(-9px, 1px) rotate(-0.5deg); }
  58% {
    transform: translate(9px, 3px) rotate(-2.5deg); }
  60% {
    transform: translate(4px, -8px) rotate(3.5deg); }
  62% {
    transform: translate(4px, 9px) rotate(1.5deg); }
  64% {
    transform: translate(5px, 7px) rotate(0.5deg); }
  66% {
    transform: translate(5px, 4px) rotate(2.5deg); }
  68% {
    transform: translate(-9px, -7px) rotate(3.5deg); }
  70% {
    transform: translate(-8px, 3px) rotate(-0.5deg); }
  72% {
    transform: translate(8px, 10px) rotate(0.5deg); }
  74% {
    transform: translate(-1px, 3px) rotate(0.5deg); }
  76% {
    transform: translate(5px, 7px) rotate(2.5deg); }
  78% {
    transform: translate(-9px, 9px) rotate(-2.5deg); }
  80% {
    transform: translate(3px, 10px) rotate(1.5deg); }
  82% {
    transform: translate(-3px, -4px) rotate(0.5deg); }
  84% {
    transform: translate(-3px, -3px) rotate(-2.5deg); }
  86% {
    transform: translate(7px, -1px) rotate(2.5deg); }
  88% {
    transform: translate(-9px, -2px) rotate(-0.5deg); }
  90% {
    transform: translate(10px, -4px) rotate(-1.5deg); }
  92% {
    transform: translate(5px, 6px) rotate(0.5deg); }
  94% {
    transform: translate(6px, -2px) rotate(1.5deg); }
  96% {
    transform: translate(-2px, -3px) rotate(-2.5deg); }
  98% {
    transform: translate(6px, -6px) rotate(2.5deg); }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-slow:hover,
.shake-trigger:hover .shake-slow, .shake-slow.shake-freeze, .shake-slow.shake-constant {
  animation-name: shake-slow;
  animation-duration: 5s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-hard {
  2% {
    transform: translate(1px, -6px) rotate(1.5deg); }
  4% {
    transform: translate(7px, 6px) rotate(-1.5deg); }
  6% {
    transform: translate(1px, 1px) rotate(0.5deg); }
  8% {
    transform: translate(4px, 4px) rotate(-0.5deg); }
  10% {
    transform: translate(8px, -5px) rotate(-1.5deg); }
  12% {
    transform: translate(10px, 4px) rotate(3.5deg); }
  14% {
    transform: translate(2px, 3px) rotate(-2.5deg); }
  16% {
    transform: translate(4px, -8px) rotate(1.5deg); }
  18% {
    transform: translate(-3px, 4px) rotate(1.5deg); }
  20% {
    transform: translate(-8px, 9px) rotate(-2.5deg); }
  22% {
    transform: translate(2px, 3px) rotate(3.5deg); }
  24% {
    transform: translate(-9px, 5px) rotate(2.5deg); }
  26% {
    transform: translate(-5px, -5px) rotate(1.5deg); }
  28% {
    transform: translate(-9px, -6px) rotate(3.5deg); }
  30% {
    transform: translate(8px, 6px) rotate(-1.5deg); }
  32% {
    transform: translate(10px, 5px) rotate(-2.5deg); }
  34% {
    transform: translate(3px, 1px) rotate(0.5deg); }
  36% {
    transform: translate(9px, 9px) rotate(3.5deg); }
  38% {
    transform: translate(-8px, 8px) rotate(3.5deg); }
  40% {
    transform: translate(1px, -1px) rotate(-2.5deg); }
  42% {
    transform: translate(7px, -2px) rotate(2.5deg); }
  44% {
    transform: translate(2px, -4px) rotate(0.5deg); }
  46% {
    transform: translate(-7px, -4px) rotate(1.5deg); }
  48% {
    transform: translate(-3px, 4px) rotate(-1.5deg); }
  50% {
    transform: translate(-4px, 1px) rotate(-0.5deg); }
  52% {
    transform: translate(2px, -2px) rotate(1.5deg); }
  54% {
    transform: translate(-3px, -3px) rotate(-1.5deg); }
  56% {
    transform: translate(6px, 5px) rotate(0.5deg); }
  58% {
    transform: translate(-5px, 2px) rotate(0.5deg); }
  60% {
    transform: translate(3px, -9px) rotate(-0.5deg); }
  62% {
    transform: translate(-8px, -7px) rotate(-1.5deg); }
  64% {
    transform: translate(1px, -6px) rotate(1.5deg); }
  66% {
    transform: translate(4px, 1px) rotate(1.5deg); }
  68% {
    transform: translate(-2px, -7px) rotate(-0.5deg); }
  70% {
    transform: translate(6px, -2px) rotate(1.5deg); }
  72% {
    transform: translate(-3px, -4px) rotate(-2.5deg); }
  74% {
    transform: translate(0px, 8px) rotate(-0.5deg); }
  76% {
    transform: translate(1px, 3px) rotate(2.5deg); }
  78% {
    transform: translate(6px, 5px) rotate(0.5deg); }
  80% {
    transform: translate(-1px, 7px) rotate(-0.5deg); }
  82% {
    transform: translate(9px, 9px) rotate(2.5deg); }
  84% {
    transform: translate(3px, -2px) rotate(-0.5deg); }
  86% {
    transform: translate(1px, -5px) rotate(1.5deg); }
  88% {
    transform: translate(-5px, -9px) rotate(0.5deg); }
  90% {
    transform: translate(-6px, 2px) rotate(-0.5deg); }
  92% {
    transform: translate(-5px, 8px) rotate(1.5deg); }
  94% {
    transform: translate(-4px, 6px) rotate(-2.5deg); }
  96% {
    transform: translate(0px, -8px) rotate(-1.5deg); }
  98% {
    transform: translate(2px, -3px) rotate(-0.5deg); }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-hard:hover,
.shake-trigger:hover .shake-hard, .shake-hard.shake-freeze, .shake-hard.shake-constant {
  animation-name: shake-hard;
  animation-duration: 100ms;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-horizontal {
  2% {
    transform: translate(1px, 0) rotate(0); }
  4% {
    transform: translate(-9px, 0) rotate(0); }
  6% {
    transform: translate(7px, 0) rotate(0); }
  8% {
    transform: translate(-3px, 0) rotate(0); }
  10% {
    transform: translate(3px, 0) rotate(0); }
  12% {
    transform: translate(1px, 0) rotate(0); }
  14% {
    transform: translate(9px, 0) rotate(0); }
  16% {
    transform: translate(6px, 0) rotate(0); }
  18% {
    transform: translate(-5px, 0) rotate(0); }
  20% {
    transform: translate(1px, 0) rotate(0); }
  22% {
    transform: translate(4px, 0) rotate(0); }
  24% {
    transform: translate(-7px, 0) rotate(0); }
  26% {
    transform: translate(-1px, 0) rotate(0); }
  28% {
    transform: translate(6px, 0) rotate(0); }
  30% {
    transform: translate(5px, 0) rotate(0); }
  32% {
    transform: translate(6px, 0) rotate(0); }
  34% {
    transform: translate(9px, 0) rotate(0); }
  36% {
    transform: translate(-3px, 0) rotate(0); }
  38% {
    transform: translate(4px, 0) rotate(0); }
  40% {
    transform: translate(2px, 0) rotate(0); }
  42% {
    transform: translate(6px, 0) rotate(0); }
  44% {
    transform: translate(6px, 0) rotate(0); }
  46% {
    transform: translate(1px, 0) rotate(0); }
  48% {
    transform: translate(-3px, 0) rotate(0); }
  50% {
    transform: translate(2px, 0) rotate(0); }
  52% {
    transform: translate(7px, 0) rotate(0); }
  54% {
    transform: translate(3px, 0) rotate(0); }
  56% {
    transform: translate(10px, 0) rotate(0); }
  58% {
    transform: translate(1px, 0) rotate(0); }
  60% {
    transform: translate(1px, 0) rotate(0); }
  62% {
    transform: translate(10px, 0) rotate(0); }
  64% {
    transform: translate(4px, 0) rotate(0); }
  66% {
    transform: translate(7px, 0) rotate(0); }
  68% {
    transform: translate(-9px, 0) rotate(0); }
  70% {
    transform: translate(-9px, 0) rotate(0); }
  72% {
    transform: translate(4px, 0) rotate(0); }
  74% {
    transform: translate(-1px, 0) rotate(0); }
  76% {
    transform: translate(-8px, 0) rotate(0); }
  78% {
    transform: translate(-5px, 0) rotate(0); }
  80% {
    transform: translate(2px, 0) rotate(0); }
  82% {
    transform: translate(10px, 0) rotate(0); }
  84% {
    transform: translate(0px, 0) rotate(0); }
  86% {
    transform: translate(-7px, 0) rotate(0); }
  88% {
    transform: translate(-2px, 0) rotate(0); }
  90% {
    transform: translate(6px, 0) rotate(0); }
  92% {
    transform: translate(-9px, 0) rotate(0); }
  94% {
    transform: translate(-7px, 0) rotate(0); }
  96% {
    transform: translate(6px, 0) rotate(0); }
  98% {
    transform: translate(8px, 0) rotate(0); }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-horizontal:hover,
.shake-trigger:hover .shake-horizontal, .shake-horizontal.shake-freeze, .shake-horizontal.shake-constant {
  animation-name: shake-horizontal;
  animation-duration: 100ms;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-vertical {
  2% {
    transform: translate(0, 1px) rotate(0); }
  4% {
    transform: translate(0, 0px) rotate(0); }
  6% {
    transform: translate(0, -7px) rotate(0); }
  8% {
    transform: translate(0, -4px) rotate(0); }
  10% {
    transform: translate(0, -9px) rotate(0); }
  12% {
    transform: translate(0, 2px) rotate(0); }
  14% {
    transform: translate(0, 10px) rotate(0); }
  16% {
    transform: translate(0, -9px) rotate(0); }
  18% {
    transform: translate(0, -6px) rotate(0); }
  20% {
    transform: translate(0, 1px) rotate(0); }
  22% {
    transform: translate(0, 9px) rotate(0); }
  24% {
    transform: translate(0, -3px) rotate(0); }
  26% {
    transform: translate(0, -9px) rotate(0); }
  28% {
    transform: translate(0, -6px) rotate(0); }
  30% {
    transform: translate(0, -9px) rotate(0); }
  32% {
    transform: translate(0, 2px) rotate(0); }
  34% {
    transform: translate(0, -1px) rotate(0); }
  36% {
    transform: translate(0, -2px) rotate(0); }
  38% {
    transform: translate(0, 9px) rotate(0); }
  40% {
    transform: translate(0, -4px) rotate(0); }
  42% {
    transform: translate(0, -7px) rotate(0); }
  44% {
    transform: translate(0, 9px) rotate(0); }
  46% {
    transform: translate(0, 1px) rotate(0); }
  48% {
    transform: translate(0, 4px) rotate(0); }
  50% {
    transform: translate(0, 10px) rotate(0); }
  52% {
    transform: translate(0, -9px) rotate(0); }
  54% {
    transform: translate(0, 4px) rotate(0); }
  56% {
    transform: translate(0, -5px) rotate(0); }
  58% {
    transform: translate(0, 1px) rotate(0); }
  60% {
    transform: translate(0, -5px) rotate(0); }
  62% {
    transform: translate(0, -1px) rotate(0); }
  64% {
    transform: translate(0, -9px) rotate(0); }
  66% {
    transform: translate(0, 0px) rotate(0); }
  68% {
    transform: translate(0, -3px) rotate(0); }
  70% {
    transform: translate(0, -3px) rotate(0); }
  72% {
    transform: translate(0, -5px) rotate(0); }
  74% {
    transform: translate(0, 4px) rotate(0); }
  76% {
    transform: translate(0, 9px) rotate(0); }
  78% {
    transform: translate(0, -1px) rotate(0); }
  80% {
    transform: translate(0, 6px) rotate(0); }
  82% {
    transform: translate(0, -9px) rotate(0); }
  84% {
    transform: translate(0, 5px) rotate(0); }
  86% {
    transform: translate(0, 2px) rotate(0); }
  88% {
    transform: translate(0, -1px) rotate(0); }
  90% {
    transform: translate(0, -5px) rotate(0); }
  92% {
    transform: translate(0, 9px) rotate(0); }
  94% {
    transform: translate(0, 4px) rotate(0); }
  96% {
    transform: translate(0, 8px) rotate(0); }
  98% {
    transform: translate(0, -5px) rotate(0); }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-vertical:hover,
.shake-trigger:hover .shake-vertical, .shake-vertical.shake-freeze, .shake-vertical.shake-constant {
  animation-name: shake-vertical;
  animation-duration: 100ms;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-rotate {
  2% {
    transform: translate(0, 0) rotate(3.5deg); }
  4% {
    transform: translate(0, 0) rotate(-2.5deg); }
  6% {
    transform: translate(0, 0) rotate(-2.5deg); }
  8% {
    transform: translate(0, 0) rotate(5.5deg); }
  10% {
    transform: translate(0, 0) rotate(3.5deg); }
  12% {
    transform: translate(0, 0) rotate(1.5deg); }
  14% {
    transform: translate(0, 0) rotate(-5.5deg); }
  16% {
    transform: translate(0, 0) rotate(4.5deg); }
  18% {
    transform: translate(0, 0) rotate(7.5deg); }
  20% {
    transform: translate(0, 0) rotate(2.5deg); }
  22% {
    transform: translate(0, 0) rotate(7.5deg); }
  24% {
    transform: translate(0, 0) rotate(-4.5deg); }
  26% {
    transform: translate(0, 0) rotate(-2.5deg); }
  28% {
    transform: translate(0, 0) rotate(0.5deg); }
  30% {
    transform: translate(0, 0) rotate(-3.5deg); }
  32% {
    transform: translate(0, 0) rotate(6.5deg); }
  34% {
    transform: translate(0, 0) rotate(-0.5deg); }
  36% {
    transform: translate(0, 0) rotate(-6.5deg); }
  38% {
    transform: translate(0, 0) rotate(1.5deg); }
  40% {
    transform: translate(0, 0) rotate(2.5deg); }
  42% {
    transform: translate(0, 0) rotate(-4.5deg); }
  44% {
    transform: translate(0, 0) rotate(-6.5deg); }
  46% {
    transform: translate(0, 0) rotate(-6.5deg); }
  48% {
    transform: translate(0, 0) rotate(7.5deg); }
  50% {
    transform: translate(0, 0) rotate(-0.5deg); }
  52% {
    transform: translate(0, 0) rotate(-2.5deg); }
  54% {
    transform: translate(0, 0) rotate(-2.5deg); }
  56% {
    transform: translate(0, 0) rotate(-5.5deg); }
  58% {
    transform: translate(0, 0) rotate(5.5deg); }
  60% {
    transform: translate(0, 0) rotate(5.5deg); }
  62% {
    transform: translate(0, 0) rotate(3.5deg); }
  64% {
    transform: translate(0, 0) rotate(-0.5deg); }
  66% {
    transform: translate(0, 0) rotate(4.5deg); }
  68% {
    transform: translate(0, 0) rotate(0.5deg); }
  70% {
    transform: translate(0, 0) rotate(-5.5deg); }
  72% {
    transform: translate(0, 0) rotate(-3.5deg); }
  74% {
    transform: translate(0, 0) rotate(1.5deg); }
  76% {
    transform: translate(0, 0) rotate(7.5deg); }
  78% {
    transform: translate(0, 0) rotate(-1.5deg); }
  80% {
    transform: translate(0, 0) rotate(-1.5deg); }
  82% {
    transform: translate(0, 0) rotate(5.5deg); }
  84% {
    transform: translate(0, 0) rotate(1.5deg); }
  86% {
    transform: translate(0, 0) rotate(3.5deg); }
  88% {
    transform: translate(0, 0) rotate(1.5deg); }
  90% {
    transform: translate(0, 0) rotate(3.5deg); }
  92% {
    transform: translate(0, 0) rotate(-0.5deg); }
  94% {
    transform: translate(0, 0) rotate(0.5deg); }
  96% {
    transform: translate(0, 0) rotate(4.5deg); }
  98% {
    transform: translate(0, 0) rotate(1.5deg); }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-rotate:hover,
.shake-trigger:hover .shake-rotate, .shake-rotate.shake-freeze, .shake-rotate.shake-constant {
  animation-name: shake-rotate;
  animation-duration: 100ms;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-opacity {
  10% {
    transform: translate(5px, 2px) rotate(0.5deg);
    opacity: 0.41; }
  20% {
    transform: translate(0px, -4px) rotate(0.5deg);
    opacity: 0.62; }
  30% {
    transform: translate(0px, -3px) rotate(-1.5deg);
    opacity: 0.19; }
  40% {
    transform: translate(-1px, 3px) rotate(2.5deg);
    opacity: 0.37; }
  50% {
    transform: translate(-3px, 3px) rotate(-0.5deg);
    opacity: 0.79; }
  60% {
    transform: translate(0px, 3px) rotate(-1.5deg);
    opacity: 0.94; }
  70% {
    transform: translate(-4px, 1px) rotate(1.5deg);
    opacity: 0.11; }
  80% {
    transform: translate(-1px, 1px) rotate(2.5deg);
    opacity: 0.75; }
  90% {
    transform: translate(0px, 1px) rotate(1.5deg);
    opacity: 0.51; }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-opacity:hover,
.shake-trigger:hover .shake-opacity, .shake-opacity.shake-freeze, .shake-opacity.shake-constant {
  animation-name: shake-opacity;
  animation-duration: 0.5s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-crazy {
  10% {
    transform: translate(19px, -19px) rotate(1deg);
    opacity: 0.4; }
  20% {
    transform: translate(-3px, 8px) rotate(-9deg);
    opacity: 0.74; }
  30% {
    transform: translate(12px, 15px) rotate(-3deg);
    opacity: 0.18; }
  40% {
    transform: translate(9px, -9px) rotate(0deg);
    opacity: 0.82; }
  50% {
    transform: translate(13px, -8px) rotate(8deg);
    opacity: 0.46; }
  60% {
    transform: translate(-3px, -9px) rotate(3deg);
    opacity: 0.57; }
  70% {
    transform: translate(-8px, -4px) rotate(5deg);
    opacity: 0.09; }
  80% {
    transform: translate(-9px, -17px) rotate(8deg);
    opacity: 0.94; }
  90% {
    transform: translate(-19px, 19px) rotate(1deg);
    opacity: 0.52; }
  0%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-crazy:hover,
.shake-trigger:hover .shake-crazy, .shake-crazy.shake-freeze, .shake-crazy.shake-constant {
  animation-name: shake-crazy;
  animation-duration: 100ms;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

@keyframes shake-chunk {
  2% {
    transform: translate(-13px, 10px) rotate(3deg); }
  4% {
    transform: translate(-10px, -11px) rotate(7deg); }
  6% {
    transform: translate(2px, -4px) rotate(3deg); }
  8% {
    transform: translate(-13px, -1px) rotate(6deg); }
  10% {
    transform: translate(-9px, 1px) rotate(11deg); }
  12% {
    transform: translate(8px, 4px) rotate(15deg); }
  14% {
    transform: translate(3px, 15px) rotate(9deg); }
  16% {
    transform: translate(-4px, -9px) rotate(-4deg); }
  18% {
    transform: translate(3px, -12px) rotate(0deg); }
  20% {
    transform: translate(11px, -4px) rotate(-9deg); }
  22% {
    transform: translate(3px, -13px) rotate(5deg); }
  24% {
    transform: translate(-7px, 7px) rotate(6deg); }
  26% {
    transform: translate(3px, -9px) rotate(-13deg); }
  28% {
    transform: translate(1px, 4px) rotate(13deg); }
  30% {
    transform: translate(-2px, 5px) rotate(13deg); }
  32% {
    transform: translate(-6px, -5px) rotate(-11deg); }
  34% {
    transform: translate(-6px, -10px) rotate(-11deg); }
  36% {
    transform: translate(-12px, 13px) rotate(-14deg); }
  38% {
    transform: translate(6px, -8px) rotate(7deg); }
  0%, 40%, 100% {
    transform: translate(0, 0) rotate(0); } }

.shake-chunk:hover,
.shake-trigger:hover .shake-chunk, .shake-chunk.shake-freeze, .shake-chunk.shake-constant {
  animation-name: shake-chunk;
  animation-duration: 4s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; }

