@font-face {
    font-family: 'Montserrat';
    src: url('/css/fonts/montserrat/montserrat-bold-webfont.woff2') format('woff2'),
    url('/css/fonts/montserrat/montserrat-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/css/fonts/montserrat/montserrat-extrabold-webfont.woff2') format('woff2'),
    url('/css/fonts/montserrat/montserrat-extrabold-webfont.woff') format('woff');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/css/fonts/montserrat/montserrat-regular-webfont.woff2') format('woff2'),
    url('/css/fonts/montserrat/montserrat-regular-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/css/fonts/montserrat/montserrat-ultralight-webfont.woff2') format('woff2'),
    url('/css/fonts/montserrat/montserrat-ultralight-webfont.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/css/fonts/montserrat/montserrat-light-webfont.woff2') format('woff2'),
    url('/css/fonts/montserrat/montserrat-light-webfont.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/css/fonts/montserrat/montserrat-semibold-webfont.woff2') format('woff2'),
    url('/css/fonts/montserrat/montserrat-semibold-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Ubuntu';
    src: url('/css/fonts/ubuntu/ubuntu-bold-webfont.woff2') format('woff2'),
    url('/css/fonts/ubuntu/ubuntu-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Ubuntu';
    src: url('/css/fonts/ubuntu/ubuntu-light-webfont.woff2') format('woff2'),
    url('/css/fonts/ubuntu/ubuntu-light-webfont.woff') format('woff');
    font-weight: 300;
    font-style: normal;

}

@font-face {
    font-family: 'Ubuntu';
    src: url('/css/fonts/ubuntu/ubuntu-medium-webfont.woff2') format('woff2'),
    url('/css/fonts/ubuntu/ubuntu-medium-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;

}

@font-face {
    font-family: 'Trajan';
    src: url('/css/fonts/trajan/trajanpro-bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;

}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background-position: left top;
    background-repeat: no-repeat;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html, body {
    width: 100%;
    background-color: #FFFFFF;
    -webkit-overflow-scrolling: touch;
}

a {
    color: #91000b;
    text-decoration: none;
}

ul, ul li, ol, ol li {
    list-style: none;
}

div, p, li, td, th, input, button, label, textarea, select, option, h1, h2, h3, h4, h5 {
    font-family: Montserrat, Verdana;
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #333333;
}

h1, h2, h3, h4, h5 {
    font-family: Ubuntu, Verdana;
}

input, textarea, select, option, button {
    font-size: 16px;
    line-height: 21px;
}

h1 {
    color: #FFFFFF;
    font-weight: 700;
    font-size: 70px;
    line-height: 91px;
}

h1 > span {
    display: block;
}

h2 {
    color: #91000b;
    font-weight: 300;
    font-size: 35px;
    line-height: 46px;
    text-transform: uppercase;
}

h3 {
    color: #333333;
    font-weight: 700;
    font-size: 20px;
    line-height: 26px;
    text-transform: uppercase;
}

h4 {
    color: #333333;
    font-weight: bold;
    font-size: 14px;
    line-height: 18px;
}

h5 {
    color: #333333;
    font-weight: bold;
    font-size: 14px;
    line-height: 18px;
}

img {
    vertical-align: baseline;
}

div.clear {
    line-height: 0px !important;
    height: 0px !important;
    width: auto !important;
    min-height: 0px !important;
    min-width: 0px !important;
    overflow: hidden !important;
    clear: both !important;
    float: none !important;
    background: none !important;
    padding: 0px !important;
    margin: 0px !important;
    border: 0px !important;
    zoom: 1 !important;
}

*[data-nextactionexecute] {
    cursor: pointer;
}

input[type=submit], button {
    appearance: button;
    -moz-appearance: button;
    -webkit-appearance: button;
}

input[type=submit],
button,
select {
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
}

div.google-maps {
    background-color: whitesmoke;
}

.leaflet-container {
    z-index: 1;
}

/*=======================================================================================================
GUIDAP
https://guidap.notion.site/Astuces-aide-pour-l-int-gration-du-panier-67e02960c8a04889ac28245494cccdef#70881f02c5fb4596930efff36864f803
=======================================================================================================*/
:root {
    --family-primary: Montserrat, Verdana;
    --text: #0d1e3d;            /* Couleur des textes par défaut */
    --text-light: #6b7a91;      /* Couleur des textes des détails */
    --text-invert: #c7ccd4;     /* Couleur des textes disable */

    --background: #f1f3f5;      /* Couleur de fond générale */
    --white: #ffffff;           /* Fonds blancs et quelsues textes blancs */

    --border: #91000b;          /* Bordures des éléments sélectionnés */
    --border-light: #e2e5e9;    /* Bordures des éléments non sélectionnés */
    --radius: 5px;            /* Arrondis des images, inputs, sélecteurs... */
    --radius-large: 8px;        /* Arrondi des cartes */
    --radius-rounded: 9999px;   /* Arrondi des boutons */

    --primary: #91000b;         /* Couleur des boutons principaux */
    --primary-invert: #FFFFFF;  /* Textes des boutons principaux */
    --black: #0d1e3d;           /* Couleur des boutons secondaires et checkbox */
    --link: #08947b;            /* Couleur des liens */
}
#guidap-popups {
    position: fixed;
    z-index: 125;
}
.gdp-scoped-ui .g-button.button {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    text-transform: none;
    width: 100%;
}
.gdp-scoped-ui .g-button.button:not([disabled]):hover {
    transform: none;
}
.gdp-scoped-ui .g-button.button.style-primary {
    border-radius: 50rem !important;
}
.gdp-scoped-ui .g-button.button.is-medium {
    padding: 0.375rem 0.75rem;
}
.gdp-scoped-ui button.button.guidap-cart-button-element,
.gdp-scoped-ui .guidap-cart-button-bubble {
    color: white;
}
.gdp-scoped-ui  .guidap-cart-button-icon {
    color: white;
    font-size: 1.4rem;
}
.gdp-scoped-ui button.button.guidap-cart-button-element .guidap-cart-button-text {
    display: none;
}
.gdp-scoped-ui button.button.guidap-cart-button-element:not([disabled]):hover {
    transform: none;
}
.gdp-scoped-ui button.button.guidap-cart-button-element:hover {
    background: none;
}
.gdp-scoped-ui .button.is-text.is-focused, .gdp-scoped-ui .button.is-text.is-hovered, .gdp-scoped-ui .button.is-text:focus, .gdp-scoped-ui .button.is-text:hover {
    background-color: transparent;
    color: white;
}


/*=======================================================================================================
BOOTSTRAP
=======================================================================================================*/
.text-primary, .text-primary * {
    color: #91000b !important;
}
.bg-primary, .text-bg-primary, .btn-primary, .btn-primary:hover, .alert-primary {
    background-color: #91000b !important;
    color: white !important;
}
.btn-primary, .btn-primary:hover, .alert-primary {
    border: #91000b !important;
}
.bg-primary a, .alert-primary *, a.btn-primary {
    color: white !important;
}

.bg-secondary, .text-bg-secondary, .btn-secondary, .btn-secondary:hover, .alert-secondary {
    background-color: #EEEEEE !important;
    color: #91000b !important;
}
.btn-secondary, .btn-secondary:hover, .alert-secondary {
    border: #EEEEEE !important;
}
.bg-secondary a, .alert-secondary *, a.btn-secondary {
    color: #91000b !important;
}

.bg-dark, .text-bg-dark, .btn-dark, .btn-dark:hover, .alert-dark {
    background-color: #333333 !important;
    color: white !important;
}

.bg-light, .text-bg-light, .btn-light, .btn-light:hover, .alert-light {
    background-color: #FFFFFF !important;
    color: #91000b !important;
}
.btn-light, .btn-light:hover, .alert-light {
    border: #FFFFFF !important;
}
.bg-light a, .alert-light *, a.btn-light {
    color: #91000b !important;
}

.alert-primary hr, .alert-secondary hr {
    border-top: 2px solid;
    opacity: 1;
}
.alert-primary hr {
    border-color: white !important;
}

/*=======================================================================================================
STYLE MAPS
=======================================================================================================*/
@keyframes fade {
    from {
        position: relative;
    }
    to {
        top: -10px;
    }
}

.marker-active {
    animation: fade 0.5s infinite alternate;
}

/*=======================================================================================================
STYLE GENERAL
=======================================================================================================*/
.red-btn {
    display: block;
    padding: 8px;
    font-size: 18px;
    line-height: 23px;
    font-weight: 600;
    color: #FFFFFF;
    text-transform: uppercase;
    text-align: center;
    background-color: #91000b;
}

.accessibilite {
    display: none;
}

.losange {
    display: block;
    position: relative;
    z-index: 1;
    width: 71px;
    height: 71px;
    color: #FFFFFF;
    transform: scale(1);
    transition: color 0.3s, transform 0.3s;
}

.losange:hover {
    color: #91000b;
    transform: scale(1.1);
}

.losange:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    background-color: #91000b;
    transform: rotate(45deg);
    transition: background-color 0.3s;
}

.losange:hover:before {
    background-color: #FFFFFF;
}

.losange > span:after,
.losange > span:before {
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 40%;
    opacity: 1;
    transition: opacity 0.3s;
}

.losange > span:before {
    opacity: 0;
}

.losange:hover > span:after {
    opacity: 0;
}

.losange:hover > span:before {
    opacity: 1;
}

/*=======================================================================================================
STYLE ELEMENTS DE FORMULAIRE
=======================================================================================================*/

input, textarea, span.form-select {
    width: 100%;
    border: 1px solid #dedddd;
}

input, textarea, span.form-select > select {
    height: 43px;
    padding: 11px;
}

select {
    border: 0;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    font-weight: 300;
    color: #333333;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    font-weight: 300;
    color: #333333;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    font-weight: 300;
    color: #333333;
}

input[type=submit], button {
    padding: 10px;
    border: 0;
    display: block;
    cursor: pointer;
    height: 42px;
    font-size: 20px;
    line-height: 23px;
    font-weight: 600;
    text-transform: uppercase;
    color: #FFFFFF;
    background-color: #333333;
}

input[type=submit]:hover, button:hover {
    background-color: #91000b;
}

input[type="checkbox"], input[type="radio"] {
    width: auto;
    height: auto;
    padding: 0px;
    border: 0px;
}

span.form-checkbox, span.form-radio {
    position: relative;
    width: 43px;
    height: 43px;
    display: inline-block;
    line-height: 43px;
    vertical-align: middle;
    margin-right: 11px;
}

span.form-checkbox > input[type="checkbox"],
span.form-radio > input[type="radio"] {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0px;
    left: 0px;
    opacity: 0;
    height: 100%;
    width: 100%;
}

span.form-checkbox > input[type="checkbox"] + span,
span.form-radio > input[type="radio"] + span {
    position: absolute;
    display: block;
    width: 43px;
    height: 43px;
}

span.form-checkbox > input[type="checkbox"] + span:after,
span.form-radio > input[type="radio"] + span:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    display: block;
    width: 22px;
    height: 22px;
    margin-left: -11px;
    margin-top: -11px;
    background: url(/images/form-checkbox.svg) no-repeat top center;
    background-size: 22px 44px;
}

span.form-checkbox > input[type="checkbox"]:checked + span:after,
span.form-radio > input[type="radio"]:checked + span:after {
    background-position: bottom center;
}

span.form-select {
    position: relative;
    display: block;
    overflow: hidden;
    height: 43px;
    background-color: #91000b;
}

span.form-select:after {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 10px;
    display: block;
    content: '';
    height: 12px;
    width: 12px;
    margin-top: -6px;
    background: url(/images/form-select.svg) no-repeat center center;
    background-size: 12px 12px;
}

span.form-select > select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    z-index: 2;
    width: 100%;
    background: none;
}

span.form-select > select,
span.form-select > select option {
    font-size: 13px;
    line-height: 16px;
    font-weight: 600;
    text-transform: uppercase;
    color: #FFFFFF;
}

span.form-select > select option {
    background-color: #91000b;
}

span.form-file {
    position: relative;
    display: block;
    padding: 0;
    width: 100%;
    overflow: hidden;
    height: 43px;
    background: url(/images/form-file.svg) no-repeat right top;
    background-size: auto 86px;
}

span.form-file:hover {
    background-position: right bottom;
}

span.form-file > span {
    display: block;
    width: auto;
    position: absolute;
    z-index: 1;
    top: 0px;
    left: 0px;
    right: 160px;
    bottom: 0px;
    font-size: 16px;
    font-weight: 400;
    line-height: 43px;
    padding-right: 5px;
    white-space: nowrap;
    overflow: hidden;
    background-color: #FFFFFF;
    border: 1px solid #dedddd;
}

span.form-file > input {
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 2;
    width: 100%;
    filter: alpha(opacity=00);
    opacity: 0;
    cursor: pointer;
}

div.form-input-date {
    position: relative;
    width: 100%;
}
label.form-label-newsletter {
    top: 4px;
    position: relative;
}

div.form-input-date > input.date {
    background: #ffffff url(/images/form-calendar.svg) no-repeat right center;
    background-size: 43px 43px;
}

/*=======================================================================================================
STYLE DU CALENDRIER
=======================================================================================================*/

div.calendar {
    flex: none;
    position: absolute;
    z-index: 5;
    top: 42px;
    left: 0px;
    background-color: #FFFFFF;
    padding: 15px;
    border: 1px solid #dddddd;
}

div.calendars-slide {
    position: relative;
    padding: 25px;
    background-color: #FFFFFF;
    border: 1px solid #eeeeee;
    overflow: hidden;
    width: 323px;
}
div.sita-fiche div.calendars-slide {
    margin: 10px auto auto auto !important;
    width: 920px;
}

div.calendar ul {
    padding: 0 !important;
    margin: 0 !important;
}

div.calendar ul > li::before {
    content: "" !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
}

