@import url('https://fonts.googleapis.com/css2?family=Public+Sans:wght@100..900&display=swap');

html, body, button{
	font-family: 'Public Sans', sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	}

::-webkit-scrollbar {
	width: 8px;
	}
::-webkit-scrollbar-track {
	background: transparent;
	}
::-webkit-scrollbar-thumb {
	background: rgba(0, 0, 0, 0.2);
	}
::-webkit-scrollbar-thumb:hover {
	background: rgba(0, 0, 0, 0.4);
	}
::-webkit-scrollbar-button {
	display: none;
	}

body.aox-app-is-loading{
	overflow: hidden;
	}

#exposeMask{
	opacity: 0.2 !important;
	}

/* ======================================== */
/* obj_loading-voeux_2026
/* ======================================== */

.obj_loading-voeux_2026{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 9998;
	left: 0; top: 0;
	width: 100vw; height: 100vh;
	background: rgba(31,23,29,1);
	visibility: visible;
	opacity: 1;
	transition: all .5s ease;
	pointer-events: none;
	-webkit-backdrop-filter: blur(17px);
	backdrop-filter: blur(17px);
	}
.obj_loading-voeux_2026.is-ready{
	background: rgba(31,23,29,0.6);
	}
.obj_loading-voeux_2026 .ctn_loading-voeux_2026{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: var(--aox-600px);
	}
.obj_loading-voeux_2026 .i_spinner{
	position: absolute;
	left: 50%; bottom: 15vh;
	margin-left: calc(var(--aox-50px) * -1);
	width: var(--aox-100px); height: var(--aox-100px);
	border-radius: 100vw;
	border: 2px solid #fff;
	border-top-color: transparent;
	animation: loadingRotationLoop 2s linear infinite;
	}
.obj_loading-voeux_2026.is-ready .i_spinner{
	display: none;
	}
.obj_loading-voeux_2026 .i_spinner-pct{
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: 50%; bottom: 15vh;
	margin-left: calc(var(--aox-52px) * -1);
	width: var(--aox-104px); height: var(--aox-104px);
	font-size: var(--aox-fs-18px);
	color: #fff;
	font-weight: 600;
	}
.obj_loading-voeux_2026.is-ready .i_spinner-pct{
	display: none;
	}
.obj_loading-voeux_2026 .t_title{
	display: flex;
	flex-direction: column;
	align-items: center;
	}
.obj_loading-voeux_2026 .t_title .t_style-01{
	transition-delay: 0s;
	}
.obj_loading-voeux_2026 .t_intro{
	/* margin-bottom: var(--aox-130px); */
	margin-bottom: 11vh;
	padding: 0 var(--aox-20px);
	font-size: var(--aox-fs-32px); line-height: 1.2;
	text-align: center;
	color: #fff;
	opacity: 0;
	transform: translateY(-20px);
	transition: all .5s ease .3s;
	}
.obj_loading-voeux_2026.is-ready .t_intro{
	opacity: 1;
	transform: translateY(0);
	}
.obj_loading-voeux_2026 .t_style-01{
	font-size: var(--aox-fs-18px);
	text-transform: uppercase;
	font-weight: 900;
	color: #FDC75F;
	opacity: 0;
	transform: translateY(-20px);
	transition: all .5s ease .6s;
	}
.obj_loading-voeux_2026 .t_style-01.var_white{
	color: #fff;
	}
.obj_loading-voeux_2026.is-ready .t_style-01{
	opacity: 1;
	transform: translateY(0);
	}
.obj_loading-voeux_2026 .v_logo-tyom{
	position: relative;
	margin-top: var(--aox-20px);
	/* margin-bottom: var(--aox-50px); */
	margin-bottom: 5vh;
	width: var(--aox-298px); height: var(--aox-343px);
	}
.obj_loading-voeux_2026 .v_logo-tyom img{
	position: absolute;
	left: 0; top: 0;
	width: 100%; height: 100%;
	animation: soft-pulse 2s ease-in-out infinite;
	}
.obj_loading-voeux_2026 .v_logo-tyom .v_logo-tyom_2{
    animation-delay: 0.2s;
	}
.obj_loading-voeux_2026 .v_logo-tyom .v_logo-tyom_3{
    animation-delay: 0.1s;
	}
