

/* Start:/local/templates/invar/assets/css/style.css?1765358340386262*/
@charset 'UTF-8';

@font-face
{
    font-family: 'Aktiv Grotesk Corp';
    font-weight: 300;
    font-style: normal;

    src: url('/local/templates/invar/assets/css/../fonts/AktivGroteskCorp-Light.woff') format('woff');
}

@font-face
{
    font-family: 'Aktiv Grotesk Corp';
    font-weight: normal;
    font-style: normal;

    src: url('/local/templates/invar/assets/css/../fonts/AktivGroteskCorp-Regular.woff') format('woff');
}

*
{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

*:before,
*:after
{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

body
{
    font-family: 'Aktiv Grotesk Corp', sans-serif;
    font-size: 18px;
    font-weight: normal;
    line-height: 140%;

    width: 100%;

    color: #333;
    background-color: #fff;
}

body.modal
{
    overflow: hidden;
}

header,
main,
footer
{
    width: 100%;
}

input,
button,
button:focus,
textarea
{
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;

    outline: none;
}

ul,
li,
ol
{
    margin: 0;
    padding: 0;

    list-style: none;
}

a
{
    text-decoration: none;

    color: #0d397f;
}

a:hover
{
    color: #5e7dae;
}

a:hover,
a:focus
{
    text-decoration: none;
}

img
{
    max-width: 100%;
    height: auto;

    vertical-align: middle;
}

sup
{
    font-size: 40%;

    top: -1em;
}

.sr-only
{
    position: absolute;

    overflow: hidden;
    clip: rect(0, 0, 0, 0);

    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;

    border: 0;
}

.link
{
    font-size: 16px;
    line-height: 130%;

    position: relative;

    display: inline-block;

    padding-right: 28.5px;
}
.article__wrapper_img{
    max-width: 600px;
    padding: 0 0 30px;
}
.article__wrapper_img img{}
.article__wrapper_img_bot{}
.article__wrapper_img_top{
}
.link:after
{
    position: absolute;
    top: 50%;
    right: 0;

    width: 16px;
    height: 13.5px;
    margin-top: -8px;

    content: '';
    -webkit-transition: .2s;
       -moz-transition: .2s;
         -o-transition: .2s;
            transition: .2s;
}

.link:hover:after
{
    right: -5px;
}

.link--white
{
    color: #fff;
}

.link--white:after
{
    background: url(/local/templates/invar/assets/css/../img/arrow-right-white.svg) 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.link--white:hover
{
    opacity: .7;
    color: #fff;
}

.link--blue:after
{
    background: url(/local/templates/invar/assets/css/../img/arrow-right-blue.svg) 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.link--blue:hover
{
    opacity: .7;
    color: #0d397f;
}

.btn
{
    position: relative;

    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 320px;
    height: 68px;

    background: #0d397f;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
}

.btn:after
{
    position: absolute;
    top: 50%;
    right: 24px;

    width: 20px;
    height: 17px;
    margin-top: -8.5px;

    content: '';

    background: url(/local/templates/invar/assets/css/../img/arrow-right-white.svg) 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.btn:hover
{
    background: #5e7dae;
}

.btn span
{
    font-size: 20px;
    line-height: 140%;

    color: #fff;
}

.btn--white
{
    background: #fff;
}

.btn--white:hover
{
    background: rgba(255, 255, 255, .8);
}

.btn--white:after
{
    background: url(/local/templates/invar/assets/css/../img/arrow-right-blue.svg) 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.btn--white span
{
    color: #0d397f;
}

.btn--small
{
    width: 200px;
    height: 42px;
    padding-right: 19px;
}

.btn--small span
{
    font-size: 15px;
    line-height: 140%;
}

.btn--small:after
{
    top: 50%;
    right: 13px;

    width: 16px;
    height: 13.5px;
    margin-top: -7px;
}

.btn--medium
{
    width: 220px;
    height: 42px;
    padding-right: 29px;
}

.btn--medium span
{
    font-size: 16px;
    line-height: 140%;
}

.btn--medium:after
{
    top: 50%;
    right: 13px;

    width: 16px;
    height: 13.5px;
    margin-top: -7px;
}

.btn--disabled
{
    pointer-events: none;

    background: #e6e6e6;
}

.btn--disabled:after
{
    display: none;
}

/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

/* Document
   ========================================================================== */

html
{
    font-family: sans-serif;
    /* 1 */
    line-height: 1.15;
    /* 2 */

        -ms-text-size-adjust: 100%;
    /* 3 */
    -webkit-text-size-adjust: 100%;
    /* 3 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body
{
    margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section
{
    display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1
{
    font-size: 2em;

    margin: .67em 0;
}

h1,
h2,
h3,
h4,
h5,
h6
{
    font-weight: normal;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main
{
    /* 1 */
    display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure
{
    margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr
{
    /* 1 */
    overflow: visible;

    -webkit-box-sizing: content-box;
       -moz-box-sizing: content-box;
            box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 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
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a
{
    background-color: transparent;
    /* 1 */

    -webkit-text-decoration-skip: objects;
    /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover
{
    outline-width: 0;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title]
{
    /* 1 */
            text-decoration: underline;
            text-decoration: underline dotted;

    border-bottom: none;
    /* 2 */

    -webkit-text-decoration: underline dotted;
       -moz-text-decoration: underline dotted;
    /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong
{
    font-weight: inherit;
}

/**
 * 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 style in Android 4.3-.
 */

dfn
{
    font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark
{
    color: #000;
    background-color: #ff0;
}

/**
 * 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: -.25em;
}

sup
{
    top: -.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video
{
    display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls])
{
    display: none;

    height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img
{
    border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root)
{
    overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
textarea
{
    font-family: sans-serif;
    /* 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;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type='button'],
[type='reset'],
[type='submit']
{
    -webkit-appearance: button;
    /* 2 */
}

/**
 * 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
{
    padding: 0;

    border-style: none;
}

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

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset
{
    margin: 0 2px;
    padding: .35em .625em .75em;

    border: 1px solid #c0c0c0;
}

/**
 * 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
{
    /* 2 */
    display: table;

    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */

    white-space: normal;
    /* 1 */

    color: inherit;
    /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress
{
    display: inline-block;
    /* 1 */

    vertical-align: baseline;
    /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea
{
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type='checkbox'],
[type='radio']
{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            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']
{
    /* 1 */
    outline-offset: -2px;

    -webkit-appearance: textfield;
    /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type='search']::-webkit-search-cancel-button,
[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
{
    /* 1 */
    font: inherit;

    -webkit-appearance: button;
    /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details,
menu
{
    display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary
{
    display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas
{
    display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template
{
    display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden]
{
    display: none;
}

/* Header
   ========================================================================== */

.header
{
    overflow: hidden;
}

.header__top
{
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;

    width: 100%;
    height: 70px;

    border-bottom: 1px solid rgba(242, 242, 242, .8);
    background-color: #fff;
}

.header__top-wrapper
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    margin: 0 auto;
    padding-right: 40px;
    padding-left: 40px;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.header__wrapper
{
    padding-top: 70px;
}

.header__map
{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;

    width: 100%;
    height: 920px;
}

.header__logo
{
    display: block;

    width: 150px;
    height: 23px;
}

.header__logo img
{
    display: block;
}

.header__copyright
{
    display: none;
}

.header__title
{
    max-width: 816px;
    margin-top: 0;
}

.header__text
{
    margin-top: 0;
}

.header__twoCols
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.header--main
{
    background: #fff url(/local/templates/invar/assets/css/../img/main-top-banner.jpg) center center no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--main .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 205px;
}

.header--main .header__info
{
    width: 712px;
    padding-top: 47px;
    padding-right: 92px;
    padding-bottom: 55px;
    padding-left: 40px;

    background-color: rgba(13, 57, 127, .6);
}

.header--main .header__title
{
    font-size: 48px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 30px;

    color: #fff;
}

.header--main .header__text
{
    font-size: 20px;
    line-height: 140%;

    margin-bottom: 46px;

    color: #fff;
}

.header--mission
{
    background: #fff url(/local/templates/invar/assets/css/../img/mission-top-banner.jpg) center center no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--mission .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--mission .header__info
{
    padding-top: 86px;
    padding-bottom: 65px;
}

.header--mission .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 29px;

    letter-spacing: -.02em;

    color: #0d397f;
}

.header--mission .header__text
{
    font-size: 18px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #262626;
}

.header--history
{
    position: relative;

    background: #fff url(/local/templates/invar/assets/css/../img/history-top-banner.jpg) center 0 no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--history:after
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background-color: rgba(13, 57, 127, .75);
}

.header--history .breadcrumbs__section
{
    color: #fff;
}

.header--history .breadcrumbs__section:hover
{
    color: rgba(255, 255, 255, .3);
}

.header--history .breadcrumbs__active
{
    color: rgba(255, 255, 255, .3);
}

.header--history .header__wrapper
{
    position: relative;
    z-index: 1;
}

.header--history .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--history .header__info
{
    padding-top: 86px;
}

.header--history .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 29px;

    letter-spacing: -.02em;

    color: #fff;
}

.header--history .header__text
{
    font-size: 18px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #fff;
}

.header--ethics
{
    position: relative;

    background: #fff url(/local/templates/invar/assets/css/../img/ethics-top-banner.jpg) center 0 no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--ethics:after
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background-color: rgba(13, 57, 127, .75);
}

.header--ethics .breadcrumbs__section
{
    color: #fff;
}

.header--ethics .breadcrumbs__section:hover
{
    color: rgba(255, 255, 255, .3);
}

.header--ethics .breadcrumbs__active
{
    color: rgba(255, 255, 255, .3);
}

.header--ethics .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--ethics .header__wrapper
{
    position: relative;
    z-index: 1;
}

.header--ethics .header__info
{
    padding-top: 86px;
    padding-bottom: 49px;
}

.header--ethics .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 40px;

    letter-spacing: -.02em;

    color: #fff;
}

.header--ethics .header__text
{
    font-size: 20px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #fff;
}

.header--career
{
    background: #fff url(/local/templates/invar/assets/css/../img/career-top-banner.jpg) center 70px no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--career .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--career .header__info
{
    padding-top: 86px;
    padding-bottom: 56px;
}

.header--career .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 40px;

    letter-spacing: -.02em;

    color: #0d397f;
}

.header--career .header__text
{
    font-size: 20px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #333;
}

.header--vacancies
{
    background-color: #fff;
}

.header--vacancies .header__bottom
{
    position: relative;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--vacancies .header__bottom .search-btn
{
    right: 40px;
    bottom: 60px;
}

.header--vacancies .header__info
{
    padding-top: 66px;
    padding-bottom: 39px;
}

.header--vacancies .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 0;

    letter-spacing: -.02em;

    color: #0d397f;
}

.header--profile
{
    background-color: #fff;
}

.header--profile .header__bottom
{
    position: relative;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--profile .header__info
{
    padding-top: 46px;
    padding-bottom: 30px;
}

.header--profile .header__title
{
    font-size: 48px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 0;

    color: #0d397f;
}

.header--404
{
    background-color: #fff;
}

.header--404 .header__bottom
{
    position: relative;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--404 .header__info
{
    padding-top: 258px;
    padding-bottom: 373px;
}

.header--404 .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    max-width: 100%;
    margin-bottom: 40px;

    letter-spacing: -.02em;

    color: #0d397f;
}

.header--404 .header__text
{
    font-size: 18px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #333;
}

.header--vacancy
{
    background-color: #fff;
}

.header--vacancy .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--vacancy .header__info
{
    padding-top: 30px;
    padding-bottom: 60px;
}

.header--vacancy .header__title
{
    font-size: 48px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 0;

    color: #0d397f;
}

.header--contacts
{
    position: relative;
    z-index: 10;
}

.header--contacts .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-top: 475px;
    padding-right: 40px;
    padding-left: 40px;
    padding-left: 0;
}

.header--contacts .header__top
{
    pointer-events: auto;
}

.header--contacts .header__wrapper
{
    position: relative;
    z-index: 20;

    pointer-events: none;
}

.header--contacts .header__info
{
    position: relative;
    z-index: 10;

    width: 712px;
    padding-top: 52px;
    padding-right: 110px;
    padding-bottom: 101px;
    padding-left: 40px;

    pointer-events: auto;

    background-color: #fff;
}

.header--contacts .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 262px;
    padding-left: 40px;

    letter-spacing: -.02em;

    color: #fff;
}

.header--contacts .header__twoCols p
{
    font-size: 18px;
    line-height: 140%;

    margin: 0;

    color: #262626;
}

.header--agreement
{
    background-color: #fff;
}

.header--agreement .header__bottom
{
    position: relative;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--agreement .header__info
{
    padding-top: 30px;
    padding-bottom: 32px;
}

.header--agreement .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;
    margin-bottom: 0;
    letter-spacing: -.02em;
    color: #0d397f;
    margin: 0 auto;
    max-width: 1000px;
}

.header--news
{
    background-color: #fff;
}

.header--news .header__bottom
{
    position: relative;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--news .header__bottom .search-btn
{
    right: 40px;
    bottom: 55px;
}

.header--news .header__info
{
    padding-top: 110px;
    padding-bottom: 20px;
}

.header--news .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    max-width: -webkit-calc(100% - 150px);
    max-width:    -moz-calc(100% - 150px);
    max-width:         calc(100% - 150px);
    margin-bottom: 0;

    letter-spacing: -.02em;

    color: #0d397f;
}

.header--singleNews
{
    background-color: #fff;
}

.header--singleNews .header__bottom
{
    position: relative;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--singleNews .header__info
{
    padding-top: 30px;
    padding-bottom: 50px;
}

.header--singleNews .header__title
{
    font-size: 48px;
    font-weight: 300;
    line-height: 120%;

    margin-bottom: 0;

    color: #0d397f;
}

.header--products
{
    background-color: #fff;
}

.header--products .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--products .header__info
{
    padding-top: 66px;
    padding-bottom: 39px;
}

.header--products .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 0;

    letter-spacing: -.02em;

    color: #0d397f;
}

.header--gynecology
{
    position: relative;
}

.header--gynecology:before
{
    position: absolute;
    z-index: -1;
    top: 70px;
    left: 0;

    width: 100%;
    height: -webkit-calc(100% - 70px);
    height:    -moz-calc(100% - 70px);
    height:         calc(100% - 70px);

    content: '';

    background: #fff url(/local/templates/invar/assets/css/../img/gynecology-top-banner.jpg) center 0 no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--gynecology .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--gynecology .header__info
{
    padding-top: 86px;
    padding-bottom: 50px;
}

.header--gynecology .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 40px;

    letter-spacing: -.02em;

    color: #fff;
}

.header--gynecology .header__text
{
    font-size: 18px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #fff;
}

.header--gynecology .breadcrumbs__section
{
    color: #fff;
}

.header--gynecology .breadcrumbs__active,
.header--gynecology .breadcrumbs__divider
{
    color: #bdbdbd;
}

.header--pediatrics
{
    position: relative;
}

.header--pediatrics:before
{
    position: absolute;
    z-index: -1;
    top: 70px;
    left: 0;

    width: 100%;
    height: -webkit-calc(100% - 70px);
    height:    -moz-calc(100% - 70px);
    height:         calc(100% - 70px);

    content: '';

    background: #fff url(/local/templates/invar/assets/css/../img/pediatrics-top-banner.jpg) center 0 no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--pediatrics .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--pediatrics .header__info
{
    padding-top: 86px;
    padding-bottom: 75px;
}

.header--pediatrics .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 40px;

    letter-spacing: -.02em;

    color: #fff;
}

.header--pediatrics .header__text
{
    font-size: 18px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #fff;
}

.header--pediatrics .breadcrumbs__section
{
    color: #fff;
}

.header--pediatrics .breadcrumbs__active,
.header--pediatrics .breadcrumbs__divider
{
    color: #bdbdbd;
}

.header--dermatology
{
    position: relative;
}

.header--dermatology:before
{
    position: absolute;
    z-index: -1;
    top: 70px;
    left: 0;

    width: 100%;
    height: -webkit-calc(100% - 70px);
    height:    -moz-calc(100% - 70px);
    height:         calc(100% - 70px);

    content: '';

    background: #fff url(/local/templates/invar/assets/css/../img/dermatology-top-banner.jpg) center 0 no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.header--dermatology .header__bottom
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.header--dermatology .header__info
{
    padding-top: 86px;
    padding-bottom: 25px;
}

.header--dermatology .header__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    margin-bottom: 40px;

    letter-spacing: -.02em;

    color: #0d397f;
}

.header--dermatology .header__text
{
    font-size: 18px;
    line-height: 140%;

    max-width: 465px;
    margin-top: 0;
    margin-bottom: 0;

    color: #262626;
}

.header--dermatology .breadcrumbs__section
{
    color: #828282;
}

.header--dermatology .breadcrumbs__section:hover
{
    opacity: .8;
    color: #828282;
}

.header--dermatology .breadcrumbs__active,
.header--dermatology .breadcrumbs__divider
{
    color: #e0e0e0;
}

/* footer
   ========================================================================== */

.footer
{
    overflow: hidden;
}

.footer__wrapper
{
    position: relative;

    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 48px;
    padding-right: 40px;
    padding-bottom: 15px;
    padding-left: 40px;
}

.footer__wrapper:before
{
    position: absolute;
    top: 0;
    left: 50%;

    width: -webkit-calc(100% - 80px);
    width:    -moz-calc(100% - 80px);
    width:         calc(100% - 80px);
    height: 1px;

    content: '';
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);

    background-color: #e6e6e6;
}

.footer__top
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    padding-bottom: 50px;
}

.footer__bottom
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
}

.footer__copyright
{
    font-size: 13px;
    line-height: 15px;

    width: 398px;

    color: #828282;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.footer__author
{
    font-size: 13px;
    line-height: 15px;

    color: #828282;
}

.footer__author a
{
    color: #bdbdbd;
}

.footer__author a:hover
{
    color: #828282;
}

.footer__info
{
    width: 398px;
    padding-right: 127px;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.footer__logo
{
    display: block;

    margin-bottom: 56px;
}

.footer__logo img
{
    display: block;

    width: 120px;
}

.footer__desc
{
    font-size: 13px;
    line-height: 135%;

    margin: 0;

    color: #828282;
}

.footer__inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.footer__col
{
    width: 240px;
    width: auto;
    max-width: 240px;
    margin-right: 0;
    padding-right: 30px;
}

.footer__col li
{
    font-size: 14px;
    line-height: 120%;

    margin-bottom: 8px;

    letter-spacing: -.01em;

    color: #333;
}

.footer__col li:first-child
{
    font-size: 14px;
    line-height: 16px;

    margin-bottom: 15px;

    letter-spacing: -.01em;

    color: #828282;
}

.footer__col li a
{
    color: #333;
}

.footer__col li a:hover
{
    color: #0d397f;
}

.footer__col li:last-child
{
    margin-bottom: 0;
}

.footer__col:nth-child(3)
{
    margin-right: 0;
}

.footer__col:last-child
{
    margin-right: 0;
    padding-right: 0;
}

.footer__col:last-child li:last-child
{
    font-size: 14px;
    line-height: 130%;

    letter-spacing: -.01em;

    color: #4f4f4f;
}

.footer__col:last-child li:last-child address
{
    font-style: normal;
}

/* Nav
   ========================================================================== */

.nav
{
    font-size: 16px;
    line-height: 130%;
}

.nav__open
{
    position: absolute;
    z-index: 100;
    top: 15px;
    right: 15px;

    display: none;

    width: 20px;
    height: 20px;

    cursor: pointer;

    background: url(/local/templates/invar/assets/css/../img/burger.svg) 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.nav__close
{
    position: absolute;
    top: 15px;
    right: 15px;

    display: none;

    width: 20px;
    height: 20px;

    cursor: pointer;

    background: url(/local/templates/invar/assets/css/../img/close.svg) 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.nav__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
}

.nav__item
{
    position: relative;

    margin-left: 45px;
}

.nav__item > a
{
    display: inline-block;

    cursor: pointer;
}

.nav__item > a > span
{
    display: inline-block;

    padding-top: 24px;
    padding-bottom: 25px;
}

.nav__item.hover .nav__subitems
{
    z-index: 1;

    visibility: visible;

    opacity: 1;
}

.nav__item.hover .nav__subitems li
{
    visibility: visible;

    -webkit-transition: .2s;
       -moz-transition: .2s;
         -o-transition: .2s;
            transition: .2s;

    opacity: 1;
}

.nav__item.hover .nav__subitems li:nth-child(1)
{
    -webkit-transition-delay: .1s;
       -moz-transition-delay: .1s;
         -o-transition-delay: .1s;
            transition-delay: .1s;
}

.nav__item.hover .nav__subitems li:nth-child(2)
{
    -webkit-transition-delay: .15s;
       -moz-transition-delay: .15s;
         -o-transition-delay: .15s;
            transition-delay: .15s;
}

.nav__item.hover .nav__subitems li:nth-child(3)
{
    -webkit-transition-delay: .2s;
       -moz-transition-delay: .2s;
         -o-transition-delay: .2s;
            transition-delay: .2s;
}

.nav__item.hover .nav__subitems li:nth-child(4)
{
    -webkit-transition-delay: .25s;
       -moz-transition-delay: .25s;
         -o-transition-delay: .25s;
            transition-delay: .25s;
}

.nav__item.hover .nav__subitems li:nth-child(5)
{
    -webkit-transition-delay: .3s;
       -moz-transition-delay: .3s;
         -o-transition-delay: .3s;
            transition-delay: .3s;
}

.nav__item.hover .nav__subitems li:nth-child(6)
{
    -webkit-transition-delay: .35s;
       -moz-transition-delay: .35s;
         -o-transition-delay: .35s;
            transition-delay: .35s;
}

.nav__subitems
{
    position: absolute;
    z-index: 0;
    top: 100%;
    left: 0;

    visibility: hidden;

    padding-top: 30px;

    -webkit-transition: .2s;
       -moz-transition: .2s;
         -o-transition: .2s;
            transition: .2s;

    opacity: 0;
}

.nav__subitems li
{
    visibility: hidden;

    margin-bottom: 14px;

    opacity: 0;
}

.nav__subitems li:last-child
{
    margin-bottom: 0;
}

.nav__subitems a
{
    line-height: 140%;

    display: block;

    white-space: nowrap;
}

.nav__subitems:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: -100vw;

    width: 200vw;
    height: 205px;

    content: '';

    background-color: #fff;
}

/* Slider */

.slick-slider
{
    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}

.slick-list:focus
{
    outline: none;
}

.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;

    margin-right: auto;
    margin-left: auto;
}

.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}

.slick-track:after
{
    clear: both;
}

.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide
{
    float: right;
}

.slick-slide img
{
    display: block;
}

.slick-slide.slick-loading img
{
    display: none;
}

.slick-slide.dragging img
{
    pointer-events: none;
}

.slick-initialized .slick-slide
{
    display: block;
}

.slick-loading .slick-slide
{
    visibility: hidden;
}

.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}

.slick-arrow.slick-hidden
{
    display: none;
}

/* Slider */

.slick-loading .slick-list
{
    background: #fff url('/local/templates/invar/assets/css/./ajax-loader.gif') center center no-repeat;
}

/* Arrows */

.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;

    cursor: pointer;
    -webkit-transform: translate(0, -50%);
       -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
         -o-transform: translate(0, -50%);
            transform: translate(0, -50%);

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

.slick-prev:hover,
.slick-next:hover,
.slick-prev:focus,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}

.slick-prev:hover:before,
.slick-next:hover:before,
.slick-prev:focus:before,
.slick-next:focus:before
{
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* Icons */
}

@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('/local/templates/invar/assets/css/./fonts/slick.eot');
    src: url('/local/templates/invar/assets/css/./fonts/slick.eot?#iefix') format('embedded-opentype'), url('/local/templates/invar/assets/css/./fonts/slick.woff') format('woff'), url('/local/templates/invar/assets/css/./fonts/slick.ttf') format('truetype'), url('/local/templates/invar/assets/css/./fonts/slick.svg#slick') format('svg');
}

.slick-prev
{
    left: -25px;
}

[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}

.slick-prev:before
{
    content: '←';
}

[dir='rtl'] .slick-prev:before
{
    content: '→';
}

.slick-next
{
    right: -25px;
}

[dir='rtl'] .slick-next
{
    right: auto;
    left: -25px;
}

.slick-next:before
{
    content: '→';
}

[dir='rtl'] .slick-next:before
{
    content: '←';
}

/* Dots */

.slick-dotted .slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    margin: 0;
    padding: 0;

    list-style: none;

    text-align: center;
}

.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}

.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}

/* main-brands
   ========================================================================== */

.main-brands__wrapper
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 23px;
    padding-bottom: 90px;
    padding-left: 40px;

    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
    -ms-flex-align: start;
            align-items: flex-start;
}

.main-brands__title
{
    font-size: 20px;
    line-height: 140%;

    margin: 0;
    margin-top: 10px;

    color: #333;
}

.main-brands__rightCol
{
    overflow: hidden;

    margin-left: 310px;
}

.main-brands__slider
{
    position: relative;

    margin-bottom: 15px;
    padding-bottom: 28px;
}

.main-brands__slider:after
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: -webkit-calc(100% - 40px);
    width:    -moz-calc(100% - 40px);
    width:         calc(100% - 40px);
    height: 1px;

    content: '';

    background: #e6e6e6;
}

.main-brands__slider-item
{
    width: 288px;
    padding-right: 68px;
}

.main-brands__slider-item img
{
    display: block;

    max-height: 75px;
    margin-bottom: 10px;
}

.main-brands__slider-item h3
{
    font-size: 20px;
    line-height: 140%;

    margin-top: 0;
    margin-bottom: 2px;

    color: #0d397f;
}

.main-brands__slider-item p
{
    font-size: 13px;
    line-height: 130%;

    margin-top: 0;

    color: #828282;
}

.main-brands__slider-item p:last-child
{
    margin-bottom: 0;
}

/* main-ethics
   ========================================================================== */

.main-ethics
{
    overflow: hidden;

    background: #000 url(/local/templates/invar/assets/css/../img/main-ethics-banner.jpg) center center no-repeat;
    -moz-background-size: cover;
         background-size: cover;
}

.main-ethics__wrapper
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.main-ethics__title
{
    font-size: 20px;
    line-height: 140%;

    margin: 0;
    margin-top: 34px;
    margin-left: 40px;

    color: #fff;
}

.main-ethics__info
{
    position: relative;
    z-index: 0;

    width: 50%;
    padding-top: 57px;
    padding-right: 40px;
    padding-bottom: 38px;
    padding-left: 48px;
}

.main-ethics__info:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 50vw;
    height: 100%;

    content: '';

    background-color: rgba(13, 57, 127, .7);
}

.main-ethics__info h3
{
    font-size: 42px;
    font-weight: 300;
    line-height: 120%;

    max-width: 540px;
    margin-top: 0;
    margin-bottom: 28px;

    color: #fff;
}

.main-ethics__text
{
    max-width: 540px;
    margin-bottom: 157px;
}

.main-ethics__text p
{
    font-size: 20px;
    line-height: 140%;

    margin-top: 0;

    color: #fff;
}

.main-ethics__text p:last-child
{
    margin-bottom: 0;
}

/* main-direction
   ========================================================================== */

.main-direction__wrapper
{
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 45px;
    padding-right: 40px;
    padding-bottom: 145px;
    padding-left: 40px;
}

.main-direction__title
{
    font-size: 20px;
    line-height: 140%;

    margin: 0;
    margin-bottom: 37px;

    color: #333;
}

.main-direction__desc
{
    font-size: 30px;
    line-height: 130%;

    max-width: 630px;
    margin-top: 0;
    margin-bottom: 137px;

    color: #333;
}

.main-direction__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.main-direction__item
{
    width: 46%; /* было 27.5%;*/
    /*max-width: 420px; */
}

.main-direction__item a
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-bottom: 45px;

    -webkit-transition: .35s ease-in-out;
       -moz-transition: .35s ease-in-out;
         -o-transition: .35s ease-in-out;
            transition: .35s ease-in-out;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.main-direction__item a:hover
{
    -webkit-transform: translateY(-20px);
       -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
         -o-transform: translateY(-20px);
            transform: translateY(-20px);
}

.main-direction__item a img
{
    display: block;

    width: 65px;
    height: 65px;
    margin-right: 30px;
}

.main-direction__item a h3
{
    font-size: 30px;
    line-height: 130%;

    margin: 0;

    color: #0d397f;
}

.main-direction__item div p
{
    font-size: 18px;
    line-height: 140%;

    margin-top: 0;

    color: #333;
}

.main-direction__item div p:last-child
{
    margin-bottom: 0;
}

/* main-news
   ========================================================================== */

.main-news
{
    border-top: 1px solid #e6e6e6;
    background-color: rgba(230, 230, 230, .2);
}

.main-news__wrapper
{
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 15px;
    padding-right: 20px;
    padding-bottom: 118px;
    padding-left: 20px;
}

.main-news__title
{
    font-size: 20px;
    line-height: 140%;

    margin: 0;
    margin-bottom: 65px;
    margin-left: 20px;

    color: #333;
}

.main-news__link
{
    margin-left: 20px;
}

.main-news__slider
{
    margin-bottom: 60px;
}

.main-news__slider-item
{
    padding-right: 20px;
    padding-left: 20px;
}

.main-news__slider .slick-list
{
    padding-bottom: 10px;
}

.main-news--singleNews .main-news__wrapper
{
    padding-bottom: 154px;
}

.main-news--singleNews .main-news__title
{
    margin-bottom: 60px;
}

/* main-career
   ========================================================================== */

.main-career
{
    position: relative;

    background-color: rgba(230, 230, 230, .2);
}

.main-career__wrapper
{
    position: relative;

    overflow: hidden;

    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 15px;
    padding-right: 40px;
    padding-bottom: 153px;
}

.main-career__wrapper:before
{
    position: absolute;
    top: 0;
    left: 50%;

    width: -webkit-calc(100% - 80px);
    width:    -moz-calc(100% - 80px);
    width:         calc(100% - 80px);
    height: 1px;

    content: '';
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);

    background-color: #e6e6e6;
}

.main-career__title
{
    font-size: 20px;
    line-height: 140%;

    margin: 0;
    margin-bottom: 62px;
    margin-left: 40px;

    color: #333;
}

.main-career__inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.main-career__inner img
{
    min-width: 450px;
    max-width: 47.7%;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.main-career__info
{
    max-width: 565px;
    margin-left: 64px;
}

.main-career__info h3
{
    font-size: 42px;
    font-weight: 300;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 20px;

    color: #0d397f;
}

.main-career__info p
{
    font-size: 20px;
    line-height: 140%;

    margin-top: 0;
}

.main-career__info p:last-of-type
{
    margin-bottom: 42px;
}

/* breadcrumbs
   ========================================================================== */

.breadcrumbs
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.breadcrumbs__section
{
    font-size: 10px;
    line-height: 140%;

    display: block;

    white-space: nowrap;
    letter-spacing: .05em;
    text-transform: uppercase;

    color: #828282;
}

.breadcrumbs__section:hover
{
    color: #e6e6e6;
}

.breadcrumbs__divider
{
    font-size: 10px;
    line-height: 140%;

    display: block;

    margin-right: 4px;
    margin-left: 4px;

    letter-spacing: .05em;

    color: #e6e6e6;
}

.breadcrumbs__active
{
    font-size: 10px;
    line-height: 140%;

    display: block;
    overflow: hidden;

    white-space: nowrap;
    letter-spacing: .05em;
    text-transform: uppercase;
       text-overflow: ellipsis;

    color: #e6e6e6;

    -o-text-overflow: ellipsis;
}

/* our-values
   ========================================================================== */

.our-values
{
    background-color: #0d397f;
}

.our-values__wrapper
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 40px;
    padding-right: 60px;
    padding-bottom: 169px;
    padding-left: 40px;
}

.our-values__title
{
    font-size: 36px;
    font-weight: 300;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 33px;

    color: #fff;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.our-values__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-left: 126px;
    padding-top: 17px;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.our-values__item
{
    width: 28.67%;
    padding-top: 21px;

    border-top: 1px solid rgba(255, 255, 255, .5);
}

.our-values__item h3
{
    font-size: 24px;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 19px;

    color: #fff;
}

.our-values__item p
{
    font-size: 18px;
    line-height: 140%;

    margin-top: 0;

    color: #fff;
}

.our-values__item p:last-child
{
    margin-bottom: 0;
}

/* our-principles
   ========================================================================== */

.our-principles
{
    background-color: #fff;
}

.our-principles__wrapper
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 60px;
    padding-right: 60px;
    padding-bottom: 33px;
    padding-left: 40px;
}

.our-principles__title
{
    font-size: 36px;
    font-weight: 300;
    line-height: 120%;

    max-width: 320px;
    margin-top: 0;
    margin-bottom: 23px;

    color: #0d397f;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.our-principles__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-left: 64px;
    padding-top: 17px;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.our-principles__item
{
    width: 28%;
    margin-right: 8%;
    margin-bottom: 79px;
    padding-top: 21px;

    border-top: 1px solid #939393;
}

.our-principles__item:nth-child(3n)
{
    margin-right: 0;
}

.our-principles__item h3
{
    font-size: 24px;
    line-height: 28px;

    margin-top: 0;
    margin-bottom: 20px;

    color: #262626;
}

.our-principles__item p
{
    font-size: 18px;
    line-height: 140%;

    margin-top: 0;

    color: #262626;
}

.our-principles__item p:last-child
{
    margin-bottom: 0;
}

/* history
   ========================================================================== */

.history__wrapper
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-right: 16.25%;
    padding-left: 16.25%;
}

.history__header-items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    margin-top: -30px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
}

.history__header-item
{
    width: 50%;
}

.history__header-item:nth-child(2n+1)
{
    -webkit-transform: translateX(-1px);
       -moz-transform: translateX(-1px);
        -ms-transform: translateX(-1px);
         -o-transform: translateX(-1px);
            transform: translateX(-1px);

    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
            align-self: flex-end;
}

.history__header-item:nth-child(2n+1) .history__header-year
{
    margin-left: 120px;
}

.history__header-item:nth-child(2n+1) .history__header-text
{
    padding-left: 120px;

    border-left: 2px solid rgba(255, 255, 255, .2);
}

.history__header-item:nth-child(2n+1) .history__header-text:before
{
    left: -5px;
}

.history__header-item:nth-child(2n)
{
    -webkit-transform: translateX(1px);
       -moz-transform: translateX(1px);
        -ms-transform: translateX(1px);
         -o-transform: translateX(1px);
            transform: translateX(1px);
}

.history__header-item:nth-child(2n) .history__header-year
{
    margin-right: 120px;
}

.history__header-item:nth-child(2n) .history__header-text
{
    padding-right: 120px;

    border-right: 2px solid rgba(255, 255, 255, .2);
}

.history__header-item:nth-child(2n) .history__header-text:before
{
    right: -5px;
}

.history__header-item:first-child
{
    -webkit-transform: translate(-1px, 80px);
       -moz-transform: translate(-1px, 80px);
        -ms-transform: translate(-1px, 80px);
         -o-transform: translate(-1px, 80px);
            transform: translate(-1px, 80px);
}

.history__header-year
{
    font-size: 48px;
    font-weight: 300;
    line-height: 140%;

    position: relative;
    z-index: 10;

    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 12px;

    letter-spacing: -.01em;

    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, .75);
}

