@charset "UTF-8";
/* Genesis Child Theme
Theme Name: Medledelse
Theme URI: https://github.com/mbernth/medledelse
Description: This is a theme by mono voce, created for the Genesis Framework.
Author: mono voce aps
Author URI: https://www.monovoce.com/
Template: genesis
Version: 1.0.0
License: GPL-2.0-or-later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Text Domain: medledelse
*/
/* # HTML5 Reset
---------------------------------------------------------------------------------------------------- */
/* ## Baseline Normalize
--------------------------------------------- */
/* normalize.css v3.0.1 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

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

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

[hidden], template {
  display: none;
}

a {
  background: 0 0;
}

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

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

b, strong {
  font-weight: 700;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

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

small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

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

figure {
  margin: 0;
}

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

pre {
  overflow: auto;
}

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

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

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

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

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

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

input {
  line-height: normal;
}

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

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

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

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

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

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: 700;
}

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

td, th {
  padding: 0;
}

/* ## Box Sizing
--------------------------------------------- */
html,
input[type=search] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

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

/* # MIXINS
---------------------------------------------------------------------------------------------------- */
/* ## Typography
---------------------------------------------------------------------- */
/* Basic Font Sizes mixin */
/* ## Responsive Typography
---------------------------------------------------------------------- */
/*
@mixin typography($fs-t_font) {
  @if type-of($fs-t_font) == "list" {
    font-size: nth($fs-t_font, 1);
    @if (length($fs-t_font) > 1) {
      line-height: nth($fs-t_font, 2);
    }
    @if (length($fs-t_font) > 2) {
      font-weight: nth($fs-t_font, 3);
    }
  }
}
*/
/* ## Responsive paddings
---------------------------------------------------------------------- */
/* ## Responsive margins
---------------------------------------------------------------------- */
/* ## Responsive Grid Gap
---------------------------------------------------------------------- */
/* ## Responsive Gridcontainer inside wrap max width
---------------------------------------------------------------------- */
/* ## Border Radius
---------------------------------------------------------------------- */
/* ## Gradients
---------------------------------------------------------------------- */
/* # Variables
---------------------------------------------------------------------------------------------------- */
/* ## Colour palette
---------------------------------------------------------------------- */
/* Shade */
/* Tint */
/* Shadow */
/* Primary */
/* Secondary */
/* Tertiary */
/* Active - Active/Focused*/
/* Accent 1 - Succes */
/* Accent 2 - Warning */
/* Accent 3 - Error/Alert */
/* ### Global colours
---------------------------------------------------------------------- */
/* Global body values */
/* Default body link */
/* Mark */
/* Button */
/* ## Defaults Globals
---------------------------------------------------------------------- */
/* ## Typography
---------------------------------------------------------------------- */
/* ### Responsive typography
---------------------------------------------------------------------- */
/* ### Font family
---------------------------------------------------------------------- */
@font-face {
  font-family: "Halcyon-Regular";
  scr: url("fonts/Halcyon-Regular.eot");
  src: local("Halcyon-Regular"), url("fonts/Halcyon-Regular.woff") format("woff"), url("fonts/Halcyon-Regular.ttf") format("truetype"), url("fonts/Halcyon-Regular.svg#svgFontName") format("svg");
  font-display: swap;
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Halcyon-SemiBold";
  scr: url("fonts/Halcyon-SemiBold.eot");
  src: local("Halcyon-SemiBold"), url("fonts/Halcyon-SemiBold.woff") format("woff"), url("fonts/Halcyon-SemiBold.ttf") format("truetype"), url("fonts/Halcyon-SemiBold.svg#svgFontName") format("svg");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Halcyon-Bold";
  scr: url("fonts/Halcyon-Bold.eot");
  src: local("Halcyon-Bold"), url("fonts/Halcyon-Bold.woff") format("woff"), url("fonts/Halcyon-Bold.ttf") format("truetype"), url("fonts/Halcyon-Bold.svg#svgFontName") format("svg");
  font-display: swap;
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Halcyon-Black";
  scr: url("fonts/Halcyon-Black.eot");
  src: local("Halcyon-Black"), url("fonts/Halcyon-Black.woff") format("woff"), url("fonts/Halcyon-Black.ttf") format("truetype"), url("fonts/Halcyon-Black.svg#svgFontName") format("svg");
  font-display: swap;
  font-weight: 900;
  font-style: normal;
  font-stretch: normal;
}
/* Global Font Faminly */
/* ## Border Radius
---------------------------------------------------------------------- */
/* Globals */
/* ## Colored Gridcontainer
---------------------------------------------------------------------- */
/* ## Media Queries
---------------------------------------------------------------------- */
/* 592 pixel */
/* 768 pixel */
/* 1023 pixel */
/* 1024 pixel */
/* 1280 pixel */
/* 1600 pixel */
/* 1920 pixel */
/* 2480 pixel */
/* ## Site Structure
---------------------------------------------------------------------- */
/* # Arrays
---------------------------------------------------------------------------------------------------- */
/* ## Breakpoints
---------------------------------------------------------------------- */
/* ## Responsive site measure
---------------------------------------------------------------------- */
/* ## Gutenberg
---------------------------------------------------------------------- */
/* ### Color mixins
---------------------------------------------------------------------- */
.has-theme-shade-color {
  color: #041311;
}

.has-theme-shade-background-color {
  background-color: #041311;
}

.has-theme-tint-color {
  color: #fefefe;
}

.has-theme-tint-background-color {
  background-color: #fefefe;
}

.has-theme-primary-color {
  color: #155d56;
}

.has-theme-primary-background-color {
  background-color: #155d56;
}

.has-theme-secondary-color {
  color: #afc5c0;
}

.has-theme-secondary-background-color {
  background-color: #afc5c0;
}

.has-theme-active-color {
  color: #fff166;
}

.has-theme-active-background-color {
  background-color: #fff166;
}

.has-theme-accent-one-color {
  color: #4DFFA6;
}

.has-theme-accent-one-background-color {
  background-color: #4DFFA6;
}

.has-theme-accent-two-color {
  color: #FFF04D;
}

.has-theme-accent-two-background-color {
  background-color: #FFF04D;
}

.has-theme-accent-three-color {
  color: #FF4D6A;
}

.has-theme-accent-three-background-color {
  background-color: #FF4D6A;
}

/* ### Gutenberg Front-end styles
---------------------------------------------------------------------- */
/* Drop Caps
---------------------------------------------------------------------------- */
.site-container p.has-drop-cap:not(:focus)::first-letter {
  font-size: 7rem;
  font-weight: 500;
  line-height: 1;
  margin: 10px 4px 0 -8px;
}

.site-container p.has-large-font-size.has-drop-cap:not(:focus)::first-letter {
  font-size: 12.2rem;
  margin: 17px 7px 0 -12px;
}

.site-container p.has-small-font-size.has-drop-cap:not(:focus)::first-letter {
  font-size: 4.3rem;
  margin: 7px 3px 0 -5px;
}

/* Paragraphs
---------------------------------------------------------------------------- */
p.has-background {
  padding: calc(1.44em + (1.2vw));
}

.alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
  padding: calc(1.44em + (1.2vw));
}

/* Text Size
---------------------------------------------------------------------------- */
.has-small-font-size {
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
}

.has-large-font-size {
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.44;
}

.has-larger-font-size {
  font-size: calc(2.48832rem + (1.2vw / 10));
  line-height: 1.44;
}

/* Background Color
---------------------------------------------------------------------------- */
.site-container p.has-background {
  padding: calc(1.44em + (1.2vw));
}

