@charset "UTF-8";
/* Genesis Child Theme
Theme Name: Bryd Tavsheden 2.0.0
Theme URI: https://github.com/Brydtavsheden/brydtavsheden
Description: This is a theme by mono voce, created for the Genesis Framework.
Author: Bryd Tavsheden
Author URI: https://www.brydtavsheden.dk/
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: bernth-pro
*/
/* # 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 */
/* Primary */
/* Secondary */
/* Active - Active/Focused*/
/* Ground */
/* Accent 1 - Succes */
/* Accent 2 - Warning */
/* Accent 3 - Error/Alert */
:root {
  /* Shade */
  --color-shade: #3F434F;
  --color-shade-shade-20: #010101;
  --color-shade-shade-40: #010101;
  --color-shade-shade-60: #010101;
  --color-shade-shade-80: #010101;
  --color-shade-shade-90: #010101;
  --color-shade-tint-20: #343434;
  --color-shade-tint-40: #676767;
  --color-shade-tint-60: #999999;
  --color-shade-tint-80: #CCCCCC;
  /* Tint */
  --color-tint: #FCFCF0;
  --color-tint-shade-20: #CBCBCB;
  --color-tint-shade-40: #999999;
  --color-tint-shade-60: #656565;
  --color-tint-shade-80: #323232;
  --color-tint-tint-20: #FEFEFE;
  --color-tint-tint-40: #FFFFFF;
  --color-tint-tint-60: #FFFFFF;
  --color-tint-tint-80: #FFFFFF;
  /* Primary */
  --color-primary: #BE3C27;
  --color-primary-shade-20: #20436F;
  --color-primary-shade-40: #183353;
  --color-primary-shade-60: #0F2137;
  --color-primary-shade-80: #08111B;
  --color-primary-tint-20: #5476A2;
  --color-primary-tint-40: #7F99B9;
  --color-primary-tint-60: #A9BAD0;
  --color-primary-tint-80: #D4DDE7;
  /* Secondary */
  --color-secondary: #FBA919;
  --color-secondary-shade-20: #AAAFBA;
  --color-secondary-shade-40: #80848C;
  --color-secondary-shade-60: #53575C;
  --color-secondary-shade-80: #2B2C2F;
  --color-secondary-tint-20: #FBBA44;
  --color-secondary-tint-40: #FBCA6F;
  --color-secondary-tint-60: #FCDB9A;
  --color-secondary-tint-80: #FCEBC5;
  /* Active - Active/Focused*/
  --color-active: #54BB6E;
  --color-active-shade-20: #B23F26;
  --color-active-shade-40: #86301D;
  --color-active-shade-60: #581F11;
  --color-active-shade-80: #2C1008;
  --color-active-tint-20: #E57258;
  --color-active-tint-40: #EC9682;
  --color-active-tint-60: #F1B8AB;
  --color-active-tint-80: #F8DCD5;
  /* Ground */
  --color-ground: #E7DFC7;
  --color-ground-shade-20: #C5C0AF;
  --color-ground-shade-40: #A4A197;
  --color-ground-shade-60: #82817F;
  --color-ground-shade-80: #616267;
  /* Accent 1 - Success */
  --color-success: #4dffa6;
  --color-success-shade-20: #3ecc85;
  --color-success-shade-40: #2e9964;
  --color-success-shade-60: #1f6642;
  --color-success-shade-80: #0f3321;
  --color-success-tint-20: #71ffb8;
  --color-success-tint-40: #94ffca;
  --color-success-tint-60: #b8ffdb;
  --color-success-tint-80: #dbffed;
  /* Accent 2 - Warning */
  --color-warning: #fff04d;
  --color-warning-shade-20: #ccc03e;
  --color-warning-shade-40: #99902e;
  --color-warning-shade-60: #66601f;
  --color-warning-shade-80: #33300f;
  --color-warning-tint-20: #fff371;
  --color-warning-tint-40: #fff694;
  --color-warning-tint-60: #fff9b8;
  --color-warning-tint-80: #fffcdb;
  /* Accent 3 - Error/Alert */
  --color-alert: #ff4d6a;
  --color-alert-shade-20: #cc3e55;
  --color-alert-shade-40: #992e40;
  --color-alert-shade-60: #661f2a;
  --color-alert-shade-80: #330f15;
  --color-alert-tint-20: #ff7188;
  --color-alert-tint-40: #ff94a6;
  --color-alert-tint-60: #ffb8c3;
  --color-alert-tint-80: #ffdbe1;
  /* 
      Tint and Shade Generator
      https://maketintsandshades.com/
  */
}

/* ### Global colours
---------------------------------------------------------------------- */
/* Global body values 
$g_body-background-color:       $color-shade;
$g_font_color_default:          $color-tint;
*/
/* Default body link 
$g_font-bread-a-color:          $color-active;
$g_font-bread-a-hover-color:    $color-active;
*/
/* Mark
$g_font-mark-color:             $color-shade;
$g_font-mark-background-color:  $color-tint;
 */
/* Button */
:root {
  /* Global body values */
  --color-body-background: var(--color-tint);
  --color-body-text: var(--color-shade);
  /* Default body link */
  --color-body-link: var(--color-primary);
  --color-body-link-hover: var(--color-primary);
  /* Mark */
  --color-body-mark-text: var(--color-body-background);
  --color-body-mark-background: var(--color-body-text);
  /* Default button */
  --color-button-text: var(--color-shade);
  --color-button-text-hover: var(--color-shade);
  --color-button-back: var(--color-secondary);
  --color-button-back-hover: var(--color-secondary-tint-20);
  /* Primary button */
  --color-button-primary-text: var(--color-tint);
  --color-button-primary-text-hover: var(--color-tint);
  --color-button-primary-back: var(--color-active);
  --color-button-primary-back-hover: var(--color-active-tint-20);
  /* Info button */
  --color-button-info-text: var(--color-tint);
  --color-button-info-text-hover: var(--color-tint);
  --color-button-info-back: var(--color-shade);
  --color-button-info-back-hover: var(--color-shade-tint-20);
  /* Alert button */
  --color-button-alert-text: var(--color-tint);
  --color-button-alert-text-hover: var(--color-tint);
  --color-button-alert-back: var(--color-alert);
  --color-button-alert-back-hover: var(--color-active-shade-20);
  /* Disabled button */
  --color-button-disabled-text: var(--color-shade);
  --color-button-disabled-text-hover: var(--color-shade);
  --color-button-disabled-back: var(--color-shade-tint-80);
  --color-button-disabled-back-hover: var(--color-shade-tint-80);
}

/* ## Defaults Globals
---------------------------------------------------------------------- */
/* ## Typography
---------------------------------------------------------------------- */
:root {
  /* -- ROOT SETTINGS -- */
  --type-scale: 1.2; /* Typography Scala */
  --type-root: 1.6; /* Normal reading size starting point */
  --type-root-max: 2.0; /* Maxium size for normal reading text */
  --measure-0: 60ch; /* Reading measure */
  --content-width: 77.375em;
  --type-increase: calc(var(--type-scale) * 1vw); /* Type increase as screen gets wider */
  /* Starting sizes */
  --type--2: calc(var(--type--1) / var(--type-scale));
  --type--1: calc(var(--type-0) / var(--type-scale));
  --type-0: calc(var(--type-root) * 1rem);
  --type-1: calc(var(--type-0) * var(--type-scale));
  --type-2: calc(var(--type-1) * var(--type-scale));
  --type-3: calc(var(--type-2) * var(--type-scale));
  --type-4: calc(var(--type-3) * var(--type-scale));
  --type-5: calc(var(--type-4) * var(--type-scale));
  --type-6: calc(var(--type-5) * var(--type-scale));
  --type-7:calc(var(--type-6) * var(--type-scale));
  --type-8:calc(var(--type-7) * var(--type-scale));
  --type-9:calc(var(--type-8) * var(--type-scale));
  --type-10:calc(var(--type-9) * var(--type-scale));
  --type-hero: var(--type-6);
  --type-text-image-title: var(--type-5);
  /* Ending sizes */
  --type--2-max: calc(var(--type--1-max) / var(--type-scale));
  --type--1-max: calc(var(--type-0-max) / var(--type-scale));
  --type-0-max: calc(var(--type-root-max) * 1rem);
  --type-1-max: calc(var(--type-0-max) * var(--type-scale));
  --type-2-max: calc(var(--type-1-max) * var(--type-scale));
  --type-3-max: calc(var(--type-2-max) * var(--type-scale));
  --type-4-max: calc(var(--type-3-max) * var(--type-scale));
  --type-5-max: calc(var(--type-4-max) * var(--type-scale));
  --type-6-max: calc(var(--type-5-max) * var(--type-scale));
  --type-7-max: calc(var(--type-6-max) * var(--type-scale));
  --type-8-max: calc(var(--type-7-max) * var(--type-scale));
  --type-9-max: calc(var(--type-8-max) * var(--type-scale));
  --type-10-max: calc(var(--type-9-max) * var(--type-scale));
  --type-hero-max: var(--type-8-max);
  --type-text-image-title-max: var(--type-9-max);
  /* Resonsive calculations */
  --type--2-responsive: clamp(var(--type--2), calc(var(--type-scale) / var(--type-scale) * var(--type-increase)), var(--type--2-max));
  --type--1-responsive: clamp(var(--type--1), calc(var(--type-scale) / var(--type-scale) * var(--type-increase)), var(--type--1-max));
  --type-0-responsive: clamp(var(--type-0), calc(var(--type-scale) * var(--type-increase)), var(--type-0-max));
  --type-1-responsive: clamp(var(--type-1), calc(var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-1-max));
  --type-2-responsive: clamp(var(--type-2), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-2-max));
  --type-3-responsive: clamp(var(--type-3), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-3-max));
  --type-4-responsive: clamp(var(--type-4), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-4-max));
  --type-5-responsive: clamp(var(--type-5), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-5-max));
  --type-6-responsive: clamp(var(--type-6), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-6-max));
  --type-7-responsive: clamp(var(--type-7), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-7-max));
  --type-hero-responsive: clamp(var(--type-hero), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-hero-max));
  --type-hero-small-responsive: clamp(var(--type-4), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-6-max));
  --type-text-image-title-responsive: clamp(var(--type-text-image-title), calc(var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-scale) * var(--type-increase)), var(--type-text-image-title-max));
  /* Font-sizes */
  --font-size-xs: var(--type--2-responsive);
  --font-size-s: var(--type--1-responsive);
  --font-size-m: var(--type-0-responsive);
  --font-size-l: var(--type-1-responsive);
  --font-size-xl: var(--type-2-responsive);
  --font-size-xxl: var(--type-3-responsive);
  --font-size-xxxl: var(--type-4-responsive);
  --font-size-xxxxl: var(--type-5-responsive);
  --font-size-xxxxxl: var(--type-6-responsive);
  --font-size-h6: var(--font-size-m);
  --font-size-h5: var(--font-size-l);
  --font-size-h4: var(--font-size-xl);
  --font-size-h3: var(--font-size-xxl);
  --font-size-h2: var(--font-size-xxxl);
  --font-size-h1: var(--font-size-xxxxl);
  --font-size-entry-title: var(--font-size-h1);
  /* Line heights */
  --line-height-xs: calc(var(--type-scale) / var(--type-scale));
  --line-height-s: var(--type-scale);
  --line-height-m: calc(var(--type-scale) * var(--type-scale));
  --line-height-l: calc(var(--type-scale) * var(--type-scale) * var(--type-scale));
  /* Responsive margins */
  --margin-0:calc((var(--type-scale) * 1rem) + (var(--type-scale) * var(--type-increase)));
  --margin-1:calc(var(--margin-0) * 1.5);
  --margin-2:calc(var(--margin-0) * 2);
  --margin-3:calc(var(--margin-0) * 2.5);
  --margin-4:calc(var(--margin-0) * 3);
  --margin-5:calc(var(--margin-0) * 3.5);
  --margin-6:calc(var(--margin-0) * 4);
  --margin--1:calc(var(--margin-0) / 1.5);
  --margin--2:calc(var(--margin-0) / 2);
  --margin--3:calc(var(--margin-0) / 2.5);
  --margin--4:calc(var(--margin-0) / 3);
  /* Margin Sizes */
  --margin-xxxs: var(--margin--4);
  --margin-xxs: var(--margin--3);
  --margin-xs: var(--margin--2);
  --margin-s: var(--margin--1);
  --margin-m: var(--margin-0);
  --margin-l: var(--margin-1);
  --margin-xl: var(--margin-2);
  --margin-xxl: var(--margin-3);
  --site-margin: var(--margin-m);
}

