/*============================================================================
  Shopify Timber
  Copyright 2016 Shopify Inc.
  Author Carson Shold @cshold
  Built with Sass - http://sass-lang.com/

  Some things to know about this file:
    - Sass is compiled on Shopify's server so you don't need to convert it to CSS yourself
    - The output CSS is compressed and comments are removed
    - You cannot use @imports in this file
        * Use grunt or gulp tasks to enable @imports - https://github.com/Shopify/shopify-css-import
    - Helpers variables, mixins, and starter classes are provided. Change as needed.
    - The file is prepped with a CSS reset
    - The font icons are prepared using https://icomoon.io/app
==============================================================================*/
/*============================================================================
  Table of Contents

  #Breakpoint and Grid Variables
  #General Variables
  #Sass Mixins
  #Normalize
  #Grid Setup
  #Basic Styles
  #Helper Classes
  #Typography
  #Rich Text Editor
  #Links and Buttons
  #Lists
  #Tables
  #Reponsive Tables
  #OOCSS Media Object
  #Images and Iframes
  #Forms
  #Icons
  #Pagination
  #Site Header
  #Site Nav and Dropdowns
  #Mobile Nav
  #Drawers
  #Site Footer
  #Product and Collection Grids
  #Collection Filters
  #Breadcrumbs
  #Product Page
  #Notes and Form Feedback
  #Cart Page
  #Ajax Cart Styles
==============================================================================*/
/*============================================================================
  #Breakpoint and Grid Variables
==============================================================================*/
/*================ The following are dependencies of csswizardry grid ================*/
/*============================================================================
  #General Variables
==============================================================================*/
/* From elate theme */
/*================ Typography ================*/
@font-face {
  font-family: 'icons';
  src: url("//cdn.shopify.com/s/files/1/1674/9535/t/2/assets/icons.eot?v=15839920060943556384");
  src: url("//cdn.shopify.com/s/files/1/1674/9535/t/2/assets/icons.eot?v=15839920060943556384#iefix") format("embedded-opentype"), url("//cdn.shopify.com/s/files/1/1674/9535/t/2/assets/icons.woff?v=16994515853337970273") format("woff"), url("//cdn.shopify.com/s/files/1/1674/9535/t/2/assets/icons.ttf?v=15269834025022278972") format("truetype"), url("//cdn.shopify.com/s/files/1/1674/9535/t/2/assets/icons.svg?v=163269811207092844#timber-icons") format("svg");
  font-weight: normal;
  font-style: normal; }

/*============================================================================
  #Sass Mixins
==============================================================================*/
.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: '';
    display: table;
    clear: both; }

/*============================================================================
  Prefixer mixin for generating vendor prefixes:
    - Based on https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/addons/_prefixer.scss
    - Usage:

      // Input:
      .element {
        @include prefixer(transform, scale(1), ms webkit spec);
      }

      // Output:
      .element {
        -ms-transform: scale(1);
        -webkit-transform: scale(1);
        transform: scale(1);
      }
==============================================================================*/
/*============================================================================
  Layer promotion mixin for creating smoother animations with higher FPS.
==============================================================================*/
/*============================================================================
  Dependency-free breakpoint mixin
    - Based on http://blog.grayghostvisuals.com/sass/sass-media-query-mixin/
    - Usage docs: http://shopify.github.io/Timber/#sass-mixins
==============================================================================*/
/*============================================================================
  #Normalize
==============================================================================*/
*, input, :before, :after {
  box-sizing: border-box; }

html {
  padding: 0;
  margin: 0; }

body {
  font-family: "Source Sans Pro", Arial, sans-serif;
  font-weight: 300;
  font-size: 20px;
  line-height: 1.5;
  color: #777777;
  color: #7f7f7f;
  background: white;
  height: 100%;
  position: relative; }

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

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

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

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

/*============================================================================
  #Grid Setup
    - Based on csswizardry grid, but with floated columns, a fixed gutter size, and BEM classes
    - Breakpoints defined above, under #Breakpoint and Grid Variables
    - Note the inclusion of .grid-uniform to take care of clearfixes on evenly sized grid items
==============================================================================*/
/* Force clearfix on grids */
.grid, .grid--rev, .grid--full,
.grid-uniform {
  *zoom: 1; }
  .grid:after, .grid--rev:after, .grid--full:after,
  .grid-uniform:after {
    content: '';
    display: table;
    clear: both; }

/* Manual grid__item clearfix */
.grid__item.clear {
  clear: both; }

/*============================================================================
  Drop relative positioning into silent classes which can't take advantage of
  the `[class*="push--"]` and `[class*="pull--"]` selectors.
==============================================================================*/
/*============================================================================
  Grid Setup
    1. Allow the grid system to be used on lists.
    2. Remove any margins and paddings that might affect the grid system.
    3. Apply a negative `margin-left` to negate the columns' gutters.
==============================================================================*/
.grid, .grid--rev, .grid--full,
.grid-uniform {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -30px; }

.grid__item {
  box-sizing: border-box;
  float: left;
  min-height: 1px;
  padding-left: 30px;
  vertical-align: top;
  width: 100%; }

/*============================================================================
  Reversed grids allow you to structure your source in the opposite
  order to how your rendered layout will appear.
==============================================================================*/
.grid--rev {
  direction: rtl;
  text-align: left; }
  .grid--rev > .grid__item {
    direction: ltr;
    text-align: left;
    float: right; }

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

/*============================================================================
  WIDTHS
    - Create width classes, prefixed by the specified namespace.
==============================================================================*/
/*================ Clearfix helper on uniform grids ================*/
/*================ Helper show/hide classes around our breakpoints ================*/
/*================ Our regular, non-responsive width and helper classes ================*/
/** Whole */
.one-whole {
  width: 100%; }

/* Halves */
.one-half {
  width: 50%; }

/* Thirds */
.one-third {
  width: 33.333%; }

.two-thirds {
  width: 66.666%; }

/* Quarters */
.one-quarter {
  width: 25%; }

.two-quarters {
  width: 50%; }

.three-quarters {
  width: 75%; }

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

.two-fifths {
  width: 40%; }

.three-fifths {
  width: 60%; }

.four-fifths {
  width: 80%; }

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

.two-sixths {
  width: 33.333%; }

.three-sixths {
  width: 50%; }

.four-sixths {
  width: 66.666%; }

.five-sixths {
  width: 83.333%; }

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

.two-eighths {
  width: 25%; }

.three-eighths {
  width: 37.5%; }

.four-eighths {
  width: 50%; }

.five-eighths {
  width: 62.5%; }

.six-eighths {
  width: 75%; }

.seven-eighths {
  width: 87.5%; }

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

.two-tenths {
  width: 20%; }

.three-tenths {
  width: 30%; }

.four-tenths {
  width: 40%; }

.five-tenths {
  width: 50%; }

.six-tenths {
  width: 60%; }

.seven-tenths {
  width: 70%; }

.eight-tenths {
  width: 80%; }

.nine-tenths {
  width: 90%; }

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

.two-twelfths {
  width: 16.666%; }

.three-twelfths {
  width: 25%; }

.four-twelfths {
  width: 33.333%; }

.five-twelfths {
  width: 41.666%; }

.six-twelfths {
  width: 50%; }

.seven-twelfths {
  width: 58.333%; }

.eight-twelfths {
  width: 66.666%; }

.nine-twelfths {
  width: 75%; }

.ten-twelfths {
  width: 83.333%; }

.eleven-twelfths {
  width: 91.666%; }

.show {
  display: block !important; }

.hide {
  display: none !important; }

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

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

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

.left {
  float: left !important; }

.right {
  float: right !important; }

/*================ Our responsive classes, if we have enabled them ================*/
@media only screen and (max-width: 480px) {
  /** Whole */
  .small--one-whole {
    width: 100%; }

  /* Halves */
  .small--one-half {
    width: 50%; }

  /* Thirds */
  .small--one-third {
    width: 33.333%; }

  .small--two-thirds {
    width: 66.666%; }

  /* Quarters */
  .small--one-quarter {
    width: 25%; }

  .small--two-quarters {
    width: 50%; }

  .small--three-quarters {
    width: 75%; }

  /* Fifths */
  .small--one-fifth {
    width: 20%; }

  .small--two-fifths {
    width: 40%; }

  .small--three-fifths {
    width: 60%; }

  .small--four-fifths {
    width: 80%; }

  /* Sixths */
  .small--one-sixth {
    width: 16.666%; }

  .small--two-sixths {
    width: 33.333%; }

  .small--three-sixths {
    width: 50%; }

  .small--four-sixths {
    width: 66.666%; }

  .small--five-sixths {
    width: 83.333%; }

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

  .small--two-eighths {
    width: 25%; }

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

  .small--four-eighths {
    width: 50%; }

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

  .small--six-eighths {
    width: 75%; }

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

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

  .small--two-tenths {
    width: 20%; }

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

  .small--four-tenths {
    width: 40%; }

  .small--five-tenths {
    width: 50%; }

  .small--six-tenths {
    width: 60%; }

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

  .small--eight-tenths {
    width: 80%; }

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

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

  .small--two-twelfths {
    width: 16.666%; }

  .small--three-twelfths {
    width: 25%; }

  .small--four-twelfths {
    width: 33.333%; }

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

  .small--six-twelfths {
    width: 50%; }

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

  .small--eight-twelfths {
    width: 66.666%; }

  .small--nine-twelfths {
    width: 75%; }

  .small--ten-twelfths {
    width: 83.333%; }

  .small--eleven-twelfths {
    width: 91.666%; }

  .small--show {
    display: block !important; }

  .small--hide {
    display: none !important; }

  .small--text-left {
    text-align: left !important; }

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

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

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

  .small--right {
    float: right !important; }

  .grid-uniform .small--one-half:nth-child(2n+1),
  .grid-uniform .small--one-third:nth-child(3n+1),
  .grid-uniform .small--one-quarter:nth-child(4n+1),
  .grid-uniform .small--one-fifth:nth-child(5n+1),
  .grid-uniform .small--one-sixth:nth-child(6n+1),
  .grid-uniform .small--two-sixths:nth-child(3n+1),
  .grid-uniform .small--three-sixths:nth-child(2n+1),
  .grid-uniform .small--two-eighths:nth-child(4n+1),
  .grid-uniform .small--four-eighths:nth-child(2n+1),
  .grid-uniform .small--five-tenths:nth-child(2n+1),
  .grid-uniform .small--one-twelfth:nth-child(12n+1),
  .grid-uniform .small--two-twelfths:nth-child(6n+1),
  .grid-uniform .small--three-twelfths:nth-child(4n+1),
  .grid-uniform .small--four-twelfths:nth-child(3n+1),
  .grid-uniform .small--six-twelfths:nth-child(2n+1) {
    clear: both; } }
