

/**
* PRESENTATION
**/
#contact-main {
	max-width: 1240px;
	margin: 0 auto;
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	justify-content: flex-start;
	-ms-align-items: stretch;
	align-items: stretch;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
}

#contact-main > .form-legal {
	text-align: center;
	font-size: 12px;
	font-size: 0.6rem;
	font-weight: 700;
	color: #767676;
	margin-top: 30px;
	-webkit-flex: 0 0 100%;
	-moz-flex: 0 0 100%;
	-ms-flex: 0 0 100%;
	-o-flex: 0 0 100%;
	flex: 0 0 100%;
}

#contact-main > picture {
	position: absolute;
	z-index: -1;
	right: -130px;
	bottom: 20px;
	pointer-events: none;
	filter: brightness(1.03);
}

#contact-main > article {
	padding-right: 33px;
	display: inline-block;
	vertical-align: top;
	width: 50%;
	-webkit-flex: 0 0 50%;
	-moz-flex: 0 0 50%;
	-ms-flex: 0 0 50%;
	-o-flex: 0 0 50%;
	flex: 0 0 50%;
	position: relative;
	z-index: 1;
}

#contact-main > article .entry-header {
	margin-bottom: -10px;
}

#contact-main > article .entry-content {
	max-width: 380px;
	margin-right: 0;
	margin-left: auto;
}

#contact-main > article .entry-content p {
	text-align: right;
	font-weight: 400;
	position: relative;
	padding-right: 17px;
}

#contact-main > article .entry-content p:after {
	content: '';
	display: block;
	width: 31px;
	height: 31px;
	position: absolute;
	right: -32px;
	top: 40%;
	margin-top: -15px;
	background-repeat: no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	background-position: center center;
}

#contact-main > article .entry-content p strong {
	font-weight: 700;
	color: #DF3A4A;
}

#contact-main > article .entry-content a.link-access {
	text-transform: none;
	color: #DF3A4A;
	font-size: 18px;
	font-size: 0.9rem;
	position: absolute;
	right: 13px;
	bottom: 80px;
	margin: 0 auto;
	z-index: 1;
	padding: 5px 10px;
	background-color: transparent;
	background-image: none;
	background: none;
	-webkit-transition: color .2s ease-in-out;
	-o-transition: color .2s ease-in-out;
	transition: color .2s ease-in-out;
}

#contact-main > article .entry-content a.link-access:hover {
	color: #791A10;
}

#contact-main > article .entry-content a.link-access:focus-visible {
	color: #791A10;
}

#contact-main > article .entry-content a.link-access svg {
	display: inline-block;
	vertical-align: middle;
	margin-right: 5px;
	width: 28px;
	height: 28px;
}
#contact-main > article .entry-content a.link-access svg path {
	fill: currentColor;
}

#contact-main > aside {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	min-height: 440px;
	padding-top: 25px;
	filter: drop-shadow(0px 1px 3px rgba(0,0,0,.2));
	-webkit-flex: 0 0 50%;
	-moz-flex: 0 0 50%;
	-ms-flex: 0 0 50%;
	-o-flex: 0 0 50%;
	flex: 0 0 50%;
	position: relative;
	z-index: 2;
}

#contact-main > aside #contact-form {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	justify-content: center;
	-ms-align-items: flex-start;
	align-items: flex-start;
	min-height: 100%;
	margin-right: -310px;
	clip-path: polygon(0 0, calc(100% - 310px) 0, 100% 100%, 0 100%);
	background-color: #F7F7F7;
	padding: 60px 300px 50px 40px;
}

#contact-main > aside #contact-form .scf-group {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	max-width: none;
	margin-right: 0;
	padding: 0 6px;
	position: relative;
}

#contact-main > aside #contact-form .scf-group.scf-textarea {
	width: 100%;
}

#contact-main > aside #contact-form .scf-group .scf-group {
	display: block;
	width: 100%;
	padding: 0;
	margin-left: 0;
}

#contact-main > aside #contact-form .wpcf7-spinner {
	display: none;
}