/* ### Responsive typography
---------------------------------------------------------------------- */
/*

$t_font_default:        ($t_font_size_root, $t_line-height, 300);

$t_font_smallest:       ($t_font_size_smallest, $t_line-height);
$t_font_smaller:        ($t_font_size_smaller, $t_line-height);
$t_font_small:          ($t_font_size_small, $t_line-height);
$t_font_large:          ($t_font_size_large, $t_line-height);
$t_font_larger:         ($t_font_size_larger, $t_line-height);

$t_font_h1:             ($t_font_size_h1, $t_line-height_small, 800);
$t_font_h2:             ($t_font_size_h2, $t_line-height_small, 800);
$t_font_h3:             ($t_font_size_h3, $t_line-height_small, 800);
$t_font_h4:             ($t_font_size_h4, $t_line-height_small, 800);
$t_font_h5:             ($t_font_size_h5, $t_line-height_small, 800);
$t_font_h6:             ($t_font_size_h6, $t_line-height_small, 800);

$t_font_entry_title:    ($t_font_size_entry_title, $t_line-height_small, 800);

*/
/* ### Font family
---------------------------------------------------------------------- */
@font-face {
  font-family: "Eastman-Regular";
  src: url("fonts/Eastman-Regular.eot"); /* IE9 Compat Modes */
  src: url("fonts/Eastman-Regular.eot?#iefix") format("embedded-opentype"), url("fonts/Eastman-Regular.woff") format("woff"), url("fonts/Eastman-Regular.ttf") format("truetype"), url("fonts/Eastman-Regular.svg#svgFontName") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Eastman-Italic";
  src: url("fonts/Eastman-Italic.eot"); /* IE9 Compat Modes */
  src: url("fonts/Eastman-Italic.eot?#iefix") format("embedded-opentype"), url("fonts/Eastman-Italic.woff") format("woff"), url("fonts/Eastman-Italic.ttf") format("truetype"), url("fonts/Eastman-Italic.svg#svgFontName") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Eastman-Bold";
  src: url("fonts/Eastman-Bold.eot"); /* IE9 Compat Modes */
  src: url("fonts/Eastman-Bold.eot?#iefix") format("embedded-opentype"), url("fonts/Eastman-Bold.woff") format("woff"), url("fonts/Eastman-Bold.ttf") format("truetype"), url("fonts/Eastman-Bold.svg#svgFontName") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Eastman-BoldItalic";
  src: url("fonts/Eastman-BoldItalic.eot"); /* IE9 Compat Modes */
  src: url("fonts/Eastman-BoldItalic.eot?#iefix") format("embedded-opentype"), url("fonts/Eastman-BoldItalic.woff") format("woff"), url("fonts/Eastman-BoldItalic.ttf") format("truetype"), url("fonts/Eastman-BoldItalic.svg#svgFontName") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Eastman-Black";
  src: url("fonts/Eastman-Black.eot"); /* IE9 Compat Modes */
  src: url("fonts/Eastman-Black.eot?#iefix") format("embedded-opentype"), url("fonts/Eastman-Black.woff") format("woff"), url("fonts/Eastman-Black.ttf") format("truetype"), url("fonts/Eastman-Black.svg#svgFontName") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-weight: 800;
  font-style: normal;
}
/* Global Font Faminly 
$font-bread:        'Eastman-Regular', Helvetica, Arial, sans-serif;
$font-bold:         'Eastman-Bold', Helvetica, Arial, sans-serif;
$font-black:        'Eastman-Black', Helvetica, Arial, sans-serif;
$font-headlines:    'Eastman-Black', Helvetica, Arial, sans-serif;
$font-hero:         'Eastman-Black', Helvetica, Arial, sans-serif;
$font-navigation:   'Eastman-Bold', Helvetica, Arial, sans-serif;
*/
:root {
  /* Global Font Faminly */
  --font-default: "Eastman-Regular", Helvetica, Arial, sans-serif;
  --font-bold: "Eastman-Bold", Helvetica, Arial, sans-serif;
  --font-regular: "Eastman-Regular", Helvetica, Arial, sans-serif;
  --font-headline: "Eastman-Black", Helvetica, Arial, sans-serif;
  --font-navigation: "Eastman-Bold", Helvetica, Arial, sans-serif;
}

/* ## Border Radius
---------------------------------------------------------------------- */
/* Globals */
/* ## Colored Gridcontainer
---------------------------------------------------------------------- */
/* ## Media Queries
---------------------------------------------------------------------- */
/* 592 pixel */
/* 768 pixel */
/* 767 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: #3F434F;
}

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

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

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

.has-theme-primary-color {
  color: #BE3C27;
}

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

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

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

.has-theme-active-color {
  color: #54BB6E;
}

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

.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
---------------------------------------------------------------------- */
.has-normal-font-size {
  font-size: var(--font-size-m);
}

/* 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: var(--margin-m);
}

.alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
  padding: var(--margin-m);
}

/* Text Size
---------------------------------------------------------------------------- */
.has-small-font-size {
  font-size: var(--font-size-s);
}

.has-large-font-size {
  font-size: var(--font-size-l);
}

.has-larger-font-size {
  font-size: var(--font-size-xl);
}

/* Background Color
---------------------------------------------------------------------------- */
.site-container p.has-background {
  padding: var(--margin-m);
}

.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;
}

.full-width-content .entry-content > .wp-block-image.alignfull {
  padding: 0;
}

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

.wp-block-image {
  margin-bottom: 0;
}

.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: var(--margin-s);
  margin-bottom: var(--margin-s);
  padding-top: var(--margin-m);
  padding-bottom: var(--margin-m);
  width: 90%;
  z-index: 1;
  color: var(--color-tint);
}
.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: var(--font-size-entry-title);
  line-height: var(--line-height-s);
  color: var(--color-tint);
}

.full-width-content .entry-content > .alignfull {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding-left: var(--site-margin);
  padding-right: var(--site-margin);
  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%;
  margin: 0 auto;
}

@media only screen and (min-width: 48em) {
  .full-width-content .entry-content > .alignwide,
  .full-width-content.team-member-archive .alignwide {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    padding-left: var(--margin-m);
    padding-right: var(--margin-m);
  }
}
@media only screen and (min-width: 64em) {
  .full-width-content .entry-content > .alignwide,
  .full-width-content.team-member-archive .alignwide {
    margin-left: calc(-1 * var(--type-root) * 1vw * 10 / 2);
    margin-right: calc(-1 * var(--type-root) * 1vw * 10 / 2);
    padding-left: unset;
    padding-right: unset;
    width: auto;
  }
}

/* Columns
---------------------------------------------------------------------------- */
.wp-block-columns.has-background,
.wp-block-columns.has-background.alignfull {
  padding: var(--margin-m);
}

.site-container .wp-block-columns {
  margin-bottom: var(--margin-s);
}

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

.site-container .wp-block-cover .wp-block-cover-text {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-m);
}

/* Buttons
---------------------------------------------------------------------------- */
.site-container .ab-button {
  background-color: #54BB6E;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  text-transform: uppercase;
}

.site-container .wp-block-button .wp-block-button__link,
.wp-block-button__link {
  background-color: #54BB6E;
  color: var(--color-tint);
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  -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: var(--color-tint);
  box-shadow: 10px 10px 10px 0px rgba(0, 11, 18, 0.25), inset 0 0 200px rgba(230, 230, 230, 0.25);
}

.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:hover,
.wp-block-button__link:visited {
  color: var(--color-tint);
}

/* Blockquotes and captions
---------------------------------------------------------------------------- */
.site-container .wp-block-quote::before {
  color: #BE3C27;
  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: var(--margin-m);
  padding-bottom: var(--margin-m);
}

.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: var(--font-size-l);
  line-height: var(--line-height-m);
}

.site-container .wp-block-pullquote.alignleft blockquote {
  margin-right: var(--margin-m);
  margin-bottom: var(--margin-s);
}

.site-container .wp-block-pullquote.alignright blockquote {
  margin-left: var(--margin-m);
  margin-bottom: var(--margin-s);
}

.wp-block-pullquote.is-style-solid-color blockquote {
  padding: var(--margin-m);
  max-width: 100%;
  color: var(--color-tint);
  background-color: #54BB6E;
}
.wp-block-pullquote.is-style-solid-color blockquote p {
  font-size: var(--font-size-l);
  line-height: var(--line-height-m);
  color: var(--color-tint);
  font-size: inherit;
}
.wp-block-pullquote.is-style-solid-color blockquote cite {
  font-style: italic;
}

.wp-block-pullquote.alignfull {
  padding: var(--margin-m);
  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: var(--margin-m);
  background-color: var(--color-shade-shade-90);
  border: 1px solid var(--color-shade-shade-80);
  border-radius: 0.5px;
}

/* 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: var(--color-shade);
  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: var(--margin-m);
  padding-bottom: var(--margin-m);
}
.wp-block-search.alignright {
  padding-left: var(--margin-m);
}
.wp-block-search.alignleft {
  padding-right: var(--margin-m);
}
.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.536vw * 10) / 2);
     	// margin-right:   calc((-1.536vw * 10) / 2);    
     	max-width:      calc( 100% + (1.536vw * 10));

  	margin-left: 	calc( (-1 * (var(--type-root) * 1vw) * 10) / 2);
       	margin-right: 	calc( (-1 * (var(--type-root) * 1vw) * 10) / 2);
     	width: auto;
  }
  */
  /* ### Gutenberg Front-end styles
  ---------------------------------------------------------------------- */
  .wp-block-pullquote.alignleft {
    max-width: 50%;
    margin-left: calc(-1.28em - (1.2vw));
  }
  .wp-block-pullquote.alignright {
    max-width: 50%;
    margin-right: calc(-1.28em - (1.2vw));
  }
}
/* Gutnberg mono margins and paddings
---------------------------------------------------------------------- */
[class^=block-] .has-top-bottom-margin,
[class*=" block-"] .has-top-bottom-margin {
  margin-top: var(--margin-s);
  margin-bottom: var(--margin-s);
}
[class^=block-].has-top-bottom-margin,
[class*=" block-"].has-top-bottom-margin {
  margin-top: var(--margin-s);
  margin-bottom: var(--margin-s);
}
[class^=block-] .has-top-bottom-padding,
[class*=" block-"] .has-top-bottom-padding {
  padding-top: var(--margin-m);
  padding-bottom: var(--margin-m);
}
[class^=block-] .has-top-bottom-padding-large,
[class*=" block-"] .has-top-bottom-padding-large {
  padding-top: calc(calc(1.28em + (1.2vw)) * 2);
  padding-bottom: calc(calc(1.28em + (1.2vw)) * 2);
}

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

/* ### Big Picture
---------------------------------------------------------------------- */
.wp-block-image.alignfull.size-large {
  aspect-ratio: 4/3;
  overflow: hidden;
}
.wp-block-image.alignfull.size-large img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100% !important;
  height: 100% !important;
}
@media only screen and (min-width: 48em) {
  .wp-block-image.alignfull.size-large {
    aspect-ratio: 16/9;
  }
}
@media only screen and (min-width: 64em) {
  .wp-block-image.alignfull.size-large {
    aspect-ratio: 2/1;
  }
}
@media only screen and (min-width: 64em) {
  .wp-block-image.alignfull.size-large {
    aspect-ratio: unset;
    max-height: 50vh;
    min-height: 25em;
  }
}