.history__header-text
{
    position: relative;
    z-index: 1;

    min-height: 200px;
    margin-top: -1px;
    padding-top: 15px;

    border-top: 1px dashed #5e7dae;
}

.history__header-text:before
{
    position: absolute;
    top: -5px;

    width: 10px;
    height: 10px;

    content: '';

    -webkit-border-radius: 50%;
       -moz-border-radius: 50%;
            border-radius: 50%;
    background-color: #fff;
}

.history__header-text p
{
    font-size: 16px;
    line-height: 140%;

    margin-top: 0;

    color: #fff;
}

.history__header-text p:last-child
{
    margin-bottom: 0;
}

.history__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
}

.history__item
{
    z-index: 0;

    width: 50%;
}

.history__item:nth-child(2n+1)
{
    margin-top: -100px;

    -webkit-transform: translate(-1px);
       -moz-transform: translate(-1px);
        -ms-transform: translate(-1px);
         -o-transform: translate(-1px);
            transform: translate(-1px);

    border-left: 1px dashed rgba(13, 57, 127, .2);

    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
            align-self: flex-end;
}

.history__item:nth-child(2n+1) .history__item-img
{
    margin-left: 94px;
}

.history__item:nth-child(2n+1) .history__item-year
{
    margin-left: 120px;
}

.history__item:nth-child(2n+1) .history__item-text
{
    padding-left: 120px;
}

.history__item:nth-child(2n+1) .history__item-text:before
{
    left: -5px;
}

.history__item:nth-child(2n)
{
    margin-top: -330px;

    border-right: 1px dashed rgba(13, 57, 127, .2);
}

.history__item:nth-child(2n) .history__item-img
{
    margin-right: 94px;
}

.history__item:nth-child(2n) .history__item-year
{
    margin-right: 120px;
}

.history__item:nth-child(2n) .history__item-text
{
    padding-right: 120px;
}

.history__item:nth-child(2n) .history__item-text:before
{
    right: -5px;
}

.history__item:first-child
{
    margin-top: 0;
    padding-top: 60px;
}

.history__item:last-child
{
    padding-bottom: 184px;
}

.history__item-img
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    height: 250px;
    margin-bottom: 10px;

    -webkit-box-align: end;
    -webkit-align-items: flex-end;
       -moz-box-align: end;
    -ms-flex-align: end;
            align-items: flex-end;
}

.history__item-img img
{
    max-width: 320px;
    max-height: 250px;
}

.history__item-year
{
    font-size: 48px;
    font-weight: 300;
    line-height: 140%;

    position: relative;
    z-index: 10;

    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 12px;

    letter-spacing: -.01em;

    color: #262626;
    border-bottom: 1px solid rgba(13, 57, 127, .75);
}

.history__item-text
{
    position: relative;
    z-index: 1;

    min-height: 160px;
    margin-top: -1px;
    padding-top: 15px;

    border-top: 1px dashed #5e7dae;
}

.history__item-text:before
{
    position: absolute;
    top: -5px;

    width: 10px;
    height: 10px;

    content: '';

    -webkit-border-radius: 50%;
       -moz-border-radius: 50%;
            border-radius: 50%;
    background-color: #0d397f;
}

.history__item-text p
{
    font-size: 16px;
    line-height: 140%;

    margin-top: 0;

    color: #262626;
}

.history__item-text p:last-child
{
    margin-bottom: 0;
}

/* advantages
   ========================================================================== */

.advantages
{
    background-color: #fff;
}

.advantages__wrapper
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 76px;
    padding-right: 40px;
    padding-bottom: 120px;
    padding-left: 40px;
}

.advantages__top
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    padding-bottom: 125px;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.advantages__title
{
    font-size: 42px;
    font-weight: 300;
    line-height: 120%;

    max-width: 470px;
    margin-top: 0;
    margin-bottom: 26px;
    padding-right: 20px;

    color: #0d397f;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.advantages__desc
{
    font-size: 30px;
    line-height: 130%;

    width: 47.4%;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 4px;
    padding-right: 9.2%;

    color: #333;
}

.advantages__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.advantages__item
{
    width: 21%;
    margin-right: 5.3%;
    margin-bottom: 0;
    padding-top: 21px;

    border-top: 1px solid #939393;
}

.advantages__item:nth-child(4n)
{
    margin-right: 0;
}

.advantages__item h3
{
    font-size: 24px;
    line-height: 28px;

    margin-top: 0;
    margin-bottom: 20px;

    color: #262626;
}

.advantages__item p
{
    font-size: 18px;
    line-height: 140%;

    margin-top: 0;

    color: #262626;
}

.advantages__item p:last-child
{
    margin-bottom: 0;
}

/* vacancies
   ========================================================================== */

.vacancies
{
    background-color: #f7f7f7;
}

.vacancies--careerPage
{
    background-color: #0d397f;
}

.vacancies--careerPage .vacancies__wrapper
{
    padding-top: 40px;
    padding-bottom: 133px;
}

.vacancies--careerPage .vacancies__selects-wrapper select
{
	padding-left: 10px;
    color: #fff;
    background: url(/local/templates/invar/assets/css/../img/select-arrow-white.svg) right 0 top 12px no-repeat;
}

.vacancies--careerPage .vacancies__index-title
{
    color: #fff;
}

.vacancies--careerPage .vacancies__index-desc
{
    color: #fff;
}

.vacancies--careerPage .vacancies__item-city
{
    color: #869cbf;
}

.vacancies--careerPage .vacancies__item-title a
{
    color: #fff;
}

.vacancies--careerPage .vacancies__items
{
    margin-bottom: 15px;

    border-bottom: 1px solid #869cbf;
}

.vacancies--careerPage .vacancies__header
{
    margin-bottom: -134px;
}

.vacancies--careerPage .vacancies__item
{
    border-top: 1px solid #496b9f;
}

.vacancies--careerPage .vacancies__index-aside
{
    padding-bottom: 0;
}

.vacancies__header
{
    margin-bottom: -67px;
}

.vacancies__title
{
    font-size: 36px;
    font-weight: 300;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 40px;

    color: #fff;
}

.vacancies__wrapper
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 54px;
    padding-right: 40px;
    padding-bottom: 139px;
    padding-left: 40px;
}

.vacancies__selects-wrapper
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-bottom: 20px;
}
.vacancies--careerPage .vacancies__selects-wrapper{
	    color: #fff;
}
.vacancies__selects-wrapper:last-child
{
    margin-bottom: 0;
}

.vacancies__selects-wrapper span
{
    font-size: 18px;
    line-height: 140%;

    display: inline-block;

    margin-right: 8px;

    color: #5e7dae;
}

.vacancies__selects-wrapper select
{
    font-size: 18px;
    line-height: 140%;

    max-width: 130px;
    padding-right: 22px;

    cursor: pointer;

    color: #0d397f;
    border: 0;
    outline: 0;
    background: url(/local/templates/invar/assets/css/../img/select-arrow-blue.svg) right 0 center no-repeat;
    background-color: transparent;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.vacancies__selects-wrapper select::-ms-expand
{
    display: none;
}

.vacancies__selects-wrapper select option
{
    color: #000;
}

.vacancies__select
{
    position: relative;
}

.vacancies__index
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: end;
    -webkit-align-items: flex-end;
       -moz-box-align: end;
    -ms-flex-align: end;
            align-items: flex-end;
}

.vacancies__index-aside
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    width: 398px;
    padding-right: 78px;
    padding-bottom: 50px;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
       -moz-box-pack: end;
    -ms-flex-pack: end;
            justify-content: flex-end;
}

.vacancies__index-title
{
    font-size: 30px;
    line-height: 130%;

    margin-top: 0;
    margin-bottom: 15px;

    color: #262626;
}

.vacancies__index-desc
{
    font-size: 16px;
    line-height: 140%;

    margin-top: 0;
    margin-bottom: 40px;

    color: #262626;
}

.vacancies__inner
{
    width: 100%;
    min-height: 500px;
}

.vacancies__items
{
    font-size: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    padding-bottom: 15px;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.vacancies__item
{
    width: 28.5%;
    margin-right: 7.25%;
    margin-bottom: 30px;
    padding-top: 21px;

    border-top: 1px solid #c3c3c3;
}

.vacancies__item:nth-child(3n)
{
    margin-right: 0;
}

.vacancies__item-title
{
    margin-top: 0;
    margin-bottom: 2px;
}

.vacancies__item-title a
{
    font-size: 24px;
    line-height: 120%;

    display: block;

    color: #0d397f;
}

.vacancies__item-title a:hover
{
    opacity: .7;
}

.vacancies__item-city
{
    font-size: 13px;
    line-height: 130%;

    color: #8f8f8f;
}

/* Search Button
   ========================================================================== */

.search-btn
{
    font: inherit;
    font-size: 18px;
    line-height: 140%;

    position: absolute;

    padding: 0;
    padding-right: 41px;

    cursor: pointer;
    letter-spacing: -.01em;

    color: #a8a8a8;
    border: none;
    outline: none;
    background: url(/local/templates/invar/assets/css/../img/search-icon.svg) right 0 center no-repeat;
    background-color: transparent;
    -moz-background-size: 20px 20px;
         background-size: 20px 20px;
}

.search-btn:focus
{
    font-size: 18px;
    line-height: 140%;

    letter-spacing: -.01em;

    color: #a8a8a8;
    border: 0;
    outline: none;
    background-color: transparent;
}

/* Modal Search
   ========================================================================== */

.modal-search
{
    position: fixed;
    z-index: 1;
    z-index: 1000;
    bottom: 0;
    left: 0;

    display: none;
    overflow: auto;

    width: 100%;
    height: -webkit-calc(100vh - 70px);
    height:    -moz-calc(100vh - 70px);
    height:         calc(100vh - 70px);

    background-color: transparent;
}

.modal-search--results .modal-search__top
{
    padding-top: 110px;
    padding-bottom: 30px;
}

.modal-search--results .modal-search__title
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    max-width: -webkit-calc(100% - 370px);
    max-width:    -moz-calc(100% - 370px);
    max-width:         calc(100% - 370px);
    margin-top: 0;
    margin-bottom: 30px;

    letter-spacing: -.02em;

    color: #0d397f;
}

