/* Template selection_formule — CSS spécifique (chargé après produit.css). Port site_V7, préfixes vendeur retirés (Raphaël autoprefixe) ; structure media V7 conservée. */
/* DESKTOP */
/* entête */
#entete_produit .entete { margin-bottom: 20px; }

/* contenaire */
#contenaire_produit { display: block; }

/* bloc formules */
#contenaire_produit .bloc_formules { box-sizing: border-box; }
#contenaire_produit .bloc_formules .libelle_choix_formule {
	font-size: 20px;
	font-weight: 500;
	margin: 15px 0;
	line-height: 20px;
}
#contenaire_produit .bloc_formules .formule { 
	margin: 30px 0;
	cursor: pointer;
}
#contenaire_produit .bloc_formules .formule:first-child { margin-top: 0; }
#contenaire_produit .bloc_formules .formule:last-child { margin-bottom: 0; }
#contenaire_produit .bloc_formules .formule .cadre_formule {
				flex: calc(100% - 22px) 0 1;
    border: 2px solid #083c6b;
	border-radius: 3px;
            box-sizing: border-box;
	margin-right: 2px;
	min-height: 50px;
	padding: 8px;
	transition: background-color .2s ease-in, border-color .2s ease-in;
}
#contenaire_produit .bloc_formules .formule.indisponible .cadre_formule { border-color: #6e6e6e; }
#contenaire_produit .bloc_formules .formule.selected .cadre_formule,
#contenaire_produit .bloc_formules .formule:hover .cadre_formule { background-color: #c6cfe3; }
#contenaire_produit .bloc_formules .formule.selected:not(.indisponible) .cadre_formule,
#contenaire_produit .bloc_formules .formule:not(.indisponible):hover .cadre_formule { border-color: #4671aa; }
#contenaire_produit .bloc_formules .align.haut { 
	display: flex;
	      align-items: center;
}
#contenaire_produit .bloc_formules .align.bas { margin-top: 10px; }
#contenaire_produit .bloc_formules .cadre_image {
	position: relative;
    max-width: 250px;
    margin: 0 auto;
}
#contenaire_produit .bloc_formules .picto_promo {
	position: absolute;
	top: -2px;
	left: -2px;
}
#contenaire_produit .bloc_formules .image {
	display: block;
	max-width: 100%;
}
#contenaire_produit .bloc_formules .bloc_descr_court {
	        box-sizing: border-box;
	font-size: 15px;
}
#contenaire_produit .bloc_formules .bloc_descr_court p,
#contenaire_produit .bloc_formules .bloc_descr_court ul { margin: 5px 0; }
#contenaire_produit .bloc_formules .bloc_descr_court ul { padding-left: 15px; }
#contenaire_produit .bloc_formules .bloc_descr_court li { line-height: 17px; }
#contenaire_produit .bloc_formules .bloc_descr_court .en_savoir_plus {
	text-align: right; 
	color: #d04b3f
}
#contenaire_produit .bloc_formules .bloc_descr_court > *:first-child { margin-top: 0; }
#contenaire_produit .bloc_formules .bloc_descr_court > *:last-child { margin-bottom: 0; }
#contenaire_produit .bloc_formules .bloc_reserver .en_savoir_plus {
	display: block;
	margin: 0;
}
#contenaire_produit .bloc_formules .titre_formule {
				flex: auto 1 1;
	text-align: left;
	font-size: 18px;
    font-weight: 500;
	line-height: 20px;
	margin: 0;
	transition: color .2s ease-in;
}
#contenaire_produit .bloc_formules .formule.selected .titre_formule,
#contenaire_produit .bloc_formules .formule:hover .titre_formule { color: #036; }
#contenaire_produit .bloc_formules .titre_formule .dernieres_places {
	display: block;
    font-size: 14px;
    line-height: initial;
}
#contenaire_produit .bloc_formules .tarif_formule {
				flex: auto 0 0;
    background-color: #083c6b;
    color: #fff;
    padding: 3px 12px;
    border-radius: 20px;
    line-height: initial;
    margin: 0 0 0 8px;
	        box-sizing: border-box;
    text-align: center;
}
#contenaire_produit .bloc_formules .tarif_formule.aff_texte { max-width: 160px; }
#contenaire_produit .bloc_formules .formule.indisponible .tarif_formule { background-color: #6e6e6e; }
#contenaire_produit .bloc_formules .tarif_formule .tarif { font-size: 18px; }
#contenaire_produit .bloc_formules .tarif_formule .par_personne { display: none; }
#contenaire_produit .bloc_formules .tarif_formule .tarif_alter {
	color: #ff3f3f;
	font-weight: bold;
	vertical-align: top;
}
#contenaire_produit .bloc_formules .tarif_formule .base_pax { display: block; }
#contenaire_produit .bloc_formules .tarif_formule .base_pax br { display: none; }
#contenaire_produit .bloc_formules .tarif_formule .texte { 
	text-transform: uppercase; 
	font-size: 14px;
}
#contenaire_produit .bloc_formules .formule .fleche {
				flex: auto 0 0;
	visibility: hidden;
	opacity: 0;
	transition: opacity .2s ease-in;
}
#contenaire_produit .bloc_formules .formule.selected .fleche {
	opacity: 1;
	visibility: visible;
}