.site-container p.has-background.box-shadow {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

.site-container p.has-background a,
.site-container p.has-text-color a {
  color: inherit;
  text-decoration: underline;
}

.site-container p.has-background a:focus,
.site-container p.has-background a:hover,
.site-container p.has-text-color a:focus,
.site-container p.has-text-color a:hover {
  color: inherit;
  text-decoration: none;
}

/* Images
---------------------------------------------------------------------------- */
.wp-block-image figcaption {
  margin-top: 0;
  margin-bottom: 0;
}

/* Alignment
---------------------------------------------------------------------------- */
.has-text-align-center {
  text-align: center;
}

.has-text-align-left {
  text-align: left;
}

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

.wp-block-button.alignleft,
.wp-block-cover.alignleft,
.wp-block-image .alignleft {
  margin-right: 2em;
}

.wp-block-button.alignright,
.wp-block-cover.alignright,
.wp-block-image .alignright {
  margin-left: 2em;
}

.wp-block-image {
  margin-bottom: calc(1.44em + (1.2vw));
}

.entry-content .wp-block-image:last-child {
  margin-bottom: 0;
}

.wp-block-cover,
.wp-block-cover-image {
  width: auto;
  min-height: 50vh;
}

.wp-block-cover-image .wp-block-cover__inner-container,
.wp-block-cover .wp-block-cover__inner-container {
  margin-top: calc(1.44em + (1.2vw));
  margin-bottom: calc(1.44em + (1.2vw));
  padding-top: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
  width: 90%;
  z-index: 1;
  color: #fefefe;
}
.wp-block-cover-image .wp-block-cover__inner-container h1, .wp-block-cover-image .wp-block-cover__inner-container h2, .wp-block-cover-image .wp-block-cover__inner-container h3, .wp-block-cover-image .wp-block-cover__inner-container h4, .wp-block-cover-image .wp-block-cover__inner-container h5, .wp-block-cover-image .wp-block-cover__inner-container h6,
.wp-block-cover .wp-block-cover__inner-container h1,
.wp-block-cover .wp-block-cover__inner-container h2,
.wp-block-cover .wp-block-cover__inner-container h3,
.wp-block-cover .wp-block-cover__inner-container h4,
.wp-block-cover .wp-block-cover__inner-container h5,
.wp-block-cover .wp-block-cover__inner-container h6 {
  line-height: 1;
}
.wp-block-cover-image .wp-block-cover__inner-container h2,
.wp-block-cover .wp-block-cover__inner-container h2 {
  font-size: calc(4.29981696rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 900;
  color: #fefefe;
}

.full-width-content .entry-content > .alignfull {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  max-width: 100vw;
}

.full-width-content .entry-content > .wp-block-table.alignfull {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  width: 100vw;
}

.alignfull .alignwide,
.alignwide .alignwide {
  width: 90%;
  max-width: calc( 65ch + (1.728vw * 10));
  margin: 0 auto;
}

/* Columns
---------------------------------------------------------------------------- */
.wp-block-columns.has-background,
.wp-block-columns.has-background.alignfull {
  padding: calc(1.44em + (1.2vw));
}

.site-container .wp-block-columns {
  margin-bottom: calc(1.44em + (1.2vw));
}

/* Cover Image
---------------------------------------------------------------------------- */
.full-width-content .entry-content > .wp-block-cover.alignfull {
  width: 100vw;
}

.site-container .wp-block-cover .wp-block-cover-text {
  font-size: calc(2.48832rem + (1.2vw / 10));
  line-height: 1.44;
}

/* Buttons
---------------------------------------------------------------------------- */
.site-container .ab-button {
  background-color: #155d56;
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
  text-transform: uppercase;
}

.site-container .wp-block-button .wp-block-button__link,
.wp-block-button__link {
  background-color: #155d56;
  color: #fefefe;
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  border-radius: 2em;
  cursor: pointer;
  padding: 0.6em 1.5em;
  min-width: 180px;
  text-transform: none;
  white-space: normal;
  width: auto;
}

.site-container .wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent;
  border: 2px solid currentColor;
  padding: 0.6em 1.5em;
}

.site-container .wp-block-button.is-style-outline .wp-block-button__link.has-background {
  background-color: transparent !important;
}

.site-container .ab-button:focus,
.site-container .ab-button:hover,
.site-container .wp-block-button .wp-block-button__link:focus,
.site-container .wp-block-button .wp-block-button__link:hover,
.site-container .wp-block-button.is-style-outline .wp-block-button__link:focus,
.site-container .wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button__link:focus,
.wp-block-button__link:hover {
  color: #fefefe;
}

.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:hover,
.wp-block-button__link:visited {
  color: #fefefe;
}

/* Blockquotes and captions
---------------------------------------------------------------------------- */
.site-container .wp-block-quote::before {
  color: #155d56;
  content: "“";
  display: block;
  font-family: sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  height: 0;
  left: -20px;
  position: relative;
  text-align: left;
  top: -5px;
}

.site-container .wp-block-pullquote blockquote {
  margin: 0;
  padding: 0;
}

.wp-block-pullquote {
  padding-top: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
}

.wp-block-pullquote.alignleft,
.wp-block-pullquote.alignright {
  padding: 0;
  max-width: 100%;
}

.wp-block-pullquote p,
.wp-block-pullquote.alignleft p,
.wp-block-pullquote.alignright p {
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.44;
}

.site-container .wp-block-pullquote.alignleft blockquote {
  margin-right: calc(1.44em + (1.2vw));
  margin-bottom: calc(1.44em + (1.2vw));
}

.site-container .wp-block-pullquote.alignright blockquote {
  margin-left: calc(1.44em + (1.2vw));
  margin-bottom: calc(1.44em + (1.2vw));
}

.wp-block-pullquote.is-style-solid-color blockquote {
  padding: calc(1.44em + (1.2vw));
  max-width: 100%;
  color: #fefefe;
  background-color: #fff166;
}
.wp-block-pullquote.is-style-solid-color blockquote p {
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.44;
  color: #fefefe;
  font-size: inherit;
}
.wp-block-pullquote.is-style-solid-color blockquote cite {
  font-style: italic;
}

.wp-block-pullquote.alignfull {
  padding: calc(1.44em + (1.2vw));
  text-align: center;
}
.wp-block-pullquote.alignfull blockquote {
  text-align: center;
}

.wp-block-pullquote.alignwide blockquote {
  text-align: center;
}

/* Code Block
---------------------------------------------------------------------------- */
.wp-block-code {
  padding: calc(1.44em + (1.2vw));
  background-color: #e6e7e7;
  border: 1px solid #cdd0cf;
  border-radius: 0.35px;
}

/* Category Block
---------------------------------------------------------------------------- */
.site-container .wp-block-categories {
  margin-left: 0;
  padding-left: 0;
}

.site-container .wp-block-categories li {
  list-style-type: none;
}

.site-container .wp-block-categories.aligncenter {
  text-align: center;
}

.site-container .wp-block-categories.alignfull {
  padding: 0 30px;
}

.site-container .wp-block-categories .children {
  padding-left: 30px;
}

/* Latest Posts Block
---------------------------------------------------------------------------- */
.site-container .wp-block-latest-posts {
  margin-left: 0;
  padding-left: 0;
}

.site-container .wp-block-latest-posts li {
  list-style-type: none;
}

.site-container .wp-block-latest-posts.aligncenter {
  text-align: center;
}

.site-container .wp-block-latest-posts.alignfull {
  padding: 0 30px;
}

/* Atomic Blocks
---------------------------------------------------------------------------- */
.ab-block-container h3,
.ab-block-post-grid .ab-post-grid-items .ab-block-post-grid-title {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.5px;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.ab-block-post-grid .ab-post-grid-items .ab-block-post-grid-title {
  margin-bottom: 5px;
}

.ab-block-post-grid .ab-post-grid-items .ab-block-post-grid-title a {
  color: #000;
}

.ab-block-pricing-table-inside {
  box-shadow: 10px 10px 40px rgba(0, 0, 0, 0.05);
}

/* Other Blocks
---------------------------------------------------------------------------- */
.wp-block-preformatted {
  white-space: pre-wrap;
}

hr.wp-block-separator {
  border-width: 0;
  border-bottom: 1px solid currentColor;
  color: #041311;
  margin: 2.2em 0 2em;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: 3.5%;
}

.wp-block-audio audio {
  display: inline-block;
  width: 100%;
}

.site-container .blocks-gallery-grid {
  padding-left: 0;
}

.wp-block-table.is-style-stripes {
  border-bottom-width: 0;
}

/* Search Block
---------------------------------------------------------------------------- */
.wp-block-search {
  flex-wrap: nowrap;
  padding-top: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
}
.wp-block-search.alignright {
  padding-left: calc(1.44em + (1.2vw));
}
.wp-block-search.alignleft {
  padding-right: calc(1.44em + (1.2vw));
}
.wp-block-search.aligncenter {
  display: flex;
}
.wp-block-search.alignfull {
  padding: 20px 5%;
}
.wp-block-search.alignwide {
  padding: 20px 0;
}
.wp-block-search .wp-block-search__label {
  display: inline-block;
  height: 0;
  width: 0;
  overflow: hidden;
}
.wp-block-search .wp-block-search__input {
  width: 100%;
  max-width: 100%;
  min-width: 50%;
}
.wp-block-search .wp-block-search__button {
  min-width: unset;
}

/* Media Queries
---------------------------------------------------------------------------- */
@media only screen and (min-width: 48em) {
  /* Alignment
  ---------------------------------------------------------------------------- */
  .full-width-content .entry-content > .alignwide,
  .full-width-content.team-member-archive .alignwide {
    margin-left: calc((-1.728vw * 10) / 2);
    margin-right: calc((-1.728vw * 10) / 2);
    max-width: calc(100% + (1.728vw * 10));
    width: auto;
  }
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
  .wp-block-pullquote.alignleft {
    max-width: 50%;
    margin-left: calc(-1.44em - (1.2vw));
  }
  .wp-block-pullquote.alignright {
    max-width: 50%;
    margin-right: calc(-1.44em - (1.2vw));
  }
}
/* ### Images and text block
---------------------------------------------------------------------- */
.block-images-text .section-content:nth-child(even) {
  background-color: #d0dfdd;
}
.block-images-text .section-content:nth-child(even) .section-media::after {
  background-color: #739e9a;
}
.block-images-text .section-content:nth-child(even) .section-media::before {
  background-color: #fff166;
}

.section-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: calc(calc(1.44em + (1.2vw)) * 2);
  padding-bottom: calc(calc(1.44em + (1.2vw)) * 2);
}
.section-content > * + * {
  margin-top: calc(1.44em + (1.2vw));
}
.section-content .section-header {
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
  font-size: clamp(calc(3.5831808rem + (1.2vw / 10)), 5vw, 10em);
  line-height: 1.2;
  color: #155d56;
}
.section-content .carousel img {
  display: block;
  float: left;
  width: 100%;
  height: 100%;
  max-width: unset;
  object-fit: cover;
}
.section-content .section-text > * + * {
  margin-top: calc(calc(1.44em + (1.2vw)) / 2);
}
.section-content .section-text p {
  max-width: 65ch;
}
.section-content .section-media {
  position: relative;
  height: 100%;
}
.section-content .section-media::after {
  position: absolute;
  content: "";
  right: -1.2em;
  bottom: -1.2em;
  height: 20vw;
  width: 20vw;
  background-color: #fff166;
}
.section-content .section-media::before {
  position: absolute;
  content: "";
  right: -1.2em;
  bottom: -1.2em;
  height: 10vw;
  width: 10vw;
  background-color: #739e9a;
  z-index: 5;
}
.section-content:nth-child(even) .section-media::after, .section-content:nth-child(even) .section-media::before {
  right: unset;
  left: -1.2em;
}
.section-content .section-image {
  position: relative;
  height: 100%;
  z-index: 10;
}
.section-content .section-image img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100%;
  height: 100%;
}

.section-link {
  display: flex;
  align-items: center;
  font-weight: 600;
  line-height: 1;
  color: #155d56;
  text-decoration: none;
  margin-top: calc(1.44em + (1.2vw));
}
.section-link .icon-stepup-arrow {
  fill: #155d56;
  margin-left: 1em;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.section-link:hover {
  color: #155d56;
}
.section-link:hover .icon-stepup-arrow {
  fill: #155d56;
  margin-left: 1.5em;
}

.block-images-text.alignfull .section-content {
  padding-left: 5%;
  padding-right: 5%;
}

.has-grey-background {
  background-color: #cbcbcb;
}

.has-dark-background {
  background-color: #041311;
  color: #fefefe;
}
.has-dark-background .section-link {
  color: #fff166;
}
.has-dark-background .section-link .icon-stepup-arrow {
  fill: #fff166;
}
.has-dark-background .section-link:hover {
  color: #fff166;
}
.has-dark-background .section-link:hover .icon-stepup-arrow {
  fill: #fff166;
}
.has-dark-background .section-media::before {
  background-color: #fff166;
}

@media only screen and (min-width: 48em) {
  .block-images-text.alignfull .section-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    grid-gap: calc(1.44em + (1.2vw));
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .block-images-text.alignfull.has-image-right .section-content .section-media {
    order: 2;
  }
  .block-images-text.alignfull.has-image-right .section-content .section-text {
    order: 1;
  }
  .block-images-text.alignfull.has-image-right .section-content:nth-child(even) .section-media {
    order: 1;
  }
  .block-images-text.alignfull.has-image-right .section-content:nth-child(even) .section-text {
    order: 2;
  }
}
@media only screen and (min-width: 80em) {
  /* ### Images and text block
  ---------------------------------------------------------------------- */
  .section-content {
    min-height: 70vh;
  }
}
@media only screen and (min-width: 100em) {
  /* ### Images and text block
  ---------------------------------------------------------------------- */
  .section-content {
    min-height: 90vh;
  }
}
@media only screen and (min-width: 120em) {
  /* ### Images and text block
  ---------------------------------------------------------------------- */
  .section-content {
    min-height: 100vh;
  }
}
/* Style Guide =================================================== */
.style-guide .category {
  display: block;
  width: 100%;
  margin-bottom: 60px;
}

.category_headline {
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
  color: #9ba1a0;
  padding-bottom: 3px;
  margin-bottom: 40px;
  border-bottom: 1px solid #9ba1a0;
}

.description {
  clear: both;
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
  color: #9ba1a0;
}

.headlines span {
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
}

.headlines,
.bodytext,
.headings,
.paragraphs {
  margin-bottom: calc(1.44em + (1.2vw));
}

.two_col {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 40px;
}

@media only screen and (min-width: 64em) {
  .two_col {
    grid-template-columns: 1fr 1fr;
  }
}
/* ## UI elements
---------------------------------------------------------------------- */
.style-guide .entry-content .category button,
.style-guide .entry-content .category input[type=button],
.style-guide .entry-content .category input[type=reset],
.style-guide .entry-content .category input[type=submit],
.style-guide .entry-content .category .button {
  clear: none;
  float: left;
  margin-bottom: 40px;
}

.ui-elements-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}

/* Palette
---------------------------------------------------------------------- */
.primary_swatches {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  grid-gap: 40px;
  margin-bottom: 40px;
}

.secondary_swatches {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  grid-gap: 40px;
}

.entry-content ul[class*=swatch] {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  margin: 0;
  padding: 0;
}

.entry-content ul > li[class*=swatch-row] {
  flex-grow: 1;
  width: 25%;
  height: 47px;
  list-style-type: none;
}
.entry-content ul > li[class*=swatch-row] p {
  font-family: "bebas-neue-pro-expanded", Helvetica, Arial, sans-serif;
  font-size: 14px;
  color: #999;
  margin: 10px 0;
  text-transform: uppercase;
}

/* # Primary Colour */
.swatch-primary .swatch-row-one:nth-child(1) {
  background-color: #155d56;
  border-radius: 8px;
  height: 74px;
  width: 100%;
}

.swatch-primary .swatch-row-one:nth-child(2) {
  background-color: transparent;
  width: 100%;
  text-align: center;
  height: auto;
}

/* ## Lighter
================================================ */
.swatch-primary .swatch-row-one:nth-child(3) {
  border-radius: 8px 0 0 8px;
  background-color: #114a45;
  margin-bottom: 20px;
}

.swatch-primary .swatch-row-one:nth-child(4) {
  background-color: #0d3834;
  margin-bottom: 20px;
}

.swatch-primary .swatch-row-one:nth-child(5) {
  background-color: #082522;
  margin-bottom: 20px;
}

.swatch-primary .swatch-row-one:nth-child(6) {
  background-color: #041311;
  border-radius: 0 8px 8px 0;
  margin-bottom: 20px;
}

/* ## Darker
================================================ */
.swatch-primary .swatch-row-two:nth-child(7) {
  border-radius: 8px 0 0 8px;
  background-color: #447d78;
}

.swatch-primary .swatch-row-two:nth-child(8) {
  background-color: #739e9a;
}

.swatch-primary .swatch-row-two:nth-child(9) {
  background-color: #a1bebb;
}

.swatch-primary .swatch-row-two:nth-child(10) {
  background-color: #d0dfdd;
  border-radius: 0 8px 8px 0;
}

/* # Secondary Colour */
.swatch-secondary .swatch-row-one:nth-child(1) {
  background-color: #afc5c0;
  border-radius: 8px;
  height: 74px;
  width: 100%;
}

.swatch-secondary .swatch-row-one:nth-child(2) {
  background-color: transparent;
  width: 100%;
  text-align: center;
  height: auto;
}

/* ## Lighter
================================================ */
.swatch-secondary .swatch-row-one:nth-child(3) {
  border-radius: 8px 0 0 8px;
  background-color: #8c9e9a;
  margin-bottom: 20px;
}

.swatch-secondary .swatch-row-one:nth-child(4) {
  background-color: #697673;
  margin-bottom: 20px;
}

.swatch-secondary .swatch-row-one:nth-child(5) {
  background-color: #464f4d;
  margin-bottom: 20px;
}

.swatch-secondary .swatch-row-one:nth-child(6) {
  background-color: #232726;
  border-radius: 0 8px 8px 0;
  margin-bottom: 20px;
}

/* ## Darker
================================================ */
.swatch-secondary .swatch-row-two:nth-child(7) {
  border-radius: 8px 0 0 8px;
  background-color: #bfd1cd;
}

.swatch-secondary .swatch-row-two:nth-child(8) {
  background-color: #cfdcd9;
}

.swatch-secondary .swatch-row-two:nth-child(9) {
  background-color: #dfe8e6;
}

.swatch-secondary .swatch-row-two:nth-child(10) {
  background-color: #eff3f2;
  border-radius: 0 8px 8px 0;
}