#contact-main #contact-main__separator {
	max-width: 750px;
	position: relative;
	margin: 20px 0 0 auto;
	-webkit-flex: 0 0 100%;
	-moz-flex: 0 0 100%;
	-ms-flex: 0 0 100%;
	-o-flex: 0 0 100%;
	flex: 0 0 100%;
}

#contact-main #contact-main__separator hr {
	max-width: none;
	width: 100%;
	margin: 0;
}















/**
* SCF
*/
body .scf-group .scf-error-symbol {
	display: none;
	position: absolute;
	top: 14px;
	right: 15px;
	width: 15px;
	height: 15px;
	cursor: help;
}

body .scf-group .scf-error-symbol > span:first-child {
	position: absolute;
	width: 100%;
	text-align: center;
	line-height: 15px;
	color: #E20026;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
}

body .scf-group.scf-error .scf-error-symbol {
	display: block;
}


body.page-template-contact #content #contact-form .scf-group .scf-error-text {
	position: absolute;
	right: 33px;
	top: 8px;
	z-index: 9;
	color: #FFFFFF;
	font-size: 11px;
	line-height: 1;
	letter-spacing: 0.02em;
	border-radius: 5px;
	padding: 6px 9px;
	pointer-events: none;
	opacity: 0;
	-webkit-transform: translateX(50%);
	-ms-transform: translateX(50%);
	-o-transform: translateX(50%);
	transform: translateX(50%);
	-webkit-transition: top .2s ease-in-out, opacity .2s ease-in-out;
	-o-transition: top .2s ease-in-out, opacity .2s ease-in-out;
	transition: top .2s ease-in-out, opacity .2s ease-in-out;
}

body.page-template-contact #content #contact-form .scf-group.scf-error:has(.scf-error-symbol:hover) .scf-error-text {
	opacity: 1;
	top: 5px;
}

body.page-template-contact #content #contact-form .scf-group.scf-error .scf-error-text {
	background-color: #212121;
}

body.page-template-contact #content #contact-form .scf-group .scf-error-text:not(:empty):before {
	position: absolute;
	left: 50%;
	top: 100%;
	border: 5px solid transparent;
	border-top-color: #212121;
	margin-left: -5px;
	margin: 0;
}

body.page-template-contact #content #contact-form .scf-group.scf-group-name-message {
	margin-bottom: 30px;
}


/* Form */

body.page-template-contact #content #contact-form .wpcf7-form {
	font-size: 0;
	white-space: nowrap;
	position: relative;
}

body.page-template-contact #content #contact-form .wpcf7-form > .contact-form-loading-anim {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	text-align: center;
	display: none;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	z-index: 1;
	font-size: 20px;
	font-size: 1rem;
	color: #000;
}

body.page-template-contact #content #contact-form .wpcf7-form > .contact-form-loading-anim svg {
	width: 50px;
	height: 50px;
}

body.page-template-contact #content #contact-form .wpcf7-form.submitting > .contact-form-loading-anim {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

body.page-template-contact #content #contact-form .wpcf7-form.submitting > #contact-form-inputs {
	opacity: .4;
}

body.page-template-contact #content #contact-form .wpcf7-form:after {
	content: '';
	display: block;
	float: none;
	clear: both;
}

body.page-template-contact #content #contact-form .wpcf7-form > div {
	display: inline-block;
	vertical-align: middle;
	width: 100%;
	float: none;
	white-space: normal;
}

body.page-template-contact #content #contact-form .wpcf7-form input[type="submit"].screen-reader-text:focus-visible + input[type="submit"][tabindex="-1"] {
	color: #E20026;
	background-color: #FFFFFF;
	outline: 2px dotted #E20026;
	outline-offset: 0px;
	-webkit-transition: none;
	-o-transition: none;
	transition: none;
}