/* bloc contenu */
#contenaire_produit .bloc_contenu { margin-top: 30px; }
#contenaire_produit #cont_fiche_prod.cadre_contenu { box-sizing: border-box; }
#contenaire_produit .bloc_descr_prod { margin-top: 0; }

/* galerie photos */
#contenaire_produit .bloc_galerie_photo { margin-top: 30px; }
#contenaire_produit .bloc_galerie_photo .contenaire_images { 
	margin-top: 15px; 
	 justify-content: center;
}

/* bloc reservation */
#contenaire_produit .bloc_reservation .cadre_reservation { height: auto; }
#contenaire_produit .bloc_reservation .bloc_tarif { padding-top: 22px; }
#contenaire_produit .bloc_reservation .bloc_tarif .titre { 
	line-height: 20px; 
	margin-bottom: 5px;
	text-transform: initial;
	font-size: 18px;
    letter-spacing: -.3px;
}
#contenaire_produit .bloc_reservation .bloc_tarif .tarif_formule.selected { transition: opacity .5s ease-in; }
#contenaire_produit .bloc_reservation .bloc_tarif .tarif_formule:not(.selected) {
	position: relative;
	visibility: hidden;
	height: 0;
	opacity: 0;
	z-index: -9999;
}

/* RESPONSIVE */
/* x > 1024px */
@media only screen and (min-width: 1025px) {
	/* bloc formules */
	#contenaire_produit .bloc_formules {
					flex: 930px 0 1;
		padding: 0 23px 0 60px;
	}
	
	/* bloc contenu */
	#contenaire_produit .bloc_contenu .cadre_contenu { flex: 930px 0 1; }
}

/* x <= 1024px */
@media only screen and (max-width: 1024px) {
	/* bloc formules */
	#contenaire_produit .bloc_formules {
					flex: 655px 0 1;
		padding: 0;
	}
	#contenaire_produit .bloc_formules .formule.selected .cadre_formule, 
	#contenaire_produit .bloc_formules .formule:hover .cadre_formule { background-color: #eceff7; }
	
	/* bloc contenu */
	#contenaire_produit .bloc_contenu .cadre_contenu { flex: 655px 0 1; }
	
	/* x > 500px */
	@media only screen and (min-width: 501px) {
		/* bloc formules */
		#contenaire_produit .bloc_formules .bloc_image { flex: 40.85% 0 0; }
		#contenaire_produit .bloc_formules .bloc_descr_court { flex: auto 1 1; }
	}
}

