/* style_commun.css */
/* FONTS */
/* Palatino */
@import url('https://fonts.cdnfonts.com/css/palatino-lt-black?styles=139022');
/* Cormorant */
@import url('https://fonts.cdnfonts.com/css/cormorant-2?styles=31245,31246,31243,31244,31239,31240');
/* Merriweather */
@import url('https://fonts.cdnfonts.com/css/merriweather-2?styles=30480,30477,30478,30479,30475,30476');

/* PALETTE COULEURS */
.gris_clair { color: #959ea5; }
.gris { color: #86929e; }
.gris_fonce { color: #273c51; }
.gris_plus_fonce { color: #1e3142; }
.orange { color: #f78e78; }

/* CSS */
body {
	max-width: 2100px;
    margin: 0 auto;
	background-color: #fff;
	font-family: "Merriweather", serif;
	font-size: 13px;
	color: #283c51;
}
h1 { font-family: "Cormorant", serif; }
h2 { font-size: 20px; }
h4 { font-size: 15px; }
h1, h2, h3, h4 { 
	font-weight: normal;
	font-style:italic;
	margin-top: 20px;
	margin-bottom: 20px;
}
p { font-style:italic; }
a {
	text-decoration: none;
	color: inherit;
}
.lien_obf:hover {
	cursor: pointer;
}
input[type=submit]{
  -webkit-appearance: none;
  border-radius: 0;
}

.align_center {
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	padding: 0 10px;
}
.text_center { text-align: center; }

.clearfix:after{
	display: table;
	content: '';
	clear: both;
}

.bouton {
    font-family: "Cormorant", serif;
    font-size: 20px;
    padding: 5px 15px;
    display: inline-block;
	cursor: pointer;
}
.bouton.type_1 {
	border: 1px solid #f78e78;
    background-color: #f78e78;
	color: #fff;
}
.bouton.type_1:hover {
	border: 1px solid #f78e78;
    background-color: #fff;
	color: #f78e78;
}
.bouton.type_1_vif {
	border: 1px solid #f75331;
    background-color: #f75331;
	color: #fff;
}
.bouton.type_1_vif:hover {
	border: 1px solid #f75331;
    background-color: #fff;
	color: #f75331;
}
.bouton.type_2 {
    border: 1px solid #293c51;
    background-color: #293c51;
    color: #fff;
}
.bouton.type_2:hover {
	border: 1px solid #293c51;
    background-color: #fff;
	color: #293c51;
}
.bouton.type_3 {
    border: 1px solid #fff;
    background-color: #fff;
    color: #85919d;
}
.bouton.type_3:hover {
	border: 1px solid #fff;
    background-color: #85919d;
	color: #fff;
}
.bouton.type_4 {
	border: 1px solid #fff;
    background-color: #a9b5c1;
	color: #fff;
}

.logo_vpn > .titre {
	font-family: 'Palatino', serif;
	font-size: 30px;
	letter-spacing: 1px;
}
.logo_vpn > .titre sup {
    font-family: "Arial", sans-serif;
	font-size: 16px;
}

.first_letter::first-letter { font-size: 150%; }

.marker_mapbox { background-image: url('../images/marker-icon.png'); }

/* VISIBILITY TOGGLE */
/* .vis-container.vis-hidden,
.vis-dots.vis-hidden { display: none; }
.vis-button { cursor: pointer; }
.vis-button:hover { color: #f78e78; }
.vis-arrow { font-style: initial; }
.vis-arrow { 
	display: inline-block; 
	-webkit-transition: -webkit-transform .3s ease-in-out; 
			transition: -webkit-transform .3s ease-in-out; 
		 -o-transition: transform .3s ease-in-out; 
	transition: transform .3s ease-in-out; 
	transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;
}
.vis-arrow-up { -webkit-transform: rotate(-180deg); -ms-transform: rotate(-180deg); transform: rotate(-180deg); }
.vis-dots { 
	font-size: 25px; 
	line-height: 25px;
} */


/* BLOC DIAPO PRODUIT */
#lien_diapo_produit {
	text-align: center;
	border-bottom: 1px solid #989e9e;
	cursor: pointer;
}

/* PICTOS */
.titre_info_produit {
	font-style: italic;
	margin: 20px 0;
	background-repeat: no-repeat; 
}

.titre_info_produit.bouee { background-image: url('../images/pictos/picto_bouee.png'); }
.titre_info_produit.vagues { background-image: url('../images/pictos/picto_vagues.png'); }
.titre_info_produit.bateau { background-image: url('../images/pictos/picto_bateau.png'); }
.titre_info_produit.fusee { background-image: url('../images/pictos/picto_fusee.png'); }
.titre_info_produit.france { background-image: url('../images/pictos/picto_carte_france.png'); }
.titre_info_produit.regard { background-image: url('../images/pictos/picto_regard.png'); }
.titre_info_produit.email { background-image: url('../images/pictos/picto_email.png'); }
.titre_info_produit.parcours { background-image: url('../images/pictos/picto_parcours.png'); }
.titre_info_produit.horaires { background-image: url('../images/picto_horaires_2.png'); }
.titre_info_produit.calendrier { background-image: url('../images/pictos/picto_calendrier.png'); }
.titre_info_produit.diapo { background-image: url('../images/picto_diapo_2.png'); }
.titre_info_produit.plan { background-image: url('../images/picto_plan_2.png'); }
.titre_info_produit.ticket { background-image: url('../images/pictos/picto_ticket_2.png'); }
.titre_info_produit.description { background-image: url('../images/pictos/picto_description.png'); }
.titre_info_produit.faq { background-image: url('../images/pictos/picto_faq.png'); }

/* BOUTON FIXE RESA RAPIDE */
#bouton_resa_fixe {
    display: inline-block;
    position: fixed;
    bottom: -100px;
    width: 100%;
    text-align: center;
    z-index: 11;
    right: 0;
	font-size: 30px;
    line-height: 50px;
	border: none;
	border-top: 2px solid #fff;
	padding-bottom: 20px;
    -webkit-transition: bottom .2s ease-in;
		 -o-transition: bottom .2s ease-in;
			transition: bottom .2s ease-in;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#bouton_resa_fixe:hover { border-color: #f78e77; }
#bouton_resa_fixe.visible {
    bottom: 0;
    -webkit-transition: bottom .2s ease-out;
		 -o-transition: bottom .2s ease-out;
			transition: bottom .2s ease-out;
}

/* exception page produit */
#page_produit #bouton_resa_fixe {
    background-color: #959ea5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 5px 15px;
    color: #fff;
    padding: 8px 8px 20px;
	font-size: initial;
	line-height: initial;
}
#page_produit #bouton_resa_fixe:hover { border-color: inherit; }
#page_produit #bouton_resa_fixe .bouton {
	line-height: initial;
    border: 1px solid #fff;
    background-color: #f75331;
}
#page_produit #bouton_resa_fixe:hover .bouton {
    border-color: #f75331;
    background-color: #fff;
	color: #f75331;
}

#page_produit #bouton_resa_fixe .bloc_tarif {
    font-family: "Merriweather";
	font-style: italic;
	font-size: 18px;
}
#page_produit #bouton_resa_fixe .bloc_tarif span { display: inline-block; }
#page_produit #bouton_resa_fixe .bloc_tarif .tarif_indispo:not(.dispo_date) { 
	text-transform: uppercase; 
	font-size: 1.222em;
}
#page_produit #bouton_resa_fixe .bloc_tarif .dispo_date { font-size: 0.889em; }
#page_produit #bouton_resa_fixe .bloc_tarif .texte_tarif { margin-right: 4px; }
#page_produit #bouton_resa_fixe .bloc_tarif .a_partir_de { 
	font-size: 0.778em;
	margin-right: 6px;
}
#page_produit #bouton_resa_fixe .bloc_tarif .tarif .tarif { font-size: 1.389em; }
#page_produit #bouton_resa_fixe .bloc_tarif s { 
	vertical-align: top;
	margin-left: 10px;
}
#page_produit #bouton_resa_fixe .bloc_tarif .tarif_adulte,
#page_produit #bouton_resa_fixe .bloc_tarif .tarif_enfant { display: block; }

/* BLOC APPLI MOBILE */
#bloc_application {
	display: block;
	text-align: center;
	color: #283c51;
	background-color: #eee;
	padding: 5px 0 10px;
}
#bloc_application > .titre { 
	font-size: 14px;
	font-style: normal;
	margin: 20px 0;
}
#bloc_application .lien { display: inline-block; }
#bloc_application .lien.google_play { padding-right: 5px; }
#bloc_application .lien.app_store { padding-left: 5px; }
#bloc_application .lien img { 
	width: 170px; 
	aspect-ratio: 17 / 5;
	vertical-align: top;
}

/* SLIDESHOW HEADER */
#header.slideshow_header {
	-webkit-transition: background-image 1s ease; 
		 -o-transition: background-image 1s ease; 
			transition: background-image 1s ease;
}

#header .slideshow_header { display: none; }

/* SUGGESTIONS ACCUEIL */
#bloc_suggestions_accueil { 
	margin-top: 20px;
	margin-bottom: 30px;
}
#bloc_suggestions_accueil > .titre {
	text-align: center;
    font-size: 22px;
    font-weight: 400;
	font-style: initial;
	margin: 0;
}
#bloc_suggestions_accueil > .accroche {
    font-size: 15px;
	line-height: 20px;
	margin: 5px 0 0;
}
#bloc_suggestions_accueil .bloc_liste {
	overflow: hidden;
	margin-top: 20px;
}

/* AFFICHAGE LISTE ITEM */
.contenaire_produits_courts { overflow: hidden; }
.contenaire_produits_courts .flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
	margin: -15px -20px;
}
.bloc_produit_court {
	-webkit-box-flex: calc(100% / 3);
			-ms-flex: calc(100% / 3) 0 1;
				flex: calc(100% / 3) 0 1;
	padding: 15px 20px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.bloc_produit_court .cadre {
	height: 100%;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -ms-flex-direction: column;
           flex-direction: column;
}
.bloc_produit_court .bloc_image {
	position: relative;
	-webkit-box-flex: 1;
			-ms-flex: auto 0 0px;
				flex: auto 0 0;
}
.bloc_produit_court .bloc_image .vignette_promo {
	position: absolute;
	top: 8px;
	left: 8px;
	width: 60px;
}
.bloc_produit_court .bloc_image .image {
	display: block;
	width: 100%;
	max-width: none;
	aspect-ratio: 25 / 14;
}
.bloc_produit_court .bloc_texte {
	position: relative;
    z-index: 1;
	-webkit-box-flex: 1;
			-ms-flex: auto 1 1;
				flex: auto 1 1;
	background-color: rgba(245, 245, 245, .9);
	margin: -18px 8px 0;
	padding: 15px;
}
.bloc_produit_court .bloc_texte .titre {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-pack: center;
       -ms-flex-pack: center;
     justify-content: center;
    -webkit-box-align: center;
       -ms-flex-align: center;
          align-items: center;
    text-align: center;
	font-size: 20px;
    margin: 0 0 15px;
	min-height: 50px;
}
.bloc_produit_court .bloc_texte .ligne_tarif { 
	font-size: 20px; 
	margin: 15px 0;
}
.bloc_produit_court .bloc_texte .ligne_tarif > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    gap: 5px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.bloc_produit_court .bloc_texte .ligne_tarif .tarif { line-height: 26px; }
.bloc_produit_court .bloc_texte .ligne_tarif .tarif .texte_tarif { line-height: initial; }
.bloc_produit_court .bloc_texte .ligne_tarif .tarif_indispo {
	text-transform: uppercase;
	display: inline-block;
	line-height: 25px;
	padding: 5px 0;
}
.bloc_produit_court .bloc_texte .ligne_tarif .tarif_indispo.dispo_date { font-size: 18px; }
.bloc_produit_court .bloc_texte .ligne_tarif .bloc_tarif {
    display: inline-block;
    background-color: #f78e78;
    color: #fff;
    padding: 4px 8px;
	border-radius: 2px;
	text-align: center;
}
.bloc_produit_court .bloc_texte .ligne_tarif .texte_tarif,
.bloc_produit_court .bloc_texte .ligne_tarif .tarif { display: inline-block; }
.bloc_produit_court .bloc_texte .ligne_tarif .texte_tarif { font-size: 13px; }
.bloc_produit_court .bloc_texte .ligne_tarif .tarif_adulte, 
.bloc_produit_court .bloc_texte .ligne_tarif .tarif_enfant { white-space: nowrap; }
.bloc_produit_court .bloc_texte .bloc_infos {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 2px 0;
}
.bloc_produit_court .bloc_texte .bloc_infos > * { position: relative; }
.bloc_produit_court .bloc_texte .bloc_prochain_depart.hidden { display: none; }
.bloc_produit_court .bloc_texte .bloc_infos .icone {
	position: absolute;
    left: 0;
    top: calc(50% - 10px);
    width: 20px;
    height: 20px;
}
.bloc_produit_court .bloc_texte .bloc_infos .icone:not(.caractere) {
	-webkit-filter: invert(18%) sepia(8%) saturate(3043%) hue-rotate(171deg) brightness(97%) contrast(86%);
	        filter: invert(18%) sepia(8%) saturate(3043%) hue-rotate(171deg) brightness(97%) contrast(86%);
}
.bloc_produit_court .bloc_texte .bloc_infos .icone.caractere {
	text-align: center;
    line-height: 20px;
    font-size: 20px;
}
.bloc_produit_court .bloc_texte .bloc_infos .texte { 
	display: inline-block;
	padding-left: 25px;
	line-height: 20px;
}
.bloc_produit_court .bloc_texte .bloc_infos .texte > span { 
	display: inline-block;
    line-height: 16px;
}
.bloc_produit_court .bloc_texte > .texte,
.bloc_produit_court .bloc_texte > .savoir_plus {
	font-size: 12px;
	line-height: 18px;
}
.bloc_produit_court .bloc_texte > .texte {
	margin: 8px 0 3px;
	text-align: justify;
}
.bloc_produit_court .bloc_texte > .savoir_plus {
	font-style: italic;
	text-decoration: underline;
	font-weight: bold;
}

.bloc_produit_court.index .bloc_texte .bloc_infos { -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; }
.bloc_produit_court.index .bloc_texte .bloc_infos > * { margin-top: 0; }
.bloc_produit_court.index .bloc_texte .bloc_infos .bloc_prochain_depart { margin-bottom: 13px; }
.bloc_produit_court.index .bloc_texte .bloc_infos .bloc_prochain_depart .icone { display: none; }
.bloc_produit_court.index .bloc_texte .bloc_infos .bloc_prochain_depart .texte {
	background-color: #f78e78;
	font-size: 15px;
	color: #fff;
	padding: 4px 8px;
	border-radius: 2px;
}

/* HEADER */
header.commun { 
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 12;
	background-color: rgba(149, 158, 165, .95); 
}
header.commun.fond_orange { background-color: rgba(247, 142, 120, .95); }
header.commun.fond_bleu { background-color: rgba(30, 49, 66, .95); }

#logo_vpn_header > .titre { font-style: italic; }

/* TITRE PAGE */
#titre_page_header.fond_bleu { background-color: rgba(30, 49, 66, .9); }
#titre_page_header.fond_gris { background-color: rgba(149, 158, 165, .9); }
#titre_page_header h1, #titre_page_header h2 { 
	margin: 0;
	font-family: 'Merriweather', serif;
}

