﻿
/*#region RESERVATION*/

/*.contenu-contenus { max-width:700px; }*/

	.containerbtnreserver > a { 
		font-size:0;
		margin:0; padding:0;
		border:none; border-radius:0px;
		width:247px; height:133px;
		background:url(/images/reservation/restauration-reserver1.png) no-repeat;
	}
	.containerbtnreserver > a:hover { background-image:url(/images/reservation/restauration-reserver2.png); }


	.reservations { margin:0 0 0 30px; }

		.reservations .reservation {
			display:block;
			margin:20px 0 20px 0;
			transition:all 0.25s;
		}

			.reservations .reservation .titre {
				position:relative; display:inline-block;
				cursor:pointer;
				font-size:1.5rem; font-weight:400; color:#5e9868;
				padding:0px;
			}
				.reservations .reservation .titre::after {
					position:absolute; display:block; content:"";
					width:1px; height:1px;
					border:solid 7px white; border-left:solid 14px #5e9868;
					top:8px; right:-35px;
					transition:all 0.25s;
				}
				.reservations .reservation.ouvert .titre::after {
					transform:rotateZ(90deg); -ms-transform:rotateZ(90deg); -webkit-transform:rotateZ(90deg); 
					top:13px; right:-29px;
				}

			.reservations .reservation .formulaire {
				display:none;
				margin:0px 0px 0px 1px; padding:15px 20px;
				overflow:hidden;
				border:none; border-left:solid 2px #5e9868;
				border-radius:0;
				transition:none;
				min-width:0px; max-width:none;
				transition:all 0.25s;
			}
			.reservations .reservation .formulaire .container1 {
				display:block;
				max-width:750px;
				margin:25px 0 0 0; padding:0 0 0 15px;
			}

				.reservations .reservation a { }
				.reservations .reservation a:hover { text-decoration: underline; }

				.reservations .reservation .input { white-space:nowrap; }

				.reservations .reservation .dateheure select { display:inline; width:auto; margin-left:20px; }

				.reservations .reservation .input.nb input { width:60px; text-align:right; }
				.reservations .reservation .input-lbl .textbox { width:auto; display:inline-block; }


				.reservations .reservation .input.demande textarea { height:100px; }

				.reservations .reservation .explication {
					display:block;
					margin:0px 0px 10px 0px; padding:10px 15px;
					background-color:#f0f6f0;
					/*background-image:linear-gradient(to right, #e4e9e5, #e4e9e5, white);*/
					/*max-width:600px;*/ max-width:100%;
				}
