/*
Theme Name: DESTHER FORMATION
Theme URI: http://www.
Author: YB
Version: 1.0.0
Text Domain: desther-formation
*/

@font-face {
	font-family: 'Exo 2.0 Semi';
	src: url('css/fonts/exo/Exo20-SemiBold.eot');
	src: url('css/fonts/exo/Exo20-SemiBold.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-SemiBold.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-SemiBold.woff') format('woff'),
			url('css/fonts/exo/Exo20-SemiBold.ttf') format('truetype');
	font-weight: 600;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-Black.eot');
	src: url('css/fonts/exo/Exo20-Black.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-Black.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-Black.woff') format('woff'),
			url('css/fonts/exo/Exo20-Black.ttf') format('truetype');
	font-weight: 900;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-Thin.eot');
	src: url('css/fonts/exo/Exo20-Thin.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-Thin.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-Thin.woff') format('woff'),
			url('css/fonts/exo/Exo20-Thin.ttf') format('truetype');
	font-weight: 100;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0 Condensed';
	src: url('css/fonts/exo/Exo2-LightCondensed.eot');
	src: url('css/fonts/exo/Exo2-LightCondensed.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo2-LightCondensed.woff2') format('woff2'),
			url('css/fonts/exo/Exo2-LightCondensed.woff') format('woff'),
			url('css/fonts/exo/Exo2-LightCondensed.ttf') format('truetype');
	font-weight: 300;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-Bold.eot');
	src: url('css/fonts/exo/Exo20-Bold.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-Bold.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-Bold.woff') format('woff'),
			url('css/fonts/exo/Exo20-Bold.ttf') format('truetype');
	font-weight: bold;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-ThinItalic.eot');
	src: url('css/fonts/exo/Exo20-ThinItalic.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-ThinItalic.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-ThinItalic.woff') format('woff'),
			url('css/fonts/exo/Exo20-ThinItalic.ttf') format('truetype');
	font-weight: 100;
	font-style: italic;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-BlackItalic.eot');
	src: url('css/fonts/exo/Exo20-BlackItalic.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-BlackItalic.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-BlackItalic.woff') format('woff'),
			url('css/fonts/exo/Exo20-BlackItalic.ttf') format('truetype');
	font-weight: 900;
	font-style: italic;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-Light.eot');
	src: url('css/fonts/exo/Exo20-Light.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-Light.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-Light.woff') format('woff'),
			url('css/fonts/exo/Exo20-Light.ttf') format('truetype');
	font-weight: 300;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-MediumItalic.eot');
	src: url('css/fonts/exo/Exo20-MediumItalic.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-MediumItalic.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-MediumItalic.woff') format('woff'),
			url('css/fonts/exo/Exo20-MediumItalic.ttf') format('truetype');
	font-weight: 500;
	font-style: italic;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/exo20-regular.eot');
	src: url('css/fonts/exo/exo20-regular.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/exo20-regular.woff2') format('woff2'),
			url('css/fonts/exo/exo20-regular.woff') format('woff'),
			url('css/fonts/exo/exo20-regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-BoldItalic.eot');
	src: url('css/fonts/exo/Exo20-BoldItalic.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-BoldItalic.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-BoldItalic.woff') format('woff'),
			url('css/fonts/exo/Exo20-BoldItalic.ttf') format('truetype');
	font-weight: bold;
	font-style: italic;
	font-display: fallback;
}

