/*!
Theme Name: FS Food Group 2.0
Theme URI: https://bellaworksweb.com/
Author: Bellaworksweb
Author URI: https://bellaworksweb.com/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bellaworks
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

bellaworks is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/
html { font-family: sans-serif; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

body { margin: 0; }

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { display: block; }

audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }

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

[hidden], template { display: none; }

a { background-color: transparent; }

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

abbr[title] { border-bottom: 1px dotted; }

b, strong { font-weight: bold; }

dfn { font-style: italic; }

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

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

img { border: 0; }

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

figure { margin: 1em 40px; }

hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; }

pre { overflow: auto; }

code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }

button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; }

button { overflow: visible; }

button, select { text-transform: none; }

button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }

button[disabled], html input[disabled] { cursor: default; }

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

input { line-height: normal; }

input[type="checkbox"], input[type="radio"] { -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; }

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }

input[type="search"] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

legend { border: 0; padding: 0; }

textarea { overflow: auto; }

optgroup { font-weight: bold; }

table { border-collapse: collapse; border-spacing: 0; }

td, th { padding: 0; }

button:focus { outline: 0; }

/*! animate.css -http://daneden.me/animate Version - 3.5.0 Licensed under the MIT license - http://opensource.org/licenses/MIT Copyright (c) 2016 Daniel Eden */
.wow { visibility: hidden; }

