/********* FONTS ET GÉNÉRAL *********/

:root {
    --primary: #1d3054;
    --secondary: #e4f2ff;
    --tertiary: #f39200;
    --grey: #f4f4f4;
    --red: #b20000;
    --green: #69d200;
}


/* Couleurs Principales */
.bg_primary{
    background-color:var(--primary) !important;
}
.bg_secondary{
    background-color: var(--secondary) !important;
}
.bg_top_secondary{
    background: linear-gradient(0deg, rgba(255,255,255,1) 50%, var(--secondary) 50%);
}
.bg_bottom_secondary{
    background: linear-gradient(0deg, var(--secondary) 50%, rgba(255,255,255,1) 50%);
}
.bg_tertiary{
    background-color: var(--tertiary) !important;
}
.primary{
    color:var(--primary) !important;
}
.secondary{
    color: var(--secondary) !important;
}
.tertiary{
    color: var(--tertiary) !important;
}
.bg_grey{
    background: var(--grey) !important;
    color:#505050 !important;
}
.bg_red{
    background: var(--red) !important;
}
.bg_green{
    background: var(--green) !important;
}
.bg_white{
    background: #fff !important;
}


/* Générales */
.liste_radio label{
    background: var(--grey);
    color:var(--primary);
}
.liste_radio label:hover,
.liste_radio input:checked + label{
    background: var(--primary);
	color:#FFF;
}

body{
	font-family: 'Source Sans 3', sans-serif;
	color:var(--primary);
    font-size: 1.8rem;
}

.row {
    display: flex;
}
.row .right {
	order:2;
}
.vcenter{
    display: flex;
	justify-content:center;
	align-items:center;
}

img, video {
    max-width: 100%;
    /* width: auto; */
    height: auto;
}

a{
    text-decoration: none;
	color:var(--primary);
}

p{
    color:var(--primary);
}

h1{
	font-weight:700;
}
h2{
    font-size: 5rem;
}
h3{
    font-size: 3.5rem;
}
h4{
    font-size: 2rem;
}

ul li{
	line-height:2rem;
	margin:10px 0 10px 30px;
	list-style:square outside;
}
ol li{
	line-height:2rem;
	margin:10px 0 10px 30px;
}

.titre,h1,h2,h3,h4{
	font-family: 'DM Serif Display', serif;
    font-weight:400;
    line-height:1.2em;
}

.btn{
    text-transform: uppercase;
    font-weight: 700;
    border-style: none;
    border-width: 0;
    cursor:pointer;
	background:var(--primary);
	color:#FFF;
    border-radius:10px;
}

section{
	padding:100px 0;
}
section.head{
	padding:150px 0 20px 0;
}
.bg-img{
	padding: 300px 0;
	background-position:center center;
	background-size:cover;
	background-repeat:no-repeat;
	background-color:var(--primary);
}
.box{
    padding: 15px;
}

.message_session{
    position: fixed;
    width:300px;
    height: auto;
    bottom:90px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
}
.message_session .content{
    opacity:0;
    bottom:-20px;
    position: relative;
    background: #FFF;
    padding:10px;
    text-align: left;
    padding-right:40px;
    margin-top: 10px;
    overflow: hidden;
    -webkit-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    display: flex;
    align-items: center;
}
.message_session .content .icon_content svg{
    fill:#FFF;
}
.message_session.message .content{
    background:#eafaf1;
}
.message_session .content .icon_content{
    font-size: 2rem;
    margin-right: 10px;
    padding: 10px;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.message_session.message .content .message_content{
    color:#2ecc71;
    font-weight: bold;
}
.message_session.message .content .icon_content{
    background: #2ecc71;
    color:#FFF;
}
.message_session.erreur .content{
    background:#fee9e7;
}
.message_session.erreur .content strong{
    color:#f22613;
}
.message_session.erreur .content .icon_content{
    background: #f22613;
    color:#FFF;
}
.message_session.message .content.active,
.message_session.erreur .content.active{
    opacity:1;
    bottom:0;
}
.message_session.message .content.inactive,
.message_session.erreur .content.inactive{
    opacity:0;
    margin-top:0;
    /* height:0; */
    padding-top: 0;
    padding-bottom: 0;
    bottom:-20px;
}
.message_session .close{
    position: absolute;
    top:50%;
    right: 10px;
    height: 24px;
    width: 24px;
    display: block;
    cursor: pointer;
    margin-top: -12px;
}

.rounded{
    border-radius: 10px;
}
.padding_wrapper{
    padding: 0 15%;
}
/* HEADER */

header{
	width:100%;
	position:fixed;
	top:0;
	padding:10px;
    z-index: 10;
}
header .header_content{
	width:100%;
    max-width: 1440px;
    margin: 0 auto;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
	padding:10px;
}
header .logo{
	width:160px;
	float:left;
	position:relative;
	z-index:200;
	-o-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
header.minus .logo{
	width:100px;
}
header .logo a img{
	width:100%;
}

header a#burger {
	position:absolute;
	overflow:hidden;
	top:25px;
	right:25px;
	width:30px;
	display:block;
	cursor:pointer;
	z-index:110;
	display:none;
}
header a#burger span{
	width:100%;
	height:1px;
	display:block;
	background:#000;
	margin-bottom:10px;
    -webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
header a#burger span:last-child{
	margin-bottom:0;
}
header a#burger.active span:nth-child(1){
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform-origin:0 0 0;
	-webkit-transform-origin:0 0 0;
	-moz-transform-origin:0 0 0;
	-ms-transform-origin:0 0 0;
}
header a#burger.active span:nth-child(2){
	margin-left:250px;
}
header a#burger.active span:nth-child(3){
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform-origin:0 0 0;
	-webkit-transform-origin:0 0 0;
	-moz-transform-origin:0 0 0;
	-ms-transform-origin:0 0 0;
}