.modal-search--results .search-form
{
    position: absolute;
    right: 40px;
    bottom: 97px;
}

.modal-search--results .search-btn
{
    font-size: 0;

    position: absolute;
    top: 15px;
    right: 0;

    width: 20px;
    height: 20px;
}

.modal-search--results .search-form__input
{
    font-size: 18px;
    line-height: 140%;

    width: 350px;
    height: 50px;
    padding-right: 40px;

    text-align: right;
    letter-spacing: -.01em;

    color: #262626;
}

.modal-search--results .search-form__clean
{
    bottom: 34px;
}

.modal-search__content
{
    position: absolute;
    z-index: 1000;
    bottom: 0;

    width: 100%;
    height: 100%;

    background: #fafafa;
}

.modal-search__close
{
    font-size: 0;

    position: absolute;
    z-index: 1;
    top: 30px;
    right: 30px;

    width: 20px;
    height: 20px;

    cursor: pointer;

    background: url(/local/templates/invar/assets/css/../img/modal-close-icon.svg) 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.modal-search__top
{
    position: relative;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 32vh;
    padding-right: 44px;
    padding-bottom: 27px;
    padding-left: 36px;

    background-color: #fff;
}

.modal-search__bottom
{
    background-color: #fafafa;
}

.modal-search__message
{
    font-size: 18px;
    line-height: 140%;

    max-width: 494px;
    margin: 0 auto;
    padding-top: 25vh;
    padding-right: 15px;
    padding-bottom: 28vh;
    padding-left: 15px;

    text-align: center;

    color: #262626;
}

.modal-search__numberMatches
{
    font-size: 16px;
    line-height: 140%;

    color: #262626;
}

/* Search Form
   ========================================================================== */

.search-form
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.search-form__btn
{
    position: static;

    color: #0d397f;
}

.search-form__btn:focus,
.search-form__btn:active
{
    color: #0d397f;
}

.search-form__input
{
    font-size: 92px;
    font-weight: 300;
    line-height: 110%;

    width: -webkit-calc(100% - 250px);
    width:    -moz-calc(100% - 250px);
    width:         calc(100% - 250px);
    height: 101px;

    letter-spacing: -.02em;

    color: #0d397f;
    border: none;
    outline: none;
}

.search-form__input::-webkit-input-placeholder
{
    color: #bbc0c4;
}

.search-form__input:-moz-placeholder
{
    color: #bbc0c4;
}

.search-form__input::-moz-placeholder
{
    color: #bbc0c4;
}

.search-form__input:-ms-input-placeholder
{
    color: #bbc0c4;
}

.search-form__input::-ms-input-placeholder
{
    color: #bbc0c4;
}

.search-form__input::placeholder
{
    color: #bbc0c4;
}

.search-form__clean
{
    font: inherit;
    font-size: 13px;
    line-height: 130%;

    position: absolute;
    right: 42px;
    bottom: -36px;

    display: none;

    padding: 0;

    cursor: pointer;

    color: inherit;
    color: #bdbdbd;
    border: none;
    background-color: transparent;
}

.search-form__clean:focus
{
    font-size: 13px;
    line-height: 130%;

    color: #bdbdbd;
}

.search-form__clean.show
{
    display: block;
}

/* profile
   ========================================================================== */

.profile__wrapper
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-right: 40px;
    padding-bottom: 88px;
    padding-left: 40px;
}

.profile__form
{
    width: 100%;
    max-width: 630px;
}

.profile__done
{
    padding-top: 10px;
}

.profile__done p
{
    font-size: 18px;
    line-height: 140%;

    max-width: 462px;
    margin-top: 0;
    margin-bottom: 30px;

    color: #262626;
}

/* form
   ========================================================================== */

.form__row
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.form__row--agree
{
    margin-top: -8px;
}

.form__row--agree .form__group
{
    margin-bottom: 0;
}

.form__header
{
    margin-bottom: 40px;
}

.form__header .form__group
{
    margin-bottom: 20px;
}

.form__header .form__row:last-child .form__group
{
    margin-bottom: 0;
}

.form__group
{
    position: relative;

    width: 100%;
    margin-bottom: 30px;
}

.form__group--half
{
    width: 300px;
}

.form__select
{
    font-size: 18px;
    line-height: 140%;

    display: block;

    width: 100%;
    height: 50px;
    padding-top: 10px;
    padding-right: 40px;

    cursor: pointer;
    letter-spacing: -.01em;

    color: #262626;
    border: none;
    border-bottom: 1px solid #e6e6e6;
    -webkit-border-radius: 0;
       -moz-border-radius: 0;
            border-radius: 0;
    background: none;
    background: url(/local/templates/invar/assets/css/../img/form-select-arrow.svg) right 16px center no-repeat;
    -webkit-box-shadow: none;
       -moz-box-shadow: none;
            box-shadow: none;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.form__select.active
{
    border-bottom: 1px solid #0d397f;
}

.form__select option
{
    padding-left: 0;
}

.form__select:focus
{
    outline: 0;
}

.form__select:focus + label
{
    font-size: 10px;
    line-height: 140%;

    top: 0;

    color: #bebebe;
}

.form__select::-ms-expand
{
    display: none;
}

.form__input
{
    font-size: 18px;
    line-height: 140%;

    display: block;

    width: 100%;
    height: 50px;
    padding-top: 10px;

    letter-spacing: -.01em;

    color: #262626;
    border: none;
    border-bottom: 1px solid #e6e6e6;
    -webkit-border-radius: 0;
       -moz-border-radius: 0;
            border-radius: 0;
    background: none;
    -webkit-box-shadow: none;
       -moz-box-shadow: none;
            box-shadow: none;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.form__input.active
{
    border-bottom: 1px solid #0d397f;
}

.form__input:focus
{
    outline: 0;
}

.form__input:focus + label
{
    font-size: 10px;
    line-height: 140%;

    top: 0;

    color: #bebebe;
}

.form__input--date
{
    cursor: pointer;

    background: url(/local/templates/invar/assets/css/../img/form-select-arrow.svg) right 16px center no-repeat;
}

.form__input--file
{
    position: absolute;
    z-index: -1;

    overflow: hidden;

    width: .1px;
    height: .1px;

    opacity: 0;
}

.form__input--file.addFile + label
{
    font-size: 18px;
    font-weight: 500;
    line-height: 140%;

    text-align: left;

    color: #262626;
    border: 0;
}

.form__input--file.addFile + label:before
{
    display: none;
}

.form__input--file.addFile + label span
{
    position: relative;
}

.form__input--file.addFile + label span:after
{
    position: absolute;
}

.form__input--file + label
{
    font-size: 15px;
    line-height: 140%;

    position: relative;

    display: block;

    width: 100%;
    max-width: 300px;
    height: 50px;
    padding-top: 14px;

    cursor: pointer;
    text-align: center;

    color: #0d397f;
    border: 1px solid #0d397f;
}

.form__input--file + label:before
{
    position: absolute;
    top: 50%;
    right: 13px;

    width: 16px;
    height: 14px;
    margin-top: -7px;

    content: '';
    -webkit-transform: rotate(-90deg);
       -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
         -o-transform: rotate(-90deg);
            transform: rotate(-90deg);

    background: transparent url(/local/templates/invar/assets/css/../img/arrow-right-blue.svg) center center no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
}

.form__label
{
    font-size: 18px;
    line-height: 140%;

    position: absolute;
    top: 14px;
    left: 3px;

    display: block;

    -webkit-transition: all .2s ease;
       -moz-transition: all .2s ease;
         -o-transition: all .2s ease;
            transition: all .2s ease;
    letter-spacing: -.01em;
    pointer-events: none;

    color: #a8a8a8;
}

.form__label.active
{
    font-size: 10px;
    line-height: 140%;

    top: 0;

    color: #bebebe;
}

.form__description
{
    font-size: 16px;
    line-height: 140%;

    margin-top: 0;

    color: #939393;
}

.form__description:last-child
{
    margin-bottom: 0;
}

.form__checkbox
{
    font-size: 16px;
    line-height: 140%;

    position: relative;

    display: block;

    padding-left: 30px;

    cursor: pointer;

    color: #262626;
}

.form__checkbox input
{
    display: none;
}

.form__checkbox input + span
{
    position: absolute;
    top: 3px;
    left: 0;

    width: 16px;
    height: 16px;

    border: 1px solid #e0e0e0;
    background-color: transparent;
}

.form__checkbox input:checked + span
{
    border: 4px solid #0d397f;
}

.form__btn
{
    font-size: 20px;
    line-height: 140%;

    margin-top: 52px;
    padding: 0;

    cursor: pointer;

    color: #fff;
    border: 0;
    outline: 0;
    background: #0d397f url(/local/templates/invar/assets/css/../img/arrow-right-white.svg) right 24px center no-repeat;
    -moz-background-size: 17px 20px;
         background-size: 17px 20px;
}

.form__btn:hover
{
    background: #5e7dae url(/local/templates/invar/assets/css/../img/arrow-right-white.svg) right 24px center no-repeat;
    -moz-background-size: 17px 20px;
         background-size: 17px 20px;
}

/* article
   ========================================================================== */

.article--vacancy .article__wrapper
{
    padding-bottom: 189px;
}

.article--vacancy .article__sideColumn
{
    width: 320px;
    margin-left: 84px;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.article--vacancy .article__sideColumn .btn
{
    margin-bottom: 50px;
}

.article--agreement .article__wrapper
{
    padding-bottom: 106px;
}

.article__wrapper
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-right: 40px;
    padding-bottom: 65px;
    padding-left: 40px;
}

.article__date
{
    width: 120px;
    margin-right: 94px;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.article__date p
{
    font-size: 13px;
    line-height: 140%;

    margin: 0;

    color: #828282;
}

.article__date p time
{
    font-size: 13px;
    line-height: 140%;

    color: #828282;
}

.article__subtitle
{
    font-size: 28px;
    font-weight: 300;
    line-height: 110%;
}

.article__index
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
}

.article__centerColumn
{
    width: 100%;
    max-width: 602px;
    max-width: 50%;
}

.article--agreement {
    padding: 0 40px;
}

.article--agreement .article__centerColumn {
    margin: 0 auto;
    max-width: 1000px;
    padding-bottom: 65px;
}

.article__sideColumn
{
    padding-top: 8px;
}

.article__imageBlock
{
    margin-top: 30px;
    margin-right: 0;
    margin-bottom: 30px;
    margin-left: 0;
}

.article__imageBlock img
{
    width: 100%;
}

.article__imageBlock figcaption
{
    font-size: 13px;
    line-height: 130%;

    display: block;

    margin-top: 22px;

    color: #828282;
}

.article__tags
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-top: 42px;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.article__tags li
{
    margin-right: 25px;
    margin-bottom: 10px;
}

.article__tags li a
{
    font-size: 13px;
    line-height: 130%;

    display: block;

    color: #0d397f;
}

.article__tags li a:hover
{
    opacity: .7;
}

/* textBlock
   ========================================================================== */

.textBlock
{
    font-size: 18px;
    line-height: 140%;

    margin-bottom: 40px;

    color: #262626;
}

.textBlock:last-of-type
{
    margin-bottom: 0;
}

.textBlock p
{
    margin-top: 0;
    margin-bottom: 13px;
}

.textBlock p:last-child
{
    margin-bottom: 0;
}

.textBlock ul
{
    padding-left: 16px;

    list-style-type: disc;
}

.textBlock ul li
{
    margin-bottom: 8px;
    padding-left: 2px;

    list-style-type: disc;
}

.textBlock ul li:last-child
{
    margin-bottom: 0;
}

.textBlock--lead
{
    margin-bottom: 65px;
}

.textBlock--lead p
{
    font-size: 16px;
    line-height: 140%;
}

/* vacancy-info
   ========================================================================== */

.vacancy-info span
{
    font-size: 16px;
    line-height: 140%;

    display: block;
}

.vacancy-info__block
{
    margin-bottom: 23px;
}

.vacancy-info__block:last-child
{
    margin-bottom: 0;
}

.vacancy-info__title
{
    color: #828282;
}

.vacancy-info__text
{
    color: #262626;
}

/* news-item
   ========================================================================== */

.news-item
{
    display: block;

    background-color: #fff;
}

.news-item:hover
{
    position: relative;

    -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, .03), 0 2px 8px rgba(0, 0, 0, .03);
       -moz-box-shadow: 0 4px 12px rgba(0, 0, 0, .03), 0 2px 8px rgba(0, 0, 0, .03);
            box-shadow: 0 4px 12px rgba(0, 0, 0, .03), 0 2px 8px rgba(0, 0, 0, .03);
}

.news-item:hover .news-item h3
{
    color: #5e7dae;
}

.news-item img
{
    display: block;

    width: 100%;
}

.news-item time
{
    font-size: 11px;
    line-height: 13px;

    display: block;

    margin-bottom: 8px;

    color: #828282;
}

.news-item h3
{
    font-size: 18px;
    line-height: 140%;

    margin: 0;

    color: #0d397f;
}

.news-item__info
{
    padding-top: 20px;
    padding-right: 22px;
    padding-bottom: 29px;
    padding-left: 22px;

    background-color: #fff;
}

/* news
   ========================================================================== */

.news
{
    background-color: #fafafa;
}

.news__wrapper
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 60px;
    padding-right: 40px;
    padding-bottom: 180px;
    padding-left: 40px;
}

.news__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-bottom: 30px;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.news__item
{
    width: 23%;
    margin-right: 2.66%;
    margin-bottom: 40px;
}

.news__item:nth-child(4n)
{
    margin-right: 0;
}

.news .link
{
    margin-left: 77%;
}

/* products
   ========================================================================== */

.products__wrapper
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 110px;
    padding-right: 40px;
    padding-bottom: 96px;
    padding-left: 40px;
}

.products__row
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-bottom: 105px;
}

.products__row:last-child
{
    margin-bottom: 0;
}

.products__row:first-child
{
    position: relative;
}

.products__row:first-child:before
{
    position: absolute;
    top: -110px;
    left: 0;

    width: 100%;
    height: 1px;

    content: '';

    background: #e6e6e6;
}

.products__row--reverse .products__type
{
    margin-right: 0;
    margin-left: 1.33%;
}

.products__type
{
    width: 33%;
    min-width: 430px;
    margin-right: 1.33%;
    padding-top: 20px;
    padding-right: 30px;
    padding-bottom: 42px;
    padding-left: 30px;

    background-color: #0d397f;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.products__type-img
{
    display: block;

    width: 65px;
    height: 65px;
    margin-bottom: 10px;
}

.products__type-title
{
    font-size: 52px;
    font-weight: 300;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 35px;

    letter-spacing: -.02em;

    color: #fff;
}

.products__type-desc
{
    margin-bottom: 35px;
}

.products__type-desc p
{
    font-size: 18px;
    line-height: 140%;

    margin-top: 0;

    color: #fff;
}

.products__type-desc p:last-child
{
    margin-bottom: 0;
}

.products__item
{
    position: relative;

    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    width: 31.5%;
    max-width: 480px;
    margin-right: 2.66%;
    padding-bottom: 15px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
       -moz-box-pack: end;
    -ms-flex-pack: end;
            justify-content: flex-end;
}

.products__item--doubleWidth
{
    width: 65.66%;
    max-width: 1000px;
}

.products__item--doubleWidth .products__item-desc
{
    max-width: 460px;
}

.products__item:first-child .products__item-title
{
    padding-right: 60px;
    padding-left: 0;
}

.products__item:first-child .products__item-desc
{
    padding-right: 60px;
    padding-left: 0;
}

.products__item:after
{
    position: absolute;
    top: 0;
    right: -4.15%;

    width: 1px;
    height: 100%;

    content: '';

    background: #e6e6e6;
}

.products__item:last-of-type
{
    margin-right: 0;
}

.products__item:last-of-type:after
{
    display: none;
}

.products__item-img
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    margin-bottom: 18px;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
}

.products__item-img img
{
    min-width: 1px;
}

.products__item-title
{
    font-size: 24px;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 8px;
    padding-right: 30px;
    padding-left: 30px;

    color: #0d397f;
}

.products__item-desc
{
    font-size: 16px;
    line-height: 140%;

    margin-top: 0;
    padding-right: 30px;
    padding-left: 30px;

    color: #4f4f4f;
}

.products__item-desc:last-child
{
    margin-bottom: 0;
}

/* product
   ========================================================================== */

.product__wrapper
{
    width: 100%;
    max-width: 1600px;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}

.product__lead
{
    font-size: 24px;
    font-weight: 300;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 62px;

    color: #262626;
}

.product__block-wrapper
{
    padding-top: 48px;

    border-bottom: 1px solid #e6e6e6;
}

.product__block:last-child .product__block-wrapper
{
    border-bottom: 0;
}

.product__block--epigen .product__row
{
    padding-bottom: 60px;
}

.product__block--epigen .product__row:last-child
{
    padding-bottom: 80px;
}

.product__block--dikirogen .product__row
{
    padding-bottom: 62px;
}

.product__block--dikirogen .product__item
{
    width: 100%;
    max-width: 100%;
    margin-top: -40px;
    margin-right: 0;
}

.product__block--dikirogen .product__item-img
{
    max-width: 560px;
    max-height: 560px;
}

.product__block--dikirogen .product__item-img img
{
    max-width: 560px;
}

.product__block--invarkids .product__row
{
    padding-bottom: 100px;
}

.product__block--invarkids .product__row:last-child
{
    padding-bottom: 146px;
}

.product__block--invarkids .product__row--colorBlockAndText .product__leftCol
{
    width: 42%;
    margin-right: 23%;
}

.product__block--invarkids .product__row--colorBlockAndText .product__rightCol
{
    width: 32%;
}

.product__block--invarkids .product__row--colorBlockAndText .product__rightCol p
{
    margin-top: 15px;
    padding-right: 12.5%;
}

.product__block--invarkids .product__row--colorBlockAndText .product__rightCol p:last-child
{
    margin-bottom: 0;
}

.product__block--invarkids .product__items
{
    width: 100%;
}

.product__block--invarkids .product__item
{
    width: 31.5%;
    margin-right: 2.75%;
    margin-bottom: 40px;

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

.product__block--invarkids .product__item:nth-child(2) .product__item-desc,
.product__block--invarkids .product__item:nth-child(5) .product__item-desc
{
    padding-left: 6%;
}

.product__block--invarkids .product__item:nth-child(2n)
{
    margin-right: 2.75%;
}

.product__block--invarkids .product__item:nth-child(3n)
{
    margin-right: 0;
}

.product__block--invarkids .product__item-desc
{
    width: 80%;
    max-width: 380px;
    margin-top: 0;
    margin-bottom: 30px;
}

.product__block--invarkids .product__item-img
{
    margin-bottom: 0;
}

.product__block--skincap .product__row
{
    padding-bottom: 60px;
}

.product__block--skincap .product__colorBlock-text
{
    max-width: 420px;
}

.product__block--skincap .product__items
{
    margin-top: -50px;
}

.product__block--skincap .product__item
{
    margin-bottom: 40px;
}

.product__block--skincap .product__item-img
{
    margin-bottom: 0;
}

.product__block--skincap .product__item-title
{
    min-height: 34px;
    margin-top: -20px;
}

.product__block--mikozan .product__row
{
    padding-bottom: 230px;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.product__block--mikozan .product__item
{
    width: 100%;
    max-width: 1000px;
    margin-top: -40px;
    margin-right: 0;
}

.product__block--mikozan .product__item-img
{
    max-height: 600px;
    margin-bottom: 30px;
}

.product__header
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    padding-bottom: 60px;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.product__logo
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: 80px;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
}

.product__logo img
{
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
       -moz-box-flex: 1;
    -ms-flex-positive: 1;
            flex-grow: 1;
}

.product__title
{
    margin-left: 30px;
}

.product__title-rus
{
    font-size: 62px;
    font-weight: 300;
    line-height: 120%;

    margin-top: 0;
    margin-bottom: 2px;

    letter-spacing: -.02em;

    color: #0d397f;
}

.product__title-eng
{
    font-size: 13px;
    line-height: 130%;

    display: block;

    color: #0d397f;
}

.product__row
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.product__colorBlock
{
    width: 100%;
    max-width: 1020px;
    padding: 0;

    color: #262626;
    background-color: #fff;
}

.product__colorBlock-title
{
    font-size: 30px;
    line-height: 130%;

    margin-top: 0;
    margin-bottom: 30px;
}

.product__colorBlock-title:last-child
{
    margin-bottom: 0;
}

.product__colorBlock-text
{
    margin-top: 0;
}

.product__colorBlock-text:last-child
{
    margin-bottom: 0;
}

.product__colorBlock--twoCols
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
}

.product__colorBlock--twoCols .product__colorBlock-title
{
    width: 47%;
    margin-right: 12%;
}

.product__colorBlock--twoCols .product__colorBlock-text
{
    width: 41%;
}

.product__leftCol
{
    width: 31.5%;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}

.product__type
{
    margin-top: 55px;
    padding-top: 20px;

    border-top: 1px solid #939393;
}

.product__type-title
{
    font-size: 24px;
    line-height: 140%;

    margin-top: 0;
    margin-bottom: 10px;

    color: #262626;
}

.product__type-text
{
    margin-top: 0;
    padding-right: 15%;

    color: #262626;
}

.product__type-text:last-child
{
    margin-bottom: 0;
}

.product__rightCol
{
    width: 68.5%;
}

.product__items
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.product__item
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    width: 48%;
    max-width: 480px;
    margin-right: 4%;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.product__item:nth-child(2n)
{
    margin-right: 0;
}

.product__item-img
{
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;

    width: auto;
    height: 100%;
    margin-bottom: 5px;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
}

.product__item-img img
{
    max-width: 480px;
    max-height: 100%;
}

.product__item-title
{
    font-size: 13px;
    line-height: 130%;

    max-width: 220px;
    margin: 0;
    margin-top: auto;

    text-align: center;

    color: #828282;
}

/*!
 * animate.css -https://daneden.github.io/animate.css/
 * Version - 3.7.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2019 Daniel Eden
 */