/* ### Images and text block
---------------------------------------------------------------------- */
.section-link {
  display: flex;
  align-items: center;
  font-weight: 600;
  color: #54BB6E;
  text-decoration: none;
  margin-top: var(--margin-s);
}
.section-link .icon-stepup-arrow {
  fill: #54BB6E;
  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: var(--color-tint);
}
.section-link:hover .icon-stepup-arrow {
  fill: var(--color-tint);
  margin-left: 1.5em;
}

.section-content {
  padding-bottom: var(--margin-m);
}
.section-content:last-child {
  padding-bottom: 0;
}
.section-content .section-header {
  font-size: var(--font-size-h2);
  line-height: var(--line-height-s);
}
.section-content .section-text {
  margin-top: var(--margin-s);
}
.section-content .carousel img {
  display: block;
  float: left;
  width: 100%;
  object-fit: cover;
}
.section-content .section-image img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100%;
}

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

/* ### Flexible Grid block
---------------------------------------------------------------------- */
.alignfull .gridcontainer.has-column-gap > section.team-member {
  padding-top: var(--margin-m);
  padding-right: var(--margin-m);
  padding-left: var(--margin-m);
}
.alignfull .gridcontainer.alignfull.has-top-bottom-margin {
  margin-left: var(--margin-m);
  margin-right: var(--margin-m);
}
.alignfull.has-top-bottom-padding .gridcontainer.alignfull {
  padding-left: var(--margin-m);
  padding-right: var(--margin-m);
}

.gridcontainer {
  display: grid;
  gap: var(--margin-m);
  width: 100%;
  max-width: 65ch;
  margin-left: auto;
  margin-right: auto;
}
.gridcontainer.alignfull {
  max-width: 100%;
}
.gridcontainer.coll1 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.gridcontainer.coll1 .flexgrid-video.crop-video {
  min-height: 50vw;
}
.gridcontainer.coll2 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.gridcontainer.coll3 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.gridcontainer.coll4 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.gridcontainer.has-column-gap > section:last-child {
  padding-bottom: var(--margin-m);
}
.gridcontainer.has-column-gap > section.team-member {
  padding-top: 0;
  padding-right: 0;
  padding-left: 0;
}
.gridcontainer.has-no-column-gap .flexgrid-text {
  padding: var(--margin-m);
}
.gridcontainer section {
  position: relative;
  display: block;
  width: 100%;
}
.gridcontainer .flexgrid-text {
  display: flex;
  flex-direction: column;
}
.gridcontainer .flexgrid-text.vertical-top {
  justify-content: start;
}
.gridcontainer .flexgrid-text.vertical-middle {
  justify-content: center;
}
.gridcontainer .flexgrid-text.vertical-bottom {
  justify-content: end;
}
.gridcontainer .flexgrid-text p {
  max-width: 65ch;
}
.gridcontainer .flexgrid-text img.alignleft,
.gridcontainer .flexgrid-text img.alingright {
  max-width: 100%;
}
.gridcontainer .flexgrid-image figure {
  height: 100%;
}
.gridcontainer .flexgrid-image figure img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100%;
  height: 100%;
}
.gridcontainer .team-member figure {
  position: relative;
  margin-bottom: 10px;
}
.gridcontainer .team-member figure img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100%;
  height: auto;
}
.gridcontainer .team-member figure .onleave {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 0.313em 0.938em;
  color: var(--color-tint);
  background-color: #54BB6E;
}
.gridcontainer .team-member:last-child .biography {
  margin-bottom: 0;
}
.gridcontainer .team-member .name,
.gridcontainer .team-member .title {
  display: block;
}
.gridcontainer .team-member .name {
  font-weight: 400;
}
.gridcontainer .team-member .title {
  font-style: italic;
  margin-bottom: 0.625em;
}
.gridcontainer .team-member .biography {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  margin-bottom: 1.25em;
}
.gridcontainer .team-member .onleave,
.gridcontainer .team-member .email,
.gridcontainer .team-member .phone {
  display: flex;
  align-items: center;
}
.gridcontainer .team-member .onleave [class^=icon-], .gridcontainer .team-member .onleave .contact [class*=" icon-"],
.gridcontainer .team-member .email [class^=icon-],
.gridcontainer .team-member .email .contact [class*=" icon-"],
.gridcontainer .team-member .phone [class^=icon-],
.gridcontainer .team-member .phone .contact [class*=" icon-"] {
  width: 22px;
  height: 22px;
  border-radius: 30px;
  padding: 4px;
  margin-right: 0.625em;
}
.gridcontainer .team-member .onleave [class^=icon-], .gridcontainer .team-member .onleave .contact [class*=" icon-"] {
  color: #54BB6E;
  fill: #54BB6E;
  background-color: var(--color-tint);
}
.gridcontainer .team-member .email [class^=icon-], .gridcontainer .team-member .email .contact [class*=" icon-"],
.gridcontainer .team-member .phone [class^=icon-],
.gridcontainer .team-member .phone .contact [class*=" icon-"] {
  color: var(--color-tint);
  fill: var(--color-tint);
  background-color: #54BB6E;
}
.gridcontainer .flexgrid-carousel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: auto;
}
.gridcontainer .flexgrid-carousel img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100%;
  height: 100%;
}
.gridcontainer .flexgrid-video {
  overflow: hidden;
}
.gridcontainer .flexgrid-video.crop-video video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-height: 100%;
  width: auto;
  min-width: 100%;
}
.gridcontainer .flexgrid-video video {
  display: block;
  max-width: unset;
  width: 100%;
}
.gridcontainer .flexgrid-embed .wrap-embed {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  height: auto;
}
.gridcontainer .flexgrid-embed .wrap-embed iframe,
.gridcontainer .flexgrid-embed .wrap-embed object,
.gridcontainer .flexgrid-embed .wrap-embed embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.gridcontainer footer {
  display: flex;
  width: 100%;
}
.gridcontainer footer.align-left {
  justify-content: flex-start;
}
.gridcontainer footer.align-right {
  justify-content: flex-end;
}
.gridcontainer footer.align-center {
  justify-content: center;
}

/* ### Team block
---------------------------------------------------------------------- */
.block-team {
  padding-top: 0;
  padding-bottom: var(--margin-l);
}
.block-team.has-top-padding {
  padding-top: var(--margin-l);
}
.block-team.alignfull {
  /*
  &.has-top-bottom-margin{
  	.gridcontainer__team{
  		margin-left: var(--margin-m);
  		margin-right: var(--margin-m);
  	}
  }
  &.has-top-bottom-padding{
  	.gridcontainer__team{
  		padding-left: var(--margin-m);
  		padding-right: var(--margin-m);
  	}
  }
  */
}
.block-team.alignfull .gridcontainer__team {
  width: 100%;
  max-width: var(--content-width);
  margin-left: auto;
  margin-right: auto;
}
.block-team .wrap {
  width: 100%;
  max-width: var(--content-width);
}
.block-team .wrap header h2 {
  font-family: var(--font-default);
  font-size: clamp(var(--font-size-xxl), 4vw, var(--font-size-h2));
  padding-bottom: 1em;
}

.gridcontainer__team.coll3 {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: var(--margin-m);
}
.gridcontainer__team .team-member {
  font-family: var(--font-default);
}
.gridcontainer__team .team-member figure {
  position: relative;
  margin-bottom: 15px;
}
.gridcontainer__team .team-member figure img {
  display: block;
  object-fit: cover;
  max-width: unset;
  width: 100%;
  height: auto;
}
.gridcontainer__team .team-member figure .onleave {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 0.313em 0.938em;
  color: var(--color-tint);
  background-color: #54BB6E;
}
.gridcontainer__team .team-member:last-child .biography {
  margin-bottom: 0;
}
.gridcontainer__team .team-member a {
  color: var(--color-shade);
}
.gridcontainer__team .team-member a:hover {
  text-decoration: none;
}
.gridcontainer__team .team-member .name,
.gridcontainer__team .team-member .title {
  display: block;
}
.gridcontainer__team .team-member .name {
  font-family: var(--font-bold);
}
.gridcontainer__team .team-member .biography {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  margin-bottom: 1.25em;
}
.gridcontainer__team .team-member .onleave,
.gridcontainer__team .team-member .email,
.gridcontainer__team .team-member .phone {
  display: flex;
  align-items: center;
}
.gridcontainer__team .team-member .onleave [class^=icon-], .gridcontainer__team .team-member .onleave .contact [class*=" icon-"],
.gridcontainer__team .team-member .email [class^=icon-],
.gridcontainer__team .team-member .email .contact [class*=" icon-"],
.gridcontainer__team .team-member .phone [class^=icon-],
.gridcontainer__team .team-member .phone .contact [class*=" icon-"] {
  width: 22px;
  height: 22px;
  border-radius: 30px;
  padding: 4px;
  margin-right: 0.625em;
}
.gridcontainer__team .team-member .onleave [class^=icon-], .gridcontainer__team .team-member .onleave .contact [class*=" icon-"] {
  color: #54BB6E;
  fill: #54BB6E;
  background-color: var(--color-tint);
}
.gridcontainer__team .team-member .email [class^=icon-], .gridcontainer__team .team-member .email .contact [class*=" icon-"],
.gridcontainer__team .team-member .phone [class^=icon-],
.gridcontainer__team .team-member .phone .contact [class*=" icon-"] {
  color: var(--color-tint);
  fill: var(--color-tint);
  background-color: #54BB6E;
}

/* ### Image hotspots
---------------------------------------------------------------------- */
.section-hotspots img {
  display: block;
}
.section-hotspots.has-small-font-size .wp-block-button__link {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  font-weight: 400;
}
.section-hotspots .wp-block-button__link {
  padding: 0.75em 1.25em;
}
.section-hotspots .wp-block-button__link.has-small-font-size {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
}

.tooltip p {
  color: var(--color-shade);
}

.tooltip::after {
  height: 4px;
  width: 30px;
  content: "";
  display: block;
  position: absolute;
  background-color: transparent !important;
  z-index: 20;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-top: 14px solid var(--color-tint);
}

.tooltip.top::after {
  margin-left: -18px !important;
}

.tooltip.right::after {
  left: -22px !important;
  margin-top: -6px !important;
  transform: rotate(90deg);
}

.tooltip.bottom::after {
  top: -29px !important;
  margin-left: -16px !important;
  transform: rotate(180deg);
}

.tooltip.left::after {
  right: -22px !important;
  margin-top: -5px !important;
  transform: rotate(-90deg);
}

.hotspot__pointer {
  -webkit-animation: pulsation 1.4s ease-in-out infinite;
  -moz-animation: pulsation 1.4s ease-in-out infinite;
  animation: pulsation 1.4s ease-in-out infinite;
  -webkit-animation-delay: 2s;
  -moz-animation-delay: 2s;
  animation-delay: 2s;
}

@-webkit-keyframes pulsation {
  0% {
    opacity: 0.8;
  }
  50% {
    opacity: 1;
    scale: 1.3;
  }
  100% {
    opacity: 0.8;
  }
}
@-moz-keyframes pulsation {
  0% {
    opacity: 0.8;
  }
  50% {
    opacity: 1;
    scale: 1.3;
  }
  100% {
    opacity: 0.8;
  }
}
@keyframes pulsation {
  0% {
    opacity: 0.8;
  }
  50% {
    opacity: 1;
    scale: 1.3;
  }
  100% {
    opacity: 0.8;
  }
}
/* ### Hero carousel
---------------------------------------------------------------------- */
.block-hero-carousel {
  display: flex;
  flex-direction: column;
  gap: var(--margin-m);
}