/* # Active Colour */
.swatch-active .swatch-row-one:nth-child(1) {
  background-color: #fff166;
  border-radius: 8px;
  height: 74px;
  width: 100%;
}

.swatch-active .swatch-row-one:nth-child(2) {
  background-color: transparent;
  width: 100%;
  text-align: center;
  height: auto;
}

/* ## Lighter
================================================ */
.swatch-active .swatch-row-one:nth-child(3) {
  border-radius: 8px 0 0 8px;
  background-color: #ccc152;
  margin-bottom: 20px;
}

.swatch-active .swatch-row-one:nth-child(4) {
  background-color: #99913d;
  margin-bottom: 20px;
}

.swatch-active .swatch-row-one:nth-child(5) {
  background-color: #666029;
  margin-bottom: 20px;
}

.swatch-active .swatch-row-one:nth-child(6) {
  background-color: #333014;
  border-radius: 0 8px 8px 0;
  margin-bottom: 20px;
}

/* ## Darker
================================================ */
.swatch-active .swatch-row-two:nth-child(7) {
  border-radius: 8px 0 0 8px;
  background-color: #fff485;
}

.swatch-active .swatch-row-two:nth-child(8) {
  background-color: #fff7a3;
}

.swatch-active .swatch-row-two:nth-child(9) {
  background-color: #fff9c2;
}

.swatch-active .swatch-row-two:nth-child(10) {
  background-color: #fffce0;
  border-radius: 0 8px 8px 0;
}

/* # Black Colour */
.swatch-black .swatch-row-one:nth-child(1) {
  background-color: #041311;
  border-radius: 8px;
  height: 74px;
  width: 100%;
}

.swatch-black .swatch-row-one:nth-child(2) {
  background-color: transparent;
  width: 100%;
  text-align: center;
  height: auto;
}

/* ## Lighter
================================================ */
.swatch-black .swatch-row-one:nth-child(3) {
  border-radius: 8px 0 0 8px;
  background-color: #030f0e;
  margin-bottom: 20px;
}

.swatch-black .swatch-row-one:nth-child(4) {
  background-color: #020b0a;
  margin-bottom: 20px;
}

.swatch-black .swatch-row-one:nth-child(5) {
  background-color: #020807;
  margin-bottom: 20px;
}

.swatch-black .swatch-row-one:nth-child(6) {
  background-color: #010403;
  border-radius: 0 8px 8px 0;
  margin-bottom: 20px;
}

/* ## Darker
================================================ */
.swatch-black .swatch-row-two:nth-child(7) {
  border-radius: 8px 0 0 8px;
  background-color: #364241;
}

.swatch-black .swatch-row-two:nth-child(8) {
  background-color: #687170;
}

.swatch-black .swatch-row-two:nth-child(9) {
  background-color: #9ba1a0;
}

.swatch-black .swatch-row-two:nth-child(10) {
  background-color: #cdd0cf;
  border-radius: 0 8px 8px 0;
}

.secondary_swatches span:nth-child(1) {
  background-color: #4DFFA6;
  border-radius: 8px;
  height: 74px;
}

.secondary_swatches span:nth-child(2) {
  background-color: #FFF04D;
  border-radius: 8px;
  height: 74px;
}

.secondary_swatches span:nth-child(3) {
  background-color: #FF4D6A;
  border-radius: 8px;
  height: 74px;
}

.secondary_swatches span:nth-child(4) {
  background-color: #041311;
  border-radius: 8px;
  height: 74px;
}

.secondary_swatches span:nth-child(5) {
  background-color: #fefefe;
  border: 1px solid #e6e7e7;
  border-radius: 8px;
  height: 74px;
}

/* # Defaults
---------------------------------------------------------------------------------------------------- */
/* ## Typographical Elements
---------------------------------------------------------------------- */
html {
  font-size: 62.5%; /* 10px browser default */
  scroll-behavior: smooth;
  background-color: #f4f4f4;
  height: 100%;
  display: block;
}

body {
  font-family: "bebas-neue-pro-expanded", Helvetica, Arial, sans-serif;
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
  color: #041311;
  background-color: #f4f4f4;
  margin: 0;
}

a,
button,
input:focus,
input[type=button],
input[type=reset],
input[type=submit],
textarea:focus,
.button,
.gallery img {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

*:focus {
  outline: none;
  box-shadow: 0 0 0 5px rgba(239, 64, 92, 0.25), 0 0 0 1px rgba(239, 64, 92, 0.5);
}

a:not([class]) {
  color: #155d56;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
a:not([class]):hover, a:not([class]):focus {
  color: #155d56;
  text-decoration: underline;
}

p {
  margin: 0;
}

mark {
  background: #041311;
  color: #fefefe;
  padding: 0 2px;
}

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

li {
  margin-bottom: 5px;
}

ol {
  list-style: none;
  counter-reset: li;
}

ol li {
  counter-increment: li;
}

ol li::before {
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
  content: "." counter(li);
  display: inline-block;
  width: 1em;
  margin-left: -1.5em;
  margin-right: 0.5em;
  text-align: right;
  direction: rtl;
}

hr {
  border: 0;
  border-collapse: collapse;
  border-top: 1px solid #041311;
  clear: both;
  margin: 20px 0;
}

b,
strong {
  font-weight: 600;
}

blockquote,
em,
i {
  font-style: italic;
}

blockquote {
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.44;
  margin: 0;
  padding-left: calc(1.2 * 1.2em);
  padding-right: calc(1.2 * 1.2em);
  margin-bottom: calc(1.2 * 1.2em);
}

cite {
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
  font-weight: 400;
  font-style: normal;
}

.large_font_size {
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.44;
}

figure {
  position: relative;
}
figure img {
  display: block;
}

figcaption {
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 0.5em 1em;
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
  color: #fefefe;
  background-color: rgba(0, 11, 18, 0.5);
}

/* ## Headings
---------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
  font-weight: 600;
  margin: 0;
}

h1 {
  font-size: calc(4.29981696rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
}

h2 {
  font-size: calc(3.5831808rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
}

h3 {
  font-size: calc(2.985984rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
}

h4 {
  font-size: calc(2.48832rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
}

h5 {
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
}

h6 {
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
}

h1 a:not([class]),
h2 a:not([class]),
h3 a:not([class]),
h4 a:not([class]),
h5 a:not([class]),
h6 a:not([class]) {
  text-decoration: none;
  font-weight: 900;
}

/* ## Objects
---------------------------------------------------------------------- */
embed,
iframe,
img,
object,
video,
.wp-caption {
  max-width: 100%;
}

img {
  height: auto;
}

.featured-content img,
.gallery img {
  width: auto;
}

/* ## Forms
---------------------------------------------------------------------- */
fieldset {
  border: none;
  margin: 0;
  padding: 0;
}

legend,
label {
  font-size: calc(1.2rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 600;
}

input,
textarea,
select,
select[multiple] {
  border: 1px solid #cbcbcb;
  background-color: #fefefe;
  -webkit-border-radius: 0.35em;
  -moz-border-radius: 0.35em;
  border-radius: 0.35em;
  padding: 0.5em 1em 0.3em;
  width: 100%;
  color: #041311;
}
input:hover,
textarea:hover,
select:hover,
select[multiple]:hover {
  border-color: #afc5c0;
}

select[multiple] {
  height: auto;
}
select[multiple] option:checked {
  background-color: #eff3f2;
}

input[type=checkbox],
input[type=image],
input[type=radio] {
  width: auto;
}

/* Radio start */
[type=radio]:checked,
[type=radio]:not(:checked) {
  position: absolute;
  left: -9999px;
}

[type=radio]:checked + label,
[type=radio]:not(:checked) + label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
}

[type=radio]:checked + label:before,
[type=radio]:not(:checked) + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 2px solid #041311;
  border-radius: 100%;
  background: transparent;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

[type=radio]:checked + label:after,
[type=radio]:not(:checked) + label:after {
  content: "";
  width: 8px;
  height: 8px;
  background: #041311;
  position: absolute;
  top: 5px;
  left: 5px;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

[type=radio]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
}

[type=radio]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* radio end */
/* Checkbox start */
[type=checkbox]:checked,
[type=checkbox]:not(:checked) {
  position: absolute;
  left: -9999px;
}

[type=checkbox]:checked + label,
[type=checkbox]:not(:checked) + label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
}

[type=checkbox]:checked + label:before,
[type=checkbox]:not(:checked) + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 2px solid #041311;
  background: transparent;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

[type=checkbox]:checked + label:after,
[type=checkbox]:not(:checked) + label:after {
  content: "";
  width: 8px;
  height: 8px;
  background: #041311;
  position: absolute;
  top: 5px;
  left: 5px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

[type=checkbox]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
}

[type=checkbox]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* Checkbox end */
::-moz-placeholder,
::-webkit-input-placeholder {
  color: #687170;
}

.button {
  display: block;
  padding: 0.6em 1.5em;
  text-align: left;
  width: auto;
  border-radius: 6em;
  min-width: 180px;
  line-height: 1.2;
  text-decoration: none;
  color: #fefefe;
  background-color: #155d56;
  -webkit-transition: all 0.6s ease-in-out;
  -moz-transition: all 0.6s ease-in-out;
  -ms-transition: all 0.6s ease-in-out;
  -o-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
}
.button:hover {
  color: white;
  background-color: #447d78;
}
.button.button-primary {
  color: #155d56;
  border-left: 5px solid #155d56;
}
.button.button-primary:hover {
  color: white;
}
.button.button-info {
  color: #041311;
  border-left: 5px solid #041311;
}
.button.button-info:hover {
  color: white;
}
.button.button-alert {
  color: #FF4D6A;
  border-left: 5px solid #FF4D6A;
}
.button.button-alert:hover {
  color: white;
}

.button-active {
  border: 0;
  cursor: pointer;
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
  color: #fefefe;
  text-align: center;
  text-decoration: none;
  background-color: #155d56;
  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  border-radius: 2em;
  padding: 0.6em 1.5em;
  width: auto;
  border-left: 0px solid #155d56;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.button-active:hover, .button-active:focus {
  color: #fefefe;
  background-color: #447d78;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 0;
  cursor: pointer;
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
  line-height: 1.2;
  font-weight: 500;
  color: #fefefe;
  text-align: center;
  text-decoration: none;
  background-color: #155d56;
  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  border-radius: 2em;
  padding: 0.6em 1.5em;
  width: auto;
}
button:hover, button:focus,
input[type=button]:hover,
input[type=button]:focus,
input[type=reset]:hover,
input[type=reset]:focus,
input[type=submit]:hover,
input[type=submit]:focus {
  color: #fefefe;
  background-color: #447d78;
}
button.disabled,
input[type=button].disabled,
input[type=reset].disabled,
input[type=submit].disabled {
  color: #fefefe;
  background-color: #cdd0cf;
  cursor: default;
}
button.disabled:hover, button.disabled:focus,
input[type=button].disabled:hover,
input[type=button].disabled:focus,
input[type=reset].disabled:hover,
input[type=reset].disabled:focus,
input[type=submit].disabled:hover,
input[type=submit].disabled:focus {
  color: #fefefe;
  background-color: #cdd0cf;
}
button.button-primary,
input[type=button].button-primary,
input[type=reset].button-primary,
input[type=submit].button-primary {
  color: #fefefe;
  background-color: #155d56;
}
button.button-primary:hover, button.button-primary:focus,
input[type=button].button-primary:hover,
input[type=button].button-primary:focus,
input[type=reset].button-primary:hover,
input[type=reset].button-primary:focus,
input[type=submit].button-primary:hover,
input[type=submit].button-primary:focus {
  color: #fefefe;
  background-color: #447d78;
}
button.button-info,
input[type=button].button-info,
input[type=reset].button-info,
input[type=submit].button-info {
  color: #fefefe;
  background-color: #041311;
}
button.button-info:hover, button.button-info:focus,
input[type=button].button-info:hover,
input[type=button].button-info:focus,
input[type=reset].button-info:hover,
input[type=reset].button-info:focus,
input[type=submit].button-info:hover,
input[type=submit].button-info:focus {
  color: #fefefe;
  background-color: #364241;
}
button.button-alert,
input[type=button].button-alert,
input[type=reset].button-alert,
input[type=submit].button-alert {
  color: #fefefe;
  background-color: #FF4D6A;
}
button.button-alert:hover, button.button-alert:focus,
input[type=button].button-alert:hover,
input[type=button].button-alert:focus,
input[type=reset].button-alert:hover,
input[type=reset].button-alert:focus,
input[type=submit].button-alert:hover,
input[type=submit].button-alert:focus {
  color: #fefefe;
  background-color: #ff7188;
}

.footer-widgets input[type=text],
.footer-widgets input[type=email],
.footer-widgets input[type=number] {
  border: none;
  background-color: #d0dfdd;
}
.footer-widgets input[type=text]:focus,
.footer-widgets input[type=email]:focus,
.footer-widgets input[type=number]:focus {
  background-color: #f3f7f7;
}

/* ### Gravity form
--------------------------------------------- */
.gform_fields > * + * {
  margin-top: calc(calc(1.44em + (1.2vw)) / 4);
}

.gform_body div span label {
  display: flow-root;
  font-size: calc(1rem + (1.2vw / 10));
  line-height: 1.44;
  text-transform: none;
  margin-bottom: calc(1.2 * 1.2rem );
}

.gform_wrapper form > * + * {
  margin-top: calc(calc(1.44em + (1.2vw)) / 2);
}
.gform_wrapper ul {
  list-style: none;
  margin: 0;
}
.gform_wrapper ul li {
  margin-bottom: calc(1.2 * 1.2rem );
}

.entry-content .gform_wrapper ul {
  margin: 0;
}

.gform_footer {
  display: flex;
  justify-content: flex-end;
  margin-bottom: calc(1.2 * 1.2rem );
}

.gfield_required {
  color: #FF4D6A;
}

.gfield_error input[type=text],
.gfield_error input[type=email],
.gfield_error input[type=number] {
  border: 2px solid #ffb8c3;
  background-color: #ffedf0;
}

.validation_message {
  background-color: #FF4D6A;
  color: #fefefe;
  margin-top: 5px;
  padding: 10px 15px;
  animation: fadeIn 0.3s ease-in-out both;
}

/* ## Tables
---------------------------------------------------------------------- */
table {
  border-collapse: collapse;
  border-spacing: 0;
  line-height: 2;
  margin-bottom: 40px;
  width: 100%;
}

tbody {
  border-bottom: 1px solid #041311;
}

td,
th {
  text-align: left;
}

td {
  border-top: 1px solid #041311;
  padding: 6px 0;
}

th {
  font-weight: 400;
}

/* ## Screen Reader Text
---------------------------------------------------------------------- */
.screen-reader-text,
.screen-reader-text span,
.screen-reader-shortcut {
  position: absolute !important;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  width: 1px;
  border: 0;
  overflow: hidden;
}

.screen-reader-text:focus,
.screen-reader-shortcut:focus,
.genesis-nav-menu .search input[type=submit]:focus,
.widget_search input[type=submit]:focus {
  clip: auto !important;
  height: auto;
  width: auto;
  display: block;
  font-size: 1em;
  font-weight: bold;
  padding: 15px 23px 14px;
  color: #041311;
  background: #fefefe;
  z-index: 100000; /* Above WP toolbar. */
  text-decoration: none;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}

.more-link {
  position: relative;
}

/* # Structure and Layout
---------------------------------------------------------------------------------------------------- */
.site-container {
  position: relative;
  overflow: hidden;
}

.before-header {
  position: relative;
}

.site-header {
  position: relative;
}

.featured-section {
  position: relative;
}

.nav-secondary {
  position: relative;
}

.breadcrumb {
  position: relative;
}

.site-inner {
  position: relative;
  z-index: 200;
}

.footer-widgets {
  position: relative;
  z-index: 200;
}

.site-footer {
  position: relative;
  z-index: 200;
}

@supports (display: grid) {
  .site-container {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas: "before-header" "site-header" "featured-section" "nav-secondary" "breadcrumb" "site-inner" "footer-widgets" "site-footer";
  }
  .site-container .before-header {
    grid-area: before-header;
  }
  .site-container .site-header {
    grid-area: site-header;
  }
  .site-container .featured-section {
    grid-area: featured-section;
  }
  .site-container .nav-secondary {
    grid-area: nav-secondary;
  }
  .site-container .breadcrumb {
    grid-area: breadcrumb;
  }
  .site-container .site-inner {
    grid-area: site-inner;
  }
  .site-container .footer-widgets {
    grid-area: footer-widgets;
  }
  .site-container .site-footer {
    grid-area: site-footer;
  }
}
/* ## Site Inner
---------------------------------------------------------------------- */
.site-inner,
.wrap {
  margin: 0 auto;
}

.site-inner {
  display: block;
  clear: both;
  margin: 0;
  width: 100%;
  overflow: hidden;
  background: #f4f4f4;
  hyphens: auto;
}

.site-inner .content .breadcrumb {
  width: 90%;
}

/* ## Content Entry
---------------------------------------------------------------------- */
.entry-content {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.entry-content > * + * {
  margin-top: calc(calc(1.44em + (1.2vw)) / 2);
}

.content .entry {
  max-width: 54.1666666667ch;
  width: 90%;
  margin: 0px auto;
}
@media screen and (min-width: 64em) {
  .content .entry {
    max-width: 65ch;
  }
}
/* ## Archive Entry
---------------------------------------------------------------------- */
.archive .content .entry {
  margin-bottom: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
}
.archive .content .entry .entry-header .entry-title {
  margin-bottom: 0;
}

/* ## Single Entry
---------------------------------------------------------------------- */
.single .content .entry {
  margin-bottom: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
}

/* ## Team Archive Entry
---------------------------------------------------------------------- */
.team-member-archive .content-sidebar-wrap {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 54.1666666667ch;
}
@media screen and (min-width: 64em) {
  .team-member-archive .content-sidebar-wrap {
    max-width: 65ch;
  }
}
.team-member-archive .content .entry {
  width: 100%;
  max-width: 100%;
}
.team-member-archive .archive-description {
  width: 100%;
  max-width: 100%;
}
.team-member-archive .archive-pagination {
  width: 100%;
  max-width: 100%;
}
.team-member-archive figure {
  position: relative;
  margin-bottom: 10px;
}
.team-member-archive figure img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100%;
  height: auto;
}
.team-member-archive figure .onleave {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 5px 15px;
  color: #fefefe;
  background-color: #fff166;
}
.team-member-archive .name,
.team-member-archive .title {
  display: block;
}
.team-member-archive .name {
  font-weight: 400;
}
.team-member-archive .title {
  font-style: italic;
  margin-bottom: 10px;
}
.team-member-archive .biography {
  font-size: calc(1.2rem + (1.2vw / 10));
  line-height: 1.44;
  margin-bottom: 20px;
}
.team-member-archive .onleave,
.team-member-archive .email,
.team-member-archive .phone {
  display: flex;
  align-items: center;
}
.team-member-archive .onleave [class^=icon-], .team-member-archive .onleave .contact [class*=" icon-"],
.team-member-archive .email [class^=icon-],
.team-member-archive .email .contact [class*=" icon-"],
.team-member-archive .phone [class^=icon-],
.team-member-archive .phone .contact [class*=" icon-"] {
  width: 22px;
  height: 22px;
  border-radius: 30px;
  padding: 4px;
  margin-right: 10px;
}
.team-member-archive .onleave [class^=icon-], .team-member-archive .onleave .contact [class*=" icon-"] {
  color: #fff166;
  fill: #fff166;
  background-color: #fefefe;
}
.team-member-archive .email [class^=icon-], .team-member-archive .email .contact [class*=" icon-"],
.team-member-archive .phone [class^=icon-],
.team-member-archive .phone .contact [class*=" icon-"] {
  color: #fefefe;
  fill: #fefefe;
  background-color: #fff166;
}

/* # Structure and Layout Content Sidebar
---------------------------------------------------------------------------------------------------- */
.content-sidebar .content-sidebar-wrap {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: calc(1.44em + (1.2vw));
  margin: calc(1.44em + (1.2vw)) auto 0;
  width: 90%;
}
.content-sidebar .content-sidebar-wrap .content {
  max-width: 65ch;
}
.content-sidebar .content-sidebar-wrap .content .entry {
  width: 100%;
}
@media only screen and (min-width: 48em) {
  .content-sidebar .content-sidebar-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap: calc(1.44em + (1.2vw));
    width: 100%;
    padding-left: 2.5%;
  }
  .content-sidebar .content-sidebar-wrap .sidebar {
    max-width: 40ch;
    padding-right: 2.5vw;
  }
}
.sidebar .widget {
  margin-bottom: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
  border-bottom: 1px solid #041311;
}
.sidebar .widget:last-child {
  margin-bottom: unset;
  padding-bottom: unset;
  border-bottom: unset;
}
@media only screen and (min-width: 80em) {
  .sidebar {
    grid-template-columns: repeat(auto-fill, minmax(200px, 35ch));
    grid-template-rows: min-content;
    gap: calc(1.44em + (1.2vw));
  }
}

