/********************************************************/
/*
/*      Blocks CSS
/*
/********************************************************/
	
	:root .wp-block-post-content:where(.is-layout-constrained) > * {
		margin-block-start: 0;
	}
	
	.wp-block-post-content > .has-background:not(.alignfull) {
		position: relative;
	}
	
	.wp-block-post-content > .has-background:not(.alignfull)::before {
		content: '';
		position: absolute;
		top: 0;
		left: calc((var(--wp--custom--viewport-width) - 100%) / 2 * -1);
		width: var(--wp--custom--viewport-width);
		height: 100%;
		background-color: inherit;
		z-index: -1;
	}
	
	/******************************/
	/* Cke Slider
	/******************************/
	.wp-block-cke-slider {
		--slider-min-height: unset;
		
		display: grid;
		min-height: var(--slider-min-height);
		max-height: 100svh;
		align-items: end;
		margin-block-start: unset;
	}
	
	:not(.wp-block-post-content) > .wp-block-cke-slider {
		margin-block-start: unset !important;
	}
	
	.wp-block-cke-slider:is([data-layout="slider"], [data-layout="slideshow"]) > .slider-items {
		display: contents;
	}
	
	/* Slider slides */
	.wp-block-cke-slider > .slider-items > .wp-block-group {
		grid-column: 1;
		grid-row: 1;
		display: grid;
		grid-template-columns: 100%;
		grid-template-rows: max-content 0%;
		justify-content: start;
		align-items: end;
		gap: unset;
		width: calc(100% / 3) !important;
		min-width: calc(100% / 3) !important;
		max-width: calc(100% / 3) !important;
		height: var(--second-row-height) !important;
		max-height: unset;
		background-color: unset;
		opacity: 0;
		transition: opacity .3s;
		z-index: 1;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group.active:not(.transition-in) + .wp-block-group, 
	.wp-block-cke-slider > .slider-items > .wp-block-group:first-child:has(~ .wp-block-group:last-child.active:not(.transition-in)) {
		grid-template-rows: 100% 0%;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group.active:not(.transition-in),
	.wp-block-cke-slider > .slider-items > .wp-block-group.active:not(.transition-in, .transition-out) + .wp-block-group:not(.transition-in), 
	.wp-block-cke-slider > .slider-items > .wp-block-group:first-child:has(~ .wp-block-group:last-child.active:not(.transition-in, .transition-out)):not(.transition-in) {
		opacity: 1;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group.active {
		align-self: start;
		grid-template-rows: repeat(2, max-content) !important;
		top: 0% !important;
		left: 50% !important;
		width: 50% !important;
		min-width: 50% !important;
		max-width: 50% !important;
		height: max-content !important;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group.active:is(.transition-in, .transition-out) {
		opacity: 0 !important;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group.active.transition-in {
		z-index: 2 !important;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group * {
		max-width: 100%;
		color: var(--wp--custom--color--default--text);
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group > .wp-block-image {
		position: relative;
		width: 100%;
		max-width: unset;
		height: auto;
		aspect-ratio: 903/533 !important;
		border-radius: 40px;
		overflow: clip;
		z-index: 2;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group.active:not(.transition-in) + .wp-block-group > .wp-block-image, 
	.wp-block-cke-slider > .slider-items > .wp-block-group:first-child:has(~ .wp-block-group:last-child.active:not(.transition-in)) > .wp-block-image {
		height: 100%;
		aspect-ratio: unset;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group > .wp-block-image img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group > .wp-block-group {
		margin-block-start: unset;
	}
	
	.wp-block-cke-slider > .slider-items > .wp-block-group > .wp-block-group > h2 {
		margin-block-start: var(--wp--preset--spacing--6);
	}
	
	/* Slider controls */
	.wp-block-cke-slider .controls {
		align-self: start;
		grid-column: 1;
		grid-row: 1;
		height: max-content;
		margin-block-start: calc((50% * (533/903)) + (var(--wp--preset--spacing--6) / 2));
		margin-inline: 50% auto;
		translate: 0 -25%;
		z-index: 2;
	}
	
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link) {
		display: grid;
		justify-content: center;
		align-items: center;
		aspect-ratio: unset;
		padding: var(--wp--preset--spacing--0-75) var(--wp--preset--spacing--1);
		box-sizing: border-box;
		cursor: pointer;
		transition: background-color .3s;
	}
	
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)::before,
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)::after {
		content: '';
		grid-column: 1;
		grid-row: 1;
		display: block;
		height: auto;
		width: 36px;
		aspect-ratio: 28/15;
		font-family: unset;
		opacity: 1;
		transition: opacity .3s;
	}
	
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)[rel="prev"]::before,
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)[rel="prev"]::after {
		background: url(../../assets/images/arrow-left.svg) no-repeat center;
	}
	
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)[rel="next"]::before,
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)[rel="next"]::after {
		background: url(../../assets/images/arrow-right.svg) no-repeat center;
	}
	
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)::before {
		filter: var(--wp--custom--color--filter--stratos-blue);
	}
	
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link)::after {
		filter: var(--wp--custom--color--filter--ecru-white);
	}
	
	.wp-block-cke-slider .controls :is(a, .wp-block-button__link):is(:hover, :focus)::after {
		opacity: 0;
	}
	
	/* Slider initialization */
	body:not(.wp-admin) .wp-block-cke-slider:not(.ready) > .slider-items > .wp-block-group {
		grid-template-rows: repeat(2, max-content) !important;
		top: 0% !important;
		left: 50% !important;
		width: 50% !important;
		min-width: 50% !important;
		max-width: 50% !important;
		height: max-content !important;
	}
	
	@media (width <= 1700px) {
		.wp-block-cke-slider > .slider-items > .wp-block-group.active {
			left: 45% !important;
			min-width: 55% !important;
			max-width: 55% !important;
		}
		
		.wp-block-cke-slider .controls {
			margin-block-start: calc((55% * (533/903)) + (var(--wp--preset--spacing--6) / 2));
			margin-inline: 45% auto;
		}
	}
	
	@media (width <= 1300px) {
		.wp-block-cke-slider > .slider-items > .wp-block-group.active {
			left: 40% !important;
			min-width: 60% !important;
			max-width: 60% !important;
		}
		
		.wp-block-cke-slider .controls {
			margin-block-start: calc((60% * (533/903)) + (var(--wp--preset--spacing--6) / 2));
			margin-inline: 40% auto;
		}
	}
	
	@media (width <= 1000px) {
		.wp-block-cke-slider > .slider-items > .wp-block-group.active:not(.transition-in) + .wp-block-group, 
		.wp-block-cke-slider > .slider-items > .wp-block-group:first-child:has(~ .wp-block-group:last-child.active:not(.transition-in)) {
			opacity: 0 !important;
			pointer-events: none !important;
		}
		
		.wp-block-cke-slider > .slider-items > .wp-block-group.active {
			left: 0% !important;
			min-width: 100% !important;
			max-width: 100% !important;
		}
		
		.wp-block-cke-slider .controls {
			margin-block-start: calc((100% * (533/903)) + (var(--wp--preset--spacing--6) / 2));
			margin-inline: 0 auto;
		}
	}
	
	/******************************/
	/* Columns
	/******************************/
	.wp-block-columns {
		justify-content: space-between;
	}
	
	.wp-block-columns.justify-center {
		justify-content: center;
	}
	
	@media (width <= 1400px) {
		.wp-block-columns.responsive-adjust > .wp-block-column:not(:empty) {
			min-width: calc(var(--wp--custom--viewport-width) * (2/3));
		}
	}
	
	@media (width <= 781px) {
		.wp-block-columns > .wp-block-column:empty {
			display: none;
		}
		
		.wp-block-columns .wp-block-column > .has-text-align-right {
			text-align: left;
		}
		
		.wp-block-columns.large-gap-on-mobile {
			gap: var(--wp--preset--spacing--8);
		}
	}
	
	/******************************/
	/* Cover
	/******************************/
	.wp-block-cover {
		position: relative;
		padding: unset;
	}
	
	main > .wp-block-post-content > .wp-block-cover:first-child {
		margin-block-start: calc(var(--wp--custom--header-height) * -1);
	}
	
	.wp-block-cover::after {
		content: '';
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		background: var(--wp--preset--color--stratos-blue);
		z-index: 1;
		mix-blend-mode: lighten;
		pointer-events: none;
	}
	
	.wp-block-cover .wp-block-cover__image-background {
		z-index: -1;
	}
	
	.wp-block-cover .wp-block-cover__background {
		background-color: transparent !important;
		opacity: 1 !important;
		box-shadow: 0px 0px 20vw rgba(var(--wp--custom--color--rgb-values--black), 1) inset;
		z-index: 0;
	}
	
	.wp-block-cover .wp-block-cover__inner-container {
		position: relative;
		width: var(--wp--style--global--wide-size);
		z-index: 2;
	}
	
	@media (width <= 1000px) {
		.wp-block-cover .wp-block-cover__inner-container > .wp-block-columns {
			flex-wrap: wrap !important; 
		}
		
		.wp-block-cover .wp-block-cover__inner-container > .wp-block-columns > .wp-block-column {
			flex-basis: 100% !important;
		}
		
		.wp-block-cover .wp-block-cover__inner-container .opacity-zero {
			display: none;
		}
	}
	
	/******************************/
	/* Group
	/******************************/
	/* Group link hover color inheritance */
	.wp-block-group.is-linked[class*="focus-"] > :is(p, .wp-block-heading) {
		color: inherit !important;
		transition: color .3s !important;
	}
	
	/* Decorative line style variation */
	.wp-block-group.is-style-decorative-line {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: max-content;
		gap: var(--wp--preset--spacing--1-5);
	}
	
	.wp-block-group.is-style-decorative-line::before,
	.wp-block-group.is-style-decorative-line > :first-child {
		grid-row: 1;
	}
	
	.wp-block-group.is-style-decorative-line::before {
		grid-column: 1;
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		background-color: var(--wp--custom--color--default--accent);
		margin-block-start: var(--wp--preset--spacing--2);
	}
	
	.wp-block-group.is-style-decorative-line > * {
		grid-column: 2;
	}
	
	@media (width <= 1720px) {
		.wp-block-group.is-style-decorative-line {
			grid-template-columns: 1fr 2fr;
		}
	}
	
	@media (width <= 750px) {
		.wp-block-group.is-style-decorative-line {
			grid-template-columns: 1fr 3fr;
		}
	}
	
	@media (width <= 500px) {
		.wp-block-group.is-style-decorative-line {
			grid-template-columns: 100%;
		}
		
		.wp-block-group.is-style-decorative-line::before {
			display: none;
		}
		
		.wp-block-group.is-style-decorative-line > * {
			grid-column: 1;
		}
	}
	
	/******************************/
	/* Heading
	/******************************/
	/* Decorative line style variation */
	.wp-block-heading.is-style-decorative-line {
		position: relative;
		padding-block-end: var(--wp--preset--spacing--13-5)
	}
	
	.wp-block-heading.is-style-decorative-line::after {
		content: '';
		display: block;
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 1px;
		height: 150px;
		background-color: var(--wp--custom--color--default--accent);
		translate: -50%;
	}
	
	/******************************/
	/* Image & Featured image
	/******************************/
	:is(.wp-block-image, .wp-block-post-featured-image),
	:is(.wp-block-image, .wp-block-post-featured-image) img,
	:is(.wp-block-image, .wp-block-post-featured-image) > * {
		max-height: 95svh;
	}
	
	:is(.wp-block-image, .wp-block-post-featured-image) img {
		object-fit: cover;
	}
	
	/* Rounded style variation */
	:is(.wp-block-image.is-style-rounded, .wp-block-post-featured-image) {
		border-radius: 40px;
		overflow: clip;
	}
	
	:is(.wp-block-image.is-style-rounded, .wp-block-post-featured-image) img {
		border-radius: unset !important;
	}
	
	/* With logo style variation */
	.wp-block-image.is-style-with-logo {
		display: grid;
	}
	
	.wp-block-image.is-style-with-logo::after,
	.wp-block-image.is-style-with-logo img {
		grid-column: 1;
		grid-row: 1;
	}
	
	.wp-block-image.is-style-with-logo::after {
		justify-self: center;
		align-self: end;
		content: '';
		width: 95%;
		height: auto;
		aspect-ratio: 1863/373;
		background: url(../images/logo-le-cours-light.svg) no-repeat;
		background-size: contain;
		margin-block-end: var(--wp--preset--spacing--1-5);
		z-index: 1;
	}
	
	/* Backend style */
	:is(.edit-post-visual-editor, .editor-styles-wrapper) .wp-block-image.is-style-with-logo > div {
		display: contents;
	}
	
	/******************************/
	/* List
	/******************************/
	ul.wp-block-list {
		padding-inline-start: unset !important;
	}
	
	ol.wp-block-list {
		padding-inline-start: 24px !important;
	}
	
	ul.wp-block-list > li {
		display: flex;
		align-items: baseline;
		column-gap: var(--wp--preset--spacing--0-50);
	}
	
	ul.wp-block-list > li {
		list-style: unset;
	}
	
	ul.wp-block-list > li::before {
		content: '.';
	}
	
	.wp-block-list > li + li {
		margin-block-start: var(--wp--preset--spacing--0-50);
	}
	
	.wp-block-list > li :is(div, b, strong, em):not([role="textbox"]) {
		display: contents;
	}
	
	/******************************/
	/* Separator
	/******************************/
	.wp-block-separator {
		width: calc(100% / 3);
		height: 1px;
		background-color: var(--wp--custom--color--default--accent);
		border: unset;
	}
	
	/******************************/
	/* Shared style
	/******************************/
	/* Decorative line style variation */
	:not(.wp-block-group).is-style-decorative-line {
		position: relative;
		padding-block-end: var(--wp--preset--spacing--13-5)
	}
	
	:not(.wp-block-group).is-style-decorative-line::after {
		content: '';
		display: block;
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 1px;
		height: 150px;
		background-color: var(--wp--custom--color--default--accent);
		translate: -50%;
	}
	
	@media (width <= 1000px) {
		:not(.wp-block-group).is-style-decorative-line::after {
			height: 100px;
		}
	}