header nav {
	float:right;
	text-align:right;
	-o-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

header nav ul.menu{
	float:left;
}
header nav span.rdv_medoucine{
	float:left;
    /* padding-top: 15px; */
    margin-left: 10px;
    height: 100%;
    display: block;
}
header nav ul.menu li{
	float:left;
	padding:0;
	margin:0;
	list-style:none;
}
header nav ul.menu li a{
	padding:10px;
	color:var(--primary);
	display:block;
}
header nav ul.menu li a.active,
header nav ul.menu li a:hover{
	color:var(--tertiary);
}
header #contact{
	color:#FFF;
	transform: rotate(90deg);
	transform-origin: top right;
	position:fixed;
	top:250px;
	right:0;
    display: flex;
    gap: 10px;
    border-radius : 0 0 10px 10px;
}
header #contact svg{
    fill: #FFF;
    height: 20px;
    width: 20px;
}

/* HEADER END */



/* FOOTER */

.box_contact{
    margin: 0 auto;
    /* width: 100%; */
    /* max-width:1200px; */
    padding: 70px;
    color:#FFF;
}

footer{
    background-color: var(--secondary);
	clear:both;
	padding:0 0 50px 0;
	position:relative;
	color:var(--primary);
}
/* footer:after{
	content:'';
	display:block;
	width:655px;
	height:410px;
	position:absolute;
	bottom:0;
	right:0;
	background:url(/IMG/footer.webp) no-repeat left bottom;
	z-index:-1;
} */

footer .menu {
	overflow:hidden;
}
footer .menu li{
	display:inline-block;
	padding:0 10px;
	margin:0;
	/* border-right:1px solid var(--primary); */
	list-style:none;
}
footer .menu li:first-child{
	padding-left:0;
}
footer .menu li:last-child{
	border-right:none;
}
footer .menu li a{
    padding: 5px 0;
    display: inline-block;
}
footer .social{
	font-size:1.8rem;
    display: flex;
    gap: 5px;
    align-items: center;
    justify-content: flex-end;
}
footer .social a{
	font-size:1.8rem;
	color:var(--primary);
    width: 20px;
    height: 20px;
}
footer .social svg{
    width: 20px;
    height: 20px;
	fill:var(--primary);
}

footer .datadock{
	font-size:1.4rem;
	padding-top:20px;
}

/* FOOTER END */

/* SURCHARGE PAGES */
.intro{
	padding: 15px;
	margin-top:-100px;
	background:#FFF;
	position:relative;
}
iframe .intro,
#tinymce .intro{
	margin-top:0;
}

.bobor{
	position: relative;
}
.bobor::after{
	content:'';
	position: absolute;
	bottom: -100px;
	right: 0;
	display: block;
	width: 2px;
	height: 200px;
	background-color: var(--primary);
}


/* Contact */

.check{
	border-bottom:2px solid green;
}

.nocheck{
	border-bottom:2px solid red;
}
.ligne_form#sujet{
	position:absolute;
	left:-1000%;
}
.ligne_form label span{
	font-size:1.4rem;
}


/* 404 */
section#page_404{
	padding:150px 0;
}