/* x > 769px */
@media only screen and (min-width: 770px) {
	/* contenaire */
	#contenaire_produit .contenaire_haut_produit { 
		display: flex; 
		 justify-content: center;
	}
	
	/* bloc formules */
	#contenaire_produit .bloc_formules .formule { 
		display: flex;
		      align-items: center;
	}
	#contenaire_produit .bloc_formules .formule .fleche {
		width: 0;
		height: 0;
		border-width: 25px 0 25px 20px;
		border-color: transparent transparent transparent #4671aa;
		border-style: solid;
	}
	#contenaire_produit .bloc_formules .formule.indisponible .fleche { border-color: transparent transparent transparent #6e6e6e; }
	
	/* bloc reservation */
	#contenaire_produit .bloc_reservation { position: relative; }
	#contenaire_produit .bloc_reservation .cadre_reservation {
		position: absolute;
		top: 50px;
		right: 0;
		left: 15px;
	}
	#contenaire_produit .bloc_reservation .cadre_reservation.animated {
		transition: top .5s ease-in;
	}
	
	/* bloc contenu */
	#contenaire_produit .bloc_contenu { display: flex; }
	#contenaire_produit .bloc_contenu .spacing_droite { flex: 370px 1 1; }
}

/* x <= 769px */
@media only screen and (max-width: 769px) {
	/* bloc formules */
	#contenaire_produit .bloc_formules .formule { margin: 20px 0; }
	#contenaire_produit .bloc_formules .formule.selected .fleche { display: none; }
	
	/* bloc reservation */
	#contenaire_produit .bloc_reservation { margin-top: 30px; }
}

/* x > 500px */
@media only screen and (min-width: 501px) {
	/* bloc formules */
	#contenaire_produit .bloc_formules .align.bas { 
		display: flex;
		      align-items: center;
		margin-top: 10px;
	}
	#contenaire_produit .bloc_formules .bloc_image { flex: 250px 0 1; }
	#contenaire_produit .bloc_formules .bloc_descr_court {
					flex: calc(100% - 250px) 1 1;
		padding-left: 15px;
	}
	#contenaire_produit .bloc_formules .bloc_reserver .btn_reserver { display: none; }
}

/* x <= 500px */
@media only screen and (max-width: 500px) {
	/* bloc formules */
	#contenaire_produit .bloc_formules .libelle_choix_formule { text-align: center; }
	#contenaire_produit .bloc_formules .titre_formule { 
		text-align: center; 
		font-size: 3.6vw;
	}
	#contenaire_produit .bloc_formules .tarif_formule { flex-shrink: 1; }
	#contenaire_produit .bloc_formules .tarif_formule .base_pax br { display: initial; }
	#contenaire_produit .bloc_formules .align.bas { margin-top: 8px; }
	#contenaire_produit .bloc_formules .bloc_image { background-color: #e3e6ed; }
	#contenaire_produit .bloc_formules .bloc_descr_court { margin-top: 5px; }
	#contenaire_produit .bloc_formules .bloc_reserver {
		margin-top: 15px;
		text-align: center;
	}
	#contenaire_produit .bloc_formules .bloc_reserver .btn_reserver {
		display: inline-block;
		background-color: #dc0000;
		color: #fff;
		padding: 6px;
		width: calc(100% / 3);
		max-width: 150px;
		text-align: center;
		border-radius: 8px;
		font-size: 15px;
		line-height: normal;
		        box-sizing: border-box;
	}
	#contenaire_produit .bloc_formules .bloc_reserver .en_savoir_plus {
		font-size: 15px;
		line-height: normal;
		padding-left: 5px;
		        box-sizing: border-box;
	}
	#contenaire_produit .bloc_formules .formule.indisponible .bloc_reserver .btn_reserver { background-color: #6e6e6e; }
	
	#contenaire_produit .bloc_formules .bloc_reserver.savoir_plus {
		display: flex;
		        align-items: center;
		        justify-content: right;
	}
	#contenaire_produit .bloc_formules .bloc_reserver.savoir_plus .btn_reserver { 
		        flex: calc(100% / 3) 0 1; 
		width: auto;
	}
	#contenaire_produit .bloc_formules .bloc_reserver.savoir_plus .en_savoir_plus { flex: calc(100% / 3) 0 1; }
	
	#contenaire_produit .bloc_formules .formule { margin: 20px 0; }
}

/* x <= 350px */
@media only screen and (max-width: 350px) {
	/* bloc formules */
	#contenaire_produit .bloc_formules .titre_formule { font-size: 16px; }
	#contenaire_produit .bloc_formules .bloc_reserver.savoir_plus .en_savoir_plus { flex-basis: auto; }
}