/* CATEGORIE */
#page_categorie .accroche_categorie > * { margin: 5px 0; }
#page_categorie .accroche_categorie > *:first-child { margin-top: 0; }
#page_categorie .accroche_categorie > *:last-child { margin-bottom: 0; }
	
.bloc_produit_court.categorie .bloc_image {
	-webkit-box-flex: 1;
			-ms-flex: auto 1 1;
				flex: auto 1 1;
	min-height: 415px;
	max-height: 470px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.bloc_produit_court.categorie .bloc_image > a {
	display: block;
	height: 100%;
}
.bloc_produit_court.categorie .bloc_texte {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 40px 50px;
	padding-top: 25px;
	padding-bottom: 40px;
}
.bloc_produit_court.categorie .bloc_texte .titre {
	margin-bottom: 0;
	min-height: auto;
}
.bloc_produit_court.categorie .bloc_bouton_categorie {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -14px;
    text-align: center;
}
.bloc_produit_court.categorie .bouton_categorie {
	display: inline-block;
	padding: 0 35px;
	background-image: url('../images/triangle_ombre_gauche.png'), url('../images/triangle_ombre_droite.png');
	background-repeat: no-repeat, no-repeat;
	background-size: 35px auto, 35px auto;
	background-position: bottom left, bottom right;
}
.bloc_produit_court.categorie .bouton_categorie > span {
    display: block;
    background-color: #f78e78;
    color: #fff;
    font-style: italic;
    padding: 8px 35px;
    font-size: 18px;
    line-height: 24px;
    font-weight: 300;
    letter-spacing: .5px;
}
.bloc_produit_court .titre_mobile { display: none; }

#page_categorie .bloc_texte_seo { 
    background-color: #eee;
    margin-top: 30px;
    padding: 10px;
    border-radius: 3px;
	font-size: 13px;
	font-style: italic;
}
#page_categorie .bloc_texte_seo .titre { 
	font-size: 15px; 
	font-weight: 600;
}
#page_categorie .bloc_texte_seo .ss_titre { 
	font-size: 13px;
	font-weight: 600;
	margin-top: 12px;
}
#page_categorie .bloc_texte_seo ul { padding-left: 15px; }
#page_categorie .bloc_texte_seo a { text-decoration: underline; }
#page_categorie .bloc_texte_seo > * { margin: 5px 0; }
#page_categorie .bloc_texte_seo li { margin: 3px 0; }
#page_categorie .bloc_texte_seo > *:first-child { margin-top: 0; }
#page_categorie .bloc_texte_seo > *:last-child { margin-bottom: 0; }

/* PRODUIT */
#bloc_info_produit { margin-top: 15px; }
#bloc_info_produit .info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-align: center;
       -ms-flex-align: center;
          align-items: center;
}
#bloc_info_produit .info:not(:first-child) { margin-top: 10px; }
#bloc_info_produit .info.rouge { color: #ff0000; }
#bloc_info_produit .info .bloc_picto_info { -webkit-box-flex: 40px; -ms-flex: 40px 0 0px; flex: 40px 0 0; }
#bloc_info_produit .info .picto_info {
	display: block;
	max-width: 100%;
}
#bloc_info_produit .info .bloc_texte_info {
	-webkit-box-flex: 1;
			-ms-flex: auto 1 1;
				flex: auto 1 1;
    padding-left: 10px;
}
#bloc_info_produit .titre_info {
	font-weight: bold;
    font-size: 18px;
    margin: 0 0 3px 0;
}
#bloc_info_produit .texte_info {
	margin: 0;
    line-height: 16px;
}

.descriptif b,
.descriptif strong { 
	color: #f78e78;
	font-size: 14px;
}

/* plan circuit & embarquement */
#bloc_plan_embarq_prod { margin-top: 20px; }
#bloc_plan_embarq_prod .bloc_plan_circuit .image_plan_circuit {
	display: block;
	max-width: 100%;
}
#bloc_plan_embarq_prod .bloc_plan_circuit .iframe_plan_circuit,
#bloc_plan_embarq_prod .bloc_embarq .embarquement { overflow: hidden; }
#bloc_plan_embarq_prod .bloc_plan_circuit iframe,
#bloc_plan_embarq_prod .bloc_embarq .embarquement.google_my_maps iframe {
	border: none;
    margin-top: -60px;
    height: calc(100% + 60px);
}
#bloc_plan_embarq_prod .bloc_plan .libelle { margin-top: 0; }

#bloc_plan_embarq_prod.droite .bloc_plan { margin-top: 20px; }
#bloc_plan_embarq_prod.droite .bloc_plan:first-child { margin-top: 0; }
#bloc_plan_embarq_prod.droite .bloc_plan .titre_info_produit  { margin-top: 0; }

/* FORMULAIRE */
.form_utilisateur input[type="checkbox"] { 
	width: auto;
	margin: 0 8px 0 0; 
}
.form_utilisateur .bloc_champs_horaire { display: inline-block; }
.form_utilisateur .bloc_societe.hidden,
.form_utilisateur .bloc_champs_horaire.hidden,
.form_utilisateur .bloc_options.hidden,
.form_utilisateur .ligne_option.hidden { display: none; }
.form_utilisateur .bloc_horaire.hidden { display: !important; }
.form_utilisateur .liste_options {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 20px;
}
.form_utilisateur .ligne_option { 
	-webkit-box-flex: 1; 
	    -ms-flex: auto 0 1; 
	        flex: auto 0 1;
	white-space: nowrap; 
}
.form_utilisateur .ligne_option label { display: inline-block; }
.form_utilisateur .ligne_option input[type="checkbox"],
.form_utilisateur .ligne_option label { cursor: pointer; }
.form_utilisateur .ligne_option > * { vertical-align: middle; }
.form_utilisateur input.champs_date { cursor: pointer; }
.form_utilisateur .aster { color: #dc0000; }

/* FAQ */
.bloc_contenu_FAQ p, 
.bloc_contenu_FAQ li { line-height: 20px; }

/* LISTE ACTUALITES */
.liste_actualites .actualite .image_actu img { 
	display: block;
	width: 100%;
	max-width: 400px;
	aspect-ratio: 40 / 19;
}

/* FOOTER */
#certificat_trip_advisor img {
	width: 100%;
	max-width: 250px;
    aspect-ratio: 250 / 253;
}

/* DATEPICKER */
.ui-datepicker.style-generique.ui-widget.ui-widget-content {
	width: 100%;
	border: none;
	padding: 0;
}
.ui-datepicker.ui-widget {
	font-family: "Times New Roman", serif;
	font-style: italic;
	font-size: 1.1em;
}
.ui-datepicker.style-generique .ui-datepicker-header { border-radius: 0; }
.ui-datepicker .ui-widget-header {
	background-color: #99a3ac;
	color: #fff;
	font-weight: 700;
	border: 0;
}
.ui-datepicker .ui-datepicker-prev, 
.ui-datepicker .ui-datepicker-next {
	top: 0;
	height: 100%;
}
.ui-datepicker .ui-datepicker-prev.ui-state-hover, 
.ui-datepicker .ui-datepicker-next.ui-state-hover {
	border: none;
	background: none;
	font-weight: inherit;
	color: inherit;
	cursor: pointer;
}
.ui-datepicker .ui-datepicker-prev-hover { left: 2px; }
.ui-datepicker .ui-datepicker-next-hover { right: 2px; }
.ui-datepicker .ui-widget-header a { color: #fff; }
.ui-datepicker .ui-widget-header .ui-icon { background-image: url('../images/ui-icons_ffffff_256x240.png'); }
.ui-datepicker.style-generique .ui-datepicker-title {
	line-height: 1.6em;
	font-size: 1.7em;
	font-weight: 400;
}
.ui-datepicker.style-generique .ui-datepicker-title .ui-datepicker-month { text-transform: capitalize; }
.ui-datepicker.style-generique table {
	font-size: 1.5em;
	margin: 0;
	border-collapse: separate;
	border-spacing: 1px;
	background-color: #99a3ac;
}
.ui-datepicker.style-generique th {
	padding: .45em .3em;
	font-weight: 400;
	background-color: #fff;
	color: #99a3ac;
}
.ui-datepicker.style-generique td {
	padding: 0;
	background-color: #fff;
	opacity: 1 !important;
}
.ui-state-default, 
.ui-widget-content .ui-state-default, 
.ui-widget-header .ui-state-default, 
.ui-button, 
html .ui-button.ui-state-disabled:hover, 
html .ui-button.ui-state-disabled:active {
	border: none;
	background: none;
	color: #99a3ac;
}
.ui-datepicker.style-generique td span, 
.ui-datepicker.style-generique td a {
	padding: .4em .2em;
	text-align: center;
}
a.ui-state-default, 
.ui-widget-content a.ui-state-default, 
.ui-widget-header a.ui-state-default, 
.ui-button, 
html .ui-button.ui-state-disabled:hover, 
html .ui-button.ui-state-disabled:active {
	text-align: center;
	background-color: #fabfb4;
	color: #333 !important;
}
a.ui-state-active, 
.ui-widget-content a.ui-state-active, 
.ui-widget-header a.ui-state-active, 
a.ui-button:active, 
.ui-button:active, 
.ui-button.ui-state-active:hover {
	background-color: #f78e76;
	font-weight: 700;
	color: #fff !important;
}

/* LIGHTSLIDER */
.lSSlideOuter,
.lightSlider li { position: relative; }
.lSSlideOuter .lSPager.lSpg {
	min-height: 20px;
	margin: 30px 0 0 0 !important;
}
.lSSlideOuter .lSPager.lSpg > li a {
	background-image: none;
	background-color: #929ea8;
	border-radius: 50%;
	opacity: .4;
	vertical-align: middle;
	height: 11px;
	width: 11px;
	z-index: 10;
	margin: 0 2px;
}
.lSSlideOuter .lSPager.lSpg > li.active a, 
.lSSlideOuter .lSPager.lSpg > li:hover a {
	background-color: #929ea8;
	opacity: 1;
}
.lSAction > a {
	width: 19px;
	height: 40px;
	z-index: 10;
	margin-top: -20px;
	opacity: .8;
	padding: 0 10px;
	background-position: center !important;
	background-repeat: no-repeat !important;
}
.lSAction > .lSPrev { left: 0; }
.lSAction > .lSNext { right: 0; }

.bloc_lightSlider {
	margin: 0 auto;
	position: relative;
}
.bloc_lightSlider.diapo {
	max-width: 840px;
	width: 100%;
}
.lightSlider li img {
	display: block;
	max-width: 100%;
	width: 100%;
}
.bloc_lightSlider.diapo.lazyload img {  max-height: 470px; }
.bloc_lightSlider.pager > .lSAction > a { margin-top: -45px; }
.bloc_lightSlider > .lSAction > .lSPrev {
	background-image: url('../images/light-arrow-left.png');
	left: -50px;
}
.bloc_lightSlider > .lSAction > .lSNext {
	background-image: url('../images/light-arrow-right.png');
	right: -50px;
}


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

	/* AFFICHAGE LISTE ITEM */
	/* CATEGORIE */
	.bloc_produit_court.categorie .bloc_texte { margin: 0 15px 50px; }
	.bloc_produit_court.categorie .bouton_categorie > span { padding: 8px 15px; }

}

@media only screen and (max-width: 940px) {
	
	/* LIGHTSLIDER */
	.bloc_lightSlider.pager > .lSAction { display: none; }

}

/* CSS RESPONSIVE TABLETTE */
@media only screen and (min-width: 801px) and (max-width: 1300px) {
    
	.contenu_full { background: #fff !important; }
	.contenu_full .contenu_gauche { padding-right: 0; }
	
	.contenu_gauche { 
		overflow: initial; 
		-ms-flex-preferred-size: 950px; 
					 flex-basis: 950px;
		padding-right: 30px;
	}
	#contenu_privatisation .contenu_gauche { overflow: hidden; }
	.sidebar { -ms-flex-preferred-size: 380px; flex-basis: 380px; } /*AVANT 330px*/
	
	/* HEADER */
	#menu_principal.index { padding: 13px 0; }
	#menu_principal.index ul.niveau-1 > li > .lien { padding: 5px 30px; }
	
	/* ALERTE HEADER */
	#alerte_header .texte { max-height: 125px; }
	
	/* BLOC SUGGESTIONS */
	#bloc_suggestions .suggestion .titre.deco_titre_bleu.centre {
		padding: 0 5.5vw;
		background-size: 4.5vw;
	}
	
	/* FOOTER */
	#footer_top > .align_center > div { padding: 0 10px; }
	#footer_top > .align_center > div:first-child { padding-left: 0; }
	#footer_top > .align_center > div:last-child { padding-right: 0; }
	#certificat_trip_advisor img { width: 100%; }
	
}