/*
				.reservations .reservation[id$="divRepas"]		.explication { max-width:435px; }
				.reservations .reservation[id$="divFormation"]	.explication { max-width:435px; }
				.reservations .reservation[id$="divTable"]		.explication { max-width:435px; }
				.reservations .reservation[id$="divMenu"]		.explication { max-width:860px; }
				.reservations .reservation[id$="divAutre"]		.explication { max-width:500px; margin-bottom:0px; }
*/
/*
				.reservations .reservation[id$="divFormation"] .pdf { display:table; width:100%; margin:20px 0px 20px; }

					.reservations .reservation[id$="divFormation"] .pdf > div { display:table-cell; padding-right:20px; }
*/

	.reservations .reservation .ligne.dateresa input[type="date"] { max-width:180px; }

	.reservations .reservation table { width:100%; /*max-width:750px;*/ margin-bottom:25px; }
	.reservations .reservation table table { width:100%; margin-bottom:0; }
	.reservations .reservation .champs + table { margin-top:15px; }

			.reservations .reservation table tr th { 
				padding:5px 10px 10px 10px;
				font-size:0.95em; font-weight:600; line-height:1.1;
				text-align:center;
				vertical-align:middle;
			}
			.reservations .reservation table tr th:first-child { padding-left:0; }
			.reservations .reservation table tr th:last-child { padding-right:0; }

				.reservations .reservation table tr th.qt { color:#5e9868; }

			.reservations .reservation table tr td {
				padding:5px 10px 15px 10px;
				vertical-align:middle;
			}

			.reservations .reservation table tr:last-child td { padding-bottom:0; }

			.reservations .reservation table tr.l1 td {  }
			.reservations .reservation table tr.l2 td { padding-bottom:0; }

			.reservations .reservation table tr.l2 + tr.l1 td { padding-top:20px; }
			.reservations .reservation table tr.l2 + tr.l1.sl td { padding-top:10px; }

			.reservations .reservation table tr td:first-child { padding-left:0; }
			.reservations .reservation table tr td:last-child { padding-right:0; }

				.reservations .reservation table tr td.nom { position:relative; color:#5e9868; font-weight:600; padding-bottom:0px; }
				.reservations .reservation table tr td.descr { vertical-align:top; }

					.reservations .reservation table tr td.nom > span { 
						position:relative; display:inline-block; z-index:2; 
						background-color:white; 
						padding-right:5px; 
					}

					.reservations .reservation table tr td.nom::before {
						position:absolute; display:block; content:""; z-index:0;
						width:calc(100% - 20px); height:1px;
						top:calc(100% - 5px); left:10px;
						background-color:#5e9868;
						background-image:linear-gradient(to right, #5e9868, white);
					}
					.reservations .reservation table tr.sl td.nom::before {
						display:none; content:none;
					}

				.reservations .reservation table tr td.pdf { text-align:center; width:25px; }
					.reservations .reservation table tr td.pdf a::before { content:"\f1c1"; font-family:"Font Awesome 5 Free"; font-size:2.125rem; font-weight:bold; color:#b30b00; line-height:0.67; }

				.reservations .reservation table tr td.quantite { width:50px; }
					.reservations .reservation table tr td.quantite input { width:50px; text-align:right; }

	.reservations .reservation table input[type="checkbox"] + label,
	.reservations .reservation table input[type="radio"] + label {
		margin-top:0; margin-bottom:0
	}

	.reservations .reservation .textbox, .reservations .reservation select { margin-bottom:3px; }

/*
	.reservations .reservation .ctrlerreur input[type='checkbox'] + label::before, .reservations .reservation .ctrlerreur input[type='radio'] + label::before {
		border-color:#e66109;
	}
	.reservations .reservation .ctrlerreur input[type='checkbox'] + label::after, .reservations .reservation .ctrlerreur input[type='radio'] + label::after {
		background-color:#F0A06B;
	}
*/

/*#endregion RESERVATION*/

/*#region POPUP*/

	.popup.popup-horaire .popup-contenu .plusgros { font-size:1.15em; }

	.popup.popup-horaire .popup-contenu .vert { color:#357033; }

/*#endregion POPUP*/

/*#region RESPONSIVE*/

@media all and (max-width:750px) {

	.reservations { margin-left:20px; }

		.reservations .reservation .formulaire { padding-left:15px; padding-right:15px; }

			.reservations .reservation .formulaire .container1 { padding-left:10px; }
}

@media all and (max-width:640px) {

	.reservations { margin-left:10px; }

		.reservations .reservation .formulaire { padding-left:10px; padding-right:10px; }

			.reservations .reservation .formulaire .container1 { padding-left:5px; }

}

@media all and (max-width:520px) {

	.reservations { margin-left:0; }

		.reservations .reservation .formulaire { padding-left:5px; padding-right:5px; }


			.reservations .reservation table.tb1 tr { display:block; font-size:0; }

				.reservations .reservation table tr th,
				.reservations .reservation table tr td { font-size:1.0625rem; }

				.reservations .reservation table.tb1 tr th.qt { display:none; }
				.reservations .reservation table.tb1 tr th.dj { display:block; }

					.reservations .reservation table.tb1 tr th.dj > div > span {display:inline-block; width:99.9%;}

				.reservations .reservation table.tb1 tr td { display:inline-block; width:auto; }
				.reservations .reservation table.tb1 tr td.nom { display:block; }
				.reservations .reservation table.tb1 tr td.descr { width:calc(100% - 50px); padding-bottom:10px; }
				.reservations .reservation table.tb1 tr td.pdf { width:40px; padding-bottom:10px; }
				.reservations .reservation table.tb1 tr td.quantite { margin:0 0; width:49.9%; max-width:155px; }

					.reservations .reservation table.tb1 tr td.quantite:before {display:inline-block; margin:2px 5px; padding:0; font-size: 0.95em; color:#5e9868; }
					.reservations .reservation table.tb1 tr td.quantite.qt-adultes:before {content:"Adulte :";}
					.reservations .reservation table.tb1 tr td.quantite.qt-enfants:before {content:"Enfant :";}

					.reservations .reservation table.tb1 tr td.quantite input { display:inline-block; }


			.reservations .reservation._divFormation .formulaire .champs { display:block; }
				.reservations .reservation._divFormation .formulaire .ligne { display:block; }
					.reservations .reservation._divFormation .formulaire .ligne > .input.preciser { display:block; width:auto; }

				.reservations .reservation._divFormation .formulaire .ligne.nomformation { display:block; }
					.reservations .reservation._divFormation .formulaire .ligne.nomformation > label,
					.reservations .reservation._divFormation .formulaire .ligne.nomformation > .input { display:block; width:auto; }
					.reservations .reservation._divFormation .formulaire .ligne.nomformation > .input { padding-top:0; }

		.reservations .reservation._divFormation table.stbf,
			.reservations .reservation._divFormation table.stbf tr { position:relative; display:block; font-size:0; }

			.reservations .reservation._divFormation table.stbf tr td { position:unset; display:block; padding-left:5px; width:auto; }

			.reservations .reservation._divFormation table.stbf tr td:first-child:empty { display:none; padding-left:0; padding-right:0; font-size:0; }

			.reservations .reservation._divFormation table.stbf tr td.nom { padding-right:60px; }

			.reservations .reservation._divFormation table.stbf tr td.descr,
			.reservations .reservation._divFormation table.stbf tr td.pdf { display:inline-block; }

			.reservations .reservation._divFormation table.stbf tr td.descr { width:calc(100% - 50px); }
			.reservations .reservation._divFormation table.stbf tr td.pdf { width:50px; text-align:right; padding-right:10px; padding-top:15px; }

			.reservations .reservation._divFormation table.stbf tr td.quantite { padding:0; }
				.reservations .reservation._divFormation table.stbf tr td.quantite > ._cbChoix { position:absolute; top:-22.5px; right:0; }


			.reservations .reservation._divAutre .formulaire .champs { display:block; }
				.reservations .reservation._divAutre .formulaire .ligne { display:block; }
					.reservations .reservation._divAutre .formulaire .ligne > .input.preciser { display:block; width:auto; }

				.reservations .reservation._divAutre .formulaire .ligne { display:block; }
					.reservations .reservation._divAutre .formulaire .ligne > label,
					.reservations .reservation._divAutre .formulaire .ligne > .input,
					.reservations .reservation._divAutre .formulaire .ligne > .input-lbl { display:block; width:auto; }
					.reservations .reservation._divAutre .formulaire .ligne > .input,
					.reservations .reservation._divAutre .formulaire .ligne > .input-lbl { padding-top:0; }

}

@media all and (max-width:380px) {

	.reservations .reservation .titre { font-size:1.4375rem; letter-spacing:-0.2px; }
}

@media all and (max-width:359px) {

	.reservations .reservation .titre { max-width:220px; font-size:1.375rem; }
}

/*#endregion RESPONSIVE*/