@font-face {
	font-family: 'Exo 2.0';
	src: url('css/fonts/exo/Exo20-Medium.eot');
	src: url('css/fonts/exo/Exo20-Medium.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/exo/Exo20-Medium.woff2') format('woff2'),
			url('css/fonts/exo/Exo20-Medium.woff') format('woff'),
			url('css/fonts/exo/Exo20-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'Avenir Next';
	src: url('css/fonts/avenir/AvenirNext-Medium.eot');
	src: url('css/fonts/avenir/AvenirNext-Medium.eot?#iefix') format('embedded-opentype'),
			url('css/fonts/avenir/AvenirNext-Medium.woff2') format('woff2'),
			url('css/fonts/avenir/AvenirNext-Medium.woff') format('woff'),
			url('css/fonts/avenir/AvenirNext-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'BigNoodleTitling';
	src: url('css/fonts/big-noodle/big_noodle_titling.ttf') format('truetype');
	font-weight: normal;
	font-display: fallback;
}

@font-face {
	font-family: 'BigNoodleTitling';
	src: url('css/fonts/big-noodle/big_noodle_titling_oblique.ttf') format('truetype');
	font-weight: normal;
	font-style: italic;
	font-display: fallback;
}

.exo { font-family: "Exo 2.0"; }
.fs-i { font-style: italic; }
.fw-b { font-weight: bold; }
.txt-w { color: #fff; }
.taj { text-align: justify; }
.tac { text-align: center; }

html { scroll-behavior: smooth; }

body { 
	font-family: "Avenir Next";
	margin: 0;
	padding: 0;
}

img { vertical-align: middle; }

.img-fluid {
	display: block;
	max-width: 100%;
	height: auto;
}

.container {
	margin-right: auto;
	margin-left: auto;
}
	@media (min-width: 1200px)
	{
		.container { max-width: 1140px; }
	}

		@media (min-width: 1450px)
		{
			.container { max-width: 1440px; }
		}

/*
 * Main Header
 */
#header a,
#footer a {
	color: #FFF;
	text-decoration: none;
	transition: all 0.5s;
}
#footer a:hover,
#footer a:active {
	color: #fa2a2a;
}
@media (max-width: 991px) {
    #header a:hover,
    #header a:active {
        color: #fa2a2a;
    }
}
@media (min-width: 992px) {
    #header li {
        position: relative;
    }
    #header #navitem1:after,
    #header #navitem2:after,
    #header #navitem3:after,
    #header #navitem5:after,
    #header #navitem6:after {
        position: absolute;
        content: " ";
        display: block;
        height: 2px;
        width: 100%;
        background: linear-gradient(to left, #000 0%, #000 15%, #fff 50%, #000 85%, #000 100%);
        margin-top: 10px;
        transition: all 0.3s;
        transform: scaleX(0);
        transform-origin: center;
    }
    #header #navitem1:hover:after,
    #header #navitem2:hover:after,
    #header #navitem3:hover:after,
    #header #navitem5:hover:after,
    #header #navitem6:hover:after {
        transform: scaleX(1);
    }
}

#header {
	background: #000;
	color: #FFF;
	font-family: 'Exo 2.0';
	font-size: 19px;
	font-weight: 500;
	text-transform: uppercase;
    position: fixed;
    z-index: 999;
    width: 100%;
}
#header ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0;
	padding: 0;
	height: 77px;
	position: relative;
	overflow: hidden;
}
#header li {
	display: inline-block;
	list-style: none;
	padding: 0;
	margin: 0;
}
#header a {
	display: block;
}
#header #header_logo {
	width: 250px;
	height: auto;
}
#header #phone_text {
	background: url(img/phone.svg) no-repeat;
	background-size: 22px auto;
	padding-left: 28px;
}
#header #devis-gratuit {
	border-radius: 8px;
	background: linear-gradient(to right, #fa2a2a, #c81919);
	border: 1px solid #7d1515;
	padding: 13px 16px;
}
#header #devis-gratuit:hover,
#header #devis-gratuit:active {
	color: #FFF;
	text-shadow: 1px 1px 2px #000;
	border-color: #FFF;
}
@media (max-width: 1449px) {
	#header {
		font-size: 16px;
	}
}
@media (max-width: 1199px) {
	#header {
		font-size: 14px;
	}
	#header #header_logo {
		width: 160px;
	}
	#header #devis-gratuit {
		padding: 7px 8px;
	}
}

@media (min-width: 991px) {
	#header #menu-mobile,
	#header #phone-mobile {
		display: none;
	}
}

@media (max-width: 991px) {
	#header .container {
		padding: 0px 25px;
	}
	#header .container:before {
		position: absolute;
		top: 77px;
		left: 0px;
		width: 100%;
		border-top: 1px solid #050505;
	}
	#header ul {
		height: 77px;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
	}
	#header.visible ul {
		height: auto;
		overflow: visible;
	}
	#header.visible #navitem1,
	#header.visible #navitem2,
	#header.visible #navitem3,
	#header.visible #navitem5,
	#header.visible #navitem7 {
		transform: translateY(0);
	}
	#header.visible ul:after {
		content: ' ';
		background: url(img/menu-bottom.svg) 0% 50% no-repeat;
		background-size: 100% auto;
		width: 100vw;
		height: 70px;
		position: absolute;
		left: -25px;
		bottom: -70px;
	}
	#header.visible ul li {
		opacity: 1;
	}
	#header ul li {
		flex-basis: 100%;
		padding: 21px 0px;
		border-bottom: 2px solid;
		border-image-slice: 1;
		border-width: 2px;
		border-image-source: linear-gradient(to left, #151515, #FDFDFD, #151515);
		transition: all 0.2s;
		opacity: 0;
	}
	#header #navitem4 {
		position: relative;
		z-index: 3;
		background: #000;
		opacity: 1;
		order: 1;
		height: 77px;
		padding: 0px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		border-bottom: none;
	}
	#header #menu-mobile-img {
		width: 32px;
		height: auto;
		margin-left: -4px;
	}
	#header #phone-mobile-img {
		width: 36px;
		height: auto;
	}
	#header #navitem1 {
		order: 2;
		transform: translateY(-141px);
	}
	#header #navitem2 {
		order: 3;
		transform: translateY(-205px);
		transition-delay: 0.2s;
	}
	#header #navitem3 {
		order: 4;
		transform: translateY(-269px);
		transition-delay: 0.4s;
	}
	#header #navitem5 {
		order: 5;
		border-bottom: none;
		transform: translateY(-333px);
		transition-delay: 0.6s;
	}
	#header #navitem6 {
		display: none;
	}
	#header #navitem7 {
		order: 7;
		padding-bottom: 10px;
		border-bottom: none;
		transform: translateY(-397px);
		transition-delay: 0.8s;
	}
	#header #header_logo {
		width: 250px;
	}
	#header #devis-gratuit {
		display: inline-block;
	}
	.columns-container {
			padding-top: 77px;
	}
}
@media (max-width: 370px) {
	#header #header_logo {
		width: 200px;
	}
}