/* FIX IFRAMES */
@media only screen and (min-width: 801px) and (max-width: 1280px) {

	#calendrier_horaires {
		width: 100%;
		height: 700px;
		border: none;
	}
	
	.ss_titre_departs { display: none; }
	
}

/* FIX NOTRE FLOTTE */
@media only screen and (min-width: 801px) and (max-width: 1150px) {

.bloc_notre_flotte .nav_diapo { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.bloc_notre_flotte .nav_diapo li { 
	-ms-flex-preferred-size: 25%; 
				 flex-basis: 25%; 
	-webkit-box-sizing: border-box; 
	        box-sizing: border-box;
}

}

/* FIX 1024px */
@media only screen and (min-width: 801px) and (max-width: 1024px) {
	
	/* HEADER */
	#header_top > .align_center {
		padding-top: 2px;
		padding-bottom: 2px;
	}
	#header_top .accroche_site { padding: 3px 15px 3px 0; }
	#header_top .bloc_liens_langues { padding: 3px 0; }
	
	#header_bottom.commun .align_center {
		display: block;
		-webkit-box-align: initial;
		    -ms-flex-align: initial;
		        align-items: initial;
	}
	#logo_vpn_header.commun {
		-webkit-box-flex: 0;
		    -ms-flex: none;
		        flex: none;
		margin-right: 0;
		text-align: center;
	}
	
	/* MENU PRINCIPAL */
	#menu_principal.commun {
		-webkit-box-flex: 0;
		    -ms-flex: none;
		        flex: none;
		text-align: initial;
	}
	#menu_principal.commun ul.niveau-1 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	#menu_principal.commun ul.niveau-1 > li { 
		-webkit-box-flex: 1; 
		    -ms-flex: auto 1 0px; 
		        flex: auto 1 0; 
		text-align: center;
	}
	#menu_principal.commun ul.niveau-1 > li > .lien {
		display: inline-block;
		padding: 0 1vw;
	}
	#menu_principal.index ul.niveau-1 > li > .lien { padding: 0 1.5vw; }
	
	/* PRODUIT */
	#bloc_tarif_produit { -ms-flex-negative: 1 !important; flex-shrink: 1 !important; }
	
	/* SIDEBAR */
	.sidebar { -webkit-box-flex: 300px; -ms-flex: 300px 1 0px; flex: 300px 1 0; }
	
}