.animated { -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

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

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

.animated.flipOutX, .animated.flipOutY, .animated.bounceIn, .animated.bounceOut { -webkit-animation-duration: .75s; animation-duration: .75s; }

@-webkit-keyframes bounce { from, 20%, 53%, 80%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.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; 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; 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: none;
    transform: none; }
  15% { -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% { -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% { -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% { -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% { -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to { -webkit-transform: none;
    transform: none; } }

@keyframes wobble { from { -webkit-transform: none;
    transform: none; }
  15% { -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% { -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% { -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% { -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% { -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to { -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes jello { from, 11.1%, to { -webkit-transform: none;
    transform: none; }
  22.2% { -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% { -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% { -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% { -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% { -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% { -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg); }
  88.8% { -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg); } }

@keyframes jello { from, 11.1%, to { -webkit-transform: none;
    transform: none; }
  22.2% { -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% { -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% { -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% { -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% { -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% { -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg); }
  88.8% { -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg); } }

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

@-webkit-keyframes bounceIn { from, 20%, 40%, 60%, 80%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.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-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: none;
    transform: none; } }

@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: none;
    transform: none; } }

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

@-webkit-keyframes bounceInLeft { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.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: none;
    transform: none; } }

@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: none;
    transform: none; } }

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

@-webkit-keyframes bounceInRight { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.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: none;
    transform: none; } }

@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: none;
    transform: none; } }

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

@-webkit-keyframes bounceInUp { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.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, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% { -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% { -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInUp { from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.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, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% { -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% { -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes bounceOut { 20% { -webkit-transform: scale3d(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-name: bounceOut; animation-name: bounceOut; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes flip { from { -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% { -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% { -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% { -webkit-transform: perspective(400px) scale3d(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-name: flipOutX; animation-name: flipOutX; -webkit-backface-visibility: visible !important; backface-visibility: visible !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes zoomIn { from { opacity: 0;
    -webkit-transform: scale3d(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; }

/* Colorbox Core Style: The following CSS is consistent between example themes and should not be altered. */
#colorbox, #cboxOverlay, #cboxWrapper { position: absolute; top: 0; left: 0; z-index: 9999; overflow: hidden; }

#cboxWrapper { max-width: none; }

#cboxOverlay { position: fixed; width: 100%; height: 100%; }

#cboxMiddleLeft, #cboxBottomLeft { clear: left; }

#cboxContent { position: relative; }

#cboxLoadedContent { overflow: auto; -webkit-overflow-scrolling: touch; }

#cboxTitle { margin: 0; }

#cboxLoadingOverlay, #cboxLoadingGraphic { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow { cursor: pointer; }

.cboxPhoto { float: left; margin: auto; border: 0; display: block; max-width: none; -ms-interpolation-mode: bicubic; width: 80%; height: 80%; }

.cboxIframe { width: 100%; height: 100%; display: block; border: 0; padding: 0; margin: 0; }

#colorbox, #cboxContent, #cboxLoadedContent { box-sizing: content-box; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; }

/*  User Style: Change the following styles to modify the appearance of Colorbox.  They are ordered & tabbed in a way that represents the nesting of the generated HTML. */
#cboxOverlay { background: #000; }

#colorbox { outline: 0; }

/* #cboxTopLeft{width:14px; height:14px; background:url(images/controls.png) no-repeat 0 0;} #cboxTopCenter{height:14px; background:url(images/border.png) repeat-x top left;} #cboxTopRight{width:14px; height:14px; background:url(images/controls.png) no-repeat -36px 0;} #cboxBottomLeft{width:14px; height:43px; background:url(images/controls.png) no-repeat 0 -32px;} #cboxBottomCenter{height:43px; background:url(images/border.png) repeat-x bottom left;} #cboxBottomRight{width:14px; height:43px; background:url(images/controls.png) no-repeat -36px -32px;} #cboxMiddleLeft{width:14px; background:url(images/controls.png) repeat-y -175px 0;} #cboxMiddleRight{width:14px; background:url(images/controls.png) repeat-y -211px 0;}*/
#cboxContent { /*background:#fff; */ overflow: visible; }

.cboxIframe { background: #fff; }

#cboxError { padding: 50px; border: 1px solid #ccc; }

#cboxLoadedContent { /*margin-bottom:5px;*/ }

#cboxLoadingOverlay { background: url(images/loading_background.png) no-repeat center center; }

#cboxLoadingGraphic { background: url(images/loading.gif) no-repeat center center; }

#cboxTitle { position: absolute; bottom: -25px; left: 0; text-align: left; width: 60%; font-weight: bold; color: #fff; /*background-color: rgba(0,0,0,.6);*/ padding: 4% 20% 8% 20%; line-height: 1.3; font-size: 20px; }

#cboxCurrent { position: absolute; bottom: -25px; left: 58px; font-weight: bold; color: #7C7C7C; }

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose { border: 0; padding: 0; margin: 0; overflow: visible; position: absolute; top: 10px; background: url(images/controls-new.png); background-size: 150px 100px; background-repeat: no-repeat; width: 50px; height: 50px; text-indent: -9999px; -webkit-box-shadow: none; box-shadow: none; }

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active { outline: 0; }

#cboxPrevious { left: 20px; background-position: -0px -0px; }

#cboxPrevious:hover { background-position: -0px -50px; }

#cboxNext { left: 90px; background-position: -50px -0px; }

#cboxNext:hover { background-position: -50px -50px; }

#cboxClose { right: 20px; background-position: -100px -0px; }

#cboxClose:hover { background-position: -100px -50px; }

.cboxSlideshow_on #cboxSlideshow { background-position: -125px 0px; right: 27px; }

.cboxSlideshow_on #cboxSlideshow:hover { background-position: -150px 0px; }

.cboxSlideshow_off #cboxSlideshow { background-position: -150px -25px; right: 27px; }

.cboxSlideshow_off #cboxSlideshow:hover { background-position: -125px 0px; }

@media screen and (min-width: 600px) { #cboxTitle { position: absolute; top: 0px; left: 0; text-align: left; width: 20%; font-weight: bold; color: #fff; /*background-color: rgba(0,0,0,.6);*/ padding: 8% 2% 8% 2%; line-height: 1.3; font-size: 20px; } }

/* jQuery FlexSlider v2.4.0 http://www.woothemes.com/flexslider/ Copyright 2012 WooThemes Free to use under the GPLv2 and later license. http://www.gnu.org/licenses/gpl-2.0.html Contributing author: Tyler Smith (@mbmufffin) */
/* ==================================================================================================================== FONT-FACE ====================================================================================================================*/
@font-face { font-family: 'flexslider-icon'; src: url("fonts/flexslider-icon.eot"); src: url("fonts/flexslider-icon.eot?#iefix") format("embedded-opentype"), url("fonts/flexslider-icon.woff") format("woff"), url("fonts/flexslider-icon.ttf") format("truetype"), url("fonts/flexslider-icon.svg#flexslider-icon") format("svg"); font-weight: normal; font-style: normal; }

/* ==================================================================================================================== RESETS ====================================================================================================================*/
.flex-container a:hover, .flex-slider a:hover, .flex-container a:focus, .flex-slider a:focus { outline: none; }

.slides, .slides > li, .flex-control-nav, .flex-direction-nav { margin: 0; padding: 0; list-style: none; }

.flex-pauseplay span { text-transform: capitalize; }

/* ==================================================================================================================== BASE STYLES ====================================================================================================================*/
.flexslider { margin: 0; padding: 0; }

.flexslider .slides > li { display: none; -webkit-backface-visibility: hidden; }

.flexslider .slides img { width: 100%; display: block; }

.flexslider .slides:after { content: "\0020"; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }

html[xmlns] .flexslider .slides { display: block; }

* html .flexslider .slides { height: 1%; }

.no-js .flexslider .slides > li:first-child { display: block; }

/* ==================================================================================================================== DEFAULT THEME ====================================================================================================================*/
.flexslider { margin: 0 0 60px; background: #ffffff; border: 4px solid #ffffff; position: relative; zoom: 1; border-radius: 4px; -webkit-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2); -o-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2); box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2); }

.flexslider .slides { zoom: 1; }

.flexslider .slides img { height: auto; }

.flex-viewport { max-height: 2000px; -webkit-transition: all 1s ease; transition: all 1s ease; }

.loading .flex-viewport { max-height: 300px; }

.carousel li { margin-right: 5px; }

.flex-direction-nav { *height: 0; }

.flex-direction-nav a { text-decoration: none; display: block; width: 40px; height: 50px; margin: -20px 0 0; position: absolute; top: 50%; z-index: 10; overflow: hidden; opacity: 0; cursor: pointer; color: rgba(0, 0, 0, 0.8); text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3); -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.flex-direction-nav a:before { font-family: "flexslider-icon"; font-size: 40px; display: inline-block; content: '\f001'; color: rgba(0, 0, 0, 0.8); text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3); }

.flex-direction-nav a.flex-next:before { content: '\f002'; }

.flex-direction-nav .flex-prev { left: -50px; }

.flex-direction-nav .flex-next { right: -50px; text-align: right; }

.flexslider:hover .flex-direction-nav .flex-prev { opacity: 0.7; left: 10px; }

.flexslider:hover .flex-direction-nav .flex-prev:hover { opacity: 1; }

.flexslider:hover .flex-direction-nav .flex-next { opacity: 0.7; right: 10px; }

.flexslider:hover .flex-direction-nav .flex-next:hover { opacity: 1; }

.flex-direction-nav .flex-disabled { opacity: 0 !important; filter: alpha(opacity=0); cursor: default; }

.flex-pauseplay a { display: block; width: 20px; height: 20px; position: absolute; bottom: 5px; left: 10px; opacity: 0.8; z-index: 10; overflow: hidden; cursor: pointer; color: #000; }

.flex-pauseplay a:before { font-family: "flexslider-icon"; font-size: 20px; display: inline-block; content: '\f004'; }

.flex-pauseplay a:hover { opacity: 1; }

.flex-pauseplay a .flex-play:before { content: '\f003'; }

.flex-control-nav { width: 100%; position: absolute; bottom: -40px; text-align: center; }

.flex-control-nav li { margin: 0 6px; display: inline-block; zoom: 1; *display: inline; }

.flex-control-paging li a { width: 11px; height: 11px; display: block; background: #666; background: rgba(0, 0, 0, 0.5); cursor: pointer; text-indent: -9999px; -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); border-radius: 20px; }

.flex-control-paging li a:hover { background: #333; background: rgba(0, 0, 0, 0.7); }

.flex-control-paging li a.flex-active { background: #000; background: rgba(0, 0, 0, 0.9); cursor: default; }

.flex-control-thumbs { margin: 5px 0 0; position: static; overflow: hidden; }

.flex-control-thumbs li { width: 25%; float: left; margin: 0; }

.flex-control-thumbs img { width: 100%; height: auto; display: block; opacity: .7; cursor: pointer; -webkit-transition: all 1s ease; transition: all 1s ease; }

.flex-control-thumbs img:hover { opacity: 1; }

.flex-control-thumbs .flex-active { opacity: 1; cursor: default; }

/* ==================================================================================================================== RESPONSIVE ====================================================================================================================*/
@media screen and (max-width: 860px) { .flex-direction-nav .flex-prev { opacity: 1; left: 10px; }
  .flex-direction-nav .flex-next { opacity: 1; right: 10px; } }

div, h1, h2, h3, h4, h5, h6, p, li, a, span, strong { overflow-wrap: normal; word-wrap: normal; -ms-word-break: normal; word-break: normal; word-break: normal; -ms-hyphens: none; -webkit-hyphens: none; hyphens: none; page-break-inside: avoid; }

section:focus, div:focus { outline: none; }

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

a, button, input { -webkit-transition: all ease-out .3s; transition: all ease-out .3s; }

pre { font-family: "Courier 10 Pitch", Courier, monospace; font-size: 13px; line-height: 1.3; }

p { margin-top: 1.2em; margin-bottom: 1.5em; }

body { font-family: "Nunito Sans", sans-serif; font-size: 16px; line-height: 1.6; color: #000; }

h1, h2, h3, h4, h5, h6 { line-height: 1.2; font-weight: 500; }

h1 { font-size: 2rem; }

h2 { font-size: 1.8rem; }

h3 { font-size: 1.5rem; }

h4 { font-size: 1.2rem; }

h5 { font-size: 1rem; }

h6 { font-size: 0.9rem; }

.cf:before, .cf:after { content: " "; display: table; }

.cf:after { clear: both; }

.cf { *zoom: 1; }

.text-center { text-align: center; }

/* Text meant only for screen readers. */
.sr { clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden; }

.sr:focus { background-color: #333; border-radius: 3px; -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; color: #FFF; display: block; font-size: 14px; font-size: 0.875rem; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ }

.wrapper { max-width: 1200px; width: 100%; margin: 0 auto; padding-left: 20px; padding-right: 20px; }

.site { position: relative; overflow-x: hidden; overflow-y: auto; }

/* Site Header */
.site-header { position: relative; top: 0; left: 0; width: 100%; z-index: 500; }

.site-header .wrapper { position: relative; }

body.home .site-header { position: absolute; }

body.subpage .site-header { background: #000; float: left; height: 65px; }

@media (min-width: 820px) { body.subpage .site-header { height: auto; } }

.logo { width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 10; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.logo a { display: inline-block; width: 18vw; position: relative; top: -13%; }

@media (min-width: 820px) { .logo a { top: 2%; } }

.logo img { width: 100%; height: auto; }

.logo-subpage { position: absolute; top: -3px; left: 10px; width: 78px; z-index: 100; }

@media (min-width: 820px) { .logo-subpage { width: 100px; } }

.logo-subpage a, .logo-subpage img { display: block; width: 100%; height: auto; float: left; }

/* Navigation */
.main-navigation { margin-top: 15px; }

@media (min-width: 820px) { .main-navigation { margin-top: 20px; } }

.main-navigation ul { margin: 0 0; padding: 0 0; list-style: none; }

.main-navigation ul li { position: relative; }

.main-navigation .main-menu-wrap { text-align: center; }

.main-navigation ul.menu { display: block; text-align: left; }

@media (min-width: 820px) { .main-navigation ul.menu { display: inline-block; } }

.main-navigation ul.menu > li { display: block; float: left; }

@media (min-width: 820px) { .main-navigation ul.menu > li { display: inline-block; margin: 2px 3px; } }

.main-navigation ul.menu a { text-decoration: none; display: inline-block; color: #FFF; font-size: 16px; line-height: 1.2; }

@media (min-width: 820px) { .main-navigation ul.menu > li > a { padding: 7px 20px 6px; border: 1px solid rgba(255, 255, 255, 0); } }

@media (min-width: 820px) { .main-navigation ul.menu > li:hover > a { border-color: rgba(255, 255, 255, 0.75); } }

body.subpage .main-navigation { margin-top: 0; padding-top: 20px; padding-bottom: 12px; }

.menu-toggle, .mobileMenu, .closemenubtn { display: none; }

/* Mobile Menu */
@media screen and (max-width: 820px) { body.open-mobile-menu { overflow: hidden; }
  .site-header { -webkit-animation: none; animation: none; -webkit-transform: none; transform: none; }
  .closemenubtn { display: block; width: 50px; height: 50px; position: relative; margin: 0 auto 12%; }
  .closemenubtn:before, .closemenubtn:after { content: ""; display: block; width: 100%; height: 2px; background: #FFF; position: absolute; top: 0; left: 0; }
  .closemenubtn:before { top: 16px; -webkit-transform: translateY(10px) rotate(45deg); transform: translateY(10px) rotate(45deg); }
  .closemenubtn:after { top: 36px; -webkit-transform: translateY(-10px) rotate(-45deg); transform: translateY(-10px) rotate(-45deg); }
  .main-navigation { display: none; position: fixed; top: 0; left: 0; z-index: 30000; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.95); margin: 0 0; }
  .main-navigation.open { display: block; -webkit-animation-duration: .4s; animation-duration: .4s; }
  .main-navigation .nav-wrap { padding: 30px; height: 100%; overflow: auto; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-line-pack: center; align-content: center; }
  .main-navigation ul.menu a { font-size: 24px; font-weight: 400; display: block; padding: 8px 10px; text-align: center; }
  .main-navigation ul.menu a:hover { color: rgba(255, 255, 255, 0.35); }
  .main-navigation ul.menu > li > a { padding: 12px 10px; }
  .main-navigation ul.menu > li { display: block; width: 100%; }
  .mobileMenu { display: block; width: 100%; float: left; position: absolute; bottom: 5%; left: 0; width: 100%; text-align: center; z-index: 100; }
  .menu-toggle { display: block; width: 50px; height: 40px; -webkit-appearance: none; outline: none; -webkit-box-shadow: none; box-shadow: none; text-shadow: none; border: none; }
  .menu-toggle span.bar { position: relative; }
  .menu-toggle span.bar, .menu-toggle span.bar:before, .menu-toggle span.bar:after { display: block; width: 100%; height: 3px; background: #404040; -webkit-transition: all ease-in-out .3s; transition: all ease-in-out .3s; }
  .menu-toggle span.bar:before, .menu-toggle span.bar:after { content: ""; position: absolute; left: 0; }
  .menu-toggle span.bar:before { top: -10px; }
  .menu-toggle span.bar:after { top: 10px; }
  .menu-toggle.open span.bar { background: transparent; }
  .menu-toggle.open span.bar:before, .menu-toggle.open span.bar:after { background: #404040; }
  .menu-toggle.open span.bar:before { -webkit-transform: translateY(10px) rotate(45deg); transform: translateY(10px) rotate(45deg); }
  .menu-toggle.open span.bar:after { -webkit-transform: translateY(-10px) rotate(-45deg); transform: translateY(-10px) rotate(-45deg); }
  .menu-toggle.menutoggle1 { display: none; position: absolute; top: 16px; right: 20px; z-index: 505; }
  .menu-toggle.menutoggle2 { margin: 0 auto; background: transparent; }
  .menu-toggle.menutoggle2 span.bar, .menu-toggle.menutoggle2 span.bar:before, .menu-toggle.menutoggle2 span.bar:after { background: #FFF; }
  .menu-toggle.menutoggle2.open span.bar { background: transparent; }
  body.subpage .menu-toggle.menutoggle1 { background: #000; display: block; top: 14px; }
  body.subpage .menu-toggle span.bar, body.subpage .menu-toggle span.bar:before, body.subpage .menu-toggle span.bar:after { background-color: #FFF; }
  body.subpage.open-mobile-menu .menu-toggle.menutoggle1 { display: none; }
  body.subpage .main-navigation ul.menu a { color: #FFF !important; }
  body.subpage .main-navigation ul.menu > li:hover > a { color: rgba(255, 255, 255, 0.35) !important; } }

/* end of Mobile Menu */
/* Banner */
.banner { width: 100%; float: left; background: #000; position: relative; z-index: 20; }

.banner:before, .banner:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; opacity: 0.75; }

.banner:before { z-index: 5; background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, rgba(0, 0, 0, 0.65)), to(rgba(0, 0, 0, 0))); background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 50%, rgba(0, 0, 0, 0) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 ); }

.banner:after { background: rgba(0, 0, 0, 0.5); }

.banner img { width: 100%; height: auto; float: left; }

.banner-border { width: 100%; height: 10px; float: left; position: relative; z-index: 20; background: url("images/banner-border.jpg"); background-position: center; }

.banner-mirror { width: 100%; position: absolute; top: 300px; float: left; left: 0; background: #FFF; }

.banner-mirror:before, .banner-mirror:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; bottom: 0; left: 0; z-index: 10; background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(42%, rgba(255, 255, 255, 0.8)), to(rgba(255, 255, 255, 0.8))); background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 42%, rgba(255, 255, 255, 0.8) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ccffffff',GradientType=0 ); }

.banner-mirror img { width: 100%; height: auto; float: left; -webkit-transform: scaleY(-1); transform: scaleY(-1); opacity: 0.25; }

.subpage-banner { position: relative; width: 100%; float: left; }

.subpage-banner img { width: 100%; height: auto; float: left; }

#content { width: 100%; float: left; position: relative; z-index: 15; }

#content .content-area, #content .site-main { width: 100%; float: left; }

.section { position: relative; }

.section .textwrap { position: relative; z-index: 10; }

.section.row1 { width: 100%; float: left; padding-top: 70px; padding-bottom: 30px; }

.section.row1 .banner-mirror { position: absolute; top: 0; left: 0; }

@media (min-width: 960px) { .section.row1 .textwrap { max-width: 1100px; width: 100%; margin: 0 auto; } }

.section.row1 .textwrap h2.title { margin-top: 0; margin-bottom: 15px; }

.section.row1 .buttondiv { margin-top: 60px; margin-bottom: 80px; }

.scrolldown .arrowdown { text-decoration: none; position: relative; display: inline-block; width: 42px; height: 40px; overflow: hidden; -webkit-animation: MoveUpDown 1.2s linear infinite; animation: MoveUpDown 1.2s linear infinite; }

.scrolldown .arrowdown:before, .scrolldown .arrowdown:after { content: ""; display: block; width: 30px; height: 1px; background: #000; position: absolute; top: 18px; left: 0; }

.scrolldown .arrowdown:before { width: 32px; -webkit-transform: translateX(-6px) rotate(45deg); transform: translateX(-6px) rotate(45deg); }

.scrolldown .arrowdown:after { -webkit-transform: translateX(17px) rotate(-45deg); transform: translateX(17px) rotate(-45deg); }

.scrolldown.no-animate { margin-bottom: 30px; }

.scrolldown.no-animate .arrowdown { -webkit-animation: none; animation: none; top: -33px; }

@-webkit-keyframes MoveUpDown { 0%, 100% { bottom: 0; }
  50% { bottom: 15px; } }

@keyframes MoveUpDown { 0%, 100% { bottom: 0; }
  50% { bottom: 15px; } }

.btn-default { text-decoration: none; -webkit-appearance: none; -webkit-box-shadow: none; box-shadow: none; border: 1px solid #000; background: transparent; padding: 10px 25px; font-size: 18px; line-height: 1.2; color: #000; position: relative; overflow: hidden; }

.btn-default:before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; right: 0; background: #000; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 50%; transform-origin: 50%; -webkit-transition-property: transform; -webkit-transition-property: -webkit-transform; transition-property: -webkit-transform; transition-property: transform; transition-property: transform, -webkit-transform; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out; }

.btn-default:hover { color: #FFF; }

.btn-default:hover:before { -webkit-transform: scaleX(1); transform: scaleX(1); }

.fsgroup { width: 100%; float: left; padding-bottom: 80px; }

.fsgroup a, .fsgroup .wrap { display: block; width: 100%; float: left; position: relative; }

.fsgroup .wrap:before, .fsgroup .wrap:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; -webkit-transition: all ease-out .3s; transition: all ease-out .3s; background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.65)), color-stop(54%, rgba(0, 0, 0, 0)), color-stop(97%, rgba(0, 0, 0, 0))); background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 54%, rgba(0, 0, 0, 0) 97%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=1 ); }

.fsgroup .wrap:after { opacity: 0.8; }

.fsgroup .fsimage { width: 100%; float: left; position: relative; margin: 10px 0; overflow: hidden; -webkit-transition: all ease-out .3s; transition: all ease-out .3s; }

.fsgroup .fsimage a:before { content: ""; display: block; width: calc(100% - 30px); height: calc(100% - 30px); -webkit-box-shadow: 0 0 0 60px rgba(255, 255, 255, 0.35); box-shadow: 0 0 0 60px rgba(255, 255, 255, 0.35); position: absolute; top: 15px; left: 15px; -webkit-transition: all ease-out .3s; transition: all ease-out .3s; z-index: 11; opacity: 0; visibility: hidden; }

.fsgroup .featimg { width: 100%; height: auto; float: left; -webkit-transition: all ease-out .3s; transition: all ease-out .3s; }

.fsgroup .fslogo { position: absolute; top: 50%; left: 3%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: auto; height: 12vw; z-index: 10; }

@media (min-width: 820px) { .fsgroup .fslogo { height: 8vw; } }

.fsgroup .fsimage:hover a:before { visibility: visible; opacity: 1; -webkit-transform: scale(1); transform: scale(1); -webkit-box-shadow: 0 0 0 15px rgba(255, 255, 255, 0.35); box-shadow: 0 0 0 15px rgba(255, 255, 255, 0.35); }

.default .site-main { min-height: 30em; }

@media (min-width: 820px) { .default .site-main { min-height: 35em; } }

.default .site-main h1.entry-title { margin: 0 0 10px; font-size: 2rem; font-weight: 600; line-height: 1.3; }

.default .site-main h1.entry-title.careers { font-size: 4rem; }

.maintext { padding-top: 50px; padding-bottom: 50px; }

@media (min-width: 820px) { .maintext { padding-top: 90px; padding-bottom: 90px; } }

.maintext .wrapper { max-width: 860px; width: 100%; }

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

.singlepage .article { padding-top: 50px; padding-bottom: 50px; }

@media (min-width: 820px) { .singlepage .article { padding-top: 90px; padding-bottom: 90px; } }

.singlepage .article .featureImgVid { margin-top: 30px; }

.singlepage .article .featureImgVid img { max-width: 1000px; }

.singlepage .article .featureImgVid .embedvideo { max-width: 900px; width: 100%; margin: 0 auto; border: 1px solid #000; padding: 2px; }

.singlepage .article .featureImgVid iframe { width: 100% !important; height: 260px !important; float: left; }

@media (min-width: 430px) { .singlepage .article .featureImgVid iframe { height: 400px !important; } }

@media (min-width: 820px) { .singlepage .article .featureImgVid iframe { height: 500px !important; } }

@media (min-width: 960px) { .singlepage .article .featureImgVid iframe { height: 580px !important; } }

body.single-post .article .wrapper { max-width: 1000px; }

.section.press-articles { padding-top: 0; padding-bottom: 50px; position: relative; }

@media (min-width: 820px) { .section.press-articles { padding-bottom: 90px; } }

.section.press-articles .flexwrap { position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: 0 -15px; }

.section.press-articles .news-item { display: block; position: relative; padding: 15px; width: 100%; }

@media (min-width: 430px) { .section.press-articles .news-item { padding: 10px; width: 50%; } }

@media (min-width: 960px) { .section.press-articles .news-item { padding: 15px; width: 33.3%; } }

.section.press-articles .news-item a { display: block; width: 100%; float: left; text-decoration: none; position: relative; overflow: hidden; }

.section.press-articles .news-item .photo { display: block; width: 100%; float: left; background-size: cover; background-position: center; background-repeat: no-repeat; -webkit-transition: all ease-in-out .3s; transition: all ease-in-out .3s; position: relative; }

.section.press-articles .news-item .photo img { width: 100%; height: auto; float: left; }

.section.press-articles .news-item .title { display: block; width: 100%; position: absolute; bottom: 0; left: 0; color: #FFF; font-size: 1.1rem; line-height: 1.1; padding: 40px 10px 10px; background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(89%, rgba(0, 0, 0, 0.65)), to(rgba(0, 0, 0, 0.65))); background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 89%, rgba(0, 0, 0, 0.65) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); }

.section.press-articles .nophoto { background-color: #ececec; }

.section.press-articles .nophoto:before { content: "Photo Coming Soon"; display: block; width: 100%; text-align: center; font-size: 1rem; line-height: 1.2; color: #b9b9b9; position: absolute; top: 40%; left: 0; -webkit-transform: translateY(-40%); transform: translateY(-40%); }

.section.press-articles .nophoto .photo { background-color: transparent; }

.section.press-articles .play-video { display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.section.press-articles .play-video * { -webkit-transition: all ease-out .3s; transition: all ease-out .3s; }

.section.press-articles .play-video span { display: inline-block; width: 80px; height: 80px; background: rgba(0, 0, 0, 0.65); border-radius: 100%; text-align: center; border: 2px solid #FFF; position: relative; margin-top: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

@media (min-width: 430px) { .section.press-articles .play-video span { margin-top: -8%; -webkit-transform: scale(0.8); transform: scale(0.8); } }

@media (min-width: 820px) { .section.press-articles .play-video span { -webkit-transform: none; transform: none; } }

.section.press-articles .play-video span:before { content: ""; display: inline-block; width: 0; height: 0; border-left: 25px solid #FFF; border-top: 18px solid transparent; border-bottom: 18px solid transparent; position: relative; left: 5px; }

.section.press-articles a.feat-image:hover .photo { -webkit-transform: scale(1.1); transform: scale(1.1); }

.section.press-articles a.feat-video:hover .play-video span { background: #FF0000; }

.featured-video { margin-top: 50px; }

@media (min-width: 820px) { .featured-video { margin-top: 80px; } }

.featured-video .embedvideo { max-width: 900px; width: 100%; margin: 0 auto; border: 1px solid #000; padding: 2px; }

.featured-video iframe { width: 100% !important; height: 260px !important; float: left; }

@media (min-width: 430px) { .featured-video iframe { height: 400px !important; } }

@media (min-width: 820px) { .featured-video iframe { height: 500px !important; } }

.featured-video.videomp4 .videwrap { max-width: 900px; width: 100%; height: 465px; border: 1px solid #000; padding: 2px; position: relative; }

.featured-video.videomp4 video { width: 100% !important; height: 100% !important; position: relative; z-index: 3; }

.featured-video.videomp4 .inside { position: relative; width: 100% !important; height: 100% !important; }

.featured-video.videomp4 .video-thumb { width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; position: absolute; top: 0; left: 0; z-index: 5; }

.featured-video.videomp4 #VidPlay { display: block; text-decoration: none; width: 70px; height: 70px; margin-top: -1.5%; position: absolute; top: 50%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); z-index: 10; -webkit-transition: opacity ease-in-out .3s; transition: opacity ease-in-out .3s; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.featured-video.videomp4 #VidPlay * { -webkit-transition: all ease-in-out .3s; transition: all ease-in-out .3s; }

.featured-video.videomp4 #VidPlay span.playBtn { display: inline-block; width: 70px; height: 70px; background: rgba(0, 0, 0, 0.4); border-radius: 100%; text-align: center; border: 3px solid rgba(255, 255, 255, 0.65); position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.featured-video.videomp4 #VidPlay span.playBtn span { display: block; width: 30px; position: relative; left: 2px; opacity: 0.6; }

.featured-video.videomp4 #VidPlay span.playBtn span i { display: block; width: 100%; height: 3px; background: #FFF; position: absolute; left: 0; border-radius: 5px; }

.featured-video.videomp4 #VidPlay span.playBtn span i.b1 { top: -7px; left: 2px; -webkit-transform: rotate(30deg); transform: rotate(30deg); }

.featured-video.videomp4 #VidPlay span.playBtn span i.b2 { top: 7px; left: 2px; -webkit-transform: rotate(-30deg); transform: rotate(-30deg); }

.featured-video.videomp4 #VidPlay span.playBtn span i.b3 { top: 0; left: -10px; -webkit-transform: rotate(90deg); transform: rotate(90deg); }

.featured-video.videomp4 #VidPlay:hover span.playBtn { border-color: white; }

.featured-video.videomp4 #VidPlay:hover span.playBtn span { opacity: 1; }

.section.team-info { position: relative; background: #3a3a3a; color: #FFF; }

.section.team-info .bg { width: 100%; height: 100%; background-size: cover; background-position: top center; background-repeat: no-repeat; position: absolute; top: 0; left: 0; -webkit-filter: grayscale(100%); filter: grayscale(100%); opacity: 0.1; }

.section.team-info .bg:before { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0, 0, 0, 0.35); }

.section.team-info .section-content { position: relative; z-index: 10; }

.section.team-info .infobox { position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; margin: 60px 0; }

@media (min-width: 820px) { .section.team-info .infobox { margin: 85px 0; } }

.section.team-info .photo { position: relative; width: 100%; margin-bottom: 20px; }

@media (min-width: 430px) { .section.team-info .photo { width: 30%; } }

@media (min-width: 820px) { .section.team-info .photo { width: 20%; } }

.section.team-info .photo div.img { width: 100%; float: left; background-color: #4e4e4e; background-size: cover; background-position: center; background-repeat: no-repeat; position: relative; }

.section.team-info .photo img { width: 100%; height: auto; float: left; }

.section.team-info .photo.nophoto div.img:before { content: "Photo Coming Soon"; display: block; width: 100%; text-align: center; font-size: 15px; line-height: 1.1; color: #717171; position: absolute; top: 50%; left: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

@media (min-width: 430px) { .section.team-info .photo.nophoto div.img:before { font-size: 1.8vw; } }

@media (min-width: 820px) { .section.team-info .photo.nophoto div.img:before { font-size: 15px; } }

.section.team-info .text { width: 100%; }

@media (min-width: 430px) { .section.team-info .text { width: 70%; padding-left: 20px; } }

@media (min-width: 820px) { .section.team-info .text { padding-left: 30px; width: 80%; } }

.section.team-info h2.name { margin: 0 0 10px; font-size: 1.2rem; font-weight: 600; line-height: 1.2; }

.section.team-info .bio { font-size: 15px; margin-bottom: 20px; }

@media (min-width: 430px) { .section.team-info .bio { margin-bottom: 30px; } }

.section.team-info .more a { display: inline-block; text-decoration: none; font-size: 14px; line-height: 1.1; border: 1px solid #FFF; padding: 6px 20px; color: #FFF; }

.section.team-info .more a:hover { background: #000; }

.single-team .site-main { padding-top: 100px; padding-bottom: 100px; }

.single-team .photo { width: 100%; float: left; margin-bottom: 20px; position: relative; }

@media (min-width: 430px) { .single-team .photo { width: 28%; float: left; } }

@media (min-width: 820px) { .single-team .photo { width: 30%; } }

.single-team .photo img { width: 100%; height: auto; }

.single-team .photo.nophoto { background: #eaeaea; }

.single-team .photo.nophoto:before { content: "Photo Coming Soon"; display: block; width: 100%; text-align: center; font-size: 16px; line-height: 1.1; color: #b5b5b5; position: absolute; top: 50%; left: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

@media (min-width: 430px) { .single-team .photo.nophoto:before { font-size: 2vw; } }

@media (min-width: 820px) { .single-team .photo.nophoto:before { font-size: 18px; } }

.single-team .entry-content { width: 100%; float: left; }

@media (min-width: 430px) { .single-team .entry-content { width: 67%; float: right; } }

@media (min-width: 820px) { .single-team .entry-content { width: 66%; } }

.entry-content.careers { font-size: 20px; }

/* Pagination */
.pagination { margin-top: 15px; margin-left: -2px; }

.pagination a, .pagination span { display: inline-block; text-decoration: none; padding: 8px 10px 6px; font-size: 15px; line-height: 1; margin: 2px; }

.pagination span { background: #000; color: #FFF; }

.pagination a { color: #000; background: #dadada; }

/* Sitemap */
.sitemapMenu { text-align: center; max-width: 700px; width: 100%; padding-bottom: 60px; }

.sitemapMenu .sitemapnav { width: 100%; margin: 0 auto; text-align: left; }

.sitemapMenu ul { margin: 0 0; padding: 0 0; list-style: none; }

.sitemapMenu ul li { position: relative; }

.sitemapMenu ul > li { padding-left: 12px; margin-bottom: 2px; }

.sitemapMenu ul > li > a:before { content: ""; display: block; width: 5px; height: 5px; background: #404040; position: absolute; top: 7px; left: 0; -webkit-transition: all ease-out .3s; transition: all ease-out .3s; }

.sitemapMenu ul > li ul { padding-left: 10px; }

.sitemapMenu ul > li ul li { padding-left: 10px; }

.sitemapMenu ul > li ul li > a:before { background: transparent; border: 1px solid #404040; border-radius: 100%; width: 3px; height: 3px; top: 8px; -webkit-transition: all ease-out .3s; transition: all ease-out .3s; }

.sitemapMenu ul > li ul li:hover > a:before { border-color: #404040; background: transparent; }

.sitemapMenu ul.menu > li > a:hover:before { background: #8c8c8c; }

@media (min-width: 820px) { .sitemapMenu ul.menu { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; } }

.sitemapMenu ul.menu ul a { padding: 0 0 0 2px; }

.sitemapMenu ul.menu > li { width: 100%; }

@media (min-width: 820px) { .sitemapMenu ul.menu > li { margin-left: 3%; width: 230px; } }

.sitemapMenu a { color: #404040; text-decoration: none; display: inline-block; }

.sitemapMenu a:hover { color: #8c8c8c; }

.careers .maintext { padding-top: 40px; padding-bottom: 30px; }

.careers .maintext .entry-content h1:first-child { margin: 0 0 10px; font-weight: 600; line-height: 1.3; }

.careers .maintext .entry-content p:last-child { margin-bottom: 0; }

@media (min-width: 820px) { .careers .maintext { padding-top: 70px; padding-bottom: 50px; } }

.careers .section.fsgroup .flexwrap { margin: 0 -10px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }

.careers .section.fsgroup .fsgroup-item { width: 50%; padding: 10px; }

@media (min-width: 820px) { .careers .section.fsgroup.columns3 .fsgroup-item { width: 33.3%; } }

@media (min-width: 820px) { .careers .section.fsgroup.columns4 .fsgroup-item { width: 25%; } }

@media (min-width: 820px) { .careers .section.fsgroup.columns5 .fsgroup-item { width: 33.3%; } }

@media (min-width: 960px) { .careers .section.fsgroup.columns5 .fsgroup-item { width: 20%; } }

@media (min-width: 820px) { .careers .section.fsgroup.columns6 .fsgroup-item { width: 33.3%; } }

@media (min-width: 960px) { .careers .section.fsgroup.columns6 .fsgroup-item { width: 16.666%; } }

@media screen and (min-width: 429px) and (max-width: 820px) { .careers .section.fsgroup .fsgroup-item { width: 33.3%; } }

@media screen and (max-width: 430px) { .careers .section.fsgroup .fsgroup-item { width: 100% !important; } }

.careers .section.fsgroup img.placeholder { width: 100%; height: auto; float: left; }

.careers .section.fsgroup .wrap { display: block; width: 100%; float: left; background-size: cover; background-position: center; background-repeat: no-repeat; -webkit-transition: all ease-in-out .3s; transition: all ease-in-out .3s; }

.careers .section.fsgroup .wrap:before { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0, 0, 0, 0.55); }

.careers .section.fsgroup .wrap:after { display: none; }

.careers .section.fsgroup .fslogo { height: 30vw; top: 50%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); }

@media (min-width: 430px) { .careers .section.fsgroup .fslogo { height: 15vw; } }

@media (min-width: 820px) { .careers .section.fsgroup .fslogo { height: 10vw; } }

@media (min-width: 960px) { .careers .section.fsgroup .fslogo { height: 5vw; } }

@media (min-width: 1200px) { .careers .section.fsgroup .fslogo { height: 6vw; } }

@media (min-width: 1500px) { .careers .section.fsgroup .fslogo { height: 88px; } }

@media screen and (min-width: 429px) and (max-width: 820px) { .careers .section.fsgroup .fslogo { height: 12vw; } }

.careers .section.fsgroup .fsimage { overflow: hidden; margin: 0 0; }

.careers .section.fsgroup .fsimage:hover a:before, .careers .section.fsgroup .fsimage:hover a:after { display: none; }

.careers .section.fsgroup .fsimage:hover .wrap:before { background: rgba(0, 0, 0, 0.85); }

.conceptpage .maintext { padding-top: 70px; padding-bottom: 70px; }

.section.section-concepts { padding-bottom: 40px; }

.section.section-concepts.private-dining .concept-image .imagediv { max-height: 225px; }

.section.section-concepts.private-dining .concept-image .imagediv:before { height: 0; }

.section.section-concepts .flexwrap { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }

.section.section-concepts .concept-info { margin-top: 50px; margin-bottom: 60px; }

@media (min-width: 820px) { .section.section-concepts .concept-info { margin-top: 50px; margin-bottom: 50px; } }

.section.section-concepts .concept-info:first-child { margin-top: 0; }

.section.section-concepts .concept-image { width: 100%; position: relative; margin-bottom: 20px; }

@media (min-width: 820px) { .section.section-concepts .concept-image { width: 30%; margin-bottom: 0; } }

.section.section-concepts .concept-image .imagediv { width: 100%; float: left; background-size: cover; background-color: #CCC; background-position: center; background-repeat: no-repeat; position: relative; }

.section.section-concepts .concept-image .imagediv:before { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0, 0, 0, 0.35); z-index: 2; }

.section.section-concepts .concept-image a { display: block; width: 100%; position: relative; float: left; }

.section.section-concepts .concept-image img { width: 100%; height: auto; float: left; position: relative; }

.section.section-concepts .concept-image img.xfslogo { width: 30vw; height: auto; position: absolute; top: 50%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); z-index: 5; }

@media (min-width: 820px) { .section.section-concepts .concept-image img.xfslogo { width: 15vw; } }

@media (min-width: 960px) { .section.section-concepts .concept-image img.xfslogo { width: 10vw; } }

.section.section-concepts .concept-text { width: 100%; }

@media (min-width: 820px) { .section.section-concepts .concept-text { width: 70%; padding-left: 30px; } }

.section.section-concepts .concept-text h2.title { margin: 0 0 20px; font-size: 1.3rem; font-weight: 600; }

.section.section-concepts .concept-text .text p:first-child { margin-top: 0; }

.section.section-concepts .sitelink a { display: inline-block; text-decoration: none; font-size: 0.85rem; line-height: 1.1; color: #333; border: 1px solid #000; padding: 7px 16px 5px; }

.section.section-concepts .sitelink a:hover { background: #000; color: #FFF; }

/* Page 404 */
.page404 .site-main { padding-top: 100px; padding-bottom: 100px; }

.page404 .text p { margin-top: 0; }

@media (min-width: 820px) { .section-careers-embed .wrapper { margin-top: -80px; } }

.section-careers-embed iframe { width: 100% !important; height: 100% !important; border: none; margin: 0 0; padding: 0 0; }

/* Footer */
.site-footer { width: 100%; float: left; background: #000; color: #FFF; font-size: 14px; padding-top: 20px; padding-bottom: 20px; }

.site-footer a { display: inline-block; text-decoration: none; color: #FFF; }

.site-footer a:hover { opacity: 0.65; }

.site-footer .flexcols { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-line-pack: center; align-content: center; }

.site-footer .ft-main-logo img { width: 85px; height: auto; margin: 0 auto; }

@media (min-width: 960px) { .site-footer .ft-main-logo img { margin: 0 0; } }

.site-footer .col { width: 100%; }

.site-footer .col1 { text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

@media (min-width: 960px) { .site-footer .col1 { text-align: left; width: 10%; } }

@media (min-width: 960px) { .site-footer .col2 { width: 70%; } }

.site-footer .col3 { text-align: center; margin-top: 20px; }

@media (min-width: 960px) { .site-footer .col3 { margin-top: 0; width: 20%; text-align: right; } }

.site-footer .fsgrouplogos .flexwrap { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.site-footer .fsgrouplogos .fsgrplogo { padding: 0 25px; }

@media (min-width: 960px) { .site-footer .fsgrouplogos .fsgrplogo { padding: 10px 16px; } }

@media (min-width: 1200px) { .site-footer .fsgrouplogos .fsgrplogo { padding: 10px 25px; } }

@media screen and (max-width: 745px) { .site-footer .fsgrouplogos .fsgrplogo { padding: 10px 15px; } }

@media screen and (max-width: 770px) { .site-footer .fsgrouplogos .fsgrplogo { width: 25%; } }

@media screen and (max-width: 380px) { .site-footer .fsgrouplogos .fsgrplogo { width: 33.33%; } }

@media screen and (max-width: 300px) { .site-footer .fsgrouplogos .fsgrplogo { width: 50%; } }

.site-footer .fsgrouplogos .fsgrplogo img { width: 75px; height: auto; opacity: 0.55; }

@media (min-width: 960px) { .site-footer .fsgrouplogos .fsgrplogo img { width: auto; height: 50px; } }

@media screen and (max-width: 770px) { .site-footer .fsgrouplogos .fsgrplogo img { width: 70%; } }

@media screen and (max-width: 670px) { .site-footer .fsgrouplogos .fsgrplogo img { width: 100%; } }

section.benefits { width: 100%; padding: 40px; text-align: center; background-color: #5d5d5d; color: #fff; }

section.benefits h2 { font-size: 40px; text-transform: uppercase; margin-bottom: 80px; }

section.benefits .flex { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }

section.benefits .benefit { padding: 20px; font-size: 20px; margin: 20px auto; background-color: #fff; color: #000; -webkit-box-shadow: 1px 15px 17px 8px rgba(0, 0, 0, 0.14); box-shadow: 1px 15px 17px 8px rgba(0, 0, 0, 0.14); }

@media (min-width: 960px) { section.benefits .benefit { -ms-flex-preferred-size: 30%; flex-basis: 30%; margin: 0 auto 40px auto; margin-bottom: 20px; } }

@media (min-width: 1200px) { section.benefits .benefit { -ms-flex-preferred-size: 22%; flex-basis: 22%; } }

section.benefits .benefit h3 { font-size: 26px; text-transform: uppercase; }

section.car-gallery { width: 100%; background-color: #eee; display: -webkit-box; display: -ms-flexbox; display: flex; padding: 30px 10px; }

@media (min-width: 960px) { section.car-gallery { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } }

section.car-gallery .galwrap { margin: 0 5px; }

section.car-gallery .galwrap.three { width: 30%; }

section.car-gallery .galwrap.four { width: 22%; }

section.car-gallery .galwrap.five { width: 19%; }

section.car-gallery .galwrap.six { width: 19%; }

section.car-gallery .galwrap.seven { width: 15%; }

section.car-gallery .galwrap.eight { width: 14%; }

section.car-gallery .galwrap.nine { width: 13%; }

section.car-gallery .galwrap img { width: 100%; }

section.places { background-color: #000; padding: 30px 0; }

section.places .flex { text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media (min-width: 960px) { section.places .flex { -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } }

section.places .flex .place-l { width: 35%; margin: 0 auto 20px auto; }

@media (min-width: 960px) { section.places .flex .place-l { width: 10%; margin: 0 20px; } }

section.places .flex .place-l img { max-width: 100%; }

section.places .flex .place-l a { display: block; }

.grid-item { width: 30%; }

.grid-item--width2 { width: 600px; }

#concepts .details { width: 100%; float: left; margin-bottom: 20px; }

#concepts .details .detail { width: auto; display: inline-block; margin-right: 20px; color: rgba(0, 0, 0, 0.5); font-weight: bold; }

.car-btn { width: auto; display: inline-block; margin: 20px auto; }

.car-btn a { display: block; padding: 15px 25px; background-color: #b45110; color: #fff; text-transform: uppercase; text-decoration: none; -webkit-transform: scale(1); transform: scale(1); }

.car-btn a:hover { -webkit-transform: scale(1.1); transform: scale(1.1); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwiYm91cmJvbi9fYm91cmJvbi5zY3NzIiwiYm91cmJvbi9zZXR0aW5ncy9fcHJlZml4ZXIuc2NzcyIsImJvdXJib24vc2V0dGluZ3MvX3B4LXRvLWVtLnNjc3MiLCJib3VyYm9uL3NldHRpbmdzL19hc3NldC1waXBlbGluZS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2Fzc2lnbi1pbnB1dHMuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19jb250YWlucy5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2NvbnRhaW5zLWZhbHN5LnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtbGVuZ3RoLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtbGlnaHQuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19pcy1udW1iZXIuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19pcy1zaXplLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fcHgtdG8tZW0uc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19weC10by1yZW0uc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19zaGFkZS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3N0cmlwLXVuaXRzLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fdGludC5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3RyYW5zaXRpb24tcHJvcGVydHktbmFtZS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3VucGFjay5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX21vZHVsYXItc2NhbGUuc2NzcyIsImJvdXJib24vaGVscGVycy9fY29udmVydC11bml0cy5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19kaXJlY3Rpb25hbC12YWx1ZXMuc2NzcyIsImJvdXJib24vaGVscGVycy9fZm9udC1zb3VyY2UtZGVjbGFyYXRpb24uc2NzcyIsImJvdXJib24vaGVscGVycy9fZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19saW5lYXItYW5nbGUtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1ncmFkaWVudC1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fbGluZWFyLXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yYWRpYWwtYXJnLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yYWRpYWwtcG9zaXRpb25zLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yYWRpYWwtZ3JhZGllbnQtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX3JlbmRlci1ncmFkaWVudHMuc2NzcyIsImJvdXJib24vaGVscGVycy9fc2hhcGUtc2l6ZS1zdHJpcHBlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19zdHItdG8tbnVtLnNjc3MiLCJib3VyYm9uL2NzczMvX2FuaW1hdGlvbi5zY3NzIiwiYm91cmJvbi9jc3MzL19hcHBlYXJhbmNlLnNjc3MiLCJib3VyYm9uL2NzczMvX2JhY2tmYWNlLXZpc2liaWxpdHkuc2NzcyIsImJvdXJib24vY3NzMy9fYmFja2dyb3VuZC5zY3NzIiwiYm91cmJvbi9jc3MzL19iYWNrZ3JvdW5kLWltYWdlLnNjc3MiLCJib3VyYm9uL2NzczMvX2JvcmRlci1pbWFnZS5zY3NzIiwiYm91cmJvbi9jc3MzL19jYWxjLnNjc3MiLCJib3VyYm9uL2NzczMvX2NvbHVtbnMuc2NzcyIsImJvdXJib24vY3NzMy9fZmlsdGVyLnNjc3MiLCJib3VyYm9uL2NzczMvX2ZsZXgtYm94LnNjc3MiLCJib3VyYm9uL2NzczMvX2ZvbnQtZmFjZS5zY3NzIiwiYm91cmJvbi9jc3MzL19mb250LWZlYXR1cmUtc2V0dGluZ3Muc2NzcyIsImJvdXJib24vY3NzMy9faGlkcGktbWVkaWEtcXVlcnkuc2NzcyIsImJvdXJib24vY3NzMy9faHlwaGVucy5zY3NzIiwiYm91cmJvbi9jc3MzL19pbWFnZS1yZW5kZXJpbmcuc2NzcyIsImJvdXJib24vY3NzMy9fa2V5ZnJhbWVzLnNjc3MiLCJib3VyYm9uL2NzczMvX2xpbmVhci1ncmFkaWVudC5zY3NzIiwiYm91cmJvbi9jc3MzL19wZXJzcGVjdGl2ZS5zY3NzIiwiYm91cmJvbi9jc3MzL19wbGFjZWhvbGRlci5zY3NzIiwiYm91cmJvbi9jc3MzL19yYWRpYWwtZ3JhZGllbnQuc2NzcyIsImJvdXJib24vY3NzMy9fc2VsZWN0aW9uLnNjc3MiLCJib3VyYm9uL2NzczMvX3RleHQtZGVjb3JhdGlvbi5zY3NzIiwiYm91cmJvbi9jc3MzL190cmFuc2Zvcm0uc2NzcyIsImJvdXJib24vY3NzMy9fdHJhbnNpdGlvbi5zY3NzIiwiYm91cmJvbi9jc3MzL191c2VyLXNlbGVjdC5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2JvcmRlci1jb2xvci5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItc3R5bGUuc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItd2lkdGguc2NzcyIsImJvdXJib24vYWRkb25zL19idXR0b25zLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fY2xlYXJmaXguc2NzcyIsImJvdXJib24vYWRkb25zL19lbGxpcHNpcy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2ZvbnQtc3RhY2tzLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9faGlkZS10ZXh0LnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fbWFyZ2luLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fcGFkZGluZy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3Bvc2l0aW9uLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fcHJlZml4ZXIuc2NzcyIsImJvdXJib24vYWRkb25zL19yZXRpbmEtaW1hZ2Uuc2NzcyIsImJvdXJib24vYWRkb25zL19zaXplLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fdGV4dC1pbnB1dHMuc2NzcyIsImJvdXJib24vYWRkb25zL190aW1pbmctZnVuY3Rpb25zLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fdHJpYW5nbGUuc2NzcyIsImJvdXJib24vYWRkb25zL193b3JkLXdyYXAuc2NzcyIsImJvdXJib24vX2JvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZy5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwibW9kdWxlcy9fYW5pbWF0ZS5zY3NzIiwibW9kdWxlcy9fY29sb3Jib3guc2NzcyIsIm1vZHVsZXMvX2ZsZXhzbGlkZXIuc2NzcyIsIl9jb3JlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBb0JFO0FDcEJGLEFBQUEsSUFBSSxDQUFDLEVBQ0osV0FBVyxFQUFFLFVBQVUsRUFDdkIsd0JBQXdCLEVBQUUsSUFBSSxFQUM5QixvQkFBb0IsRUFBTSxJQUFJLEdBQzlCOztBQUVELEFBQUEsSUFBSSxDQUFDLEVBQ0osTUFBTSxFQUFFLENBQUMsR0FDVDs7QUFFRCxBQUFBLE9BQU8sRUFDUCxLQUFLLEVBQ0wsT0FBTyxFQUNQLFVBQVUsRUFDVixNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDTixJQUFJLEVBQ0osSUFBSSxFQUNKLEdBQUcsRUFDSCxPQUFPLEVBQ1AsT0FBTyxDQUFDLEVBQ1AsT0FBTyxFQUFFLEtBQUssR0FDZDs7QUFFRCxBQUFBLEtBQUssRUFDTCxNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssQ0FBQyxFQUNMLE9BQU8sRUFBRSxZQUFZLEVBQ3JCLGNBQWMsRUFBRSxRQUFRLEdBQ3hCOztBQUVELEFBQUEsS0FBSyxBQUFBLElBQUssRUFBQSxBQUFBLFFBQUMsQUFBQSxHQUFXLEVBQ3JCLE9BQU8sRUFBRSxJQUFJLEVBQ2IsTUFBTSxFQUFFLENBQUMsR0FDVDs7Q0FFRCxBQUFBLEFBQUEsTUFBQyxBQUFBLEdBQ0QsUUFBUSxDQUFDLEVBQ1IsT0FB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 */

/*# sourceMappingURL=style.css.map */