body.page-template-contact #content #contact-form .wpcf7-form #wpcf7-nb-errors {
	background-color: transparent;
	color: #000;
	border: none;
	border-radius: 0;
	padding: 0;
	margin: 0;
	min-width: 0;
	display: block;
	-webkit-box-shadow: none;
	box-shadow: none;
	outline: 0;
	text-transform: none;
	text-decoration: none;
	text-align: center;
	white-space: normal;
	width: 100%;
	height: 0;
	overflow: hidden;
	-webkit-transition: height .8s cubic-bezier(.8,0,.2,1);
	-o-transition: height .8s cubic-bezier(.8,0,.2,1);
	transition: height .8s cubic-bezier(.8,0,.2,1);
	pointer-events: none;
}

body.page-template-contact #content #contact-form .wpcf7-form #wpcf7-nb-errors:focus-visible {
	height: 56px;
}

body.page-template-contact #content #contact-form .wpcf7-form #wpcf7-nb-errors span {
	display: inline-block;
	text-transform: uppercase;
	text-decoration: none;
	text-align: center;
	font-size: 16px;
	font-size: 0.941176rem;
	font-size: max(0.941176rem, 14px);
	font-weight: 800;
	font-style: normal;
	letter-spacing: 0;
	line-height: 1;
	color: #FFFFFF;
	background-color: #E20026;
	background-image: none;
	overflow: visible;
	position: relative;
	border: none;
	border-radius: 9999px;
	padding: 6px 10px 5px 10px;
	margin-top: 9px;
	outline: 0;
	cursor: pointer;
	pointer-events: all;
}

body.page-template-contact #content #contact-form .wpcf7-form #wpcf7-nb-errors:focus-visible span {
	color: #E20026;
	background-color: #FFFFFF;
	outline: 2px dotted #E20026;
	outline-offset: 0px;
}

body.page-template-contact #content #contact-form .wpcf7-form #contact-form-inputs {
	position: relative;
	opacity: 1;
	top: 0;
	-webkit-transition: opacity .5s ease-in-out, top .5s ease-in-out;
	-o-transition: opacity .5s ease-in-out, top .5s ease-in-out;
	transition: opacity .5s ease-in-out, top .5s ease-in-out;
}





/* Response */

body.page-template-contact #content #contact-form #contact-form-response {
	position: absolute;
	top: 20px;
	left: 0;
	opacity: 0;
	pointer-events: none;
	width: 100%;
	height: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-webkit-transition: opacity .5s ease-in-out, top .5s ease-in-out;
	-o-transition: opacity .5s ease-in-out, top .5s ease-in-out;
	transition: opacity .5s ease-in-out, top .5s ease-in-out;
}

body.page-template-contact #content #contact-form #contact-form-response > a {
	display: table;
	width: auto;
	text-decoration: none;
	padding: 8px 11px 4px 11px;
	font-size: 16px;
	font-size: 0.8rem;
	font-weight: 400;
	font-style: normal;
	line-height: 1;
	text-decoration: none;
	background-image: none;
	background-color: transparent;
	background: none;
}

body.page-template-contact #content #contact-form #contact-form-response > a span {
	padding: 2px 0;
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAABAQMAAAAhLob3AAAABlBMVEUAAADiACbdDDj8AAAAAXRSTlMAQObYZgAAAApJREFUCNdjaAAAAIIAgd1DavQAAAAASUVORK5CYII=');
	background-repeat: repeat-x;
	-webkit-background-size: auto;
	background-size: auto;
	background-position: bottom left;
}

body.page-template-contact #content #contact-form #contact-form-response > a:hover {
	color: #5C5C5C;
}

body.page-template-contact #content #contact-form #contact-form-response > a:hover span {
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAABAQMAAAAhLob3AAAABlBMVEUAAABcXFy0EmGcAAAAAXRSTlMAQObYZgAAAApJREFUCNdjaAAAAIIAgd1DavQAAAAASUVORK5CYII=');
}

body.page-template-contact #content #contact-form #contact-form-response > a:focus-visible {
	color: #5C5C5C;
}

body.page-template-contact #content #contact-form #contact-form-response > a:focus-visible span {
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAABAQMAAAAhLob3AAAABlBMVEUAAABcXFy0EmGcAAAAAXRSTlMAQObYZgAAAApJREFUCNdjaAAAAIIAgd1DavQAAAAASUVORK5CYII=');
}

