@charset "UTF-8";
/*------------------------------------*\
    Colour Variables
\*------------------------------------*/
/*------------------------------------*\
    Base styles
    Author: Chris Smith
\*------------------------------------*/
/*------------------------------------*\
    Base
\*------------------------------------*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.cf:before, .multi-list:before, .matrix:before, .media:before, .nav:before,
.cf:after,
.multi-list:after,
.matrix:after,
.media:after,
.nav:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.cf:after, .multi-list:after, .matrix:after, .media:after, .nav:after {
  clear: both;
}

.ib, .form-fields .col-third, .form-fields .col-half, .page-numbers li a, .page-numbers li strong, .page-numbers li span, .page-numbers li {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

.clear-list, .wysiwyg .form-fields, .page-numbers {
  list-style: none;
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 0;
}
.clear-list > li, .wysiwyg .form-fields > li, .page-numbers > li {
  list-style: none;
}

/*------------------------------------*\
    Helpers
\*------------------------------------*/
.bullet-list li {
  list-style: square;
}
.bullet-list strong {
  color: #d62027;
}

.badge {
  color: #000000;
  display: inline-block;
  width: 100px;
  height: 100px;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
  -khtml-border-radius: 50px;
  border-radius: 50px;
  border: 2px solid #000000;
  text-align: center;
  background-color: #d62027;
  text-align: center;
  text-transform: uppercase;
  color: #ffffff;
  line-height: 1rem;
}
.badge .fa {
  font-size: 1.25rem;
  line-height: 96px;
}
.badge.white {
  color: #ffffff;
  border-color: #ffffff;
}

.v-align-wrapper {
  height: 100%;
}
.v-align-wrapper:before {
  content: "";
  height: 100%;
  vertical-align: middle;
  display: inline-block;
  zoom: 1;
  margin-left: -0.25em;
}
.v-align-wrapper .v-align {
  width: 99%;
  display: inline-block;
  vertical-align: middle;
}

.cover-bgd {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

/*------------------------------------*\
    VARS.SCSS
\*------------------------------------*/
/**
 * Any variables you find set in inuit.css’ `_vars.scss` that you do not wish to
 * keep, simply redefine here. This means that if inuit.css, for example, sets
 * your `$base-font-size` at 16px and you wish it to be 14px, simply redeclare
 * that variable in this file. inuit.css ignores its own variables in favour of
 * using your own, so you can completely modify how inuit.css works without ever
 * having to alter the framework itself.
 */
/*------------------------------------*\
    $OBJECTS-AND-ABSTRACTIONS
\*------------------------------------*/
/**
 * All of inuit.css’ objects and abstractions are initially turned off by
 * default. This means that you start any project with as little as possible,
 * and introducing objects and abstractions is as simple as switching the
 * following variables to `true`.
 */
/*------------------------------------*\
    $OVERRIDES
\*------------------------------------*/
/**
 * Place any variables that should override inuit.css’ defaults here.
 */
/*------------------------------------*\
    $CUSTOM
\*------------------------------------*/
/**
 * Place any of your own variables that sit on top of inuit.css here.
 */
/*------------------------------------*\
    INUIT.CSS
\*------------------------------------*/
/*!*
 *
 * inuitcss.com -- @inuitcss -- @csswizardry
 *
 */
/**
 * inuit.css acts as a base stylesheet which you should extend with your own
 * theme stylesheet.
 *
 * inuit.css aims to do the heavy lifting; sorting objects and abstractions,
 * design patterns and fiddly bits of CSS, whilst leaving as much design as
 * possible to you. inuit.css is the scaffolding to your decorator.
 *
 * This stylesheet is heavily documented and contains lots of comments, please
 * take care to read and refer to them as you build. For further support please
 * tweet at @inuitcss.
 *
 * Owing to the amount of comments please only ever use minified CSS in
 * production. This file is purely a dev document.
 *
 * The table of contents below maps to section titles of the same name, to jump
 * to any section simply run a find for $[SECTION-TITLE].
 *
 * Most objects and abstractions come with a chunk of markup that you should be
 * able to paste into any view to quickly see how the CSS works in conjunction
 * with the correct HTML.
 *
 * inuit.css is written to this standard: github.com/csswizardry/CSS-Guidelines
 *
 * LICENSE
 *
 * Copyright 2013 Harry Roberts
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * Thank you for choosing inuit.css. May your web fonts render perfectly.
 */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * CONTENTS............You’re reading it!
 * WARNING.............Here be dragons!
 * IMPORTS.............Begin importing the sections below
 *
 * MIXINS..............Super-simple Sass stuff
 * NORMALIZE...........normalize.css
 * RESET...............Set some defaults
 * CLEARFIX............
 * SHARED..............Shared declarations
 *
 * MAIN................High-level elements like `html`, `body`, etc.
 * HEADINGS............Double-stranded heading hierarchy
 * PARAGRAPHS..........
 * SMALLPRINT..........Smaller text elements like `small`
 * QUOTES..............
 * CODE................
 * LISTS...............
 * IMAGES..............
 * TABLES..............
 * FORMS...............
 *
 * GRIDS...............Fluid, proportional and nestable grids
 * FLEXBOX.............Crudely emulate flexbox
 * COLUMNS.............CSS3 columns
 * NAV.................A simple abstraction to put a list in horizontal nav mode
 * OPTIONS.............Grouped nav items
 * PAGINATION..........Very stripped back, basic paginator
 * BREADCRUMB..........Simple breadcrumb trail object
 * MEDIA...............Media object
 * MARGINALIA..........Simple marginalia content
 * ISLAND..............Boxed off content
 * BLOCK-LIST..........Blocky lists of content
 * MATRIX..............Gridded lists
 * SPLIT...............A simple split-in-two object
 * THIS-OR-THIS........Options object
 * LINK-COMPLEX........
 * FLYOUT..............Flyout-on-hover object
 * ARROWS..............CSS arrows
 * SPRITE..............Generic spriting element
 * ICON-TEXT...........Icon and text couplings
 * BEAUTONS............Use the beautons micro library
 * LOZENGES............Basic lozenge styles
 * RULES...............Horizontal rules
 * STATS...............Simple stats object
 * GREYBOX.............Wireframing styles
 *
 * WIDTHS..............Width classes for use alongside the grid system etc.
 * PUSH................Push classes for manipulating grids
 * PULL................Pull classes for manipulating grids
 * BRAND...............Helper class to apply brand treatment to elements
 * HELPER..............A series of helper classes to use arbitrarily
 * DEBUG...............Enable to add visual flags for debugging purposes
 */
/*------------------------------------*\
    $WARNING
\*------------------------------------*/
/*
 * inuit.css, being an OO framework, works in keeping with the open/closed
 * principle. The variables you set previously are now being used throughout
 * inuit.css to style everything we need for a base. Any custom styles SHOULD
 * NOT be added or modified in inuit.css directly, but added via your theme
 * stylesheet as per the open/closed principle:
 *
 * csswizardry.com/2012/06/the-open-closed-principle-applied-to-css
 *
 * Try not to edit any CSS beyond this point; if you find you need to do so
 * it is a failing of the framework so please tweet at @inuitcss.
 */
/*------------------------------------*\
    $IMPORTS
\*------------------------------------*/
/**
 * Generic utility styles etc.
 */
/*------------------------------------*\
    $DEFAULTS
\*------------------------------------*/
/**
 * inuit.css’ default variables. Redefine these in your `_vars.scss` file (found
 * in the inuit.css-web-template) to override them.
 */
/*------------------------------------*\
    $DEBUG
\*------------------------------------*/
/**
 * Debug mode will visually highlight any potential markup/accessibility quirks
 * in the browser. Set to `true` or `false`.
 */
/*------------------------------------*\
    $BORDER-BOX
\*------------------------------------*/
/**
 * Do you want all elements to adopt `box-sizing:border-box;` as per
 * paulirish.com/2012/box-sizing-border-box-ftw ?
 */
/*------------------------------------*\
    $BASE
\*------------------------------------*/
/**
 * Base stuff
 */
/**
 * Base font-family.
 */
/**
 * Default colour for objects’ borders etc.
 */
/*------------------------------------*\
    $RESPONSIVE
\*------------------------------------*/
/**
 * Responsiveness?
 */
/**
 * Responsiveness for widescreen/high resolution desktop monitors and beyond?
 * Note: `$responsive` variable above must be set to true before enabling this.
 */
/**
 * Responsive push and pull produce a LOT of code, only turn them on if you
 * definitely need them.
 */
/**
 * Note: `$push` variable above must be set to true before enabling these.
 */
/**
 * Note: `$pull` variable above must be set to true before enabling these.
 */
/**
 * Tell inuit.css when breakpoints start.
 */
/*------------------------------------*\
    $FONT-SIZES
\*------------------------------------*/
/**
 * Font-sizes (in pixels). Refer to relevant sections for their implementations.
 */
/*------------------------------------*\
    $QUOTES
\*------------------------------------*/
/**
 * English quote marks?
 */
/**
 * If you want English quotes then please do not edit these; they’re only here
 * because Sass needs them.
 */
/**
 * If you need non-English quotes, please alter the following values accordingly:
 */
/*------------------------------------*\
    $BRAND
\*------------------------------------*/
/**
 * Brand stuff
 */
/**
 * How big would you like round corners to be by default?
 */
/*------------------------------------*\
    $OBJECTS AND ABSTRACTIONS
\*------------------------------------*/
/**
 * Which objects and abstractions would you like to use?
 */
/*------------------------------------*\
    $FRAMEWORK
\*------------------------------------*/
/**
 * inuit.css will work these next ones out for use within the framework.
 *
 * Assign our `$base-line-height` to a new spacing var for more transparency.
 */
/*------------------------------------*\
    $MIXINS
\*------------------------------------*/
/**
 * Create a fully formed type style (sizing and vertical rhythm) by passing in a
 * single value, e.g.:
 *
   `@include font-size(10px);`
 *
 * Thanks to @redclov3r for the `line-height` Sass:
 * twitter.com/redclov3r/status/250301539321798657
 */
/**
 * Style any number of headings in one fell swoop, e.g.:
 *
   .foo{
       @include headings(1, 3){
           color:#BADA55;
       }
    }
 *
 * With thanks to @lar_zzz, @paranoida, @rowanmanning and ultimately
 * @thierrylemoulec for refining and improving my initial mixin.
 */
/**
 * Create vendor-prefixed CSS in one go, e.g.
 *
   `@include vendor(border-radius, 4px);`
 *
 */
/**
 * Create CSS keyframe animations for all vendors in one go, e.g.:
 *
   .foo{
       @include vendor(animation, shrink 3s);
   }

   @include keyframe(shrink){
       from{
           font-size:5em;
       }
   }
 *
 * Courtesy of @integralist: twitter.com/integralist/status/260484115315437569
 */
/**
 * Force overly long spans of text to truncate, e.g.:
 *
   `@include truncate(100%);`
 *
 * Where `$truncation-boundary` is a united measurement.
 */
/**
 * CSS arrows!!! But... before you read on, you might want to grab a coffee...
 *
 * This mixin creates a CSS arrow on a given element. We can have the arrow
 * appear in one of 12 locations, thus:
 *
 *       01    02    03
 *    +------------------+
 * 12 |                  | 04
 *    |                  |
 * 11 |                  | 05
 *    |                  |
 * 10 |                  | 06
 *    +------------------+
 *       09    08    07
 *
 * You pass this position in along with a desired arrow color and optional
 * border color, for example:
 *
 * `@include arrow(top, left, red)`
 *
 * for just a single, red arrow, or:
 *
 * `@include arrow(bottom, center, red, black)`
 *
 * which will create a red triangle with a black border which sits at the bottom
 * center of the element. Call the mixin thus:
 *
   .foo{
       background-color:#BADA55;
       border:1px solid #ACE;
       @include arrow(top, left, #BADA55, #ACE);
   }
 *
 */
/**
 * Media query mixin.
 *
 * It’s not great practice to define solid breakpoints up-front, preferring to
 * modify your design when it needs it, rather than assuming you’ll want a
 * change at ‘mobile’. However, as inuit.css is required to take a hands off
 * approach to design decisions, this is the closest we can get to baked-in
 * responsiveness. It’s flexible enough to allow you to set your own breakpoints
 * but solid enough to be frameworkified.
 *
 * We define some broad breakpoints in our vars file that are picked up here
 * for use in a simple media query mixin. Our options are:
 *
 * palm
 * lap
 * lap-and-up
 * portable
 * desk
 * desk-wide
 *
 * Not using a media query will, naturally, serve styles to all devices.
 *
 * `@include media-query(palm){ [styles here] }`
 *
 * We work out your end points for you:
 */
/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/*
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block;
}

/*
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/*
 * Address styling not present in IE 8/9.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/*
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */
}

/*
 * Remove default margin.
 */
body {
  margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */
/*
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/*
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/*
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/*
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/*
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/*
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic;
}

/*
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/*
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/*
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

/*
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap;
}

/*
 * Set consistent quote types.
 */
q {
  quotes: "“" "”" "‘" "’";
}

/*
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */
/*
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0;
}

/*
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/*
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/*
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/*
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/*
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */
}

/*
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/*
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/*
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/*
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/*
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/*
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/*
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*------------------------------------*\
    $RESET
\*------------------------------------*/
/**
 * A more considered reset; more of a restart...
 * As per: csswizardry.com/2011/10/reset-restarted
 */
/**
* Let’s make the box model all nice, shall we...?
*/
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

/**
 * The usual...
 */
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
dl, dd, ol, ul,
form, fieldset, legend,
table, th, td, caption,
hr {
  margin: 0;
  padding: 0;
}

/**
 * Give a help cursor to elements that give extra info on `:hover`.
 */
abbr[title], dfn[title] {
  cursor: help;
}

/**
 * Remove underlines from potentially troublesome elements.
 */
u, ins {
  text-decoration: none;
}

/**
 * Apply faux underline via `border-bottom`.
 */
ins {
  border-bottom: 1px solid;
}

/**
 * So that `alt` text is visually offset if images don’t load.
 */
img {
  font-style: italic;
}

/**
 * Give form elements some cursor interactions...
 */
label,
input,
textarea,
button,
select,
option {
  cursor: pointer;
}

.text-input:active,
.text-input:focus,
textarea:active,
textarea:focus {
  cursor: text;
  outline: none;
}

/*------------------------------------*\
    $CLEARFIX
\*------------------------------------*/
/**
 * Micro clearfix, as per: css-101.org/articles/clearfix/latest-new-clearfix-so-far.php
 * Extend the clearfix class with Sass to avoid the `.cf` class appearing over
 * and over in your markup.
 */
.cf:after, .multi-list:after, .matrix:after, .media:after, .nav:after {
  content: "";
  display: table;
  clear: both;
}

/*------------------------------------*\
    $SHARED
\*------------------------------------*/
/**
 * Where `margin-bottom` is concerned, this value will be the same as the
 * base line-height. This allows us to keep a consistent vertical rhythm.
 * As per: csswizardry.com/2012/06/single-direction-margin-declarations
 */
/**
 * Base elements
 */
h1, h2, h3, h4, h5, h6, hgroup,
ul, ol, dl,
blockquote, p, address,
table,
fieldset, figure,
pre,
.form-fields > li,
.media,
.island,
.islet {
  margin-bottom: 24px;
  margin-bottom: 1.5rem;
}
.islet h1, .islet h2, .islet h3, .islet h4, .islet h5, .islet h6, .islet hgroup,
.islet ul, .islet ol, .islet dl,
.islet blockquote, .islet p, .islet address,
.islet table,
.islet fieldset, .islet figure,
.islet pre,
.islet .form-fields > li,
.islet .media,
.islet .island,
.islet .islet {
  margin-bottom: 12px;
  margin-bottom: 0.75rem;
}

/**
 * Doubled up `margin-bottom` helper class.
 */
.landmark {
  margin-bottom: 48px;
  margin-bottom: 3rem;
}

/**
 * `hr` elements only take up a few pixels, so we need to give them special
 * treatment regarding vertical rhythm.
 */
hr {
  margin-bottom: 22px;
  margin-bottom: 1.375rem;
}

/**
 * Where `margin-left` is concerned we want to try and indent certain elements
 * by a consistent amount. Define that amount once, here.
 */
ul, ol, dd {
  margin-left: 48px;
  margin-left: 3rem;
}

/**
 * Base styles; unclassed HTML elements etc.
 */
/*------------------------------------*\
    $MAIN
\*------------------------------------*/
html {
  font: 1em/1.5 sans-serif;
  overflow-y: scroll;
  min-height: 100%;
}

/*------------------------------------*\
    $HEADINGS
\*------------------------------------*/
/**
 * As per: csswizardry.com/2012/02/pragmatic-practical-font-sizing-in-css
 *
 * When we define a heading we also define a corresponding class to go with it.
 * This allows us to apply, say, `class=alpha` to a `h3`; a double-stranded
 * heading hierarchy.
 */
h1, .alpha {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 1.3333333333;
}

h2, .beta {
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.6;
}

h3, .gamma {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1;
}

h4, .delta {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.2;
}

h5, .epsilon {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

h6, .zeta {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.7142857143;
}

/**
 * Heading groups and generic any-heading class.
 * To target any heading of any level simply apply a class of `.hN`, e.g.:
 *
   <hgroup>
       <h1 class=hN>inuit.css</h1>
       <h2 class=hN>Best. Framework. Ever!</h2>
   </hgroup>
 *
 */
hgroup .hN {
  margin-bottom: 0;
}

/**
 * A series of classes for setting massive type; for use in heroes, mastheads,
 * promos, etc.
 */
.giga {
  font-size: 96px;
  font-size: 6rem;
  line-height: 1;
}

.mega {
  font-size: 72px;
  font-size: 4.5rem;
  line-height: 1;
}

.kilo {
  font-size: 48px;
  font-size: 3rem;
  line-height: 1;
}

/*------------------------------------*\
    $PARAGRAPHS
\*------------------------------------*/
/**
 * The `.lede` class is used to make the introductory text (usually a paragraph)
 * of a document slightly larger.
 */
.lede,
.lead {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.3333333333;
}

/*------------------------------------*\
    $SMALLPRINT
\*------------------------------------*/
/**
 * A series of classes for setting tiny type; for use in smallprint etc.
 */
.smallprint,
.milli {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 2;
}

.micro {
  font-size: 10px;
  font-size: 0.625rem;
  line-height: 2.4;
}

/*------------------------------------*\
    $QUOTES
\*------------------------------------*/
/**
 * If English quotes are set in `_vars.scss`, define them here.
 */
/**
 * Big up @boblet: html5doctor.com/blockquote-q-cite
 */
/**
 * Inline quotes.
 */
q {
  quotes: "‘" "’" "“" "”";
}
q:before {
  content: "‘";
  content: open-quote;
}
q:after {
  content: "’";
  content: close-quote;
}
q q:before {
  content: "“";
  content: open-quote;
}
q q:after {
  content: "”";
  content: close-quote;
}

blockquote {
  quotes: "“" "”";
}
blockquote p:before {
  content: "“";
  content: open-quote;
}
blockquote p:after {
  content: "";
  content: no-close-quote;
}
blockquote p:last-of-type:after {
  content: "”";
  content: close-quote;
}
blockquote q:before {
  content: "‘";
  content: open-quote;
}
blockquote q:after {
  content: "’";
  content: close-quote;
}

/**
 *
   <blockquote>
       <p>Insanity: doing the same thing over and over again and expecting
       different results.</p>
       <b class=source>Albert Einstein</b>
   </blockquote>
 *
 */
blockquote {
  /**
   * .4em is roughly equal to the width of the opening “ that we wish to hang.
   */
  text-indent: -0.41em;
}
blockquote p:last-of-type {
  margin-bottom: 0;
}

.source {
  display: block;
  text-indent: 0;
}
.source:before {
  content: "—";
}

/*------------------------------------*\
    $CODE
\*------------------------------------*/
/**
 * Use an explicit font stack to ensure browsers render correct `line-height`.
 */
pre {
  overflow: auto;
}

pre mark {
  background: none;
  border-bottom: 1px solid;
  color: inherit;
}

/**
 * Add comments to your code examples, e.g.:
 *
   <code>&lt;/div&gt;<span class=code-comment>&lt;!-- /wrapper --&gt;</span></code>
 *
 */
.code-comment {
  /**
   * Override this setting in your theme stylesheet
   */
  opacity: 0.75;
  filter: alpha(opacity=75);
}

/**
 * You can add line numbers to your code examples but be warned, it requires
 * some pretty funky looking markup, e.g.:
 *
   <ol class=line-numbers>
       <li><code>.nav{</code></li>
       <li><code>    list-style:none;</code></li>
       <li><code>    margin-left:0;</code></li>
       <li><code>}</code></li>
       <li><code>    .nav > li,</code></li>
       <li><code>        .nav > li > a{</code></li>
       <li><code>            display:inline-block;</code></li>
       <li><code>           *display:inline-block;</code></li>
       <li><code>            zoom:1;</code></li>
       <li><code>        }</code></li>
   </ol>
 *
 * 1. Make the list look like code.
 * 2. Give the list flush numbers with a leading zero.
 * 3. Make sure lines of code don’t wrap.
 * 4. Give the code form by forcing the `code` to honour white-space.
 */
.line-numbers {
  font-family: monospace, serif;
  /* [1] */
  list-style: decimal-leading-zero inside;
  /* [2] */
  white-space: nowrap;
  /* [3] */
  overflow: auto;
  /* [3] */
  margin-left: 0;
}

.line-numbers code {
  white-space: pre;
  /* [4] */
}

/*------------------------------------*\
    $IMAGES
\*------------------------------------*/
/**
 * Demo: jsfiddle.net/inuitcss/yMtur
 */
/**
 * Fluid images.
 */
img {
  max-width: 100%;
}

/**
 * Non-fluid images if you specify `width` and/or `height` attributes.
 */
img[width],
img[height] {
  max-width: none;
}

/**
 * Rounded images.
 */
.img--round {
  border-radius: 40px;
}

/**
 * Image placement variations.
 */
.img--right {
  float: right;
  margin-bottom: 24px;
  margin-left: 24px;
}

.img--left {
  float: left;
  margin-right: 24px;
  margin-bottom: 24px;
}

.img--center {
  display: block;
  margin-right: auto;
  margin-bottom: 24px;
  margin-left: auto;
}

/**
 * Keep your images on your baseline.
 *
 * Please note, these will not work too nicely with fluid images and will
 * distort when resized below a certain width. Use with caution.
 */
.img--short {
  height: 120px;
}

.img--medium {
  height: 240px;
}

.img--tall {
  height: 360px;
}

/**
 * Images in `figure` elements.
 */
figure > img {
  display: block;
}

/*------------------------------------*\
    $LISTS
\*------------------------------------*/
/**
 * Remove vertical spacing from nested lists.
 */
li > ul,
li > ol {
  margin-bottom: 0;
}

/**
 * Have a numbered `ul` without the semantics implied by using an `ol`.
 */
/*ul*/
.numbered-list {
  list-style-type: decimal;
}

/*------------------------------------*\
    $TABLES
\*------------------------------------*/
/**
 * We have a lot at our disposal for making very complex table constructs, e.g.:
 *
   <table class="table--bordered  table--striped  table--data">
       <colgroup>
           <col class=t10>
           <col class=t10>
           <col class=t10>
           <col>
       </colgroup>
       <thead>
           <tr>
               <th colspan=3>Foo</th>
               <th>Bar</th>
           </tr>
           <tr>
               <th>Lorem</th>
               <th>Ipsum</th>
               <th class=numerical>Dolor</th>
               <th>Sit</th>
           </tr>
       </thead>
       <tbody>
           <tr>
               <th rowspan=3>Sit</th>
               <td>Dolor</td>
               <td class=numerical>03.788</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <td>Dolor</td>
               <td class=numerical>32.210</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <td>Dolor</td>
               <td class=numerical>47.797</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <th rowspan=2>Sit</th>
               <td>Dolor</td>
               <td class=numerical>09.640</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <td>Dolor</td>
               <td class=numerical>12.117</td>
               <td>Lorem</td>
           </tr>
       </tbody>
   </table>
 *
 */
table {
  width: 100%;
}

th,
td {
  padding: 6px;
  text-align: left;
}
@media screen and (min-width: 480px) {
  th,
td {
    padding: 12px;
  }
}

/**
 * Cell alignments
 */
[colspan] {
  text-align: center;
}

[colspan="1"] {
  text-align: left;
}

[rowspan] {
  vertical-align: middle;
}

[rowspan="1"] {
  vertical-align: top;
}

.numerical {
  text-align: right;
}

/**
 * In the HTML above we see several `col` elements with classes whose numbers
 * represent a percentage width for that column. We leave one column free of a
 * class so that column can soak up the effects of any accidental breakage in
 * the table.
 */
.t5 {
  width: 5%;
}

.t10 {
  width: 10%;
}

.t12 {
  width: 12.5%;
}

/* 1/8 */
.t15 {
  width: 15%;
}

.t20 {
  width: 20%;
}

.t25 {
  width: 25%;
}

/* 1/4 */
.t30 {
  width: 30%;
}

.t33 {
  width: 33.333%;
}

/* 1/3 */
.t35 {
  width: 35%;
}

.t37 {
  width: 37.5%;
}

/* 3/8 */
.t40 {
  width: 40%;
}

.t45 {
  width: 45%;
}

.t50 {
  width: 50%;
}

/* 1/2 */
.t55 {
  width: 55%;
}

.t60 {
  width: 60%;
}

.t62 {
  width: 62.5%;
}

/* 5/8 */
.t65 {
  width: 65%;
}

.t66 {
  width: 66.666%;
}

/* 2/3 */
.t70 {
  width: 70%;
}

.t75 {
  width: 75%;
}

/* 3/4*/
.t80 {
  width: 80%;
}

.t85 {
  width: 85%;
}

.t87 {
  width: 87.5%;
}

/* 7/8 */
.t90 {
  width: 90%;
}

.t95 {
  width: 95%;
}

/**
 * Bordered tables
 */
.table--bordered th,
.table--bordered td {
  border: 1px solid #ccc;
}
.table--bordered th:empty,
.table--bordered td:empty {
  border: none;
}
.table--bordered thead tr:last-child th {
  border-bottom-width: 2px;
}
.table--bordered tbody tr th:last-of-type {
  border-right-width: 2px;
}

/**
 * Striped tables
 */
.table--striped tbody tr:nth-of-type(odd) {
  background-color: #ffc;
  /* Override this color in your theme stylesheet */
}

/**
 * Data table
 */
.table--data {
  font: 12px/1.5 sans-serif;
}

/*------------------------------------*\
    $FORMS
\*------------------------------------*/
/**
 *
 * Demo: jsfiddle.net/inuitcss/MhHHU
 *
 */
fieldset {
  padding: 24px;
}

/**
 * Text inputs
 *
 * Instead of a `[type]` selector for each kind of form input, we just use a
 * class to target any/every one, e.g.:
   <input type=text class=text-input>
   <input type=email class=text-input>
   <input type=password class=text-input>
 *
 */
.text-input,
textarea {
  /**
   * Style these via your theme stylesheet.
   */
}

/**
 * Group sets of form fields in a list, e.g.:
 *
   <ul class=form-fields>
       <li>
           <label />
           <input />
       </li>
       <li>
           <label />
           <select />
       </li>
       <li>
           <label />
           <input />
       </li>
   </ul>
 *
 */
.form-fields {
  list-style: none;
  margin: 0;
}

.form-fields > li:last-child {
  margin-bottom: 0;
}

/**
 * Labels
 *
 * Define a `.label` class as well as a `label` element. This means we can apply
 * label-like styling to meta-labels for groups of options where a `label`
 * element is not suitable, e.g.:
 *
   <li>
       <span class=label>Select an option below:</span>
       <ul class="multi-list  four-cols">
           <li>
               <input /> <label />
           </li>
           <li>
               <input /> <label />
           </li>
           <li>
               <input /> <label />
           </li>
           <li>
               <input /> <label />
           </li>
       </ul>
   </li>
 *
 */
label,
.label {
  display: block;
}

/**
 * Extra help text in `label`s, e.g.:
 *
   <label>Card number <small class=additional>No spaces</small></label>
 *
 */
.additional {
  display: block;
  font-weight: normal;
}

/*
 * Groups of checkboxes and radios, e.g.:
 *
   <li>
       <ul class=check-list>
           <li>
               <input /> <label />
           </li>
           <li>
               <input /> <label />
           </li>
       </ul>
   </li>
 *
 */
.check-list {
  list-style: none;
  margin: 0;
}

/*
 * Labels in check-lists
 */
.check-label,
.check-list label,
.check-list .label {
  display: inline-block;
}

/**
 * Spoken forms are for forms that read like spoken word, e.g.:
 *
   <li class=spoken-form>
       Hello, my <label for=spoken-name>name</label> is
       <input type=text class=text-input id=spoken-name>. My home
       <label for=country>country</label> is
       <select id=country>
           <option>UK</option>
           <option>US</option>
           <option>Other</option>
       </select>
   </li>
 *
 */
.spoken-form label {
  display: inline-block;
  font: inherit;
}

/**
 * Extra help text displayed after a field when that field is in focus, e.g.:
 *
   <label for=email>Email:</label>
   <input type=email class=text-input id=email>
   <small class=extra-help>.edu emails only</small>
 *
 * We leave the help text in the document flow and merely set it to
 * `visibility:hidden;`. This means that it won’t interfere with anything once
 * it reappears.
 *
 */
/*small*/
.extra-help {
  display: inline-block;
  visibility: hidden;
}

.text-input:active + .extra-help,
.text-input:focus + .extra-help {
  visibility: visible;
}

/**
 * Objects and abstractions
 */
/*------------------------------------*\
    $GRIDS
\*------------------------------------*/
/**
 * Fluid and nestable grid system, e.g.:
 *
   <div class="grid">

       <div class="grid__item  one-third">
           <p>One third grid</p>
       </div><!--

    --><div class="grid__item  two-thirds">
           <p>Two thirds grid</p>
       </div><!--

    --><div class="grid__item  one-half">
           <p>One half grid</p>
       </div><!--

    --><div class="grid__item  one-quarter">
           <p>One quarter grid</p>
       </div><!--

    --><div class="grid__item  one-quarter">
           <p>One quarter grid</p>
       </div>

   </div>
 *
 * Demo: jsfiddle.net/inuitcss/CLYUC
 *
 */
/**
 * Grid wrapper
 */
.grid {
  margin-left: -24px;
  list-style: none;
  margin-bottom: 0;
}

/**
 * Very infrequently occuring grid wrappers as children of grid wrappers.
 */
.grid > .grid {
  margin-left: 0;
}

/**
 * Grid
 */
.grid__item {
  display: inline-block;
  width: 100%;
  padding-left: 24px;
  vertical-align: top;
}

/*------------------------------------*\
    $COLUMNS
\*------------------------------------*/
/**
 * Here we can set elements in columns of text using CSS3, e.g.:
 *
   <p class=text-cols--2>
 *
 * Demo: jsfiddle.net/inuitcss/E26Yd
 *
 */
.text-cols--5, .text-cols--4, .text-cols--3, .text-cols--2 {
  -webkit-column-gap: 24px;
  -moz-column-gap: 24px;
  -ms-column-gap: 24px;
  -o-column-gap: 24px;
  column-gap: 24px;
}

.text-cols--2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  -ms-column-count: 2;
  -o-column-count: 2;
  column-count: 2;
}