/*
 * CFS
 */
#contactFormSection { padding-top: 77px; }

	@media (min-width: 1200px)
	{
		#contactFormSection .container-fluid { display: flex; }
	}
		@media (min-width: 1920px)
		{
			#contactFormSection .container-fluid { position: relative; }
		}

		@media (min-width: 1200px)
		{
			#cfsImgBlock, #cfsFormBlock { width: 50%; }
			#cfsImgBlock {
				position: relative;
				background: url("img/home/cfs-1920w.jpg") no-repeat 0 0 / cover;
			}
				#cfsImgBlock img { display: none; }
		}
			@media (min-width: 1600px)
			{
				#cfsImgBlock { width: 64.5%; }
				#cfsFormBlock { width: 35.5%; }
			}

	#cfsImgBlock h1 {
		font-size: 24px;
		margin: 0;
		padding: 10px 15px;
		background-color: #000;
		color: #fff;
		text-align: center;
	}
		@media (min-width: 1200px)
		{
			#cfsImgBlock h1 {
				position: absolute;
				width: 400px;
				font-size: 30px;
				text-shadow: 2px 2px 5px #000;
				padding: 0;
				background-color: inherit;
				top: 4.48979%;
				right: 5.79591%;
			}
		}
			@media (min-width: 1450px)
			{
				#cfsImgBlock h1 {
					width: 500px;
					font-size: 40px;
				}
			}
				@media (min-width: 1600px)
				{
					#cfsImgBlock h1 {
						width: 800px;
						font-size: 64px;
					}
				}

	#cfsFormBlock > p {
		font-size: 20px;
		font-weight: 500;
		text-align: justify;
		margin: 0;
		padding: 18px 16px 11px;
	}
		@media (min-width: 1600px)
		{
			#cfsFormBlock > p {
				font-size: 28px;
				box-sizing: border-box;
				padding: 60px 100px 48px;
			}
		}

	#cfsFormBlock form {
		font-family: 'Exo 2.0';
		padding: 25px 15px 18px;
		background-color: #e7e7e7;
	}
		@media (min-width: 1600px)
		{
			#cfsFormBlock form {
				box-sizing: border-box;
				padding: 45px 100px 18px;
			}
		}

		#cfsFormBlock form legend {
			font-size: 36px;
			font-weight: bold;
			font-style: italic;
			text-align: center;
			text-transform: capitalize;
			padding-bottom: 25px;
		}
		#cfsFormBlock form p { margin: 6px 0; }
			#cfsFormBlock form label {
				font-size: 20px;
				font-weight: 500;
				font-style: italic;
			}
				#cfsFormBlock form label .wpcf7-form-control-wrap {
					display: flex;
					flex-wrap: wrap;
					margin-top: 9px;
				}
					#cfsFormBlock form label .wpcf7-form-control-wrap input {
						display: block;
						width: 100%;
						height: 46px;
						font-size: 20px;
						padding: 0;
						padding-inline: 10px;
						border: none;
						box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.36);
						box-sizing: border-box;
					}
						#cfsFormBlock form label .wpcf7-form-control-wrap input:focus-visible { outline: 0; }

					#cfsFormBlock form p:nth-child(5) label span:first-child {
						font-size: 18px;
						font-weight: 100;
						font-style: italic;
					}
					#cfsFormBlock form p:nth-child(7) input {
						display: block;
						margin: auto;
						font-family: 'BigNoodleTitling';
						font-size: 36px;
						letter-spacing: 1px;
						line-height: 36px;
						color: #fff;
						border: none;
						border-radius: 10px;
						padding: 10px 26px;
						background: linear-gradient(to left, #575756, #000);
						cursor: pointer;
					}
					#cfsFormBlock form p:nth-child(7) {
						margin-top: 47px;
						margin-bottom: 0;
					}
						#cfsFormBlock form p:nth-child(7) input:hover {
							background: linear-gradient(to left, #f92a2a, #cc1a1a);
						}
						#cfsFormBlock form p:nth-child(7) span {
							display: block;
							margin: auto;
						}

	@media (max-width: 1919px)
	{
		#bgBar { display: none; }
	}
		@media (min-width: 1920px)
		{
			#bgBar {
				position: absolute;
				width: 48%;
				height: 62px;
				background-color: #e7e7e7;
				bottom: -62px;
				right: 0;
			}
		}