@-webkit-keyframes bounce
{
    from,
    20%,
    53%,
    80%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    40%,
    43%
    {
        -webkit-transform: translate3d(0, -30px, 0);
                transform: translate3d(0, -30px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

    70%
    {
        -webkit-transform: translate3d(0, -15px, 0);
                transform: translate3d(0, -15px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

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

@-moz-keyframes bounce
{
    from,
    20%,
    53%,
    80%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    40%,
    43%
    {
        -webkit-transform: translate3d(0, -30px, 0);
           -moz-transform: translate3d(0, -30px, 0);
                transform: translate3d(0, -30px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
           -moz-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

    70%
    {
        -webkit-transform: translate3d(0, -15px, 0);
           -moz-transform: translate3d(0, -15px, 0);
                transform: translate3d(0, -15px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
           -moz-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

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

@-o-keyframes bounce
{
    from,
    20%,
    53%,
    80%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    40%,
    43%
    {
        -webkit-transform: translate3d(0, -30px, 0);
                transform: translate3d(0, -30px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
             -o-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

    70%
    {
        -webkit-transform: translate3d(0, -15px, 0);
                transform: translate3d(0, -15px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
             -o-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

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

@keyframes bounce
{
    from,
    20%,
    53%,
    80%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    40%,
    43%
    {
        -webkit-transform: translate3d(0, -30px, 0);
           -moz-transform: translate3d(0, -30px, 0);
                transform: translate3d(0, -30px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
           -moz-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
             -o-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

    70%
    {
        -webkit-transform: translate3d(0, -15px, 0);
           -moz-transform: translate3d(0, -15px, 0);
                transform: translate3d(0, -15px, 0);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
           -moz-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
             -o-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
                animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }

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

.bounce
{
    -webkit-transform-origin: center bottom;
       -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
         -o-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-animation-name: bounce;
       -moz-animation-name: bounce;
         -o-animation-name: bounce;
            animation-name: bounce;
}

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

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

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

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

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

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

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

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

.flash
{
    -webkit-animation-name: flash;
       -moz-animation-name: flash;
         -o-animation-name: flash;
            animation-name: flash;
}

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

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

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

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

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

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}

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

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

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

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

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}

.pulse
{
    -webkit-animation-name: pulse;
       -moz-animation-name: pulse;
         -o-animation-name: pulse;
            animation-name: pulse;
}

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

    30%
    {
        -webkit-transform: scale3d(1.25, .75, 1);
                transform: scale3d(1.25, .75, 1);
    }

    40%
    {
        -webkit-transform: scale3d(.75, 1.25, 1);
                transform: scale3d(.75, 1.25, 1);
    }

    50%
    {
        -webkit-transform: scale3d(1.15, .85, 1);
                transform: scale3d(1.15, .85, 1);
    }

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

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

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

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

    30%
    {
        -webkit-transform: scale3d(1.25, .75, 1);
           -moz-transform: scale3d(1.25, .75, 1);
                transform: scale3d(1.25, .75, 1);
    }

    40%
    {
        -webkit-transform: scale3d(.75, 1.25, 1);
           -moz-transform: scale3d(.75, 1.25, 1);
                transform: scale3d(.75, 1.25, 1);
    }

    50%
    {
        -webkit-transform: scale3d(1.15, .85, 1);
           -moz-transform: scale3d(1.15, .85, 1);
                transform: scale3d(1.15, .85, 1);
    }

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

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}

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

    30%
    {
        -webkit-transform: scale3d(1.25, .75, 1);
                transform: scale3d(1.25, .75, 1);
    }

    40%
    {
        -webkit-transform: scale3d(.75, 1.25, 1);
                transform: scale3d(.75, 1.25, 1);
    }

    50%
    {
        -webkit-transform: scale3d(1.15, .85, 1);
                transform: scale3d(1.15, .85, 1);
    }

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

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

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

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

    30%
    {
        -webkit-transform: scale3d(1.25, .75, 1);
           -moz-transform: scale3d(1.25, .75, 1);
                transform: scale3d(1.25, .75, 1);
    }

    40%
    {
        -webkit-transform: scale3d(.75, 1.25, 1);
           -moz-transform: scale3d(.75, 1.25, 1);
                transform: scale3d(.75, 1.25, 1);
    }

    50%
    {
        -webkit-transform: scale3d(1.15, .85, 1);
           -moz-transform: scale3d(1.15, .85, 1);
                transform: scale3d(1.15, .85, 1);
    }

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

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}

.rubberBand
{
    -webkit-animation-name: rubberBand;
       -moz-animation-name: rubberBand;
         -o-animation-name: rubberBand;
            animation-name: rubberBand;
}

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

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

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

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

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

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

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

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

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

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

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

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

.shake
{
    -webkit-animation-name: shake;
       -moz-animation-name: shake;
         -o-animation-name: shake;
            animation-name: shake;
}

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

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

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

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

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

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

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

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

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

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

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

    50%
    {
        -webkit-transform: translateX(0);
           -moz-transform: translateX(0);
                transform: translateX(0);
    }
}

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

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

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

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

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

    50%
    {
        -webkit-transform: translateX(0);
             -o-transform: translateX(0);
                transform: translateX(0);
    }
}

@keyframes headShake
{
    0%
    {
        -webkit-transform: translateX(0);
           -moz-transform: translateX(0);
             -o-transform: translateX(0);
                transform: translateX(0);
    }

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

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

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

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

    50%
    {
        -webkit-transform: translateX(0);
           -moz-transform: translateX(0);
             -o-transform: translateX(0);
                transform: translateX(0);
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.swing
{
    -webkit-transform-origin: top center;
       -moz-transform-origin: top center;
        -ms-transform-origin: top center;
         -o-transform-origin: top center;
            transform-origin: top center;
    -webkit-animation-name: swing;
       -moz-animation-name: swing;
         -o-animation-name: swing;
            animation-name: swing;
}

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

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

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

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

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

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

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

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

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}

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

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

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

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

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

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

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

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

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}

.tada
{
    -webkit-animation-name: tada;
       -moz-animation-name: tada;
         -o-animation-name: tada;
            animation-name: tada;
}

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

@-webkit-keyframes wobble
{
    from
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

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

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

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

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

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

@-moz-keyframes wobble
{
    from
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

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

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

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes wobble
{
    from
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

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

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

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

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

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

@keyframes wobble
{
    from
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

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

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

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.wobble
{
    -webkit-animation-name: wobble;
       -moz-animation-name: wobble;
         -o-animation-name: wobble;
            animation-name: wobble;
}

@-webkit-keyframes jello
{
    from,
    11.1%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

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

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

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

    66.6%
    {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
                transform: skewX(-.78125deg) skewY(-.78125deg);
    }

    77.7%
    {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
                transform: skewX(.390625deg) skewY(.390625deg);
    }

    88.8%
    {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
                transform: skewX(-.1953125deg) skewY(-.1953125deg);
    }
}

@-moz-keyframes jello
{
    from,
    11.1%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

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

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

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

    66.6%
    {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
           -moz-transform: skewX(-.78125deg) skewY(-.78125deg);
                transform: skewX(-.78125deg) skewY(-.78125deg);
    }

    77.7%
    {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
           -moz-transform: skewX(.390625deg) skewY(.390625deg);
                transform: skewX(.390625deg) skewY(.390625deg);
    }

    88.8%
    {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
           -moz-transform: skewX(-.1953125deg) skewY(-.1953125deg);
                transform: skewX(-.1953125deg) skewY(-.1953125deg);
    }
}

@-o-keyframes jello
{
    from,
    11.1%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

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

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

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

    66.6%
    {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
             -o-transform: skewX(-.78125deg) skewY(-.78125deg);
                transform: skewX(-.78125deg) skewY(-.78125deg);
    }

    77.7%
    {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
             -o-transform: skewX(.390625deg) skewY(.390625deg);
                transform: skewX(.390625deg) skewY(.390625deg);
    }

    88.8%
    {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
             -o-transform: skewX(-.1953125deg) skewY(-.1953125deg);
                transform: skewX(-.1953125deg) skewY(-.1953125deg);
    }
}

@keyframes jello
{
    from,
    11.1%,
    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }

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

    33.3%
    {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
           -moz-transform: skewX(6.25deg) skewY(6.25deg);
             -o-transform: skewX(6.25deg) skewY(6.25deg);
                transform: skewX(6.25deg) skewY(6.25deg);
    }

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

    55.5%
    {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
           -moz-transform: skewX(1.5625deg) skewY(1.5625deg);
             -o-transform: skewX(1.5625deg) skewY(1.5625deg);
                transform: skewX(1.5625deg) skewY(1.5625deg);
    }

    66.6%
    {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
           -moz-transform: skewX(-.78125deg) skewY(-.78125deg);
             -o-transform: skewX(-.78125deg) skewY(-.78125deg);
                transform: skewX(-.78125deg) skewY(-.78125deg);
    }

    77.7%
    {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
           -moz-transform: skewX(.390625deg) skewY(.390625deg);
             -o-transform: skewX(.390625deg) skewY(.390625deg);
                transform: skewX(.390625deg) skewY(.390625deg);
    }

    88.8%
    {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
           -moz-transform: skewX(-.1953125deg) skewY(-.1953125deg);
             -o-transform: skewX(-.1953125deg) skewY(-.1953125deg);
                transform: skewX(-.1953125deg) skewY(-.1953125deg);
    }
}

.jello
{
    -webkit-transform-origin: center;
       -moz-transform-origin: center;
        -ms-transform-origin: center;
         -o-transform-origin: center;
            transform-origin: center;
    -webkit-animation-name: jello;
       -moz-animation-name: jello;
         -o-animation-name: jello;
            animation-name: jello;
}

@-webkit-keyframes heartBeat
{
    0%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }

    14%
    {
        -webkit-transform: scale(1.3);
                transform: scale(1.3);
    }

    28%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }

    42%
    {
        -webkit-transform: scale(1.3);
                transform: scale(1.3);
    }

    70%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}

@-moz-keyframes heartBeat
{
    0%
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
                transform: scale(1);
    }

    14%
    {
        -webkit-transform: scale(1.3);
           -moz-transform: scale(1.3);
                transform: scale(1.3);
    }

    28%
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
                transform: scale(1);
    }

    42%
    {
        -webkit-transform: scale(1.3);
           -moz-transform: scale(1.3);
                transform: scale(1.3);
    }

    70%
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
                transform: scale(1);
    }
}

@-o-keyframes heartBeat
{
    0%
    {
        -webkit-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);
    }

    14%
    {
        -webkit-transform: scale(1.3);
             -o-transform: scale(1.3);
                transform: scale(1.3);
    }

    28%
    {
        -webkit-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);
    }

    42%
    {
        -webkit-transform: scale(1.3);
             -o-transform: scale(1.3);
                transform: scale(1.3);
    }

    70%
    {
        -webkit-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);
    }
}

@keyframes heartBeat
{
    0%
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);
    }

    14%
    {
        -webkit-transform: scale(1.3);
           -moz-transform: scale(1.3);
             -o-transform: scale(1.3);
                transform: scale(1.3);
    }

    28%
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);
    }

    42%
    {
        -webkit-transform: scale(1.3);
           -moz-transform: scale(1.3);
             -o-transform: scale(1.3);
                transform: scale(1.3);
    }

    70%
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);
    }
}

.heartBeat
{
    -webkit-animation-name: heartBeat;
       -moz-animation-name: heartBeat;
         -o-animation-name: heartBeat;
            animation-name: heartBeat;
    -webkit-animation-duration: 1.3s;
       -moz-animation-duration: 1.3s;
         -o-animation-duration: 1.3s;
            animation-duration: 1.3s;
    -webkit-animation-timing-function: ease-in-out;
       -moz-animation-timing-function: ease-in-out;
         -o-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceIn
{
    from,
    20%,
    40%,
    60%,
    80%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

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

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

    60%
    {
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
                transform: scale3d(1.03, 1.03, 1.03);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);

        opacity: 1;
    }
}

@-moz-keyframes bounceIn
{
    from,
    20%,
    40%,
    60%,
    80%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

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

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

    60%
    {
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
           -moz-transform: scale3d(1.03, 1.03, 1.03);
                transform: scale3d(1.03, 1.03, 1.03);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);

        opacity: 1;
    }
}

@-o-keyframes bounceIn
{
    from,
    20%,
    40%,
    60%,
    80%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

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

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

    60%
    {
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
                transform: scale3d(1.03, 1.03, 1.03);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);

        opacity: 1;
    }
}

@keyframes bounceIn
{
    from,
    20%,
    40%,
    60%,
    80%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

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

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

    60%
    {
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
           -moz-transform: scale3d(1.03, 1.03, 1.03);
                transform: scale3d(1.03, 1.03, 1.03);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
           -moz-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);

        opacity: 1;
    }
}

.bounceIn
{
    -webkit-animation-name: bounceIn;
       -moz-animation-name: bounceIn;
         -o-animation-name: bounceIn;
            animation-name: bounceIn;
    -webkit-animation-duration: .75s;
       -moz-animation-duration: .75s;
         -o-animation-duration: .75s;
            animation-duration: .75s;
}

@-webkit-keyframes bounceInDown
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, 25px, 0);
                transform: translate3d(0, 25px, 0);

        opacity: 1;
    }

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

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

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

@-moz-keyframes bounceInDown
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: translate3d(0, -3000px, 0);
           -moz-transform: translate3d(0, -3000px, 0);
                transform: translate3d(0, -3000px, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, 25px, 0);
           -moz-transform: translate3d(0, 25px, 0);
                transform: translate3d(0, 25px, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes bounceInDown
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, 25px, 0);
                transform: translate3d(0, 25px, 0);

        opacity: 1;
    }

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

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

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

