/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document ========================================================================== */
/** 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. */
html { font-family: "europa", sans-serif; /* 1 */ font-size: 112.5%; line-height: 1.5em; /* 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; line-height: 1.5em; /* Set 1 unit of vertical rhythm on the top and bottom margins. */ margin: 0.75em 0; }

h2 { font-size: 1.5em; line-height: 2em; margin: 1em 0; }

h3 { font-size: 1.17em; line-height: 1.282em; margin: 1.282em 0; }

h4 { font-size: 1em; line-height: 1.5em; margin: 1.5em 0; }

h5 { font-size: 0.83em; line-height: 1.807em; margin: 1.807em 0; }

h6 { font-size: 0.67em; line-height: 2.239em; margin: 2.239em 0; }

/* Grouping content ========================================================================== */
/** Set 1 unit of vertical rhythm on the top and bottom margin. */
blockquote { margin: 1.5em 0; }

dl, ol, ul { margin: 1.5em 0; }

/** Turn off margins on nested lists. */
ol ol, ol ul, ul ol, ul ul { margin: 0; }

dd { margin: 0 0 0 0; }

ol, ul { padding: 0 0 0 0; }

/** Add the correct display in IE 9-. */
figcaption, figure { display: block; }

/** Add the correct margin in IE 8. */
figure { margin: 1.5em 0; }

/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { -webkit-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/** Add the correct display in IE. */
main { display: block; }

/** Set 1 unit of vertical rhythm on the top and bottom margin. */
p, pre { margin: 1.5em 0; }

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

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

/* Text-level semantics ========================================================================== */
/** 1. Remove the bottom border in Firefox 39-. 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; 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 { background-color: #ff0; color: #000; }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Embedded content ========================================================================== */
/** 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, select, textarea { font-family: "europa", sans-serif; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.5em; /* 1 */ margin: 0; /* 2 */ }

/** Show the overflow in IE. */
button { 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 */ }

button, [type="button"], [type="reset"], [type="submit"] { /** Remove the inner border and padding in Firefox. */ /** Restore the focus styles unset by the previous rule. */ }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Show the overflow in Edge. */
input { overflow: visible; }

/** 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; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ /** Remove the inner padding 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 { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/** Change the border, margin, and padding in all browsers (opinionated). */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