.text-cols--3 {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  -ms-column-count: 3;
  -o-column-count: 3;
  column-count: 3;
}

.text-cols--4 {
  -webkit-column-count: 4;
  -moz-column-count: 4;
  -ms-column-count: 4;
  -o-column-count: 4;
  column-count: 4;
}

.text-cols--5 {
  -webkit-column-count: 5;
  -moz-column-count: 5;
  -ms-column-count: 5;
  -o-column-count: 5;
  column-count: 5;
}

/*------------------------------------*\
    $NAV
\*------------------------------------*/
/**
 * Nav abstraction as per: csswizardry.com/2011/09/the-nav-abstraction
 * When used on an `ol` or `ul`, this class throws the list into horizontal mode
 * e.g.:
 *
   <ul class=nav>
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 * Demo: jsfiddle.net/inuitcss/Vnph4
 *
 */
.nav {
  list-style: none;
  margin-left: 0;
}
.nav > li,
.nav > li > a {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

/**
 * `.nav--stacked` extends `.nav` and throws the list into vertical mode, e.g.:
 *
   <ul class="nav  nav--stacked">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 */
.nav--stacked > li {
  display: list-item;
}
.nav--stacked > li > a {
  display: block;
}

/**
 * `.nav--banner` extends `.nav` and centres the list, e.g.:
 *
   <ul class="nav  nav--banner">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 */
.nav--banner {
  text-align: center;
}

/**
 * Give nav links a big, blocky hit area. Extends `.nav`, e.g.:
 *
   <ul class="nav  nav--block">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 */
.nav--block {
  line-height: 1;
  /**
   * Remove whitespace caused by `inline-block`.
   */
  letter-spacing: -0.31em;
  word-spacing: -0.43em;
  white-space: nowrap;
}
.nav--block > li {
  letter-spacing: normal;
  word-spacing: normal;
}
.nav--block > li > a {
  padding: 12px;
}

/**
 * Force a nav to occupy 100% of the available width of its parent. Extends
 * `.nav`, e.g.:
 *
   <ul class="nav  nav--fit">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 * Thanks to @pimpl for this idea!
 */
.nav--fit {
  display: table;
  width: 100%;
}
.nav--fit > li {
  display: table-cell;
}
.nav--fit > li > a {
  display: block;
}

/**
 * Make a list of keywords. Extends `.nav`, e.g.:
 *
   `<ul class="nav  nav--keywords>`
 *
 */
.nav--keywords > li:after {
  content: "," " ";
}
.nav--keywords > li:last-child:after {
  display: none;
}

/*------------------------------------*\
    $PAGINATION
\*------------------------------------*/
/**
 * Basic pagination object, extends `.nav`.
 * Requires some funky commenting to collapse any white-space caused by the
 * `display:inline-block;` rules.
 *
   <ol class="nav  pagination">
       <li class=pagination__first>First</li>
       <li class=pagination__prev>Previous</li>
       <li><a href=/page/1>1</a></li>
       <li><a href=/page/2>2</a></li>
       <li class=current><a href=/page/3>3</a></li>
       <li><a href=/page/4>4</a></li>
       <li><a href=/page/5>5</a></li>
       <li class=pagination__next><a href=/page/next>Next</a></li>
       <li class=pagination__last><a href=/page/last>Last</a></li>
   </ol>
 *
 * Demo: jsfiddle.net/inuitcss/9Y6PU
 *
 */
.pagination {
  text-align: center;
  /**
   * Remove whitespace caused by `inline-block`.
   */
  letter-spacing: -0.31em;
  word-spacing: -0.43em;
}

.pagination > li {
  padding: 12px;
  letter-spacing: normal;
  word-spacing: normal;
}

.pagination > li > a {
  padding: 12px;
  margin: -12px;
}

.pagination__first a:before {
  content: "«" " ";
}

.pagination__last a:after {
  content: " " "»";
}

/*------------------------------------*\
    $BREADCRUMB
\*------------------------------------*/
/**
 * Simple breadcrumb styling to apply to (ordered) lists. Extends `.nav`, e.g.:
 *
   <ol class="nav  breadcrumb">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>The Board</a></li>
       <li class=current><a href=#>Directors</a></li>
   </ol>
 *
 * Demo: jsfiddle.net/inuitcss/rkAY9
 *
 */
.breadcrumb > li + li:before {
  content: "»" " ";
}

/**
 * For denoting a path-like structure, GitHub style, e.g.:
 *
   <ol class="nav  breadcrumb--path">
       <li class=breadcrumb__root><a href=#>inuit.css</a></li>
       <li><a href=#>inuit.css</a></li>
       <li><a href=#>partials</a></li>
       <li class=current><a href=#>objects</a></li>
   </ol>
 *
 */
.breadcrumb--path > li + li:before {
  content: "/" " ";
}

/**
 * Assign a delimiter on the fly through a data attribute, e.g.:
 *
   <ol class="nav  breadcrumb">
       <li><a href=#>Home</a></li>
       <li data-breadcrumb="|"><a href=#>About</a></li>
       <li data-breadcrumb="|"><a href=#>The Board</a></li>
       <li data-breadcrumb="|" class=current><a href=#>Directors</a></li>
   </ol>
 *
 */
.breadcrumb > li + li[data-breadcrumb]:before {
  content: attr(data-breadcrumb) " ";
}

/**
 * Denote the root of the tree.
 */
.breadcrumb__root {
  font-weight: bold;
}

/*------------------------------------*\
    $MEDIA
\*------------------------------------*/
/**
 * Place any image- and text-like content side-by-side, as per:
 * stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code
 * E.g.:
 *
   <div class=media>
       <img src=http://placekitten.com/200/300 alt="" class=media__img>
       <p class=media__body>Lorem ipsum dolor sit amet, consectetur adipisicing elit,
       sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
   </div>
 *
 * Demo: jsfiddle.net/inuitcss/cf4Qs
 *
 */
.media {
  display: block;
}

.media__img {
  float: left;
  margin-right: 24px;
}

/**
 * Reversed image location (right instead of left).
 */
.media__img--rev {
  float: right;
  margin-left: 24px;
}

.media__img img,
.media__img--rev img {
  display: block;
}

.media__body {
  overflow: hidden;
}

.media__body,
.media__body > :last-child {
  margin-bottom: 0;
}

/**
 * `.img`s in `.islet`s need an appropriately sized margin.
 */
.islet .media__img {
  margin-right: 12px;
}

.islet .media__img--rev {
  margin-left: 12px;
}

/*------------------------------------*\
    $BLOCK-LIST
\*------------------------------------*/
/**
 * Create big blocky lists of content, e.g.:
 *
   <ul class=block-list>
      <li>Foo</li>
      <li>Bar</li>
      <li>Baz</li>
      <li><a href=# class=block-list__link>Foo Bar Baz</a></li>
   </ul>
 *
 * Extend this object in your theme stylesheet.
 *
 * Demo: jsfiddle.net/inuitcss/hR57q
 *
 */
.block-list, .matrix,
.block-list > li,
.matrix > li {
  border: 0 solid #ccc;
}

.block-list, .matrix {
  list-style: none;
  margin-left: 0;
  border-top-width: 1px;
}
.block-list > li, .matrix > li {
  border-bottom-width: 1px;
  padding: 12px;
}

.block-list__link, .matrix__link {
  display: block;
  padding: 12px;
  margin: -12px;
}

/*------------------------------------*\
    $MATRIX
\*------------------------------------*/
/**
 * Create a grid of items out of a single list, e.g.:
 *
   <ul class="matrix  three-cols">
       <li class=all-cols>Lorem</li>
       <li>Ipsum <a href=#>dolor</a></li>
       <li><a href=# class=matrix__link>Sit</a></li>
       <li>Amet</li>
       <li class=all-cols>Consectetuer</li>
   </ul>
 *
 * Extend this object in your theme stylesheet.
 *
 * Demo: jsfiddle.net/inuitcss/Y2zrU
 *
 */
.matrix {
  border-left-width: 1px;
}
.matrix > li {
  float: left;
  border-right-width: 1px;
}

/**
 * The `.multi-list` object is a lot like the `.matrix` object only without the
 * blocky borders and padding.
 *
   <ul class="multi-list  four-cols">
       <li>Lorem</li>
       <li>Ipsum</li>
       <li>Dolor</li>
       <li>Sit</li>
   </ul>
 *
 * Demo: jsfiddle.net/inuitcss/Y2zrU
 *
 */
.multi-list {
  list-style: none;
  margin-left: 0;
}

.multi-list > li {
  float: left;
}

/**
 * Apply these classes alongside the `.matrix` or `.multi-list` classes on
 * lists to determine how wide their columns are.
 */
.two-cols > li {
  width: 50%;
}

.three-cols > li {
  width: 33.333%;
}

.four-cols > li {
  width: 25%;
}

.five-cols > li {
  width: 20%;
}

/**
 * Unfortunately we have to qualify this selector in order to bring its
 * specificity above the `.[number]-cols > li` selectors above.
 */
.matrix > .all-cols,
.multi-list > .all-cols {
  width: 100%;
}

/**
 * Style trumps; helper and brand classes
 */
/*------------------------------------*\
    $WIDTHS
\*------------------------------------*/
/**
 * Sizes in human readable format. These are used in conjunction with other
 * objects and abstractions found in inuit.css, most commonly the grid system
 * and faux flexbox.
 *
 * We have a mixin to generate our widths and their breakpoint-specific
 * variations.
 */
/**
* Whole
*/
.one-whole {
  width: 100%;
}

/**
* Halves
*/
.one-half, .six-twelfths, .five-tenths, .four-eighths, .three-sixths, .two-quarters {
  width: 50%;
}

/**
* Thirds
*/
.one-third, .four-twelfths, .two-sixths {
  width: 33.333%;
}

.two-thirds, .eight-twelfths, .four-sixths {
  width: 66.666%;
}

/**
* Quarters
*/
.one-quarter, .three-twelfths, .two-eighths {
  width: 25%;
}

.three-quarters, .nine-twelfths, .six-eighths {
  width: 75%;
}

/**
* Fifths
*/
.one-fifth, .two-tenths {
  width: 20%;
}

.two-fifths, .four-tenths {
  width: 40%;
}

.three-fifths, .six-tenths {
  width: 60%;
}

.four-fifths, .eight-tenths {
  width: 80%;
}

/**
* Sixths
*/
.one-sixth, .two-twelfths {
  width: 16.666%;
}

.five-sixths, .ten-twelfths {
  width: 83.333%;
}

/**
* Eighths
*/
.one-eighth {
  width: 12.5%;
}

.three-eighths {
  width: 37.5%;
}

.five-eighths {
  width: 62.5%;
}

.seven-eighths {
  width: 87.5%;
}

/**
* Tenths
*/
.one-tenth {
  width: 10%;
}

.three-tenths {
  width: 30%;
}

.seven-tenths {
  width: 70%;
}

.nine-tenths {
  width: 90%;
}

/**
* Twelfths
*/
.one-twelfth {
  width: 8.333%;
}

.five-twelfths {
  width: 41.666%;
}

.seven-twelfths {
  width: 58.333%;
}

.eleven-twelfths {
  width: 91.666%;
}

/**
 * If you have set `$responsive` to ‘true’ in `_vars.scss` then you now have
 * access to these classes. You can define at which breakpoint you’d like an
 * element to be a certain size, e.g.:
 *
 * `<div class="g  one-quarter  lap-one-half  palm-one-whole"> ... </div>`
 *
 * This would create a `div` that, at ‘desktop’ sizes, takes up a quarter of the
 * horizontal space, a half of that space at ‘tablet’ sizes, and goes full width
 * at ‘mobile’ sizes.
 *
 * Demo: jsfiddle.net/inuitcss/WS4Ge
 *
 */
@media only screen and (max-width: 639px) {
  /**
  * Whole
  */
  .palm-one-whole {
    width: 100%;
  }

  /**
  * Halves
  */
  .palm-one-half, .palm-six-twelfths, .palm-five-tenths, .palm-four-eighths, .palm-three-sixths, .palm-two-quarters {
    width: 50%;
  }

  /**
  * Thirds
  */
  .palm-one-third, .palm-four-twelfths, .palm-two-sixths {
    width: 33.333%;
  }

  .palm-two-thirds, .palm-eight-twelfths, .palm-four-sixths {
    width: 66.666%;
  }

  /**
  * Quarters
  */
  .palm-one-quarter, .palm-three-twelfths, .palm-two-eighths {
    width: 25%;
  }

  .palm-three-quarters, .palm-nine-twelfths, .palm-six-eighths {
    width: 75%;
  }

  /**
  * Fifths
  */
  .palm-one-fifth, .palm-two-tenths {
    width: 20%;
  }

  .palm-two-fifths, .palm-four-tenths {
    width: 40%;
  }

  .palm-three-fifths, .palm-six-tenths {
    width: 60%;
  }

  .palm-four-fifths, .palm-eight-tenths {
    width: 80%;
  }

  /**
  * Sixths
  */
  .palm-one-sixth, .palm-two-twelfths {
    width: 16.666%;
  }

  .palm-five-sixths, .palm-ten-twelfths {
    width: 83.333%;
  }

  /**
  * Eighths
  */
  .palm-one-eighth {
    width: 12.5%;
  }

  .palm-three-eighths {
    width: 37.5%;
  }

  .palm-five-eighths {
    width: 62.5%;
  }

  .palm-seven-eighths {
    width: 87.5%;
  }

  /**
  * Tenths
  */
  .palm-one-tenth {
    width: 10%;
  }

  .palm-three-tenths {
    width: 30%;
  }

  .palm-seven-tenths {
    width: 70%;
  }

  .palm-nine-tenths {
    width: 90%;
  }

  /**
  * Twelfths
  */
  .palm-one-twelfth {
    width: 8.333%;
  }

  .palm-five-twelfths {
    width: 41.666%;
  }

  .palm-seven-twelfths {
    width: 58.333%;
  }

  .palm-eleven-twelfths {
    width: 91.666%;
  }
}
@media only screen and (min-width: 640px) and (max-width: 1199px) {
  /**
  * Whole
  */
  .lap-one-whole {
    width: 100%;
  }

  /**
  * Halves
  */
  .lap-one-half, .lap-six-twelfths, .lap-five-tenths, .lap-four-eighths, .lap-three-sixths, .lap-two-quarters {
    width: 50%;
  }

  /**
  * Thirds
  */
  .lap-one-third, .lap-four-twelfths, .lap-two-sixths {
    width: 33.333%;
  }

  .lap-two-thirds, .lap-eight-twelfths, .lap-four-sixths {
    width: 66.666%;
  }

  /**
  * Quarters
  */
  .lap-one-quarter, .lap-three-twelfths, .lap-two-eighths {
    width: 25%;
  }

  .lap-three-quarters, .lap-nine-twelfths, .lap-six-eighths {
    width: 75%;
  }

  /**
  * Fifths
  */
  .lap-one-fifth, .lap-two-tenths {
    width: 20%;
  }

  .lap-two-fifths, .lap-four-tenths {
    width: 40%;
  }

  .lap-three-fifths, .lap-six-tenths {
    width: 60%;
  }

  .lap-four-fifths, .lap-eight-tenths {
    width: 80%;
  }

  /**
  * Sixths
  */
  .lap-one-sixth, .lap-two-twelfths {
    width: 16.666%;
  }

  .lap-five-sixths, .lap-ten-twelfths {
    width: 83.333%;
  }

  /**
  * Eighths
  */
  .lap-one-eighth {
    width: 12.5%;
  }

  .lap-three-eighths {
    width: 37.5%;
  }

  .lap-five-eighths {
    width: 62.5%;
  }

  .lap-seven-eighths {
    width: 87.5%;
  }

  /**
  * Tenths
  */
  .lap-one-tenth {
    width: 10%;
  }

  .lap-three-tenths {
    width: 30%;
  }

  .lap-seven-tenths {
    width: 70%;
  }

  .lap-nine-tenths {
    width: 90%;
  }

  /**
  * Twelfths
  */
  .lap-one-twelfth {
    width: 8.333%;
  }

  .lap-five-twelfths {
    width: 41.666%;
  }

  .lap-seven-twelfths {
    width: 58.333%;
  }

  .lap-eleven-twelfths {
    width: 91.666%;
  }
}
@media only screen and (min-width: 640px) {
  /**
  * Whole
  */
  .lap-and-up-one-whole {
    width: 100%;
  }

  /**
  * Halves
  */
  .lap-and-up-one-half, .lap-and-up-six-twelfths, .lap-and-up-five-tenths, .lap-and-up-four-eighths, .lap-and-up-three-sixths, .lap-and-up-two-quarters {
    width: 50%;
  }

  /**
  * Thirds
  */
  .lap-and-up-one-third, .lap-and-up-four-twelfths, .lap-and-up-two-sixths {
    width: 33.333%;
  }

  .lap-and-up-two-thirds, .lap-and-up-eight-twelfths, .lap-and-up-four-sixths {
    width: 66.666%;
  }

  /**
  * Quarters
  */
  .lap-and-up-one-quarter, .lap-and-up-three-twelfths, .lap-and-up-two-eighths {
    width: 25%;
  }

  .lap-and-up-three-quarters, .lap-and-up-nine-twelfths, .lap-and-up-six-eighths {
    width: 75%;
  }

  /**
  * Fifths
  */
  .lap-and-up-one-fifth, .lap-and-up-two-tenths {
    width: 20%;
  }

  .lap-and-up-two-fifths, .lap-and-up-four-tenths {
    width: 40%;
  }

  .lap-and-up-three-fifths, .lap-and-up-six-tenths {
    width: 60%;
  }

  .lap-and-up-four-fifths, .lap-and-up-eight-tenths {
    width: 80%;
  }

  /**
  * Sixths
  */
  .lap-and-up-one-sixth, .lap-and-up-two-twelfths {
    width: 16.666%;
  }

  .lap-and-up-five-sixths, .lap-and-up-ten-twelfths {
    width: 83.333%;
  }

  /**
  * Eighths
  */
  .lap-and-up-one-eighth {
    width: 12.5%;
  }

  .lap-and-up-three-eighths {
    width: 37.5%;
  }

  .lap-and-up-five-eighths {
    width: 62.5%;
  }

  .lap-and-up-seven-eighths {
    width: 87.5%;
  }

  /**
  * Tenths
  */
  .lap-and-up-one-tenth {
    width: 10%;
  }

  .lap-and-up-three-tenths {
    width: 30%;
  }

  .lap-and-up-seven-tenths {
    width: 70%;
  }

  .lap-and-up-nine-tenths {
    width: 90%;
  }

  /**
  * Twelfths
  */
  .lap-and-up-one-twelfth {
    width: 8.333%;
  }

  .lap-and-up-five-twelfths {
    width: 41.666%;
  }

  .lap-and-up-seven-twelfths {
    width: 58.333%;
  }

  .lap-and-up-eleven-twelfths {
    width: 91.666%;
  }
}
@media only screen and (max-width: 1199px) {
  /**
  * Whole
  */
  .portable-one-whole {
    width: 100%;
  }

  /**
  * Halves
  */
  .portable-one-half, .portable-six-twelfths, .portable-five-tenths, .portable-four-eighths, .portable-three-sixths, .portable-two-quarters {
    width: 50%;
  }

  /**
  * Thirds
  */
  .portable-one-third, .portable-four-twelfths, .portable-two-sixths {
    width: 33.333%;
  }

  .portable-two-thirds, .portable-eight-twelfths, .portable-four-sixths {
    width: 66.666%;
  }

  /**
  * Quarters
  */
  .portable-one-quarter, .portable-three-twelfths, .portable-two-eighths {
    width: 25%;
  }

  .portable-three-quarters, .portable-nine-twelfths, .portable-six-eighths {
    width: 75%;
  }

  /**
  * Fifths
  */
  .portable-one-fifth, .portable-two-tenths {
    width: 20%;
  }

  .portable-two-fifths, .portable-four-tenths {
    width: 40%;
  }

  .portable-three-fifths, .portable-six-tenths {
    width: 60%;
  }

  .portable-four-fifths, .portable-eight-tenths {
    width: 80%;
  }

  /**
  * Sixths
  */
  .portable-one-sixth, .portable-two-twelfths {
    width: 16.666%;
  }

  .portable-five-sixths, .portable-ten-twelfths {
    width: 83.333%;
  }

  /**
  * Eighths
  */
  .portable-one-eighth {
    width: 12.5%;
  }

  .portable-three-eighths {
    width: 37.5%;
  }

  .portable-five-eighths {
    width: 62.5%;
  }

  .portable-seven-eighths {
    width: 87.5%;
  }

  /**
  * Tenths
  */
  .portable-one-tenth {
    width: 10%;
  }

  .portable-three-tenths {
    width: 30%;
  }

  .portable-seven-tenths {
    width: 70%;
  }

  .portable-nine-tenths {
    width: 90%;
  }

  /**
  * Twelfths
  */
  .portable-one-twelfth {
    width: 8.333%;
  }

  .portable-five-twelfths {
    width: 41.666%;
  }

  .portable-seven-twelfths {
    width: 58.333%;
  }

  .portable-eleven-twelfths {
    width: 91.666%;
  }
}
@media only screen and (min-width: 1200px) {
  /**
  * Whole
  */
  .desk-one-whole {
    width: 100%;
  }

  /**
  * Halves
  */
  .desk-one-half, .desk-six-twelfths, .desk-five-tenths, .desk-four-eighths, .desk-three-sixths, .desk-two-quarters {
    width: 50%;
  }

  /**
  * Thirds
  */
  .desk-one-third, .desk-four-twelfths, .desk-two-sixths {
    width: 33.333%;
  }

  .desk-two-thirds, .desk-eight-twelfths, .desk-four-sixths {
    width: 66.666%;
  }

  /**
  * Quarters
  */
  .desk-one-quarter, .desk-three-twelfths, .desk-two-eighths {
    width: 25%;
  }

  .desk-three-quarters, .desk-nine-twelfths, .desk-six-eighths {
    width: 75%;
  }

  /**
  * Fifths
  */
  .desk-one-fifth, .desk-two-tenths {
    width: 20%;
  }

  .desk-two-fifths, .desk-four-tenths {
    width: 40%;
  }

  .desk-three-fifths, .desk-six-tenths {
    width: 60%;
  }

  .desk-four-fifths, .desk-eight-tenths {
    width: 80%;
  }

  /**
  * Sixths
  */
  .desk-one-sixth, .desk-two-twelfths {
    width: 16.666%;
  }

  .desk-five-sixths, .desk-ten-twelfths {
    width: 83.333%;
  }

  /**
  * Eighths
  */
  .desk-one-eighth {
    width: 12.5%;
  }

  .desk-three-eighths {
    width: 37.5%;
  }

  .desk-five-eighths {
    width: 62.5%;
  }

  .desk-seven-eighths {
    width: 87.5%;
  }

  /**
  * Tenths
  */
  .desk-one-tenth {
    width: 10%;
  }

  .desk-three-tenths {
    width: 30%;
  }

  .desk-seven-tenths {
    width: 70%;
  }

  .desk-nine-tenths {
    width: 90%;
  }

  /**
  * Twelfths
  */
  .desk-one-twelfth {
    width: 8.333%;
  }

  .desk-five-twelfths {
    width: 41.666%;
  }

  .desk-seven-twelfths {
    width: 58.333%;
  }

  .desk-eleven-twelfths {
    width: 91.666%;
  }
}
/**
 * If you have set the additional `$responsive-extra` variable to ‘true’ in
 * `_vars.scss` then you now have access to the following class available to
 * accomodate much larger screen resolutions.
 */
@media only screen and (min-width: 1440px) {
  /**
  * Whole
  */
  .desk-wide-one-whole {
    width: 100%;
  }

  /**
  * Halves
  */
  .desk-wide-one-half, .desk-wide-six-twelfths, .desk-wide-five-tenths, .desk-wide-four-eighths, .desk-wide-three-sixths, .desk-wide-two-quarters {
    width: 50%;
  }

  /**
  * Thirds
  */
  .desk-wide-one-third, .desk-wide-four-twelfths, .desk-wide-two-sixths {
    width: 33.333%;
  }

  .desk-wide-two-thirds, .desk-wide-eight-twelfths, .desk-wide-four-sixths {
    width: 66.666%;
  }

  /**
  * Quarters
  */
  .desk-wide-one-quarter, .desk-wide-three-twelfths, .desk-wide-two-eighths {
    width: 25%;
  }

  .desk-wide-three-quarters, .desk-wide-nine-twelfths, .desk-wide-six-eighths {
    width: 75%;
  }

  /**
  * Fifths
  */
  .desk-wide-one-fifth, .desk-wide-two-tenths {
    width: 20%;
  }

  .desk-wide-two-fifths, .desk-wide-four-tenths {
    width: 40%;
  }

  .desk-wide-three-fifths, .desk-wide-six-tenths {
    width: 60%;
  }

  .desk-wide-four-fifths, .desk-wide-eight-tenths {
    width: 80%;
  }

  /**
  * Sixths
  */
  .desk-wide-one-sixth, .desk-wide-two-twelfths {
    width: 16.666%;
  }

  .desk-wide-five-sixths, .desk-wide-ten-twelfths {
    width: 83.333%;
  }

  /**
  * Eighths
  */
  .desk-wide-one-eighth {
    width: 12.5%;
  }

  .desk-wide-three-eighths {
    width: 37.5%;
  }

  .desk-wide-five-eighths {
    width: 62.5%;
  }

  .desk-wide-seven-eighths {
    width: 87.5%;
  }

  /**
  * Tenths
  */
  .desk-wide-one-tenth {
    width: 10%;
  }

  .desk-wide-three-tenths {
    width: 30%;
  }

  .desk-wide-seven-tenths {
    width: 70%;
  }

  .desk-wide-nine-tenths {
    width: 90%;
  }

  /**
  * Twelfths
  */
  .desk-wide-one-twelfth {
    width: 8.333%;
  }

  .desk-wide-five-twelfths {
    width: 41.666%;
  }

  .desk-wide-seven-twelfths {
    width: 58.333%;
  }

  .desk-wide-eleven-twelfths {
    width: 91.666%;
  }
}
/* endif */
/*------------------------------------*\
    $PUSH
\*------------------------------------*/
/**
 * Push classes, to move grid items over to the right by certain amounts.
 */
/*------------------------------------*\
    $PULL
\*------------------------------------*/
/**
 * Pull classes, to move grid items over to the right by certain amounts.
 */
/*------------------------------------*\
    $BRAND
\*------------------------------------*/
/**
 * `.brand` is a quick and simple way to apply your brand face and/or color to
 * any element using a handy helper class.
 */
.brand {
  font-family: "Helvetica Neue", sans-serif!important;
  color: #F0EEE7!important;
}

.brand-face {
  font-family: "Helvetica Neue", sans-serif!important;
}

.brand-color,
.brand-colour {
  color: #F0EEE7!important;
}

/*------------------------------------*\
    $HELPER
\*------------------------------------*/
/**
 * A series of helper classes to use arbitrarily. Only use a helper class if an
 * element/component doesn’t already have a class to which you could apply this
 * styling, e.g. if you need to float `.main-nav` left then add `float:left;` to
 * that ruleset as opposed to adding the `.float--left` class to the markup.
 *
 * A lot of these classes carry `!important` as you will always want them to win
 * out over other selectors.
 */
/**
 * Add/remove floats
 */
.float--right {
  float: right !important;
}

.float--left {
  float: left !important;
}

.float--none {
  float: none !important;
}

/**
 * Text alignment
 */
.text--left {
  text-align: left !important;
}

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

.text--right {
  text-align: right !important;
}

/**
 * Font weights
 */
.weight--light {
  font-weight: 300 !important;
}

.weight--normal {
  font-weight: 400 !important;
}

.weight--semibold {
  font-weight: 600 !important;
}

/**
 * Add/remove margins
 */
.push {
  margin: 24px !important;
}

.push--top {
  margin-top: 24px !important;
}

.push--right {
  margin-right: 24px !important;
}

.push--bottom {
  margin-bottom: 24px !important;
}

.push--left {
  margin-left: 24px !important;
}

.push--ends {
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

.push--sides {
  margin-right: 24px !important;
  margin-left: 24px !important;
}

.push-half {
  margin: 12px !important;
}

.push-half--top {
  margin-top: 12px !important;
}

.push-half--right {
  margin-right: 12px !important;
}

.push-half--bottom {
  margin-bottom: 12px !important;
}

.push-half--left {
  margin-left: 12px !important;
}

.push-half--ends {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
}

.push-half--sides {
  margin-right: 12px !important;
  margin-left: 12px !important;
}

.flush {
  margin: 0 !important;
}

.flush--top {
  margin-top: 0 !important;
}

.flush--right {
  margin-right: 0 !important;
}

.flush--bottom {
  margin-bottom: 0 !important;
}

.flush--left {
  margin-left: 0 !important;
}

.flush--ends {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.flush--sides {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

/**
 * Add/remove paddings
 */
.soft {
  padding: 24px !important;
}

.soft--top {
  padding-top: 24px !important;
}

.soft--right {
  padding-right: 24px !important;
}

.soft--bottom {
  padding-bottom: 24px !important;
}

.soft--left {
  padding-left: 24px !important;
}

.soft--ends {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.soft--sides {
  padding-right: 24px !important;
  padding-left: 24px !important;
}

.soft-half {
  padding: 12px !important;
}

.soft-half--top {
  padding-top: 12px !important;
}

.soft-half--right {
  padding-right: 12px !important;
}

.soft-half--bottom {
  padding-bottom: 12px !important;
}

.soft-half--left {
  padding-left: 12px !important;
}

.soft-half--ends {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.soft-half--sides {
  padding-right: 12px !important;
  padding-left: 12px !important;
}

.hard {
  padding: 0 !important;
}

.hard--top {
  padding-top: 0 !important;
}

.hard--right {
  padding-right: 0 !important;
}

.hard--bottom {
  padding-bottom: 0 !important;
}

.hard--left {
  padding-left: 0 !important;
}

.hard--ends {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.hard--sides {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

/**
 * Pull items full width of `.island` parents.
 */
.full-bleed {
  margin-right: -24px !important;
  margin-left: -24px !important;
}
.islet .full-bleed {
  margin-right: -12px !important;
  margin-left: -12px !important;
}

/**
 * Add a help cursor to any element that gives the user extra information on
 * `:hover`.
 */
.informative {
  cursor: help !important;
}

/**
 * Mute an object by reducing its opacity.
 */
.muted {
  opacity: 0.5 !important;
  filter: alpha(opacity=50) !important;
}

/**
 * Align items to the right where they imply progression/movement forward, e.g.:
 *
   <p class=proceed><a href=#>Read more...</a></p>
 *
 */
.proceed {
  text-align: right !important;
}

/**
 * Add a right-angled quote to links that imply movement, e.g.:
 *
   <a href=# class=go>Read more</a>
 *
 */
.go:after {
  content: " " "»" !important;
}

/**
 * Apply capital case to an element (usually a `strong`).
 */
.caps {
  text-transform: uppercase !important;
}

/**
 * Hide content off-screen without resorting to `display:none;`, also provide
 * breakpoint specific hidden elements.
 */
.accessibility,
.visuallyhidden {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
}

@media only screen and (max-width: 639px) {
  .accessibility--palm,
.visuallyhidden--palm {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
  }
}
@media only screen and (min-width: 640px) and (max-width: 1199px) {
  .accessibility--lap,
.visuallyhidden--lap {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
  }
}
@media only screen and (min-width: 640px) {
  .accessibility--lap-and-up,
.visuallyhidden--lap-and-up {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
  }
}
@media only screen and (max-width: 1199px) {
  .accessibility--portable,
.visuallyhidden--portable {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
  }
}
@media only screen and (min-width: 1200px) {
  .accessibility--desk,
.visuallyhidden--desk {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
  }
}
@media only screen and (min-width: 1440px) {
  .accessibility--desk-wide,
.visuallyhidden--desk-wide {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
  }
}
/* endif */
/*------------------------------------*\
    $CSSWIZARDRY-GRIDS
\*------------------------------------*/
/**
 * CONTENTS
 * GRID SETUP...........Build the grid structure.
 */
/**
 * Reversed grids allow you to structure your source in the opposite order to
 * how your rendered layout will appear. Extends `.grid`.
 */
.grid--rev {
  direction: rtl;
  text-align: left;
}
.grid--rev > .grid__item {
  direction: ltr;
  text-align: left;
}

/**
 * Gutterless grids have all the properties of regular grids, minus any spacing.
 * Extends `.grid`.
 */
.grid--full {
  margin-left: 0;
}
.grid--full > .grid__item {
  padding-left: 0;
}

/**
 * Align the entire grid to the right. Extends `.grid`.
 */
.grid--right {
  text-align: right;
}
.grid--right > .grid__item {
  text-align: left;
}

/**
 * Centered grids align grid items centrally without needing to use push or pull
 * classes. Extends `.grid`.
 */
.grid--center {
  text-align: center;
}
.grid--center > .grid__item {
  text-align: left;
}

/**
 * Align grid cells vertically (`.grid--middle` or `.grid--bottom`). Extends
 * `.grid`.
 */
.grid--middle > .grid__item {
  vertical-align: middle;
}

.grid--bottom > .grid__item {
  vertical-align: bottom;
}

/**
 * Create grids with narrower gutters. Extends `.grid`.
 */
.grid--narrow {
  margin-left: -12px;
}
.grid--narrow > .grid__item {
  padding-left: 12px;
}

/**
 * Create grids with wider gutters. Extends `.grid`.
 */
.grid--wide {
  margin-left: -48px;
}
.grid--wide > .grid__item {
  padding-left: 48px;
}

/*------------------------------------*\
    Animations
\*------------------------------------*/
/**
 * Timing-functions
 */
.delay-none {
  -webkit-animation-delay: 0s !important;
  -moz-animation-delay: 0s !important;
  -ms-animation-delay: 0s !important;
  -o-animation-delay: 0s !important;
  animation-delay: 0s !important;
}

.delay-half {
  -webkit-animation-delay: 0.5s !important;
  -moz-animation-delay: 0.5s !important;
  -ms-animation-delay: 0.5s !important;
  -o-animation-delay: 0.5s !important;
  animation-delay: 0.5s !important;
}

.delay-one {
  -webkit-animation-delay: 1s !important;
  -moz-animation-delay: 1s !important;
  -ms-animation-delay: 1s !important;
  -o-animation-delay: 1s !important;
  animation-delay: 1s !important;
}

.delay-one-half {
  -webkit-animation-delay: 1.5s !important;
  -moz-animation-delay: 1.5s !important;
  -ms-animation-delay: 1.5s !important;
  -o-animation-delay: 1.5s !important;
  animation-delay: 1.5s !important;
}

.delay-two {
  -webkit-animation-delay: 2s !important;
  -moz-animation-delay: 2s !important;
  -ms-animation-delay: 2s !important;
  -o-animation-delay: 2s !important;
  animation-delay: 2s !important;
}

.delay-two-half {
  -webkit-animation-delay: 2.5s !important;
  -moz-animation-delay: 2.5s !important;
  -ms-animation-delay: 2.5s !important;
  -o-animation-delay: 2.5s !important;
  animation-delay: 2.5s !important;
}

.delay-three {
  -webkit-animation-delay: 3s !important;
  -moz-animation-delay: 3s !important;
  -ms-animation-delay: 3s !important;
  -o-animation-delay: 3s !important;
  animation-delay: 3s !important;
}

.delay-three-half {
  -webkit-animation-delay: 3.5s !important;
  -moz-animation-delay: 3.5s !important;
  -ms-animation-delay: 3.5s !important;
  -o-animation-delay: 3.5s !important;
  animation-delay: 3.5s !important;
}

/**
 * Animate.css by Dan Eden
 */
@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
  }
}
@-moz-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
  }
}
@-ms-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -ms-transform: translateY(0);
  }
  40% {
    -ms-transform: translateY(-30px);
  }
  60% {
    -ms-transform: translateY(-15px);
  }
}
@-o-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -o-transform: translateY(0);
  }
  40% {
    -o-transform: translateY(-30px);
  }
  60% {
    -o-transform: translateY(-15px);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
  }
  70% {
    -webkit-transform: scale(0.9);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes bounceIn {
  0% {
    opacity: 0;
    -moz-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -moz-transform: scale(1.05);
  }
  70% {
    -moz-transform: scale(0.9);
  }
  100% {
    -moz-transform: scale(1);
  }
}
@-ms-keyframes bounceIn {
  0% {
    opacity: 0;
    -ms-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -ms-transform: scale(1.05);
  }
  70% {
    -ms-transform: scale(0.9);
  }
  100% {
    -ms-transform: scale(1);
  }
}
@-o-keyframes bounceIn {
  0% {
    opacity: 0;
    -o-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -o-transform: scale(1.05);
  }
  70% {
    -o-transform: scale(0.9);
  }
  100% {
    -o-transform: scale(1);
  }
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
  }
  80% {
    -webkit-transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes bounceInDown {
  0% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateY(30px);
  }
  80% {
    -moz-transform: translateY(-10px);
  }
  100% {
    -moz-transform: translateY(0);
  }
}
@-ms-keyframes bounceInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateY(30px);
  }
  80% {
    -ms-transform: translateY(-10px);
  }
  100% {
    -ms-transform: translateY(0);
  }
}
@-o-keyframes bounceInDown {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateY(30px);
  }
  80% {
    -o-transform: translateY(-10px);
  }
  100% {
    -o-transform: translateY(0);
  }
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
  }
  80% {
    -webkit-transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(30px);
  }
  80% {
    -moz-transform: translateX(-10px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@-ms-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateX(30px);
  }
  80% {
    -ms-transform: translateX(-10px);
  }
  100% {
    -ms-transform: translateX(0);
  }
}
@-o-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateX(30px);
  }
  80% {
    -o-transform: translateX(-10px);
  }
  100% {
    -o-transform: translateX(0);
  }
}
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
  }
  80% {
    -webkit-transform: translateX(10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes bounceInRight {
  0% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(-30px);
  }
  80% {
    -moz-transform: translateX(10px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@-ms-keyframes bounceInRight {
  0% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateX(-30px);
  }
  80% {
    -ms-transform: translateX(10px);
  }
  100% {
    -ms-transform: translateX(0);
  }
}
@-o-keyframes bounceInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateX(-30px);
  }
  80% {
    -o-transform: translateX(10px);
  }
  100% {
    -o-transform: translateX(0);
  }
}
@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
  }
  80% {
    -webkit-transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes bounceInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateY(-30px);
  }
  80% {
    -moz-transform: translateY(10px);
  }
  100% {
    -moz-transform: translateY(0);
  }
}
@-ms-keyframes bounceInUp {
  0% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateY(-30px);
  }
  80% {
    -ms-transform: translateY(10px);
  }
  100% {
    -ms-transform: translateY(0);
  }
}
@-o-keyframes bounceInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateY(-30px);
  }
  80% {
    -o-transform: translateY(10px);
  }
  100% {
    -o-transform: translateY(0);
  }
}
@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
}
@-moz-keyframes bounceOut {
  0% {
    -moz-transform: scale(1);
  }
  25% {
    -moz-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -moz-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -moz-transform: scale(0.3);
  }
}
@-ms-keyframes bounceOut {
  0% {
    -ms-transform: scale(1);
  }
  25% {
    -ms-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -ms-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -ms-transform: scale(0.3);
  }
}
@-o-keyframes bounceOut {
  0% {
    -o-transform: scale(1);
  }
  25% {
    -o-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -o-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -o-transform: scale(0.3);
  }
}
@keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}
@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@-moz-keyframes bounceOutDown {
  0% {
    -moz-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
}
@-ms-keyframes bounceOutDown {
  0% {
    -ms-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
}
@-o-keyframes bounceOutDown {
  0% {
    -o-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
}
@keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@-moz-keyframes bounceOutLeft {
  0% {
    -moz-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
}
@-ms-keyframes bounceOutLeft {
  0% {
    -ms-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
}
@-o-keyframes bounceOutLeft {
  0% {
    -o-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
}
@keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@-moz-keyframes bounceOutRight {
  0% {
    -moz-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
}
@-ms-keyframes bounceOutRight {
  0% {
    -ms-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
}
@-o-keyframes bounceOutRight {
  0% {
    -o-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
}
@keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@-moz-keyframes bounceOutUp {
  0% {
    -moz-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -moz-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
}
@-ms-keyframes bounceOutUp {
  0% {
    -ms-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(-2000px);
  }
}
@-o-keyframes bounceOutUp {
  0% {
    -o-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
}
@keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-ms-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInDown {
  0% {
    opacity: 0;
    -moz-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-ms-keyframes fadeInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-ms-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -ms-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -moz-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-ms-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -ms-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-ms-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInRight {
  0% {
    opacity: 0;
    -moz-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-ms-keyframes fadeInRight {
  0% {
    opacity: 0;
    -ms-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}
@-ms-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-ms-keyframes fadeInUp {
  0% {
    opacity: 0;
    -ms-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}
@-ms-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-ms-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-o-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
}
@-moz-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(20px);
  }
}
@-ms-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(20px);
  }
}
@-o-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(20px);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@-moz-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(2000px);
  }
}
@-ms-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
}
@-o-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
}
@-moz-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(-20px);
  }
}
@-ms-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-20px);
  }
}
@-o-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-20px);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}
@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@-moz-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
}
@-ms-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
}
@-o-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
}
@-moz-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(20px);
  }
}
@-ms-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(20px);
  }
}
@-o-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(20px);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}
@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@-moz-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
}
@-ms-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
}
@-o-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
}
@-moz-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-20px);
  }
}
@-ms-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(-20px);
  }
}
@-o-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-20px);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}
@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@-moz-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-2000px);
  }
}
@-o-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-moz-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-ms-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-o-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(0);
    -webkit-animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -webkit-animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
  }
  100% {
    -webkit-transform: perspective(400px) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
}
@-moz-keyframes flip {
  0% {
    -moz-transform: perspective(400px) rotateY(0);
    -moz-animation-timing-function: ease-out;
  }
  40% {
    -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -moz-animation-timing-function: ease-out;
  }
  50% {
    -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -moz-animation-timing-function: ease-in;
  }
  80% {
    -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -moz-animation-timing-function: ease-in;
  }
  100% {
    -moz-transform: perspective(400px) scale(1);
    -moz-animation-timing-function: ease-in;
  }
}
@-o-keyframes flip {
  0% {
    -o-transform: perspective(400px) rotateY(0);
    -o-animation-timing-function: ease-out;
  }
  40% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -o-animation-timing-function: ease-out;
  }
  50% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -o-animation-timing-function: ease-in;
  }
  80% {
    -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -o-animation-timing-function: ease-in;
  }
  100% {
    -o-transform: perspective(400px) scale(1);
    -o-animation-timing-function: ease-in;
  }
}
@keyframes flip {
  0% {
    transform: perspective(400px) rotateY(0);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) rotateY(360deg) scale(0.95);
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) scale(1);
    animation-timing-function: ease-in;
  }
}
@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-moz-keyframes flipInX {
  0% {
    -moz-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -moz-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -moz-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -moz-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-o-keyframes flipInX {
  0% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -o-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -o-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-moz-keyframes flipInY {
  0% {
    -moz-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -moz-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -moz-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -moz-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-ms-keyframes flipInY {
  0% {
    -ms-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -ms-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -ms-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -ms-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-o-keyframes flipInY {
  0% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -o-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -o-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-moz-keyframes flipOutX {
  0% {
    -moz-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -moz-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-ms-keyframes flipOutX {
  0% {
    -ms-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -ms-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-o-keyframes flipOutX {
  0% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-moz-keyframes flipOutY {
  0% {
    -moz-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -moz-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-ms-keyframes flipOutY {
  0% {
    -ms-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -ms-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-o-keyframes flipOutY {
  0% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate(80deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  40% {
    -webkit-transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  100% {
    -webkit-transform: translateY(700px);
    opacity: 0;
  }
}
@-moz-keyframes hinge {
  0% {
    -moz-transform: rotate(0);
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -moz-transform: rotate(80deg);
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  40% {
    -moz-transform: rotate(60deg);
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  80% {
    -moz-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -moz-transform-origin: top left;
    -moz-animation-timing-function: ease-in-out;
  }
  100% {
    -moz-transform: translateY(700px);
    opacity: 0;
  }
}
@-ms-keyframes hinge {
  0% {
    -ms-transform: rotate(0);
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -ms-transform: rotate(80deg);
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  40% {
    -ms-transform: rotate(60deg);
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  80% {
    -ms-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  100% {
    -ms-transform: translateY(700px);
    opacity: 0;
  }
}
@-o-keyframes hinge {
  0% {
    -o-transform: rotate(0);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -o-transform: rotate(80deg);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  40% {
    -o-transform: rotate(60deg);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  80% {
    -o-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  100% {
    -o-transform: translateY(700px);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    transform: rotate(80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}
@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-moz-keyframes lightSpeedIn {
  0% {
    -moz-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -moz-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -moz-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -moz-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-ms-keyframes lightSpeedIn {
  0% {
    -ms-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -ms-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -ms-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -ms-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-o-keyframes lightSpeedIn {
  0% {
    -o-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -o-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -o-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -o-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-moz-keyframes lightSpeedOut {
  0% {
    -moz-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -moz-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-ms-keyframes lightSpeedOut {
  0% {
    -ms-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -ms-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-o-keyframes lightSpeedOut {
  0% {
    -o-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes pulse {
  0% {
    -moz-transform: scale(1);
  }
  50% {
    -moz-transform: scale(1.1);
  }
  100% {
    -moz-transform: scale(1);
  }
}
@-ms-keyframes pulse {
  0% {
    -ms-transform: scale(1);
  }
  50% {
    -ms-transform: scale(1.1);
  }
  100% {
    -ms-transform: scale(1);
  }
}
@-o-keyframes pulse {
  0% {
    -o-transform: scale(1);
  }
  50% {
    -o-transform: scale(1.1);
  }
  100% {
    -o-transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
}
@-moz-keyframes rollIn {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0px) rotate(0deg);
  }
}
@-ms-keyframes rollIn {
  0% {
    opacity: 0;
    -ms-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0px) rotate(0deg);
  }
}
@-o-keyframes rollIn {
  0% {
    opacity: 0;
    -o-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg);
  }
}
@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}
@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
  }
}
@-moz-keyframes rollOut {
  0% {
    opacity: 1;
    -moz-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -moz-transform: translateX(100%) rotate(120deg);
  }
}
@-ms-keyframes rollOut {
  0% {
    opacity: 1;
    -ms-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(100%) rotate(120deg);
  }
}
@-o-keyframes rollOut {
  0% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(100%) rotate(120deg);
  }
}
@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}
@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateIn {
  0% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateIn {
  0% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateIn {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInDownLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInDownLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInDownRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInDownRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInUpLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInUpLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-moz-keyframes rotateInUpRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInUpRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(200deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOut {
  0% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(200deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOut {
  0% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(200deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOut {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutDownLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutDownLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutDownRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutDownRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutUpLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutUpLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@-moz-keyframes rotateOutUpRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutUpRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
  }
}
@-moz-keyframes shake {
  0%, 100% {
    -moz-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -moz-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -moz-transform: translateX(10px);
  }
}
@-ms-keyframes shake {
  0%, 100% {
    -ms-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -ms-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -ms-transform: translateX(10px);
  }
}
@-o-keyframes shake {
  0%, 100% {
    -o-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -o-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -o-transform: translateX(10px);
  }
}
@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    transform: translateX(10px);
  }
}
@-webkit-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -webkit-transform-origin: top center;
  }
  20% {
    -webkit-transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}
@-moz-keyframes swing {
  20% {
    -moz-transform: rotate(15deg);
  }
  40% {
    -moz-transform: rotate(-10deg);
  }
  60% {
    -moz-transform: rotate(5deg);
  }
  80% {
    -moz-transform: rotate(-5deg);
  }
  100% {
    -moz-transform: rotate(0deg);
  }
}
@-ms-keyframes swing {
  20% {
    -ms-transform: rotate(15deg);
  }
  40% {
    -ms-transform: rotate(-10deg);
  }
  60% {
    -ms-transform: rotate(5deg);
  }
  80% {
    -ms-transform: rotate(-5deg);
  }
  100% {
    -ms-transform: rotate(0deg);
  }
}
@-o-keyframes swing {
  20% {
    -o-transform: rotate(15deg);
  }
  40% {
    -o-transform: rotate(-10deg);
  }
  60% {
    -o-transform: rotate(5deg);
  }
  80% {
    -o-transform: rotate(-5deg);
  }
  100% {
    -o-transform: rotate(0deg);
  }
}
@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
  }
  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0);
  }
}
@-moz-keyframes tada {
  0% {
    -moz-transform: scale(1);
  }
  10%, 20% {
    -moz-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -moz-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -moz-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -moz-transform: scale(1) rotate(0);
  }
}
@-ms-keyframes tada {
  0% {
    -ms-transform: scale(1);
  }
  10%, 20% {
    -ms-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -ms-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -ms-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -ms-transform: scale(1) rotate(0);
  }
}
@-o-keyframes tada {
  0% {
    -o-transform: scale(1);
  }
  10%, 20% {
    -o-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -o-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -o-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -o-transform: scale(1) rotate(0);
  }
}
@keyframes tada {
  0% {
    transform: scale(1);
  }
  10%, 20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
@-webkit-keyframes wiggle {
  0% {
    -webkit-transform: skewX(9deg);
  }
  10% {
    -webkit-transform: skewX(-8deg);
  }
  20% {
    -webkit-transform: skewX(7deg);
  }
  30% {
    -webkit-transform: skewX(-6deg);
  }
  40% {
    -webkit-transform: skewX(5deg);
  }
  50% {
    -webkit-transform: skewX(-4deg);
  }
  60% {
    -webkit-transform: skewX(3deg);
  }
  70% {
    -webkit-transform: skewX(-2deg);
  }
  80% {
    -webkit-transform: skewX(1deg);
  }
  90% {
    -webkit-transform: skewX(0deg);
  }
  100% {
    -webkit-transform: skewX(0deg);
  }
}
@-moz-keyframes wiggle {
  0% {
    -moz-transform: skewX(9deg);
  }
  10% {
    -moz-transform: skewX(-8deg);
  }
  20% {
    -moz-transform: skewX(7deg);
  }
  30% {
    -moz-transform: skewX(-6deg);
  }
  40% {
    -moz-transform: skewX(5deg);
  }
  50% {
    -moz-transform: skewX(-4deg);
  }
  60% {
    -moz-transform: skewX(3deg);
  }
  70% {
    -moz-transform: skewX(-2deg);
  }
  80% {
    -moz-transform: skewX(1deg);
  }
  90% {
    -moz-transform: skewX(0deg);
  }
  100% {
    -moz-transform: skewX(0deg);
  }
}
@-ms-keyframes wiggle {
  0% {
    -ms-transform: skewX(9deg);
  }
  10% {
    -ms-transform: skewX(-8deg);
  }
  20% {
    -ms-transform: skewX(7deg);
  }
  30% {
    -ms-transform: skewX(-6deg);
  }
  40% {
    -ms-transform: skewX(5deg);
  }
  50% {
    -ms-transform: skewX(-4deg);
  }
  60% {
    -ms-transform: skewX(3deg);
  }
  70% {
    -ms-transform: skewX(-2deg);
  }
  80% {
    -ms-transform: skewX(1deg);
  }
  90% {
    -ms-transform: skewX(0deg);
  }
  100% {
    -ms-transform: skewX(0deg);
  }
}
@-o-keyframes wiggle {
  0% {
    -o-transform: skewX(9deg);
  }
  10% {
    -o-transform: skewX(-8deg);
  }
  20% {
    -o-transform: skewX(7deg);
  }
  30% {
    -o-transform: skewX(-6deg);
  }
  40% {
    -o-transform: skewX(5deg);
  }
  50% {
    -o-transform: skewX(-4deg);
  }
  60% {
    -o-transform: skewX(3deg);
  }
  70% {
    -o-transform: skewX(-2deg);
  }
  80% {
    -o-transform: skewX(1deg);
  }
  90% {
    -o-transform: skewX(0deg);
  }
  100% {
    -o-transform: skewX(0deg);
  }
}
@keyframes wiggle {
  0% {
    transform: skewX(9deg);
  }
  10% {
    transform: skewX(-8deg);
  }
  20% {
    transform: skewX(7deg);
  }
  30% {
    transform: skewX(-6deg);
  }
  40% {
    transform: skewX(5deg);
  }
  50% {
    transform: skewX(-4deg);
  }
  60% {
    transform: skewX(3deg);
  }
  70% {
    transform: skewX(-2deg);
  }
  80% {
    transform: skewX(1deg);
  }
  90% {
    transform: skewX(0deg);
  }
  100% {
    transform: skewX(0deg);
  }
}
@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
  }
  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -webkit-transform: translateX(0%);
  }
}
@-moz-keyframes wobble {
  0% {
    -moz-transform: translateX(0%);
  }
  15% {
    -moz-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -moz-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -moz-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -moz-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -moz-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -moz-transform: translateX(0%);
  }
}
@-ms-keyframes wobble {
  0% {
    -ms-transform: translateX(0%);
  }
  15% {
    -ms-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -ms-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -ms-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -ms-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -ms-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -ms-transform: translateX(0%);
  }
}
@-o-keyframes wobble {
  0% {
    -o-transform: translateX(0%);
  }
  15% {
    -o-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -o-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -o-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -o-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -o-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -o-transform: translateX(0%);
  }
}
@keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  -moz-animation-name: bounce;
  -ms-animation-name: bounce;
  -o-animation-name: bounce;
  animation-name: bounce;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  -moz-animation-name: bounceIn;
  -ms-animation-name: bounceIn;
  -o-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  -moz-animation-name: bounceInDown;
  -ms-animation-name: bounceInDown;
  -o-animation-name: bounceInDown;
  animation-name: bounceInDown;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  -moz-animation-name: bounceInLeft;
  -ms-animation-name: bounceInLeft;
  -o-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  -moz-animation-name: bounceInRight;
  -ms-animation-name: bounceInRight;
  -o-animation-name: bounceInRight;
  animation-name: bounceInRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  -moz-animation-name: bounceInUp;
  -ms-animation-name: bounceInUp;
  -o-animation-name: bounceInUp;
  animation-name: bounceInUp;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  -moz-animation-name: bounceOut;
  -ms-animation-name: bounceOut;
  -o-animation-name: bounceOut;
  animation-name: bounceOut;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  -moz-animation-name: bounceOutDown;
  -ms-animation-name: bounceOutDown;
  -o-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  -moz-animation-name: bounceOutLeft;
  -ms-animation-name: bounceOutLeft;
  -o-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  -moz-animation-name: bounceOutRight;
  -ms-animation-name: bounceOutRight;
  -o-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  -moz-animation-name: bounceOutUp;
  -ms-animation-name: bounceOutUp;
  -o-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  -ms-animation-name: fadeIn;
  -o-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  -moz-animation-name: fadeInDown;
  -ms-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  -moz-animation-name: fadeInDownBig;
  -ms-animation-name: fadeInDownBig;
  -o-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  -moz-animation-name: fadeInLeft;
  -ms-animation-name: fadeInLeft;
  -o-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  -moz-animation-name: fadeInLeftBig;
  -ms-animation-name: fadeInLeftBig;
  -o-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  -moz-animation-name: fadeInRight;
  -ms-animation-name: fadeInRight;
  -o-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  -moz-animation-name: fadeInRightBig;
  -ms-animation-name: fadeInRightBig;
  -o-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  -moz-animation-name: fadeInUp;
  -ms-animation-name: fadeInUp;
  -o-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  -moz-animation-name: fadeInUpBig;
  -ms-animation-name: fadeInUpBig;
  -o-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  -moz-animation-name: fadeOut;
  -ms-animation-name: fadeOut;
  -o-animation-name: fadeOut;
  animation-name: fadeOut;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  -moz-animation-name: fadeOutDown;
  -ms-animation-name: fadeOutDown;
  -o-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  -moz-animation-name: fadeOutDownBig;
  -ms-animation-name: fadeOutDownBig;
  -o-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  -moz-animation-name: fadeOutLeft;
  -ms-animation-name: fadeOutLeft;
  -o-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  -moz-animation-name: fadeOutLeftBig;
  -ms-animation-name: fadeOutLeftBig;
  -o-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  -moz-animation-name: fadeOutRight;
  -ms-animation-name: fadeOutRight;
  -o-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  -moz-animation-name: fadeOutRightBig;
  -ms-animation-name: fadeOutRightBig;
  -o-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  -moz-animation-name: fadeOutUp;
  -ms-animation-name: fadeOutUp;
  -o-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  -moz-animation-name: fadeOutUpBig;
  -ms-animation-name: fadeOutUpBig;
  -o-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flash {
  -webkit-animation-name: flash;
  -moz-animation-name: flash;
  -ms-animation-name: flash;
  -o-animation-name: flash;
  animation-name: flash;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip {
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-animation-name: flip;
  -moz-animation-name: flip;
  -ms-animation-name: flip;
  -o-animation-name: flip;
  animation-name: flip;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flipInX {
  -webkit-animation-name: flipInX;
  -moz-animation-name: flipInX;
  -ms-animation-name: flipInX;
  -o-animation-name: flipInX;
  animation-name: flipInX;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flipInY {
  -webkit-animation-name: flipInY;
  -moz-animation-name: flipInY;
  -ms-animation-name: flipInY;
  -o-animation-name: flipInY;
  animation-name: flipInY;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  -moz-animation-name: flipOutX;
  -ms-animation-name: flipOutX;
  -o-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flipOutY {
  -webkit-animation-name: flipOutY;
  -moz-animation-name: flipOutY;
  -ms-animation-name: flipOutY;
  -o-animation-name: flipOutY;
  animation-name: flipOutY;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.hinge {
  -webkit-animation-name: hinge;
  -moz-animation-name: hinge;
  -ms-animation-name: hinge;
  -o-animation-name: hinge;
  animation-name: hinge;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  -moz-animation-name: lightSpeedIn;
  -ms-animation-name: lightSpeedIn;
  -o-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  -moz-animation-timing-function: ease-out;
  -ms-animation-timing-function: ease-out;
  -o-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  -moz-animation-name: lightSpeedOut;
  -ms-animation-name: lightSpeedOut;
  -o-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  -moz-animation-timing-function: ease-in;
  -ms-animation-timing-function: ease-in;
  -o-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.pulse {
  -webkit-animation-name: pulse;
  -moz-animation-name: pulse;
  -ms-animation-name: pulse;
  -o-animation-name: pulse;
  animation-name: pulse;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rollIn {
  -webkit-animation-name: rollIn;
  -moz-animation-name: rollIn;
  -ms-animation-name: rollIn;
  -o-animation-name: rollIn;
  animation-name: rollIn;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rollOut {
  -webkit-animation-name: rollOut;
  -moz-animation-name: rollOut;
  -ms-animation-name: rollOut;
  -o-animation-name: rollOut;
  animation-name: rollOut;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  -moz-animation-name: rotateIn;
  -ms-animation-name: rotateIn;
  -o-animation-name: rotateIn;
  animation-name: rotateIn;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  -moz-animation-name: rotateInDownLeft;
  -ms-animation-name: rotateInDownLeft;
  -o-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  -moz-animation-name: rotateInDownRight;
  -ms-animation-name: rotateInDownRight;
  -o-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  -moz-animation-name: rotateInUpLeft;
  -ms-animation-name: rotateInUpLeft;
  -o-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  -moz-animation-name: rotateInUpRight;
  -ms-animation-name: rotateInUpRight;
  -o-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  -moz-animation-name: rotateOut;
  -ms-animation-name: rotateOut;
  -o-animation-name: rotateOut;
  animation-name: rotateOut;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  -moz-animation-name: rotateOutDownLeft;
  -ms-animation-name: rotateOutDownLeft;
  -o-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  -moz-animation-name: rotateOutDownRight;
  -ms-animation-name: rotateOutDownRight;
  -o-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  -moz-animation-name: rotateOutUpLeft;
  -ms-animation-name: rotateOutUpLeft;
  -o-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  -moz-animation-name: rotateOutUpRight;
  -ms-animation-name: rotateOutUpRight;
  -o-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.shake {
  -webkit-animation-name: shake;
  -moz-animation-name: shake;
  -ms-animation-name: shake;
  -o-animation-name: shake;
  animation-name: shake;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swing {
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  -ms-transform-origin: top center;
  -o-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  -moz-animation-name: swing;
  -ms-animation-name: swing;
  -o-animation-name: swing;
  animation-name: swing;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.tada {
  -webkit-animation-name: tada;
  -moz-animation-name: tada;
  -ms-animation-name: tada;
  -o-animation-name: tada;
  animation-name: tada;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.wiggle {
  -webkit-animation-name: wiggle;
  -moz-animation-name: wiggle;
  -ms-animation-name: wiggle;
  -o-animation-name: wiggle;
  animation-name: wiggle;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

.wobble {
  -webkit-animation-name: wobble;
  -moz-animation-name: wobble;
  -ms-animation-name: wobble;
  -o-animation-name: wobble;
  animation-name: wobble;
  -webkit-animation-duration: 800ms;
  -moz-animation-duration: 800ms;
  -ms-animation-duration: 800ms;
  -o-animation-duration: 800ms;
  animation-duration: 800ms;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}

/*------------------------------------*\
    Layout
    Author: Chris Smith
\*------------------------------------*/
html, body {
  height: 100%;
}

body {
  min-width: 320px;
}

.container {
  padding-left: 10px;
  padding-right: 10px;
}
@media (min-width: 640px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 1200px) {
  .container {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 1440px) {
  .container {
    width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.container-edge {
  padding-left: 3%;
  padding-right: 3%;
}
.container-edge.black {
  background: #000000;
  color: #ffffff;
}
.container-edge.black h1, .container-edge.black h2, .container-edge.black h3, .container-edge.black h4, .container-edge.black h5, .container-edge.black h6, .container-edge.black p {
  color: #ffffff;
}
.container-edge.grey {
  background: #F0EEE7;
  color: #ffffff;
}
.container-edge.grey h1, .container-edge.grey h2, .container-edge.grey h3, .container-edge.grey h4, .container-edge.grey h5, .container-edge.grey h6, .container-edge.grey p {
  color: #000000;
}
.container-edge.no-pad {
  padding-left: 0;
  padding-right: 0;
}

.container-padding {
  padding-top: 3%;
  padding-bottom: 3%;
}

.container-nopad {
  padding-left: 0;
  padding-right: 0;
}
@media (min-width: 1440px) {
  .container-nopad {
    width: 1440px;
    margin-left: auto;
    margin-right: auto;
  }
}

.row {
  padding-top: 15px;
  padding-bottom: 15px;
}
@media (min-width: 640px) {
  .row {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media (min-width: 1200px) {
  .row {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media (min-width: 1440px) {
  .row {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

@media (min-width: 640px) {
  .row-nopad-palm {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media (min-width: 1200px) {
  .row-nopad-palm {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media (min-width: 1440px) {
  .row-nopad-palm {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.primary-bgd {
  background-color: #d62027;
}

.grey-bgd {
  background-color: #95A5A6;
}

.light-grey-blue-bgd {
  background-color: #95A5A6;
}

.lightergrey-bgd {
  background-color: #cccccc;
}

.site-overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #ffffff;
  z-index: 200;
}
.site-overlay .wait-icon {
  position: absolute;
  top: 45%;
  width: 100%;
  text-align: center;
}
.site-overlay .wait-icon .fa {
  color: rgba(214, 32, 39, 0.2);
  font-size: 3rem;
}

@media (min-width: 640px) {
  .push-left-lap {
    padding-left: 30px;
  }
}

@media (min-width: 640px) {
  .push-left-large-lap {
    padding-left: 60px;
  }
}

@media (min-width: 1200px) {
  .push-left-desk {
    padding-left: 30px;
  }
}

@media (min-width: 1200px) {
  .push-left-large-desk {
    padding-left: 60px;
  }
}

@media (min-width: 640px) {
  .push-left-extra-large-lap {
    padding-left: 120px;
  }
}

@media (min-width: 1200px) {
  .push-left-extra-large-desk {
    padding-left: 120px;
  }
}

@media (min-width: 640px) {
  .push-right-lap {
    padding-right: 30px;
  }
}

@media (min-width: 640px) {
  .push-right-large-lap {
    padding-right: 60px;
  }
}

@media (min-width: 1200px) {
  .push-right-desk {
    padding-right: 30px;
  }
}

@media (min-width: 1200px) {
  .push-right-large-desk {
    padding-right: 60px;
  }
}

@media (min-width: 640px) {
  .push-right-extra-large-lap {
    padding-right: 120px;
  }
}

@media (min-width: 1200px) {
  .push-right-extra-large-desk {
    padding-right: 120px;
  }
}

@media (min-width: 640px) {
  .push-top-lap {
    padding-top: 30px;
  }
}

@media (min-width: 640px) {
  .push-top-large-lap {
    padding-top: 60px;
  }
}

@media (min-width: 1200px) {
  .push-top-desk {
    padding-top: 30px;
  }
}

@media (min-width: 1200px) {
  .push-top-large-desk {
    padding-top: 60px;
  }
}

@media (min-width: 640px) {
  .push-bottom-lap {
    padding-bottom: 30px;
  }
}

@media (min-width: 640px) {
  .push-bottom-large-lap {
    padding-bottom: 60px;
  }
}

@media (min-width: 1200px) {
  .push-bottom-desk {
    padding-bottom: 30px;
  }
}

@media (min-width: 1200px) {
  .push-bottom-large-desk {
    padding-bottom: 60px;
  }
}

.margin-bottom {
  margin-bottom: 30px;
}
@media (min-width: 1200px) {
  .margin-bottom {
    margin-bottom: 60px;
  }
}

.margin-bottom-small {
  margin-bottom: 15px;
}
@media (min-width: 1200px) {
  .margin-bottom-small {
    margin-bottom: 20px;
  }
}

.margin-top {
  margin-top: 30px;
}
@media (min-width: 1200px) {
  .margin-top {
    margin-top: 60px;
  }
}

.margin-left {
  margin-left: 30px;
}
@media (min-width: 1200px) {
  .margin-left {
    margin-left: 60px;
  }
}

.margin-right {
  margin-right: 30px;
}
@media (min-width: 1200px) {
  .margin-right {
    margin-right: 60px;
  }
}

.no-margin {
  margin-bottom: 0;
}

.pull-up {
  position: relative;
}

@media (min-width: 1200px) {
  .up100 {
    margin-top: -100px;
  }
}

@media (min-width: 1200px) {
  .up150 {
    margin-top: -150px;
  }
}

@media (min-width: 1200px) {
  .up200 {
    margin-top: -200px;
  }
}

.grid.gutter0 {
  margin-left: 0;
}
.grid.gutter0 .grid__item {
  padding-left: 0;
}
@media (min-width: 640px) {
  .grid.gutter0 {
    margin-left: 0;
  }
  .grid.gutter0 .grid__item {
    padding-left: 0;
  }
}

.grid.gutter10 {
  margin-left: -4px;
}
.grid.gutter10 .grid__item {
  padding-left: 4px;
}
@media (min-width: 640px) {
  .grid.gutter10 {
    margin-left: -10px;
  }
  .grid.gutter10 .grid__item {
    padding-left: 10px;
  }
}

.grid.gutter20 {
  margin-left: -20px;
}
.grid.gutter20 .grid__item {
  padding-left: 20px;
}

@media (min-width: 640px) {
  .grid.gutter60 {
    margin-left: -60px;
  }
  .grid.gutter60 .grid__item {
    padding-left: 60px;
  }
}

@media (min-width: 1200px) {
  .grid.gutter60-desk {
    margin-left: -60px;
  }
  .grid.gutter60-desk .grid__item {
    padding-left: 60px;
  }
}

.expanded {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media (min-width: 1200px) {
  .expanded {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}

.inset {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media (min-width: 1200px) {
  .inset {
    margin-top: 40px;
    margin-bottom: 40px;
    margin-left: 40px;
    margin-right: 40px;
  }
}

@media (min-width: 1200px) {
  .breakout-column {
    padding-right: 30px;
    padding-left: 30px;
  }
  .breakout-column .expanded {
    margin-left: -30px;
    margin-right: -30px;
  }
}

.border-bottom {
  border-bottom: 1px solid #cccccc;
}

.border-top {
  border-top: 1px solid #cccccc;
}

hr {
  border: none;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 0;
}
hr.push-top {
  margin-top: 60px;
}
hr.push-bottom {
  margin-bottom: 60px;
}
hr.push-both {
  margin-top: 60px;
  margin-bottom: 60px;
}

.small-block {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 640px) {
  .small-block {
    width: 80%;
  }
}
@media (min-width: 1200px) {
  .small-block {
    width: 70%;
  }
}
@media (min-width: 1440px) {
  .small-block {
    width: 60%;
  }
}

.row-400 {
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 640px) {
  .row-400 {
    width: 400px;
  }
}

.row-760 {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 640px) {
  .row-760 {
    width: 760px;
  }
}

.row-940 {
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1200px) {
  .row-940 {
    width: 700px;
  }
}
@media (min-width: 1440px) {
  .row-940 {
    width: 940px;
  }
}

.row-1180 {
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 640px) {
  .row-1180 {
    width: 90%;
  }
}
@media (min-width: 1200px) {
  .row-1180 {
    width: 940px;
  }
}
@media (min-width: 1440px) {
  .row-1180 {
    width: 1180px;
  }
}

@media (min-width: 640px) {
  .small-block-align-left {
    width: 80%;
  }
}
@media (min-width: 1200px) {
  .small-block-align-left {
    width: 70%;
  }
}
@media (min-width: 1440px) {
  .small-block-align-left {
    width: 60%;
  }
}

@media (min-width: 1200px) {
  .smaller-secondary {
    padding-right: 15%;
  }
}

@media (min-width: 1200px) {
  .align-right .smaller-secondary {
    padding-left: 15%;
  }
}

@media (min-width: 1200px) {
  .align-center .smaller-secondary {
    padding-left: 15%;
    padding-right: 15%;
  }
}

.media__img {
  float: none;
  margin: 0 auto;
  margin-bottom: 10px;
  display: block;
}
@media (min-width: 640px) {
  .media__img {
    float: left;
    margin-right: 24px;
  }
}

.box {
  background: rgba(204, 204, 204, 0.2);
  padding: 20px;
  margin-bottom: 20px;
}
@media (min-width: 1200px) {
  .box {
    padding: 30px;
  }
  .box.small-box-padding {
    padding: 20px;
  }
}
@media (min-width: 1440px) {
  .box {
    padding: 50px;
  }
}

@media (min-width: 1440px) {
  .box-small-padding {
    padding: 30px;
  }
}

/*------------------------------------*\
    Typography
    Author: Chris Smith
\*------------------------------------*/
/* Font Size */
/*
** Font Face
*/
.ff-bold, .membership-table .section td, .membership-table td, .membership-tabs li, .blog-date, .back-to-blog, .blog-list-title, .blog-list-date, .contact label, .perf-date .date, .cast-photo .cast-info .cast-name, .important-info .highlighted-info strong, .page-title-bar .book-button, .genre-select li, .events-calendar .weeks, .events-calendar .weekday-names, .events-calendar .month-name, .hero-blurb-wrapper, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6, .full-width-header, .content-block-heading, .event-date, .event-listing, .page-intro-text, .whats-on-blurb, .whats-on-label .show-date, .whats-on-label .show-title, .book-cta .cancelled span, .book-cta, .sub-title, .page-title, .mobile-nav-secondary a, .mobile-nav-primary a, .mobile-menu .nested-nav > li > a, .secondary-nav a, .main-nav a, .whats-on-sticky .sticky-sub-title, .whats-on-sticky .sticky-title, #mc_embed_signup input.button, .more.bold, .more, .navigation-link, .call-to-action, .small-notice, .credit, .note, .ref, .list-title, .quote-credit, h6, h5, .epsilon, h4, .delta, h3, .gamma, h2, .beta, h1, .alpha, .badge, .ff-semi-bold, .ff-reg, .membership-table .small-print, .membership-table .sub-text, .membership-table td .price, .full-width-subheader, .event-title, .book-cta .cancelled, .sub-description, label, .label, .close, .site-map ul, p, .ff-med, .cookies-warning .accept-cookies, .btn, button, html input[type=button], input[type=reset], input[type=submit], .text-input, textarea, select, .search-field, .input-text, input[type=email], .form-fields, blockquote, blockquote p, .ff-light, .ff-thin, .ff-body {
  font-family: "Avenir Next W01";
  font-weight: normal;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ff-heavy {
  font-weight: 900;
}

.ff-bold, .membership-table .section td, .membership-table td, .membership-tabs li, .blog-date, .back-to-blog, .blog-list-title, .blog-list-date, .contact label, .perf-date .date, .cast-photo .cast-info .cast-name, .important-info .highlighted-info strong, .page-title-bar .book-button, .genre-select li, .events-calendar .weeks, .events-calendar .weekday-names, .events-calendar .month-name, .hero-blurb-wrapper, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6, .full-width-header, .content-block-heading, .event-date, .event-listing, .page-intro-text, .whats-on-blurb, .whats-on-label .show-date, .whats-on-label .show-title, .book-cta .cancelled span, .book-cta, .sub-title, .page-title, .mobile-nav-secondary a, .mobile-nav-primary a, .mobile-menu .nested-nav > li > a, .secondary-nav a, .main-nav a, .whats-on-sticky .sticky-sub-title, .whats-on-sticky .sticky-title, #mc_embed_signup input.button, .more.bold, .more, .navigation-link, .call-to-action, .small-notice, .credit, .note, .ref, .list-title, .quote-credit, h6, h5, .epsilon, h4, .delta, h3, .gamma, h2, .beta, h1, .alpha, .badge {
  font-weight: 700;
}

.ff-reg, .membership-table .small-print, .membership-table .sub-text, .membership-table td .price, .full-width-subheader, .event-title, .book-cta .cancelled, .sub-description, label, .label, .close, .site-map ul, p, .alpha, .beta, .gamma, .delta, .epsilon {
  font-weight: 300;
}

.ff-italic, .cast-photo .cast-info .cast-role {
  font-style: italic;
}

.ff-med, .cookies-warning .accept-cookies, .btn, button, html input[type=button], input[type=reset], input[type=submit], .text-input, textarea, select, .search-field, .input-text, input[type=email], .form-fields, blockquote, blockquote p {
  font-weight: 400;
}

/*
** Primary Typography (Heeadings, Links, Paragraphs)
*/
* {
  -webkit-font-smoothing: antialiased;
}

html, body {
  font-family: "Avenir Next W01";
  font-weight: normal;
  font-style: normal;
  font-size: 16px;
  color: #58595B;
}

h1, h2, h3, h4, h5, h6 {
  color: #000000;
  line-height: 1.25em !important;
  /* Inuit override */
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  text-decoration: none;
}
h1.center, h2.center, h3.center, h4.center, h5.center, h6.center {
  text-align: center;
}
h1.small-margin, h2.small-margin, h3.small-margin, h4.small-margin, h5.small-margin, h6.small-margin {
  margin-bottom: 10px;
}
h1.no-margin, h2.no-margin, h3.no-margin, h4.no-margin, h5.no-margin, h6.no-margin {
  margin-bottom: 0;
}

.alpha, .beta, .gamma, .delta, .epsilon {
  line-height: 1.25em !important;
  /* Inuit override */
}

h1, .alpha {
  font-size: 3.75rem;
}
@media (min-width: 1200px) {
  h1, .alpha {
    font-size: 3.75rem;
  }
}

h2, .beta {
  font-size: 3.13rem;
  text-shadow: none;
}
@media (min-width: 1200px) {
  h2, .beta {
    font-size: 3.13rem;
  }
}

h3, .gamma {
  font-size: 1.88rem;
  margin-bottom: 1rem;
}
@media (min-width: 1200px) {
  h3, .gamma {
    font-size: 1.88rem;
  }
}

h4, .delta {
  font-size: 1.35rem;
}
@media (min-width: 1200px) {
  h4, .delta {
    font-size: 1.35rem;
  }
}

h5, .epsilon {
  font-size: 1rem;
  font-weight: normal;
}
@media (min-width: 1200px) {
  h5, .epsilon {
    font-size: 1.125rem;
  }
}

h6 {
  font-size: 0.938rem;
}
@media (min-width: 1200px) {
  h6 {
    font-size: 1rem;
  }
}

p {
  font-size: 1.25rem;
  margin: 0 0 1em 0;
  line-height: 1.6em;
}

a {
  color: #58595B;
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  text-decoration: underline;
}

a.breadcrumb-bar {
  text-decoration: none;
}

a.fancybox-nav:active {
  top: 0 !important;
  position: absolute !important;
}

a.fancybox-close:active {
  top: -18px !important;
  position: absolute !important;
}

a, :-moz-any-link:focus {
  outline: none;
}

blockquote, blockquote p {
  margin: 0 0 1.5em 0;
  font-size: 1.125rem;
  quotes: inherit;
}
@media (min-width: 1200px) {
  blockquote, blockquote p {
    font-size: 1.5rem;
  }
}

p {
  font-size: 1rem;
}
@media (min-width: 1200px) {
  p {
    font-size: 1.25rem;
  }
}
@media (min-width: 1440px) {
  p {
    font-size: 1.25rem;
  }
}

.static-font {
  font-size: 1.143rem;
}
@media (min-width: 1200px) {
  .static-font {
    font-size: 1.067rem;
  }
}
@media (min-width: 1440px) {
  .static-font {
    font-size: 1rem;
  }
}

.primary-color-text {
  color: #d62027;
}

.secondary-color-text {
  color: #000000;
}

.tertiary-color-text {
  color: #F0EEE7;
}

.highlight-color-text {
  color: #4398C9;
}

.white-text {
  color: #ffffff;
}

.black-text {
  color: #000000;
}

.grey-text {
  color: #58595B;
}

.dark-text {
  color: #93161b;
}

/*
** Tertiary Typography (Quotes, List Titles, Extra Sizes)
*/
.quote-wrapper {
  padding-left: 20px;
  border-left: 2px solid #000000;
  margin-top: 30px;
  margin-bottom: 30px;
}
@media (min-width: 1200px) {
  .quote-wrapper {
    margin-left: 40px;
    padding-left: 40px;
    margin-top: 40px;
    margin-bottom: 40px;
  }
}

.quote-credit {
  font-size: 0.938rem;
  color: #000000;
}

.list-title {
  font-size: 1.5rem;
}
.list-title a {
  color: #151515;
}
.list-title a:hover {
  color: #d62027;
}
@media (min-width: 1200px) {
  .list-title {
    font-size: 1.75rem;
  }
  .list-title.list-title-large {
    font-size: 1.875rem;
  }
}
@media (min-width: 1440px) {
  .list-title {
    font-size: 1.875rem;
  }
  .list-title.list-title-large {
    font-size: 2.5rem;
  }
}

.title-margin-large {
  margin-bottom: 2rem;
}
@media (min-width: 1200px) {
  .title-margin-large {
    margin-bottom: 3rem;
  }
}

.bigger {
  font-size: 1.25rem;
}

.large {
  font-size: 1.625rem;
}

.massive {
  font-size: 5rem;
}

.smaller {
  font-size: 0.875em;
}

.tiny {
  font-size: 0.688em;
}

.note, .ref {
  font-size: 0.75rem;
}

.ref {
  text-transform: uppercase;
  margin-bottom: 6px;
  color: #666666;
}

.info-split {
  max-width: 300px;
}
.info-split span {
  float: left;
  text-align: left;
  color: #d62027;
  margin-right: 6px;
  font-weight: bold;
}
.info-split em {
  display: inline-block;
  font-style: normal;
}
.info-split.right-align {
  text-align: right;
}

.credit {
  color: #d62027;
}

.small-notice {
  text-transform: uppercase;
}

.error {
  color: #d9534f;
}

.success {
  color: #5cb85c;
}

.warning {
  color: #f0ad4e;
}

.nav li {
  margin-left: 10px;
  margin-right: 10px;
}
.nav a {
  text-decoration: none;
  color: #ffffff;
}

.site-map {
  font-size: 1.25rem;
}
.site-map li {
  margin-bottom: 6px;
}
.site-map ul {
  margin-bottom: 20px;
}

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

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

.align-center-to-left-lap {
  text-align: center;
}
@media (min-width: 640px) {
  .align-center-to-left-lap {
    text-align: left;
  }
}

.align-center-to-right-lap {
  text-align: center;
}
@media (min-width: 640px) {
  .align-center-to-right-lap {
    text-align: right;
  }
}

.align-center-to-left-desk {
  text-align: center;
}
@media (min-width: 1200px) {
  .align-center-to-left-desk {
    text-align: left;
  }
}

.align-center-to-right-desk {
  text-align: center;
}
@media (min-width: 1200px) {
  .align-center-to-right-desk {
    text-align: right;
  }
}

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

/*------------------------------------*\
    Buttons
    Author: Chris Smith
\*------------------------------------*/
.call-to-action {
  padding: 2px 30px;
  font-size: 1.13rem;
  text-decoration: none;
  display: inline-block;
  border: none;
  color: #ffffff;
  background: #d62027;
  text-align: center;
}
.call-to-action .fa {
  margin-left: 5px;
}
.call-to-action.white, .call-to-action.with-icon.white {
  color: #ffffff;
  border-color: #ffffff;
}
.call-to-action.white .fa, .call-to-action.with-icon.white .fa {
  color: #ffffff;
  margin-left: 5px;
}
.call-to-action.dark {
  background: #93161b;
}
.call-to-action.dark:hover {
  background: #7d1317;
}
.call-to-action.secondary {
  background-color: #000000;
}
.call-to-action.med-button {
  padding: 5px 30px;
  font-size: 1.5rem;
}
.call-to-action.big-button {
  padding: 15px 30px;
  font-size: 130%;
}
@media (min-width: 1200px) {
  .call-to-action.big-button.with-icon .fa {
    line-height: 66px;
  }
}
@media (min-width: 1200px) {
  .call-to-action.big-button {
    padding: 2.5% 5%;
  }
}
.call-to-action.big-button.hidden {
  display: none;
}
.call-to-action.small-button {
  padding: 10px 20px;
  font-size: 1rem;
  height: auto;
  line-height: normal;
}
.call-to-action.with-icon {
  text-align: left;
  padding-left: 20px;
  padding-right: 20px;
  width: 240px;
}
.call-to-action.with-icon .fa {
  color: #000000;
  float: right;
  line-height: 48px;
}
@media (min-width: 640px) {
  .call-to-action.with-icon {
    width: 100%;
  }
}
.call-to-action:hover {
  background: #93161b;
  color: #ffffff;
}

.back-to-top {
  display: inline-block;
  color: #ffffff;
}
.back-to-top .fa {
  text-decoration: underline;
}
.back-to-top a {
  text-decoration: underline;
}
.back-to-top.hidden {
  display: none;
}

.book-float {
  display: inline-block;
}
.book-float.hidden {
  display: none;
}

.navigation-section {
  position: relative;
  display: block;
  max-width: 300px;
}

p + .navigation-section {
  display: block;
  margin-top: 40px;
}

.link-arrow {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #ffffff;
}
.link-arrow .fa {
  font-size: 1.3rem;
  margin-left: 20px;
}
.link-arrow.red {
  color: #d62027;
}

.navigation-link {
  text-transform: uppercase;
  color: #d62027;
  text-decoration: none;
  font-size: 1.25rem;
  line-height: 1em;
  display: block;
  padding-right: 30px;
}
.navigation-link .fa {
  font-size: 1.3rem;
  margin-left: 20px;
}
.navigation-link.white {
  color: white;
}
.navigation-link.red {
  color: #d62027;
}
.navigation-link.inline {
  margin-left: 30px;
}
.navigation-link.mobile .fa {
  display: none;
}
@media (min-width: 1200px) {
  .navigation-link.mobile .fa {
    display: inline-block;
  }
}

.more {
  text-decoration: none;
  display: inline-block;
  font-size: 0.9rem;
  color: #ffffff;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  -khtml-border-radius: 4px;
  border-radius: 4px;
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.more a {
  text-decoration: none;
}
.more:hover, .more.selected, .more.active {
  color: #4398C9;
}
.more i {
  margin-left: 10px;
}
.more.back i {
  margin-left: 0;
  margin-right: 10px;
}
.more.white {
  color: #ffffff;
  border-color: #ffffff;
}
.more.white:hover {
  background: none;
}
.more.large {
  font-size: 1.375rem;
}

.divider-button {
  margin: 30px 0;
  border-top: 1px solid #cccccc;
  position: relative;
}
.divider-button .more-large {
  text-align: center;
  margin-top: -30px;
}
.divider-button .more-large a {
  background: #F0EEE7;
  color: #ffffff;
}
.divider-button .more-large a:hover {
  background: #e6e3d7;
  border-color: #e6e3d7;
}

.search-btn {
  width: 15%;
  margin: 0;
  padding: 0 10px;
  float: left;
  background-color: #93161b;
  -webkit-border-top-right-radius: 5px;
  -webkit-border-bottom-right-radius: 5px;
  -moz-border-radius-topright: 5px;
  -moz-border-radius-bottomright: 5px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.page-numbers {
  text-align: center;
  margin-bottom: 30px;
}
.page-numbers li {
  margin: 0 1px;
  color: #ffffff;
  font-weight: bold;
}
.page-numbers li a, .page-numbers li strong, .page-numbers li span {
  width: 60px;
  height: 60px;
  text-align: center;
  line-height: 60px;
  text-decoration: none;
  border: 2px solid #b3b3b3;
  color: #b3b3b3;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  -khtml-border-radius: 60px;
  border-radius: 60px;
}
.page-numbers li a:hover, .page-numbers li strong:hover, .page-numbers li span:hover {
  border: 2px solid #cccccc;
  color: #cccccc;
  text-decoration: none;
}
.page-numbers li .current, .page-numbers li strong {
  border: 2px solid #4398C9;
  color: #4398C9;
}
.page-numbers li .current:hover, .page-numbers li strong:hover {
  border: 2px solid #4398C9;
  color: #4398C9;
}
.page-numbers .last {
  margin-right: 0;
}

.close {
  text-align: right;
  margin-bottom: 0;
}
.close a {
  color: #ffffff;
  text-transform: uppercase;
  text-decoration: none;
}
.close .fa {
  margin-right: 6px;
}

.close-panel {
  margin-bottom: 0;
}

.social-icons a, .social-icons .fa {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  font-size: 1.8rem;
  color: #ffffff;
  width: 50px;
  height: 50px;
  text-align: center;
  border-radius: 25px;
  -webkit-border-radius: 25px;
  -moz-border-radius: 25px;
  line-height: 46px;
  display: inline-block;
}
.social-icons a.twitter {
  background-color: #000000;
}
.social-icons a.twitter:hover {
  color: #ffffff;
  background-color: #00aced;
}
.social-icons a.twitter:hover .fa {
  color: #ffffff;
}
.social-icons a.facebook {
  background-color: #000000;
}
.social-icons a.facebook:hover {
  color: #ffffff;
  background-color: #3b5998;
}
.social-icons a.facebook:hover .fa {
  color: #ffffff;
}
.social-icons a.youtube:hover {
  color: #bb0000;
}
.social-icons a.youtube:hover .fa {
  color: #bb0000;
}

.social-icons.circle a {
  color: #000000;
  display: inline-block;
  width: 50px;
  height: 50px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -khtml-border-radius: 25px;
  border-radius: 25px;
  border: 2px solid #000000;
  text-align: center;
}
.social-icons.circle a .fa {
  font-size: 1.25rem;
  line-height: 46px;
}
.social-icons.circle a.white {
  color: #ffffff;
  border-color: #ffffff;
}
.social-icons.circle a.twitter:hover {
  color: #ffffff;
  background-color: #00aced;
  border-color: #00aced;
}
.social-icons.circle a.facebook:hover {
  color: #ffffff;
  background-color: #3b5998;
  border-color: #3b5998;
}
.social-icons.circle a.youtube:hover {
  color: #ffffff;
  background-color: #bb0000;
  border-color: #bb0000;
}

.social-icons.big-icons .fa {
  font-size: 2.5rem;
}
.social-icons.big-icons a {
  margin: 0 6px 1rem;
}

.big-buttons .call-to-action {
  width: 100%;
  text-align: center;
  line-height: 42px;
  border-color: #b3b3b3;
}
.big-buttons .call-to-action.prominent {
  border-color: #000000;
}
@media (min-width: 1440px) {
  .big-buttons .call-to-action {
    height: 80px;
    line-height: 72px;
  }
}

/*------------------------------------*\
    Forms & Tables
    Author: Chris Smith
\*------------------------------------*/
.form-fields {
  margin-bottom: 20px;
}
.form-fields .grid__item {
  vertical-align: middle;
}
.form-fields li {
  margin-bottom: 10px;
  vertical-align: top;
}
.form-fields .hidden {
  display: none;
}
@media (min-width: 640px) {
  .form-fields li {
    margin-bottom: 20px;
  }
}

/* Form widths */
@media (min-width: 640px) {
  .form-fields.width-50 {
    width: 50%;
  }
}
@media (min-width: 1200px) {
  .form-fields.width-70 {
    width: 70%;
  }
}

@media (min-width: 640px) {
  .form-fields .col-full {
    padding-right: 10px;
    width: 99%;
  }
}
.form-fields .col-half {
  width: 100%;
}
@media (min-width: 640px) {
  .form-fields .col-half {
    width: 49%;
    padding-left: 10px;
    padding-right: 10px;
  }
}
.form-fields .col-third {
  width: 100%;
}
@media (min-width: 640px) {
  .form-fields .col-third {
    width: 32%;
    padding-left: 10px;
    padding-right: 10px;
  }
}

label, .label {
  font-size: 0.875rem;
  color: #58595B;
}

.text-input, textarea, select, .search-field, .input-text, input[type=email] {
  width: 100%;
  height: 40px;
  padding-left: 10px;
  background: #ffffff;
  box-sizing: border-box;
  color: #808080;
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  border: 1px solid #b3b3b3;
}
@media (min-width: 1200px) {
  .text-input, textarea, select, .search-field, .input-text, input[type=email] {
    height: 50px;
  }
}

.search-field {
  -webkit-border-top-left-radius: 5px;
  -webkit-border-bottom-left-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-bottomright: 5px;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

.search-field-collection {
  width: 85%;
  float: left;
}

::-webkit-input-placeholder {
  color: #BDC3C7;
}

:-moz-placeholder {
  color: #BDC3C7;
}

::-moz-placeholder {
  color: #BDC3C7;
}

:-ms-input-placeholder {
  color: #BDC3C7;
}

textarea {
  height: auto;
  padding: 20px 10px;
}

select {
  text-indent: 4px;
  border: 1px solid #58595B;
  background: #ffffff url("../images/dropdown-arrow.png") no-repeat 97% 50%;
  background-size: 20px;
  -webkit-appearance: none;
  border-radius: 0;
}

.text-input:focus, textarea:focus, select:focus {
  border: 1px solid #4398C9;
  outline: none;
}

.required {
  color: #d62027;
}

.btn, button, html input[type=button], input[type=reset], input[type=submit] {
  margin: 0 auto;
  background: #d62027;
  border: none;
  height: 40px;
  padding: 0 30px;
  line-height: 42px;
  color: #ffffff;
  border-radius: 0;
  display: block;
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.btn:hover, button:hover, html input[type=button]:hover, input[type=reset]:hover, input[type=submit]:hover {
  background: #de4d52;
}
.btn:focus, button:focus, html input[type=button]:focus, input[type=reset]:focus, input[type=submit]:focus {
  border-color: #d62027;
}
.btn.btn50, button.btn50, html input[type=button].btn50, input[type=reset].btn50, input[type=submit].btn50 {
  width: 50%;
  margin: 0 auto;
}
@media (min-width: 1200px) {
  .btn, button, html input[type=button], input[type=reset], input[type=submit] {
    height: 50px;
  }
}

.large-form .text-input, .large-form textarea, .large-form select {
  height: 60px;
  padding: 20px;
}
.large-form .btn {
  height: 60px;
}
@media (min-width: 1200px) {
  .large-form .btn {
    height: 80px;
  }
}
@media (min-width: 1200px) {
  .large-form .text-input, .large-form select, .large-form .btn {
    height: 80px;
  }
  .large-form textarea {
    height: auto;
  }
}

.inline-submit {
  position: relative;
  padding-right: 80px;
}
.inline-submit button, .inline-submit html input[type=button], .inline-submit input[type=reset], .inline-submit input[type=submit] {
  position: absolute;
  top: 0;
  right: 0;
  width: 70px;
  padding: 0;
  line-height: 0;
}
.inline-submit button:active, .inline-submit html input[type=button]:active, .inline-submit input[type=reset]:active, .inline-submit input[type=submit]:active {
  top: 1px;
}

.on-colour label, .on-colour .label, .on-colour button {
  color: #ffffff;
}
.on-colour .text-input, .on-colour textarea, .on-colour select, .on-colour .extra-help {
  color: #ffffff;
}
.on-colour button, .on-colour .btn {
  border-color: #ffffff;
  color: #ffffff;
}
.on-colour button:hover, .on-colour .btn:hover {
  background: none;
}
.on-colour ::-webkit-input-placeholder {
  color: #ffffff;
}
.on-colour :-moz-placeholder {
  color: #ffffff;
}
.on-colour ::-moz-placeholder {
  color: #ffffff;
}
.on-colour :-ms-input-placeholder {
  color: #ffffff;
}

.on-colour.green select {
  color: #e4e1d4;
}
.on-colour.green ::-webkit-input-placeholder {
  color: #e4e1d4;
}
.on-colour.green :-moz-placeholder {
  color: #e4e1d4;
}
.on-colour.green ::-moz-placeholder {
  color: #e4e1d4;
}
.on-colour.green :-ms-input-placeholder {
  color: #e4e1d4;
}

.on-colour .div.wpcf7-mail-sent-ok, .on-colour div.wpcf7-validation-errors {
  border-color: #ffffff;
  border-width: 4px;
  padding: 20px;
  color: #ffffff;
}
.on-colour .span.wpcf7-not-valid-tip {
  color: #ffffff !important;
}

.on-grey .text-input, .on-grey textarea, .on-grey select {
  border-color: #cccccc;
}
.on-grey select {
  color: #b3b3b3;
}

/*
** Template Styles
// Common Styles, slightly more specific (responsive video container, maps, navigation etc)
*/
body {
  position: relative;
}
body.no-scroll {
  overflow: hidden;
}

.no-support {
  text-align: center;
  padding-top: 30px;
}

/* ------------------------
** Common Styles/Elements
------------------------ */
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
  margin-top: 20px;
  margin-bottom: 20px;
}
.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 1200px) {
  .video-container {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
@media (min-width: 1440px) {
  .video-container {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}

.location-map-wrapper {
  margin-bottom: 20px;
}
.location-map-wrapper iframe {
  width: 100%;
  height: 300px;
}
@media (min-width: 1200px) {
  .location-map-wrapper iframe {
    height: 500px;
  }
}

.location-map-wrapper-smaller {
  margin-bottom: 20px;
}
.location-map-wrapper-smaller iframe {
  width: 100%;
  height: 260px;
}

.virtual-tour-wrapper {
  margin-top: 30px;
}
.virtual-tour-wrapper iframe {
  width: 100%;
  height: 25vw;
  min-height: 300px;
  max-height: 400px;
}
@media (min-width: 1200px) {
  .virtual-tour-wrapper {
    margin-bottom: 30px;
  }
}

.article-nav {
  overflow: auto;
  text-align: center;
  margin-bottom: 0;
  width: 100%;
}
.article-nav a {
  text-decoration: none;
}
.article-nav a:hover {
  color: #4398C9;
}
.article-nav span {
  display: inline-block;
  margin: 0 10px 10px;
}
@media (min-width: 640px) {
  .article-nav .prev {
    float: left;
  }
  .article-nav .next {
    float: right;
  }
}

.descr {
  margin-bottom: 10px;
}

.excerpt-wrapper p {
  font-size: 0.875rem;
}

.wysiwyg img {
  display: block;
  max-width: 100%;
  height: auto;
}
.wysiwyg ul {
  list-style-image: url("../images/bullet.svg");
  margin-left: 20px;
  margin-bottom: 30px;
}
.wysiwyg ul li {
  padding-left: 20px;
  line-height: 1.675rem;
  margin-bottom: 10px;
}
.wysiwyg .form-fields {
  margin-bottom: 20px;
}
.wysiwyg .form-fields li {
  padding-left: 0;
}
.wysiwyg blockquote {
  padding-left: 20px;
  border-left: 4px solid #4398C9;
}
@media (min-width: 1200px) {
  .wysiwyg ul {
    margin-left: 50px;
  }
  .wysiwyg blockquote {
    margin-left: 40px;
  }
}

.scroll-indicator {
  position: absolute;
  bottom: 40px;
  left: 0;
  width: 100%;
  display: none;
  text-align: center;
  animation-delay: 0.75s;
  -webkit-animation-delay: 0.75s;
  -moz-animation-delay: 0.75s;
}
.scroll-indicator a {
  color: #000000;
  display: inline-block;
  width: 50px;
  height: 50px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -khtml-border-radius: 25px;
  border-radius: 25px;
  border: 2px solid #000000;
  text-align: center;
}
.scroll-indicator a .fa {
  font-size: 1.25rem;
  line-height: 46px;
}
.scroll-indicator a.white {
  color: #ffffff;
  border-color: #ffffff;
}
.scroll-indicator .fa {
  color: #ffffff;
  margin: 0;
}
@media (min-width: 640px) {
  .scroll-indicator {
    display: block;
  }
}

.fancybox-close:active {
  position: absolute;
  top: 1;
}

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

.fancybox-title-outside-wrap {
  color: #000000;
}

@media (min-width: 640px) {
  .newsletter {
    padding: 60px 0 30px;
  }
}
@media (min-width: 1200px) {
  .newsletter {
    padding: 80px 0 30px;
  }
}

#mc_embed_signup {
  background: none !important;
}

#mc_embed_signup form {
  max-width: 400px;
  margin: 0 auto;
}

#mc_embed_signup input.email {
  width: 100% !important;
  height: 50px !important;
  border: none;
  color: #58595B !important;
  display: inline-block;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  -khtml-border-radius: 4px;
  border-radius: 4px;
}

#mc_embed_signup input.button {
  display: inline-block;
  text-transform: uppercase !important;
  margin: 0 auto !important;
  background: #000000 !important;
  height: 50px !important;
  width: 10%;
  color: #ffffff !important;
}
#mc_embed_signup input.button:hover {
  background: #d62027 !important;
}

.pointy-banner {
  position: relative;
  margin-bottom: 50px;
}
.pointy-banner:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -50px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 50px 0 50px;
  border-color: #d62027 transparent transparent transparent;
}

.hide-mobile {
  display: none;
}
@media (min-width: 1200px) {
  .hide-mobile {
    display: block;
  }
}

.hide-desk {
  display: block;
}
@media (min-width: 1200px) {
  .hide-desk {
    display: none;
  }
}

.cookies-warning {
  background-color: rgba(204, 204, 204, 0.2);
  padding-top: 10px;
  padding-bottom: 16px;
}
.cookies-warning p {
  font-size: 0.875rem;
  margin-bottom: 0;
}
.cookies-warning .accept-cookies {
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 0;
  padding-right: 20px;
  padding-left: 20px;
  height: 30px;
  line-height: 24px;
}
@media (min-width: 1200px) {
  .cookies-warning {
    overflow: auto;
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .cookies-warning .accept-cookies {
    float: right;
    margin-top: 0;
  }
}

/* ------------------------
** Header
------------------------ */
#ticket-header {
  width: 100%;
  padding: 10px 4%;
  height: auto;
  background-color: #000000;
  overflow: hidden;
  z-index: 100;
  position: relative;
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media (min-width: 1200px) {
  #ticket-header {
    height: auto;
  }
}

.ticket-header-bar {
  text-align: center;
}
@media (min-width: 640px) {
  .ticket-header-bar {
    text-align: left;
  }
}
.ticket-header-bar .navigation-link {
  float: none;
}
@media (min-width: 640px) {
  .ticket-header-bar .navigation-link {
    position: absolute;
    top: 50%;
    right: 30px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.ticket-header-bar .navigation-link .fa {
  margin-left: 0;
}
.ticket-header-bar .ticket-logo-wrapper {
  height: auto;
  text-align: left;
  display: block;
  margin-top: 10px;
}
.ticket-header-bar .ticket-logo-wrapper h2 {
  margin-bottom: 0;
  text-align: center;
  margin-bottom: 20px;
}
@media (min-width: 640px) {
  .ticket-header-bar .ticket-logo-wrapper h2 {
    text-align: left;
    margin-bottom: 0;
  }
}
@media (min-width: 640px) {
  .ticket-header-bar .ticket-logo-wrapper {
    display: inline-block;
  }
}
.ticket-header-bar .ticket-logo-wrapper img {
  min-height: 80px;
}

#site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0;
  height: 100px;
  background: black;
  /* Old browsers */
  background: -moz-linear-gradient(top, black 0%, black 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, black 0%, black 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, black 0%, black 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#000000", endColorstr="#000000",GradientType=0 );
  /* IE6-9 */
  overflow: none;
  z-index: 100;
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media (min-width: 1200px) {
  #site-header {
    height: 120px;
  }
}

#site-header.stuck {
  background: -moz-linear-gradient(top, black 0%, black 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, black 0%, black 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, black 0%, black 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#000000", endColorstr="#000000",GradientType=0 );
  /* IE6-9 */
}
@media (min-width: 1200px) {
  #site-header.stuck {
    position: fixed;
    z-index: 100;
    height: 120px;
  }
}

.transparent-header #site-header {
  background: -moz-linear-gradient(top, black 0%, black 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, black 0%, black 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, black 0%, black 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#000000", endColorstr="#000000",GradientType=0 );
  /* IE6-9 */
}
@media (min-width: 1200px) {
  .transparent-header #site-header {
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.74) 0%, rgba(0, 0, 0, 0.49) 41%, rgba(0, 0, 0, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.74) 0%, rgba(0, 0, 0, 0.49) 41%, rgba(0, 0, 0, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.74) 0%, rgba(0, 0, 0, 0.49) 41%, rgba(0, 0, 0, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#bd000000", endColorstr="#00000000",GradientType=0 );
    /* IE6-9 */
  }
}
.transparent-header #site-header.stuck {
  background: -moz-linear-gradient(top, black 0%, black 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, black 0%, black 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, black 0%, black 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#000000", endColorstr="#000000",GradientType=0 );
  /* IE6-9 */
}
.transparent-header #hero-container {
  margin-top: -100px;
}
@media (min-width: 1200px) {
  .transparent-header #hero-container {
    margin-top: -120px;
  }
}

.whats-on-sticky {
  position: fixed;
  opacity: 0;
  top: -100px;
  left: 0;
  width: 100%;
  padding: 0 4%;
  background-color: #d62027;
  overflow: none;
  z-index: 99;
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.whats-on-sticky .info-wrapper {
  position: relative;
}
.whats-on-sticky .show-information {
  display: none;
}
@media (min-width: 640px) {
  .whats-on-sticky .show-information {
    display: inline-block;
    padding: 10px 0;
    width: 62%;
    vertical-align: middle;
  }
}
.whats-on-sticky .sticky-title {
  color: #ffffff;
  font-size: 1.2rem;
  text-transform: uppercase;
  display: block;
}
.whats-on-sticky .sticky-sub-title {
  color: #ffffff;
}
.whats-on-sticky .book-cta {
  margin-bottom: 0;
  width: 100%;
}
.whats-on-sticky .book-cta .call-to-action {
  margin-top: 10px;
  margin-bottom: 5px;
  width: 100%;
}
@media (min-width: 640px) {
  .whats-on-sticky .book-cta {
    width: 35%;
    vertical-align: middle;
    margin-top: 0;
    margin-bottom: 0;
    display: inline-block;
  }
  .whats-on-sticky .book-cta .call-to-action {
    max-width: 200px;
  }
}
.whats-on-sticky .call-to-action {
  font-size: 1.5rem;
}
.whats-on-sticky.stuck {
  top: 100px;
  opacity: 1;
}
@media (min-width: 1200px) {
  .whats-on-sticky.stuck {
    top: 60px;
  }
}

@media (min-width: 1200px) {
  body.nav-up #site-header {
    top: -60px;
  }
  body.nav-up #site-header .main-nav {
    margin-top: 15px;
  }
  body.nav-up #site-header .main-nav li a {
    font-size: 1.2rem;
    padding-top: 20px;
  }
  body.nav-up #site-header .logo-wrapper {
    width: 170px;
    margin-top: 68px;
  }
  body.nav-up #site-header .logo-wrapper img {
    width: 100%;
    min-height: 40px;
  }
}
@media (min-width: 1200px) {
  body.nav-down .whats-on-sticky {
    top: 120px;
  }
}

.header-spacer {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  background: #000000;
  height: 100px;
}
@media (min-width: 1200px) {
  .header-spacer {
    height: 120px;
  }
}

.search-bar {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  display: none;
  width: 0;
  opacity: 0;
  position: absolute;
  top: 43px;
  right: 4%;
  background: #C40A12;
  padding: 20px;
}
.search-bar.active {
  display: inline-block;
  opacity: 1;
  width: 400px;
}
.search-bar .search-wrapper {
  width: 90%;
  position: relative;
  display: inline-block;
}
.search-bar .search-input {
  width: 100%;
  height: 50px;
  padding: 0 50px 0 10px;
}
.search-bar .close-search {
  text-align: right;
  width: 8%;
  display: inline-block;
  margin: 0;
}
.search-bar .close-search a {
  color: #ffffff;
}
.search-bar .search-submit {
  position: absolute;
  right: 5px;
  top: 10px;
  padding: 0;
  height: 30px;
  line-height: 15px;
  width: 30px;
  background: #de4d52;
  -moz-border-radius: 15px;
  -webkit-border-radius: 15px;
  -khtml-border-radius: 15px;
  border-radius: 15px;
}

.quick-buy {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  display: none;
  width: 0;
  opacity: 0;
  position: absolute;
  top: 43px;
  right: 4%;
  background: #C40A12;
  padding: 20px;
}
.quick-buy.active {
  display: inline-block;
  opacity: 1;
  width: 400px;
}
.quick-buy .buy-wrapper {
  width: 90%;
  position: relative;
  display: inline-block;
}
.quick-buy .buy-wrapper .fa {
  position: absolute;
  top: 12px;
  right: 15px;
  font-size: 1.5rem;
}
.quick-buy .close-buy {
  text-align: right;
  width: 8%;
  display: inline-block;
  margin: 0;
}
.quick-buy .close-buy a {
  color: #ffffff;
}
.quick-buy .buy-select {
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  -khtml-border-radius: 0px;
  border-radius: 0px;
}

.menu-trigger {
  float: right;
  margin-bottom: 0;
  margin-right: 4%;
  line-height: 100px;
  color: #ffffff;
  font-size: 2rem;
}
.menu-trigger a {
  color: #ffffff;
  text-decoration: none;
}

.logo-wrapper {
  width: 205px;
  height: auto;
  float: left;
  margin-top: 10px;
  margin-left: 4%;
}
@media (min-width: 1200px) {
  .logo-wrapper {
    width: 205px;
    float: left;
    margin-top: 25px;
  }
}
.logo-wrapper img {
  min-height: 80px;
}

h2.logo {
  font-size: 0rem;
  line-height: 0rem !important;
}

.main-nav {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  display: inline-block;
  line-height: 0;
}
.main-nav__explore {
  cursor: pointer;
}
.main-nav a {
  text-transform: uppercase;
  color: #ffffff;
  font-size: 1.2rem;
  line-height: 1em;
  padding: 20px 0;
}
.main-nav a:hover {
  color: #ffffff;
}
.main-nav a.selected {
  border-color: #d62027;
}
.main-nav li {
  margin-left: 25px;
}
.main-nav li:last-child {
  margin-right: 40px;
}
@media screen and (max-width: calc(1200px - 1px)) {
  .main-nav {
    display: none;
  }
}

.secondary-nav-menu {
  text-align: right;
}

.secondary-nav {
  display: inline-block;
  margin: 0;
}
.secondary-nav a {
  text-transform: uppercase;
  color: #D8CCCC;
  font-size: 0.7rem;
  line-height: 1em;
}
@media (min-width: 1440px) {
  .secondary-nav a {
    font-size: 0.75rem;
  }
}
.secondary-nav li {
  padding: 10px 7px;
  text-align: center;
  margin: 0;
}
@media (min-width: 1440px) {
  .secondary-nav li {
    padding: 10px 12px;
  }
}
.secondary-nav li.account {
  border-left: 1px solid #de4d52;
  padding-left: 10px;
}
.secondary-nav.highlighted-nav {
  margin-left: 15px;
  background-color: #d62027;
}
.secondary-nav.highlighted-nav li {
  background-color: #d62027;
}
.secondary-nav.highlighted-nav a {
  color: #ffffff;
}
.secondary-nav.highlighted-nav .search-trigger.active {
  background-color: #C40A12;
}
.secondary-nav.highlighted-nav .buy-trigger.active {
  background-color: #C40A12;
}
.secondary-nav.highlighted-nav .fa {
  margin-right: 5px;
  display: inline-block;
}

.mobile-nav-buttons {
  margin-top: 18px;
  float: right;
  font-size: 1.25rem;
  line-height: 0.5rem;
}
.mobile-nav-buttons a {
  color: #ffffff;
}
.mobile-nav-buttons li {
  float: left;
  list-style: none;
  text-align: center;
  width: 45px;
  margin-left: 5px;
}

.nav-icon-text {
  font-size: 0.7rem;
}

.c-explore {
  width: 100%;
}
.c-explore-menu {
  height: 0;
  overflow: scroll;
  background-color: rgba(214, 32, 39, 0.95);
  top: 120px;
  left: 0;
  right: 0;
  position: fixed;
  -webkit-transition: height 250ms ease-in-out;
  -moz-transition: height 250ms ease-in-out;
  -ms-transition: height 250ms ease-in-out;
  -o-transition: height 250ms ease-in-out;
  transition: height 250ms ease-in-out;
  z-index: 1000;
  overflow-y: scroll;
  -ms-overflow-style: none;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.c-explore-menu__close {
  font-size: 1.5rem;
  display: inline-block;
  position: absolute;
  top: 20px;
  right: 20px;
}
.c-explore-menu__close a {
  color: #ffffff;
}
.c-explore-menu__wrapper {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
}
.nav-open .c-explore-menu {
  height: calc(100vh - 120px);
}
.c-explore-sub-menu {
  padding: 0 20px;
  max-width: 260px;
}
.c-explore-sub-menu__title {
  color: #ffffff;
  padding: 0 6px;
  width: max-content;
}
.c-explore-sub-menu__title:hover {
  background: #93161b;
  color: #ffffff;
}
.c-explore-sub-menu__nav {
  list-style-type: none;
  margin-left: 0;
}
.c-explore-sub-menu__nav > li {
  width: max-content;
  max-width: 260px;
  padding: 6px;
  margin-bottom: 8px;
}
.c-explore-sub-menu__nav > li:hover {
  background: #93161b;
  color: #ffffff;
}
.c-explore-sub-menu a {
  text-decoration: none;
  color: #ffffff;
}

body.nav-open, html.nav-open {
  overflow: hidden;
  height: 100%;
}
@media screen and (max-width: calc(1200px - 1px)) {
  body.nav-open .c-explore-menu, html.nav-open .c-explore-menu {
    display: none;
  }
}

.fa {
  font-size: 80%;
  margin-left: 10px;
}

.nav-open .fa-plus {
  display: none;
}

.fa-minus {
  display: none;
}
.nav-open .fa-minus {
  display: inline;
}

#site-footer {
  position: relative;
  padding: 3% 5% 8% 5%;
  background: #000000;
  color: #ffffff;
  overflow: hidden;
  border-top: 10px solid #C40A12;
}
#site-footer a {
  color: white;
}
#site-footer:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 200px;
  z-index: -1;
}

.footer-left {
  display: block;
  margin-bottom: 30px;
}
@media (min-width: 1200px) {
  .footer-left {
    display: inline-block;
    float: left;
  }
}

.footer-right {
  display: block;
}
@media (min-width: 1200px) {
  .footer-right {
    display: inline-block;
    float: right;
  }
}

.footer-logo {
  margin: 30px 0;
  width: 100%;
  display: block;
  text-align: center;
  float: none;
}
.footer-logo img {
  max-width: 150px;
}

.footer-navigation {
  display: block;
  width: 100%;
  margin-bottom: 20px;
}
@media (min-width: 1200px) {
  .footer-navigation {
    float: right;
    width: auto;
  }
}
.footer-navigation .main-nav-menu {
  text-align: center;
  display: block;
}
.footer-navigation .main-nav {
  display: block;
  text-align: center;
}
.footer-navigation .main-nav a {
  color: #000000;
  margin-top: 0;
  padding: 0;
}
.footer-navigation .main-nav li {
  display: block;
  margin: 0 0 20px 0;
}
@media (min-width: 640px) {
  .footer-navigation .main-nav li {
    display: inline-block;
    margin-right: 20px;
  }
  .footer-navigation .main-nav li:last-child {
    margin-right: 0;
  }
}
@media (min-width: 1200px) {
  .footer-navigation .main-nav {
    text-align: right;
  }
  .footer-navigation .main-nav li {
    margin-bottom: 0;
  }
}
.footer-navigation .secondary-nav-menu {
  display: block;
  text-align: center;
  float: none;
}
@media (min-width: 1200px) {
  .footer-navigation .secondary-nav-menu {
    text-align: right;
  }
}
.footer-navigation .secondary-nav {
  margin-top: 10px;
}
.footer-navigation .secondary-nav a {
  color: #58595B;
}
.footer-navigation .secondary-nav li {
  display: block;
  padding: 0;
}
@media (min-width: 640px) {
  .footer-navigation .secondary-nav li {
    padding-left: 10px;
    padding-right: 10px;
    display: inline-block;
  }
  .footer-navigation .secondary-nav li:first-child {
    padding-left: 0;
  }
  .footer-navigation .secondary-nav li:last-child {
    padding-right: 0;
  }
}

.social-links {
  display: block;
  text-align: center;
}
@media (min-width: 1200px) {
  .social-links {
    text-align: right;
  }
}
.social-links li {
  margin-right: 5px;
}
.social-links li:last-child {
  margin: 0;
}
.social-links li a {
  height: 40px;
  width: 40px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -khtml-border-radius: 20px;
  border-radius: 20px;
  text-align: center;
  line-height: 37px;
  font-size: 1.5rem;
}
.social-links li a.instagram {
  background-color: #833AB4;
}
.social-links li a.twitter {
  background-color: #00aced;
}
.social-links li a.facebook {
  background-color: #3b5998;
}

.social-links .fa,
.search-mobile .fa {
  margin-left: 0;
}

@media (min-width: 640px) {
  .follow-us h5 {
    position: relative;
    display: inline-block;
  }
  .follow-us a {
    position: relative;
    display: inline-block;
  }
}

.sponsor-logos {
  list-style-type: none;
  display: block;
  text-align: center;
  margin-left: 0;
}
.sponsor-logos li {
  height: 50px;
  display: block;
  margin-bottom: 10px;
}
.sponsor-logos li img {
  height: 40px;
}
@media (min-width: 1200px) {
  .sponsor-logos {
    text-align: right;
  }
  .sponsor-logos li {
    display: inline-block;
    margin-left: 10px;
  }
}

.footer-meta {
  display: block;
  margin-bottom: 10px;
  text-align: center;
}
@media (min-width: 1200px) {
  .footer-meta {
    text-align: left;
  }
}

@media (min-width: 1200px) {
  .address {
    width: 260px;
  }
}

.substrakt a {
  opacity: 0.7;
  text-decoration: none;
  margin-top: 30px;
  clear: both;
  font-size: 0.8rem;
  display: block;
  text-align: center;
}
@media (min-width: 1200px) {
  .substrakt a {
    text-align: left;
  }
}

.copyright {
  font-size: 0.6rem;
}
@media (min-width: 640px) {
  .copyright {
    text-align: right;
  }
}

/* ------------------------
** Mobile Menu
------------------------ */
.mobile-menu {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(214, 32, 39, 0.95);
  color: #ffffff;
  display: none;
  padding: 22px 10px;
}
.mobile-menu h3 {
  margin-bottom: 0;
  border-top: 1px solid #ffffff;
  padding: 10px 0;
}
.mobile-menu.active {
  display: block;
  z-index: 200;
}
@media screen and (min-width: 1200px) {
  .mobile-menu.active {
    display: none;
  }
}
.mobile-menu .nav {
  text-align: center;
}
.mobile-menu .nested-nav {
  padding-left: 10px;
  font-size: 1rem;
  padding-top: 20px;
  border-top: 1px solid #ffffff;
}
.mobile-menu .nested-nav > li > a {
  margin-bottom: 10px;
  font-size: 1.5rem;
}
.mobile-menu .nested-nav .sub-menu {
  margin-left: 16px;
}
.mobile-menu .nested-nav .sub-menu li {
  margin-bottom: 6px;
}
.mobile-menu .menu-item-has-children {
  margin-bottom: 20px;
  width: 100%;
}
@media (min-width: 640px) {
  .mobile-menu .menu-item-has-children {
    width: 31%;
    vertical-align: top;
  }
}

.mobile-menu .buy-wrapper {
  display: block;
  position: relative;
}

.close-menu {
  font-size: 1.3rem;
  display: inline-block;
  position: absolute;
  top: 15px;
  right: 10px;
}

.mobile-logo {
  margin-top: 10px;
  margin-bottom: 20px;
}

.mobile-nav-primary {
  margin-top: 20px;
  margin-bottom: 20px;
}
.mobile-nav-primary li {
  margin-bottom: 8px;
}
.mobile-nav-primary a {
  text-transform: uppercase;
  color: #ffffff;
  font-size: 1.25rem;
}
.mobile-nav-primary-sub-menu__chevron {
  top: 0;
  cursor: pointer;
}
.mobile-nav-primary-sub-menu__chevron .fa-chevron-down {
  position: absolute;
  margin-top: 5px;
}
.mobile-nav-primary-sub-menu__wrapper {
  height: 0;
  display: none;
}
.mobile-nav-primary-sub-menu__wrapper--open {
  height: auto;
  display: block;
}
.mobile-nav-primary-sub-menu__nav {
  list-style-type: none;
  margin-left: 0;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  margin-top: 6px;
  margin-bottom: 0;
}
.mobile-nav-primary-sub-menu__nav > li {
  padding: 2px;
  margin-bottom: 0;
}
.mobile-nav-primary-sub-menu__nav > li:hover {
  background: #93161b;
  color: #ffffff;
}
.mobile-nav-primary-sub-menu__nav > li a {
  font-size: 1rem;
}
.mobile-nav-primary-sub-menu a {
  margin-bottom: 6px;
}
.mobile-nav-primary__seperator {
  border-bottom: solid 2px #ffffff;
  max-width: 50px;
  margin: 0 auto;
}

.mobile-nav-secondary a {
  font-size: 0.875rem;
  color: #ffffff;
  text-transform: uppercase;
}

.social-links {
  display: block;
  margin-top: 20px;
}
.social-links li {
  margin: 0 14px !important;
}
.social-links li:last-of-type {
  margin-right: 0 !important;
}
.social-links a {
  background: #ffffff;
}

.search-mobile {
  width: 80%;
  margin: 0 auto;
  max-width: 400px;
  margin-bottom: 20px;
}
.search-mobile .search-wrapper {
  position: relative;
}
.search-mobile .search-wrapper .search-submit {
  position: absolute;
  right: 5px;
  top: 6px;
  padding: 0;
  height: 30px;
  line-height: 15px;
  width: 30px;
  background: #de4d52;
  -moz-border-radius: 15px;
  -webkit-border-radius: 15px;
  -khtml-border-radius: 15px;
  border-radius: 15px;
}
.search-mobile .search-wrapper .search-input {
  width: 100%;
  height: 40px;
  padding: 0 35px 0 5px;
}

.mobile-menu .buy-wrapper {
  width: 80%;
  margin: 0 auto;
  max-width: 400px;
  margin-bottom: 20px;
}
.mobile-menu .buy-wrapper #quick-by-select {
  border: 1px solid #e6e6e6;
}

.mobile-secondary-nav {
  font-size: 2rem;
  border-top: 1px solid #ffffff;
  text-align: center;
  padding-top: 20px;
}

/* ------------------------
** Hero Sections
------------------------ */
.hero-container {
  background-color: #000000;
}

.hero-slide {
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 38vw;
  min-height: 152px;
  max-height: 60vh;
  position: relative;
}

.page-title-bar {
  padding: 0 4%;
  background: #d62027;
  position: relative;
  text-align: center;
}
@media (min-width: 640px) {
  .page-title-bar {
    text-align: left;
  }
}
.page-title-bar.light-red {
  background-color: #de4d52;
}
.page-title-bar.single-page {
  padding: 2% 4%;
}
@media (min-width: 1200px) {
  .page-title-bar.single-page {
    padding: 1% 4%;
  }
}

.page-title {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 140%;
  text-transform: uppercase;
}
.page-title.lowercase {
  text-transform: none;
}
@media (min-width: 640px) {
  .page-title {
    font-size: 200%;
  }
}

.sub-title {
  display: block;
  color: #ffffff;
  font-size: 110%;
  margin-bottom: 10px;
}

.sub-description {
  display: block;
  color: #ffffff;
  font-size: 1rem;
  margin-bottom: 20px;
}
@media (min-width: 640px) {
  .sub-description {
    font-size: 1.3rem;
    margin-bottom: 0;
  }
}

.show-information {
  display: inline-block;
  width: 100%;
  padding: 10px 0;
}
@media (min-width: 640px) {
  .show-information {
    width: 49%;
    vertical-align: middle;
    padding: 1% 0;
    text-align: left;
  }
}
.show-information.single {
  width: 69%;
}
.show-information.red {
  background-color: #d62027;
}
.show-information .sub-title {
  margin-bottom: 0;
}

.book-cta {
  color: #ffffff;
  text-align: right;
  display: inline-block;
  margin-bottom: 20px;
}
.book-cta .cancelled {
  padding: 20px 0;
  text-align: center;
}
.book-cta .cancelled span {
  font-size: 1.2rem;
  display: block;
}
@media (min-width: 640px) {
  .book-cta {
    margin-top: 0px;
    vertical-align: middle;
    width: 49%;
    margin-bottom: 0;
  }
  .book-cta .cancelled {
    text-align: right;
  }
}

.hero-slide {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

.masthead-wrapper {
  position: absolute;
  bottom: 40%;
  left: 0;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  text-align: center;
  z-index: 10;
  color: #ffffff;
}
.masthead-wrapper .masthead-large {
  color: #ffffff;
}
.hero-mobile-carousel {
  background: #d62027;
}
.hero-mobile-carousel .owl-carousel .owl-wrapper-outer {
  overflow: auto !important;
  position: relative;
  width: 100%;
}
.hero-mobile-carousel .owl-controls {
  margin-top: 0;
  padding-bottom: 10px;
}
.hero-mobile-carousel .owl-controls.clickable {
  background: #d62027;
  width: 100%;
}
.hero-mobile-carousel .owl-controls .owl-page span {
  background: #ffffff !important;
}
.hero-mobile-carousel .single-slide {
  height: auto;
  position: relative;
}

.event-title {
  position: absolute;
  bottom: 20px;
  left: 0;
  width: 100%;
  text-align: center;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 10px;
}
.event-title.dark-text {
  color: #58595B;
}
@media (min-width: 1200px) {
  .event-title {
    bottom: 40px;
    font-size: 5rem;
    letter-spacing: 15px;
  }
  .event-title.smaller-text {
    font-size: 3rem;
  }
  .event-title.bottom-left {
    left: 60px;
    text-align: left;
  }
  .event-title.bottom-right {
    left: auto;
    right: 60px;
    text-align: right;
  }
  .event-title.bottom-center {
    left: 0;
  }
  .event-title.top-left {
    left: 60px;
    bottom: auto;
    top: 60px;
    text-align: left;
  }
  .event-title.top-right {
    left: auto;
    bottom: auto;
    top: 60px;
    right: 60px;
    text-align: right;
  }
  .event-title.top-center {
    left: 0;
    top: 60px;
    bottom: auto;
  }
  .event-title.middle-left {
    left: 60px;
    bottom: auto;
    top: 40%;
    text-align: left;
  }
  .event-title.middle-right {
    left: auto;
    bottom: auto;
    top: 40%;
    right: 60px;
    text-align: right;
  }
  .event-title.middle-center {
    left: 0;
    top: 40%;
    bottom: auto;
  }
}
@media (min-width: 1440px) {
  .event-title {
    font-size: 7.5rem;
    letter-spacing: 20px;
  }
  .event-title.smaller-text {
    font-size: 5rem;
  }
}

#hero-container.default:after {
  display: block;
  content: "";
  width: 100%;
  height: 80%;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0.6)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#000000",GradientType=0 );
  position: absolute;
  bottom: 0;
  left: 0;
}
#hero-container.default .intro {
  font-size: 1rem;
}
@media (min-width: 1200px) {
  #hero-container.default .intro {
    font-size: 1.125rem;
  }
}
@media (min-width: 640px) {
  #hero-container.default .masthead-wrapper {
    width: 760px;
    text-align: left;
    left: 50%;
    margin-left: -380px;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1200px) {
  #hero-container.default .masthead-wrapper {
    bottom: 40px;
  }
  #hero-container.default .intro {
    font-size: 1.25rem;
  }
}

.page-strapline {
  color: #ffffff;
}

.breadcrumb {
  color: #ffffff;
  margin-left: 4%;
  font-weight: bold;
  font-size: 110%;
}
.breadcrumb .breadcrumb_last {
  display: none;
}

/* ------------------------
** Newsletter Sign Up
------------------------ */
#newsletter-signup {
  padding: 30px 4%;
  background-color: rgba(204, 204, 204, 0.2);
  text-align: center;
}
#newsletter-signup input[type=submit] {
  margin: 10px auto;
  display: block;
}
@media (min-width: 1200px) {
  #newsletter-signup input[type=submit] {
    display: inline-block;
  }
}
#newsletter-signup input[type=text] {
  height: 40px;
  margin: 10px 0;
}
@media (min-width: 1200px) {
  #newsletter-signup input[type=text] {
    height: 50px;
  }
}
#newsletter-signup .newsletter-notice--error {
  font-weight: bold;
}

#site-content {
  margin-top: 100px;
}
@media (min-width: 1200px) {
  #site-content {
    margin-top: 120px;
  }
}

#site-content.spektrix-frame {
  margin-top: 0 !important;
}

iframe,
.show-content p img {
  max-width: 100%;
}

body.admin-bar #wpadminbar {
  position: fixed;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 780px) {
  body.admin-bar #wpadminbar {
    position: fixed;
    top: 0;
  }
}
body.admin-bar #site-header {
  margin-top: 46px;
}
@media only screen and (min-width: 780px) {
  body.admin-bar #site-header {
    margin-top: 32px;
  }
}
body.admin-bar.nav-up .whats-on-sticky.stuck {
  top: 146px;
}
@media (min-width: 640px) {
  body.admin-bar.nav-up .whats-on-sticky.stuck {
    top: 132px;
  }
}
@media (min-width: 1200px) {
  body.admin-bar.nav-up .whats-on-sticky.stuck {
    top: 92px;
  }
}
body.admin-bar.nav-down .whats-on-sticky.stuck {
  top: 146px;
}
@media (min-width: 640px) {
  body.admin-bar.nav-down .whats-on-sticky.stuck {
    top: 132px;
  }
}
@media (min-width: 1200px) {
  body.admin-bar.nav-down .whats-on-sticky.stuck {
    top: 152px;
  }
}

.breadcrumb {
  color: #ffffff;
  margin-left: 4%;
}
.breadcrumb li {
  display: inline-block;
  margin-right: 5px;
}
.breadcrumb li:before {
  margin-right: 5px;
}
.breadcrumb li a {
  color: #ffffff;
}
.breadcrumb li:first-child {
  margin-left: 0;
}

.whats-on-grid {
  padding: 20px 0;
  background: #000000;
}

.whats-on-block {
  background: #000000;
  height: 30vw;
  max-height: 250px;
  position: relative;
  cursor: pointer;
}
.whats-on-block:hover .block-fade {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  opacity: 1;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+69&0.57+50,0.49+81 */
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.57) 0%, rgba(0, 0, 0, 0.57) 50%, rgba(0, 0, 0, 0.52) 69%, rgba(0, 0, 0, 0.49) 81%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.57) 0%, rgba(0, 0, 0, 0.57) 50%, rgba(0, 0, 0, 0.52) 69%, rgba(0, 0, 0, 0.49) 81%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.57) 0%, rgba(0, 0, 0, 0.57) 50%, rgba(0, 0, 0, 0.52) 69%, rgba(0, 0, 0, 0.49) 81%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#91000000", endColorstr="#7d000000",GradientType=0 );
  /* IE6-9 */
}
.whats-on-block .whats-on-image {
  height: 100%;
  background-repeat: none;
  background-position: center;
  background-size: cover;
}
.whats-on-block .whats-on-info-wrapper {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  position: absolute;
  bottom: 5px;
  right: 0;
  z-index: 20;
}
.whats-on-block .book-btn {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  opacity: 1;
  height: 40px;
  font-weight: bold;
  font-size: 90%;
  background: #93161b;
  text-align: right;
  text-transform: uppercase;
  overflow: hidden;
}
.whats-on-block .book-btn .fa {
  margin-left: 5px;
}
@media (min-width: 1200px) {
  .whats-on-block .book-btn {
    height: 0px;
    opacity: 0;
  }
}
.whats-on-block:hover .whats-on-info-wrapper {
  bottom: 30px;
}
.whats-on-block:hover .whats-on-image {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.whats-on-block:hover .book-btn {
  opacity: 1;
  height: 40px;
}
.whats-on-block.listing {
  margin-bottom: 20px;
  height: 200px;
}
@media (min-width: 1200px) {
  .whats-on-block.listing {
    height: 300px;
  }
}

.whats-on-info-wrapper {
  position: absolute;
  bottom: 0;
  right: 0;
  max-width: 80%;
}

.whats-on-label {
  background: #d62027;
  padding: 10px 20px;
  text-align: right;
}
.whats-on-label .show-title {
  font-size: 100%;
  line-height: 1em;
  text-transform: uppercase;
  color: #ffffff;
  display: block;
}
.whats-on-label .show-date {
  font-size: 90%;
  line-height: 0.9rem;
  text-transform: uppercase;
  color: #ffffff;
}

.whats-on-blurb {
  font-size: 90%;
  color: #ffffff;
  line-height: 1em;
  text-align: right;
}

.block-fade {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 0.5;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+69&0+50,0.78+81 */
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.48) 69%, rgba(0, 0, 0, 0.78) 81%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.48) 69%, rgba(0, 0, 0, 0.78) 81%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.48) 69%, rgba(0, 0, 0, 0.78) 81%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#c7000000",GradientType=0 );
  /* IE6-9 */
}

.event-block {
  min-height: 350px;
  margin-bottom: 20px;
  position: relative;
  background-size: cover;
  background-repeat: none;
  background-position: center;
}
.event-block.centered .whats-on-info-wrapper {
  position: absolute;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  right: 0;
}
.event-block.centered .whats-on-label {
  text-align: center;
}
@media (min-width: 640px) {
  .event-block {
    margin-bottom: 0;
  }
}

.event-block-title-wrapper {
  position: absolute;
  bottom: 20px;
  right: 0;
  max-width: 80%;
}

.event-block-description {
  margin-top: 40px;
}
.event-block-description.white {
  color: #ffffff;
}

.page-intro-wrapper {
  position: absolute;
  bottom: 0;
  padding-bottom: 50px;
  z-index: 10;
  width: 80%;
}
@media (min-width: 640px) {
  .page-intro-wrapper {
    width: 60%;
  }
}
@media (min-width: 1200px) {
  .page-intro-wrapper {
    width: 70%;
  }
}

.page-intro-title {
  color: #ffffff;
  display: block;
  margin-bottom: 0;
  font-size: 2.6rem;
}
@media (min-width: 640px) {
  .page-intro-title {
    font-size: 3rem;
  }
}

.page-intro-label {
  background: #d62027;
  margin-bottom: 20px;
  width: auto;
  padding: 2% 4%;
  display: inline-block;
  max-width: 80%;
}
@media (min-width: 640px) {
  .page-intro-label {
    max-width: 60%;
  }
}

.page-intro-text {
  color: white;
  font-size: 1.2rem;
  padding-left: 4%;
}
@media (min-width: 640px) {
  .page-intro-text {
    font-size: 1.35rem;
  }
}
@media (min-width: 1200px) {
  .page-intro-text {
    font-size: 1.5rem;
  }
}

.event-listing {
  text-transform: uppercase;
  font-size: 1.44rem;
  margin-bottom: 0;
}
.event-listing.large {
  font-size: 1.88rem;
}
.event-listing.black {
  color: #000000;
}

.event-date {
  font-size: 1rem;
  display: block;
  margin-bottom: 10px;
}
.event-date.black {
  color: #000000;
}

.side-heading {
  font-size: 1.38rem;
  text-transform: uppercase;
  color: #ffffff;
  margin-bottom: 0;
  text-align: center;
}

.row-title {
  padding: 2% 1%;
  width: 100%;
  text-align: left;
  background: #d62027;
}
.row-title .section-navigation {
  position: relative;
  margin: 0 30px 10px 0;
}
@media (min-width: 640px) {
  .row-title {
    text-align: center;
  }
  .row-title .section-navigation {
    max-width: 33.33%;
    display: inline-block;
    vertical-align: middle;
    margin: 0;
  }
  .row-title .section-navigation:first-of-type .navigation-link {
    margin-left: 0;
  }
}
.row-title.mobile-bordered {
  border-top: 3px solid #C40A12;
}
@media (min-width: 1200px) {
  .row-title.mobile-bordered {
    text-align: center;
    border-top: none;
  }
}
.row-title.small {
  padding: 4% 2%;
}
.row-title .full-width-header {
  margin: 0 auto;
  display: block;
}

.content-block-heading {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  font-size: 1.85rem;
  color: #d62027;
}
@media (min-width: 640px) {
  .content-block-heading {
    font-size: 2rem;
  }
}
@media (min-width: 1200px) {
  .content-block-heading {
    font-size: 3rem;
  }
}
@media (min-width: 1440px) {
  .content-block-heading {
    font-size: 3.13rem;
  }
}
.content-block-heading.white {
  color: #ffffff;
}
.content-block-heading.black {
  color: #000000;
}
.content-block-heading.small {
  font-size: 1.85rem;
}
@media (min-width: 640px) {
  .content-block-heading.small {
    font-size: 2.38rem;
  }
}
@media (min-width: 1200px) {
  .content-block-heading.small {
    font-size: 2.38rem;
  }
}
.content-block-heading.smallest {
  font-size: 1.56em;
}

.full-width-header {
  text-align: center;
  color: #ffffff;
  font-size: 1.88rem;
  display: inline-block;
  vertical-align: center;
  margin: 0;
}

.full-width-subheader {
  text-align: center;
  color: #ffffff;
  font-size: 1.2rem;
  display: inline-block;
  vertical-align: center;
  margin: 0;
  display: block;
}

.section-navigation {
  margin-top: 40px;
  margin-bottom: 40px;
}
.section-navigation li {
  display: block;
  margin-bottom: 20px;
  margin-left: 0;
}
.section-navigation li:last-child {
  margin-bottom: 0;
}
.section-navigation .fa {
  display: inline;
  float: right;
}
.section-navigation.mobile li {
  display: inline-block;
  margin-left: 0;
  margin-right: 20px;
}
@media (min-width: 1200px) {
  .section-navigation.mobile li {
    display: block;
  }
}
.section-navigation a.navigation-link {
  display: block;
}

.navigation-block {
  position: relative;
  max-width: 300px;
  display: block;
  padding-right: 30px;
}
.navigation-block a {
  color: #ffffff;
}
.navigation-block .link-arrow {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #ffffff;
}
.navigation-block .link-arrow.red {
  color: #d62027;
}
.navigation-block .fa {
  font-size: 1.3rem;
}

.section-navigation .navigation-block {
  max-width: none;
  margin-bottom: 20px;
  display: block;
}
@media (min-width: 1200px) {
  .section-navigation .navigation-block {
    margin-bottom: 20px;
    display: block;
  }
  .section-navigation .link-arrow {
    display: block;
  }
}

.section-navigation li {
  position: relative;
}
.section-navigation .link-arrow {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #ffffff;
  font-size: 1.3rem;
}
.section-navigation .link-arrow.red {
  color: #d62027;
}

.padded-content .inner {
  padding: 20px 0;
}
@media (min-width: 640px) {
  .padded-content .inner {
    padding: 30px 3%;
  }
}
@media (min-width: 1200px) {
  .padded-content .inner {
    padding: 50px 3%;
  }
}

.wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
  color: #58595B;
}
.wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
  font-size: 1.5rem;
  margin-bottom: 10px;
}

.text-block {
  padding: 0 8%;
}
.text-block .content-block-heading {
  font-size: 1.56rem;
  margin-bottom: 10px;
  display: block;
}
.text-block p {
  font-size: 1.2rem;
  line-height: 1.6em;
}
.text-block.white {
  color: #ffffff;
  padding: 20px 3%;
}
.text-block.white .content-block-heading {
  color: #ffffff;
}
@media (min-width: 1200px) {
  .text-block.white {
    padding: 40px 8%;
  }
}

.heading-container {
  padding: 20px 8%;
}
@media (min-width: 640px) {
  .heading-container {
    padding: 20px 4%;
  }
}

.content-block-image {
  background-position: center;
  background-size: cover;
}

.content-block .full-text-block {
  padding: 3% 4%;
}
.content-block .heading-container, .content-block .text-block {
  padding-left: 0;
  padding-right: 0;
}
.content-block .text-image {
  position: relative;
  overflow: hidden;
}
.content-block .text-image .content-block-image {
  width: 100%;
  height: 30vh;
  min-height: 200px;
}
.content-block .text-image .text-block {
  padding: 4% 4%;
  width: 100%;
}
.content-block .text-image.right-image .text-block {
  float: none;
}
.content-block .text-image.right-image .content-block-image {
  right: 0;
  left: auto;
}
@media (min-width: 640px) {
  .content-block .text-image .content-block-image {
    width: 50%;
    height: 100%;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
  }
  .content-block .text-image .text-block {
    width: 50%;
    display: inline-block;
    float: right;
  }
}
.content-block.white .full-text-block {
  background: #ffffff;
}
.content-block.white .content-block-heading {
  color: #d62027;
}
.content-block.white .link-arrow {
  color: #d62027;
}
.content-block.white p {
  color: #000000;
}
.content-block.white.left + .content-block.white.left, .content-block.white.right + .content-block.white.right {
  border-top: 2px solid rgba(204, 204, 204, 0.2);
  border-bottom: 2px solid rgba(204, 204, 204, 0.2);
}
.content-block.white.left + .content-block.white.left .aligned, .content-block.white.right + .content-block.white.right .aligned {
  background: rgba(204, 204, 204, 0.2);
}
.content-block.white.left + .content-block.white.left:nth-last-of-type(even) .aligned, .content-block.white.right + .content-block.white.right:nth-last-of-type(even) .aligned {
  background: #ffffff;
}
.content-block.white .block-inner {
  background: #ffffff;
}
.content-block.red .full-text-block, .content-block.red .aligned {
  background: #d62027;
}
.content-block.red .content-block-heading {
  color: #ffffff;
}
.content-block.red h1, .content-block.red h2, .content-block.red h3, .content-block.red h4, .content-block.red h5, .content-block.red h6, .content-block.red p {
  color: #ffffff;
}
.content-block.red .navigation-link {
  color: #ffffff;
}
.content-block.red.left + .content-block.red.left, .content-block.red.right + .content-block.red.right {
  border-top: 2px solid #de4d52;
  border-bottom: 2px solid #de4d52;
}
.content-block.red.left + .content-block.red.left .aligned, .content-block.red.right + .content-block.red.right .aligned {
  background: #C40A12;
}
.content-block.red.left + .content-block.red.left:nth-last-of-type(even) .aligned, .content-block.red.right + .content-block.red.right:nth-last-of-type(even) .aligned {
  background: #d62027;
}
.content-block.red .block-inner {
  background: #d62027;
}
.content-block.black .full-text-block, .content-block.black .aligned {
  background: #151515;
}
.content-block.black .content-block-heading {
  color: #ffffff;
}
.content-block.black h1, .content-block.black h2, .content-block.black h3, .content-block.black h4, .content-block.black h5, .content-block.black h6, .content-block.black p, .content-block.black label {
  color: #ffffff;
}
.content-block.black .navigation-link {
  color: #ffffff;
}
.content-block.black.left + .content-block.black.left, .content-block.black.right + .content-block.black.right {
  border-top: 2px solid #4c4c4c;
  border-bottom: 2px solid #4c4c4c;
}
.content-block.black.left + .content-block.black.left .aligned, .content-block.black.right + .content-block.black.right .aligned {
  background: #000000;
}
.content-block.black.left + .content-block.black.left:nth-last-of-type(even) .aligned, .content-block.black.right + .content-block.black.right:nth-last-of-type(even) .aligned {
  background: #151515;
}
.content-block.black .block-inner {
  background: #151515;
}

.content-block.black + .content-block.black .full-text-block, .content-block.white + .content-block.white .full-text-block, .content-block.red + .content-block.red .full-text-block {
  padding-top: 0;
  margin-top: -20px;
}

.show-content + .content-block .full-text-block {
  padding-top: 0;
}

.red-block {
  background: #d62027;
}
.red-block.dark {
  background: #C40A12;
}
.red-block.dark .text-block.red {
  background: #C40A12;
}

.content-hero {
  height: 80vw;
  max-height: 80vh;
  min-height: 600px;
  background-position: center;
  background-repeat: none;
  background-size: cover;
  position: relative;
}
.content-hero.small {
  min-height: 420px;
  height: 30vw;
}
@media (min-width: 640px) {
  .content-hero.small {
    min-height: 600px;
  }
}

.hero-title-wrapper {
  position: absolute;
  top: 60px;
  right: 0;
  padding: 3% 4%;
  background: #d62027;
  max-width: 80%;
}
@media (min-width: 640px) {
  .hero-title-wrapper {
    max-width: 500px;
  }
}
.hero-title-wrapper .content-block-heading {
  margin-bottom: 0;
}

.hero-blurb-wrapper {
  color: white;
  font-size: 1.2rem;
  position: absolute;
  bottom: 10%;
  left: 5%;
  width: 80%;
  z-index: 20;
}
@media (min-width: 640px) {
  .hero-blurb-wrapper {
    font-size: 1.5rem;
    width: 70%;
  }
}
@media (min-width: 1200px) {
  .hero-blurb-wrapper {
    width: 40%;
    font-size: 1.8rem;
  }
}
.hero-blurb-wrapper .navigation-link {
  margin-top: 40px;
  display: block;
}

.get-involved-row {
  padding: 2% 0;
}

.get-involved-col {
  height: 250px;
}
@media (min-width: 640px) {
  .get-involved-col {
    height: 200px;
  }
}
@media (min-width: 1200px) {
  .get-involved-col {
    height: 350px;
  }
}

.get-involved-col.content-row-navigation {
  padding: 5% 5%;
  background-color: #ffffff;
}
@media (min-width: 1200px) {
  .get-involved-col.content-row-navigation {
    padding: 0 5%;
  }
}

.vertical-center-wrap {
  display: table;
  width: 100%;
}

.vertical-center-content {
  display: table-cell;
  vertical-align: middle;
}

.events-calendar {
  font-weight: bold;
}
.events-calendar .calendar-header {
  padding: 10px 25px;
  width: 100%;
  background: #C40A12;
  text-align: center;
  color: #ffffff;
}
.events-calendar .calendar-header a {
  color: #ffffff;
  text-decoration: none;
}
.events-calendar .calendar-header .previous-month-icon {
  font-size: 1.25rem;
  margin-right: 30px;
  font-family: "FontAwesome";
}
.events-calendar .calendar-header .previous-month-icon:before {
  content: "";
}
.events-calendar .calendar-header .next-month-icon {
  font-size: 1.25rem;
  margin-left: 30px;
  font-family: "FontAwesome";
}
.events-calendar .calendar-header .next-month-icon:after {
  content: "";
}
.events-calendar .month-name {
  color: #ffffff;
  text-align: center;
}
.events-calendar .month-name .prev {
  float: left;
}
.events-calendar .month-name .next {
  float: right;
}
.events-calendar .month-name ul {
  margin: 0;
}
.events-calendar .month-name li {
  font-size: 1rem;
}
.events-calendar .weekday-names {
  margin: 0;
  padding: 10px 20px;
  color: #000000;
  list-style-type: none;
}
.events-calendar .weekday-names li {
  display: inline-block;
  width: 14.2857143%;
  text-align: center;
}
.events-calendar .weekday-names abbr[title] {
  cursor: none;
  border-bottom: none;
}
.events-calendar .weeks {
  padding: 10px 20px;
  margin: 0;
  color: #000000;
  list-style-type: none;
}
.events-calendar .weeks .week {
  width: 100%;
}
.events-calendar .weeks .days {
  list-style-type: none;
  margin: 0;
}
.events-calendar .weeks .weekday, .events-calendar .weeks .weekend, .events-calendar .weeks .day-in-next-month, .events-calendar .weeks .day-in-prev-month {
  display: inline-block;
  width: 14.2857143%;
  text-align: center;
  margin-bottom: 18px;
}
.events-calendar .weeks .weekday, .events-calendar .weeks .weekend {
  color: #000000;
}
.events-calendar .weeks .weekday a, .events-calendar .weeks .weekend a {
  color: #000000;
  text-decoration: none;
  line-height: 0.6em;
  position: relative;
  top: 0.5em;
  display: block;
}
.events-calendar .weeks .weekday a:after, .events-calendar .weeks .weekend a:after {
  display: block;
  content: ".";
  color: #C40A12;
}
.events-calendar .weeks .selected-day .date {
  color: #ffffff;
  background: none;
  color: #58595B;
  display: inline-block;
  width: 35px;
  height: 35px;
  -moz-border-radius: 17.5px;
  -webkit-border-radius: 17.5px;
  -khtml-border-radius: 17.5px;
  border-radius: 17.5px;
  border: 2px solid #58595B;
  text-align: center;
  line-height: 30px;
  top: 0;
}
.events-calendar .weeks .selected-day .date .fa {
  font-size: 1.25rem;
  line-height: 31px;
}
.events-calendar .weeks .selected-day .date.white {
  color: #ffffff;
  border-color: #ffffff;
}
.events-calendar .weeks .selected-day .date-show a {
  color: #ffffff;
  background: #d62027;
  color: #ffffff;
  display: inline-block;
  width: 35px;
  height: 35px;
  -moz-border-radius: 17.5px;
  -webkit-border-radius: 17.5px;
  -khtml-border-radius: 17.5px;
  border-radius: 17.5px;
  border: 2px solid #ffffff;
  text-align: center;
  line-height: 30px;
  top: 0;
}
.events-calendar .weeks .selected-day .date-show a .fa {
  font-size: 1.25rem;
  line-height: 31px;
}
.events-calendar .weeks .selected-day .date-show a.white {
  color: #ffffff;
  border-color: #ffffff;
}
.events-calendar .weeks .selected-day .date-show a:after {
  content: none;
}
.events-calendar .weeks .day-in-prev-month, .events-calendar .weeks .day-in-next-month {
  color: #b3b3b3;
}
.events-calendar .weeks .day-in-prev-month a, .events-calendar .weeks .day-in-next-month a {
  color: #b3b3b3;
  text-decoration: none;
  line-height: 0.6em;
  position: relative;
  top: 0.5em;
  display: block;
}
.events-calendar .weeks .day-in-prev-month a:after, .events-calendar .weeks .day-in-next-month a:after {
  display: block;
  content: ".";
  color: #b3b3b3;
}

.genre-select ul {
  text-align: center;
  display: block;
  padding: 30px 0;
  margin: 30px 0;
}
.genre-select li {
  font-size: 1.13rem;
  text-align: center;
  list-style-type: none;
  color: #000000;
}
.genre-select li a {
  color: #000000;
  padding: 20px;
}
.genre-select li a:hover {
  background: #e6e6e6;
}
.genre-select li.selected a {
  background: #d62027;
  color: #ffffff;
}

.whats-on-feature {
  padding: 4%;
  background: #F0EEE7;
  display: block;
}
.whats-on-feature:hover {
  background: #dcd8c8;
}

.whats-on-featured-image {
  height: 250px;
  width: 100%;
  background-size: cover;
  background-position: center;
}
@media (min-width: 640px) {
  .whats-on-featured-image {
    height: 200px;
  }
}
@media (min-width: 1200px) {
  .whats-on-featured-image {
    height: 365px;
  }
}

.whats-on-featured-text {
  color: #000000;
  font-size: 1.13rem;
  line-height: 1.4em;
  margin-top: 30px;
}
@media (min-width: 1200px) {
  .whats-on-featured-text {
    text-align: right;
    padding-left: 50px;
    margin-top: 0;
  }
}
.whats-on-featured-text .event-listing {
  margin-bottom: 10px;
}
.whats-on-featured-text .event-date {
  margin-bottom: 10px;
}
.whats-on-featured-text p {
  margin-bottom: 30px;
}
.whats-on-featured-text .navigation-link {
  padding-right: 0;
}

.whats-on-list {
  background: #000000;
  padding: 20px;
}
.whats-on-list .whats-on-brochure {
  color: #ffffff;
  padding: 20px;
}
.whats-on-list .whats-on-brochure a {
  color: #ffffff;
}

.page-title-bar .book-button {
  display: block;
  width: 100%;
  float: right;
  padding: 3%;
  background: rgba(0, 0, 0, 0.2);
  color: #ffffff;
  text-decoration: none;
  width: 100%;
  text-align: center;
  font-size: 2rem;
  line-height: 1em;
}
@media (min-width: 640px) {
  .page-title-bar .book-button {
    width: 29%;
  }
}
.page-title-bar .book-button:hover {
  background: rgba(0, 0, 0, 0.4);
}

.show-content {
  padding: 2.5% 4%;
}

.show-description {
  margin-top: 30px;
  width: 100%;
  padding-right: 0;
  display: inline-block;
  vertical-align: top;
}
.show-description p {
  font-size: 1.25rem;
}
@media (min-width: 1200px) {
  .show-description {
    width: 70%;
    padding-right: 10%;
  }
}

.important-info {
  margin-top: 30px;
  width: 100%;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  padding: 0;
  font-size: 1rem;
  line-height: 1.5em;
}
.important-info p {
  font-size: 1rem;
  line-height: 1.5em;
}
@media (min-width: 1200px) {
  .important-info {
    width: 29%;
    text-align: right;
  }
}
.important-info .highlighted-info {
  display: block;
  margin-bottom: 10px;
}
.important-info .highlighted-info p {
  font-size: 1rem;
  line-height: 1.5em;
}
.important-info .show-attachments {
  margin-top: 20px;
  margin-left: 0;
}
.important-info .show-attachments li {
  display: inline-block;
  max-width: 25%;
  margin-right: 20px;
  text-align: center;
  margin-top: 10px;
}
.important-info .show-attachments li:last-child {
  margin-right: 0;
}
.important-info .show-attachments li .icon {
  display: block;
  color: #d62027;
  font-size: 3rem;
}
.important-info .show-attachments li .attachment-description {
  display: block;
  font-size: 0.8rem;
  line-height: 1.2em;
}

.show-media {
  padding: 3% 0;
  width: 100%;
  background-color: #F0EEE7;
  position: relative;
  display: inline-block;
}

.featured-media div {
  height: 420px;
  margin-bottom: 20px;
  background-position: center;
  background-size: cover;
  position: relative;
}
.featured-media .video-button {
  display: none;
}
.featured-media.is-video .video-button {
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.3);
  color: #ffffff;
  font-size: 6rem;
  text-align: center;
}
.featured-media.is-video .video-button .play-button {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0.6;
}
.featured-media.is-video .video-button .play-button:hover {
  opacity: 1;
}

.show-thumbnails {
  margin-bottom: 20px;
  height: 200px;
}
.show-thumbnails .inner {
  height: 100%;
  background-size: cover;
  background-position: center;
}

.cast-title {
  height: 211px;
  padding: 0 10%;
  margin-top: -1px;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
}

.cast-photo {
  height: 210px;
  background-repeat: none;
  background-size: cover;
  background-position: center;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}
.cast-photo .cast-info {
  -webkit-transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
  position: absolute;
  bottom: -140px;
  background: rgba(255, 255, 255, 0.9);
  width: 100%;
  height: 100%;
  padding: 10px 20px;
  color: #000000;
}
.cast-photo .cast-info .name-wrap {
  min-height: 60px;
}
.cast-photo .cast-info .cast-name {
  color: #d62027;
  display: block;
  font-size: 1.2rem;
}
.cast-photo .cast-info .cast-role {
  display: block;
  margin-bottom: 5px;
}
.cast-photo .cast-info .cast-description {
  display: block;
}
.cast-photo .cast-info .cast-description p {
  font-size: 1rem;
  line-height: 1.3em;
}
.cast-photo .cast-info .more-button:before {
  font-family: "FontAwesome";
  font-size: 1.25rem;
  content: "";
  float: right;
  margin-top: 15px;
}
@media (min-width: 1200px) {
  .cast-photo .more-button {
    display: none;
  }
  .cast-photo:hover .bio {
    -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
    -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
    -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
    bottom: 0;
  }
  .cast-photo:hover .bio .name-wrap {
    min-height: 0;
  }
}
.cast-photo.no-photo {
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  margin-top: -1px;
  height: 211px;
}
.cast-photo.no-photo .cast-info {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  height: auto;
  bottom: auto;
  background: none;
  opacity: 1;
}
.cast-photo.no-photo .cast-info .cast-name {
  color: #d62027;
}
.cast-photo.no-photo .cast-info .cast-role {
  color: #000000;
}
.cast-photo.no-photo .cast-info .cast-description-wrapper {
  -webkit-transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1);
  max-height: 0;
  overflow: hidden;
  opacity: 0;
}
.cast-photo.no-photo .cast-info .cast-description {
  color: #000000;
}
.cast-photo.no-photo .cast-info .more-button:before {
  font-family: "FontAwesome";
  font-size: 1.25rem;
  content: "";
  float: right;
  margin-top: 15px;
}
@media (min-width: 1200px) {
  .cast-photo.no-photo:hover .cast-description-wrapper {
    max-height: 300px;
    opacity: 1;
  }
  .cast-photo.no-photo:hover .more-button:before {
    content: "";
  }
}
.cast-photo.active .cast-info {
  bottom: 0;
}
.cast-photo.active .name-wrap {
  min-height: 0;
  -webkit-transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.cast-photo.active .more-button:before {
  content: "";
}
.cast-photo.active.no-photo .cast-info {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  height: auto;
  bottom: auto;
}
.cast-photo.active.no-photo .cast-description-wrapper {
  max-height: 300px;
  opacity: 1;
}
.cast-photo.active.no-photo .more-button:before {
  content: "";
}

.displayed-on-booking {
  display: none;
}

.booking .displayed-on-booking {
  display: block;
}
.booking .hidden-on-booking, .booking .whats-on-sticky {
  display: none;
}

.perf-list {
  margin-top: 2%;
  position: relative;
}

.perf-slot {
  border-bottom: 1px solid #d62027;
  padding: 3% 3%;
  display: inline-block;
  position: relative;
  width: 100%;
}
.perf-slot .book-btn {
  text-align: right;
}
.perf-slot .book-btn .call-to-action {
  font-size: 1.5rem;
  padding: 15px 30px;
}
.perf-slot:last-child {
  border: 0;
}

.perf-date .day {
  font-size: 1.6rem;
  display: block;
}
.perf-date .date {
  font-size: 2rem;
  display: block;
}

.perf-time {
  text-align: left;
  font-size: 1.25rem;
  vertical-align: middle;
}
@media (min-width: 640px) {
  .perf-time {
    font-size: 2rem;
    text-align: center;
  }
}

.accordion-wrapper {
  margin-bottom: 30px;
}

.accordion-title {
  border-top: #e6e6e6 1px solid;
  padding-top: 20px;
  padding-right: 50px;
  cursor: pointer;
  position: relative;
}
.accordion-title .dropdown-arrow {
  font-size: 1.8rem;
  font-family: "FontAwesome";
  margin-top: 10px;
  position: absolute;
  right: 20px;
  top: 0;
}
.accordion-title .dropdown-arrow:after {
  content: "";
}

.accordion-content {
  display: none;
  padding-bottom: 20px;
}

.active.accordion .accordion-content {
  display: block;
}

.active.accordion .accordion-title .dropdown-arrow:after {
  content: "";
  font-size: 70%;
}

@media (min-width: 640px) {
  .contact {
    max-width: 70%;
    margin: 20px auto;
  }
}
.contact label {
  font-size: 1rem;
  margin-bottom: 0.6em;
}
.contact input {
  margin-bottom: 20px;
}
.contact select {
  margin-bottom: 20px;
}
.contact textarea {
  margin-bottom: 20px;
}
.contact .radio {
  display: inline-block;
  margin-left: 10px;
  margin-right: 20px;
}

.form-validation-error {
  display: block;
  margin-top: -15px;
  margin-bottom: 10px;
}

.featured-blog-post .inner {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media (min-width: 640px) {
  .featured-blog-post .inner {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

.article-post .inner {
  padding-bottom: 20px;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 20px;
}

.blog-article-info {
  text-align: left;
  position: relative;
  height: 140px;
}
@media (min-width: 640px) {
  .blog-article-info {
    text-align: right;
  }
}
.blog-article-info a {
  text-decoration: none;
}
.blog-article-info .navigation-link {
  position: absolute;
  bottom: 0;
  left: 0;
  text-transform: none;
}
@media (min-width: 640px) {
  .blog-article-info .navigation-link {
    left: auto;
    right: 0;
  }
}
.blog-article-info .navigation-link .fa {
  margin-left: 5px;
}
.blog-article-info.feature {
  height: auto;
  margin-top: 20px;
}
.blog-article-info.feature .blog-list-title {
  font-size: 1.88rem;
}
.blog-article-info.feature .navigation-link {
  position: relative;
}
@media (min-width: 1200px) {
  .blog-article-info.feature {
    margin-top: 0;
  }
}

.blog-list-image {
  height: 240px;
  background-position: center;
  background-size: cover;
  margin-bottom: 20px;
}
@media (min-width: 640px) {
  .blog-list-image {
    height: 140px;
  }
}
@media (min-width: 1200px) {
  .blog-list-image {
    margin-bottom: 0;
  }
}
.blog-list-image.feature {
  height: 320px;
}

.blog-list-date {
  color: #d62027;
  display: block;
}

.blog-list-title {
  color: #000000;
  display: block;
  font-size: 1.31rem;
  line-height: 1.2em;
}

.blog-excerpt {
  display: block;
  color: #000000;
  margin-top: 20px;
  margin-bottom: 20px;
}

.blog-post-wrapper {
  padding-top: 40px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  margin-bottom: 80px;
  text-align: center;
}
@media (min-width: 640px) {
  .blog-post-wrapper {
    width: 100%;
    position: relative;
  }
}
.blog-post-wrapper .content-block-heading {
  color: #000000;
  margin-bottom: 10px;
  font-size: 2rem;
}

.back-to-blog {
  width: 100%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 20px;
  padding-bottom: 10px;
  text-align: center;
}
.back-to-blog a {
  text-decoration: none;
  color: #000000;
}
.back-to-blog .fa {
  margin-right: 5px;
}
@media (min-width: 1200px) {
  .back-to-blog {
    width: 15%;
    max-width: 250px;
    position: absolute;
    top: 40px;
    left: 20px;
    border-bottom: solid 1px #58595B;
  }
}

.blog-date {
  color: #d62027;
  margin-bottom: 20px;
  display: block;
}

.blog-main-image {
  margin-bottom: 40px;
}

.blog-post {
  width: 100%;
  padding-left: 2%;
  padding-right: 2%;
  display: inline-block;
  vertical-align: top;
  text-align: left;
}
@media (min-width: 640px) {
  .blog-post {
    width: 90%;
  }
}
@media (min-width: 1200px) {
  .blog-post {
    width: 60%;
    max-width: 800px;
  }
}

main.search {
  position: relative;
}

body.search-results .production .text-block {
  background: #d62027;
  color: #ffffff;
}
body.search-results .production .text-block .content-block-heading {
  color: #ffffff;
}
body.search-results .production .text-block .navigation-link {
  color: #ffffff;
}
body.search-results .production + .production .text-block {
  background: #C40A12;
}

.no-results-wrap {
  position: relative;
  min-height: 300px;
}

.no-results {
  text-align: center;
  width: 100%;
  padding-top: 40px;
  min-height: 70vh;
}
.no-results span {
  font-size: 2rem;
}

.search-again {
  text-align: center;
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
  padding: 80px 20px;
}
.search-again span {
  font-size: 1.5rem;
  margin-bottom: 30px;
  display: block;
  line-height: 1.2em;
}
@media (min-width: 640px) {
  .search-again span {
    font-size: 2.5rem;
  }
}
.search-again .search-wrapper {
  width: 100%;
  position: relative;
  display: inline-block;
}
.search-again .search-input {
  width: 100%;
  height: 50px;
  padding: 0 50px 0 10px;
}
.search-again .close-search {
  text-align: right;
  width: 8%;
  display: inline-block;
  margin: 0;
}
.search-again .close-search a {
  color: #ffffff;
}
.search-again .search-submit {
  position: absolute;
  right: 5px;
  top: 10px;
  padding: 0;
  height: 30px;
  line-height: 15px;
  width: 30px;
  background: #de4d52;
  -moz-border-radius: 15px;
  -webkit-border-radius: 15px;
  -khtml-border-radius: 15px;
  border-radius: 15px;
}

.membership-tabs {
  list-style-type: none;
  margin: 0;
}
.membership-tabs li {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  font-size: 1rem;
  width: 49%;
  display: inline-block;
  text-align: center;
  height: 75px;
  background-position: center;
  background-size: cover;
  margin-bottom: 10px;
  margin-left: 1%;
  margin-right: 1%;
  position: relative;
  cursor: pointer;
  padding-top: 25px;
}
@media (min-width: 640px) {
  .membership-tabs li {
    font-size: 2rem;
    height: 125px;
    margin-bottom: 20px;
    padding-top: 35px;
  }
}
.membership-tabs li a {
  text-decoration: none;
  color: #ffffff;
  z-index: 10;
  position: relative;
  opacity: 0.6;
}
.membership-tabs li .overlay {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.3);
  height: 100%;
  width: 100%;
  display: block;
  z-index: 1;
}
.membership-tabs li:first-child {
  margin-left: 0;
}
.membership-tabs li:last-child {
  margin-right: 0;
}
.membership-tabs li.active {
  margin-bottom: 0;
  height: 85px;
}
@media (min-width: 640px) {
  .membership-tabs li.active {
    height: 145px;
  }
}
.membership-tabs li.active .overlay {
  display: none;
}
.membership-tabs li.active a {
  opacity: 1;
  text-shadow: 1px 1px 5px #000000;
  padding-top: 10px;
}

.membership-table-header {
  margin-bottom: 0;
}
.membership-table-header thead {
  background: #000000;
  color: #ffffff;
}
.membership-table-header thead th {
  width: 50%;
  border-left: 1px solid #d62027;
}
.membership-table-header thead th:first-child {
  border-left: 0;
}
.membership-table-header thead .price {
  display: block;
  font-size: 0.8rem;
}
.membership-table-header.stuck {
  -webkit-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -moz-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  -o-transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 250ms cubic-bezier(0.25, 0.1, 0.25, 1);
  position: fixed;
  top: 100px;
  left: 3%;
  z-index: 100;
  border-top: 1px solid #b3b3b3;
  margin-right: 10px;
  width: 94%;
}

.admin-bar .membership-table-header.stuck {
  top: 146px;
}

.membership-table {
  border-collapse: collapse;
  width: 100%;
}
.membership-table thead {
  background: #000000;
  color: #ffffff;
}
.membership-table thead .price {
  display: block;
  font-size: 1rem;
}
.membership-table thead th {
  border-left: 1px solid #d62027;
}
.membership-table thead th:first-child {
  border-left: 0;
}
.membership-table th, .membership-table td {
  border-bottom: 1px solid #b3b3b3;
  width: 50%;
}
@media (min-width: 640px) {
  .membership-table th, .membership-table td {
    width: 33.33%;
  }
}
.membership-table th.clear-border, .membership-table td.clear-border {
  border-bottom: none;
}
.membership-table th {
  font-size: 1.25rem;
  line-height: 1.2em;
  padding: 20px;
}
.membership-table td {
  text-align: center;
  border-left: 1px solid #b3b3b3;
  font-size: 1rem;
  line-height: 1.2em;
  padding: 10px;
}
@media (min-width: 640px) {
  .membership-table td {
    font-size: 2rem;
    line-height: 1.2em;
  }
}
.membership-table td .price {
  display: block;
  font-size: 0.9rem;
  margin-bottom: 10px;
  line-height: 1.3em;
}
.membership-table td:first-child {
  border-left: none;
}
.membership-table .fa {
  font-size: 2rem;
}
.membership-table .section td {
  background: #d62027;
  color: #ffffff;
  text-align: left;
  border: 0;
  font-size: 1.25rem;
}
.membership-table .sub-text {
  display: block;
  font-size: 1rem;
  line-height: 1.2em;
  margin-top: 5px;
}
.membership-table .fa-check-circle {
  color: #BAE986;
}
.membership-table .fa-times-circle {
  color: #CF021B;
}
.membership-table .small-print {
  font-size: 0.7rem;
  display: block;
  margin-bottom: 5px;
}

.tab-content {
  display: none;
}
.tab-content.active {
  display: block;
}

.membership-table.matcham-table th, .membership-table.matcham-table td {
  width: 33.33%;
}
@media (min-width: 640px) {
  .membership-table.matcham-table th, .membership-table.matcham-table td {
    width: 25%;
  }
}

.membership-table-header.matcham-header th {
  width: 33.33%;
}

.membership-table.patron-table th, .membership-table.patron-table td {
  width: 25%;
}
@media (min-width: 640px) {
  .membership-table.patron-table th, .membership-table.patron-table td {
    width: 20%;
  }
}

.membership-table-header.patron-header th {
  width: 25%;
}

.wide-gallery .gallery-photo {
  height: 210px;
  background-repeat: none;
  background-size: cover;
  background-position: center;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}

.clear--fix {
  clear: both;
}

.error404 .hero-slide {
  height: 80vh;
  min-height: 340px;
  max-height: none;
}

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