.block-hero-carousel .carousel {
  height: calc(70vh - 73px);
  min-height: 40vw;
  width: 100%;
}
.block-hero-carousel .carousel img:focus {
  outline: none;
  box-shadow: none;
}
.block-hero-carousel .carousel:focus {
  outline: none;
  box-shadow: none;
}

.static-banner {
  position: absolute;
  left: var(--margin-m);
  bottom: var(--margin-m);
  z-index: 10;
}

.block-hero-carousel .text-area {
  padding: var(--margin-m);
}

.block-hero-carousel.typed-text-animation {
  background-color: transparent;
  padding: 0 var(--margin-m);
}
.block-hero-carousel.typed-text-animation .typed {
  position: relative;
  background-color: #FBA919;
  padding: calc(calc(1.28em + (1.2vw)) * 2);
  width: 100%;
  height: calc(70vh - 73px);
  min-height: 40vw;
}
.block-hero-carousel.typed-text-animation .typed p {
  font-family: var(--font-black);
  font-size: clamp(2.21184rem + 1.2vw / 10, 4vw, 7vw);
}
.block-hero-carousel.typed-text-animation .typed p span span {
  color: var(--color-active);
}
.block-hero-carousel.typed-text-animation .typed .section-link {
  position: absolute;
  left: calc(calc(1.28em + (1.2vw)) * 2);
  bottom: calc(calc(1.28em + (1.2vw)) * 2);
  color: var(--color-tint);
}
.block-hero-carousel.typed-text-animation .typed .section-link:hover {
  color: #54BB6E;
}
.block-hero-carousel.typed-text-animation .typed .section-link::before {
  position: absolute;
  content: "";
  height: 2px;
  width: 8em;
  background-color: var(--color-tint);
  left: 0;
  bottom: 4em;
}

@media only screen and (max-width: 47.938em) and (orientation: landscape) {
  .block-hero-carousel.typed-text-animation .typed {
    height: 100vh;
  }
  .block-hero-carousel .carousel {
    min-height: 50vw;
  }
}
@media only screen and (min-width: 48em) {
  .block-hero-carousel {
    flex-direction: row;
  }
  .block-hero-carousel .carousel,
  .block-hero-carousel.typed-text-animation .typed {
    min-height: calc(55vh - 98px);
    min-height: calc(var(--vh, 1vh) * 55 - 98px);
    width: 50%;
  }
}
@media only screen and (min-width: 64em) {
  .block-hero-carousel .carousel,
  .block-hero-carousel.typed-text-animation .typed {
    min-height: calc(100vh - calc(1.28em + (1.2vw)) * 5);
    min-height: calc(var(--vh, 1vh) * 100 - calc(1.28em + (1.2vw)) * 5);
  }
}
@media only screen and (min-width: 64em) and (orientation: portrait) {
  .block-hero-carousel .carousel,
  .block-hero-carousel.typed-text-animation .typed {
    min-height: calc(50vh - 104px);
    min-height: calc(var(--vh, 1vh) * 50 - 104px);
  }
}
@media only screen and (min-width: 120em) {
  .block-hero-carousel .carousel,
  .block-hero-carousel.typed-text-animation .typed {
    min-height: calc(100vh - calc(1.28em + (1.2vw)) * 4);
    min-height: calc(var(--vh, 1vh) * 100 - calc(1.28em + (1.2vw)) * 4);
  }
}
/* ### Counter
---------------------------------------------------------------------- */
.counter {
  text-align: center;
}
.counter__numbers {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.counter__numbers h2 {
  font-weight: 600;
  line-height: 1;
  font-variant: tabular-nums;
  margin-bottom: 0;
  margin-left: calc(calc(1.28em + (1.2vw)) / 8);
  margin-right: calc(calc(1.28em + (1.2vw)) / 8);
}
.counter__numbers h2.has-small-font-size {
  font-size: calc(2.654208rem + 1.2vw / 10);
}
.counter__numbers h2.has-normal-font-size {
  font-size: calc(3.1850496rem + 1.2vw / 10);
}
.counter__numbers h2.has-large-font-size {
  font-size: calc(4.586471424rem + 1.2vw / 10);
}
.counter__numbers h2.has-larger-font-size {
  font-size: calc(5.5037657088rem + 1.2vw / 10);
}
.counter__prefix, .counter__suffix {
  line-height: 1.2;
  margin-bottom: 0;
}
.counter__text {
  margin-top: calc(calc(1.28em + (1.2vw)) / 2);
  font-weight: 400;
}

/* ### Hero advanced
----------------------------------------------------------------------
.block-hero-advanced{
	position: relative;
	overflow: hidden;
	background-color: rgba(0, 11, 18, 0.5);
	video,
	img {
        position:absolute;
        top:50%;
        left:50%;
        transform: translate(-50%, -50%);
        max-width:unset;
        min-height:100%;
        min-width:100%;
        z-index:-1;
	}
	#clockdiv{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-top: var(--margin-s);
		margin-bottom: var(--margin-s);
	}
	.counter{
		display: flex;
		flex-direction: column;
		font-size: $t_font_size_giant;
		font-weight: 600;
		font-variant: tabular-nums;
		line-height: 1;
		color: var(--color-tint);
		margin: calc(calc(1.28em + (1.2vw)) / 6);
		.smalltext{
			font-size: $t_font_size_smaller;
			font-weight: 400;
			font-variant: normal;
			text-transform: uppercase;
			margin-top: calc(calc(1.28em + (1.2vw)) / 10);
		}
	}
}
 */
/* ### Animated types block
---------------------------------------------------------------------- */
.typed .has-small-font-size {
  font-size: calc(2.654208rem + 1.2vw / 10);
}
.typed .has-normal-font-size {
  font-size: calc(3.1850496rem + 1.2vw / 10);
}
.typed .has-large-font-size {
  font-size: calc(4.586471424rem + 1.2vw / 10);
  font-size: clamp(3.1850496rem + 1.2vw / 10, 5.5vw, 4.586471424rem + 1.2vw / 10);
}
.typed .has-larger-font-size {
  font-size: calc(5.5037657088rem + 1.2vw / 10);
  font-size: clamp(3.82205952rem + 1.2vw / 10, 5vw, 5.5037657088rem + 1.2vw / 10);
}
.typed .has-bold-font-weight {
  font-weight: 600;
}
.typed p {
  margin-bottom: 0;
  line-height: 1.2;
}

/*Removes cursor that comes with typed.js*/
.typed-cursor {
  display: inline;
  opacity: 1;
  -webkit-animation: blink 0.7s infinite;
  -moz-animation: blink 0.7s infinite;
  animation: blink 0.7s infinite;
}

/*Custom cursor animation*/
@keyframes blink {
  0% {
    opacity: 0.85;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0.85;
  }
}
@-webkit-keyframes blink {
  0% {
    opacity: 0.85;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0.85;
  }
}
@-moz-keyframes blink {
  0% {
    opacity: 0.85;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0.85;
  }
}
/* ### Two Column Grid
---------------------------------------------------------------------- */
.block-two-column-grid .gridcontainer {
  position: relative;
}
.block-two-column-grid .gridcontainer section > * + * {
  margin-top: var(--margin-s);
}
.block-two-column-grid .gridcontainer .flexgrid-text {
  max-width: 65ch;
}
.block-two-column-grid .gridcontainer .flexgrid-video.crop-video {
  height: 100%;
}
.block-two-column-grid .gridcontainer.has-top-line::before {
  position: absolute;
  content: "";
  left: 0;
  top: calc(var(--margin-m) * -1);
  width: 100%;
  height: 2px;
  background-color: #FBA919;
}
.block-two-column-grid .gridcontainer.has-column-line {
  gap: calc(calc(1.28em + (1.2vw)) * 2);
  gap: var(--margin-xl);
}
.block-two-column-grid .gridcontainer.has-column-line section:first-child {
  position: relative;
}
.block-two-column-grid .gridcontainer.has-column-line section:first-child::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: calc(var(--margin-m) * -1);
  height: 2px;
  width: 100%;
  background-color: #FBA919;
}
.block-two-column-grid .column-left .flexgrid-text {
  margin-left: auto;
}

@media only screen and (min-width: 48em) {
  .block-two-column-grid .gridcontainer.has-column-line section:first-child::after {
    top: -1em;
    left: unset;
    bottom: unset;
    right: calc(var(--margin-m) * -1);
    width: 2px;
    height: calc(100% + 1em);
  }
}
/* ### Subscriptions Columns
---------------------------------------------------------------------- */
.block-subscriptions {
  margin-bottom: var(--margin-s);
}
.block-subscriptions header h3 {
  text-align: center;
}
.block-subscriptions .subscription-price {
  font-size: var(--font-size-xxl);
  text-align: center;
  padding-bottom: var(--margin-xs);
  margin-bottom: var(--margin-xs);
  border-bottom: 1px solid var(--color-tint);
}
.block-subscriptions section {
  background-color: var(--color-secondary);
  padding: var(--margin-s);
}

/* ### Subscriptions Table
---------------------------------------------------------------------- */
.block-subscriptions-table {
  display: none;
  margin-bottom: var(--margin-s);
}
@media only screen and (min-width: 64em) {
  .block-subscriptions-table {
    display: block;
  }
}
.block-subscriptions-table thead span {
  color: var(--color-active);
}
.block-subscriptions-table thead th {
  vertical-align: bottom;
  padding: var(--margin-xxs);
}
.block-subscriptions-table tbody tr:nth-child(odd) {
  background-color: var(--color-secondary);
}
.block-subscriptions-table tbody td {
  padding: var(--margin-xxs);
}
.block-subscriptions-table tbody .point-mark {
  display: flex;
  border-radius: 2em;
  background-color: var(--color-active);
  height: 2em;
  width: 2em;
  justify-content: center;
  align-items: center;
  font-weight: bold;
}
.block-subscriptions-table .table-notes {
  margin-top: var(--margin-s);
  font-size: var(--font-size-s);
}

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

body {
  font-family: var(--font-default);
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  color: var(--color-body-text);
  background-color: var(--color-body-background);
  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;
  border: none;
  box-shadow: 0 0 10px 1px rgba(239, 64, 92, 0.25), 0 0 0 0px rgba(239, 64, 92, 0.1);
}