/** 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 { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ color: inherit; /* 2 */ white-space: normal; /* 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; }

/* Interactive ========================================================================== */
/* Add the correct display in Edge, IE, and Firefox. */
details { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Add the correct display in IE 9-. */
menu { display: block; /* 1. Set 1 unit of vertical rhythm on the top and bottom margin. 2. Set consistent space for the list style image. */ margin: 1.5em 0; /* 1 */ padding: 0 0 0 0; /* 2 */ /** Turn off margins on nested lists. */ }

menu menu, ol menu, ul menu { margin: 0; }

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

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

a { color: inherit; text-decoration: none; }

body { font-weight: 400; }

body, html { overflow-x: hidden; }

.container { max-width: 1330px; padding: 0 15px; width: 100%; margin: 0 auto; }

.button { font-weight: bold; font-size: 0.889em; background: #fff; color: #061525; height: 3.813em; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; max-width: 13.813em; width: 100%; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; cursor: pointer; }

.button:hover { background: #061525; color: #fff; }

.button:hover:after { -webkit-filter: brightness(0) invert(1); filter: brightness(0) invert(1); }

.button--blue { background: #011b36; color: #fff; border: 2px solid #011b36; }

.button--blue:after { -webkit-filter: brightness(0) invert(1); filter: brightness(0) invert(1); }

.button--blue:hover { background: #fff; color: #011b36; }

.button--blue:hover:after { -webkit-filter: none; filter: none; }

.button--basic:after { display: none !important; }

.button.no-blue:after { display: none !important; }

.button:after { display: block; background-image: url("../images/plus.png"); width: 0.5em; height: 0.5em; content: ''; margin-left: 1.3em; position: relative; top: .1em; left: .1em; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; -webkit-background-size: contain; background-size: contain; }

.header { position: absolute; top: 0; left: 0; right: 0; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; z-index: 2; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; padding: 2.45em 4.15em; padding-right: 9.5em; }

.header.active { background: #fff; }

.header.active .header__logo svg path { fill: #011b36 !important; }

.header.active .header__button button span, .header.active .header__button button span:before, .header.active .header__button button span:after { background: #011b36; }

.header--normal .header__button span, .header--normal .header__button span:after, .header--normal .header__button span:before, .header.fixed .header__button span, .header.fixed .header__button span:after, .header.fixed .header__button span:before { background: #011b36; }

.header__button { display: none; }

.header__button button { display: block; padding: 0; border: none; background: transparent; height: 22px; }

.header__button button:focus { outline: none; }

.header__button button span { display: block; height: 2px; width: 22px; background: #fff; position: relative; }

.header__button button span:before, .header__button button span:after { content: ''; position: absolute; left: 0; background: #fff; width: 22px; height: 2px; }

.header__button button span:before { top: -7px; }

.header__button button span:after { top: 7px; }

.header:not(.header--normal):not(.fixed) .menu a { position: relative; }

.header:not(.header--normal):not(.fixed) .menu a:after { content: ''; position: absolute; left: 0; height: 1px; background: white; top: 100%; margin-top: 6px; opacity: 0; width: 0; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; }

.header:not(.header--normal):not(.fixed) .menu a:hover:after { width: 100%; opacity: 1; }

.header--normal, .header.fixed { background: #fff; padding-bottom: 1.8em; position: relative; }

.header--normal .header__logo svg path, .header.fixed .header__logo svg path { fill: #011b36; }

.header--normal .header__menu, .header.fixed .header__menu { color: #595959; padding-bottom: 0em; padding-top: 0.1em; }

.header--normal .header__menu .current-menu-item, .header.fixed .header__menu .current-menu-item { color: #3c4e60; }

.header--normal .header__menu a:hover, .header.fixed .header__menu a:hover { color: #3c4e60; }

.header--normal .header__menu .language-menu, .header.fixed .header__menu .language-menu { background: transparent; border: 1px solid #e2e2e2; }

.header__logo img, .header__logo svg { max-width: 11.444em; display: block; height: auto; width: 100%; }

.header__logo img path, .header__logo svg path { fill: #fff; }

.header__menu { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; color: #fff; height: 2.222em; margin-top: -.7em; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }

.header.fixed { position: fixed; top: 0; left: 0; right: 0; padding-bottom: 0; z-index: 100; height: 80px; border-bottom: 1px solid #eef2f5; }

.header.fixed .header__logo svg { max-width: 5em; }

.header.fixed .menu { font-size: 0.9em; }

.menu { list-style: none; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 0; padding-bottom: 0.3em; font-size: 1.056em; }

.language-menu { margin: 0; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; list-style: none; font-size: 0.833em; background: rgba(6, 21, 37, 0.17); width: 6.2em; display: flex; height: 100%; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; margin-left: 6.6em; }

.language-menu li { margin: 0 0.6em; }

.footer { padding-top: 4.7em; border-bottom: 1px solid #f2f2f2; padding-bottom: 4.95em; }

@Media (max-width: 767px) { .footer { text-align: center; } }

.footer__right { margin-top: -0.4em; }

.footer__title { font-weight: bold; font-size: 1.389em; color: #061525; margin-bottom: 1.2em; }

.footer__left { width: 69%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.footer__column { width: -webkit-calc(100% / 3); width: calc(100% / 3); }

.footer__column:nth-child(1) { width: 27.2%; }

.footer__column:nth-child(2) { width: 38.2%; }

.footer__column:nth-child(3) { width: 34.6%; }

.footer__contact { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }

.footer__contact img { margin-right: 1em; }

.footer__contact a { font-weight: bold; font-size: 1.111em; }

.footer ul, .footer address { margin: 0; font-size: 0.889em; color: #949494; list-style: none; font-style: normal; }

.footer address { margin-top: 2.3em; padding-left: 0.4em; }

.footer ul li { margin-bottom: 0.66em; }

.footer .container { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.copyright { font-size: 0.778em; color: #b0b0b0; padding: 2.8em 0; }

.copyright .container { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }

.copyright__left { width: 33%; }

.copyright__right { width: 33%; text-align: right; }

.copyright__center { width: 33%; }

.copyright ul { list-style: none; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 0; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; font-size: 1.1em; }

.copyright ul li { margin: 0 9px; }

body { position: relative; }

.lines__line { position: absolute; z-index: -1; top: 0; bottom: 0; width: 1px; background: #c2cbd6; pointer-events: none; opacity: .15; }

.lines__line:after { content: ''; position: absolute; top: 0; background: #011b36; opacity: .2; width: 1px; height: 15px; -webkit-animation: line-animate2 15s linear infinite alternate; animation: line-animate2 15s linear infinite alternate; }

.lines__line:nth-child(1) { left: -webkit-calc(100% / 7 * 1); left: calc(100% / 7 * 1); }

.lines__line:nth-child(1):after { -webkit-animation-delay: 0.15s; animation-delay: 0.15s; }

.lines__line:nth-child(2) { left: -webkit-calc(100% / 7 * 2); left: calc(100% / 7 * 2); }

.lines__line:nth-child(2):after { -webkit-animation-delay: 0.6s; animation-delay: 0.6s; }

.lines__line:nth-child(3) { left: -webkit-calc(100% / 7 * 3); left: calc(100% / 7 * 3); }

.lines__line:nth-child(3):after { -webkit-animation-delay: 1.35s; animation-delay: 1.35s; }

.lines__line:nth-child(4) { left: -webkit-calc(100% / 7 * 4); left: calc(100% / 7 * 4); }

.lines__line:nth-child(4):after { -webkit-animation-delay: 0.4s; animation-delay: 0.4s; }

.lines__line:nth-child(5) { left: -webkit-calc(100% / 7 * 5); left: calc(100% / 7 * 5); }

.lines__line:nth-child(5):after { -webkit-animation-delay: 1.75s; animation-delay: 1.75s; }

.lines__line:nth-child(6) { left: -webkit-calc(100% / 7 * 6); left: calc(100% / 7 * 6); }

.lines__line:nth-child(6):after { -webkit-animation-delay: 1.4s; animation-delay: 1.4s; }

.lines__line:nth-child(7) { left: -webkit-calc(100% / 7 * 7); left: calc(100% / 7 * 7); }

.lines__line:nth-child(7):after { -webkit-animation-delay: 1.35s; animation-delay: 1.35s; }

@-webkit-keyframes line-animate2 { 0% { top: 0; }
  100% { top: -webkit-calc(100% - 15px); top: calc(100% - 15px); } }

@keyframes line-animate2 { 0% { top: 0; }
  100% { top: -webkit-calc(100% - 15px); top: calc(100% - 15px); } }

body.oh, html.oh { overflow: hidden; }

.play-button { border: 2px solid #fff; -webkit-border-radius: 50%; border-radius: 50%; width: 3.722em; height: 3.722em; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; z-index: 2; position: relative; display: -webkit-box !important; display: -webkit-flex !important; display: -ms-flexbox !important; display: flex !important; }

.play-button svg { fill: #fff; width: 0.7em; height: auto; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; }

.play-button:hover { background: #fff; }

.play-button:hover svg { fill: #011b36; }

.contact-us { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; height: 50.95em; }

.contact-us .inner-left, .contact-us .inner-right { max-width: 41.378em; margin: 0 auto; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; height: 100%; }

.contact-us__left { width: 50%; color: #fff; padding: 30px; position: relative; }

.contact-us__left:after { content: ''; z-index: -1; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: #011b36; background-repeat: no-repeat; }

.contact-us__left h2 { font-weight: bold; color: #fff; margin: 0; font-size: 3.056em; line-height: 1.182em; margin-bottom: 1em; }

.contact-us__left p { font-weight: normal; font-size: 1.944em; line-height: 1.517em; margin: 0; }

.contact-us__right { width: 50%; color: #011b36; padding: 30px; position: relative; }

.contact-us__right:after { content: ''; z-index: -1; background: #f4f4f4; position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.contact-us__right .top-fields { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 -40px; }

.contact-us__right .top-fields__field { padding: 0 40px; width: -webkit-calc(100% / 3); width: calc(100% / 3); }

.contact-us__right--full { width: 100%; text-align: center; padding-top: 4.75em; }

.contact-us__right--full textarea { height: 3.95em !important; margin-top: 2.7em; }

.contact-us__right--full h3 { margin-bottom: 1.2em !important; }

.contact-us__right h3 { color: #011b36; font-weight: bold; font-size: 2.111em; line-height: 1.711em; margin: 0; margin-bottom: 0.64em; }

.contact-us input, .contact-us textarea { display: block; width: 100%; border: none; background: transparent; font-size: 1em; color: #011b36; height: 4.111em; margin-bottom: 0.7em; border-bottom: 2px solid #011b36; }

.contact-us input::-webkit-input-placeholder, .contact-us textarea::-webkit-input-placeholder { color: #011b36; }

.contact-us input:-moz-placeholder, .contact-us textarea:-moz-placeholder { color: #011b36; }

.contact-us input::-moz-placeholder, .contact-us textarea::-moz-placeholder { color: #011b36; }

.contact-us input:-ms-input-placeholder, .contact-us textarea:-ms-input-placeholder { color: #011b36; }

.contact-us input:focus, .contact-us textarea:focus { outline: none; }

.contact-us textarea { resize: none; height: 10.4em; padding-top: 1.1em; }

.contact-us button { color: #fff; background: #011b36; font-weight: bold; border: 2px solid #011b36; font-size: 1.115em; margin-top: 4.1em; width: 12.4em; height: 3.5em; position: relative; z-index: 2; cursor: pointer; }

/*! animate.css -http://daneden.me/animate Version - 3.6.0 Licensed under the MIT license - http://opensource.org/licenses/MIT Copyright (c) 2018 Daniel Eden */
.animated { -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

.animated.infinite { -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }

@-webkit-keyframes bounce { from, 20%, 53%, 80%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% { -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% { -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% { -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

@keyframes bounce { from, 20%, 53%, 80%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% { -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% { -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% { -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

.bounce { -webkit-animation-name: bounce; animation-name: bounce; -webkit-transform-origin: center bottom; -ms-transform-origin: center bottom; transform-origin: center bottom; }

@-webkit-keyframes flash { from, 50%, to { opacity: 1; }
  25%, 75% { opacity: 0; } }

@keyframes flash { from, 50%, to { opacity: 1; }
  25%, 75% { opacity: 0; } }

.flash { -webkit-animation-name: flash; animation-name: flash; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse { from { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% { -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes pulse { from { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% { -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.pulse { -webkit-animation-name: pulse; animation-name: pulse; }

@-webkit-keyframes rubberBand { from { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% { -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% { -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% { -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% { -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% { -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes rubberBand { from { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% { -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% { -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% { -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% { -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% { -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.rubberBand { -webkit-animation-name: rubberBand; animation-name: rubberBand; }

@-webkit-keyframes shake { from, to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% { -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% { -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

@keyframes shake { from, to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% { -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% { -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

.shake { -webkit-animation-name: shake; animation-name: shake; }

@-webkit-keyframes headShake { 0% { -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% { -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% { -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% { -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% { -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% { -webkit-transform: translateX(0);
    transform: translateX(0); } }

@keyframes headShake { 0% { -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% { -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% { -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% { -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% { -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% { -webkit-transform: translateX(0);
    transform: translateX(0); } }

.headShake { -webkit-animation-timing-function: ease-in-out; animation-timing-function: ease-in-out; -webkit-animation-name: headShake; animation-name: headShake; }

@-webkit-keyframes swing { 20% { -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% { -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% { -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% { -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to { -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

@keyframes swing { 20% { -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% { -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% { -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% { -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to { -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

.swing { -webkit-transform-origin: top center; -ms-transform-origin: top center; transform-origin: top center; -webkit-animation-name: swing; animation-name: swing; }

@-webkit-keyframes tada { from { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% { -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% { -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% { -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes tada { from { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% { -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% { -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% { -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to { -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.tada { -webkit-animation-name: tada; animation-name: tada; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble { from { -webkit-transform: 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);
    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); } }

.wobble { -webkit-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.563deg) skewY(1.563deg);
    transform: skewX(1.563deg) skewY(1.563deg); }
  66.6% { -webkit-transform: skewX(-0.781deg) skewY(-0.781deg);
    transform: skewX(-0.781deg) skewY(-0.781deg); }
  77.7% { -webkit-transform: skewX(0.391deg) skewY(0.391deg);
    transform: skewX(0.391deg) skewY(0.391deg); }
  88.8% { -webkit-transform: skewX(-0.195deg) skewY(-0.195deg);
    transform: skewX(-0.195deg) skewY(-0.195deg); } }

@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.563deg) skewY(1.563deg);
    transform: skewX(1.563deg) skewY(1.563deg); }
  66.6% { -webkit-transform: skewX(-0.781deg) skewY(-0.781deg);
    transform: skewX(-0.781deg) skewY(-0.781deg); }
  77.7% { -webkit-transform: skewX(0.391deg) skewY(0.391deg);
    transform: skewX(0.391deg) skewY(0.391deg); }
  88.8% { -webkit-transform: skewX(-0.195deg) skewY(-0.195deg);
    transform: skewX(-0.195deg) skewY(-0.195deg); } }

.jello { -webkit-animation-name: jello; animation-name: jello; -webkit-transform-origin: center; -ms-transform-origin: center; transform-origin: center; }

@-webkit-keyframes bounceIn { from, 20%, 40%, 60%, 80%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% { -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% { -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% { opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% { -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to { opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes bounceIn { from, 20%, 40%, 60%, 80%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% { -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% { -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% { opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% { -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to { opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.bounceIn { -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-name: bounceIn; animation-name: bounceIn; }

@-webkit-keyframes bounceInDown { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% { -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% { -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInDown { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% { -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% { -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.bounceInDown { -webkit-animation-name: bounceInDown; animation-name: bounceInDown; }

@-webkit-keyframes bounceInLeft { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% { -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% { -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInLeft { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% { -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% { -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.bounceInLeft { -webkit-animation-name: bounceInLeft; animation-name: bounceInLeft; }

@-webkit-keyframes bounceInRight { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from { opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% { -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% { -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInRight { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from { opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% { -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% { -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.bounceInRight { -webkit-animation-name: bounceInRight; animation-name: bounceInRight; }

@-webkit-keyframes bounceInUp { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from { opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(0, -40px, 0);
    transform: translate3d(0, -40px, 0); }
  75% { -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% { -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInUp { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from { opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% { opacity: 1;
    -webkit-transform: translate3d(0, -40px, 0);
    transform: translate3d(0, -40px, 0); }
  75% { -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% { -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.bounceInUp { -webkit-animation-name: bounceInUp; animation-name: bounceInUp; }

@-webkit-keyframes bounceOut { 20% { -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% { opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

@keyframes bounceOut { 20% { -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% { opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

.bounceOut { -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-name: bounceOut; animation-name: bounceOut; }

@-webkit-keyframes bounceOutDown { 20% { -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% { opacity: 1;
    -webkit-transform: translate3d(0, -40px, 0);
    transform: translate3d(0, -40px, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes bounceOutDown { 20% { -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% { opacity: 1;
    -webkit-transform: translate3d(0, -40px, 0);
    transform: translate3d(0, -40px, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

.bounceOutDown { -webkit-animation-name: bounceOutDown; animation-name: bounceOutDown; }

@-webkit-keyframes bounceOutLeft { 20% { opacity: 1;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

@keyframes bounceOutLeft { 20% { opacity: 1;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

.bounceOutLeft { -webkit-animation-name: bounceOutLeft; animation-name: bounceOutLeft; }

@-webkit-keyframes bounceOutRight { 20% { opacity: 1;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

@keyframes bounceOutRight { 20% { opacity: 1;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

.bounceOutRight { -webkit-animation-name: bounceOutRight; animation-name: bounceOutRight; }

@-webkit-keyframes bounceOutUp { 20% { -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% { opacity: 1;
    -webkit-transform: translate3d(0, 40px, 0);
    transform: translate3d(0, 40px, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes bounceOutUp { 20% { -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% { opacity: 1;
    -webkit-transform: translate3d(0, 40px, 0);
    transform: translate3d(0, 40px, 0); }
  to { opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

.bounceOutUp { -webkit-animation-name: bounceOutUp; animation-name: bounceOutUp; }

@-webkit-keyframes fadeIn { from { opacity: 0; }
  to { opacity: 1; } }

@keyframes fadeIn { from { opacity: 0; }
  to { opacity: 1; } }

.fadeIn { -webkit-animation-name: fadeIn; animation-name: fadeIn; }

@-webkit-keyframes fadeInDown { from { opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInDown { from { opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInDown { -webkit-animation-name: fadeInDown; animation-name: fadeInDown; }

@-webkit-keyframes fadeInDownBig { from { opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInDownBig { from { opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInDownBig { -webkit-animation-name: fadeInDownBig; animation-name: fadeInDownBig; }

@-webkit-keyframes fadeInLeft { from { opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInLeft { from { opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInLeft { -webkit-animation-name: fadeInLeft; animation-name: fadeInLeft; }

@-webkit-keyframes fadeInLeftBig { from { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInLeftBig { from { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInLeftBig { -webkit-animation-name: fadeInLeftBig; animation-name: fadeInLeftBig; }

@-webkit-keyframes fadeInRight { from { opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInRight { from { opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInRight { -webkit-animation-name: fadeInRight; animation-name: fadeInRight; }

@-webkit-keyframes fadeInRightBig { from { opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInRightBig { from { opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInRightBig { -webkit-animation-name: fadeInRightBig; animation-name: fadeInRightBig; }

@-webkit-keyframes fadeInUp { from { opacity: 0;
    -webkit-transform: translate3d(0, 40px, 0);
    transform: translate3d(0, 40px, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInUp { from { opacity: 0;
    -webkit-transform: translate3d(0, 40px, 0);
    transform: translate3d(0, 40px, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInUp { -webkit-animation-name: fadeInUp; animation-name: fadeInUp; }

@-webkit-keyframes fadeInUpBig { from { opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fadeInUpBig { from { opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.fadeInUpBig { -webkit-animation-name: fadeInUpBig; animation-name: fadeInUpBig; }

@-webkit-keyframes fadeOut { from { opacity: 1; }
  to { opacity: 0; } }

@keyframes fadeOut { from { opacity: 1; }
  to { opacity: 0; } }

.fadeOut { -webkit-animation-name: fadeOut; animation-name: fadeOut; }

@-webkit-keyframes fadeOutDown { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes fadeOutDown { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

.fadeOutDown { -webkit-animation-name: fadeOutDown; animation-name: fadeOutDown; }

@-webkit-keyframes fadeOutDownBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes fadeOutDownBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

.fadeOutDownBig { -webkit-animation-name: fadeOutDownBig; animation-name: fadeOutDownBig; }

@-webkit-keyframes fadeOutLeft { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes fadeOutLeft { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

.fadeOutLeft { -webkit-animation-name: fadeOutLeft; animation-name: fadeOutLeft; }

@-webkit-keyframes fadeOutLeftBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

@keyframes fadeOutLeftBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

.fadeOutLeftBig { -webkit-animation-name: fadeOutLeftBig; animation-name: fadeOutLeftBig; }

@-webkit-keyframes fadeOutRight { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes fadeOutRight { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

.fadeOutRight { -webkit-animation-name: fadeOutRight; animation-name: fadeOutRight; }

@-webkit-keyframes fadeOutRightBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

@keyframes fadeOutRightBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

.fadeOutRightBig { -webkit-animation-name: fadeOutRightBig; animation-name: fadeOutRightBig; }

@-webkit-keyframes fadeOutUp { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes fadeOutUp { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

.fadeOutUp { -webkit-animation-name: fadeOutUp; animation-name: fadeOutUp; }

@-webkit-keyframes fadeOutUpBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes fadeOutUpBig { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

.fadeOutUpBig { -webkit-animation-name: fadeOutUpBig; animation-name: fadeOutUpBig; }

@-webkit-keyframes flip { from { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% { -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% { -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% { -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to { -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

@keyframes flip { from { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% { -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% { -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% { -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to { -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

.animated.flip { -webkit-backface-visibility: visible; backface-visibility: visible; -webkit-animation-name: flip; animation-name: flip; }

@-webkit-keyframes flipInX { from { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to { -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInX { from { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to { -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

.flipInX { -webkit-backface-visibility: visible !important; backface-visibility: visible !important; -webkit-animation-name: flipInX; animation-name: flipInX; }

@-webkit-keyframes flipInY { from { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to { -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInY { from { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to { -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

.flipInY { -webkit-backface-visibility: visible !important; backface-visibility: visible !important; -webkit-animation-name: flipInY; animation-name: flipInY; }

@-webkit-keyframes flipOutX { from { -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutX { from { -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

.flipOutX { -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-name: flipOutX; animation-name: flipOutX; -webkit-backface-visibility: visible !important; backface-visibility: visible !important; }

@-webkit-keyframes flipOutY { from { -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutY { from { -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

.flipOutY { -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-backface-visibility: visible !important; backface-visibility: visible !important; -webkit-animation-name: flipOutY; animation-name: flipOutY; }

@-webkit-keyframes lightSpeedIn { from { -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% { -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% { -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes lightSpeedIn { from { -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% { -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% { -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

.lightSpeedIn { -webkit-animation-name: lightSpeedIn; animation-name: lightSpeedIn; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; }

@-webkit-keyframes lightSpeedOut { from { opacity: 1; }
  to { -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

@keyframes lightSpeedOut { from { opacity: 1; }
  to { -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

.lightSpeedOut { -webkit-animation-name: lightSpeedOut; animation-name: lightSpeedOut; -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; }

@-webkit-keyframes rotateIn { from { -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to { -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes rotateIn { from { -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to { -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

.rotateIn { -webkit-animation-name: rotateIn; animation-name: rotateIn; }

@-webkit-keyframes rotateInDownLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes rotateInDownLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

.rotateInDownLeft { -webkit-animation-name: rotateInDownLeft; animation-name: rotateInDownLeft; }

@-webkit-keyframes rotateInDownRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes rotateInDownRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

.rotateInDownRight { -webkit-animation-name: rotateInDownRight; animation-name: rotateInDownRight; }

@-webkit-keyframes rotateInUpLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes rotateInUpLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

.rotateInUpLeft { -webkit-animation-name: rotateInUpLeft; animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes rotateInUpRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

.rotateInUpRight { -webkit-animation-name: rotateInUpRight; animation-name: rotateInUpRight; }

@-webkit-keyframes rotateOut { from { -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to { -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

@keyframes rotateOut { from { -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to { -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

.rotateOut { -webkit-animation-name: rotateOut; animation-name: rotateOut; }

@-webkit-keyframes rotateOutDownLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }

@keyframes rotateOutDownLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }

.rotateOutDownLeft { -webkit-animation-name: rotateOutDownLeft; animation-name: rotateOutDownLeft; }

@-webkit-keyframes rotateOutDownRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@keyframes rotateOutDownRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

.rotateOutDownRight { -webkit-animation-name: rotateOutDownRight; animation-name: rotateOutDownRight; }

@-webkit-keyframes rotateOutUpLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@keyframes rotateOutUpLeft { from { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to { -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

.rotateOutUpLeft { -webkit-animation-name: rotateOutUpLeft; animation-name: rotateOutUpLeft; }

@-webkit-keyframes rotateOutUpRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }

@keyframes rotateOutUpRight { from { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to { -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }

.rotateOutUpRight { -webkit-animation-name: rotateOutUpRight; animation-name: rotateOutUpRight; }

@-webkit-keyframes hinge { 0% { -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% { -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% { -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to { -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

@keyframes hinge { 0% { -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% { -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% { -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to { -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

.hinge { -webkit-animation-duration: 2s; animation-duration: 2s; -webkit-animation-name: hinge; animation-name: hinge; }

@-webkit-keyframes jackInTheBox { from { opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom; }
  50% { -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  70% { -webkit-transform: rotate(3deg);
    transform: rotate(3deg); }
  to { opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes jackInTheBox { from { opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom; }
  50% { -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  70% { -webkit-transform: rotate(3deg);
    transform: rotate(3deg); }
  to { opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

.jackInTheBox { -webkit-animation-name: jackInTheBox; animation-name: jackInTheBox; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn { from { opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes rollIn { from { opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to { opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.rollIn { -webkit-animation-name: rollIn; animation-name: rollIn; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }

@keyframes rollOut { from { opacity: 1; }
  to { opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }

.rollOut { -webkit-animation-name: rollOut; animation-name: rollOut; }

@-webkit-keyframes zoomIn { from { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% { opacity: 1; } }

@keyframes zoomIn { from { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% { opacity: 1; } }

.zoomIn { -webkit-animation-name: zoomIn; animation-name: zoomIn; }

@-webkit-keyframes zoomInDown { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInDown { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInDown { -webkit-animation-name: zoomInDown; animation-name: zoomInDown; }

@-webkit-keyframes zoomInLeft { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInLeft { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInLeft { -webkit-animation-name: zoomInLeft; animation-name: zoomInLeft; }

@-webkit-keyframes zoomInRight { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInRight { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInRight { -webkit-animation-name: zoomInRight; animation-name: zoomInRight; }

@-webkit-keyframes zoomInUp { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInUp { from { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInUp { -webkit-animation-name: zoomInUp; animation-name: zoomInUp; }

@-webkit-keyframes zoomOut { from { opacity: 1; }
  50% { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to { opacity: 0; } }

@keyframes zoomOut { from { opacity: 1; }
  50% { opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to { opacity: 0; } }

.zoomOut { -webkit-animation-name: zoomOut; animation-name: zoomOut; }

@-webkit-keyframes zoomOutDown { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutDown { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutDown { -webkit-animation-name: zoomOutDown; animation-name: zoomOutDown; }

@-webkit-keyframes zoomOutLeft { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

@keyframes zoomOutLeft { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

.zoomOutLeft { -webkit-animation-name: zoomOutLeft; animation-name: zoomOutLeft; }

@-webkit-keyframes zoomOutRight { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

@keyframes zoomOutRight { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to { opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

.zoomOutRight { -webkit-animation-name: zoomOutRight; animation-name: zoomOutRight; }

@-webkit-keyframes zoomOutUp { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutUp { 40% { opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to { opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutUp { -webkit-animation-name: zoomOutUp; animation-name: zoomOutUp; }

@-webkit-keyframes slideInDown { from { -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInDown { from { -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInDown { -webkit-animation-name: slideInDown; animation-name: slideInDown; }

@-webkit-keyframes slideInLeft { from { -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInLeft { from { -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInLeft { -webkit-animation-name: slideInLeft; animation-name: slideInLeft; }

@-webkit-keyframes slideInRight { from { -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInRight { from { -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInRight { -webkit-animation-name: slideInRight; animation-name: slideInRight; }

@-webkit-keyframes slideInUp { from { -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInUp { from { -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInUp { -webkit-animation-name: slideInUp; animation-name: slideInUp; }

@-webkit-keyframes slideOutDown { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes slideOutDown { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

.slideOutDown { -webkit-animation-name: slideOutDown; animation-name: slideOutDown; }

@-webkit-keyframes slideOutLeft { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes slideOutLeft { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

.slideOutLeft { -webkit-animation-name: slideOutLeft; animation-name: slideOutLeft; }

@-webkit-keyframes slideOutRight { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes slideOutRight { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

.slideOutRight { -webkit-animation-name: slideOutRight; animation-name: slideOutRight; }

@-webkit-keyframes slideOutUp { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes slideOutUp { from { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to { visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

.slideOutUp { -webkit-animation-name: slideOutUp; animation-name: slideOutUp; }

/* Owl Carousel - Core */
.owl-carousel { display: none; width: 100%; -webkit-tap-highlight-color: transparent; /* position relative and z-index fix webkit rendering fonts issue */ position: relative; z-index: 1; }

.owl-carousel .owl-stage { position: relative; -ms-touch-action: pan-Y; touch-action: manipulation; -moz-backface-visibility: hidden; /* fix firefox animation glitch */ }

.owl-carousel .owl-stage:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }

.owl-carousel .owl-stage-outer { position: relative; overflow: hidden; /* fix for flashing background */ -webkit-transform: translate3d(0px, 0px, 0px); }

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

.owl-carousel .owl-item { position: relative; min-height: 1px; float: left; -webkit-backface-visibility: hidden; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none; }

.owl-carousel .owl-nav.disabled, .owl-carousel .owl-dots.disabled { display: none; }

.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-dot { cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.owl-carousel .owl-nav button.owl-prev, .owl-carousel .owl-nav button.owl-next, .owl-carousel button.owl-dot { background: none; color: inherit; border: none; padding: 0 !important; font: inherit; }

.owl-carousel.owl-loaded { display: block; }

.owl-carousel.owl-loading { opacity: 0; display: block; }

.owl-carousel.owl-hidden { opacity: 0; }

.owl-carousel.owl-refresh .owl-item { visibility: hidden; }

.owl-carousel.owl-drag .owl-item { -ms-touch-action: pan-y; touch-action: pan-y; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.owl-carousel.owl-grab { cursor: move; cursor: -webkit-grab; cursor: grab; }

.owl-carousel.owl-rtl { direction: rtl; }

.owl-carousel.owl-rtl .owl-item { float: right; }

/* No Js */
.no-js .owl-carousel { display: block; }

/* box-sizing */
.fr-window, .fr-window [class^="fr-"], .fr-overlay, .fr-overlay [class^="fr-"], .fr-spinner, .fr-spinner [class^="fr-"] { -webkit-box-sizing: border-box; box-sizing: border-box; }

.fr-window { position: fixed; width: 100%; height: 100%; top: 0; left: 0; font: 13px/20px "Lucida Sans", "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, sans-serif; /* Chrome hack, this fixes a visual glitch when quickly toggling a video */ -webkit-transform: translateZ(0px); transform: translateZ(0px); }

/* z-index */
.fr-overlay { z-index: 99998; }

.fr-window { z-index: 99999; }

.fr-spinner { z-index: 100000; }

/* overlay */
.fr-overlay { position: fixed; top: 0; left: 0; height: 100%; width: 100%; }

.fr-overlay-background { float: left; width: 100%; height: 100%; background: #28323f; opacity: .95; filter: alpha(opacity=95); }

.fr-overlay-ui-fullclick .fr-overlay-background { background: #292929; opacity: 1; filter: alpha(opacity=100); }

/* mobile touch has position:absolute to allow zooming */
.fr-window.fr-mobile-touch, .fr-overlay.fr-mobile-touch { position: absolute; overflow: visible; }

/* some properties on the window are used to toggle things like margin and the fullclick mode, we reset those properties after measuring them */
.fr-measured { margin: 0 !important; min-width: 0 !important; min-height: 0 !important; }

.fr-box { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.fr-pages { position: absolute; width: 100%; height: 100%; overflow: hidden; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.fr-page { position: absolute; width: 100%; height: 100%; }

.fr-container { position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: 0; padding: 0; text-align: center; }

.fr-hovering-clickable .fr-container { cursor: pointer; }

/*
   padding:
   youtube & vimeo always have buttons on the outside
   side button = 72 = 54 + (2 * 9 margin)
   close button = 48
*/
/* padding ui:inside */
.fr-ui-inside .fr-container { padding: 20px 20px; }

.fr-ui-inside.fr-no-sides .fr-container { padding: 20px; }

/* padding ui:outside */
.fr-ui-outside .fr-container { padding: 20px 82px; }

.fr-ui-outside.fr-no-sides .fr-container { padding: 20px 48px; }

/* reduce padding on smaller screens */

/* padding ui:fullclick */
.fr-ui-fullclick .fr-container { padding: 0; }

.fr-ui-fullclick.fr-no-sides .fr-container { padding: 0; }

/* video fullclick */
.fr-ui-fullclick.fr-type-video .fr-container { padding: 0px 62px; }

.fr-ui-fullclick.fr-no-sides.fr-type-video .fr-container { padding: 48px 0px; }

/* overflow-y should always have 0 padding top and bottom */
.fr-overflow-y .fr-container { padding-top: 0 !important; padding-bottom: 0 !important; }

.fr-content, .fr-content-background { position: absolute; top: 50%; left: 50%; /* IE11 has a 1px blur bug on the edges of the caption (ui:inside) during animation with overflow:hidden */ overflow: visible; }

/* img/iframe/error */
.fr-content-element { float: left; width: 100%; height: 100%; }

.fr-content-background { background: #101010; }

.fr-info { position: absolute; top: 0; left: 0; width: 100%; color: #efefef; font-size: 13px; line-height: 20px; text-align: left; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; -ms-text-size-adjust: none; text-size-adjust: none; -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text; }

.fr-info-background { position: absolute; top: 0; left: 0; height: 100%; width: 100%; background: #000; line-height: 1%; -webkit-filter: none; filter: none; opacity: 1; }

.fr-ui-inside .fr-info-background { filter: alpha(opacity=80); opacity: .8; zoom: 1; }

/* ui:outside has a slightly lighter info background to break up from black page backgrounds */
.fr-ui-outside .fr-info-background { background: #0d0d0d; }

/* info at the bottom for ui:inside */
.fr-content .fr-info { top: auto; bottom: 0; }

.fr-info-padder { display: block; overflow: hidden; padding: 12px; position: relative; width: auto; }

.fr-caption { width: auto; display: inline; white-space: wrap; }

.fr-position { color: #b3b3b3; float: right; line-height: 21px; opacity: 0.99; position: relative; text-align: right; margin-left: 15px; white-space: nowrap; }

/* positions not within the info bar for ui:outside/inside */
.fr-position-outside, .fr-position-inside { position: absolute; bottom: 0; right: 0; margin: 12px; width: auto; padding: 2px 8px; -webkit-border-radius: 10px; border-radius: 10px; font-size: 11px; line-height: 20px; text-shadow: 0 1px 0 rgba(0, 0, 0, 0.4); display: none; overflow: hidden; white-space: nowrap; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; -ms-text-size-adjust: none; text-size-adjust: none; -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text; }

.fr-position-inside { border: 0; }

.fr-position-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #0d0d0d; filter: alpha(opacity=80); opacity: .8; zoom: 1; /* oldIE */ }

.fr-position-text { color: #b3b3b3; }

.fr-position-outside .fr-position-text, .fr-position-inside .fr-position-text { float: left; position: relative; text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3); opacity: 1; }

/* display it for the outside ui, hide the caption inside */
.fr-ui-outside .fr-position-outside { display: block; }

.fr-ui-outside .fr-info .fr-position { display: none; }

.fr-ui-inside.fr-no-caption .fr-position-inside { display: block; }

/* links */
.fr-info a, .fr-info a:hover { color: #ccc; border: 0; background: none; text-decoration: underline; }

.fr-info a:hover { color: #eee; }

/* no-caption */
.fr-ui-outside.fr-no-caption .fr-info { display: none; }

.fr-ui-inside.fr-no-caption .fr-caption { display: none; }

/* --- stroke */
.fr-stroke { position: absolute; top: 0; left: 0; width: 100%; height: 1px; }

.fr-stroke-vertical { width: 1px; height: 100%; }

.fr-stroke-horizontal { padding: 0 1px; }

.fr-stroke-right { left: auto; right: 0; }

.fr-stroke-bottom { top: auto; bottom: 0; }

.fr-stroke-color { float: left; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.08); }

/* the stroke is brighter inside the info box */
.fr-info .fr-stroke-color { background: rgba(80, 80, 80, 0.3); }

/* remove the stroke when outside ui has a caption */
.fr-ui-outside.fr-has-caption .fr-content .fr-stroke-bottom { display: none; }

/* remove stroke and shadow when ui:fullclick */
.fr-ui-fullclick .fr-stroke { display: none; }

.fr-ui-fullclick .fr-content-background { -webkit-box-shadow: none; box-shadow: none; }

/* the info box never bas a top stroke */
.fr-info .fr-stroke-top { display: none; }

/* < > */
.fr-side { position: absolute; top: 50%; width: 54px; height: 72px; margin: 0 9px; margin-top: -36px; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; zoom: 1; }

.fr-side-previous { left: 0; }

.fr-side-next { right: 0; left: auto; }

.fr-side-disabled { cursor: default; }

.fr-side-hidden { display: none !important; }

.fr-side-button { float: left; width: 100%; height: 100%; margin: 0; padding: 0; }

.fr-side-button-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #101010; background-color: #ccc; }

.fr-side-button-icon { float: left; position: relative; height: 100%; width: 100%; zoom: 1; background-position: 50% 50%; background-repeat: no-repeat; }

/* smaller side buttons */

/* X */
.fr-close { position: absolute; width: 48px; height: 48px; top: 0; right: 0; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.fr-close-background, .fr-close-icon { position: absolute; top: 12px; left: 12px; height: 26px; width: 26px; background-position: 50% 50%; background-repeat: no-repeat; }

.fr-close-background { background-color: #000; }

/* Thumbnails */
.fr-thumbnails { position: absolute; overflow: hidden; }

.fr-thumbnails-disabled .fr-thumbnails { display: none !important; }

.fr-thumbnails-horizontal .fr-thumbnails { width: 100%; height: 12%; min-height: 74px; max-height: 160px; bottom: 0; }

.fr-thumbnails-vertical .fr-thumbnails { height: 100%; width: 10%; min-width: 74px; max-width: 160px; left: 0; }

.fr-thumbnails, .fr-thumbnails * { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.fr-thumbnails-wrapper { position: absolute; top: 0; left: 50%; height: 100%; }

.fr-thumbnails-vertical .fr-thumbnails-wrapper { top: 50%; left: 0; }

.fr-thumbnails-slider { position: relative; width: 100%; height: 100%; float: left; zoom: 1; }

.fr-thumbnails-slider-slide { position: absolute; top: 0; left: 0; height: 100%; }

.fr-thumbnails-thumbs { float: left; height: 100%; overflow: hidden; position: relative; top: 0; left: 0; }

.fr-thumbnails-slide { position: absolute; top: 0; height: 100%; width: 100%; }

.fr-thumbnail-frame { position: absolute; zoom: 1; overflow: hidden; }

.fr-thumbnail { position: absolute; width: 30px; height: 100%; left: 50%; top: 50%; zoom: 1; cursor: pointer; margin: 0 10px; }

.fr-ltIE9 .fr-thumbnail * { overflow: hidden; /* IE6(7) */ z-index: 1; zoom: 1; }

.fr-thumbnail-wrapper { position: relative; background: #161616; width: 100%; height: 100%; float: left; overflow: hidden; display: inline; /* IE6(7) */ z-index: 0; /* IE8 */ }

.fr-thumbnail-overlay { cursor: pointer; }

.fr-thumbnail-active .fr-thumbnail-overlay { cursor: default; }

.fr-thumbnail-overlay, .fr-thumbnail-overlay-background, .fr-thumbnail-overlay-border { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-width: 0; overflow: hidden; border-style: solid; border-color: transparent; }

.fr-ltIE9 .fr-thumbnail-overlay-border { border-width: 0 !important; }

.fr-thumbnail .fr-thumbnail-image { position: absolute; filter: alpha(opacity=85); opacity: .85; max-width: none; }

.fr-thumbnail:hover .fr-thumbnail-image, .fr-thumbnail-active:hover .fr-thumbnail-image { filter: alpha(opacity=99); opacity: .99; }

.fr-thumbnail-active .fr-thumbnail-image, .fr-thumbnail-active:hover .fr-thumbnail-image { filter: alpha(opacity=35); opacity: .35; }

.fr-thumbnail-active { cursor: default; }

/* Thumbnails loading */
.fr-thumbnail-loading, .fr-thumbnail-loading-background, .fr-thumbnail-loading-icon { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.fr-thumbnail-loading-background { background-color: #161616; background-position: 50% 50%; background-repeat: no-repeat; opacity: .8; position: relative; float: left; }

/* this element is there as an alternative to putting the loading image on the background */
.fr-thumbnail-loading-icon { display: none; }

/* error on thumbnail */
.fr-thumbnail-error .fr-thumbnail-image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #202020; }

/* Thumbnail < > */
.fr-thumbnails-side { float: left; height: 100%; width: 28px; margin: 0 5px; position: relative; overflow: hidden; }

.fr-thumbnails-side-previous { margin-left: 12px; }

.fr-thumbnails-side-next { margin-right: 12px; }

.fr-thumbnails-vertical .fr-thumbnails-side { height: 28px; width: 100%; margin: 10px 0; }

.fr-thumbnails-vertical .fr-thumbnails-side-previous { margin-top: 20px; }

.fr-thumbnails-vertical .fr-thumbnails-side-next { margin-bottom: 20px; }

.fr-thumbnails-side-button { position: absolute; top: 50%; left: 50%; margin-top: -14px; margin-left: -14px; width: 28px; height: 28px; cursor: pointer; }

.fr-thumbnails-side-button-background { position: absolute; top: 0; left: 0; height: 100%; width: 100%; filter: alpha(opacity=80); opacity: .8; -webkit-transition: background-color .2s ease-in; -o-transition: background-color .2s ease-in; transition: background-color .2s ease-in; background-color: #333; cursor: pointer; -webkit-border-radius: 4px; border-radius: 4px; }

.fr-thumbnails-side-button:hover .fr-thumbnails-side-button-background { background-color: #3b3b3b; }

.fr-thumbnails-side-button-disabled * { cursor: default; }

.fr-thumbnails-side-button-disabled:hover .fr-thumbnails-side-button-background { background-color: #333; }

.fr-thumbnails-side-button-icon { height: 42px; width: 42px; position: absolute; /*top: -7px; left: -7px;*/ top: 0; left: 0; width: 100%; height: 100%; }

/* vertical thumbnails */
.fr-thumbnails-vertical .fr-thumbnails-side, .fr-thumbnails-vertical .fr-thumbnails-thumbs, .fr-thumbnails-vertical .fr-thumbnail-frame { clear: both; }

/* ui:fullclick has a dark thumbnail background */
.fr-window-ui-fullclick .fr-thumbnails { background: #090909; }

/* put a stroke on the connecting caption*/
.fr-window-ui-fullclick.fr-thumbnails-enabled.fr-thumbnails-horizontal .fr-info .fr-stroke-bottom { display: block !important; }

/*({ box-shadow: inset 0 -1px 0 rgba(255,255,255,.1); } */
.fr-window-ui-fullclick.fr-thumbnails-enabled.fr-thumbnails-vertical .fr-info .fr-stroke-left { display: block !important; }

/* thumbnail spacing  */
.fr-thumbnails-horizontal .fr-thumbnails-thumbs { padding: 12px 5px; }

.fr-thumbnails-vertical .fr-thumbnails-thumbs { padding: 5px 12px; }

.fr-thumbnails-measured .fr-thumbnails-thumbs { padding: 0 !important; }

/* horizontal */

/* vertical */

/* hide thumbnails on smaller screens
   the js always hides them on touch based devices
*/

/* force fullClick: true and force overflow: false */

/* switch between ui modes
   we force everything not in the current UI mode to hide
*/
.fr-window-ui-fullclick .fr-side-next-outside, .fr-window-ui-fullclick .fr-side-previous-outside, .fr-window-ui-fullclick .fr-close-outside, .fr-window-ui-fullclick .fr-content .fr-side-next, .fr-window-ui-fullclick .fr-content .fr-side-previous, .fr-window-ui-fullclick .fr-content .fr-close, .fr-window-ui-fullclick .fr-content .fr-info, .fr-window-ui-outside .fr-side-next-fullclick, .fr-window-ui-outside .fr-side-previous-fullclick, .fr-window-ui-outside .fr-close-fullclick, .fr-window-ui-outside .fr-content .fr-side-next, .fr-window-ui-outside .fr-content .fr-side-previous, .fr-window-ui-outside .fr-content .fr-close, .fr-window-ui-outside .fr-content .fr-info, .fr-window-ui-inside .fr-page > .fr-info, .fr-window-ui-inside .fr-side-next-fullclick, .fr-window-ui-inside .fr-side-previous-fullclick, .fr-window-ui-inside .fr-close-fullclick, .fr-window-ui-inside .fr-side-next-outside, .fr-window-ui-inside .fr-side-previous-outside, .fr-window-ui-inside .fr-close-outside { display: none !important; }

/* some ui elements can be toggled on mousemove.
   filter:alpha(opacity) is bugged so we use display in oldIE
*/
.fr-toggle-ui { opacity: 0; -webkit-transition: opacity .3s; -o-transition: opacity .3s; transition: opacity .3s; }

.fr-visible-fullclick-ui .fr-box > .fr-toggle-ui, .fr-visible-inside-ui .fr-ui-inside .fr-toggle-ui { opacity: 1; }

.fr-hidden-fullclick-ui .fr-box > .fr-toggle-ui, .fr-hidden-inside-ui .fr-ui-inside .fr-toggle-ui { -webkit-transition: opacity .3s; -o-transition: opacity .3s; transition: opacity .3s; }

.fr-ltIE9.fr-hidden-fullclick-ui .fr-box > .fr-toggle-ui, .fr-ltIE9.fr-hidden-inside-ui .fr-ui-inside .fr-toggle-ui { display: none; }

/* Spinner */
.fr-spinner { position: fixed; width: 52px; height: 52px; background: #101010; background: rgba(16, 16, 16, 0.85); -webkit-border-radius: 5px; border-radius: 5px; }

.fr-spinner div { position: absolute; top: 0; left: 0; height: 64%; width: 64%; margin-left: 18%; margin-top: 18%; opacity: 1; -webkit-animation: fresco-12 1.2s infinite ease-in-out; animation: fresco-12 1.2s infinite ease-in-out; }

.fr-spinner div:after { content: ''; position: absolute; top: 0; left: 50%; width: 2px; height: 8px; margin-left: -1px; background: #fff; -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); /* fixes rendering in Firefox */ }

.fr-spinner div.fr-spin-1 { -ms-transform: rotate(30deg); -webkit-transform: rotate(30deg); transform: rotate(30deg); -webkit-animation-delay: -1.1s; animation-delay: -1.1s; }

.fr-spinner div.fr-spin-2 { -ms-transform: rotate(60deg); -webkit-transform: rotate(60deg); transform: rotate(60deg); -webkit-animation-delay: -1.0s; animation-delay: -1.0s; }

.fr-spinner div.fr-spin-3 { -ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg); -webkit-animation-delay: -0.9s; animation-delay: -0.9s; }

.fr-spinner div.fr-spin-4 { -ms-transform: rotate(120deg); -webkit-transform: rotate(120deg); transform: rotate(120deg); -webkit-animation-delay: -0.8s; animation-delay: -0.8s; }

.fr-spinner div.fr-spin-5 { -ms-transform: rotate(150deg); -webkit-transform: rotate(150deg); transform: rotate(150deg); -webkit-animation-delay: -0.7s; animation-delay: -0.7s; }

.fr-spinner div.fr-spin-6 { -ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); transform: rotate(180deg); -webkit-animation-delay: -0.6s; animation-delay: -0.6s; }

.fr-spinner div.fr-spin-6 { -ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); transform: rotate(180deg); -webkit-animation-delay: -0.6s; animation-delay: -0.6s; }

.fr-spinner div.fr-spin-7 { -ms-transform: rotate(210deg); -webkit-transform: rotate(210deg); transform: rotate(210deg); -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }

.fr-spinner div.fr-spin-8 { -ms-transform: rotate(240deg); -webkit-transform: rotate(240deg); transform: rotate(240deg); -webkit-animation-delay: -0.4s; animation-delay: -0.4s; }

.fr-spinner div.fr-spin-9 { -ms-transform: rotate(270deg); -webkit-transform: rotate(270deg); transform: rotate(270deg); -webkit-animation-delay: -0.3s; animation-delay: -0.3s; }

.fr-spinner div.fr-spin-10 { -ms-transform: rotate(300deg); -webkit-transform: rotate(300deg); transform: rotate(300deg); -webkit-animation-delay: -0.2s; animation-delay: -0.2s; }

.fr-spinner div.fr-spin-11 { -ms-transform: rotate(330deg); -webkit-transform: rotate(330deg); transform: rotate(330deg); -webkit-animation-delay: -0.1s; animation-delay: -0.1s; }

.fr-spinner div.fr-spin-12 { -ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg); -webkit-animation-delay: 0s; animation-delay: 0s; }

@-webkit-keyframes fresco-12 { 0% { opacity: 1; }
  100% { opacity: 0; } }

@keyframes fresco-12 { 0% { opacity: 1; }
  100% { opacity: 0; } }

/* Thumbnail spinner */
.fr-thumbnail-spinner { position: absolute; top: 50%; left: 50%; margin-top: -20px; margin-left: -20px; width: 40px; height: 40px; }

.fr-thumbnail-spinner-spin { position: relative; float: left; margin: 8px 0 0 8px; text-indent: -9999em; border-top: 2px solid rgba(255, 255, 255, 0.2); border-right: 2px solid rgba(255, 255, 255, 0.2); border-bottom: 2px solid rgba(255, 255, 255, 0.2); border-left: 2px solid #fff; -webkit-animation: fr-thumbnail-spin 1.1s infinite linear; animation: fr-thumbnail-spin 1.1s infinite linear; }

.fr-thumbnail-spinner-spin, .fr-thumbnail-spinner-spin:after { -webkit-border-radius: 50%; border-radius: 50%; width: 24px; height: 24px; }

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

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

/* Error */
.fr-error { float: left; position: relative; background-color: #ca3434; width: 160px; height: 160px; }

.fr-error-icon { position: absolute; width: 42px; height: 42px; top: 50%; left: 50%; margin-left: -21px; margin-top: -21px; }

/* skin: 'fresco' */
/* Sprite */
.fr-window-skin-fresco .fr-side-button-icon, .fr-window-skin-fresco .fr-close-icon, .fr-window-skin-fresco .fr-thumbnails-side-button-icon, .fr-window-skin-fresco .fr-error-icon { background-image: url("../images/fresco/sprite.svg"); }

/* fallback png sprite */
.fr-window-skin-fresco.fr-no-svg .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-close-icon, .fr-window-skin-fresco.fr-no-svg .fr-thumbnails-side-button-icon, .fr-window-skin-fresco .fr-error-icon { background-image: url("../images/fresco/sprite.png"); }

.fr-window-skin-fresco .fr-error-icon { background-position: -160px -126px; }

.fr-window-skin-fresco .fr-content-background { background: #101010; -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4); box-shadow: 0 0 5px rgba(0, 0, 0, 0.4); }

.fr-window-skin-fresco.fr-window-ui-fullclick .fr-content-background { -webkit-box-shadow: none; box-shadow: none; }

/* thumbnail shadow */
.fr-window-skin-fresco .fr-thumbnail-wrapper { -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }

.fr-window-skin-fresco .fr-thumbnail-active .fr-thumbnail-wrapper { -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.1); box-shadow: 0 0 1px rgba(0, 0, 0, 0.1); }

/* < > */
.fr-window-skin-fresco .fr-side-button-background { background-color: transparent; }

.fr-window-skin-fresco .fr-side-previous .fr-side-button-icon { background-position: -13px -14px; }

.fr-window-skin-fresco .fr-side-next .fr-side-button-icon { background-position: -93px -14px; }

.fr-window-skin-fresco .fr-side-previous:hover .fr-side-button-icon { background-position: -13px -114px; }

.fr-window-skin-fresco .fr-side-next:hover .fr-side-button-icon { background-position: -93px -114px; }

/* transition (png) */
.fr-window-skin-fresco.fr-no-svg .fr-hovering-previous .fr-side-previous .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg.fr-mobile-touch .fr-side-previous .fr-side-button-icon { background-position: -13px -114px; }

.fr-window-skin-fresco.fr-no-svg .fr-hovering-next .fr-side-next .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg.fr-mobile-touch .fr-side-next .fr-side-button-icon { background-position: -93px -114px; }

/* disabled state (png) */
.fr-window-skin-fresco.fr-no-svg .fr-side-previous.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-hovering-previous .fr-side-previous.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-side-previous.fr-side-disabled:hover .fr-side-button-icon { background-position: -13px -214px; }

.fr-window-skin-fresco.fr-no-svg .fr-side-next.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-hovering-next .fr-side-next.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-side-next.fr-side-disabled:hover .fr-side-button-icon { background-position: -93px -214px; }

/* transition (svg) */
.fr-window-skin-fresco.fr-svg .fr-side-previous .fr-side-button-icon { background-position: -13px -114px; }

.fr-window-skin-fresco.fr-svg .fr-side-next .fr-side-button-icon { background-position: -93px -114px; }

.fr-window-skin-fresco.fr-svg .fr-side-button-icon { opacity: .5; }

.fr-window-skin-fresco.fr-svg .fr-side:hover .fr-side-button-icon, .fr-window-skin-fresco.fr-svg .fr-hovering-previous .fr-side-previous .fr-side-button-icon, .fr-window-skin-fresco.fr-svg .fr-hovering-next .fr-side-next .fr-side-button-icon { opacity: 1; }

.fr-window-skin-fresco.fr-svg.fr-mobile-touch .fr-side .fr-side-button-icon { opacity: .8; }

/* touch always active but at lower opacity */
/* disabled (svg) */
.fr-window-skin-fresco.fr-svg .fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-svg .fr-hovering-previous .fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-svg .fr-hovering-next .fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-svg .fr-side-disabled:hover .fr-side-button-icon, .fr-window-skin-fresco.fr-svg.fr-mobile-touch .fr-side-disabled .fr-side-button-icon { opacity: .2; }

/* TODO: make sure this works */
/* hide for ui:inside/fullclick, only for the image type */
.fr-window-skin-fresco.fr-window-ui-inside .fr-type-image .fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-window-ui-fullclick.fr-showing-type-image .fr-side-disabled .fr-side-button-icon { background-image: none; }

/* < > responsive */

/* X */
/* colors */
.fr-window-skin-fresco.fr-window-ui-outside .fr-close-background { background-color: #363636; }

.fr-window-skin-fresco.fr-window-ui-outside .fr-close:hover .fr-close-background { background-color: #434343; }

.fr-window-skin-fresco.fr-window-ui-inside .fr-close-background, .fr-window-skin-fresco.fr-window-ui-fullclick .fr-close-background { background-color: #131313; filter: alpha(opacity=80); opacity: .8; }

.fr-window-skin-fresco.fr-window-ui-inside .fr-close:hover .fr-close-background, .fr-window-skin-fresco.fr-window-ui-fullclick .fr-close:hover .fr-close-background { background-color: #191919; }

/* - image */
.fr-window-skin-fresco .fr-close .fr-close-icon { background-position: -168px -8px; }

.fr-window-skin-fresco .fr-close:hover .fr-close-icon { background-position: -210px -8px; }

/* - transition */
.fr-window-skin-fresco.fr-svg .fr-close .fr-close-icon { background-position: -210px -8px; opacity: .8; }

.fr-window-skin-fresco .fr-close:hover .fr-close-icon { opacity: 1; }

/* iOS 8.4.1 bug: when opacity changes it'll require 2 taps
   force a single opacity to fix this
*/
.fr-window-skin-fresco.fr-svg.fr-mobile-touch .fr-close .fr-close-icon, .fr-window-skin-fresco.fr-mobile-touch .fr-close:hover .fr-close-icon { opacity: 1; }

/* Thumbnails */
.fr-window-skin-fresco .fr-thumbnail-wrapper { border-color: transparent; border-style: solid; border-width: 0; }

.fr-window-skin-fresco .fr-thumbnail-wrapper { -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }

.fr-window-skin-fresco .fr-thumbnail-active .fr-thumbnail-wrapper { -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.1); box-shadow: 0 0 1px rgba(0, 0, 0, 0.1); }

.fr-window-skin-fresco .fr-thumbnail-wrapper { -webkit-box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.3); box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.3); }

.fr-window-skin-fresco .fr-thumbnail-overlay-border { border-width: 1px; border-color: rgba(255, 255, 255, 0.08); /* should remain rgba */ }

/* no inner border on active thumbnail */
.fr-window-skin-fresco .fr-thumbnail-active .fr-thumbnail-overlay-border, .fr-window-skin-fresco .fr-thumbnail-active:hover .fr-thumbnail-overlay-border { border: 0px; }

/* Thumbnails < > */
.fr-window-skin-fresco .fr-thumbnails-side-previous .fr-thumbnails-side-button-icon { background-position: -167px -49px; }

.fr-window-skin-fresco .fr-thumbnails-side-previous:hover .fr-thumbnails-side-button-icon { background-position: -209px -49px; }

.fr-window-skin-fresco .fr-thumbnails-side-next .fr-thumbnails-side-button-icon { background-position: -167px -91px; }

.fr-window-skin-fresco .fr-thumbnails-side-next:hover .fr-thumbnails-side-button-icon { background-position: -209px -91px; }

/* vertical ^ (up/down) adjustments */
.fr-window-skin-fresco.fr-thumbnails-vertical .fr-thumbnails-side-previous .fr-thumbnails-side-button-icon { background-position: -293px -49px; }

.fr-window-skin-fresco.fr-thumbnails-vertical .fr-thumbnails-side-previous:hover .fr-thumbnails-side-button-icon { background-position: -335px -49px; }

.fr-window-skin-fresco.fr-thumbnails-vertical .fr-thumbnails-side-next .fr-thumbnails-side-button-icon { background-position: -293px -91px; }

.fr-window-skin-fresco.fr-thumbnails-vertical .fr-thumbnails-side-next:hover .fr-thumbnails-side-button-icon { background-position: -335px -91px; }

/* Thumbnails < > transition */
.fr-window-skin-fresco.fr-svg .fr-thumbnails-side .fr-thumbnails-side-button-icon { -webkit-transition: opacity .2s ease-in; -o-transition: opacity .2s ease-in; transition: opacity .2s ease-in; opacity: .8; }

.fr-window-skin-fresco.fr-svg .fr-thumbnails-side-previous .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-svg .fr-thumbnails-side-previous .fr-thumbnails-side-button-disabled { background-position: -167px -49px; }

.fr-window-skin-fresco.fr-svg .fr-thumbnails-side-next .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-svg .fr-thumbnails-side-next .fr-thumbnails-side-button-disabled { background-position: -209px -91px; }

.fr-window-skin-fresco.fr-svg .fr-thumbnails-side:hover .fr-thumbnails-side-button-icon { opacity: 1; }

/* vertical ^ (up/down) adjustments */
.fr-window-skin-fresco.fr-svg.fr-thumbnails-vertical .fr-thumbnails-side-previous .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-svg.fr-thumbnails-vertical .fr-thumbnails-side-previous .fr-thumbnails-side-button-disabled { background-position: -293px -49px; }

.fr-window-skin-fresco.fr-svg.fr-thumbnails-vertical .fr-thumbnails-side-next .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-svg.fr-thumbnails-vertical .fr-thumbnails-side-next .fr-thumbnails-side-button-disabled { background-position: -335px -91px; }

/* lower opacity on disabled states */
.fr-window-skin-fresco.fr-svg .fr-thumbnails-side .fr-thumbnails-side-button-disabled, .fr-window-skin-fresco.fr-svg .fr-thumbnails-side:hover .fr-thumbnails-side-button-disabled { opacity: .5; }

/* lower opacity IE < 9 using images */
.fr-window-skin-fresco.fr-no-svg .fr-thumbnails-side-previous .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-thumbnails-side-previous:hover .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon { background-position: -251px -49px; }

.fr-window-skin-fresco.fr-no-svg .fr-thumbnails-side-next .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-thumbnails-side-next:hover .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon { background-position: -251px -91px; }

.fr-window-skin-fresco.fr-no-svg .fr-thumbnails-side .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-background, .fr-window-skin-fresco.fr-no-svg .fr-thumbnails-side:hover .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-background { filter: alpha(opacity=50); }

/* vertical ^ (up/down) adjustments */
.fr-window-skin-fresco.fr-no-svg.fr-thumbnails-vertical .fr-thumbnails-side-previous .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-no-svg.fr-thumbnails-vertical .fr-thumbnails-side-previous:hover .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon { background-position: -377px -49px; }

.fr-window-skin-fresco.fr-no-svg.fr-thumbnails-vertical .fr-thumbnails-side-next .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon, .fr-window-skin-fresco.fr-no-svg.fr-thumbnails-vertical .fr-thumbnails-side-next:hover .fr-thumbnails-side-button-disabled .fr-thumbnails-side-button-icon { background-position: -377px -91px; }

.lines__line { z-index: 1; }

.header--normal { border-bottom: 1px solid #eef2f5; }

h3.title { text-align: center; font-weight: bold; font-size: 2.111em; margin: 0; }

.quick-contact { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 -22px; margin-bottom: 5.3em; }

.quick-contact svg { max-height: 2.4em; width: auto; margin-top: 2.8em; margin-bottom: 0.4em; }

.quick-contact svg path { fill: #011b36; }

.quick-contact .mobile { font-weight: bold; font-size: 1.444em; line-height: 1.346em; display: block; margin-bottom: 0.2em; }

.quick-contact .email { font-size: 1em; line-height: 1.944em; display: block; font-weight: bold; }

.quick-contact__item { width: -webkit-calc(100% / 3); width: calc(100% / 3); padding: 0 22px; margin-top: 5.9em; text-align: center; }

.quick-contact__item__inner { border: 1px solid #f5f5f5; height: 100%; position: relative; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; background: white; z-index: 2; padding-bottom: 2.6em; }

.quick-contact__item__inner:hover { border-color: transparent; -webkit-box-shadow: 2px 28px 73px 0px rgba(8, 8, 8, 0.18); box-shadow: 2px 28px 73px 0px rgba(8, 8, 8, 0.18); }

.quick-contact__item__inner:hover:after { height: 6px; }

.quick-contact__item__inner:after { content: ''; position: absolute; bottom: -1px; left: -1px; right: -1px; background: #011b36; height: 0; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; }

.quick-contact__item p { font-size: 1em; line-height: 1.944em; margin: 0; }

.quick-contact__item h4 { margin: 0; font-weight: bold; font-size: 1.556em; margin-bottom: 0.8em; }

.hero { max-width: 100em; padding: 0 15px; margin: 0 auto; margin-top: 4.556em; margin-bottom: 5.3em; }

.hero .container { height: 100%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }

.hero__item { height: 26.5em; background-image: url("../images/contact-bg.jpg"); background-position: center center; background-repeat: no-repeat; }

.hero h1 { margin: 0; color: #fff; font-weight: bold; font-size: 4.722em; }

.labels { color: #011b36; font-size: 14px; line-height: 18px; width: 324px; height: 85px; background: #fff; padding: 16px 0 0 123px; text-align: left; font-weight: 400; font-family: "europa", sans-serif; position: relative; overflow: visible !important; }

.labels:before { display: block; float: left; position: absolute; top: 0; left: 0; background: url("../images/place.png") 50% no-repeat #011b36; width: 85px; height: 85px; content: ""; }

.labels:after { position: absolute; bottom: -14px; width: 28px; content: ""; left: 29px; border-left: 14px solid transparent; border-right: 14px solid transparent; border-top: 14px solid #011b36; }

.map { margin-top: 5em; }

.map #map { height: 37.944em; width: 100%; display: block; margin-top: -2.8em; }

.map__changer { max-width: 40.222em; width: 100%; margin: 0 auto; list-style: none; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-shadow: 2px 28px 73px 0px rgba(8, 8, 8, 0.18); box-shadow: 2px 28px 73px 0px rgba(8, 8, 8, 0.18); position: relative; z-index: 2; }

.map__changer li { width: 50%; }

.map__changer a { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; height: 3.815em; background: #fff; font-size: 1.5em; color: #011b36; -webkit-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; }

.map__changer a:hover { background: #011b36; color: #fff; }

.map__changer a.active { background: #011b36; color: #fff; }

@media (max-width: 1400px) { .container { max-width: 1100px; } }

@media (max-width: 900px) { .header { padding: 2.45em 2em; padding-right: 2em; } .language-menu { margin-left: 3.6em; } }

@media (max-width: 767px) { .header--normal, .header.fixed { position: relative; z-index: 22; } .header__button { display: block; } .header { padding: 15px; } .header__menu { display: none; position: absolute; top: 100%; left: 0; right: 0; background: white; height: auto; font-size: 15px; -webkit-box-shadow: 0 10px 13px 3px rgba(0, 0, 0, 0.05); box-shadow: 0 10px 13px 3px rgba(0, 0, 0, 0.05); } .menu { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding: 15px; } .menu li { margin-bottom: 10px; color: #011b36; } .language-menu { margin-left: 15px; margin-bottom: 15px; font-size: 14px; padding-top: 5px; padding-bottom: 5px; } .footer__right { margin: 0 auto; } .footer__left { width: 100%; } .footer__column { padding-bottom: 2em; } .footer__column:nth-child(1) { width: 100%; } .footer__column:nth-child(2) { width: 100%; } .footer__column:nth-child(3) { width: 100%; } .copyright .container { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .copyright__left { width: 100%; text-align: center; } .copyright__right { width: 100%; text-align: center; } .copyright__center { width: 100%; padding-top: 15px; padding-bottom: 15px; } .lines__line:nth-child(3) ~ .lines__line { display: none; } .lines__line:nth-child(1) { left: -webkit-calc(100% / 4 * 1); left: calc(100% / 4 * 1); } .lines__line:nth-child(2) { left: -webkit-calc(100% / 4 * 2); left: calc(100% / 4 * 2); } .lines__line:nth-child(3) { left: -webkit-calc(100% / 4 * 3); left: calc(100% / 4 * 3); } .lines__line:nth-child(4) { left: -webkit-calc(100% / 4 * 4); left: calc(100% / 4 * 4); } .lines__line:nth-child(5) { left: -webkit-calc(100% / 4 * 5); left: calc(100% / 4 * 5); } .lines__line:nth-child(6) { left: -webkit-calc(100% / 4 * 6); left: calc(100% / 4 * 6); } .lines__line:nth-child(7) { left: -webkit-calc(100% / 4 * 7); left: calc(100% / 4 * 7); } .contact-us { height: auto; } .contact-us__left { width: 100%; padding: 30px; } .contact-us__right { width: 100%; } .contact-us__right .top-fields__field { width: 100%; } .quick-contact__item { width: 100%; margin-top: 2.9em; } .hero__item { -webkit-background-size: cover; background-size: cover; height: 16.5em; } .hero h1 { font-size: 2.6em !important; max-width: 100% !important; } .map__changer li { width: 100%; } }

@media (min-width: 768px) { .menu li:not(:first-child) { margin-left: 3.4em; } }

@media (min-width: 768px) and (max-width: 1100px) { .menu li:not(:first-child) { margin-left: 23px; } }

@media (max-width: 1500px) and (min-width: 1331px) { html { font-size: 85%; } }

@media (max-width: 1330px) and (min-width: 1025px) { html { font-size: 90%; } }

@media (max-width: 1024px) { html { font-size: 77.2%; } }

@media (max-width: 767pX) { .contact-us__left h2 { font-size: 2em; } .contact-us__left p { font-size: 1.4em; } }

@media all and (max-width: 700px) and (orientation: portrait), all and (orientation: landscape) and (max-height: 700px) { /* padding ui:inside */
  .fr-ui-inside .fr-container { padding: 12px 12px; }
  .fr-ui-inside.fr-no-sides .fr-container { padding: 12px; }
  /* padding ui:outside */
  .fr-ui-outside .fr-container { padding: 12px 72px; }
  .fr-ui-outside.fr-no-sides .fr-container { padding: 12px 48px; } }

@media all and (max-width: 500px) and (orientation: portrait), all and (orientation: landscape) and (max-height: 500px) { /* padding ui:inside */
  .fr-ui-inside .fr-container { padding: 0px 0px; }
  .fr-ui-inside.fr-no-sides .fr-container { padding: 0px; }
  /* padding ui:outside */
  .fr-ui-outside .fr-container { padding: 0px 72px; }
  .fr-ui-outside.fr-no-sides .fr-container { padding: 0px 48px; } .fr-thumbnails-horizontal .fr-thumbnails { display: none !important; } }

@media all and (max-width: 500px) and (orientation: portrait), all and (orientation: landscape) and (max-height: 414px) { .fr-side { width: 54px; height: 60px; margin: 0; margin-top: -30px; }
  .fr-side-button { width: 48px; height: 60px; margin: 0 3px; } .fr-page { min-width: 100%; }
  /* fullclick */
  .fr-page { min-height: 100%; }
  /* overflow: false */ .fr-window-skin-fresco .fr-side-previous .fr-side-button-icon { background-position: 0px -300px; }
  .fr-window-skin-fresco .fr-side-next .fr-side-button-icon { background-position: -48px -300px; }
  .fr-window-skin-fresco .fr-side-previous:hover .fr-side-button-icon { background-position: 0px -360px; }
  .fr-window-skin-fresco .fr-side-next:hover .fr-side-button-icon { background-position: -48px -360px; }
  /* transition (png) */
  .fr-window-skin-fresco.fr-no-svg .fr-hovering-previous .fr-side-previous .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg.fr-mobile-touch .fr-side-previous .fr-side-button-icon { background-position: 0px -360px; }
  .fr-window-skin-fresco.fr-no-svg .fr-hovering-next .fr-side-next .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg.fr-mobile-touch .fr-side-next .fr-side-button-icon { background-position: -48px -360px; }
  /* transition (svg) */
  .fr-window-skin-fresco.fr-svg .fr-side-previous .fr-side-button-icon { background-position: 0px -360px; }
  .fr-window-skin-fresco.fr-svg .fr-side-next .fr-side-button-icon { background-position: -48px -360px; }
  /* disabled state (png) */
  .fr-window-skin-fresco.fr-no-svg .fr-side-previous.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-hovering-previous .fr-side-previous.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-side-previous.fr-side-disabled:hover .fr-side-button-icon { background-position: 0px -420px; }
  .fr-window-skin-fresco.fr-no-svg .fr-side-next.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-hovering-next .fr-side-next.fr-side-disabled .fr-side-button-icon, .fr-window-skin-fresco.fr-no-svg .fr-side-next.fr-side-disabled:hover .fr-side-button-icon { background-position: -48px -420px; } }

@media all and (min-height: 700px) { .fr-thumbnails-horizontal .fr-thumbnails-thumbs { padding: 16px 8px; }
  .fr-thumbnails-horizontal .fr-thumbnails-side { margin: 0 8px; }
  .fr-thumbnails-horizontal .fr-thumbnails-side-previous { margin-left: 16px; }
  .fr-thumbnails-horizontal .fr-thumbnails-side-next { margin-right: 16px; } }

@media all and (min-height: 980px) { .fr-thumbnails-horizontal .fr-thumbnails-thumbs { padding: 20px 10px; }
  .fr-thumbnails-horizontal .fr-thumbnails-side { margin: 0 10px; }
  .fr-thumbnails-horizontal .fr-thumbnails-side-previous { margin-left: 20px; }
  .fr-thumbnails-horizontal .fr-thumbnails-side-next { margin-right: 20px; } }

@media all and (min-width: 1200px) { .fr-thumbnails-vertical .fr-thumbnails-thumbs { padding: 8px 16px; }
  .fr-thumbnails-vertical .fr-thumbnails-side { margin: 0 8px; }
  .fr-thumbnails-vertical .fr-thumbnails-side-previous { margin-top: 16px; }
  .fr-thumbnails-vertical .fr-thumbnails-side-next { margin-bottom: 16px; } }

@media all and (min-width: 1800px) { .fr-thumbnails-vertical .fr-thumbnails-thumbs { padding: 10px 20px; }
  .fr-thumbnails-vertical .fr-thumbnails-side { margin: 10px 0; }
  .fr-thumbnails-vertical .fr-thumbnails-side-previous { margin-top: 20px; }
  .fr-thumbnails-vertical .fr-thumbnails-side-next { margin-bottom: 20px; } }

@media all and (max-width: 700px) and (orientation: portrait), all and (orientation: landscape) and (max-height: 414px) { .fr-thumbnails-vertical .fr-thumbnails { display: none !important; } }

@media (max-width: 1000px) { .quick-contact__item__inner { padding-left: 15px; padding-right: 15px; } }
