@charset "UTF-8"; 

/* 
 * CODES COULEURS
 * 
 * 58TE bordeau                 #094A42
 * 58TE bordeau clair           #1AD6C0
 * 58TE bordeau fonce           #06332E 
 * 58TE bordeau highlight       #06332E
 * SALON violet                 #713087
 * SALON violet clair           #8f679d
 * SALON violet fonce           #4d0267
 * BAR orange                   #e98f10
 * BAR orange clair             #eab05d
 * BAR orange fonce             #955700
 * JULES VERNE marron           #1f120e
 * JULES VERNE marron clair     #5b5756
 * JULES VERNE marron fonce     #0b0300
 */

 /* -------------------------------- */
/* Variables                            */
/* -------------------------------- */
:root {
    --header-height-brasserie: 12.6rem;
    --z-fixed-brasserie: 100;
}

/* -------------------------------- */
/* Reset                            */
/* -------------------------------- */

/* html5doctor.com/html-5-reset-stylesheet/ */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,time,mark,audio,video {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;} 
body {line-height:1;}
ol,ul {list-style:none;}
blockquote,q {quotes:none;}
blockquote:before,blockquote:after,q:before,q:after {content:'';content:none;}
ins {text-decoration:none;}
del {text-decoration:line-through;}
table {border-collapse:collapse;border-spacing:0;}

/* -------------------------------- */
/* Styles de base                   */
/* -------------------------------- */

html {
    font-size: 62.5%;
}
html.has-slideshow-full-screen {
    height: 100%;
    overflow: hidden;
}

body {
    font-family: 'Rambla', sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    color: #1f120e;
    letter-spacing: 0.025em; /* car la Rambla donne l'impression que les lettres sont les unes sur les autres */
}
.has-slideshow-full-screen body {
    height: 100%;
    overflow: hidden;
}

header, footer, section, hgroup, aside, nav, article, figure, figcaption, time {display: block;} /* @note: default HTML5 styles, useful to fx 3.6 and IE */
a img {border: 0;}
figure {margin: 0; padding: 0;}
img {max-width: 100%; /* @note: gestion des dépassements */ }
textarea {max-width: 100%;}