@keyframes bounceInDown
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: translate3d(0, -3000px, 0);
           -moz-transform: translate3d(0, -3000px, 0);
                transform: translate3d(0, -3000px, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, 25px, 0);
           -moz-transform: translate3d(0, 25px, 0);
                transform: translate3d(0, 25px, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.bounceInDown
{
    -webkit-animation-name: bounceInDown;
       -moz-animation-name: bounceInDown;
         -o-animation-name: bounceInDown;
            animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(25px, 0, 0);
                transform: translate3d(25px, 0, 0);

        opacity: 1;
    }

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

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

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

@-moz-keyframes bounceInLeft
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: translate3d(-3000px, 0, 0);
           -moz-transform: translate3d(-3000px, 0, 0);
                transform: translate3d(-3000px, 0, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(25px, 0, 0);
           -moz-transform: translate3d(25px, 0, 0);
                transform: translate3d(25px, 0, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes bounceInLeft
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(25px, 0, 0);
                transform: translate3d(25px, 0, 0);

        opacity: 1;
    }

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

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

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

@keyframes bounceInLeft
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    0%
    {
        -webkit-transform: translate3d(-3000px, 0, 0);
           -moz-transform: translate3d(-3000px, 0, 0);
                transform: translate3d(-3000px, 0, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(25px, 0, 0);
           -moz-transform: translate3d(25px, 0, 0);
                transform: translate3d(25px, 0, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.bounceInLeft
{
    -webkit-animation-name: bounceInLeft;
       -moz-animation-name: bounceInLeft;
         -o-animation-name: bounceInLeft;
            animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(3000px, 0, 0);
                transform: translate3d(3000px, 0, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(-25px, 0, 0);
                transform: translate3d(-25px, 0, 0);

        opacity: 1;
    }

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

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

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

@-moz-keyframes bounceInRight
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(3000px, 0, 0);
           -moz-transform: translate3d(3000px, 0, 0);
                transform: translate3d(3000px, 0, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(-25px, 0, 0);
           -moz-transform: translate3d(-25px, 0, 0);
                transform: translate3d(-25px, 0, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes bounceInRight
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(3000px, 0, 0);
                transform: translate3d(3000px, 0, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(-25px, 0, 0);
                transform: translate3d(-25px, 0, 0);

        opacity: 1;
    }

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

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

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

@keyframes bounceInRight
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(3000px, 0, 0);
           -moz-transform: translate3d(3000px, 0, 0);
                transform: translate3d(3000px, 0, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(-25px, 0, 0);
           -moz-transform: translate3d(-25px, 0, 0);
                transform: translate3d(-25px, 0, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.bounceInRight
{
    -webkit-animation-name: bounceInRight;
       -moz-animation-name: bounceInRight;
         -o-animation-name: bounceInRight;
            animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(0, 3000px, 0);
                transform: translate3d(0, 3000px, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

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

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

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

@-moz-keyframes bounceInUp
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(0, 3000px, 0);
           -moz-transform: translate3d(0, 3000px, 0);
                transform: translate3d(0, 3000px, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, -20px, 0);
           -moz-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes bounceInUp
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(0, 3000px, 0);
                transform: translate3d(0, 3000px, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

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

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

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

@keyframes bounceInUp
{
    from,
    60%,
    75%,
    90%,
    to
    {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
           -moz-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
             -o-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
                animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }

    from
    {
        -webkit-transform: translate3d(0, 3000px, 0);
           -moz-transform: translate3d(0, 3000px, 0);
                transform: translate3d(0, 3000px, 0);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: translate3d(0, -20px, 0);
           -moz-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

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

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

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.bounceInUp
{
    -webkit-animation-name: bounceInUp;
       -moz-animation-name: bounceInUp;
         -o-animation-name: bounceInUp;
            animation-name: bounceInUp;
}

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

    50%,
    55%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
                transform: scale3d(1.1, 1.1, 1.1);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
}

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

    50%,
    55%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
           -moz-transform: scale3d(1.1, 1.1, 1.1);
                transform: scale3d(1.1, 1.1, 1.1);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
}

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

    50%,
    55%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
                transform: scale3d(1.1, 1.1, 1.1);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
}

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

    50%,
    55%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
           -moz-transform: scale3d(1.1, 1.1, 1.1);
                transform: scale3d(1.1, 1.1, 1.1);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
}

.bounceOut
{
    -webkit-animation-name: bounceOut;
       -moz-animation-name: bounceOut;
         -o-animation-name: bounceOut;
            animation-name: bounceOut;
    -webkit-animation-duration: .75s;
       -moz-animation-duration: .75s;
         -o-animation-duration: .75s;
            animation-duration: .75s;
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, -20px, 0);
           -moz-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 2000px, 0);
           -moz-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, -20px, 0);
           -moz-transform: translate3d(0, -20px, 0);
                transform: translate3d(0, -20px, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 2000px, 0);
           -moz-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }
}

.bounceOutDown
{
    -webkit-animation-name: bounceOutDown;
       -moz-animation-name: bounceOutDown;
         -o-animation-name: bounceOutDown;
            animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft
{
    20%
    {
        -webkit-transform: translate3d(20px, 0, 0);
                transform: translate3d(20px, 0, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes bounceOutLeft
{
    20%
    {
        -webkit-transform: translate3d(20px, 0, 0);
           -moz-transform: translate3d(20px, 0, 0);
                transform: translate3d(20px, 0, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(-2000px, 0, 0);
           -moz-transform: translate3d(-2000px, 0, 0);
                transform: translate3d(-2000px, 0, 0);

        opacity: 0;
    }
}

@-o-keyframes bounceOutLeft
{
    20%
    {
        -webkit-transform: translate3d(20px, 0, 0);
                transform: translate3d(20px, 0, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes bounceOutLeft
{
    20%
    {
        -webkit-transform: translate3d(20px, 0, 0);
           -moz-transform: translate3d(20px, 0, 0);
                transform: translate3d(20px, 0, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(-2000px, 0, 0);
           -moz-transform: translate3d(-2000px, 0, 0);
                transform: translate3d(-2000px, 0, 0);

        opacity: 0;
    }
}

.bounceOutLeft
{
    -webkit-animation-name: bounceOutLeft;
       -moz-animation-name: bounceOutLeft;
         -o-animation-name: bounceOutLeft;
            animation-name: bounceOutLeft;
}

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes bounceOutRight
{
    20%
    {
        -webkit-transform: translate3d(-20px, 0, 0);
           -moz-transform: translate3d(-20px, 0, 0);
                transform: translate3d(-20px, 0, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(2000px, 0, 0);
           -moz-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }
}

@-o-keyframes bounceOutRight
{
    20%
    {
        -webkit-transform: translate3d(-20px, 0, 0);
                transform: translate3d(-20px, 0, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes bounceOutRight
{
    20%
    {
        -webkit-transform: translate3d(-20px, 0, 0);
           -moz-transform: translate3d(-20px, 0, 0);
                transform: translate3d(-20px, 0, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(2000px, 0, 0);
           -moz-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }
}

.bounceOutRight
{
    -webkit-animation-name: bounceOutRight;
       -moz-animation-name: bounceOutRight;
         -o-animation-name: bounceOutRight;
            animation-name: bounceOutRight;
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, 20px, 0);
                transform: translate3d(0, 20px, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, 20px, 0);
           -moz-transform: translate3d(0, 20px, 0);
                transform: translate3d(0, 20px, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, -2000px, 0);
           -moz-transform: translate3d(0, -2000px, 0);
                transform: translate3d(0, -2000px, 0);

        opacity: 0;
    }
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, 20px, 0);
                transform: translate3d(0, 20px, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

    40%,
    45%
    {
        -webkit-transform: translate3d(0, 20px, 0);
           -moz-transform: translate3d(0, 20px, 0);
                transform: translate3d(0, 20px, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, -2000px, 0);
           -moz-transform: translate3d(0, -2000px, 0);
                transform: translate3d(0, -2000px, 0);

        opacity: 0;
    }
}

.bounceOutUp
{
    -webkit-animation-name: bounceOutUp;
       -moz-animation-name: bounceOutUp;
         -o-animation-name: bounceOutUp;
            animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn
{
    from
    {
        opacity: 0;
    }

    to
    {
        opacity: 1;
    }
}

@-moz-keyframes fadeIn
{
    from
    {
        opacity: 0;
    }

    to
    {
        opacity: 1;
    }
}

@-o-keyframes fadeIn
{
    from
    {
        opacity: 0;
    }

    to
    {
        opacity: 1;
    }
}

@keyframes fadeIn
{
    from
    {
        opacity: 0;
    }

    to
    {
        opacity: 1;
    }
}

.fadeIn
{
    -webkit-animation-name: fadeIn;
       -moz-animation-name: fadeIn;
         -o-animation-name: fadeIn;
            animation-name: fadeIn;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInDown
{
    -webkit-animation-name: fadeInDown;
       -moz-animation-name: fadeInDown;
         -o-animation-name: fadeInDown;
            animation-name: fadeInDown;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInDownBig
{
    -webkit-animation-name: fadeInDownBig;
       -moz-animation-name: fadeInDownBig;
         -o-animation-name: fadeInDownBig;
            animation-name: fadeInDownBig;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInLeft
{
    -webkit-animation-name: fadeInLeft;
       -moz-animation-name: fadeInLeft;
         -o-animation-name: fadeInLeft;
            animation-name: fadeInLeft;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInLeftBig
{
    -webkit-animation-name: fadeInLeftBig;
       -moz-animation-name: fadeInLeftBig;
         -o-animation-name: fadeInLeftBig;
            animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight
{
    from
    {
        -webkit-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-moz-keyframes fadeInRight
{
    from
    {
        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-o-keyframes fadeInRight
{
    from
    {
        -webkit-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@keyframes fadeInRight
{
    from
    {
        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInRight
{
    -webkit-animation-name: fadeInRight;
       -moz-animation-name: fadeInRight;
         -o-animation-name: fadeInRight;
            animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig
{
    from
    {
        -webkit-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-moz-keyframes fadeInRightBig
{
    from
    {
        -webkit-transform: translate3d(2000px, 0, 0);
           -moz-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-o-keyframes fadeInRightBig
{
    from
    {
        -webkit-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@keyframes fadeInRightBig
{
    from
    {
        -webkit-transform: translate3d(2000px, 0, 0);
           -moz-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInRightBig
{
    -webkit-animation-name: fadeInRightBig;
       -moz-animation-name: fadeInRightBig;
         -o-animation-name: fadeInRightBig;
            animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp
{
    from
    {
        -webkit-transform: translate3d(0, 40%, 0);
                transform: translate3d(0, 40%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-moz-keyframes fadeInUp
{
    from
    {
        -webkit-transform: translate3d(0, 40%, 0);
           -moz-transform: translate3d(0, 40%, 0);
                transform: translate3d(0, 40%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-o-keyframes fadeInUp
{
    from
    {
        -webkit-transform: translate3d(0, 40%, 0);
                transform: translate3d(0, 40%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@keyframes fadeInUp
{
    from
    {
        -webkit-transform: translate3d(0, 40%, 0);
           -moz-transform: translate3d(0, 40%, 0);
                transform: translate3d(0, 40%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInUp
{
    -webkit-animation-name: fadeInUp;
       -moz-animation-name: fadeInUp;
         -o-animation-name: fadeInUp;
            animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig
{
    from
    {
        -webkit-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-moz-keyframes fadeInUpBig
{
    from
    {
        -webkit-transform: translate3d(0, 2000px, 0);
           -moz-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-o-keyframes fadeInUpBig
{
    from
    {
        -webkit-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@keyframes fadeInUpBig
{
    from
    {
        -webkit-transform: translate3d(0, 2000px, 0);
           -moz-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.fadeInUpBig
{
    -webkit-animation-name: fadeInUpBig;
       -moz-animation-name: fadeInUpBig;
         -o-animation-name: fadeInUpBig;
            animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        opacity: 0;
    }
}

@-moz-keyframes fadeOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        opacity: 0;
    }
}

@-o-keyframes fadeOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        opacity: 0;
    }
}

@keyframes fadeOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        opacity: 0;
    }
}

.fadeOut
{
    -webkit-animation-name: fadeOut;
       -moz-animation-name: fadeOut;
         -o-animation-name: fadeOut;
            animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutDown
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 100%, 0);
           -moz-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutDown
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutDown
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 100%, 0);
           -moz-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);

        opacity: 0;
    }
}

.fadeOutDown
{
    -webkit-animation-name: fadeOutDown;
       -moz-animation-name: fadeOutDown;
         -o-animation-name: fadeOutDown;
            animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutDownBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 2000px, 0);
           -moz-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutDownBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutDownBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 2000px, 0);
           -moz-transform: translate3d(0, 2000px, 0);
                transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }
}

.fadeOutDownBig
{
    -webkit-animation-name: fadeOutDownBig;
       -moz-animation-name: fadeOutDownBig;
         -o-animation-name: fadeOutDownBig;
            animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutLeft
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(-100%, 0, 0);
           -moz-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutLeft
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutLeft
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(-100%, 0, 0);
           -moz-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);

        opacity: 0;
    }
}

.fadeOutLeft
{
    -webkit-animation-name: fadeOutLeft;
       -moz-animation-name: fadeOutLeft;
         -o-animation-name: fadeOutLeft;
            animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutLeftBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(-2000px, 0, 0);
           -moz-transform: translate3d(-2000px, 0, 0);
                transform: translate3d(-2000px, 0, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutLeftBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutLeftBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(-2000px, 0, 0);
           -moz-transform: translate3d(-2000px, 0, 0);
                transform: translate3d(-2000px, 0, 0);

        opacity: 0;
    }
}

.fadeOutLeftBig
{
    -webkit-animation-name: fadeOutLeftBig;
       -moz-animation-name: fadeOutLeftBig;
         -o-animation-name: fadeOutLeftBig;
            animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutRight
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutRight
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutRight
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);

        opacity: 0;
    }
}

.fadeOutRight
{
    -webkit-animation-name: fadeOutRight;
       -moz-animation-name: fadeOutRight;
         -o-animation-name: fadeOutRight;
            animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutRightBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(2000px, 0, 0);
           -moz-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutRightBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutRightBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(2000px, 0, 0);
           -moz-transform: translate3d(2000px, 0, 0);
                transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }
}

.fadeOutRightBig
{
    -webkit-animation-name: fadeOutRightBig;
       -moz-animation-name: fadeOutRightBig;
         -o-animation-name: fadeOutRightBig;
            animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutUp
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, -100%, 0);
           -moz-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutUp
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutUp
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, -100%, 0);
           -moz-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);

        opacity: 0;
    }
}

.fadeOutUp
{
    -webkit-animation-name: fadeOutUp;
       -moz-animation-name: fadeOutUp;
         -o-animation-name: fadeOutUp;
            animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes fadeOutUpBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, -2000px, 0);
           -moz-transform: translate3d(0, -2000px, 0);
                transform: translate3d(0, -2000px, 0);

        opacity: 0;
    }
}

@-o-keyframes fadeOutUpBig
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes fadeOutUpBig
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, -2000px, 0);
           -moz-transform: translate3d(0, -2000px, 0);
                transform: translate3d(0, -2000px, 0);

        opacity: 0;
    }
}

.fadeOutUpBig
{
    -webkit-animation-name: fadeOutUpBig;
       -moz-animation-name: fadeOutUpBig;
         -o-animation-name: fadeOutUpBig;
            animation-name: fadeOutUpBig;
}

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

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

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

    80%
    {
        -webkit-transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }

    to
    {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }
}

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

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

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

    80%
    {
        -webkit-transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
           -moz-transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
           -moz-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }

    to
    {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
           -moz-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
           -moz-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }
}

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

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

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

    80%
    {
        -webkit-transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
             -o-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }

    to
    {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
             -o-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }
}

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

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

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

    80%
    {
        -webkit-transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
           -moz-transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(.95, .95, .95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
           -moz-animation-timing-function: ease-in;
             -o-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }

    to
    {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
           -moz-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
                transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
           -moz-animation-timing-function: ease-in;
             -o-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
    }
}

.animated.flip
{
    -webkit-animation-name: flip;
       -moz-animation-name: flip;
         -o-animation-name: flip;
            animation-name: flip;

    -webkit-backface-visibility: visible;
       -moz-backface-visibility: visible;
            backface-visibility: visible;
}

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

        opacity: 0;
    }

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

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

        opacity: 1;
    }

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

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

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

        opacity: 0;
    }

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

    60%
    {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
           -moz-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
                transform: perspective(400px) rotate3d(1, 0, 0, 10deg);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: perspective(400px);
           -moz-transform: perspective(400px);
                transform: perspective(400px);
    }
}

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

        opacity: 0;
    }

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

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

        opacity: 1;
    }

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

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

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

        opacity: 0;
    }

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

    60%
    {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
           -moz-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
                transform: perspective(400px) rotate3d(1, 0, 0, 10deg);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: perspective(400px);
           -moz-transform: perspective(400px);
                transform: perspective(400px);
    }
}

.flipInX
{
    -webkit-animation-name: flipInX;
       -moz-animation-name: flipInX;
         -o-animation-name: flipInX;
            animation-name: flipInX;

    -webkit-backface-visibility: visible !important;
       -moz-backface-visibility: visible !important;
            backface-visibility: visible !important;
}

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

        opacity: 0;
    }

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

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

        opacity: 1;
    }

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

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

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

        opacity: 0;
    }

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

    60%
    {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
           -moz-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
                transform: perspective(400px) rotate3d(0, 1, 0, 10deg);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: perspective(400px);
           -moz-transform: perspective(400px);
                transform: perspective(400px);
    }
}

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

        opacity: 0;
    }

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

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

        opacity: 1;
    }

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

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

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

        opacity: 0;
    }

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

    60%
    {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
           -moz-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
                transform: perspective(400px) rotate3d(0, 1, 0, 10deg);

        opacity: 1;
    }

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

    to
    {
        -webkit-transform: perspective(400px);
           -moz-transform: perspective(400px);
                transform: perspective(400px);
    }
}

.flipInY
{
    -webkit-animation-name: flipInY;
       -moz-animation-name: flipInY;
         -o-animation-name: flipInY;
            animation-name: flipInY;

    -webkit-backface-visibility: visible !important;
       -moz-backface-visibility: visible !important;
            backface-visibility: visible !important;
}

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

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
           -moz-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
                transform: perspective(400px) rotate3d(1, 0, 0, 90deg);

        opacity: 0;
    }
}

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

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
           -moz-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
                transform: perspective(400px) rotate3d(1, 0, 0, 90deg);

        opacity: 0;
    }
}

.flipOutX
{
    -webkit-animation-name: flipOutX;
       -moz-animation-name: flipOutX;
         -o-animation-name: flipOutX;
            animation-name: flipOutX;
    -webkit-animation-duration: .75s;
       -moz-animation-duration: .75s;
         -o-animation-duration: .75s;
            animation-duration: .75s;

    -webkit-backface-visibility: visible !important;
       -moz-backface-visibility: visible !important;
            backface-visibility: visible !important;
}

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

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
           -moz-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
                transform: perspective(400px) rotate3d(0, 1, 0, 90deg);

        opacity: 0;
    }
}

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

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
           -moz-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
                transform: perspective(400px) rotate3d(0, 1, 0, 90deg);

        opacity: 0;
    }
}

.flipOutY
{
    -webkit-animation-name: flipOutY;
       -moz-animation-name: flipOutY;
         -o-animation-name: flipOutY;
            animation-name: flipOutY;
    -webkit-animation-duration: .75s;
       -moz-animation-duration: .75s;
         -o-animation-duration: .75s;
            animation-duration: .75s;

    -webkit-backface-visibility: visible !important;
       -moz-backface-visibility: visible !important;
            backface-visibility: visible !important;
}

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: skewX(20deg);
                transform: skewX(20deg);

        opacity: 1;
    }

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

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

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: skewX(20deg);
           -moz-transform: skewX(20deg);
                transform: skewX(20deg);

        opacity: 1;
    }

    80%
    {
        -webkit-transform: skewX(-5deg);
           -moz-transform: skewX(-5deg);
                transform: skewX(-5deg);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: skewX(20deg);
             -o-transform: skewX(20deg);
                transform: skewX(20deg);

        opacity: 1;
    }

    80%
    {
        -webkit-transform: skewX(-5deg);
             -o-transform: skewX(-5deg);
                transform: skewX(-5deg);
    }

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

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

        opacity: 0;
    }

    60%
    {
        -webkit-transform: skewX(20deg);
           -moz-transform: skewX(20deg);
             -o-transform: skewX(20deg);
                transform: skewX(20deg);

        opacity: 1;
    }

    80%
    {
        -webkit-transform: skewX(-5deg);
           -moz-transform: skewX(-5deg);
             -o-transform: skewX(-5deg);
                transform: skewX(-5deg);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

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

@-webkit-keyframes lightSpeedOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
                transform: translate3d(100%, 0, 0) skewX(30deg);

        opacity: 0;
    }
}

@-moz-keyframes lightSpeedOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
           -moz-transform: translate3d(100%, 0, 0) skewX(30deg);
                transform: translate3d(100%, 0, 0) skewX(30deg);

        opacity: 0;
    }
}

@-o-keyframes lightSpeedOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
                transform: translate3d(100%, 0, 0) skewX(30deg);

        opacity: 0;
    }
}

@keyframes lightSpeedOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
           -moz-transform: translate3d(100%, 0, 0) skewX(30deg);
                transform: translate3d(100%, 0, 0) skewX(30deg);

        opacity: 0;
    }
}

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

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: center;
           -moz-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: center;
             -o-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }
}

@keyframes rotateIn
{
    from
    {
        -webkit-transform: rotate3d(0, 0, 1, -200deg);
           -moz-transform: rotate3d(0, 0, 1, -200deg);
                transform: rotate3d(0, 0, 1, -200deg);
        -webkit-transform-origin: center;
           -moz-transform-origin: center;
             -o-transform-origin: center;
                transform-origin: center;

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: center;
           -moz-transform-origin: center;
             -o-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }
}

.rotateIn
{
    -webkit-animation-name: rotateIn;
       -moz-animation-name: rotateIn;
         -o-animation-name: rotateIn;
            animation-name: rotateIn;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

.rotateInDownLeft
{
    -webkit-animation-name: rotateInDownLeft;
       -moz-animation-name: rotateInDownLeft;
         -o-animation-name: rotateInDownLeft;
            animation-name: rotateInDownLeft;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

.rotateInDownRight
{
    -webkit-animation-name: rotateInDownRight;
       -moz-animation-name: rotateInDownRight;
         -o-animation-name: rotateInDownRight;
            animation-name: rotateInDownRight;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }
}

.rotateInUpLeft
{
    -webkit-animation-name: rotateInUpLeft;
       -moz-animation-name: rotateInUpLeft;
         -o-animation-name: rotateInUpLeft;
            animation-name: rotateInUpLeft;
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }
}

