@charset "UTF-8";
/*---------------------------------------*		Styles et réglages globaux
\*---------------------------------------*/
/*------------------------------------*		Media queries breakpoints
\*------------------------------------*/
/*------------------------------------*		Layout
\*------------------------------------*/
/*------------------------------------*		Images and SVG dirs
\*------------------------------------*/
/*------------------------------------*		Z-indexes
\*------------------------------------*/
/*------------------------------------*		Easing
\*------------------------------------*/
/*!
 * ress.css • v1.0.1
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
	 # Global selectors
	 # ================================================================= */
html {
  box-sizing: border-box;
  overflow-y: scroll;
  /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%;
  /* iOS 8+ */
}

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

:before,
:after {
  vertical-align: inherit;
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
}

/* Remove margin, padding of all elements and set background-no-repeat as default */
* {
  margin: 0;
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  background-repeat: no-repeat;
  /* Set `background-repeat: no-repeat` to all elements */
}

/* # =================================================================
	 # General elements
	 # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
  display: none;
  /* Add the correct display in IE */
}

abbr[title] {
  text-decoration: none;
  /* Remove text decoration in Firefox 40+ */
  border-bottom: 1px dotted;
  /* Add a bordered underline effect in all browsers */
}

a {
  background-color: transparent;
  /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects;
  /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* Specify the font family of code elements */
}

b,
strong {
  font-weight: bolder;
  /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

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

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

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
	 # Forms
	 # ================================================================= */
input {
  border-radius: 0;
}

[type="number"] {
  width: auto;
  /* Firefox 36+ */
}

[type="search"] {
  -webkit-appearance: textfield;
  /* Safari 8+ */
  outline-offset: -2px;
  /* Correct the outline style in Safari */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* Safari 8 */
}

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  color: inherit;
  background-color: transparent;
  border-style: none;
}

/* Style select like a standard input */
select {
  -moz-appearance: none;
  /* Firefox 36+ */
  -webkit-appearance: none;
  /* Chrome 41+ */
}

select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor;
  /* Internet Explorer 11+ */
}

legend {
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */
  color: inherit;
  /* Correct the color inheritance from `fieldset` elements in IE */
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
}

::-webkit-file-upload-button {
  font: inherit;
  /* Change font properties to `inherit` in Chrome and Safari */
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS and Safari */
}

/* Correct the text style of placeholders in Chrome, Edge, and Safari */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/* # =================================================================
	 # Specify media element style
	 # ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
  /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block;
  /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
	 # Acessibility
	 # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~="screen"] {
    display: inherit;
  }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
	 # Selection
	 # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  text-shadow: none;
  color: #fff;
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
}

::selection {
  text-shadow: none;
  color: #fff;
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
}

/*------------------------------------*		Functions
\*------------------------------------*/
/**
 * A function helper to avoid having to type `map-get($layers, ...)`
 * Based on http://css-tricks.com/handling-z-index/
 * @param  {string} $layer The name of the z-index
 * @param  {number} $var   The modifier if needed
 * @return {number}        The corresponding z-index based on the $layers var
 */
/**
 * A function helper to avoid having to type `map-get($font-families, ...)` to output a given font-family
 * @param  {string} $font-family The name of the font-family
 * @return {string}              The corresponding font-family declaration
 */
/**
 * Remove units from the given number
 * @param  {number} $number The number with units
 * @return {number}
 */
/**
 * Create variables for the media queries
 * @param  {string} $breakpoint The breakpoint
 * @param  {string} $type       Type of media query (min or max)
 * @param  {string} $unit       The unit for the media queries (em or px)
 * @return {string}             A media query expression
 */
/**
 * Slightly lighten a color
 * @access public
 * @param {Color} $color - color to tint
 * @param {Number} $percentage - percentage of `$color` in returned color
 * @return {Color}
 */
/**
 * Slightly darken a color
 * @access public
 * @param  {color}  $color       color to shade
 * @param  {number} $percentage  percentage of `$color` in returned color
 * @return {Color}
 */
/**
 * Power function
 * @param  {number} $number Number to apply power
 * @param  {number} $exp    The exponant for the power
 * @return {number}         The powered number
 */
/**
 * Factorial function
 * @param  {number} $number The number to factorize
 * @return {number}         The factorised number
 */
/**
 * Pi reference
 * @return {number} Retrun PI with 11 decimals
 */
/**
 * Convert deg to rad
 * @param  {string} $angle The angle to convert
 * @return {number}        The unitless angle converted to rad
 */
/**
 * Calculate the sinus of an angle
 * @param  {string} $angle The angle to compute
 * @return {number}        The sinus of the given angle
 */
/**
 * Calculate the cosinus of an angle
 * @param  {string} $angle The angle to compute
 * @return {number}        The cosinus of the given angle
 */
/**
 * Calculate the tangent of an angle
 * @param  {string} $angle The angle to compute
 * @return {number}        The tangent of the given angle
 */
/*---------------------------------------*		Positions & dispositions
\*---------------------------------------*/
/*---------------------------------------*		Typographie
\*---------------------------------------*/
/**
 * Responsive typograhy
 * @author Mike Riethmuller http://codepen.io/MadeByMike/pen/YPJJYv
 * @param  {integer} $min-width: 0            The breakpoint minimum to activate the responsive typography
 * @param  {integer} $max-width: 2560         The breakpoint maximum to activate th responsive typography
 * @param  {integer} $min-font:  12           The minimum font-size for the element
 * @param  {integer} $max-font:  16           The maximum font-size for the element
 * @return {void}
 */
/*---------------------------------------*		Triangles
\*---------------------------------------*/
/*---------------------------------------*		SVG Responsive
\*---------------------------------------*/
/*
Utilitaire pour le padding hack qui permet d'avoir des fichiers `*.svg` responsive.
Plus d'infos ici : http://tympanus.net/codrops/2014/08/19/making-svgs-responsive-with-css/
*/
/*------------------------------------*		Gradients
\*------------------------------------*/
/**
 * Mixin printing a linear-gradient
 * as well as a plain color fallback
 * and the `-webkit-` prefixed declaration
 * @param {String | List | Angle} $direction - Linear gradient direction
 * @param {Arglist} $color-stops - List of color-stops composing the gradient
 */
/*------------------------------------*		Positionnement & Display
\*------------------------------------*/
.u-db {
  display: block !important;
}

.u-dn {
  display: none !important;
}

.u-dt {
  display: table !important;
}

.u-dtc {
  display: table-cell !important;
}

.u-dib {
  display: inline-block !important;
}

.u-di {
  display: inline !important;
}

.u-dh {
  display: inherit !important;
}