a.mail-link,
a:not([class]) {
  color: var(--color-body-link);
  font-weight: 400;
  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.mail-link:hover, a.mail-link:focus,
a:not([class]):hover,
a:not([class]):focus {
  color: var(--color-body-link-hover);
}

p {
  margin-bottom: 0;
}

mark {
  background: var(--color-body-mark-background);
  color: var(--color-body-mark-text);
  padding: 0 2px;
}

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

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

ol li {
  counter-increment: li;
}

ol li::before {
  font-family: var(--font-headline);
  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 var(--color-shade);
  clear: both;
  margin: 20px 0;
}

b,
strong {
  font-family: var(--font-bold);
  font-weight: 800;
}

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

blockquote {
  font-size: var(--font-size-l);
  line-height: var(--line-height-m);
  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: var(--font-size-m);
  line-height: var(--line-height-m);
  font-weight: 400;
  font-style: normal;
}

.large_font_size {
  font-size: var(--font-size-l);
  line-height: var(--line-height-m);
}

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

figcaption {
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 0.5em 1em;
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  color: var(--color-tint);
  background-color: rgba(0, 11, 18, 0.5);
}

/* ## Headings
---------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-headline);
  margin-bottom: 0;
}

h1 {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-s);
}

h2 {
  font-size: var(--font-size-h2);
  line-height: var(--line-height-s);
}

h3 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-s);
}

h4 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-s);
}

h5 {
  font-size: var(--font-size-h5);
  line-height: var(--line-height-s);
}

h6 {
  font-size: var(--font-size-h6);
  line-height: var(--line-height-s);
}

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: 800;
}

/* ## 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-top: var(--margin-xxs);
  padding: 0;
}

legend {
  display: none;
}

label,
.gform_wrapper.gravity-theme .gfield_label {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  font-weight: bold;
}

input,
textarea,
select,
select[multiple] {
  border: 0.1em solid var(--color-ground-shade-20);
  background-color: var(--color-tint);
  -webkit-border-radius: 0.5em;
  -moz-border-radius: 0.5em;
  border-radius: 0.5em;
  padding: 0.75em 1em;
  width: 100%;
}
select[multiple] {
  height: auto;
}
select[multiple] option:checked {
  background-color: var(--color-active-tint-80);
}

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: 1.3em;
  height: 1.3em;
  border: 2px solid var(--color-ground-shade-40);
  border-radius: 100%;
  background: var(--color-tint);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

[type=radio]:checked + label:after,
[type=radio]:not(:checked) + label:after {
  content: "";
  width: 0.5em;
  height: 0.5em;
  background: var(--color-ground-shade-40);
  position: absolute;
  top: 0.375em;
  left: 0.375em;
  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 var(--color-ground-shade-40);
  background: var(--color-tint);
  -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: var(--color-ground-shade-40);
  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 */
.gfield_checkbox {
  font-size: var(--font-size-xs);
  font-weight: bold;
}

::-moz-placeholder,
::-webkit-input-placeholder {
  color: var(--color-shade-tint-40);
}

/*
.button{
	display: block;
	padding: .6em 1.5em;
	text-align: left;
	width: auto;
	min-width: 180px;
	line-height: var(--line-height-s);
	text-decoration: none;
	text-transform: uppercase;
	color: $g_font-button-background-color;
	border-left: 5px solid $g_font-button-background-color;
	box-shadow: inset 0 0 0 $g_font-button-background-color;
	-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;
	&:hover{
		color: tint($g_font-button-background-color, 100%);
		box-shadow: inset 280px 0 0 $g_font-button-background-color;
	}
	&.button-primary{
		color: $g_font-button-primary-background-color;
		border-left: 5px solid $g_font-button-primary-background-color;
		box-shadow: inset 0 0 0 $g_font-button-primary-background-color;
		&:hover{
			color: tint($g_font-button-primary-background-color, 100%);
			box-shadow: inset 280px 0 0 $g_font-button-primary-background-color;
		}
	}
	&.button-info{
		color: $g_font-button-info-background-color;
		border-left: 5px solid $g_font-button-info-background-color;
		box-shadow: inset 0 0 0 $g_font-button-info-background-color;
		&:hover{
			color: tint($g_font-button-info-background-color, 100%);
			box-shadow: inset 280px 0 0 $g_font-button-info-background-color;
		}
	}
	&.button-alert{
		color: $g_font-button-alert-background-color;
		border-left: 5px solid $g_font-button-alert-background-color;
		box-shadow: inset 0 0 0 $g_font-button-alert-background-color;
		&:hover{
			color: tint($g_font-button-alert-background-color, 100%);
			box-shadow: inset 280px 0 0 $g_font-button-alert-background-color;
		}
	}
}

.button-active{
	border: 0;
	cursor: pointer;
	font-size: var(--font-size-m);
	line-height: var(--line-height-m);
	color: $g_font-button-color;
	text-align: center;
	text-decoration: none;
	background-color: $g_font-button-background-color;
	@include corners($g_font-button_radius);
	padding: .6em 1.5em;
	width: auto;
	border-left: 0px solid $g_font-button-background-color;
	box-shadow: inset 0 0 0 $g_font-button-background-color;
	-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;
	&:hover,
	&:focus{
		color: $g_font-button-color-hover;
		background-color: $g_font-button-background-color-hover;
	}
}
*/
button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 0;
  cursor: pointer;
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  font-family: var(--font-bold);
  line-height: var(--line-height-s);
  font-weight: 500;
  color: var(--color-button-text);
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  background-color: var(--color-button-back);
  border-radius: 0.5em;
  padding: 1em 1.5em 0.7em;
  width: auto;
  min-width: 10em;
}
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: var(--color-button-text);
  background-color: var(--color-button-back-hover);
}
button.disabled,
input[type=button].disabled,
input[type=reset].disabled,
input[type=submit].disabled {
  color: #FCFCF0;
  background-color: rgb(216.6, 217.4, 219.8);
  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: #FCFCF0;
  background-color: rgb(216.6, 217.4, 219.8);
}
button.button-primary,
input[type=button].button-primary,
input[type=reset].button-primary,
input[type=submit].button-primary {
  color: #FCFCF0;
  background-color: #BE3C27;
}
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: #FCFCF0;
  background-color: rgb(203, 99, 82.2);
}
button.button-info,
input[type=button].button-info,
input[type=reset].button-info,
input[type=submit].button-info {
  color: #FCFCF0;
  background-color: #3F434F;
}
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: #FCFCF0;
  background-color: rgb(101.4, 104.6, 114.2);
}
button.button-alert,
input[type=button].button-alert,
input[type=reset].button-alert,
input[type=submit].button-alert {
  color: #FCFCF0;
  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: #FCFCF0;
  background-color: rgb(255, 112.6, 135.8);
}

/* ### Gravity form
--------------------------------------------- */
.gform_anchor {
  margin-top: 0 !important;
}

.gform_confirmation_wrapper {
  padding: var(--margin-s);
  background: var(--color-active);
  font-size: var(--font-size-l);
  font-family: var(--font-bold);
}

.gform_wrapper.gravity-theme .gform_validation_container, body .gform_wrapper.gravity-theme .gform_body .gform_fields .gfield.gform_validation_container, body .gform_wrapper.gravity-theme .gform_fields .gfield.gform_validation_container, body .gform_wrapper.gravity-theme .gform_validation_container {
  display: none !important;
  left: -9000px;
  position: absolute !important;
}

.gform_wrapper.gravity-theme .gfield_checkbox label,
.gform_wrapper.gravity-theme .gfield_radio label {
  display: inline-block;
  font-size: unset;
}

.gform_body div span label {
  display: flow-root;
  font-size: var(--font-size-xs);
  line-height: var(--line-height-m);
  text-transform: none;
  margin-bottom: calc(1.2 * 1.2rem);
}

.gform_legacy_markup_wrapper .gfield_radio li label {
  margin: unset;
  padding-left: 2em;
}

.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-start;
  margin-top: var(--margin-xs);
}

.gfield_required {
  color: var(--color-primary);
}
.gfield_required .gfield_required_text {
  margin-left: 0.5em;
  font-size: var(--font-size-xs);
  font-weight: normal;
}

h2.gform_submission_error.hide_summary {
  font-size: var(--font-size-0);
  color: var(--color-tint);
  line-height: 1.4;
  padding: var(--margin-xxxs);
  background-color: var(--color-alert);
}

.gfield_error input[type=text],
.gfield_error input[type=email],
.gfield_error input[type=number] {
  border: 2px solid var(--color-alert);
}

.validation_message {
  background-color: var(--color-alert);
  color: var(--color-tint);
  margin-top: 5px;
  padding: 10px 15px;
  animation: fadeIn 0.3s ease-in-out both;
}

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

td,
th {
  text-align: left;
}

/* ## 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: var(--color-shade);
  background: var(--color-tint);
  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;
}

.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;
  display: none;
  z-index: 200;
}

@supports (display: grid) {
  .site-container {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas: "site-header" "site-inner" "site-footer";
  }
  .site-container .site-header {
    grid-area: site-header;
  }
  .site-container .site-inner {
    grid-area: site-inner;
  }
  .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;
  hyphens: auto;
}

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

/* ## Content Entry
---------------------------------------------------------------------- */
.entry-content > * + * {
  margin-top: var(--margin-s);
}

.entry-content {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}

.content .entry {
  max-width: var(--measure-0);
  width: 90%;
  margin: 0px auto;
}
.content .entry .entry-header .wrap {
  width: 100%;
  max-width: var(--content-width);
  margin-left: auto;
  margin-right: auto;
}

.page-template-default .entry-header .typed-cursor {
  font-family: var(--font-default);
  visibility: hidden;
}

.genesis-title-hidden .typed-title,
.genesis-title-hidden .typed-cursor {
  display: none;
}

.genesis-title-hidden .wrap.title-wrap {
  height: 0 !important;
}

/* ## Archive Entry
---------------------------------------------------------------------- */
.archive .content .entry .entry-header {
  padding-top: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.archive .content .entry .entry-header .entry-title {
  margin-bottom: 0;
  font-size: clamp(3.90625rem + 0.125vw, 6vw, 8vw);
  line-height: 1.2;
}

/* ## Single Team Entry
---------------------------------------------------------------------- */
.block-team-member.alignfull {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.block-team-member.alignfull .team-header.alignfull,
.block-team-member.alignfull .team-content.alignfull {
  padding-left: var(--margin-m);
  padding-right: var(--margin-m);
}

.single-team .content p,
.single-team .content ul,
.single-team .content ol {
  max-width: var(--measure-0);
}
.single-team .content h2 {
  font-family: var(--font-bold);
  font-size: var(--font-size-h5);
  margin-bottom: 0;
  width: 100%;
  max-width: var(--measure-0);
  margin-bottom: var(--margin-xxs);
}
.single-team .team-header {
  padding-top: var(--margin-l);
  padding-bottom: var(--margin-l);
}
@media only screen and (min-width: 48em) {
  .single-team .team-header {
    padding-bottom: 0;
  }
}
.single-team .team-header .wrap {
  display: flex;
  flex-direction: column;
  gap: var(--margin-m);
  width: 100%;
  max-width: var(--content-width);
}
.single-team .team-header .wrap p {
  font-family: var(--font-default);
}
.single-team .team-header .wrap a {
  font-family: var(--font-default);
  color: var(--color-body-link);
}
.single-team .team-header .wrap a:hover {
  color: var(--color-body-link-hover);
}
.single-team .team-header .wrap .team-name {
  font-size: var(--font-size-h4);
  margin-bottom: 0;
}
.single-team .team-header .wrap .team-title {
  font-size: var(--font-size-l);
  line-height: 1;
}
.single-team .team-header .wrap .team-member {
  order: 2;
}
.single-team .team-header .wrap .team-member-portrait {
  order: 1;
}
.single-team .team-header .wrap .linedin {
  margin-top: 1.44em;
}
@media only screen and (min-width: 48em) {
  .single-team .team-header .wrap {
    flex-direction: row;
    align-items: center;
  }
  .single-team .team-header .wrap .team-member {
    order: 1;
    width: 50%;
  }
  .single-team .team-header .wrap .team-member-portrait {
    order: 2;
    width: 50%;
  }
}
.single-team .team-content {
  padding-top: var(--margin-l);
  padding-bottom: var(--margin-l);
  background-color: var(--color-secondary);
}
.single-team .team-content .wrap {
  width: 100%;
  max-width: var(--content-width);
}
@media only screen and (min-width: 48em) {
  .single-team .team-content .wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap: var(--site-margin);
  }
}
@media only screen and (min-width: 48em) {
  .single-team .team-content .wrap {
    grid-template-columns: 2fr 1fr;
  }
}
.single-team .team-aside {
  padding-top: var(--margin-l);
  background-color: var(--color-secondary);
}
@media only screen and (min-width: 48em) {
  .single-team .team-aside {
    padding-top: 0;
  }
}

/* ## Team Archive Entry
---------------------------------------------------------------------- */
.team-member-archive .content-sidebar-wrap {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: var(--measure-0);
}
.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: #FCFCF0;
  background-color: #54BB6E;
}
.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: var(--font-size-xs);
  line-height: var(--line-height-m);
  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: #54BB6E;
  fill: #54BB6E;
  background-color: #FCFCF0;
}
.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: #FCFCF0;
  fill: #FCFCF0;
  background-color: #54BB6E;
}

