@charset "UTF-8";
/*! Made with Bones: http://themble.com/bones :) */
/******************************************************************
Site Name:
Author:

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.

Helpful articles on Sass file organization:
http://thesassway.com/advanced/modular-css-naming-conventions

******************************************************************/
/*********************
IMPORTING PARTIALS
These files are needed at the beginning so that we establish all
our mixins, functions, and variables that we'll be using across
the whole project.
*********************/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
@import url("https://use.typekit.net/hap5bmx.css");
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

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

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

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

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

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

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent;
}

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

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

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

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

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

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

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

/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/
p {
  -webkit-hyphens: auto;
  -epub-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
}

/*
 * Addresses margins set differently in IE6/7.
 */
pre {
  margin: 0;
}

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

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

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

/**
 * Address inconsistent and variable font size in all browsers.
 */
q:before,
q:after {
  content: "";
  content: none;
}

small, .small {
  font-size: 75%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
  Lists
========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0;
}

dd {
  margin: 0;
}

/*
 * Addresses paddings set differently in IE6/7.
 */
menu {
  padding: 0 0 0 40px;
}

ol,
ul {
  padding: 0;
  list-style-type: none;
}

/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.image-replacement,
.ir {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.clearfix, .cf, .comment-respond {
  zoom: 1;
}
.clearfix:before, .clearfix:after, .cf:before, .comment-respond:before, .cf:after, .comment-respond:after {
  content: "";
  display: table;
}
.clearfix:after, .cf:after, .comment-respond:after {
  clear: both;
}

/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp {
  font-family: Baskerville, "Goudy Old Style", Palatino, "Book Antiqua", serif !important;
  font-style: italic;
}

/******************************************************************
Site Name:
Author:

Stylesheet: Variables

Here is where we declare all our variables like colors, fonts,
base values, and defaults. We want to make sure this file ONLY
contains variables that way our files don't get all messy.
No one likes a mess.

******************************************************************/
/*********************
COLORS
Need help w/ choosing your colors? Try this site out:
http://0to255.com/
*********************/
/*
Here's a great tutorial on how to
use color variables properly:
http://sachagreif.com/sass-color-variables/
*/
/******************************************************************
Site Name:
Author:

Stylesheet: Typography
******************************************************************/
@font-face {
  font-family: "Jeko";
  src: url("../fonts/jeko_regular_italic-webfont.woff2") format("woff2"), url("../fonts/jeko_regular_italic-webfont.woff") format("woff");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Jeko";
  src: url("../fonts/jeko_regular-webfont.woff2") format("woff2"), url("../fonts/jeko_regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Jeko";
  src: url("../fonts/jeko_bold-webfont.woff2") format("woff2"), url("../fonts/jeko_bold-webfont.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Jeko";
  src: url("../fonts/jeko_bold_italic-webfont.woff2") format("woff2"), url("../fonts/jeko_bold_italic-webfont.woff") format("woff");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Jeko";
  src: url("../fonts/jeko_medium-webfont.woff2") format("woff2"), url("../fonts/jeko_medium-webfont.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Jeko";
  src: url("../fonts/jeko_medium_italic-webfont.woff2") format("woff2"), url("../fonts/jeko_medium_italic-webfont.woff") format("woff");
  font-weight: 500;
  font-style: italic;
}
/*
some nice typographical defaults
more here: http://www.newnet-soft.com/blog/csstypography
*/
p {
  -ms-word-wrap: break-word;
  word-break: break-word;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  -webkit-hyphenate-before: 2;
  -webkit-hyphenate-after: 3;
  hyphenate-lines: 3;
}

/******************************************************************
Site Name:
Author:

Stylesheet: Sass Functions

You can do a lot of really cool things in Sass. Functions help you
make repeated actions a lot easier. They are really similar to mixins,
but can be used for so much more.

Anyway, keep them all in here so it's easier to find when you're
looking for one.

For more info on functions, go here:
http://sass-lang.com/documentation/Sass/Script/Functions.html

******************************************************************/
/*********************
COLOR FUNCTIONS
These are helpful when you're working
with shadows and such things. It's essentially
a quicker way to write RGBA.

Example:
box-shadow: 0 0 4px black(0.3);
compiles to:
box-shadow: 0 0 4px rgba(0,0,0,0.3);
*********************/
/*********************
RESPONSIVE HELPER FUNCTION
If you're creating a responsive site, then
you've probably already read
Responsive Web Design: http://www.abookapart.com/products/responsive-web-design

Here's a nice little helper function for calculating
target / context
as mentioned in that book.

Example:
width: cp(650px, 1000px);
or
width: calc-percent(650px, 1000px);
both compile to:
width: 65%;
*********************/
/******************************************************************
Site Name:
Author:

Stylesheet: Mixins Stylesheet

This is where you can take advantage of Sass' great features: Mixins.
I won't go in-depth on how they work exactly,
there are a few articles below that will help do that. What I will
tell you is that this will help speed up simple changes like
changing a color or adding CSS3 techniques gradients.

A WORD OF WARNING: It's very easy to overdo it here. Be careful and
remember less is more.

Helpful:
http://sachagreif.com/useful-sass-mixins/
http://thesassway.com/intermediate/leveraging-sass-mixins-for-cleaner-code
http://web-design-weekly.com/blog/2013/05/12/handy-sass-mixins/

******************************************************************/
/*********************
TRANSITION
*********************/
/*
I totally rewrote this to be cleaner and easier to use.
You'll need to be using Sass 3.2+ for these to work.
Thanks to @anthonyshort for the inspiration on these.
USAGE: @include transition(all 0.2s ease-in-out);
*/
/*********************
CSS3 GRADIENTS
Be careful with these since they can
really slow down your CSS. Don't overdo it.
*********************/
/* @include css-gradient(#dfdfdf,#f8f8f8); */
/*********************
BOX SIZING
*********************/
/* @include box-sizing(border-box); */
/* NOTE: value of "padding-box" is only supported in Gecko. So
probably best not to use it. I mean, were you going to anyway? */
/******************************************************************
Site Name:
Author:

Stylesheet: Grid Stylesheet

I've seperated the grid so you can swap it out easily. It's
called at the top the style.scss stylesheet.

There are a ton of grid solutions out there. You should definitely
experiment with your own. Here are some recommendations:

http://gridsetapp.com - Love this site. Responsive Grids made easy.
http://susy.oddbird.net/ - Grids using Compass. Very elegant.
http://gridpak.com/ - Create your own responsive grid.
https://github.com/dope/lemonade - Neat lightweight grid.


The grid below is a custom built thingy I modeled a bit after
Gridset. It's VERY basic and probably shouldn't be used on
your client projects. The idea is you learn how to roll your
own grids. It's better in the long run and allows you full control
over your project's layout.

******************************************************************/
.last-col {
  float: right;
  padding-right: 0 !important;
}

/*
Mobile Grid Styles
These are the widths for the mobile grid.
There are four types, but you can add or customize
them however you see fit.
*/
@media (max-width: 767px) {
  .m-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0;
  }
  .m-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%;
  }
  .m-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%;
  }
  .m-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%;
  }
  .m-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%;
  }
  .m-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%;
  }
}
/* Portrait tablet to landscape */
@media (min-width: 768px) and (max-width: 1029px) {
  .t-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0;
  }
  .t-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%;
  }
  .t-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%;
  }
  .t-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%;
  }
  .t-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%;
  }
  .t-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%;
  }
  .t-1of5 {
    float: left;
    padding-right: 0.75em;
    width: 20%;
  }
  .t-2of5 {
    float: left;
    padding-right: 0.75em;
    width: 40%;
  }
  .t-3of5 {
    float: left;
    padding-right: 0.75em;
    width: 60%;
  }
  .t-4of5 {
    float: left;
    padding-right: 0.75em;
    width: 80%;
  }
}
/* Landscape to small desktop */
@media (min-width: 1030px) {
  .d-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0;
  }
  .d-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%;
  }
  .d-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%;
  }
  .d-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%;
  }
  .d-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%;
  }
  .d-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%;
  }
  .d-1of5 {
    float: left;
    padding-right: 0.75em;
    width: 20%;
  }
  .d-2of5 {
    float: left;
    padding-right: 0.75em;
    width: 40%;
  }
  .d-3of5 {
    float: left;
    padding-right: 0.75em;
    width: 60%;
  }
  .d-4of5 {
    float: left;
    padding-right: 0.75em;
    width: 80%;
  }
  .d-1of6 {
    float: left;
    padding-right: 0.75em;
    width: 16.6666666667%;
  }
  .d-1of7 {
    float: left;
    padding-right: 0.75em;
    width: 14.2857142857%;
  }
  .d-2of7 {
    float: left;
    padding-right: 0.75em;
    width: 28.5714286%;
  }
  .d-3of7 {
    float: left;
    padding-right: 0.75em;
    width: 42.8571429%;
  }
  .d-4of7 {
    float: left;
    padding-right: 0.75em;
    width: 57.1428572%;
  }
  .d-5of7 {
    float: left;
    padding-right: 0.75em;
    width: 71.4285715%;
  }
  .d-6of7 {
    float: left;
    padding-right: 0.75em;
    width: 85.7142857%;
  }
  .d-1of8 {
    float: left;
    padding-right: 0.75em;
    width: 12.5%;
  }
  .d-1of9 {
    float: left;
    padding-right: 0.75em;
    width: 11.1111111111%;
  }
  .d-1of10 {
    float: left;
    padding-right: 0.75em;
    width: 10%;
  }
  .d-1of11 {
    float: left;
    padding-right: 0.75em;
    width: 9.0909090909%;
  }
  .d-1of12 {
    float: left;
    padding-right: 0.75em;
    width: 8.33%;
  }
}
/*********************
IMPORTING MODULES
Modules are reusable blocks or elements we use throughout the project.
We can break them up as much as we want or just keep them all in one.
I mean, you can do whatever you want. The world is your oyster. Unless
you hate oysters, then the world is your peanut butter & jelly sandwich.
*********************/
/******************************************************************
Site Name:
Author:

Stylesheet: Alert Styles

If you want to use these alerts in your design, you can. If not,
you can just remove this stylesheet.

******************************************************************/
.alert-success, .alert-error, .alert-info, .alert-help {
  margin: 10px;
  padding: 5px 18px;
  border: 1px solid;
}

.alert-help {
  border-color: #e8dc59;
  background: #ebe16f;
}

.alert-info {
  border-color: #bfe4f4;
  background: #d5edf8;
}