.wpcf7 form .wpcf7-response-output { text-align: center; }
.wpcf7 form.sent .wpcf7-response-output { border: none; }

/*
 * Record Section
 */
#recordSection h2 {
	font-size: 36px;
	text-align: center;
}
	@media (min-width: 1920px)
	{
		#recordSection { margin-top: 223px; }
			#recordSection .container-fluid { position: relative; }
				#recordSection h2 {
					position: absolute;
					font-size: 72px;
					margin: 0;
					top: -121px;
					left: 766px;
				}
	}

@media (min-width: 1200px)
{
	#recordContent {
		display: flex;
		justify-content: space-between;
		margin-right: 50px;
		background-color: #f4f4f4;
	}
}
	@media (min-width: 1200px)
	{
		#recordContent { margin-right: 100px; }
	}
		@media (min-width: 1920px)
		{
			#recordContent {
				position: relative;
				justify-content: end;
				padding: 71px 0 176px;
			}
		}

	@media (min-width: 1920px)
	{
		#recordContent picture {
			position: absolute;
			max-width: 693px;
			top: -157px;
			left: 0;
		}
	}

#recordContent picture img { margin: auto; }
	@media (min-width: 1200px)
	{
		#recordContent picture img { margin: initial; }
	}

#recordContent #rsName {
	display: block;
	font-size: 36px;
	line-height: 36px;
	text-align: center;
	margin-top: 30px;
}
	@media (min-width: 1200px)
	{
		#recordContent #rsName { display: none; }
	}

@media (min-width: 1200px)
{
	#recordTxt { padding: 0 50px; }
}
	@media (min-width: 1920px)
	{
		#recordTxt {
			position: relative;
			max-width: 54.8%;
			padding-left: 0;
		}
	}

#recordTxt p, #recordTxt ul {
	font-size: 22px;
	text-align: justify;
	padding: 0 15px;
	margin: 25px 0;
}
	@media (min-width: 1200px)
	{
		#recordTxt p, #recordTxt ul { padding: 0; }
	}
		@media (min-width: 1920px)
		{
			#recordTxt p, #recordTxt ul {
				font-size: 28px;
				line-height: 32px;
			}
			#recordTxt p {
				margin-top: 0;
				margin-bottom: 51px;
			}
		}

#recordTxt ul {
	list-style-type: none;
	margin-top: 0;
}
	@media (min-width: 1920px)
	{
		#recordTxt ul {
			margin-bottom: 0;
			line-height: 32px;
		}
	}

	#recordTxt p strong { display: none; }
		@media (min-width: 1200px)
		{
			#recordTxt p strong { display: inline; }
		}

#recordTxt p::first-letter { text-transform: uppercase; }

@media (max-width: 1999px)
{
	#recordImgLg { display: none; }
}
@media (min-width: 1200px)
{
	#recordImg { display: none; }
}

#recordImg p, #recordImgLg p { margin: 0; }
#recordImg p:first-child { margin-bottom: 10px; }
#recordImg p img { margin: auto; }

@media (min-width: 1200px)
{
	#recordImgLg {
		display: flex;
		justify-content: space-around;
	}
		#recordImgLg p:first-child { width: 34%; }
		#recordImgLg p:last-child { width: 26%; }
}
	@media (min-width: 1920px)
	{
		#recordImgLg p:first-child {
			position: absolute;
			width: 550px;
			top: 297px;
			left: 0;
		}
		#recordImgLg p:last-child {
			position: absolute;
			width: 386px;
			top: 297px;
			right: 63px;
		}
	}

/*
 * PLAN SECTION
 */
@media (min-width: 1200px)
{
	#planSection { margin-top: 100px; }
}
	@media (min-width: 1920px)
	{
		#planSection { margin-top: 495px; }
	}

#psBlockTxt {
	background-color: #000;
	padding: 49px 0 33px;
}
	@media (min-width: 1200px)
	{
		#psBlockTxt { padding: 93px 0 67px; }
	}

	#psBlockTxt h2 {
		font-size: 36px;
		text-align: center;
		margin: 0 0 33px;
	}
		@media (min-width: 1200px)
		{
			#psBlockTxt h2 { text-align: left; }
		}
			@media (min-width: 1450px)
			{
				#psBlockTxt h2 {
					font-size: 72px;
					margin-bottom: 50px;
				}
			}

	#psBlockTxt p {
		font-size: 22px;
		margin: 0;
		padding: 0 15px;
		text-align: justify;
	}
		@media (min-width: 1200px)
		{
			#psBlockTxt p { padding: 0; }
		}
			@media (min-width: 1450px)
			{
				#psBlockTxt p { font-size: 30px; }
			}