/* # 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: #FCFCF0;
  margin-bottom: calc(1.2 * 1.2em);
}
.breadcrumb [class^=icon-] {
  position: relative;
  top: 5px;
}

.breadcrumb .wrap {
  width: 90%;
}

.archive-description {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding-left: var(--margin-m);
  padding-right: var(--margin-m);
  margin-bottom: var(--margin-s);
}

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

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

.author-box-title {
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  margin-bottom: 5px;
}

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

/* ## Titles
---------------------------------------------------------------------- */
.archive-title {
  font-family: var(--font-default);
  font-size: clamp(3.1850496rem + 1.2vw / 10, 4vw, 7vw);
  line-height: var(--line-height-s);
  margin-bottom: 0;
}

.entry-title {
  line-height: var(--line-height-s);
  margin-bottom: 0;
}

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

.entry-title a {
  display: block;
}

.entry-title a:hover,
.entry-title a:focus {
  color: rgb(203, 99, 82.2);
}

.widget-title {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-s);
}

/* ## 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 calc(calc(1.28em + (1.2vw)) / 2) calc(calc(1.28em + (1.2vw)) / 2) 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
  margin: 0 0 calc(calc(1.28em + (1.2vw)) / 2) calc(calc(1.28em + (1.2vw)) / 2);
}

.wp-caption-text {
  margin-top: 5px;
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
}

.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;
}

/* ## Footer Widget
---------------------------------------------------------------------- */
.footer-widgets {
  position: relative;
  width: 100%;
  padding-top: var(--margin-m);
  padding-bottom: var(--margin-m);
  padding-left: var(--site-margin);
  padding-right: var(--site-margin);
  font-family: var(--font-regular);
  background-color: #FBA919;
}
.footer-widgets .wrap {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-template-rows: auto;
  gap: var(--margin-m);
  margin: 0 auto;
  width: 100%;
  max-width: var(--content-width);
}
.footer-widgets .widget-area {
  min-height: var(--margin-l);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-size: var(--font-size-s);
}

/* # 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-cell {
  width: 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: #54BB6E;
}

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

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

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

.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-arrow-right {
  fill: transparent;
  stroke: var(--color-shade);
  stroke-miterlimit: 10;
  stroke-width: 3em;
  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;
}

button.button-hire {
  display: block;
  position: relative;
  border: 0;
  cursor: pointer;
  font-family: var(--font-navigation);
  font-size: var(--font-size-xs);
  line-height: var(--line-height-m);
  font-weight: 700;
  text-transform: uppercase;
  color: #FCFCF0;
  text-align: center;
  text-decoration: none;
  background-color: #54BB6E;
  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  border-radius: 2em;
  padding: 0.4em 1.3em;
  width: auto;
  min-width: unset;
  border-left: 0px solid #54BB6E;
  box-shadow: inset 0 0 0 #54BB6E;
  -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.button-hire:hover, button.button-hire:focus {
  color: #FCFCF0;
  background-color: rgb(67.2, 149.6, 88);
}

.push-button {
  border-left: 2px solid #FCFCF0;
  margin-left: calc(calc(1.28em + (1.2vw)) / 2);
  padding-left: calc(calc(1.28em + (1.2vw)) / 2);
}

.overlay {
  position: fixed;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  top: -150%;
  left: 0;
  background: #FCFCF0;
  color: var(--color-shade);
  padding: calc(calc(1.28em + (1.2vw)) * 2);
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  z-index: 9999;
}
.overlay .wrap {
  width: 90%;
  max-width: 65ch;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: var(--margin-m);
  max-height: 100%;
  overflow-y: auto;
}
.overlay .wrap section {
  flex-basis: 350px;
  flex-grow: 1;
}
.overlay-open {
  top: 0;
}

.overlay .overlay-close {
  position: absolute;
  top: 10px;
  right: 10px;
  height: 40px;
  width: 40px;
  min-width: unset;
  background-color: #FBA919;
  border-radius: 20em;
  text-indent: -999em;
  transform: rotate(0deg);
  transition: all ease 400ms;
  opacity: 1;
  margin-top: 0;
  padding: 0;
  z-index: 500;
}
.overlay .overlay-close:before {
  content: "";
  position: absolute;
  display: block;
  top: 17px;
  left: 10px;
  height: 4px;
  width: 20px;
  border-radius: 2em;
  background-color: #54BB6E;
  transform: rotate(45deg);
  transition: all ease 400ms;
}
.overlay .overlay-close:before:hover {
  background-color: #FCFCF0;
}
.overlay .overlay-close:after {
  content: "";
  position: absolute;
  display: block;
  top: 17px;
  left: 10px;
  height: 4px;
  width: 20px;
  border-radius: 2em;
  background-color: #54BB6E;
  transform: rotate(-45deg);
  transition: all ease 400ms;
}

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

.cd-container {
  position: relative;
  padding: 2em 0 8em;
  margin-top: calc(calc(1.28em + (1.2vw)) / 2) !important;
  margin-bottom: 4em !important;
}

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

.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: var(--margin-m);
}

.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: #FBA919;
  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: #FBA919;
}

.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 */
.timeline-header {
  position: relative;
  width: 47%;
  margin-bottom: calc(calc(1.28em + (1.2vw)) / 2);
}
.timeline-header::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 4px;
  border-radius: 4px;
  background-color: #FBA919;
  right: 0;
  bottom: calc(var(--margin-m) * -0.5);
}
.timeline-header h3 {
  margin-bottom: 0;
  text-align: right;
}
.timeline-header.align-left {
  width: unset;
  margin-left: 60px;
}
.timeline-header.align-left h3 {
  text-align: left;
}
.timeline-header.align-left::after {
  width: 47%;
  left: 0;
}
.timeline-header.align-right {
  width: unset;
  margin-left: 0;
  margin-right: 60px;
}
.timeline-header.align-right::after {
  width: 47%;
}

.cd-timeline-content {
  position: relative;
  margin-left: 60px;
  padding-top: 3px;
}
.cd-timeline-content.time-content {
  padding-top: 45px;
}

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

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

.cd-timeline-content .cd-date {
  font-family: var(--font-black);
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  letter-spacing: 0.05em;
  color: #FCFCF0;
}

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

.cd-timeline-content p {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  max-width: 65ch;
}

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

.align-right .cd-timeline-content {
  margin-left: 0px;
  margin-right: 60px;
  text-align: right;
}

@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 .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);
  }
}
/* ### Cookieinformation
---------------------------------------------------------------------- */
#Coi-Renew {
  left: unset !important;
  right: 0 !important;
  width: 50px !important;
  height: 50px !important;
  opacity: 0.5;
}
@media only screen and (min-width: 48em) {
  #Coi-Renew {
    height: 60px !important;
    width: 60px !important;
  }
}

/* # Site Header
---------------------------------------------------------------------------------------------------- */
.site-header {
  position: relative;
  margin-top: 0px;
  padding-top: var(--margin-xs);
  padding-bottom: var(--margin-xs);
  padding-left: var(--site-margin);
  padding-right: var(--site-margin);
  width: 100%;
  background-color: var(--color-ground);
  -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);
}
.site-header .wrap {
  max-width: var(--content-width);
}
.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;
  align-items: baseline;
  margin: 0 auto;
}
@media only screen and (min-width: 48em) {
  .site-header > .wrap {
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
  }
}

/* ## Title Area
---------------------------------------------------------------------- */
.title-area {
  z-index: 100;
}
.header-full-width .title-area {
  float: left;
}

h1.site-title,
p.site-title {
  margin: 0;
  font-size: 0;
  line-height: 0;
  height: 0;
}

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

.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;
}

.site-logo {
  display: block;
}

.header-full-width .title-area,
.site-logo {
  width: 250px;
  height: 82px;
}
@media only screen and (min-width: 80em) {
  .header-full-width .title-area,
  .site-logo {
    width: 250px;
    height: 82px;
  }
}
@media only screen and (min-width: 155em) {
  .header-full-width .title-area,
  .site-logo {
    width: 280px;
    height: 60px;
  }
}

svg#logo {
  fill: var(--color-primary);
}

/* ## Before header
---------------------------------------------------------------------- */
.before-header {
  position: relative;
  float: left;
  padding: 0.556em 0;
  width: 100%;
  -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: 200;
}
.before-header .wrap {
  margin: 0 auto;
  max-width: var(--content-width);
}
.before-header a {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  letter-spacing: 1px;
  text-align: right;
  color: var(--color-tint);
  line-height: 1;
}
.before-header a:hover {
  color: #7d96b8;
}
.before-header li {
  display: block;
  margin-bottom: 0;
  text-align: right;
}
.before-header li.current-lang {
  display: none;
}

/* Site Navigation
---------------------------------------------------------------------------- */
.genesis-nav-menu {
  display: flex;
  gap: var(--margin-s);
  clear: both;
  line-height: 1;
  width: 100%;
}

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

.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: #FCFCF0;
  display: block;
  font-family: var(--font-navigation);
  font-size: var(--font-size-xl);
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
}

.genesis-nav-menu .button-hire {
  border-left: 2px solid #FCFCF0;
  padding-left: calc(calc(1.28em + (1.2vw)) / 2);
}
.genesis-nav-menu .button-hire a {
  border: 0;
  cursor: pointer;
  color: #FCFCF0;
  text-align: center;
  text-decoration: none;
  background-color: #54BB6E;
  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  border-radius: 2em;
  padding: 0.4em 1.3em;
  width: auto;
  border-left: 0px solid #54BB6E;
  box-shadow: inset 0 0 0 #54BB6E;
  -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;
}
.genesis-nav-menu .button-hire a:hover, .genesis-nav-menu .button-hire a:focus {
  color: #FCFCF0;
  background-color: rgb(67.2, 149.6, 88);
}

.current-page-ancestor a,
.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: #7D96B8;
  text-decoration: none;
}

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

.genesis-nav-menu .sub-menu::before {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #FCFCF0;
  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: #FCFCF0;
}

.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: 320px;
}

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

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

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

/* Header Menu
--------------------------------------------- */
.nav-primary .genesis-nav-menu .sub-menu {
  z-index: 9999;
}

.nav-primary .genesis-nav-menu .sub-menu a {
  font-family: var(--font-regular);
  font-size: var(--font-size-m);
  color: var(--color-shade);
  text-transform: none;
}

.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: var(--color-shade);
}

/* 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: #FCFCF0;
  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-weight: 700;
  margin-top: 20px;
}

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

.nav-secondary .genesis-nav-menu a {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
  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: #FCFCF0;
  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: 320px;
  margin-left: 0;
}

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

/* # Content Area
---------------------------------------------------------------------------------------------------- */
.site-inner img {
  -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;
}
/* ## Entries
---------------------------------------------------------------------- */
.gridcontainer p:last-child,
.entry-content p:last-child {
  margin-bottom: 0;
}

.gridcontainer ul,
.entry-content ul {
  margin-bottom: 0;
  margin-left: var(--margin-xxs);
}

.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: #3F434F;
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
}

.gridcontainer .row_headline {
  font-size: var(--font-size-entry-title);
  line-height: var(--line-height-s);
}

.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: #FBA919;
  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: #FCFCF0;
  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: #FCFCF0;
}
.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;
}

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

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

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

a.entry-author-link {
  color: var(--color-body-link);
  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: var(--color-body-link-hover);
  text-decoration: underline;
}

p.entry-meta {
  font-size: var(--font-size-xs);
  line-height: var(--line-height-m);
  margin-bottom: 0;
}

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

.entry-footer .entry-meta {
  border-top: 2px solid #FCFCF0;
  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: var(--font-size-s);
  line-height: var(--line-height-m);
  line-height: 1.2;
  color: #FCFCF0;
  background-color: #BE3C27;
  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: #FCFCF0;
  background-color: rgb(203, 99, 82.2);
  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: #FCFCF0;
}