@media only screen and (min-width: 801px) {
	
	.deco_titre_bleu, .deco_titre_blanc, .deco_titre_orange { background-repeat: no-repeat; }
	.deco_titre_bleu.gauche,
	.deco_titre_blanc.gauche,
	.deco_titre_orange.gauche {
		background-position: left center;
		padding-left: 100px;
	}
	.deco_titre_bleu.droite,
	.deco_titre_blanc.droite,
	.deco_titre_orange.droite {
		background-position: right center;
		padding-right: 100px;
	}
	.deco_titre_bleu.centre,
	.deco_titre_blanc.centre,
	.deco_titre_orange.centre {
		background-position: left center, right center;
		padding-left: 100px;
		padding-right: 100px;
		display: inline-block;
	}

	.deco_titre_bleu.gauche { background-image: url(../images/titre_bleu_gauche.png); }
	.deco_titre_bleu.droite { background-image: url(../images/titre_bleu_droite.png); }
	.deco_titre_bleu.centre { background-image: url(../images/titre_bleu_gauche.png), url(../images/titre_bleu_droite.png); }

	.deco_titre_blanc.gauche { background-image: url(../images/titre_blanc_gauche.png); }
	.deco_titre_blanc.droite { background-image: url(../images/titre_blanc_droite.png); }
	.deco_titre_blanc.centre { background-image: url(../images/titre_blanc_gauche.png), url(../images/titre_blanc_droite.png); }

	.deco_titre_orange.gauche { background-image: url(../images/titre_orange_gauche.png); }
	.deco_titre_orange.droite { background-image: url(../images/titre_orange_droite.png); }
	.deco_titre_orange.centre { background-image: url(../images/titre_orange_gauche.png), url(../images/titre_orange_droite.png); }

	.mobile { display: none !important; }

	/* HEADER */
	#header {
		background-image: url('../images/bandeaux/2100w/croisiere_promenade.jpg');
		background-position: center;
		background-repeat: no-repeat;
		color: #fff;
		position: relative;
		height: 510px;
	}
	#page_index #header { height: 489px; } /* index */
	#page_produit.produit_cro_halloween #header { background-position: left; } /* exception */

	header { display: block; }

	#titre_page_header {
		position: absolute;
		bottom: 0;
		width: 100%;
		background-color: rgba(247, 142, 120, .8);
		padding: 20px 0;
		text-transform: uppercase;
	}
	#titre_page_header h1, #titre_page_header h2 { font-size: 20px; }

	#header_top { border-bottom: 1px solid #fff; }
	#header_top > .align_center {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		-webkit-box-align: end;
			-ms-flex-align: end;
				align-items: flex-end;
		padding-top: 5px;
		padding-bottom: 5px;
	}
	#header_top .accroche_site {
		-webkit-box-flex: 1;
			-ms-flex: auto 1 0px;
				flex: auto 1 0;
		padding-right: 15px;
		margin: 0;
		font-family: 'Merriweather', serif;
		letter-spacing: .8px;
	}
	#header_top .accroche_site,
	#header_top .bloc_liens_langues > .lien {
		font-size: 15px;
		line-height: 25px;
		font-weight: 300;
	}
	#header_top .bloc_liens_langues { -webkit-box-flex: 1; -ms-flex: auto 0 0px; flex: auto 0 0; }
	#header_top .bloc_liens_langues > .lien {
		font-style: italic;
		display: inline-block;
		vertical-align: middle;
		margin-left: 15px;
	}
	#header_top .bloc_liens_langues > .lien:first-child { margin-left: 0; }
	#header_top .bloc_liens_langues > .lien.panier { vertical-align: bottom; }
	#header_top .bloc_liens_langues .img_panier { 
		display: block;
		width: 25px;
	}
	#selection_langue {
		border-left: 1px solid #fff;
		display: inline-block;
		margin-left: 15px;
		padding-left: 15px;
	}
	#selection_langue a {
		display: inline-block;
		vertical-align: top;
		margin-left: 8px;
	}
	#selection_langue a:first-child { margin-left: 0; }
	#selection_langue .drapeau {
		width: 25px;
		height: 18px;
		background-image: url('../images/drapeaux/sprites-drapeaux.jpg');
		background-size: 125px 18px;
	}
	#selection_langue .drapeau.fr { background-position: -0 -0; }
	#selection_langue .drapeau.en { background-position: -25px -0; }
	#selection_langue .drapeau.es { background-position: -50px -0; }
	#selection_langue .drapeau.de { background-position: -75px -0; }
	#selection_langue .drapeau.pt { background-position: -100px -0; }
	
	#header_bottom { overflow-x: clip; }
	#header_bottom.commun .align_center {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
			-ms-flex-align: center;
				align-items: center;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	/* #header_bottom.index .align_center { max-width: 1310px; } */

	#logo_vpn_header > .titre { 
		font-family: 'Palatino', serif;
		letter-spacing: 1px;
		margin: 0; 
	}

	#logo_vpn_header.commun { 
		-webkit-box-flex: 1; 
			-ms-flex: auto 0 0px; 
				flex: auto 0 0; 
		margin-right: 18px;
	}
	#logo_vpn_header.commun > .titre {
		font-size: 30px;
		white-space: nowrap;
	}

	#logo_vpn_header.index { margin: 28px 0 15px; }
	#logo_vpn_header.index > .titre {
		font-size: 38px;
		line-height: 45px;
		text-align: center;
		text-shadow: 2px 2px 2px rgba(100, 107, 113, 0.8)
	}

	#header .controls { 
		max-width: 1460px; 
		position: absolute;
		z-index: 1;
		left: 0;
		right: 0;
	}
	#header .controls.hidden { display: none; }
	#header .controls .fleche { cursor: pointer; }
	#header .controls .fleche.previous { float: left; }
	#header .controls .fleche.next { float: right; }
	#header .controls .fleche img { display: block; }

	/* MENU PRINCIPAL */
	#menu_principal > .btn_fermer_mobile,
	#menu_principal > .coordonnees_mobile { display: none; }
	
	#menu_principal.commun {
		-webkit-box-flex: 1;
			-ms-flex: auto 1 1;
				flex: auto 1 1;
		text-align: right;
		padding: 8px 0;
	}
	#menu_principal.index { 
		background-color: rgb(33, 51, 70, .8); 
		text-align: center;
	}
	#menu_principal ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	#menu_principal.commun ul.niveau-1 {
		display: inline-block;
		text-align: left;
	}
	#menu_principal li { position: relative; }
	#menu_principal ul.niveau-1 > li {
		display: inline-block;
		vertical-align: top;
	}
	#menu_principal ul.niveau-1 > li > .lien { display: block; }
	#menu_principal.commun ul.niveau-1 > li > .lien { padding: 0 15px; }
	#menu_principal.index ul.niveau-1 > li > .lien { padding: 18px 30px; }
	#menu_principal ul.niveau-1 > li > .lien > span { 
		display: block;
		font-family: "Cormorant", serif;
		font-weight: 500;
		text-transform: uppercase;
	}
	#menu_principal.commun ul.niveau-1 > li > .lien > span { 
		font-size: 14px; 
		letter-spacing: 1px;
	}
	#menu_principal.index ul.niveau-1 > li > .lien > span { font-size: 18px; }
	#menu_principal.commun ul.niveau-1 > li > .lien > span::first-letter { font-size: 150%; }
	#menu_principal.index ul.niveau-1 > li > .lien > span::first-letter { font-size: 120%; }
	#menu_principal ul.niveau-1 > li > .lien > span.actif:after {
		content: '';
		display: block;
		border-top: 2px solid #fff;
		margin: -2px 3px 0 3px;
	}
	#menu_principal ul:not(.niveau-1) {
		display: none;
		position: absolute;
		z-index: 3;
		width: -webkit-max-content;
		width: -moz-max-content;
		width: max-content;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		padding: 5px 0;
	}
	#menu_principal ul.niveau-2 {
		left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
	}
	#menu_principal ul.niveau-3 {
		left: 100%;
		top: -5px;
	}
	#menu_principal.index ul:not(.niveau-1) { background-color: rgb(33, 51, 70, .95); }
	#menu_principal.commun ul:not(.niveau-1) { background-color: rgba(149, 158, 165, .95); }
	#menu_principal.commun.fond_bleu ul:not(.niveau-1) { background-color: rgba(30, 49, 66, .95); }
	#menu_principal.commun.fond_orange ul:not(.niveau-1) { background-color: rgba(247, 142, 120, .95); }
	#menu_principal ul:not(.niveau-1) { border-top: 1px solid #fff; }
	#menu_principal li:hover > ul:not(.niveau-1) { display: block; }
	#menu_principal ul:not(.niveau-1) > li > .lien {
		display: block;
		line-height: 20px;
		letter-spacing: 1px;
		font-size: 13px;
		text-align: left;
		padding: 5px 10px;
	}
	#menu_principal ul.niveau-2 > li > .lien span.id_menu_nav_6 { font-size: 15px; }
	#menu_principal ul:not(.niveau-1) > li > .lien small {
		display: block;
		font-size: 11px;
		line-height: 15px;
		font-style: italic;
		padding-left: 15px;
	}
	#menu_principal ul:not(.niveau-1) > li > .lien { color: #fff; }
	#menu_principal.index ul:not(.niveau-1) > li > .lien:hover,
	#menu_principal.commun.fond_bleu ul:not(.niveau-1) > li > .lien:hover { color: #ffb1a0; }
	#menu_principal.commun ul:not(.niveau-1) > li > .lien:hover { color: #283c51; }
	#menu_principal .lien.sans_lien { cursor: default; }
	
	#menu_principal ul.niveau-2 > li.fleche > .lien > span {
		position: relative;
		display: block;
		padding-right: 15px;
	}
	#menu_principal ul.niveau-2 > li.fleche > .lien span.fleche {
		position: absolute;
		top: calc(50% - 5px);
        right: 2px;
        border-style: solid;
        border-width: 0 2px 2px 0;
        display: inline-block;
        padding: 4px;
        -webkit-transform: rotate(315deg);
	}
	#menu_principal ul.niveau-2 > li.fleche > .lien span.fleche { border-color: #fff; }
	#menu_principal.index ul.niveau-2 > li.fleche > .lien:hover span.fleche,
	#menu_principal.commun.fond_bleu ul.niveau-2 > li.fleche > .lien:hover span.fleche { border-color: #ffb1a0; }
	#menu_principal.commun ul.niveau-2 > li.fleche > .lien:hover span.fleche { border-color: #283c51; }

	/* PROMO EVENEMENT */
	#promo_evenement { font-family: "Cormorant", serif; }
	#promo_evenement.index {
		background-color: rgba(247, 142, 120, .8);
		margin-top: 20px;
		position: relative;
		padding: 8px 5px;
	}
	#promo_evenement.croisiere_promenade {
		display: inline-block;
		background-color: rgba(247, 142, 120, .9);
		margin-top: 15px;
		margin-left: 10px;
		max-width: 680px;
		text-align: center;
		padding: 15px 10px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
	}
	#promo_evenement a:hover { color: #2a3c51; }
	#promo_evenement.index h3 {
		margin: 0;
		font-size: 28px;
		line-height: 28px;
	}
	#promo_evenement.croisiere_promenade h3 {
		margin: 0;
		font-size: 22px;
		line-height: 22px;
	}
	#promo_evenement.index .vignette_promo {
		position: absolute;
		left: -25px;
		top: 50%;
		margin: 0;
		-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
				transform: translateY(-50%);
	}
	#promo_evenement.croisiere_promenade .vignette_promo { display: none; }
	#promo_evenement p { margin: 5px 0; }
	#promo_evenement.index p { font-size: 20px; }
	#promo_evenement.croisiere_promenade p { font-size: 18px; }
	#promo_evenement p:last-child { margin-bottom: 0; }

	/* ALERTE HEADER */
	#alerte_header { 
		position: absolute;
		left: 0;
		right: 0;
		padding: 0 70px;
	}

	#alerte_header .cadre {
		position: relative;
		z-index: 2;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		background-color: rgba(255, 255, 255, .8);
		padding: 20px;
	}

	#alerte_header .vignette { -webkit-box-flex: 1; -ms-flex: auto 0 0px; flex: auto 0 0; }
	#alerte_header .vignette img { display: block; }
	#alerte_header .texte { 
		-webkit-box-flex: 1; 
		    -ms-flex: auto 1 1; 
		        flex: auto 1 1; 
		padding-left: 20px;
		font-size: 15px;
		line-height: 22px;
		max-height: 155px;
		overflow-y: auto;
		-webkit-transform: translate3d(0,0,0);
				transform: translate3d(0,0,0);
	}
	#alerte_header .texte.sans_vignette { padding-left: 0;}

	#alerte_header .titre,
	#alerte_header .descr p .rouge { color: #ff282d; }
	#alerte_header .titre,
	#alerte_header .descr p { font-style: initial; }
	#alerte_header .titre { margin-top: 0; }
	#alerte_header .descr p { 
		margin-bottom: 0;
		color: #283c51; 
	}

	/* CONTENU PAGE */
	.contenu_gauche {
		-ms-flex-preferred-size: 975px;
					 flex-basis: 975px;
		background-color: #fff;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		padding: 30px 60px 30px 0;
		overflow: hidden;
	}
	.contenu_gauche a:hover { color: #f78e78; }

	.sidebar {
		-ms-flex-preferred-size: 305px;
					 flex-basis: 305px;
		background-color: #959ea5;
		color: #fff;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		padding: 30px 0 30px 20px; 
	}

	.contenu_full:not(.no_sidebar), .contenu_sidebar { 
		background: -o-linear-gradient(left, #fff 50%, #959ea5 50%); 
		background: -webkit-gradient(linear, left top, right top, color-stop(50%, #fff), color-stop(50%, #959ea5)); 
		background: linear-gradient(90deg, #fff 50%, #959ea5 50%); 
	}
	.contenu_full .contenu_gauche { -ms-flex-preferred-size: 100%; flex-basis: 100%; }
	.contenu_full.no_sidebar .contenu_gauche { padding-right: 0; }

	#contenu_privatisation > .align_center { display: -webkit-box; display: -ms-flexbox; display: flex; }

	/* PAGE PRODUIT */
	#fil_ariane {
		font-size: 12px;
		position: absolute;
		top: 0;
	}
	#fil_ariane a { text-decoration: underline; }

	#contenu_produit .contenu_gauche { padding-bottom: 50px; }

	#bloc_accroche_produit { 
		display: -webkit-box; 
		display: -ms-flexbox; 
		display: flex;
		-webkit-box-align: center;
		   -ms-flex-align: center;
			  align-items: center;
		margin-top: 20px;
	}
	#bloc_accroche_produit .accroche_produit { 
		-webkit-box-flex: 1; 
		    -ms-flex: 1 1 auto; 
		        flex: 1 1 auto;
		margin: 0;
		padding-right: 30px;
	}
	#bloc_tarif_produit {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 auto;
		        flex: 0 0 auto;
		min-width: 510px;
		padding-left: 30px;
		position: relative;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}
	#bloc_tarif_produit.has_vignette_promo { padding-left: 80px; }
	#bloc_tarif_produit.has_vignette_promo.has_tarif_enfant { padding-left: 70px; }
	#bloc_tarif_produit .bloc_flotant_droite {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		   -ms-flex-align: center;
			  align-items: center;
		float: none;
		margin: 0;
		padding-left: 30px;
		border-radius: 2px;
	}
	#bloc_tarif_produit.has_tarif_enfant .bloc_flotant_droite {
		padding-top: 5px;
		padding-bottom: 5px;
		padding-left: 40px;
	}
	#bloc_tarif_produit .bloc_flotant_droite .vignette_promo {
		position: absolute;
		left: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
				transform: translateY(-50%);
	}
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif { 
		-webkit-box-flex: 1; 
				-ms-flex: 1; 
					flex: 1;
		margin: 0;
		font-size: 18px;
		font-style: italic;
	}
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif span { 
		display: inline-block;
		font-size: 25px; 
	}
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif .tarif_indispo:not(.dispo_date) { 
		text-transform: uppercase; 
		font-size: 22px;
	}
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif .dispo_date { font-size: 16px; }
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif .texte_tarif { 
		font-size: 18px; 
		margin-right: 4px;
	}
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif .a_partir_de { 
		font-size: 14px; 
		margin-right: 6px;
	}
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif s { 
		vertical-align: top;
		font-size: 18px; 
		margin-left: 10px;
	}
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif .tarif_adulte,
	#bloc_tarif_produit .bloc_flotant_droite .bloc_tarif .tarif_enfant { display: block; }
	#bloc_tarif_produit .bloc_flotant_droite .bouton { 
		-ms-flex-preferred-size: auto; 
					 flex-basis: auto; 
		margin-left: 20px;
		border-color: #ccc;
	}

	#page_categorie .accroche_categorie {
		font-size: 16px;
		line-height: 24px;
		margin: 0 0 30px;
	}
	#page_categorie .accroche_categorie .titre {
		font-size: 20px;
		line-height: 26px;
	}

	.accroche_produit { 
		font-size: 18px;
		margin-top: 0;
	}
	.descr_court_produit { 
		font-size: 20px;
		line-height: 25px;
		font-family: "Cormorant", serif;
		margin-top: 0;
		text-align: justify;
	}
	.titre_info_produit {
		padding-left: 55px;
		font-size: 22px;
		margin-top: 0;
		line-height: 40px;
		background-size: 40px;
	}

	.descriptif p { 
		line-height: 23px; 
		text-align: justify;
	}
	.descriptif hr { 
		margin-top: 35px;
		border: 0;
		border-top: 1px solid #f78e78;
	}
	.descriptif ul {
		line-height: 27px;
		font-size: 14px;
		padding-left: 18px;
	}
	#descr_produit ul {
		padding: 0;
		list-style: none;
	}
	.descriptif li {
		padding-left: 0;
	}
	#descr_produit li {
		background-image: url(../images/pictos/picto_coeur.png);
		background-repeat: no-repeat;
		padding-left: 40px;
		background-position: 15px 5px;
	}
	#descr_produit ul.simple {
		list-style: disc;
		padding-left: 18px;
	}
	#descr_produit ul.no_style li,
	#descr_produit ul.simple li {
		background: none;
		padding-left: 0;
	}
	#descr_produit ul.no_style li::before { content: '- '; }
	.descriptif li a,
    .descriptif li .lien { 
		color: #f78e78; 
		text-decoration:underline;
	}

	#bloc_horaires, #bloc_diapo_produit { margin-top: 40px; }
	#bloc_diapo_produit { 
		width: 100%;
		display: block; 
	}

	#titre_horaires { background: url('../images/picto_horaires_2.png') no-repeat; }
	#calendrier_horaires {
		width: 100%;
		height: 360px;
		border: none;
		padding-left: 55px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
	}

	#liste_monuments { margin: 40px 0; }
	.bloc_monument { margin-top: 40px; }
	.bloc_monument:first-child { margin-top: 0; }
	.bloc_monument h4 { font-size: 18px; }
	.bloc_monument h4 img { padding-right: 15px; }
	.bloc_monument > div { display: -webkit-box; display: -ms-flexbox; display: flex; }
	.bloc_monument .img_monument {
		-ms-flex-preferred-size: 45%;
					 flex-basis: 45%;
		height: 150px;
	}
	.bloc_monument p { 
		-ms-flex-preferred-size: 55%; 
					 flex-basis: 55%;
		padding-left: 20px; 
		text-align: justify;
		line-height: 22px;
	}

	#bloc_descr_produit .titre_produit {
		max-width: 50%;
		margin-bottom: 20px;
	}
	#bloc_descr_produit .titre_produit .titre_info_produit { margin: 0; }

	#bloc_descr_produit .align { display: -webkit-box; display: -ms-flexbox; display: flex; }
	#bloc_descr_produit #descr_produit {
		-webkit-box-flex: 1;
				-ms-flex: 1;
					flex: 1;
		padding-right: 30px;
	}
	#bloc_descr_produit #media_produit {
		-webkit-box-flex: 1;
				-ms-flex: 1;
					flex: 1;
		max-width: 550px;
		overflow: hidden;
		padding-left: 30px;
	}
	#bloc_descr_produit #image_produit { 
		max-width: 400px;
		margin: 0 auto;
	}
	#bloc_descr_produit #image_produit.img_diapo { max-width: 456px; }
	#bloc_descr_produit #image_produit img {
		width: 100%;
		display: block;
	}
	#bloc_descr_produit #image_produit .contour_image {
		border: 1px solid #b2b2b2;
		text-align: center;
	}
	#bloc_descr_produit #image_produit a { display: block; }
	#bloc_descr_produit #image_produit #titre_diapo_loupe {
		margin: 5px 0;
		padding: 0 35px 0 0;
		display: inline-block;
		vertical-align: middle;
		background-image: url(../images/pictos/picto_loupe.png);
		background-position: center right;
		background-size: auto;
	}

	#page_produit .video_produit { margin-top: 20px; }
	.video_responsive .contenaire_video {
		position: relative;
		height: 0;
		padding-bottom: 56.25%;
	}
	.video_responsive .video {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}

	.video_responsive .youtube-player {
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
		overflow: hidden;
		max-width: 100%;
		background: #000;
	}
	.video_responsive .youtube-player iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 100;
		background: transparent;
	}
	.video_responsive .youtube-player img {
		-o-object-fit: cover;
		   object-fit: cover;
		display: block;
		left: 0;
		bottom: 0;
		margin: auto;
		max-width: 100%;
		width: 100%;
		position: absolute;
		right: 0;
		top: 0;
		border: none;
		height: auto;
		cursor: pointer;
		-webkit-transition: 0.4s all;
		-o-transition: 0.4s all;
		transition: 0.4s all;
	}
	.video_responsive .youtube-player img:hover { -webkit-filter: brightness(75%); }
	.video_responsive .youtube-player .play {
		height: 72px;
		width: 72px;
		left: 50%;
		top: 50%;
		margin-left: -36px;
		margin-top: -36px;
		position: absolute;
		background: url('../images/play-button.png') no-repeat;
		cursor: pointer;
	}
	
	#page_produit #inline_video_produit.video_produit {
		max-width: 840px;
		max-height: 470px;
		margin: 0 auto;
	}

	#bloc_resa_prod iframe {
		padding-left: 55px;
		width: 100%;
		max-width: 1055px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
	}

	.bloc_contenu_produit { margin-top: 30px; }

	.ss_titres_bloc_horaires {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding-left: 55px;
	}
	.ss_titres_bloc_horaires h4 { 
		margin-top: 0;
		font-size: 18px;
	}
	.ss_titre_horaires { width: 418px; }
	.ss_titre_departs { -webkit-box-flex: 1; -ms-flex: 1; flex: 1; }
	
	/* plan circuit & embarquement */
	#bloc_plan_embarq_prod.normal.multi .align_plans {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 20px;
	}
	#bloc_plan_embarq_prod.normal.multi .bloc_plan { -webkit-box-flex: calc(50% - 10px); -ms-flex: calc(50% - 10px) 0 0px; flex: calc(50% - 10px) 0 0; }
	#bloc_plan_embarq_prod.normal.solo .bloc_plan_circuit.image .align_img_plan { max-height: 500px; }
	#bloc_plan_embarq_prod.normal.solo .bloc_plan_circuit .iframe_plan_circuit,
	#bloc_plan_embarq_prod.normal.solo .bloc_embarq .embarquement { height: 500px; }
	#bloc_plan_embarq_prod.normal.multi .bloc_plan_circuit.image .align_img_plan,
	#bloc_plan_embarq_prod.normal.multi .bloc_plan_circuit .iframe_plan_circuit,
	#bloc_plan_embarq_prod.normal.multi .bloc_embarq .embarquement { height: 350px; }
	#bloc_plan_embarq_prod .bloc_plan_circuit.image .align_img_plan {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	#bloc_plan_embarq_prod .bloc_plan_circuit .image_plan_circuit { max-height: 350px; }
	#bloc_plan_embarq_prod.droite .bloc_plan_circuit.image .align_img_plan,
	#bloc_plan_embarq_prod.droite .bloc_plan_circuit .iframe_plan_circuit,
	#bloc_plan_embarq_prod.droite .bloc_embarq .embarquement { height: 250px; }

	/* BLOC DIAPO PRODUIT */
	#diapo_produit.zoom-gallery { margin: -8px; }
	#diapo_produit.zoom-gallery .bloc_diapo_produit {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		   -ms-flex-pack: center;
		 justify-content: center;
	}
	#diapo_produit.zoom-gallery .bloc_diapo_produit a {
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		padding: 8px;
	}
	#diapo_produit.zoom-gallery .bloc_diapo_produit.bloc_1 {
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	}
	#diapo_produit.zoom-gallery .bloc_diapo_produit.bloc_1 a {
		-webkit-box-flex: 50%;
				-ms-flex: 50% 0 1;
					flex: 50% 0 1;
	}
	#diapo_produit.zoom-gallery .bloc_diapo_produit.bloc_2 a {
		-webkit-box-flex: calc(100% / 3);
				-ms-flex: calc(100% / 3) 0 1;
					flex: calc(100% / 3) 0 1;
		max-width: 50%;
	}
	#diapo_produit.zoom-gallery .bloc_diapo_produit a.no_display { display: none !important; }

	_::-webkit-full-page-media, _:future, #diapo_produit.zoom-gallery .bloc_diapo_produit {
		display: initial;
		font-size: 0;
	}
	_::-webkit-full-page-media, _:future, :root #diapo_produit.zoom-gallery .bloc_diapo_produit a {
		display: inline-block !important;
		vertical-align: top;
	}
	_::-webkit-full-page-media, _:future, :root #diapo_produit.zoom-gallery .bloc_diapo_produit.bloc_1 a {
		-webkit-box-flex: initial;
					flex: initial;
		max-width: 50%;
	}
	_::-webkit-full-page-media, _:future, :root #diapo_produit.zoom-gallery .bloc_diapo_produit.bloc_2 a {
		-webkit-box-flex: initial;
					flex: initial;
		max-width: calc(100% / 3);
	}
	
	#diapo_produit.zoom-gallery .video .limiter {
		aspect-ratio: 220 / 123;
		position: relative;
		overflow: hidden;
	}
	#diapo_produit.zoom-gallery .video img {
		position: absolute;
		left: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
	}
	#diapo_produit.zoom-gallery .video .play {
		position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        background-image: url('../images/play-button.png');
        background-repeat: no-repeat;
        background-position: center;
        background-size: 25%;
	}

	#slider_mobile { display: none; }


	/* PAGE HISTORIQUE */
	.bloc_contenu_page { margin-top: 50px; }
	.bloc_contenu_page:first-child { margin-top: 0; }
	.bloc_contenu_page .contenaire_moitie { margin-bottom: 30px; }
	.bloc_contenu_page .contenaire_moitie:last-child { margin-bottom: 0; }
	.contenaire_moitie { display: -webkit-box; display: -ms-flexbox; display: flex; }
	.contenaire_moitie .bloc_gauche, 
	.contenaire_moitie .bloc_droite { 
		-ms-flex-preferred-size: 50%; 
					 flex-basis: 50%; 
		text-align: justify;
	}
	.contenaire_moitie .bloc_gauche { padding-right: 30px; }
	.contenaire_moitie .bloc_droite { padding-left: 30px; }
	.contenaire_moitie > div > *:first-child { margin-top: 0; }
	.contenaire_moitie > div > *:last-child { margin-bottom: 0; }

	#contenu_historique .contenaire_moitie > div p {
		font-size: 15px;
		line-height: 25px;
	}
	#contenu_historique .contenaire_moitie > div > img { max-width: 100%; }

	/* DIAPO + NAV - NOTRE FLOTTE */
	.bloc_notre_flotte { margin-top: 30px; }
	#contenu_historique .bloc_notre_flotte { margin-top: 0; }

	.bloc_notre_flotte .bloc_diaporama { margin-top: 30px; }

	.bloc_notre_flotte .nav_diapo {
		margin: -5px -5px 0;
		padding: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	}
	.bloc_notre_flotte .nav_diapo li {
		display: inline-block;
		vertical-align: top;
		 -webkit-box-flex: 1;
		-ms-flex-positive: 1;
				flex-grow: 1;
		text-align: center;
		padding: 5px;
	}
	.bloc_notre_flotte .nav_diapo li:last-child { margin-right: 0; }
	.bloc_notre_flotte .nav_diapo li a { 
		text-decoration: underline; 
		background-color: #edeef0;
		display: block;
		font-size: 15px;
		line-height: 18px;
		padding: 5px 18px 5px 5px;
		background-image: url(../images/privatisation/fleche_bleu.png);
		background-repeat: no-repeat;
		background-position: right 3px center;
		background-size: 12px;
	}
	.bloc_notre_flotte .nav_diapo li.actif { color: #f78e78; }
	.bloc_notre_flotte .nav_diapo li.actif a {
		background-color: #feefea;
		background-image: url(../images/privatisation/fleche_orange.png);
	}

	.bloc_notre_flotte .contenaire_bateau { padding-top: 5px; }
	.bloc_notre_flotte .bloc_aff_bateau.hidden {
		height: 0;
		overflow: hidden;
	}
	.bloc_notre_flotte .bloc_descr_bateau {
		border: 1px solid #d7d7d7;
		padding: 5px 10px;
		margin-top: 20px;
	}
	.bloc_notre_flotte .bloc_descr_bateau p:not(.titre, .sous_titre) { 
		margin-bottom: 5px; 
		color: #000;
	}
	.bloc_notre_flotte .bloc_descr_bateau > .titre { padding-left: 0; }
	.bloc_notre_flotte .bloc_descr_bateau > .sous_titre {
		font-size: 16px;
		margin: 20px 0 10px;
		color: #f78e78;
	}

	/* PAGE PARTENAIRES */
	#contenu_partenaires .bloc_contenu_page { margin-top: 60px; }
	#contenu_partenaires .bloc_contenu_page:first-child { margin: 0; }
	#contenu_partenaires .bloc_gauche img { 
		display: block; 
		max-width: 100%;
	}
	#contenu_partenaires .bloc_droite p big { font-size: 200%; }
	#contenu_partenaires .bloc_droite p.big_price { margin: 0; }
	#contenu_partenaires .bloc_droite p.big_price big { font-size: 360%; }

	/* PAGE RECRUTEMENT */
	.offre_emploi { position: relative; }
	.offre_emploi > * { padding-right: 220px; }
	.bloc_flotant_droite {
		background-color: #959ea5;
		padding: 15px 20px;
		color: #fff;
	}
	.bloc_flotant_droite > * { margin-top: 0; }
	.bloc_mailto_recrutement {
		position: absolute;
		top: 0;
		right: 0;
		width: 200px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
	}

	/* LISTE ACTUALITES */
	.liste_actualites .actualite { 
		display: -webkit-box; 
		display: -ms-flexbox; 
		display: flex; 
		margin-top: 30px;
	}
	.liste_actualites .actualite:first-child { margin-top: 0; }
	.liste_actualites .actualite .image_actu { 
		-ms-flex-preferred-size: 33%; 
					 flex-basis: 33%;
		max-width: 400px;
		-ms-flex-negative: 0;
			  flex-shrink: 0;
		padding-right: 20px;
	}
	.liste_actualites .actualite .contenu_actu { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; }
	.liste_actualites .actualite .titre_actu {
		font-size: 20px;
		text-transform: uppercase;
		margin-top: 0;
	}
	.liste_actualites .actualite .contenu_actu p {
		text-align: justify;
		font-family: "Trebuchet MS", serif;
	}
	.liste_actualites .actualite .descriptif_actu a { text-decoration:underline; }
	.liste_actualites .actualite .date_creation_actu { 
		-ms-flex-preferred-size: 200px; 
					 flex-basis: 200px;
		-ms-flex-negative: 0;
			  flex-shrink: 0;
		padding-left: 20px;
	}
	.liste_actualites .actualite .date_creation_actu p {
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		margin: 0;
		text-align: center;
	}

	/* PAGE CONTACT */
	#contenu_contact .contenu_gauche > div {
		max-width: 1000px;
		margin-left: auto;
		margin-right: auto;
		min-height: 250px;
	}

	#infos_acces_contact .bloc_gauche { -ms-flex-preferred-size: 60%; flex-basis: 60%; }
	#infos_acces_contact .bloc_droite { -ms-flex-preferred-size: 40%; flex-basis: 40%; }

	.infos_acces ul {
		list-style: none;
		padding: 0;
	}
	.infos_acces li { padding-bottom: 10px; }
	.infos_acces .logo_vpn h3 {
		margin-bottom: 0;
		font-size: 25px;
	}
	.infos_vpn li { padding-bottom: 5px; }
	.infos_vpn img{
		height: 20px;
		vertical-align: middle;
	}

	#google_maps_vpn { height: 450px; }

	#bloc_form_resa { margin-top: 30px; }

	.form_utilisateur label { 
		display: block; 
		padding: 5px 0;
		font-size: 18px;
	}
	.form_utilisateur > div:not(.champs_supp),
	.form_utilisateur > .champs_supp > div { margin-top: 10px; }
	.form_utilisateur .bloc_input  { 
		display: -webkit-box; 
		display: -ms-flexbox; 
		display: flex; 
		-webkit-box-pack: justify; 
		   -ms-flex-pack: justify; 
		 justify-content: space-between;
	}
	.form_utilisateur .bloc_input > div { 
		-webkit-box-flex: 1; 
				-ms-flex: 1; 
					flex: 1; 
		margin-right: 20px;
	}
	.form_utilisateur .bloc_input > div:last-child { margin-right: 0; }
	.form_utilisateur input,
	.form_utilisateur select { padding: 10px 5px; }
	.form_utilisateur input,
	.form_utilisateur textarea,
	.form_utilisateur select { 
		width: 100%;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		font-size: 16px;
		border: 1px solid #959ea5;
		color: #283c51;
	}
	.form_utilisateur select { 
		background-color: #fff;
		font-size: 16px; 
	}
	.form_utilisateur textarea { 
		padding: 5px;
		height: 150px; 
	}
	.form_utilisateur .bloc_envoi { text-align: right; }
	.form_utilisateur .bouton { 
		width: 315px; 
		font-size: 20px;
	}
	.form_utilisateur label.rouge { color: #dc0000; }
	.form_utilisateur input.rouge { 
		border: 1px solid #dc0000; 
		color: #dc0000;
	}

	.form_utilisateur input.champs_nb_pax { width: 114px; }

	.form_utilisateur select.champs_horaire { width: auto; }

	.form_utilisateur .bloc_dph { position: relative; }

	/* DISABLE LAYER */
	.form_utilisateur .disable_layer {
		position: absolute;
		z-index: 10;
		top: -5px;
		right: -5px;
		bottom: -5px;
		left: -5px;
		background-color: rgba(33, 51, 70, .4);
		margin: 0;
		
		opacity: 1;
		-webkit-transition: opacity .5s ease-in-out;
			 -o-transition: opacity .5s ease-in-out;
				transition: opacity .5s ease-in-out;
	}
	.form_utilisateur .disable_layer.hidden {
		opacity: 0;
		height: 0;
		overflow: hidden;
	}
	.form_utilisateur .disable_layer .loading {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
	}
	.form_utilisateur .disable_layer .loading img {
		width: 80px;
		-webkit-animation:spin 1s linear infinite;
		animation:spin 1s linear infinite;
	}
	@-webkit-keyframes spin { 100% { -webkit-transform: rotate(-360deg); } }
	@keyframes spin { 100% { -webkit-transform: rotate(-360deg); transform:rotate(-360deg); } }

	/* PAGE RETOUR RESA */
	.cadre_alerte_spam {
		border: 2px solid #f78e77;
		padding: 0 10px;
	}

	/* PAGE PANIER */
	#titre_panier { text-align: center; }

	/* PAGE LIENS */
	ul.navLiens {
		list-style: none;
		margin: 0;
		padding: 20px 0;
		width: auto;
		display: inline-block;
		max-width: 960px;
		height: 100%;
	}
	ul.navLiens li {
		clear: none;
		float: left;
		width: auto;
		padding: 0;
	}
	ul.navLiens a, ul.navLiens a:visited {
		float: left;
		text-decoration: underline;
		width: auto;
		padding: 0;
		margin: 0 20px 0 0;
		border: 0;
	}
	ul.navLiens a:hover, ul.navLiens a:active, ul.navLiens a:focus,
	ul.navLiens a.lien_clic.actif { color: #d85641; }

	ul.liens_affichage { 
		display: none; 
		list-style: none;
		padding: 0;
		margin: 0;
	}
	ul.liens_affichage.actif { display: block; }
	ul.liens_affichage li { padding: 5px 0; }
	ul.liens_affichage a { text-decoration: underline; }

	/* BLOC SUGGESTIONS */
	#bloc_suggestions {
		background-color: #e6e7eb;
		text-align: center;
		color: #293d52;
		padding: 40px 0;
	}
	#bloc_suggestions #titre_suggestions {
		margin-top: 0;
		margin-bottom: 40px;
		font-size: 16px;
		text-transform: uppercase;
	}
	#bloc_suggestions #titre_suggestions::first-letter { font-size: 130%; }
	#bloc_suggestions #liste_suggestions { overflow: hidden; }
	#bloc_suggestions #liste_suggestions > .flex { 
		display: -webkit-box; 
		display: -ms-flexbox; 
		display: flex; 
		-webkit-box-pack: space-evenly; 
		   -ms-flex-pack: space-evenly; 
		 justify-content: space-evenly;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		margin: -30px;
	}
	#bloc_suggestions .suggestion { 
		-webkit-box-flex: calc(100% / 3);
				-ms-flex: calc(100% / 3) 0 1;
					flex: calc(100% / 3) 0 1;
		padding: 30px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
	}
	#bloc_suggestions .suggestion .titre {
		margin-top: 30px;
		text-transform: uppercase;
		font-size: 14px;
		min-height: 40px;
	}
	#bloc_suggestions .suggestion .titre.deco_titre_bleu.centre {
		display: block;
		background-position: left 12px, right 12px;
		background-size: 60px;
		padding: 0 70px;
	}
	#bloc_suggestions .suggestion .image {
		width: 100%;
		display: block;
	}
	#bloc_suggestions .suggestion .texte { margin-bottom: 0; }

	/* BLOC FOND PARIS */
	.bloc_fond_paris {
		background-image: url('../images/bandeaux/2100w/fond_privatisation_bateaux.jpg');
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		text-align: center;
		color: #fff;
		padding: 40px 0;
	}
	.bloc_fond_paris > p {
		font-size: 18px;
		margin: 40px 0 35px 0;
	}
	.bloc_fond_paris .titre {
		font-family: "Cormorant", serif;
		font-size: 26px;
		margin-top: 0;
	}
	.bloc_fond_paris .accroche { font-size: 25px; }
	.bloc_fond_paris > hr {
		width: 8%; 
		border-top: 2px solid #fff;
	}
	.bloc_fond_paris .bouton.type_1 { background-color: rgba(247, 142, 120, .8); }
	.bloc_fond_paris .bouton.type_1:hover { background-color: #fff; }
	.bloc_fond_paris .limiteur {
		margin: 20px auto 15px;
		padding: 0 15px;
	}
	.bloc_fond_paris .cadre_video {
		background-color: rgba(33, 51, 70, .5);
		padding: 15px;
	}
	.bloc_fond_paris .video { display: block; }

	/* BLOC PRIVATISATION */
	#bloc_priv_bateaux .limiteur { max-width: 980px; }
	#bloc_priv_bateaux .contenaire_video {
		position: relative;
		height: 0;
		padding-bottom: 50.53%; /* 56.25% */
	}
	#bloc_priv_bateaux .video {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}

	#bloc_priv_bateaux.autre {
		height: 440px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		padding: 82.5px 0;
		background-position: center -35px;
		background-size: auto;
	}
	#bloc_priv_bateaux.autre .titre { 
		margin-top: 20px; 
		text-shadow: 0 0 10px #000, 0 0 20px #000;
		font-weight: bold;
	}
	#bloc_priv_bateaux.autre > hr { margin: 20px auto 20px auto; }
	#bloc_priv_bateaux.autre a:hover { font-weight: bold; }

	/* BLOC VIDEO ACTUALITE */
	#bloc_video_actu .limiteur { max-width: 990px; }

	/* BLOC ACTUALITES */
	#bloc_actu .limiteur { max-width: 1250px; }
	#bloc_actu .liste_actualites { text-align: left; }

	/* BLOC PARTENAIRES */
	#bloc_partenaires .align_center { max-width: none; }

	#titre_nos_partenaires > .titre { 
		font-size: 15px;
		margin: 40px 0; 
	}

	.liste_partenaires {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		   -ms-flex-pack: center;
		 justify-content: center;
		padding: 0 0 40px 0;
	}
	.img_partenaire {
		display: block;
		-webkit-box-flex: 560px;
				-ms-flex: 560px 0 1;
					flex: 560px 0 1;
		padding: 0 20px;
	}
	.img_partenaire img {
		width: 100%;
		display: block;
		aspect-ratio: 7 / 3;
	}
	.img_partenaire:first-child { padding-left: 0; }
	.img_partenaire:last-child { padding-right: 0; }

	/* FOOTER */
	footer { 
		display: block;
		font-size: 12px; 
	}
	#footer_top {
		background-color: #283c51;
		color: #fff;
		padding: 40px 0;
	}
	#footer_top .lien:hover { color: #959ea5; }
	#footer_top .align_center {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		   -ms-flex-pack: justify;
		 justify-content: space-between;
	}
	#footer_top ul {
		list-style: none;
		padding: 0;
		margin: 0;
	}
	#footer_top li { line-height: 20px; }
	#footer_top .titre_menu_footer {
		text-transform: uppercase;
		display: inline-block;
		margin: 15px 0 10px 0;
	}
	#footer_top li .lien { display: block; }
	.menu_footer li { font-style: italic; }

	#logo_vpn_footer > .titre { 
		margin-top: 0; 
		margin-bottom: 10px;
	}
	#logo_vpn_footer > .accroche { 
		font-size: 12px;
		font-family: 'Merriweather', serif;
		margin: 12px 0;
	}

	#infos_vpn_footer { margin-top: 30px; }
	#infos_vpn_footer ul { margin-top: 15px; }
	#infos_vpn_footer .bloc_reseaux_sociaux { margin-bottom: 0; }
	#infos_vpn_footer .bloc_reseaux_sociaux .lien { padding: 0 5px; }
	#infos_vpn_footer .bloc_reseaux_sociaux .lien:first-child { padding-left: 0; }
	#infos_vpn_footer .bloc_reseaux_sociaux .lien:last-child { padding-right: 0; }
	#infos_vpn_footer .reseau_social {
		display: inline-block;
		vertical-align: top;
		width: 24px;
		height: 24px;
		background-image: url('../images/reseaux_sociaux/sprites-reseaux-sociaux.png');
	}
	#infos_vpn_footer .reseau_social.facebook { background-position: -0 -0; }
	#infos_vpn_footer .reseau_social.youtube { background-position: -24px -0; }
	#infos_vpn_footer .reseau_social.instagram { background-position: -48px -0; }

	#footer_bottom {
		background-color: #1e3142;
		color: #959ea5;
		text-align: center;
		padding: 20px 0;
		font-size: 12px;
	}
	#footer_bottom .lien:hover { color: #fff; }
	#footer_bottom > .lien_footer_pdc {
		display: block; 
		margin-top: 25px; 
		font-size: 10px;
		line-height: 15px;
	}

	/* PANIER */
	#BB_Frame_panier { z-index: 10000; }

}