#psBlockProg {
	padding: 0 15px;
	background-image: linear-gradient(to bottom, #000 52%, white 52% 0);
}
	@media (min-width: 1200px)
	{
		#psBlockProg {
			background-image: linear-gradient(to bottom, #000 90px, white 90px 0);
			padding: 0;
		}
	}
		@media (min-width: 1450px)
		{
			#psBlockProg {
				background-image: linear-gradient(to bottom, #000 185px, white 185px 0);
			}
		}

	#psBlockProgContent {
		background-color: #4c4c4c;
		padding: 32px 12px 200px;
		margin-bottom: 260px;
	}
		@media (min-width: 1200px)
		{
			#psBlockProgContent {
				display: flex;
				padding: 0;
				margin-bottom: 50px;
			}
		}
			@media (min-width: 1450px)
			{
				#psBlockProgContent { margin-bottom: 80px; }
			}
		
		@media (min-width: 1200px)
		{
			#psImgProg { width: 33.6%; }
		}

		@media (max-width: 1199px)
		{
			#psImgProg { display: none; }
		}

		#psTxtProg { position: relative; }
			@media (min-width: 1200px)
			{
				#psTxtProg {
					width: 66.38888%;
					padding: 10px 50px 0;
					box-sizing: border-box;
				}
			}
				@media (min-width: 1450px)
				{
					#psTxtProg { padding: 35px 78px 0 87px; }
				}

		#psBlockProgContent h3 {
			font-size: 36px;
			text-align: center;
			margin: 0 0 19px;
		}
			@media (min-width: 1450px)
			{
				#psBlockProgContent h3 {
					font-size: 72px;
					text-align: left;
					margin-bottom: 35px;
				}
			}

		#psBlockProgContent div:nth-child(2) > p {
			font-size: 22px;
			line-height: 24px;
			hyphens: auto;
			margin: 0 0 37px;
		}
			@media (min-width: 1450px)
			{
				#psBlockProgContent div:nth-child(2) > p {
					font-size: 30px;
					line-height: 30px;
					margin-bottom: 40px;
				}
				#psBlockProgContent div:nth-child(2) > p:nth-child(4) { margin-bottom: 0; }
			}

		#psPrice {
			width: 293px;
			font-size: 48px;
			text-transform: uppercase;
			margin: 0 auto;
			border: 2px solid #fff;
			border-radius: 5px;
			background-color: #ec2727;
		}
			#psPrice p { margin: 13px 0; }
			@media (min-width: 1450px)
			{
				#psPrice {
					position: absolute;
					width: 345px;
					font-size: 64px;
					margin: 0;
					bottom: -51.5px;
				}
					#psPrice p { margin-top: 9px; }
			}

		#psPicto {
			position: absolute;
			width: 299px;
			height: 401px;
			background: url("img/home/picto.png") no-repeat 0 0 / cover;
			left: calc(50% - 149.5px);
			bottom: -429px;
		}
			@media (min-width: 1200px)
			{
				#psPicto {
					bottom: -288px;
					left: -232px;
				}
			}
				@media (min-width: 1450px)
				{
					#psPicto {
						bottom: -269px;
						left: -249px;
					}
				}

	@media (min-width: 1200px)
	{
		#psBlockProgInfo {
			display: flex;
			justify-content: flex-end;
			align-items: center;
		}
	}

	@media (max-width: 1199px)
	{
		#psBlockProgInfo {
			width: 297px;
			margin: auto;
		}
	}

		#psBlockProgInfo p {
			font-size: 24px;
			margin: 0 0 21px;
			text-align: center;
		}
			@media (min-width: 1200px)
			{
				#psBlockProgInfo p {
					width: 500px;
					margin: 0 15px 0 0;
					text-align: left;
				}
			}
				@media (min-width: 1450px)
				{
					#psBlockProgInfo p {
						width: 668px;
						font-size: 36px;
						margin-right: 30px;
					}
				}

		#psBlockProgInfo button, #bpmContainer button {
			display: block;
			margin: auto;
			font-family: 'BigNoodleTitling';
			font-size: 36px;
			line-height: 36px;
			letter-spacing: 1px;
			color: #fff;
			border: none;
			border-radius: 10px;
			padding: 10px 26px;
			background: linear-gradient(to left, #575756, #000);
			box-shadow: 0px 0px 8px rgba(0, 0, 0, 1);
			cursor: pointer;
		}
		#psBlockProgInfo button:hover {
			background: linear-gradient(to left, #f92a2a, #cc1a1a);
		}
			@media (min-width: 1200px)
			{
				#psBlockProgInfo button { margin: 0; }
			}