.alert-error {
  border-color: #f8cdce;
  background: #fbe3e4;
}

.alert-success {
  border-color: #deeaae;
  background: #e6efc2;
}

/******************************************************************
Site Name:
Author:

Stylesheet: Button Styles

Buttons are a pretty important part of your site's style, so it's
important to have a consistent baseline for them. Use this stylesheet
to create all kinds of buttons.

Helpful Links:
http://galp.in/blog/2011/08/02/the-ui-guide-part-1-buttons/

******************************************************************/
/*********************
BUTTON DEFAULTS
We're gonna use a placeholder selector here
so we can use common styles. We then use this
to load up the defaults in all our buttons.

Here's a quick video to show how it works:
http://www.youtube.com/watch?v=hwdVpKiJzac

*********************/
.blue-btn, #submit, .comment-reply-link,
.button {
  display: inline-block;
  position: relative;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-decoration: none;
  color: #fff;
  font-size: 0.95em;
  line-height: 34px;
  font-weight: normal;
  padding: 0 24px;
  border-radius: 40px;
  border: 0;
  cursor: pointer;
  -webkit-transition: background-color 0.14s ease-in-out;
  transition: background-color 0.14s ease-in-out;
}
.blue-btn:hover, #submit:hover, .comment-reply-link:hover,
.button:hover, .blue-btn:focus, #submit:focus, .comment-reply-link:focus,
.button:focus {
  color: #fff;
  text-decoration: none;
  outline: none;
}
.blue-btn:active, #submit:active, .comment-reply-link:active,
.button:active {
  top: 1px;
}

/*
An example button.
You can use this example if you want. Just replace all the variables
and it will create a button dependant on those variables.
*/
.blue-btn, #submit, .comment-reply-link,
.button {
  background-color: #C72729;
}
.blue-btn:hover, #submit:hover, .comment-reply-link:hover, .blue-btn:focus, #submit:focus, .comment-reply-link:focus,
.button:hover,
.button:focus {
  background-color: #b62425;
}
.blue-btn:active, #submit:active, .comment-reply-link:active,
.button:active {
  background-color: #b22325;
}

.round-button-container {
  padding: 3px;
  transition: 0.5s all;
}
.round-button-container:hover {
  padding: 0;
}
.round-button-container:hover .round-button {
  width: 106px;
  height: 106px;
}
.round-button-container:hover .round-button > * {
  padding: 13px;
}

.round-button {
  display: block;
  width: 100px;
  height: 100px;
  font-size: 0.9em;
  hyphens: none;
  border-radius: 55px;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  transition: 0.5s all;
  text-align: center;
  font-weight: bold;
  line-height: 1.3;
  background: #2B2E34;
  color: #fff;
}
.round-button > * {
  padding: 10px;
  box-sizing: border-box;
  transition: 0.5s all;
}
.round-button a {
  transition: 0.5s all;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  color: inherit !important;
}
.round-button.vert {
  background: #CEE0A7;
  color: #C72729;
}
.round-button.rouge {
  background: #C72729;
  color: #CEE0A7;
}

@media only screen and (min-width: 768px) {
  .round-button-container:hover .round-button {
    width: 126px;
    height: 126px;
  }
  .round-button {
    width: 120px;
    height: 120px;
    border-radius: 80px;
    font-size: 1em;
  }
}
/******************************************************************
Site Name:
Author:

Stylesheet: Form Styles

We put all the form and button styles in here to setup a consistent
look. If we need to customize them, we can do this in the main
stylesheets and just override them. Easy Peasy.

You're gonna see a few data-uri thingies down there. If you're not
sure what they are, check this link out:
http://css-tricks.com/data-uris/
If you want to create your own, use this helpful link:
http://websemantics.co.uk/online_tools/image_to_data_uri_convertor/

******************************************************************/
/*********************
INPUTS
*********************/
input[type=text],
input[type=password],
input[type=datetime],
input[type=datetime-local],
input[type=date],
input[type=month],
input[type=time],
input[type=week],
input[type=number],
input[type=email],
input[type=url],
input[type=search],
input[type=tel],
input[type=color],
select,
textarea,
.field,
.gform_field {
  display: block;
  height: 40px;
  line-height: 1em;
  padding: 0 12px;
  margin-bottom: 14px;
  font-size: 1em;
  color: #2B2E34;
  border-radius: 3px;
  vertical-align: middle;
  box-shadow: none;
  border: 0;
  width: 100%;
  max-width: 400px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  background-color: #eaedf2;
  -webkit-transition: background-color 0.24s ease-in-out;
  transition: background-color 0.24s ease-in-out;
}
input[type=text]:focus, input[type=text]:active,
input[type=password]:focus,
input[type=password]:active,
input[type=datetime]:focus,
input[type=datetime]:active,
input[type=datetime-local]:focus,
input[type=datetime-local]:active,
input[type=date]:focus,
input[type=date]:active,
input[type=month]:focus,
input[type=month]:active,
input[type=time]:focus,
input[type=time]:active,
input[type=week]:focus,
input[type=week]:active,
input[type=number]:focus,
input[type=number]:active,
input[type=email]:focus,
input[type=email]:active,
input[type=url]:focus,
input[type=url]:active,
input[type=search]:focus,
input[type=search]:active,
input[type=tel]:focus,
input[type=tel]:active,
input[type=color]:focus,
input[type=color]:active,
select:focus,
select:active,
textarea:focus,
textarea:active,
.field:focus,
.field:active,
.gform_field:focus,
.gform_field:active {
  background-color: #f7f8fa;
  outline: none;
}
input[type=text].error, input[type=text].is-invalid,
input[type=password].error,
input[type=password].is-invalid,
input[type=datetime].error,
input[type=datetime].is-invalid,
input[type=datetime-local].error,
input[type=datetime-local].is-invalid,
input[type=date].error,
input[type=date].is-invalid,
input[type=month].error,
input[type=month].is-invalid,
input[type=time].error,
input[type=time].is-invalid,
input[type=week].error,
input[type=week].is-invalid,
input[type=number].error,
input[type=number].is-invalid,
input[type=email].error,
input[type=email].is-invalid,
input[type=url].error,
input[type=url].is-invalid,
input[type=search].error,
input[type=search].is-invalid,
input[type=tel].error,
input[type=tel].is-invalid,
input[type=color].error,
input[type=color].is-invalid,
select.error,
select.is-invalid,
textarea.error,
textarea.is-invalid,
.field.error,
.field.is-invalid,
.gform_field.error,
.gform_field.is-invalid {
  color: #fbe3e4;
  border-color: #fbe3e4;
  background-color: #fff;
  background-position: 99% center;
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDREQkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDREQ0YwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ3ODRGRkE2RjA0QTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERBRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+U8iT5wAAAedJREFUeNqk1U9I02Ecx/HtV3aIFAc1hcRDUoGXRAq0oNLA2CrsEFmHbikZu0iQYIFGYAiegkCpLipBxPpDEBMUzB0EhSG2LhG7hMR2GviPgUTvB57Bw8P3+U23B16HPX8+e/b8nt93wezZSMCnhXETF3AcB5BDCnH8Dq98ExcGHcFn8Ah3cdDni+fxnPDv9oAnTB7CKu6VCFXtChZy56LxUjt+jfuB8toSOth9wd7xWAWhqrUjYR/FRTwWJm+iIPT/w7bQf5ljiZnBg45dtKFX6H+LU8gIY8OEV6vgTkStwXWE8BPTGDHGPqNPz2mCfSOOYkA99TvCt1bhGPL68zMcwmncMuape10jrI+q4BbHi/FLn31S9z2x5tRhTc+1W506ipM+T3oRD4X+8+qtc4SqFvL0z/Fr14S+Szjis8bz9Lvvaq8cwS/wwGfdlqfPSWqTiFlX77o13u9Ym1PBs8JAytpRoy44X9Ft9E/gvbA+rYKn8NcaaMVc8UHgBw4b9/iqUQZ6hOAJFbyDcUflmsEX4a6+wTtHGfhAIUqa1U29Zc2BytouThD8x6xuN5CtMPi2CrXLZkZf/HyZoRFCP7n+QVR4PV7uI/AjGghN7OU/r1ilnqILtfpNC+o6vIFljBKYlhb/F2AAgaBsWR5wRiIAAAAASUVORK5CYII=);
  outline-color: #fbe3e4;
}
input[type=text].success, input[type=text].is-valid,
input[type=password].success,
input[type=password].is-valid,
input[type=datetime].success,
input[type=datetime].is-valid,
input[type=datetime-local].success,
input[type=datetime-local].is-valid,
input[type=date].success,
input[type=date].is-valid,
input[type=month].success,
input[type=month].is-valid,
input[type=time].success,
input[type=time].is-valid,
input[type=week].success,
input[type=week].is-valid,
input[type=number].success,
input[type=number].is-valid,
input[type=email].success,
input[type=email].is-valid,
input[type=url].success,
input[type=url].is-valid,
input[type=search].success,
input[type=search].is-valid,
input[type=tel].success,
input[type=tel].is-valid,
input[type=color].success,
input[type=color].is-valid,
select.success,
select.is-valid,
textarea.success,
textarea.is-valid,
.field.success,
.field.is-valid,
.gform_field.success,
.gform_field.is-valid {
  color: #e6efc2;
  border-color: #e6efc2;
  background-color: #fff;
  background-position: 99% center;
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDRERkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDRFMEYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjY0MzQ0NERERjA0QjExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERFRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+7olkTQAAAfhJREFUeNqklU9oE0EUhzdroWjw0tBeWlDxkEaIp55TsCU9VKIgCrHBelA8CQ1Kr1WPbZrQ3gqtQqvGqxpQc2jBk6BIIaAGD4qNCKURpDSKiPi98gLDsJt//uBjsztvfnk7895sIPAw6/joGMThFJyAXn2+A+9gA57/TaY/eU0OeBgfhGm4DiGnsb7DAszxBz/NAdcKjMJLuNWCqagHbsscN5+L+hmH4QkMOe1L5jzFfNA2PgT34ajTuY7AGuZB0/hmh5m+gS0r8xv1zRvg+gGCHZiOwnF4DP3iB3sQkYxPd2C6CWfhB9Xwlus5+K1j4jXuaq3a+gM1H9OPcAa+7q9lPidZJqHbiIm7Wg22rsEI7FrPSzAMX/T+ADyAKSsu7Fr1KplehLvwCs5DvfBf65p+MypqRbO1FXK9utH4/QKuaqYTsG3E3INJv00Q46px3+XxanJ/Ute2/vqP4FKDza2KcdljIKdnhS0xXYULTaqmLMZFn8FFSFtvt6x70ExFCS5oUXspq2ssa7oEl1swFa+CGFdgtkHgPDyDKy02zyxNU6lXRUZb1EuHYayNNs+Yh5B0WQo+/8fpJnNTZFuzz2OpjoQ2QruSOQlMy35fEGmEGMxY9e1brxobw7TkWA1h6xfckUPb+JhGoE/Hpfvew7qUld/H9J8AAwDpw3WYrxcZ3QAAAABJRU5ErkJggg==);
  outline-color: #e6efc2;
}
input[type=text][disabled], input[type=text].is-disabled,
input[type=password][disabled],
input[type=password].is-disabled,
input[type=datetime][disabled],
input[type=datetime].is-disabled,
input[type=datetime-local][disabled],
input[type=datetime-local].is-disabled,
input[type=date][disabled],
input[type=date].is-disabled,
input[type=month][disabled],
input[type=month].is-disabled,
input[type=time][disabled],
input[type=time].is-disabled,
input[type=week][disabled],
input[type=week].is-disabled,
input[type=number][disabled],
input[type=number].is-disabled,
input[type=email][disabled],
input[type=email].is-disabled,
input[type=url][disabled],
input[type=url].is-disabled,
input[type=search][disabled],
input[type=search].is-disabled,
input[type=tel][disabled],
input[type=tel].is-disabled,
input[type=color][disabled],
input[type=color].is-disabled,
select[disabled],
select.is-disabled,
textarea[disabled],
textarea.is-disabled,
.field[disabled],
.field.is-disabled,
.gform_field[disabled],
.gform_field.is-disabled {
  cursor: not-allowed;
  border-color: #cfcfcf;
  opacity: 0.6;
}
input[type=text][disabled]:focus, input[type=text][disabled]:active, input[type=text].is-disabled:focus, input[type=text].is-disabled:active,
input[type=password][disabled]:focus,
input[type=password][disabled]:active,
input[type=password].is-disabled:focus,
input[type=password].is-disabled:active,
input[type=datetime][disabled]:focus,
input[type=datetime][disabled]:active,
input[type=datetime].is-disabled:focus,
input[type=datetime].is-disabled:active,
input[type=datetime-local][disabled]:focus,
input[type=datetime-local][disabled]:active,
input[type=datetime-local].is-disabled:focus,
input[type=datetime-local].is-disabled:active,
input[type=date][disabled]:focus,
input[type=date][disabled]:active,
input[type=date].is-disabled:focus,
input[type=date].is-disabled:active,
input[type=month][disabled]:focus,
input[type=month][disabled]:active,
input[type=month].is-disabled:focus,
input[type=month].is-disabled:active,
input[type=time][disabled]:focus,
input[type=time][disabled]:active,
input[type=time].is-disabled:focus,
input[type=time].is-disabled:active,
input[type=week][disabled]:focus,
input[type=week][disabled]:active,
input[type=week].is-disabled:focus,
input[type=week].is-disabled:active,
input[type=number][disabled]:focus,
input[type=number][disabled]:active,
input[type=number].is-disabled:focus,
input[type=number].is-disabled:active,
input[type=email][disabled]:focus,
input[type=email][disabled]:active,
input[type=email].is-disabled:focus,
input[type=email].is-disabled:active,
input[type=url][disabled]:focus,
input[type=url][disabled]:active,
input[type=url].is-disabled:focus,
input[type=url].is-disabled:active,
input[type=search][disabled]:focus,
input[type=search][disabled]:active,
input[type=search].is-disabled:focus,
input[type=search].is-disabled:active,
input[type=tel][disabled]:focus,
input[type=tel][disabled]:active,
input[type=tel].is-disabled:focus,
input[type=tel].is-disabled:active,
input[type=color][disabled]:focus,
input[type=color][disabled]:active,
input[type=color].is-disabled:focus,
input[type=color].is-disabled:active,
select[disabled]:focus,
select[disabled]:active,
select.is-disabled:focus,
select.is-disabled:active,
textarea[disabled]:focus,
textarea[disabled]:active,
textarea.is-disabled:focus,
textarea.is-disabled:active,
.field[disabled]:focus,
.field[disabled]:active,
.field.is-disabled:focus,
.field.is-disabled:active,
.gform_field[disabled]:focus,
.gform_field[disabled]:active,
.gform_field.is-disabled:focus,
.gform_field.is-disabled:active {
  background-color: #d5edf8;
}