.rotateInUpRight
{
    -webkit-animation-name: rotateInUpRight;
       -moz-animation-name: rotateInUpRight;
         -o-animation-name: rotateInUpRight;
            animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut
{
    from
    {
        -webkit-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes rotateOut
{
    from
    {
        -webkit-transform-origin: center;
           -moz-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-o-keyframes rotateOut
{
    from
    {
        -webkit-transform-origin: center;
             -o-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes rotateOut
{
    from
    {
        -webkit-transform-origin: center;
           -moz-transform-origin: center;
             -o-transform-origin: center;
                transform-origin: center;

        opacity: 1;
    }

    to
    {
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
           -moz-transform: rotate3d(0, 0, 1, 200deg);
                transform: rotate3d(0, 0, 1, 200deg);
        -webkit-transform-origin: center;
           -moz-transform-origin: center;
             -o-transform-origin: center;
                transform-origin: center;

        opacity: 0;
    }
}

.rotateOut
{
    -webkit-animation-name: rotateOut;
       -moz-animation-name: rotateOut;
         -o-animation-name: rotateOut;
            animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes rotateOutDownLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-o-keyframes rotateOutDownLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes rotateOutDownLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

    to
    {
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
           -moz-transform: rotate3d(0, 0, 1, 45deg);
                transform: rotate3d(0, 0, 1, 45deg);
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 0;
    }
}

.rotateOutDownLeft
{
    -webkit-animation-name: rotateOutDownLeft;
       -moz-animation-name: rotateOutDownLeft;
         -o-animation-name: rotateOutDownLeft;
            animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight
{
    from
    {
        -webkit-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes rotateOutDownRight
{
    from
    {
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-o-keyframes rotateOutDownRight
{
    from
    {
        -webkit-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes rotateOutDownRight
{
    from
    {
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

    to
    {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
           -moz-transform: rotate3d(0, 0, 1, -45deg);
                transform: rotate3d(0, 0, 1, -45deg);
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 0;
    }
}

.rotateOutDownRight
{
    -webkit-animation-name: rotateOutDownRight;
       -moz-animation-name: rotateOutDownRight;
         -o-animation-name: rotateOutDownRight;
            animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes rotateOutUpLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-o-keyframes rotateOutUpLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes rotateOutUpLeft
{
    from
    {
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 1;
    }

    to
    {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
           -moz-transform: rotate3d(0, 0, 1, -45deg);
                transform: rotate3d(0, 0, 1, -45deg);
        -webkit-transform-origin: left bottom;
           -moz-transform-origin: left bottom;
             -o-transform-origin: left bottom;
                transform-origin: left bottom;

        opacity: 0;
    }
}

.rotateOutUpLeft
{
    -webkit-animation-name: rotateOutUpLeft;
       -moz-animation-name: rotateOutUpLeft;
         -o-animation-name: rotateOutUpLeft;
            animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight
{
    from
    {
        -webkit-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes rotateOutUpRight
{
    from
    {
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-o-keyframes rotateOutUpRight
{
    from
    {
        -webkit-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes rotateOutUpRight
{
    from
    {
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 1;
    }

    to
    {
        -webkit-transform: rotate3d(0, 0, 1, 90deg);
           -moz-transform: rotate3d(0, 0, 1, 90deg);
                transform: rotate3d(0, 0, 1, 90deg);
        -webkit-transform-origin: right bottom;
           -moz-transform-origin: right bottom;
             -o-transform-origin: right bottom;
                transform-origin: right bottom;

        opacity: 0;
    }
}

.rotateOutUpRight
{
    -webkit-animation-name: rotateOutUpRight;
       -moz-animation-name: rotateOutUpRight;
         -o-animation-name: rotateOutUpRight;
            animation-name: rotateOutUpRight;
}

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

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 700px, 0);
                transform: translate3d(0, 700px, 0);

        opacity: 0;
    }
}

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

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 700px, 0);
           -moz-transform: translate3d(0, 700px, 0);
                transform: translate3d(0, 700px, 0);

        opacity: 0;
    }
}

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

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 700px, 0);
                transform: translate3d(0, 700px, 0);

        opacity: 0;
    }
}

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

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

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(0, 700px, 0);
           -moz-transform: translate3d(0, 700px, 0);
                transform: translate3d(0, 700px, 0);

        opacity: 0;
    }
}

.hinge
{
    -webkit-animation-name: hinge;
       -moz-animation-name: hinge;
         -o-animation-name: hinge;
            animation-name: hinge;
    -webkit-animation-duration: 2s;
       -moz-animation-duration: 2s;
         -o-animation-duration: 2s;
            animation-duration: 2s;
}

@-webkit-keyframes jackInTheBox
{
    from
    {
        -webkit-transform: scale(.1) rotate(30deg);
                transform: scale(.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
                transform-origin: center bottom;

        opacity: 0;
    }

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

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

    to
    {
        -webkit-transform: scale(1);
                transform: scale(1);

        opacity: 1;
    }
}

@-moz-keyframes jackInTheBox
{
    from
    {
        -webkit-transform: scale(.1) rotate(30deg);
           -moz-transform: scale(.1) rotate(30deg);
                transform: scale(.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
           -moz-transform-origin: center bottom;
                transform-origin: center bottom;

        opacity: 0;
    }

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

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

    to
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
                transform: scale(1);

        opacity: 1;
    }
}

@-o-keyframes jackInTheBox
{
    from
    {
        -webkit-transform: scale(.1) rotate(30deg);
             -o-transform: scale(.1) rotate(30deg);
                transform: scale(.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
             -o-transform-origin: center bottom;
                transform-origin: center bottom;

        opacity: 0;
    }

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

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

    to
    {
        -webkit-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);

        opacity: 1;
    }
}

@keyframes jackInTheBox
{
    from
    {
        -webkit-transform: scale(.1) rotate(30deg);
           -moz-transform: scale(.1) rotate(30deg);
             -o-transform: scale(.1) rotate(30deg);
                transform: scale(.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
           -moz-transform-origin: center bottom;
             -o-transform-origin: center bottom;
                transform-origin: center bottom;

        opacity: 0;
    }

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

    70%
    {
        -webkit-transform: rotate(3deg);
           -moz-transform: rotate(3deg);
             -o-transform: rotate(3deg);
                transform: rotate(3deg);
    }

    to
    {
        -webkit-transform: scale(1);
           -moz-transform: scale(1);
             -o-transform: scale(1);
                transform: scale(1);

        opacity: 1;
    }
}

.jackInTheBox
{
    -webkit-animation-name: jackInTheBox;
       -moz-animation-name: jackInTheBox;
         -o-animation-name: jackInTheBox;
            animation-name: jackInTheBox;
}

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

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

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

        opacity: 0;
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.rollIn
{
    -webkit-animation-name: rollIn;
       -moz-animation-name: rollIn;
         -o-animation-name: rollIn;
            animation-name: rollIn;
}

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

@-webkit-keyframes rollOut
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes rollOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
           -moz-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
                transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);

        opacity: 0;
    }
}

@-o-keyframes rollOut
{
    from
    {
        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes rollOut
{
    from
    {
        opacity: 1;
    }

    to
    {
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
           -moz-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
                transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);

        opacity: 0;
    }
}

.rollOut
{
    -webkit-animation-name: rollOut;
       -moz-animation-name: rollOut;
         -o-animation-name: rollOut;
            animation-name: rollOut;
}

@-webkit-keyframes zoomIn
{
    from
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    50%
    {
        opacity: 1;
    }
}

@-moz-keyframes zoomIn
{
    from
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    50%
    {
        opacity: 1;
    }
}

@-o-keyframes zoomIn
{
    from
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    50%
    {
        opacity: 1;
    }
}

@keyframes zoomIn
{
    from
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    50%
    {
        opacity: 1;
    }
}

.zoomIn
{
    -webkit-animation-name: zoomIn;
       -moz-animation-name: zoomIn;
         -o-animation-name: zoomIn;
            animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-moz-keyframes zoomInDown
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-o-keyframes zoomInDown
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@keyframes zoomInDown
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.zoomInDown
{
    -webkit-animation-name: zoomInDown;
       -moz-animation-name: zoomInDown;
         -o-animation-name: zoomInDown;
            animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-moz-keyframes zoomInLeft
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-o-keyframes zoomInLeft
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@keyframes zoomInLeft
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.zoomInLeft
{
    -webkit-animation-name: zoomInLeft;
       -moz-animation-name: zoomInLeft;
         -o-animation-name: zoomInLeft;
            animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-moz-keyframes zoomInRight
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-o-keyframes zoomInRight
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@keyframes zoomInRight
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
                transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.zoomInRight
{
    -webkit-animation-name: zoomInRight;
       -moz-animation-name: zoomInRight;
         -o-animation-name: zoomInRight;
            animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-moz-keyframes zoomInUp
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@-o-keyframes zoomInUp
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

@keyframes zoomInUp
{
    from
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }

    60%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.zoomInUp
{
    -webkit-animation-name: zoomInUp;
       -moz-animation-name: zoomInUp;
         -o-animation-name: zoomInUp;
            animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut
{
    from
    {
        opacity: 1;
    }

    50%
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    to
    {
        opacity: 0;
    }
}

@-moz-keyframes zoomOut
{
    from
    {
        opacity: 1;
    }

    50%
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    to
    {
        opacity: 0;
    }
}

@-o-keyframes zoomOut
{
    from
    {
        opacity: 1;
    }

    50%
    {
        -webkit-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    to
    {
        opacity: 0;
    }
}

@keyframes zoomOut
{
    from
    {
        opacity: 1;
    }

    50%
    {
        -webkit-transform: scale3d(.3, .3, .3);
           -moz-transform: scale3d(.3, .3, .3);
                transform: scale3d(.3, .3, .3);

        opacity: 0;
    }

    to
    {
        opacity: 0;
    }
}

.zoomOut
{
    -webkit-animation-name: zoomOut;
       -moz-animation-name: zoomOut;
         -o-animation-name: zoomOut;
            animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

@-moz-keyframes zoomOutDown
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
           -moz-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

@-o-keyframes zoomOutDown
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
             -o-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

@keyframes zoomOutDown
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
           -moz-transform-origin: center bottom;
             -o-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

.zoomOutDown
{
    -webkit-animation-name: zoomOutDown;
       -moz-animation-name: zoomOutDown;
         -o-animation-name: zoomOutDown;
            animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-moz-keyframes zoomOutLeft
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@-o-keyframes zoomOutLeft
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);

        opacity: 1;
    }

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

        opacity: 0;
    }
}

@keyframes zoomOutLeft
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
                transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
           -moz-transform: scale(.1) translate3d(-2000px, 0, 0);
                transform: scale(.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
           -moz-transform-origin: left center;
             -o-transform-origin: left center;
                transform-origin: left center;

        opacity: 0;
    }
}

.zoomOutLeft
{
    -webkit-animation-name: zoomOutLeft;
       -moz-animation-name: zoomOutLeft;
         -o-animation-name: zoomOutLeft;
            animation-name: zoomOutLeft;
}

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

        opacity: 1;
    }

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

        opacity: 0;
    }
}

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

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
           -moz-transform: scale(.1) translate3d(2000px, 0, 0);
                transform: scale(.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
           -moz-transform-origin: right center;
             -o-transform-origin: right center;
                transform-origin: right center;

        opacity: 0;
    }
}

.zoomOutRight
{
    -webkit-animation-name: zoomOutRight;
       -moz-animation-name: zoomOutRight;
         -o-animation-name: zoomOutRight;
            animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

@-moz-keyframes zoomOutUp
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
           -moz-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

@-o-keyframes zoomOutUp
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
             -o-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

@keyframes zoomOutUp
{
    40%
    {
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
           -moz-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
                transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
           -moz-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
             -o-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
                animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }

    to
    {
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
           -moz-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
                transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
           -moz-transform-origin: center bottom;
             -o-transform-origin: center bottom;
                transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
           -moz-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
             -o-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
                animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

.zoomOutUp
{
    -webkit-animation-name: zoomOutUp;
       -moz-animation-name: zoomOutUp;
         -o-animation-name: zoomOutUp;
            animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }

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

@-moz-keyframes slideInDown
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, -100%, 0);
           -moz-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes slideInDown
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }

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

@keyframes slideInDown
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, -100%, 0);
           -moz-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.slideInDown
{
    -webkit-animation-name: slideInDown;
       -moz-animation-name: slideInDown;
         -o-animation-name: slideInDown;
            animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }

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

@-moz-keyframes slideInLeft
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(-100%, 0, 0);
           -moz-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes slideInLeft
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }

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

@keyframes slideInLeft
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(-100%, 0, 0);
           -moz-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.slideInLeft
{
    -webkit-animation-name: slideInLeft;
       -moz-animation-name: slideInLeft;
         -o-animation-name: slideInLeft;
            animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }

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

@-moz-keyframes slideInRight
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes slideInRight
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }

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

@keyframes slideInRight
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.slideInRight
{
    -webkit-animation-name: slideInRight;
       -moz-animation-name: slideInRight;
         -o-animation-name: slideInRight;
            animation-name: slideInRight;
}

@-webkit-keyframes slideInUp
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }

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

@-moz-keyframes slideInUp
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, 100%, 0);
           -moz-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-o-keyframes slideInUp
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }

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

@keyframes slideInUp
{
    from
    {
        visibility: visible;

        -webkit-transform: translate3d(0, 100%, 0);
           -moz-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }

    to
    {
        -webkit-transform: translate3d(0, 0, 0);
           -moz-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

.slideInUp
{
    -webkit-animation-name: slideInUp;
       -moz-animation-name: slideInUp;
         -o-animation-name: slideInUp;
            animation-name: slideInUp;
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, 100%, 0);
           -moz-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, 100%, 0);
           -moz-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
    }
}

.slideOutDown
{
    -webkit-animation-name: slideOutDown;
       -moz-animation-name: slideOutDown;
         -o-animation-name: slideOutDown;
            animation-name: slideOutDown;
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(-100%, 0, 0);
           -moz-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(-100%, 0, 0);
           -moz-transform: translate3d(-100%, 0, 0);
                transform: translate3d(-100%, 0, 0);
    }
}

.slideOutLeft
{
    -webkit-animation-name: slideOutLeft;
       -moz-animation-name: slideOutLeft;
         -o-animation-name: slideOutLeft;
            animation-name: slideOutLeft;
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(100%, 0, 0);
           -moz-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
    }
}

.slideOutRight
{
    -webkit-animation-name: slideOutRight;
       -moz-animation-name: slideOutRight;
         -o-animation-name: slideOutRight;
            animation-name: slideOutRight;
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, -100%, 0);
           -moz-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
}

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

    to
    {
        visibility: hidden;

        -webkit-transform: translate3d(0, -100%, 0);
           -moz-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
}

.slideOutUp
{
    -webkit-animation-name: slideOutUp;
       -moz-animation-name: slideOutUp;
         -o-animation-name: slideOutUp;
            animation-name: slideOutUp;
}

.animated
{
    -webkit-animation-duration: 1s;
       -moz-animation-duration: 1s;
         -o-animation-duration: 1s;
            animation-duration: 1s;

    -webkit-animation-fill-mode: both;
       -moz-animation-fill-mode: both;
         -o-animation-fill-mode: both;
            animation-fill-mode: both;
}

.animated.infinite
{
    -webkit-animation-iteration-count: infinite;
       -moz-animation-iteration-count: infinite;
         -o-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
}

.animated.delay-1s
{
    -webkit-animation-delay: 1s;
       -moz-animation-delay: 1s;
         -o-animation-delay: 1s;
            animation-delay: 1s;
}

.animated.delay-2s
{
    -webkit-animation-delay: 2s;
       -moz-animation-delay: 2s;
         -o-animation-delay: 2s;
            animation-delay: 2s;
}

.animated.delay-3s
{
    -webkit-animation-delay: 3s;
       -moz-animation-delay: 3s;
         -o-animation-delay: 3s;
            animation-delay: 3s;
}

.animated.delay-4s
{
    -webkit-animation-delay: 4s;
       -moz-animation-delay: 4s;
         -o-animation-delay: 4s;
            animation-delay: 4s;
}

.animated.delay-5s
{
    -webkit-animation-delay: 5s;
       -moz-animation-delay: 5s;
         -o-animation-delay: 5s;
            animation-delay: 5s;
}

.animated.fast
{
    -webkit-animation-duration: 800ms;
       -moz-animation-duration: 800ms;
         -o-animation-duration: 800ms;
            animation-duration: 800ms;
}

.animated.faster
{
    -webkit-animation-duration: 500ms;
       -moz-animation-duration: 500ms;
         -o-animation-duration: 500ms;
            animation-duration: 500ms;
}

.animated.slow
{
    -webkit-animation-duration: 2s;
       -moz-animation-duration: 2s;
         -o-animation-duration: 2s;
            animation-duration: 2s;
}

.animated.slower
{
    -webkit-animation-duration: 3s;
       -moz-animation-duration: 3s;
         -o-animation-duration: 3s;
            animation-duration: 3s;
}

@media screen and (min-width: 1360px)
{
    .header--main .header__bottom
    {
        padding-top: 350px;
        padding-top: 42vh;
    }
}

@media screen and (min-width: 1600px)
{
    .header--ethics .header__bottom
    {
        min-height: 46.25vw;
    }

    .header--ethics .header__info
    {
        padding-top: 7vw;
    }

    .header--dermatology .header__bottom
    {
        min-height: 38.8vw;
    }

    .header--dermatology .header__info
    {
        padding-top: 7vw;
    }

    .header--gynecology .header__bottom
    {
        min-height: 38.8vw;
    }

    .header--gynecology .header__info
    {
        padding-top: 7vw;
    }

    .header--pediatrics .header__bottom
    {
        min-height: 38.8vw;
    }

    .header--pediatrics .header__info
    {
        padding-top: 7vw;
    }

    .footer__inner
    {
        width: 100%;

        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
           -moz-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
    }

    .footer__col
    {
        width: auto;
        max-width: 240px;
        margin-right: 0;
        padding-right: 20px;
    }

    .footer__col:nth-child(3)
    {
        margin-right: 0;
    }

    .footer__info
    {
        width: 500px;
    }

    .footer__copyright
    {
        width: 500px;
    }

    .main-ethics__info
    {
        height: 100%;
        padding-bottom: 50px;
    }

    .main-ethics__wrapper
    {
        height: 100%;
    }

    .main-ethics__text
    {
        margin-bottom: 253px;
    }

    .main-ethics
    {
        min-height: 33.8vw;
    }

    .main-direction__items
    {
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
           -moz-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
    }

    .main-direction__item
    {
        width: 50%; /* было 32 */
        max-width: none;
        padding-right: 30px;
    }

    .main-direction__item:last-child
    {
        margin-right: 0;
    }

    .main-news__slider-item
    {
        width: 390px;
        padding-right: 20px;
        padding-left: 20px;
    }

    .products__item
    {
        max-width: 100%;
        padding-bottom: 0;
    }

    .products__type-desc
    {
        margin-bottom: 80px;
    }

    .products__type
    {
        padding-right: 40px;
        padding-left: 40px;
    }

    .product__item
    {
        max-width: 100%;
    }

    .product__block--mikozan .product__item
    {
        max-width: 100%;
    }
}

@media screen and (min-width: 1700px)
{
    .article__subtitle
    {
        font-size: 34px;
    }

    .article__subSubtitle
    {
        font-size: 22px;
    }

    .textBlock--lead p
    {
        font-size: 18px;
    }

    .textBlock
    {
        font-size: 20px;
    }

    .news__item
    {
        margin-bottom: 46px;
    }
}

@media screen and (min-width: 1900px)
{
    .main-ethics
    {
        min-height: 650px;
    }
}

@media screen and (min-width: 2000px)
{
    .header--ethics .header__bottom
    {
        min-height: 920px;
    }

    .header--ethics .header__info
    {
        padding-top: 135px;
    }

    .header--dermatology .header__bottom
    {
        min-height: 775px;
    }

    .header--dermatology .header__info
    {
        padding-top: 135px;
    }

    .header--gynecology .header__bottom
    {
        min-height: 775px;
    }

    .header--gynecology .header__info
    {
        padding-top: 135px;
    }

    .header--pediatrics .header__bottom
    {
        min-height: 775px;
    }

    .header--pediatrics .header__info
    {
        padding-top: 135px;
    }
}

@media screen and (max-width: 1500px)
{
    .footer__col
    {
        max-width: 180px;
        padding-right: 20px;
    }

    .footer__inner
    {
        width: 100%;

        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
           -moz-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

@media screen and (max-width: 1350px)
{
    .history__wrapper
    {
        padding-right: 7.8%;
        padding-left: 7.8%;
    }

    .product__block--invarkids .product__item-img
    {
        max-width: 100%;
    }

    .product__block--invarkids .product__item-img img
    {
        max-width: 100%;
    }
}

@media screen and (max-width: 1300px)
{
    .header--news .header__title
    {
        font-size: 72px;
    }

    .header--news .header__info
    {
        padding-top: 132px;
    }

    .header--news .header__bottom .search-btn
    {
        bottom: 35px;
    }

    .modal-search--results .modal-search__title
    {
        font-size: 72px;

        max-width: -webkit-calc(100% - 310px);
        max-width:    -moz-calc(100% - 310px);
        max-width:         calc(100% - 310px);
    }

    .modal-search--results .modal-search__top
    {
        padding-top: 132px;
    }

    .modal-search--results .search-form
    {
        bottom: 93px;
    }

    .modal-search--results .search-form__input
    {
        width: 300px;
    }

    .news__item
    {
        width: 31%;
        margin-right: 3.5%;
    }

    .news__item:nth-child(4n)
    {
        margin-right: 3.5%;
    }

    .news__item:nth-child(3n)
    {
        margin-right: 0;
    }

    .news .link
    {
        margin-left: 69%;
    }
}

@media screen and (max-width: 1250px)
{
    .footer__inner
    {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
    }

    .footer__col
    {
        width: 50%;
        max-width: none;
        margin-right: 0;
        margin-bottom: 50px;
        padding-right: 34px;
    }

    .footer__col:last-child
    {
        margin-bottom: 0;
    }

    .footer__col:nth-child(3)
    {
        margin-right: 0;
    }

    .footer__top
    {
        padding-bottom: 70px;
    }

    .footer__inner
    {
        padding-top: 60px;
    }

    .footer__logo
    {
        margin-bottom: 40px;
    }

    .our-principles__wrapper
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .our-principles__title
    {
        max-width: 100%;
        margin-bottom: 80px;
    }

    .our-principles__items
    {
        margin-left: 0;
        padding-top: 0;
    }

    .product__item-img
    {
        width: 100%;
    }

    .product__block--skincap .product__row
    {
        padding-bottom: 100px;
    }
}

@media screen and (max-width: 1150px)
{
    .main-brands__wrapper
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .main-brands__rightCol
    {
        width: 100%;
        margin-left: 0;
    }

    .main-brands__title
    {
        margin-top: 0;
        margin-bottom: 20px;
    }

    .main-brands__slider::after
    {
        width: 100%;
    }

    .main-ethics__info
    {
        padding-right: 40px;
        padding-left: 40px;
    }

    .main-direction__items
    {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
                justify-content: space-around;
    }

    .main-direction__item
    {
        width: 50%;
        margin-bottom: 50px;
        padding-right: 40px;
        padding-left: 40px;
    }

    .main-direction__item:nth-child(1)
    {
        padding-left: 0;
    }

    .main-direction__item:nth-child(2)
    {
        padding-right: 0;
    }

    .main-direction__item:last-child
    {
        margin-bottom: 0;
    }

    .main-news__slider-item
    {
        width: 325px;
        padding-right: 10px;
        padding-left: 10px;
    }

    .main-news__slider-inner
    {
        overflow: hidden;
    }

    .our-values__items
    {
        margin-left: 0;
        padding-top: 0;
    }

    .our-values__wrapper
    {
                flex-direction: column;

        padding-bottom: 120px;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .our-values__title
    {
        margin-bottom: 50px;
    }

    .history__wrapper
    {
        padding-right: 40px;
        padding-left: 40px;
    }

    .history__header-item:nth-child(2n) .history__header-text
    {
        padding-right: 52px;
    }

    .history__header-item:nth-child(2n) .history__header-year
    {
        margin-right: 52px;
    }

    .history__header-item:nth-child(2n+1) .history__header-text
    {
        padding-left: 52px;
    }

    .history__header-item:nth-child(2n+1) .history__header-year
    {
        margin-left: 52px;
    }

    .history__item:nth-child(2n+1) .history__item-text
    {
        padding-left: 52px;
    }

    .history__item:nth-child(2n+1) .history__item-year
    {
        margin-left: 52px;
    }

    .history__item:nth-child(2n) .history__item-text
    {
        padding-right: 52px;
    }

    .history__item:nth-child(2n) .history__item-year
    {
        margin-right: 52px;
    }

    .advantages__top
    {
                flex-direction: column;

        padding-bottom: 80px;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .advantages__title
    {
        width: 100%;
        max-width: 100%;
        margin-bottom: 30px;
        padding-right: 0;
    }

    .advantages__desc
    {
        width: 100%;
        padding-top: 0;
        padding-right: 0;
    }

    .advantages__item
    {
        width: 48%;
        margin-right: 4%;
        margin-bottom: 40px;
    }

    .advantages__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .advantages__wrapper
    {
        padding-bottom: 80px;
    }

    .vacancies__item
    {
        width: 48%;
        margin-right: 4%;
    }

    .vacancies__item:nth-child(3n)
    {
        margin-right: 4%;
    }

    .vacancies__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .products__row
    {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
    }

    .products__type
    {
        width: 100%;
        margin-right: 0;
        margin-bottom: 45px;
    }

    .products__row--reverse .products__type
    {
        margin-left: 0;

        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
           -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
                order: 1;
    }

    .products__row--reverse .products__item
    {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
           -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
                order: 2;
    }

    .products__item
    {
        width: 48%;
        margin-right: 4%;
    }

    .products__item--doubleWidth
    {
        width: 100%;
    }

    .products__item-img img
    {
        max-height: 400px;
    }
}

@media screen and (max-width: 1100px)
{
    .product__leftCol
    {
        width: 100%;
    }

    .product__rightCol
    {
        width: 100%;
    }

    .product__type
    {
        margin-top: 0;
        margin-bottom: 30px;
    }

    .product__type-text
    {
        padding-right: 0;
    }

    .product__block--dikirogen .product__item
    {
        margin-top: 96px;
    }

    .product__block--invarkids .product__row--colorBlockAndText .product__leftCol
    {
        width: 55%;
        margin-right: 0;
    }

    .product__block--invarkids .product__row--colorBlockAndText
    {
        display: -webkit-box;
        display: -webkit-flex;
        display:    -moz-box;
        display: -ms-flexbox;
        display:         flex;

        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
           -moz-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
    }

    .product__block--invarkids .product__row--colorBlockAndText .product__rightCol p
    {
        padding-right: 0;
    }

    .product__block--skincap .product__colorBlock-text
    {
        max-width: 100%;
    }

    .product__block--skincap .product__leftCol
    {
        margin-bottom: 110px;
    }

    .product__block--mikozan .product__item
    {
        margin-top: 0;
    }

    .product__block--mikozan .product__leftCol
    {
        margin-bottom: 78px;
    }

    .product__block--mikozan .product__row
    {
        padding-bottom: 145px;
    }
}

@media screen and (max-width: 1024px)
{
    .btn:hover
    {
        background: #0d397f;
    }

    .header__top-wrapper
    {
                flex-direction: column;

        padding-top: 15px;
        padding-right: 15px;
        padding-bottom: 17px;
        padding-left: 15px;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
           -moz-box-pack: start;
        -ms-flex-pack: start;
                justify-content: flex-start;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
           -moz-box-align: start;
        -ms-flex-align: start;
                align-items: flex-start;
    }

    .header__wrapper
    {
        padding-top: 50px;
    }

    .header__logo
    {
        width: 120px;
        height: 18px;
    }

    .header--news .header__title
    {
        font-size: 62px;
    }

    .header--news .header__info
    {
        padding-top: 163px;
    }

    .header__top
    {
        position: fixed;

        height: auto;
        min-height: 50px;
    }

    .header__top-wrapper
    {
        min-height: 50px;
    }

    .header__top.openMenu
    {
        position: absolute;
        position: fixed;
        z-index: 1;
        top: 0;
        left: 0;

        width: 100%;
        min-height: 100vh;
    }

    .header__top.openMenu .header__logo
    {
        margin-bottom: 14vh;
    }

    .header__top.openMenu .header__top-wrapper
    {
        height: 100%;
        min-height: 100vh;
        padding-bottom: 21px;
    }

    .header__top.openMenu .header__copyright
    {
        font-size: 13px;
        line-height: 15px;

        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display:    -moz-inline-box;
        display: -ms-inline-flexbox;
        display:         inline-flex;

        margin-top: auto;

        color: #878787;
    }

    .header--pediatrics:before
    {
        top: 50px;
    }

    .header--dermatology:before
    {
        top: 50px;
    }

    .header--gynecology:before
    {
        top: 50px;
    }

    .header--career
    {
        background: #fff url(/local/templates/invar/assets/css/../img/career-top-banner.jpg) center 50px no-repeat;
        -moz-background-size: cover;
             background-size: cover;
    }

    .header--404 .header__title
    {
        font-size: 42px;
        line-height: 110%;

        margin-bottom: 30px;
    }

    .header--404 .header__text
    {
        font-size: 15px;
        line-height: 140%;
    }

    .header--404 .header__info
    {
        padding-top: 161px;
        padding-bottom: 262px;
    }

    .header--agreement .header__title
    {
        font-size: 32px;
        line-height: 110%;
    }

    .nav
    {
        font-size: 30px;
        font-weight: 300;
        line-height: 130%;

        position: absolute;

        visibility: hidden;

        width: 100%;

        letter-spacing: -.01em;

        opacity: 0;
        background: #fff;
    }

    .nav__subitems
    {
        position: static;

        padding-top: 15px;
        padding-bottom: 9px;
        padding-left: 31px;
    }

    .nav__subitems a
    {
        font-size: 16px;
        font-weight: normal;
        line-height: 140%;

        color: #0d397f;
    }

    .nav__item > a > span
    {
        padding-top: 0;
        padding-bottom: 0;
    }

    .nav__items
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .nav__item
    {
        overflow: hidden;

        width: 100%;
        margin-bottom: 8px;
        margin-left: 0;
    }

    .nav__item--dropdown
    {
        position: relative;
    }

    .nav__item--dropdown:before
    {
        position: absolute;
        top: 15px;
        right: 5px;

        width: 10px;
        height: 10px;

        content: '';
        -webkit-transition: .2s;
           -moz-transition: .2s;
             -o-transition: .2s;
                transition: .2s;

        background: url(/local/templates/invar/assets/css/../img/down-arrow.svg) 0 0 no-repeat;
        -moz-background-size: 100% 100%;
             background-size: 100% 100%;
    }

    .nav__item--dropdown.openDropdown:before
    {
        -webkit-transform: rotate(180deg);
           -moz-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
             -o-transform: rotate(180deg);
                transform: rotate(180deg);
    }

    .nav__open
    {
        display: block;
    }

    .openMenu .nav
    {
        position: static;

        visibility: visible;

        -webkit-transition: .7s;
           -moz-transition: .7s;
             -o-transition: .7s;
                transition: .7s;

        opacity: 1;
    }

    .openMenu .nav__open
    {
        display: none;
    }

    .openMenu .nav__close
    {
        display: block;
    }

    .openMenu .nav__subitems
    {
        display: none;
        visibility: visible;

        -webkit-transition: 0s;
           -moz-transition: 0s;
             -o-transition: 0s;
                transition: 0s;

        opacity: 1;
    }

    .openMenu .nav__subitems li
    {
        visibility: visible;

        opacity: 1;
    }

    .modal-search
    {
        height: -webkit-calc(100vh - 50px);
        height:    -moz-calc(100vh - 50px);
        height:         calc(100vh - 50px);
    }

    .modal-search--results .modal-search__title
    {
        font-size: 62px;

        max-width: 100%;
    }

    .modal-search--results .modal-search__top
    {
        padding-top: 163px;
    }

    .modal-search--results .search-form__input
    {
        width: 200px;
    }

    .article--vacancy .article__sideColumn .vacancy-info
    {
        display: none;
    }

    .article--vacancy .article__sideColumn .btn--disabled
    {
        display: none;
    }

    .article--vacancy .article__sideColumn .btn
    {
        margin-bottom: 0;
    }

    .article__centerColumn
    {
        max-width: 100%;
    }


    .article__index
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .article__sideColumn
    {
        margin-top: 40px;
        margin-left: 0;
    }

    .article--vacancy .article__sideColumn
    {
        width: 100%;
        margin-left: 0;
    }

    .news__item
    {
        width: 48%;
        margin-right: 4%;
    }

    .news__item:nth-child(4n)
    {
        margin-right: 0;
    }

    .news__item:nth-child(3n)
    {
        margin-right: 4%;
    }

    .news__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .news .link
    {
        margin-left: 52%;
    }
}

@media screen and (max-width: 1000px)
{
    .vacancies__item
    {
        width: 28.5%;
        margin-right: 7.25%;
    }

    .vacancies__item:nth-child(2n)
    {
        margin-right: 7.25%;
    }

    .vacancies__item:nth-child(3n)
    {
        margin-right: 0;
    }

    .vacancies__index
    {
                flex-direction: column-reverse;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
           -moz-box-orient: vertical;
           -moz-box-direction: reverse;
            -ms-flex-direction: column-reverse;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
           -moz-box-align: start;
        -ms-flex-align: start;
                align-items: flex-start;
    }

    .vacancies__index-aside
    {
        padding-right: 0;
        padding-bottom: 0;
    }

    .vacancies__header
    {
        margin-bottom: 40px;
    }

    .vacancies--careerPage .vacancies__header
    {
        margin-bottom: 40px;
    }

    .vacancies--careerPage .vacancies__inner
    {
        margin-bottom: 65px;
    }

    .vacancies__wrapper
    {
        padding-bottom: 100px;
    }

    .vacancies--careerPage .vacancies__wrapper
    {
        padding-bottom: 100px;
    }

    .vacancies__items
    {
        margin-bottom: 65px;
        padding-bottom: 0;
    }

    .vacancies__title
    {
        font-size: 28px;
        line-height: 110%;

        margin-bottom: 30px;
    }

    .search-form__input
    {
        width: -webkit-calc(100% - 150px);
        width:    -moz-calc(100% - 150px);
        width:         calc(100% - 150px);
    }
}

@media screen and (max-width: 950px)
{
    .footer__top
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .footer__info
    {
        width: 100%;
        max-width: 380px;
        padding-right: 0;
    }

    .footer__inner
    {
        padding-top: 50px;

        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
           -moz-box-pack: start;
        -ms-flex-pack: start;
                justify-content: flex-start;
    }

    .footer__col
    {
        width: 29%;
        margin-right: 4.33%;
        margin-bottom: 0;
        padding-right: 0;
    }

    .footer__col:last-child
    {
        width: 33.34%;
        margin-top: -55px;
        margin-right: 0;
        margin-left: auto;
    }

    .footer__bottom
    {
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
           -moz-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
    }

    .footer__copyright
    {
        width: auto;
    }

    .our-principles__item
    {
        width: 48%;
        margin-right: 4%;
    }

    .our-principles__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .our-principles__item:nth-child(3n)
    {
        margin-right: 4%;
    }

    .product__item-img img
    {
        max-width: 100%;
    }
}

@media screen and (max-width: 900px)
{
    .main-career__inner
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
           -moz-box-align: start;
        -ms-flex-align: start;
                align-items: flex-start;
    }

    .main-career__inner img
    {
        min-width: 0;
        max-width: 70%;
        margin-bottom: 20px;
    }

    .main-career__info
    {
        max-width: 100%;
        margin-left: 0;
        padding-right: 40px;
        padding-left: 40px;
    }

    .main-career__wrapper
    {
        padding-right: 0;
    }

    .history__header-item:nth-child(2n) .history__header-text
    {
        padding-right: 23px;
    }

    .history__header-item:nth-child(2n) .history__header-year
    {
        margin-right: 23px;
    }

    .history__header-item:nth-child(2n+1) .history__header-text
    {
        padding-left: 23px;
    }

    .history__header-item:nth-child(2n+1) .history__header-year
    {
        margin-left: 23px;
    }

    .history__item:nth-child(2n+1) .history__item-text
    {
        padding-left: 23px;
    }

    .history__item:nth-child(2n+1) .history__item-year
    {
        margin-left: 23px;
    }

    .history__item:nth-child(2n) .history__item-text
    {
        padding-right: 23px;
    }

    .history__item:nth-child(2n) .history__item-year
    {
        margin-right: 23px;
    }

    .history__header-year
    {
        font-size: 36px;
    }

    .history__header-text p
    {
        font-size: 14px;
    }

    .history__header-text
    {
        padding-top: 12px;
        padding-bottom: 15px;
    }

    .history__item-year
    {
        font-size: 36px;
    }

    .history__item-text p
    {
        font-size: 14px;
    }

    .history__item-text
    {
        padding-top: 12px;
    }

    .history__item:nth-child(2n+1) .history__item-img
    {
        margin-left: 23px;
    }

    .history__item:nth-child(2n) .history__item-img
    {
        margin-right: 23px;
    }

    .history__item-img img
    {
        max-width: 300px;
        max-height: 233px;
    }

    .search-form__input
    {
        font-size: 42px;
        line-height: 110%;
    }

    .product__block--invarkids .product__item:nth-child(3n)
    {
        margin-right: 4%;
    }

    .product__block--invarkids .product__item
    {
        width: 48%;
        margin-right: 4%;
    }

    .product__block--invarkids .product__item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 850px)
{
    .main-direction__items
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .main-direction__item
    {
        width: 100%;
        max-width: none;
        padding-right: 0;
        padding-left: 0;
    }

    .products__row:first-child::before
    {
        display: none;
    }

    .products__wrapper
    {
        padding-top: 20px;
    }
}

@media screen and (max-width: 820px)
{
    .modal-search--results .search-form
    {
        bottom: 18px;
    }

    .modal-search--results .search-form__clean
    {
        bottom: -32px;
    }
}

@media screen and (max-width: 800px)
{
    .our-values__items
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .our-values__item
    {
        width: 100%;
        margin-bottom: 45px;
    }

    .our-values__item:last-child
    {
        margin-bottom: 0;
    }

    .vacancies__item
    {
        width: 48%;
        margin-right: 4%;
    }

    .vacancies__item:nth-child(3n)
    {
        margin-right: 4%;
    }

    .vacancies__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .product__colorBlock--twoCols
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .product__colorBlock--twoCols .product__colorBlock-title
    {
        width: 100%;
        margin-right: 0;
    }

    .product__colorBlock--twoCols .product__colorBlock-text
    {
        width: 100%;
    }

    .product__block--invarkids .product__row--colorBlockAndText
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .product__block--invarkids .product__row--colorBlockAndText .product__leftCol
    {
        width: 100%;
        margin-bottom: 20px;
    }

    .product__block--invarkids .product__row--colorBlockAndText .product__rightCol
    {
        width: 100%;
    }

    .product__block--invarkids .product__row--colorBlockAndText .product__rightCol p
    {
        margin-top: 0;
    }
}

@media screen and (max-width: 750px)
{
    .link
    {
        font-size: 14px;
        line-height: 130%;

        padding-right: 28px;
    }

    .header--main .header__info
    {
        width: 100%;
        padding-top: 20px;
        padding-right: 15px;
        padding-bottom: 45px;
        padding-left: 15px;
    }

    .header__map
    {
        height: 674px;
    }

    .header--main .header__title
    {
        font-size: 28px;
        font-weight: 300;
        line-height: 110%;

        margin-bottom: 30px;
    }

    .header--main .header__text
    {
        font-size: 15px;
        line-height: 140%;

        margin-bottom: 25px;
    }

    .header--main .header__bottom
    {
        padding-top: 302px;
    }

    .header--mission .header__title
    {
        font-size: 42px;
        line-height: 110%;

        margin-bottom: 20px;

        letter-spacing: -.02em;
    }

    .header__text
    {
        font-size: 15px !important;

        max-width: 100% !important;
    }

    .header--products .header__title
    {
        font-size: 42px;
        line-height: 110%;

        margin-bottom: 0;

        letter-spacing: -.02em;
    }

    .header--products .header__info
    {
        padding-top: 40px;
        padding-bottom: 20px;
    }

    .header--gynecology .header__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        margin-bottom: 31px;

        letter-spacing: -.02em;
    }

    .header--pediatrics .header__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        margin-bottom: 31px;

        letter-spacing: -.02em;
    }

    .header--dermatology .header__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        margin-bottom: 31px;

        letter-spacing: -.02em;
    }

    .header--ethics .header__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        margin-bottom: 20px;

        letter-spacing: -.02em;
    }

    .header--ethics .header__info
    {
        padding-top: 40px;
        padding-bottom: 149px;
    }

    .header--career .header__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        margin-bottom: 20px;

        letter-spacing: -.02em;
    }

    .header--career .btn
    {
        display: none;
    }

    .header--vacancies .header__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        letter-spacing: -.02em;
    }

    .header--news .header__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        letter-spacing: -.02em;
    }

    .header--vacancies .header__info
    {
        padding-top: 41px;
        padding-bottom: 21px;
    }

    .header--news .header__info
    {
        padding-top: 41px;
        padding-bottom: 21px;
    }

    .header--vacancies .header__bottom .search-btn
    {
        bottom: 30px;
    }

    .header--news .header__bottom .search-btn
    {
        bottom: 30px;
    }

    .header--profile .header__title
    {
        font-size: 42px;
        line-height: 110%;
    }

    .header--profile .header__info
    {
        padding-top: 41px;
        padding-bottom: 40px;
    }

    .header--vacancy .header__title
    {
        font-size: 32px;
        line-height: 110%;
    }

    .header--vacancy .header__info
    {
        padding-top: 41px;
        padding-bottom: 15px;
    }

    .header--singleNews .header__title
    {
        font-size: 30px;
        line-height: 130%;
    }

    .header--singleNews .header__info
    {
        padding-top: 41px;
        padding-bottom: 10px;
    }

    .header--contacts .header__title
    {
        font-size: 42px;
        line-height: 110%;

        margin-bottom: 324px;
        padding-right: 15px;
    }

    .header--contacts .header__bottom
    {
        padding-top: 420px;
        padding-right: 0;
    }

    .header--contacts .header__info
    {
        width: 100%;
        margin-bottom: 0;
    }

    .header--agreement .header__info
    {
        padding-top: 41px;
        padding-bottom: 15px;
    }

    .main-brands__slider
    {
        padding-bottom: 20px;
    }

    .main-brands__slider-item h3
    {
        font-size: 15px;

        margin-bottom: 5px;
    }

    .main-brands__slider-item p
    {
        font-size: 12px;
    }

    .main-brands__slider-item
    {
        width: 170px;
        padding-right: 20px;
    }

    .main-ethics__wrapper
    {
                flex-direction: column;

        padding-left: 0;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .main-ethics__info
    {
        width: 100%;

        background-color: rgba(13, 57, 127, .7);
    }

    .main-ethics__info:before
    {
        display: none;
    }

    .main-ethics__title
    {
        margin-bottom: 345px;
        margin-left: 40px;
    }

    .main-ethics__info h3
    {
        font-size: 28px;
        font-weight: 300;
        line-height: 120%;

        margin-bottom: 30px;
    }

    .main-ethics__text
    {
        margin-bottom: 30px;
    }

    .main-ethics__text p
    {
        font-size: 15px;
    }

    .main-direction__title
    {
        margin-bottom: 20px;
    }

    .main-direction__desc
    {
        font-size: 20px;
        line-height: 140%;

        margin-bottom: 72px;

        letter-spacing: -.01em;
    }

    .main-direction__item a img
    {
        width: 60px;
        height: 60px;
        margin-right: 20px;
    }

    .main-direction__item a h3
    {
        font-size: 24px;
        line-height: 28px;

        letter-spacing: -.01em;
    }

    .main-direction__item a
    {
        margin-bottom: 25px;
    }

    .main-direction__item div p
    {
        font-size: 15px;
    }

    .main-direction__item a:hover
    {
        -webkit-transform: translateY(0px);
           -moz-transform: translateY(0px);
            -ms-transform: translateY(0px);
             -o-transform: translateY(0px);
                transform: translateY(0px);
    }

    .main-news__title
    {
        margin-bottom: 38px;
        margin-left: 10px;
    }

    .main-news--singleNews .main-news__title
    {
        margin-bottom: 38px;
    }

    .main-news__slider
    {
        margin-bottom: 55px;
    }

    .main-career__title
    {
        margin-bottom: 77px;
    }

    .main-career__inner img
    {
        max-width: 100%;
    }

    .main-career__info h3
    {
        font-size: 28px;
        font-weight: 300;
        line-height: 120%;
    }

    .main-career__info p
    {
        font-size: 15px;
    }

    .main-career__info p:last-of-type
    {
        margin-bottom: 26px;
    }

    .main-career__wrapper
    {
        padding-bottom: 120px;
    }

    .our-principles__wrapper
    {
        padding-top: 40px;
        padding-bottom: 100px;
    }

    .our-principles__title
    {
        font-size: 28px;
        line-height: 110%;

        margin-bottom: 40px;
    }

    .our-principles__item h3
    {
        font-size: 24px;
        line-height: 130%;

        margin-bottom: 14px;
    }

    .our-principles__item p
    {
        font-size: 15px;
        line-height: 140%;
    }

    .our-principles__item
    {
        margin-bottom: 40px;
    }

    .our-principles__item:last-child
    {
        margin-bottom: 0;
    }

    .advantages__title
    {
        font-size: 28px;
        font-weight: 300;
        line-height: 110%;
    }

    .advantages__desc
    {
        font-size: 20px;
        line-height: 130%;
    }

    .advantages__top
    {
        padding-bottom: 40px;
    }

    .advantages__item h3
    {
        font-size: 24px;
        line-height: 130%;

        margin-bottom: 14px;
    }

    .advantages__item p
    {
        font-size: 15px;
        line-height: 140%;
    }

    .vacancies__index-title
    {
        font-size: 24px;
    }

    .vacancies__index-desc
    {
        font-size: 15px;

        margin-bottom: 27px;
    }

    .modal-search--results .modal-search__title
    {
        font-size: 42px;
        font-weight: 300;
        line-height: 110%;

        letter-spacing: -.02em;
    }

    .profile__done
    {
        padding-top: 0;
    }

    .profile__done p
    {
        font-size: 15px;
        line-height: 140%;

        margin-bottom: 30px;
    }

    .article__date
    {
        margin-right: 50px;
    }

    .article--vacancy .article__wrapper
    {
        padding-bottom: 104px;
    }

    .article__subtitle
    {
        font-size: 24px;
        line-height: 130%;
    }

    .article__tags
    {
        margin-top: 60px;
    }

    .article__tags li
    {
        margin-right: 32px;
        margin-bottom: 15px;
    }

    .textBlock
    {
        font-size: 15px;
        line-height: 140%;

        margin-bottom: 20px;
    }

    .textBlock--lead p
    {
        font-size: 15px;
        line-height: 140%;
    }

    .news-item h3
    {
        font-size: 15px;
    }

    .news-item__info
    {
        padding-right: 20px;
        padding-left: 20px;
    }

    .products__wrapper
    {
        padding-top: 0;
    }

    .products__type
    {
        padding-top: 50px;
        padding-right: 15px;
        padding-bottom: 50px;
        padding-left: 15px;
    }

    .products__type-img
    {
        width: 45px;
        height: 45px;
        margin-bottom: 20px;
    }

    .products__type-title
    {
        font-size: 28px;
        font-weight: 300;
        line-height: 110%;

        margin-bottom: 20px;
    }

    .products__type-desc
    {
        margin-bottom: 30px;
    }

    .products__type-desc p
    {
        font-size: 15px;
    }

    .products__item-title
    {
        font-size: 20px;
        line-height: 130%;

        margin-bottom: 0;
    }

    .products__item-desc
    {
        font-size: 13px;
        line-height: 130%;
    }

    .products__row
    {
        margin-bottom: 80px;
    }

    .product__logo
    {
        width: 70px;
    }

    .product__title
    {
        margin-left: 20px;
    }

    .product__lead
    {
        margin-bottom: 0;
    }

    .product__title-rus
    {
        font-size: 28px;
        line-height: 110%;

        letter-spacing: 0;
    }

    .product__title-eng
    {
        font-size: 12px;
    }

    .product__header
    {
        padding-bottom: 25px;
    }

    .product__colorBlock--twoCols .product__colorBlock-title
    {
        font-size: 20px;

        margin-bottom: 20px;
    }

    .product__colorBlock-title
    {
        font-size: 20px;

        margin-bottom: 20px;
    }

    .product__colorBlock-text
    {
        font-size: 15px !important;
        line-height: 140% !important;
    }

    .product__block--epigen .product__row
    {
        padding-bottom: 75px;
    }

    .product__items
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
           -moz-box-align: center;
        -ms-flex-align: center;
                align-items: center;
    }

    .product__type
    {
        padding-top: 10px;
    }

    .product__type-title
    {
        font-size: 20px;
        line-height: 130%;

        margin-bottom: 15px;
    }

    .product__type-text
    {
        font-size: 15px;
        line-height: 140%;
    }

    .product__item-title
    {
        font-size: 12px;
        line-height: 130%;
    }

    .product__item
    {
        width: 100%;
        margin-right: 0;
        margin-bottom: 45px;
    }

    .product__item:last-child
    {
        margin-bottom: 0;
    }

    .product__block:last-child .product__block-wrapper
    {
        padding-top: 32px;
    }

    .product__block--invarkids .product__row
    {
        padding-bottom: 75px;
    }

    .product__block--invarkids .product__item
    {
        position: relative;

        width: 100%;
        margin-right: 0!important;
    }

    .product__block--invarkids .product__item:before
    {
        position: absolute;
        top: -15px;
        left: 50%;

        width: -webkit-calc(100vw - 30px);
        width:    -moz-calc(100vw - 30px);
        width:         calc(100vw - 30px);
        height: 1px;

        content: '';
        -webkit-transform: translateX(-50%);
           -moz-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
             -o-transform: translateX(-50%);
                transform: translateX(-50%);

        background-color: #e6e6e6;
    }

    .product__block--invarkids .product__item:first-child:before
    {
        display: none;
    }

    .product__block--invarkids .product__item-desc
    {
        width: 100%;
        max-width: 100%;
        margin-bottom: 0;
    }

    .product__block--invarkids .product__item
    {
        margin-bottom: 50px;
    }

    .product__block.product__block--invarkids .product__block-wrapper
    {
        padding-top: 20px;
    }

    .product__block--invarkids .product__item:nth-child(2) .product__item-desc,
    .product__block--invarkids .product__item:nth-child(5) .product__item-desc
    {
        padding-left: 0;
    }
}