/*
 * CENTRE FORM
 */
#centreFormSection { margin-top: 40px; }
	#cfMainTitle {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 183px;
		background: url("img/home/frise.jpg") repeat-x -103px 0;
	}
		@media (min-width: 1200px)
		{
			#cfMainTitle { margin-bottom: 82px; }
		}

	#cfMainTitle h2 {
		width: 305px;
		font-size: 48px;
		line-height: 48px;
		text-align: justify;
		margin: 0;
		text-shadow: #000 1px 1px 0, #000 0px 0px 13px;
	}
		@media (min-width: 1450px)
		{
			#cfMainTitle h2 {
				width: auto;
				font-size: 72px;
				line-height: 90px;
			}
		}
	
	@media (max-width: 1199px)
	{
		#centreFormSection .container-fluid > div:nth-child(even) {
			display: flex;
			flex-wrap: wrap;
			flex-direction: column-reverse;
		}
	}

	.cf-img { position: relative; }
		.cf-img .triangle-img {
			position: absolute;
			width: 0;
			height: 0;
			border-style: solid;
		}
			@media (max-width: 1199px)
			{
				.cf-img .triangle-img {
					border-width: 0 28.5px 31px 28.5px;
					border-color: transparent transparent #fff transparent;
					bottom: 0;
					left: calc(50% - 28.5px);
				}
			}

			@media (min-width: 1200px)
			{
				.cf-img .triangle-img { top: 11%; }
				#cfWLabo .cf-img .triangle-img, #cfBLabo .cf-img .triangle-img { top: 19%; }
				#centreFormSection .container-fluid > div:nth-child(odd) .cf-img .triangle-img {
					right: 0;
					border-width: 57.5px 57px 57.5px 0;
					border-color: transparent #fff transparent transparent;
				}
				#centreFormSection .container-fluid > div:nth-child(even) .cf-img .triangle-img {
					left: 0;
					border-width: 57.5px 0 57.5px 57px;
					border-color: transparent transparent transparent #fff;
				}
			}

	@media (min-width: 1450px)
	{
		#centreFormSection .container-fluid > div:nth-child(odd) .cf-txt article { padding: 0 17% 0 67px; }
		#centreFormSection .container-fluid > div:nth-child(even) .cf-txt article { padding: 0 67px 0 17%; }
	}

	.cf-txt article header h3 {
		font-size: 36px;
		font-weight: 500;
		text-align: center;
		margin: 23px 0 31px;
	}
		@media (min-width: 1450px)
		{
			.cf-txt article header h3 {
				font-size: 48px;
				text-align: left;
				margin: 0 0 36px;
			}
		}

		.cf-txt article header h3 span {
			display: block;
			font-size: 30px;
		}
	.cf-txt article p {
		font-size: 20px;
		padding: 0 15px;
		margin-bottom: 37px;
		hyphens: auto;
	}
	#cfBLabo .cf-txt article p { margin-bottom: 0; }
		@media (min-width: 1450px)
		{
			.cf-txt article p {
				font-size: 28px;
				margin-bottom: 0;
				padding: 0;
			}
		}

	@media (min-width: 1200px)
	{
		#centreFormSection .container-fluid > div { display: flex; }
		#centreFormSection .container-fluid > div:not(:last-child) { margin-bottom: 80px; }
			.cf-img, .cf-txt { width: 50%; }
				#centreFormSection .container-fluid .cf-img img { display: none; }
				
				#cfOffice .cf-img {
					background: url("img/home/locaux-1920w.jpg") no-repeat 0 0 / cover;
				}
				#cfClassroom .cf-img {
					background: url("img/home/salledeclasse-1920w.jpg") no-repeat 0 0 / cover;
				}
				#cfWLabo .cf-img {
					background: url("img/home/laboratoire-blanc-1920w.jpg") no-repeat 0 0 / cover;
				}
				#cfBLabo .cf-img {
					background: url("img/home/laboratoire-noir-1920w.jpg") no-repeat 0 0 / cover;
				}
	}

	@media (min-width: 2000px)
	{
		#cfClassroom .cf-txt { min-height: 664px; }
	}

/*
 * GEAR
 */