input[type=password] {
  letter-spacing: 0.3em;
}

textarea {
  max-width: 100%;
  min-height: 120px;
  line-height: 1.5em;
}

select {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
  appearance: none;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAHCAYAAADXhRcnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEOEZCMjYxMEYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEOEZCMjYxMUYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ4RkIyNjBFRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQ4RkIyNjBGRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Vxkp9gAAAI9JREFUeNpidHFxucHAwKAOxE+AmJmBMPgLxDJAfJMFSKwD4kqoAClgA+P///8ZXF1dPaCGcBKh6QcQB+3evXs7WDMIAA2QB1I7gFgDj0aQFz2BGh+AOEwwUaDAQyBlCMR7cGjcC5KHaQQBuM3IAOiKTiBVhiTUDdRUhq4Oq2aoAelAahIQ5wM1zsCmBiDAADhYMJXVZ9u9AAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: 97.5% center;
}

.gform_wrapper .gfield_label {
  font-weight: bold;
  font-size: 1.1em;
}
.gform_wrapper .gform-field-label--type-sub,
.gform_wrapper .gfield_description {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}

.gform-footer {
  text-align: right !important;
  justify-content: flex-end !important;
}

.gform_button {
  background: #2B2E34 !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  border-radius: 50px !important;
}
.gform_button:hover, .gform_button:active, .gform_button:focus {
  background: #bfd78d !important;
}

#gform_wrapper_1 {
  min-height: 400px;
}

.has-ville #gform_wrapper_1 #field_1_1 {
  display: none;
}

.has-ville:not(.has-seance) #gform_wrapper_1 #field_1_3 {
  grid-column: span 12 !important;
}

.has-seance #gform_wrapper_1 #field_1_3 {
  display: none;
}

/*********************
BASE (MOBILE) SIZE
This are the mobile styles. It's what people see on their phones. If
you set a great foundation, you won't need to add too many styles in
the other stylesheets. Remember, keep it light: Speed is Important.
*********************/
/******************************************************************
Site Name:
Author:

Stylesheet: Base Mobile Stylesheet
******************************************************************/
/*********************
GENERAL STYLES
	*********************/
body {
  font-family: "ivymode", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 100%;
  line-height: 1.6;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #2B2E34;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.desktop-1030 {
  display: none;
}

.cf, .comment-respond {
  clear: both;
}

hr {
  height: 1px;
  border: 0;
  background: #F4F4F4;
  margin: 2em 0;
}

/*


********************
LAYOUT & GRID STYLES
	*********************/
.wrap,
.nav-wrapper {
  width: 86%;
  margin: 0 auto;
}

#content {
  min-height: 60vh;
}

/*


********************
LINK STYLES
	*********************/
a, a:visited {
  color: rgba(77, 77, 77, 0.937254902);
  transition: all 0.3s;
  /* mobile tap color this highlights links on iPhones/iPads. so it basically works like the :hover selector for mobile devices. */
}
a:hover, a:focus, a:visited:hover, a:visited:focus {
  color: rgba(26, 26, 26, 0.937254902);
}
a:link, a:visited:link {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
}

/*


*****************************************************************
H1, H2, H3, H4, H5 STYLES
	******************************************************************/
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  text-rendering: optimizelegibility;
  font-weight: 700;
}
h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a, h6 a, .h6 a {
  text-decoration: none;
}

h1, .h1 {
  font-size: 2.5em;
  line-height: 1.333em;
}

h2, .h2 {
  font-size: 1.75em;
  line-height: 1.4em;
  margin-bottom: 0.375em;
}

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

h4, .h4 {
  font-size: 1.1em;
  font-weight: 700;
}

h5, .h5 {
  font-size: 0.846em;
  line-height: 2.09em;
  text-transform: uppercase;
  letter-spacing: 2px;
}

h6, .h6 {
  font-family: "Jeko", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: bold;
}

/*


********************
HEADER STYLES
	*********************/
.header {
  background-color: #C72729;
  color: #CEE0A7;
  z-index: 200;
}

#inner-header {
  display: flex;
  padding: 1em 0;
  justify-content: space-between;
  align-items: flex-start;
}
#inner-header > * {
  width: 100%;
}
#inner-header .menu-button-container {
  text-align: right;
}
#inner-header .menu-button-container a {
  display: inline-block;
}
#inner-header::before {
  display: none;
}

.logo {
  z-index: 80;
  height: 90px;
}
.logo img {
  height: 117px;
}
.logo.logo-main, .logo.logo-sticky {
  display: none;
}

.header.scrolled-header {
  position: fixed;
  top: -200px;
  width: 100%;
}
.header.scrolled-header #inner-header .logo {
  height: 50px;
}
.header.scrolled-header #inner-header .logo img {
  height: 70px;
}
.header.scrolled-header #inner-header .logo.logo-main, .header.scrolled-header #inner-header .logo.logo-mobile {
  display: none;
}
.header.scrolled-header #inner-header .logo.logo-sticky {
  display: block;
}
.header.scrolled-header #inner-header {
  padding: 0.5em 0;
  position: relative;
  z-index: 99999;
}

body.menu-ouvert {
  overflow: hidden;
}
body.menu-ouvert .logo {
  opacity: 0;
}

.menu-button {
  position: relative;
  z-index: 200;
  margin-left: 20px;
  background: #CEE0A7;
  padding: 10px;
  border-radius: 21px;
}
.menu-button > span {
  display: none;
}
.menu-button div {
  width: 22px;
  height: 22px;
  position: relative;
}
.menu-button div:hover {
  cursor: pointer;
}
.menu-button div span {
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  display: block;
  width: 22px;
  height: 1px;
  background: #C72729;
  position: absolute;
  -webkit-transition: -webkit-transform 0.5s ease-in-out, top 0.25s ease-in-out 0.5s, opacity 0.25s ease-in-out 0.5s;
  -moz-transition: -moz-transform 0.5s ease-in-out, top 0.25s ease-in-out 0.5s, opacity 0.25s ease-in-out 0.5s;
  transition: transform 0.5s ease-in-out, top 0.25s ease-in-out 0.5s, opacity 0.25s ease-in-out 0.5s;
  -webkit-transform-origin: center;
  -moz-transform-origin: center;
  transform-origin: center;
}
.menu-button div span.top {
  top: 7px;
}
.menu-button div span.middle {
  top: 11px;
}
.menu-button div span.bottom {
  top: 15px;
}

