body {
	position         : relative;
	background-color : var(--background-color-ponsot) !important;
}

section {
	overflow : hidden !important;
}

::selection {
	color            : var(--background-color-ponsot);
	background-color : var(--primary-color-ponsot);
}

.error404 #primary {
	margin  : 0 !important;
	padding : 0 !important;
}

.error404 .ast-container {
	margin  : 0 !important;
	padding : 0 !important;
}

/* ========== Age Gate ========== */
.age-gate__heading img{
	max-height: 160px;
	padding-bottom: 30px;
}

.age-gate__headline{
	color: var(--text-color-ponsot) !important;
}

/* ========== END Age Gate ========== */


/* ========== Lenis ========== */
html.lenis,
html.lenis body {
	height : auto;
}

.lenis.lenis-smooth {
	scroll-behavior : auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior : contain;
}

.lenis.lenis-stopped {
	overflow : hidden;
}

.lenis.lenis-smooth iframe {
	pointer-events : none;
}

/* ========== End Lenis ========== */

.section__sub-title {
	font-family    : var(--secondary-font) !important;
	font-size      : var(--sub-title-size) !important;
	font-weight    : 400 !important;
	color          : var(--primary-color-ponsot) !important;
	letter-spacing : 1px;
	text-transform : uppercase !important;
}

.section__title {
	font-family    : var(--primary-font) !important;
	font-size      : var(--h2-title-size) !important;
	font-weight    : 400 !important;
	line-height    : 50px !important;
	color          : var(--text-color-ponsot) !important;
	letter-spacing : 1px !important;
	text-transform : uppercase !important;
	margin-bottom  : 30px !important;
}

.section__text {
	font-family : var(--text-font-ponsot) !important;
	font-size   : var(--text-size) !important;
	font-weight : 400 !important;
	line-height : 32px !important;
	color       : var(--text-color-ponsot) !important;
}

.section__text li::marker {
	color : var(--primary-color-ponsot) !important;
}

.section__text ul {
	list-style-type : disc;
}


@media (max-width : 764px) {
	.section__title {
		font-size   : var(--h2-title-size--mobile) !important;
		line-height : 40px !important;
	}
}

/* ==================== Button ==================== */
.section__button-container {
	display         : flex;
	justify-content : center;
	align-items     : center;
	margin-top      : 40px;
	margin-left     : -12px;
	padding         : 12px;
}

.section__button,
.section__button--gray {
	font-family      : var(--text-font-ponsot) !important;
	font-size        : 15px;
	color            : var(--primary-color-ponsot) !important;
	text-align       : center;
	text-decoration  : none !important;
	letter-spacing   : 2px;
	text-transform   : uppercase !important;
	padding          : 12px 80px !important;
	transition       : 0.3s;
	border           : 2px solid var(--primary-color-ponsot) !important;
	border-radius    : 100px;
	background-color : var(--background-color-ponsot) !important;
}

.section__button::selection {
	color            : var(--primary-color-ponsot);
	background-color : var(--background-color-ponsot);
}

.section__button--gray::selection {
	color            : var(--primary-color-ponsot);
	background-color : var(--background-color-secondary-ponsot);
}

.section__button:hover {
	color            : var(--background-color-ponsot) !important;
	background-color : var(--primary-color-ponsot) !important;
}

.section__button--gray {
	background-color : var(--background-color-secondary-ponsot) !important;
}

.section__button--gray:hover {
	color            : var(--background-color-secondary-ponsot) !important;
	background-color : var(--primary-color-ponsot) !important;
}

@media (max-width : 764px) {
	.section__button-container {
		margin-left : 0;
	}
}


/* ==================== END Button ==================== */


.section__sub-title,
.section__title,
.section__text,
.section__button-container {
	opacity    : 0;
	transform  : translateY(20px); /* Position légèrement en dessous */
	transition : all 0.3s ease-out;
}

.elementor-editor-active .section__sub-title,
.elementor-editor-active .section__title,
.elementor-editor-active .section__text,
.elementor-editor-active .section__button-container {
	opacity   : 1 !important;
	transform : translateY(0px) !important;
}


@media (max-width : 764px) {
	body {
		overflow-x : hidden !important;
		width      : 100vw;
		max-width  : 100vw;
	}
}