#gearSection {
	margin-top: 93px;
	padding-top: 55px;
	background: url("img/home/equipements-1920w.jpg") no-repeat center 0 / cover;
}
	@media (min-width: 1450px)
	{
		#gearSection {
			padding: 97px 0 110px;
			margin-top: 111px;
		}
	}

	@media (max-width: 1449px)
	{
		#gearSection .container { padding: 0 15px; }
	}

		#gearSection h2 {
			font-size: 36px;
			text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
			margin: 0 0 25px;
			text-align: center;
		}
			@media (min-width: 1450px)
			{
				#gearSection h2 {
					font-size: 72px;
					text-align: left;
					margin-bottom: 0;
				}
			}

		#gsST {
			font-size: 18px;
			text-align: center;
			text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
			margin: 0;
		}
			@media (min-width: 1450px)
			{
				#gsST {
					font-size: 30px;
					text-align: left;
				}
			}

		#gearSection video {
			max-width: 100%;
			box-sizing: border-box;
			border: 3px solid #fff;
			margin-top: 27px;
			box-shadow: 0px 0px 25px 10px rgba(0,0,0,0.8);
		}
			@media (min-width: 1450px)
			{
				#gearSection video {
					display: block;
					width: 1279px;
					margin: 41px auto 0;
				}
			}

		#gsTXT {
			margin-top: 35px;
			padding: 40px 15px;
			background-color: rgba(0, 0, 0, 0.48);
		}
			@media (min-width: 1450px)
			{
				#gsTXT {
					margin-top: 52px;
					padding: 13px 0;
				}
			}

			#gsTXT p {
				font-size: 18px;
				text-align: justify;
				hyphens: auto;
				margin: 0;
			}
				@media (min-width: 1200px)
				{
					#gsTXT p {
						width: 1140px;
						margin: auto;
					}
				}
					@media (min-width: 1450px)
					{
						#gsTXT p {
							width: 1279px;
							font-size: 24px;
						}
					}

/*
 * BE PIZZA MAKER
 */
#bePizzaMaker {
	background-color: #000;
	padding-top: 51px;
	box-shadow: 0px 12px 18px -6px rgba(0,0,0,0.91);
}
	@media (min-width: 1450px)
	{
		#bePizzaMaker {
			display: flex;
			padding-top: 0;
		}
	}

	#bpmContainer { padding: 0 15px 49px; }
		@media (min-width: 1450px)
		{
			#bpmContainer {
				width: 60%;
				padding: 110px 0 94px 164px;
				box-sizing: border-box;
			}
		}

		#bpmContainer h2 {
			font-size: 36px;
			margin: 0 0 42px;
		}
			@media (min-width: 1450px)
			{
				#bpmContainer h2 {
					font-size: 72px;
					margin-bottom: 39px;
				}
			}

		#bpmContainer p { font-size: 20px; }
			@media (min-width: 1450px)
			{
				#bpmContainer p { font-size: 30px; }
			}

		#bpmContainer button {
			background: linear-gradient(to left, #f92a2a, #cc1a1a);
			margin-top: 34px;
		}
			@media (min-width: 1450px)
			{
				#bpmContainer button { margin-top: 52px; }
			}

	@media (min-width: 1450px)
	{
		#bpmImg {
			width: 40%;
			background: url("img/home/devenez-pizzaiolo.png") no-repeat 0 0 / cover;
		}
	}

	#bpmImg img {
		-webkit-filter: grayscale(100%);
		filter: grayscale(100%);
	}
		@media (min-width: 776px)
		{
			#bpmImg img {
				display: block;
				margin: auto;
			}
		}
			@media (min-width: 1450px)
			{
				#bpmImg img { display: none; }
			}

/*
 * ACCESS MAP
 */
#accessMap { margin-top: 43px; }
	@media (min-width: 1200px)
	{
		#accessMap { margin-top: 103px; }
	}

	#accessMap h2 {
		font-size: 36px;
		text-align: center;
		margin: 0 0 35px;
	}
		@media (min-width: 1200px)
		{
			#accessMap h2 {
				font-size: 72px;
				text-align: left;
				margin-bottom: 50px;
			}
		}

	#accessMap .container p {
		font-size: 22px;
		padding: 0 15px;
		margin-bottom: 0;
		box-sizing: border-box;
	}
		@media (min-width: 1200px)
		{
			#accessMap .container p {
				font-size: 28px;
				padding: 0;
			}
		}

	#mapp0 { margin-top: 43px; }
		@media (min-width: 1200px)
		{
			#mapp0 { margin-top: 56px; }
		}

		#accessMap .mapp-wrapper { height: 322px; }
			@media (min-width: 1450px)
			{
				#accessMap .mapp-wrapper { height: 507px; }
			}

/*
 * FOOTER
 */