body.menu-ouvert .menu-button div span {
  -webkit-transition: -webkit-transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  -moz-transition: -moz-transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  transition: transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
}
body.menu-ouvert .menu-button div span.top, body.menu-ouvert .menu-button div span.middle {
  top: 11px;
  -moz-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
body.menu-ouvert .menu-button div span.top {
  opacity: 0;
}
body.menu-ouvert .menu-button div span.bottom {
  top: 11px;
  -moz-transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

/*


********************
NAVIGATION STYLES
	*********************/
.header nav {
  display: none;
  height: 100vh;
  width: 100vw;
  overflow: scroll;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 100;
  background: #C72729;
}
.header nav .nav-wrapper {
  min-height: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 25px 0 150px;
  position: relative;
  z-index: 90;
}
.header nav .nav-wrapper .desktop-home-dates {
  display: none;
}
.header nav .nav-wrapper .pictos-header {
  order: 2;
  width: 100%;
}
.header nav .nav-wrapper ul.top-nav {
  order: 1;
  width: 100%;
}

.pictos-header {
  position: absolute;
  bottom: 0;
  padding: 15px 15px 15px;
}

.pictos-header img,
.retrouvez-nous img {
  height: 14px;
  width: auto;
  margin: 0;
}
.pictos-header li,
.retrouvez-nous li {
  display: inline-block;
  position: relative;
  margin: 3px;
  font-size: 0.9em;
}
.pictos-header a,
.retrouvez-nous a {
  line-height: 0;
  display: block;
  color: #C72729;
  text-decoration: none;
  padding: 7px;
  background: #CEE0A7;
  border-radius: 30px;
  transition: all 0.2s;
}
.pictos-header a:hover,
.retrouvez-nous a:hover {
  background: #fff;
}
.pictos-header span,
.retrouvez-nous span {
  display: none;
}

.nav {
  border-bottom: 0;
  margin: 0;
  /* end .menu li */
  /* highlight current page */
  /* end current highlighters */
}
.nav li a {
  display: block;
  color: #CEE0A7;
  font-weight: 600;
  text-decoration: none;
  text-transform: none;
  font-size: 1.4em;
  padding: 0.25em 0.75em;
}
.nav li a:hover {
  color: #e3edcd;
}
.nav li.menu-item-has-children > a {
  padding-bottom: 0.25em;
}
.nav li ul.sub-menu {
  display: none;
}
.nav li ul.sub-menu,
.nav li ul.children {
  margin-top: 0;
}
.nav li ul.sub-menu li a,
.nav li ul.children li a {
  padding: 0.5em 25px;
  text-transform: none;
  font-size: 1em;
}
/*


********************
POSTS & CONTENT STYLES
	*********************/
#content.home-content {
  margin: 0;
}

.hentry {
  background-color: #fff;
  border-radius: 3px;
  margin-bottom: 1.5em;
}
.hentry header {
  padding: 1.5em 0 0;
}
.hentry footer {
  padding: 1.5em 0;
  border-top: 1px solid #f8f9fa;
}
.hentry footer p {
  margin: 0;
}

/* end .hentry */
.single-title,
.page-title,
.entry-title {
  margin: 0;
}

/* post meta */
.byline {
  color: #9fa6b4;
  font-style: italic;
  margin: 0;
}
/* entry content */
.entry-content {
  padding: 1.5em 0 0;
}
.entry-content p {
  margin: 0 0 1.5em;
}
.entry-content table {
  width: 100%;
  border: 1px solid #eaedf2;
  margin-bottom: 1.5em;
}
.entry-content table caption {
  margin: 0 0 7px;
  font-size: 0.75em;
  color: #9fa6b4;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.entry-content tr {
  border-bottom: 1px solid #eaedf2;
}
.entry-content tr:nth-child(even) {
  background-color: #f8f9fa;
}
.entry-content td {
  padding: 7px;
  border-right: 1px solid #eaedf2;
}
.entry-content td:last-child {
  border-right: 0;
}
.entry-content th {
  background-color: #f8f9fa;
  border-bottom: 1px solid #eaedf2;
  border-right: 1px solid #eaedf2;
}
.entry-content th:last-child {
  border-right: 0;
}
.entry-content blockquote {
  margin: 0 0 1.5em 0.75em;
  padding: 0 0 0 0.75em;
  border-left: 3px solid #2980b9;
  font-style: italic;
  color: #9fa6b4;
}
.entry-content dd {
  margin-left: 0;
  font-size: 0.9em;
  color: #787878;
  margin-bottom: 1.5em;
}
.entry-content img {
  margin: 0 0 1.5em 0;
  max-width: 100%;
  height: auto;
}
.entry-content .size-auto,
.entry-content .size-full,
.entry-content .size-large,
.entry-content .size-medium,
.entry-content .size-thumbnail {
  max-width: 100%;
  height: auto;
}
.entry-content pre {
  background: #000000;
  color: #f8f9fa;
  font-size: 0.9em;
  padding: 1.5em;
  margin: 0 0 1.5em;
  border-radius: 3px;
}

/* end .entry-content */
.wp-caption {
  max-width: 100%;
  background: #eee;
  padding: 5px;
  /* images inside wp-caption */
}
.wp-caption img {
  max-width: 100%;
  margin-bottom: 0;
  width: 100%;
}
.wp-caption p.wp-caption-text {
  font-size: 0.85em;
  margin: 4px 0 7px;
  text-align: center;
}

/* end .wp-caption */
.tags {
  margin: 0;
}

/*


*****************************************************************
PAGE NAVI STYLES
	******************************************************************/
.pagination,
.wp-prev-next {
  margin: 1.5em 0;
}

.pagination {
  text-align: center;
}
.pagination ul {
  display: inline-block;
  background-color: #fff;
  white-space: nowrap;
  padding: 0;
  clear: both;
  border-radius: 3px;
}
.pagination li {
  padding: 0;
  margin: 0;
  float: left;
  display: inline;
  overflow: hidden;
  border-right: 1px solid #eaedf2;
}
.pagination a, .pagination span {
  margin: 0;
  text-decoration: none;
  padding: 0;
  line-height: 1em;
  font-size: 1em;
  font-weight: normal;
  padding: 0.75em;
  min-width: 1em;
  display: block;
  color: #2980b9;
}
.pagination a:hover, .pagination a:focus, .pagination span:hover, .pagination span:focus {
  background-color: #2980b9;
  color: #fff;
}
.pagination .current {
  cursor: default;
  color: #2B2E34;
}
.pagination .current:hover, .pagination .current:focus {
  background-color: #fff;
  color: #2B2E34;
}

/* end .bones_page_navi */
/* fallback previous & next links */
.wp-prev-next .prev-link {
  float: left;
}
.wp-prev-next .next-link {
  float: right;
}

/* end .wp-prev-next */
/*


*****************************************************************
COMMENT STYLES
	******************************************************************/
/* h3 comment title */
#comments-title {
  padding: 0.75em;
  margin: 0;
  border-top: 1px solid #f8f9fa;
  /* number of comments span */
}
.commentlist {
  margin: 0;
  list-style-type: none;
}

.comment {
  position: relative;
  clear: both;
  overflow: hidden;
  padding: 1.5em;
  border-bottom: 1px solid #f8f9fa;
  /* vcard */
  /* end .commentlist .vcard */
  /* general comment classes */
}
.comment .comment-author {
  padding: 7px;
  border: 0;
}
.comment .vcard {
  margin-left: 50px;
}
.comment .vcard cite.fn {
  font-weight: 700;
  font-style: normal;
}
.comment .vcard time {
  display: block;
  font-size: 0.9em;
  font-style: italic;
}
.comment .vcard time a {
  color: #9fa6b4;
  text-decoration: none;
}
.comment .vcard time a:hover {
  text-decoration: underline;
}
.comment .vcard .avatar {
  position: absolute;
  left: 16px;
  border-radius: 50%;
}
.comment:last-child {
  margin-bottom: 0;
}
.comment .children {
  margin: 0;
}
.comment[class*=depth-] {
  margin-top: 1.1em;
}
.comment.depth-1 {
  margin-left: 0;
  margin-top: 0;
}
.comment:not(.depth-1) {
  margin-top: 0;
  margin-left: 7px;
  padding: 7px;
}
.comment.odd {
  background-color: #fff;
}
.comment.even {
  background: #f8f9fa;
}

/* comment content */
.comment_content p {
  margin: 0.7335em 0 1.5em;
  font-size: 1em;
  line-height: 1.5em;
}

/* end .commentlist .comment_content */
/* comment reply link */
.comment-reply-link {
  font-size: 0.9em;
  float: right;
} /* end .commentlist .comment-reply-link */
/* edit comment link */
.comment-edit-link {
  font-style: italic;
  margin: 0 7px;
  text-decoration: none;
  font-size: 0.9em;
}

.comment-respond {
  padding: 1.5em;
  border-top: 1px solid #f8f9fa;
}

#reply-title {
  margin: 0;
}

.logged-in-as {
  color: #9fa6b4;
  font-style: italic;
  margin: 0;
}
.logged-in-as a {
  color: #2B2E34;
}

.comment-form-comment {
  margin: 1.5em 0 0.75em;
}

.form-allowed-tags {
  padding: 1.5em;
  background-color: #f8f9fa;
  font-size: 0.9em;
}

/* comment submit button */
#submit {
  float: right;
  font-size: 1em;
}

/* comment form title */
#comment-form-title {
  margin: 0 0 1.1em;
}

/* cancel comment reply link */
/* logged in comments */
/* allowed tags */
#allowed_tags {
  margin: 1.5em 10px 0.7335em 0;
}

/* no comments */
.nocomments {
  margin: 0 20px 1.1em;
}

/*


********************
SIDEBARS & ASIDES
	*********************/
.no-widgets {
  background-color: #fff;
  padding: 1.5em;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.3490196078);
  border-radius: 2px;
  margin-bottom: 1.5em;
}

/*


********************
FOOTER STYLES
	*********************/
.retrouvez-nous {
  background: #C72729;
  padding: 12px 0;
  color: #CEE0A7;
  font-weight: bold;
  text-align: center;
  font-size: 1.2em;
}
.retrouvez-nous ul {
  display: inline-flex;
  margin-left: 20px;
}

