/* ==========================================================================
 # Exemple block and X_Exemple component
========================================================================== */
/* .teaser        <-- normal element (Block) */
/* .teaser__title <-- sub-element    (Element) */
/* .teaser--big   <-- variant        (Modifier) */
body div [class*='wp-block-'].has-fullheight,
body .entry [class*='wp-block-'].has-fullheight {
	min-height: 100vh;
}
body div [class*='wp-block-'].has-fullheight iframe,
body .entry [class*='wp-block-'].has-fullheight iframe {
	min-height: 100vh;
}
body div [class*='wp-block-'].has-fullheight iframe.wp-block-image img,
body .entry [class*='wp-block-'].has-fullheight iframe.wp-block-image img {
	min-height: 100vh;

	object-fit: cover;
}

body .has-nomargin {
	margin: 0;
}

body .has-nopadding {
	padding: 0;
}

/* Sauvergarde retrocompatibilité */
/* Max width
----------------------------------------------- */
body .has-mobile-width {
	max-width: var(--breakpoint-mobile, 690px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-tablet-medium-width {
	max-width: var(--breakpoint-tablet-medium, 782px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-tablet-width {
	max-width: var(--breakpoint-tablet, 1000px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-tablet-big-width {
	max-width: var(--breakpoint-tablet-big, 1200px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-alignwide-width {
	max-width: var(
		--theme-default-editor,
		var(--theme-block-wide-max-width)
	) !important;
	margin-right: auto;
	margin-left: auto;
	width: var(--theme-default-editor, var(--theme-block-width)) !important;
}

body .has-default-width {
	max-width: var(
		--theme-default-editor,
		var(--theme-block-max-width)
	) !important;
	margin-right: auto;
	margin-left: auto;
	width: var(--theme-default-editor, var(--theme-block-width)) !important;
}

/* Half Columns
----------------------------------------------- */
@media screen and (max-width: 999.98px) {
	body .has-half-col.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
	}
	body
		.has-half-col.wp-block-columns:not(.is-not-stacked-on-mobile)
		> .wp-block-column {
		flex-basis: 45%;
		flex-grow: 1;
	}
}

@media screen and (max-width: 781.98px) {
	body .has-medium-half-col.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
	}
	body
		.has-medium-half-col.wp-block-columns:not(.is-not-stacked-on-mobile)
		> .wp-block-column {
		flex-basis: 45%;
		flex-grow: 1;
	}
}

@media screen and (max-width: 1199.98px) {
	body .has-big-half-col.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
	}
	body
		.has-big-half-col.wp-block-columns:not(.is-not-stacked-on-mobile)
		> .wp-block-column {
		flex-basis: 45%;
		flex-grow: 1;
	}
}

/* Break Columns
----------------------------------------------- */
@media screen and (max-width: 999.98px) {
	body .has-break-col.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}

@media screen and (max-width: 781.98px) {
	body .has-medium-break-col.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}

@media screen and (max-width: 1199.98px) {
	body .has-big-break-col.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}
/* END - Sauvergarde retrocompatibilité */

/* Reverse Columns
----------------------------------------------- */
@media screen and (max-width: 599.98px) {
	body .has-reversecol-mobile-small {
		display: flex;
		flex-direction: column-reverse;
	}
}

@media screen and (max-width: 689.98px) {
	body .has-reversecol-mobile {
		display: flex;
		flex-direction: column-reverse;
	}
}

@media screen and (max-width: 781.98px) {
	body .has-reversecol-tablet-small {
		display: flex;
		flex-direction: column-reverse;
	}
}

@media screen and (max-width: 999.98px) {
	body .has-reversecol-tablet {
		display: flex;
		flex-direction: column-reverse;
	}
}

@media screen and (max-width: 1199.98px) {
	body .has-reversecol-tablet-big {
		display: flex;
		flex-direction: column-reverse;
	}
}

@media screen and (max-width: 999.98px) {
	body .has-reverse-col {
		display: flex;
		flex-direction: column-reverse;
	}
}

/* Max width
----------------------------------------------- */
body .has-width-mobile-small {
	max-width: var(--breakpoint-mobile-small, 600px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-width-mobile {
	max-width: var(--breakpoint-mobile, 690px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-width-tablet-small {
	max-width: var(--breakpoint-tablet-medium, 782px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-width-tablet {
	max-width: var(--breakpoint-tablet, 1000px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-width-tablet-big {
	max-width: var(--breakpoint-tablet-big, 1200px) !important;
	margin-right: auto;
	margin-left: auto;
}

body .has-text-align-left[class*='has-width-'] {
	margin-left: initial;
}

body .has-text-align-right[class*='has-width-'] {
	margin-right: initial;
}

/* Deux Col Columns by grid
----------------------------------------------- */
@media screen and (max-width: 599.98px) {
	body .has-deuxcol-mobile-small:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 689.98px) {
	body .has-deuxcol-mobile:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 781.98px) {
	body .has-deuxcol-tablet-small:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 999.98px) {
	body .has-deuxcol-tablet:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 1199.98px) {
	body .has-deuxcol-tablet-big:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr 1fr;
	}
}

/* Une Col Columns by grid
----------------------------------------------- */
@media screen and (max-width: 599.98px) {
	body .has-unecol-mobile-small:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 689.98px) {
	body .has-unecol-mobile:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 781.98px) {
	body .has-unecol-tablet-small:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 999.98px) {
	body .has-unecol-tablet:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 1199.98px) {
	body .has-unecol-tablet-big:not(.is-stacked-on-mobile) {
		display: grid;

		grid-template-columns: 1fr;
	}
}

/* Break Columns
----------------------------------------------- */
@media screen and (max-width: 599.98px) {
	body
		.has-breakcol-mobile-small.wp-block-columns:not(
			.is-not-stacked-on-mobile
		) {
		flex-wrap: wrap !important;
		grid-template-columns: 100%;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}

@media screen and (max-width: 689.98px) {
	body .has-breakcol-mobile.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
		grid-template-columns: 100%;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}

@media screen and (max-width: 781.98px) {
	body
		.has-breakcol-tablet-small.wp-block-columns:not(
			.is-not-stacked-on-mobile
		) {
		flex-wrap: wrap !important;
		grid-template-columns: 100%;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}

@media screen and (max-width: 999.98px) {
	body .has-breakcol-tablet.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
		grid-template-columns: 100%;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}

@media screen and (max-width: 1199.98px) {
	body
		.has-breakcol-tablet-big.wp-block-columns:not(
			.is-not-stacked-on-mobile
		) {
		flex-wrap: wrap !important;
		grid-template-columns: 100%;
		> .wp-block-column {
			flex-basis: 100% !important;
		}
	}
}

/* Break Media Text Columns
----------------------------------------------- */
@media screen and (max-width: 599.98px) {
	body
		.has-breakcol-mobile-small.wp-block-media-text:not(
			.is-not-stacked-on-mobile
		) {
		grid-template-columns: 100% !important;
		> .wp-block-media-text__media {
			grid-column: 1;
			grid-row: 1;
		}
		> .wp-block-media-text__content {
			padding: var(--theme-content-spacing, 0) !important;
			grid-column: 1;
			grid-row: 2;
		}
	}
}

@media screen and (max-width: 689.98px) {
	body
		.has-breakcol-mobile.wp-block-media-text:not(
			.is-not-stacked-on-mobile
		) {
		grid-template-columns: 100% !important;
		> .wp-block-media-text__media {
			grid-column: 1;
			grid-row: 1;
		}
		> .wp-block-media-text__content {
			padding: var(--theme-content-spacing, 0) !important;
			grid-column: 1;
			grid-row: 2;
		}
	}
}

@media screen and (max-width: 781.98px) {
	body
		.has-breakcol-tablet-small.wp-block-media-text:not(
			.is-not-stacked-on-mobile
		) {
		grid-template-columns: 100% !important;
		> .wp-block-media-text__media {
			grid-column: 1;
			grid-row: 1;
		}
		> .wp-block-media-text__content {
			padding: var(--theme-content-spacing, 0) !important;
			grid-column: 1;
			grid-row: 2;
		}
	}
}

@media screen and (max-width: 999.98px) {
	body
		.has-breakcol-tablet.wp-block-media-text:not(
			.is-not-stacked-on-mobile
		) {
		grid-template-columns: 100% !important;
		> .wp-block-media-text__media {
			grid-column: 1;
			grid-row: 1;
		}
		> .wp-block-media-text__content {
			padding: var(--theme-content-spacing, 0) !important;
			grid-column: 1;
			grid-row: 2;
		}
	}
}

@media screen and (max-width: 1199.98px) {
	body
		.has-breakcol-tablet-big.wp-block-media-text:not(
			.is-not-stacked-on-mobile
		) {
		grid-template-columns: 100% !important;
		> .wp-block-media-text__media {
			grid-column: 1;
			grid-row: 1;
		}
		> .wp-block-media-text__content {
			padding: var(--theme-content-spacing, 0) !important;
			grid-column: 1;
			grid-row: 2;
		}
	}
}

/* Responsive Visibility
----------------------------------------------- */
@media screen and (min-width: 1200px) {
	body .has-desktop-display-none {
		display: none;
	}
}
@media screen and (max-width: 1199.98px) and (min-width: 1000px) {
	body .has-tabletbig-display-none {
		display: none;
	}
}
@media screen and (max-width: 999.98px) and (min-width: 782px) {
	body .has-tablet-display-none {
		display: none;
	}
}
@media screen and (max-width: 781.98px) and (min-width: 690px) {
	body .has-tabletmedium-display-none {
		display: none;
	}
}
@media screen and (max-width: 689.98px) {
	body .has-mobile-display-none {
		display: none;
	}
}

@media screen and (max-width: 999.98px) and (min-width: 690px) {
	body .has-tablet-text-align-center {
		text-align: center;
	}
	body .has-tablet-text-align-center.wp-block-buttons {
		justify-content: center;
	}
	body .has-tablet-text-align-right {
		text-align: right;
	}
	body .has-tablet-text-align-right.wp-block-buttons {
		justify-content: right;
	}
	body .has-tablet-text-align-left {
		text-align: left;
	}
	body .has-tablet-text-align-left.wp-block-buttons {
		justify-content: left;
	}
	body .has-tablet-text-align-justify {
		text-align: justify;
	}
}
@media screen and (max-width: 689.98px) {
	body .has-mobile-text-align-center {
		text-align: center;
	}
	body .has-mobile-text-align-center.wp-block-buttons {
		justify-content: center;
	}
	body .has-mobile-text-align-right {
		text-align: right;
	}
	body .has-mobile-text-align-right.wp-block-buttons {
		justify-content: right;
	}

	body .has-mobile-text-align-left {
		text-align: left;
	}
	body .has-mobile-text-align-left.wp-block-buttons {
		justify-content: left;
	}
	body .has-mobile-text-align-justify {
		text-align: justify;
	}
}

.has-col-space-between .wp-block-column {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.has-mediatext-space-between .wp-block-media-text__content {
	height: 100%;
	display: flex;
	justify-content: space-between;
	flex-direction: column;
}

.has-text-balance {
	text-wrap: balance;
}

.has-text-align-justify {
	text-align: justify;
}