a {text-decoration: none; cursor: pointer; color: #094942;}
a:hover, a:focus, a:active { text-decoration: underline; }

p {word-wrap: break-word;}

/* Scrollbars */
::-webkit-scrollbar {width: 10px; background-color: #f3f2ee;}
::-webkit-scrollbar-thumb {background-color: #094942;}

/* Classes génériques */
.hidden {display: none;}
.bold {font-weight: bold;}
.desktop-only, .page .desktop-only {display: inherit;}
.tablet-only, .page .tablet-only {display: none;}
.mobile-only, .page .mobile-only {display: none;}
.clearfix:before, .clearfix:after {content: ' '; display: table;}
.clearfix:after {clear: both;}


/* -------------------------------- */
/* LIB (Surcharge)                  */
/* -------------------------------- */

/* datepicker */
#ui-datepicker-div {
    z-index: 999 !important; /* MMA ok pour annuler le z-index inline du plugin. */
}

.ui-widget {
    font-size: 14px;
    font-size: 1.4rem;
}

.ui-widget input {
    font-size: 13px;
    font-size: 1.3rem;
}

.ui-datepicker-loading {
    padding: 0 0 4px;
    text-align: center;
}

/* smartmenus */
.sm-simple {
    border: none;
    box-shadow: none;
    background-color: transparent;
}

.sm-simple li {
    display: inline-block;
    float: none;
    border: none;
}

.sm-simple li li {width: 100%;}

.sm-simple a span.sub-arrow {
    top: 12%;
    width: 19px;
    height: 10px;
    margin: auto;
    text-indent: -9999px;
    background: url('/resources/img/pictos/select-arrow-sprite.png') no-repeat center -60px;
}
.sm-simple a:hover span.sub-arrow,
.sm-simple a.highlighted span.sub-arrow {background-position: center -120px;}

.sm-simple a, 
.sm-simple a:hover, 
.sm-simple a:focus, 
.sm-simple a:active {
    font-family: 'Rambla', sans-serif;
}

/* surcharge tripadvisor */
.rte-tripadvisor-container > .cdsROW {
    width: auto !important;
    max-width: 400px;
}

.rte-tripadvisor-container .cdsROW.wide .cdsRating {
    white-space: initial !important;
}
.rte-tripadvisor-container .cdsROW.wide .cdsRating > img {
    padding: 10px 0;
}

/* dropdown list */
.js-dropdown-list {
    display: inline-block;
    cursor: pointer;
}

.js-dropdown-list-wrapper {
    display: inline-block;
    position: relative;
}

.js-dropdown-list-button-wrapper {
    position: relative;
    padding-right: 1em;
    margin: 0;
    height: 32px;
    line-height: 32px;
    z-index: 12;
}
.js-dropdown-list-button-wrapper-label {margin: 0 12px 0 0;}

.js-dropdown-list-button-wrapper-arrow-down {
    width: 19px;
    height: 10px;
    margin: auto;
    position: absolute;
    top: 2px;
    bottom: 0;
    right: 0;
    background: url("/resources/img/pictos/select-arrow-sprite.png") no-repeat center -120px;
}

.js-dropdown-list-items {
    padding: 0 5px 5px 5px;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0;
    list-style: none;
    border: 1px solid #a3a3a3;
    border-top: none;
    border-radius: 0 0 5px 5px;
    box-shadow: 0 3px 7px rgba(0,0,0,.5);
    z-index: 500;
}
/* Texte défilant */

.defile-parent {
    overflow: hidden;
}
.defile {
    display: inline-block;
    padding-left: 100%;
    text-indent: 0;
    text-align:left;
    white-space: nowrap;
    -webkit-animation: marqueelike 30s linear infinite;
    -moz-animation: marqueelike 30s linear infinite;
    -o-animation: marqueelike 30s linear infinite;
    -ms-animation: marqueelike 30s linear infinite;
    animation: marqueelike 30s linear infinite;
}

.defile-parent:hover * {
    -webkit-animation-play-state: paused;
    -moz-animation-play-state: paused;
    -o-animation-play-state: paused;
    animation-play-state: paused;
}

@-webkit-keyframes marqueelike {
    0% { transform: translate(0, 0); }
    100% { transform: translate(-100%, 0); }
}
@-moz-keyframes marqueelike {
    0% { transform: translate(0, 0); }
    100% { transform: translate(-100%, 0); }
}
@-o-keyframes marqueelike {
    0% { transform: translate(0, 0); }
    100% { transform: translate(-100%, 0); }
}
@-ms-keyframes marqueelike {
    0% { transform: translate(0, 0); }
    100% { transform: translate(-100%, 0); }
}
@keyframes marqueelike {
    0% { transform: translate(0, 0); }
    100% { transform: translate(-100%, 0); }
}

/* Slideshows */
.rsOverflow {max-width: 100%;}
.rsMinW .rsGCaption {font-size: inherit;}

/* Slideshow bullets */
.rsBullets {
    position: absolute;
    bottom: 12px;
    right: 12px;
    z-index: 110;
}

.rsBullet {
    display: inline-block;
    height: 12px;
    width: 12px;
    margin: 0 4px;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
}
.rsNavSelected {background: #094942;}

/* Slideshow full screen button */

.rsFullscreenBtn {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 250;
}

.rsFullscreenIcn {
    display: block;
    height: 32px;
    width: 32px;
    background: url("/resources/img/pictos/slideshow-fullscreen-sprite.png") no-repeat center top rgba(255, 255, 255, .80);
    cursor: pointer;
}
.rsFullscreenIcn:hover {
    background-position: center -64px;
    background-color: #094942;
}

/* Slideshow arrows */

.rsArrow {
    position: absolute;
    height: 100%;
    width: 72px;
    top: 0;
    bottom: inherit;
    -ms-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}
.rsArrow.rsArrowLeft {right: inherit; left: 0;}
.rsArrow.rsArrowRight {right: 0; left: inherit;}

.rsArrowIcn {
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    padding: 12px 6px;
    background-image: url('/resources/img/pictos/arrow-sprite.png');
    background-repeat: no-repeat;
    background-position: center top;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.80);
}
.rsArrowIcn:hover {background-color: #094942;}

.rsArrowLeft .rsArrowIcn {
    left: 0;
    right: inherit;
    background-position: center -36px;
}
.rsArrowLeft .rsArrowIcn:hover {background-position: center 12px;}
.rsArrowRight .rsArrowIcn {
    left: inherit;
    right: 0; 
    background-position: center -132px;
}
.rsArrowRight .rsArrowIcn:hover {background-position: center -84px;}

/* Tabs */
.r-tabs {
    border: 0;
    background-color: transparent;
}

.r-tabs .r-tabs-nav {
    display: table;
    table-layout: fixed;
    height: 100%;
    width: 95%; 
    margin: 0 auto;
    border-spacing: 8px 0;
}

.r-tabs .r-tabs-nav .r-tabs-tab {
    display: table-cell;
    height: 100%;
    background-color: #f3f2ee;
    color: #796f68;
    text-shadow: none;
}
.r-tabs .r-tabs-nav .r-tabs-anchor {
    color: #796f68;
    text-shadow: none;
}
.r-tabs .r-tabs-nav .r-tabs-tab.r-tabs-state-active {
    background-color: #094942;
}

.r-tabs .r-tabs-nav .r-tabs-anchor {
    display: block;
    height: 100%;
    padding: 12px 0;
    border-radius: 0;
    box-sizing: border-box;
    outline: none;
}
.r-tabs .r-tabs-nav .r-tabs-state-active .r-tabs-anchor {
    background-color: transparent;
    color: #fff;
}

.r-tabs .r-tabs-panel {
    padding: 0;
    border: 1px solid #094942;
    border-radius: 0;
    background-color: transparent;
}

/* owl-carousel */
.owl-theme .owl-controls {margin: 0}
.owl-theme .owl-controls .owl-buttons div {
    width: 24px;
    height: 16px;
    text-indent: -9999px;
    border-radius: 0;
    opacity: 1;
    background: url("/resources/img/pictos/arrow-sprite.png") no-repeat transparent;
}

.owl-theme .owl-controls .owl-buttons .owl-prev {background-position: center -434px;}
.owl-theme .owl-controls .owl-buttons .owl-prev:hover,
.owl-theme .owl-controls .owl-buttons .owl-prev:active {
    background-position: center -530px;
}
.owl-theme .owl-controls .owl-buttons .owl-next {background-position: center -386px;}
.owl-theme .owl-controls .owl-buttons .owl-next:hover,
.owl-theme .owl-controls .owl-buttons .owl-next:active {
    background-position: center -482px;
}

.owl-theme .owl-controls .owl-page span {background-color: #094942;} 

/* -------------------------------- */
/* Titres                           */
/* -------------------------------- */

h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    font-style: normal;
    font-weight: normal;
    text-transform: uppercase;
    word-wrap: break-word;
} 

h1, .h1 {font-size: 36px; font-size: 3.6rem;}
h2, .h2 {font-size: 28px; font-size: 2.8rem;}
h3, .h3 {font-size: 24px; font-size: 2.4rem;}
h4, .h4 {
    font-size: 20px; 
    font-size: 2.0rem; 
    font-style: italic;
    font-weight: normal; 
    color: #796f68;
    text-transform: none;
}

span.subtitle {
    display: block;
    margin: 0 0 10px 0;
}

/* -------------------------------- */
/* Formulaires                      */
/* -------------------------------- */

input, select, textarea {
    min-width: 186px;
    margin: 0;
    padding: 4px 8px;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    border: 1px solid #999;
    outline: none;
    color: #1f120e;
    font-size: 13px;
    font-size: 1.3rem;
    font-family: 'Rambla', sans-serif;
}

select, 
textarea,
input[type="text"], 
input[type="submit"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
}

input[type="text"], select, textarea {
    background-color: #fff;
}

input {min-height: 18px;}
input.hasDatepicker {cursor: pointer;}

select, textarea {width: 186px;}
[type="radio"], [type="checkbox"] {height: auto; min-width: inherit; padding: 0; border: 0; vertical-align: middle;}
[type="file"] {max-width: 186px;}

label.error {
    display: inline-block;
    color: #f00;
    text-align: left;
    margin: 4px 2px;
}

[type="radio"].error, 
[type="checkbox"].error {
    min-height: 0;
    outline: 1px solid #f00;
}

select {
    padding: 4px 22px 4px 4px;
    background: url("/resources/img/pictos/select-arrow-sprite.png") no-repeat right 4px top -50px #fff;
}
select::-ms-expand {display: none;}

[type="text"].error,
select.error,
textarea.error {
    border: 1px solid #f00;
}

.placeholder {color: #777;}
::-webkit-input-placeholder {color: #777;}
::-moz-placeholder { color: #777; opacity: 1;}
:-ms-input-placeholder {color: #777;}

[type="checkbox"] {vertical-align: middle; width: auto; cursor: pointer;}
.checkbox-label {display: inline; vertical-align: middle; cursor: pointer;}
.radio-label {cursor: pointer;}

.label-with-placeholder {display: none;}

/* ------------------------------------ */
/* Form: common                         */
/* ------------------------------------ */

.page-content .section-form ul {list-style: none;}
.page-content .section-form select {
    width: 30px;
    min-width: 0;
}

.section-form-wrapper p,
.section-form-wrapper ul {
    margin: 18px 0;
}

.section-form {
    background-color: #f2f2f2;
    text-align: left;
    font-size: 14px;
    font-size: 1.4rem;
}

.section-form label.error {
    font-size: 12px;
    font-size: 1.2rem;
}

.section-form-legend-wrapper {
    background-color: #e6e1dc;
}

.section-form-legend-title {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 12px;
}

.section-form .edge {border-style: solid;}
.section-form .edge-darker {border-color: #1f120e;}
.section-form .edge-whiter {border-color: #fff;}

.section-form-legend-wrapper.edge,
.section-paving-legend-wrapper.edge {
    border-bottom-width: 3px;
}

.section-form-part-wrapper-outer {
    display: table;
    table-layout: auto;
    width: 100%;
}

.section-form-part-wrapper-inner {
    display: table-cell;
    vertical-align: middle;
    padding: 12px;
    text-align: left;
    color: #1f120e;
    box-sizing: border-box;
}

.section-form-wrapper .section-form-fields-wrapper {
    display: inline-block;
    width: 47.5%;
    vertical-align: top;
}
.section-form-wrapper .section-form-fields-wrapper:first-child {
    margin: 0 5% 0 0; 
}

.form-error .section-form-fields-wrapper .section-form-field-container {
    min-height: 50px; /* evite les input non aligner selon leur validation */
    margin: 18px 0 0 0;
}

.section-paving-field-wrapper {padding: 0 24px 1px 24px;}

.section-paving-field-wrapper p {margin: 18px 0;}

.section-paving-legend-title {
    padding: 12px;
    font-size: 18px;
    font-size: 1.8rem;  
}

.section-form-steps-action-wrapper {text-align: right;}
.section-form-wrapper .section-form-steps-action-wrapper {margin: 18px 0;}
.section-form-steps-action-wrapper .button {
    box-sizing: border-box;
    height: 36px;
    line-height: 32px;
    vertical-align: middle;
    background-image: url("/resources/img/pictos/arrow-sprite.png");
    background-repeat: no-repeat;
}

.section-form-steps-action-wrapper .button-confirm-final {
    background-image: none;
    padding: 0 12px;
}

.section-form-steps-action-wrapper .button-cancel {
    padding: 0 12px 0 28px;
    margin: 0 12px 0 0;
    background-color: #fff;
    background-position: left -524px;
    color: #094942;
    text-decoration: none;
}

.section-form-steps-action-wrapper .button-confirm {
    padding: 0 28px 0 12px;
    background-position: right -380px;
}
.section-form-steps-action-wrapper .button-confirm:hover {background-position: right -476px;}


/* ------------------------------------ */
/* Form: résa/bon cadeaux/ devis        */
/* ------------------------------------ */

.event-booking-confirm .section-form select {min-width: 176px;}

.section-booking-product-family-footer-wrapper,
.section-booking-total-price-wrapper {
    background-color: #e6e1dc;
}

.section-form p.section-booking-total-price-wrapper,
.section-form p.section-booking-product-family-footer-wrapper {
    margin: 0;
}
 
.section-booking-product-family-footer-wrapper,
.section-booking-total-price-wrapper {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 12px;
}

.section-booking-product.edge,
.section-booking-extra.edge,
.section-booking-product-family-footer-wrapper.edge,
.section-booking-total-price-wrapper.edge {
    border-top-width: 3px;
}
.section-booking-product.edge:first-child {border: none;}

.section-booking-header-part.section-booking-product-title {display: none;}

.section-booking-product-family-title {
    background-color: #998d83;
    font-size: 18px;
    font-size: 1.8rem;
    color: #fff;
    padding: 12px;
}

.section-booking-product-family .section-booking-product-wrapper {
    margin: 0;
    padding: 0;
}

.section-booking-product-title {
    font-size: 16px;
    font-size: 1.6rem;
    color: #094942;
    text-transform: uppercase;
    margin: 0 0 6px 0;
}

.section-booking-product {
    display: table;
    table-layout: auto;
    width: 100%;
}

.section-booking-product-part {
    display: table-cell;
    vertical-align: middle;
    padding: 12px;
    text-align: left;
    color: #363636;
    box-sizing: border-box;
}

.section-booking-product-part-img-wrapper {
    padding: 0;
    vertical-align: top;
}
.section-booking-product-part-img-wrapper img {display: block;}

.section-booking-product-part-content {
    width: 38%;
    text-align: left;
}

.section-form .section-booking-product-part-content p,
.section-form .section-booking-product-part-content ul {
    margin: 0;
}

.section-booking-product-part-action {width: 30.5%;}

.section-form .section-booking-input-wrapper {
    margin: 12px 0;
    text-align: right;
}
.section-form .section-booking-input-wrapper:first-child {margin: 0 0 12px 0;}

.section-booking-input-label {padding: 0 4px 0 0;}
.section-booking-line-element {vertical-align: middle;}
.section-booking-line-text {
    display: inline-block;
    min-width: 50px;
}
.section-booking-price-separator {min-width: 18px; padding: 0 4px;}

.section-booking-product-family-footer-wrapper,
.section-booking-total-price-wrapper {    
    text-align: right;
    text-transform: uppercase;
    font-weight: bolder;
    color: #094942;
}
.section-booking-total-price-wrapper .total-price-label {margin: 0 24px 0 0;}

.section-booking-product-part-action label.error {display: block;}

.section-booking-confirm-outer-wrapper {
    display: table;
    table-layout: fixed;
    text-align: center;
}

.section-booking-confirm-wrapper {
    display: table-cell;
    box-sizing: border-box;
    width: 50%;
    vertical-align: top;
    text-align: left;
}

.section-booking-confirm-wrapper.edge:first-child {border-width: 0 12px 0 0;}
.section-booking-confirm-wrapper.edge:last-child {border-width: 0 0 0 12px;}

.section-booking-confirm-wrapper .section-form-field-container input {
    box-sizing: border-box;
    width: 100%;
}

.section-booking-confirm-wrapper .section-paving-field-wrapper select {
    width: 115px; 
    min-width: 0;
}

.section-booking-confirm-wrapper .section-paving-field-wrapper select[name=paysId] {min-width: 205px;}


.section-booking-confirm-wrapper label.error {display: block;}

.section-booking-list-payment-mode {
    display: table;
    table-layout: fixed;
    width: 100%;
}

.section-booking-item-payment-mode {
    display: table-cell;
    padding: 0 12px;
    text-align: center;
}

.section-booking-item-payment-mode label,
.section-booking-item-payment-mode input {
    display: block;
    margin: 0 auto;
}
.section-booking-item-payment-mode input {min-height: 0;}
.section-booking-item-payment-mode-title {display: none;}


/* Formulaire contact */
.contact-header-subtitle-wrapper {
    background-color: #f2f2f2;
    padding: 12px;
    margin: 0 0 24px 0;
    clear: both;
}
.contact-header-subtitle,
.contact-header-subtitle-button {
    display: inline-block;
    vertical-align: middle;
}
.page-content .contact-header-subtitle-wrapper .contact-header-subtitle {margin: 0;}
.contact-header-subtitle-button {margin: 0 24px;}

.section-contact-demande-warpper .section-form-part-wrapper-inner {vertical-align: top;}

.section-contact-wrapper .section-paving-legend-title label,
.section-contact-wrapper .section-paving-legend-title select {
    vertical-align: middle;    
}

.section-contact-wrapper h2.section-paving-legend-title,
.section-contact-wrapper .section-paving-legend-title label {
    font-size: 22px;
    font-size: 2.2rem;
}

.section-contact-wrapper .section-form [type="text"] {width: 226px;}
.section-contact-wrapper .section-form select {width: 186px;}
.section-contact-wrapper .section-form select option[disabled] { /* fix safari / ie */
    display: none;
}

.section-contact-wrapper .section-form textarea {
    box-sizing: border-box;
    width: 100%;
    height: 256px;
}

.section-contact-wrapper .section-form [name=date] {
    display: inline-block;
    width: 200px;
}

.section-contact-wrapper .section-form-part-wrapper-outer {table-layout: fixed;}

.section-contact-contacts-wrapper {
    box-sizing: border-box;
    background-color: #f2f2f2;
    padding: 18px;
    margin: 0 auto 18px auto;
}

.section-contact-contacts-wrapper ul.contact-list-wrapper {
    display: inline-block;
    list-style: outside none none;
    padding: 0 3%;
    vertical-align: top;
    width: 43%;
    text-align: left;
    margin: 0;
    line-height: 1.3;
}
.section-contact-contacts-wrapper ul.contact-list-wrapper h2 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-top: 30px;
    hyphens: none;
    font-weight: bold;
    color: #094942;
}
.section-contact-contacts-wrapper ul.contact-list-wrapper h3 {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 5px;
    margin-top: 0.5rem;
    font-weight: bold;
    text-transform: none;
}

.section-contact-contacts-wrapper a {color: inherit;}

.section-contact-contacts-wrapper a:hover,
.section-contact-contacts-wrapper a:active,
.section-contact-contacts-wrapper a:focus {
    text-decoration: underline;
}

.section-contact-contacts-wrapper  .section-contact-confirm-wrapper {
    margin: 0 0 18px 0;
    padding: 1px 18px;
    text-align: center;
}

.section-contact-confirm-wrapper {
    margin: 0 0 18px 0;
    padding: 1px 18px;
    text-align: center;
}

/* Captcha */
.captcha-container {
    display: inline-block;
    width: 234px;
}

.captcha-img,
.captcha-button,
.captcha-input {
    border-color: #999;
    border-style: solid;
}

.captcha-container.error .captcha-img,
.captcha-container.error .captcha-button,
.captcha-container.error .captcha-input {
    border-color: #f00;
}

.captcha-img {
    vertical-align: top;
    border-width: 1px 0 0 1px;
    background-color: #fff;
    cursor: pointer;
}

.captcha-button {
    display: inline;
    vertical-align: top;
    height: 37px;
    width: 26px;
    border-width: 1px 1px 0 0;
    background: url("/resources/img/pictos/captcha-refresh-sprite.png") no-repeat scroll;
    background-position: 6px 9px; 
    background-color: #094942;
    cursor: pointer;
}

.captcha-button:hover {
    background-position: 6px -23px;
    box-shadow: inset 0 0 0 2px #094942;
    background-color: #fff;
}

.captcha-input {border-width: 0 1px 1px 1px;}
.captcha-wrapper .captcha-container .captcha-input {
    width: 100%;
    box-sizing: border-box;
}

/* -------------------------------- */
/* Boutons                          */
/* -------------------------------- */
button {
    margin: 0;
    padding: 0;
    border-radius: 0;
    box-shadow: none;
    font-family: 'Rambla', sans-serif;
    text-shadow: none;
}
.button {
    display: inline-block;
    min-width: 70px;
    padding: 6px 20px;
    border: 2px solid #094942;
    text-align: center;
    background: #094942;
    font-family: 'Rambla', sans-serif;
    font-size: 13px;
    font-size: 1.3rem;
    color: #fff;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    outline: none;
    -webkit-appearance: none;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}
.button:hover {
    background-color: #fff;
    color: #094942;
    text-decoration: none;
}

.button-dark {
    color: #fff;
    background: #1f120e;
    border-color: #1f120e;
}
.button-dark:hover {
    color: #1f120e;
    background: #fff;
}

.btn-play-video {
    background-color: #fff; /* IE8 */
    background-color: rgba(255, 255, 255, 0.8);
}
.btn-play-video-picto, 
.btn-play-video-label {
    display: inline-block;
    vertical-align: middle;
}
.btn-play-video-label {
    max-width: 92px;
    padding: 0 12px;
    color: #1f120e;
    text-transform: uppercase;
    vertical-align: middle;
}
.btn-play-video:hover .btn-play-video-label {text-decoration: underline;}

/* -------------------------------- */
/* Pictos                          */
/* -------------------------------- */
.picto-add,
.picto-info,
.picto-marker,
.picto-menu,
.picto-minus-plus,
.picto-phone,
.picto-remove,
.date-picker-button {
    background-image: url('/resources/img/pictos/pictos-sprite.png');
    background-repeat: no-repeat;
}

.picto-marker {background-position: center 0;}
.picto-phone {background-position: center -256px;}

.picto-info {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-position: center -1096px;
}
.picto-info:hover {background-position: center -1160px;}

.picto-minus-plus {
    display: inline-block;
    width: 32px;
    height: 32px;
    background-position: center -512px;
}
.question.closed .picto-minus-plus {background-position: center -448px;}
.question .picto-minus-plus {background-position: center -512px;}
.picto-minus-plus {background-position: center -576px;}

.header-nav-btn-menu .picto-menu {background-position: center -370px;}
.header-nav-btn-menu.collapsed .picto-menu {background-position: center -305px;}

.social-link {
    display: block;
    height: 26px;
    width: 26px;
    background: url('/resources/img/pictos/social-network-sprite.png') no-repeat scroll center center transparent;
}
.social-link.facebook   {background-position: center 6px;}
.social-link.twitter    {background-position: center -46px;}
.social-link.youtube    {background-position: center -98px;}
.social-link.instagram  {background-position: center -150px;}
.social-link.wechat  {background-position: center -202px;}

.footer-follows li:hover {background-color: #5b5756;}

.btn-play-video-picto {
    width: 34px;
    height: 32px;
    background: url("/resources/img/pictos/slideshow-video-sprite.png") no-repeat center -8px #094942;
}
.btn-play-video:hover .btn-play-video-picto {
    background-position: center -104px;
    background-color: #fff;
}

.date-picker-button {
    display: inline-block;
    height: 30px;
    width: 30px;
    text-indent: -9999px;
    background-color: transparent;
    background-position: center -1027px;
}

.flag {
    display: inline-block;
    width: 32px;
    height: 16px;
    background-image: url('/resources/img/pictos/flags-sprite.png');
    background-repeat: no-repeat;
}

.flag-FR {background-position: center 0;}
.flag-EN {background-position: center -32px;}
.flag-ES {background-position: center -64px;}
.flag-DE {background-position: center -96px;}
.flag-BR {background-position: center -128px;}
.flag-IT {background-position: center -160px;}
.flag-ZH {background-position: center -192px;}
.flag-JA {background-position: center -224px;}
.flag-RU {background-position: center -256px;}

.ornamental {
    display: inline-block;
    width: 72px;
    color: inherit;
    border-style: solid;
}

/* -------------------------------- */
/* Contenu, objets                  */
/* -------------------------------- */

/* Frames */
.frame {
    padding: 18px;
    background: none repeat scroll 0 0 rgba(255, 255, 255, .65);
}
.frame.black {background: none repeat scroll 0 0 rgba(0, 0, 0, .80); color: #fff;}
.frame.little {padding: 8px;}

/* Responsive embed from --> http://webdesignerwall.com/tutorials/css-elastic-videos */
.object-wrapper, .video-wrapper {
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
}

.object-container, .video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.object-container iframe, .video-container iframe, 
.object-container object, .video-container object,
.object-container embed, .video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video-wrapper.video-youtube .video-container {padding-top: 0;} /* conserver les autres padding */

.sc-price {
    font-size: 32px;
    font-size: 3.2rem;
    color: #094942;
    vertical-align: middle;
}

.sc-picto {
    display: inline-block;
    margin: 0 8px 8px 8px;
}

.sc-picto img, 
.sc-picto span {
    display: inline-block;
    vertical-align: middle;
}

.sc-picto span {
    margin: 0 0 0 8px;
    font-weight: bold;
    text-transform: uppercase;
}

.button-wrapper {display: inline-block;}

/* -------------------------------- */
/* Layout                           */
/* -------------------------------- */

.table {
    display: table;
    width: 100%;
    height: 100%;
}

.row {
    display: table-row;
    height: 1%;
}

.cell {
    display: table-cell;
    text-align: left;
    vertical-align: top;
}

.row-3 .cell { height: 33.38%; } /* FIX CHROME : ADD 0.5 */
.row-4 .cell { height: 25%; }
.row-5 .cell { height: 20.05%; } /* FIX CHROME : ADD 0.5 */

.page {
    position: relative;
    margin: 0 auto;
    min-height: 100%;
}

.grid {
    width: 1098px;
    margin: 0 auto;
}
.grid.grid-small {max-width: 800px;}

/* -------------------------------- */
/* Home                             */
/* -------------------------------- */
.home-btn-language {
    position: relative;
    text-align: left;
    z-index: 101;
}

.home-btn-language .js-dropdown-list {
    margin-left: 10%;
    box-shadow: 0 3px 7px rgba(0, 0, 0, 0.5);
}

.home-nav {
    position: absolute;
    top: 0;
    right: 0;
    left: auto;
    bottom: 0;
    width: 388px;
    z-index: 102;
}

.home-nav-items { margin-left: 2px; }

.home-nav-item-container {
    background-position: center right;
    background-size: cover;
}

.home-nav-link-wrapper {
    position: relative;
    height: 33px;
    width: 65%;
    background-image: url("/resources/img/bg/angle.png");
    background-repeat: no-repeat;
    background-position: right top;
    transition-property:  width, height;
    transition-duration:  0.5s, 0.425s;
    /* activation de l'accélaration matérielle */
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);   
}


.home-nav-link {
    display: inline-block;
    box-sizing: border-box;
    width: 75%;
    height: 100%;
    padding-left: 5px;
    line-height: 32px;
    outline: 0;
    color: #fff;
    cursor: pointer;
    background-color: #094942;
}
.home-nav-link:after {
    position: absolute;
    right: -5000px; /* ie8 :-( */
    bottom: 15%;
    color: #fff;
    font-size: 72px;
    font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Lucida Sans', Geneva, Verdana, sans-serif;
    opacity: 1;
    content: "+";
    transition-property:  opacity;
    transition-duration:  0.75s;
    opacity: 0;
}

.home-nav-link .link-title,
.home-nav-link .link-hover-description {
    display: inline-block;
    color: #fff;
    text-transform: uppercase;
    white-space: nowrap;
}
.home-nav-link .link-title {
    font-size: 19px;
    font-size: 1.9rem;
}

.home-nav-link .link-hover-description {
    display: none;
    font-size: 17px;
    font-size: 1.7rem;
}

.jules-verne .home-nav-link-wrapper { background-image: url("/resources/img/bg/angle-brown.png"); }
.bar .home-nav-link-wrapper { background-image: url("/resources/skin/bar/img/bg/angle.png"); }
.salon .home-nav-link-wrapper { background-image: url("/resources/skin/salon/img/bg/angle.png"); }
.bulle .home-nav-link-wrapper { background-image: url("/resources/skin/bulle/img/bg/angle.png"); }
.brasserie .home-nav-link-wrapper { background-image: url("/resources/skin/brasserie/img/bg/angle.png"); }

.jules-verne .home-nav-link { background-color: #1f120e; }
.bar .home-nav-link { background-color: #e98f10; }
.salon .home-nav-link { background-color: #713087; }
.bulle .home-nav-link { background-color: #fb7328; }
.brasserie .home-nav-link { background-color: #55725c; }

/* hover */
.home-nav-item-container:hover .home-nav-link-wrapper,
.home-nav-item-container:focus .home-nav-link-wrapper { 
    width: 100%;
    height: 100%;
}

.home-nav-item-container:hover .home-nav-link:after,
.home-nav-item-container:focus .home-nav-link:after { 
    right: 15%;
    opacity: 1;
}

.home-nav-item-container:hover .home-nav-link,
.home-nav-item-container:focus .home-nav-link { 
    width: 60%;
    height:100%;
    padding: 10px 0 0 15%;
    font-size: 32px;
    font-size: 3.2rem;
    text-decoration: none;
}

.home-nav-item-container:hover .home-nav-link  .link-title,
.home-nav-item-container:focus .home-nav-link  .link-title {
    font-size: 36px;
    font-size: 3.6rem;
    white-space: normal;
}
.home-nav-item-container:hover .home-nav-link  .link-hover-description,
.home-nav-item-container:focus .home-nav-link  .link-hover-description { 
    display: block;
    font-size: 20px;
    font-size: 2.0rem;
}

/* -------------------------------- */
/* Header                           */
/* -------------------------------- */
.has-slideshow-full-screen .page-header {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 120;
}

.js-dropdown-list {background: #fff;}

/* gére l'affichage au chargement du DOM puis instanciation afin d'éviter effet flash/désordre visuel */
.js-dropdown-list > ul > li {display: none;} 
.js-dropdown-list > ul > li.selected {display: block;}
.js-dropdown-list-items .js-dropdown-list-item {display: block;}
.js-dropdown-list-items .js-dropdown-list-item.selected {display: none;}

.js-dropdown-list-wrapper {
    padding: 0 10px;
    min-width: 150px;
}
.js-dropdown-list-items {
    display: none;
    background-color: #fff;
    list-style: outside none none;;
}

.js-dropdown-list-item {min-width: 145px;}

.js-dropdown-list-item:hover {background-color: #f5f5f5;}

.js-dropdown-list-items.languages-list {padding: 0 10px 5px;}

.rte-navigation-items {padding: 0;}

.rte-navigation-item {
    padding: 6px;
    line-height: 36px;
}

.rte-navigation-item.restaurant-58:hover {background-color: #094942;}
.rte-navigation-item.jules-verne:hover {background-color: #1f120e;}
.rte-navigation-item.bar:hover {background-color: #e98f10;}
.rte-navigation-item.salon:hover {background-color: #713087;}
.rte-navigation-item.bulle:hover {background-color: #fb7328;}
.rte-navigation-item.brasserie:hover { background-color: #55725c; }


.rte-navigation-item:hover .rte-navigation-link {color: #fff;}



.page-header .js-dropdown-list-button-wrapper { 
    height: 38px;
    line-height: 38px;
}

.page-header .js-dropdown-list-wrapper,
.page-header .rte-navigation-list,
.page-header .languages-list { 
    border-width: 0 1px;
    border-style: solid;
    border-color: #b4b5b4;
}

.page-header .js-dropdown-list a:hover, 
.page-header .js-dropdown-list a:focus, 
.page-header .js-dropdown-list a:active {
    text-decoration: none;
}

.page-header .aside-link-item {padding: 0 24px 0 0;}
.page-header .aside-link-item:last-child {padding-right: 0;}
.page-header .languages-list-container {padding: 0 0 0 24px;}

.rte-navigation-link,
.language-link {
    text-align: left;
    color: #1f120e;
}

.language-link .flag,
.language-link .language-label {
    vertical-align: middle;
}

.language-link .language-label {
    padding: 0 0 0 6px;
    color: #1f120e;
}
.languages-list .language-label {color: #1f120e;}
.languages-list .language-link {line-height: 32px;}

.aside-nav-wrapper {
    position: relative;
    background: #fff;
    z-index: 201;
}

.aside-link-list,
.aside-link-item {
    display: inline;
    line-height: 38px;
}
.aside-link-wrapper {float: right;}
.aside-nav .aside-link {
    display: inline-block;
    color: #1f120e;
    vertical-align: top;
}
.aside-nav .aside-link:hover {text-decoration: underline;}

.secondary-aside-nav {
    float: right;
    line-height: 38px;
}
.secondary-aside-nav .aside-link {
    border-left: 1px dotted #fff;
}
.header-nav-btn-booking {
    padding: 0 8px;
    color: #094942;
}

.header-nav-btn-booking .aside-link-picto {
    display: inline-block;
    height: 32px;
    width: 21px;
    margin: 0 8px 0 0;
    vertical-align: middle;
    background: url("/resources/img/pictos/eiffel-sprite.png") no-repeat center top transparent;
}

.header-nav-btn-booking:hover {
    color: #fff;
    background: #094942;
}

.header-nav-btn-booking:hover .aside-link-picto {
    background-position: center bottom;
}

.header-nav-btn-phone .price {
    font-size: 10px;
    font-size: 1.0rem;
    text-transform: lowercase;
}

.official-link-picto-wrapper {
    padding: 8px 8px 0 24px;
    background-image: url('/resources/img/pictos/eiffel-tower-picto.png');
    background-repeat: no-repeat;
    background-position: 4px 4px;  
}

/* Nav */
.header-nav-btn-navigation .js-dropdown-list-wrapper {min-width: 169px;}

.header-nav-btn-menu {
    display: none;
    float: left;
    padding: 0 5px;
    background-color: #55725c;
}

.header-nav-btn-menu .picto-menu {
    min-height: 58px;
    width: 32px;
    display: block;
    line-height: 58px;
}

.main-nav-wrapper {
    position: relative;
    background-color: #1f120e;
    clear: both;
}

.main-nav-colored-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 50%;
    background: #094942;
}

.main-nav-inner-wrapper {
    position: relative;
    clear: both;
    background-image: url('/resources/img/bg/angle.png');
    background-position: -270px top; /* bg size - (logo max width + padding) => 460 - (160 + 30) = 270 */
    background-repeat: no-repeat;
    background-color: #1f120e;
}

.main-nav-wrapper.no-logo .main-nav-inner-wrapper {
    min-height: 58px;
    background-image: none;
}

.main-nav {
    display: inline-block;
    width: 908px; /* grid - (logo max width + padding) => 1098 - (160 + 30) = 40 */
    min-height: 58px;
    vertical-align: top;
    float: right;
    font-size: 0;
}

.main-nav-wrapper.no-logo .main-nav {
    min-width: 908px;
}

.main-nav:before {
    clear: both;
    content:'';
} 

.main-nav :after {
    clear: both;
} 

.logo-link {
    display: inline-block;
    line-height: 58px;
    padding: 0 30px 0 0;
}

.logo-img {
    max-width: 160px;
    vertical-align: middle;
}

.nav-list {
    display: inline-block;
    line-height: 58px;
}

.nav-list:last-child {float: right;}

.nav-list .sub-menu {
    z-index: 300; /* fixe menu déroulant et slide-content*/
    background: #1AD6C0;
}

.nav-list .nav-item {
    height: 100%;
    vertical-align: middle;
}

.nav-list  .nav-item-link {
    display: block;
    vertical-align: middle;
    white-space: normal;
    max-width: 200px;
}
.nav-list .sub-menu .nav-item-link {
    min-height: inherit;
    line-height: 34px;
}

.nav-list .nav-item-link {
    padding: 0 12px;
    font-size: 15px;
    font-size: 1.5rem;
    color: #fff;
    text-transform: uppercase;
}

.nav-list .nav-item-link.disabled {
    background: transparent;
    cursor: pointer;
}

.nav-list .nav-item-link:hover, 
.nav-list .nav-item-link:focus, 
.nav-list .nav-item-link:active, 
.nav-list .nav-item-link.highlighted {
    padding: 0 12px;
    font-size: 15px;
    font-size: 1.5rem;
    color: #fff;
    text-decoration: underline;
    background: none;
}

.nav-list .nav-item .nav-item:hover .nav-item-link {
    background-color:#1AD6C0; 
}

.nav-list .nav-item-link.has-submenu {padding: 0 44px 0 8px;}

.nav-list .nav-item-secondary .nav-item-link {
    width: auto;
    min-height: 0;
    border: none;
}

/* Message IE */
.old-browser-message-wrapper {
    padding: 8px;
    color: #fff;
    background: #f00;
}

/* RPGD  base common bannière cookies */
.rgpd-banner { 
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 65535; /* 2^16 -1 */
    box-shadow: 0 -1px 5px 5px rgba(0,0,0,0.2);
    border-top: 1px solid rgba(0,0,0,0.3);
}

.rgpd-banner > * { box-sizing: border-box;}

.rgpd-banner a,
.rgpd-banner button {
    display: inline-block;
    font-size: 1em;
}

.rgpd-banner-wrapper {
    padding: 1em 1.5em;
    text-align: left;
}

.rgpd-banner-message { 
    display: inline-block;
    margin-bottom: 0.5em; 
}

.rgpd-banner-footer { text-align: right; }

.rgpd-banner-footer-link-cookie,
.rgpd-banner-button-confirm {
    background: inherit;
    color: inherit;
    font-weight: bold;
}

.rgpd-banner-footer-link-cookie {
    margin-right: 1em;
    margin-bottom: 1em;
    text-decoration: underline;
}

.rgpd-banner-footer-link-cookie:hover,
.rgpd-banner-footer-link-cookie:focus,
.rgpd-banner-footer-link-cookie:active {
    text-decoration-style: dashed;
}

.rgpd-banner-button-confirm {
    text-decoration: none;
    background-color: transparent;
    border: 1px solid;
    border-radius: 1em;
    padding: 0.5em;
}

.rgpd-banner-button-confirm:hover,
.rgpd-banner-button-confirm:focus,
.rgpd-banner-button-confirm:active  {
    background-color: rgba(255, 255, 255, 0.2);
}

/* RPGD specific theme bannière cookies */
.rgpd-banner {
    background: #333;
    color: #fff;
}
.rgpd-banner-wrapper {
    width: 1098px;
    margin: 0 auto;
}

.page-home .rgpd-banner { right: 388px; }
.page-home .rgpd-banner-wrapper { width: auto; }

@media screen and (max-width: 1200px) {
    .rgpd-banner-wrapper {
        width: auto;
    }
}

@media screen and (max-width: 600px) {
    .page-home .rgpd-banner { right: 0; }
    .calendar-prestation.not-open p {
        height: 100%;
        background-color: #fff;
    }
}

/* Message informartions / alerte  */
.information-message-wrapper {
    position: relative;
    padding: 12px;
    font-family: 'Open Sans';
    color: #FFF;
    text-align: center;
    z-index: 10;
}
.information-message-wrapper.classic {background: #fff; color: #000;}
.information-message-wrapper.alert {background: #cc0000; color: #fff}
.information-message-wrapper.alert a {color: #000}

/* -------------------------------- */
/* Footer                           */
/* -------------------------------- */
.page-footer {
    position: static;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    clear: both;
}
.has-slideshow-full-screen .page-footer {position: absolute;}

.footer-links-wrapper {
    line-height: 1.3;
    background: #1f120e;
    color: #fff;
}

.footer-links,
.footer-links-part {
    font-size: 0;
    position: relative;
}

.footer-links {
    padding-bottom: 12px;
}

.footer-links-part {
    display: inline-block;
    vertical-align: middle;
}

.footer-nav {
    width: 72%;
    padding-left: 5%;
    box-sizing: border-box;
    text-align: left;
}
.footer-nav li,
.social-pages li {
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    font-size: 1.4rem;
}

.social-pages .social-link {padding: 6px;}

.footer-link {
    color: #fff;
    display: block;
}

.footer-link:hover,
.footer-link:focus,
.footer-link:active {
    color: #1AD6C0;
    text-decoration: underline;
}

.footer-follows {
    width: 18%;
    text-align: right;
    font-style: italic;
}

.footer-follows li {border-left: 1px solid #5b5756;}
.footer-follows li:last-child {border-right: 1px solid #5b5756;}

.footer-branding-wrapper {
    padding: 4px 0;
    background: #fff;
    text-align: right;
}

.footer-nav li.footer-nav-separator {
    font-size: 20px;
    font-size: 2.0rem;
    margin: 0 5px;
    color: #5b5756;
}

.footer-branding-wrapper a {display: inline-block;}
.sodexo-img {
    display: inline-block;
    vertical-align: middle;
    width: 10%;
}
.sodexo-img img { display: block; }

/* -------------------------------- */
/* Contenu des Pages                */
/* -------------------------------- */

.page-content {
    text-align: center;
    clear: both;
}

/* -------------------------------- */
/* Slideshow                        */
/* -------------------------------- */

/* Commun */
.slideshow-wrapper {position: relative;}

.slide-content {
    display: block;
    position: absolute;
    width: 386px;
    top: 18%;
    left: 8%;
    left: calc((100% - 1098px) / 2);
    text-align: left;
    color: #fff;
    z-index:200;
}
.rsFullscreen .slide-content {display: none;}

.slide-title a {color: inherit;}
.slide-title + .slide-text {margin: 12px 0 0 0;}
.slide-link {margin: 12px 0 0 0;}
.slide-text {
    box-sizing: border-box;
    text-align: left;
    line-height: 1.3;
}

.aside-slideshow {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 12px;
    z-index: 100;
}

.aside-slideshow .popin-video {
    position: absolute;
    left: 12px;
    bottom: 12px;
}

/* Ancres */
.aside-slideshow {
    bottom: 24px;
    left: 0;
    position: absolute;
    right: 0;
    z-index: 150;
}
.aside-slideshow .anchor-button-list {
    display: block; 
    margin: 0;
    text-align: left;
}

.anchor-button-item {
    display: inline-block;
    margin: 0 12px 0 0;
    vertical-align: middle;
}

.anchor-button-img {
    max-height: 32px;
    vertical-align: middle;    
}

.anchor-button-label {
    margin: 0 0 0 4px;
    font-size: 11px;
    font-size: 1.1em;
    color: #fff;
    filter:progid:DXImageTransform.Microsoft.Shadow(color=#000000,direction=135,strength=1);
    text-shadow: 1px 1px 1px #000;
    text-transform: uppercase;
    text-decoration: underline;
}

/* Full screen */
.slideshow-full-screen-wrapper {
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

/* Full screen */
.slideshow-full-screen-wrapper {
    position: absolute;
    top: 0;
    right: 388px;
    bottom: 0;
    left: 0;
    width: auto;
    height: auto;
}

.slideshow-full-screen-wrapper .aside-slideshow { z-index: 100; }

.slideshow-full-screen {
    width: 100%;
    height: 100%;
}

.slideshow-full-screen-slide {
    height: 100%;
    background: none no-repeat center center; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-home .slideshow-full-screen-slide {position: relative;}

.slideshow-full-screen-slide-img { max-width: none; }
.page-home .slideshow-full-screen-slide-img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
}
.page-home .slideshow-full-screen-slide-img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
}

.slideshow-full-screen .slide-content {
    top: 20%;
    left: 10%;
    display: table;
    table-layout: fixed;
    max-width: 386px;
    padding: 12px;
    border-radius: 0;
    z-index: 100;
}

.slideshow-full-screen .slide-content-inner-wrapper {
    display: table-cell;
    padding: 12px;
    vertical-align: middle;
}

.slideshow-full-screen .slide-title,
.slideshow-full-screen .slide-text {
    width: 386px;
    margin: 0 auto;
}

.slideshow-full-screen .slide-title {word-break: keep-all;}

.slideshow-full-screen .slide-title,
.slideshow-full-screen .slide-text {
    color: #fff;
}

.slideshow-full-screen .slide-title {
    font-size: 58px;
    font-size: 5.8rem;
    font-weight: bold;
}

.slideshow-full-screen .ornamental-title-align {
   text-shadow: 0 0 2px #3c3c3c;
}

.slide-title-slant-border-top,
.slide-title-slant-border-bottom {
    width: 200%;
    text-align: right;
    position: relative;
    left: -100%;
    border-bottom: 2px solid #fff;
    box-shadow: 0 0 2px #3c3c3c;
    /* start anti-aliasing jagged edges effect */
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    outline: 1px solid transparent;
    /* /end anti-aliasing jagged edges effect */
    -webkit-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
            transform: rotate(-10deg);
}

.slide-title-slant-border-top {margin-bottom: 24px;} /* pour ne pas percuter l'ornemental */
.slide-title-slant-border-bottom {margin-top: 42px;} /* pour ne pas percuter l'ornemental */

    
/* Full width & Booking */
.slideshow-full-width, 
.slideshow-booking {
    width: 100%;
}
.slideshow-full-width *, 
.slideshow-booking * {
    -webkit-backface-visibility: inherit;
}

.slideshow-full-width .rsGCaption, 
.slideshow-booking .rsGCaption {
    position: static; 
    padding: 0;
}

.slideshow-full-width .slide-content-frame,
.slideshow-booking .slide-content-frame {
    position: absolute;
    top: 0;
    left: -10%;
    width: 55%;
    height: 100%;
    background: black;
    background: rgba(0, 0, 0, 0.4);
    -webkit-transform: skew(-15deg);
    -ms-transform: skew(-15deg);
    transform: skew(-15deg);
    z-index: 20;
}

.slideshow-full-width .rsImg,
.slideshow-booking .rsImg {
    z-index: 10;
}

.slideshow-full-width .sc-price {
    display: block;
    font-size: 48px;
    font-size: 4.8rem;
    color: #fff;
}

/* Slideshow - standard with text */
.slideshow-standard-with-text {margin: 0 auto 32px auto;}
.slideshow-standard-with-text .slide-button-popin {display: none;}
.slideshow-standard-with-text .slide {
    display: table;
    width: 100%;
    table-layout: fixed;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: 100% auto;
    -moz-background-size: 100% auto;
    -o-background-size: 100% auto;
    background-size: 100% auto; 
}

.slideshow-standard-with-text .slide-full-image {
    height: 100%;
    width: 100%;
}

.slideshow-standard-with-text .slide-content,
.slideshow-standard-with-text .slide-img-wrapper {
    display: table-cell; 
    vertical-align: top;
}

.slideshow-standard-with-text .slide-content {
    position: static;
    padding: 32px 48px;
    width: auto;
    color: inherit;
}

.slideshow-standard-with-text .slide-title-wrapper {padding: 0 0 12px 0;}

.slideshow-standard-with-text .slide-title-wrapper .h3,
.slideshow-standard-with-text .slide-title-wrapper .h4 {
    margin: 0;
}

.slideshow-standard-with-text .slide-title-wrapper .slide-subtitle {
    display: block;
    font-size: 20px;
    font-size: 2rem;
}

.slideshow-standard-with-text .slide-text-wrapper {
    padding: 0 8px 0 0;
    overflow-y: auto;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: justify;
    line-height: 1.3;
}
.slideshow-standard-with-text .slide-text-position-west .slide-img-wrapper,
.slideshow-standard-with-text .slide-text-position-unknown .slide-img-wrapper {
    text-align: right;
}

.slideshow-standard-with-text .slide-img-wrapper {width: 50%;}
.slideshow-standard-with-text .slide-without-text .slide-img-wrapper {width: 100%;}

.slideshow-standard-with-text .rsBullets {
    left: 0;
    right: 0;
    bottom: -24px;
}

.slideshow-standard-with-text .rsBullet {background-color: #a3a3a3;}
.slideshow-standard-with-text .rsNavSelected {background-color: #094942;}

/* Slideshow Standard */
.slideshow-standard {width: 100%;}
.slideshow-standard * {-webkit-backface-visibility: inherit;}

/* Skin sur slides */


/* -------------------------------- */
/* Blocs                            */
/* -------------------------------- */

.bloc {
    clear: both;
}
.bloc .bloc-container {padding: 24px 0;}
.bloc-brick-content-wrapper {padding: 24px 0;}
.bloc:first-child .bloc-container {padding-top: 0;}

 
.has-slideshow-full-screen .bloc, 
.has-breadcrumbs .bloc:first-child {margin: 0;}

/* Thèmes de blocs (Base) */
.bloc-background-aplat .bloc-container {background-color: #f4f4f4;}
.bloc-composite-content-wrapper {padding: 0;}

.bloc-composite-content .center-image-img-wrapper,
.bloc-composite-content .button-wrapper {
    margin-top: 1rem;
}

.bloc-composite-content {line-height: 1.3;}

.bloc-composite-media-wrapper img {box-shadow: 0 6px 12px rgba(0, 0, 0, 0.65);}

.bloc-composite.bloc-image-west .bloc-composite-media-wrapper, 
.bloc-composite.bloc-image-east .bloc-composite-media-wrapper {
    width: 40%;
}

.bloc-composite.bloc-image-west .bloc-composite-media-wrapper {
    float: left;
    margin:0 50px 8px 16px;
}

.bloc-composite.bloc-image-east .bloc-composite-media-wrapper {
    float: right;
    margin: 0 16px 8px 50px;
}
.bloc-composite.bloc-image-center .bloc-composite-media-wrapper {
    margin-bottom: 15px;
}
.bloc-composite.bloc-image-west .bloc-composite-main-content,
.bloc-composite.bloc-image-east .bloc-composite-main-content {
    text-align: left;
}
.bloc-composite.bloc-image-west .bloc-composite-main-content:after,
.bloc-composite.bloc-image-east .bloc-composite-main-content:after {
    content: ' ';
    display: block;
    clear: both;
}
.bloc-composite-link-wrapper {margin-top: 25px;}

/* Theme SLANT */
.bloc-theme-slant-utl .bloc-container,
.bloc-theme-slant-utr .bloc-container,
.bloc-theme-slant-btl .bloc-container,
.bloc-theme-slant-btr .bloc-container {
    padding: 0;
}

.bloc-theme-slant-utl .slant-container,
.bloc-theme-slant-utr .slant-container,
.bloc-theme-slant-btl .slant-container,
.bloc-theme-slant-btr .slant-container {
    background-repeat: no-repeat;
    height: 72px;
}
.bloc-theme-slant-utl .slant-content-wrapper,
.bloc-theme-slant-utr .slant-content-wrapper,
.bloc-theme-slant-btl .slant-content-wrapper,
.bloc-theme-slant-btr .slant-content-wrapper {
    background-repeat: repeat;
    padding: 0;
}
.bloc-theme-slant-utl .slant-container {
    background-image: url("/resources/img/bg/bloc-theme/slant/utl_angle.png");
    background-position: left top;
}
.bloc-theme-slant-utl .slant-content-wrapper {
    background-image: url("/resources/img/bg/bloc-theme/slant/utl_bg.png");
    background-position: left top;
}
.bloc-theme-slant-utr .slant-container {
    background-image: url("/resources/img/bg/bloc-theme/slant/utr_angle.png");
    background-position: right top;
}
.bloc-theme-slant-utr .slant-content-wrapper {
    background-image: url("/resources/img/bg/bloc-theme/slant/utr_bg.png");
    background-position: right top;
}
.bloc-theme-slant-btl .slant-container {
    background-image: url("/resources/img/bg/bloc-theme/slant/btl_angle.png");
    background-position: left bottom;
}
.bloc-theme-slant-btl .slant-content-wrapper {
    background-image: url("/resources/img/bg/bloc-theme/slant/btl_bg.png");
    background-position: left bottom;
}
.bloc-theme-slant-btr .slant-container {
    background-image: url("/resources/img/bg/bloc-theme/slant/btr_angle.png");
    background-position: right bottom;
}
.bloc-theme-slant-btr .slant-content-wrapper {
    background-image: url("/resources/img/bg/bloc-theme/slant/btr_bg.png");
    background-position: right bottom;
}

.bloc-theme-slant-utl .slant-content-wrapper,
.bloc-theme-slant-utr .slant-content-wrapper {
    padding-bottom: 28px; /* en rapport à la height de slant-container valeur determiné visuellement */
}

.bloc-theme-slant-btl .slant-content-wrapper,
.bloc-theme-slant-btr .slant-content-wrapper {
    padding-top: 28px; /* en rapport à la height de slant-container valeur determiné visuellement */
}

/* OVERLAY */

.bloc-image-east.bloc-theme-overlay,
.bloc-image-west.bloc-theme-overlay {
    padding: 24px 0;    
} 

.bloc-image-east.bloc-theme-overlay .bloc-container,
.bloc-image-west.bloc-theme-overlay .bloc-container {
    padding: 45px 0 0 0;
}

.bloc-image-east.bloc-theme-overlay .bloc-composite-media-wrapper,
.bloc-image-west.bloc-theme-overlay .bloc-composite-media-wrapper {
    width: 55%;
    position: relative;
    top: -45px;
    margin: 0;
}
.bloc-image-east.bloc-theme-overlay .bloc-composite-main-content,
.bloc-image-west.bloc-theme-overlay .bloc-composite-main-content {
    color: #fff;
    position: relative;
    width: 40%;
    z-index: 100;
    padding: 40px;
    background: #5b5756 url("/resources/img/bg/bloc-theme/overlay/bg-zoom.jpg") no-repeat scroll left top;
    background-size: cover;
}

.bloc-image-east.bloc-theme-overlay .bloc-composite-main-content {
    margin: 0 auto 0 0;
}
.bloc-image-west.bloc-theme-overlay .bloc-composite-main-content {
    margin: 0 0 0 auto;
}

/* sous-blocs */
.sous-bloc-wrapper {
    display: inline-block;
    width: 50%;
    padding: 36px 0;
    position: relative;
    vertical-align: top;
}
.sous-bloc-media-img {
    display: block;
    width: 100%;
}
.sous-bloc-wrapper a:hover, .sous-bloc-wrapper a:focus, .sous-bloc-wrapper a:active {
    text-decoration: none;
    outline: none;
}
.sous-bloc-media-wrapper {
    position: relative;
}
.sous-bloc-content-wrapper {
    position: absolute;
    top: 0;
    right: auto;
    bottom: auto;
    left: 0;
    width: 80%;
    text-align: right;
    z-index: 105;
}
.sous-bloc-content-title {
    padding: 0 15% 0 0;
    background-image: url("/resources/img/bg/angle-brown.png");
    background-position: right top;
    background-repeat: no-repeat;
    line-height: 36px;
}
.sous-bloc-content-title-wrapper {
    display: block;
}

.sous-bloc-content-title-label {
    padding: 0 0 0 10px;
    display: block;
    color: #fff;
    background: #1f120e;
}
.sous-bloc-content-description {
    display: none;
    padding: 18px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    text-align: center;
    text-transform: uppercase;
    font-size: 25px;
    font-size: 2.5rem;
    color: #1f120e;
    background-color: rgba(255, 255, 255, 0.65);
}
.sous-bloc-wrapper:hover .sous-bloc-content-description {
    display: block;
}
.sous-bloc-content-description-text-wrapper {
    text-align: center;
    vertical-align: middle;
}
.sous-bloc-content-description-icon {
    display: none;
}
.sous-bloc-content-description-text-wrapper:after {
    content: '+';
    display: block;
    text-align: center;
    font-size: 72px;
    font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Lucida Sans', Geneva, Verdana, sans-serif;
}

.sous-bloc-wrapper:nth-child(2n) .sous-bloc-content-wrapper {
    top: auto;
    right: 0;
    bottom: 0;
    left: auto;
    text-align: left;
}
.sous-bloc-wrapper:nth-child(2n) .sous-bloc-content-title {
    padding: 0 0 0 15%;
    background-position: left bottom;
}

.sous-bloc-wrapper:last-child:not(:nth-child(even)):not(:first-child) {
    margin-top: 2rem;
}

/* Blocs avec thème cross-buy */
.bloc-theme-cross-buy {
    background-image: url('/resources/img/bg/bloc-theme/cross-buy/bg.jpg');
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
}
.bloc-theme-cross-buy .bloc-composite-content-wrapper {
    padding-top: 85px;
}
.bloc-theme-cross-buy .sous-bloc-wrapper:last-child:not(:nth-child(2n)):not(:first-child) {
    margin-top: 0;
}
.bloc-theme-cross-buy .bloc-composite-main-content {text-align: left;}
.bloc-theme-cross-buy .bloc-composite-content {text-align: right;}
.bloc-theme-cross-buy .bloc-composite-content:after {
    clear: both;
    content: " ";
    display: block;
}

.bloc-theme-cross-buy  .ornamental-title-align {
    float: left;
    width: 30%;    
}

.bloc-theme-cross-buy .sous-bloc-wrapper {
    display: inline-block;
    padding: 0;
    width: 30%;
    min-width: 150px;
    border: 1px solid #fff;
    margin: 0 0 2% 2%;
}
.bloc-theme-cross-buy .sous-bloc-wrapper:first-child {margin-left: 0;}
.bloc-theme-cross-buy .sous-bloc-content-wrapper {
    position: static;
    width: auto;
    text-align: left;
}
.bloc-theme-cross-buy .sous-bloc-wrapper:nth-child(2n) .sous-bloc-content-title {
    padding: 0;
}
.bloc-theme-cross-buy .sous-bloc-content-title {
    padding: 0;
    line-height: 36px;
    background: none;
    text-transform: none;
}
.bloc-theme-cross-buy .sous-bloc-content-title-label {
    padding: 6px;
    line-height: 1.1;
    color: #1f120e;
    background: #fff;
    font-size: 16px;
}

.bloc-theme-cross-buy .sous-bloc-content-description .cell:after {font-size: 36px;}

/* Blocs avec picture background */
.bloc-theme-picture-background {
    background-image: url('/resources/img/bg/bloc-theme/picture-background/bg.jpg');
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
}
.bloc-theme-picture-background .bloc-container {
    padding: 0;
    background-image: url("/resources/img/bg/bloc-theme/picture-background/58-te.png");
    background-position: center -20px;
    background-repeat: no-repeat;
}
.bloc-theme-picture-background .bloc-composite-content-wrapper {
    text-align: right;
    padding: 0;
    background-image: url("/resources/img/bg/bloc-theme/picture-background/white-overlay.png");
    background-position: center top;
    background-repeat: repeat-y;
}
.bloc-theme-picture-background .grid-container {
    background-image: url('/resources/img/bg/bloc-theme/picture-background/btr-angle.png');
    background-position: left top;
    background-repeat: no-repeat;
    padding: 58px 0 45px 0;
}

.bloc-theme-picture-background .bloc-composite-main-content {
    width: 40%;
    display: inline-block;
    text-align: left;
    color: #1f120e;
}

/* Blocs d'offres */
.r-tabs-nav .picto-minus-plus {display: none;}
.tabs-list.tabs-count-1 {width:50%;}
.tabs-list.tabs-count-2 {width:65%;}
.tabs-list.tabs-count-3 {width:85%;}

.tabs-item {vertical-align: middle;}
.tabs-wrapper .tabs-list .tabs-item .tabs-anchor {height: auto;}
.tabs-anchor-title {
    text-transform: none;
    hyphens: none;
}
.tabs-anchor-image {
    display: block;
    width: 100%;
    margin: 12px 0 0 0;
}

ul.bloc-offres-prestations-wrapper {margin: 0;}

.offre-prestation {
    padding: 12px;
    text-align: left;
    border-top: 1px solid #094942;
}
.offre-prestation:first-child {border-top: 0;}

.offre-prestation-content-wrapper {
    display: table;
    table-layout: fixed;
    width: 100%;   
}

.offre-prestation-part {
    display: table-cell;
    vertical-align: top;
    margin: 0;
}

.offre-prestation-title {
    display: inline-block;
    margin: 0 0 12px 0;
    padding: 0 24px 8px 0;
    border-bottom: 1px solid #796f68;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    hyphens: none;
}

.offre-prestation-part.media-part {width: 254px;}
.offre-prestation-part.content-part {padding: 12px;}

.offre-prestation-part.footer-part {
    width: 186px;
    text-align: center;
    vertical-align: top;
}
.offre-prestation-image {display: block;}

.offre-prestation-contextual-link-wrapper a {
    font-size: 14px;
    font-size: 1.4rem;
}

.offre-prestation-part.footer-part p {margin: 0 0 12px 0;}
.offre-prestation-part.footer-part .offre-prestation-price-wrapper {
    display: block;
    margin-bottom: 1em;
}

/* si page bon cadeau cacher le btn acheter */
.page-static-type-bons_cadeaux .btn-acheter {display: none;}

.prestation-price {
    display: inline-block;
    vertical-align: bottom;
    margin: 0;
    font-size: 20px;
    font-size: 2.0rem;
}
.prestation-price.child {
    margin: 0 0 0 20px;
    font-size: 16px; 
    font-size: 1.6rem;
}
.prestation-price.child .price-label {
    display: block; 
    text-transform: uppercase; 
    font-size: 8px; 
    font-size: .8rem;
}

/* -------------------------------- */
/* Blocs spéciaux                   */
/* -------------------------------- */

.bloc-special-filtre-form p {
    display: inline-block;
    vertical-align: middle;
    margin: 12px 12px 0 0;
}

.bloc-special-filtre-form label {
    display: inline-block;
    margin: 0 12px 12px 0;
}

/* Bloc spécial de FAQ */
.bloc-faq {
    text-align: left;
    padding: 24px 0 0;
}
.bloc-faq .bloc-special-filtre-form p {margin: 0;}

.question-theme-title {margin: 12px 0;}

.questions-theme-wrapper.masked {display: none;} 
.questions-theme-wrapper .questions-list {list-style: none;}
.question {margin: 12px auto;}

.question-header {
    position: relative;
    padding: 12px 48px 12px 12px;
    cursor: pointer;
    background-color: #094942;
}
.question-header .picto-minus-plus {
    position: absolute;
    top: 6px;
    right: 12px;
}

.questions-theme-wrapper {
    padding-top: 15px;
}

.question-title {
    text-transform: none;
    font-weight: normal;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
}

.question-answer-wrapper {margin-bottom: 25px;}

.question-answer {
    padding: 12px 32px;
    background: #f3f2ee;
    line-height: 1.3;
}

/* bloc spécial tripadvisor */
.bloc-booking-assurance {border-top: 1px solid #cbcbcb;}

.bloc-booking-assurance-col {
    display: inline-block;
    padding: 0 2%;
    min-width: 400px;
    width: 45%;
    text-align: left;
    vertical-align: top;
}
.bloc-booking-assurance .mode-paiement-item-img {
    padding-top: 10px;
    height: auto;
}
.bloc-booking-assurance .h4 {
    color: #1f120e;
    font-style: normal;
}
.bloc-booking-assurance .title {
    line-height: 36px;
    margin-bottom: 10px;
    border-bottom: 2px solid #1f120e;
}

/* -------------------------------- */
/* Shortcodes                       */
/* -------------------------------- */

/* Short code atout */
.atout-wrapper {
    display: inline-block;
    vertical-align: top;
    width: 306px;
    margin: 12px 24px;
    text-align: center;
}
.atout-title {
    margin: 12px 0 0 0;
    color: #b8a37e; 
    font-style: normal;
}
.atout-description {
    color: #1f120e;
    text-align: center;
    line-height: 1.3;
}

.atout-wrapper-link:hover .atout-title {text-decoration: underline;}


/* -------------------------------- */
/* Réservation rapide               */
/* -------------------------------- */
.direct-booking-wrapper {
    position: absolute;
    bottom: 24px;
    left: 0;
    right: 0;
    z-index: 160;
}
.direct-booking-form {
    display: inline-block;
    padding: 4px;
}
.direct-booking-form-title,
.direct-booking-form-field {
    display: inline;
    margin: 0;
    vertical-align: middle;
}
.direct-booking-form-title {
    margin: 0 8px 0 0;
    color: #094942;
    font-weight: normal;
    font-style: normal;
    text-transform: none;
}

.direct-booking-form .direct-booking-form-field {margin: 0;}

.direct-booking-form-field label {display: none;}

.direct-booking-form-field input,
.direct-booking-form-field select {
    box-sizing: border-box;
    display: inline-block;
    height: 32px;
    line-height: 1;
    padding: 4px;
    vertical-align: middle;
}

.direct-booking-form-field input[type=text],
.direct-booking-form-field select {
    min-width: 0;
    margin: 3px;
}
.direct-booking-form-field input[type=submit] {padding: 0 20px;}
.direct-booking-form-field.field-date input {min-width: 146px}

.direct-booking-form-field input.error,
.direct-booking-form-field select.error {
    border-color: #f00;
}


/* -------------------------------- */
/* Process de Résa                  */
/* -------------------------------- */
/* Footer resa */
.footer-booking-wrapper {
    padding: 12px;
    background-color: #f2f2f2;
    text-align: center;
}

.gift-help-part {text-align: right;}

/* Web callback */
.web-callback-wrapper {padding: 0 12px;}
.event-booking-confirm .web-callback-wrapper {padding: 0 24px;}
.web-callback {
    height: 36px;
    margin: 0 0 12px 0;
    vertical-align: middle;
    color: #fff;
}
p.web-callback {margin: 24px 0 12px 0;}
.web-callback * {
    display: inline-block;
    box-sizing: border-box;
    height: 100%;
    vertical-align: middle;
}

.web-callback-aside-panel {
    display: none;
    min-height: 36px;
}

.web-callback-phone-wrapper, 
.web-callback-message-wrapper {
    line-height: inherit;
}

.web-callback-message-wrapper {line-height: 36px;}

.web-callback-button {
    padding: 0 6px 0 32px;
    height: 36px;
    line-height: 36px;
    background: url('/resources/img/booking/web-callback.png') no-repeat 4px center #094942;
    cursor: pointer;
}
.web-callback-button:focus {outline: none;}
.web-callback-button [data-state-text] {display: inline;}
.web-callback-button [data-state-text="clicked"] {display: none;}
.web-callback-phone-submit {
    min-width: 0;
    padding: 0;
}

.web-callback-message-wrapper {
    display: inline;
    color: #363636;
    cursor: pointer;
}

.event-booking-options .web-callback {
     padding: 0 12px;
     margin: 6px 0;
}

/* Modes de paiement */
.mode-paiement-list {
    display: inline-block;
    vertical-align: middle;
    list-style: none;
}
.page-content .mode-paiement-list {margin: 0;}
.mode-paiement-item {display: inline-block;}
.mode-paiement-item-img {
    height: 20px;
    margin: 0 4px;
}

/* fil d'Arianne */
.booking-breadcrumbs-list {margin: 24px auto;}

.booking-breadcrumbs-item {
    display: inline-block;
    width: 20%;
    position: relative;
    vertical-align: top;
    text-align: center;
    color: #998d83;
}
.booking-breadcrumbs-item.booking-step-active {
    color: #094942;
    font-weight: bold;
}

.booking-breadcrumbs-icon {
    display: block;
    width: 45px;
    height: 45px;
    margin: 0 auto 6px auto;
    text-indent: -9999px;
    background: url('/resources/img/pictos/booking-breadcrumbs-step-sprite.png') no-repeat center top #998d83;
}
.booking-breadcrumbs-icon-step-1 {background-position: center 0;}
.booking-breadcrumbs-icon-step-2 {background-position: center -90px;}
.booking-breadcrumbs-icon-step-3 {background-position: center -180px;}
[class*="event-gift"] .booking-breadcrumbs-icon-step-3 {background-position: center -360px;}
.booking-breadcrumbs-icon-step-4 {background-position: center -270px;}
.booking-breadcrumbs-icon-step-5 {background-position: center -360px;}

.booking-step-active .booking-breadcrumbs-icon {background-color: #094942;}

.booking-breadcrumbs-line-inter-step {
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 23px;
    left: 50%;
    background-color: #998d83; 
    z-index: -1;
}
.booking-breadcrumbs-item.last .booking-breadcrumbs-line-inter-step {display: none;}

.gift-list-wrapper {padding: 0 24px;}
.gift-list-header {font-weight: bold;}

.gift-item {margin: 0 0 12px;}

.gift-list-header,
.gift-item-part {
    display: inline-block;
}
p.gift-list-header,
p.gift-item-part {
    margin: 0;
}
.gift-item-fields-wrapper {display: inline-block;}

.gift-item-label-code,
.gift-item-label-resa-id {
    display: none;
}

.gift-item-delette,
.gift-item-input-code,
.gift-item-input-resa-id {
    box-sizing: border-box;
    vertical-align: middle;
    height: 28px;
    padding: 4px;
    min-width: 0;
}

.gift-header-code,
.gift-item-part:first-child {
    padding: 0 12px 0 0;
}

.gift-header-code {
    display: inline-block;
    width: 200px;
}

.gift-add-item {
    line-height: 24px;
    background: none;
    font-weight: normal;
    color:  #094942;
}

.gift-item-delette,
.gift-add-item-picto {
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    margin: 0 0 0 8px;
    background-position: center -772px;
}

.gift-add-item:hover {text-decoration: underline;}
.gift-add-item:hover .gift-add-item-picto {background-position: center -900px; }

.gift-item-delette {
    text-indent: -9999px;
    background-color: transparent;
    background-position: center -836px;
    border: none;
}

.gift-item-delette:hover {
    background-color: transparent;
    background-position: center -966px;
}

.event-gift .button-confirm-loader > img {
    height: 36px;
    vertical-align: middle;
    margin-top: -2px;
}

/* Confirmation du bon cadeau */
.section-gift-confirm-code-list {padding: 0 0 0 18px;}
.page-content .section-gift-confirm-infos .section-gift-confirm-code-list {list-style: inside none disc;}
.section-gift-confirm-item-code {font-weight: bold;}
.section-gift-confirm-item-code:after {content: " – ";}

.section-gift-confirm-form .section-form [type="text"] {width: 226px;}
.section-gift-confirm-form .section-form [name=date] {
    display: inline-block;
    width: 200px;
}

/* Validation bon cadeau/paiement accepté, refusé, abandonné */
.section-gift-valid,
.section-booking-end {
    margin: 0 auto 12px auto;
}

.section-gift-valid .section-form-legend-title,
.section-booking-end .section-form-legend-title {
    border-bottom-width: 3px;
}

.section-gift-valid-content,
.section-booking-end-content,
.section-reservation-cancel-end-content {
    display: table;
    width: 100%;
    table-layout: fixed;
}

.section-gift-valid-text,
.section-booking-end-text,
.section-reservation-cancel-end-content-text {
    display: table-cell;
    vertical-align: top;
    padding: 12px;
    text-align: center;
    font-size: 18px;
    font-size: 1.8rem;
}

.section-booking-end-text p {
    margin: 18px 0;
}

.section-gift-valid-image,
.section-booking-end-image {
    position: relative;
    display: table-cell;
    vertical-align: top;
}
.section-gift-valid-image p,
.section-booking-end-image p {
    margin: 0;
}

.section-gift-valid-image img,
.section-booking-end-image img {
    display: block;
    width: 100%;
}

.section-gift-valid-image-text,
.section-booking-end-image-text-wrapper {
    position: absolute;
    top: 32px;
    display: block;
    min-width: 75%;
    padding-right: 24px;
    background: url("/resources/img/bg/angle.png") right top;
    color: #fff;
    font-style: italic;
    font-size: 20px;
    font-size: 2.0rem;
}

.section-booking-end-image-text {
    display: block;
    padding: 16px;
    background: #094942;
}

/* -------------------------------- */
/* Calendrier                       */
/* -------------------------------- */
.calendar-wrapper {padding: 0 0 24px 0;}

.calendar-informationnel-image-part {
    width: 65%;
    max-width: 386px;
    margin: 0 auto;
    z-index: 1;
}

.calendar-informationnel-text-part {
    width: 55%;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    padding: 24px;
    background: rgba(255, 255, 255, 0.6);
    z-index: 2;
}

.calendar-informationnel-text-title {color: #094942;}
.calendar-informationnel-limit-date-58te .calendar-informationnel-without-image-text-title {color: #094942;}

.calendar-informationnel-text-content {
    line-height: 1.3;
    font-size: 1.1em;
}

.calendar-informationnel-text-title,
.calendar-informationnel-text-content {
    word-wrap: keep-all;
    hyphens: none;
}


.calendar-header {
    display: table;
    width: 100%;
    margin: 0 0 12px 0;
    vertical-align: middle;
    color: #363636;
}
.empty .calendar-header {display: none;}
.loading .calendar-header {display: none;}

.calendar-header-categorie-chapeau-wrapper,
.calendar-header-pax-wrapper, 
.calendar-header-date-wrapper {
    display: table-cell;
    padding: 0 12px;
    margin: 0;
    vertical-align: middle;
}

.calendar-header-element, 
.calendar-intro-element {
    display: inline-block; 
    vertical-align: middle;
    margin: 0 4px;
    width: auto;
    min-width: 0;
}

label.calendar-header-element, 
label.calendar-intro-element {
    display: none;
}

.calendar-intro-element {width: 226px;}

.input-text-date {
    min-width: 0;
    width: 92px;
    text-align: center;
}

.calendar-wrapper .button.date, 
.calendar-wrapper .button.refresh {
    text-indent: -9999px;
    width: 24px;
    height: 24px;
    padding: 2px;
    background-image: url("/resources/img/pictos/calendar-icon-sprite.png");
    background-repeat: no-repeat;
}

.calendar-wrapper .button.date {background-position: center 1px;}
.calendar-wrapper .button.date:hover {background-position: center -95px;}
.calendar-wrapper .button.refresh {background-position: center -142px;}
.calendar-wrapper .button.refresh:hover {background-position: center -238px;}

/* Mask */
.calendar-mask {
    display: none;
    text-align: center;
}
.calendar-mask span {
    display: block; 
    margin: 48px 0;
    text-align: center;
}
.calendar-mask img {margin: 0 0 48px 0;}
.loading .calendar-mask {display: block;}

/* Intro */
.calendar-intro {
    display: none;
    width: 100%;
    padding: 12px 0 0 0;
}
.calendar-intro-part {
    display: table-cell;
    vertical-align: top;
    padding: 0 0 0 12px;
}
.calendar-intro-part.text-part {padding: 0 0 0 12px;}

.calendar-intro-form-wrapper {text-align: center;}
.calendar-intro-form {
    display: inline-block;
    margin: 12px;
    padding: 0 12px 12px 12px;
    border: solid 1px #796f68;
    text-align: left;
}

.calendar-intro-form p {margin: 18px 0;}

.empty .calendar-intro {display: table;}

/* Corps du calendrier */
.calendar {
    display: table;
    width: 100%;    
}
.loading .calendar {display: none;}
.calendar-week-button, .calendar-content {
    display: table-cell;
    margin: 0;
    vertical-align: middle;
}

.calendar-content {
    border-left: 2px solid #e6e1dc;
    border-right: 2px solid #e6e1dc;
}

.calendar-week-button {
    height: 100%;
    width: 32px;
    min-width: 0;
    padding: 0;
}

.calendar-week-button.ctrl-disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.calendar-week-button.button {
    border: none;
    box-shadow: none;
    background: url("/resources/img/pictos/calendar-arrow-sprite.png") no-repeat center center #e6e1de;
}
.calendar-week-button.button.before {background-position: left 1px center;}
.calendar-week-button.button.after {background-position: right 1px center;}

.calendar-days {
    display: table;
    table-layout: fixed;
    width: 100%;
    border-bottom: 2px solid #e6e1dc;
    background: #998d83;
}

.calendar-day {
    display: table-cell;
    padding: 4px 0;
    vertical-align: middle;
    text-align: center;
    color: #fff;
}
.categorie-cell .calendar-day {display: none;}

.calendar-day .day-of-week {
    display: block;
    text-transform: capitalize;
    font-weight: bold;
}

.calendar-day .date {
    font-size: 12px;
    font-size: 1.2rem;
}

/* Catégories */
.calendar .categorie-title {
    display: block;
    position: relative;
    margin: 0;
    padding: 12px 0;
    border-top: 2px solid #fff;
    text-align: center;
    line-height: normal;
    font-size: 18px;
    font-size: 1.8rem;
    color: #fff;
    cursor: pointer;
    background: #094942;
}
.calendar .categorie-title:first-child {border-top: 0;}

.categorie-title.highlight {}

.calendar .categorie-title .button-wrapper {
    width: auto;
    display: inline-block;
    border: none;
}

.calendar .categorie-title .arrow-icon {
    height: 24px;
    width: 24px;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 11px;
    top: 11px;
    background: url("/resources/img/pictos/pictos-sprite.png") no-repeat transparent;
}

.calendar .categorie-title.open .arrow-icon {background-position: center -708px;}
.calendar .categorie-title.close .arrow-icon {background-position: center -644px;}
.calendar .categorie-title.highlight.open .arrow-icon {background-position: center -708px;}
.calendar .categorie-title.highlight.close .arrow-icon {background-position: center -644px;}

.calendar .categorie-content {
    padding: 0;
    border: 0;
    border-radius: 0;
}

.calendar .categorie-table {
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 100%;
}

.categorie-cell {
    display: table-cell;
    height: 100%;
    vertical-align: top;
    border-left: solid 1px #e6e1dc;
    text-align: center;
    background: #f2f2f2 url("/resources/img/pictos/calendar-logo-filigrane.png") no-repeat scroll center center;
}
.categorie-cell:first-child {border-left: 0;}

.categorie-cell-empty-content {/* Peuple le calendrier si pas de données */
    display: block;
    min-height: 160px;
    width: 1px; /* °-° */
}

/* Prestations */
.calendar-prestation {
    position: relative;
    border-bottom: solid 1px #e6e1dc;
    background: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    color: #094942;
}
.calendar-prestation.promo {background-image: url('/resources/images/pictos/calendar/promo-mark.png');}
.calendar-prestation.not-open {background: #f2f2f2 url("/resources/img/pictos/calendar-logo-filigrane.png") no-repeat scroll center center;}
.calendar-prestation.not-open .prestation-text {background-color: #fff;}
.calendar-prestation.date-highlight.prestation-highlight {
    background-color: #06332E;
}

.calendar-prestation.date-highlight.prestation-highlight .prestation-label,
.calendar-prestation.date-highlight.prestation-highlight .price-wrapper {
    color: #363636;
}

.calendar-prestation p {
    display: table;
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 1;
    box-sizing: border-box;
    border: 1px solid #fff;
}

.calendar-prestation p:hover {border-color: #094942;}
.calendar-prestation .prestation-link-today:hover { border: 1px solid transparent; }

.calendar-prestation.full p:hover,
.calendar-prestation.not-open p:hover {
   border-color: #fff;
}

.calendar-prestation .hidden {display: none;}

.prestation-link,
.prestation-link-today, 
.prestation-full {
    display: table-row;
    vertical-align: middle; 
    color: #796f68;
}
.prestation-link:hover,
.prestation-link-today:hover, 
.prestation-full:hover {
    text-decoration: none;
}

.prestation-link-today,
.prestation-special-date {
    font-weight: normal;
    background: none;
    word-wrap: keep-all;
    hyphens: none;
}

.prestation-text {
    display: table-cell;
    padding: 20px 2px;
    height: 44px; /* Se comporte comme un min-height */
    vertical-align: middle;
}
.prestation-full {color: #363636;}

.calendar-prestation.date-highlight.prestation-highlight .prestation-link {color: #fff;}
.calendar-prestation.date-highlight.prestation-highlight .prestation-full {color: #fff;}

.prestation-label {color: #094942; display: block; margin: 0 0 2px 0;}
.promo .price {text-decoration: line-through;}
.promo .price-promo {font-size: 14px; font-size: 1.4rem; color: #094942;}

.prestation-button-description {
    width: 20px;
    height: 20px;
    position: absolute;
    top: 1px;
    right: 1px;
    background: #D8D8D8;
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    font-style: italic;
    font-family: TimesNewRoman,"Times New Roman",Times,Baskerville,Georgia,serif;
    color: #797979;
}
.prestation-button-description:hover {
    color: #fff;
    background: #094942;
    text-decoration: none;
}
/* -------------------------------- */
/* Pages                            */
/* -------------------------------- */

.page-edito-content-wrapper {
    padding: 24px 0;
    text-align: justify;
    line-height: 1.3;
}
.page-edito-content-wrapper h1, 
.page-edito-content-wrapper h2, 
.page-edito-content-wrapper h3, 
.page-edito-content-wrapper h4 {
    margin: 20px 0 10px;
}
.page-edito-content-wrapper ul {
    list-style-image: none;
    list-style-position: outside;
    list-style-type: disc;
    padding-left: 15px;
    margin-left: 15px;
}
.page-edito-content-wrapper ul ul {list-style-type: circle;}

.page-edito-content-wrapper .ornamental-title-align {text-align: center;}
.page-edito-subtitle {display: block;}

.page-edito-content-wrapper h2 {margin: 2rem 0 1rem 0;}
.page-edito-content-wrapper p {margin: 1rem 0; hyphens: auto;}

.page-static-type-cgv .page-edito-content-wrapper img {width: 186px;}

/* informations pratiques */
.infos-pratiques-container {padding-top: 24px;}
.infos-pratiques-container .h4 {
    color: #1f120e;
    font-style: normal;
    border-bottom: 1px solid #1f120e;
}
.infos-pratiques-container p {text-align: center;}
.infos-pratiques-content {
    padding: 70px;
    background: #e7e7e7;
}
.infos-pratiques-content p {text-align: left;}
.infos-pratiques-content .page-edito-title {margin: 0;}
.infos-pratiques-content > div {padding-bottom : 70px;}
.infos-pratiques-content > div:last-child {padding-bottom : 0;}

.infos-pratiques-textcontent {
    width: 45%;
    display: inline-block;
    vertical-align: top;
}
.infos-pratiques-mediacontent {
    width: 45%;
    display: inline-block;
    vertical-align: top;
}
.infos-pratiques-mediacontent iframe {
    height: 350px;
    max-width: 550px;
    width: 100%;
}
.infos-pratiques-textcontent + .infos-pratiques-mediacontent {padding-left: 9%;}
.infos-pratiques-mediacontent + .infos-pratiques-textcontent {padding-left: 9%;}

.infos-pratiques-picto {
    display: inline-block;
    height: 1.2em;
    vertical-align: middle;
}

/* page recrutement - typologie des postes comme YDP2 */
.figures-container {
    max-width: 726px;
    margin: 0 auto;
    text-align: center;
}
.figures-container .figure {
    display: inline-block;
    vertical-align: top;
    margin: 0 8px 8px 8px;
}
.figures-container .figure:last-child {margin-bottom: 8px;}

.figure-header, .figure-legend {display: block;}
.figure-header {margin: 0 0 8px 0;}


/* -------------------------------- */
/* Pop-in                           */
/* -------------------------------- */
.popin-wrapper .mfp-close {
    margin: 0;
    background: #000;
    border-radius: 0;
    opacity: 1;
    color: #fff;
    font-weight: normal;
}
.popin-wrapper .mfp-close:active {top: 0;} 

.popin-wrapper {
    box-sizing: border-box;
    position: relative;
    max-width: 520px;
    margin: 0 auto;
    padding: 12px;
    text-align: center;
    background: #fff;
    color: #1f120e;
}

.popin-title {
    margin: 0 0 6px 0;
    line-height: 1.5;
    color: #094942;
}

.popin-wrapper .frame {
    box-sizing: border-box;
    font-size: 14px;
    font-size: 1.4rem;
}


.popin-edito-content {
    max-height: 700px;
    overflow: auto;
    line-height: 1.3;
    color: #796f68;
}

.popin-edito-content p,
.popin-edito-content ul {
    margin: 18px 0;
}

.popin-edito-content ul {list-style: inside disc;}

.popin-content-image {
    float: left;
    width: 50%;
    padding: 0 1em 0 0;
}
p.popin-content-image {margin: 0;}

.popin-edito-content:after {
  content: "";
  display: table;
  clear: both;
  border-collapse: collapse;
}

/* Popin menu */
.popin-menu.popin-wrapper {
    padding: 12px 0 12px 12px;
    max-width: 800px;
    background:  url('/resources/img/popin/bg.jpg') no-repeat center center;
    background-size: cover;
}

.popin-menu .frame {
    width: 60%;
    margin: 0 0 0 40%;
    padding: 32px 24px 18px 24px;
}
.popin-menu-item {
    padding: 0 22px; /* fix scroolbar */
}

.popin-menu-content {line-height: 1.3;}

.popin-menu .owl-wrapper-outer {overflow-y: auto;}
.popin-menu .owl-buttons div {
    position: absolute;
    top: 50%;
}
.popin-menu .owl-buttons .owl-prev {left: -16px;}
.popin-menu .owl-buttons .owl-next {right: -16px;}

/* popin-prestation */
.popin-prestation .popin-content {text-align: left;}

/* --------------- */
.event-reservation-cancel-show.static-page .grid.in-time {width: 800px;}
.event-reservation-cancel-show .reservation-summary-carnet {
    width: 400px;
    display: inline-table;
    color: #3A3843;
}
.event-reservation-cancel-show .reservation-summary-carnet .reservation-summary-carnet-cell {
    padding: 1em;
    background-color: #DCDCDC;
}
.event-reservation-cancel-show .reservation-summary-carnet {line-height: 1.2}
.event-reservation-cancel-show .reservation-summary-details-commande {border: 1px solid #3A3843;}
.event-reservation-cancel-show .reservation-summary-details-commande-legend {
    display: inline-block;
    color: #3A3843;
    padding: 0 8px;
}
.event-reservation-cancel-show .reservation-summary-details-commande-table {
    width: 550px;
    margin: 24px auto;
}
.event-reservation-cancel-show .reservation-summary-details-commande-table-head {
    color: #ffffff;
    background-color: #666666;
}
.event-reservation-cancel-show .reservation-summary-prestation-name {margin-bottom: 0.5em;}
.event-reservation-cancel-show .reservation-cancel-text-intro,
.event-reservation-cancel-show .reservation-summary-carnet,
.event-reservation-cancel-show .reservation-summary-carnet-title,
.event-reservation-cancel-show .reservation-summary-details-commande,
.event-reservation-cancel-show .reservation-cancel-text-actions,
.event-reservation-cancel-show .reservation-cancel-buttons-actions {
    margin: 0 0 1em 0;
}
.event-reservation-cancel-show .reservation-cancel-text-intro,
.event-reservation-cancel-show .out-of-time .reservation-summary-carnet-title,
.event-reservation-cancel-show .section-reservation-cancel-end-content .button {
    margin: 1em 0;
}

.event-reservation-cancel-show .out-of-time .reservation-summary-carnet {line-height: 1;}
.event-reservation-cancel-show .out-of-time .reservation-summary-details-commande,
.event-reservation-cancel-show .out-of-time .reservation-summary-details-commande-legend,
.event-reservation-cancel-show .out-of-time .reservation-summary-details-commande-table {
    display: none;
}
.event-reservation-cancel-show .section-reservation-cancel-end-content-text {
    font-size: 1.1em;
    line-height: 1.4;
}
.event-reservation-cancel-show .reservation-summary-details-commande-table-head th {
    padding : 0.25em 0;
}
.event-reservation-cancel-show .section-reservation-cancel-end,
.event-reservation-cancel-confirm .section-reservation-cancel-end {
    margin: 1em 0;
}
.event-reservation-cancel-confirm .section-reservation-cancel-end-content-text {
    line-height: 1.4;
}
.event-reservation-cancel-confirm .section-reservation-cancel-end-content-text p {
    margin-bottom: 1em;
}
.event-booking-calendar .calendar-informationnel-wrapper {
    display: none;
    position: relative;
    margin: 24px auto 0 auto;
}
.event-booking-calendar .calendar-informationnel-limit-date-58te {
    margin: 36px auto 0 auto;
}
.event-booking-calendar .calendar-informationnel-limit-date-58te .calendar-informationnel-without-image-text-content {
    margin: 12px 0 12px 0;  
}
/* --------------- */

/* -------------------------------- */
/* Media Queries                    */
/* -------------------------------- */

/*
 * MOBILE: max-width 600px 
 * TABLET : max-width: 1200px
 * DESKTOP : min-width 1200px
 */

/* Disable iOS/WinMobile font size changes */
@media screen and (max-device-width: 640px) {
    html {-ms-text-size-adjust: none; -webkit-text-size-adjust: none;} 
    
    .defile {
        -webkit-animation: marqueelike 20s linear infinite;
        -moz-animation: marqueelike 20s linear infinite;
        -o-animation: marqueelike 20s linear infinite;
        -ms-animation: marqueelike 20s linear infinite;
        animation: marqueelike 20s linear infinite;
    }
}

/* Disable Auto Zoom onfocus form element */ 
@media screen and (-webkit-min-device-pixel-ratio:0) { 
    select,
    textarea,
    input {
        font-size: 16px;
    }
}

/* Disable smart-menus rules */
@media screen and (min-width: 1200px) {
    .sm:after {content: none;}
}

@media screen and (max-width: 1200px) {
    
    ::-webkit-scrollbar {width: 4px;}
    
    .desktop-only, .page .desktop-only {display: none;}
    .tablet-only, .page .tablet-only {display: block;}

    /* Lib */
    #ui-datepicker-div {
        left: 0 !important;
        right: 0 !important;
        min-width: 225px;
        width: 50% !important;
        margin: 0 auto !important;
        z-index: 200 !important;
    }
    
    .sm-simple {background: #1f120e;}
    .sm-simple li,
    .sm-simple li a {
        display: block;
    }
    .sm-simple li,
    .sm-simple li li {
        border: 1px solid #fff;
        border-left: none;
        border-right: none;
        border-bottom: none;
    }
    .sm-simple > li:first-child,
    .sm-simple ul > li:first-child {
        border-top: 1px solid #fff;
    }
    .sm-simple ul {
        position: static;
        border: none;
    }
    .sm-simple a {
        text-align: left  ;
        color: #fff;
    }
    .sm-simple a, 
    .sm-simple a:hover, 
    .sm-simple a:focus, 
    .sm-simple a:active, 
    .sm-simple a.highlighted {
        border: none;
        background: none;
    }
    .sm-simple a.has-submenu {padding: 8px;}
    .sm-simple a.has-submenu.highlighted {border-bottom: 1px solid #fff;}
    .sm-simple a span.sub-arrow {
        display: inline-block;
        margin: 0 0 0 8px;
        position: static;
        background-position: center top;
    }

    .sm-simple a.highlighted span.sub-arrow {background-position: center -120px;}
    
    /* Titres */
    
    /* Boutons */
    
    /* Contenu, objets */
    
    /* Frames */
    .frame {padding: 12px;}
    
    /* Layout */
    .grid,
    .grid.grid-small {
        width: auto;
    }
    .bloc-container {width: 100%;}
    
    .bloc-theme-cross-buy .bloc-composite-content-wrapper {padding-top: 45px;}
    .bloc-theme-picture-background .bloc-container {background-position: left -20px;}
    .bloc-theme-picture-background .bloc-composite-main-content {
        width: 40%;
        padding: 0 5%;
    }
    
    .bloc-theme-cross-buy .ornamental-title-align {
        float: none;
        width: auto;
        text-align: center;
    }
    .bloc-theme-cross-buy .bloc-composite-main-content {padding: 0 16px;}
    .bloc-theme-cross-buy .bloc-composite-content {
        text-align: center;
    }
    .bloc-theme-cross-buy .sous-bloc-content-title {
        font-size: 18px;
        font-size: 1.8rem;
    }
    .bloc-theme-cross-buy .sous-bloc-content-description {
        font-size: 16px;
        font-size: 1.6rem;
    }
    
    /* Header */
    .page-header .aside-link.header-nav-btn-language {
        margin: 0;
        padding: 0;
    }
               
    .aside-nav {text-align: left;}

    /* Nav */
    .main-nav-inner-wrapper {
       background-position: -230px top; /* background width/2 = 460/2 = 230 */
    }
    
    .main-nav {
        float: none;
        display: inline;
        margin: 0;
        min-height: auto;
        padding: 0;
        width: 100%;
    }
    
    .header-nav-btn-menu {display: inline-block;}
    
    .secondary-aside-nav {
        position: absolute;
        right: 0;
        line-height: 58px;  
        color: #fff;
    }
    
    .secondary-aside-nav .header-nav-btn-booking {
        box-sizing: border-box;
        min-width: 172px;
        padding: 0 0 0 14px;
        color: #fff;
        background: transparent;
    }
    .secondary-aside-nav .header-nav-btn-booking .aside-link-picto {
        margin: 0 14px 0 0;
        background-position: center bottom;
    }
    
    .header-nav-btn-booking:hover {background: #094942}
    .header-nav-btn-booking .aside-link-picto {background-position: center top;}
    
    .main-nav .nav-list {
        display: block;
        width: 100%;
        margin: 0;
        z-index: 1;
    }
    
    .nav-list .nav-item-link {max-width: none;}
    
    .nav-list.collapsed {display: none;}
    .nav-list .nav-item-link,
    .nav-list .nav-item-link.disabled {
        width: auto;
        color: #fff;
    }
    .nav-list .nav-item-link,
    .nav-list .nav-item-link:hover,
    .nav-list .nav-item-link:focus,
    .nav-list .nav-item-link:active,
    .nav-list .nav-item-link.highlighted,
    .nav-list .nav-item-link.has-submenu {
        padding: 15px;
    }
    .nav-list .sub-menu .nav-item-link {line-height: 1;}

    .nav-list ul{background-color: #5b5756;}
    .nav-list .nav-item.highlight {background-color: #094942;}
    .nav-list .nav-item.highlight ul{background-color: #1AD6C0;}
    
    .nav-list .nav-item-secondary,
    .nav-list .nav-item-secondary.highlighted {
        background-color: #5b5756;
    }
    
    /* Header contextual */
    
    /* Footer */
    .footer-links-part, .footer-branding-wrapper {
        display: block;
        width: auto;
        text-align: center;
    }

    .footer-social-intro {padding: 0; border-left: none;}   
    
    .sodexo-img {
        width: auto;
        position: absolute;
        left: 6px;
        bottom: 3px;
    }
    
    /* Slideshow - Commun */
    .slide-content {
        position: static;
        width: auto;
        padding: 12px;
    }
    .frame.slide-content {background: #fff;}
    
    /* Slideshow - full screen */
    .slideshow-full-screen .slide-content {
        position: absolute;
        left: 5%;
    }
    .slideshow-full-screen .slide-title,
    .slideshow-full-screen .slide-text {
        width: auto;
    }
    
    .slideshow-full-screen .slide-title {
        font-size: 36px;
        font-size: 3.6rem;
    }
    
    /* Slideshow - full width */
    .slideshow-full-width .slide-content,
    .slideshow-booking .slide-content,
    .slideshow-full-width .sc-price {
        color: inherit;
    }
    
    .slide-content-frame {display: none;}
    
    /* Slideshow - standard with text */
    .slideshow-standard-with-text .slide-content {padding: 16px 36px;}
    
    /* Blocs */
    .bloc-composite-main-content {padding: 0 16px;}
    
    /* Blocs briques */
    .bloc-brick-content-wrapper {padding: 12px 42px;} /* espace horizontal pour touch scroll */
    
    /* Bloc spécial de FAQ + tripadvisor*/
    
    .bloc-booking-assurance, 
    .bloc-faq {
        padding: 0 24px;
    }
    
    .bloc-booking-assurance-col:first-child {padding-bottom: 24px;}
    
    /* bloc d'offres */
    .r-tabs .r-tabs-accordion-title {display: none;}

    /* sous-blocs */
    .sous-bloc-content-description {
        display: inline-block;
        font-size: 18px;
        padding-bottom: 0;
        padding-top: 0;
        text-decoration: underline;
        top: auto;
    }
    
    .sous-bloc-content-wrapper {display: none;}
    .bloc-theme-cross-buy .sous-bloc-content-wrapper {display: block;}
    
    .sous-bloc-content-description {
        background-color: rgba(255, 255, 255, 0.90);
        padding: 0;
    }
    
    .sous-bloc-content-description-text-wrapper {vertical-align: top;}
    
    .sous-bloc-content-description-text {
        box-sizing: border-box;
        display: inline-block;
        width: 80%;
        padding-left: 18px;
        padding-right: 18px;
        text-align: left;
        vertical-align: middle;
    }
    .sous-bloc-content-description-icon {
        background: url("/resources/img/pictos/arrow-sprite.png") no-repeat center -72px #094942;
        display: inline-block;
        vertical-align: middle;
        width: 20%;
        min-height: 72px;
    }
    .sous-bloc-content-description-text-wrapper:after {display: none;}
    
    /* Réservation rapide */
    .direct-booking-form {padding: 4px;}
    .direct-booking-wrapper {
        left: 12px;
        right: 12px;
        bottom: 36px;
    }
    .direct-booking-form-title {margin: 0 0 6px 0;}
    .direct-booking-form-field.field-submit {margin: 6px 0 0 0;}
    
    /* formulaires common */
    .section-form {clear: both;} /* bugfix affaissement des marges slideshow-booking (float) */
    .section-form-wrapper {padding: 12px 12px 0 12px;}
    .section-form.grid {margin: 6px;}
    
    /* formulaires résa/bon cadeaux/ devis */
    .section-booking-product-wrapper {padding: 12px;}
    
    .section-booking-header-part.section-booking-product-title {display: table-caption;}
    .section-booking-product-family .section-booking-extra {padding: 12px;}
    
    .section-booking-product-part-img-wrapper {vertical-align: middle;}
    .event-booking-options .section-booking-product-part-img-wrapper {display: none;}
    .event-booking-options .section-booking-product-part-content {padding: 0;}
    .section-booking-product-part-img-wrapper img {width: 100%;}
    .section-booking-product-part-action {width: 35%;}
    .section-booking-product-part-content .section-booking-product-title {display: none;}
    
    .section-booking-price-separator,
    .section-booking-product-part-action .section-booking-price-total {
        display: none;
    }

    .section-booking-extra-lift .section-booking-input-label {
        display: block;
        text-align: center;
    }

    .section-booking-extra-lift .section-booking-price-separator,
    .section-booking-extra-lift .section-booking-price-total {
        display: inline-block;
    }
    
    .section-booking-confirm-outer-wrapper,
    .section-booking-confirm-wrapper {
        display: block;
        width: auto;
    }
    
    .section-booking-confirm-wrapper.edge:first-child,
    .section-booking-confirm-wrapper.edge:last-child {
        border-width: 0;
    }
    
    /* Pages */ 
    .page-static-content-wrapper {padding: 24px;}   
    
    /* Popin */
    .popin-menu .frame {
        margin: 0;
        padding: 12px;
        width: auto;
    }
    
    /* Pages éditos */
    .page-edito-content-wrapper {padding: 24px;}
    
    /* informations pratiques */
    .infos-pratiques-content .infos-pratiques-mediacontent.map {
        display: block;
        padding: 0;
        width: 100%;
        padding: 0;
    }
    
    .infos-pratiques-content .infos-pratiques-mediacontent.map iframe {max-width: none;}
    
    /* Calendrier */
    .calendar-header-pax-wrapper, .calendar-header-date-wrapper {vertical-align: top;}
    .calendar-wrapper .button.refresh {display: none;}
    
    .calendar-footer {display: block; width: auto;}
    .calendar-footer p {display: block; margin: 0; padding: 12px 12px 0 12px; text-align: left;}
    
    .calendar-intro-part.image-part img {
        width: 100%;
        max-width: 386px;
    }
    
    .calendar-week-button, .prestation-button-description {display: none;}
    
    .calendar-prestation {background-position: right 2px bottom 2px;}
    .calendar-prestation.promo {
        -webkit-background-size: 12px auto;
        -moz-background-size: 12px auto;
        -o-background-size: 12px auto;
        background-size: 12px auto;
    }
    
    /* Process de Résa */
    .web-callback-wrapper {
        padding: 0;
        text-align: left;
    }
    .event-booking-confirm .web-callback {padding: 0 24px 12px 24px;}
}

@media screen and (max-width: 600px) {

    .tablet-only, .page .tablet-only {display: none;}
    .mobile-only, .page .mobile-only {display: block;}
    .mobile-hidden {display: none;}
    
    /* Lib */
    
    /* Slideshow (Lib) */
    .rsFullscreenBtn {display: none;}
    
    .rsArrowIcn {
        width: 16px;
        height: 16px;
        padding: 12px 2px;
    }
    
    .rsArrowLeft .rsArrowIcn {background-position: center -232px;}
    .rsArrowRight .rsArrowIcn {background-position: center -328px;}
    
    .rsArrowLeft .rsArrowIcn:hover {background-position: center -184px;}
    .rsArrowRight .rsArrowIcn:hover {background-position: center -280px;}
    
    /* Contenu, objets */
    
    /* Titres */
    h1, .h1 {font-size: 28px; font-size: 2.8rem;}
    h2, .h2 {font-size: 20px; font-size: 2.0rem;}
    h3, .h3 {font-size: 16px; font-size: 1.6rem;}
    h4, .h4 {font-size: 13px; font-size: 1.4rem;} 
    
    /* Formulaires */
    .section-booking-product-part {
        display: block;
        padding: 4px 0;
    }
    .section-booking-product-part-img-wrapper {display: none;}
    
    .section-booking-product-part-content,
    .section-booking-product-part-action {
        width: auto;
    }
    .section-booking-product-part-action .section-booking-input-wrapper {text-align: center;}
    
    .section-paving-field-wrapper {padding: 0 12px 1px 12px;}
    .section-booking-list-payment-mode {
        display: block;
        text-align: center;
    }
    .section-booking-item-payment-mode {
        display: inline-block;
        margin: 0 0 12px 0;
    }
    
    /* Boutons, pictos */
    .btn-play-video-label {display: none;}
    .picto-minus-plus,
    .r-tabs .r-tabs-accordion-title .r-tabs-anchor .picto-minus-plus {
        width: 24px;
        height: 24px;
    }
    .picto-minus-plus,
    .question .picto-minus-plus,
    .r-tabs .r-tabs-accordion-title.r-tabs-state-active .r-tabs-anchor .picto-minus-plus {
        background-position: center -708px;
    }
    .question.closed .picto-minus-plus,
    .r-tabs .r-tabs-accordion-title .r-tabs-anchor .picto-minus-plus {
        background-position: center -644px;
    }
    .picto-minus-plus.orange {background-position: center -772px;}
    .picto-minus-plus.brown {background-position: center -1284px;}
    
    /* Layout */
    
    /* Home */
    .home-btn-language { position: absolute;}
    .home-btn-language .js-dropdown-list { margin-left: 0; }
    .home-nav { position: relative; left: 0; width: 100%;}
    .home-nav-items { margin-left: 0; }
    .home-nav-item.cell { height: 135px; }
    .home-nav-item-container:hover .home-nav-link { width: 75%; }
    
    /* Header */
    .secondary-aside-nav {
        line-height: inherit;
        height: 58px; /* hauteur du logo-link */
    }
    .secondary-aside-nav .header-nav-btn-booking {
        height: 100%;
        min-width: 0;
        padding: 6px;
        border: none;
        font-size: 14px;
        font-size: 1.4rem;
        text-align: 100%;        
    }
    .secondary-aside-nav .header-nav-btn-booking .aside-link-picto,
    .secondary-aside-nav .header-nav-btn-booking .label {
        display: block;
        margin: 0 auto;
    }
    
    .aside-link-picto {
        display: block;
        width: 100%;
    }
    
    .page-header .languages-list-container .js-dropdown-list-wrapper {
        min-width: 0;
        border: none;
    }
    
    .page-header .languages-list-container .language-item {min-width: 0;}
    
    .page-header .languages-list-container .language-label {display: none;}
    
    /* Footer */
    .footer-links-wrapper {padding: 8px 0;}
    .footer-nav {
        width: 100%;
        margin: 0 0 8px 0;
    }
    .skin-bar .footer-nav,
    .skin-bulle .footer-nav,
    .skin-salon .footer-nav {
        padding-bottom: 32px;
    }
    
    .footer-follows { text-align: right;}
    .footer-nav li {
        box-sizing: border-box;
        width: 50%;
        padding: 2px 0 2px 24px;
        margin: 0;
        text-align: left;
    }
    .footer-nav li.footer-nav-separator { display: none; }
    
    /* Slideshow - full screen */
    .has-slideshow-full-screen body {
        overflow-x: hidden;
        overflow-y: scroll;
    } /* @bugfix menu mobile ouvert/déplié */
    
    .has-slideshow-full-screen .page-header,
    .has-slideshow-full-screen .page-footer {
        position: relative;
    }
    
    .slideshow-full-screen-wrapper {position: relative}
    .slideshow-full-screen-wrapper .aside-slideshow {bottom: 0;}
    .slideshow-full-screen {min-height: 300px;} /* @bugfix royalSlider init on mobile height = 0 */
    
    .slideshow-full-screen .slide-content-inner-wrapper {padding: 2px 6px;}
    .slideshow-full-screen .slide-title {font-size: 24px; font-size: 2.4rem;}
    .slideshow-full-screen .slide-text {font-size: 13px; font-size: 1.3rem;}
    
    /* Slideshow - standard with text */
    .slideshow-standard-with-text.royalSlider {height: auto !important;}
    .slideshow-standard-with-text .rsOverflow {width: 100% !important;}
    .slideshow-standard-with-text .rsArrow {top: 50%; height: auto;} /* pour « dégager espace zone click » pour button popin */
    
    .slideshow-standard-with-text .slide {position: relative;}
    
    .slideshow-standard-with-text .slide-button-popin {
        position: absolute;
        right: 6px;
        bottom: 6px;
        display: block;
        width: 18px;
        height: 18px;
        min-width: 0;
        margin: 5px;
        padding: 5px;
        font-size: 30px;
        font-weight: 300;
        line-height: 0;
        border-radius: 50%;
        border: 1px solid white;
        z-index: 210;
    }
    
    .slideshow-standard-with-text .slide-content,
    .slideshow-standard-with-text .slide-img-wrapper {
        display: block;
        width: auto;
        vertical-align: top;
    }
    
    .slideshow-standard-with-text .slide-text-position-east .slide-img-wrapper,
    .slideshow-standard-with-text .slide-text-position-west .slide-img-wrapper, 
    .slideshow-standard-with-text .slide-text-position-unknown .slide-img-wrapper {
        text-align: center;
    }

    .slideshow-standard-with-text .slide-img-wrapper img {display: block;}
        
    .slideshow-standard-with-text .slide-content {
        position: absolute;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        color: #fff;
        background-color: rgba(0, 0, 0, 0.6);
    }
    
    .slideshow-standard-with-text .slide-title-wrapper {
        padding: 0;
        text-align: center;
    }
    .slideshow-standard-with-text .slide-text-wrapper {display: none;}
    
    /* Slideshow - standard */
        
    /* Blocs */
    .bloc-composite-content-wrapper {
        padding-left: 0;
        padding-right: 0;
    }
    .bloc-composite-media-wrapper img {margin-bottom: 16px;}
    
    .bloc-theme-slant-utl .slant-content-wrapper, 
    .bloc-theme-slant-utr .slant-content-wrapper {
        padding: 0 0 24px 0;
    }
    .bloc-theme-slant-btl .slant-content-wrapper, 
    .bloc-theme-slant-btr .slant-content-wrapper {
        padding: 24px 0 0 0;
    }
    
    .bloc-theme-slant-utl .slant-container, 
    .bloc-theme-slant-utr .slant-container, 
    .bloc-theme-slant-btl .slant-container, 
    .bloc-theme-slant-btr .slant-container {
        height: 24px;
    }
    
    .bloc-composite.bloc-image-west .bloc-composite-media-wrapper,
    .bloc-composite.bloc-image-east .bloc-composite-media-wrapper {
        float: none;
        width: 100%;
        padding: 0;
        margin: 0;
    }
    
    .bloc-theme-picture-background .bloc-composite-main-content {width: auto;}
    .bloc-theme-picture-background .bloc-composite-content-wrapper {background-position: right top;}
    
    .bloc-theme-overlay.bloc-image-east, 
    .bloc-theme-overlay.bloc-image-west {
        padding: 0;
    }
    
    .bloc-theme-overlay.bloc-image-east .bloc-container, 
    .bloc-theme-overlay.bloc-image-west .bloc-container {
        padding: 0;
    }
    
    .bloc-theme-overlay.bloc-image-east .bloc-composite-main-content, 
    .bloc-theme-overlay.bloc-image-west .bloc-composite-main-content {
       width: auto;
       margin: 0;
    }
    
    .bloc-theme-overlay.bloc-image-east .bloc-composite-media-wrapper, 
    .bloc-theme-overlay.bloc-image-west .bloc-composite-media-wrapper {
        position: static;
    }
    
    .bloc-theme-overlay .bloc-composite-media-wrapper img {
        display: block;
        margin: 0;
    }
    
    /* Bloc spécial de FAQ */
    .bloc-faq {padding: 0 12px;}
    
    .question-answer {padding: 12px;}
    
    /* bloc special tripadvisor */
    
    .bloc-booking-assurance-col {
        min-width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
    
    /* Short code atout */
    .atout-wrapper {
        display: block;
        width: auto;
        margin: 0 auto 24px auto;
    }
    
    /* Short code sous-bloc */
    .sous-bloc-wrapper {
        display: block;
        width: auto;
        margin: 1.5rem 0 0 0;
        padding: 0;
    }
    .sous-bloc-wrapper:nth-child(2n) .sous-bloc-content-wrapper{
        top: 0;
        right: auto;
        bottom: auto;
        left: 0;
        text-align: right;
    }
    .sous-bloc-wrapper:nth-child(2n) .sous-bloc-content-title {
        padding: 0 15% 0 0;
        background-position: right top;
    }
    
    /* Blocs C2 avec thème cross-buy */
    .bloc-theme-cross-buy {background-size: auto;}
    .bloc-theme-cross-buy .bloc-composite-content-wrapper {padding-top: 65px;}
    .bloc-theme-cross-buy .ornamental-title-align {
        float: none;
        width: 100%;
        text-align: center;
    }
    .bloc-theme-cross-buy .bloc-composite-content {text-align: center;}
    .bloc-theme-cross-buy .sous-bloc-wrapper:first-child, 
    .bloc-theme-cross-buy .sous-bloc-wrapper {
        width: 50%;
        margin-right: 1%;
        margin-left: 1%;
    }
    .bloc-theme-cross-buy .sous-bloc-wrapper:nth-child(2n) .sous-bloc-content-wrapper{
        text-align: left;
    }
    .bloc-theme-cross-buy .sous-bloc-content-description {
        font-size: 15px;
        font-size: 1.5rem;
    }
    
    /* bloc d'offres */
    .r-tabs .r-tabs-nav {display: none;}
    
    .r-tabs .r-tabs-accordion-title {
        display: block;
        margin: 0 0 4px 0;
    }

    .r-tabs-accordion-title.r-tabs-state-active {margin: 0;}
    .r-tabs .r-tabs-panel.r-tabs-state-active {margin: 0 0 16px 0;}

    .r-tabs .r-tabs-accordion-title .r-tabs-anchor,
    .r-tabs .r-tabs-accordion-title.r-tabs-state-active .r-tabs-anchor {
        margin: 0;
        position: relative;
        border-radius: 0;
        background-color: #1f120e;
        color: #fff;
        text-align: left;
    }
    .r-tabs .r-tabs-accordion-title .r-tabs-anchor .picto-minus-plus {
        position: absolute;
        top: 8px;
        right: 6px;
    }
    
    .r-tabs .r-tabs-accordion-title .r-tabs-anchor h3 {padding: 0 32px 0 0;}
    .r-tabs .r-tabs-accordion-title .r-tabs-anchor .subtitle {display: none;}
    
    .tabs-anchor-image {display: none;}
    
    .bloc-offres-prestations-wrapper {
        box-sizing: border-box;
        padding: 12px;
        background-color: #e6e1dc;
    }

    .offre-prestation {
        text-align: center;
        padding: 12px;
        margin-bottom: 16px;
        background: #fff;
        border: none;
    }
    .offre-prestation:last-child {margin: 0;}

    .offre-prestation-title {padding: 0 0 6px 0;}

    .offre-prestation-content-wrapper,
    .offre-prestation-part {
        display: block;
        margin: 0 auto;
    }

    .offre-prestation-part.media-part {
        width: 50%;
        margin: 0 auto;
    }
    .offre-prestation-part.content-part {
        text-align: left;
        width: 70%;
    }

    .offre-prestation-part.price-part,
    .offre-prestation-part.footer-part {
        width: auto;
    }

    .offre-prestation-part.footer-part .btn-acheter,
    .offre-prestation-part.footer-part .btn-offrir {
        display: inline-block;
        margin: 0 3px;
    }

    .offre-prestation-title,
    .offre-prestation-price-wrapper,
    .offre-prestation-contextual-link-wrapper,
    .offre-prestation-actions,
    .offre-prestation-part.footer-part p {
        margin: 0 0 6px 0;
    }

    .offre-prestation-contextual {text-align: center;}
    .offre-prestation-contextual-link-wrapper a {
        font-size: 12px;
        font-size: 1.2rem;
    }
    
    .prestation-price {vertical-align: middle;}
    .prestation-price.child {
        margin-left: 0.5em;
        padding-left: 0.5em;
        border-left: 1px solid;
    }
    .prestation-price.child .price-label {
        display: inline;
        font-size: 1em;
        text-transform: lowercase;
    }
    .offre-prestation-part.footer-part .offre-prestation-price-wrapper {display: none;}
    
    .prestation-mobile-hide {display: none;}
    
    /* Réservation rapide */
    .direct-booking-wrapper {position: static;}
    .direct-booking-form-field {display: block;}
    .direct-booking-form-field input,
    .direct-booking-form-field select {
        width: 226px;
    }
    
    .direct-booking-form .direct-booking-form-field {margin: 4px 0;}
    .direct-booking-form-field.field-submit {margin: 16px;}
    
    //* Calendrier */
    /* Intro et contour du calendrier */
    .empty .calendar-intro {
        display: block;
        width: auto;
        padding: 0;
    }
    
    .calendar-intro .calendar-intro-part {
        display: block;
        padding: 0 12px;
        text-align: center;
    }
    .calendar-intro-part.image-part {display: none;}
    
    .calendar-intro .calendar-intro-element,
    .calendar-intro-form p {
        margin: 4px 0;
    }
    
    .calendar-intro-part.text-part {margin: 12px 0 0 0;}
    .calendar-intro-part.image-part, .calendar-intro-part.image-part img {width: auto;}
    
    .calendar-footer .promo-notabene img, .calendar-footer .promo-notabene span {display: inline;}
    .calendar-footer .promo-notabene img {width: 12px; float: left;}
    
    .calendar-intro-form {margin: 0;}
    
    .button.calendar-intro-element {display: none;}
    
    .calendar-header,
    .calendar-header-categorie-chapeau-wrapper, 
    .calendar-header-pax-wrapper, 
    .calendar-header-date-wrapper {
        display: inline-block;
        width: auto;
        padding: 0 6px;
    }
    
    .calendar-header .calendar-header-categorie-chapeau-wrapper,
    .calendar-header .calendar-header-pax-wrapper, 
    .calendar-header .calendar-header-date-wrapper {
        margin: 4px 0;
    }
     
    .calendar-header .calendar-header-date-wrapper {text-align: left;}
    .calendar-header-date-wrapper .button {display: none;}
    
    .calendar .categorie-title .arrow-icon {
        top: 8px;
        right: 8px;
    }
    
    .calendar-informationnel-image-part {width: 85%;}
    .calendar-informationnel-text-part {
        width: 100%;
        box-sizing: border-box;
    }
    
    /* Contenu du calendrier */
    .calendar-days {display: none;}
    
    .calendar .categorie-table {display: block; width: auto;}
    .categorie-cell {
        display: table;
        width: 100%;
        border: 0;
        table-layout: fixed;
        background-image: none;
    }
    
    .categorie-cell .calendar-day {
        display: table-caption;
        border-bottom: 1px solid #e6e1dc;
        background: #998d83;
    }
    .calendar-prestation {
        display: table-cell;
        border: 0;
        border-left: 1px solid #e6e1dc;
    }
    .calendar-day + .calendar-prestation {border-left: 0;}
    .calendar-prestation.promo {background-image: none;}
    
    .calendar .categorie-title {
        padding: 8px 32px 8px 0;
    }
    
    .categorie-cell .calendar-prestation p {margin: 0;}
    .prestation-text {
        display: block; 
        height: auto;
        padding: 8px 2px;
    }
    
    .categorie-cell-empty-content {display: none;}
    
    /* Process de Résa */
    .booking-breadcrumbs-list {display: none;}
    
    .section-form .section-booking-confirm-wrapper input[type=text],
    .section-form .section-booking-confirm-wrapper select {
        width: 100%;
        box-sizing: border-box;
    }
    
    .web-callback-wrapper {
        max-width: 260px;
        padding: 0;
        margin: 0 auto;
        text-align: center;
    }
    .event-booking-confirm .web-callback-wrapper {padding: 0;}
    
    .web-callback {
        display: table;
        width: 100%;
        
    }
    p.web-callback {margin: 0 auto;}
    
    .web-callback-button,
    .web-callback-aside-panel {
        display: table-row;
        width: 100%;
    }
    .web-callback-aside-panel {
        display: none;
        margin: 2px 0 0 0;
    }
    .web-callback-phone-wrapper {width: 100%;}
    
     .web-callback-phone-input,
     .web-callback-phone-submit {
         height: 32px;
     }
    .web-callback-phone-input,
    .section-booking-confirm-wrapper input[type="text"].web-callback-phone-input {width: 230px;}
    .web-callback-phone-submit {width: 30px;}
    
    .event-booking-confirm .web-callback {padding: 0 0 12px 0;}
    
    /* Bon cadeau */
    .gift-list-wrapper {padding: 0;}
    .gift-list-header,
    .gift-item-fields-wrapper {
        display: table;
        table-layout: fixed;
        width: 100%;
    }
    
    .gift-header-code,
    .gift-header-resa-id,
    .gift-item-part {
        display: table-cell;
        text-align: center;
        width: 50%;
    }
    
    .gift-item-input-code,
    .gift-item-input-resa-id {
        width: 100px;
        min-width: 0;
    }

    .gift-item .gift-item-message-validation {
        display: block;
        width: 100%;
        text-align: center;
    }
    
    /* Validation bon cadeau/paiement accepté, refusé, abandonné */
    .section-gift-valid-image,
    .section-booking-end-image {
        display: none;
    }
    
 
    /* Formulaire common */
   .section-form-wrapper .section-form-fields-wrapper {
        display: block;
        width: 100%;
    }

    .form-error .section-form-wrapper .section-form-fields-wrapper .section-form-field-container {min-height: 0;}
    
    /* Formulaire contact */
    .contact-header-subtitle-wrapper {padding: 12px;}
    .section-contact-wrapper .section-form [type="text"],
    .section-contact-wrapper .section-form select,
    .section-contact-wrapper .section-form textarea {
        box-sizing: border-box;
        width: 100%;
    }
    
    .section-contact-wrapper .section-form [name=date] {
        width: 90%;
        width: calc(100% - 28px);
    }
    
    .section-contact-wrapper .section-paving-legend-title select {margin: 6px 0 0 0;}
   
    .section-contact-wrapper .section-form-part-wrapper-outer,
    .section-contact-wrapper .section-form-part-wrapper-inner {
        display: block;
    }
    .section-contact-wrapper .section-form-part-wrapper-inner {padding: 0;}
    
    /* Pages */ 
    .page-static-content-wrapper {padding: 12px;}
    
    /* Pop-in */
    .popin-title {padding: 0 32px 0 0;}
    .popin-menu .owl-buttons {display: none;}
    .popin-edito-content {max-height: none;}
    .popin-content-image {
        float: none;
        width: auto;
        padding: 0 0 1em 0;
    }
    
    /* Pages éditos */
    .page-edito-content-wrapper {padding: 16px;}
    
    /* informations pratiques */
       .infos-pratiques-content {
           padding: 30px;
       }
       .infos-pratiques-content > div {
        padding-bottom: 30px;
    }
    .infos-pratiques-content > div > div:last-child {
        padding: 0;
    }
    .infos-pratiques-textcontent, .infos-pratiques-mediacontent {
        width: 100%;
    }      
    
    .section-contact-contacts-wrapper ul.contact-list-wrapper {
        width: 100%;
        padding: 0;
    }

    .section-contact-contacts-wrapper a {
        font-size: 13px;
        overflow-wrap: break-word;
    }

    /* Lien d'annulation */
   .event-reservation-cancel-show.static-page .grid.in-time {
       width: 100%;
   }
   .event-reservation-cancel-show .in-time .reservation-summary-details-commande-table {
       width: 98%;
   }
   .event-reservation-cancel-show .reservation-cancel-buttons-actions .button {
       margin-top: 0.4em;
   }
}

@media screen and (max-width: 950px) {
    /* Lien d'annulation */
   .event-reservation-cancel-show .out-of-time .section-reservation-cancel-end-content,
   .event-reservation-cancel-confirm .section-reservation-cancel-end-content {
       display: block;
   }
   .event-reservation-cancel-show .section-reservation-cancel-end .section-reservation-cancel-end-content-text {
       padding: 0;
   }
}

@media screen and (max-width: 600px) {
    .skin-brasserie {
        margin: calc(var(--header-height-brasserie)) 0 0 0;
    }

    .skin-brasserie header {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: var(--z-fixed-brasserie);
        height: calc(var(--header-height-brasserie));
    }

    .skin-brasserie header .header-nav-btn-menu,
    .skin-brasserie header .logo-link,
    .skin-brasserie header .button.mobile-only
    {
        vertical-align: middle;
    }

    .skin-brasserie header .header-nav-btn-menu {
        float: none;
    }

    .skin-brasserie header .logo-link {
        margin-left: 1em;
        margin-right: 1em;
        content: url("../skin/brasserie/img/branding/brasserie-mobile.png");
        width: 100px;
    }

    .skin-brasserie header .button.mobile-only {
        display: inline-block !important;
    }

    .skin-brasserie header .button.mobile-only {
        color: #55725c;
        font-size: 14px;
        font-family: 'Montserrat', sans-serif;
        font-weight: 700;
        border: 1px solid #c8886f;
        background: transparent;
        padding: 1em 1.8em;
    }

    .skin-brasserie header .button.mobile-only:hover {
        color: #ffffff;
        background-color: #c8886f;
    }

    .skin-brasserie #secondary-menu .booking > a {
        background-color: #fcfaf7;
        color: #55725c;
    }

    .skin-brasserie #secondary-menu .booking > a:hover {
        color: #ffffff;
        background-color: #c8886f;
    }
}