/* # Common Classes
---------------------------------------------------------------------------------------------------- */
/* ## Avatar
---------------------------------------------------------------------- */
.avatar {
  float: left;
}

.alignleft .avatar,
.author-box .avatar {
  margin-right: 20px;
}

.alignright .avatar {
  margin-left: 20px;
}

.comment .avatar {
  margin: 0 16px 24px 0;
}

/* ## Genesis
---------------------------------------------------------------------- */
.breadcrumb {
  display: block;
  float: left;
  width: 100%;
  background-color: #fefefe;
  margin-bottom: calc(1.2 * 1.2em);
}
.breadcrumb [class^=icon-] {
  position: relative;
  top: 5px;
}

.breadcrumb .wrap {
  width: 90%;
}

.archive-description {
  margin-left: auto;
  margin-right: auto;
  max-width: 54.1666666667ch;
  margin-bottom: calc(1.44em + (1.2vw));
}
@media screen and (min-width: 64em) {
  .archive-description {
    max-width: 65ch;
  }
}
.archive-description .archive-title {
  margin-top: calc(1.44em + (1.2vw));
  padding-top: calc(1.44em + (1.2vw));
}

.archive--link--picture {
  display: block;
}

.author-box {
  margin: 0 auto 30px auto;
  width: 90%;
}

.author-box-title {
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
  margin-bottom: 5px;
}

.archive-description p:last-child,
.author-box p:last-child {
  margin-bottom: 0;
}