@media screen and (max-width: 700px)
{
    .form__description
    {
        font-size: 12px;
        line-height: 130%;
    }

    .form__checkbox
    {
        font-size: 15px;
    }

    .form__row
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .form__row:last-of-type
    {
        margin-top: 20px;
    }

    .form__row:last-of-type .form__group
    {
        margin-bottom: 0;
    }

    .form__group
    {
        width: 100%;
        margin-bottom: 20px;
    }

    .form__group--half
    {
        width: 100%;
    }

    .form__description
    {
        margin-top: -10px;
    }
}

@media screen and (max-width: 650px)
{
    .header--mission .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--history .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--ethics .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--career .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--vacancies .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--profile .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--404 .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--vacancy .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--contacts .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--agreement .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--news .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--singleNews .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--products .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--gynecology .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--pediatrics .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--dermatology .header__bottom
    {
        padding-top: 15px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--vacancies .header__bottom .search-btn
    {
        right: 15px;
    }

    .header--news .header__bottom .search-btn
    {
        right: 15px;
    }

    .header--contacts .header__bottom
    {
        padding-top: 420px;
        padding-right: 0;
        padding-left: 0;
    }

    .header--contacts .header__title
    {
        padding-left: 15px;
    }

    .header--contacts .header__info
    {
        padding-top: 20px;
        padding-right: 15px;
        padding-bottom: 76px;
        padding-left: 15px;
    }

    .header__twoCols
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .header--contacts .header__twoCols p
    {
        font-size: 15px;
        line-height: 140%;

        margin-bottom: 20px;
    }

    .header--contacts .header__twoCols p:last-child
    {
        margin-bottom: 0;
    }

    .footer__col
    {
        width: 50%;
        margin-right: 0;
        margin-bottom: 40px;
        padding-right: 15px;
    }

    .footer__wrapper
    {
        padding-top: 22px;
        padding-right: 15px;
        padding-bottom: 10px;
        padding-left: 15px;
    }

    .footer__wrapper::before
    {
        width: -webkit-calc(100% - 30px);
        width:    -moz-calc(100% - 30px);
        width:         calc(100% - 30px);
    }

    .footer__logo
    {
        margin-bottom: 25px;
    }

    .footer__inner
    {
        padding-top: 30px;
    }

    .footer__col:last-child
    {
        width: 50%;
        margin-top: 0;
        margin-left: 0;
    }

    .footer__top
    {
        padding-bottom: 56px;
    }

    .main-brands__wrapper
    {
        padding-top: 30px;
        padding-bottom: 72px;
        padding-left: 15px;
    }

    .main-ethics__info
    {
        padding-top: 20px;
        padding-right: 15px;
        padding-bottom: 50px;
        padding-left: 15px;
    }

    .main-ethics__title
    {
        margin-top: 20px;
        margin-left: 15px;
        padding-right: 15px;
    }

    .main-direction__wrapper
    {
        padding-top: 40px;
        padding-right: 15px;
        padding-bottom: 90px;
        padding-left: 15px;
    }

    .main-news__title
    {
        margin-left: 15px;
    }

    .main-news__wrapper
    {
        padding-top: 10px;
        padding-right: 0;
        padding-bottom: 80px;
        padding-left: 0;
    }

    .main-news--singleNews .main-news__wrapper
    {
        padding-bottom: 95px;
    }

    .main-news__slider-inner
    {
        padding-left: 5px;
    }

    .main-career__wrapper
    {
        padding-top: 10px;
    }

    .main-career__info
    {
        padding-right: 15px;
        padding-left: 15px;
    }

    .main-career__title
    {
        margin-left: 15px;
    }

    .main-career__wrapper::before
    {
        width: -webkit-calc(100% - 30px);
        width:    -moz-calc(100% - 30px);
        width:         calc(100% - 30px);
    }

    .our-values__wrapper
    {
        padding-top: 30px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .our-values__title
    {
        font-size: 28px;
        line-height: 33px;
    }

    .our-values__item
    {
        padding-top: 15px;
    }

    .our-values__item h3
    {
        line-height: 28px;

        margin-bottom: 15px;
    }

    .our-principles__wrapper
    {
        padding-right: 15px;
        padding-left: 15px;
    }

    .history__wrapper
    {
        padding-right: 15px;
        padding-left: 15px;
    }

    .header--history .header__info
    {
        padding-top: 40px;
    }

    .header--history .header__title
    {
        font-size: 42px;

        margin-bottom: 20px;
    }

    .header--history .header__text
    {
        font-size: 15px;
    }

    .advantages__wrapper
    {
        padding-top: 40px;
        padding-right: 15px;
        padding-bottom: 88px;
        padding-left: 15px;
    }

    .vacancies__wrapper
    {
        padding-top: 30px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .vacancies--careerPage .vacancies__wrapper
    {
        padding-top: 30px;
    }

    .vacancies__item
    {
        margin-bottom: 20px;
    }

    .modal-search__top
    {
        position: relative;

        padding-top: 30vh;
        padding-right: 15px;
        padding-bottom: 20px;
        padding-left: 15px;
    }

    .modal-search__close
    {
        right: 15px;
    }

    .modal-search--results .search-form
    {
        right: 15px;
    }

    .modal-search--results .modal-search__top
    {
        padding-top: 100px;
    }

    .modal-search--results .search-form__clean
    {
        bottom: -26px;
    }

    .modal-search__message
    {
        font-size: 15px;

        padding-top: 100px;
        padding-bottom: 100px;
    }

    .search-form__clean
    {
        right: 15px;
        bottom: -30px;
    }

    .profile__wrapper
    {
        padding-right: 15px;
        padding-bottom: 150px;
        padding-left: 15px;
    }

    .article__wrapper
    {
                flex-direction: column;

        padding-right: 15px;
        padding-bottom: 30px;
        padding-left: 15px;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .article__date
    {
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
    }

    .article__imageBlock
    {
        margin-top: 25px;
        margin-bottom: 25px;
    }

    .article__imageBlock figcaption
    {
        font-size: 12px;

        margin-top: 19px;
    }

    .news__wrapper
    {
        padding-top: 40px;
        padding-right: 15px;
        padding-bottom: 100px;
        padding-left: 15px;
    }

    .products__wrapper
    {
        padding-right: 0;
        padding-left: 0;
    }

    .products__type
    {
        min-width: 0;
    }

    .products__row
    {
                flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
           -moz-box-align: center;
        -ms-flex-align: center;
                align-items: center;
    }

    .products__item
    {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px;
        padding-right: 15px;
        padding-bottom: 0;
        padding-left: 15px;
    }

    .products__item:last-of-type
    {
        margin-bottom: 0;
    }

    .products__item-title
    {
        padding-right: 0;
        padding-left: 0;

        text-align: center;
    }

    .products__item:first-child .products__item-title
    {
        padding-right: 0;
    }

    .products__item:first-child .products__item-desc
    {
        padding-right: 0;
    }

    .products__item::after
    {
        display: none;
    }

    .products__item--doubleWidth .products__item-desc
    {
        max-width: 100%;
    }

    .products__item-desc
    {
        padding-right: 0;
        padding-left: 0;

        text-align: center;
    }

    .product__wrapper
    {
        padding-right: 15px;
        padding-left: 15px;
    }

    .product__item-img img
    {
        max-width: 100%;
    }

    .product__block--dikirogen .product__item-img img
    {
        max-width: 100%;
    }
}

@media screen and (max-width: 600px)
{
    body
    {
        font-size: 15px;
        line-height: 140%;
    }

    .main-brands__title
    {
        font-size: 15px;
        line-height: 18px;
    }

    .main-ethics__title
    {
        font-size: 15px;
        line-height: 18px;
    }

    .main-direction__title
    {
        font-size: 15px;
        line-height: 18px;
    }

    .main-news__title
    {
        font-size: 15px;
        line-height: 18px;
    }

    .main-career__title
    {
        font-size: 15px;
        line-height: 18px;
    }

    .news__item
    {
        width: 100%;
        margin-right: 0!important;
        margin-bottom: 20px;
    }

    .news .link
    {
        margin-left: 0;
    }

    .news
    {
        border-top: 1px solid #e0e0e0;
    }

    .product__block--invarkids .product__item-desc
    {
        font-size: 18px;
        line-height: 140%;
    }
}

@media screen and (max-width: 550px)
{
    .header--main
    {
        background: #fff url(/local/templates/invar/assets/css/../img/main-top-banner-mob.jpg) right center no-repeat;
        -moz-background-size: cover;
             background-size: cover;
    }

    .main-ethics
    {
        background: #000 url(/local/templates/invar/assets/css/../img/main-ethics-banner-mob.jpg) center top no-repeat;
        -moz-background-size: cover;
             background-size: cover;
    }

    .header--history
    {
        background: #fff url(/local/templates/invar/assets/css/../img/history-top-banner-mob.jpg) center 0 no-repeat;
        -moz-background-size: cover;
             background-size: cover;
    }

    .header--ethics
    {
        background: #fff url(/local/templates/invar/assets/css/../img/ethics-top-banner-mob.jpg) center 0 no-repeat;
        -moz-background-size: cover;
             background-size: cover;
    }

    .header--mission
    {
        background: #fff url(/local/templates/invar/assets/css/../img/mission-top-banner-mob.jpg) center 50px no-repeat;
        -moz-background-size: auto 404px;
             background-size: auto 404px;
    }

    .header--mission .header__info
    {
        padding-top: 405px;
        padding-bottom: 30px;
    }

    .header--gynecology .header__info
    {
        padding-top: 350px;
        padding-bottom: 0;
    }

    .header--pediatrics .header__info
    {
        padding-top: 350px;
        padding-bottom: 0;
    }

    .header--dermatology .header__info
    {
        padding-top: 350px;
        padding-bottom: 0;
    }

    .header--gynecology
    {
        background: #fff url(/local/templates/invar/assets/css/../img/gynecology-top-banner-mob.jpg) center 0 no-repeat;
        -moz-background-size: auto 485px;
             background-size: auto 485px;
    }

    .header--gynecology:before
    {
        display: none;
    }

    .header--gynecology .header__text
    {
        color: #262626;
    }

    .header--pediatrics
    {
        background: #fff url(/local/templates/invar/assets/css/../img/pediatrics-top-banner-mob.jpg) center 0 no-repeat;
        -moz-background-size: auto 485px;
             background-size: auto 485px;
    }

    .header--pediatrics:before
    {
        display: none;
    }

    .header--pediatrics .header__text
    {
        color: #262626;
    }

    .header--dermatology
    {
        background: #fff url(/local/templates/invar/assets/css/../img/dermatology-top-banner-mob.jpg) right 50px no-repeat;
        -moz-background-size: auto 435px;
             background-size: auto 435px;
    }

    .header--dermatology:before
    {
        display: none;
    }

    .header--dermatology .header__text
    {
        color: #262626;
    }

    .header--dermatology .header__title
    {
        color: #fff;
    }

    .header--career
    {
        background: #fff url(/local/templates/invar/assets/css/../img/career-top-banner-mob.jpg) center top 50px no-repeat;
        -moz-background-size: auto 435px;
             background-size: auto 435px;
    }

    .header--career .header__info
    {
        padding-top: 422px;
        padding-bottom: 0;
    }

    .header--contacts
    {
        background: #fff url(/local/templates/invar/assets/css/../img/contacts-top-banner-mob.jpg) right 0 top 50px no-repeat;
        -moz-background-size: auto 420px;
             background-size: auto 420px;
    }

    .our-principles__item
    {
        width: 100%;
        margin-right: 0;
    }

    .our-principles__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .our-principles__item:nth-child(3n)
    {
        margin-right: 0;
    }

    .history__item:first-child
    {
        padding-top: 0;
    }

    .history__item:nth-child(2n+1)
    {
        -webkit-transform: translate(0px);
           -moz-transform: translate(0px);
            -ms-transform: translate(0px);
             -o-transform: translate(0px);
                transform: translate(0px);

        border-left: 0;

        -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
                align-self: flex-start;
    }

    .history__item:nth-child(2n)
    {
        margin-top: 0;

        border-right: 0;
    }

    .history__item
    {
        width: 100%;
    }

    .history__header-item:nth-child(2n) .history__header-text
    {
        padding-right: 0;
    }

    .history__header-item:nth-child(2n) .history__header-year
    {
        margin-right: 0;
    }

    .history__header-item:nth-child(2n+1) .history__header-text
    {
        padding-left: 0;
    }

    .history__header-item:nth-child(2n+1) .history__header-year
    {
        margin-left: 0;
    }

    .history__item:nth-child(2n+1) .history__item-text
    {
        padding-left: 0;
    }

    .history__item:nth-child(2n+1) .history__item-year
    {
        margin-left: 0;
    }

    .history__item:nth-child(2n) .history__item-text
    {
        padding-right: 0;
    }

    .history__item:nth-child(2n) .history__item-year
    {
        margin-right: 0;
    }

    .history__item-year
    {
        font-size: 34px;

        padding-bottom: 0;

        border-bottom: 0;
    }

    .history__item-year:before
    {
        position: absolute;
        top: 50%;

        width: 10px;
        height: 10px;
        margin-top: -5px;

        content: '';

        -webkit-border-radius: 50%;
           -moz-border-radius: 50%;
                border-radius: 50%;
        background-color: #000;
    }

    .history__item-text p
    {
        font-size: 13px;
    }

    .history__header-year
    {
        font-size: 34px;
    }

    .history__header-text p
    {
        font-size: 13px;
    }

    .history__item-text
    {
        min-height: 0;
        margin-top: 0;
        padding-top: 0;

        border-top: 0;
    }

    .history__item:nth-child(2n+1) .history__item-img
    {
        margin-left: 0;
    }

    .history__item:nth-child(2n) .history__item-img
    {
        margin-right: 0;
    }

    .history__item-text::before
    {
        display: none;
    }

    .history__wrapper
    {
        padding-right: 35px;
        padding-left: 20px;
    }

    .history__item:nth-child(4n+1)
    {
        position: relative;

        padding-top: 40px;
        padding-bottom: 30px;
        padding-left: 25px;

        border-left: 2px solid #e6e6e6;
    }

    .history__item:nth-child(4n+1):before
    {
        position: absolute;
        top: -5px;
        left: -1px;

        width: -webkit-calc(100% - 10px);
        width:    -moz-calc(100% - 10px);
        width:         calc(100% - 10px);
        height: 5px;

        content: '';

        border-top: 2px solid #e6e6e6;
        border-left: 2px solid #e6e6e6;
        -webkit-border-top-left-radius: 5px;
        -moz-border-radius-topleft: 5px;
                border-top-left-radius: 5px;
    }

    .history__item:nth-child(4n+1) .history__item-year:before
    {
        left: -30px;
    }

    .history__item:nth-child(4n+2)
    {
        position: relative;

        margin-bottom: 10px;
        padding-top: 30px;
        padding-bottom: 60px;
        padding-left: 25px;

        border-left: 2px solid #e6e6e6;
    }

    .history__item:nth-child(4n+2):before
    {
        position: absolute;
        bottom: -7px;
        left: -1px;

        width: -webkit-calc(100% - 10px);
        width:    -moz-calc(100% - 10px);
        width:         calc(100% - 10px);
        height: 7px;

        content: '';

        border-bottom: 2px solid #e6e6e6;
        border-left: 2px solid #e6e6e6;
        -webkit-border-bottom-left-radius: 5px;
        -moz-border-radius-bottomleft: 5px;
                border-bottom-left-radius: 5px;
    }

    .history__item:nth-child(4n+2) .history__item-year:before
    {
        left: -30px;
    }

    .history__item:nth-child(4n+3)
    {
        position: relative;

        margin-left: -5px;
        padding-top: 40px;
        padding-right: 25px;
        padding-bottom: 30px;

        border-right: 2px solid #e6e6e6;
    }

    .history__item:nth-child(4n+3):before
    {
        position: absolute;
        top: -5px;
        right: -1px;

        width: -webkit-calc(100% - 10px);
        width:    -moz-calc(100% - 10px);
        width:         calc(100% - 10px);
        height: 5px;

        content: '';

        border-top: 2px solid #e6e6e6;
        border-right: 2px solid #e6e6e6;
        -webkit-border-top-right-radius: 5px;
        -moz-border-radius-topright: 5px;
                border-top-right-radius: 5px;
    }

    .history__item:nth-child(4n+3) .history__item-year
    {
        padding-right: 55px;
    }

    .history__item:nth-child(4n+3) .history__item-year:before
    {
        right: -30px;
    }

    .history__item:nth-child(4n+3) .history__item-text
    {
        padding-right: 55px;
    }

    .history__item:nth-child(4n)
    {
        position: relative;

        margin-bottom: 10px;
        margin-left: -5px;
        padding-top: 30px;
        padding-right: 25px;
        padding-bottom: 60px;

        border-right: 2px solid #e6e6e6;
    }

    .history__item:nth-child(4n):before
    {
        position: absolute;
        right: -1px;
        bottom: -7px;

        width: -webkit-calc(100% - 10px);
        width:    -moz-calc(100% - 10px);
        width:         calc(100% - 10px);
        height: 7px;

        content: '';

        border-right: 2px solid #e6e6e6;
        border-bottom: 2px solid #e6e6e6;
        -webkit-border-bottom-right-radius: 5px;
        -moz-border-radius-bottomright: 5px;
                border-bottom-right-radius: 5px;
    }

    .history__item:nth-child(4n) .history__item-year
    {
        padding-right: 55px;
    }

    .history__item:nth-child(4n) .history__item-year:before
    {
        right: -30px;
    }

    .history__item:nth-child(4n) .history__item-text
    {
        padding-right: 55px;
    }

    .history__item-img img
    {
        max-width: 220px;
        max-height: 176px;
    }

    .history__item-img
    {
        height: auto;
    }

    .history__items
    {
        padding-top: 96px;
        padding-bottom: 130px;
    }

    .history__item:nth-child(2n+1)
    {
        margin-top: 0;
    }

    .history__item:last-child:before
    {
        display: none;
    }

    .history__item:first-child:after
    {
        position: absolute;
        top: -96px;
        right: 0;

        width: -webkit-calc(100% - 10px);
        width:    -moz-calc(100% - 10px);
        width:         calc(100% - 10px);
        height: 93px;

        content: '';

        border-right: 2px solid #e6e6e6;
        border-bottom: 2px solid #e6e6e6;
        -webkit-border-bottom-right-radius: 5px;
        -moz-border-radius-bottomright: 5px;
                border-bottom-right-radius: 5px;
    }

    .history__header-item:first-child
    {
        -webkit-transform: translate(0px, 0px);
           -moz-transform: translate(0px, 0px);
            -ms-transform: translate(0px, 0px);
             -o-transform: translate(0px, 0px);
                transform: translate(0px, 0px);
    }

    .history__header-text
    {
        min-height: 0;
        padding-top: 0;
        padding-bottom: 0;

        border-top: 0;
    }

    .history__header-item:nth-child(2n+1) .history__header-text
    {
        border-left: 0;
    }

    .history__header-item:nth-child(2n) .history__header-text
    {
        border-right: 0;
    }

    .history__header-item
    {
        width: 100%;
    }

    .history__header-item:nth-child(1)
    {
        position: relative;

        margin-bottom: 10px;
        padding-bottom: 50px;

        -webkit-transform: translateX(65px);
           -moz-transform: translateX(65px);
            -ms-transform: translateX(65px);
             -o-transform: translateX(65px);
                transform: translateX(65px);

        border-left: 2px solid #5e7dae;
    }

    .history__header-item:nth-child(1):before
    {
        position: absolute;
        bottom: -6px;
        left: -2px;

        width: -webkit-calc(100% - 70px);
        width:    -moz-calc(100% - 70px);
        width:         calc(100% - 70px);
        height: 7px;

        content: '';

        border-bottom: 2px solid #5e7dae;
        border-left: 2px solid #5e7dae;
        -webkit-border-bottom-left-radius: 5px;
        -moz-border-radius-bottomleft: 5px;
                border-bottom-left-radius: 5px;
    }

    .history__header-item:nth-child(1) .history__header-text
    {
        padding-left: 20px;
    }

    .history__header-item:nth-child(1) .history__header-year
    {
        line-height: 8px;

        margin-bottom: 21px;
        padding-left: 20px;
    }

    .history__header-item:nth-child(1) .history__header-year:before
    {
        left: -6px;
    }

    .history__header-item:nth-child(2)
    {
        position: relative;

        padding-top: 50px;
        padding-bottom: 25px;

        border-right: 2px solid #5e7dae;
    }

    .history__header-item:nth-child(2):before
    {
        position: absolute;
        top: -5px;
        right: -1px;

        width: -webkit-calc(100% - 80px);
        width:    -moz-calc(100% - 80px);
        width:         calc(100% - 80px);
        height: 5px;

        content: '';

        border-top: 2px solid #5e7dae;
        border-right: 2px solid #5e7dae;
        -webkit-border-top-right-radius: 5px;
        -moz-border-radius-topright: 5px;
                border-top-right-radius: 5px;
    }

    .history__header-item:nth-child(2) .history__header-text
    {
        padding-right: 55px;
    }

    .history__header-item:nth-child(2) .history__header-year:before
    {
        right: -6px;
    }

    .history__header-year
    {
        margin-bottom: 6px;
        padding-bottom: 0;

        border-bottom: 0;
    }

    .history__header-year:before
    {
        position: absolute;
        top: 50%;

        width: 10px;
        height: 10px;
        margin-top: -5px;

        content: '';

        -webkit-border-radius: 50%;
           -moz-border-radius: 50%;
                border-radius: 50%;
        background-color: #fff;
    }

    .history__header-text::before
    {
        display: none;
    }

    .history__header-items
    {
        margin-top: 0;
    }

    .header__info
    {
        padding-bottom: 68px;
    }

    .advantages__item
    {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px;
    }

    .advantages__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .advantages__item:last-child
    {
        margin-bottom: 0;
    }

    .advantages__wrapper
    {
        padding-bottom: 88px;
    }

    .vacancies__item
    {
        width: 100%;
        margin-right: 0;
    }

    .vacancies__item:nth-child(3n)
    {
        margin-right: 0;
    }

    .vacancies__item:nth-child(2n)
    {
        margin-right: 0;
    }

    .vacancies__index-aside
    {
        width: 100%;
    }

    .product__wrapper
    {
        padding-top: 50px;
    }

    .product__block--skincap .product__block-wrapper
    {
        padding-top: 0;
    }

    .product__item-img
    {
        padding: 20px;
    }
}

@media screen and (max-width: 500px)
{
    .footer__author
    {
        display: -webkit-box;
        display: -webkit-flex;
        display:    -moz-box;
        display: -ms-flexbox;
        display:         flex;
                flex-direction: column;

        text-align: right;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
           -moz-box-orient: vertical;
           -moz-box-direction: normal;
            -ms-flex-direction: column;
    }

    .footer__bottom
    {
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
           -moz-box-align: end;
        -ms-flex-align: end;
                align-items: flex-end;
    }

    .modal-search .search-btn
    {
        font-size: 0;
    }

    .modal-search--results .modal-search__title
    {
        margin-bottom: 10px;
    }

    .modal-search--results .search-form__input
    {
        width: 300px;
    }

    .modal-search--results .modal-search__top
    {
        padding-bottom: 100px;
    }

    .search-form__input
    {
        font-size: 28px;
        line-height: 110%;

        width: -webkit-calc(100% - 50px);
        width:    -moz-calc(100% - 50px);
        width:         calc(100% - 50px);
    }
}

@media screen and (max-width: 450px)
{
    .form__btn
    {
        position: fixed;
        bottom: 0;
        left: 0;

        width: 100%;
    }

    .article--vacancy .article__sideColumn .btn
    {
        position: fixed;
        z-index: 20;
        bottom: 0;
        left: 0;

        width: 100%;
    }
}

@media screen and (max-width: 420px)
{
    .header--career
    {
        background: #fff url(/local/templates/invar/assets/css/../img/career-top-banner-mob.jpg) left -170px top 50px no-repeat;
        -moz-background-size: auto 435px;
             background-size: auto 435px;
    }
}

@media screen and (max-width: 330px)
{
    .header--contacts .header__title
    {
        margin-bottom: 224px;
    }
}

@media (print), (prefers-reduced-motion: reduce)
{
    .animated
    {
        -webkit-transition-duration: 1ms !important;
           -moz-transition-duration: 1ms !important;
             -o-transition-duration: 1ms !important;
                transition-duration: 1ms !important;
        -webkit-animation-duration: 1ms !important;
           -moz-animation-duration: 1ms !important;
             -o-animation-duration: 1ms !important;
                animation-duration: 1ms !important;
        -webkit-animation-iteration-count: 1 !important;
           -moz-animation-iteration-count: 1 !important;
             -o-animation-iteration-count: 1 !important;
                animation-iteration-count: 1 !important;
    }
}

/* End */


/* Start:/local/templates/invar/template_styles.css?16704118231030*/
.search-language-guess {padding-left: 20px}
.header--contacts .header__twoCols p {
	max-width: 320px;
}
.header--contacts .header__title {
	color: #0d397f !important;
}

.cookies.cookies--active {
	position: fixed;
	bottom: 0;
	background-color: #1B397A;
	color: white;
	padding: 10px;
	width: 100%;
	font-size: 15px;
}
.cookies__inner {
	padding: 23px calc(((100vw - (30px * 2)) / 24));
}
.cookies__row {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.cookies__btn-text.btn-animation__text {
	width: 105px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #fff;
	border-radius: 40px;
	cursor: pointer;
	transition: .5s cubic-bezier(0.33, 1, 0.68, 1);
}
.cookies__btn.btn-animation.btn-animation--white {
	padding-left: 50px;
}

@media screen and (max-width: 560px) {
	.cookies__row {
		display: block;
	}
	.cookies__btn.btn-animation.btn-animation--white {
		padding-left: 70%;
		padding-top: 15px;
	}
	.cookies.cookies--active {
		font-size: 12px;
	}
}
/* End */
/* /local/templates/invar/assets/css/style.css?1765358340386262 */
/* /local/templates/invar/template_styles.css?16704118231030 */