@media only screen and (min-width: 481px) and (max-width: 768px) {
  /** Whole */
  .medium--one-whole {
    width: 100%; }

  /* Halves */
  .medium--one-half {
    width: 50%; }

  /* Thirds */
  .medium--one-third {
    width: 33.333%; }

  .medium--two-thirds {
    width: 66.666%; }

  /* Quarters */
  .medium--one-quarter {
    width: 25%; }

  .medium--two-quarters {
    width: 50%; }

  .medium--three-quarters {
    width: 75%; }

  /* Fifths */
  .medium--one-fifth {
    width: 20%; }

  .medium--two-fifths {
    width: 40%; }

  .medium--three-fifths {
    width: 60%; }

  .medium--four-fifths {
    width: 80%; }

  /* Sixths */
  .medium--one-sixth {
    width: 16.666%; }

  .medium--two-sixths {
    width: 33.333%; }

  .medium--three-sixths {
    width: 50%; }

  .medium--four-sixths {
    width: 66.666%; }

  .medium--five-sixths {
    width: 83.333%; }

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

  .medium--two-eighths {
    width: 25%; }

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

  .medium--four-eighths {
    width: 50%; }

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

  .medium--six-eighths {
    width: 75%; }

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

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

  .medium--two-tenths {
    width: 20%; }

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

  .medium--four-tenths {
    width: 40%; }

  .medium--five-tenths {
    width: 50%; }

  .medium--six-tenths {
    width: 60%; }

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

  .medium--eight-tenths {
    width: 80%; }

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

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

  .medium--two-twelfths {
    width: 16.666%; }

  .medium--three-twelfths {
    width: 25%; }

  .medium--four-twelfths {
    width: 33.333%; }

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

  .medium--six-twelfths {
    width: 50%; }

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

  .medium--eight-twelfths {
    width: 66.666%; }

  .medium--nine-twelfths {
    width: 75%; }

  .medium--ten-twelfths {
    width: 83.333%; }

  .medium--eleven-twelfths {
    width: 91.666%; }

  .medium--show {
    display: block !important; }

  .medium--hide {
    display: none !important; }

  .medium--text-left {
    text-align: left !important; }

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

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

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

  .medium--right {
    float: right !important; }

  .grid-uniform .medium--one-half:nth-child(2n+1),
  .grid-uniform .medium--one-third:nth-child(3n+1),
  .grid-uniform .medium--one-quarter:nth-child(4n+1),
  .grid-uniform .medium--one-fifth:nth-child(5n+1),
  .grid-uniform .medium--one-sixth:nth-child(6n+1),
  .grid-uniform .medium--two-sixths:nth-child(3n+1),
  .grid-uniform .medium--three-sixths:nth-child(2n+1),
  .grid-uniform .medium--two-eighths:nth-child(4n+1),
  .grid-uniform .medium--four-eighths:nth-child(2n+1),
  .grid-uniform .medium--five-tenths:nth-child(2n+1),
  .grid-uniform .medium--one-twelfth:nth-child(12n+1),
  .grid-uniform .medium--two-twelfths:nth-child(6n+1),
  .grid-uniform .medium--three-twelfths:nth-child(4n+1),
  .grid-uniform .medium--four-twelfths:nth-child(3n+1),
  .grid-uniform .medium--six-twelfths:nth-child(2n+1) {
    clear: both; } }
@media only screen and (max-width: 768px) {
  /** Whole */
  .medium-down--one-whole {
    width: 100%; }

  /* Halves */
  .medium-down--one-half {
    width: 50%; }

  /* Thirds */
  .medium-down--one-third {
    width: 33.333%; }

  .medium-down--two-thirds {
    width: 66.666%; }

  /* Quarters */
  .medium-down--one-quarter {
    width: 25%; }

  .medium-down--two-quarters {
    width: 50%; }

  .medium-down--three-quarters {
    width: 75%; }

  /* Fifths */
  .medium-down--one-fifth {
    width: 20%; }

  .medium-down--two-fifths {
    width: 40%; }

  .medium-down--three-fifths {
    width: 60%; }

  .medium-down--four-fifths {
    width: 80%; }

  /* Sixths */
  .medium-down--one-sixth {
    width: 16.666%; }

  .medium-down--two-sixths {
    width: 33.333%; }

  .medium-down--three-sixths {
    width: 50%; }

  .medium-down--four-sixths {
    width: 66.666%; }

  .medium-down--five-sixths {
    width: 83.333%; }

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

  .medium-down--two-eighths {
    width: 25%; }

  .medium-down--three-eighths {
    width: 37.5%; }

  .medium-down--four-eighths {
    width: 50%; }

  .medium-down--five-eighths {
    width: 62.5%; }

  .medium-down--six-eighths {
    width: 75%; }

  .medium-down--seven-eighths {
    width: 87.5%; }

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

  .medium-down--two-tenths {
    width: 20%; }

  .medium-down--three-tenths {
    width: 30%; }

  .medium-down--four-tenths {
    width: 40%; }

  .medium-down--five-tenths {
    width: 50%; }

  .medium-down--six-tenths {
    width: 60%; }

  .medium-down--seven-tenths {
    width: 70%; }

  .medium-down--eight-tenths {
    width: 80%; }

  .medium-down--nine-tenths {
    width: 90%; }

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

  .medium-down--two-twelfths {
    width: 16.666%; }

  .medium-down--three-twelfths {
    width: 25%; }

  .medium-down--four-twelfths {
    width: 33.333%; }

  .medium-down--five-twelfths {
    width: 41.666%; }

  .medium-down--six-twelfths {
    width: 50%; }

  .medium-down--seven-twelfths {
    width: 58.333%; }

  .medium-down--eight-twelfths {
    width: 66.666%; }

  .medium-down--nine-twelfths {
    width: 75%; }

  .medium-down--ten-twelfths {
    width: 83.333%; }

  .medium-down--eleven-twelfths {
    width: 91.666%; }

  .medium-down--show {
    display: block !important; }

  .medium-down--hide {
    display: none !important; }

  .medium-down--text-left {
    text-align: left !important; }

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

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

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

  .medium-down--right {
    float: right !important; }

  .grid-uniform .medium-down--one-half:nth-child(2n+1),
  .grid-uniform .medium-down--one-third:nth-child(3n+1),
  .grid-uniform .medium-down--one-quarter:nth-child(4n+1),
  .grid-uniform .medium-down--one-fifth:nth-child(5n+1),
  .grid-uniform .medium-down--one-sixth:nth-child(6n+1),
  .grid-uniform .medium-down--two-sixths:nth-child(3n+1),
  .grid-uniform .medium-down--three-sixths:nth-child(2n+1),
  .grid-uniform .medium-down--two-eighths:nth-child(4n+1),
  .grid-uniform .medium-down--four-eighths:nth-child(2n+1),
  .grid-uniform .medium-down--five-tenths:nth-child(2n+1),
  .grid-uniform .medium-down--one-twelfth:nth-child(12n+1),
  .grid-uniform .medium-down--two-twelfths:nth-child(6n+1),
  .grid-uniform .medium-down--three-twelfths:nth-child(4n+1),
  .grid-uniform .medium-down--four-twelfths:nth-child(3n+1),
  .grid-uniform .medium-down--six-twelfths:nth-child(2n+1) {
    clear: both; } }
@media only screen and (min-width: 769px) {
  /** Whole */
  .large--one-whole {
    width: 100%; }

  /* Halves */
  .large--one-half {
    width: 50%; }

  /* Thirds */
  .large--one-third {
    width: 33.333%; }

  .large--two-thirds {
    width: 66.666%; }

  /* Quarters */
  .large--one-quarter {
    width: 25%; }

  .large--two-quarters {
    width: 50%; }

  .large--three-quarters {
    width: 75%; }

  /* Fifths */
  .large--one-fifth {
    width: 20%; }

  .large--two-fifths {
    width: 40%; }

  .large--three-fifths {
    width: 60%; }

  .large--four-fifths {
    width: 80%; }

  /* Sixths */
  .large--one-sixth {
    width: 16.666%; }

  .large--two-sixths {
    width: 33.333%; }

  .large--three-sixths {
    width: 50%; }

  .large--four-sixths {
    width: 66.666%; }

  .large--five-sixths {
    width: 83.333%; }

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

  .large--two-eighths {
    width: 25%; }

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

  .large--four-eighths {
    width: 50%; }

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

  .large--six-eighths {
    width: 75%; }

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

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

  .large--two-tenths {
    width: 20%; }

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

  .large--four-tenths {
    width: 40%; }

  .large--five-tenths {
    width: 50%; }

  .large--six-tenths {
    width: 60%; }

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

  .large--eight-tenths {
    width: 80%; }

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

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

  .large--two-twelfths {
    width: 16.666%; }

  .large--three-twelfths {
    width: 25%; }

  .large--four-twelfths {
    width: 33.333%; }

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

  .large--six-twelfths {
    width: 50%; }

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

  .large--eight-twelfths {
    width: 66.666%; }

  .large--nine-twelfths {
    width: 75%; }

  .large--ten-twelfths {
    width: 83.333%; }

  .large--eleven-twelfths {
    width: 91.666%; }

  .large--show {
    display: block !important; }

  .large--hide {
    display: none !important; }

  .large--text-left {
    text-align: left !important; }

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

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

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

  .large--right {
    float: right !important; }

  .grid-uniform .large--one-half:nth-child(2n+1),
  .grid-uniform .large--one-third:nth-child(3n+1),
  .grid-uniform .large--one-quarter:nth-child(4n+1),
  .grid-uniform .large--one-fifth:nth-child(5n+1),
  .grid-uniform .large--one-sixth:nth-child(6n+1),
  .grid-uniform .large--two-sixths:nth-child(3n+1),
  .grid-uniform .large--three-sixths:nth-child(2n+1),
  .grid-uniform .large--two-eighths:nth-child(4n+1),
  .grid-uniform .large--four-eighths:nth-child(2n+1),
  .grid-uniform .large--five-tenths:nth-child(2n+1),
  .grid-uniform .large--one-twelfth:nth-child(12n+1),
  .grid-uniform .large--two-twelfths:nth-child(6n+1),
  .grid-uniform .large--three-twelfths:nth-child(4n+1),
  .grid-uniform .large--four-twelfths:nth-child(3n+1),
  .grid-uniform .large--six-twelfths:nth-child(2n+1) {
    clear: both; } }
/*============================================================================
  PUSH
    - Push classes, to move grid items over to the right by certain amounts
==============================================================================*/
[class*="push--"] {
  position: relative; }

/* Whole */
.push--one-whole {
  left: 100%; }

/* Halves */
.push--one-half {
  left: 50%; }

/* Thirds */
.push--one-third {
  left: 33.333%; }

.push--two-thirds {
  left: 66.666%; }

/* Quarters */
.push--one-quarter {
  left: 25%; }

.push--two-quarters {
  left: 50%; }

.push--three-quarters {
  left: 75%; }

/* Fifths */
.push--one-fifth {
  left: 20%; }

.push--two-fifths {
  left: 40%; }

.push--three-fifths {
  left: 60%; }

.push--four-fifths {
  left: 80%; }

/* Sixths */
.push--one-sixth {
  left: 16.666%; }

.push--two-sixths {
  left: 33.333%; }

.push--three-sixths {
  left: 50%; }

.push--four-sixths {
  left: 66.666%; }

.push--five-sixths {
  left: 83.333%; }

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

.push--two-eighths {
  left: 25%; }

.push--three-eighths {
  left: 37.5%; }

.push--four-eighths {
  left: 50%; }

.push--five-eighths {
  left: 62.5%; }

.push--six-eighths {
  left: 75%; }

.push--seven-eighths {
  left: 87.5%; }

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

.push--two-tenths {
  left: 20%; }