/* ## Titles
---------------------------------------------------------------------- */
.archive-title {
  font-size: calc(4.29981696rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 900;
}

.entry-title {
  font-size: calc(4.29981696rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 900;
}

.entry-title a,
.sidebar .widget-title a {
  color: #155d56;
  text-decoration: none;
}

.entry-title a:hover,
.entry-title a:focus {
  color: #447d78;
}

.widget-title {
  font-family: "bebas-neue-pro-expanded", Helvetica, Arial, sans-serif;
  font-size: calc(2.985984rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
  font-weight: 400;
}

/* ## WordPress
---------------------------------------------------------------------- */
a.aligncenter img {
  display: block;
  margin: 0 auto;
}

a.alignnone {
  display: inline-block;
}

.alignleft {
  float: left;
  text-align: left;
}

.alignright {
  float: right;
  text-align: right;
  justify-self: end;
}

a.alignleft,
a.alignnone,
a.alignright {
  max-width: 100%;
}

img.centered,
.aligncenter {
  display: block;
  margin: 0 auto;
}

img.alignnone,
.alignnone {
  margin-bottom: 0;
}

a.alignleft,
img.alignleft,
.wp-caption.alignleft {
  margin: 0 24px 0px 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
  margin: 0 0 0px 24px;
}

.wp-caption-text {
  margin-top: 5px;
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
}

.entry-content p.wp-caption-text {
  margin-bottom: 0;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-playlist,
.entry-content .wp-video {
  margin: 0 0 calc(1.2 * 1.2em);
}

/* # Widgets
---------------------------------------------------------------------------------------------------- */
.widget {
  word-wrap: break-word;
}

.widget ol > li {
  list-style-position: inside;
  list-style-type: decimal;
  padding-left: 20px;
  text-indent: -20px;
}

.widget li li {
  border: 0;
  margin: 0 0 0 30px;
  padding: 0;
}

.widget_calendar table {
  width: 100%;
}

.widget_calendar td,
.widget_calendar th {
  text-align: center;
}

.widget-wrap > * + *,
.textwidget > * + * {
  margin-top: calc(calc(1.44em + (1.2vw)) / 2);
}

/* ## Footer Widget
---------------------------------------------------------------------- */
.footer-widget-area .menu li {
  list-style: none;
}
.footer-widget-area .menu li a {
  font-weight: 300;
  color: #fefefe;
}

.footer-widget-area #logo {
  width: 170px;
  height: 24px;
  fill: #155d56;
}

.footer-widgets {
  position: relative;
  width: 100%;
  margin-top: calc(1.44em + (1.2vw));
  padding-top: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
  background-color: #041311;
  color: #fefefe;
}
.footer-widgets .wrap {
  margin: 0 auto;
  width: 95%;
}
.footer-widgets h1, .footer-widgets h2, .footer-widgets h3, .footer-widgets h4, .footer-widgets h5, .footer-widgets h6, .footer-widgets p {
  color: #fefefe;
}
.footer-widgets .simple-social-icons ul li {
  background: none !important;
  border: none !important;
  float: left;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.footer-widgets #simple-social-icons-2 ul li a, .footer-widgets #simple-social-icons-2 ul li a:hover, .footer-widgets #simple-social-icons-2 ul li a:focus {
  font-size: 30px;
  padding: 0px;
  margin-bottom: 1em;
  margin-top: 1.5em;
}

/* # Plugins
---------------------------------------------------------------------------------------------------- */
/* ## Skip Links
---------------------------------------------------------------------- */
.genesis-skip-link {
  margin: 0;
}

.genesis-skip-link li {
  height: 0;
  width: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
  width: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

/* # Flickerty mono
---------------------------------------------------------------------------------------------------- */
.carousel {
  height: 100%;
}

.carousel-cell {
  width: 100%;
  height: 100%;
}

.entry-content ol.flickity-page-dots {
  position: absolute;
  padding: 0;
  margin: 0;
  bottom: calc(1.2 * 1.2em);
}
.entry-content ol.flickity-page-dots li::before {
  display: none;
}

.flickity-page-dots .dot.is-selected {
  background: #155d56;
}

.flickity-page-dots .dot {
  background: #afc5c0;
  opacity: 1;
}

/* # Mono Icon styles
---------------------------------------------------------------------------------------------------- */
[class^=icon-], [class*=" icon-"] {
  display: inline-block;
  color: #041311;
  fill: currentColor;
}

.icon-stepup-arrow {
  width: 30px;
  height: 16px;
}

.icon-phone {
  width: 20px;
  height: 20px;
}

.icon-mail {
  width: 20px;
  height: 20px;
}

.icon-warning {
  width: 20px;
  height: 20px;
}

.icon-arrow-left5 {
  width: 20px;
  height: 20px;
}

.icon-arrow-right5 {
  width: 20px;
  height: 20px;
}

.icon-facebook {
  width: 20px;
  height: 20px;
}

.icon-twitter {
  width: 20px;
  height: 20px;
}

.icon-linkedin {
  width: 20px;
  height: 20px;
}

.icon-print {
  width: 20px;
  height: 20px;
}

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT

Copyright (c) 2014 Daniel Eden
*/
/* line 10, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

/* line 17, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* line 22, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

@-webkit-keyframes bounce {
  0%, 20%, 53%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-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-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-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-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-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 {
  0%, 20%, 53%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    -ms-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    -ms-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    -ms-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
/* line 87, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
/* line 115, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  0% {
    -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);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes pulse {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    -ms-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    -ms-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    -ms-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
/* line 159, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  0% {
    -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);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes rubberBand {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    -ms-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    -ms-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    -ms-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    -ms-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    -ms-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    -ms-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    -ms-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
/* line 245, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  0%, 100% {
    -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 {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    -ms-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    -ms-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
/* line 287, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    -ms-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    -ms-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    -ms-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    -ms-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  100% {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    -ms-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
/* line 351, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.swing {
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  0% {
    -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);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes tada {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    -ms-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);
    -ms-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);
    -ms-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);
    -ms-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);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    -ms-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
/* line 418, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  0% {
    -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);
  }
  100% {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes wobble {
  0% {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    -ms-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);
    -ms-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);
    -ms-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);
    -ms-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);
    -ms-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  100% {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 506, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-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);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    -ms-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);
    -ms-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);
    -ms-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);
    -ms-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);
    -ms-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    -ms-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
/* line 597, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

@-webkit-keyframes bounceInDown {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-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);
  }
  100% {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInDown {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    -ms-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    -ms-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    -ms-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    -ms-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  100% {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 677, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-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);
  }
  100% {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInLeft {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    -ms-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    -ms-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    -ms-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    -ms-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  100% {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 755, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-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);
  }
  100% {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInRight {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    -ms-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    -ms-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    -ms-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    -ms-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  100% {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 833, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-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, -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);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInUp {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    -ms-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    -ms-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    -ms-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    -ms-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
/* line 911, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    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);
    -ms-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);
    -ms-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    -ms-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
/* line 957, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

@-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);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    -ms-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    -ms-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    -ms-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
/* line 1005, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    -ms-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    -ms-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
/* line 1040, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    -ms-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    -ms-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
/* line 1075, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    -ms-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    -ms-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    -ms-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
/* line 1121, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* line 1146, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    -ms-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1181, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    -ms-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1216, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    -ms-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1251, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    -ms-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1286, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    -ms-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1321, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    -ms-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1356, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    -ms-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1391, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    -ms-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 1426, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/* line 1451, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    -ms-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
/* line 1481, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    -ms-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
/* line 1511, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    -ms-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
/* line 1541, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    -ms-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
/* line 1571, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    -ms-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
/* line 1601, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    -ms-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
/* line 1631, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    -ms-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
/* line 1661, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    -ms-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
/* line 1691, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  0% {
    -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;
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
@keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -ms-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);
    -ms-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);
    -ms-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);
    -ms-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;
  }
  100% {
    -webkit-transform: perspective(400px);
    -ms-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
/* line 1775, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.animated.flip {
  -webkit-backface-visibility: visible;
  -ms-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-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-transition-timing-function: ease-in;
    transition-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);
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -ms-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -ms-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    -ms-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);
    -ms-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
    -ms-transform: perspective(400px);
    transform: perspective(400px);
  }
}
/* line 1854, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.flipInX {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-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-transition-timing-function: ease-in;
    transition-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);
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -ms-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -ms-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    -ms-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);
    -ms-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
    -ms-transform: perspective(400px);
    transform: perspective(400px);
  }
}
/* line 1933, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.flipInY {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  0% {
    -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;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    -ms-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -ms-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -ms-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
/* line 1982, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  0% {
    -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;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    -ms-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    -ms-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -ms-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
/* line 2033, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.flipOutY {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

@-webkit-keyframes lightSpeedIn {
  0% {
    -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;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  0% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    -ms-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    -ms-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    -ms-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
  }
}
/* line 2099, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  0% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  0% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    -ms-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
/* line 2131, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateIn {
  0% {
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    -ms-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
  }
}
/* line 2178, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    -ms-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
  }
}
/* line 2223, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    -ms-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
  }
}
/* line 2268, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    -ms-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
  }
}
/* line 2313, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    -ms-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
  }
}
/* line 2358, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  0% {
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    -ms-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
/* line 2398, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0, 0, 1, 45deg);
    transform: rotate(0, 0, 1, 45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0, 0, 1, 45deg);
    -ms-transform: rotate(0, 0, 1, 45deg);
    transform: rotate(0, 0, 1, 45deg);
    opacity: 0;
  }
}
/* line 2438, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  100% {
    -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 {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    -ms-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
/* line 2478, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  100% {
    -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 {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    -ms-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
/* line 2518, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  100% {
    -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 {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    -ms-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
/* line 2558, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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;
  }
  100% {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    -ms-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);
    -ms-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    -ms-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);
    -ms-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  100% {
    -webkit-transform: translate3d(0, 700px, 0);
    -ms-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
/* line 2637, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    -ms-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}
/* line 2674, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
  }
  100% {
    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 {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    -ms-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
/* line 2706, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
@keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    -ms-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
/* line 2736, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  0% {
    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 {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -ms-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);
    -ms-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);
  }
}
/* line 2779, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  0% {
    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 {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -ms-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);
    -ms-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);
  }
}
/* line 2822, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  0% {
    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 {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -ms-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);
    -ms-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);
  }
}
/* line 2865, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  0% {
    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 {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -ms-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);
    -ms-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);
  }
}
/* line 2908, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  100% {
    opacity: 0;
  }
}
@keyframes zoomOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    -ms-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  100% {
    opacity: 0;
  }
}
/* line 2946, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    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);
    -ms-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);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -ms-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;
    -ms-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);
  }
}
/* line 2994, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    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);
    -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    -ms-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
  }
}
/* line 3034, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    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);
    -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    -ms-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
  }
}
/* line 3074, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.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);
  }
  100% {
    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);
    -ms-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);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -ms-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;
    -ms-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);
  }
}
/* line 3122, /Users/miguelperez/Sites/csstricks/source/stylesheets/keyframes.css.scss */
.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

/* @mixin respond-to
------------------------------------------------------------------- */
/* line 6, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .scene_element {
  -webkit-animation-duration: 0.25s;
  animation-duration: 0.25s;
  -webkit-transition-timing-function: ease-in;
  transition-timing-function: ease-in;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

/* line 17, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .scene_element--fadein {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

/* line 22, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .scene_element--fadeinup {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

/* line 27, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .scene_element--fadeinright {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

/* line 32, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .scene_element--delayed {
  -webkit-animation-delay: 0.25s;
  animation-delay: 0.25s;
}

/* line 37, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .is-exiting .scene_element {
  -webkit-animation-direction: alternate-reverse;
  animation-direction: alternate-reverse;
}

/* line 42, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .is-exiting .scene_element--delayed {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

/* line 47, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
#main .is-exiting .scene_element--noexiting {
  -webkit-animation-direction: alternate-reverse;
  animation-direction: alternate-reverse;
}

@media screen and (min-width: 768px) {
  /* line 58, /Users/miguelperez/Sites/csstricks/source/stylesheets/pageTransitions.css.scss */
  #main .scene_element--fadeinright-wide {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
  }
}
.is-loading,
.is-loading a {
  cursor: progress;
}

/* # Timeline
---------------------------------------------------------------------------------------------------- */
/* Vertical line */
.cd-container::after {
  /* clearfix */
  content: "";
  display: table;
  clear: both;
}

.cd-container {
  position: relative;
  padding: 2em 0;
}

.cd-container::before {
  /* this is the vertical line */
  content: "";
  position: absolute;
  top: calc(-1.28em - 0.15625vw);
  left: 16px;
  height: calc(100% + calc(1.44em + (1.2vw)));
  width: 6px;
  border-radius: 4em;
  background: #afc5c0;
}

.align-right.cd-container::before {
  /* this is the vertical line */
  left: unset;
  right: 16px;
}

@media only screen and (min-width: 1170px) {
  .cd-container {
    margin-top: 0;
    margin-bottom: 0;
  }
  .align-alternate.cd-container::before {
    left: 50%;
    margin-left: -1px;
  }
}
/* Block element */
.cd-timeline-block {
  position: relative;
  margin-top: calc(1.44em + (1.2vw));
}

.cd-timeline-block:after {
  content: "";
  display: table;
  clear: both;
}

.cd-timeline-block:first-child {
  margin-top: 0;
}

.cd-timeline-block:last-child {
  margin-bottom: 0;
}

/* Circle element */
.cd-timeline-img {
  position: absolute;
  top: 0;
  left: 4px;
  width: 30px;
  height: 30px;
  border-radius: 10em;
}
.cd-timeline-img::after {
  position: absolute;
  content: "";
  height: 6px;
  width: 23px;
  border-radius: 4em;
  background-color: #afc5c0;
  top: 13px;
  left: 20px;
  z-index: -1;
}

.cd-timeline-img img {
  display: block;
  width: 24px;
  height: 24px;
  position: relative;
  left: 50%;
  top: 50%;
  margin-left: -12px;
  margin-top: -12px;
}

.cd-timeline-img.cd-picture {
  background: #afc5c0;
}

.align-right .cd-timeline-img {
  left: unset;
  right: 4px;
}
.align-right .cd-timeline-img::after {
  left: unset;
  right: 20px;
}

@media only screen and (min-width: 1170px) {
  .align-alternate .cd-timeline-img {
    left: 50%;
    margin-left: -13px;
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
  }
  .cssanimations .animate-timeline .cd-timeline-img.is-hidden {
    visibility: hidden;
  }
  .cssanimations .animate-timeline .cd-timeline-img.bounce-in {
    visibility: visible;
    -webkit-animation: cd-bounce-1 0.6s;
    -moz-animation: cd-bounce-1 0.6s;
    animation: cd-bounce-1 0.6s;
  }
}
/* Content */
.cd-timeline-content {
  position: relative;
  margin-left: 60px;
  padding-top: 45px;
}

.cd-timeline-content:after {
  content: "";
  display: table;
  clear: both;
}

.cd-timeline-content p, .cd-timeline-content {
  color: #041311;
}

.cd-timeline-content .cd-date {
  font-family: "bebas-neue-pro-expanded", Helvetica, Arial, sans-serif;
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
  letter-spacing: 0.05em;
  color: #041311;
}

.cd-timeline-content .cd-read-more, .cd-timeline-content .cd-date {
  display: inline-block;
  position: absolute;
  top: 7px;
}

.cd-timeline-content p {
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
}

.align-right .cd-timeline-content .cd-date {
  right: 0;
}

.align-right .cd-timeline-content {
  margin-left: 0px;
  margin-right: 60px;
  text-align: right;
}
.align-right .cd-timeline-content .section-link {
  justify-content: flex-end;
}

@media only screen and (min-width: 1170px) {
  .align-alternate .cd-timeline-content {
    margin-left: 0;
    width: 47%;
    padding-top: 4px;
  }
  .align-alternate .cd-timeline-content::before {
    top: 24px;
    left: 100%;
    border-color: transparent;
    border-left-color: white;
  }
  .cd-timeline-content .cd-read-more {
    float: left;
  }
  .align-alternate .cd-timeline-content .cd-date {
    position: absolute;
    width: 100%;
    left: 118%;
  }
  .align-alternate .cd-timeline-block:nth-child(odd) .cd-timeline-content {
    text-align: right;
  }
  .align-alternate .cd-timeline-block:nth-child(odd) .cd-timeline-content .section-link {
    justify-content: flex-end;
  }
  .align-alternate .cd-timeline-block:nth-child(odd) .cd-timeline-content .cd-date {
    text-align: left;
  }
  .align-alternate .cd-timeline-block:nth-child(even) .cd-timeline-content {
    text-align: left;
    float: right;
    left: 20px;
  }
  .align-alternate .cd-timeline-block:nth-child(even) .cd-timeline-img::after {
    left: -12px;
  }
  .site-inner .gridcontainer .cd-timeline-block:nth-child(even) .cd-timeline-content .button {
    float: left;
  }
  .align-alternate .cd-timeline-block:nth-child(even) .cd-timeline-content::before {
    top: 24px;
    left: auto;
    right: 100%;
    border-color: transparent;
    border-right-color: white;
  }
  .align-alternate .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more {
    float: right;
  }
  .align-alternate .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-date {
    left: auto;
    right: 120%;
    text-align: right;
  }
  .cssanimations .animate-timeline .cd-timeline-content.is-hidden {
    visibility: hidden;
  }
  .cssanimations .animate-timeline .cd-timeline-content.bounce-in {
    visibility: visible;
    -webkit-animation: cd-bounce-2 1s;
    -moz-animation: cd-bounce-2 1s;
    animation: cd-bounce-2 1s;
  }
  .cssanimations .animate-timeline.align-right .cd-timeline-content.bounce-in {
    visibility: visible;
    -webkit-animation: cd-bounce-2-inverse 1s;
    -moz-animation: cd-bounce-2-inverse 1s;
    animation: cd-bounce-2-inverse 1s;
  }
}
@media only screen and (min-width: 1170px) {
  /* inverse bounce effect on even content blocks */
  .cssanimations .animate-timeline.align-alternate .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in {
    -webkit-animation: cd-bounce-2-inverse 1s;
    -moz-animation: cd-bounce-2-inverse 1s;
    animation: cd-bounce-2-inverse 1s;
  }
}
@-webkit-keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -moz-transform: scale(0.5);
  }
  60% {
    opacity: 1;
    -moz-transform: scale(1.2);
  }
  100% {
    -moz-transform: scale(1);
  }
}
@keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(20px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100px);
    -moz-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    -o-transform: translateX(-100px);
    transform: translateX(-100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -moz-transform: translateX(100px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(-20px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100px);
    -moz-transform: translateX(100px);
    -ms-transform: translateX(100px);
    -o-transform: translateX(100px);
    transform: translateX(100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
/* # Site Header
---------------------------------------------------------------------------------------------------- */
.site-header {
  position: relative;
  margin-top: 0px;
  padding: 20px 0;
  width: 100%;
  float: left;
  background-color: transparent;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  z-index: 300;
}
.site-header.main-menu-open {
  background-color: rgba(253, 254, 255, 0.95);
}
@media only screen and (min-width: 80em) {
  .site-header {
    padding: 40px 0;
  }
}

.has-push-top .site-header,
.featured-image .has-push-top .site-header,
.featured-image .has-push-top .site-header.dark,
.home-section .has-push-top .site-header,
.home-section .has-push-top .site-header.dark {
  margin-top: 200px;
}

.site-header > .wrap {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 95%;
}
@media only screen and (min-width: 64em) {
  .site-header > .wrap {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}

@media only screen and (min-width: 64em) {
  .site-header.dark,
  .home-page .site-header.dark {
    position: fixed;
    background-color: #155d56;
  }
}
/* ## Title Area
---------------------------------------------------------------------- */
.title-area {
  float: left;
  z-index: 100;
}
.title-area p {
  margin: 0;
  font-size: 0;
  line-height: 0;
  height: 0;
}

.header-full-width .title-area {
  float: left;
}

.site-title {
  font-size: calc(4.29981696rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 600;
  line-height: 0;
}
.site-title a,
.site-title a:hover,
.site-title a:focus {
  color: #041311;
}

.title-area .site-title > a {
  display: block;
  margin-bottom: 0px;
  text-indent: -9999px;
}

.site-description {
  font-size: 0px;
  font-size: 0rem;
  line-height: 0px;
  line-height: 0rem;
  text-indent: -9999px;
}

.site-description,
.site-title {
  margin-bottom: 0;
}

.header-image .site-description,
.header-image .site-title {
  display: block;
  text-indent: -9999px;
}

.site-logo {
  display: block;
}

.header-full-width .title-area,
.site-logo {
  width: 250px;
  height: 38px;
  margin-bottom: calc(calc(1.44em + (1.2vw)) / 2);
}
@media only screen and (min-width: 64em) {
  .header-full-width .title-area,
  .site-logo {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 80em) {
  .header-full-width .title-area,
  .site-logo {
    width: 240px;
    height: 34px;
  }
}
@media only screen and (min-width: 120em) {
  .header-full-width .title-area,
  .site-logo {
    width: 270px;
    height: 38px;
  }
}

#logo {
  fill: #fefefe;
}

/* ## Before header
---------------------------------------------------------------------- */
.before-header {
  float: left;
  padding: 10px 5%;
  width: 100%;
  background-color: #041311;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  z-index: 1000;
}
.before-header .wrap {
  margin: 0 auto;
  max-width: 100%;
}
.before-header .widget {
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-align: right;
}

/* Site Navigation
---------------------------------------------------------------------------- */
.genesis-nav-menu {
  clear: both;
  line-height: 1;
  width: 100%;
}

.genesis-nav-menu li {
  float: none;
  list-style-type: none;
}

.genesis-nav-menu li li {
  margin-left: 0;
}

.genesis-nav-menu .menu-item,
.genesis-nav-menu .toggle-header-search {
  display: inline-block;
  text-align: left;
}

.genesis-nav-menu .menu-item:focus,
.genesis-nav-menu .menu-item:hover {
  position: relative;
}

.genesis-nav-menu a,
.genesis-nav-menu .toggle-header-search {
  color: #fefefe;
  display: block;
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 900;
  letter-spacing: 0.012em;
  text-transform: uppercase;
  padding-right: 0.65em;
  text-decoration: none;
}

.genesis-nav-menu a:focus,
.genesis-nav-menu a:hover,
.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu .toggle-header-search:focus,
.genesis-nav-menu .toggle-header-search:hover {
  color: #afc5c0;
  text-decoration: none;
}

.genesis-nav-menu .sub-menu {
  background: transparent;
  left: -9999px;
  opacity: 0;
  position: absolute;
  transition: opacity 0.5s ease-in-out;
  width: 160px;
  z-index: 99;
}

.genesis-nav-menu .sub-menu::before {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #041311;
  content: " ";
  height: 0;
  left: 15px;
  position: absolute;
  top: 0;
  width: 0;
}

.genesis-nav-menu .sub-menu .sub-menu::before {
  display: none;
}

.genesis-nav-menu > .menu-item > .sub-menu {
  padding-top: 5px;
}

.genesis-nav-menu > .menu-item > .sub-menu > .menu-item:first-child {
  border-radius: 3px 3px 0 0;
}

.genesis-nav-menu > .menu-item .sub-menu > .menu-item:first-child,
.genesis-nav-menu > .menu-item > .sub-menu > .menu-item:last-child,
.genesis-nav-menu .sub-menu a {
  background-color: #041311;
}

.genesis-nav-menu > .menu-item .sub-menu > .menu-item:first-child {
  padding-top: 5px;
}

.genesis-nav-menu > .menu-item > .sub-menu > .menu-item:last-child {
  border-radius: 0 0 3px 3px;
}

.genesis-nav-menu > .menu-item .sub-menu > .menu-item:last-child {
  padding-bottom: 5px;
}

.genesis-nav-menu .sub-menu a {
  padding: 12px 15px;
  position: relative;
  width: 160px;
}

.genesis-nav-menu .sub-menu .sub-menu {
  margin: -42px 0 0 160px;
}

.genesis-nav-menu .menu-item:hover {
  position: static;
}

.genesis-nav-menu .menu-item:hover > .sub-menu {
  left: auto;
  opacity: 1;
}

/* Header Menu
--------------------------------------------- */
.nav-primary {
  margin-top: 2px;
}

.nav-primary .genesis-nav-menu .sub-menu {
  z-index: 9999;
}

.nav-primary .genesis-nav-menu .sub-menu a {
  color: #fefefe;
}

.nav-primary .genesis-nav-menu .sub-menu li:last-child a {
  border-bottom: none;
}

.nav-primary .genesis-nav-menu .sub-menu a:focus,
.nav-primary .genesis-nav-menu .sub-menu a:hover {
  color: #041311;
}

/* Header Search
--------------------------------------------- */
.header-search-wrap {
  display: none;
}

.js .header-search-wrap {
  height: 100%;
  left: 0;
  padding: 10px 40px;
  position: absolute;
  transform: translate3d(0, -100%, 0);
  transition: none;
  top: 0;
  width: 100%;
  z-index: 1001; /* Show above the menu toggle button */
}

.js .header-search-wrap .search-form,
.js .header-search-wrap input[type=search] {
  height: 100%;
}

.search-visible .header-search-wrap {
  transform: translate3d(0, 0, 0);
}

.header-search-wrap:target {
  clear: both;
  display: block;
  position: relative;
}

.header-search-wrap input[type=search] {
  border: 0;
  padding-left: 0;
  padding-right: 100px;
}

.header-search-wrap input[type=submit]:focus {
  border-radius: 3px;
  margin-top: 1px;
  padding: 20px;
  right: 50px;
}

.toggle-header-search {
  background: transparent;
}

.toggle-header-search.close {
  color: #041311;
  height: 100%;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate3d(-35px, 0, 0);
  transition: transform 0.2s ease-in-out;
  width: 30px;
  z-index: 100;
}

.header-search-wrap:target .toggle-header-search.close {
  transform: none;
}

.toggle-header-search .ionicons {
  font-size: 12px;
  transform: scale(2);
}

.toggle-header-search.close .ionicons {
  position: absolute;
  right: 50%;
  top: calc(50% - 5px);
  transform: scale(3);
}

/* Footer Menu
--------------------------------------------- */
.nav-secondary {
  margin-bottom: 10px;
}

.nav-secondary .genesis-nav-menu {
  font-family: Muli, sans-serif;
  font-weight: 300;
  margin-top: 20px;
}

.nav-secondary .genesis-nav-menu li {
  padding-left: 2px;
}

.nav-secondary .genesis-nav-menu a {
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
  letter-spacing: 1px;
  margin-left: 15px;
  padding: 0;
  text-transform: uppercase;
}

.nav-secondary .genesis-nav-menu li:first-child a {
  margin-left: 0;
}

.nav-secondary .genesis-nav-menu li:first-child::before {
  content: "";
}

.nav-secondary .genesis-nav-menu li::before {
  color: #041311;
  content: "—";
  float: left;
  font-size: 10px;
}

/* Accessible Menu
--------------------------------------------- */
.menu .menu-item:focus,
.menu .menu-item.sfHover {
  position: static;
}

.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu {
  left: auto;
  opacity: 1;
}

.genesis-nav-menu .menu-item.sfHover > .sub-menu > .menu-item.sfHover > .sub-menu {
  left: 160px;
  margin-left: 0;
}

.menu-toggle,
.sub-menu-toggle {
  display: none;
  visibility: hidden;
}

/* # Content Area
---------------------------------------------------------------------------------------------------- */
/* ## Entries
---------------------------------------------------------------------- */
.gridcontainer p:last-child,
.entry-content p:last-child {
  margin-bottom: 0;
}

.gridcontainer ul,
.entry-content ul {
  margin-bottom: calc(1.2 * 1.2em);
  margin-left: calc(1.2 * 1.2em);
}

.gridcontainer ol,
.entry-content ol {
  margin-bottom: calc(1.2 * 1.2em);
  margin-left: calc(1.2 * 1.2em);
}

.gridcontainer ol ol,
.gridcontainer ul ul,
.entry-content ol ol,
.entry-content ul ul {
  margin-bottom: 0;
}

.gridcontainer code,
.entry-content code {
  color: #041311;
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
}

.gridcontainer .row_headline {
  font-size: calc(4.29981696rem + (1.2vw / 10));
  line-height: 1.2;
  font-weight: 900;
}

.gridcontainer.title-element {
  position: fixed;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 30vh;
  height: calc(var(--vh, 1vh) * 30);
  min-height: 220px;
  width: 100%;
  background-color: #afc5c0;
  padding: 30px 0;
  overflow: hidden;
}
.gridcontainer.title-element .wrap {
  position: relative;
  max-width: 90%;
  z-index: 200;
}
.gridcontainer.title-element .wrap .entry-title {
  position: relative;
  color: #fefefe;
  padding: 15px 0 0 20px;
  margin-bottom: 0;
}
.gridcontainer.title-element .wrap .entry-title::before, .gridcontainer.title-element .wrap .entry-title::after {
  position: absolute;
  content: "";
  transform: scale3d(1, 1, 1);
  top: 6px;
  left: 0;
  background-color: #fefefe;
}
.gridcontainer.title-element .wrap .entry-title::before {
  width: 6px;
  height: 12px;
}
.gridcontainer.title-element .wrap .entry-title::after {
  width: 12px;
  height: 6px;
}

/* ## Headlines
---------------------------------------------------------------------- */
.row_headline,
.entry-title,
.featured_widget_preview h2,
.featured_widget_preview h3,
.featured_widget_preview h4 {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

/* ## SoMe
---------------------------------------------------------------------- */
.some-box {
  display: flex;
}

a.some-box-icon,
button.some-box-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.55em;
  height: 1.55em;
  border-radius: 2em;
  border: 1px solid #041311;
  padding: 0;
  margin-left: calc(calc(1.44em + (1.2vw)) / 4);
  background-color: transparent;
}
a.some-box-icon svg,
button.some-box-icon svg {
  max-height: 0.75em;
  max-width: 0.75em;
}
a.some-box-icon:hover,
button.some-box-icon:hover {
  background-color: #041311;
}
a.some-box-icon:hover svg,
button.some-box-icon:hover svg {
  fill: #fefefe;
}

.page .some-box {
  margin-top: calc(calc(1.44em + (1.2vw)) / 2);
}

.page .some-box button.some-box-icon,
.page .some-box .some-box-icon {
  margin: 0 calc(calc(1.44em + (1.2vw)) / 4) 0 0;
}

/* ## Entry Meta
---------------------------------------------------------------------- */
.entry-meta {
  display: flex;
  flex-wrap: wrap;
}

.entry-time {
  margin-right: 5px;
}

.entry-author {
  margin-left: 5px;
}

a.entry-author-link {
  color: #155d56;
  font-weight: 400;
  text-decoration: none;
  -webkit-transition: color 0.2s ease-in-out;
  -moz-transition: color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out;
  -o-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
}
a.entry-author-link:hover, a.entry-author-link:focus {
  color: #155d56;
  text-decoration: underline;
}

p.entry-meta {
  font-size: calc(1.2rem + (1.2vw / 10));
  line-height: 1.44;
  margin-bottom: 0;
}

.entry-header .entry-meta {
  margin-bottom: 24px;
}

.entry-footer .entry-meta {
  border-top: 2px solid #fefefe;
  padding-top: 24px;
}

.entry-categories,
.entry-tags {
  display: inline-block;
}

.entry-comments-link {
  display: flex;
  align-items: center;
}

.entry-comments-link::before {
  content: "\f101";
  margin: 0 6px 0 15px;
  font-family: dashicons;
}

/* ## Pagination
---------------------------------------------------------------------- */
.pagination {
  clear: both;
  margin: 0;
  margin: 60px 0;
}

.adjacent-entry-pagination {
  margin-bottom: 0;
}

.archive-pagination ul {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.archive-pagination li {
  display: inline;
  margin: 0 5px;
}

.archive-pagination li a {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
  line-height: 1.2;
  color: #fefefe;
  background-color: #155d56;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.archive-pagination li a:hover,
.archive-pagination li a:focus,
.archive-pagination .active a,
.archive-pagination li.pagination-previous a:hover,
.archive-pagination li.pagination-next a:hover,
.archive-pagination li.pagination-previous a:focus,
.archive-pagination li.pagination-next a:focus {
  color: #fefefe;
  background-color: #447d78;
  text-decoration: none;
}

.archive-pagination li a:hover,
.archive-pagination li.pagination-previous a:hover,
.archive-pagination li.pagination-next a:hover {
  box-shadow: 0px 5px 3px 0px rgba(14, 28, 45, 0.25);
}

.archive-pagination li.pagination-previous a [class^=icon-],
.archive-pagination li.pagination-next a [class^=icon-] {
  color: #fefefe;
}

.archive-pagination li.pagination-previous a .icon-arrow-left7,
.archive-pagination li.pagination-next a .icon-untitled2 {
  width: 16px;
  height: 16px;
  display: inherit;
}

.entry-pagination {
  display: flex;
  align-items: center;
  padding: 0 20px;
  background-color: #e6e7e7;
  border-radius: 0.35px;
  border: 1px solid #cdd0cf;
}

.post-page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 10px;
  width: 46px;
  height: 46px;
  color: #041311;
  text-align: center;
  text-decoration: none;
  border-right: 1px solid #cdd0cf;
}
.post-page-numbers.current {
  font-weight: 500;
  color: #fff166;
}
.post-page-numbers:first-child {
  margin-left: 20px;
}
.post-page-numbers:last-child {
  border-right: none;
}

a.post-page-numbers:hover {
  background-color: #d9dcdb;
}

/* ## Comments
---------------------------------------------------------------------- */
.comment-respond,
.entry-comments,
.entry-pings {
  display: flex;
  flex-direction: column;
  margin-bottom: calc(1.44em + (1.2vw));
  padding-bottom: calc(1.44em + (1.2vw));
  max-width: 54.1666666667ch;
  margin: 0 auto;
}
@media screen and (min-width: 64em) {
  .comment-respond,
  .entry-comments,
  .entry-pings {
    max-width: 65ch;
  }
}

.logged-in-as {
  font-size: calc(1.44rem + (1.2vw / 10));
  line-height: 1.44;
}

.comment-header {
  font-size: calc(1.728rem + (1.2vw / 10));
  line-height: 1.44;
  font-weight: 300;
}

.comment-form {
  float: left;
  width: 100%;
  margin-bottom: 30px;
}

.comment-form-comment textarea {
  width: 100%;
}

.logged-in-as a:last-child {
  float: right;
}

.comment-content {
  clear: both;
  word-wrap: break-word;
}

.comment-list li {
  margin-top: 24px;
}

.comment-list li li {
  margin-right: -32px;
}

.comment-respond input[type=email],
.comment-respond input[type=text],
.comment-respond input[type=url] {
  width: 50%;
}

.comment-respond label {
  display: block;
  margin-right: 12px;
}

.entry-comments .comment-author {
  margin-bottom: 0;
}

.entry-pings .reply {
  display: none;
}

.form-allowed-tags {
  background-color: #fefefe;
  padding: 24px;
}

/* ## Featured image
---------------------------------------------------------------------- */
@media only screen and (min-width: 48em) {
  .featured-image.js #genesis-mobile-nav-primary::before,
  .featured-image.js #genesis-mobile-nav-primary::after {
    background-color: #041311;
  }
}
.featured-section {
  position: relative;
  hyphens: auto;
}
.featured-section .entry-header {
  margin-top: calc(calc(1.44em + (1.2vw)) / 2);
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.featured-section .entry-header p {
  max-width: 65ch;
  font-size: calc(2.0736rem + (1.2vw / 10));
}
@media only screen and (min-width: 48em) {
  .featured-section .entry-header {
    grid-column: 1/span 1;
    grid-row: 1/span 1;
    width: 100%;
    align-self: end;
  }
}
@media only screen and (min-width: 48em) {
  .featured-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: min-content;
    gap: calc(1.44em + (1.2vw));
    padding-left: 2.5%;
  }
}

.featured-image .site-header {
  position: absolute;
}
.featured-image .site-header #logo .institute-name {
  fill: #fefefe;
}
@media only screen and (min-width: 48em) {
  .featured-image .site-header {
    position: relative;
  }
  .featured-image .site-header #logo .institute-name {
    fill: #155d56;
  }
}
.featured-image .before-header {
  background-color: transparent;
}
.featured-image .entry-title {
  font-size: clamp(calc(3.5831808rem + (1.2vw / 10)), 5vw, 10em);
}
.featured-image figure {
  position: relative;
  width: 100%;
  height: 100vw;
  min-height: 375px;
  overflow: hidden;
}
@media only screen and (min-width: 48em) {
  .featured-image figure {
    height: calc(50vw - calc(calc(1.44em + (1.2vw)) / 2));
    min-height: unset;
    grid-column: 2/span 1;
  }
}
@media only screen and (min-width: 80em) {
  .featured-image figure {
    max-height: calc(100vh - (114px + calc(1.44em + (1.2vw))));
  }
}
@media only screen and (min-width: 120em) {
  .featured-image figure {
    max-height: calc(100vh - (118px + calc(1.44em + (1.2vw))));
  }
}
.featured-image figure::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 150;
  background: transparent linear-gradient(300deg, rgba(255, 255, 255, 0) 0%, rgba(89, 98, 106, 0.6980392157) 48%, #041311 100%) 0% 0% no-repeat padding-box;
}
@media only screen and (min-width: 48em) {
  .featured-image figure::before {
    background: transparent;
  }
}
.featured-image figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  min-height: 100%;
  min-width: 100%;
  object-fit: cover;
  z-index: 0;
}

/* # Front Page
---------------------------------------------------------------------------------------------------- */
.home-page .site-header {
  position: absolute;
  z-index: 900;
}
@media only screen and (min-width: 64em) {
  .home-page .genesis-nav-menu a {
    color: #fefefe;
  }
  .home-page .genesis-nav-menu a:hover {
    color: #afc5c0;
  }
}
.home-page #logo .institute-name {
  fill: #fefefe;
}
.home-page .footer-widgets {
  margin-top: 0;
}

.hero-front {
  position: relative;
  width: 100%;
  height: 50vh;
  height: calc(var(--vh, 1vh) * 50);
  min-height: 500px;
  overflow: hidden;
}
@media only screen and (min-width: 48em) {
  .hero-front {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
  }
}
.hero-front .wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 100px;
  padding-bottom: 50px;
  margin-left: 2.5%;
  margin-right: 2.5%;
  height: 100%;
}
.hero-front article {
  position: relative;
  color: #fefefe;
  z-index: 500;
}
.hero-front article > * + * {
  margin-top: calc(calc(1.44em + (1.2vw)) / 2);
}
.hero-front h1.hero-title {
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
  font-size: clamp(calc(6.1917364224rem + (1.2vw / 10)), 6vw, 12em);
  line-height: 1;
  hyphens: auto;
  text-transform: uppercase;
}
.hero-front h2.hero-title {
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
  font-size: clamp(calc(2.985984rem + (1.2vw / 10)), 6vw, 6em);
  line-height: 1;
  hyphens: auto;
}
.hero-front h3.hero-title {
  font-family: "bebas-neue-pro", Helvetica, Arial, sans-serif;
  font-size: clamp(calc(1.728rem + (1.2vw / 10)), 6vw, 4em);
  line-height: 1;
  hyphens: auto;
}
.hero-front .hero-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.hero-front .button {
  margin-top: calc(1.44em + (1.2vw));
}
.hero-front .hero-column {
  width: 100%;
}
.hero-front .hero-column p {
  font-size: calc(2.0736rem + (1.2vw / 10));
  line-height: 1.44;
  margin-bottom: calc(calc(1.44em + (1.2vw)) / 2);
}
@media only screen and (min-width: 48em) {
  .hero-front .hero-column:nth-child(2) {
    margin-left: calc(calc(1.44em + (1.2vw)) / 2);
  }
}
.hero-front figure {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 250;
}
.hero-front figure::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 150;
  background-color: #afc5c0;
  mix-blend-mode: multiply;
}
.hero-front figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  min-height: 100%;
  min-width: 100%;
  object-fit: cover;
  z-index: 0;
}
.hero-front [type=radio]:checked + label:before,
.hero-front [type=radio]:not(:checked) + label:before {
  border: 2px solid #fefefe;
}
.hero-front [type=radio]:checked + label:after,
.hero-front [type=radio]:not(:checked) + label:after {
  background: #fefefe;
}
.hero-front [type=checkbox]:checked + label:before,
.hero-front [type=checkbox]:not(:checked) + label:before {
  border: 2px solid #fefefe;
}
.hero-front [type=checkbox]:checked + label:after,
.hero-front [type=checkbox]:not(:checked) + label:after {
  background: #fefefe;
}