.logos-partenaires {
  padding: 20px 0;
  background: #e3edcd;
}
.logos-partenaires ul {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.logos-partenaires ul a {
  display: block;
  filter: grayscale(100%);
}
.logos-partenaires ul a:hover {
  filter: grayscale(0);
}
.logos-partenaires ul img {
  max-width: 80px;
  max-height: 40px;
}

.footer {
  clear: both;
  background-color: #000000;
  color: #f8f9fa;
  padding: 20px 0 30px;
}
.footer .nav li {
  display: inline-block;
}
.footer .nav li:not(:last-child) {
  margin-right: 20px;
}
.footer .nav li a {
  font-size: 0.9em;
  color: #fff;
  padding: 0;
  text-transform: none;
}
.footer .nav .sub-menu {
  display: none;
}
.footer .main-footer-content {
  padding: 20px 0 0;
}
.footer .credits {
  opacity: 0.7;
  font-size: 0.85em;
  clear: both;
}

.h2-button {
  display: inline-block;
  background: #C72729;
  padding: 5px 20px 8px;
  margin-bottom: 20px;
  width: 330px;
  max-width: 80vw;
  padding-right: 80px;
  color: #CEE0A7 !important;
  position: relative;
}
.h2-button::after {
  content: "";
  display: block;
  position: absolute;
  right: 10px;
  transition: 0.3s all;
  top: 0;
  padding-top: 2px;
  height: 100%;
  width: 40px;
  background-image: url("../images/arrow-vert.png");
  background-size: 50% auto;
  background-repeat: no-repeat;
  background-position: center center;
}
.h2-button:hover::after {
  right: 5px;
}

.diaporama {
  position: relative;
}
.diaporama ul {
  margin: 0;
}
.diaporama li:nth-of-type(n+2) {
  display: none;
}
.diaporama li div {
  height: calc(100vh - 190px);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.diaporama::after {
  content: "";
  width: 100%;
  height: 200px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(237, 221, 83, 0) 100%);
  position: absolute;
  top: 0;
  z-index: 1;
}
.diaporama .tagline-container {
  position: absolute;
  width: 100%;
  z-index: 2;
  top: 10px;
}
.diaporama .tagline {
  font-weight: 700;
  font-style: italic;
  font-size: 1.6em;
  line-height: 1.5;
  color: #CEE0A7;
}
.diaporama .tagline span {
  display: block;
}
.diaporama .tagline span:nth-of-type(2) {
  margin-left: 20px;
}

.mobile-home-dates {
  padding: 15px 0;
  background: #C72729;
  color: #CEE0A7;
  font-weight: bold;
  font-style: italic;
  font-size: 1.5em;
}

.home-citations {
  padding: 2em 0;
}
.home-citations .citation-container {
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  margin: 0 auto;
}
.home-citations .citation-container img {
  margin: 10px auto;
  max-width: 150px;
  border-radius: 50%;
}
.home-citations .citation-container p.citation {
  display: inline-block;
  max-width: 400px;
  font-size: 1.4em;
  font-weight: bold;
  hyphens: none;
}
.home-citations .citation-container p.citation::before {
  content: "« ";
}
.home-citations .citation-container p.citation::after {
  content: " »";
}

.slick-dots {
  padding: 0;
  margin: 20px 0;
  text-align: center;
}
.slick-dots li {
  display: inline-block;
  padding: 0 5px;
  list-style: none;
}
.slick-dots li button {
  text-indent: -200000px;
  display: inline-block;
  background: rgba(0, 0, 0, 0.3);
  width: 12px;
  height: 12px;
  padding: 0;
  border: none;
  outline: none;
  border-radius: 50%;
}
.slick-dots li.slick-active button,
.slick-dots li button:focus,
.slick-dots li button:active {
  background: rgba(0, 0, 0, 0.8);
}

.home-calendrier {
  background: #F4F4F4;
  padding: 2em 0;
  min-width: 300px;
}
.home-calendrier footer {
  display: flex;
  justify-content: center;
  gap: 30px;
}

.map-container {
  margin-bottom: 10px;
  position: relative;
  width: 90vw;
  height: 65.25vw;
  max-width: 1000px;
  max-height: 725px;
  margin: 1em auto 4em;
  min-width: 300px;
  min-height: 217px;
}
.map-container .map-image {
  position: absolute;
  width: 51.9%;
  left: 18.4%;
  top: 17.25%;
}
.map-container a {
  color: #C72729;
  text-decoration: none;
}
.map-container p {
  margin: 0;
}
.map-container div:has(a:hover) .marker {
  width: 16px;
  height: 16px;
  margin-top: -3px;
  margin-left: -3px;
}
.map-container div:has(a:hover) h3 {
  transform: scale(1.1);
}
.map-container .no-current a {
  color: #BBB;
}
.map-container .no-current a:hover {
  color: #2B2E34;
}
.map-container .no-current .line, .map-container .no-current .marker {
  background: #BBB;
}
.map-container h3 {
  opacity: 0;
  transition: 1s opacity, 0.4s transform;
  font-size: 0.8em;
  line-height: 0.9;
  text-align: center;
  position: absolute;
  width: 20%;
}
.map-container h3 span {
  font-size: 0.8em;
}
.map-container h3:hover {
  transform: scale(1.1);
}
.map-container .marker {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background: #C72729;
  position: absolute;
}
.map-container .line {
  position: absolute;
  display: block;
  background: #C72729;
  width: 2px;
  height: 0;
  transform-origin: center top;
  transition: 1s height, 1s opacity;
  border-radius: 1px;
  height: 0%;
}
.map-container.animated .line,
.map-container.animated h3 {
  opacity: 1;
}
.map-container #nantes h3 {
  top: 38%;
  left: 2%;
  margin-left: -20px;
  margin-top: -2px;
}
.map-container #nantes .marker {
  top: 48%;
  left: 31%;
}
.map-container #nantes .line {
  top: calc(48% + 4px);
  left: calc(31% + 2px);
  transform: rotate(107deg);
}
.map-container.animated #nantes .line {
  height: 21%;
}
.map-container #larochelle h3 {
  top: 55%;
  left: 8%;
}
.map-container #larochelle .marker {
  top: 56.25%;
  left: 31.75%;
}
.map-container #larochelle .line {
  top: calc(56.25% + 5px);
  left: calc(31.75% + 4px);
  transform: rotate(80deg);
}
.map-container.animated #larochelle .line {
  height: 10%;
}
.map-container #pau h3 {
  top: 86%;
  left: 21%;
}
.map-container #pau .marker {
  top: 81.5%;
  left: 33.5%;
}
.map-container #pau .line {
  top: calc(81.5% + 5px);
  left: calc(33.5% + 4px);
  transform: rotate(25deg);
}
.map-container.animated #pau .line {
  height: 6%;
}
.map-container #nimes h3 {
  top: 83%;
  left: 47%;
}
.map-container #nimes .marker {
  top: 77%;
  left: 55%;
}
.map-container #nimes .line {
  top: calc(77% + 5px);
  left: calc(55% + 4px);
  transform: rotate(-15deg);
}
.map-container.animated #nimes .line {
  height: 7%;
}
.map-container #clermont h3 {
  top: 65%;
  left: 70%;
  margin-top: -10px;
  margin-left: 20px;
}
.map-container #clermont .marker {
  top: 62%;
  left: 49%;
}
.map-container #clermont .line {
  top: calc(62% + 5px);
  left: calc(49% + 4px);
  transform: rotate(-78.5deg);
}
.map-container.animated #clermont .line {
  height: 29%;
}
.map-container #nancy h3 {
  top: 36%;
  left: 65%;
  margin-top: -6px;
  margin-left: 30px;
}
.map-container #nancy .marker {
  top: 36%;
  left: 61.5%;
}
.map-container #nancy .line {
  top: calc(36% + 5px);
  left: calc(61.5% + 4px);
  transform: rotate(-77deg);
}
.map-container.animated #nancy .line {
  height: 12%;
}
.map-container #boulogne h3 {
  top: 12%;
  left: 51%;
  margin-top: -10px;
  margin-left: 20px;
}
.map-container #boulogne .marker {
  top: 19%;
  left: 43.9%;
}
.map-container #boulogne .line {
  top: calc(19% + 5px);
  left: calc(43.9% + 4px);
  transform: rotate(-105deg);
}
.map-container.animated #boulogne .line {
  height: 10%;
}
.map-container #orleans h3 {
  top: 16%;
  left: 24%;
  margin-top: -18px;
}
.map-container #orleans .marker {
  top: 43%;
  left: 44.5%;
}
.map-container #orleans .line {
  top: calc(43% + 5px);
  left: calc(44.5% + 4px);
  transform: rotate(-215deg);
}
.map-container.animated #orleans .line {
  height: 23%;
}

.ville-carte-desktop .map-container {
  max-width: 400px;
}

.home-bulles {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 300px;
  margin: 0 auto;
  text-align: center;
  padding: 40px 0;
}
.home-bulles > div {
  text-align: center;
}
.home-bulles div:nth-of-type(1) .bulle {
  margin-top: 130px;
  margin-right: -10px;
}
.home-bulles div:nth-of-type(2) {
  margin-left: -10px;
}

.bulle {
  width: 160px;
  height: 160px;
  border-radius: 80px;
  background: #CEE0A7;
  color: #C72729;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: 1.2;
  font-weight: bold;
  font-size: 0.9em;
  letter-spacing: 0;
}
.bulle strong {
  font-size: 1.5em;
}
.bulle > * {
  margin: 0;
  padding: 0;
}

.home-programmation {
  padding: 30px 0;
  overflow: hidden;
}

.diapo-films-container {
  padding: 20px 0 40px;
}

ul.diapo-films {
  width: 70%;
  position: relative;
}
ul.diapo-films::before {
  content: "";
  height: 100%;
  background: #fff;
  width: 5000px;
  position: absolute;
  left: -5000px;
  top: 0;
  z-index: 9;
}
ul.diapo-films .slick-list {
  overflow: visible;
}
ul.diapo-films li {
  padding-right: 10px;
}

.slick-arrow {
  position: absolute;
  top: 40%;
  z-index: 12;
  background: rgba(0, 0, 0, 0.5);
  border: none;
  color: transparent;
  font-size: 0;
  width: 60px;
  height: 60px;
  border-radius: 40px;
  background-image: url("../images/arrow-vert.png");
  background-repeat: no-repeat;
  background-size: 50% auto;
  background-position: center center;
  opacity: 0.5;
  transition: all 0.3s;
}
.slick-arrow.slick-prev {
  left: 20px;
  transform: rotate(-180deg);
}
.slick-arrow.slick-next {
  right: 20px;
}
.slick-arrow.slick-disabled {
  filter: grayscale(100%);
  opacity: 0.1;
}
.slick-arrow:hover:not(.slick-disabled) {
  opacity: 1;
}