ul.calendars {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

div.calendars-slide ul.calendars {
    transform: translate(0px);
    transition: transform 0.6s;
}

ul.calendars > li {
    -ms-flex: none;
    flex: none;
    margin-right: 20px;
}

div.calendars-slide ul.calendars > li {
    margin-right: 25px;
}

ul.calendars > li:last-child {
    margin-right: 0px;
}

ul.calendar {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    -ms-flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    width: 273px;
}

ul.calendar > li {
    -ms-flex: none;
    flex: none;
    width: 40px;
    height: 40px;
    margin: -1px 0 0 -1px;
    text-align: center;
    border: 1px solid #dddddd;
    cursor: pointer;
    font-family: Ubuntu, Verdana;
    font-weight: 300;
    font-size: 14px;
    line-height: 38px;
}

div.calendars-slide ul.calendar > li {
    cursor: text;
}

ul.calendar > li > a {
    display: block;
}

ul.calendar > li.month {
    -ms-flex: none;
    flex: none;
    width: 274px;
    height: 45px;
    font-size: 25px;
    line-height: 25px;
    font-weight: 700;
    margin: 0px;
    border: 0px;
}

ul.calendar > li.day {
    font-size: 12px;
    line-height: 14px;
    font-weight: 400;
    height: 14px;
    border: 0px;
}

ul.calendar > li.off {
    color: #dddddd;
    cursor: text;
}

ul.calendar > li.empty {
    border: 0px;
}

ul.calendar > li.select {
    background-color: #91000b;
    color: #FFFFFF;
}

ul.calendar > li.prev,
ul.calendar > li.prev_2,
ul.calendar > li.next,
ul.calendar > li.next_2 {
    border: 0;
    font-size: 16px;
    font-weight: 600;
}

ul.calendar > li.close {
    margin-top: 15px;
    font-size: 16px;
    font-weight: 600;
    width: 100%;
}

/*=======================================================================================================
STYLE DU HIDE SHOW
=======================================================================================================*/

div.hide-show > div {
    display: none;
}

div.hide-show > p {
    margin-top: -17px;
}

div.hide-show > p > a {
    width: 34px;
    height: 34px;
    margin-left: auto;
    margin-right: auto;
}

div.hide-show > p > a:before {
    background-color: #333333;
}

div.hide-show > p > a:hover:before {
    background-color: #91000b;
}

div.hide-show > p > a > span:before,
div.hide-show > p > a > span:after {
    background-size: auto 60%;
    background-image: url(/images/icon-more.svg);
}

div.hide-show.show > p > a > span:before,
div.hide-show.show > p > a > span:after {
    background-image: url(/images/icon-less.svg);
}

div.hide-show > p > a > span > span {
    position: absolute;
    left: 40px;
    top: 23px;
    font-family: Ubuntu, Verdana;
    font-size: 16px;
    line-height: 21px;
    font-weight: 300;
    white-space: nowrap;
    color: #333333;
    opacity: 1;
    transition: opacity 0.3s;
}

div.hide-show > p > a:hover > span > span {
    color: #91000b;
}

div.hide-show > p > a > span > span.hide,
div.hide-show.show > p > a > span > span.display {
    opacity: 0;
}

div.hide-show.show > p > a > span > span.hide {
    opacity: 1;
}

/*=======================================================================================================
STYLE DU DIAPORAMA
=======================================================================================================*/

div.diaporama {
    position: relative;
}

div.diaporama > ul.images > li {
    position: absolute;
    z-index: 1;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    text-align: center;
    overflow: hidden;
    opacity: 0;
    transition: opacity 1s;
}

div.diaporama > ul.images > li.current {
    z-index: 2;
    opacity: 1;
}

div.diaporama > ul.images > li > img {
    width: auto;
    height: 100%;
}

div.diaporama > ul.images > li > iframe {
    width: 100%;
    height: 100%;
}

/*div.section > div.diaporama > ul.images > li > img {
    width: 100%;
    height: auto;
}*/
div.diaporama > ul.nav > li {
    display: none;
    position: absolute;
    z-index: 3;
    left: 5px;
    top: 50%;
    margin-top: -16px;
}

div.diaporama > ul.nav > li > a {
    display: block;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    width: 18px;
    height: 32px;
    background: url(/images/icon-arrow-light-left.svg) no-repeat center center;
    background-size: 32px 32px;
}

div.diaporama > ul.nav > li.next {
    left: auto;
    right: 5px;
}

div.diaporama > ul.nav > li.next > a {
    background-image: url(/images/icon-arrow-light-right.svg);
}

div.diaporama-legend {
    padding-top: 30px;
}

div.diaporama > ul.images > li:before,
div.diaporama > ul.nav > li:before,
div.page-section div.diaporama-legend ul > li:before {
    content: none;
}

/*=======================================================================================================
STYLE DES PUSHS
=======================================================================================================*/

ul.home-push {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -ms-flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 790px;
}

ul.home-push > li {
    margin-right: 30px;
    margin-bottom: 30px;
}

ul.home-push > li:last-child,
ul.home-push > li:not(.picto):nth-child(3n),
ul.home-push > li.picto:nth-child(4n) {
    margin-right: 0px;
}

p.home-push > a {
    margin-left: auto;
    margin-right: auto;
}

p.home-push > a,
ul.home-push > li > a {
    display: block;
    width: 212px;
    height: 47px;
    padding-top: 10px;
    background: rgba(0, 0, 0, 0.5) url(/images/bg-push.svg) no-repeat center center;
    background-size: cover;
    border: 2px solid #FFFFFF;
    font-size: 20px;
    line-height: 26px;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    color: #FFFFFF;
}

p.home-push.picto > a,
ul.home-push > li.picto > a {
    position: relative;
    width: 175px;
    height: 175px;
    padding-top: 133px;
    background-image: none;
    -webkit-box-shadow: -2px 2px 5px 0px rgba(0, 0, 0, 0.5), -2px 2px 5px 0px rgba(0, 0, 0, 0.2) inset;
    -moz-box-shadow: -2px 2px 5px 0px rgba(0, 0, 0, 0.5), -2px 2px 5px 0px rgba(0, 0, 0, 0.2) inset;
    box-shadow: -2px 2px 5px 0px rgba(0, 0, 0, 0.5), -2px 2px 5px 0px rgba(0, 0, 0, 0.2) inset;
}

p.home-push.picto > a,
ul.home-push > li.picto > a:before {
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    height: 133px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 80px 80px;
}

p.home-push.picto.dormir > a,
ul.home-push > li.picto.dormir > a:before {
    background-image: url(/images/sita/icon-dormir.svg);
}

p.home-push.picto.manger > a,
ul.home-push > li.picto.manger > a:before {
    background-image: url(/images/sita/icon-manger.svg);
}

p.home-push.picto.activites > a,
ul.home-push > li.picto.activites > a:before {
    background-image: url(/images/sita/icon-activites.svg);
}

p.home-push.picto.agenda > a,
ul.home-push > li.picto.agenda > a:before {
    background-image: url(/images/sita/icon-calendar.svg);
}

ul.push {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    -ms-flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}

ul.push > li {
    -ms-flex: none;
    flex: none;
    position: relative;
    width: 380px;
    height: 250px;
    margin-right: 30px;
    margin-bottom: 30px;
    background: #333333 no-repeat center center;
    background-size: cover;
    overflow: hidden;
}

ul.push > li > a {
    display: block;
    width: 100%;
    height: 100%;
}

ul.push > li > a > span {
    display: block;
    width: 100%;
    font-family: Ubuntu, Verdana;
    font-weight: 500;
    font-size: 35px;
    line-height: 35px;
    text-transform: uppercase;
    text-align: center;
    color: #FFFFFF;
    background: rgba(145, 0, 11, 1) url(/images/bg-push-red.svg) no-repeat center center;
    background-size: cover;
    transform-origin: center top;
    transform: scale(0.45) translateY(22px);
    transition: transform 0.6s, line-height 0.6s, background-color 0.6s;
}

ul.push > li > a:hover > span {
    transform: scale(1) translateY(0px);
    line-height: 250px;
    background-color: rgba(145, 0, 11, 0.90);
}

ul.push > li > a > span > span {
    display: inline-block;
    padding: 5px;
    margin-top: 0px;
    vertical-align: middle;
    font-size: 35px;
    line-height: 45px;
    transition: margin-top 1s;
}

ul.push > li > a:hover > span > span {
    margin-top: -10px;
}

ul.push > li > a > span > span > span {
    display: block;
}

ul.push > li:nth-child(3n),
ul.push > li:last-child {
    margin-right: 0;
}

/*=======================================================================================================
STYLE DES ICONES PRESTATIONS
=======================================================================================================*/

ul.prestations {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -ms-flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

ul.prestations > li {
    -ms-flex: none;
    flex: none;
    width: 27px;
    height: 27px;
    font-size: 1px;
    line-height: 1px;
    margin-right: 4px;
    color: transparent;
    background: no-repeat center center;
    background-size: 27px 27px;
}

ul.prestations > li:nth-child(5n),
ul.prestations > li:last-child {
    margin-right: 0px;
}

ul.prestations > li.animaux, .prest-animaux {
    /*background-image: url(/images/prestations/icon-animaux.svg);*/
    background-image: url(/images/prestations/icon-animaux.png);
}

ul.prestations > li.piscine, .prest-piscine {
    /*background-image: url(/images/prestations/icon-piscine.svg);*/
    background-image: url(/images/prestations/icon-piscine.png);
}

ul.prestations > li.terrasse, .prest-terrasse {
    /*background-image: url(/images/prestations/icon-terrasse.svg);*/
    background-image: url(/images/prestations/icon-terrasse.png);
}

ul.prestations > li.wifi, .prest-wifi {
    /*background-image: url(/images/prestations/icon-wifi.svg);*/
    background-image: url(/images/prestations/icon-wifi.png);
}

ul.prestations > li.tv, .prest-tv {
    /*background-image: url(/images/prestations/icon-tv.svg);*/
    background-image: url(/images/prestations/icon-tv.png);
}

ul.prestations > li.cuisine, .prest-cuisine {
    /*background-image: url(/images/prestations/icon-cuisine.svg);*/
    background-image: url(/images/prestations/icon-cuisine.png);
}

ul.prestations > li.draps, .prest-draps {
    background-image: url(/images/prestations/icon-draps.svg);
}

ul.prestations > li.baby, .prest-baby {
    background-image: url(/images/prestations/icon-baby.svg);
}

ul.prestations > li.parking, .prest-parking {
    /*background-image: url(/images/prestations/icon-parking.svg);*/
    background-image: url(/images/prestations/icon-parking.png);
}

ul.prestations > li.accessible, .prest-accessible {
    background-image: url(/images/prestations/icon-accessible.svg);
    background-size: cover;
}

/*=======================================================================================================
STYLE DE LA BANNIERE
=======================================================================================================*/
div.banniere {
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    right: 0;
    height: 30px;
    padding: 5px;
    background-color: #91000b;
}
div.banniere a {
    display: block;
    text-align: center;
    font-size: 15px;
    color: white;
}

div.banniere ~ div.cadre header div.responsive-menu {
    top: 30px !important;
}
div.banniere ~ div.cadre header div.menu {
    top: 30px !important;
}
div.banniere ~ div.cadre div.section {
    padding-top: 60px !important;
}

/*=======================================================================================================
STYLE DU  MENU
=======================================================================================================*/

div.responsive-menu {
    display: none;
    position: fixed;
    z-index: 101;
    left: 10px;
    right: 10px;
    top: 0;
    height: 60px;
    background: #333333 url(/images/bg-header-menu.svg) no-repeat center center / cover;
}

div.responsive-menu > ul > li > a {
    position: absolute;
    z-index: 1;
    top: 5px;
    bottom: 0;
    right: 0;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
}

div.responsive-menu > ul > li.logo > a {
    left: 0;
    background: #91000b url(/images/logo-conques-responsive.svg) no-repeat 5px center / auto 45px;
}

div.responsive-menu > ul > li.burger > a {
    z-index: 2;
    width: 55px;
    background: rgba(0, 0, 0, 0.1);
}

div.responsive-menu > ul > li.burger > a:before,
div.responsive-menu > ul > li.burger > a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: opacity 0.6s;
}

div.responsive-menu > ul > li.burger > a:before {
    opacity: 1;
    background: url(/images/icon-burger.svg) no-repeat center center / auto 40px;
}

div.responsive-menu > ul > li.burger > a:after {
    opacity: 0;
    background: url(/images/icon-cross.svg) no-repeat center center / auto 30px;
}

div.nav.open div.responsive-menu > ul > li.burger > a:before {
    opacity: 0;
}

div.nav.open div.responsive-menu > ul > li.burger > a:after {
    opacity: 1;
}

div.menu {
    position: fixed;
    z-index: 100;
    top: 0px;
    left: 0px;
    right: 0px;
}

div.menu > div.menu-head {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0;
    height: 30px;
    background: #333333 url(/images/bg-header-menu.svg) no-repeat center center / cover;
}

div.menu > div.menu-head > ul {
    position: absolute;
    right: 50%;
    margin-right: -275px;
    font-size: 0px;
    line-height: 0px;
    height: 30px;

    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: end;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
}

div.menu > div.menu-head > ul > li {
    -ms-flex: content;
    flex: 0 0 auto;
}

div.menu > div.menu-head > ul > li > a {
    display: block;
    padding-right: 15px;
    padding-left: 15px;
    height: 30px;
    font-size: 12px;
    line-height: 30px;
    text-transform: uppercase;
    color: #FFFFFF;
}

div.menu > div.menu-head > ul.options {
    margin-right: -600px;
}

div.menu > div.menu-head > ul.options > li {
    margin-right: 10px;
}

div.menu > div.menu-head > ul.options > li > a {
    padding: 3px;
    padding-bottom: 0px;
    line-height: 24px;
    border-bottom: 2px solid #91000b;
}

div.menu > div.menu-head > ul.options > li.selection > a {
    position: relative;
    padding-right: 30px;
}

div.menu > div.menu-head > ul.options > li.selection > a > span {
    display: block;
    position: absolute;
    z-index: 2;
    right: 0px;
    top: 4px;
    padding-top: 3px;
    height: 12px;
    width: 12px;
    font-size: 8px;
    font-weight: 800;
    line-height: 8px;
    text-align: center;
    border-radius: 6px;
    background: #91000b;
}

div.menu > div.menu-head > ul.options > li.selection > a:after {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    right: 5px;
    top: 5px;
    width: 20px;
    height: 20px;
    background: url(/images/icon-heart.svg) no-repeat center top;
    background-size: 20px 40px;
}

div.menu > div.menu-head > ul.options > li.malvoyant > a {
    width: 30px;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    background: url(/images/icon-eye.svg) no-repeat center center;
    background-size: 24px 24px;
}

div.menu > div.menu-head > ul.options > li.langues {
    position: relative;
    margin-right: 0px;
}

div.menu > div.menu-head > ul.options > li.langues > a {
    position: relative;
    font-size: 18px;
    font-weight: 300;
    padding-right: 15px;
}

div.menu > div.menu-head > ul.options > li.langues > a:after {
    content: "";
    display: block;
    position: absolute;
    top: 9px;
    right: 0px;
    height: 12px;
    width: 12px;
    background: url(/images/icon-arrow-down.svg) no-repeat center center;
    background-size: 12px 12px;
}

div.menu > div.menu-head > ul.options > li.langues > ul {
    display: none;
    position: absolute;
    z-index: 3;
    left: 0px;
    right: 0px;
    top: 30px;
    background-color: #333333;
}

div.menu > div.menu-head > ul.options > li.langues:hover > ul {
    display: block;
}

div.menu > div.menu-head > ul.options > li.langues > ul > li > a {
    padding: 3px;
    display: block;
    font-size: 18px;
    line-height: 23px;
    font-weight: 300;
    color: #FFFFFF;
    text-transform: uppercase;
    border-bottom: 2px solid #91000b;
}

div.menu > div.menu-head > ul.institutions {
    position: fixed;
    z-index: 4;
    right: 0;
    bottom: 0;
    margin-right: 0;
    height: auto;
    -ms-flex-direction: column;
    -ms-flex-align: end;
    flex-direction: column;
    align-items: flex-end;
    display: none;
}

div.menu > div.menu-head > ul.institutions > li {
    -ms-flex: none;
    flex: none;
}

div.menu > div.menu-head > ul.institutions > li.midi-pyrenees > a,
div.menu > div.menu-head > ul.institutions > li.aveyron-vivre-vrai > a {
    display: block;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
}
div.menu > div.menu-head > ul.institutions > li.midi-pyrenees > a {
    width: 112px;
    height: 164px;
    background: url(/images/icon-midi-pyrenees.svg);
    background-size: 112px 164px;
}
div.menu > div.menu-head > ul.institutions > li.aveyron-vivre-vrai > a {
    height: 37px;
    width: 112px;
    background-image: url(/images/icon-aveyron-vivre-vrai.svg);
    background-size: 112px 37px;
}

body.home div.menu > div.menu-head > ul.institutions {
    display: -ms-flex;
    display: flex;
}

div.menu > div.menu-nav {
    position: absolute;
    top: 30px;
    left: 0px;
    right: 0px;
    height: 53px;
    background-color: rgba(51, 51, 51, 0.8);
}

div.menu > div.menu-nav > ul {
    position: absolute;
    top: 0px;
    right: 50%;
    margin-right: -600px;
    height: 53px;

    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: end;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
}

div.menu > div.menu-nav > ul > li {
    -ms-flex: content;
    flex: 0 0 auto;
}

div.menu > div.menu-nav > ul > li > a {
    display: block;
    font-family: Trajan, Verdana;
    font-size: 15px;
    line-height: 49px;
    font-weight: 700;
    text-transform: uppercase;
    color: #FFFFFF;
    padding-left: 16px;
    padding-right: 17px;
    padding-top: 4px;
}
div.menu > div.menu-nav > ul > li:not(.envie) > ul {
    display: none;
    background-color: rgba(51, 51, 51, 0.8);
}
div.menu > div.menu-nav > ul > li:not(.envie):hover > ul {
    display: block;
    position: absolute;
}
div.menu > div.menu-nav > ul > li:not(.envie) > ul li {
}
div.menu > div.menu-nav > ul > li:not(.envie) > ul li a {
    display: block;
    padding: 10px;
    color: white;
}
div.menu > div.menu-nav > ul > li:not(.envie) > ul li a:hover {
    background-color: #91000b;
}

div.menu > div.menu-nav > ul > li.home {
    position: absolute;
    z-index: 3;
    top: -30px;
    right: 980px;
}

div.menu > div.menu-nav > ul > li.home > a {
    display: block;
    padding: 0px;
    width: 220px;
    height: 137px;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    background: #91000b;
    transition: height 0.3s;
}

div.menu > div.menu-nav > ul > li.home > a:after,
div.menu > div.menu-nav > ul > li.home > a:before {
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 100%;
    background: url(/images/logo-conques.svg) no-repeat center center;
    background-size: auto 135px;
    opacity: 1;
    transition: opacity 0.3s;
}

div.menu > div.menu-nav > ul > li.home > a:before {
    background: url(/images/logo-conques-mini.svg) no-repeat center center;
    background-size: auto 100px;
    opacity: 0;
}

div.menu > div.menu-nav > ul > li.home.scroll > a {
    height: 100px;
}

div.menu > div.menu-nav > ul > li.home.scroll > a:after {
    opacity: 0;
}

div.menu > div.menu-nav > ul > li.home.scroll > a:before {
    opacity: 1;
}

div.menu > div.menu-nav > ul > li.search {
    position: relative;
    padding-left: 16px;
    background-color: transparent;
    transition: background-color 0.3s;
}

div.menu > div.menu-nav > ul > li.search.open {
    background-color: #91000b;
}

div.menu > div.menu-nav > ul > li.search > form {
    position: absolute;
    left: 0px;
    right: 100%;
    height: 53px;
    padding-left: 0px;
    overflow: hidden;
    background-color: transparent;
    transition: left 0.6s, padding-left 0.6s, background-color 0.6s;
}

div.menu > div.menu-nav > ul > li.search.open > form {
    left: -941px;
    padding-left: 918px;
    background-color: #91000b;
}

div.menu > div.menu-nav > ul > li.search > form > label {
    display: block;
    position: absolute;
    top: 6px;
    left: 6px;
    right: 33px;
    overflow: hidden;
}

div.menu > div.menu-nav > ul > li.search > form > label > input {
    height: 40px;
}

div.menu > div.menu-nav > ul > li.search > form > input[type="submit"] {
    display: block;
    background: transparent url(/images/icon-search.svg) no-repeat right center;
    background-size: 23px 23px;
    width: 23px;
    height: 53px;
    padding: 0px;
    margin: 0px;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
}

div.menu > div.menu-nav > ul > li.search > a {
    position: relative;
    height: 53px;
    width: 23px;
    line-height: 1px;
    font-size: 1px;
    color: transparent;
    padding: 0px;
}

div.menu > div.menu-nav > ul > li.search > a:before,
div.menu > div.menu-nav > ul > li.search > a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    height: 53px;
    width: 23px;
    background: url(/images/icon-search.svg) no-repeat right center;
    background-size: 23px 23px;
    opacity: 1;
    transition: opacity 0.6s;
}