.push--three-tenths {
  left: 30%; }

.push--four-tenths {
  left: 40%; }

.push--five-tenths {
  left: 50%; }

.push--six-tenths {
  left: 60%; }

.push--seven-tenths {
  left: 70%; }

.push--eight-tenths {
  left: 80%; }

.push--nine-tenths {
  left: 90%; }

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

.push--two-twelfths {
  left: 16.666%; }

.push--three-twelfths {
  left: 25%; }

.push--four-twelfths {
  left: 33.333%; }

.push--five-twelfths {
  left: 41.666%; }

.push--six-twelfths {
  left: 50%; }

.push--seven-twelfths {
  left: 58.333%; }

.push--eight-twelfths {
  left: 66.666%; }

.push--nine-twelfths {
  left: 75%; }

.push--ten-twelfths {
  left: 83.333%; }

.push--eleven-twelfths {
  left: 91.666%; }

@media only screen and (min-width: 481px) and (max-width: 768px) {
  /* Whole */
  .push--medium--one-whole {
    left: 100%; }

  /* Halves */
  .push--medium--one-half {
    left: 50%; }

  /* Thirds */
  .push--medium--one-third {
    left: 33.333%; }

  .push--medium--two-thirds {
    left: 66.666%; }

  /* Quarters */
  .push--medium--one-quarter {
    left: 25%; }

  .push--medium--two-quarters {
    left: 50%; }

  .push--medium--three-quarters {
    left: 75%; }

  /* Fifths */
  .push--medium--one-fifth {
    left: 20%; }

  .push--medium--two-fifths {
    left: 40%; }

  .push--medium--three-fifths {
    left: 60%; }

  .push--medium--four-fifths {
    left: 80%; }

  /* Sixths */
  .push--medium--one-sixth {
    left: 16.666%; }

  .push--medium--two-sixths {
    left: 33.333%; }

  .push--medium--three-sixths {
    left: 50%; }

  .push--medium--four-sixths {
    left: 66.666%; }

  .push--medium--five-sixths {
    left: 83.333%; }

  /* Eighths */
  .push--medium--one-eighth {
    left: 12.5%; }

  .push--medium--two-eighths {
    left: 25%; }

  .push--medium--three-eighths {
    left: 37.5%; }

  .push--medium--four-eighths {
    left: 50%; }

  .push--medium--five-eighths {
    left: 62.5%; }

  .push--medium--six-eighths {
    left: 75%; }

  .push--medium--seven-eighths {
    left: 87.5%; }

  /* Tenths */
  .push--medium--one-tenth {
    left: 10%; }

  .push--medium--two-tenths {
    left: 20%; }

  .push--medium--three-tenths {
    left: 30%; }

  .push--medium--four-tenths {
    left: 40%; }

  .push--medium--five-tenths {
    left: 50%; }

  .push--medium--six-tenths {
    left: 60%; }

  .push--medium--seven-tenths {
    left: 70%; }

  .push--medium--eight-tenths {
    left: 80%; }

  .push--medium--nine-tenths {
    left: 90%; }

  /* Twelfths */
  .push--medium--one-twelfth {
    left: 8.333%; }

  .push--medium--two-twelfths {
    left: 16.666%; }

  .push--medium--three-twelfths {
    left: 25%; }

  .push--medium--four-twelfths {
    left: 33.333%; }

  .push--medium--five-twelfths {
    left: 41.666%; }

  .push--medium--six-twelfths {
    left: 50%; }

  .push--medium--seven-twelfths {
    left: 58.333%; }

  .push--medium--eight-twelfths {
    left: 66.666%; }

  .push--medium--nine-twelfths {
    left: 75%; }

  .push--medium--ten-twelfths {
    left: 83.333%; }

  .push--medium--eleven-twelfths {
    left: 91.666%; } }
@media only screen and (max-width: 768px) {
  /* Whole */
  .push--medium-down--one-whole {
    left: 100%; }

  /* Halves */
  .push--medium-down--one-half {
    left: 50%; }

  /* Thirds */
  .push--medium-down--one-third {
    left: 33.333%; }

  .push--medium-down--two-thirds {
    left: 66.666%; }

  /* Quarters */
  .push--medium-down--one-quarter {
    left: 25%; }

  .push--medium-down--two-quarters {
    left: 50%; }

  .push--medium-down--three-quarters {
    left: 75%; }

  /* Fifths */
  .push--medium-down--one-fifth {
    left: 20%; }

  .push--medium-down--two-fifths {
    left: 40%; }

  .push--medium-down--three-fifths {
    left: 60%; }

  .push--medium-down--four-fifths {
    left: 80%; }

  /* Sixths */
  .push--medium-down--one-sixth {
    left: 16.666%; }

  .push--medium-down--two-sixths {
    left: 33.333%; }

  .push--medium-down--three-sixths {
    left: 50%; }

  .push--medium-down--four-sixths {
    left: 66.666%; }

  .push--medium-down--five-sixths {
    left: 83.333%; }

  /* Eighths */
  .push--medium-down--one-eighth {
    left: 12.5%; }

  .push--medium-down--two-eighths {
    left: 25%; }

  .push--medium-down--three-eighths {
    left: 37.5%; }

  .push--medium-down--four-eighths {
    left: 50%; }

  .push--medium-down--five-eighths {
    left: 62.5%; }

  .push--medium-down--six-eighths {
    left: 75%; }

  .push--medium-down--seven-eighths {
    left: 87.5%; }

  /* Tenths */
  .push--medium-down--one-tenth {
    left: 10%; }

  .push--medium-down--two-tenths {
    left: 20%; }

  .push--medium-down--three-tenths {
    left: 30%; }

  .push--medium-down--four-tenths {
    left: 40%; }

  .push--medium-down--five-tenths {
    left: 50%; }

  .push--medium-down--six-tenths {
    left: 60%; }

  .push--medium-down--seven-tenths {
    left: 70%; }

  .push--medium-down--eight-tenths {
    left: 80%; }

  .push--medium-down--nine-tenths {
    left: 90%; }

  /* Twelfths */
  .push--medium-down--one-twelfth {
    left: 8.333%; }

  .push--medium-down--two-twelfths {
    left: 16.666%; }

  .push--medium-down--three-twelfths {
    left: 25%; }

  .push--medium-down--four-twelfths {
    left: 33.333%; }

  .push--medium-down--five-twelfths {
    left: 41.666%; }

  .push--medium-down--six-twelfths {
    left: 50%; }

  .push--medium-down--seven-twelfths {
    left: 58.333%; }

  .push--medium-down--eight-twelfths {
    left: 66.666%; }

  .push--medium-down--nine-twelfths {
    left: 75%; }

  .push--medium-down--ten-twelfths {
    left: 83.333%; }

  .push--medium-down--eleven-twelfths {
    left: 91.666%; } }
@media only screen and (min-width: 769px) {
  /* Whole */
  .push--large--one-whole {
    left: 100%; }

  /* Halves */
  .push--large--one-half {
    left: 50%; }

  /* Thirds */
  .push--large--one-third {
    left: 33.333%; }

  .push--large--two-thirds {
    left: 66.666%; }

  /* Quarters */
  .push--large--one-quarter {
    left: 25%; }

  .push--large--two-quarters {
    left: 50%; }

  .push--large--three-quarters {
    left: 75%; }

  /* Fifths */
  .push--large--one-fifth {
    left: 20%; }

  .push--large--two-fifths {
    left: 40%; }

  .push--large--three-fifths {
    left: 60%; }

  .push--large--four-fifths {
    left: 80%; }

  /* Sixths */
  .push--large--one-sixth {
    left: 16.666%; }

  .push--large--two-sixths {
    left: 33.333%; }

  .push--large--three-sixths {
    left: 50%; }

  .push--large--four-sixths {
    left: 66.666%; }

  .push--large--five-sixths {
    left: 83.333%; }

  /* Eighths */
  .push--large--one-eighth {
    left: 12.5%; }

  .push--large--two-eighths {
    left: 25%; }

  .push--large--three-eighths {
    left: 37.5%; }

  .push--large--four-eighths {
    left: 50%; }

  .push--large--five-eighths {
    left: 62.5%; }

  .push--large--six-eighths {
    left: 75%; }

  .push--large--seven-eighths {
    left: 87.5%; }

  /* Tenths */
  .push--large--one-tenth {
    left: 10%; }

  .push--large--two-tenths {
    left: 20%; }

  .push--large--three-tenths {
    left: 30%; }

  .push--large--four-tenths {
    left: 40%; }

  .push--large--five-tenths {
    left: 50%; }

  .push--large--six-tenths {
    left: 60%; }

  .push--large--seven-tenths {
    left: 70%; }

  .push--large--eight-tenths {
    left: 80%; }

  .push--large--nine-tenths {
    left: 90%; }

  /* Twelfths */
  .push--large--one-twelfth {
    left: 8.333%; }

  .push--large--two-twelfths {
    left: 16.666%; }

  .push--large--three-twelfths {
    left: 25%; }

  .push--large--four-twelfths {
    left: 33.333%; }

  .push--large--five-twelfths {
    left: 41.666%; }

  .push--large--six-twelfths {
    left: 50%; }

  .push--large--seven-twelfths {
    left: 58.333%; }

  .push--large--eight-twelfths {
    left: 66.666%; }

  .push--large--nine-twelfths {
    left: 75%; }

  .push--large--ten-twelfths {
    left: 83.333%; }

  .push--large--eleven-twelfths {
    left: 91.666%; } }