.vignette-film header {
  background: #C72729;
  padding: 6px 18px;
  height: 60px;
  display: flex;
  align-items: center;
  transition: all 0.3s;
}
.vignette-film header h3 {
  margin: 0;
  font-size: 0.9em;
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
}
.vignette-film header a {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
  color: #CEE0A7 !important;
}
.vignette-film:hover header {
  background: #CEE0A7;
}
.vignette-film:hover header a {
  color: #C72729 !important;
}
.vignette-film img {
  width: 100%;
  height: auto;
}

body.single-film p {
  font-family: "Jeko", "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: 0;
  font-weight: 500;
}
body.single-film p strong {
  font-family: "ivymode", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
body.single-film .diaporama li div {
  height: 70vw;
  max-height: 60vh;
}
body.single-film main {
  padding-bottom: 40px;
}
body.single-film main section,
body.single-film main header {
  padding: 15px 20px;
}
body.single-film main header {
  padding-top: 25px;
}
body.single-film main header > * {
  margin: 0;
}
body.single-film main header .infos-techniques {
  font-size: 1.125em;
  font-weight: 700;
}
body.single-film main header .avertissement-mobile {
  font-size: 0.8em;
  color: #C72729;
}
body.single-film .generique {
  padding-left: 15vw;
  max-width: 500px;
  font-size: 0.9em;
}
body.single-film .generique p {
  margin: 0;
}
body.single-film .bandeannonce iframe {
  max-width: 100%;
}
body.single-film .bandeannonce .video-container {
  margin: 10px 0;
  height: 55vw;
  background-size: cover;
  background-position: center center;
  position: relative;
}
body.single-film .bandeannonce .video-container.picto-play::before {
  z-index: 2;
  content: "";
  height: 70px;
  width: 70px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -35px;
  margin-left: -35px;
  transition: all 0.3s;
  background-image: url("../images/bouton-play.png");
  background-size: contain;
  background-repeat: no-repeat;
}
body.single-film .bandeannonce .video-container.picto-play:hover::before {
  transform: rotate(-360deg) scale(1.1);
}
body.single-film .bandeannonce .video-container span {
  display: none;
}
body.single-film .bandeannonce .video-container a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 3;
}
body.single-film .synopsis p {
  font-weight: bold;
}
body.single-film .texte {
  padding: 20px;
}
body.single-film .texte p:first-of-type {
  margin-top: 0;
}
body.single-film .texte p:last-of-type {
  margin-bottom: 0;
}
body.single-film .texte strong {
  font-family: inherit;
}
body.single-film .texte span[style^=text-decoration] {
  font-family: "ivymode", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-decoration: none !important;
}

.film-bulles {
  height: 0;
  position: relative;
}
.film-bulles > div {
  position: absolute;
  bottom: -30px;
  right: 20px;
}
.film-bulles a {
  text-decoration: none;
}
.film-bulles .avertissement-desktop {
  display: none;
}