div.menu > div.menu-nav > ul > li.search > a:after {
    opacity: 0;
    left: -6px;
    background-image: url(/images/icon-cross.svg);
}

div.menu > div.menu-nav > ul > li.search.open > a:before {
    opacity: 0;
}

div.menu > div.menu-nav > ul > li.search.open > a:after {
    opacity: 1;
}

div.menu > div.menu-nav > ul > li.envie {
    -ms-flex: none;
    flex: none;
    display: none;
    position: absolute;
    z-index: 4;
    right: 15px;
    top: 90px;
}

body.home div.menu > div.menu-nav > ul > li.envie {
    display: block;
}

div.menu > div.menu-nav > ul > li.envie > a {
    padding: 0px;
    padding-top: 14px;
    padding-left: 7px;
    font-family: 'Montserrat', Verdana;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    transform: scale(1);
}

div.menu > div.menu-nav > ul > li.envie > a:hover,
div.menu > div.menu-nav > ul > li.envie.open > a {
    color: #91000b;
    transform: scale(1.1);
}

div.menu > div.menu-nav > ul > li.envie > a:hover:before,
div.menu > div.menu-nav > ul > li.envie.open > a:before {
    background-color: #FFFFFF;
}

div.menu > div.menu-nav > ul > li.envie > a > span {
    display: block;
    padding-left: 10px;
}

div.menu > div.menu-nav > ul > li.envie > a > span:first-child {
    padding-left: 0px;
}

div.menu > div.menu-nav > ul > li.envie > ul {
    display: none;
    position: fixed;
    z-index: -1;
    right: 0px;
    left: 0px;
    top: 0px;
    bottom: 0px;
    background: rgba(0, 0, 0, 0.75);
    overflow: hidden;
}

