/********************************************************/
/*
/*      General CSS
/*
/********************************************************/

	/******************************/
	/* Modifier classes
	/******************************/
	/* Layout */
	.flex								{ display: flex; }
	.flex-column						{ flex-direction: column; }
	.justify-start						{ justify-content: start; }
	.justify-center						{ justify-content: center; }
	.justify-end						{ justify-content: end; }
	.justify-around						{ justify-content: space-around; }
	.justify-between					{ justify-content: space-between; }
	.justify-evenly						{ justify-content: space-evenly; }
	.align-start						{ align-items: start; }
	.align-center						{ align-items: center; }
	.align-end							{ align-items: end; }
	
	/* Text */
	.uppercase							{ text-transform: uppercase; }
	.lowercase							{ text-transform: lowercase; }
	.underline							{ text-decoration: underline; }
	.text-deco-none						{ text-decoration: none; }
	
	/* Opacity */
	.opaque								{ opacity: 1; }
	.opacity-half						{ opacity: .5; }
	.transparent						{ opacity: 0; }
	
	/* Other */
	.user-select-none					{ user-select: none; }
	
	/******************************/
	/* Buttons
	/******************************/
	.wp-block-button__link {
		position: relative;
		padding-block: 1rem !important;
		padding-inline: 5.5rem 0 !important;
	}
	
	.wp-block-button__link::before,
	.wp-block-button__link::after {
		content: '';
		display: block;
		position: absolute;
		left: 0;
		top: 50%;
		width: 4.25rem;
		height: auto;
		aspect-ratio: 1;
		background: url(../images/fleche-droite.svg) no-repeat;
		opacity: 1;
		translate: 0 -50%;
		transition: opacity .3s;
	}
	
	.wp-block-button__link::before {
		filter: var(--wp--custom--filter--gray);
	}
	
	.wp-block-button__link::after {
		filter: var(--wp--custom--filter--green);
	}
	
	.wp-block-button__link:hover::before,
	.wp-block-button__link:not(:hover)::after {
		opacity: 0;
	}
	
	/******************************/
	/* Forms & inputs
	/******************************/
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_wrapper {
		max-width: var(--wp--style--global--content-size) !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gfield_label,
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gfield_label > .gfield_required::before,
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_button {
		font-size: var(--wp--preset--font-size--medium) !important;
		line-height: 1.17 !important;
		letter-spacing: 1px !important;
		font-weight: 500 !important;
		color: var(--wp--preset--color--gray) !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gfield_label > .gfield_required::before {
		content: '*';
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gfield_label .gfield_required_text {
		display: none;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .ginput_container {
		display: flex;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) :is(input, select, textarea):not([type="submit"], [type="button"]),
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_button {
		color: var(--wp--preset--color--gray) !important;
		background-color: transparent !important;
		border: 2px solid var(--wp--preset--color--gray) !important;
		box-shadow: unset !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) :is(input, select, textarea):not([type="submit"], [type="button"]) {
		font-size: var(--wp--preset--font-size--small) !important;
		font-weight: 400 !important;
		padding: .75rem 1.5rem !important;
		box-sizing: content-box;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_button {
		padding-block: 2.125rem !important;
		padding-inline: 5.5rem 0 !important;
		border: unset !important;
		z-index: 1;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_footer {
		position: relative;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_footer::before,
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_footer::after {
		content: '';
		display: block;
		position: absolute;
		left: 0;
		top: 50%;
		width: 4.25rem;
		height: auto;
		aspect-ratio: 1;
		background: url(../images/fleche-droite.svg) no-repeat;
		opacity: 1;
		translate: 0 -50%;
		transition: opacity .3s;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_footer::before {
		filter: var(--wp--custom--filter--gray);
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_footer::after {
		filter: var(--wp--custom--filter--green);
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_footer:has(.gform_button:hover)::before,
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_footer:not(:has(.gform_button:hover))::after {
		opacity: 0;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_ajax_spinner {
		position: absolute;
		top: 50%;
		left: 50%;
		height: 4rem;
		translate: -50% -50%;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_validation_errors {
		background-color: transparent !important;
		padding: 0 !important;
		border: none !important;
		box-shadow: unset !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_validation_errors h2,
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_validation_errors .gform-icon,
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) :is(.gfield_validation_message, .gform_confirmation_message) {
		color: var(--wp--preset--color--off-green) !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_validation_errors h2,
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_confirmation_message {
		font-size: var(--wp--preset--font-size--medium) !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_validation_errors .gform-icon {
		width: auto;
		height: 2.25rem;
		aspect-ratio: 1;
		font-size: var(--wp--preset--font-size--medium) !important;
		background-color: transparent !important;
		border-color: var(--wp--preset--color--off-green) !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gfield_validation_message {
		font-size: var(--wp--preset--font-size--small) !important;
	}
	
	:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_confirmation_message {
		text-align: center;
	}
	
	@media screen and (max-width: 800px) {
		:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gform_fields { row-gap: var(--wp--preset--spacing--2) !important; }
		:is(.wp-site-blocks, .edit-post-visual-editor, .editor-styles-wrapper) .gfield { grid-column: span 12 !important; }
	}
	
	/******************************/
	/* Other
	/******************************/
	/* CookieYes widget */
	.cky-btn-revisit-wrapper {
		background-color: var(--wp--preset--color--off-green) !important;
		box-sizing: border-box;
		z-index: 3 !important
	}
	
	.cky-btn-revisit-wrapper .cky-btn-revisit {
		box-shadow: none !important;
	}
	
	.cky-btn-revisit-wrapper img {
		filter: var(--wp--custom--filter--white) !important;
	}
	
	:is(.cky-notice-btn-wrapper, .cky-prefrence-btn-wrapper) .cky-btn {
		background-color: var(--wp--preset--color--white) !important;
		border-color: var(--wp--preset--color--off-green) !important;
	}
	
	:is(.cky-notice-btn-wrapper, .cky-prefrence-btn-wrapper) .cky-btn, button.cky-show-desc-btn:not(:hover):not(:active) {
		color: var(--wp--preset--color--off-green) !important;
	}
	
	:is(.cky-notice-btn-wrapper, .cky-prefrence-btn-wrapper) .cky-btn.cky-btn-accept {
		background-color: var(--wp--preset--color--off-green) !important;
		color: var(--wp--preset--color--white) !important;
	}