body.page-template-contact #content #contact-form #contact-form-response > a span:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	border: 4px solid transparent;
	border-right-color: currentColor;
	margin-right: 7px;
	margin-top: -1px;
	border-left: none;
	opacity: .9;
}

body.page-template-contact #content #contact-form #contact-form-response-inner {
	position: relative;
	margin-bottom: 40px;
}


body.page-template-contact #content #contact-form .wpcf7-response-output {
	font-size: 20px;
	font-size: 1.17647rem;
	font-weight: 500;
	line-height: 1;
	max-width: 290px;
	border: none;
	padding: 0;
	text-align: center;
	white-space: normal;
	position: relative;
	margin: 0;
}

body.page-template-contact #content #contact-form .wpcf7-form.spam #contact-form-inputs,
body.page-template-contact #content #contact-form .wpcf7-form.invalid #contact-form-inputs,
body.page-template-contact #content #contact-form .wpcf7-form.failed #contact-form-inputs,
body.page-template-contact #content #contact-form .wpcf7-form.sent #contact-form-inputs {
	top: -20px;
	opacity: 0;
}

body.page-template-contact #content #contact-form .wpcf7-form.spam #contact-form-response,
body.page-template-contact #content #contact-form .wpcf7-form.invalid #contact-form-response,
body.page-template-contact #content #contact-form .wpcf7-form.failed #contact-form-response,
body.page-template-contact #content #contact-form .wpcf7-form.sent #contact-form-response {
	top: 0px;
	opacity: 1;
	pointer-events: all;
}














.contact-form-loading-anim circle {
	stroke-width: 6px;
	stroke: #E0081D;
	stroke-dasharray: 150 257;
	stroke-dashoffset: 150;
	fill: none;
	-webkit-animation: loading_circle 1s infinite linear;
	-moz-animation: loading_circle 1s infinite linear;
	-o-animation: loading_circle 1s infinite linear;
	animation: loading_circle 1s infinite linear;
}

@-webkit-keyframes loading_circle {
	0% { stroke-dashoffset: 150; stroke: #E0081D; }
	12.5% { stroke: #F1940A; }
	25% { stroke: #F8E91B; }
	37.5% { stroke: #D3D843; }
	50% { stroke: #86CCD1; }
	62.5% { stroke: #2BA9DC; }
	75% { stroke: #13235B; }
	87.5% { stroke: #86177D; }
	100% { stroke-dashoffset: -257; stroke: #E0081D; }
}

@-moz-keyframes loading_circle {
	0% { stroke-dashoffset: 150; stroke: #E0081D; }
	12.5% { stroke: #F1940A; }
	25% { stroke: #F8E91B; }
	37.5% { stroke: #D3D843; }
	50% { stroke: #86CCD1; }
	62.5% { stroke: #2BA9DC; }
	75% { stroke: #13235B; }
	87.5% { stroke: #86177D; }
	100% { stroke-dashoffset: -257; stroke: #E0081D; }
}

@-o-keyframes loading_circle {
	0% { stroke-dashoffset: 150; stroke: #E0081D; }
	12.5% { stroke: #F1940A; }
	25% { stroke: #F8E91B; }
	37.5% { stroke: #D3D843; }
	50% { stroke: #86CCD1; }
	62.5% { stroke: #2BA9DC; }
	75% { stroke: #13235B; }
	87.5% { stroke: #86177D; }
	100% { stroke-dashoffset: -257; stroke: #E0081D; }
}

@keyframes loading_circle {
	0% { stroke-dashoffset: 150; stroke: #E0081D; }
	12.5% { stroke: #F1940A; }
	25% { stroke: #F8E91B; }
	37.5% { stroke: #D3D843; }
	50% { stroke: #86CCD1; }
	62.5% { stroke: #2BA9DC; }
	75% { stroke: #13235B; }
	87.5% { stroke: #86177D; }
	100% { stroke-dashoffset: -257; stroke: #E0081D; }
}