.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: var(--color-shade-shade-90);
  border-radius: 0.5px;
  border: 1px solid var(--color-shade-shade-80);
}

.post-page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 10px;
  width: 46px;
  height: 46px;
  color: #3F434F;
  text-align: center;
  text-decoration: none;
  border-right: 1px solid var(--color-shade-shade-80);
}
.post-page-numbers.current {
  font-weight: 500;
  color: #54BB6E;
}
.post-page-numbers:first-child {
  margin-left: 20px;
}
.post-page-numbers:last-child {
  border-right: none;
}

a.post-page-numbers:hover {
  background-color: rgb(226.2, 226.8, 228.6);
}

/* ## Comments
---------------------------------------------------------------------- */
.comment-respond,
.entry-comments,
.entry-pings {
  display: flex;
  flex-direction: column;
  margin-bottom: var(--margin-s);
  padding-bottom: var(--margin-m);
  width: 90%;
  max-width: var(--measure-0);
  margin: 0 auto;
}

.logged-in-as {
  font-size: var(--font-size-s);
  line-height: var(--line-height-m);
}

.comment-header {
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
}

.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: #FCFCF0;
  padding: 24px;
}

/* ## Featured image
---------------------------------------------------------------------- */
.featured-image .before-header {
  background-color: transparent;
}

.featured-section {
  position: fixed;
  width: 100%;
  margin-top: 0px;
  background-attachment: scroll;
  background-color: #3F434F;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
}

.featured-image .site-inner {
  padding-top: 40px;
  margin-top: 100vh;
  margin-top: calc(var(--vh, 1vh) * 100);
}

.featured-section .image-section {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  width: 100%;
}
.featured-section .image-section .wrap {
  position: relative;
  width: 90%;
  padding: 40px 0;
  z-index: 200;
}
.featured-section .image-section .entry-title {
  position: relative;
  color: #FCFCF0;
  padding: 15px 0 0 20px;
  margin-bottom: 0;
}
.featured-section .image-section .entry-title::before, .featured-section .image-section .entry-title::after {
  position: absolute;
  content: "";
  transform: scale3d(1, 1, 1);
  top: 0;
  left: 0;
  background-color: #FCFCF0;
}
.featured-section .image-section .entry-title::before {
  width: 6px;
  height: 18px;
}
.featured-section .image-section .entry-title::after {
  width: 18px;
  height: 6px;
}

.image-section {
  background: linear-gradient(145deg, rgba(0, 57, 93, 0.75) 0%, rgba(0, 11, 18, 0) 100%);
}

/* # Content Archive Area Work
---------------------------------------------------------------------------------------------------- */
.archive-title-hidden {
  display: inline;
  margin: 0;
  font-size: 0;
  line-height: 0;
  height: 0;
  text-indent: -9999em;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
}

.typed-archive-title {
  display: inline;
  font-family: var(--font-black);
  font-size: clamp(3.1850496rem + 1.2vw / 10, 4vw, 7vw);
  line-height: 1;
  margin-bottom: 0;
}

.archive-description .typed-cursor {
  font-family: var(--font-black);
  font-size: clamp(3.1850496rem + 1.2vw / 10, 4vw, 7vw);
  visibility: hidden;
}

/* # Content Single Area Work
---------------------------------------------------------------------------------------------------- */
.entry-hidden {
  display: inline;
  margin: 0;
  font-size: 0;
  line-height: 0;
  height: 0;
  text-indent: -9999em;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
}

.typed-title {
  display: inline-block;
  font-family: var(--font-default);
  font-size: var(--font-size-xl);
  text-transform: uppercase;
  line-height: 1.1;
  margin-bottom: 0;
  max-width: 28ch;
  color: var(--color-tint);
}
.typed-title span {
  color: var(--color-active);
}

.work-single .entry-header .typed-cursor {
  font-family: var(--font-black);
  font-size: clamp(3.1850496rem + 1.2vw / 10, 4vw, 7vw);
  visibility: hidden;
}

.work-grid {
  position: relative;
  margin: calc(1.28em + (1.2vw)) 0;
}
.work-grid .work-info {
  position: relative;
}
.work-grid .work-info::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: calc(var(--margin-m) * -1);
  width: 100%;
  height: 2px;
  background-color: #FBA919;
}
.work-grid .work-info .wrap {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: var(--margin-xl);
}
.work-grid .work-client {
  position: relative;
  flex-basis: 100%;
  flex-grow: 1;
}
.work-grid .work-client::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: calc(var(--margin-m) * -1);
  width: 100%;
  height: 2px;
  background-color: #FBA919;
}
.work-grid .work-client h4 {
  margin-bottom: 0;
}
.work-grid .work-brief {
  flex-basis: 35ch;
  flex-grow: 1;
}
.work-grid .work-solution {
  flex-basis: 35ch;
  flex-grow: 1;
}
.work-grid .work-data-website {
  position: relative;
  margin-bottom: calc(calc(1.28em + (1.2vw)) * 2);
  margin-bottom: var(--margin-xl);
}
.work-grid .work-data-website::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: calc(var(--margin-m) * -1);
  width: 100%;
  height: 2px;
  background-color: #FBA919;
}
.work-grid .work-data-website h3 {
  line-height: unset;
}
.work-grid .work-data-website .section-link {
  margin-top: 0;
}
.work-grid .work-list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: calc(calc(1.28em + (1.2vw)) / 2) 0 0 0;
}
.work-grid .work-list li {
  flex-grow: 1;
  border-bottom: 2px solid #FBA919;
  margin-bottom: var(--margin-xs);
  padding-bottom: var(--margin-xs);
  padding-right: var(--margin-xxs);
}
.work-grid::before {
  position: absolute;
  content: "";
  left: var(--margin-m);
  top: calc(var(--margin-m) * -1);
  width: calc(100% - calc(1.28em + (1.2vw)) * 2);
  height: 2px;
  background-color: #FBA919;
}
.work-grid .work-data {
  margin-top: calc(calc(1.28em + (1.2vw)) * 2);
}

.previous,
.next {
  position: fixed;
  bottom: calc(calc(1.28em + (1.2vw)) * 2);
  display: inline-block;
  width: 14em;
  padding: calc(calc(1.28em + (1.2vw)) / 2);
  background-color: rgba(252, 252, 240, 0.55);
  border-top-right-radius: 8em;
  border-bottom-right-radius: 8em;
  z-index: 9000;
}
.previous a,
.next a {
  color: #3F434F;
}
.previous a:hover,
.next a:hover {
  text-decoration: none;
}
.previous-text,
.next-text {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.previous .left-icon,
.previous .right-icon,
.next .left-icon,
.next .right-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em;
  margin-right: 1.3em;
  background-color: #3F434F;
  border-radius: 8em;
  cursor: pointer;
}
.previous svg,
.next svg {
  height: 25px;
  width: 25px;
}

.previous {
  left: 0;
  transform: translateX(-8.4em);
}
.previous-text {
  text-align: left;
  justify-content: flex-end;
}
.previous .left-icon {
  margin-right: 0;
  margin-left: 1.3em;
}

.animation-float-left {
  -webkit-animation: float-left 6s ease-in-out both;
  -moz-animation: float-left 6s ease-in-out both;
  -o-animation: float-left 6s ease-in-out both;
  -ms-animation: float-left 6s ease-in-out both;
  animation: float-left 6s ease-in-out both;
}

@-webkit-keyframes float-left {
  0% {
    transform: translateX(-8.4em);
  }
  20% {
    transform: translateX(-8.4em);
  }
  40% {
    transform: translateX(0px);
  }
  80% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(-8.4em);
  }
}
.float-open-left {
  animation: float-open-left 0.6s ease-in-out both;
}

@-webkit-keyframes float-open-left {
  0% {
    transform: translateX(-8.4em);
  }
  100% {
    transform: translateX(0px);
  }
}
.float-close-left {
  animation: float-close-left 0.6s ease-in-out both;
}

@-webkit-keyframes float-close-left {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(-8.4em);
  }
}
.next {
  right: 0;
  border-top-left-radius: 8em;
  border-bottom-left-radius: 8em;
  border-top-right-radius: 0em;
  border-bottom-right-radius: 0em;
  transform: translateX(8.4em);
}

.animation-float-right {
  -webkit-animation: float-right 6s ease-in-out both;
  -moz-animation: float-right 6s ease-in-out both;
  -o-animation: float-right 6s ease-in-out both;
  -ms-animation: float-right 6s ease-in-out both;
  animation: float-right 6s ease-in-out both;
}

@-webkit-keyframes float-right {
  0% {
    transform: translateX(8.4em);
  }
  20% {
    transform: translateX(8.4em);
  }
  40% {
    transform: translateX(0px);
  }
  80% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(8.4em);
  }
}
.float-open-right {
  animation: float-open-right 0.6s ease-in-out both;
}

@-webkit-keyframes float-open-right {
  0% {
    transform: translateX(8.4em);
  }
  100% {
    transform: translateX(0px);
  }
}
.float-close-right {
  animation: float-close-right 0.6s ease-in-out both;
}

@-webkit-keyframes float-close-right {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(8.4em);
  }
}
@media only screen and (min-width: 48em) {
  .work-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    gap: var(--margin-m);
  }
  .work-grid .work-info {
    position: relative;
    grid-column: span 2;
    margin-bottom: unset;
  }
  .work-grid .work-info::after {
    top: calc(var(--type-scale) * -1em);
    left: unset;
    right: calc(var(--margin-m) / -2);
    width: 2px;
    height: calc(100% + var(--type-scale) * 1em);
  }
  .work-grid .work-data {
    margin-top: 0;
    grid-column: span 1;
  }
}
.gridcontainer.not-found-page {
  background-color: var(--color-secondary);
  grid-template-columns: 1fr;
  gap: 0;
}
.gridcontainer.not-found-page header {
  background-color: var(--color-shade);
  color: var(--color-tint);
  padding: 0 var(--site-margin);
  width: 100vw;
}
.gridcontainer.not-found-page header h1.row_headline {
  margin: 0 auto;
  width: 100%;
  max-width: var(--content-width);
}
.gridcontainer.not-found-page section {
  padding: 0 var(--site-margin);
}
.gridcontainer.not-found-page .wrap {
  width: 100%;
  max-width: var(--content-width);
  padding: var(--margin-l) 0;
}
.gridcontainer.not-found-page .wrap p {
  font-size: var(--font-size-l);
}
.gridcontainer.not-found-page .wrap a.section-link {
  display: block;
  margin-top: 0;
  font-family: var(--font-default);
  color: var(--color-shade);
  line-height: 1;
}
.gridcontainer.not-found-page .wrap a.section-link .icon-arrow-right {
  -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;
}
.gridcontainer.not-found-page .wrap a.section-link:hover {
  color: var(--color-primary);
}
.gridcontainer.not-found-page .wrap a.section-link:hover .icon-arrow-right {
  stroke: var(--color-primary);
  margin-left: 0.5em;
}