@media only screen and (max-width: 800px) {
	
	img { max-width: 100%; }
	ul {
		list-style: none;
		padding-left: 0;
	}

	.align_center {
		max-width: none;
		padding: 0 20px;
	}
	.contenu_full {
		margin: 20px 0;
	}
	.contenu_full, 
	.contenu_sidebar {
		background: #fff;
	}

	.titre_info_produit {
		padding-left: 30px;
		font-size: 20px;
		line-height: 25px;
	}

	#page_categorie .accroche_categorie {
		font-size: 13px;
		line-height: 20px;
		margin: 0 0 30px;
	}
	#page_categorie .accroche_categorie .titre {
		font-size: 15px;
		line-height: 22px;
	}

	.accroche_produit { font-size: 14px; }

	.bloc_contenu_page p { text-align: justify; }
	.bloc_contenu_page img { display: block; }

	.contenaire_moitie { margin: 20px 0; }

	.slide_trigger.slide_hidden { background-image: url(../images/fleche_bas.png); }
	.slide_trigger {
		background-image: url(../images/fleche_haut.png);
		background-repeat: no-repeat;
		background-position: center right;
		background-size: 25px;
	}

	.logo_vpn h3 { font-size: 20px; }

	/* PICTOS */
	.titre_info_produit {
		background-size: 25px;
		background-position: center left;
	}

	/* HEADER */
	#header {
		color: #fff;
		height: 400px;
		position: relative;
		background-image: url('../images/bandeaux/2100w/croisiere_promenade_large.jpg');
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover !important;
	}
	#page_produit.produit_cro_halloween #header { background-position: left; } /* exception */
	header { display: block; }
	header.index { 
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 12;
		background-color: rgba(30, 49, 66, .95); 
		/* background-color: rgb(33, 51, 70, .4); */
	}
	#header_top {
		border-bottom: 1px solid #fff;
		height: 30px;
	}
	#header_top .align_center {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	#header_top .accroche_site {
		-webkit-box-flex: 1;
				-ms-flex: 1;
					flex: 1;
		display: inline-block;
		margin: 0;
		font-family: "Cormorant", serif;
		font-size: 18px;
		line-height: 30px;
	}
	#header_top .bloc_liens_langues {
		-ms-flex-preferred-size: 62px;
					 flex-basis: 62px;
		position: relative;
	}
	#header_top .bloc_liens_langues > * { display: none; }
	#header_top .bloc_liens_langues > #selection_langue_mobile {
		display: block;
		text-align: right;
		height: 16px;
		padding: 7px 0;
	}
	#selection_langue_mobile .bloc_drapeau {
		display: inline-block;
		vertical-align: top;
		padding-left: 20px;
		background-image: url(../images/fleche_bas.png);
		background-repeat: no-repeat;
		background-position: left top;
		background-size: 15px;
	}
	#selection_langue_mobile .drapeau {
		width: 22px;
		height: 16px;
		background-image: url('../images/drapeaux/sprites-drapeaux.jpg');
	}
	#selection_langue_mobile .drapeau.fr { background-position: -0 -0; }
	#selection_langue_mobile .drapeau.en { background-position: -22px -0; }
	#selection_langue_mobile .drapeau.es { background-position: -44px -0; }
	#selection_langue_mobile .drapeau.de { background-position: -66px -0; }
	#selection_langue_mobile .drapeau.pt { background-position: -88px -0; }
	#selection_langue_mobile select {
		position: absolute;
		right: -10px;
		top: 0;
		opacity: 0;
		height: 30px;
		width: 62px;
		border: none;
		cursor: pointer;
	}
	#selection_langue { display: none; }

	#logo_vpn_header {
		position: relative;
		display: block;
		padding: 15px 0;
		text-align: center;
	}
	#logo_vpn_header > .titre {
		margin: 0;
		font-family: "Cormorant", serif;
		font-size: 28px;
		position: relative;
		padding: 0 0 0 30px;
	}
	#logo_vpn_header.index > .titre { text-shadow: 2px 2px 2px rgba(100, 107, 113, 0.8); }

	#header .controls {
		position: absolute;
		left: 0;
		right: 0;
	}
	#header .controls.hidden { display: none; }
	#header .controls .fleche { cursor: pointer; }
	#header .controls .fleche.previous { float: left; }
	#header .controls .fleche.next { float: right; }
	#header .controls .fleche img { display: block; }

	/* MENU PRINCIPAL */
	body.no_scroll { overflow: hidden; }
	
	#picto_menu_mobile {
		position: absolute;
		z-index: 1;
		left: -5px;
		top: 50%;
		-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
				transform: translateY(-50%);
		padding: 5px;
		cursor: pointer;
		width: 24px;
		height: 18px;
		background-image: url('../images/pictos/picto_menu.png');
		background-repeat: no-repeat;
		background-position: 5px 5px;
	}
	
	#menu_principal {
		position: fixed;
        top: 0;
        left: -100%;
        bottom: 0;
        width: 100%;
        z-index: 2;
        background-color: rgb(33, 51, 70, .98);
		padding: 0 10px 60px 10px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-transition: left .5s ease;
		-o-transition: left .5s ease;
		transition: left .5s ease;
	}
	#menu_principal.visible { left: 0; }
	#menu_principal .btn_fermer_mobile {
        position: sticky;
        float: right;
        top: 16px;
		width: 25px;
		height: 25px;
		text-align: center;
		cursor: pointer;
	}
	#menu_principal .btn_fermer_mobile::after {
        content: '\00d7';
        font-family: "Arial", Baskerville, monospace;
        font-size: 45px;
        line-height: 25px;
        color: #fff;
	}
	#menu_principal ul.niveau-1 { margin: 0; }
	#menu_principal ul:not(.niveau-1) { background-color: transparent !important; }
	#menu_principal ul.niveau-3 { max-width: initial !important; }
	#menu_principal li.index,
	#menu_principal li > .lien span.desktop { display: none; }
	#menu_principal ul:not(.niveau-3) > li {
		border-top: 1px solid #fff;
	}
	#menu_principal ul:not(.niveau-3) > li > .lien {
		display: block;
		font-size: 15px;
		line-height: 20px;
		font-weight: 300;
		padding: 20px 0;
	}
	#menu_principal ul:not(.niveau-3) > li.fleche > .lien,
	#menu_principal ul:not(.niveau-3) > li.dates_speciales > .lien { padding-bottom: 8px; }
	#menu_principal ul.niveau-1 > li.nos_croisieres > .lien {
        font-size: 18px;
        line-height: 22px;
		font-weight: 600;
        padding: 18px 0;
	}
	#menu_principal ul.niveau-1 > li.nos_croisieres,
	#menu_principal ul.niveau-1 > li.nos_croisieres > ul.niveau-2 > li:first-child {
		border-top: none;
	}
	/* #menu_principal ul > li > .lien small {
        font-size: 12px;
        line-height: 15px;
		font-style: italic;
	} */
	#menu_principal ul.niveau-3 > li > .lien,
	#menu_principal ul.niveau-1 > li.dates_speciales > ul.niveau-2 > li > .lien,
	#menu_principal ul.niveau-2 > li > .lien span.id_menu_nav_6 small {
        display: block;
        font-size: 13px;
        line-height: 16px;
        font-weight: 300;
        padding: 10px 0;
		margin-left: 20px;
	}
	#menu_principal ul.niveau-2 > li > .lien span.id_menu_nav_6 br { display: none; }
	#menu_principal ul.niveau-2 > li > .lien span.id_menu_nav_6 small { padding: 18px 0 0 0; }
	#menu_principal ul.niveau-1 > li.dates_speciales > ul.niveau-2 > li { border-top: none; }
	#menu_principal ul.niveau-3 > li:last-child > .lien,
	#menu_principal ul.niveau-1 > li.dates_speciales > ul.niveau-2 > li:last-child > .lien { padding-bottom: 20px; }
	
	#menu_principal > .coordonnees_mobile {
		text-align: center;
		padding: 20px 0 0 0;
		border-top: 1px solid #fff;
	}
	#menu_principal > .coordonnees_mobile p {
		font-size: 15px;
		line-height: 22px;
		font-weight: 300;
		letter-spacing: .5px;
		font-style: initial;
		margin: 0;
	}
	#menu_principal > .coordonnees_mobile .lien { text-decoration: underline; }

	/* ALERTE HEADER */
	#alerte_header { 
		position: absolute;
		left: 0;
		right: 0;
		padding: 0 70px;
	}

	#alerte_header .cadre {
		position: relative;
		z-index: 2;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		   -ms-flex-align: center;
		      align-items: center;
		background-color: rgba(255, 255, 255, .8);
		padding: 20px;
	}

	#alerte_header .vignette { -webkit-box-flex: 1; -ms-flex: auto 0 0px; flex: auto 0 0; }
	#alerte_header .vignette img { display: block; }
	#alerte_header .texte { 
		-webkit-box-flex: 1; 
		    -ms-flex: auto 1 1; 
		        flex: auto 1 1; 
		padding-left: 20px;
		font-size: 15px;
		line-height: 22px;
		max-height: 155px;
		overflow-y: auto;
		-webkit-transform: translate3d(0,0,0);
				transform: translate3d(0,0,0);
	}
	#alerte_header .texte.sans_vignette { padding-left: 0; }

	#alerte_header .titre,
	#alerte_header .descr p .rouge { color: #ff282d; }
	#alerte_header .titre,
	#alerte_header .descr p { font-style: initial; }
	#alerte_header .titre { margin-top: 0; }
	#alerte_header .descr p { 
		margin-bottom: 0;
		color: #283c51; 
	}

	/* TITRE PAGE */
	#titre_page_header {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		background-color: rgba(247, 142, 120, .8);
	}
	#titre_page_header h1, #titre_page_header h2 {
		text-align: center;
		text-transform: uppercase;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		white-space: pre-wrap;
		 -webkit-box-pack: center;
			-ms-flex-pack: center;
		  justify-content: center;
		-webkit-box-align: center;
		   -ms-flex-align: center;
			  align-items: center;
		min-height: 65px;
		font-size: 18px;
	}

	/* PROMO EVENEMENT */
	#promo_evenement { font-family: "Cormorant", serif; }
	#promo_evenement.index {
		background-color: rgba(247, 142, 120, .8);
		margin-top: 20px;
		position: relative;
		padding: 8px 5px;
	}
	#promo_evenement.croisiere_promenade {
		display: inline-block;
		background-color: rgba(247, 142, 120, .9);
		margin-top: 15px;
		margin-left: 10px;
		max-width: 90%;
		text-align: center;
		padding: 5px 10px;
	}
	#promo_evenement a:hover { color: #2a3c51; }
	#promo_evenement.index h3 {
		margin: 0;
		font-size: 2.6vw;
		line-height: 28px;
	}
	#promo_evenement.croisiere_promenade h3 {
		margin: 0;
		/*font-size: 2.2vw;
		line-height: 22px;*/
		font-size: 3.5vw;
	}
	#promo_evenement.index .vignette_promo {
		position: absolute;
		left: -25px;
		top: 50%;
		margin: 0;
		-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
				transform: translateY(-50%);
	}
	#promo_evenement .vignette_promo { display: none; }
	#promo_evenement p { margin: 5px 0; }
	#promo_evenement.index p { font-size: 2vw; }
	#promo_evenement.croisiere_promenade p { font-size: 3.5vw; }
	#promo_evenement p:last-child { margin-bottom: 0; }

	/* PAGE CROISIERE PROMENADE */
	#calendrier_horaires {
		width: 100%;
		height: 700px;
		border: none;
	}
	.ss_titre_horaires { 
		margin: 0 0 5px 0;
		font-size: 18px;
	}
	.ss_titre_departs { display: none; }

	#img_plan_produit { margin-top: 10px; }

	/* PAGE PRODUIT */
	#contenu_produit.contenu_full { margin-top: 0; }

	#bloc_tarif_produit,
	#fil_ariane,
	#lien_diapo_produit { display: none; }
	/* .bloc_flotant_droite.mobile {
		margin: 0 -20px;
		margin-top: 20px;
		padding: 10px 20px;
		background-color: #959ea5;
		color: #fff;
		text-align: center;
	}
	.bloc_flotant_droite.mobile {
		margin-top: 0;
		position: relative;
	}
	.bloc_flotant_droite.mobile .vignette_promo {
		position: absolute;
		top: 50%;
		left: 5px;
		width: 65px;
		-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
				transform: translateY(-50%);
	}
	.bloc_flotant_droite.mobile .bloc_tarif {
		font-size: 18px;
		font-style: italic;
		margin-right: 5px;
		margin: 0;
	}
	.bloc_flotant_droite.mobile .bloc_tarif span { 
		display: inline-block;
		font-size: 22px; 
	}
	.bloc_flotant_droite.mobile .bloc_tarif .texte_tarif { 
		font-size: 18px; 
		margin-right: 4px;
	}
	.bloc_flotant_droite.mobile .bloc_tarif .a_partir_de { 
		font-size: 14px; 
		margin-right: 6px;
	}
	.bloc_flotant_droite.mobile .bloc_tarif s { 
		vertical-align: top;
		font-size: 16px; 
		margin-left: 10px;
	}
	.bloc_flotant_droite.mobile .bloc_tarif .tarif_indispo:not(.dispo_date) { text-transform: uppercase; }
	.bloc_flotant_droite.mobile .bloc_tarif .dispo_date { font-size: 16px; }
	.bloc_flotant_droite.mobile .bloc_tarif .tarif_adulte,
	.bloc_flotant_droite.mobile .bloc_tarif .tarif_enfant { display: block; }
	.bloc_flotant_droite.mobile .bouton_resa { margin-top: 8px; }
	.bloc_flotant_droite.mobile .bouton_resa .bouton {
		min-width: 50%;
		font-weight: bold;
	} */

	.descriptif hr { 
		margin-top: 35px;
		border: 0;
		border-top: 1px solid #f78e78;
	}
	.descriptif ul {
		line-height: 20px;
		font-size: 14px;
		list-style: initial;
		padding-left: 18px;
	}
	#descr_produit ul {
		padding: 0;
		list-style: none;
	}
	.descriptif li { padding-left: 0; }
	#descr_produit li {
		background-image: url(../images/pictos/picto_coeur.png);
		background-repeat: no-repeat;
		padding-left: 25px;
		background-position: 0 1px;
	}
	#descr_produit ul.no_style li {
		background: none;
		padding-left: 0;
	}
	#descr_produit ul.no_style li::before { content: '- '; }
	.descriptif li a, 
	.descriptif li .lien { color: #f78e78; }

	#image_produit img { display: block; }

	#bloc_descr_produit .titre_produit { margin: 20px 0; }
	#bloc_descr_produit .titre_produit .titre_info_produit { margin: 0; }

	#page_produit .video_produit { margin-top: 16px; }
	#page_produit #slider_mobile .video_produit { margin-top: 0; }
	.video_responsive .contenaire_video {
		position: relative;
		height: 0;
		padding-bottom: 56.25%;
	}
	.video_responsive .video {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}

	.video_responsive .youtube-player {
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
		overflow: hidden;
		max-width: 100%;
		background: #000;
	}
	.video_responsive .youtube-player iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 100;
		background: transparent;
	}
	.video_responsive .youtube-player img {
		-o-object-fit: cover;
		   object-fit: cover;
		display: block;
		left: 0;
		bottom: 0;
		margin: auto;
		max-width: 100%;
		width: 100%;
		position: absolute;
		right: 0;
		top: 0;
		border: none;
		height: auto;
		cursor: pointer;
		-webkit-transition: 0.4s all;
		-o-transition: 0.4s all;
		transition: 0.4s all;
	}
	.video_responsive .youtube-player img:hover { -webkit-filter: brightness(75%); }
	.video_responsive .youtube-player .play {
		height: 72px;
		width: 72px;
		left: 50%;
		top: 50%;
		margin-left: -36px;
		margin-top: -36px;
		position: absolute;
		background: url('../images/play-button.png') no-repeat;
		cursor: pointer;
	}
	
	#page_produit #inline_video_produit.video_produit {
		max-width: 840px;
		max-height: 470px;
		margin: 0 auto;
	}

	.leaflet-container { height: 220px; }

	/* bloc diapo produit */
	#diapo_produit.zoom-gallery { display: none; }
	
	/* plan circuit & embarquement */
	#bloc_plan_embarq_prod .bloc_plan { margin-top: 20px; }
	#bloc_plan_embarq_prod .bloc_plan:first-child { margin-top: 0; }
	#bloc_plan_embarq_prod .bloc_plan .titre_info_produit  { margin-top: 0; }
	#bloc_plan_embarq_prod .bloc_plan_circuit.image .align_img_plan,
	#bloc_plan_embarq_prod .bloc_plan_circuit .iframe_plan_circuit,
	#bloc_plan_embarq_prod .bloc_embarq .embarquement {
		margin-left: -20px;
		margin-right: -20px;
	}
	#bloc_plan_embarq_prod .bloc_plan_circuit .image_plan_circuit { max-height: 220px; }
	#bloc_plan_embarq_prod .bloc_plan_circuit .iframe_plan_circuit,
	#bloc_plan_embarq_prod .bloc_embarq .embarquement { height: 220px !important; }

	/* PAGE HISTORIQUE */
	#contenu_historique .contenaire_moitie > div > img {
		display: block;
		margin: 10px 0;
	}
	#contenu_historique .contenaire_moitie > div > br { display: none; }
	
	.btn_actu_historique { text-align: right; }

	/* DIAPO + NAV - NOTRE FLOTTE */
	.bloc_notre_flotte { margin-top: 30px; }
	#contenu_historique .bloc_notre_flotte { 
		border-bottom: 1px solid grey;
		border-top: 1px solid grey;
		margin: 20px 0;
	}
	
	.bloc_notre_flotte .bloc_diaporama { overflow: hidden; }
	.bloc_notre_flotte .nav_diapo { 
		margin: -5px; 
		display: -webkit-box; 
		display: -ms-flexbox; 
		display: flex;
		-webkit-box-pack: center;
		   -ms-flex-pack: center;
		 justify-content: center;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.bloc_notre_flotte .nav_diapo li {
	    padding: 5px;
		-webkit-box-flex: 1;
				-ms-flex: auto 0 1;
					flex: auto 0 1;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		text-align: center;
		width: 100%;
		max-width: 130px;
	}
	.bloc_notre_flotte .nav_diapo li.actif { color: #f78e78; }
	.bloc_notre_flotte .nav_diapo li a {
		display: block;
		font-size: 13px;
		line-height: 16px;
		text-decoration: underline;
		padding: 5px;
		background-color: #edeef0;
	}
	.bloc_notre_flotte .nav_diapo li.actif a { background-color: #feefea; }
	.bloc_notre_flotte .nav_diapo li a[href="#marcel_carne"] { font-size: 12px; }

	.bloc_notre_flotte .contenaire_bateau { padding-top: 10px; }
	.bloc_notre_flotte .bloc_aff_bateau.hidden {
		height: 0;
		overflow: hidden;
	}
	.bloc_notre_flotte .bloc_descr_bateau {
		padding: 8px;
		border: 1px solid #d7d7d7;
		margin-top: 0;
	}
	.bloc_notre_flotte .bloc_descr_bateau > .titre { 
		padding-left: 0; 
		margin-top: 0;
	}
	.bloc_notre_flotte .bloc_descr_bateau > .sous_titre {
		font-size: 16px;
		margin: 20px 0 10px;
		color: #f78e78;
	}

	/* PAGE PARTENAIRES */
	#contenu_partenaires .bloc_droite p.big_price { margin: 0; }
	#contenu_partenaires .bloc_droite p.big_price big { font-size: 360%; }

	/* PAGE LIENS */
	ul.navLiens {
		list-style: none;
		padding: 0;
		margin: 20px 0;
	}
	ul.navLiens a, ul.navLiens a:visited {
		text-decoration: underline;
		padding: 5px 0;
		display: block;
	}
	ul.navLiens a:hover, ul.navLiens a:active, ul.navLiens a:focus,
	ul.navLiens a.lien_clic.actif { color: #f78e78; }

	ul.liens_affichage { 
		display: none; 
		list-style: none;
		padding: 0;
	}
	ul.liens_affichage.actif { display: block; }
	ul.liens_affichage li { padding: 5px 0; }
	ul.liens_affichage a { text-decoration: underline; }

	/* PAGE CONTACT */
	.infos_acces li { padding: 3px 0; }
	.infos_acces li.logo_vpn { padding: 0; }

	.infos_vpn img {
		height: 18px;
		vertical-align: middle;
		display: initial;
	}

	#google_maps_vpn { height: 300px; }

	/* FORMULAIRE */
	.form_utilisateur .champs_form,
	.form_utilisateur .g-recaptcha { margin: 10px 0; }
	.form_utilisateur label {
		margin: 5px 5px 5px 0;
		display: inline-block;
		vertical-align: middle;
	}
	.form_utilisateur input, 
	.form_utilisateur textarea,
	.form_utilisateur select {
		width: 100%;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		padding: 8px 2px;
		color: #283c51;
		border: 1px solid #8f8f9d;
		border-radius: initial;
		min-height: 35px;
	}
	.form_utilisateur select { background-color: #fff; }
	.form_utilisateur textarea {
		display: block;
		width: 100%;
		height: 60px;
	}
	.form_utilisateur a { text-decoration: underline; }
	.form_utilisateur .bloc_envoi { margin-top: 20px; }
	.form_utilisateur label.rouge { color: #dc0000; }
	.form_utilisateur input.rouge { 
		border: 1px solid #dc0000; 
		color: #dc0000;
	}
	.form_utilisateur .lien_popup { display: none; }

	.form_utilisateur .bloc_dph { position: relative; }
	.form_utilisateur .bloc_horaire { margin-top: 10px; }
	.form_utilisateur select.champs_horaire { width: auto; }
	.form_utilisateur .input_number { width: auto; }

	/* DISABLE LAYER */
	.form_utilisateur .disable_layer {
		position: absolute;
		z-index: 10;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background-color: rgba(33, 51, 70, .4);
		margin: 0;
		
		opacity: 1;
		-webkit-transition: opacity .5s ease-in-out;
			 -o-transition: opacity .5s ease-in-out;
				transition: opacity .5s ease-in-out;
	}
	.form_utilisateur .disable_layer.hidden {
		opacity: 0;
		height: 0;
		overflow: hidden;
	}
	.form_utilisateur .disable_layer .loading {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
	}
	.form_utilisateur .disable_layer .loading img {
		width: 80px;
		-webkit-animation:spin 1s linear infinite;
		animation:spin 1s linear infinite;
	}
	@-webkit-keyframes spin { 100% { -webkit-transform: rotate(-360deg); } }
	@keyframes spin { 100% { -webkit-transform: rotate(-360deg); transform:rotate(-360deg); } }
	@-webkit-keyframes flip {
		from { -webkit-transform: rotateX(0deg); transform: rotateX(0deg); }
		to { -webkit-transform: rotateX(360deg); transform: rotateX(360deg); }
	}
	@keyframes flip {
		from { -webkit-transform: rotateX(0deg); transform: rotateX(0deg); }
		to { -webkit-transform: rotateX(360deg); transform: rotateX(360deg); }
	}

	/* PAGE RECRUTEMENT */
	.offre_emploi { margin: 20px 0 30px 0; }
	.offre_emploi p { text-align: initial; }
	#bloc_offre_emploi_defaut * { text-align: center; }

	.bloc_mailto_recrutement {
		background-color: #959ea5;
		color: #fff;
		padding: 10px 20px;
		margin: 0 -20px;
		text-align: center;
	}
	.bloc_mailto_recrutement p {
		margin-top: 0;
		text-align: center;
	}

	/* PAGE ACTUALITES */
	#contenu_actualites { margin-bottom: 0; }

	/* LISTE ACTUALITES */
	.liste_actualites .actualite { margin: 20px 0 30px 0; }
	.liste_actualites .actualite:first-child { margin-top: 0; }
	.liste_actualites .actualite:last-child { margin-bottom: 0; }
	.liste_actualites .actualite .titre_actu { font-size: 20px; }
	.liste_actualites .actualite .descriptif_actu a { text-decoration: underline; }
	.liste_actualites .actualite .bloc_flotant_droite {
		background-color: #959ea5;
		color: #fff;
		padding: 10px 20px;
		margin: 0 -20px;
		text-align: center;
	}

	/* PAGE RETOUR RESA */
	.cadre_alerte_spam {
		border: 2px solid #f78e77;
		padding: 0 5px;
	}

	/* BLOC SUGGESTIONS */
	#bloc_suggestions {
		background-color: #e6e7eb;
		padding: 20px 0;
	}
	#bloc_suggestions .align_center { max-width: 400px; }
	#bloc_suggestions #titre_suggestions {
		text-align: center;
		text-transform: uppercase;
		margin-top: 0;
	}
	#bloc_suggestions .suggestion { margin: 20px 0; }
	#bloc_suggestions .suggestion .titre {
		font-size: 18px;
		margin: 0 0 15px 0;
		text-align: center;
	}
	#bloc_suggestions .suggestion .bloc { position: relative; }
	#bloc_suggestions .suggestion .bloc .titre { display: none; }
	#bloc_suggestions .suggestion .image { 
		display: block; 
		width: 100%;
		max-width: initial;
	}
	#bloc_suggestions .suggestion .texte { 
		position: absolute;
		top: 0;
		width: 100%;
		margin: 0;
		padding: 5px;
		background-color: rgba(40,60,81,.5);
		color: #fff;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		text-align: center;
	}
	#bloc_suggestions .suggestion .texte span.shortened::after { content: '…'; }
	#bloc_suggestions .suggestion .texte span.long { display: none; }
	#bloc_suggestions .separateur_sugg {
		background-image: url(../images/titre_bleu_gauche.png), url(../images/titre_bleu_droite.png);
		background-position: right center, left center;
		background-repeat: no-repeat;
		padding: 5px 0;
		width: 75%;
		margin: 0 auto;
	}

	/* BLOC FOND PARIS */
	.bloc_fond_paris {
		text-align: center;
		color: #fff;
		padding: 20px;
	}
	.bloc_fond_paris .titre {
		font-family: "Cormorant", serif;
		font-size: 26px;
		margin-top: 0;
	}
	.bloc_fond_paris .accroche { font-size: 25px; }
	.bloc_fond_paris > hr {
		width: 8%; 
		border-top: 2px solid #fff;
	}
	.bloc_fond_paris .bouton.type_1 { background-color: rgba(247, 142, 120, .8); }
	.bloc_fond_paris .bouton.type_1:hover { background-color: #fff; }

	.bloc_fond_paris .limiteur { margin: 20px auto 15px; }
	.bloc_fond_paris .cadre_video {
		background-color: rgba(33, 51, 70, .5);
		padding: 15px;
	}
	.bloc_fond_paris .video { display: block; }

	/* BLOC PRIVATISATION */
	#bloc_priv_bateaux .limiteur { max-width: 980px; }
	#bloc_priv_bateaux .contenaire_video {
		position: relative;
		height: 0;
		padding-bottom: 50.53%; /* 56.25% */
	}
	#bloc_priv_bateaux .video {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}

	#bloc_priv_bateaux.autre { padding: 60px 10px; }
	#bloc_priv_bateaux.autre .titre { margin-top: 20px; }
	#bloc_priv_bateaux.autre > hr { margin: 20px auto 20px auto; }
	#bloc_priv_bateaux.autre a:hover { font-weight: bold; }

	/* BLOC VIDEO ACTUALITE */
	#bloc_video_actu .limiteur { max-width: 990px; }

	/* BLOC ACTUALITES */
	#bloc_actu .limiteur { max-width: 1220px; }
	#bloc_actu .liste_actualites { text-align: left; }

	/* BLOC PARTENAIRES */
	#bloc_partenaires { margin: 20px 0; }
	#bloc_partenaires h4 { margin: 0; }

	#titre_nos_partenaires {
		padding: 0 20px;
		margin-bottom: 20px;
	}

	.liste_partenaires {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		-webkit-box-pack: center;
		   -ms-flex-pack: center;
		 justify-content: center;
		margin: -5px;
	}
	.liste_partenaires .align_center { overflow: hidden; }

	.img_partenaire {
		-ms-flex-preferred-size: 50%;
					 flex-basis: 50%;
	}
	.img_partenaire img {
		display: block;
		padding: 5px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		aspect-ratio: 375 / 161;
	}

	/* FOOTER */
	footer { 
		display: block;
		font-size: 12px; 
	}

	#footer_top {
		background-color: #283c51;
		color: #fff;
		padding: 40px 0;
		text-align: center;
	}
	#footer_top ul {
		list-style: none;
		padding: 0;
		margin: 30px 0;
	}
	#footer_top .titre_menu_footer {
		text-transform: uppercase;
		display: block;
		cursor: pointer;
	}
	#footer_top li .lien { display: block; }
	#logo_vpn_footer .titre,
	#logo_vpn_footer .accroche { margin: 20px 0; }
	#logo_vpn_footer .accroche { 
		font-family: "Cormorant", serif;
		font-size: 24px;
	}

	#infos_vpn_footer { margin-top: 50px; }
	#infos_vpn_footer li,
	.menu_footer li a { padding: 3px 0; }
	#infos_vpn_footer p img { margin: 0 6px; }
	#bloc_footer_3 br { display: none; }

	#footer_bottom {
		background-color: #1e3142;
		color: #959ea5;
		text-align: center;
		padding: 30px 0;
	}
	#footer_bottom > .lien_footer_pdc {
		display: block; 
		margin-top: 25px; 
		font-size: 10px;
	}

	/* BOUTON FIXE RESA RAPIDE */
	#bouton_resa_fixe {
		background-color: #f75331;
		font-size: 28px;
	}
	#bouton_resa_fixe:hover {
		background-color: #fff;
		color: #f75331;
		border-color: #f75331;
	}
	
	/* AFFICHAGE LISTE ITEM */
	.bloc_produit_court {
		-webkit-box-flex: 50%;
				-ms-flex: 50% 0 1;
					flex: 50% 0 1;
	}
	
	/* LIGHTSLIDER */
	.lSSlideOuter .lSPager.lSpg { margin: 20px 0 !important; }
	.lSAction { display: none; }

}