/* # Site Footer
---------------------------------------------------------------------------------------------------- */
.site-footer {
  display: block;
  float: left;
  width: 100%;
  position: relative;
  background-color: #041311;
  padding-bottom: 15px;
}
.site-footer .wrap {
  width: 95%;
  margin: 0 auto;
}

.site-footer p {
  font-size: calc(1.2rem + (1.2vw / 10));
  line-height: 1.44;
  color: #fefefe;
  margin-bottom: 0;
}

/* # Min Width Phone
---------------------------------------------------------------------------------------------------- */
/* # Min Width Tablet
---------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 48em) {
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
  .wp-block-pullquote.is-style-solid-color.alignright {
    margin-right: 0;
    max-width: 100%;
  }
  /* ### Hero Video
  ---------------------------------------------------------------------- */
  /* ### Flexible Grid block
  ---------------------------------------------------------------------- */
  .alignfull .has-left-right-margin {
    margin-left: calc(1.44em + (1.2vw));
    margin-right: calc(1.44em + (1.2vw));
  }
  .gridcontainer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .gridcontainer.coll1 section {
    width: 100%;
  }
  .gridcontainer.coll2.has-column-gap section {
    width: calc(50% - (calc(1.44em + (1.2vw)) / 2));
  }
  .gridcontainer.coll2 section {
    width: 50%;
  }
  .gridcontainer.coll3.has-column-gap section {
    width: calc(33.3333% - 15px);
  }
  .gridcontainer.coll3 section {
    width: 33.3333%;
  }
  .gridcontainer.coll4.has-column-gap section {
    width: calc(25% - 15px);
  }
  .gridcontainer.coll4 section {
    width: 25%;
  }
  .gridcontainer.has-column-gap.has-theme-shade-background-color, .gridcontainer.has-column-gap.has-theme-tint-background-color, .gridcontainer.has-column-gap.has-theme-primary-background-color, .gridcontainer.has-column-gap.has-theme-secondary-background-color, .gridcontainer.has-column-gap.has-theme-active-background-color {
    padding-top: calc(1.44em + (1.2vw));
    padding-left: calc(1.44em + (1.2vw));
    padding-right: calc(1.44em + (1.2vw));
  }
  .gridcontainer.has-column-gap section {
    padding: 0;
    margin-bottom: calc(1.44em + (1.2vw));
  }
  .gridcontainer.has-column-gap section:last-child {
    padding-bottom: 0;
  }
  .block-team .gridcontainer__team.coll3.has-column-gap section, .block-team .gridcontainer__team.coll4.has-column-gap section {
    width: calc(50% - (calc(1.44em + (1.2vw)) / 2));
  }
  .block-team .gridcontainer__team.coll3 section, .block-team .gridcontainer__team.coll4 section {
    width: 50%;
  }
  .block-team .alignfull .gridcontainer__team.coll3.has-column-gap section,
  .block-team .alignwide .gridcontainer__team.coll3.has-column-gap section {
    width: calc(33.3333% - 15px);
  }
  .block-team .alignfull .gridcontainer__team.coll3 section,
  .block-team .alignwide .gridcontainer__team.coll3 section {
    width: 33.3333%;
  }
  .block-team .alignfull .gridcontainer__team.coll4.has-column-gap section,
  .block-team .alignwide .gridcontainer__team.coll4.has-column-gap section {
    width: calc(25% - 15px);
  }
  .block-team .alignfull .gridcontainer__team.coll4 section,
  .block-team .alignwide .gridcontainer__team.coll4 section {
    width: 25%;
  }
  @supports (display: grid) {
    .gridcontainer {
      display: grid;
      grid-template-rows: auto;
    }
    .gridcontainer.coll1 {
      grid-template-columns: 1fr;
    }
    .gridcontainer.coll2 {
      grid-template-columns: repeat(2, 1fr);
    }
    .gridcontainer.coll2.has-column-gap section {
      width: 100%;
    }
    .gridcontainer.coll2 section {
      width: 100%;
    }
    .gridcontainer.coll3 {
      grid-template-columns: repeat(3, 1fr);
    }
    .gridcontainer.coll3.has-column-gap section {
      width: 100%;
    }
    .gridcontainer.coll3 section {
      width: 100%;
    }
    .gridcontainer.coll4 {
      grid-template-columns: repeat(4, 1fr);
    }
    .gridcontainer.coll4.has-column-gap section {
      width: 100%;
    }
    .gridcontainer.coll4 section {
      width: 100%;
    }
    .gridcontainer.has-column-gap {
      grid-gap: calc(1.44em + (1.2vw));
    }
    .gridcontainer.has-column-gap section {
      margin-bottom: 0;
    }
    .gridcontainer.has-column-gap section:last-child {
      padding-bottom: 0;
    }
    .block-team .gridcontainer__team {
      display: grid;
      grid-template-rows: auto;
      grid-gap: calc(1.44em + (1.2vw));
    }
    .block-team .gridcontainer__team.coll3, .block-team .gridcontainer__team.coll4 {
      grid-template-columns: repeat(2, 1fr);
    }
    .block-team .gridcontainer__team.coll3.has-column-gap section, .block-team .gridcontainer__team.coll4.has-column-gap section {
      width: 100%;
    }
    .block-team .gridcontainer__team.coll3 section, .block-team .gridcontainer__team.coll4 section {
      width: 100%;
    }
    .block-team.alignfull .gridcontainer__team {
      display: grid;
      grid-template-rows: auto;
    }
    .block-team.alignfull .gridcontainer__team.has-column-gap section.team-member {
      padding-top: 0;
      padding-right: 0;
      padding-left: 0;
    }
    .block-team.alignfull .gridcontainer__team.coll3 {
      grid-template-columns: repeat(3, 1fr);
    }
    .block-team.alignfull .gridcontainer__team.coll3.has-column-gap section {
      width: 100%;
    }
    .block-team.alignfull .gridcontainer__team.coll3 section {
      width: 100%;
    }
    .block-team.alignfull .gridcontainer__team.coll4 {
      grid-template-columns: repeat(4, 1fr);
    }
    .block-team.alignfull .gridcontainer__team.coll4.has-column-gap section {
      width: 100%;
    }
    .block-team.alignfull .gridcontainer__team.coll4 section {
      width: 100%;
    }
    .block-team.alignwide .gridcontainer__team {
      display: grid;
      grid-template-rows: auto;
    }
    .block-team.alignwide .gridcontainer__team.coll3 {
      grid-template-columns: repeat(2, 1fr);
    }
    .block-team.alignwide .gridcontainer__team.coll3.has-column-gap section {
      width: 100%;
    }
    .block-team.alignwide .gridcontainer__team.coll3 section {
      width: 100%;
    }
    .block-team.alignwide .gridcontainer__team.coll4 {
      grid-template-columns: repeat(2, 1fr);
    }
    .block-team.alignwide .gridcontainer__team.coll4.has-column-gap section {
      width: 100%;
    }
    .block-team.alignwide .gridcontainer__team.coll4 section {
      width: 100%;
    }
  }
  /* ### Two Column Grid
  ---------------------------------------------------------------------- */
  .block-two-column-grid .gridcontainer.coll2-3-1 {
    display: flex;
    justify-content: space-between;
  }
  .block-two-column-grid .gridcontainer.coll2-3-1 section:first-child {
    width: calc(66% - (calc(1.44em + (1.2vw)) / 2));
  }
  .block-two-column-grid .gridcontainer.coll2-3-1 section:last-child {
    width: calc(33% - (calc(1.44em + (1.2vw)) / 2));
  }
  .block-two-column-grid .gridcontainer.coll2-1-3 {
    display: flex;
    justify-content: space-between;
  }
  .block-two-column-grid .gridcontainer.coll2-1-3 section:first-child {
    width: calc(33% - (calc(1.44em + (1.2vw)) / 2));
  }
  .block-two-column-grid .gridcontainer.coll2-1-3 section:last-child {
    width: calc(66% - (calc(1.44em + (1.2vw)) / 2));
  }
  @supports (display: grid) {
    .block-two-column-grid .gridcontainer.coll2 .section-header {
      width: auto;
      grid-column: span 2;
    }
    .block-two-column-grid .gridcontainer.coll2-3-1, .block-two-column-grid .gridcontainer.coll2-1-3 {
      display: grid;
      grid-template-rows: auto;
      grid-template-columns: repeat(3, 1fr);
    }
    .block-two-column-grid .gridcontainer.coll2-3-1 .section-header, .block-two-column-grid .gridcontainer.coll2-1-3 .section-header {
      width: auto;
      grid-column: span 3;
    }
    .block-two-column-grid .gridcontainer.coll2-3-1 section, .block-two-column-grid .gridcontainer.coll2-1-3 section {
      width: auto;
    }
    .block-two-column-grid .gridcontainer.coll2-3-1 section:last-child, .block-two-column-grid .gridcontainer.coll2-1-3 section:last-child {
      width: auto;
    }
    .block-two-column-grid .gridcontainer.coll2-3-1 section {
      grid-column: span 2;
    }
    .block-two-column-grid .gridcontainer.coll2-3-1 section:last-child {
      grid-column: span 1;
    }
    .block-two-column-grid .gridcontainer.coll2-1-3 section {
      grid-column: span 1;
    }
    .block-two-column-grid .gridcontainer.coll2-1-3 section:last-child {
      grid-column: span 2;
    }
  }
  /* ## Team Archive Entry
  ---------------------------------------------------------------------- */
  .team-member-archive .content.alignwide {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .team-member-archive .content.alignwide .entry {
    width: calc(50% - (calc(1.44em + (1.2vw)) / 2));
    margin-left: 0;
    margin-right: 0;
  }
  @supports (display: grid) {
    .team-member-archive .content.alignwide {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      grid-template-rows: auto;
      grid-gap: calc(1.44em + (1.2vw));
      margin-bottom: calc(1.44em + (1.2vw));
      padding-bottom: calc(1.44em + (1.2vw));
    }
    .team-member-archive .content.alignwide .archive-description {
      grid-column: 1/span 2;
    }
    .team-member-archive .content.alignwide .archive-pagination {
      grid-column: 1/span 2;
    }
    .team-member-archive .content.alignwide .entry {
      width: 100%;
      margin-bottom: 0;
      padding-bottom: 0;
    }
  }
  .footer-widgets .wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: calc(1.44em + (1.2vw));
  }
  .footer-widget-area {
    width: 100%;
  }
}
/* # Min Width Tablet Big
---------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 64em) {
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
  /*
  .full-width-content .entry-content > .alignwide {
      margin-left:    -100px;
      margin-right:   -100px;
      max-width: calc(100% + 200px);
      width: auto;
  }
  */
  .wp-block-pullquote.is-style-solid-color.alignleft {
    margin-left: -120px;
    max-width: calc(50% + 60px);
  }
  .wp-block-pullquote.is-style-solid-color.alignright {
    margin-right: -120px;
    max-width: calc(50% + 60px);
  }
  /* ### Flexible Grid block
  ---------------------------------------------------------------------- */
  @supports (display: grid) {
    .block-team.alignwide .gridcontainer__team.coll3 {
      grid-template-columns: repeat(3, 1fr);
    }
    .block-team.alignwide .gridcontainer__team.coll4 {
      grid-template-columns: repeat(3, 1fr);
    }
  }
  /* ## Team Archive Entry
  ---------------------------------------------------------------------- */
  .team-member-archive .content.alignwide .entry {
    width: calc(33.333% - 20px);
  }
  @supports (display: grid) {
    .team-member-archive .content.alignwide {
      grid-template-columns: repeat(3, 1fr);
    }
    .team-member-archive .content.alignwide .archive-description {
      grid-column: 1/span 3;
    }
    .team-member-archive .content.alignwide .archive-pagination {
      grid-column: 1/span 3;
    }
    .team-member-archive .content.alignwide .entry {
      width: 100%;
      margin-bottom: 0;
      padding-bottom: 0;
    }
  }
}
/* # Min Width Laptop
---------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 80em) {
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
  .wp-block-pullquote.is-style-solid-color.alignleft {
    margin-left: -160px;
    max-width: calc(50% + 80px);
  }
  .wp-block-pullquote.is-style-solid-color.alignright {
    margin-right: -160px;
    max-width: calc(50% + 80px);
  }
  /* ### Hero Video
  ---------------------------------------------------------------------- */
  .hero .wrap p {
    width: 70%;
  }
  /* ### Flexible Grid block
  ---------------------------------------------------------------------- */
  .gridcontainer.coll2.has-column-gap section {
    width: calc(50% - 20px);
  }
  .gridcontainer.coll3.has-column-gap section {
    width: calc(33.3333% - 20px);
  }
  .gridcontainer.coll4.has-column-gap section {
    width: calc(25% - 20px);
  }
  @supports (display: grid) {
    .gridcontainer.coll2.has-column-gap section, .gridcontainer.coll3.has-column-gap section, .gridcontainer.coll4.has-column-gap section {
      width: 100%;
    }
    .gridcontainer.coll2 section, .gridcontainer.coll3 section, .gridcontainer.coll4 section {
      width: 100%;
    }
    .block-team.alignwide .gridcontainer__team.coll4 {
      grid-template-columns: repeat(4, 1fr);
    }
  }
  /* ## Team Archive Entry
  ---------------------------------------------------------------------- */
  .team-member-archive .content.alignwide .entry {
    width: calc(33.333% - 30px);
  }
  @supports (display: grid) {
    .team-member-archive .content.alignwide .entry {
      width: 100%;
      margin-bottom: 0;
      padding-bottom: 0;
    }
  }
}
/* # Min Width Desktop
---------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 100em) {
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
}
/* # Min Width Large
---------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 120em) {
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
  .wp-block-pullquote.is-style-solid-color.alignleft {
    margin-left: -200px;
    max-width: calc(50% + 100px);
  }
  .wp-block-pullquote.is-style-solid-color.alignright {
    margin-right: -200px;
    max-width: calc(50% + 100px);
  }
  /* ### Flexible Grid block
  ---------------------------------------------------------------------- */
  .gridcontainer.coll2.has-column-gap section {
    width: calc(50% - 25px);
  }
  .gridcontainer.coll3.has-column-gap section {
    width: calc(33.3333% - 25px);
  }
  .gridcontainer.coll4.has-column-gap section {
    width: calc(25% - 25px);
  }
  @supports (display: grid) {
    .gridcontainer.coll2.has-column-gap section, .gridcontainer.coll3.has-column-gap section, .gridcontainer.coll4.has-column-gap section {
      width: 100%;
    }
    .gridcontainer.coll2 section, .gridcontainer.coll3 section, .gridcontainer.coll4 section {
      width: 100%;
    }
  }
}
/* # Min Width Huge
---------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 155em) {
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
}