div.menu > div.menu-nav > ul > li.envie > ul > li {
    display: none;
    position: absolute;
    right: 50%;
    top: 140px;
    margin-right: -495px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(2) {
    top: 195px;
    margin-right: -550px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(3) {
    top: 222px;
    margin-right: -467px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(4) {
    top: 167px;
    margin-right: -412px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(5) {
    top: 140px;
    margin-right: -329px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(6) {
    top: 195px;
    margin-right: -274px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(7) {
    top: 222px;
    margin-right: -357px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(8) {
    top: 277px;
    margin-right: -522px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(9) {
    top: 277px;
    margin-right: -412px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(10) {
    top: 277px;
    margin-right: -302px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li > a {
    display: block;
    font-size: 12px;
    line-height: 12px;
    text-align: center;
    text-transform: uppercase;
}

div.menu > div.menu-nav > ul > li.envie > ul > li > a > span {
    display: block;
    padding-top: 34px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li > a > span:after,
div.menu > div.menu-nav > ul > li.envie > ul > li > a > span:before {
    height: 34px;
    width: 71px;
    background-size: auto 34px;
}

div.menu > div.menu-nav > ul > li.envie > ul > li.culture > a > span:after {
    background-image: url(/images/envies/icon-culture.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.nature > a > span:after {
    background-image: url(/images/envies/icon-nature.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.art-vivre > a > span:after {
    background-image: url(/images/envies/icon-cooking.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.famille > a > span:after {
    background-image: url(/images/envies/icon-people.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.pluie > a > span:after {
    background-image: url(/images/envies/icon-pluie.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.accessible > a > span:after {
    background-image: url(/images/envies/icon-acces.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.amis > a > span:after {
    background-image: url(/images/envies/icon-amis.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.amoureux > a > span:after {
    background-image: url(/images/envies/icon-amoureux.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.fraicheur > a > span:after {
    background-image: url(/images/envies/icon-fraicheur.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.bio > a > span:after {
    background-image: url(/images/envies/icon-ecolo.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.culture > a > span:before {
    background-image: url(/images/envies/icon-culture-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.nature > a > span:before {
    background-image: url(/images/envies/icon-nature-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.art-vivre > a > span:before {
    background-image: url(/images/envies/icon-cooking-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.famille > a > span:before {
    background-image: url(/images/envies/icon-people-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.pluie > a > span:before {
    background-image: url(/images/envies/icon-pluie-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.accessible > a > span:before {
    background-image: url(/images/envies/icon-acces-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.amis > a > span:before {
    background-image: url(/images/envies/icon-amis-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.amoureux > a > span:before {
    background-image: url(/images/envies/icon-amoureux-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.fraicheur > a > span:before {
    background-image: url(/images/envies/icon-fraicheur-red.svg);
}

div.menu > div.menu-nav > ul > li.envie > ul > li.bio > a > span:before {
    background-image: url(/images/envies/icon-ecolo-red.svg);
}

/*=======================================================================================================
STYLE DU FOOTER
=======================================================================================================*/

div.footer {
    position: relative;
    background: #333333 url(/images/bg-footer.svg) no-repeat center center;
    background-size: cover;
}

div.footer > div.back {
    position: absolute;
    right: 50%;
    top: -39px;
    margin-right: -440px;
}

div.footer > div.back:after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    bottom: -48px;
    left: 50%;
    margin-left: -32px;
    width: 0px;
    height: 0px;
    border: 32px solid transparent;
    border-top-color: #333333;
}

div.footer > div.back > a {
    width: 55px;
    height: 55px;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
}

div.footer > div.back > a > span:before {
    background-image: url(/images/icon-arrow-up-red.svg);
    background-position: center 15px;
}

div.footer > div.back > a:hover > span:before {
    animation-name: bounce-up;
    animation-duration: 0.3s;
    animation-direction: alternate;
    animation-iteration-count: infinite;
}

div.footer > div.back > a > span:after {
    background-image: url(/images/icon-arrow-up.svg);
    background-position: center 15px;
}

@keyframes bounce-up {
    from {
        background-position: center 15px;
    }
    to {
        background-position: center 10px;
    }
}

div.foot-head {
    margin-left: auto;
    margin-right: auto;
    width: 1200px;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

div.foot-head h2 {
    font-size: 23px;
    line-height: 30px;
    font-weight: 700;
    color: #FFFFFF;
    text-transform: none;

}

div.foot-head > div.infos {
    -ms-flex: 1;
    flex: 1;
    margin-right: 30px;
}

div.foot-head > div.infos > div.more-details {
    border-bottom: 1px solid #7a7979;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

div.foot-head > div.infos > div.more-details > div.medias {
    -ms-flex: 1;
    flex: 1;
}

div.foot-head > div.infos > div.more-details > div.medias > div {
    border-bottom: 1px solid #7a7979;
}

div.foot-head > div.infos > div.more-details > div.medias > div:last-child {
    border-bottom: 0px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.newsletter {
    padding-top: 48px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > h2 > span {
    display: block;
    font-family: Montserrat, Verdana;
    font-weight: 800;
    font-size: 12px;
    line-height: 16px;
    text-transform: uppercase;
    padding-left: 20px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form {
    padding: 17px;
    padding-top: 9px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form div.form-input {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form div.form-text {
    -ms-flex: 1;
    flex: 1;
}
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form div.form-text > input {
    height: 50px;
}
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form div.form-validate {
    -ms-flex: none;
    flex: none;
    width: 50px;
}
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form div.form-validate > input {
    background-color: #91000b;
    height: 50px;
    width: 50px;
}
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form div.form-rgpd {
    margin-top: 10px;
}
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > form div.form-rgpd > label {
    color: white;
    font-size: 13px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us {
    padding-top: 18px;

    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > h2 {
    -ms-flex: content;
    flex: 0 0 auto;
    margin-top: -5px;
    padding-right: 14px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    -ms-flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li {
    -ms-flex: content;
    flex: 0 0 auto;
    margin-right: 18px;
    margin-bottom: 18px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li > a {
    display: block;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    width: 33px;
    height: 33px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 33px 33px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li.facebook > a {
    background-image: url(/images/social-media/icon-facebook.svg);
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li.twitter > a {
    background-image: url(/images/social-media/icon-twitter.svg);
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li.instagram > a {
    background-image: url(/images/social-media/icon-instagram.svg);
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li.google {
    display: none;
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li.google > a {
    background-image: url(/images/social-media/icon-google-plus.svg);
}

div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul > li.youtube > a {
    background-image: url(/images/social-media/icon-youtube.svg);
}

div.foot-head > div.infos > div.more-details > div.medias > div.brochures,
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter {
    padding: 18px;
}
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter {
    margin-top: 48px;
}

div.foot-head > div.infos > div.more-details > div.medias > div.brochures > h2 > a,
div.foot-head > div.infos > div.more-details > div.medias > div.newsletter > h2 > a{
    display: block;
    padding: 8px;
    font-family: Montserrat, Verdana;
    font-size: 18px;
    line-height: 23px;
    font-weight: 600;
    color: #FFFFFF;
    text-transform: uppercase;
    text-align: center;
    background-color: #91000b;
}

div.foot-head > div.infos > div.more-details > div.maps {
    -ms-flex: 0.9;
    flex: 0.9;
    position: relative;
    margin-top: 60px;
    margin-bottom: 20px;
    margin-left: 20px;
    border-left: 1px solid #7a7979;
    background: url(/images/bg-footer-map.svg) no-repeat 60px center;
    background-size: 300px 300px;
}

div.foot-head > div.infos > div.more-details > div.maps > a {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
}

div.foot-head > div.infos > div.partenaires {
    padding-top: 20px;
    padding-bottom: 20px;
}

div.foot-head > div.infos > div.partenaires > div {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

div.foot-head > div.infos > div.partenaires > div > h2 {
    -ms-flex: content;
    flex: 0 0 auto;
    font-family: Montserrat, Verdana;
    font-size: 12px;
    line-height: 50px;
    font-weight: 800;
    text-transform: uppercase;
    padding-right: 30px;
    color: #9d9d9d;
}

div.foot-head > div.infos > div.partenaires > div > ul {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    -ms-flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}

div.foot-head > div.infos > div.partenaires > div > ul > li {
    -ms-flex: content;
    flex: 0 0 auto;
    margin-right: 15px;
}

div.foot-head > div.infos > div.partenaires > div > ul > li:last-child {
    margin-right: 0;
}

div.foot-head > div.infos > div.partenaires > div > ul > li > a > img {
    width: auto;
    height: 45px;
}

div.foot-head > div.contact {
    -ms-flex: none;
    flex: none;
    width: 381px;
    padding-top: 165px;
    padding-bottom: 20px;
    background: #91000b url(/images/logo-conques.svg) no-repeat center 40px;
    background-size: auto 122px;
    text-align: center;
}

div.foot-head > div.contact * {
    font-family: Montserrat, Verdana;
    font-weight: 700;
    font-size: 18px;
    line-height: 23px;
    color: #FFFFFF;
}

div.foot-head > div.contact > h2 > span {
    display: block;
    text-transform: uppercase;
}

div.foot-head > div.contact > p.button {
    padding-top: 18px;
}

div.foot-head > div.contact > p.button > a {
    display: block;
    width: 245px;
    height: 40px;
    font-size: 19px;
    line-height: 40px;
    color: #91000b;
    text-transform: uppercase;
    background-color: #FFFFFF;
    margin-left: auto;
    margin-right: auto;
}

div.foot-menu {
    background-color: #FFFFFF;
}

div.foot-menu > ul {
    width: 1200px;
    margin-right: auto;
    margin-left: auto;

    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: center;
    -ms-flex-align: stretch;
    -ms-flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}

div.foot-menu > ul > li {
    position: relative;
    -ms-flex: content;
    flex: 0 0 auto;
}

div.foot-menu > ul > li:before {
    position: absolute;
    left: -1px;
    top: 0px;
    content: "-";
}

div.foot-menu > ul > li:first-child:before {
    content: "";
}

div.foot-menu > ul > li,
div.foot-menu > ul > li > a {
    font-size: 12px;
    line-height: 26px;
    font-weight: 700;
    color: #333333;
}

div.foot-menu > ul > li > a {
    display: block;
    padding-left: 5px;
    padding-right: 5px;
}

/*=======================================================================================================
STYLE DU DISPLAY SUPPORT
=======================================================================================================*/

.display-smartphone,
.display-tablette {
    display: none !important;
}

.display-desktop {
    display: -ms-flex !important;
    display: flex !important;
}

/*=======================================================================================================
STYLE DU CADRE GENERAL
=======================================================================================================*/
div.section {
    padding-top: 30px;
}

div.section > h1 {
    display: none;
}

div.section > div.info > div,
div.section > div.echec > div {
    min-height: 500px;
    margin-left: 10px;
    margin-right: 10px;
    text-align: center;
    display: -ms-flex;
    -ms-flex-direction: column;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/*=======================================================================================================
STYLE D ACCUEIL
=======================================================================================================*/

div.home-slides > ul {
    position: fixed;
    z-index: 1;
    top: 0px;
    bottom: 0px;
    right: 50%;
    margin-right: -600px;
    width: 10px;
    display: -ms-flex;
    -ms-flex-direction: column;
    -ms-flex-pack: center;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
}

div.home-slides > ul > li {
    -ms-flex: none;
    flex: none;
    position: relative;
    width: 10px;
    height: 10px;
    margin-bottom: 12px;
    cursor: pointer;
}

div.home-slides > ul > li:last-child {
    margin-bottom: 0px;
}

div.home-slides > ul > li:before {
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    transform: rotate(45deg);
    background-color: #FFFFFF;
    -webkit-box-shadow: -1px 2px 5px 0px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: -1px 2px 5px 0px rgba(0, 0, 0, 0.5);
    box-shadow: -1px 2px 5px 0px rgba(0, 0, 0, 0.5);
    transition: background-color 0.3s;
}

div.home-slides > ul > li.current:before {
    background-color: #91000b;
}

div.home-slides > div {
    position: relative;
    z-index: 0;
    min-height: 400px;
    padding-top: 50px;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    display: -ms-flex;
    -ms-flex-direction: column;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

@media not all and (min-resolution: .001dpcm) {
    @media {
        div.home-slides > div {
            background-attachment: scroll;
        }
    }
}

div.home-slides > div.align-gauche {
    background-position-x: left;
}

div.home-slides > div.align-droite {
    background-position-x: right;
}

div.home-slides > div.align-haut {
    background-position-y: top;
}

div.home-slides > div.align-bas {
    background-position-y: bottom;
}

div.home-slides > div:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.25);
}

div.home-slides > div > * {
    -ms-flex: content;
    flex: 0 0 auto;
}

div.home-slides > div > h2 {
    font-size: 70px;
    line-height: 91px;
    font-weight: 700;
    text-transform: none;
    text-align: center;
    color: #FFFFFF;
    text-shadow: -2px 2px 5px rgba(0, 0, 0, 1);
    padding-bottom: 25px;
}

div.home-slides > div > h2 > span {
    display: block;
}

div.home-slides > div > p {
    width: 740px;
    font-size: 20px;
    line-height: 26px;
    font-weight: 600;
    text-align: center;
    color: #FFFFFF;
    text-shadow: -2px 2px 5px rgba(0, 0, 0, 0.35);
    padding-bottom: 25px;
}

div.home-slides > div > p.next {
    -ms-flex: none;
    flex: none;
    position: absolute;
    left: 50%;
    bottom: 4%;
    margin-left: -26px;
    width: auto;
    padding: 0px;
}

div.home-slides > div:last-child > p.next {
    display: none;
}

div.home-slides > div > p.next > a,
div.diaporama p.prev > a,
div.diaporama p.next > a {
    width: 52px;
    height: 52px;
    font-size: 0;
    line-height: 1px;
    color: transparent;
}
div.diaporama p.prev > a {
    transform: rotate(90deg);
}
div.diaporama p.next > a {
    transform: rotate(-90deg);
}

div.home-slides div.home-slide[data-video-immersive="1"] {
    padding: 0;
}

div.home-slides div.home-slide[data-video-immersive="1"] *:not(video) {
    z-index: 200;
}

div.home-slides div.home-slide[data-video-immersive="1"] video {
    position: absolute;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

div.home-slides div.video-btn-play, div.home-slides div.video-btn-close {
    background-position: top;
    color: white;
    cursor: pointer;
    text-align: center;
}
div.home-slides div.video-btn-play {
    background-image: url(/images/icon-play.svg);
    background-size: 80px;
    width: 100px;
    padding-top: 90px;
}
div.home-slides div.video-btn-close {
    background-image: url(/images/icon-cross.svg);
    background-size: 40px;
    width: 120px;
    padding-top: 45px;
    font-size: 12px;
    position: absolute;
    top: 65px;
    right: 5px;
}
div.home-slides .video-controls {
    display: none;
}
div.home-slides iframe {
    width: 100%;
}
div.home-slides div.video-is-playing {
    padding-top: 0;
}

div.home-slides > div > p.next > a > span:before,
div.diaporama p.prev > a > span:before,
div.diaporama p.next > a > span:before {
    background-image: url(/images/icon-arrow-down-red.svg);
    background-position: center 18px;
}

div.home-slides > div > p.next > a:hover > span:before,
div.diaporama p.prev > a:hover > span:before,
div.diaporama p.next > a:hover > span:before {
    animation-name: bounce;
    animation-duration: 0.3s;
    animation-direction: alternate;
    animation-iteration-count: infinite;
}

div.home-slides > div > p.next > a > span:after,
div.diaporama p.prev > a > span:after,
div.diaporama p.next > a > span:after {
    background-image: url(/images/icon-arrow-down.svg);
    background-position: center 18px;
}

@keyframes bounce {
    from {
        background-position: center 18px;
    }
    to {
        background-position: center 23px;
    }
}

/*=======================================================================================================
STYLE DU FIL ARIANE
=======================================================================================================*/

div.head-content {
    padding-top: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eeeeee;
    width: 1200px;
    margin-left: auto;
    margin-right: auto;

    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: justify;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
}

div.head-content.with-margin {
    padding-top: 120px;
}

div.head-content ul.fil {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

div.head-content ul.fil > li {
    -ms-flex: content;
    flex: 0 0 auto;
    font-family: Montserrat, Verdana;
    font-weight: 600;
    font-size: 12px;
    line-height: 30px;
    padding-left: 5px;
}

div.head-content ul.fil > li:before {
    display: inline-block;
    content: ">";
    padding-right: 5px;
}

div.head-content ul.fil > li.home:before,
div.head-content ul.fil > li:nth-child(2):before {
    content: "";
    display: inline;
    padding: 0;
}

div.head-content ul.fil > li > a {
    color: #333333;
}

div.head-content ul.fil > li.home {
    padding-left: 0;
}

div.head-content ul.fil > li.home > a {
    display: block;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    width: 30px;
    height: 30px;
    background: #333333 url(/images/icon-home.svg) no-repeat center center;
    background-size: 20px 20px;
}

div.head-content ul.options, .sita-options ul.options {
    -ms-flex: content;
    flex: 0 0 auto;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: end;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
    background-color: #EEEEEE;
}

div.head-content ul.options > li, .sita-options ul.options > li {
    -ms-flex: none;
    flex: none;
    width: 30px;
    height: 30px;
    padding-top: 3px;
    background-color: white;
    margin: 2px;
}

div.head-content ul.options > li > a, .sita-options ul.options > li > a {
    display: block;
    height: 24px;
    font-size: 0;
    line-height: 1px;
    color: transparent;
    background-position: center center;
    background-size: 24px 24px;
}

ul.options > li.print > a {
    background-image: url(/images/icon-print.svg);
}

ul.options > li.text-down > a {
    background-image: url(/images/icon-texte-down.svg);
}

ul.options > li.text-up > a {
    background-image: url(/images/icon-texte-up.svg);
}

ul.options > li.share > a {
    background-image: url(/images/icon-share.svg);
}
ul.options > li.share {
    position: relative;
}
ul.options > li.share > ul {
    display: none;
    position: absolute;
    z-index: 1;
    top: 100%;
    left: 3px;
    background-color: #EEEEEE;
    padding: 5px;
    padding-bottom: 0;
}
ul.options > li.share:hover > ul {
    display: block;
}
ul.options > li.share > ul > li {
    margin-bottom: 5px;
}
ul.options > li.share > ul > li > a {
    display: block;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    width: 24px;
    height: 24px;
    background-color: #333333;
    background-position: center center;
    background-size: 24px 24px;
    transition: background-color 0.3s;
}
ul.options > li.share > ul > li > a:hover {
    background-color: #91000b;
}
ul.options > li.share > ul > li.facebook > a {
    background-image: url(/images/social-media/icon-facebook.svg);
}
ul.options > li.share > ul > li.twitter > a {
    background-image: url(/images/social-media/icon-twitter.svg);
}
ul.options > li.share > ul > li.google > a {
    background-image: url(/images/social-media/icon-google-plus.svg);
}
ul.options > li.share > ul > li.email > a {
    background-image: url(/images/social-media/icon-email.svg);
}

/*=======================================================================================================
STYLE DU HEAD TITLE
=======================================================================================================*/

div.section > div.diaporama {
    margin-left: auto;
    margin-right: auto;
    width: 1200px;
    height: 570px;
}

div.title-content {
    width: 740px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    padding-bottom: 50px;
}

div.title-content-image {
    min-height: 350px;
    padding-top: 100px;
    text-align: center;
    background: no-repeat center center;
    background-size: cover;
}

div.title-content-image.align-gauche {
    background-position-x: left;
}

div.title-content-image.align-droite {
    background-position-x: right;
}

div.title-content-image.align-haut {
    background-position-y: top;
}

div.title-content-image.align-bas {
    background-position-y: bottom;
}

div.title-content h1 {
    padding-top: 30px;
    padding-bottom: 20px;
    font-weight: 300;
    color: #333333;
}

div.title-content-image h1 {
    text-shadow: -2px 2px 5px rgba(0, 0, 0, 1);
}

div.title-content-sita h1 {
    padding-bottom: 0;
}

div.title-content p,
div.title-content-image p {
    font-size: 18px;
    line-height: 23px;
    padding-bottom: 23px;
}

div.title-content-sita p, .text-primary.text-lg, .text-primary.text-lg * {
    font-family: Ubuntu, Verdana;
    font-weight: 500;
    font-size: 20px;
    line-height: 26px;
    color: #91000b;
}

div.title-content-image p {
    width: 780px;
    margin: 0 auto 0 auto;
    color: #FFFFFF;
    text-shadow: -2px 2px 5px rgba(0, 0, 0, 0.35);
}

/*=======================================================================================================
STYLE DU SITEMAP
=======================================================================================================*/

div.menu-map {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 50px;
}

div.menu-map ul {
    margin-left: 20px;
    padding-left: 10px;
    margin-bottom: 10px;
    border-left: 1px solid #cccccc;
}

div.menu-map ul li:before {
    content: "- ";
    color: #cccccc;
}

/*=======================================================================================================
STYLE DU FORM SITA
=======================================================================================================*/
div.form-sita {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 40px;
}

div.form-sita .form-multi-date ul {
    padding: 0;
}

div.form-validate {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: end;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
}

div.form-validate {
    margin-bottom: 0px;
}

div.form-validate > p,
div.form-validate > div {
    -ms-flex: 1;
    flex: 1;
    line-height: 42px;
}

div.form-validate > p a {
    text-decoration: underline;
}

div.form-validate > input {
    -ms-flex: content;
    flex: 0 0 auto;
}

div.form-validate > div span.form-checkbox {
    margin-top: -6px;
}

div.form-validate > div span.form-checkbox,
div.form-validate > div span.form-checkbox > input[type="checkbox"] + span {
    width: 22px;
    height: 22px;
}

div.form-validate > div label {
}

div.form-sita div.form-validate {
    padding-top: 40px;
}

div.form-input-line {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    padding-top: 30px;
    padding-bottom: 21px;
    background-color: #fafafa;
    border-bottom: 1px solid #FFFFFF;
}

div.form-input-line > div,
div.form-input-line > div > div {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: start;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
}

div.form-input-line > div {
    padding-left: 15px;
    padding-right: 15px;
}

div.form-input-line > div > h2 {
    -ms-flex: content;
    flex: 0 0 auto;
    padding-right: 12px;
    margin-top: -6px;
}

div.form-input-line > div > h2,
div.form-input-line > div > h2 > label {
    font-family: Ubuntu, Verdana;
    font-size: 30px;
    line-height: 39px;
    font-weight: 300;
    color: #333333;
    text-transform: none;
}

div.form-input-line > div > div {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

div.form-multi-checkbox {
}

div.form-multi-checkbox > h2 {
}

div.form-multi-checkbox label {
    position: relative;
    margin-right: 8px;
    margin-bottom: 8px;
}

div.form-multi-checkbox label > input {
    position: absolute;
    left: 0px;
    right: 0px;
    visibility: visible;
}

div.form-multi-checkbox label > span,
div.form-multi-date > div > a {
    position: relative;
    display: block;
    font-size: 13px;
    line-height: 30px;
    font-weight: 600;
    text-transform: uppercase;
    background-color: #dddddd;
    padding-left: 15px;
    padding-right: 15px;
    transition: color 0.3s, padding-right 0.3s, background-color 0.3s;
}

div.form-multi-checkbox label > span:after,
div.form-multi-date > div > a:after {
    content: "";
    position: absolute;
    top: 9px;
    right: 10px;
    display: block;
    width: 12px;
    height: 12px;
    opacity: 0;
    background: url(/images/icon-cross.svg) no-repeat center center;
    background-size: 12px 12px;
    transition: opacity 0.3s;
}

div.form-multi-checkbox label > input:checked + span,
div.form-multi-date > div > a {
    color: #FFFFFF;
    background-color: #91000b;
    padding-right: 32px;
}

div.form-multi-checkbox label > input:checked + span:after {
    opacity: 1;
}

div.form-multi-date > div > a {
    -ms-flex: content;
    flex: 0 0 auto;
}

div.form-multi-date > div > a:after {
    opacity: 1;
    background-image: url(/images/icon-arrow-down.svg);
}

div.form-multi-date > div {
    position: relative;
    padding-bottom: 9px;
}

div.form-multi-date > div > div {
    -ms-flex: none;
    flex: none;
    display: none;
    position: absolute;
    z-index: 5;
    top: 30px;
    left: 0px;
    padding: 20px;
    background-color: #FFFFFF;
    border: 1px solid #dddddd;
}

div.calendars-slide > ul.nav > li,
div.form-multi-date > div > div > ul.nav > li {
    position: absolute;
    z-index: 2;
    top: 18px;
    left: 15px;
}

div.calendars-slide > ul.nav > li > a,
div.form-multi-date > div > div > ul.nav > li > a {
    width: 31px;
    height: 31px;
    font-size: 0;
    line-height: 1px;
    color: transparent;
}

div.calendars-slide > ul.nav > li.next,
div.form-multi-date > div > div > ul.nav > li.next {
    top: 15px;
    left: auto;
    right: 15px;
}

div.calendars-slide > ul.nav > li > a > span:after,
div.calendars-slide > ul.nav > li > a > span:before,
div.form-multi-date > div > div > ul.nav > li > a > span:after,
div.form-multi-date > div > div > ul.nav > li > a > span:before {
    background-size: auto 50%;
}

div.calendars-slide > ul.nav > li.prev > a > span:after,
div.form-multi-date > div > div > ul.nav > li.prev > a > span:after {
    background-image: url(/images/icon-arrow-left.svg);
}

div.calendars-slide > ul.nav > li.prev > a > span:before,
div.form-multi-date > div > div > ul.nav > li.prev > a > span:before {
    background-image: url(/images/icon-arrow-left-red.svg);
}

div.calendars-slide > ul.nav > li.next > a > span:after,
div.form-multi-date > div > div > ul.nav > li.next > a > span:after {
    background-image: url(/images/icon-arrow-right.svg);
}

div.calendars-slide > ul.nav > li.next > a > span:before,
div.form-multi-date > div > div > ul.nav > li.next > a > span:before {
    background-image: url(/images/icon-arrow-right-red.svg);
}

div.form-input-line > div.form-multi-int {
    padding-right: 30px;
}

div.form-input-line > div.form-multi-int > h2 {
    padding-right: 20px;
}

div.form-multi-int > div > div.form-text {
    display: none;
}

div.form-multi-int > div > ul {
    position: relative;
    margin-top: 13px;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    height: 2px;
    width: 100%;
    background-color: #dddddd;
}

div.form-multi-int > div > ul > li {
    position: absolute;
    z-index: 2;
    top: 0px;
    left: 0%;
    margin-top: -6px;
    margin-left: -7px;
    width: 14px;
    height: 14px;
    cursor: pointer;
}

div.form-multi-int > div > ul > li.losange:hover:before {
    background-color: #91000b;
}

div.form-multi-int > div > ul > li.interval {
    z-index: 1;
    left: 0px;
    right: 0px;
    margin-top: 0px;
    margin-left: 0px;
    width: auto;
    height: 2px;
    background-color: #333333;
    cursor: inherit;
}

div.form-multi-int > div > ul > li.max {
    left: 100%;
}

div.form-multi-int > div > ul > li > span {
    display: block;
    position: absolute;
    top: 15px;
    left: 50%;
    margin-left: -35px;
    width: 70px;
    font-size: 16px;
    line-height: 21px;
    font-weight: 300;
    color: #333333;
    text-align: center;
}

div.form-multi-int > div > ul > li:hover > span {
    color: #91000b;
}

div.form-multi-int > div > ul > li > span:after,
div.form-multi-int > div > ul > li > span:before {
    content: normal;
    display: none;
}

div.form-multi-int > div > ul > li > span > sup {
    font-size: 12px;
    line-height: 16px;
}

div.form-input-line div.form-select > span.form-select,
div.form-input-line div.form-select > span.form-select > select {
    height: 30px;
}

div.form-input-line div.form-select > span.form-select > select {
    padding: 7px;
}

/*=======================================================================================================
STYLE DU RESULTAT SITA
=======================================================================================================*/

div.sita-result,
div.result {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

div.sita-result {
    padding-bottom: 100px;
}

div.sita-result#carnetvoyage-result {
    padding-bottom: 0;
}

div.sita-result > h2,
div.result > h2 {
    font-family: 'Montserrat', Verdana;
    font-size: 30px;
    line-height: 39px;
    font-weight: 200;
    text-transform: none;
    color: #333333;
    border-bottom: 1px solid #dddddd;
}

div.sita-result > h2 > span,
div.result > h2 > span {
    font-weight: 600;
}

div.sita-result > p.clear-filter {
    text-align: right;
    margin-top: -32px;
    margin-bottom: 91px;
}

div.sita-result > p.clear-filter > a {
    display: inline-block;
    position: relative;
    font-size: 16px;
    line-height: 21px;
    font-weight: 300;
    color: #333333;
    padding-right: 30px;
}

div.sita-result > p.clear-filter > a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0px;
    width: 20px;
    height: 20px;
    border: 1px solid #dddddd;
    background: url(/images/icon-cross-black.svg) no-repeat center center;
    background-size: 12px 12px;
}

div.sita-result > div.sita-result-list {
    position: relative;
}

ul.sita-result {
    width: 585px;
}

ul.sita-result .date > ul {
    padding: 0;
}

ul.sita-result > li {
    position: relative;
    width: 100%;
    height: 254px;
    margin-bottom: 30px;
    cursor: pointer;
}

ul.sita-result > li em, ul.sita-result > li select, ul.sita-result > li br {
    display: none;
}

ul.sita-result > li:last-child {
    margin-bottom: 0;
}

ul.sita-result > li > div.result-content {
    position: absolute;
    left: 380px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    padding: 25px;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #eeeeee;
}

ul.sita-result > li > div.result-content h3 {
    font-family: 'Montserrat', Verdana;
    font-size: 20px;
    line-height: 26px;
    font-weight: 600;
    text-transform: none;
    padding-bottom: 5px;
}

ul.sita-result > li > div.result-content h3 > a {
    color: #333333;
}

ul.sita-result > li > div.result-content p,
ul.sita-result > li > div.result-content ul > li {
    font-size: 16px;
    line-height: 21px;
    font-weight: 300;
}

ul.sita-result > li > div.result-content p.number {
    position: absolute;
    z-index: 5;
    left: -380px;
    top: 0px;
    width: 40px;
    text-align: center;
    font-size: 20px;
    line-height: 50px;
    font-weight: 600;
    color: #FFFFFF;
}

ul.sita-result > li > div.result-content p.number:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0px;
    top: 0px;
    display: block;
    height: 0px;
    width: 0px;
    border: 35px solid #91000b;
    border-bottom-color: transparent;
    border-right-color: transparent;
}

ul.sita-result > li > div.result-content p.date,
ul.sita-result > li > div.result-content ul.prestations,
ul.sita-result > li > div.result-content div.date {
    position: absolute;
    left: 25px;
    right: 25px;
    bottom: 25px;
    padding-top: 15px;
    border-top: 1px solid #FFFFFF;
}

ul.sita-result > li > div.result-content p.date,
ul.sita-result > li > div.result-content div.date ul > li {
    color: #91000b;
    font-weight: 600;
}

ul.sita-result > li.sita-fiche-tarif > div.result-content {
    padding-top: 46px;
}

ul.sita-result > li > div.result-content p.price {
    position: absolute;
    top: 15px;
    left: 25px;
    font-size: 20px;
    line-height: 26px;
    color: #91000b;
    font-weight: 600;
}

ul.sita-result > li > div.result-content p.price > span {
    font-size: 12px;
    font-weight: 300;
}

ul.sita-result > li > div.result-content ul.prestations {
    padding-top: 10px;
    bottom: 10px;
}

ul.sita-result > li > ul.options > li {
    position: absolute;
    z-index: 3;
    top: 8px;
    left: 340px;
}

ul.sita-result > li > ul.options > li > a {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    width: 25px;
    height: 25px;
    background: url(/images/icon-heart-red.svg) no-repeat center top;
    background-size: 25px 50px;
    opacity: 1;
    transition: opacity 0.6s;
}

ul.sita-result > li > ul.options > li > a.rmv {
    opacity: 0;
    background-position: center bottom;
}

ul.sita-result > li > ul.options > li.like.selected > a.add {
    opacity: 0;
}

ul.sita-result > li > ul.options > li.like.selected > a.rmv {
    opacity: 1;
}

ul.sita-result > li > ul.options > li.print {
    left: 300px;
}

ul.sita-result > li > ul.options > li.print > a {
    background-image: url(/images/icon-print-red.svg);
    background-size: 25px 25px;
}

ul.sita-result > li > div.diaporama {
    width: 380px;
    height: 254px;
}

div.sita-result-list > div.google-maps-sita {
    position: absolute;
    right: 0px;
    top: 0px;
    width: 580px;
    height: 400px;
}
div.sita-result-list > div.google-maps-sita img {
    width: 100%;
}

div.sita-switch-display {
    position: fixed;
    z-index: 100;
    left: 0;
    right: 0;
    bottom: 0;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: center;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    background: #eeeeee;
    display: none;
}

div.sita-switch-display > ul {
    -ms-flex: content;
    flex: 0 0 auto;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: center;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
}

div.sita-switch-display > ul > li {
    -ms-flex: content;
    flex: 0 0 auto;
    border-left: 1px solid #333333;
    margin: 10px 0 10px 0;
}

div.sita-switch-display > ul > li > a {
    position: relative;
    display: block;
    color: #333333;
    padding: 0 15px 0 50px;
}

div.sita-switch-display > ul > li > a > span {
    display: block;
}

div.sita-switch-display > ul > li > a:before {
    content: "";
    position: absolute;
    left: 10px;
    top: 0px;
    display: block;
    width: 35px;
    height: 35px;
    background: url(/images/icon-filtrer.svg) no-repeat center center / 35px 35px;
}

div.sita-switch-display > ul > li.maps > a:before {
    background-image: url(/images/icon-map.svg);
}

div.sita-switch-display > ul > li.liste > a:before {
    background-image: url(/images/icon-liste.svg);
}

div.sita-switch-display > ul > li:first-child,
div.sita-display-filter div.sita-switch-display > ul > li.maps {
    border-left: 0;
}

/*
    div.sita-display-filter {}
    div.sita-display-map {}
    div.sita-display-list {}
*/
div.sita-display-list div.sita-switch-display > ul > li.liste,
div.sita-display-map div.sita-switch-display > ul > li.maps,
div.sita-display-filter div.sita-switch-display > ul > li.filter {
    display: none;
}

/*=======================================================================================================
STYLE DU PAGE EDITORIALE
=======================================================================================================*/

div.page-section {
    padding: 70px 0 20px 0;
    display: -ms-flex;
    -ms-flex-direction: column;
    -ms-flex-pack: start;
    -ms-flex-align: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}

div.page-section > div {
    -ms-flex: none;
    flex: none;
    width: 1200px;
    padding: 0 0 50px 0;
}

div.page-section > div.page-section-title {
    width: 760px;
    text-align: center;
}

div.page-section > div.page-section-content {
    display: -ms-flex;
    -ms-flex-direction: column;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
}

div.page-section.page-section-duo > div.page-section-content {
    -ms-flex-direction: row;
    flex-direction: row;
}

div.page-section > div.page-section-content > div {
    -ms-flex: none;
    flex: none;
    width: 1200px;
}

div.page-section > div.page-section-content > div.google-maps {
    min-height: 390px;
}

div.page-section.page-section-duo > div.page-section-content > div {
    width: 585px;
    margin-right: 30px;
}
div.page-section.page-section-duo > div.page-section-content > div:last-child {
    margin-right: 0;
}

div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama video,
div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama iframe {
    width: 585px;
    height: 330px;
}

div.page-section.page-section-duo > div.page-section-content.align-reverse {
    flex-direction: row-reverse;
}
div.page-section.page-section-duo > div.page-section-content.align-reverse > div {
    margin-right: 0;
}
div.page-section.page-section-duo > div.page-section-content.align-reverse > div:last-child {
    margin-right: 30px;
}

div.page-section > div.page-section-content > div.page-section-diaporama > div.diaporama {
    width: 100%;
    height: 800px;
}

div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama > div.diaporama {
    height: 390px;
}

div.page-section div.hide-show {
    border-bottom: 1px solid rgba(0, 0, 0, 0.07);
    margin-bottom: 50px;
}

div.page-section div.hide-show > p {
    margin: 0 0 -17px 0;
}

div.sita-content h2,
div.sita-content h3,
div.page-section h2,
div.page-section h3 {
    margin-bottom: 10px;
}

div.sita-content h4,
div.page-section h4 {
    margin-bottom: 2px;
}

div.sita-content p,
div.sita-content ul,
div.sita-content ol,
div.sita-content table,
div.page-section p,
div.page-section ul,
div.page-section ol,
div.page-section table,
div.page-section iframe {
    margin-bottom: 18px;
}

div.page-section iframe {
    max-width: 1200px !important;
}

div.page-section.page-section-duo > div.page-section-content > div iframe {
    max-width: 585px !important;
}

div.sita-content ul,
div.page-section ul {
    padding-left: 30px;
}

div.sita-content ul > li,
div.page-section ul > li {
    position: relative;
}

div.sita-content ul > li:before,
div.page-section ul > li:before {
    content: "-";
    position: absolute;
    top: 0px;
    left: -15px;
}

div.sita-content ul > li ul > li:before,
div.page-section ul > li ul > li:before {
    content: "○";
}


div.sita-fiche ul.sita-documents {
    padding-left: 0;
}
div.sita-fiche ul.sita-documents > li {
    display: inline-block;
    background-color: #800f00;
    width: 285px;
    height: 65px;
    margin: 3px;
}
div.sita-fiche ul.sita-documents > li a {
    color: white;
    display: block;
    text-align: center;
    padding: 15px;
}
div.sita-fiche ul.sita-documents > li a strong {
    font-size: 18px;
}
div.sita-fiche ul.sita-documents > li a em {
    font-size: 12px;
    display: inline-block;
    width: 250px;
    height: 20px;
    overflow: hidden;
}
div.sita-fiche ul.sita-documents > li:before,
div.sita-fiche ul.sita-documents > li:before {
    content: "";
}

div.page-section div.page-section-home-push p,
div.page-section div.page-section-push ul,
div.page-section div.page-section-diaporama ul {
    margin-bottom: 0;
    padding-left: 0;
}

div.page-section div.page-section-form > form > div.loading,
div.page-section.white {
    background-color: #FFFFFF;
}

div.page-section.rouge-leger div.page-section-form > form > div.loading,
div.page-section.rouge-leger {
    background-color: #f5e6e7;
}

div.page-section.gris-leger div.page-section-form > form > div.loading,
div.page-section.gris-leger {
    background-color: #fafafa;
}

div.page-section.gris-sombre div.page-section-form > form > div.loading,
div.page-section.gris-sombre {
    background-color: #333333;
}

div.page-section.gris-sombre div.hide-show {
    border-bottom: 1px solid #4b4b4b;
}

div.page-section.gris-sombre h2,
div.page-section.gris-sombre h3,
div.page-section.gris-sombre h4,
div.page-section.gris-sombre p,
div.page-section.gris-sombre li,
div.page-section.gris-sombre table,
div.page-section.gris-sombre a {
    color: #FFFFFF;
}

/*=======================================================================================================
STYLE DU PUSH INLINE
=======================================================================================================*/

div.page-push-inline {
    position: relative;
    height: 400px;
    padding: 350px 0 0 0;
    overflow: hidden;
}

div.page-push-inline > ul.push {
    flex: none;
    position: absolute;
    top: 70px;
    left: 50%;
    margin-left: -600px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    transition: transform 1.5s;
    padding-left: 0;
    margin-bottom: 0;
}

div.page-push-inline > ul.push > li {
    margin-bottom: 0;
}

div.page-push-inline > ul.push > li:nth-child(3n) {
    margin-right: 30px;
}

div.page-push-inline > ul.push > li:last-child {
    margin-right: 0;
}

div.page-push-inline > ul.nav {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

div.page-push-inline > ul.nav > li {
    -ms-flex: none;
    flex: none;
    position: relative;
    width: 10px;
    height: 10px;
    margin-right: 12px;
    cursor: pointer;
}

div.page-push-inline > ul.nav > li:last-child {
    margin-right: 0;
}

div.page-push-inline > ul.nav > li:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transform: rotate(45deg);
    background-color: #FFFFFF;
    -webkit-box-shadow: -1px 2px 5px 0 rgba(0, 0, 0, 0.5);
    -moz-box-shadow: -1px 2px 5px 0 rgba(0, 0, 0, 0.5);
    box-shadow: -1px 2px 5px 0 rgba(0, 0, 0, 0.5);
    transition: background-color 0.3s;
}

div.page-push-inline > ul.nav > li.current:before {
    background-color: #91000b;
}

/*=======================================================================================================
STYLE CONNEXION
=======================================================================================================*/

div.page-connexion {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: center;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    padding-bottom: 145px;
}

div.page-connexion > div {
    display: -ms-flex;
    -ms-flex-direction: column;
    -ms-flex-pack: center;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    -ms-flex: none;
    flex: none;
    width: 585px;
    padding: 25px;
    margin-right: 30px;
    background-color: #fafafa;
}

div.page-connexion > div:last-child {
    margin-right: 0px;
}

div.page-connexion > div h2 {
    text-align: center;
    padding: 25px;
}

div.page-connexion > div p.facebook > a {
    position: relative;
    display: block;
    width: 405px;
    height: 45px;
    margin-left: auto;
    margin-right: auto;
    font-size: 20px;
    line-height: 23px;
    text-align: center;
    text-transform: uppercase;
    color: #FFFFFF;
    padding: 10px;
    padding-left: 45px;
    background-color: #235fa2;
}

div.page-connexion > div p.facebook > a:before {
    content: "";
    position: absolute;
    left: 10px;
    top: 50%;
    margin-top: -13px;
    display: block;
    vertical-align: bottom;
    width: 25px;
    height: 25px;
    background: url(/images/social-media/icon-facebook.svg) no-repeat center center;
    background-size: 25px 25px;
}

div.page-connexion > div div.form-text,
div.page-connexion > div div.form-validate {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: end;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
    margin-bottom: 18px;
}

div.page-connexion > div div.form-text > label {
    -ms-flex: none;
    flex: none;
    font-family: Ubuntu, Verdana;
    font-size: 20px;
    line-height: 45px;
    font-weight: 700;
    width: 145px;
}

div.page-connexion > div div.form-text > label > span {
    display: inline-block;
    line-height: 22px;
}

div.page-connexion > div div.form-text > input {
    flex: 1;
    height: 45px;
    border: 1px solid #dedddd;
}

div.page-deauth {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: end;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
}

div.page-deauth > a {
    -ms-flex: content;
    flex: 0 0 auto;
    position: relative;
    line-height: 40px;
    padding-right: 30px;
    color: #333333;
}

div.page-deauth > a:before {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: url(/images/icon-cross-black.svg) no-repeat center center / 30px 30px;
}

/*=======================================================================================================
STYLE PAGE CONTACT
=======================================================================================================*/
div.page-section div.page-section-form ul {
    margin-bottom: 0;
}

div.page-section-form > form {
    width: 1200px;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-wrap: wrap;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
}

div.page-section-form > form > div {
    -ms-flex: none;
    flex: none;
    width: 50%;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: end;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
    padding: 18px;
    padding-top: 0px;
}

div.page-section-form > form > div.loading {
    display: block;
    position: absolute;
    z-index: 5;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    padding: 0;
    width: auto;
    height: auto;
}

div.page-section-form > form > div.loading > p {
    padding-top: 120px;
    text-align: center;
}

div.page-section-form > form > div.form-textarea {
    width: 100%;
}

div.page-section-form > form > div > label {
    -ms-flex: none;
    flex: none;
    font-family: Ubuntu, Verdana;
    font-size: 20px;
    line-height: 45px;
    font-weight: 700;
    width: 145px;
}

div.page-section-form > form > div > label > span {
    display: inline-block;
    line-height: 22px;
}

div.page-section-form > form > div.form-text > input,
div.page-section-form > form > div.form-textarea > textarea,
div.page-section-form > form > div.form-select > span.form-select,
div.page-section-form > form > div.form-file > span.form-file,
div.page-section-form > form > div.form-date > div.form-input-date,
div.page-section-form > form > div.form-checkbox > label,
div.page-section-form > form > div.form-validate {
    -ms-flex: 1;
    flex: 1;
}

div.page-section-form > form > div.form-textarea > textarea {
    height: 150px;
}

/*=======================================================================================================
STYLE RECHERCHE / BROCHURE
=======================================================================================================*/

div.form-search > form {
    width: 1200px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 50px;
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

div.form-search > form > label {
    -ms-flex: content;
    flex: 0 0 auto;
    display: block;
    padding-right: 25px;
    font-size: 22px;
    line-height: 43px;
    font-weight: 200;
    white-space: nowrap;
}

div.form-search > form > input {
    -ms-flex: 1;
    flex: 1;
    border-right: 0px;
}

div.form-search > form > input[type="submit"] {
    -ms-flex: none;
    flex: none;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
    background: #91000b url(/images/icon-search.svg) no-repeat center center;
    background-size: 25px 25px;
    height: 43px;
    width: 43px;
}

div.result-list {
    padding-top: 30px;
    padding-bottom: 70px;
}

ul.result {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-wrap: wrap;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
}

ul.result > li {
    position: relative;
    z-index: 1;
    -ms-flex: none;
    flex: none;
    cursor: pointer;
    width: 380px;
    height: 540px;
    padding: 250px 25px 25px 25px;
    border: 1px solid #eeeeee;
    margin: 0 30px 30px 0;
}

ul.result > li:last-child,
ul.result > li:nth-child(3n) {
    margin-right: 0;
}

ul.result > li:before {
    display: block;
    content: "";
    position: absolute;
    z-index: -1;
    left: -1px;
    right: -1px;
    top: -1px;
    bottom: -1px;
    opacity: 0;
    background: rgba(145, 0, 11, 0.90) url(/images/bg-push-red.svg) no-repeat center top;
    background-size: cover;
    transition: opacity 0.3s;
}

ul.result > li:after {
    display: block;
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 25px;
    left: 50%;
    margin-left: -90px;
    width: 180px;
    height: 30px;
    background: url(/images/button-consult-fr.svg) no-repeat center top;
    background-size: auto 60px;
}

ul.result > li:hover:before {
    opacity: 1;
}

ul.result > li:hover:after {
    background-position: center bottom;
}

ul.result > li h3 {
    padding: 20px 0 10px 0;
}

ul.result > li p.price {
    text-align: center;
    font-size: 15px;
    line-height: 25px;
    color: #91000b;
}

ul.result > li h3 > a {
    display: block;
    max-height: 92px;
    overflow: hidden;
    font-size: 35px;
    line-height: 46px;
    font-weight: 300;
    transition: color 0.3s;
}

ul.result > li p {
    transition: color 0.3s;
}

ul.result > li:hover h3 > a,
ul.result > li:hover p {
    color: #FFFFFF;
}

ul.result > li p.menu {
    position: absolute;
    z-index: 5;
    left: 0px;
    right: 0px;
    top: 15px;
    text-align: center;
}

ul.result > li p.menu > span {
    display: inline-block;
    font-family: Ubuntu, Verdana;
    font-size: 16px;
    line-height: 21px;
    min-width: 123px;
    text-transform: uppercase;
    color: #FFFFFF;
    background-color: #91000b;
    padding: 2px;
}

ul.result > li div.diaporama {
    position: absolute;
    left: -1px;
    top: -1px;
    width: 380px;
    height: 254px;
}

/*=======================================================================================================
STYLE FICHE SITA
=======================================================================================================*/

.cadre-sita ul {
    margin: 0;
    padding: 0;
}

.cadre-sita .head-content {
    border-bottom: none;
}

div.sita-fiche {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    margin-bottom: 70px;
}
div.sita-fiche:first-child {
    margin-bottom: 0;
}

.sita-fiche h1 {
    font-weight: 300;
    color: #333333;
}
.sita-fiche h3 {
    margin-top: 25px;
}

.sita-fiche .sita-langues ul li {
    display: inline-block;
    margin-right: 50px;
}
.sita-fiche .sita-langues ul li img {
    width: 20px;
}

.sita-fiche .sita-etoiles-middle, .sita-fiche .sita-diaporama-middle {
    display: none;
}

.sita-fiche div.more-info .losange {
    width: 52px;
    height: 52px;
    cursor: pointer;
    margin: auto;
    font-size: 1px;
    line-height: 1px;
    color: transparent;
}
.sita-fiche div.more-info .losange span::before {
    opacity: 1 !important;
    background-image: url(/images/icon-arrow-down.svg);
    background-position: center 18px;
}
.sita-fiche div.more-info .losange:hover span::before {
    opacity: 1 !important;
    background-image: url(/images/icon-arrow-down-red.svg);
    background-position: center 18px;
}

.sita-fiche .sita-photo {
    cursor: pointer;
    width: 100%;
    height: 425px;
    object-fit: cover;
}
.sita-fiche .sita-photos .d-md-block .sita-photo {
    width: 300px;
    height: 200px;
    object-fit: cover;
}

.sita-fiche .sita-tarifs ul li {
    margin: 10px 0;
}

.sita-fiche .sita-labels img {
    max-height: 65px;
    max-width: 100%;
}

.sita-fiche .sita-contact {
    position: sticky;
    top: 150px;
}

.sita-fiche .sita-contact-sticky, .sita-fiche .sita-contact-bottom-sticky {
    display: none;
    position: fixed;
    z-index: 2000;
}
.sita-fiche .sita-contact-sticky {
    top: 50%;
    right: 10px;
    width: 45px;
}
.sita-fiche .sita-contact-sticky .fa-2x {
    font-size: 1.5em;
    margin: 10px 0;
}
.sita-fiche .sita-contact-bottom-sticky {
    bottom: 0;
    left: 0;
    right: 0;
}

.sita-fiche .sita-contact-bottom .btn {
    max-width: 300px;
}

.sita-fiche .sita-prestations .sita-prestation {
    width: 45px;
    height: 45px;
    background-position: center;
    /*background-size: cover;*/
}

.sita-fiche .google-maps {
    height: 400px;
}

div.sita-fiche > div.left-col {
    width: 585px;
    min-height: 800px;
}

div.sita-infos {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    margin-bottom: 30px;
}

div.sita-infos > ul,
div.sita-infos > div,
div.sita-infos > p {
    -ms-flex: none;
    flex: none;
}

div.sita-infos > ul.prestations,
div.sita-infos > div.date,
div.sita-infos > p {
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    width: 290px;
    height: 72px;
}

div.sita-infos > ul.prestations > li {
    margin-right: 15px;
}

div.sita-infos > ul.prestations > li:last-child {
    margin-right: 0px;
}

div.sita-infos > p,
div.sita-infos > div.date > ul > li {
    font-size: 16px;
    line-height: 21px;
    font-weight: 600;
    color: #91000b;
    padding-top: 14px;
    text-align: center;
}

div.sita-infos > p > span {
    display: block;
}

div.sita-infos > ul.sita-selection {
    position: relative;
    width: 280px;
    height: 72px;
    margin-left: 15px;
}

div.sita-infos > ul.sita-selection > li,
div.sita-infos > ul.sita-selection > li > a {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    text-align: center;
}

div.sita-infos > ul.sita-selection > li > a {
    padding: 10px 30px 10px 0;
    font-size: 20px;
    line-height: 26px;
    font-weight: 600;
    text-transform: uppercase;
    color: #FFFFFF;
    background: rgba(145, 0, 11, 0.9) url(/images/bg-push-red.svg) no-repeat center center;
    background-size: cover;
    opacity: 1;
    transition: opacity 0.6s;
}

div.sita-infos > ul.sita-selection > li > a:after {
    content: "";
    display: block;
    position: absolute;
    right: 16px;
    top: 16px;
    width: 40px;
    height: 40px;
    background: url(/images/icon-heart.svg) no-repeat center top;
    background-size: 40px 80px;
}

div.sita-infos > ul.sita-selection > li > a > span {
    display: block;
}

div.sita-infos > ul.sita-selection > li > a.rmv {
    background: #333333 url(/images/bg-push-grey.svg) no-repeat center center;
    background-size: cover;
}

div.sita-infos > ul.sita-selection > li > a.rmv:after {
    background-position: center bottom;
}

div.sita-infos > ul.sita-selection > li > a.rmv {
    opacity: 0;
}

div.sita-infos > ul.sita-selection > li.selected > a.add {
    opacity: 0;
}

div.sita-infos > ul.sita-selection > li.selected > a.rmv {
    opacity: 1;
}

div.sita-fiche > div.right-col {
    position: absolute;
    right: 0px;
    top: 0px;
    width: 580px;
    height: 600px;

    display: -ms-flex;
    -ms-flex-direction: column;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
}

div.sita-fiche > div.right-col > div {
    margin-bottom: 25px;
}

div.sita-fiche > div.right-col > div:last-child {
    margin-bottom: 0;
}
div.sita-fiche div.diaporama {
    width: 100%;
    height: 380px;
}

div.sita-fiche > div.right-col > div.google-maps {
    -ms-flex: 1;
    flex: 1;
}

div.sita-fiche div.dispos {
    -ms-flex: content;
    flex: 0 0 auto;

    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-wrap: wrap;
    -ms-flex-pack: start;
    -ms-flex-align: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
}

div.sita-fiche div.dispos > * {
    -ms-flex: none;
    flex: none;
    padding-top: 10px;
}

div.sita-fiche div.dispos > .sita-date-open.planning {
    margin: auto;
}

div.sita-fiche div.dispos > .sita-date-open.no-planning ul {
    max-width: 1200px;
}
div.sita-fiche div.dispos > .sita-date-open.no-planning ul li {
    float: left;
    margin: 10px;
}

div.sita-fiche div.dispos > h2 {
    width: 100%;
    font-size: 30px;
    line-height: 39px;
    text-transform: uppercase;
}

div.sita-fiche div.dispos ul {
    padding-left: 0;
    margin-bottom: 0;
}

div.sita-fiche div.dispos ul > li,
div.sita-fiche div.dispos ul > li li {
    list-style: none;
}

div.sita-fiche div.dispos ul > li:before,
div.sita-fiche div.dispos ul > li li:before {
    content: none;
    display: none;
}

div.sita-fiche div.dispos > div.sita-date-open p,
div.sita-fiche div.dispos > div.sita-date-open ul li {
    font-size: 16px;
    line-height: 21px;
    font-weight: 300;
    padding-bottom: 21px;
}

div.sita-fiche div.dispos > div.sita-date-open p.legend {
    line-height: 30px;
}

div.sita-fiche div.dispos > div.sita-date-open p.legend > span {
    display: inline-block;
    vertical-align: top;
    width: 30px;
    height: 30px;
    background-color: #91000b;
}

div.sita-fiche div.dispos > div.sita-date-open em {
    font-size: 14px;
}

div.sita-fiche div.dispos > div.sita-date-open select {
    font-size: 14px;
    padding: 5px;
    background-color: #333333 !important;
    color: white;
}

div.sita-fiche div.dispos > div.sita-date-open select option {
    font-size: 14px;
    color: white;
}

.gm-style .gm-style-iw {
    width: 240px !important;
    cursor: pointer !important;
}

.gm-style .gm-style-iw > div:first-child {
    display: block !important;
    max-height: none !important;
    max-width: none !important;
}

.gm-style .gm-style-iw div.gmap-content-sita {
    text-align: center;
}

.gm-style .gm-style-iw div.gmap-content-sita img {
    width: auto !important;
    height: 160px;
}

.gm-style .gm-style-iw div.gmap-content-sita > div {
    display: -ms-flex;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -ms-flex-align: center;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    min-height: 55px;
}

.gm-style .gm-style-iw div.gmap-content-sita > div h3,
.gm-style .gm-style-iw div.gmap-content-sita > div p {
    -ms-flex: none;
    flex: none;
    width: 160px;
    padding: 10px;
    font-family: 'Montserrat', Verdana;
    font-weight: 600;
    font-size: 15px;
    line-height: 20px;
    text-transform: none;
}

.gm-style .gm-style-iw div.gmap-content-sita > div h3 {
    text-align: left;
}

.gm-style .gm-style-iw div.gmap-content-sita > div p {
    width: 80px;
    color: #91000b;
    border-left: 1px solid #dedede;
}

.gm-style .gm-style-iw div.gmap-content-sita > div p > span {
    display: block;
    font-size: 12px;
    line-height: 16px;
    font-weight: 200;
}

@media screen and (max-width: 1220px) {
    /*=======================================================================================================
    STYLE DU DISPLAY SUPPORT
    =======================================================================================================*/
    .display-smartphone,
    .display-desktop {
        display: none !important;
    }

    .display-tablette {
        display: -ms-flex !important;
        display: flex !important;
    }

    /*=======================================================================================================
    STYLE DU CALENDRIER
    =======================================================================================================*/
    div.calendar {
        top: 42px;
        padding: 15px;
    }

    div.calendars-slide {
        padding: 25px;
        width: 295px;
    }
    div.sita-fiche div.calendars-slide {
        width: 560px;
    }

    ul.calendars > li {
        margin-right: 20px;
    }

    div.calendars-slide ul.calendars > li {
        margin-right: 25px;
    }

    ul.calendars > li:last-child {
        margin-right: 0px;
    }

    ul.calendar {
        width: 245px;
    }

    ul.calendar > li {
        width: 36px;
        height: 36px;
        line-height: 34px;
    }

    ul.calendar > li.month {
        width: 250px;
        height: 35px;
        font-size: 20px;
        line-height: 20px;
    }

    ul.calendar > li.day {
        line-height: 14px;
        height: 14px;
    }

    /*=======================================================================================================
    STYLE DES PUSHS
    =======================================================================================================*/
    ul.push > li {
        width: 300px;
        height: 198px;
        margin-right: 40px;
        margin-bottom: 40px;
    }

    ul.push > li > a:hover > span {
        line-height: 198px;
    }

    ul.push > li:nth-child(3n),
    ul.push > li:last-child {
        margin-right: 0;
    }

    /*=======================================================================================================
    STYLE DU  MENU
    =======================================================================================================*/
    div.menu > div.menu-head > ul {
        margin-right: -250px;
    }

    div.menu > div.menu-head > ul.options {
        margin-right: -490px;
    }

    div.menu > div.menu-nav > ul {
        margin-right: -490px;
    }

    div.menu > div.menu-nav > ul > li > a {
        font-size: 13px;
        padding-left: 8px;
        padding-right: 8px;
    }
    div.menu > div.menu-nav > ul > li:not(.envie):hover > ul {
        display: none !important;
    }

    div.menu > div.menu-nav > ul > li.home {
        right: 760px;
    }

    div.menu > div.menu-nav > ul > li.search.open > form {
        left: -721px;
        padding-left: 698px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li {
        margin-right: -385px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(2) {
        margin-right: -440px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(3) {
        margin-right: -357px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(4),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(9) {
        margin-right: -302px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(5) {
        margin-right: -219px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(6) {
        margin-right: -164px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(7) {
        margin-right: -247px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(8) {
        margin-right: -412px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(10) {
        margin-right: -192px;
    }

    /*=======================================================================================================
    STYLE DU FOOTER
    =======================================================================================================*/
    div.footer > div.back {
        margin-right: -330px;
    }

    div.foot-head {
        width: 980px;
    }

    div.foot-head > div.infos > div.more-details > div.maps {
        -ms-flex: none;
        flex: none;
        display: none;
    }

    div.foot-menu > ul {
        width: 980px;
    }

    /*=======================================================================================================
    STYLE D ACCUEIL
    =======================================================================================================*/
    div.home-slides > ul {
        margin-right: -490px;
    }
    div.home-slides div.video-btn-close {
        width: 64px;
        font-size: 0;
    }

    /*=======================================================================================================
    STYLE DU FIL ARIANE
    =======================================================================================================*/
    div.head-content {
        width: 980px;
    }

    /*=======================================================================================================
    STYLE DU HEAD TITLE
    =======================================================================================================*/
    div.section > div.diaporama {
        width: 980px;
        height: 466px;
    }

    /*=======================================================================================================
    STYLE DU FORM SITA
    =======================================================================================================*/
    div.form-sita {
        width: 980px;
    }

    /*=======================================================================================================
    STYLE DU RESULTAT SITA
    =======================================================================================================*/
    div.sita-result,
    div.result {
        width: 980px;
    }

    div.sita-result-list > div.google-maps-sita {
        width: 365px;
    }

    /*=======================================================================================================
    STYLE DU PAGE EDITORIALE
    =======================================================================================================*/
    div.page-section > div {
        width: 980px;
    }

    div.page-section > div.page-section-content > div {
        width: 980px;
    }

    div.page-section.page-section-duo > div.page-section-content > div {
        width: 475px;
    }
    div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama video,
    div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama iframe {
        width: 475px;
        height: 267px;
    }

    div.page-section > div.page-section-content > div.page-section-diaporama > div.diaporama {
        height: 654px;
    }

    div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama > div.diaporama {
        height: 317px;
    }

    div.page-section iframe {
        max-width: 980px !important;
    }

    div.page-section.page-section-duo > div.page-section-content > div iframe {
        max-width: 475px !important;
    }

    /*=======================================================================================================
    STYLE DU PUSH INLINE
    =======================================================================================================*/
    div.page-push-inline {
        height: 350px;
        padding: 300px 0 0 0;
    }

    div.page-push-inline > ul.push {
        margin-left: -490px;
    }

    div.page-push-inline > ul.push > li:nth-child(3n) {
        margin-right: 40px;
    }

    /*=======================================================================================================
    STYLE DU PUSH INLINE
    =======================================================================================================*/
    div.page-connexion > div {
        width: 475px;
    }

    div.page-deauth {
        width: 980px;
    }

    /*=======================================================================================================
    STYLE PAGE CONTACT
    =======================================================================================================*/
    div.page-section-form > form {
        width: 980px;
    }

    /*=======================================================================================================
    STYLE RECHERCHE / BROCHURE
    =======================================================================================================*/
    div.form-search > form {
        width: 980px;
    }

    ul.result > li {
        width: 300px;
        height: 507px;
        padding: 201px 25px 25px 25px;
        margin: 0 40px 40px 0;
    }

    ul.result > li:last-child,
    ul.result > li:nth-child(3n) {
        margin-right: 0;
    }

    ul.result > li div.diaporama {
        width: 300px;
        height: 201px;
    }

    /*=======================================================================================================
    STYLE FICHE SITA
    =======================================================================================================*/
    div.sita-fiche {
        width: 980px;
    }

    div.sita-fiche > div.left-col {
        width: 475px;
        min-height: 600px;
    }

    div.sita-infos > ul.prestations,
    div.sita-infos > div.date,
    div.sita-infos > p,
    div.sita-infos > ul.sita-selection {
        width: 230px;
    }

    div.sita-fiche > div.right-col {
        width: 475px;
        height: 600px;
    }

    div.sita-fiche > div.right-col > div.diaporama {
        width: 475px;
        height: 312px;
    }

    div.sita-fiche div.dispos {
        padding: 15px;
    }

    div.sita-fiche div.dispos > div.sita-date-open {
        width: 100%;
        margin: auto;
    }
}

@media screen and (max-width: 1000px) {
    .cadre-sita.sita-has-reservation-url footer {
        margin-bottom: 70px;
    }
    div.sita-fiche .sita-etoiles-middle, div.sita-fiche .sita-diaporama-middle, .sita-fiche .sita-contact-sticky, .sita-fiche .sita-contact-bottom-sticky {
        display: block;
    }
    div.sita-fiche .sita-etoiles-right, div.sita-fiche .sita-diaporama-right , div.sita-fiche .sita-contact {
        display: none;
    }
    div.sita-fiche .sita-options ul.options {
        justify-content: center;
    }

    div.responsive-menu {
        display: block;
    }

    div.menu {
        top: 0;
        left: 0;
        right: 0;
        height: 0;
        overflow: hidden;
        padding-top: 0;
        background: rgba(0, 0, 0, 0.75);
        transition: height 1s, padding-top 1s;
    }

    div.nav.open > div.menu {
        height: 100%;
        padding-top: 60px;
        overflow: auto;
    }

    div.menu > div.menu-head {
        position: static;
        top: auto;
        left: auto;
        right: auto;
        height: auto;
        margin-left: 10px;
        margin-right: 10px;
        background: #333333;

        display: -ms-flex;
        -ms-flex-direction: row;
        -ms-flex-pack: center;
        -ms-flex-align: stretch;
        -ms-flex-wrap: wrap;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: stretch;
        flex-wrap: wrap;
    }

    div.menu > div.menu-head > ul {
        position: static;
        right: auto;
        margin-right: 0;
        height: auto;

        -ms-flex: 1;
        flex: 1;
        -ms-flex-pack: start;
        -ms-flex-wrap: wrap;
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    div.menu > div.menu-head > ul > li {
        -ms-flex: content;
        flex: 0 0 auto;
    }

    div.menu > div.menu-head > ul > li > a {
        display: block;
        padding-right: 15px;
        padding-left: 15px;
        height: 30px;
        font-size: 12px;
        line-height: 30px;
        text-transform: uppercase;
        color: #FFFFFF;
    }

    div.menu > div.menu-head > ul.themes {
        background: #91000b;
        -ms-flex: none;
        flex: none;
        width: 100%;
        -ms-flex-pack: center;
        justify-content: center;
    }

    div.menu > div.menu-head > ul.themes > li:before {
        content: "|";
        display: inline-block;
        padding: 0 6px 0 6px;
        color: #ffffff;
    }

    div.menu > div.menu-head > ul.themes > li:first-child:before {
        content: "";
        display: none;
    }

    div.menu > div.menu-head > ul.themes > li > a {
        display: inline-block;
        padding: 0;
    }

    div.menu > div.menu-head > ul.options {
        padding: 20px;
        margin-right: 0;
        -ms-flex: none;
        flex: none;
        width: 170px;
    }

    div.menu > div.menu-head > ul.options > li {
        -ms-flex: 1;
        flex: 1;
        margin-right: 30px;
    }

    div.menu > div.menu-head > ul.options > li > a {
        height: 31px;
        padding: 3px;
        padding-bottom: 0px;
        line-height: 24px;
        border-bottom: 3px solid #91000b;
    }

    div.menu > div.menu-head > ul.options > li.selection {
        -ms-flex: none;
        flex: none;
        width: 100%;
        margin-right: 0;
    }

    div.menu > div.menu-head > ul.options > li.selection > a {
        padding-right: 30px;
    }

    div.menu > div.menu-head > ul.options > li.malvoyant > a {
        width: auto;
        font-size: 1px;
        line-height: 1px;
        color: transparent;
        background: url(/images/icon-eye.svg) no-repeat center center;
        background-size: 24px 24px;
    }

    div.menu > div.menu-head > ul.options > li.langues {
        position: relative;
        margin-right: 0;
    }

    div.menu > div.menu-head > ul.options > li.langues > a {
        position: relative;
        font-size: 18px;
        font-weight: 300;
        padding-right: 15px;
    }

    div.menu > div.menu-head > ul.options > li.langues > ul {
        top: 31px;
    }

    div.menu > div.menu-head > ul.institutions {
        position: static;
        z-index: auto;
        right: auto;
        bottom: auto;
        display: -ms-flex;
        -ms-flex-direction: column;
        -ms-flex-align: end;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
    }

    div.menu > div.menu-head > ul.institutions > li {
        -ms-flex: none;
        flex: none;
    }

    div.menu > div.menu-head > ul.institutions > li.midi-pyrenees > a,
    div.menu > div.menu-head > ul.institutions > li.aveyron-vivre-vrai > a {
        display: block;
        font-size: 1px;
        line-height: 1px;
        color: transparent;
    }
    div.menu > div.menu-head > ul.institutions > li.midi-pyrenees > a {
        width: 112px;
        height: 164px;
        background: url(/images/icon-midi-pyrenees.svg);
        background-size: 112px 164px;
    }
    div.menu > div.menu-head > ul.institutions > li.aveyron-vivre-vrai > a {
        height: 37px;
        width: 112px;
        background-image: url(/images/icon-aveyron-vivre-vrai.svg);
        background-size: 112px 37px;
    }

    body.home div.menu > div.menu-head > ul.institutions {
        display: -ms-flex;
        display: flex;
    }

    div.menu > div.menu-nav {
        position: static;
        top: auto;
        left: auto;
        right: auto;
        height: auto;
        margin-left: 10px;
        margin-right: 10px;
        background-color: #333333;
    }

    div.menu > div.menu-nav > ul {
        position: static;
        top: auto;
        right: auto;
        margin-left: 10px;
        margin-right: 10px;
        height: auto;

        -ms-flex-direction: column;
        -ms-flex-pack: start;
        flex-direction: column;
        justify-content: flex-start;
    }

    div.menu > div.menu-nav > ul > li {
        border-bottom: 1px solid #8a8a8a;
    }

    div.menu > div.menu-nav > ul > li > a {
        position: relative;
        padding-left: 0;
        padding-right: 0;
        font-size: 15px;
    }

    div.menu > div.menu-nav > ul > li > a:after {
        content: "";
        display: block;
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 30px;
        background: url(/images/icon-arrow-light-right.svg) no-repeat center center / auto 28px;
    }

    div.menu > div.menu-nav > ul > li.home {
        display: none;
    }

    div.menu > div.menu-nav > ul > li.search,
    div.menu > div.menu-nav > ul > li.search.open {
        -ms-flex-order: -1;
        order: -1;
        margin-left: -10px;
        margin-right: -10px;
        position: static;
        padding-left: 0;
        background-color: #FFFFFF;
        border-bottom: 0;
    }

    div.menu > div.menu-nav > ul > li.search > form,
    div.menu > div.menu-nav > ul > li.search.open > form {
        position: static;
        left: auto;
        right: auto;
        height: auto;
        padding-left: 0;
        background-color: transparent;
        display: -ms-flex;
        -ms-flex-direction: row;
        -ms-flex-pack: start;
        -ms-flex-align: stretch;
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        align-items: stretch;
    }

    div.menu > div.menu-nav > ul > li.search > form > label {
        -ms-flex: 1;
        flex: 1;
        display: block;
        position: static;
        top: auto;
        left: auto;
        right: auto;
        overflow: hidden;
    }

    div.menu > div.menu-nav > ul > li.search > form > label > input {
        height: 45px;
        border: 0;
    }

    div.menu > div.menu-nav > ul > li.search > form > input[type="submit"] {
        -ms-flex: none;
        flex: none;
        background: transparent url(/images/icon-search-black.svg) no-repeat center center / 23px 23px;
        width: 45px;
        height: 45px;
    }

    div.menu > div.menu-nav > ul > li.search > a {
        display: none;
    }

    div.menu > div.menu-nav > ul > li.envie,
    body.home div.menu > div.menu-nav > ul > li.envie {
        display: block;
        -ms-flex: content;
        flex: 0 0 auto;
        position: static;
        z-index: auto;
        right: auto;
        top: auto;
        margin-left: -10px;
        margin-right: -10px;
        border-bottom: 0;
    }

    div.menu > div.menu-nav > ul > li.envie > a,
    div.menu > div.menu-nav > ul > li.envie > a:hover,
    div.menu > div.menu-nav > ul > li.envie.open > a,
    div.menu > div.menu-nav > ul > li.envie > ul > li > a,
    div.menu > div.menu-nav > ul > li.envie > ul > li > a:hover {
        position: relative;
        z-index: auto;
        width: auto;
        height: auto;
        padding: 0px;
        padding-left: 10px;
        font-size: 12px;
        line-height: 34px;
        transform: none;
        color: #ffffff;
        background: #91000b;
    }

    div.menu > div.menu-nav > ul > li.envie > a:after {
        right: 10px;
    }

    div.menu > div.menu-nav > ul > li.envie > a:before,
    div.menu > div.menu-nav > ul > li.envie > a > span:before,
    div.menu > div.menu-nav > ul > li.envie > a > span:after,
    div.menu > div.menu-nav > ul > li.envie > ul > li > a:before {
        content: none;
        display: none;
    }

    div.menu > div.menu-nav > ul > li.envie > a > span,
    div.menu > div.menu-nav > ul > li.envie > a > span:first-child {
        display: inline;
        padding-left: 0;
    }

    div.menu > div.menu-nav > ul > li.envie > ul {
        display: none;
        position: static;
        z-index: auto;
        right: auto;
        left: auto;
        top: auto;
        bottom: auto;
        background: none;
        overflow: hidden;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li,
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(2),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(3),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(4),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(5),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(6),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(7),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(8),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(9),
    div.menu > div.menu-nav > ul > li.envie > ul > li:nth-child(10) {
        position: static;
        right: auto;
        top: auto;
        margin-right: 0;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li > a,
    div.menu > div.menu-nav > ul > li.envie > ul > li > a:hover {
        padding-left: 60px;
        text-align: left;
        border-top: 1px solid #b24d55;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li > a > span {
        display: inline;
        padding-top: 0;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li > a > span:after,
    div.menu > div.menu-nav > ul > li.envie > ul > li > a > span:before {
        left: 10px;
        top: 3px;
        height: 28px;
        width: 40px;
        background-size: auto 28px;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li > a:hover > span:after {
        opacity: 1;
    }

    div.menu > div.menu-nav > ul > li.envie > ul > li > a:hover > span:before {
        opacity: 0;
    }

    /*=======================================================================================================
    STYLE DU FOOTER
    =======================================================================================================*/
    div.footer > div.back {
        margin-right: -28px;
    }

    div.foot-head {
        margin-left: 0;
        margin-right: 0;
        width: auto;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    div.foot-head > div.infos {
        margin-left: 10px;
        margin-right: 10px;
    }

    div.foot-head > div.infos > div.more-details > div.maps {
        -ms-flex: none;
        flex: none;
        display: none;
    }

    div.foot-head > div.infos > div.more-details > div.medias > div.folow-us,
    div.foot-head > div.infos > div.partenaires > div {
        -ms-flex-direction: column;
        flex-direction: column;
    }

    div.foot-head > div.infos > div.partenaires {
        margin: 25px;
        position: relative;
        z-index: 0;
    }

    div.foot-head > div.infos > div.partenaires:before,
    div.foot-head > div.infos > div.partenaires:after {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        left: 10px;
        right: 10px;
        top: 27px;
        bottom: 27px;
        background: rgba(0, 0, 0, 0.3);
        -webkit-box-shadow: 0 0px 10px rgba(0, 0, 0, 0.7);
        -moz-box-shadow: 0 0px 10px rgba(0, 0, 0, 0.7);
        box-shadow: 0 0px 10px rgba(0, 0, 0, 0.7);
        -webkit-transform: rotate(-1.5deg);
        -moz-transform: rotate(-1.5deg);
        -o-transform: rotate(-1.5deg);
        -ms-transform: rotate(-1.5deg);
        transform: rotate(-1.5deg);
    }

    div.foot-head > div.infos > div.partenaires > div {
        -webkit-box-shadow: 0 0px 10px rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0 0px 10px rgba(0, 0, 0, 0.1);
        box-shadow: 0 0px 10px rgba(0, 0, 0, 0.1);
        background: #333333;
    }

    div.foot-head > div.infos > div.partenaires:after {
        -webkit-transform: rotate(1.5deg);
        -moz-transform: rotate(1.5deg);
        -o-transform: rotate(1.5deg);
        -ms-transform: rotate(1.5deg);
        transform: rotate(1.5deg);
    }

    div.foot-head > div.infos > div.more-details > div.medias > div.folow-us > ul,
    div.foot-head > div.infos > div.partenaires > div > ul {
        -ms-flex: 1;
        flex: 1;
        -ms-flex-pack: center;
        justify-content: center;
    }

    div.foot-head > div.infos > div.partenaires > div > h2 {
        -ms-flex: 1;
        flex: 1;
        text-align: center;
        color: #ffffff;
        padding-right: 0;
        cursor: pointer;
    }

    div.foot-head > div.infos > div.partenaires > div > h2:after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        width: 25px;
        height: 25px;
        margin-top: -7px;
        margin-left: 15px;
        background: url(/images/icon-arrow-down.svg) no-repeat center center / 25px 25px;
    }

    div.foot-head > div.infos > div.partenaires.open > div > h2:after {
        background-image: url(/images/icon-arrow-up.svg);
    }

    div.foot-head > div.infos > div.partenaires > div > ul {
        overflow: hidden;
        max-height: 0px;
        padding: 0 15px 0 15px;
        transition: max-height 0.6s, padding 0.6s;
    }

    div.foot-head > div.infos > div.partenaires.open > div > ul {
        max-height: 250px;
        padding: 15px;
    }

    div.foot-head > div.contact {
        -ms-flex: 1;
        flex: 1;
        width: auto;
    }

    div.foot-menu > ul {
        width: auto;
        margin-right: 0;
        margin-left: 0;
    }

    /*=======================================================================================================
    STYLE DES PUSHS
    =======================================================================================================*/
    ul.push > li,
    ul.push > li:nth-child(3n) {
        margin-right: 30px;
    }

    ul.push > li:nth-child(2n),
    ul.push > li:last-child {
        margin-right: 0;
    }

    ul.home-push {
        width: 630px;
    }

    /*=======================================================================================================
    STYLE DU CADRE GENERAL
    =======================================================================================================*/
    div.section {
        padding-top: 0;
    }
    div.banniere ~ div.cadre div.section {
        padding-top: 30px !important;
    }

    /*=======================================================================================================
    STYLE D ACCUEIL
    =======================================================================================================*/
    div.home-slides > ul {
        margin-right: -315px;
    }

    div.home-slides > div > p {
        width: 630px;
    }

    /*=======================================================================================================
    STYLE DU FIL ARIANE
    =======================================================================================================*/
    div.head-content {
        width: 630px;
    }

    div.head-content.with-margin {
        padding-top: 70px;
    }

    div.title-content,
    div.title-content-image p {
        width: 630px;
    }

    /*=======================================================================================================
    STYLE DU HEAD TITLE
    =======================================================================================================*/
    div.section > div.diaporama {
        margin-top: 60px;
        width: 630px;
        height: 300px;
    }

    /*=======================================================================================================
    STYLE DU FORM SITA
    =======================================================================================================*/
    div.form-sita {
        width: 630px;
    }

    div.form-input-line {
        -ms-flex-direction: column;
        flex-direction: column;
        padding-top: 0;
        padding-bottom: 0;
    }

    div.form-input-line > div {
        padding-top: 10px;
        padding-bottom: 30px;
    }

    /*=======================================================================================================
    STYLE DU RESULTAT SITA
    =======================================================================================================*/
    div.sita-switch-display {
        display: -ms-flex;
        display: flex;
    }

    /*
        div.sita-display-filter {}
        div.sita-display-map {}
        div.sita-display-list {}
    */
    div.sita-display-filter div.sita-result,
    div.sita-display-map div.form-sita,
    div.sita-display-map ul.sita-result,
    div.sita-display-list div.form-sita,
    div.sita-display-list div.google-maps-sita {
        display: none;
    }

    div.sita-result,
    div.result,
    ul.sita-result {
        width: 630px;
    }

    div.sita-result-list > div.google-maps-sita {
        position: relative;
        top: auto;
        right: auto;
        width: 630px;
        height: 300px;
        overflow: hidden;
    }

    /*=======================================================================================================
    STYLE DU PAGE EDITORIALE
    =======================================================================================================*/
    div.page-section > div,
    div.page-section > div.page-section-title,
    div.page-section > div.page-section-content > div {
        width: 630px;
    }

    div.page-section.page-section-duo > div.page-section-content > div {
        width: 300px;
    }
    div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama video,
    div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama iframe {
        width: 300px;
        height: 169px;
    }

    div.page-section > div.page-section-content > div.page-section-diaporama > div.diaporama {
        height: 420px;
    }

    div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama > div.diaporama {
        height: 200px;
    }

    div.page-section iframe {
        max-width: 630px !important;
    }

    div.page-section.page-section-duo > div.page-section-content > div iframe {
        max-width: 300px !important;
    }

    /*=======================================================================================================
    STYLE DU PUSH INLINE
    =======================================================================================================*/
    div.page-push-inline {
        height: 350px;
        padding: 300px 0 0 0;
    }

    div.page-push-inline > ul.push {
        margin-left: -315px;
    }

    div.page-push-inline > ul.push > li,
    div.page-push-inline > ul.push > li:nth-child(2n),
    div.page-push-inline > ul.push > li:nth-child(3n) {
        margin-right: 30px;
    }

    /*=======================================================================================================
    STYLE DU PUSH INLINE
    =======================================================================================================*/
    div.page-connexion {
        width: 630px;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-left: auto;
        margin-right: auto;
    }

    div.page-connexion > div {
        width: auto;
        margin-right: 0;
        margin-bottom: 30px;
    }

    div.page-deauth {
        width: 630px;
    }

    /*=======================================================================================================
    STYLE PAGE CONTACT
    =======================================================================================================*/
    div.page-section-form > form {
        width: 630px;
    }

    div.page-section-form > form > div {
        width: 100%;
    }

    /*=======================================================================================================
    STYLE RECHERCHE / BROCHURE
    =======================================================================================================*/
    div.form-search > form {
        width: 630px;
    }

    ul.result > li,
    ul.result > li:nth-child(3n) {
        margin: 0 30px 30px 0;
    }

    ul.result > li:last-child,
    ul.result > li:nth-child(2n) {
        margin-right: 0;
    }

    /*=======================================================================================================
    STYLE FICHE SITA
    =======================================================================================================*/
    div.sita-fiche {
        width: 630px;
    }

    div.sita-fiche > div.left-col {
        width: 630px;
        min-height: 600px;
    }

    div.sita-infos > ul.prestations,
    div.sita-infos > div.date,
    div.sita-infos > p {
        width: 335px;
    }

    div.sita-infos > ul.sita-selection {
        width: 280px;
    }

    div.sita-fiche > div.right-col {
        position: static;
        left: auto;
        top: auto !important;
        width: 630px;
        height: auto !important;
    }

    div.sita-fiche > div.right-col > div.diaporama {
        width: 630px;
        height: 420px;
    }

    div.sita-fiche > div.right-col > div.google-maps {
        -ms-flex: none;
        flex: none;
        width: 630px;
        height: 330px;
    }

    div.sita-fiche div.dispos {
        padding: 15px;
    }

    div.sita-fiche div.sita-date-open {
        width: 290px;
        margin-left: 15px;
    }
}

@media screen and (max-width: 650px) {

    h1 {
        font-size: 30px;
        line-height: 39px;
    }

    h2 {
        font-size: 30px;
        line-height: 39px;
    }

    h3 {
        font-size: 20px;
        line-height: 26px;
    }

    h4 {
        font-size: 14px;
        line-height: 18px;
    }

    h5 {
        font-size: 14px;
        line-height: 18px;
    }

    /*=======================================================================================================
    STYLE DES PUSHS
    =======================================================================================================*/
    ul.home-push {
        width: 300px;
    }

    ul.home-push > li,
    ul.home-push > li:last-child,
    ul.home-push > li:not(.picto):nth-child(2n),
    ul.home-push > li:not(.picto):nth-child(3n),
    ul.home-push > li.picto:nth-child(4n) {
        margin-right: 0px;
        margin-bottom: 10px;
    }

    p.home-push > a,
    ul.home-push > li > a {
        width: 300px;
    }

    p.home-push.picto > a,
    ul.home-push > li.picto > a {
        width: 300px;
        height: 70px;
        padding-top: 0;
        line-height: 70px;
    }

    p.home-push.picto > a,
    ul.home-push > li.picto > a:before {
        content: "";
        display: inline-block;
        position: static;
        left: auto;
        right: auto;
        top: auto;
        width: 60px;
        height: 60px;
        margin-top: -10px;
        margin-right: 10px;
        vertical-align: middle;
        background-size: 60px 60px;
    }

    ul.push > li,
    ul.push > li:nth-child(3n),
    ul.push > li:nth-child(2n),
    ul.push > li:last-child {
        margin-right: 0;
        margin-bottom: 15px;
    }

    /*=======================================================================================================
    STYLE DU MENU
    =======================================================================================================*/
    div.responsive-menu > ul > li.logo > a {
        background-size: auto 40px;
    }

    /*=======================================================================================================
    STYLE DU MENU
    =======================================================================================================*/
    div.foot-head > div.infos > div.partenaires:before {
        -webkit-transform: rotate(-2deg);
        -moz-transform: rotate(-2deg);
        -o-transform: rotate(-2deg);
        -ms-transform: rotate(-2deg);
        transform: rotate(-2deg);
    }

    div.foot-head > div.infos > div.partenaires:after {
        -webkit-transform: rotate(2deg);
        -moz-transform: rotate(2deg);
        -o-transform: rotate(2deg);
        -ms-transform: rotate(2deg);
        transform: rotate(2deg);
    }

    /*=======================================================================================================
    STYLE D ACCUEIL
    =======================================================================================================*/
    div.home-slides > ul {
        margin-right: -150px;
    }

    div.home-slides > div:not(.video-is-playing) {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    div.home-slides > div:nth-child(2):not(.video-is-playing) {
        padding-top: 90px;
    }

    div.home-slides > div:last-child {
        padding-bottom: 60px;
    }

    div.home-slides > div > h2 {
        font-size: 34px;
        line-height: 44px;
        padding-bottom: 20px;
    }

    div.home-slides > div > h2 > span {
        display: block;
    }

    div.home-slides > div > p {
        display: none;
    }

    div.home-slides > div > p.next {
        display: block;
    }

    /*=======================================================================================================
    STYLE DU DISPLAY SUPPORT
    =======================================================================================================*/
    .display-tablette,
    .display-desktop {
        display: none !important;
    }

    .display-smartphone {
        display: -ms-flex !important;
        display: flex !important;
    }

    /*=======================================================================================================
    STYLE DU FIL ARIANE
    =======================================================================================================*/
    div.head-content,
    div.title-content,
    div.title-content-image p {
        width: 300px;
    }

    div.title-content {
        padding-bottom: 30px;
    }

    div.title-content p, div.title-content-image p {
        font-size: 14px;
        line-height: 18px;
        padding-bottom: 18px;
    }

    div.head-content {
        padding-top: 20px;
        padding-bottom: 0;
        border-bottom: 1px solid #eeeeee;
        -ms-flex-direction: column;
        -ms-flex-pack: start;
        flex-direction: column;
        justify-content: flex-start;
    }

    div.head-content ul.fil {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-bottom: 10px;
    }

    div.head-content ul.options {
        -ms-flex-pack: center;
        justify-content: center;
    }

    /*=======================================================================================================
    STYLE DU HEAD TITLE
    =======================================================================================================*/
    div.section > div.diaporama {
        width: 300px;
        height: 200px;
    }

    /*=======================================================================================================
    STYLE DU FORM SITA
    =======================================================================================================*/
    div.form-sita {
        width: 300px;
    }

    div.form-multi-date > div > div {
        left: 0px;
        padding: 20px 12px 12px 12px;
    }

    div.form-input-line {
        -ms-flex-direction: column;
        flex-direction: column;
        padding-top: 0;
        padding-bottom: 0;
    }

    div.form-input-line > div {
        padding-top: 10px;
        padding-bottom: 30px;
    }

    div.form-input-line > div, div.form-input-line > div > div {
        -ms-flex-direction: column;
        -ms-flex-align: stretch;
        flex-direction: column;
        align-items: stretch;
    }

    div.form-validate > input {
        -ms-flex: 1;
        flex: 1;
    }

    /*=======================================================================================================
    STYLE DU RESULTAT SITA
    =======================================================================================================*/
    div.sita-result,
    div.result,
    ul.sita-result {
        width: 300px;
    }

    div.sita-result > p.clear-filter {
        margin-top: 10px;
        margin-bottom: 40px;
    }

    div.sita-result-list > div.google-maps-sita {
        width: 300px;
    }

    ul.sita-result > li {
        height: auto;
        margin-bottom: 20px;
        padding-top: 200px;
    }

    ul.sita-result > li > div.result-content {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
    }

    ul.sita-result > li > div.result-content p.date,
    ul.sita-result > li > div.result-content ul.prestations,
    ul.sita-result > li > div.result-content div.date {
        position: static;
        left: auto;
        right: auto;
        bottom: auto;
        margin-top: 15px;
    }

    ul.sita-result > li > div.diaporama {
        position: absolute;
        left: 0;
        top: 0;
        width: 300px;
        height: 200px;
    }

    ul.sita-result > li > ul.options > li {
        left: 260px;
    }

    ul.sita-result > li > ul.options > li.print {
        left: 220px;
    }

    /*=======================================================================================================
    STYLE DU PAGE EDITORIALE
    =======================================================================================================*/
    div.page-section {
        padding: 30px 0 30px 0;
    }

    div.page-section > div {
        padding: 0 0 0 0;
    }

    div.page-section > div,
    div.page-section > div.page-section-title,
    div.page-section > div.page-section-content > div {
        width: 300px;
    }

    div.page-section.page-section-duo > div.page-section-content > div {
        width: 300px;
        margin-right: 0;
    }

    div.page-section.page-section-duo > div.page-section-content {
        -ms-flex-direction: column;
        flex-direction: column;
    }
    div.page-section.page-section-duo > div.page-section-content.align-reverse {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    div.page-section > div.page-section-content > div.page-section-diaporama > div.diaporama,
    div.page-section.page-section-duo > div.page-section-content > div.page-section-diaporama > div.diaporama {
        height: 200px;
        margin-bottom: 18px;
    }

    div.page-section > div.page-section-content > div.google-maps {
        margin-bottom: 18px;
    }

    div.page-section iframe,
    div.page-section.page-section-duo > div.page-section-content > div iframe {
        max-width: 300px !important;
    }

    /*=======================================================================================================
    STYLE DU PUSH INLINE
    =======================================================================================================*/
    div.page-push-inline {
        height: 300px;
        padding: 260px 0 0 0;
    }

    div.page-push-inline > ul.push {
        top: 30px;
        margin-left: -150px;
    }

    div.page-push-inline > ul.push > li,
    div.page-push-inline > ul.push > li:nth-child(2n),
    div.page-push-inline > ul.push > li:nth-child(3n) {
        margin-right: 30px;
    }

    /*=======================================================================================================
    STYLE DU PUSH INLINE
    =======================================================================================================*/
    div.page-connexion {
        width: 300px;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-left: auto;
        margin-right: auto;
    }

    div.page-connexion > div {
        width: auto;
        margin-right: 0;
        margin-bottom: 30px;
    }

    div.page-connexion > div p.facebook > a {
        width: 250px;
        height: auto;
    }

    div.page-connexion > div div.form-text,
    div.page-connexion > div div.form-validate {
        -ms-flex-direction: column;
        -ms-flex-pack: start;
        flex-direction: column;
        justify-content: flex-start;
    }

    div.page-deauth {
        width: 300px;
    }

    /*=======================================================================================================
    STYLE PAGE CONTACT
    =======================================================================================================*/
    div.page-section-form > form {
        width: 300px;
    }

    div.page-section-form > form > div,
    div.form-validate {
        -ms-flex-direction: column;
        flex-direction: column;
    }

    div.page-section-form > form > div > label {
        width: 100%;
    }

    div.page-section-form > form > div.form-checkbox {
        -ms-flex-direction: row;
        flex-direction: row;
    }

    /*=======================================================================================================
    STYLE RECHERCHE / BROCHURE
    =======================================================================================================*/
    div.form-search > form {
        width: 300px;
        margin-bottom: 30px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    div.form-search > form > label {
        -ms-flex: none;
        flex: none;
        width: 100%;
        white-space: normal;
    }

    ul.result > li,
    ul.result > li:nth-child(2n),
    ul.result > li:nth-child(3n),
    ul.result > li:last-child {
        margin: 0 0 20px 0;
    }

    /*=======================================================================================================
    STYLE FICHE SITA
    =======================================================================================================*/
    div.calendars-slide {
        margin-left: -13px;
        margin-right: -13px;
        margin-bottom: 15px;
    }

    div.sita-fiche {
        width: 300px;
    }

    div.sita-fiche div.calendars-slide {
        width: 280px;
    }

    div.sita-fiche > div.left-col {
        width: 300px;
        min-height: auto;
    }

    div.sita-infos {
        -ms-flex-direction: column;
        flex-direction: column;
        margin-bottom: 30px;
    }

    div.sita-infos > ul.prestations,
    div.sita-infos > div.date,
    div.sita-infos > p {
        width: 300px;
    }

    div.sita-infos > ul.sita-selection {
        width: 300px;
        margin-left: 0;
    }

    div.sita-fiche > div.right-col {
        position: static;
        left: auto;
        top: auto !important;
        width: 300px;
        height: auto !important;
    }

    div.sita-fiche > div.right-col > div.diaporama {
        width: 300px;
        height: 200px;
    }

    div.sita-fiche > div.right-col > div.google-maps {
        -ms-flex: none;
        flex: none;
        width: 300px;
        height: 330px;
    }

    div.sita-fiche div.dispos {
        padding: 15px;
    }

    div.sita-fiche div.dispos > div.sita-date-open {
        width: 270px;
        margin-left: 0;
    }
}

@media screen and (max-width: 420px) {

    div.home-slides > ul {
        opacity: 0;
    }

    /*=======================================================================================================
    STYLE DU MENU
    =======================================================================================================*/
    div.foot-head > div.infos > div.partenaires:before {
        -webkit-transform: rotate(-4deg);
        -moz-transform: rotate(-4deg);
        -o-transform: rotate(-4deg);
        -ms-transform: rotate(-4deg);
        transform: rotate(-4deg);
    }

    div.foot-head > div.infos > div.partenaires:after {
        -webkit-transform: rotate(4deg);
        -moz-transform: rotate(4deg);
        -o-transform: rotate(4deg);
        -ms-transform: rotate(4deg);
        transform: rotate(4deg);
    }

}