/* CSS RESPONSIVE */
@media only screen and (min-width: 481px) {
	
	.form_utilisateur .bloc_pax_horaire > div { 
		display: inline-block;
		vertical-align: top;
		margin-right: 20px;
	}
	.form_utilisateur .bloc_pax_horaire > div:last-child { margin-right: 0; }
	
	@media only screen and (max-width: 800px) {
			
		/* BLOC FOND PARIS */
		.bloc_fond_paris {
			background-image: url('../images/bandeaux/2100w/fond_privatisation_bateaux.jpg');
			background-repeat: no-repeat;
			background-size: cover;
			background-position: center;
		}
		
		/* BLOC PRIVATISATION */
		#bloc_priv_bateaux.autre {
			background-position: -100px top;
			background-size: auto 100%;
		}
		
	}
	
}


@media only screen and (max-width: 800px) {
	/* suggestions accueil */
	#bloc_suggestions_accueil { padding: 0 15px; }
}


@media only screen and (max-width: 700px) {
	/* suggestions accueil */
	#bloc_suggestions_accueil > .titre { font-size: 18px; }
}


@media only screen and (max-width: 600px) {
	
	/* BLOC SUGGESTIONS ACCUEIL */
	#bloc_suggestions_accueil > .accroche { display: none; }

	/* AFFICHAGE LISTE ITEM */
	/* produit */
	.contenaire_produits_courts .flex {
		display: block;
		margin: -18px auto;
		max-width: 400px;
	}
	.bloc_produit_court {
		padding: 0;
		margin: 18px 0;
	}
	.bloc_produit_court .titre_mobile { 
		display: block;
		text-align: center;
		font-size: 20px;
		background-color: #f5f5f5;
		margin: 0;
		padding: 8px 5px;
	}
	.bloc_produit_court .bloc_image .vignette_promo {
		width: 80px;
		max-width: 15%;
		min-width: 60px;
		top: initial;
		bottom: 24px;
	}
	.bloc_produit_court .bloc_texte { padding: 5px; }
	.bloc_produit_court.produit .bloc_texte .titre,
	.bloc_produit_court .bloc_texte > .savoir_plus { display: none; }
	.bloc_produit_court .bloc_texte .ligne_tarif { margin: 0 0 3px 0; }
	.bloc_produit_court .bloc_texte .ligne_tarif > * { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
	.bloc_produit_court .bloc_texte > .texte {
		display: -webkit-box;
		-webkit-line-clamp: 4;
		-webkit-box-orient: vertical;
		overflow: hidden;
		margin-bottom: 0; 
	}
	
	.bloc_produit_court.index .bloc_texte .bloc_infos .bloc_prochain_depart { 
		text-align: center; 
		margin-bottom: 0;
	}
	
	/* catégorie */
	.bloc_produit_court.categorie .bloc_image { min-height: 350px; }

}


@media only screen and (max-width: 480px) {
	
	/* HEADER */
	#header { height: 300px; }
	#header_top .accroche_site { font-size: 4.2vw; }
	#header_top .bloc_liens_langues {
		-ms-flex-preferred-size: 45px;
					 flex-basis: 45px;
	}
	#logo_vpn_header { padding: 5px 0; }
	#logo_vpn_header > .titre { font-size: 6.8vw; }
	#logo_vpn_header > .titre sup { font-size: 4vw; }
	
	#header .controls .fleche img { height: 50px; }
	
	#page_index #header {
        height: 200px;
        background-position: center, top center;
	}
	
	/* VISIBILITY TOGGLE */
	/* .vis-button:hover { color: inherit; } */
	
	/* ALERTE HEADER */
	#alerte_header { 
		position: initial;
		padding: 0 15px; 
		background: #ddd;
		margin-top: 10px;
	}
	#alerte_header .cadre { 
		z-index: initial;
		background-color: transparent;
		padding: 10px 0;
	}
	#alerte_header .vignette { -ms-flex-preferred-size: 25%; flex-basis: 25%; }
	#alerte_header .texte { 
		font-size: 13px; 
		line-height: 20px;
	    padding-left: 10px;
		max-height: initial;
	}
	#alerte_header .texte.sans_vignette { padding-left: 0; }
	#alerte_header .titre { margin-bottom: 5px; }
	#alerte_header .descr p { margin-top: 5px; }
	
	/* PROMO EVENEMENT */
	#promo_evenement.index h3 { font-size: 4.4vw; }
	#promo_evenement.index p { font-size: 3.8vw; }
	
	/* PAGE CONTACT */
	.g-recaptcha {
			-ms-transform: scale(0.77);
				transform: scale(0.77);
		-webkit-transform: scale(0.77);
			-ms-transform-origin: 0 0;
				transform-origin: 0 0;
		-webkit-transform-origin: 0 0;
	}
	
	/* BLOC HORAIRES */
	#calendrier_horaires { height: 560px; }
	
	/* BLOC FOND PARIS */
	.bloc_fond_paris {
		background-image: url('../images/bandeaux/480w/fond_privatisation_bateaux_accueil.jpg');
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
	}
	.bloc_fond_paris .titre,
	.bloc_fond_paris .accroche { font-size: 4.2vw; }
	.bloc_fond_paris .bouton {
		font-size: 4.2vw;
		width: 100%;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}
	
	/* BLOC PRIVATISATION */
	#bloc_priv_bateaux.autre { background-image: url('../images/bandeaux/480w/fond_privatisation_bateaux.jpg'); }
	#bloc_priv_bateaux.autre .titre,
	#bloc_priv_bateaux.autre .accroche { font-size: 4.7vw; }
	
	/* BLOC PARTENAIRES */
	.img_partenaire img { aspect-ratio: 215 / 92; }
	
	/* BLOC APPLICATION */
	#bloc_application .lien img { width: 35vw; }
	
	/* FOOTER */
	#footer_bottom > .lien_footer_pdc { display: none; }
	
	/* SUGGESTIONS ACCUEIL */
	#bloc_suggestions_accueil > .titre { font-size: 18px; }

	/* AFFICHAGE LISTE ITEM */
	/* CATEGORIE */
	.bloc_produit_court.categorie .bloc_image { min-height: 300px; }
	
	#page_categorie .accroche_categorie { display: none; }
	
	/* RESA FIXE */
	#page_produit #bouton_resa_fixe { gap: 5px 8px; }
	#page_produit #bouton_resa_fixe .bloc_tarif { font-size: 14px; }
	#page_produit #bouton_resa_fixe .bouton { 
		font-size: 18px; 
		padding: 5px 8px;
	}
	
}

@media only screen and (max-width: 410px) {
	#menu_principal { padding-bottom: 50px; }
}

@media only screen and (max-width: 350px) {
	/* HEADER */
	#page_index #header { height: 150px; }
}