.u-df {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.u-cf:after {
  content: "";
  clear: both;
  display: block;
}

@media (min-width: 0em) {
  .u-db--xxs {
    display: block !important;
  }
  .u-dn--xxs {
    display: none !important;
  }
  .u-dt--xxs {
    display: table !important;
  }
  .u-dtc--xxs {
    display: table-cell !important;
  }
  .u-dib--xxs {
    display: inline-block !important;
  }
  .u-di--xxs {
    display: inline !important;
  }
  .u-dh--xxs {
    display: inherit !important;
  }
  .u-df--xxs {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-cf--xxs:after {
    content: "";
    clear: both;
    display: block;
  }
}

@media (min-width: 30em) {
  .u-db--xs {
    display: block !important;
  }
  .u-dn--xs {
    display: none !important;
  }
  .u-dt--xs {
    display: table !important;
  }
  .u-dtc--xs {
    display: table-cell !important;
  }
  .u-dib--xs {
    display: inline-block !important;
  }
  .u-di--xs {
    display: inline !important;
  }
  .u-dh--xs {
    display: inherit !important;
  }
  .u-df--xs {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-cf--xs:after {
    content: "";
    clear: both;
    display: block;
  }
}

@media (min-width: 48em) {
  .u-db--s {
    display: block !important;
  }
  .u-dn--s {
    display: none !important;
  }
  .u-dt--s {
    display: table !important;
  }
  .u-dtc--s {
    display: table-cell !important;
  }
  .u-dib--s {
    display: inline-block !important;
  }
  .u-di--s {
    display: inline !important;
  }
  .u-dh--s {
    display: inherit !important;
  }
  .u-df--s {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-cf--s:after {
    content: "";
    clear: both;
    display: block;
  }
}

@media (min-width: 62em) {
  .u-db--m {
    display: block !important;
  }
  .u-dn--m {
    display: none !important;
  }
  .u-dt--m {
    display: table !important;
  }
  .u-dtc--m {
    display: table-cell !important;
  }
  .u-dib--m {
    display: inline-block !important;
  }
  .u-di--m {
    display: inline !important;
  }
  .u-dh--m {
    display: inherit !important;
  }
  .u-df--m {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-cf--m:after {
    content: "";
    clear: both;
    display: block;
  }
}

@media (min-width: 80em) {
  .u-db--l {
    display: block !important;
  }
  .u-dn--l {
    display: none !important;
  }
  .u-dt--l {
    display: table !important;
  }
  .u-dtc--l {
    display: table-cell !important;
  }
  .u-dib--l {
    display: inline-block !important;
  }
  .u-di--l {
    display: inline !important;
  }
  .u-dh--l {
    display: inherit !important;
  }
  .u-df--l {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-cf--l:after {
    content: "";
    clear: both;
    display: block;
  }
}

@media (min-width: 90em) {
  .u-db--xl {
    display: block !important;
  }
  .u-dn--xl {
    display: none !important;
  }
  .u-dt--xl {
    display: table !important;
  }
  .u-dtc--xl {
    display: table-cell !important;
  }
  .u-dib--xl {
    display: inline-block !important;
  }
  .u-di--xl {
    display: inline !important;
  }
  .u-dh--xl {
    display: inherit !important;
  }
  .u-df--xl {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-cf--xl:after {
    content: "";
    clear: both;
    display: block;
  }
}

@media (min-width: 120em) {
  .u-db--xxl {
    display: block !important;
  }
  .u-dn--xxl {
    display: none !important;
  }
  .u-dt--xxl {
    display: table !important;
  }
  .u-dtc--xxl {
    display: table-cell !important;
  }
  .u-dib--xxl {
    display: inline-block !important;
  }
  .u-di--xxl {
    display: inline !important;
  }
  .u-dh--xxl {
    display: inherit !important;
  }
  .u-df--xxl {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-cf--xxl:after {
    content: "";
    clear: both;
    display: block;
  }
}

/*------------------------------------*		Typographie
\*------------------------------------*/
.u-tac {
  text-align: center !important;
}

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

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

@media (min-width: 0em) {
  .u-tac--xxs {
    text-align: center !important;
  }
  .u-tal--xxs {
    text-align: left !important;
  }
  .u-tar--xxs {
    text-align: right !important;
  }
}

@media (min-width: 30em) {
  .u-tac--xs {
    text-align: center !important;
  }
  .u-tal--xs {
    text-align: left !important;
  }
  .u-tar--xs {
    text-align: right !important;
  }
}

@media (min-width: 48em) {
  .u-tac--s {
    text-align: center !important;
  }
  .u-tal--s {
    text-align: left !important;
  }
  .u-tar--s {
    text-align: right !important;
  }
}

@media (min-width: 62em) {
  .u-tac--m {
    text-align: center !important;
  }
  .u-tal--m {
    text-align: left !important;
  }
  .u-tar--m {
    text-align: right !important;
  }
}

@media (min-width: 80em) {
  .u-tac--l {
    text-align: center !important;
  }
  .u-tal--l {
    text-align: left !important;
  }
  .u-tar--l {
    text-align: right !important;
  }
}

@media (min-width: 90em) {
  .u-tac--xl {
    text-align: center !important;
  }
  .u-tal--xl {
    text-align: left !important;
  }
  .u-tar--xl {
    text-align: right !important;
  }
}

@media (min-width: 120em) {
  .u-tac--xxl {
    text-align: center !important;
  }
  .u-tal--xxl {
    text-align: left !important;
  }
  .u-tar--xxl {
    text-align: right !important;
  }
}

/*------------------------------------*		Accessibilité
\*------------------------------------*/
/**
 * A class to hide labels and stuff
 * for accessibility
 * @author Facebook Accessibility Team
 * @source https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */
.u-accessible-item {
  position: absolute;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

.js-lazy {
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
  opacity: 0;
}

.js-lazy.is-loaded {
  opacity: 1;
}

body.fancybox-active {
  overflow: hidden;
}

body.fancybox-iosfix {
  position: fixed;
  left: 0;
  right: 0;
}

.fancybox-is-hidden {
  position: absolute;
  top: -9999px;
  left: -9999px;
  visibility: hidden;
}

.fancybox-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99992;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.fancybox-inner {
  width: 100%;
  height: 100%;
}

.fancybox-outer {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  -webkit-transition-duration: inherit;
          transition-duration: inherit;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
          transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.87;
  -webkit-transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
          transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption-wrap {
  position: absolute;
  direction: ltr;
  z-index: 99997;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .25s, visibility 0s linear .25s;
  transition: opacity .25s, visibility 0s linear .25s;
  box-sizing: border-box;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption-wrap {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity .25s, visibility 0s;
  transition: opacity .25s, visibility 0s;
}

.fancybox-infobar {
  top: 0;
  left: 0;
  font-size: 13px;
  padding: 0 10px;
  height: 44px;
  min-width: 44px;
  line-height: 44px;
  color: #ccc;
  text-align: center;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: subpixel-antialiased;
  mix-blend-mode: exclusion;
}

.fancybox-toolbar {
  top: 0;
  right: 0;
  margin: 0;
  padding: 0;
}

.fancybox-stage {
  overflow: hidden;
  direction: ltr;
  z-index: 99994;
  -webkit-transform: translate3d(0, 0, 0);
}

.fancybox-is-closing .fancybox-stage {
  overflow: visible;
}

.fancybox-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: auto;
  outline: none;
  white-space: normal;
  box-sizing: border-box;
  text-align: center;
  z-index: 99994;
  -webkit-overflow-scrolling: touch;
  display: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition-property: opacity, -webkit-transform;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.fancybox-slide::before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: visible;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--video iframe {
  background: #000;
}

.fancybox-slide--map .fancybox-content,
.fancybox-slide--map iframe {
  background: #E5E3DF;
}

.fancybox-slide--next {
  z-index: 99995;
}

.fancybox-slide > * {
  display: inline-block;
  position: relative;
  padding: 24px;
  margin: 44px 0 44px;
  border-width: 0;
  vertical-align: middle;
  text-align: left;
  background-color: #fff;
  overflow: auto;
  box-sizing: border-box;
}

.fancybox-slide > title,
.fancybox-slide > style,
.fancybox-slide > meta,
.fancybox-slide > link,
.fancybox-slide > script,
.fancybox-slide > base {
  display: none;
}

.fancybox-slide .fancybox-image-wrap {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  border: 0;
  z-index: 99995;
  background: transparent;
  cursor: default;
  overflow: visible;
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition-property: opacity, -webkit-transform;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.fancybox-can-zoomOut .fancybox-image-wrap {
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-image-wrap {
  cursor: zoom-in;
}

.fancybox-can-drag .fancybox-image-wrap {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-dragging .fancybox-image-wrap {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-image,
.fancybox-spaceball {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  max-width: none;
  max-height: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--iframe .fancybox-content {
  padding: 0;
  width: 80%;
  height: 80%;
  max-width: calc(100% - 100px);
  max-height: calc(100% - 88px);
  overflow: visible;
  background: #fff;
}

.fancybox-iframe {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}

.fancybox-error {
  margin: 0;
  padding: 40px;
  width: 100%;
  max-width: 380px;
  background: #fff;
  cursor: default;
}

.fancybox-error p {
  margin: 0;
  padding: 0;
  color: #444;
  font-size: 16px;
  line-height: 20px;
}

/* Buttons */
.fancybox-button {
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 10px;
  border: 0;
  border-radius: 0;
  background: rgba(30, 30, 30, 0.6);
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
  cursor: pointer;
  outline: none;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:focus,
.fancybox-button:hover {
  color: #fff;
}

.fancybox-button[disabled] {
  color: #ccc;
  cursor: default;
  opacity: 0.6;
}

.fancybox-button svg {
  display: block;
  position: relative;
  overflow: visible;
  shape-rendering: geometricPrecision;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke: currentColor;
  stroke-linejoin: round;
  stroke-width: 3;
}

.fancybox-button--share svg path {
  stroke-width: 1;
}

.fancybox-button--play svg path:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg path:nth-child(1) {
  display: none;
}

.fancybox-button--zoom svg path {
  fill: transparent;
}

/* Navigation arrows */
.fancybox-navigation {
  height: 100%;
  display: none;
}

.fancybox-show-nav .fancybox-navigation {
  display: block;
}

.fancybox-navigation button {
  position: absolute;
  top: 50%;
  margin: -50px 0 0 0;
  z-index: 99997;
  background: transparent;
  width: 60px;
  height: 100px;
  padding: 17px;
}

.fancybox-navigation button:before {
  content: "";
  position: absolute;
  top: 30px;
  right: 10px;
  width: 40px;
  height: 40px;
  background: rgba(30, 30, 30, 0.6);
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
}

.fancybox-navigation .fancybox-button--arrow_right {
  right: 0;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  z-index: 10;
  cursor: pointer;
}

.fancybox-close-small:after {
  content: '×';
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
  font: 22px/30px Arial,"Helvetica Neue",Helvetica,sans-serif;
  color: #888;
  font-weight: 300;
  text-align: center;
  border-radius: 50%;
  border-width: 0;
  background-color: transparent;
  -webkit-transition: background-color .25s;
  transition: background-color .25s;
  box-sizing: border-box;
  z-index: 2;
}

.fancybox-close-small:focus {
  outline: none;
}

.fancybox-close-small:focus:after {
  outline: 1px dotted #888;
}

.fancybox-close-small:hover:after {
  color: #555;
  background: #eee;
}

.fancybox-slide--image .fancybox-close-small,
.fancybox-slide--iframe .fancybox-close-small {
  top: 0;
  right: -40px;
}

.fancybox-slide--image .fancybox-close-small:after,
.fancybox-slide--iframe .fancybox-close-small:after {
  font-size: 35px;
  color: #aaa;
}

.fancybox-slide--image .fancybox-close-small:hover:after,
.fancybox-slide--iframe .fancybox-close-small:hover:after {
  color: #fff;
  background: transparent;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-drag .fancybox-close-small {
  display: none;
}

/* Caption */
.fancybox-caption-wrap {
  bottom: 0;
  left: 0;
  right: 0;
  padding: 60px 2vw 0 2vw;
  background: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.1) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.6) 80%, rgba(0, 0, 0, 0.8) 100%);
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.1) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.6) 80%, rgba(0, 0, 0, 0.8) 100%);
  pointer-events: none;
}

.fancybox-caption {
  padding: 30px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  font-size: 14px;
  color: #fff;
  line-height: 20px;
  -webkit-text-size-adjust: none;
}

.fancybox-caption a,
.fancybox-caption button,
.fancybox-caption select {
  pointer-events: all;
  position: relative;
  /* Fix IE11 */
}

.fancybox-caption a {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-slide > .fancybox-loading {
  border: 6px solid rgba(100, 100, 100, 0.4);
  border-top: 6px solid rgba(255, 255, 255, 0.6);
  border-radius: 100%;
  height: 50px;
  width: 50px;
  -webkit-animation: fancybox-rotate .8s infinite linear;
  animation: fancybox-rotate .8s infinite linear;
  background: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -30px;
  margin-left: -30px;
  z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

/* Transition effects */
.fancybox-animated {
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
          transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-slide.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-slide.fancybox-slide--current {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  -webkit-transform: scale3d(1.5, 1.5, 1.5);
  transform: scale3d(1.5, 1.5, 1.5);
  opacity: 0;
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
  opacity: 0;
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  opacity: 1;
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  -webkit-transform: rotate(-360deg);
  -ms-transform: rotate(-360deg);
  transform: rotate(-360deg);
  opacity: 0;
}

.fancybox-fx-rotate.fancybox-slide--next {
  -webkit-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
  opacity: 0;
}

.fancybox-fx-rotate.fancybox-slide--current {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  opacity: 1;
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  -webkit-transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-circular.fancybox-slide--next {
  -webkit-transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-circular.fancybox-slide--current {
  -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
  opacity: 1;
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1);
}

/* Share */
.fancybox-share {
  padding: 30px;
  border-radius: 3px;
  background: #f4f4f4;
  max-width: 90%;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  margin: 0 0 20px 0;
  font-size: 35px;
  font-weight: 700;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

p.fancybox-share__links {
  margin-right: -10px;
}

.fancybox-share__button {
  display: inline-block;
  text-decoration: none;
  margin: 0 10px 10px 0;
  padding: 0 15px;
  min-width: 130px;
  border: 0;
  border-radius: 3px;
  background: #fff;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #fff;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  position: relative;
  top: -1px;
  width: 25px;
  height: 25px;
  margin-right: 7px;
  vertical-align: middle;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  box-sizing: border-box;
  width: 100%;
  margin: 10px 0 0 0;
  padding: 10px 15px;
  background: transparent;
  color: #5d5b5b;
  font-size: 14px;
  outline: none;
  border: 0;
  border-bottom: 2px solid #d7d7d7;
}

/* Thumbs */
.fancybox-thumbs {
  display: none;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 212px;
  margin: 0;
  padding: 2px 2px 4px 2px;
  background: #fff;
  -webkit-tap-highlight-color: transparent;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  box-sizing: border-box;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-y: hidden;
  overflow-x: auto;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs > ul {
  list-style: none;
  position: absolute;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  font-size: 0;
  white-space: nowrap;
}

.fancybox-thumbs-x > ul {
  overflow: hidden;
}

.fancybox-thumbs-y > ul::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y > ul::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y > ul::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs > ul > li {
  float: left;
  overflow: hidden;
  padding: 0;
  margin: 2px;
  width: 100px;
  height: 75px;
  max-width: calc(50% - 4px);
  max-height: calc(100% - 8px);
  position: relative;
  cursor: pointer;
  outline: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
}

li.fancybox-thumbs-loading {
  background: rgba(0, 0, 0, 0.1);
}

.fancybox-thumbs > ul > li > img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: none;
  max-height: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-thumbs > ul > li:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 4px solid #4ea7f9;
  z-index: 99991;
  opacity: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fancybox-thumbs > ul > li.fancybox-thumbs-active:before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 800px) {
  .fancybox-thumbs {
    width: 110px;
  }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }
  .fancybox-thumbs > ul > li {
    max-width: calc(100% - 10px);
  }
}

.form {
  padding-bottom: 40px;
}

@media (min-width: 48em) {
  .form {
    padding-bottom: 30px;
  }
}

.form [class*="grid__col"]:nth-child(1) .form-item.is-visible {
  -webkit-transition-delay: 0.06s;
          transition-delay: 0.06s;
}

.form [class*="grid__col"]:nth-child(2) .form-item.is-visible {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}

.form [class*="grid__col"]:nth-child(3) .form-item.is-visible {
  -webkit-transition-delay: 0.16s;
          transition-delay: 0.16s;
}

.form [class*="grid__col"]:nth-child(4) .form-item.is-visible {
  -webkit-transition-delay: 0.02s;
          transition-delay: 0.02s;
}

.form [class*="grid__col"]:nth-child(5) .form-item.is-visible {
  -webkit-transition-delay: 0.18s;
          transition-delay: 0.18s;
}

.form [class*="grid__col"]:nth-child(6) .form-item.is-visible {
  -webkit-transition-delay: 0.02s;
          transition-delay: 0.02s;
}

.form [class*="grid__col"]:nth-child(7) .form-item.is-visible {
  -webkit-transition-delay: 0.06s;
          transition-delay: 0.06s;
}

.form [class*="grid__col"]:nth-child(8) .form-item.is-visible {
  -webkit-transition-delay: 0.08s;
          transition-delay: 0.08s;
}

.form [class*="grid__col"]:nth-child(9) .form-item.is-visible {
  -webkit-transition-delay: 0.14s;
          transition-delay: 0.14s;
}

.form [class*="grid__col"]:nth-child(10) .form-item.is-visible {
  -webkit-transition-delay: 0.14s;
          transition-delay: 0.14s;
}

.form [class*="grid__col"]:nth-child(11) .form-item.is-visible {
  -webkit-transition-delay: 0.06s;
          transition-delay: 0.06s;
}

.form-item {
  margin: 10px 0;
}

.form-item.js-reveal {
  -webkit-transition: all 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: all 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  opacity: 0;
  -webkit-transform: translate3d(30px, 0, 0);
          transform: translate3d(30px, 0, 0);
}

.form-item.js-reveal.is-visible {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

span.wpcf7-not-valid-tip {
  display: none;
}

.form-text {
  border: 1px solid #e5e5e5;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #f2f2f2;
  height: 3.125em;
  line-height: 3.125em;
  border-radius: 1.5625em;
  padding: 0 35px;
  display: block;
  width: 100%;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.form-text.wpcf7-not-valid {
  border: 2px solid #fc465f;
  color: #fc465f;
}

.form-select:after {
  content: '';
  width: 0;
  height: 0;
  border-color: #222239 transparent transparent;
  border-style: solid;
  border-width: 5px 5px 0;
  position: absolute;
  top: 50%;
  margin-top: -2px;
  right: 16px;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.form-select select {
  border: 1px solid #e5e5e5;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #f2f2f2;
  height: 3.125em;
  line-height: 3.125em;
  border-radius: 1.5625em;
  padding: 0 35px;
  display: block;
  cursor: pointer;
  width: 100%;
}

.form-select:hover:after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}

.form-textarea {
  border: 1px solid #e5e5e5;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #f2f2f2;
  line-height: 1.5em;
  padding: 0.8em 35px;
  border-radius: 1.5625em;
  display: block;
  width: 100%;
  resize: none;
}

.form-textarea.wpcf7-not-valid {
  border: 2px solid #fc465f;
  color: #fc465f;
}

::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  opacity: 1;
}

::-moz-placeholder {
  /* Firefox 19+ */
  opacity: 1;
}

:-ms-input-placeholder {
  /* IE 10+ */
  opacity: 1;
}

:-moz-placeholder {
  /* Firefox 18- */
  opacity: 1;
}

.wpcf7-form:after {
  content: "";
  clear: both;
  display: block;
}

div.wpcf7-response-output {
  position: absolute;
  bottom: 10px;
  left: 0;
  border: 2px solid #60c3bd;
  height: 2.72rem;
  line-height: calc(2.72rem - 4px);
  -webkit-transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  border-radius: 1.5625em;
  padding: 0 35px;
  display: none;
  color: #60c3bd;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  margin: 0;
}

div.wpcf7-response-output.wpcf7-validation-errors {
  color: #fc465f;
  border-color: #fc465f;
}

@media (min-width: 0em) {
  div.wpcf7-response-output {
    right: 160px;
    left: 0.5rem;
  }
}

@media (min-width: 30em) {
  div.wpcf7-response-output {
    right: 160px;
    left: 0.5rem;
  }
}

@media (min-width: 48em) {
  div.wpcf7-response-output {
    right: 160px;
    left: 0.625rem;
  }
}

@media (min-width: 62em) {
  div.wpcf7-response-output {
    right: 160px;
    left: 0.625rem;
  }
}

@media (min-width: 80em) {
  div.wpcf7-response-output {
    right: 160px;
    left: 0.75rem;
  }
}

@media (min-width: 90em) {
  div.wpcf7-response-output {
    right: 160px;
    left: 0.75rem;
  }
}

@media (min-width: 120em) {
  div.wpcf7-response-output {
    right: 160px;
    left: 0.875rem;
  }
}

/*------------------------------------*		Pictogrammes
\*------------------------------------*/
.icon {
  display: inline-block;
  vertical-align: middle;
}

.icon svg {
  display: block;
}

.icon__dl2,
.icon__dl2 svg {
  width: 37px;
  height: 39px;
}

.icon__dl2 *,
.icon__dl2 svg * {
  fill: #FFF;
}

.icon__dl,
.icon__dl svg, .icon__fb,
.icon__fb svg, .icon__tw,
.icon__tw svg, .icon__insta,
.icon__insta svg, .icon__fullscreen,
.icon__fullscreen svg {
  width: 40px;
  height: 40px;
}

.icon__dl *,
.icon__dl svg *, .icon__fb *,
.icon__fb svg *, .icon__tw *,
.icon__tw svg *, .icon__insta *,
.icon__insta svg *, .icon__fullscreen *,
.icon__fullscreen svg * {
  fill: #FFF;
}

.icon__insta2,
.icon__insta2 svg {
  width: 26px;
  height: 26px;
}

.icon__insta2 *,
.icon__insta2 svg * {
  fill: #FFF;
}

.icon--cross {
  display: inline-block;
  width: 20px;
  height: 20px;
  vertical-align: middle;
}

.icon--cross:before, .icon--cross:after {
  content: '';
  width: 28px;
  height: 2px;
  background: #FFF;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -14px;
  margin-top: -1px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: all 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}

.icon--cross:after {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.icon--cross:hover:before,
a:hover .icon--cross:before {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.icon--cross:hover:after,
a:hover .icon--cross:after {
  -webkit-transform: rotate(315deg);
      -ms-transform: rotate(315deg);
          transform: rotate(315deg);
}

.fun {
  width: 100%;
  padding-top: 100%;
}

.fun:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: transparent url(../img/layout/bg-right.png) top left no-repeat;
  background-size: 100% auto;
}

.fun:after {
  content: '';
  width: 100%;
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  height: 100%;
  background: transparent url(../img/layout/svg1.png) top left no-repeat;
  background-size: 100% auto;
  -webkit-animation: fun 0.4s steps(3) infinite;
          animation: fun 0.4s steps(3) infinite;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  will-change: auto;
}

.fun.fun0:after {
  background-image: url(../img/layout/svg1.png);
  -webkit-animation: fun 0.4s steps(3) infinite;
          animation: fun 0.4s steps(3) infinite;
}

.fun-container:nth-of-type(1n + 3) .fun:after {
  background-image: url(../img/layout/svg2.png);
  -webkit-animation: fun 0.4s steps(3) infinite;
          animation: fun 0.4s steps(3) infinite;
}

.fun-container:nth-of-type(2n + 3) .fun:after {
  background-image: url(../img/layout/svg6.png);
  -webkit-animation: fun 0.4s steps(3) infinite;
          animation: fun 0.4s steps(3) infinite;
}

.fun-container:nth-of-type(2n + 3) .fun:before {
  background-image: url(../img/layout/bg-left.png);
}

.fun-container:nth-of-type(3n + 3) .fun:after {
  background-image: url(../img/layout/svg7.png);
  -webkit-animation: fun 0.4s steps(3) infinite;
          animation: fun 0.4s steps(3) infinite;
}

.fun-container:nth-of-type(3n + 3) .fun:before {
  background-image: url(../img/layout/bg-top.png);
}

.fun-container:nth-of-type(4n + 3) .fun:after {
  background-image: url(../img/layout/svg8.png);
  -webkit-animation: fun 0.4s steps(3) infinite;
          animation: fun 0.4s steps(3) infinite;
}

.fun-container:nth-of-type(4n + 3) .fun:before {
  background-image: url(../img/layout/bg-left.png);
}

@-webkit-keyframes fun {
  from {
    background-position: 0% 100%;
  }
}

@keyframes fun {
  from {
    background-position: 0% 100%;
  }
}

.media {
  width: 100%;
  padding-top: 100%;
  display: block;
  overflow: hidden;
  background-size: 100% 100%;
}

.media__item:nth-child(1n) .media__img.is-loaded {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.media__item:nth-child(2n) .media__img.is-loaded {
  -webkit-transition-delay: 0.062s;
          transition-delay: 0.062s;
}

.media__item:nth-child(3n) .media__img.is-loaded {
  -webkit-transition-delay: 0.036s;
          transition-delay: 0.036s;
}

.media__item:nth-child(4n) .media__img.is-loaded {
  -webkit-transition-delay: 0.243s;
          transition-delay: 0.243s;
}

.media__item:nth-child(5n) .media__img.is-loaded {
  -webkit-transition-delay: 0.04s;
          transition-delay: 0.04s;
}

.media__item:nth-child(6n) .media__img.is-loaded {
  -webkit-transition-delay: 0.025s;
          transition-delay: 0.025s;
}

.media:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background-size: 100% 100%;
  z-index: 11;
  opacity: 0;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.insta .media:after {
  display: none;
}

.media.img-is-loaded:after {
  opacity: 1;
}

.media:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 4;
  background: rgba(0, 0, 0, 0.68);
  opacity: 0;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  pointer-events: none;
}

.media:hover:before {
  opacity: 1;
}

.media:hover .media__hover a {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
}

.media:hover .media__hover a:nth-child(1) {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.media:hover .media__hover a:nth-child(2) {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}

.media:hover .media__hover a:nth-child(3) {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.media:hover .media__hover a:nth-child(4) {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.media:hover .media__hover a:nth-child(5) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.media:hover .media__hover a:nth-child(6) {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.media:hover .media__hover a:nth-child(7) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.media:hover .media__hover a:nth-child(8) {
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.media:hover .media__hover a:nth-child(9) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.media:hover .media__hover a:nth-child(10) {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.media:hover .media__hover a:nth-child(11) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.media__link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
}

.media__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  opacity: 0;
  -webkit-transform: scale3d(1.1, 1.1, 1);
          transform: scale3d(1.1, 1.1, 1);
  will-change: auto;
  -webkit-transition: all 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: all 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.media__img.is-loaded {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
}

.media__hover {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  z-index: 6;
  max-width: 100px;
  width: 100%;
  text-align: center;
}

.media__hover a {
  text-decoration: none;
  display: inline-block;
  padding: 0 4px;
  margin: 6px 0;
  text-align: center;
  top: 50%;
  position: relative;
  -webkit-transform: translate3d(0, -20%, 0);
          transform: translate3d(0, -20%, 0);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 0;
}

.media__hover a .icon {
  -webkit-transition: all 0.4s cubic-bezier(0.535, 1.65, 0.635, 1.005);
  transition: all 0.4s cubic-bezier(0.535, 1.65, 0.635, 1.005);
}

.media__hover a:hover .icon {
  -webkit-transform: scale3d(1.1, 1.1, 1);
          transform: scale3d(1.1, 1.1, 1);
}

.media__infos {
  position: absolute;
  z-index: 11;
  width: 100%;
  bottom: 0;
  left: 0;
  color: #FFF;
  padding: 20px 15px;
  opacity: 0;
  -webkit-transform: translate3d(0, 15px, 0);
          transform: translate3d(0, 15px, 0);
  -webkit-transition: all 0.4s ease 0.4s;
  transition: all 0.4s ease 0.4s;
  background: rgba(0, 0, 0, 0.7);
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.7) 0%, transparent 100%);
  background: linear-gradient(bottom, rgba(0, 0, 0, 0.7) 0%, transparent 100%);
}

.img-is-loaded .media__infos {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.media__infos .username {
  width: calc(100% - 32px);
}

.media__infos a {
  position: absolute;
  bottom: 15px;
  right: 20px;
}

.media__detail {
  height: 100vh;
  width: 100%;
}

.media__detail .u-dt {
  width: 100%;
  height: 100%;
  text-align: center;
}

.media__detail .u-dtc {
  vertical-align: middle;
}

.media__single {
  margin-top: 20px;
}

.media__single .media__infos {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  text-align: left;
  background: rgba(0, 0, 0, 0.2);
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.2) 0%, transparent 100%);
  background: linear-gradient(bottom, rgba(0, 0, 0, 0.2) 0%, transparent 100%);
}

.media__single figure {
  display: inline-block;
}

.media__single img {
  display: block;
  margin: auto;
  max-width: 100%;
}

.media__single .hover {
  margin: 22px 0;
}

.media__single .hover a {
  display: inline-block;
  margin: 0 10px;
}

.media__single .hover a:hover .icon * {
  fill: #FFF;
}

.media__single .hover .icon * {
  fill: rgba(255, 255, 255, 0.6);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.media__close {
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 11;
}

@media (min-width: 62em) {
  .media__close {
    top: 30px;
    right: 30px;
  }
}

.giforama-image {
  opacity: 1;
}

.iframe--insta {
  background: #FFF;
  color: #151310;
  text-align: center;
  min-height: auto;
  width: 640px;
  padding: 20px 30px;
  padding-top: 40px;
}

.iframe--insta h2 {
  font-size: 1.2em;
  text-transform: uppercase;
  font-weight: 500;
  margin: 1.1em 0;
}

.iframe--insta .form-text {
  margin-top: 1.6em;
  text-align: center;
}

.iframe--insta ::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  opacity: 0.5;
}

.iframe--insta ::-moz-placeholder {
  /* Firefox 19+ */
  opacity: 0.5;
}

.iframe--insta :-ms-input-placeholder {
  /* IE 10+ */
  opacity: 0.5;
}

.iframe--insta :-moz-placeholder {
  /* Firefox 18- */
  opacity: 0.5;
}

.btn {
  cursor: pointer;
  display: inline-block;
  font-size: 1em;
  font-weight: 700;
  line-height: 2.72rem;
  color: #FFF;
  padding: 0 28px;
}

.btn:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fc465f;
  border-radius: 1.36rem;
  will-change: auto;
}

.btn:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #685f93;
  border-radius: 1.36rem;
  -webkit-animation: multicolor 10s linear infinite;
          animation: multicolor 10s linear infinite;
  -webkit-transition: opacity 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: opacity 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  opacity: 0;
  will-change: auto;
}

@-webkit-keyframes multicolor {
  0% {
    background: #685f93;
  }
  16% {
    background: #fc465f;
  }
  32% {
    background: #f18482;
  }
  48% {
    background: #fdcb6e;
  }
  64% {
    background: #60c3bd;
  }
  78% {
    background: #93c5e8;
  }
  100% {
    background: #685f93;
  }
}

@keyframes multicolor {
  0% {
    background: #685f93;
  }
  16% {
    background: #fc465f;
  }
  32% {
    background: #f18482;
  }
  48% {
    background: #fdcb6e;
  }
  64% {
    background: #60c3bd;
  }
  78% {
    background: #93c5e8;
  }
  100% {
    background: #685f93;
  }
}

@-webkit-keyframes scaleHover {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.02, 1.1, 1);
            transform: scale3d(1.02, 1.1, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

@keyframes scaleHover {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.02, 1.1, 1);
            transform: scale3d(1.02, 1.1, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

.btn:hover:before {
  -webkit-animation: scaleHover 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
          animation: scaleHover 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.btn:hover:after {
  opacity: 1;
  -webkit-animation: scaleHover 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275), multicolor 10s linear infinite;
          animation: scaleHover 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275), multicolor 10s linear infinite;
}

.btn span {
  top: -2px;
  z-index: 1;
}

.btn .icon {
  margin-left: -5px;
  margin-right: 10px;
  top: -2px;
  z-index: 1;
}

.btn-border {
  font-weight: 400;
}

.btn-border:after {
  display: none;
}

.btn-border:before {
  border: 2px solid #FFF;
  background: transparent;
}

.btn-border.js-reveal {
  -webkit-transform: translate3d(-30px, 0, 0);
          transform: translate3d(-30px, 0, 0);
  opacity: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: all 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.btn-border.js-reveal.is-visible {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

/*---------------------------------------*		Sélection
\*---------------------------------------*/
::-moz-selection {
  text-shadow: none;
  color: #fff;
  background: #00f;
}

::selection {
  text-shadow: none;
  color: #fff;
  background: #00f;
}

/*---------------------------------------*		Réglages globaux
\*---------------------------------------*/
*,
*:after,
*:before {
  position: relative;
  outline: none;
}

html {
  font-size: 16px;
  height: 100%;
  background: #000000;
  background-attachment: fixed;
  background-size: 60% auto;
}

html.white {
  background: #FFF;
}

.fancybox-content html {
  background: none;
}

.is-mac,
.is-mac input,
.is-mac button,
.is-mac textarea {
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -moz-osx-font-smoothing: antialiased;
}

/*------------------------------------*		Base typographique

		More settings:
		http://type-scale.com/
\*------------------------------------*/
body {
  font-family: "Roboto", Arial, sans-serif;
  font-size: 1em;
  line-height: 1.8;
  color: #FFF;
  min-height: 100%;
}
.white body {
  color: #1A1A1A;
}

@media (min-width: 62em) {
  body {
    background-size: 16.66667% auto;
  }
}

p,
ul,
ol,
blockquote {
  margin-bottom: 1.8em;
}

h1,
h2,
h3,
h4 {
  margin: 1.414em 0 0.5em;
  font-family: "Roboto", Arial, sans-serif;
  line-height: 1.5;
  font-weight: 700;
}

h1 {
  margin-top: 0;
  font-size: 3.157em;
}

h2 {
  font-size: 2.369em;
}

h3 {
  font-size: 1.777em;
}

h4 {
  font-size: 1.333em;
}

small {
  font-size: 0.75em;
}

sup {
  vertical-align: super;
  font-size: 0.75em;
}

a {
  color: inherit;
}

/*------------------------------------*		Grid system (Bootstrap)
\*------------------------------------*/
.grid {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.grid__row:after {
  content: "";
  clear: both;
  display: block;
}

@media (min-width: 0em) {
  .grid__row {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
}

@media (min-width: 30em) {
  .grid__row {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
}

@media (min-width: 48em) {
  .grid__row {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
  }
}

@media (min-width: 62em) {
  .grid__row {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
  }
}

@media (min-width: 80em) {
  .grid__row {
    margin-right: -0.75rem;
    margin-left: -0.75rem;
  }
}

@media (min-width: 90em) {
  .grid__row {
    margin-right: -0.75rem;
    margin-left: -0.75rem;
  }
}

@media (min-width: 120em) {
  .grid__row {
    margin-right: -0.875rem;
    margin-left: -0.875rem;
  }
}

.grid,
[class*="grid__col-"] {
  min-height: 1px;
}

@media (min-width: 0em) {
  .grid,
  [class*="grid__col-"] {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}

@media (min-width: 30em) {
  .grid,
  [class*="grid__col-"] {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}

@media (min-width: 48em) {
  .grid,
  [class*="grid__col-"] {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
  }
}

@media (min-width: 62em) {
  .grid,
  [class*="grid__col-"] {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
  }
}

@media (min-width: 80em) {
  .grid,
  [class*="grid__col-"] {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }
}

@media (min-width: 90em) {
  .grid,
  [class*="grid__col-"] {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }
}

@media (min-width: 120em) {
  .grid,
  [class*="grid__col-"] {
    padding-right: 0.875rem;
    padding-left: 0.875rem;
  }
}

[class*="grid__col-"] {
  float: left;
}

@media (min-width: 0em) {
  [class*="grid__col-xxs--"] {
    display: block;
  }
  .grid__col-xxs--no-gutter {
    padding-right: 0;
    padding-left: 0;
  }
  .grid__col-xxs--gutter {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .grid__col-xxs--left {
    float: left;
  }
  .grid__col-xxs--right {
    float: right;
  }
  .grid__col-xxs--0 {
    display: block;
  }
  .grid__col-xxs--1 {
    width: 8.33333%;
  }
  .grid__col-xxs--2 {
    width: 16.66667%;
  }
  .grid__col-xxs--3 {
    width: 25%;
  }
  .grid__col-xxs--4 {
    width: 33.33333%;
  }
  .grid__col-xxs--5 {
    width: 41.66667%;
  }
  .grid__col-xxs--6 {
    width: 50%;
  }
  .grid__col-xxs--7 {
    width: 58.33333%;
  }
  .grid__col-xxs--8 {
    width: 66.66667%;
  }
  .grid__col-xxs--9 {
    width: 75%;
  }
  .grid__col-xxs--10 {
    width: 83.33333%;
  }
  .grid__col-xxs--11 {
    width: 91.66667%;
  }
  .grid__col-xxs--12 {
    width: 100%;
  }
}

@media (min-width: 30em) {
  [class*="grid__col-xs--"] {
    display: block;
  }
  .grid__col-xs--no-gutter {
    padding-right: 0;
    padding-left: 0;
  }
  .grid__col-xs--gutter {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .grid__col-xs--left {
    float: left;
  }
  .grid__col-xs--right {
    float: right;
  }
  .grid__col-xs--0 {
    display: block;
  }
  .grid__col-xs--1 {
    width: 8.33333%;
  }
  .grid__col-xs--2 {
    width: 16.66667%;
  }
  .grid__col-xs--3 {
    width: 25%;
  }
  .grid__col-xs--4 {
    width: 33.33333%;
  }
  .grid__col-xs--5 {
    width: 41.66667%;
  }
  .grid__col-xs--6 {
    width: 50%;
  }
  .grid__col-xs--7 {
    width: 58.33333%;
  }
  .grid__col-xs--8 {
    width: 66.66667%;
  }
  .grid__col-xs--9 {
    width: 75%;
  }
  .grid__col-xs--10 {
    width: 83.33333%;
  }
  .grid__col-xs--11 {
    width: 91.66667%;
  }
  .grid__col-xs--12 {
    width: 100%;
  }
}

@media (min-width: 48em) {
  [class*="grid__col-s--"] {
    display: block;
  }
  .grid__col-s--no-gutter {
    padding-right: 0;
    padding-left: 0;
  }
  .grid__col-s--gutter {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
  }
  .grid__col-s--left {
    float: left;
  }
  .grid__col-s--right {
    float: right;
  }
  .grid__col-s--0 {
    display: block;
  }
  .grid__col-s--1 {
    width: 8.33333%;
  }
  .grid__col-s--2 {
    width: 16.66667%;
  }
  .grid__col-s--3 {
    width: 25%;
  }
  .grid__col-s--4 {
    width: 33.33333%;
  }
  .grid__col-s--5 {
    width: 41.66667%;
  }
  .grid__col-s--6 {
    width: 50%;
  }
  .grid__col-s--7 {
    width: 58.33333%;
  }
  .grid__col-s--8 {
    width: 66.66667%;
  }
  .grid__col-s--9 {
    width: 75%;
  }
  .grid__col-s--10 {
    width: 83.33333%;
  }
  .grid__col-s--11 {
    width: 91.66667%;
  }
  .grid__col-s--12 {
    width: 100%;
  }
}

@media (min-width: 62em) {
  [class*="grid__col-m--"] {
    display: block;
  }
  .grid__col-m--no-gutter {
    padding-right: 0;
    padding-left: 0;
  }
  .grid__col-m--gutter {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
  }
  .grid__col-m--left {
    float: left;
  }
  .grid__col-m--right {
    float: right;
  }
  .grid__col-m--0 {
    display: block;
  }
  .grid__col-m--1 {
    width: 8.33333%;
  }
  .grid__col-m--2 {
    width: 16.66667%;
  }
  .grid__col-m--3 {
    width: 25%;
  }
  .grid__col-m--4 {
    width: 33.33333%;
  }
  .grid__col-m--5 {
    width: 41.66667%;
  }
  .grid__col-m--6 {
    width: 50%;
  }
  .grid__col-m--7 {
    width: 58.33333%;
  }
  .grid__col-m--8 {
    width: 66.66667%;
  }
  .grid__col-m--9 {
    width: 75%;
  }
  .grid__col-m--10 {
    width: 83.33333%;
  }
  .grid__col-m--11 {
    width: 91.66667%;
  }
  .grid__col-m--12 {
    width: 100%;
  }
}

@media (min-width: 80em) {
  [class*="grid__col-l--"] {
    display: block;
  }
  .grid__col-l--no-gutter {
    padding-right: 0;
    padding-left: 0;
  }
  .grid__col-l--gutter {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }
  .grid__col-l--left {
    float: left;
  }
  .grid__col-l--right {
    float: right;
  }
  .grid__col-l--0 {
    display: block;
  }
  .grid__col-l--1 {
    width: 8.33333%;
  }
  .grid__col-l--2 {
    width: 16.66667%;
  }
  .grid__col-l--3 {
    width: 25%;
  }
  .grid__col-l--4 {
    width: 33.33333%;
  }
  .grid__col-l--5 {
    width: 41.66667%;
  }
  .grid__col-l--6 {
    width: 50%;
  }
  .grid__col-l--7 {
    width: 58.33333%;
  }
  .grid__col-l--8 {
    width: 66.66667%;
  }
  .grid__col-l--9 {
    width: 75%;
  }
  .grid__col-l--10 {
    width: 83.33333%;
  }
  .grid__col-l--11 {
    width: 91.66667%;
  }
  .grid__col-l--12 {
    width: 100%;
  }
}

@media (min-width: 90em) {
  [class*="grid__col-xl--"] {
    display: block;
  }
  .grid__col-xl--no-gutter {
    padding-right: 0;
    padding-left: 0;
  }
  .grid__col-xl--gutter {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }
  .grid__col-xl--left {
    float: left;
  }
  .grid__col-xl--right {
    float: right;
  }
  .grid__col-xl--0 {
    display: block;
  }
  .grid__col-xl--1 {
    width: 8.33333%;
  }
  .grid__col-xl--2 {
    width: 16.66667%;
  }
  .grid__col-xl--3 {
    width: 25%;
  }
  .grid__col-xl--4 {
    width: 33.33333%;
  }
  .grid__col-xl--5 {
    width: 41.66667%;
  }
  .grid__col-xl--6 {
    width: 50%;
  }
  .grid__col-xl--7 {
    width: 58.33333%;
  }
  .grid__col-xl--8 {
    width: 66.66667%;
  }
  .grid__col-xl--9 {
    width: 75%;
  }
  .grid__col-xl--10 {
    width: 83.33333%;
  }
  .grid__col-xl--11 {
    width: 91.66667%;
  }
  .grid__col-xl--12 {
    width: 100%;
  }
}

@media (min-width: 120em) {
  [class*="grid__col-xxl--"] {
    display: block;
  }
  .grid__col-xxl--no-gutter {
    padding-right: 0;
    padding-left: 0;
  }
  .grid__col-xxl--gutter {
    padding-right: 0.875rem;
    padding-left: 0.875rem;
  }
  .grid__col-xxl--left {
    float: left;
  }
  .grid__col-xxl--right {
    float: right;
  }
  .grid__col-xxl--0 {
    display: block;
  }
  .grid__col-xxl--1 {
    width: 8.33333%;
  }
  .grid__col-xxl--2 {
    width: 16.66667%;
  }
  .grid__col-xxl--3 {
    width: 25%;
  }
  .grid__col-xxl--4 {
    width: 33.33333%;
  }
  .grid__col-xxl--5 {
    width: 41.66667%;
  }
  .grid__col-xxl--6 {
    width: 50%;
  }
  .grid__col-xxl--7 {
    width: 58.33333%;
  }
  .grid__col-xxl--8 {
    width: 66.66667%;
  }
  .grid__col-xxl--9 {
    width: 75%;
  }
  .grid__col-xxl--10 {
    width: 83.33333%;
  }
  .grid__col-xxl--11 {
    width: 91.66667%;
  }
  .grid__col-xxl--12 {
    width: 100%;
  }
}

/*------------------------------------*		Main
\*------------------------------------*/
.loader {
  position: fixed;
  bottom: 30px;
  left: 50%;
  width: 30px;
  height: 30px;
  margin-left: -15px;
  background: transparent url(../svg/layout/loader.svg) center center no-repeat;
  background-size: contain;
  z-index: 9000;
  display: none;
}

/*------------------------------------*		Header
\*------------------------------------*/
.header__img {
  width: 100%;
  padding-top: 100%;
}

.header__img .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
}


.loadmore {
  margin-top: 2em;
  margin-bottom: 1.5em;
  text-decoration: none;
  transition: all 0.3s ease;
}

.onload .loadmore,
.all-is-loaded .loadmore {
  opacity: 0;
  visibility: hidden;
}