#footer { background-color: #000; }
	@media (min-width: 992px)
	{
		#footer { height: 420px; }
	}

	#footer .container {
		display: flex;
		align-items: center;
		align-content: flex-start;
		height: 100%;
		padding: 35px 15px;
		background: url("img/footer.svg") no-repeat 60% 50% / auto 382px;
	}
		@media (max-width: 991px)
		{
			#footer .container {
				flex-wrap: wrap;
				background-position: 50% 50%;
			}
		}

		@media (min-width: 768px)
		{
			#footer .container {
				width: 750px;
				box-sizing: border-box;
			}
		}
		@media (min-width: 992px)
		{
			#footer .container { width: 970px; }
		}
			@media (min-width: 1200px)
			{
				#footer .container {
					width: 1170px;
					max-width: 100%;
					padding: 0;
				}
			}

		#footerContactInfos {
			font-size: 24px;
			font-weight: 300;
			line-height: 29px;
		}
			@media (max-width: 991px)
			{
				#footerContactInfos, #footerNewsletter {
					flex-grow: 1;
					text-align: center;
				}
			}

			#footerLogo {
				position: relative;
				width: 333px;
				height: auto;
				margin-bottom: 37px;
				left: 37px;
				top: -29px;
			}
				@media (max-width: 991px)
				{
					#footerLogo {
						top: 3px;
						left: 0;
						margin-bottom: 29px;
					}
				}

			#footerAddress {
				margin-top: -48px;
				margin-bottom: 27px;
				box-sizing: border-box;
			}
				@media (max-width: 1199px)
				{
					#footerAddress { max-width: 360px; }
				}
					@media (max-width: 991px)
					{
						#footerAddress {
							max-width: 280px;
							padding-bottom: 30px;
							margin: 0 auto;
							line-height: 24px;
						}
					}

				#footerAddress .separator { padding: 0 3px; }

			#footerAddress, #footerSav, #footerEmail { padding-left: 62px; }
				@media (max-width: 991px)
				{
					#footerAddress, #footerSav, #footerEmail { padding-left: 0; }
				}

				@media (max-width: 991px)
				{
					#footerSav, #footerEmail { color: #999; }
				}

					#footerSav a { letter-spacing: -0.5px; }

					@media (max-width: 991px)
					{
						#footerSav a, #footerEmail a {
							display: block;
							font-size: 30px;
							line-height: 38px;
						}
					}

				@media (max-width: 991px)
				{
					#footerEmail { margin-top: 30px; }
				}

		#footerNewsletter {
			overflow: hidden;
			margin-left: auto;
			padding: 74px 23px 0 0;
		}
			@media (max-width: 1199px)
			{
				#footerNewsletter { padding-right: 0; }
			}
				@media (max-width: 991px)
				{
					#footerNewsletter {	padding: 0;	}
				}

			@media (min-width: 992px)
			{
				#footerNewsletter { max-width: 350px; }
			}

			#newsletterTitle {
				font-size: 30px;
				font-weight: 500;
				padding-bottom: 23px;
			}
				@media (max-width: 991px)
				{
					#newsletterTitle { margin-top: 91px; }
				}

			#footerNewsletter form p {
				position: relative;
				margin: 0;
			}
				@media (max-width: 991px)
				{
					#footerNewsletter form p {
						max-width: 570px;
						margin: auto;
					}
				}

				#footerNewsletter form p .wpcf7-form-control-wrap {
					display: block;
					box-sizing: border-box;
				}
					@media (max-width: 991px)
					{
						#footerNewsletter form p .wpcf7-form-control-wrap { padding-right: 50px; }
					}

					#footerNewsletter form #newsletterInput {
						display: block;
						width: 100%;
						min-width: 350px;
						max-width: 570px;
						height: 56px;
						font-size: 14px;
						line-height: 30px;
						padding: 10px 57px 10px 12px;
						color: #000;
						border: 1px solid #105e6a;
						background: #fff;
						box-sizing: border-box;
					}
						@media (max-width: 479px)
						{
							#footerNewsletter form #newsletterInput { min-width: 250px; }
						}

					#footerNewsletter form #newsletterInput:focus-visible { outline: none; }

					#footerNewsletter form p .wpcf7-submit {
						position: absolute;
						display: block;
						width: 57px;
						height: 56px;
						text-align: center;
						color: #fff;
						padding: 8px;
						font-size: 23px;
						font-weight: bold;
						border: none;
						background-color: #211f22;
						top: 0;
						right: 0;
					}
					#footerNewsletter form p .wpcf7-spinner {
						position: absolute;
						margin: 0;
						top: calc(50% - 12px);
						left: calc(50% - 12px);
					}
					#footerNewsletter .wpcf7-response-output { color: #fff; }

	#footerCopy {
		height: 80px;
		font-size: 20px;
		line-height: 80px;
		font-weight: normal;
		background-color: #404040;
	}
		@media (max-width: 991px)
		{
			#footerCopy {
				height: auto;
				padding: 18px 0;
				line-height: 25px;
			}
		}

		#footerCopy .separator { padding: 0 4px; }
			@media (max-width: 660px)
			{
				#footerCopy .separator {
					display: block;
					visibility: hidden;
					height: 0;
					line-height: 0px;
				}
			}