.lavalTicketsProcess > section { max-width: var(--wrap-width); margin: 0 auto; }

.modal .compo-formule h2 { display: none; }
.compo-formule .group > .name { margin: 6px 0; }
.compo-formule select { font-size: 11px; height: 32px; }

.basket.default .formule { margin: 10px 0; }
.basket.default .formule .group { color: var(--main-color); }

.basket.default .detail { margin: 10px 0; line-height: 1.3em; }

.basket.default .resa { margin: 10px 0; }
.basket.default .resa .period { font-size: 14px; }
.basket.default .resa .info { margin-top: 3px; font-size: 11px; color: var(--type-warning); font-style: italic; }

.product-resa { border: 1px solid #cbd6e2; border-radius: 5px; }
.product-resa .date > input { text-align: center; font-size: 14px; border: none; }
.product-resa .period { overflow-y: auto; }
.product-resa .period > ul { max-height: 300px; padding: 20px 0 20px 50px; }
.product-resa .period > ul > li { height: 26px; cursor: pointer; position: relative; border-style: solid; border-color: #ccc; border-width: 1px 0 1px 0; }
.product-resa .period > ul > li:not(:first-child) { margin-top: -1px; }
.product-resa .period > ul > li:last-child { margin-bottom: 20px; }

.product-resa .period > ul > li:before { content: attr(data-start); position: absolute; font-size: 10px; left: -40px; top: -6px;}
.product-resa .period > ul > li:last-child:after { content: attr(data-end); position: absolute; font-size: 10px; left: -40px; bottom: -6px; }
/*.product-resa .period > ul > li:nth-child(even) { background: #ecfcff; }*/

.product-resa .period > ul > li.out { background: repeating-linear-gradient(-65deg, #ccc, #ccc 1px, var(--type-error) 1px, var(--type-error) 2px); border-color: var(--type-error); z-index: 2;}
.product-resa .period > ul > li.reserved { background: repeating-linear-gradient(-65deg, #ccc, #ccc 1px, #111 1px, #111 2px); border-color: #111; z-index: 2;}
.product-resa .period > ul > li.selected { background: #0088a8; border-color: #0088a8; z-index: 1; }

.product-resa .period > ul > li > .selectable { position: absolute; top: 0; left: 0; width: 100%; height: 100%; user-select: none; -webkit-user-select: none; -moz-user-select: none; }
.product-resa .period > ul > li > .stock { display: flex; justify-content: center; align-items: center; position: absolute; margin: 0; top: 0; right: 0; width: 26px; height: 26px; }
.product-resa .period > ul > li > .stock[data-stock]:before { display: flex; justify-content: center; align-items: center; margin: auto; content: attr(data-stock); border-radius: 50%; height: 18px; width: 18px; font-size: 9px; font-weight: bold; background-color: #ff6160; color: #fff; }

@media all and (max-width: 800px) {
	.product-resa .period > ul > li { height: 32px; }
	.product-resa .period > ul > li > .selectable { display: flex; justify-content: center; align-items: center; width: 32px; }
	.product-resa .period > ul > li > .selectable:before { content: '\f10c'; font-family: 'FontAwesome'; font-size: 7px;}
}

#productResa.modal .product-resa { margin-bottom: 20px; }
.modal.shop .resa { margin: 5px 0; }
.modal.shop .formule { margin: 10px 0; }
.modal.shop .formule .group { color: var(--main-color); }
.modal.shop .formule .product { padding: 0; }

.furniture-credits { display: flex; max-width: 300px; margin: 25px auto; font-size: 14px; border-radius: 8px; overflow: hidden; border: 1px solid var(--main-color); }
.furniture-credits > .label { flex: 1 1 70%; background: var(--main-color); padding: 10px; color: #fff; font-weight: bold; text-align: center; }
.furniture-credits > .amount { flex: 1 1 30%; background: #eee; padding: 10px; text-align: center; }

.stand-delivery .enable-delivery { display: flex; align-items: center; }
.stand-delivery .enable-delivery > label { padding-left: 10px; font-size: 14px; cursor: default;}
.stand-delivery .delivery-date input.date-field { max-width: 300px; text-align: center; }

.corner-module.donation .enable-donation { display: flex; align-items: center; }
.corner-module.donation .enable-donation > label { padding-left: 10px; font-size: 14px; cursor: default;}
.corner-module.donation .donation-amount input { text-align: center; max-width: unset; }
.corner-module.donation .donation-amount .quantity-modifier { margin-bottom: 15px; max-width: 300px; }
.corner-module.donation .donation-amount .quantity-modifier > .plus,
.corner-module.donation .donation-amount .quantity-modifier > .minus { flex: 1 0 26px; }
.corner-module.donation .donation-amount > div { margin: 5px 0; font-size: 14px; }
.corner-module.donation .donation-amount > div > span { font-weight: bold; }

.yn-checkbox { display: block; position: relative; cursor: pointer; width: 70px; height: 28px; border-radius: 5px; background: #ddd; border: 1px solid #bbb; box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.2); }
.yn-checkbox input { position: absolute; opacity: 0; height: 0; width: 0;  }
.yn-checkbox .state::before { font-family: 'FontAwesome'; position: absolute; top: 2px; bottom: 2px; justify-content: center; align-items: center; width: 58%; border-radius: 3px; color: #fbfbfb; font-size: 12px; z-index: 1; }
.yn-checkbox .state-yes::before { display: none; content: '\f00c'; left: 2px; background: var(--type-success); box-shadow: inset 0 0 8px rgba(200, 200, 200, 0.25); }
.yn-checkbox .state-no::before { display: flex; content: '\f00d'; right: 2px; background: var(--type-error); box-shadow: inset 0 0 8px rgba(0, 0, 0, 0.25); }
.yn-checkbox input:checked ~ .state-yes::before { display: flex; }
.yn-checkbox input:checked ~ .state-no::before { display: none; }
.yn-checkbox .switch { position: absolute; background: #c6c6c6; left: 0; top: 0; bottom: 0; width: 42%; border-radius: 5px; transition: left 0.3s ease; z-index: 2; }
.yn-checkbox .switch::before { display: flex; justify-content: center; align-items: center; content: '| | |'; font-size: 13px; color: #777; height: 100%; width: 100%; text-align: center; padding-bottom: 5px; }
.yn-checkbox input:checked ~ .switch { left: 58%; }

.my-account .content-block.with-picto { position: relative; margin-top: 40px; z-index: 0; }
/*.my-account .content-block.with-picto::before { position: absolute; top: 0; left: 0; display: block; content: ''; height: 10px; width: 100%; background: #ff6160; z-index: 999; cursor: default; }
*/
.my-account .content-block.with-picto .picture { position: relative; }
.my-account .content-block.with-picto .picture::after {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	content: '';
	background: var(--item-color, #4c3889);
	opacity: 0.8;
	transition: opacity 0.6s ease;
}
.my-account .content-block.with-picto:hover .picture::after { opacity: 0.6; }
.my-account .content-block.with-picto article > .content { z-index: 2000; position: absolute; }
.my-account .content-block.with-picto:hover article { opacity: 1; }

.my-account .content-block.with-picto article { position: absolute; display: flex; justify-content: center; align-items: center; top: 0; left: 0; width: 100%; height: 100%; z-index: 3000; background-color: unset; }
.my-account .content-block.with-picto article > .content { display: flex; flex-direction: column; align-items: center; }
.my-account .content-block.with-picto article > .content > .picto { display: block; margin-bottom: 20px; }
.my-account .content-block.with-picto article > .content > .picto > img { display: block; height: 120px; width: 120px; padding: 10px; object-fit: contain; transition: filter 0.5 ease; }

#sendTeamForm .contact { display: flex; flex-direction: column; max-width: 220px; margin: 15px auto; overflow: hidden; border-radius: 5px 5px 0 0; border: 1px solid var(--main-color); }
#sendTeamForm .contact label { background: var(--main-color); font-size: 15px; color: #fff; padding: 5px 10px; text-align: center; }
#sendTeamForm .contact > div { padding: 10px; text-align: center; }
#sendTeamForm .contact > div .fullname { font-size: 14px; }
#sendTeamForm .contact > div .email { font-size: 12px; color: #555; }
#sendTeamForm .language {  }
#sendTeamForm .language > label { display: block; font-size: 14px; }
#sendTeamForm .language > select { margin: 15px 0; }
#sendTeamForm .preview { display: none; }
#sendTeamForm .preview > label { display: block; font-size: 14px; }
#sendTeamForm .customMessage > label { display: block; font-size: 14px; }
#sendTeamForm .customMessage textarea { min-height: 100px; }
@media all and (min-width: 900px) {
	#sendTeamForm { max-width: 800px; }
	#sendTeamForm .preview { display: block; height: 300px; margin-top: 15px; }
	#sendTeamForm .preview > iframe { min-height: unset; }
}

[data-c="4305"] > .ct-blocs { justify-content: start; margin-top: 20px }
[data-c="4305"] > .ct-blocs > .downloadfile { flex: 0 0 auto; }
[data-c="4305"] > .ct-blocs > .downloadfile > a > .bloc-download { display: none; }
[data-c="4305"] > .ct-blocs > .downloadfile > a.btn { margin: 0; line-height: 1.3; }