/* # Landing Page
---------------------------------------------------------------------------------------------------- */
body.landing-page {
  background-color: var(--color-ground);
  background-image: url("img/mega_zipper_left_ground-tint-40.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
body.landing-page .fullsize-svg img {
  width: 80vw;
  max-width: 640px;
}
body.landing-page .content .entry {
  margin-top: var(--margin-xl);
}

/* # Site Footer
---------------------------------------------------------------------------------------------------- */
.site-footer {
  position: relative;
  float: left;
  width: 100%;
  position: relative;
  background-color: #3F434F;
  font-size: var(--font-size-xs);
  line-height: var(--line-height-m);
  color: #FCFCF0;
  margin-top: var(--margin-s);
  padding: 15px 0;
  text-align: center;
  z-index: 50;
}

.site-footer p {
  margin-bottom: 0;
}

/* # Max Width Nav
---------------------------------------------------------------------------------------------------- */
@media only screen and (max-width: 47.938em) {
  body.fixed .site-container {
    position: fixed;
    overflow: auto;
    width: 100%;
  }
  body.fixed .nav-primary {
    background-color: #FBA919;
    height: 100%;
    overflow: scroll;
  }
  .genesis-responsive-menu .genesis-nav-menu .sub-menu a,
  .genesis-responsive-menu .genesis-nav-menu .sub-menu,
  .js .nav-primary {
    width: 100%;
  }
  .genesis-nav-menu li {
    float: none;
  }
  .genesis-nav-menu .sub-menu a {
    padding: var(--margin-xxs) 0;
  }
  .genesis-responsive-menu .wrap {
    padding: 83px 0;
    width: 90%;
  }
  .genesis-responsive-menu {
    display: none;
    position: relative;
  }
  .site-header > .wrap > .genesis-responsive-menu {
    position: absolute;
    top: -100vh;
    left: 0;
    margin: 0;
    width: 100vw;
    min-height: 100vh;
    z-index: 500;
    -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;
  }
  .site-header > .wrap > .genesis-responsive-menu.open {
    top: 0;
  }
  .menu-toggle,
  .sub-menu-toggle {
    border-width: 0;
    display: block;
    margin: 0 auto;
    overflow: hidden;
    text-align: center;
    visibility: visible;
    width: 43px;
    min-width: unset;
  }
  .menu-toggle:focus,
  .menu-toggle:hover,
  .sub-menu-toggle:focus,
  .sub-menu-toggle:hover {
    background: transparent;
    border-width: 0;
    box-shadow: none;
  }
  .js .genesis-nav-menu > .menu-item .sub-menu > .menu-item:first-child,
  .js .genesis-nav-menu > .menu-item > .sub-menu > .menu-item:last-child,
  .js .genesis-nav-menu .sub-menu a {
    background-color: transparent;
    color: #3F434F;
  }
  .js #genesis-mobile-nav-primary {
    position: absolute;
    bottom: 18px;
    right: var(--site-margin);
    height: 50%;
    width: 25px;
    min-width: unset;
    background-color: transparent;
    font-size: var(--font-size-s);
    line-height: var(--line-height-m);
    font-weight: 600;
    color: #FCFCF0;
    text-align: left;
    text-indent: -999em;
    text-shadow: none;
    border-radius: 0px;
    overflow: visible;
    -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;
    z-index: 600;
  }
  .js #genesis-mobile-nav-primary::before {
    position: absolute;
    display: block;
    content: "";
    background-color: #FCFCF0;
    height: 4px;
    width: 25px;
    border-radius: 2px;
    z-index: 1000;
    top: calc(50% - 5px);
    left: calc(50% - 12.5px);
    -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;
  }
  .js #genesis-mobile-nav-primary::after {
    position: absolute;
    display: block;
    content: "";
    background-color: #FCFCF0;
    height: 4px;
    width: 25px;
    border-radius: 2px;
    z-index: 1000;
    top: calc(50% + 2px);
    left: calc(50% - 12.5px);
    -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;
  }
  #genesis-mobile-nav-primary.activated {
    border-bottom-color: transparent;
    color: var(--color-primary);
  }
  #genesis-mobile-nav-primary.activated::before {
    background-color: var(--color-primary);
    top: calc(50% - 3px);
    transform: rotate(-45deg);
  }
  #genesis-mobile-nav-primary.activated::after {
    background-color: var(--color-primary);
    top: calc(50% - 3px);
    transform: rotate(45deg);
  }
  /*
  #genesis-mobile-nav-primary:focus,
  #genesis-mobile-nav-primary:hover {
      color: var(--color-active);
      &::before,
      &::after{
          background-color: var(--color-active);
      }
  }
  */
  .menu-toggle {
    position: relative;
    padding: 0;
    margin: 0;
    z-index: 1000;
  }
  .menu-toggle::before {
    margin-right: 5px;
    text-rendering: auto;
    vertical-align: bottom;
  }
  .sub-menu-toggle {
    background: transparent;
    float: right;
    padding: 10px;
    position: absolute;
    right: 0;
    top: -5px;
    z-index: 100;
  }
  .sub-menu-toggle::before {
    content: "";
    display: inline-block;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 9px solid var(--color-primary);
    transform: rotate(180deg);
    transition: transform 0.25s ease-in-out;
  }
  .sub-menu-toggle.activated::before {
    transform: rotate(0deg);
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item {
    display: block;
    float: none;
    position: relative;
    text-align: left;
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item:focus,
  .genesis-responsive-menu .genesis-nav-menu .menu-item:hover {
    position: relative;
  }
  .genesis-responsive-menu .genesis-nav-menu a:focus,
  .genesis-responsive-menu .genesis-nav-menu a:hover,
  .genesis-responsive-menu .genesis-nav-menu .sub-menu .menu-item a:focus,
  .genesis-responsive-menu .genesis-nav-menu .sub-menu .menu-item a:hover,
  .genesis-responsive-menu.nav-primary .genesis-nav-menu .sub-menu .current-menu-item > a {
    color: var(--color-primary);
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item a,
  .genesis-responsive-menu .toggle-header-search {
    border: none;
    margin-bottom: 1px;
    width: calc(100% - 50px);
    text-transform: uppercase;
  }
  .genesis-responsive-menu.nav-primary .genesis-nav-menu .sub-menu a {
    color: #3F434F;
  }
  .genesis-nav-menu > .menu-item .sub-menu > .menu-item:first-child {
    padding-top: 0;
  }
  .genesis-nav-menu > .menu-item .sub-menu > .menu-item:last-child {
    padding-bottom: 5px;
  }
  .genesis-responsive-menu .genesis-nav-menu .sub-menu::after,
  .genesis-responsive-menu .genesis-nav-menu .sub-menu::before,
  .genesis-responsive-menu .genesis-nav-menu > .menu-item-has-children > a::after {
    content: none;
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item > a:focus ul.sub-menu,
  .genesis-responsive-menu .genesis-nav-menu .menu-item > a:focus ul.sub-menu .sub-menu {
    left: 0;
    margin-left: 0;
  }
  .genesis-responsive-menu .genesis-nav-menu .sub-menu {
    margin: 20px 0;
    clear: both;
    display: none;
    opacity: 1;
    position: static;
    width: 100%;
  }
  .genesis-responsive-menu .toggle-header-search {
    display: none;
  }
  .genesis-nav-menu {
    flex-direction: column;
  }
  .genesis-nav-menu a {
    color: var(--color-shade);
    font-family: var(--font-regular);
    font-size: var(font-size-m);
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item a {
    text-transform: none;
  }
}
/* # 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
  ---------------------------------------------------------------------- */
  /* ### Images and text block
  ---------------------------------------------------------------------- */
  .section-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .section-content .section-media,
  .section-content .section-text {
    width: calc(50% - calc(1.28em + (1.2vw)) / 2);
  }
  .section-content .section-media {
    order: 1;
  }
  .section-content .section-text {
    order: 2;
    margin-top: 0;
  }
  .section-content:nth-child(even) .section-media {
    order: 2;
  }
  .section-content:nth-child(even) .section-text {
    order: 1;
  }
  /* ### Flexible Grid block
  ---------------------------------------------------------------------- */
  .alignfull .has-left-right-margin {
    margin-left: var(--margin-m);
    margin-right: var(--margin-m);
  }
  .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.28em + (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: var(--margin-m);
    padding-left: var(--margin-m);
    padding-right: var(--margin-m);
  }
  .gridcontainer.has-column-gap section {
    padding: 0;
    margin-bottom: var(--margin-s);
  }
  .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.28em + (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.coll2 footer {
      grid-column: span 2;
    }
    .gridcontainer.coll3 {
      grid-template-columns: repeat(3, 1fr);
    }
    .gridcontainer.coll3.has-column-gap section {
      width: 100%;
    }
    .gridcontainer.coll3 section {
      width: 100%;
    }
    .gridcontainer.coll3 footer {
      grid-column: span 3;
    }
    .gridcontainer.coll4 {
      grid-template-columns: repeat(4, 1fr);
    }
    .gridcontainer.coll4.has-column-gap section {
      width: 100%;
    }
    .gridcontainer.coll4 section {
      width: 100%;
    }
    .gridcontainer.coll4 footer {
      grid-column: span 4;
    }
    .gridcontainer.has-column-gap {
      grid-gap: var(--margin-m);
    }
    .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: var(--margin-m);
    }
    .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.28em + (1.2vw)) / 2);
  }
  .block-two-column-grid .gridcontainer.coll2-3-1 section:last-child {
    width: calc(33% - calc(1.28em + (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.28em + (1.2vw)) / 2);
  }
  .block-two-column-grid .gridcontainer.coll2-1-3 section:last-child {
    width: calc(66% - calc(1.28em + (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:first-child,
    .block-two-column-grid .gridcontainer.coll2-3-1 section, .block-two-column-grid .gridcontainer.coll2-1-3 section:first-child,
    .block-two-column-grid .gridcontainer.coll2-1-3 section {
      width: auto;
    }
    .block-two-column-grid .gridcontainer.coll2-3-1 section:first-child:last-child,
    .block-two-column-grid .gridcontainer.coll2-3-1 section:last-child, .block-two-column-grid .gridcontainer.coll2-1-3 section:first-child: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;
    }
  }
  /* ## Site Inner
  ---------------------------------------------------------------------- */
  /* ## 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.28em + (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: var(--margin-m);
      margin-bottom: var(--margin-s);
      padding-bottom: var(--margin-m);
    }
    .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: flex;
    justify-content: space-between;
  }
  .footer-widget-area {
    width: calc(33% - 30px);
  }
  @supports (display: grid) {
    .footer-widgets .wrap {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
    }
    .footer-widget-area {
      width: 100%;
    }
  }
}
/* # Min Width Tablet Big
---------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 64em) {
  :root {
    --site-margin: var(--margin-l);
  }
  /* ### 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);
    }
  }
  .gridcontainer .flexgrid-text img.alignleft,
  .gridcontainer .flexgrid-text img.alingright,
  .gridcontainer .flexgrid-text figure.alignleft,
  .gridcontainer .flexgrid-text figure.alingright {
    max-width: 50%;
  }
  /* ## 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) {
  :root {
    --site-margin: var(--margin-xl);
  }
  /* ### 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
  ---------------------------------------------------------------------- */
  /* ### 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
  ---------------------------------------------------------------------- */
  /* ### Images and text block
  ---------------------------------------------------------------------- */
  .block-images-text.alignfull .section-content {
    padding-left: 10%;
    padding-right: 10%;
  }
  @supports (display: grid) {
    .block-images-text.alignfull .section-content {
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      grid-template-rows: auto;
      grid-gap: var(--margin-m);
    }
    .block-images-text.alignfull .section-content .section-media {
      grid-column: 1/span 6;
      grid-row: 1/span 1;
      width: 100%;
    }
    .block-images-text.alignfull .section-content .section-text {
      position: relative;
      grid-column: 7/span 6;
      grid-row: 1/span 1;
      width: 100%;
    }
    .block-images-text.alignfull .section-content:nth-child(even) .section-media {
      grid-column: 7/span 6;
    }
    .block-images-text.alignfull .section-content:nth-child(even) .section-text {
      grid-column: 1/span 6;
    }
  }
}
/* # 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);
  }
  /* ### Images and text block
  ---------------------------------------------------------------------- */
  @supports (display: grid) {
    .block-images-text.alignfull .section-content .section-media {
      grid-column: 1/span 7;
    }
    .block-images-text.alignfull .section-content .section-text {
      grid-column: 8/span 5;
    }
    .block-images-text.alignfull .section-content:nth-child(even) .section-media {
      grid-column: 6/span 7;
    }
    .block-images-text.alignfull .section-content:nth-child(even) .section-text {
      grid-column: 1/span 5;
    }
  }
  /* ### 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
  ---------------------------------------------------------------------- */
}