/*============================================================================
  PULL
    - Pull classes, to move grid items back to the left by certain amounts
==============================================================================*/
/*============================================================================
  #Basic Styles
==============================================================================*/
html {
  background-color: #f2f2f2; }

body {
  background-color: white; }

[tabindex='-1']:focus {
  outline: none; }

.wrapper {
  *zoom: 1;
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 15px; }
  .wrapper:after {
    content: '';
    display: table;
    clear: both; }
  @media screen and (min-width: 480px) {
    .wrapper {
      padding: 0 30px; } }

.main-content {
  display: block;
  margin-top: 30px;
  padding-bottom: 60px; }

.main-content-margin {
  display: block;
  margin-top: 185px;
  padding-bottom: 30px; }

@media screen and (max-width: 768px) {
  .main-content-margin {
    margin-top: 125px; } }
/*============================================================================
  #Helper Classes
==============================================================================*/
.is-transitioning {
  display: block !important;
  visibility: visible !important; }

.display-table {
  display: table;
  table-layout: fixed;
  width: 100%; }

.display-table-cell {
  display: table-cell;
  vertical-align: middle;
  float: none; }

@media screen and (min-width: 769px) {
  .large--display-table {
    display: table;
    table-layout: fixed;
    width: 100%; }

  .large--display-table-cell {
    display: table-cell;
    vertical-align: middle;
    float: none; } }
.visually-hidden, .supports-fontface .icon-fallback-text .fallback-text {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0; }

/*============================================================================
  #Typography
==============================================================================*/
body,
input,
textarea,
button,
select {
  font-size: 16px;
  line-height: 1.6;
  font-family: "Source Sans Pro", Arial, sans-serif;
  color: #333333;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  display: block;
  font-family: "Source Sans Pro", Arial, sans-serif;
  font-weight: 300;
  margin: 0 0 0.5em;
  line-height: 1.4; }
  h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a, h6 a, .h6 a {
    text-decoration: none;
    font-weight: inherit; }

/*================ Use em() Sass function to declare font-size ================*/
h1, .h1 {
  font-size: 2.25em; }

h2, .h2 {
  font-size: 1.75em; }

h3, .h3 {
  font-size: 1.375em; }

h4, .h4 {
  font-size: 1.25em; }

h5, .h5 {
  font-size: 1em; }

h6, .h6 {
  font-size: 0.875em; }

p {
  margin: 0 0 15px 0; }
  p img {
    margin: 0; }

em {
  font-style: italic; }

b, strong {
  font-weight: bold; }

small {
  font-size: 0.9em; }

sup, sub {
  position: relative;
  font-size: 60%;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.5em; }

/*================ Blockquotes ================*/
blockquote {
  font-size: 1.125em;
  line-height: 1.45;
  font-style: italic;
  margin: 0 0 30px;
  padding: 15px 30px;
  border-left: 1px solid #e5e5e5; }
  blockquote p {
    margin-bottom: 0; }
    blockquote p + cite {
      margin-top: 15px; }
  blockquote cite {
    display: block;
    font-size: 0.75em; }
    blockquote cite:before {
      content: '\2014 \0020'; }

/*================ Code ================*/
code, pre {
  background-color: #faf7f5;
  font-family: Consolas,monospace;
  font-size: 1em;
  border: 0 none;
  padding: 0 2px;
  color: #51ab62; }

pre {
  overflow: auto;
  padding: 15px;
  margin: 0 0 30px; }

/*================ Horizontal Rules ================*/
hr {
  clear: both;
  border-top: solid #e5e5e5;
  border-width: 1px 0 0;
  margin: 30px 0;
  height: 0; }
  hr.hr--small {
    margin: 15px 0; }
  hr.hr--clear {
    border-top-color: transparent; }

/*================ Section Headers ================*/
.section-header {
  margin-bottom: 20px; }

@media screen and (min-width: 769px) {
  .section-header {
    display: table;
    width: 100%; }

  .section-header__title {
    margin-bottom: 12px; }

  .section-header__left {
    display: table-cell;
    vertical-align: middle;
    margin-bottom: 0; }
    .section-header__left h1, .section-header__left .h1, .section-header__left h2, .section-header__left .h2, .section-header__left h3, .section-header__left .h3, .section-header__left h4, .section-header__left .h4,
    .section-header__left .h1, .section-header__left .h2, .section-header__left .h3, .section-header__left .h4 {
      margin-bottom: 0; }

  .section-header__right {
    display: table-cell;
    vertical-align: middle;
    text-align: right;
    width: 335px; } }
  @media screen and (min-width: 769px) and (max-width: 768px) {
    .section-header__right {
      margin-bottom: 30px; } }

.section-header__right .form-horizontal,
.section-header__right .collection-view {
  display: inline-block;
  vertical-align: middle; }
@media screen and (min-width: 481px) {
  .section-header__right label + select,
  .section-header__right .collection-view {
    margin-left: 15px; } }

.collection-view {
  display: inline-block;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  padding: 0 5px;
  height: 37px;
  overflow: hidden;
  /*================ Only show on larger screens ================*/ }
  @media screen and (min-width: 769px) {
    .collection-view {
      display: inline-block; } }

.change-view {
  display: block;
  background: none;
  border: 0 none;
  float: left;
  padding: 10px 8px;
  color: #e5e5e5;
  line-height: 1; }
  .change-view:hover, .change-view:focus {
    color: #425caa; }

.change-view--active {
  cursor: default;
  color: #425caa; }

/*============================================================================
  #Rich Text Editor
==============================================================================*/
.rte {
  margin-bottom: 15px; }
  .rte a {
    text-decoration: underline; }
  .rte h1, .rte .h1, .rte h2, .rte .h2, .rte h3, .rte .h3, .rte h4, .rte .h4, .rte h5, .rte .h5, .rte h6, .rte .h6 {
    margin-top: 2em; }
    .rte h1:first-child, .rte .h1:first-child, .rte h2:first-child, .rte .h2:first-child, .rte h3:first-child, .rte .h3:first-child, .rte h4:first-child, .rte .h4:first-child, .rte h5:first-child, .rte .h5:first-child, .rte h6:first-child, .rte .h6:first-child {
      margin-top: 0; }
    .rte h1 a, .rte .h1 a, .rte h2 a, .rte .h2 a, .rte h3 a, .rte .h3 a, .rte h4 a, .rte .h4 a, .rte h5 a, .rte .h5 a, .rte h6 a, .rte .h6 a {
      text-decoration: none; }
  .rte > div {
    margin-bottom: 15px; }
  .rte li {
    margin-bottom: 0.4em; }

.rte--header {
  margin-bottom: 0; }

/*============================================================================
  #Links and Buttons
==============================================================================*/
a,
.text-link {
  color: #425caa;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; }

.top-nav {
  padding-right: 15px;
  color: white; }

.top-nav a {
  font-size: 14px;
  color: white; }

a:hover,
a:active,
a:focus {
  color: #425caa;
  outline: none;
  text-decoration: none; }

button {
  overflow: visible; }

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

.btn, .btn--secondary,
.rte .btn--secondary,
.rte .btn,
.rte .btn--secondary {
  display: inline-block;
  padding: 8px 10px;
  width: auto;
  margin: 0;
  line-height: 1.42;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  cursor: pointer;
  border: 1px solid transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 3px;
  /*================ Set primary button colors - can override later ================*/
  background-color: #425caa;
  color: white; }
  .btn:hover, .btn--secondary:hover,
  .rte .btn:hover,
  .rte .btn--secondary:hover {
    background-color: #344885;
    color: white; }
  .btn:active, .btn--secondary:active, .btn:focus, .btn--secondary:focus,
  .rte .btn:active,
  .rte .btn--secondary:active,
  .rte .btn:focus,
  .rte .btn--secondary:focus {
    background-color: #253461;
    color: white; }
  .btn[disabled], [disabled].btn--secondary, .btn.disabled, .disabled.btn--secondary,
  .rte .btn[disabled],
  .rte [disabled].btn--secondary,
  .rte .btn.disabled,
  .rte .disabled.btn--secondary {
    cursor: default;
    color: #b6b6b6;
    background-color: #f6f6f6; }

.btn--secondary,
.rte .btn--secondary {
  background-color: #25aae1; }
  .btn--secondary:hover,
  .rte .btn--secondary:hover {
    background-color: #1a8bb9;
    color: white; }
  .btn--secondary:active, .btn--secondary:focus,
  .rte .btn--secondary:active,
  .rte .btn--secondary:focus {
    background-color: #13698d;
    color: white; }

.btn--small {
  padding: 4px 5px;
  font-size: 0.75em; }

.btn--large {
  padding: 12px 15px;
  font-size: 1em; }

.btn--full {
  width: 100%; }

/*================ Force an input/button to look like a text link ================*/
.text-link {
  display: inline;
  border: 0 none;
  background: none;
  padding: 0;
  margin: 0; }

/*============================================================================
  #Lists
==============================================================================*/
ul, ol {
  margin: 0 0 15px 20px;
  padding: 0; }

ol {
  list-style: decimal; }

ul ul, ul ol,
ol ol, ol ul {
  margin: 4px 0 5px 20px; }

li {
  margin-bottom: 0.25em; }

ul.square {
  list-style: square outside; }

ul.disc {
  list-style: disc outside; }

ol.alpha {
  list-style: lower-alpha outside; }

.no-bullets {
  list-style: none outside;
  margin-left: 0; }

.inline-list {
  margin-left: 0; }
  .inline-list li {
    display: inline-block;
    margin-bottom: 0; }

/*============================================================================
  #Tables
==============================================================================*/
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0; }

table.full {
  width: 100%;
  margin-bottom: 1em; }

.table-wrap {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

th {
  font-weight: bold; }

th, td {
  text-align: left;
  padding: 15px;
  border: 1px solid #e5e5e5; }

/*============================================================================
  Responsive tables, defined with .table--responsive on table element.
  Only defined for IE9+
==============================================================================*/
@media screen and (max-width: 480px) {
  .table--responsive thead {
    display: none; }
  .table--responsive tr {
    display: block; }
  .table--responsive tr,
  .table--responsive td {
    float: left;
    clear: both;
    width: 100%; }
  .table--responsive th,
  .table--responsive td {
    display: block;
    text-align: right;
    padding: 15px; }
  .table--responsive td:before {
    content: attr(data-label);
    float: left;
    text-align: center;
    font-size: 12px;
    padding-right: 10px; }
  .table--responsive.cart-table img {
    margin: 0 auto; }
  .table--responsive.cart-table .js-qty, .table--responsive.cart-table .ajaxcart__qty {
    float: right; } }

@media screen and (max-width: 480px) {
  .table--small-hide {
    display: none !important; }

  .table__section + .table__section {
    position: relative;
    margin-top: 10px;
    padding-top: 15px; }
    .table__section + .table__section:after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 15px;
      right: 15px;
      border-bottom: 1px solid #e5e5e5; } }
/*============================================================================
  #OOCSS Media Object
    - http://www.stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code/
==============================================================================*/
.media,
.media-flex {
  overflow: hidden;
  _overflow: visible;
  zoom: 1; }

.media-img {
  float: left;
  margin-right: 30px; }

.media-img-right {
  float: right;
  margin-left: 30px; }

.media-img img,
.media-img-right img {
  display: block; }

/*============================================================================
  #Images and Iframes
==============================================================================*/
img {
  border: 0 none; }

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

img,
iframe {
  max-width: 100%; }

.video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  height: auto; }
  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/*============================================================================
  #Forms
==============================================================================*/
form {
  margin-bottom: 0; }

.form-vertical {
  margin-bottom: 15px; }

/*================ Prevent zoom on touch devices in active inputs ================*/
@media screen and (max-width: 768px) {
  input,
  textarea {
    font-size: 16px; } }
input,
textarea,
button,
select {
  padding: 0;
  margin: 0;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text; }

button {
  background: none;
  border: none;
  cursor: pointer; }

button,
input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none; }

button {
  background: none;
  border: none;
  display: inline-block;
  cursor: pointer; }

input[type="image"] {
  padding-left: 0;
  padding-right: 0; }

fieldset {
  border: 1px solid #e5e5e5;
  padding: 15px; }

legend {
  border: 0;
  padding: 0; }

button,
input[type="submit"] {
  cursor: pointer; }

input,
textarea,
select {
  border: 1px solid #e5e5e5;
  max-width: 100%;
  padding: 8px 10px;
  border-radius: 3px; }
  input:focus,
  textarea:focus,
  select:focus {
    border: 1px solid #cccccc; }
  input[disabled], input.disabled,
  textarea[disabled],
  textarea.disabled,
  select[disabled],
  select.disabled {
    cursor: default;
    background-color: #f6f6f6;
    border-color: #b6b6b6; }
  input.input-full,
  textarea.input-full,
  select.input-full {
    width: 100%; }

textarea {
  min-height: 100px; }

/*================ Input element overrides ================*/
input[disabled] {
  background-color: white !important; }

input[type="checkbox"],
input[type="radio"] {
  display: inline;
  margin: 0 8px 0 0;
  padding: 0;
  width: auto; }

input[type="checkbox"] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox; }

input[type="radio"] {
  -webkit-appearance: radio;
  -moz-appearance: radio; }

input[type="image"] {
  padding-left: 0;
  padding-right: 0; }

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: right center;
  background-image: url("//cdn.shopify.com/s/files/1/1674/9535/t/2/assets/ico-select.svg?v=354012039368648229");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-color: transparent;
  padding-right: 28px;
  text-indent: 0.01px;
  text-overflow: '';
  cursor: pointer;
  /*================ Hide the svg arrow in IE9 and below ================*/ }
  .ie9 select, .lt-ie9 select {
    padding-right: 10px;
    background-image: none; }

optgroup {
  font-weight: bold; }

option {
  color: #000;
  background-color: #fff; }

select::-ms-expand {
  display: none; }

input#resBarCheckIn.input-full.k-input, input#CheckInDate.input-full.k-input {
  color: black;
  font-weight: bold; }

input#resBarCheckOut.input-full.k-input, input#CheckOutDate.input-full.k-input {
  color: black;
  font-weight: bold; }

/*================ Form labels ================*/
.hidden-label {
  position: absolute;
  height: 0;
  width: 0;
  margin-bottom: 0;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px); }
  .ie9 .hidden-label, .lt-ie9 .hidden-label {
    position: static;
    height: auto;
    width: auto;
    margin-bottom: 2px;
    overflow: visible;
    clip: initial; }

label[for] {
  cursor: default; }

/*================ Horizontal Form ================*/
.form-vertical input,
.form-vertical select,
.form-vertical textarea {
  display: block;
  margin-bottom: 10px; }
.form-vertical input[type="radio"],
.form-vertical input[type="checkbox"] {
  display: inline-block; }

/*================ Error styles ================*/
input.error,
select.error,
textarea.error {
  border-color: #d02e2e;
  background-color: #fff6f6;
  color: #d02e2e; }

label.error {
  color: #d02e2e; }

/*================ Input Group ================*/
.input-group {
  position: relative;
  display: table;
  border-collapse: separate; }
  .input-group .input-group-field:first-child,
  .input-group .input-group-btn:first-child,
  .input-group .input-group-btn:first-child > .btn,
  .input-group .input-group-btn:first-child > .btn--secondary,
  .input-group input[type="hidden"]:first-child + .input-group-field,
  .input-group input[type="hidden"]:first-child + .input-group-btn > .btn,
  .input-group input[type="hidden"]:first-child + .input-group-btn > .btn--secondary {
    border-radius: 3px 0 0 3px; }
  .input-group .input-group-field:last-child,
  .input-group .input-group-btn:last-child > .btn,
  .input-group .input-group-btn:last-child > .btn--secondary {
    border-radius: 0 3px 3px 0; }
  .input-group input::-moz-focus-inner {
    border: 0;
    padding: 0;
    margin-top: -1px;
    margin-bottom: -1px; }

.input-group-field,
.input-group-btn {
  display: table-cell;
  vertical-align: middle;
  margin: 0; }

.input-group .btn, .input-group .btn--secondary,
.input-group .input-group-field {
  height: 37px; }

.input-group .input-group-field {
  width: 100%; }

.input-group-btn {
  position: relative;
  white-space: nowrap;
  width: 1%;
  padding: 0; }

/*============================================================================
  #Icons
==============================================================================*/
.icon-fallback-text .icon {
  display: none; }
  .supports-fontface .icon-fallback-text .icon {
    display: inline-block; }

/*============================================================================
  A generic way to visually hide content while
  remaining accessible to screen readers (h5bp.com)
==============================================================================*/
.icon:before {
  display: none; }

.supports-fontface .icon:before {
  display: inline;
  font-family: "icons";
  text-decoration: none;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/*================ Icon mapping ================*/
.icon-amazon_payments:before {
  content: "\e800"; }

.icon-american_express:before {
  content: "\41"; }

.icon-arrow-down:before {
  content: "\e607"; }

.icon-bitcoin:before {
  content: "\42"; }

.icon-cart:before {
  content: "\e600"; }

.icon-cirrus:before {
  content: "\43"; }

.icon-dankort:before {
  content: "\64"; }

.icon-diners_club:before {
  content: "\63"; }

.icon-discover:before {
  content: "\44"; }

.icon-dogecoin:before {
  content: "\e904"; }

.icon-dwolla:before {
  content: "\e905"; }

.icon-facebook:before {
  content: "\66"; }

.icon-fancy:before {
  content: "\46"; }

.icon-forbrugsforeningen:before {
  content: "\e906"; }

.icon-google-plus:before {
  content: "\e900"; }

.icon-grid-view:before {
  content: "\e603"; }

.icon-hamburger:before {
  content: "\e601"; }

.icon-instagram:before {
  content: "\e901"; }

.icon-interac:before {
  content: "\49"; }

.icon-jcb:before {
  content: "\4a"; }

.icon-list-view:before {
  content: "\e604"; }

.icon-litecoin:before {
  content: "\e908"; }

.icon-maestro:before {
  content: "\6d"; }

.icon-master:before {
  content: "\4d"; }

.icon-minus:before {
  content: "\e602"; }

.icon-paypal:before {
  content: "\50"; }

.icon-pinterest:before {
  content: "\70"; }

.icon-plus:before {
  content: "\e605"; }

.icon-rss:before {
  content: "\72"; }

.icon-search:before {
  content: "\73"; }

.icon-stripe:before {
  content: "\53"; }

.icon-tumblr:before {
  content: "\74"; }

.icon-twitter:before {
  content: "\54"; }

.icon-vimeo:before {
  content: "\76"; }

.icon-visa:before {
  content: "\56"; }

.icon-x:before {
  content: "\e606"; }

.icon-youtube:before {
  content: "\79"; }

.payment-icons {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default; }
  .payment-icons li {
    margin: 0 7.5px 7.5px;
    color: #bbbbbb;
    cursor: default; }
  .payment-icons .icon {
    font-size: 30px;
    line-height: 30px; }
  .payment-icons .fallback-text {
    text-transform: capitalize; }

.social-icons li {
  margin: 0 15px 15px;
  vertical-align: middle; }
  @media screen and (min-width: 481px) {
    .social-icons li {
      margin-left: 0; } }
  .social-icons li .icon {
    font-size: 30px;
    line-height: 26px; }
  .social-icons li a {
    color: #bbbbbb; }
    .social-icons li a:hover {
      color: #a2a2a2; }

/*============================================================================
  #Pagination
==============================================================================*/
.pagination {
  margin-bottom: 1em;
  text-align: center; }
  .pagination > span {
    display: inline-block;
    line-height: 1; }
  .pagination a {
    display: block; }
  .pagination a,
  .pagination .page.current {
    padding: 8px; }

/*============================================================================
  #Site Header
==============================================================================*/
.site-header {
  position: fixed;
  top: 0;
  z-index: 2;
  width: 100%;
  padding: 15px 0;
  background: #25aae1;
  -webkit-box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1); }
  .site-header .grid--table {
    display: table;
    table-layout: fixed;
    width: 100%; }
    .site-header .grid--table > .grid__item {
      float: none;
      display: table-cell;
      vertical-align: middle; }

.site-header__logo {
  text-align: center;
  margin: 0 auto;
  max-width: 100%; }
  @media screen and (min-width: 769px) {
    .site-header__logo {
      text-align: left; } }
  .site-header__logo a,
  .site-header__logo a:hover,
  .site-header__logo a:focus {
    text-decoration: none; }
  .site-header__logo a, .site-header__logo img {
    display: block; }
  .site-header__logo img {
    margin: 0 auto; }

@media screen and (max-width: 414px) {
  .site-header__logo img {
    width: 50%; } }
.site-header__logo-link {
  max-width: 450px;
  margin: 0 auto; }

.site-header__cart-toggle {
  display: inline-block; }

.site-header__search {
  display: inline-block;
  max-width: 400px;
  margin-top: 15px;
  width: 100%; }

.search-bar {
  max-width: 100%; }
  @media screen and (max-width: 768px) {
    .search-bar {
      margin-left: auto;
      margin-right: auto; } }

/*============================================================================
  #Site Nav and Dropdowns
==============================================================================*/
.nav-bar {
  /*background-color: $colorNav;*/ }

.site-nav, .site-nav--mobile {
  font-size: 1.25em;
  cursor: default;
  margin: 10px 0 0 0; }
  .site-nav li, .site-nav--mobile li {
    margin: 0;
    display: block; }
  .site-nav > li, .site-nav--mobile > li {
    position: relative;
    display: inline-block; }

/*================ Home to hamburger and cart that toggle drawers ================*/
.text-right .site-nav--mobile {
  margin: 0 -15px 0 0; }

.site-nav--mobile-burger {
  position: absolute;
  top: 0em;
  left: 0em; }

.site-nav--mobile-cart {
  position: absolute;
  top: 0em;
  right: 0em; }

.site-nav__link {
  display: block;
  text-decoration: none;
  padding: 20px 15px 0px 15px;
  white-space: nowrap;
  color: white; }
  .site-nav__link:hover, .site-nav__link:active, .site-nav__link:focus {
    color: #425caa;
    text-decoration: none; }
  .site-nav__link .icon-arrow-down {
    position: relative;
    top: -2px;
    font-size: 10px;
    padding-left: 7.5px; }
  .site-nav--active > .site-nav__link {
    color: #f1f7f9;
    font-weight: 400; }
  .site-nav--mobile .site-nav__link {
    display: inline-block; }

/*================ Dropdowns ================*/
.site-nav__dropdown {
  display: none;
  position: absolute;
  left: 0;
  margin: 0;
  z-index: 5; }
  .supports-no-touch .site-nav--has-dropdown:hover .site-nav__dropdown, .site-nav--has-dropdown.nav-hover .site-nav__dropdown, .nav-focus + .site-nav__dropdown {
    display: block; }
  .site-nav__dropdown a {
    background-color: white; }
    .site-nav__dropdown a:hover, .site-nav__dropdown a:active, .site-nav__dropdown a:focus {
      background-color: #e6e6e6;
      text-decoration: none; }

/*================ Search bar in header ================*/
.nav-search {
  position: relative;
  padding: 10px 0; }
  @media screen and (max-width: 768px) {
    .nav-search {
      padding: 0 0 15px;
      margin: 0 auto;
      text-align: center; } }

/*============================================================================
  #Mobile Nav
  - List of items inside the mobile drawer
==============================================================================*/
.mobile-nav {
  margin: -15px -15px 0 -15px; }
  .mobile-nav li {
    margin-bottom: 0; }

.mobile-nav__search {
  padding: 15px; }
  .mobile-nav__search .search-bar {
    margin-bottom: 0; }

.mobile-nav__item {
  position: relative;
  display: block; }
  .mobile-nav > .mobile-nav__item {
    background-color: #f6f6f6; }
  .mobile-nav__item:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 15px;
    right: 15px;
    border-bottom: 1px solid #e9e9e9; }
  .mobile-nav > .mobile-nav__item:last-child:after {
    display: none; }

.mobile-nav__item a {
  display: block; }

.mobile-nav__item a,
.mobile-nav__toggle button {
  /*color: $colorDrawerText;*/
  padding: 15px;
  text-decoration: none; }
  .mobile-nav__item a:hover, .mobile-nav__item a:active, .mobile-nav__item a:focus,
  .mobile-nav__toggle button:hover,
  .mobile-nav__toggle button:active,
  .mobile-nav__toggle button:focus {
    color: #0d0d0d; }
  .mobile-nav__item a:active, .mobile-nav__item a:focus,
  .mobile-nav__toggle button:active,
  .mobile-nav__toggle button:focus {
    background-color: #e9e9e9; }

.mobile-nav__item--active {
  font-weight: bold; }

.mobile-nav__has-sublist {
  display: table;
  width: 100%; }
  .mobile-nav__has-sublist .mobile-nav__link {
    display: table-cell;
    vertical-align: middle;
    width: 100%; }

.mobile-nav__toggle {
  display: table-cell;
  vertical-align: middle;
  width: 1%; }

.mobile-nav--expanded .mobile-nav__toggle-open {
  display: none; }

.mobile-nav__toggle-close {
  display: none; }
  .mobile-nav--expanded .mobile-nav__toggle-close {
    display: block; }

.mobile-nav__sublist {
  margin: 0;
  max-height: 0;
  visibility: hidden;
  overflow: hidden;
  transition: all 300ms cubic-bezier(0.57, 0.06, 0.05, 0.95);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  .mobile-nav--expanded + .mobile-nav__sublist {
    visibility: visible;
    max-height: 700px;
    transition: all 700ms cubic-bezier(0.57, 0.06, 0.05, 0.95); }
  .mobile-nav__sublist .mobile-nav__item:after {
    top: 0;
    bottom: auto; }
  .mobile-nav__sublist .mobile-nav__link {
    padding-left: 30px;
    font-weight: normal; }

/*============================================================================
  #Drawers
==============================================================================*/
.js-drawer-open {
  overflow: hidden; }

.drawer {
  -webkit-transform: translateZ(0);
  will-change: transform;
  display: none;
  position: fixed;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  top: 0;
  bottom: 0;
  padding: 0 15px 15px;
  max-width: 95%;
  z-index: 10;
  color: #333333;
  background-color: #f6f6f6;
  transition: all 0.4s cubic-bezier(0.46, 0.01, 0.32, 1); }
  .drawer a:hover, .drawer a:focus {
    opacity: 0.7; }
  .drawer input,
  .drawer textarea {
    border-color: #e9e9e9; }

.drawer--left {
  width: 300px;
  left: -300px;
  border-right: 1px solid #e9e9e9;
  background-color: #25aae1; }
  .js-drawer-open-left .drawer--left {
    display: block;
    -ms-transform: translateX(300px);
    -webkit-transform: translateX(300px);
    transform: translateX(300px); }
    .lt-ie9 .js-drawer-open-left .drawer--left {
      left: 0; }

.drawer--right {
  width: 300px;
  right: -300px;
  border-left: 1px solid #e9e9e9; }
  .js-drawer-open-right .drawer--right {
    display: block;
    -ms-transform: translateX(-300px);
    -webkit-transform: translateX(-300px);
    transform: translateX(-300px); }
    .lt-ie9 .js-drawer-open-right .drawer--right {
      right: 0; }

#PageContainer {
  overflow: hidden; }

.is-moved-by-drawer {
  -webkit-transform: translateZ(0);
  will-change: transform;
  transition: all 0.4s cubic-bezier(0.46, 0.01, 0.32, 1); }
  .js-drawer-open-left .is-moved-by-drawer {
    -ms-transform: translateX(300px);
    -webkit-transform: translateX(300px);
    transform: translateX(300px); }
  .js-drawer-open-right .is-moved-by-drawer {
    -ms-transform: translateX(-300px);
    -webkit-transform: translateX(-300px);
    transform: translateX(-300px); }

.drawer__header {
  display: table;
  height: 70px;
  width: 100%;
  margin-bottom: 15px;
  /*border-bottom: 1px solid $colorDrawerBorder;*/ }

.drawer__title,
.drawer__close {
  display: table-cell;
  vertical-align: middle; }

.drawer__title {
  width: 100%; }

.drawer__close {
  width: 1%;
  text-align: center;
  font-size: 1.125em; }

.drawer__close button {
  position: relative;
  right: -20px;
  height: 100%;
  padding: 0 20px;
  color: inherit; }
  .drawer__close button:active, .drawer__close button:focus {
    background-color: #e9e9e9; }

/*============================================================================
  #Site Footer
==============================================================================*/
.site-footer {
  /*background-color: $colorFooterBg;*/
  padding: 30px 0;
  color: #636363; }
  @media screen and (min-width: 769px) {
    .site-footer {
      padding: 60px 0; } }

.site-footer .gotop {
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -40px;
  background: #fff;
  z-index: 8;
  width: 80px;
  height: 80px;
  font-size: 30px;
  padding-top: 5px;
  text-align: center;
  vertical-align: middle;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s; }

.site-footer .gotop:hover, #footer .gotop:focus {
  top: -25px;
  text-decoration: none !important; }

@media screen and (max-width: 768px) {
  .footer-body {
    padding-top: 25px; } }
.footer-push {
  height: 150px; }

/*============================================================================
  #Product and Collection Grids
==============================================================================*/
.grid__image {
  display: block;
  margin: 0 auto 15px; }
  .grid__image img {
    display: block;
    margin: 0 auto; }

/*============================================================================
  #Collection Filters
==============================================================================*/
.filter--active {
  font-weight: bold; }

/*============================================================================
  #Breadcrumbs
==============================================================================*/
.breadcrumb {
  margin-bottom: 30px; }
  .breadcrumb a,
  .breadcrumb span {
    display: inline-block;
    padding: 0 7px 0 0;
    margin-right: 7px; }
    .breadcrumb a:first-child,
    .breadcrumb span:first-child {
      padding-left: 0; }

/*============================================================================
  #Product Page
==============================================================================*/
.product-single__variants {
  display: none; }
  .no-js .product-single__variants {
    display: block; }

.product-single__photos {
  margin-bottom: 30px; }

.product-single__photos a, .product-single__photos img,
.product-single__thumbnails a,
.product-single__thumbnails img {
  display: block;
  margin: 0 auto; }
.product-single__photos li,
.product-single__thumbnails li {
  margin-bottom: 30px; }

/*============================================================================
  #Notes and Form Feedback
==============================================================================*/
.note,
.errors {
  border-radius: 3px;
  padding: 6px 12px;
  margin-bottom: 15px;
  border: 1px solid transparent;
  font-size: 0.9em;
  text-align: left; }
  .note ul,
  .note ol,
  .errors ul,
  .errors ol {
    margin-top: 0;
    margin-bottom: 0; }
  .note li:last-child,
  .errors li:last-child {
    margin-bottom: 0; }
  .note p,
  .errors p {
    margin-bottom: 0; }

.note {
  border-color: #e5e5e5; }

.errors ul {
  list-style: disc outside;
  margin-left: 20px; }

.form-success {
  color: #56ad6a;
  background-color: #ecfef0;
  border-color: #56ad6a; }
  .form-success a {
    color: #56ad6a;
    text-decoration: underline; }
    .form-success a:hover {
      text-decoration: none; }

.form-error,
.errors {
  color: #d02e2e;
  background-color: #fff6f6;
  border-color: #d02e2e; }
  .form-error a,
  .errors a {
    color: #d02e2e;
    text-decoration: underline; }
    .form-error a:hover,
    .errors a:hover {
      text-decoration: none; }

/*============================================================================
  #Cart Page
==============================================================================*/
.cart__row {
  position: relative;
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #e5e5e5; }
  .cart__row:first-child {
    margin-top: 0; }
  .cart__row:first-child {
    padding-top: 0; }
  .cart__row .js-qty, .cart__row .ajaxcart__qty {
    margin: 0 auto; }

.cart-table th {
  font-weight: normal; }
.cart-table td,
.cart-table th {
  padding: 30px 15px;
  border: none; }

@media screen and (min-width: 769px) {
  .cart__row--table-large {
    display: table;
    table-layout: fixed;
    width: 100%; }
    .cart__row--table-large .grid__item {
      display: table-cell;
      vertical-align: middle;
      float: none; } }
.cart__image {
  display: block; }
  .cart__image img {
    display: block;
    max-width: 100%; }

.cart__subtotal {
  margin: 0 0 0 10px;
  display: inline; }

.cart__mini-labels {
  display: block;
  margin: 10px 0;
  font-size: 0.75em; }
  @media screen and (min-width: 769px) {
    .cart__mini-labels {
      display: none; } }

.cart__remove {
  display: block;
  color: #333; }

.drawer_logo {
  height: 32px; }

/*============================================================================
  #Ajax Cart Styles (conditionally loaded)
==============================================================================*/
.ajaxcart__inner {
  margin-bottom: 30px; }

.ajaxcart__row > .grid, .ajaxcart__row > .grid--rev, .ajaxcart__row > .grid--full {
  margin-left: -15px; }
  .ajaxcart__row > .grid > .grid__item, .ajaxcart__row > .grid--rev > .grid__item, .ajaxcart__row > .grid--full > .grid__item {
    padding-left: 15px; }

.ajaxcart__product {
  position: relative;
  max-height: 500px; }
  .ajaxcart__product.is-removed {
    max-height: 0;
    overflow: hidden;
    visibility: hidden;
    transition: all 450ms cubic-bezier(0.57, 0.06, 0.05, 0.95);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }

.ajaxcart__row {
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px solid #e9e9e9; }

.ajaxcart__product-image {
  display: block;
  overflow: hidden;
  margin-bottom: 15px; }
  .ajaxcart__product-image img {
    display: block;
    margin: 0 auto;
    max-width: 100%; }

.ajaxcart__product-name,
.ajaxcart__product-meta {
  display: block; }

.ajaxcart__product-meta {
  font-size: small; }

.ajaxcart__product-name + .ajaxcart__product-meta {
  padding-top: 6px; }

/*================ Quantity Selectors ================*/
.js-qty, .ajaxcart__qty {
  position: relative;
  margin-bottom: 1em;
  max-width: 100px;
  min-width: 75px;
  overflow: visible; }
  .js-qty input, .ajaxcart__qty input {
    display: block;
    background: none;
    text-align: center;
    width: 100%;
    padding: 5px 25px;
    margin: 0; }

.js-qty__adjust, .ajaxcart__qty-adjust {
  cursor: pointer;
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  border: 0 none;
  padding: 0 8px;
  background: none;
  text-align: center;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .js-qty__adjust:hover, .ajaxcart__qty-adjust:hover, .js-qty__adjust:focus, .ajaxcart__qty-adjust:focus {
    color: #425caa; }

.js-qty__adjust--plus, .ajaxcart__qty--plus {
  right: 0;
  border-left: 1px solid #e5e5e5; }

.js-qty__adjust--minus, .ajaxcart__qty--minus {
  left: 0;
  border-right: 1px solid #e5e5e5; }

/*================ Quantity Selectors in Ajax Cart ================*/
.ajaxcart__qty {
  margin: 0; }
  .is-loading .ajaxcart__qty {
    opacity: 0.5;
    transition: none; }

.ajaxcart__qty-num {
  border-color: #e9e9e9;
  color: #333333; }

.ajaxcart__qty-adjust {
  color: #333333; }

.ajaxcart__qty--plus {
  border-color: #e9e9e9; }

.ajaxcart__qty--minus {
  border-color: #e9e9e9; }

.ajaxcart-item__price-strikethrough {
  float: right; }

.to-animate,
.to-animate-2 {
  opacity: 0; }

.section-heading {
  float: left;
  width: 100%;
  padding-bottom: 50px;
  margin-bottom: 50px;
  margin-top: 40px;
  clear: both; }

.section-heading h2, .section-heading .h2 {
  margin: 0 0 30px 0;
  font-size: 50px;
  font-weight: 300;
  color: #444;
  text-transform: uppercase;
  position: relative;
  display: block;
  padding-bottom: 20px;
  line-height: 1.5; }

.section-heading h2.left-border:after, .section-heading .left-border.h2:after {
  content: "";
  position: absolute;
  display: block;
  width: 80px;
  height: 2px;
  background: #425caa;
  left: 0%;
  margin-left: 0px;
  bottom: 0; }

.section-heading h2:after, .section-heading .h2:after {
  content: "";
  position: absolute;
  display: block;
  width: 80px;
  height: 2px;
  background: #425caa;
  left: 50%;
  margin-left: -40px;
  bottom: 0; }

@media screen and (max-width: 768px) {
  .section-heading h2, .section-heading .h2 {
    font-size: 30px; } }
.section-heading h3, .section-heading .h3 {
  font-weight: 300;
  line-height: 1.5;
  color: #929292; }

@media screen and (max-width: 768px) {
  .section-heading h3, .section-heading .h3 {
    font-size: 24px !important;
    line-height: 34px; } }
#bluesky-services, #bluesky-testimonials, #bluesky-counters, #bluesky-work, #bluesky-contact, #bluesky-about {
  padding-bottom: 4em;
  padding-top: 4em; }

@media screen and (max-width: 768px) {
  #bluesky-services, #bluesky-testimonials, #bluesky-counters, #bluesky-work, #bluesky-contact, #bluesky-about {
    padding-top: 2em;
    padding-bottom: 2em; } }
#bluesky-services, #bluesky-work, #bluesky-counters {
  padding-top: 7em;
  padding-bottom: 7em; }

#bluesky-services {
  margin-top: 0px;
  padding-top: 2em; }

@media screen and (max-width: 768px) {
  #bluesky-services, #bluesky-work, #bluesky-counters {
    padding-top: 4em;
    padding-bottom: 4em; } }
#bluesky-testimonials .box-testimony {
  margin-bottom: 2em;
  float: left; }

#bluesky-testimonials .box-testimony a {
  color: rgba(255, 255, 255, 0.5); }

#bluesky-testimonials .box-testimony a:hover, #bluesky-testimonials .box-testimony a:focus, #bluesky-testimonials .box-testimony a:active {
  color: white;
  text-decoration: none; }

#bluesky-testimonials .box-testimony blockquote {
  padding-left: 0;
  border-left: none;
  padding: 30px;
  background: #fff;
  background: #25aae1;
  font-size: 20px;
  font-weight: 300;
  position: relative;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  -ms-border-radius: 7px;
  border-radius: 7px; }

#bluesky-testimonials .box-testimony blockquote:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 40px;
  border-top: 10px solid black;
  border-top-color: #fff;
  border-top-color: #25aae1;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent; }

#bluesky-testimonials .box-testimony blockquote p {
  font-style: italic;
  color: #fff; }

#bluesky-testimonials .box-testimony .author {
  line-height: 20px;
  color: black;
  font-size: 16px;
  margin-left: 20px;
  font-weight: 400; }

#bluesky-testimonials .box-testimony .author a {
  color: #425caa; }

#bluesky-testimonials .box-testimony .author a:hover {
  text-decoration: underline; }

#bluesky-testimonials .box-testimony .author > i {
  float: left;
  margin-right: 10px; }

#bluesky-testimonials .box-testimony .author p {
  float: left;
  margin-top: 10px; }

#bluesky-testimonials .box-testimony .author .subtext {
  display: block;
  color: rgba(0, 0, 0, 0.5);
  font-size: 16px;
  font-weight: 400 !important; }

#bluesky-rates {
  background-color: #25aae1;
  /* IE9, iOS 3.2+ */
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjxsaW5lYXJHcmFkaWVudCBpZD0idnNnZyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIwJSIgeTE9IjAlIiB4Mj0iMTAwJSIgeTI9IjEwMCUiPjxzdG9wIHN0b3AtY29sb3I9IiMzZjk1ZWEiIHN0b3Atb3BhY2l0eT0iMSIgb2Zmc2V0PSIwIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzUyZDNhYSIgc3RvcC1vcGFjaXR5PSIxIiBvZmZzZXQ9IjEiLz48L2xpbmVhckdyYWRpZW50PjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjdnNnZykiIC8+PC9zdmc+);
  background-image: -webkit-gradient(linear, 0% 0%, 100% 100%, color-stop(0, #3f95ea), color-stop(1, #25aae1));
  /* Android 2.3 */
  background-image: -webkit-repeating-linear-gradient(top left, #3f95ea 0%, #25aae1 100%);
  /* IE10+ */
  background-image: repeating-linear-gradient(to bottom right, #3f95ea 0%, #25aae1 100%);
  background-image: -ms-repeating-linear-gradient(top left, #3f95ea 0%, #25aae1 100%);
  overflow: hidden;
  position: relative;
  color: rgba(255, 255, 255, 0.7);
  height: 375px;
  margin-top: 115px;
  margin-bottom: 4em; }

#bluesky-rates h3, #bluesky-rates .h3 {
  font-size: 24px;
  color: #fff; }

#bluesky-rates .section-heading {
  margin-bottom: 0;
  padding-bottom: 15px; }

#bluesky-rates .section-heading h2, #bluesky-rates .section-heading .h2 {
  color: #fff; }

#bluesky-rates .section-heading h2.left-border:after, #bluesky-rates .section-heading .left-border.h2:after {
  background: rgba(255, 255, 255, 0.3); }

#bluesky-rates i {
  margin-right: 15px; }

.bluesky-header {
  background-color: #25aae1;
  /* IE9, iOS 3.2+ */
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjxsaW5lYXJHcmFkaWVudCBpZD0idnNnZyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIwJSIgeTE9IjAlIiB4Mj0iMTAwJSIgeTI9IjEwMCUiPjxzdG9wIHN0b3AtY29sb3I9IiMzZjk1ZWEiIHN0b3Atb3BhY2l0eT0iMSIgb2Zmc2V0PSIwIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzUyZDNhYSIgc3RvcC1vcGFjaXR5PSIxIiBvZmZzZXQ9IjEiLz48L2xpbmVhckdyYWRpZW50PjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjdnNnZykiIC8+PC9zdmc+);
  background-image: -webkit-gradient(linear, 0% 0%, 100% 100%, color-stop(0, #3f95ea), color-stop(1, #25aae1));
  /* Android 2.3 */
  background-image: -webkit-repeating-linear-gradient(top left, #3f95ea 0%, #25aae1 100%);
  /* IE10+ */
  background-image: repeating-linear-gradient(to bottom right, #3f95ea 0%, #25aae1 100%);
  background-image: -ms-repeating-linear-gradient(top left, #3f95ea 0%, #25aae1 100%);
  overflow: hidden;
  position: relative;
  color: rgba(255, 255, 255, 0.7);
  height: 375px;
  margin-top: 115px;
  margin-bottom: 4em; }

.bluesky-header h3, .bluesky-header .h3 {
  font-size: 24px;
  color: #fff; }

.bluesky-header .section-heading {
  margin-bottom: 0;
  padding-bottom: 15px; }

.bluesky-header .section-heading h2, .bluesky-header .section-heading .h2 {
  color: #fff; }

.bluesky-header .section-heading h2.left-border:after, .bluesky-header .section-heading .left-border.h2:after {
  background: rgba(255, 255, 255, 0.3); }

.bluesky-header i {
  margin-right: 15px; }

@media screen and (max-width: 768px) {
  #bluesky-rates, .bluesky-header {
    margin-top: 90px;
    margin-bottom: 2em; } }
#bluesky-services {
  background-color: #25aae1;
  /* IE9, iOS 3.2+ */
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjxsaW5lYXJHcmFkaWVudCBpZD0idnNnZyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIwJSIgeTE9IjAlIiB4Mj0iMTAwJSIgeTI9IjEwMCUiPjxzdG9wIHN0b3AtY29sb3I9IiMzZjk1ZWEiIHN0b3Atb3BhY2l0eT0iMSIgb2Zmc2V0PSIwIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzUyZDNhYSIgc3RvcC1vcGFjaXR5PSIxIiBvZmZzZXQ9IjEiLz48L2xpbmVhckdyYWRpZW50PjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjdnNnZykiIC8+PC9zdmc+);
  background-image: -webkit-gradient(linear, 0% 0%, 100% 100%, color-stop(0, #3f95ea), color-stop(1, #25aae1));
  /* Android 2.3 */
  background-image: -webkit-repeating-linear-gradient(top left, #3f95ea 0%, #25aae1 100%);
  /* IE10+ */
  background-image: repeating-linear-gradient(to bottom right, #3f95ea 0%, #25aae1 100%);
  background-image: -ms-repeating-linear-gradient(top left, #3f95ea 0%, #25aae1 100%);
  overflow: hidden;
  position: relative;
  color: rgba(255, 255, 255, 0.7); }

/*
#bluesky-services:before, #bluesky-services:after {
  position: absolute;
  transform: rotate(-1.7deg);
  -ms-transform: rotate(-1.7deg);
  -webkit-transform: rotate(-1.7deg);
  -o-transform: rotate(-1.7deg);
  -moz-transform: rotate(-1.7deg);
  background-color: #fff;
  content: "";
  z-index: 3;
  display: inline-block;
  height: 70px;
  padding: 0;
  width: 101%;
}
@media screen and (max-width: 768px) {
  #bluesky-services:before, #bluesky-services:after {
    height: auto;
  }
}
#bluesky-services:before {
  top: 0;
  margin-top: -35px;
}
#bluesky-services:after {
  bottom: 0;
  margin-bottom: -35px;
}
*/
#bluesky-services .bluesky-service {
  padding-right: 30px; }

#bluesky-services h3, #bluesky-services .h3 {
  font-size: 24px;
  color: #fff; }

#bluesky-services .fa {
  font-size: 70px;
  margin-bottom: 30px;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline; }

#bluesky-services .fa:before {
  color: #fff; }

#bluesky-services .section-heading h2, #bluesky-services .section-heading .h2 {
  color: #fff; }

#bluesky-services .section-heading h2.left-border:after, #bluesky-services .section-heading .left-border.h2:after {
  background: rgba(255, 255, 255, 0.3); }

#bluesky-counters {
  background: #25aae1;
  overflow: hidden;
  background-color: transparent;
  background-size: cover;
  background-attachment: fixed;
  position: relative;
  width: 100%;
  padding: 9em 0 10em 0; }

@media screen and (max-width: 768px) {
  #bluesky-counters {
    padding: 4em 0; } }
#bluesky-counters .bluesky-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background: rgba(0, 0, 0, 0.7); }

/*
#bluesky-counters:before, #bluesky-counters:after {
  position: absolute;
  transform: rotate(-1.7deg);
  -ms-transform: rotate(-1.7deg);
  -webkit-transform: rotate(-1.7deg);
  -o-transform: rotate(-1.7deg);
  -moz-transform: rotate(-1.7deg);
  background-color: #fff;
  content: "";
  z-index: 3;
  display: inline-block;
  height: 70px;
  padding: 0;
  width: 101%;
}
#bluesky-counters:before {
  top: 0;
  margin-top: -35px;
}
#bluesky-counters:after {
  bottom: 0;
  margin-bottom: -35px;
}
*/
#bluesky-counters .section-heading {
  position: relative;
  z-index: 3;
  margin-bottom: 0; }

#bluesky-counters .section-heading h2, #bluesky-counters .section-heading .h2 {
  color: #fff; }

#bluesky-counters .section-heading h2:after, #bluesky-counters .section-heading .h2:after {
  background: rgba(255, 255, 255, 0.3) !important; }

#bluesky-counters .section-heading .subtext h3, #bluesky-counters .section-heading .subtext .h3 {
  color: rgba(255, 255, 255, 0.7) !important; }

#bluesky-counters .bluesky-counter {
  position: relative;
  z-index: 3;
  text-align: center; }

@media screen and (max-width: 992px) {
  #bluesky-counters .bluesky-counter {
    margin-bottom: 50px;
    float: left;
    width: 100%; } }
#bluesky-counters .bluesky-counter .bluesky-counter-icon,
#bluesky-counters .bluesky-counter .bluesky-counter-number,
#bluesky-counters .bluesky-counter .bluesky-counter-label {
  display: block; }

#bluesky-counters .bluesky-counter .bluesky-counter-icon {
  font-size: 40px;
  color: #25aae1; }

#bluesky-counters .bluesky-counter .bluesky-counter-number {
  font-size: 70px;
  color: #fff;
  font-weight: 300; }

#bluesky-counters .bluesky-counter .bluesky-counter-label {
  color: rgba(255, 255, 255, 0.5);
  font-size: 18px;
  font-weight: 400; }

#bluesky-contact {
  padding-bottom: 0; }

#bluesky-contact .bluesky-contact-info {
  padding: 0;
  margin: 0 0 1.5em 0; }

#bluesky-contact .bluesky-contact-info li {
  position: relative;
  padding: 0;
  margin: 0 0 1.5em 0;
  padding-left: 50px;
  list-style: none; }

#bluesky-contact .bluesky-contact-info li i {
  position: absolute;
  top: .2em;
  left: 0; }

#bluesky-contact div.wrapper {
  padding-bottom: 2em; }

#gmap {
  width: 100%;
  height: 500px;
  position: relative; }

@media screen and (max-width: 768px) {
  #gmap {
    height: 200px; } }
/*
 ****************************************
 * Carousel
 *****************************************
*/
.carousel-container {
  margin-top: 120px;
  width: 100%; }

.carousel-container .carousel {
  width: 100%; }

.carousel img {
  width: 100%;
  height: auto !important; }
.carousel .carousel-inner .item {
  width: 100%; }

.carousel-container .carousel-inner div.carousel-caption {
  position: absolute;
  top: 10em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }

.carousel-container .carousel-inner div.carousel-caption span {
  background: rgba(0, 0, 0, 0.4) none repeat scroll 0 0;
  padding: 20px;
  font-size: xx-large;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1px; }

@media screen and (max-width: 414px) {
  .carousel-container .carousel-inner div.carousel-caption {
    display: none; }

  .carousel-container {
    margin-top: 83px; }

  #bluesky-services, #bluesky-work, #bluesky-counters {
    padding-top: 0px !important; } }
.offer {
  position: absolute;
  -ms-transform: rotate(20deg);
  -webkit-transform: rotate(20deg);
  transform: rotate(20deg);
  right: 1em;
  z-index: 1;
  position: absolute;
  top: 2em; }
  .offer .offer-text {
    text-shadow: 1px 1px 1px #333333;
    font-size: 120%;
    color: white;
    top: 83px;
    position: absolute;
    z-index: 2;
    left: 84px;
    font-weight: bold;
    line-height: 18px;
    text-align: center; }

div.reservation-bar {
  -webkit-box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 10px 0 14px 0 rgba(0, 0, 0, 0.1);
  height: 150px;
  width: 100%;
  position: fixed;
  bottom: 0px;
  background: rgba(255, 255, 255, 0.95) none repeat scroll 0 0;
  z-index: 4;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; }
  div.reservation-bar form.reservation-bar-form {
    padding: 30px; }
    div.reservation-bar form.reservation-bar-form label {
      font-weight: 400; }
    div.reservation-bar form.reservation-bar-form select {
      background-color: #fff; }
  div.reservation-bar button {
    margin-top: 25px; }

.reservation-bar-collapse-btn {
  position: absolute;
  padding: 10px;
  top: -45px;
  background: rgba(255, 255, 255, 0.95) none repeat scroll 0 0;
  z-index: 4;
  -webkit-box-shadow: 0px -4px 10px 0px rgba(0, 0, 0, 0.06);
  -moz-box-shadow: 0px -4px 10px 0px rgba(0, 0, 0, 0.06);
  -ms-box-shadow: 0px -4px 10px 0px rgba(0, 0, 0, 0.06);
  box-shadow: 0px -4px 10px 0px rgba(0, 0, 0, 0.06);
  border-radius: 6px 6px 0 0; }

.reservation-bar-closed {
  bottom: -125px !important;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; }

/************RATES************/
.lt_grey_text {
  color: #808285; }

.dk_blue_text {
  color: #445ca9; }

.dk_blue_bg {
  background-color: #445ca9; }

.lt_blue_bg {
  background-color: #27aae1; }

.slt_blue_bg {
  background-color: #bee5f6; }

.lt_blue_text {
  color: #27aae1; }

.baby_blue_text {
  color: #bee5f6 !important; }

.dk_grey_text {
  color: #4d4d4d; }

.white_text {
  color: #FFFFFF; }

.orange_text {
  color: #fa7102; }

img.qr {
  border: solid 5px #333333; }

.caps {
  text-transform: uppercase;
  text-decoration: none !important;
  font-weight: bold; }

#all_rates {
  height: auto;
  overflow: hidden;
  width: auto; }

#res_rates_container {
  width: 360px;
  height: auto;
  float: left;
  overflow: hidden;
  background-image: url(arrow-right.gif);
  background-repeat: no-repeat;
  background-position: 328px 50%; }

#res_rates {
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  color: #FFFFFF;
  padding: 20px 20px 20px 20px;
  width: 330px;
  height: 400px;
  overflow: visible;
  float: left;
  background-color: #445ca9; }

#res_rates .rate_headline {
  font-size: 30px;
  line-height: 30px;
  font-weight: bold;
  float: left;
  color: #FFFFFF; }

.rate_container {
  width: 290px;
  clear: both;
  overflow: hidden;
  float: left;
  height: 100px; }

#standard_rates {
  border-radius: 10px;
  padding: 20px 20px 0px 20px;
  height: 400px;
  overflow: hidden;
  float: left;
  clear: right; }

#standard_rates .rate_headline {
  font-size: 30px;
  font-weight: bold;
  float: left;
  clear: both;
  height: auto;
  overflow: hidden;
  width: 100%; }

.rate {
  font-size: 420%;
  float: left;
  font-weight: bold; }

.rate_info {
  float: left;
  font-size: 22px;
  height: 25px;
  margin-left: 5px;
  margin-top: 25px;
  line-height: 20px; }

.coupon_line input[type="text"] {
  padding-left: 8px;
  font-size: 14px;
  padding-right: 8px;
  padding-top: 5px;
  padding-bottom: 5px;
  width: 362px;
  margin-left: 10px;
  margin-right: 10px;
  border: solid 1px #CCCCCC;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  -moz-border-radius: 4px; }

#rates_secondary {
  border-top: dotted 1px #CCCCCC;
  background-image: url(road-divider-h.gif);
  background-position: 0 bottom;
  background-repeat: repeat-x;
  height: auto;
  width: auto;
  margin-top: 30px;
  padding-top: 30px;
  padding-bottom: 30px;
  overflow: hidden; }

@media screen and (max-width: 768px) {
  div.reservation-bar {
    /*position: absolute;*/
    /*top: 400px;*/
    height: auto; }

  .reservation-bar-closed {
    bottom: -310px !important;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; }

  .site-header {
    position: absolute; } }
@media only screen and (max-width: 768px) {
  #is-mobile {
    display: none; } }
/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT

Copyright (c) 2015 Daniel Eden
*/
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

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

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

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

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

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

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

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

  25%, 75% {
    opacity: 0; } }

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

  25%, 75% {
    opacity: 0; } }

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

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

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

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

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

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

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }

  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }

  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }

  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }

  to {
    -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }

  77.7% {
    -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
    transform: skewX(0.39063deg) skewY(0.39063deg); }

  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }

  77.7% {
    -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
    transform: skewX(0.39063deg) skewY(0.39063deg); }

  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

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

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

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

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }

  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }

  to {
    -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }

  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }

  to {
    -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }

  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }

  to {
    -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

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

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

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

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

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

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

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

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

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

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

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

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

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

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

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

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

  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }

  to {
    opacity: 1; } }

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

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);*/
    -webkit-transform: translate3d(0, -50px, 0);
    transform: translate3d(0, -50px, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInDown {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);*/
    -webkit-transform: translate3d(0, -50px, 0);
    transform: translate3d(0, -50px, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);*/
    -webkit-transform: translate3d(-50px, 0, 0);
    transform: translate3d(-50px, 0, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeft {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);*/
    -webkit-transform: translate3d(-50px, 0, 0);
    transform: translate3d(-50px, 0, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);*/
    -webkit-transform: translate3d(50px, 0, 0);
    transform: translate3d(50px, 0, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInRight {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);*/
    -webkit-transform: translate3d(50px, 0, 0);
    transform: translate3d(50px, 0, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);*/
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInUp {
  from {
    opacity: 0;
    /*-webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);*/
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

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

  to {
    opacity: 0; } }

@keyframes fadeOut {
  from {
    opacity: 1; }

  to {
    opacity: 0; } }

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

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes fadeOutDown {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

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

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes fadeOutDownBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

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

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes fadeOutLeft {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

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

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

@keyframes fadeOutLeftBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

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

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes fadeOutRight {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

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

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

@keyframes fadeOutRightBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

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

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes fadeOutUp {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

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

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes fadeOutUpBig {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

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

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

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

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

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

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

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

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

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

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

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

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

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1; }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

@keyframes lightSpeedOut {
  from {
    opacity: 1; }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

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

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

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

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

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

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

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

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

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

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

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

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

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }

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

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }

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

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

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }

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

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }

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

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

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }

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

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }

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

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

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }

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

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }

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

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

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }

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

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }

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

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

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1; }

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

@keyframes rollOut {
  from {
    opacity: 1; }

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

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

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

  50% {
    opacity: 1; } }

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

  50% {
    opacity: 1; } }

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

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

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

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

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomOut {
  from {
    opacity: 1; }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }

  to {
    opacity: 0; } }

@keyframes zoomOut {
  from {
    opacity: 1; }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }

  to {
    opacity: 0; } }

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

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

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

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

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

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

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

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

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

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

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

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

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

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

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