.programmation-film {
  color: #C72729;
}
.programmation-film > ul {
  margin: 0;
}
.programmation-film > ul > li:nth-of-type(n+2) {
  margin-top: 25px;
}
.programmation-film > ul > li p, .programmation-film > ul > li ul, .programmation-film > ul > li li {
  margin: 0;
}
.programmation-film > ul > li a {
  color: inherit !important;
  text-decoration: none;
}
.programmation-film > ul > li .ville strong {
  font-size: 1.4em;
}
.programmation-film > ul > li .ville span::before {
  content: "/";
  font-size: 1.4em;
  margin: 0 6px 0 4px;
  font-family: "ivymode", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.programmation-film > ul > li .heure span {
  font-weight: bold;
}
.programmation-film > ul > li ul li:nth-of-type(n+2) {
  margin-top: 10px;
}
.programmation-film > ul > li ul .date {
  text-transform: uppercase;
  font-weight: bold;
}

a.picto::after {
  content: "";
  height: 12px;
  width: 12px;
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  margin-left: 5px;
  transition: inherit;
}
a.picto.fleche-rouge::after {
  background-image: url("../images/arrow-rouge.png");
  top: 1px;
}
a.picto.fleche-rouge:hover::after {
  margin-left: 8px;
}

body.single-ville .article-header {
  padding: 30px 0;
  color: #C72729;
}
body.single-ville .article-header h2 {
  margin-top: 0;
}
body.single-ville .ville-carte-desktop {
  display: none;
}
body.single-ville .ville-programmation {
  padding: 40px 0;
}
body.single-ville .ville-carte-mobile {
  margin-top: 40px;
  padding-left: 15px;
}
body.single-ville .coordonnees,
body.single-ville .article-header,
body.single-ville .ville-programmation .wrap {
  max-width: 450px;
  margin-left: auto;
  margin-right: auto;
}

.coordonnees {
  background: #f8dbdc;
  padding: 15px;
  line-height: 1.3;
}
.coordonnees h2 {
  display: inline-block;
  background: #C72729;
  margin: 0;
  color: #CEE0A7;
  padding: 4px 10px;
}
.coordonnees div {
  font-family: "Jeko", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.85em;
  letter-spacing: 0;
}
.coordonnees div.adresse {
  font-weight: bold;
}
.coordonnees div a {
  font-weight: bold;
  color: inherit;
}
.coordonnees div:last-child p:last-child {
  margin-bottom: 0;
}

.prog-ville .jour {
  font-family: "Jeko", "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: 0;
}
.prog-ville .jour:not(:first-of-type) {
  margin-top: 50px;
}
.prog-ville .jour p {
  margin: 1px 0;
}
.prog-ville .jour > header {
  background: #C72729;
  color: #CEE0A7;
  padding: 6px 15px 4px;
}
.prog-ville .jour > header h3 {
  text-transform: uppercase;
  font-weight: 500;
  margin: 0;
}
.prog-ville .jour ul {
  margin: 0;
}
.prog-ville .jour ul header {
  padding: 0;
}
.prog-ville .jour ul header img {
  width: 100%;
  height: auto;
  margin: 0;
}
.prog-ville .jour ul header h4 {
  margin: 0;
  font-family: "ivymode", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.prog-ville .jour ul header a {
  color: inherit;
}
.prog-ville .jour ul .heure {
  margin: 15px 0 8px;
}
.prog-ville .jour ul .heure span {
  font-weight: bold;
}
.prog-ville .jour ul strong {
  font-family: "ivymode", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.prog-ville .jour ul li > p {
  font-size: 0.9em;
}
.prog-ville .jour ul a {
  color: #C72729;
  text-decoration: none;
}

.ville-ensavoirplus {
  background: #f8f9fa;
  margin-top: 20px;
  padding: 40px 0;
}
.ville-ensavoirplus .wrap > :first-child {
  margin-top: 0;
}
.ville-ensavoirplus ul {
  list-style: disc;
  padding-left: 16px;
}
.ville-ensavoirplus ul li {
  margin: 8px 0;
}

.infos-resa {
  padding: 30px 0 30px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  margin: 20px 0 40px;
}
.infos-resa a {
  color: inherit !important;
}
.infos-resa h2 {
  font-size: 1.5em;
  color: #C72729;
  margin: 0;
}
.infos-resa h3, .infos-resa p {
  margin: 0;
}
.infos-resa h2 a,
.infos-resa h3 a {
  text-decoration: none;
}

article.apropos {
  padding: 30px 0 0;
  margin: 0;
}
article.apropos h1 {
  color: #C72729;
}
article.apropos .editos {
  color: #C72729;
}
article.apropos .editos div {
  padding: 30px 0;
}
article.apropos .editos p {
  margin: 8px 0;
}
article.apropos p {
  font-family: "Jeko", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
article.apropos p strong {
  font-family: "ivymode", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
article.apropos .main {
  background: #F4F4F4;
  padding: 50px 0;
}
article.apropos .main .button {
  margin: 0 20px 0 10px;
  font-size: 1.1em;
  padding: 5px 30px;
}
article.apropos .main h3 {
  margin-top: 50px;
}
article.apropos .equipe {
  color: #71936a;
  padding: 40px 0;
}
article.apropos .equipe h3 {
  font-family: "Jeko", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.1em;
  margin: 20px 0 0;
}
article.apropos .equipe p {
  margin: 0;
}

article.ressources h2 {
  font-size: 1.5em;
}
article.ressources p, article.ressources ul {
  font-family: "Jeko", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  letter-spacing: 0;
}
article.ressources p strong, article.ressources ul strong {
  color: #C72729;
}
article.ressources .chiffres-numeros {
  padding: 30px 0;
}
article.ressources .chiffres-numeros .wrap > div :first-child {
  margin-top: 0;
}
article.ressources .chiffres-numeros .wrap > div :last-child {
  margin-bottom: 0;
}
article.ressources .chiffres-numeros .wrap > div ul li {
  margin: 3px 0;
}
article.ressources .chiffres-numeros .numeros {
  background: #f8dbdc;
  padding: 20px;
  margin: 30px 0;
  max-width: 500px;
}
article.ressources .acteurs-nationaux {
  background: #F4F4F4;
  padding: 40px 0;
}
article.ressources .acteurs-nationaux ul li {
  margin: 15px 0;
}

.acteurs-locaux {
  padding: 30px 0;
}
.acteurs-locaux .ville {
  max-width: 800px;
}
.acteurs-locaux .ville header {
  padding: 20px 0;
  cursor: pointer;
  padding-right: 50px;
  position: relative;
}
.acteurs-locaux .ville header::after {
  content: "";
  position: absolute;
  display: block;
  right: 10px;
  top: 0;
  height: 100%;
  width: 20px;
  background-image: url("../images/arrow-noir.png");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.7;
  transition: all 0.3s;
}
.acteurs-locaux .ville header:hover::after, .acteurs-locaux .ville header:hover h3 {
  opacity: 1;
}
.acteurs-locaux .ville header h3 {
  margin: 0;
  opacity: 0.8;
  transition: all 0.3s;
}
.acteurs-locaux .ville > div {
  padding: 0 0 30px;
  display: none;
}
.acteurs-locaux .ville:not(:last-child) {
  border-bottom: 3px solid #71936a;
}
.acteurs-locaux .ville footer {
  border: none;
  text-align: right;
}

/*********************
LARGER MOBILE DEVICES
This is for devices like the Galaxy Note or something that's
larger than an iPhone but smaller than a tablet. Let's call them
tweeners.
*********************/
@media only screen and (min-width: 481px) {
  /******************************************************************
  Site Name:
  Author:

  Stylesheet: 481px and Up Stylesheet

  This stylesheet is loaded for larger devices. It's set to
  481px because at 480px it would load on a landscaped iPhone.
  This isn't ideal because then you would be loading all those
  extra styles on that same mobile connection.

  A word of warning. This size COULD be a larger mobile device,
  so you still want to keep it pretty light and simply expand
  upon your base.scss styles.

  ******************************************************************/
  /*********************
  NAVIGATION STYLES
  	*********************/
  /* .menu is clearfixed inside mixins.scss */
  .menu {
    /* end .menu ul */
  }
  .menu ul {
    /* end .menu ul li */
    /* highlight current page */
    /* end current highlighters */
  }
  .menu ul li {
    /*
    plan your menus and drop-downs wisely.
    */
  }
  .menu ul li a {
    /*
    you can use hover styles here even though this size
    has the possibility of being a mobile device.
    */
  }
  /* end .menu */
  /*

  ********************
  POSTS & CONTENT STYLES
  	*********************/
  .entry-content {
    /* at this larger size, we can start to align images */
  }
  .entry-content .alignleft, .entry-content img.alignleft {
    margin-right: 1.5em;
    display: inline;
    float: left;
  }
  .entry-content .alignright, .entry-content img.alignright {
    margin-left: 1.5em;
    display: inline;
    float: right;
  }
  .entry-content .aligncenter, .entry-content img.aligncenter {
    margin-right: auto;
    margin-left: auto;
    display: block;
    clear: both;
  }
  .home-calendrier .map-container #orleans h3,
  .ville-carte-mobile .map-container #orleans h3 {
    margin-left: -20px;
    margin-top: 0;
  }
  .home-calendrier .map-container #clermont h3,
  .ville-carte-mobile .map-container #clermont h3 {
    margin-top: 0;
  }
  .home-calendrier .map-container #larochelle h3,
  .ville-carte-mobile .map-container #larochelle h3 {
    margin-left: -10px;
  }
  .home-calendrier .map-container #nancy h3,
  .ville-carte-mobile .map-container #nancy h3 {
    margin-top: 10px;
  }
  ul.diapo-films {
    width: 85%;
  }
}
/*********************
TABLET & SMALLER LAPTOPS
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*********************/
@media only screen and (min-width: 768px) {
  /******************************************************************
  Site Name:
  Author:

  Stylesheet: Tablet & Small Desktop Stylesheet

  Here's where you can start getting into the good stuff.
  This size will work on iPads, other tablets, and desktops.
  So you can start working with more styles, background images,
  and other resources. You'll also notice the grid starts to
  come into play. Have fun!

  ******************************************************************/
  /*********************
  GENERAL STYLES
  	*********************/
  /*


  ********************
  LAYOUT & GRID STYLES
  	*********************/
  .wrap,
  .nav-wrapper {
    width: 760px;
  }
  /*


  ********************
  HEADER STYLES
  	*********************/
  /*


  ********************
  SIDEBARS & ASIDES
  	*********************/
  .sidebar {
    margin-top: 2.2em;
  }
  .widgettitle {
    border-bottom: 2px solid #444;
    margin-bottom: 0.75em;
  }
  .widget {
    padding: 0 10px;
    margin: 2.2em 0;
  }
  .widget ul li {
    margin-bottom: 0.75em;
    /* deep nesting */
  }
  .widget ul li ul {
    margin-top: 0.75em;
    padding-left: 1em;
  }
  .home-calendrier footer {
    margin-top: -80px;
    justify-content: flex-end;
    position: relative;
    z-index: 9;
  }
  .home-bulles {
    position: relative;
    margin-top: -360px;
    margin-right: 40px;
  }
  .home-calendrier .map-container h3,
  .ville-carte-mobile .map-container h3 {
    font-size: 1.1em;
    margin: 1em 0 !important;
    line-height: 1;
  }
  .home-calendrier .map-container h3 span,
  .ville-carte-mobile .map-container h3 span {
    font-size: 0.7em;
  }
  .logos-partenaires ul {
    gap: 40px;
  }
  .logos-partenaires ul img {
    max-width: 130px;
    max-height: 50px;
  }
  body.single-film .film-bulles {
    position: absolute;
    bottom: -60px;
  }
  body.single-film main header {
    padding-left: 130px;
    padding-right: 100px;
  }
  body.single-film main header,
  body.single-film main > section,
  body.single-film main .main-container {
    max-width: 1200px;
    margin: 0 auto;
  }
  body.single-film .main-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    padding: 20px;
  }
  body.single-film .main-container section {
    padding: 0;
  }
  body.single-film .main-container .generique {
    padding-left: 20;
    grid-column: 1/1;
    grid-row: 1/1;
  }
  body.single-film .main-container .synopsis {
    grid-column: 1/1;
    grid-row: 2/2;
  }
  body.single-film .main-container .bandeannonce {
    padding-left: 50px;
    grid-column: 2/2;
    grid-row: 1/3;
  }
  body.single-film .main-container .bandeannonce .video-container {
    height: 25vw;
  }
  body.single-film .texte p {
    hyphens: none;
  }
  body.single-film .texte-1 {
    padding-right: 250px;
  }
  body.single-film .texte-2 {
    padding-left: 160px;
    padding-right: 100px;
  }
  .film-bulles > div {
    top: -125px;
  }
  .programmation-film {
    padding-left: 100px !important;
  }
  .programmation-film > ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 40px;
    align-items: top;
  }
  .programmation-film > ul > li {
    margin: 0 !important;
  }
  body.single-ville .coordonnees {
    max-width: 360px;
    margin-left: 0;
  }
  body.single-ville .article-header,
  body.single-ville .ville-programmation .wrap {
    max-width: none;
  }
  .prog-ville {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px 40px;
  }
  .prog-ville .jour {
    margin-top: 0 !important;
  }
  .infos-resa > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 30px;
    max-width: 800px;
  }
  article.apropos .equipe .wrap {
    columns: 2;
    gap: 30px;
    padding: 110px 0 20px;
  }
  article.apropos .equipe .wrap h2 {
    margin-top: -99px;
  }
}
/*********************
DESKTOP
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*********************/
@media only screen and (min-width: 1030px) {
  /******************************************************************
  Site Name:
  Author:

  Stylesheet: Desktop Stylsheet

  This is the desktop size. It's larger than an iPad so it will only
  be seen on the Desktop.

  ******************************************************************/
  /*********************
  GENERAL STYLES
    *********************/
  .wrap {
    width: 990px;
  }
  .wrap#inner-header, .diaporama .wrap {
    width: 92%;
  }
  .desktop-1030 {
    display: block;
  }
  /*


  ********************
  HEADER STYLES
    *********************/
  .header #inner-header {
    justify-content: space-between;
    padding: 20px 0 21px;
    flex-wrap: nowrap;
  }
  .header #inner-header::after {
    display: none;
  }
  .header #inner-header > * {
    width: auto;
  }
  .header #inner-header .logo {
    height: 110px;
  }
  .header #inner-header .logo img {
    height: 144.5px;
  }
  .header #inner-header nav {
    display: block !important;
    height: 110px;
    width: calc(100% - 300px);
    position: static;
    overflow: visible;
  }
  .header #inner-header nav .nav-wrapper {
    padding: 0;
    margin-top: -6px;
    width: auto;
    display: flex;
    justify-content: flex-end;
  }
  .header #inner-header nav .nav-wrapper .top-nav {
    height: 70px;
  }
  .header #inner-header nav .nav-wrapper .desktop-home-dates {
    display: block;
    order: 2;
    font-weight: 700;
    font-style: italic;
    font-size: 1.3em;
    padding: 14px 50px 0 10px;
  }
  .header #inner-header nav .nav-wrapper .pictos-header {
    order: 3;
    text-align: right;
    padding: 0 8px;
    position: static;
    width: auto;
  }
  .header #inner-header nav .nav-wrapper .pictos-header li {
    padding: 1px;
    margin: 0 2px;
  }
  .header #inner-header nav .nav-wrapper .pictos-header li img {
    height: 16px;
  }
  .header #inner-header nav .nav-wrapper .pictos-header li a {
    padding: 5px;
  }
  .menu-button-container {
    display: none !important;
  }
  .header.scrolled-header #inner-header {
    padding: 15px 0 10px;
    height: 74px;
  }
  .header.scrolled-header #inner-header .logo {
    height: 50px;
  }
  .header.scrolled-header #inner-header nav {
    height: auto;
    padding-top: 10px;
  }
  .header.scrolled-header #inner-header .nav-wrapper {
    padding: 0;
  }
  .header.scrolled-header #inner-header .nav-wrapper .top-nav {
    height: auto;
  }
  .header.scrolled-header #inner-header .nav-wrapper .desktop-home-dates {
    display: none;
  }
  .header.scrolled-header #inner-header .pictos-header {
    display: none;
  }
  .header.scrolled-header #inner-header .top-nav {
    font-size: 0.9em;
    padding-top: 0px;
    margin-top: -2px;
  }
  /*

  ********************
  NAVIGATION STYLES
    *********************/
  .nav {
    border: 0;
    padding-top: 0;
    text-align: right;
    /* end .menu ul li */
    /* highlight current page */
    /* end current highlighters */
  }
  .nav > li {
    padding-bottom: 0;
    letter-spacing: 0;
  }
  .nav > li.menu-item-has-children {
    padding-right: 13px;
    position: relative;
  }
  .nav > li.menu-item-has-children::after {
    content: "";
    position: absolute;
    right: 6px;
    top: 5%;
    height: 94%;
    width: 8px;
    opacity: 1;
    background-image: url("../images/down-filled-triangular-arrow-vert.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .nav li {
    display: inline-block;
    position: relative;
    /*
    plan your menus and drop-downs wisely.
    */
    /* showing sub-menus */
  }
  .nav li a {
    border-bottom: 0;
    font-size: 1.05em;
    padding: 0.25em 0.5em;
  }
  .nav li ul.sub-menu,
  .nav li ul.children {
    text-align: left;
    margin-top: 0;
    margin-left: -10px;
    padding: 0 10px 10px 20px;
    background: #C72729;
    border-top: 0;
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.2s;
    z-index: 8999;
    /* highlight sub-menu current page */
  }
  .nav li ul.sub-menu li,
  .nav li ul.children li {
    /*
    if you need to go deeper, go nuts
    just remember deeper menus suck
    for usability. k, bai.
    */
  }
  .nav li ul.sub-menu li a,
  .nav li ul.children li a {
    padding: 2px 0;
    border-right: 0;
    display: block;
    width: 180px;
    font-size: 0.9em;
  }
  .nav li ul.sub-menu li:last-child a,
  .nav li ul.children li:last-child a {
    border-bottom: 0;
  }
  .nav li ul.sub-menu li ul,
  .nav li ul.children li ul {
    top: 0px;
    left: calc(100% + 20px);
  }
  .nav li ul.sub-menu li ul li,
  .nav li ul.children li ul li {
    font-size: 0.9em;
  }
  .nav li ul.sub-menu li ul li:first-of-type,
  .nav li ul.children li ul li:first-of-type {
    padding-top: 4px;
  }
  .nav li ul.sub-menu li ul li a::before,
  .nav li ul.children li ul li a::before {
    content: "> ";
  }
  .nav li:hover > ul {
    top: auto;
    visibility: visible;
    opacity: 1;
    display: block !important;
  }
  /* end .nav */
  .init-menu-mobile .nav .sub-menu .menu-item-has-children > a {
    padding-right: 0px;
    display: block;
  }
  .init-menu-mobile .nav .sub-menu .menu-item-has-children > a::after {
    display: none;
  }
  .diaporama li div {
    height: 60vw;
    max-height: 70vh;
  }
  .diaporama .tagline-container {
    top: 30px;
  }
  .diaporama .tagline {
    font-size: 2.5em;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.22);
    line-height: 1.2;
  }
  .diaporama .tagline span:nth-of-type(2) {
    margin-left: 142px;
  }
  .mobile-home-dates {
    display: none;
  }
  .home-calendrier footer {
    float: right;
    margin-top: -120px;
  }
  .home-citations .slick-dots {
    display: none;
  }
  .home-citations .citation-container:nth-of-type(2) {
    padding-top: 60px;
  }
  .home-calendrier .map-container {
    margin-top: -80px;
  }
  ul.diapo-films {
    width: 90%;
  }
  body.single-film main header {
    padding: 30px 400px 30px 250px;
  }
  body.single-film main header h1 {
    font-size: 3.2em;
  }
  body.single-film main header .avertissement-mobile {
    display: none;
  }
  body.single-film .main-container .bandeannonce {
    padding-left: 100px;
  }
  body.single-film .main-container .bandeannonce .video-container {
    max-height: 320px;
  }
  body.single-film .synopsis {
    margin-top: 20px;
    font-size: 1.125em;
  }
  body.single-film .texte p {
    max-width: 700px;
  }
  body.single-film .texte-2 {
    padding-left: 250px;
  }
  .programmation-film {
    padding: 30px 30px 70px 170px !important;
  }
  .programmation-film > ul {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .film-bulles .avertissement-desktop {
    display: block;
    top: -20px;
    right: 110px;
  }
  .film-bulles .avertissement-desktop .bulle {
    width: 130px;
    height: 130px;
    padding: 15px;
    font-size: 0.8em;
  }
  .film-bulles .avertissement-desktop .bulle p {
    text-align: center;
    hyphens: none;
  }
  .film-bulles > div {
    top: -125px;
  }
  body.single-ville article {
    display: grid;
    grid-template-columns: calc(33% - 20px) calc(67% - 20px);
    gap: 10px 40px;
    width: 990px;
    margin: 0 auto;
  }
  body.single-ville article div .wrap,
  body.single-ville article section .wrap {
    width: auto !important;
  }
  body.single-ville .ville-carte-mobile {
    display: none;
  }
  body.single-ville .ville-carte-desktop {
    display: block;
  }
  body.single-ville .article-header {
    grid-column: 1/2;
    grid-row: 1/1;
  }
  body.single-ville .article-header + div {
    grid-column: 1/1;
    grid-row: 2/2;
  }
  body.single-ville .coordonnees {
    margin: 0;
    max-width: none;
  }
  body.single-ville .map-container {
    margin: 60px 0 0;
    width: 320px;
    height: 225px;
  }
  body.single-ville .ville-programmation {
    grid-column: 2/2;
    grid-row: 2/2;
    padding: 0 0 50px;
  }
  body.single-ville .ville-ensavoirplus {
    grid-column: 1/3;
    grid-row: 3/3;
    width: 300%;
    padding-left: 100%;
    padding-right: 100%;
    margin-left: -100%;
  }
  article.apropos .editos > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 80px;
  }
  article.apropos .editos > div > div:nth-of-type(2) {
    padding-top: 100px;
  }
  article.apropos .main p {
    padding-right: 400px;
  }
  article.apropos .main h3,
  article.apropos .main h3 + p,
  article.apropos .main h3 + p + p,
  article.apropos .main h3 + p + p + p,
  article.apropos .main h3 + p + p + p + p,
  article.apropos .main h3 + p + p + p + p + p {
    padding-left: 250px;
    padding-right: 150px;
  }
  article.ressources .chiffres-numeros .wrap {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px 30px;
    align-items: start;
  }
  article.ressources .chiffres-numeros .chiffres-2 {
    padding-top: 50px;
  }
  article.ressources .chiffres-numeros .numeros {
    margin: 0;
    margin-top: -13px;
  }
  article.ressources .chiffres-numeros .numeros ul {
    font-size: 0.9em;
  }
  article.ressources .acteurs-nationaux .wrap {
    padding-right: 200px;
  }
  article.ressources .acteurs-locaux .wrap {
    padding-left: 150px;
  }
  article.ressources .acteurs-locaux .wrap .ville {
    max-width: none;
  }
}
/*********************
LARGE VIEWING SIZE
This is for the larger monitors and possibly full screen viewers.
*********************/
@media only screen and (min-width: 1240px) {
  /******************************************************************
  Site Name: 
  Author: 

  Stylesheet: Super Large Monitor Stylesheet

  You can add some advanced styles here if you like. This kicks in
  on larger screens.

  ******************************************************************/
  .wrap,
  body.single-ville article {
    width: 1200px;
  }
  .header #inner-header nav .nav-wrapper .desktop-home-dates {
    font-size: 1.8em;
    padding: 7px 100px 0 20px;
  }
  .header #inner-header nav .nav-wrapper .top-nav {
    margin-top: -2px;
  }
  .nav li a {
    font-size: 1.15em;
  }
  .diaporama .tagline {
    font-size: 3em;
  }
  .home-calendrier .map-container {
    margin-top: -120px;
    max-width: 1200px;
    max-height: 869px;
  }
  ul.diapo-films {
    width: 95%;
  }
  body.single-ville .map-container {
    margin: 60px 0 0;
    width: 393px;
    height: 277px;
  }
  .coordonnees div {
    font-size: 0.95em;
  }
  .programmation-film {
    padding-left: 150px !important;
  }
  article.apropos .equipe .wrap {
    padding: 110px 250px 20px 0;
  }
  article.ressources .chiffres-numeros .wrap {
    grid-template-columns: 1fr 1fr 0.8fr;
    gap: 10px 50px;
  }
}
@media only screen and (min-width: 1500px) {
  /******************************************************************
  Site Name: 
  Author: 

  Stylesheet: Super Large Monitor Stylesheet

  You can add some advanced styles here if you like. This kicks in
  on larger screens.

  ******************************************************************/
  .wrap,
  body.single-ville article {
    width: 1400px;
  }
  .home-bulles {
    margin-right: 200px;
    margin-top: -390px;
    padding-bottom: 60px;
  }
  .home-bulles .bulle {
    height: 180px;
    width: 180px;
    border-radius: 90px;
    font-size: 1em;
  }
  .home-citations .citation-container p.citation {
    max-width: 510px;
  }
  body.single-ville article {
    grid-template-columns: calc(25% - 20px) calc(75% - 20px);
  }
  body.single-ville .map-container {
    margin: 60px 0 0;
    width: 320px;
    height: 225px;
  }
  .prog-ville {
    grid-template-columns: 1fr 1fr 1fr;
  }
  body.single-film main header,
  body.single-film main > section,
  body.single-film main .main-container {
    max-width: 1400px;
    margin: 0 auto;
  }
  body.single-film .main-container .bandeannonce .video-container {
    max-height: 360px;
  }
}
/*********************
RETINA (2x RESOLUTION DEVICES)
This applies to the retina iPhone (4s) and iPad (2,3) along with
other displays with a 2x resolution. You can also create a media
query for retina AND a certain size if you want. Go Nuts.
*********************/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  /******************************************************************
  Site Name: 
  Author: 

  Stylesheet: Retina Screens & Devices Stylesheet

  When handling retina screens you need to make adjustments, especially
  if you're not using font icons. Here you can add them in one neat
  place.

  ******************************************************************/
  /* 

  EXAMPLE 
  Let's say you have an image and you need to make sure it looks ok
  on retina screens. Let's say we have an icon which dimension are
  24px x 24px. In your regular stylesheets, it would look something
  like this:

  .icon {
  	width: 24px;
  	height: 24px;
  	background: url(img/test.png) no-repeat;
  }

  For retina screens, we have to make some adjustments, so that image
  doesn't look blurry. So, taking into account the image above and the
  dimensions, this is what we would put in our retina stylesheet:

  .icon {
  	background: url(img/test@2x.png) no-repeat;
  	background-size: 24px 24px;
  }

  So, you would create the same icon, but at double the resolution, meaning 
  it would be 48px x 48px. You'd name it the same, but with a @2x at the end
  (this is pretty standard practice). Set the background image so it matches
  the original dimensions and you are good to go. 

  */
}
/*********************
PRINT STYLESHEET
Feel free to customize this. Remember to add things that won't make
sense to print at the bottom. Things like nav, ads, and forms should
be set to display none.
*********************/
@media print {
  /******************************************************************
  Site Name:
  Author:

  Stylesheet: Print Stylesheet

  This is the print stylesheet. There's probably not a lot
  of reasons to edit this stylesheet. If you want to
  though, go for it.

  ******************************************************************/
  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important;
  }
  a, a:visited {
    color: #444 !important;
    text-decoration: underline;
  }
  a:after, a:visited:after {
    content: " (" attr(href) ")";
  }
  a abbr[title]:after, a:visited abbr[title]:after {
    content: " (" attr(title) ")";
  }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr, img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .sidebar,
  .page-navigation,
  .wp-prev-next,
  .respond-form,
  nav {
    display: none;
  }
}