.obj_loading-voeux_2026 .v_logo-tyom .v_logo-tyom_4{
    animation-delay: 0.3s;
	}
/* .obj_loading-voeux_2026:not(.is-ready) .v_logo-tyom{
	animation: loadingLogoLoop .8s cubic-bezier(0.32, 0, 0.67, 0) alternate infinite;
	} */

.obj_loading-voeux_2026 .i_scroll{
	position: relative;
	margin-top: var(--aox-16px);
	width: var(--aox-12px); height: var(--aox-39px);
	opacity: 0;
	transition: all .5s ease .9s;
	}
.obj_loading-voeux_2026.is-ready .i_scroll{
	opacity: 1;
	}
.obj_loading-voeux_2026 .i_scroll-1{
	position: absolute;
	left: 0; top: 0;
	width: var(--aox-12px); height: var(--aox-24px);
	background: #fff;
	border-radius: 100vw;
	animation: loadingScrollLoop 2.25s linear infinite;
	}
.obj_loading-voeux_2026 .i_scroll-2{
	position: absolute;
	left: var(--aox-5px); top: 0;
	width: var(--aox-2px); height: var(--aox-39px);
	background: #fff;
	border-radius: 100vw;
	}

@keyframes loadingLogoLoop{
	0% { opacity: 1; }
	100% { opacity: 0.2; }
}
@keyframes loadingRotationLoop{
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

@keyframes loadingScrollLoop{
	0% { transform: scale(0); height: var(--aox-12px); top: calc(var(--aox-6px) * -1); }
	10% { transform: scale(1); height: var(--aox-12px); top: calc(var(--aox-6px) * -1); }
	20% { transform: scale(1); height: var(--aox-24px); top: calc(var(--aox-6px) * -1); }
	30% { transform: scale(1); height: var(--aox-24px); top: var(--aox-15px); }
	40% { transform: scale(1); height: var(--aox-12px); top: var(--aox-27px); }
	50% { transform: scale(0); height: var(--aox-12px); top: var(--aox-33px); }
	100% { transform: scale(0); height: var(--aox-12px); top: var(--aox-33px); }
}

@keyframes soft-pulse{
	0% { transform: scale(1); }
	50% { transform: scale(1.1); }
	100% { transform: scale(1); }
}

@media screen and (max-width: 767px) {

	.obj_loading-voeux_2026 .v_logo-tyom{
		width: var(--aox-238px); height: var(--aox-274px);
		}
	.obj_loading-voeux_2026 .t_intro{
		font-size: var(--aox-fs-28px);
		}
	.obj_loading-voeux_2026 .t_style-01{
		font-size: var(--aox-fs-16px);
		}

}

/* ======================================== */
/* obj_progress-voeux_2026
/* ======================================== */

.obj_progress-voeux_2026{
	position: fixed;
	z-index: 3;
	left: 0; top: 0;
	width: calc(100vw - 14px); height: 4px;
	padding: 2px;
	}
.obj_progress-voeux_2026 .ctn_progress-voeux_2026{
	width: 100%; height: 100%;
	background: rgba(31,23,29,0.2);
	border-radius: 100vw;
	overflow: hidden;
	}
.obj_progress-voeux_2026 .ctn_progress-voeux_2026 div{
	width: 100%; height: 100%;
	background: rgba(31,23,29,1);
	transform: scaleX(0);
	transform-origin: left;
	}

.obj_progress-voeux_2026 .bt_nav-goto{
	display: flex;
	align-items: center;
	position: absolute;
	left: var(--aox-6px); top: calc(100% + var(--aox-4px));
	padding: 0 var(--aox-24px);
	height: var(--aox-42px);
	font-size: var(--aox-fs-12px);
	font-weight: 600;
	text-transform: uppercase;
	color: #fff;
	background: rgba(31,23,29,1);
	border-radius: 100vw;
	transition: all .3s ease;
	}
.obj_progress-voeux_2026 .bt_nav-goto:hover{
	background: rgba(31,23,29,0.8);
	}
.obj_progress-voeux_2026 .bt_nav-goto span{
	display: flex;
	gap: var(--aox-5px);
	}
.obj_progress-voeux_2026 .bt_nav-goto svg{
	width: var(--aox-13px); height: var(--aox-13px);
	}
.obj_progress-voeux_2026 .bt_nav-goto .t_close{
	display: none;
	}
.obj_progress-voeux_2026.is-visible .bt_nav-goto .t_fast{
	display: none;
	}
.obj_progress-voeux_2026.is-visible .bt_nav-goto .t_close{
	display: flex;
	}
.obj_progress-voeux_2026 .ctn_nav-goto{
	position: absolute;
	left: var(--aox-6px); top: calc(100% + var(--aox-48px));
	display: flex;
	flex-direction: column;
	gap: 2px;
	transform: translateX(-125%);
	transition: transform .5s ease;
	}
.obj_progress-voeux_2026.is-visible .ctn_nav-goto{
	transform: translateX(0);
	}
.obj_progress-voeux_2026 .bt_goto{
	padding: var(--aox-14px) var(--aox-18px);
	font-size: var(--aox-fs-12px);
	font-weight: 600;
	text-transform: uppercase;
	color: #fff;
	background: rgba(31,23,29,0.6);
	border-radius: 100vw;
	transition: all .3s ease;
	}
.obj_progress-voeux_2026 .bt_goto.is-current{
	background: rgba(31,23,29,1);
	color: #FDC75F;
	box-shadow: inset 0 0 0 2px #FDC75F;
	}
.obj_progress-voeux_2026 .bt_goto.is-visited{
	background: rgba(31,23,29,1);
	/* color: #FDC75F; */
	/* box-shadow: inset 0 0 0 2px #FDC75F; */
	}
.obj_progress-voeux_2026 .bt_goto:hover{
	color: #FDC75F;
	box-shadow: inset 0 0 0 2px #FDC75F;
	}

@media screen and (max-width: 767px) {

	.obj_progress-voeux_2026{
		width: calc(100vw - 4px);
		}

}

/* ======================================== */
/* sct_canvas-voeux_2026
/* ======================================== */

.sct_canvas-voeux_2026{
	position: fixed;
	left: 0; top: 0;
	z-index: 2;
	width: 100vw; height: 100vh;
	/* transform: scale(1.25); */
	/* transition: all 1s ease; */
	}
/* body:not(.aox-app-is-loading) .sct_canvas-voeux_2026{
	transform: scale(1);
	} */
.sct_canvas-voeux_2026 canvas{
	width: 100% !important; height: 100% !important;
	background: #000;
	}

/* ======================================== */
/* obj_popin
/* ======================================== */

body.aox-popin-is-opened{
	overflow: hidden;
	}
.obj_popin.var_voeux-2026{
    padding: 0;
    overflow-y: hidden;
    max-height: unset;
	}
.obj_popin.var_voeux-2026 > .content{
	width: 100%; height: 100%;
	overflow-y: auto;
	}

.obj_popin.var_voeux-2026.var_full > .content{
	overflow-y: hidden;
	}
.obj_popin.var_voeux-2026.var_full .obj_popin-voeux-2026{
	padding: 0;
	height: 100%;
	}
.obj_popin.var_voeux-2026.var_full .obj_popin-voeux-2026 .ctn_popin-voeux-2026{
	height: 100%;
	}
.obj_popin.var_voeux-2026.var_full .obj_popin-voeux-2026 .ctn_popin-voeux-2026 iframe{
	width: 100%; height: 100%;
	}

@media screen and (min-width: 768px) {

	.obj_popin.var_voeux-2026{
		left: auto !important; right: var(--aox-10px);
		transform: translate(0, -50%);
		width: 33vw; height: calc(100vh - var(--aox-20px));
		}
	.obj_popin.var_voeux-2026 .obj_popin-voeux-2026{
		padding: var(--aox-60px);
		}

}

@media screen and (max-width: 767px) {

	.obj_popin.var_voeux-2026{
		top: 0 !important; bottom: auto !important;
		left: 0 !important;
		transform: translate(0, 0);
		width: 100vw; height: 100dvh;
		max-width: unset;
		}
	.obj_popin.var_voeux-2026 .obj_popin-voeux-2026{
		padding: var(--aox-40px);
		}

}

/* ======================================== */
/* obj_video-texture
/* ======================================== */

.obj_video-texture{
	position:absolute;
	left:0; top:0;
	width:1px; height:1px;
	overflow:hidden;
	opacity:0;
	}

/* ======================================== */
/* obj_bottom-interface
/* ======================================== */

.obj_bottom-interface{
	position:fixed;
	z-index: 3;
	left:0; bottom:0;
	width: 100%;
	transform: translateY(110%);
	transition: transform .5s ease;
	}
.obj_bottom-interface.is-visible{
	transform: translateY(0);
	}
.obj_bottom-interface .ctn_bottom-interface{
	display: flex;
	justify-content: center;
	gap: var(--aox-10px);
	padding: 0 var(--aox-20px) var(--aox-70px) var(--aox-20px);
	}
.obj_bottom-interface .bt_bottom-popin{
	padding: var(--aox-32px) var(--aox-64px);
	font-size: var(--aox-fs-18px);
	text-transform: uppercase;
	font-weight: 600;
	color: #fff;
	background: #000;
	border-radius: 100vw;
	transition: all .3s ease;
	}
body.aox-popin-is-opened .obj_bottom-interface .bt_bottom-popin{
	opacity: 0.2;
	}
.obj_bottom-interface .bt_bottom-popin:hover{
	color: #000;
	background: #fff;
	}

/* ======================================== */
/* obj_orientation-mobile
/* ======================================== */

.obj_orientation-mobile{
	display: none;
	}

@media screen and (pointer: coarse) and (orientation: landscape) {
	.obj_orientation-mobile{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: var(--aox-20px);
		position: fixed;
		z-index: 20000;
		left: 0; top: 0;
		width: 100vw; height: 100vh;
		background: rgba(31,23,29,1);
		}
	.obj_orientation-mobile p{
		font-size: var(--aox-fs-24px); line-height: 1.2;
		color: #fff;
		text-align: center;
		}
	.obj_orientation-mobile svg{
		width: var(--aox-100px); height: var(--aox-100px);
		fill: #fff;
		}
}

/* ======================================== */
/* obj_loading-voeux_2026
/* ======================================== */

.obj_outro-voeux_2026{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 10000;
	left: 0; top: 0;
	width: 100vw; height: 100vh;
	background: rgba(31,23,29,0.6);
	pointer-events: none;
	-webkit-backdrop-filter: blur(17px);
	backdrop-filter: blur(17px);
	opacity: 0;
	}
.obj_outro-voeux_2026.is-pointer{
	pointer-events: all;
	}
.obj_outro-voeux_2026 .ctn_outro-voeux_2026{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: var(--aox-600px);
	}
.obj_outro-voeux_2026 .t_title{
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-top: 12.5vh;
	font-size: var(--aox-fs-36px);
	text-transform: uppercase;
	font-weight: 900;
	color: #fff;
	}
.obj_outro-voeux_2026 .t_title img{
	width: var(--aox-260px); height: var(--aox-101px);
	}
.obj_outro-voeux_2026 .t_outro-1{
	margin-top: var(--aox-16px);
	font-size: var(--aox-25px);
	color: #fff;
	text-align: center;
	}
.obj_outro-voeux_2026 .t_outro-2{
	margin-top: 12.5vh;
	font-size: var(--aox-20px);
	color: #fff;
	text-align: center;
	}
.obj_outro-voeux_2026 .bt_grey-outro{
	display: flex;
	align-items: center;
	gap: var(--aox-6px);
	padding: var(--aox-16px) var(--aox-32px);
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: var(--aox-fs-14px);
	font-weight: 600;
	text-transform: uppercase;
	color: #fff;
	border-radius: 100vw;
	background: rgba(145,133,140,0.4);
	transition: all .3s ease;
	}
.obj_outro-voeux_2026 .bt_grey-outro:hover{
	background: #000;
	}
.obj_outro-voeux_2026 .bt_grey-outro svg{
	width: var(--aox-13px); height: var(--aox-13px);
	}
.obj_outro-voeux_2026 .ctn_outro-buttons{
	margin-top: var(--aox-16px);
	display: flex;
	gap: var(--aox-4px);
	}
.obj_outro-voeux_2026 .v_logo-aox_2026{
	margin-top: 4.3vh;
	width: var(--aox-227px); height: var(--aox-47px);
	}