/***********************************
OVERRIDE
***********************************/
html, body {
	font-size: 0.95em;
	/*line-height: normal;*/
	line-height: 1.4em;
	font-family: "Open Sans", Verdana, sans-serif;
	color: #414141;
	margin: 0;
	padding: 0;
	overflow-wrap: break-word;
	word-break: break-word;
}

* {
	box-sizing: border-box;
}
*:hover{ text-decoration:none;}

table {
	border:0;
	border-collapse: collapse;
	table-layout: fixed;
	max-width:100%;
}
tr {
	border:0;
}
.hr {
    background: none repeat scroll 0 0 #E8E8E8;
    margin: 20px 0 20px;
	height: 1px;
    line-height: 0;
}

img {
	border:0;
	height:auto;
	display: block;
	max-width:100%;
}

a {
	text-decoration:none;
	color:inherit;
}
a:hover span {opacity : 0.7;}

ul{
	list-style:none;
	padding: 0;
	margin: 0;
}
ol{margin: 0;}
ul > li{ margin: 2px 0; vertical-align: top;}
ol > li{ margin: 2px 0;}

div {
	vertical-align: top;
	max-width: 100%;
}

sup {text-transform: lowercase !important;}

p {
	margin: 10px 0;
	padding: 0;
}

.none{display:none !important;}

/***********************************
OVERRIDE EXTERNAL LIBRARIES
***********************************/

/* Override RWD Table responsive */
.rwd-table-select {display: none;}
.enhanced th, .enhanced td {display: table-cell;}

/* Override Swiper */
.swiper-pagination {
	position: relative !important;
	bottom:0 !important;
	margin-top: 20px;
}
.swiper-button-next, .swiper-button-prev{
	color:#d33756 !important;
	padding: 20px;
	background-color: rgba(255,255,255,0.8);
	border-radius: 15px;
	margin: 5px;
}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled{
	display:none;
}
.swiper-pagination-bullet{
	background-color: #9E9E9E !important;
	height: 15px !important;
	width: 15px !important;
}
.swiper-pagination-bullet-active{
	background-color: #ffffff !important;
	border: 3px solid #d33756;
}
.swiper-button-next{right:0 !important;}
.swiper-button-prev{left:0 !important;}
.swiper-button-next:after, .swiper-button-prev:after{
	font-weight: 600 !important;
	font-size:2.3em !important;
}
.swiper-slide {
	height: auto !important;
	align-self: stretch !important;
}
.swiper-wrapper {
	height: auto !important;
}

/* Override lightslider */
div.LSContainer {
	padding:0 40px;
	position:relative;
}
.lSAction > a {background-image: url('../../public/img/controls.png') !important;}
.lSAction > .lSNext {
	background-position: -35px 0 !important;
	right: 0 !important;
}
.lSAction > .lSPrev {left: 0px !important;}
.lSSlideOuter .lSPager.lSpg > li:hover a, .lSSlideOuter .lSPager.lSpg > li.active a {
	background-color: #ffffff !important;
	border: 3px solid #d33756;
}
.lSSlideOuter .lSPager.lSpg > li a {
	background-color: #9E9E9E !important;
	border-radius: 50px !important;
	height: 15px !important;
	width: 15px !important;
	transition: none !important;
}
.lSSlide {max-width: none !important;}
.lSSlideOuter .lSPager.lSpg{margin: 25px 0 0 !important;}

/*Override nice-select */
select {display: inline !important;}
select.change {display: none !important;}
.nice-select {min-width:270px !important; font-size:1.1em !important;}
.nice-select .list {min-width:270px !important;}
.nice-select .current {text-transform: uppercase; font-weight: 600; text-align: center;}

/*Override menu-dl */
.dl-menuwrapper {max-width: none !important;}
#dl-menu-account {max-width:450px !important;}

/*Override LEaflet */
.marker-cluster{max-width: none;}

/***********************************
COMMON ELEMENTS
***********************************/
.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}

.center {text-align:center !important;}
.left {text-align:left !important;}
.right {text-align:right !important;}
.centered-element {
	position: absolute;
	top: 50%;  /* Place le haut de l'élément au milieu vertical */
	left: 50%; /* Place la gauche de l'élément au milieu horizontal */
	transform: translate(-50%, -50%); /* Corrige la moitié de la largeur et de la hauteur */
}

.video{
	border: 1px dashed #CCCCCC;
	width: 900px;
	max-width: 100%;
	height: 507px;
}

.more {display: none;}

div.picture_preview{
	margin: 5px;
	width: 140px;
	display: inline-block;
	position: relative;
}
div.picture_preview > img{
	max-width:100%;
	max-height:100%;
	border: solid 1px #414141;
	margin: auto 0;
}
div.picture_preview > a.picture_preview_remove{
	line-height: 17px;
	height: 17px;
	text-align: center;
	top: 3px;
	right:3px;
	width: 17px;
	border-radius: 20px;
	background-color: #fff;
	position:absolute;
	display:block;
	cursor:pointer;
}
div.picture_preview > a.picture_preview_remove:hover {
	background-color: #d33756;
}

div.picture_preview .zoom-overlay{
	width:40px;
	height:25px;
	background:rgba(255,255,255,0.8);
	opacity: 80%;
	color: white;
	text-align:center;
	position:absolute;
	right:0px;
	top:0px;
	transition:0.4s ease;
}
div.picture_preview:hover .zoom-overlay{
	width:100%;
	height:100%;
	transition:0.4s ease;
}
div.picture_preview:hover .zoom-overlay > i{
	position:absolute;
	top:35%;
	right:40%;
	transition:0.4s ease;
}

.sticker {
	display: none;
	position: absolute;
	left: 375px;
	background-color: #d33756;
	color: #ffffff;
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
	padding: 5px;
	width: 125px;
}
.sticker:after {
	content: '';
	display: block;
	position: absolute;
	right: 100%;
	top: 50%;
	margin-top: -10px;
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-right: 10px solid #d33756;
	border-bottom: 10px solid transparent;
	border-left: 10px solid transparent;
}

.sticker_ads_flags {
	position: absolute;
	right: 5px;
	top: 5px;
}
.sticker_ads_flags > div {
	display: block;
	background-color: #d33756;
	padding:1px 4px;
	margin-bottom:5px;
	color: #f1f1f1;
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 0.9em;
	text-align: center;
}

.sticker_MAX, .sticker_NOLIMIT, .sticker_TOP{
	height: 50px;
	left: -3px;
	position: absolute;
	top: -3px;
	width: 50px;
	z-index: 2;
}
.sticker_NOLIMIT{background: rgba(0, 0, 0, 0) url("../../public/img/marker_promo_green.png") no-repeat scroll 0 0;}
.sticker_MAX{background: rgba(0, 0, 0, 0) url("../../public/img/marker_blank_red.png") no-repeat scroll 0 0;}
.sticker_TOP{background: rgba(0, 0, 0, 0) url("../img/marker_top_red.png") no-repeat scroll 0 0;}


.sticker_3M_FREE_FR, .sticker_3M_FREE_DE{
	height: 75px;
	left: -6px;
	position: absolute;
	top: -6px;
	width: 75px;
	z-index: 2;
}
.sticker_3M_FREE_FR{background: rgba(0, 0, 0, 0) url("../img/marker_3months_offer_FR.png") no-repeat scroll 0 0;}
.sticker_3M_FREE_DE{background: rgba(0, 0, 0, 0) url("../img/marker_3months_offer_DE.png") no-repeat scroll 0 0;}

.sticker_ads_company {
	display: inline-block;
	padding: 2px 10px 2px 5px;
	color: #FFF;
	font-weight: 600;
	position: absolute;
	bottom: 10px;
	left: 0px;
	background-color: #414141;
	border-radius: 0px 5px 5px 0px;
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	font-size: 1.0em;
}
.sticker_ads_company > i{padding: 0 5px;}

.img_float_left{float:left; margin-right: 15px;}

.zoom-container:hover .zoom-icon{display:block;}
.zoom-icon{
	position : absolute;
	display: none;
 	top:40%;
	width:100%;
	text-align:center;
    transition: all 0.2s ease;
}

.clickable:hover{cursor: pointer;}
.flou{filter: blur(5px);}

.atc:hover {cursor: pointer;}

.menu-animate-in {
	display:block !important;
	animation: fadein 0.3s ease;
}

.pagination > a {
	display: inline-block;
	min-width: 30px;
	height: 30px;
	line-height: 30px;
	margin: 0 8px 8px 0;
	background-color: #f7f7f7;
	color: #414141;
	border-radius: 2px;
	text-align: center;
}
.pagination > a:hover {
	background-color: #d33756;
	color: #fff;
}
.pagination > a.current {
	cursor: default;
	background-color: #d33756;
	color: #fff;
}
.pagination > a.disabled {
	cursor: default;
	color: #9E9E9E;
}
.pagination > a.disabled:hover {
	background-color: #f7f7f7;
	color: #9E9E9E;
}

.icon_circle:after{
	font-style: normal;
	font-variant: normal;
	content:"\2b24";
	padding:0 3px;
	font-size: 1.5em;
}

@keyframes fadein {
	0% {
		transform: translateY(10px);
		opacity: 0;
	}
	100% {
		transform: translateY(0px);
		opacity: 1;
	}
}
@keyframes fadeout {
	0% {
		transform: translateY(0px);
		opacity: 1;
	}
	100% {
		transform: translateY(10px);
		opacity: 0;
	}
}


/***********************************
COLORS
***********************************/
.border_color_top_2{border-top: 5px solid #87D47F !important;}
.border_color_top_4{border-top: 5px solid #D889AE !important;}
.border_color_top_5{border-top: 5px solid #AEB936 !important;}
.border_color_top_8{border-top: 5px solid #F76481 !important;}
.border_color_top_9{border-top: 5px solid #DFD133 !important;}
.border_color_top_11{border-top: 5px solid #A981C0 !important;}
.border_color_top_12{border-top: 5px solid #F88F5B !important;}
.border_color_top_13{border-top: 5px solid #96C5B9 !important;}
.border_color_top_15{border-top: 5px solid #74BCD2 !important;}

.border_color_right_2{border-right: 8px solid #87D47F !important;}
.border_color_right_4{border-right: 8px solid #D889AE !important;}
.border_color_right_5{border-right: 8px solid #AEB936 !important;}
.border_color_right_8{border-right: 8px solid #F76481 !important;}
.border_color_right_9{border-right: 8px solid #DFD133 !important;}
.border_color_right_11{border-right: 8px solid #A981C0 !important;}
.border_color_right_12{border-right: 8px solid #F88F5B !important;}
.border_color_right_13{border-right: 8px solid #96C5B9 !important;}
.border_color_right_15{border-right: 8px solid #74BCD2 !important;}

.border_color_bottom_dark{border-bottom: 5px solid #414141 !important;}
.border_color_bottom_2{border-bottom: 5px solid #87D47F !important;}
.border_color_bottom_4{border-bottom: 5px solid #D889AE !important;}
.border_color_bottom_5{border-bottom: 5px solid #AEB936 !important;}
.border_color_bottom_8{border-bottom: 5px solid #F76481 !important;}
.border_color_bottom_9{border-bottom: 5px solid #DFD133 !important;}
.border_color_bottom_11{border-bottom: 5px solid #A981C0 !important;}
.border_color_bottom_12{border-bottom: 5px solid #F88F5B !important;}
.border_color_bottom_13{border-bottom: 5px solid #96C5B9 !important;}
.border_color_bottom_15{border-bottom: 5px solid #74BCD2 !important;}

.border_color_left_2{border-left: 8px solid #87D47F !important;}
.border_color_left_4{border-left: 8px solid #D889AE !important;}
.border_color_left_5{border-left: 8px solid #AEB936 !important;}
.border_color_left_8{border-left: 8px solid #F76481 !important;}
.border_color_left_9{border-left: 8px solid #DFD133 !important;}
.border_color_left_11{border-left: 8px solid #A981C0 !important;}
.border_color_left_12{border-left: 8px solid #F88F5B !important;}
.border_color_left_13{border-left: 8px solid #96C5B9 !important;}
.border_color_left_15{border-left: 8px solid #74BCD2 !important;}

.text_color_theme{color: #d33756 !important;}

.text_color_white{color: #ffffff !important;}
.text_color_gray{color: #ababab !important;}
.text_color_darkgray{color:#51575A !important;}
.text_color_black{color: #414141 !important;}
.text_color_orange{color:#F60 !important;}
.text_color_blu{color: #3366CC !important;}
.text_color_red{color: #c20101 !important;}
.text_color_green{color: #679867 !important;}

.text_color_2, .text_hover_color_2:hover{color: #87D47F !important;}
.text_color_4, .text_hover_color_4:hover{color: #D889AE !important;}
.text_color_5, .text_hover_color_5:hover{color: #AEB936 !important;}
.text_color_8, .text_hover_color_8:hover{color: #F76481 !important;}
.text_color_9, .text_hover_color_9:hover{color: #DFD133 !important;}
.text_color_11, .text_hover_color_11:hover{color: #A981C0 !important;}
.text_color_12, .text_hover_color_12:hover{color: #F88F5B !important;}
.text_color_13, .text_hover_color_13:hover{color: #96C5B9 !important;}
.text_color_15, .text_hover_color_15:hover{color: #74BCD2 !important;}

.background_color_theme{background-color: #d33756 !important;}
.background_color_0{background-color: #ECBF52 !important;}
.background_color_2{background-color: #87D47F !important;}
.background_color_4{background-color: #D889AE !important;}
.background_color_5{background-color: #AEB936 !important;}
.background_color_8{background-color: #F76481 !important;}
.background_color_9{background-color: #DFD133 !important;}
.background_color_11{background-color: #A981C0 !important;}
.background_color_12{background-color: #F88F5B !important;}
.background_color_13{background-color: #96C5B9 !important;}
.background_color_15{background-color: #74BCD2 !important;}

.background_color_opac_2{background-color: rgba(135,212,127,0.2) !important;}
.background_color_opac_4{background-color: rgba(216,137,174,0.2) !important;}
.background_color_opac_5{background-color: rgba(174,185,54,0.2) !important;}
.background_color_opac_8{background-color: rgba(247,100,129,0.2) !important;}
.background_color_opac_9{background-color: rgba(223,209,51,0.2) !important;}
.background_color_opac_11{background-color: rgba(169,129,192,0.2) !important;}
.background_color_opac_12{background-color: rgba(248,143,91,0.2) !important;}
.background_color_opac_13{background-color: rgba(150,197,185,0.2) !important;}
.background_color_opac_15{background-color: rgba(116,188,210,0.2) !important;}

.background_color_opac_m_2{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(135,212,127,0.1) 0%, rgba(135,212,127,0.1) 15%, white 50%) !important;}
.background_color_opac_m_4{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(216,137,174,0.1) 0%, rgba(216,137,174,0.1) 15%, white 50%) !important;}
.background_color_opac_m_5{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(174,185,54,0.1) 0%, rgba(174,185,54,0.1) 15%, white 50%) !important;}
.background_color_opac_m_8{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(247,100,129,0.1) 0%, rgba(247,100,129,0.1) 15%, white 50%) !important;}
.background_color_opac_m_9{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(223,209,51,0.1) 0%, rgba(223,209,51,0.1) 15%, white 50%) !important;}
.background_color_opac_m_11{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(169,129,192,0.1) 0%, rgba(169,129,192,0.1) 15%, white 50%) !important;}
.background_color_opac_m_12{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(248,143,91,0.1) 0%, rgba(248,143,91,0.1) 15%, white 50%) !important;}
.background_color_opac_m_13{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(150,197,185,0.1) 0%, rgba(150,197,185,0.1) 15%, white 50%) !important;}
.background_color_opac_m_15{background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(116,188,210,0.1) 0%, rgba(116,188,210,0.1) 15%, white 50%) !important;}


/***********************************
LAYERS
***********************************/
.layer_header{
	max-width:100%;
	padding: 0;
	margin: 0;
}
.layer_section{
	clear:both;
	float: none;
}

.layer_header_top {
	font-weight: 600;
	line-height: 40px !important;
	overflow:visible;
	position:relative;
	z-index:3;
}
.layer_header_middle {
	color: #ffffff;
	position: relative;
}
.layer_header_bottom {
	font-weight: 600;
	line-height: 1.4em;
	overflow:visible;
	position:relative;
	z-index:2;
	min-height: 10px;
}
.layer_background_header{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
}
.layer_background_header_parent {
	position: relative;
	display: block;
	background-color: rgba(0,0,0,0.5);
}
.layer_background_header_parent::after{
	content: ' ';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0.5;
	z-index: -1;

	background-repeat: no-repeat;
	background-size: cover;
	background-position: center -150px;
}

.layer_header_title{
	display: inline-block;
	width: 80%;
	margin-top: 90px;
	margin-bottom: 40px;
	padding: 20px 40px;
	position:relative;
	background-color: rgba(255,255,255,0.9);
	text-align: center;
	color: #414141;
}
.layer_header_title_wide{
	margin-top: 165px;
	margin-bottom: 125px;
	border-radius: 10px;
	box-shadow: 0 6px 20px rgb(0 0 0 / 20%);
	width: 90%;
}
.layer_header_title_ads{
	display: inline-block;
	max-width: 50%;
	margin-top: 90px;
	margin-bottom: 50px;
	padding: 20px;
	position:relative;
	text-align: left;
	color: #414141;
	min-height:110px;
}
.layer_header_title_sheets{
    display: inline-block;
    max-width: 80%;
    margin-top: 60px;
    margin-bottom: 15px;
    padding: 20px;
    position:relative;
    text-align: left;
    color: #414141;
    min-height:110px;
}

.layer_header_border_color{
	height:10px;
}

.layer_footer{
	clear:both;
	float: none;
	max-width:100%;
	padding: 30px 20px;
	box-shadow: 0px 5px 10px rgba(114, 114, 114, 0.16) inset;
}

.layer_white{
	background-color: #ffffff;
	color: #414141;
}
.layer_gray{
	background-color: #f4f4f4;
	color: #414141;
}
.layer_darkgray{
	background-color: #ececec;
	color: #414141;
}
.layer_black{
	background-color: #414141;
	color: #ffffff;
}

.layer_background_testimonial{
	background-repeat: no-repeat;
	background-size: auto;
	background-position: bottom left;
	background-image: url("../../public/img/layers/bg_home_testimonials.jpg");
	padding-bottom: 250px;
}

.layer_background_subject{
	position: relative;
	display: block;
	/*background-color: initial;*/
}

.layer_background_subject::after{
	content: ' ';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;

	background-repeat: no-repeat;
	background-position: right top;
}

.background_opacity_white{background-color: rgba(255, 255, 255, 0.3);}
.background_opacity_black{background-color: rgba(0, 0, 0, 0.3);}

section.layer_background_kids {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left bottom;
	background-image: url('/public/img/layers/bg_home_kids.jpg');
}
section.layer_background_kids_2 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left center;
	background-image: url('/public/img/layers/kids/subject_2.jpg');
}
section.layer_background_kids_4 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left center;
	background-image: url('/public/img/layers/kids/subject_4.jpg');
}
section.layer_background_kids_9 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left center;
	background-image: url('/public/img/layers/kids/subject_9.jpg');
}
section.layer_background_kids_11 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left center;
	background-image: url('/public/img/layers/kids/subject_11.jpg');
}
section.layer_background_kids_12 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left center;
	background-image: url('/public/img/layers/kids/subject_12.jpg');
}
section.layer_background_kids_15 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left center;
	background-image: url('/public/img/layers/kids/subject_15.jpg');
}
.layer_container{
	margin: 0 auto;
	width: 1330px;
	padding: 30px 20px 50px 20px;
}
.layer_container_first{
	margin: 0 auto;
	width: 1330px;
	padding: 30px 20px 30px 20px;
}
.layer_container_nopadding{
	margin: 0 auto;
	width: 1330px;
	padding: 0;
}
.layer_container_narrow{
	margin: 0 auto;
	width: 1120px;
	padding: 30px 20px 50px 20px;
}
.layer_container_pro{
	margin: 0 auto;
	width: 1330px;
	padding: 30px 10px 50px 10px;
}
.layer_container_admin{
	margin: 0 auto;
	width: 1330px;
	padding: 30px 20px 30px 20px;
	background-color: white;
}
.layer_container_search{
	width: 100%;
	margin-top: 40px;
}

.layer_container_kids_index {
	margin: 0 auto;
	width: 1100px;
	padding: 40px 20px 70px 20px;
}
.layer_container_kids {
	margin: 0 auto;
	width: 900px;
	padding: 40px 20px 70px 20px;
}


.container {
	overflow:hidden;
	margin:5px auto;
	width: 1330px;
	padding-left: 10px;
	padding-right: 10px;
	background-color:#f1f1f1;
	border:none;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
}
.container_full {
	margin:0 auto;
	padding:0;
}


/***********************************
LIST
***********************************/
ul.header_main_nav {
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
	display:table;
	z-index: 2;
	min-height:40px;
}
ul.header_main_nav li {
	display: table-cell;
	margin:0;
	transition: 0.3s;
	text-transform:uppercase;
	vertical-align: middle;
}
ul.header_main_nav li.width125 {
	width:12.5%;
}
ul.header_main_nav li > * {
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	text-decoration: none;
	padding: 10px;
	width:100%;
	line-height: normal;
}
ul.header_main_nav li.hover:hover {background-color: #414141;}
ul.header_main_nav li.active {
	color:#414141;
}

ul.header_sec_nav {
	float: right;
	z-index: 2;
	font-size: 0.9em;
	background-color: #605e5e;
	color: #ffffff;
}
ul.header_sec_nav li {
	float: left;
	margin:0;
}
ul.header_sec_nav li > * {
	display: inline-block;
	text-align: center;
	padding: 0 20px;
	text-decoration: none;
	transition: 0.3s;
	text-transform:uppercase;
}
ul.header_sec_nav li > *:hover {background-color: #414141; color: #ffffff;}


ul.simplemenu{text-align:left;}
ul.simplemenu > li{
	display: inline-block;
	margin: 5px 0;
	vertical-align:middle;
	padding:0 10px;
	text-align:center;
}


/***********************************
TAB
***********************************/
div.tabbertab {
 padding: 10px 0 0 0;
 border:none;
}
div.tabbertabhide {display:none;}

ul.address_listing{margin:5px;}
ul.address_listing li {
	padding: 5px 0;
	border-top: 1px solid #d6d6d6;
	text-align: center;
}
ul.address_listing li:first-child {
	border-top: none;
}

.lp-perks {
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: relative;
    z-index: 1;
}
.lp-perk {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.lp-perk-dot {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    background-color: #e1e1e1;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 1px;
}
.lp-perk-text {
    line-height: 1.5;
}


ul.chevron_listing li {
	float: left;
}
ul.chevron_listing li span {
	display: block;
	background: #e1e1e1;
	color: #ababab;
	text-decoration: none;
	position: relative;
	height: 42px;
	line-height: 42px;
	padding: 0 10px 0 5px;
	text-align: center;
	margin-left: 25px;
}
ul.chevron_listing li:first-child span {
	padding-left: 20px;
	border-radius: 3px 0 0 3px;
	margin-left: 0;
}
ul.chevron_listing li:first-child span:before {
	border: none;
}
ul.chevron_listing li:last-child span {
	padding-right: 20px;
	border-radius: 0 3px 3px 0;
}
ul.chevron_listing li:last-child span:after {
	border: none;
}
ul.chevron_listing li span:before, ul.chevron_listing li span:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	border: 0 solid #e1e1e1;
	border-width: 21px 11px;
	width: 0;
	height: 0;
}
ul.chevron_listing li span:before {
	left: -20px;
	border-left-color: transparent;
}
ul.chevron_listing li span:after {
	left: 100%;
	border-color: transparent;
	border-left-color: #e1e1e1;
}
ul.chevron_listing li.selected span {
	background-color: #414141;
	color: #f1f1f1;
	font-weight: 600;
}
ul.chevron_listing li.selected span:before {
	border-color: #414141;
	border-left-color: transparent;
}
ul.chevron_listing li.selected span:after {
	border-left-color: #414141;
}

ul.flatlisting li{display: inline-block;}


ul.tabberAdsOrga
{
	margin: -45px 0 20px 0;
	padding: 0;
	text-align: center;
}
ul.tabberAdsOrga li
{
	display: inline;
	background-color: #f1f1f1;
	border: 1px solid #e1e1e1;
	color:#51575A;
	padding: 10px 20px;
	cursor: pointer;

	font-family: 'Oswald', Verdana, sans-serif;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 1.2em;
}
ul.tabberAdsOrga li.tabberactive
{
	color: #f1f1f1;
	background-color: #d33756;
	border: none;
	cursor: auto;
}
ul.tabberAdsOrga li:hover
{
	color: #f1f1f1;
	background-color: #d33756;
}

ol.tabberCours
{
	border-bottom: 1px solid #ababab;
	text-align: center;
	display: inline-block;
	padding: 0 30px;
}
ol.tabberCours li
{
	margin: 0 5px;
	display: inline-block;
}
ol.tabberCours li a
{
	display: inline-block;
	padding: 5px 15px;
	border: 1px solid #ababab;
	border-bottom: none;
	background: #f2f0f0;
	text-decoration: none;
	color: #666;
}
ol.tabberCours li a:hover
{
	color: #414141;
	background: #ffffff;
	border-color: #ababab;
}
ol.tabberCours li.tabberactive a
{
	color: #414141;
	background-color: #ffffff;
	border-color: #ababab;
	border-bottom: 1px solid #f1f1f1;
}
ol.tabberCours li.tabberhide a{display:none;}


ol.tabberCoursCreation
{
	margin:0;
	padding: 10px 10px 5px 10px;
	font-weight:bold;
	background:#f7f8fa;
}
ol.tabberCoursCreation li
{
	display:inline-block;
	height: 45px;
	padding-top: 5px;
	padding-left: 5px;
	padding-right: 25px;
	margin-bottom: 5px;
}
ol.tabberCoursCreation li img{display: inline;}
ol.tabberCoursCreation li.tabberactive
{
	background-color: #f7ebee;
	text-decoration: none;
	background: url(../../public/img/wizard_inter2.gif) no-repeat top right;
}
ol.tabberCoursCreation li.tabberactiveend
{
	background-color: #f7ebee;
	text-decoration: none;
	background: url(../../public/img/wizard_end2.gif) no-repeat top right;
}
ol.tabberCoursCreation li.tabberhide{display:none;}


/***********************************
TAB
***********************************/
div.accordeon-toggle{
	border-top: 1px solid #e1e1e1;
	cursor: pointer;
	position: relative;
    padding: 10px 30px 10px 0;
}
div.accordeon-toggle:after {
	content: '+';
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: bold;
	font-size: 3em;
	position: absolute;
	top: 40px;
	right: 0;
}
div.accordeon-toggle-help > * {
	line-height: inherit !important;
}
div.accordeon-toggle-help:after {
    top: 20px !important;
}

div.accordeon-toggle:hover:after {
	color: #d33756;
}
div.accordeon-toggle.opened:after {
	content: '-';
	color: inherit;
	right: 2px;
	top: 36px;
	opacity: 50%;
}
div.accordeon-toggle-help.opened:after {
    top: 14px !important;
}
div.accordeon-toggle.opened:hover:after {
	color: #d33756;
}
div.accordeon-content{
	padding-bottom: 40px;
	padding-top: 1px;
	display:none;
}
div.accordeon-content:last-of-type{
	padding-bottom: 0px;
}
div.accordeon-content.opened{
	display: block;
}
div.accordeon-toggle.hidden, div.accordeon-content.hidden{
	display: none;
}

/*************************
DIV
**************************/

/**** STRUCTURE ****/
.box_2_container_full{
	display:flex;
	flex-flow: row wrap;
	justify-content: space-around;
	align-items: stretch;
}
.box_2_container_full > * {
	flex: 1 1 50%;
	padding: 20px 20px;
}
.box_2_container_full p {margin:0;}

.box_3_container_full{
	display:flex;
	flex-flow: row wrap;
	justify-content: space-around;
	align-items: stretch;
}
.box_3_container_full > * {
	flex: 1 1 33%;
	padding: 20px 10px;
}
.box_3_container_full p {margin:0;}

.box_12_to_21_container{
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: stretch;
}
.box_12_to_21_container > div {flex: 1 1 45%;}

.box_2_container_margin{
	display:flex;
	flex-flow: row wrap;
	justify-content: space-around;
	align-items: stretch;
}
.box_2_container_margin > * {
	flex: 0 1 40%;
	padding: 10px;
}


.dashedBloc {
	margin: 10px 10px 0 10px;
	padding:10px;
	border: 1px dashed #CCCCCC;
}
.dashedBloc h3 {margin-top: 10px !important;}


/**** Pricing ****/
div.pricing-table {
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	flex-grow: 1;
	gap: 35px;
	width: 80%;
	margin:auto;
}
div.pricing-row {
	display: flex;
	flex-flow: row wrap;
	align-items: stretch;
	gap: 25px;
	flex: 1;
}
div.pricing-plan-col1 {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	padding: 20px;
	text-align: center;
	flex: 1;
	position: relative;
}
div.pricing-row .unchecked {
    color: #bbbbbb;
}
div.pricing-row .checked{
	box-shadow: 0 0 20px rgba(211, 55, 86, 0.7);
    color: #414141 !important;
}
div.pricing-plan-col2 {
	border-radius: 10px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	padding: 20px;
	text-align: center;
	flex: 1;
}

div.plan-title {
	margin: 0 0 20px;
}

div.plan-price {
	margin: 0 0 20px;
}
div.plan-price span {
	margin-left:5px;
	font-size: 0.4em;
	vertical-align: super;
}

ul.plan-features {
	padding: 0;
	margin: 20px 0;
	text-align: left;
}
ul.plan-features li {
	margin: 8px 0;
	font-size: 0.9em;
}
ul.plan-features li.new {
	font-weight: bold;
}
ul.plan-features li.separator {
	padding: 0 !important;
}
ul.plan-features li.separator:before {
	content : none !important;
	margin: 0 !important;
}


/**** SLIDER ****/
div.box_slider_item{
	position:relative;
	box-shadow: 3px 7px 14px rgba(1,1,1,0.1);
	padding-bottom: 10px;
	background-color: #fff;
	color: #414141;
}
div.box_slider_item img {display:block;}
div.box_slider_item .title{
	color: #ffffff;
	background-color: #414141;
	padding: 1px 10px;
}
div.box_slider_item .content {
	text-align: left;
	padding: 5px 10px;
}

/**** HEADER ****/
#layer_header_bottom_icon{
	display:none;
}
#header_top_nav_toggle {
	float: right;
	padding-right: 30px;
	position:relative;
	text-transform:uppercase;
	font-size: 0.9em;
}
#div_menu_main {
	position: fixed;
	top: 0;
	left: 0;
	width : 100%;
	z-index : 2000;
	min-height:40px;
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2);
	background-color: #414141 !important;
}

#header_pro_action {
	float: right;
	background-color: #d33756;
	color: #ffffff;
	padding: 0 20px;
	text-decoration: none;
	text-transform:uppercase;
}
#header_pro_action:hover, #header_top_nav_toggle:hover {
	background-color: #414141;
	color: #ffffff;
}

div.header_search_container {
	position: absolute;
	top: 0;
	right: 0;
	z-index:99999;
}

#header_search_action {
	display:none;
	position: absolute;
	top: 0;
	right: 0;
	z-index:99999;
}
#header_search_float
{
	float:left;
	display: none;
	right:50px;
	width: 305px;
	height: 40px;
	text-align: right;
	background-color: #605E5E;
	z-index:99999;
}

/**** FOOTER ****/
.div_footer_links {
	display:inline-block;
	text-align:left;
	float:left;
	margin-right: 100px;
}
.div_footer_links li {
	display: block;
	margin: 0 0 5px 0;}

.div_footer_social {
	display:inline-block;
	text-align:left;
	float:right;
}

/**** HIGHLIGHTS ****/
div.box_container_highlight{
	display:flex;
	flex-flow: row wrap;
	justify-content: space-around;
	align-items: stretch;
}
div.box_container_highlight > div {
	flex: 1 1 50%;
	margin: auto;
	padding: 30px;
}
div.box_container_highlight > div > *{
	display: inline-block;
	max-width: 450px;
	width: 100%;
}
div.box_highlight_title{
	text-align: center;
	padding: 30px 0;
}
div.box_highlight_content{
	text-align: left;
	position: relative;
}

/**** DESCRIPTION ****/
div.box_container_description{
	columns: 2;
	text-align: left;
	padding: 20px 0 30px 0;
}

div.box_container_faq{
	display:flex;
	justify-content: space-between;
	align-items: stretch;
}
div.box_description_content {
	text-align: left;
	padding: 0 0 0 40px;
	flex: 0 0 66%;
}
div.box_description_content > h2 {text-align: left;}

/**** HELP ****/
.div_help_title{
	width:100%;
	background-color:#FCFDFD;
	font-size:1.2em;
	padding:15px 5px;
	border-bottom: 1px solid #e3e3e4;
	cursor: pointer;
}
.div_help_title i{margin: 0 20px;}
.div_help_title:hover{
	background-color:#EAEAEA;
}
.div_help_body{
	display:none;
	padding: 10px;
	border: 1px solid #e3e3e4;
}
.div_help_body img{margin-left:20px;}

/**** BOX ITEM COMMON ****/
.box_itempage_cartouche {
	clear: both;
	margin-bottom:20px;
	padding: 15px 15px 10px 15px;
	background-color:#f7f8fa;
}
.box_itempage_cartouche .box_item_img, .box_itempage_cartouche .box_item_detail{
	display: inline-block;
	vertical-align: top;
}
.box_itempage_cartouche:after{
	clear: both;
	content: "";
	display: block;
}
.box_itempage_cartouche .box_item_img {
	width: 480px;
	padding-right:30px;
	float: left;
	position:relative;
}
.box_itempage_cartouche .box_item_detail {
	width: 660px;
	float: right;
}
.box_itempage_cartouche .box_item_detail li i{font-size: 1.5em; width: 1.2em;}
.box_itempage_cartouche .box_item_detail li{margin-bottom:10px;}


div.grid_container_articles > *:hover img, .box_slider_item:hover img, .box_item_ads:hover img{
	opacity:0.6;
	transition: opacity 0.5s;
}

/**** BOX ITEM SUBJECT ****/
div.grid_listing_locations
{
    display: grid;
    gap: 8px;
    margin: 20px 0;
    font-size: 0.95em;
}
div.grid_listing_locations_4
{
    grid-template-columns: repeat(4, 1fr);
}
div.grid_listing_locations_3
{
    grid-template-columns: repeat(3, 1fr);
}

div.grid_container_subjects
{
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	grid-gap: 25px;
}
div.grid_container_subjects_header {
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	grid-gap: 30px;
}
div.grid_container_subjects:first-of-type{
	margin-top: 0;
}

div.grid_item_subject {
	box-shadow: 3px 7px 14px rgba(1,1,1,0.1);
	max-width: 300px;
	justify-self: center;
	position:relative;
}
div.grid_item_subject .content{
	padding: 8px;
	min-height: 86px;
	text-align: left;
}

div.grid_item_subject-overlay {
	box-shadow: 3px 7px 14px rgba(1,1,1,0.1);
	max-width: 300px;
	justify-self: center;
	position:relative;
	display: flex;
	border-radius: 20px;
	overflow: hidden;
}
div.grid_item_subject-overlay:hover {
    transform: translateY(-2px);
}
div.grid_item_subject-overlay .content{
     display: flex;
     align-items: center;
     justify-content: center;
     position: absolute;
     width: 100%;
     height: 100%;
     padding: 0 5px;
     background: rgba(0,0,0,0.4);
     background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.4) 40%, rgba(0,0,0,0.4) 60%, rgba(0,0,0,0.1) 100%);
     color: #fff;
 }
div.grid_item_subject-overlay .content:hover{
    transition: all 0.1s linear;
    background-color: rgba(0,0,0,0.6);
}
div.grid_item_subject-overlay-passive .content{
    background: rgba(200,200,200,0.8);
}
div.grid_item_subject-overlay-passive .content:hover{
    background-color: rgba(200,200,200,0.9);
}

div.grid_item_subject_small {
	display: inline-block;
	margin: 10px 20px 15px 10px;
}
div.grid_item_subject_small > div {
	display: inline-block;
	vertical-align: top;
}
div.grid_item_subject_small .picture {margin-right:10px;}
div.grid_item_subject_small .title {width: 160px;}
div.grid_item_subject_small .title > h3{margin: 0;}


/**** BOX ITEM ADS ****/
div.box_item_ads{
	display: flex;
	border-top: 1px solid #f3f3f3;
	box-shadow: 0px 4px 9px rgba(0, 0, 0, 0.2);
	margin: 30px auto;
	background-color: #ffffff;
	position: relative;
	max-width: 1080px;
	text-align: left;
	flex-flow: row nowrap;
	align-items: stretch;
	color : #414141;
}
div.box_item_ads:hover {
    transform: translateX(-2px);
}
div.box_item_ads:after{
	clear: both;
	content: "";
	display: block;
}
div.box_item_ads > div{flex-basis: auto;}
div.box_item_ads > .picture{flex: 0 1 370px; position: relative;}
div.box_item_ads > .picture img, div.box_item_ads > .picture_reduced img{width: 100%;}
div.box_item_ads > .picture_reduced{flex: 0 1 300px; position: relative;}
div.box_item_ads > .attributes{
	flex: 1 1 180px;
	padding: 10px 15px;
}
div.box_item_ads .attributes .title{
	width: 100%;
	height: 38px;
	overflow: hidden;
	margin-bottom:10px;
	padding: 5px 0;
	text-align: left;
}
div.box_item_ads .grid{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: space-around;
}
div.box_item_ads .grid > .grid_item{
	flex-basis: auto;
	width: 50%;
	padding:5px;
	text-align: center;
	overflow: hidden;
	min-height: 80px;
}
div.box_item_ads .grid > .grid_item > *{display:block; margin: 5px 0;}
div.box_item_ads .grid > .grid_item:nth-child(odd){border-right: 1px solid #eeeeee;}
div.box_item_ads .grid > .grid_item:nth-child(1), div.box_item_ads .grid > .grid_item:nth-child(2){border-bottom: 1px solid #eeeeee;}
div.box_item_ads > .description{
	flex: 4 4 350px;
	padding: 10px 10px 10px 20px;
	text-align: left;
}
div.box_item_ads .description .variables{padding: 10px 0 0 0; margin-bottom: 10px;}
div.box_item_ads .description .variables li{display:inline-block; margin-right:10px;}


/**** BOX ITEM SCHOOL ****/
div.flex_container_orga
{
	margin: 20px 0;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-around;
	align-items: stretch;
}
div.flex_item_orga {
	flex: 1 1 250px;
	max-width: 420px;
	margin: 15px;
	background-color: #ffffff;
	border: 1px solid #DADADA;
}
div.flex_item_orga:hover{
	box-shadow: 0 0 10px #C5C5C5;
	transition: all 0.1s linear;
}
div.flex_item_orga img{max-width: 100%; display:block;}
div.flex_item_orga .content{padding: 10px;}

.flex_item_orga_normalized{
	flex: 1 0 100% !important;
	max-width: none !important;
	margin: 10px 0 !important;
}
.flex_item_orga_normalized li{
	padding: 5px 10px 2px 10px;
	display:inline-block;
	vertical-align:middle;
	margin-bottom:0;
}
.flex_item_orga_normalized img{display:none !important;}
.flex_item_orga_normalized li:nth-child(1){width:44%}
.flex_item_orga_normalized li:nth-child(2){width:24%;}
.flex_item_orga_normalized li:nth-child(3){width:22%;}
.flex_item_orga_normalized li:nth-child(4){width:8%;}

/**** BOX ITEM ARTICLE ****/
div.grid_container_articles
{
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	grid-gap: 30px;
}
div.grid_container_articles > *{
	max-width: 365px;
	justify-self: center;
}

div.box_article
{
	display: flex;
	flex-flow: column;
	height: 100%;
}
div.box_article .image {
	position: relative;
	margin: 0 15px -15px 15px;
	z-index: 1;
}
div.box_article .description {
	background-color: white;
	color: #414141;
	flex-grow: 1;
	padding: 0 15px 15px 15px;
	position: relative;
	box-shadow: 0px 6px 14px #0000001f;
}
div.box_article .description .title{padding-top: 25px;}
div.box_article .description .subtitle_without_title{padding: 30px 0 15px 0; border-bottom: 1px solid #414141;}
div.box_article .description .subtitle{padding: 15px 0 15px 0; border-bottom: 1px solid #414141;}
div.box_article .description h3{margin:0 !important;}
div.box_article .description .content{padding-top: 15px; text-align: left;}

/**** BOX ITEM TESTIMONIAL ****/
div.grid_container_testimonials
{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
}
div.grid_container_testimonials > *{
	max-width: 550px;
	margin: 0 20px;
	flex: 1;
}

div.box_testimonial
{
	background-color: white;
}
div.box_testimonial .image {
	display: flex;
	align-items: stretch;
	align-content: center;
}
div.box_testimonial .image > div {
	flex: 1;
	align-self: center;
}
div.box_testimonial .image > div:first-of-type {padding-left: 30px; text-align: right;}
div.box_testimonial .image > div:last-of-type {padding: 0 30px 10px 10px; text-align: center;}
div.box_testimonial .image > div img {max-width: 100%;}

div.box_testimonial .description {
	text-align: justify;
	padding: 20px;
	box-shadow: 0px 6px 14px #0000001f;
}

/**** SEARCH - FILTERS ****/
div.layer_search_left{
	display: block;
	width:30%;
	padding: 20px 5px 100px 10px;
	border-right: 1px solid #eeeeee;
	position: fixed;
	background-color: #f1f1f1;
	height: 100%;
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2);
	overflow-y: scroll;
}
div.layer_search_right {
	float:right;
	width:70%;
	padding: 20px 30px 100px 30px;
	background-color: #fff;
}

.box_search_listing_h{margin: 25px 0 15px 0;}
.box_search_listing_h .main_filter{
	display: inline-block;
	margin-right: 30px;
  margin-bottom: 20px;
	min-width: 270px;
	vertical-align:top;
}
.main_filter .title {
	display: block;
	padding: 0 20px 10px 0;
	vertical-align: middle;}
.main_filter .body {
	display: block;
	padding: 0 0 10px 0;
	vertical-align: middle;
	margin-bottom: 10px;
	position:relative;}
.main_filter_button a{margin:0 !important;}

ul.search_compact{
	display: block;
}
ul.search_compact > li {
	padding: 0 25px;
	background-color: #fAfAfA;
	border: #f5f5f5 1px solid;
	display: inline-block;
	color:#51575A;
	font-weight: bold;
	line-height: 58px;
	padding-top:5px;
	padding-bottom:5px;
	text-align: left;
	position: relative;
}
ul.search_compact2 > li {
	line-height: 58px;
	margin: 10px 10px 0 0;
	border-radius: 30px;
}
ul.search_compact2 > li input {
	margin-top: 0px;
	height: 42px;
}
ul.search_compact li.action {
	padding: 0;
}
ul.search_compact li.expandable:hover {
	background-color: #d33756;
	color: #ffffff;
	cursor: pointer;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.mobile_filters_button{
	position:fixed;
	width:95%;
	text-align:center;
	z-index:14;
	background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.1) 80%, rgba(255, 255, 255, 0) 100%);
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 20px 0 10px 0;
}

/**** KIDS ****/
div.box_kids_links_center, div.box_kids_links_left {
	width: 550px;
	margin:40px 0 60px 0;
	letter-spacing: 0.04em;
	background-color: rgba(255,255,255,0.3);
	display: inline-block;
	border-radius: 40px;
	text-align:center;
	line-height: 1.4em;
	font-size: 1.1em;
}
div.box_kids_links_left {
	margin: 40px 0 100px 0;
	display: block;
	text-align: left;
}

/**** ADS ****/

div.grid_ads{
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 450px;
	grid-template-areas:
    "a b"
    "a c"
    "a d"
    "a .";
}
@media only screen and (max-width : 950px) {
	div.grid_ads{
		width: 100%;
		display: block;
	}
}

div.grid_ads > div{
	margin-bottom: 40px;
}

div.box_ads_general {
	grid-area: a;
	margin-right: 40px;
}
@media only screen and (max-width : 950px) {
	div.box_ads_general{
		margin-right: 0px;
	}
}

div.box_ads_secondary .picture {
	position: relative;
	margin: 0 15px -50px 15px;
	z-index: 1;
	text-align: center;
}
div.box_ads_secondary .picture img {display: inline-block;}
@media only screen and (max-width : 950px) {
	div.box_ads_secondary .picture {
		margin: 0;
	}
}
div.box_ads_secondary .description {
	background-color: white;
	padding: 30px 25px 30px 25px;
	position: relative;
	box-shadow: 0px 6px 14px #0000000F;
}
@media only screen and (max-width : 950px) {
	div.box_ads_secondary .description {
		padding: 30px 10px 30px 10px;
	}
}

div.box_ads_contact
{
	grid-area: b;
	margin-top: -152px;
}
@media only screen and (max-width : 950px) {
	div.box_ads_contact
	{
		margin-top: 0;
	}
}
div.box_ads_evals {
	grid-area: c;
}
div.box_ads_school{
	grid-area: d;
}



div.flex_container_type > div {
	display: inline-block;
	border-right: 1px solid #dedede;
	vertical-align: top;
	width: 33%;
}
div.flex_container_type .icon{height:40px; margin-bottom:5px;}
div.flex_container_type > div:last-child{border: none;}
div.flex_container_type > div > div {
	display: block;
	width: 100%;
	text-align: center;
	padding: 5px;
}

div.flex_container_prices {
	display:flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
}
div.flex_container_prices > div {
	flex: 0 1 33%;
	border-right: 1px solid #dedede;
	padding: 0 5px;
	margin: 10px 0;
	vertical-align: top;
}
div.flex_container_prices .icon{height:40px; margin-bottom:5px;}
div.flex_container_prices .value{height:40px; line-height:1.0em; margin-bottom:5px;}
div.flex_container_prices > div:last-child{border: none;}
div.flex_container_prices > div > div {
	display: block;
	width: 100%;
	text-align: center;
}

div.flex_container_orgas {
	display:flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
}
div.flex_container_orgas > div {
	flex: 0 1 33%;
	border-right: 1px solid #dedede;
	padding: 0 5px;
	margin: 10px 0;
	vertical-align: top;
}
div.flex_container_orgas > div.large {
	flex: 0 1 66%;
}
div.flex_container_orgas .icon{height:40px; margin-bottom:5px;}
div.flex_container_orgas > div:last-child{border: none;}
div.flex_container_orgas > div > div {
	display: block;
	width: 100%;
	text-align: center;
}

div.flex_container_calendar_legends{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
}
div.flex_container_calendar_legends > div {
	flex: 1 1 33%;
	padding: 8px;
	min-width:180px;
}
div.flex_container_calendar_legends > div.highlight{
	box-shadow: 0px 6px 14px #0000000F;
	background-color: #ececec;
}

/**** SCHOOL - PROF ****/
div.layer_school_left{
	float:none;
	overflow:hidden;
	margin-top: 60px;
}
div.layer_school_right {
	margin-left: 40px;
	margin-top: -170px;
	float: right;
	width: 450px;
}

div.box_school_cartouche
{
	display: flex;
	flex-flow: column;
	height: 100%;
	margin-bottom: 20px;
}
div.box_school_cartouche .picture {
	position: relative;
	margin: 0 15px 0 15px;
	z-index: 1;
	text-align: center;
}
div.box_school_cartouche .picture img {display: inline-block;}
div.box_school_cartouche .description {
	flex-grow: 1;
	padding: 10px;
	position: relative;
}

div.flex_container_attr {
	display:flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
}
div.flex_container_attr > div {
	flex: 1;
	border-right: 1px solid #dedede;
	padding: 0 5px;
	margin: 10px 0;
	vertical-align: top;
}
div.flex_container_attr .icon{height:40px; margin-bottom:5px;}
div.flex_container_attr > div:last-child{border: none;}
div.flex_container_attr > div > div {
	display: block;
	width: 100%;
	text-align: center;
}


/**** RECOMMANDATIONS ****/
.recos_container {
	columns:3;
}
.recos_item {
	width: 100%;
	padding:15px 10px;
	break-inside: avoid-column;
}
.recos_item > div {
	vertical-align: top;
	text-align: left;
	padding: 15px;
	border-radius: 7px;
	border: 3px solid #fff;
	background-color: #fafafa;
	color: #414141;
}

.div_recommendation{
	vertical-align: top;
	margin: 0 30px;
	height: 100%;
	padding : 15px 30px;
	border-radius: 10px;
	border: 1px solid #e1e1e1;
	background-color: #f1f1f1;
	text-align: left;
}
.div_recommendation_school{
	vertical-align: top;
	margin: 0 10px;
	height: 100%;
	padding : 15px 30px;
	border-radius: 10px;
	border: 1px solid #e1e1e1;
	background-color: #f1f1f1;
	text-align: left;
}
.div_recommendation_main{
	background-color: #414141;
	color:#f2f2f2;
	padding:0;
}
.review-gradient {
	bottom: 0;
	height: 80px;
	left: 0;
	position: absolute;
	right: 0;
}

/**** ARTICLE ****/
div.grid_container_article
{
	display: grid;
	grid-template-columns: auto 300px;
	grid-gap: 60px;
	margin-bottom:40px;
	justify-items: stretch;
	align-items: start;
}

.div_article_box_header
{
	width:100%;
	display:block;
	text-align: right;
	vertical-align: middle;
  	padding: 10px 0;
	border-bottom: solid 3px #414141;
	margin-bottom: 30px;
}

/**** MAPS ****/
#frame_map_content
{
	width:100%;
	height:452px;
	overflow:hidden;
	background-color:#E9E9E9;
	border: 1px solid #d7d6d6;
}
#map_canvas_school{
	width:500px;
	height:250px;
	display:inline-block;
}

/**** ACCOUNT ****/
.layer_nav_left{
	display: inline-block;
	width:25%;
	padding: 10px;
	background-color: #f1f1f1;
}
.layer_section_right{
	float: right;
	width: 75%;
	padding: 0 0 20px 20px;
}
.div_private_ava_short{display:none; font-size:0.9em; width:35px;}
.div_private_ava_medium{display:block; font-size:0.9em; width:50px;}
.div_private_ava_long{display:block; font-size:0.9em; width:60px;}
.div_notification{
	position: relative;
	vertical-align: top;
	color: #414141;
	padding : 20px;
	background-color: #f7f8fa;
	overflow: hidden;
	border-radius: 15px;
	text-align:center;
	min-height: 250px;
}
.div_notification .button_main{
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translate(-50%, 0);
}
.div_login
{
    display: inline-block;
    padding : 20px;
	background: #f3f3f3;
	border: 1px solid rgba(199, 199, 199, 0.9);
    border-radius: 20px;
    width: 450px;
    max-width:100% !important;
	box-shadow: 0 2px 5px rgba(158, 158, 158, 0.8), 0 0 8px 5px rgba(239, 239, 239, 0.5) inset;
}

.div_navpro_title{
	width:100%;
	background-color:#666;
	font-weight:600;
	color: #ffffff;
	font-size:1.1em;
	padding: 13px 6px;
	margin: 15px 0 0;
	cursor: pointer;
}
.div_navpro_title.secondary{background-color:#DDD; color:#414141;}
.div_navpro_title:first-of-type{margin-top:0;}
.div_navpro_title:hover{background-color:#414141; color: #ffffff;}
.div_navpro_title.active{background-color:#111; color: #ffffff;}
.div_navpro_title i{margin-right: 5px;}
.div_navpro_body{
	display:none;
	background-color:#f7f8fa;
	padding-bottom : 10px;
}
.div_navpro_body li {
	border-left:10px solid #f7f8fa;
	padding: 10px 5px 10px 15px;
	cursor:pointer;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 0.9em;
}
.div_navpro_body li:hover {border-left:10px solid #d33756;}
.div_navpro_body li.active {border-left:10px solid #d33756;}


/***********************************
TABLE
***********************************/
table.form{
	padding:5px;
	margin: 0 auto;
	width:100%;
}
table.form > td.label{width:300px;}


table.zebra
{
	text-align: left;
	width:100%;
}
table.zebra th
{
	padding: 10px 8px;
	color: #d33756;
	font-size:1.2em;
	vertical-align: top;
}
table.zebra td{padding: 10px 10px; vertical-align: top;}
table.zebra tr:not(:last-child) {
    border-bottom: 1px solid #e2e4e8;
}
table.zebra .odd{background: #f7f8fa;}
table.zebra .red{background: #FFE8E8;}

table.generous
{
	text-align: center;
	width: auto;
}
table.generous th{padding: 20px 0;}
table.generous th.label
{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.05em;
	font-size: 2.0em;
    line-height: 1.0em;
}
table.generous tr{
	padding: 10px 0;
	vertical-align: middle;
	border-bottom: 1px solid #e2e4e8;
}
table.generous td{padding: 20px 0;}
table.generous td.label{text-align: left;}
table.generous td.main_label, table.generous td.value{
	text-align: left;
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 400;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 1.3em;
}
table.generous td.value{
	text-align: center;
}

table.simple
{
	background: #f1f1f1;
	text-align: left;
	width:100%;
}
table.simple td{padding: 10px 5px;}
table.simple tr:not(:last-child) {
    border-bottom: 1px solid #e2e4e8;
}
table.simple .selected{background: #EAFFEA;}


.table_rsp{display:table;border-collapse: collapse;text-align: left;width:100%;table-layout: fixed;}
.table_rsp > div {display:table-row; overflow-wrap: anywhere; white-space: normal;}
.table_rsp > div > div{display:table-cell; vertical-align: top; position:relative;}
.table_rsp .row_header{color: #d33756;font-size:1.1em;}
.table_rsp .row{border-top: 1px solid #e2e4e8;border-bottom: 1px solid #e2e4e8;}
.table_rsp .odd{background: #f7f8fa;}
.table_rsp .column{display:table-cell; padding: 15px 8px;vertical-align: top;}
.table_rsp .optional{font-style:italic;}
.table_rsp .row_form_high:not(:last-child){border-bottom : 1px solid #e2e4e8;}
.table_rsp .row_form_high2:last-child{border-bottom : 1px solid #e2e4e8;}
.table_rsp .visible_row {display:table-row;}
.table_rsp .hidden_row {display:none;}
.table_rsp .column_form_title, .table_rsp .column_form_title1, .table_rsp .column_form_title2, .table_rsp .column_form_title3, .table_rsp .column_form_title4, .table_rsp .column_form_title5
{
	text-align:left;
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
}
.table_rsp .column_form_title{padding: 0 20px 10px 0;text-align:right;}
.table_rsp .column_form_body{padding: 0 0 10px 0;}
.table_rsp .column_form_title1{padding: 20px 20px 20px 0;width:25%;}
.table_rsp .column_form_body1{padding: 20px 0 20px 0;width:75%;}
.table_rsp .column_form_title2{padding: 30px 20px 30px 0;width:25%;}
.table_rsp .column_form_body2{padding: 30px 0 30px 0;width:75%;}
.table_rsp .column_form_title3{padding: 12px 20px 12px 0;width:35%;}
.table_rsp .column_form_body3{padding: 12px 0 12px 0;width:65%;}
.table_rsp .column_form_title4{padding: 20px 0 20px 0;width:20%;}
.table_rsp .column_form_body4{padding: 20px 0 20px 20px;width:40%;}
.table_rsp .column_form_title5{padding: 12px 20px 12px 0;width:25%;}
.table_rsp .column_form_body5{padding: 12px 0 12px 0;width:75%;}


/**************************
HEADING
***************************/
h1, h2, h3, h4, h5
{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	padding: 0;
	margin: 0;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	line-height: 1.15em;
	word-break: normal;
}

/**** H1 HEADER ****/
h1.header_title
{
	font-size: 2.6em;
	margin: 10px 0;
}
.header_subtitle
{
	letter-spacing: 0.03em;
	font-size: 1.8em;
	line-height: 1.3em;
	font-weight: 600;
	margin: 0 0 10px 0;
	display: block;
}

h1.admin_title
{
	font-size:1.5em;
	text-align:left;
	display: inline-block;
	padding: 0 15px;
	color: #ffffff;
	line-height: 40px;
	float:left;
}

/**** LAYERS STD ****/
h2.layer_title{
	font-size: 2.4em;
	margin: 30px 0;
	text-align: center;
}
h2.layer_title > .layer_subtitle
{
	letter-spacing: 0.05em;
	font-size: 0.5em;
	font-weight: 400;
	line-height: 1.3em;
	margin: 10px 0;
	display: block;
}
h2.layer_title_inline{
	font-size: 2.4em;
	margin: 0 0 20px 0;
	text-align: left;
}
h3.layer_title{
	font-size:2.0em;
	margin: 10px 0;
}

/**** LAYERS HIGHLIGHT ****/
h2.layer_title_highlight{
	font-size: 3.5em;
	line-height: 1.3em;
	margin: 30px 0;
}

/**** SECTION STD ****/
h2.section_title
{
	font-size:1.4em;
	margin: 60px 0 20px 0;
}
h2.section_title:first-child{margin: 30px 0;}
h3.section_title
{
	font-size:1.25em;
	font-weight: 600;
	margin: 40px 0 12px 0;
}
h3.section_title:first-child{margin: 12px 0;}

/**** Articles ****/
h2.description_title
{
	font-size:1.4em;
	text-align: left;
	margin: 40px 0 20px 0;
}
h3.description_title
{
	font-size:1.1em;
	text-align: left;
	margin: 30px 0 10px 0;
}
h4.description_title
{
	font-size:1em;
	text-align: left;
	margin: 20px 0 8px 0;
}

/**** BOX ****/
h2.box_title
{
	font-size:1.4em;
	margin: 40px 0 20px 0;
	text-transform: none;
	font-family: "Open Sans", Verdana, sans-serif;
}
* > h2.box_title:first-child{margin: 20px 0;}
h3.box_title
{
	font-size:1.25em;
	margin: 20px 0 10px 0;
	text-transform: none;
	font-family: "Open Sans", Verdana, sans-serif;
}
* > h3.box_title:first-child{margin: 10px 0;}

h2.box_title_cap
{
	font-size:1.4em;
	text-align: left;
	margin: 40px 0 20px 0;
}
* > h2.box_title_cap:first-child{margin: 20px 0;}
h3.box_title_cap
{
	font-size:1.25em;
	text-align: left;
	margin: 30px 0 10px 0;
}
* > h3.box_title_cap:first-child{margin: 10px 0;}

h2.button_title {
	font-size:1.4em;
	text-decoration:none;
	background-color:#d33756;
	color:#f2f2f2;
	padding: 10px 15px;
	display: inline-block;
	vertical-align: middle;
	text-align:center;
	position: relative;
	z-index: 2;
}

/***********************************
TEXT
***********************************/
.text_bold{font-weight: bold;}
.text_big{font-size:2.0em; font-weight:600;}
.text_mbig{font-size:1.4em; font-weight:600;}
.text_medium{font-size:1.1em; line-height: 1.1em;}
.text_small{font-size:0.9em; line-height: 1.2em;}
.text_xsmall{font-size:0.8em;}
.text_xxsmall{font-size:0.7em;}

.text_cap_xxhigh{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 4.0em;
	line-height: normal;
}
.text_cap_xhigh{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 3.0em;
	line-height: normal;
}
.text_cap_high{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 2.2em;
	line-height: normal;
}
.text_cap_mhigh{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 1.6em;
	line-height: normal;
}
.text_cap_medium{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 1.3em;
	line-height: normal;
}
.text_cap_smedium{
	font-family: 'Oswald', Verdana, sans-serif;
	font-weight: 600;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	font-size: 1.1em;
}
.text_cap_normal{
	font-family: 'Oswald', Verdana, sans-serif;
	text-transform:uppercase;
	letter-spacing: 0.07em;
}
.text_cap_small{
    font-family: 'Oswald', Verdana, sans-serif;
    text-transform:uppercase;
    letter-spacing: 0.07em;
    font-size: 0.9em;
}

.text_contact {
	font-size:1.1em;
	font-weight:600;
	letter-spacing:1px;
	display:inline-block;
}
a.text_contact:hover{
	color: #d33756;
}

.floating_date_big {
	position: absolute;
	background-color: rgba(255,255,255,0.9);
	color:#414141;
	top: 20px;
	left: 20px;
	padding: 3px;
	width:55px;
	height:55px;
	text-align:center;
	border-radius: 15px;
	text-transform: uppercase;
	border: 1px solid rgba(100,100,100,0.1);
}
.floating_date_big > span:nth-child(1) {
	display:block;
	font-size:2.0em;
	line-height: 1em;
	font-weight:600;
	margin: 5px 0 3px 0;
}
.floating_date_big > span:nth-child(2) {
	display:block;
	font-size:0.8em;
	line-height: 1em;
}
.floating_date_big > div {
	display:block;
	font-size:1.2em;
	line-height: 1.2em;
	font-weight:600;
	margin: 3px 0 3px 0;
}

.floating_date_small {
	position: absolute;
	background-color: rgba(255,255,255,0.9);
	color:#414141;
	top: 10px;
	left: 10px;
	padding: 3px;
	width:45px;
	height:45px;
	text-align:center;
	border-radius: 10px;
	text-transform: uppercase;
}
.floating_date_small > span:nth-child(1) {
	display:block;
	font-size:1.5em;
	line-height: 1em;
	font-weight:600;
	margin: 1px 0 0 0;
}
.floating_date_small > span:nth-child(2) {
	display:block;
	font-size:0.7em;
	line-height: 1em;
}
.floating_date_small > div {
	display:block;
	font-size: 0.9em;
	line-height: 1.1em;
	font-weight:600;
	margin: 5px 0 3px 0;
}

.readable {
	font-size: 1.1em;
	line-height: 1.4em;
}



/********************
LINK
************************/
a.link_basic:hover{
    text-decoration: underline;;
}
a.link_navigation_header{
	color: #ffffff;
	font-size:1.3em;
	font-weight:600;
	margin: 0 5px;
	padding: 3px 7px 5px 7px;
	display:inline-block;
}
a.link_navigation_header:hover, a.link_navigation_header_active{
	color: #ffffff;
	background-color: #d33756;
	border-radius: 3px;
}

a.link_subject{
	color:#d33756;
	font-size:1.2em;
}
a.link_subject:hover{
	font-weight:600;
}

a.link_navigation_main, a.link_navigation_main_err{
	font-weight:600;
	color:#3366CC;
	padding: 2px 5px;
}
a.link_navigation_secondary{
	color:#d33756;
}
a.link_navigation_main_err{
	color:#f2f2f2;
	font-size: 1.1em;
}
a.link_navigation_main{
	color:#3366CC;
	font-size: 1.1em;
}
a.link_navigation_regular{
	color:#3366CC;
}
a.link_navigation_main:hover, a.link_navigation_main_err:hover{
	color: #ffffff;
	background-color: #3366CC;
}
a.link_navigation_secondary:hover{
	color: #e27e92;
}
a.link_navigation_main:hover > i{
	color: #ffffff;
}

a.link_navigation_main_white{
	font-weight:600;
	color:#f2f2f2;
}
a.link_navigation_main_white:hover{
	color:#ffffff;
}

.button_listing {
	text-decoration:none;
	font-weight:600;
	background-color:#fff;
	border: 1px solid #666;
	color:#666;
	padding:6px 18px;
	margin:8px 10px;
	display: inline-block;
	vertical-align: middle;
	border-radius: 20px;
}
.button_listing i {font-weight: normal; }
.button_listing:hover {
	background-color:#d33756;
	color:#f0efef;
}

.button_items {
	font-family: 'Oswald', Verdana, sans-serif;
	text-transform:uppercase;
	letter-spacing: 0.07em;
	text-decoration:none;
	background-color:#fff;
	border: 1px solid #999;
	color:#999;
	padding: 3px 9px;
	margin:5px 5px;
	display: inline-block;
	vertical-align: middle;
	border-radius: 10px;
}
.button_items.selected {
	font-weight:600;
	border: 1px solid #414141;
	background-color:#414141;
	color: #f1f1f1;
	padding: 6px 18px;
}
.button_items i {font-weight: normal; }
.button_items.clickable:hover {
	background-color:#d33756;
	color:#f0efef;
	cursor: pointer;
}

.button_items_2 {
	font-family: 'Oswald', Verdana, sans-serif;
	text-transform:uppercase;
	letter-spacing: 0.07em;

	text-decoration:none;
	background-color:#f9f9f9;
	color:#999;
	padding: 15px 30px;
	margin: 15px;
	display: inline-block;
	vertical-align: middle;
	border-radius: 50px;
}


.button_filter {
	text-decoration:none;
	font-weight:600;
	background-color:#fff;
	border: 1px solid #d6d6d6;
	color:#666;
	padding:6px 18px;
	margin:8px 10px;
	display: inline-block;
	vertical-align: middle;
	border-radius: 8px;
}
.button_filter:hover{
	cursor: pointer;
}

/*******************
BUTTONS
********************/
a.button_form_small_light{
	font-size: 1.1em;
	font-weight: 600;
	color: #414141;
	background-color: #ffffff;
	padding: 8px 15px;
	min-width: 180px;
	border: 1px solid #ffffff;
	display: inline-block;
	text-align: center;
	text-transform: uppercase;
}
a.button_form_small_light:hover{
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
}

a.button_form_big_theme{
	font-size: 1.2em;
	font-weight: 600;
	color: #ffffff;
	background-color: #d33756;
	padding: 0px 15px;
	line-height: 70px;
	min-width: 180px;
	border: 1px solid #f3f3f3;
	display: inline-block;
	text-align: center;
	text-transform: uppercase;
}
a.button_form_big_theme:hover, a.button_small_theme, a.button_medium_theme:hover, a.button_big_theme:hover{
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
	background-color: #414141;
}

a.button_small_theme{
	font-weight: 600;
	font-size: 1.1em;
	color: #ffffff;
	background-color: #d33756;
	padding: 10px 10px;
	border: 1px solid #ffffff;
	text-align: center;
	text-transform: uppercase;
}

a.button_medium_theme{
	font-weight: 600;
	font-size: 1.2em;
	color: #ffffff;
	background-color: #d33756;
	padding: 14px 20px;
	border: 1px solid #ffffff;
	display: inline-block;
	text-align: center;
	text-transform: uppercase;
}

a.button_big_theme{
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1em;
	color: #ffffff;
	background-color: #d33756;
	padding: 20px 35px;
	border: 1px solid #ffffff;
	display: inline-block;
	text-align: center;
	text-transform: uppercase;
}

a.button_header_search {
	background-color: #666;
	color: #ffffff;
	border: none;
	font-size:1.3em;
	display:inline-block;
	text-decoration: none;
	cursor:pointer;
	height: 40px;
	width: 50px;
	vertical-align:bottom;
	text-align: center;
}
a.button_header_search:hover{
	background-color: #d33756;
}
a.button_header_search_toggle {
	background: #605e5e;
	border: none;
	line-height: 39px;
	display: inline-block;
	font-size: 1.4em;
	color: #ffffff;
	width:50px;
	text-align:center;
	cursor:pointer;
	z-index:9999;
	vertical-align: top;
}
a.button_header_search_toggle:hover {background: #414141;}

button.button_more {
	border: none;
	overflow: visible;
	position: relative;
	cursor: pointer;
	outline: none;
	display: inline-block;
	font-weight: 600;
	font-size: 0.95em;
	color:#d33756;
}
button.button_more:hover
{
	color: #e27e92;
}

button.button_menu {
	background: #f7f8fa;
	border: none;
	height: 45px;
	overflow: visible;
	position: relative;
	cursor: pointer;
	outline: none;
	display: inline-block;
	font-size: 1.3em;
	font-weight:500;
	color: #414141;
}
button.button_menu:hover
{
	background: #111;
	color: #ffffff;
}
button.button_menu:before {
	display: inline-block;
	margin-right: 10px;
	font: normal normal normal 14px/1 'Font TUC';
	font-size: inherit;
	content: "\f0c9";
}
button.button_menu.active:before {
	content: "\f00d";
}


button.burger{
	background: #222;
	border: none;
	height: 45px;
	overflow: visible;
	position: relative;
	cursor: pointer;
	outline: none;
	display: inline-block;
	font-size: 1.9em;
	font-weight:500;
	color: #f2f2f2;
	padding: 0 13px;
}
button.burger:hover{
	background: #605E5E;
}
button.burger:before {
	display: inline-block;
	font: normal normal normal 14px/1 'Font TUC';
	font-size: inherit;
	content: "\f0c9";
}

.button_bottom {
	position: absolute;
	bottom: 0;
	right: 0;
}

a.button_main {
	font-size:1.1em;
	text-decoration:none;
	font-weight:600;
	background-color:#605e5e;
	color:#f2f2f2;
	padding: 10px 20px;
	display: inline-block;
	vertical-align: middle;
	text-align:center;
	text-transform:uppercase;
	border-radius: 5px;
}
a.button_main_theme {
	font-size:1.1em;
	text-decoration:none;
	font-weight:600;
	background-color:#d33756;
	color:#f2f2f2;
	padding: 10px 20px;
	display: inline-block;
	vertical-align: middle;
	text-align:center;
	text-transform:uppercase;
	border-radius: 5px;
}
#submitBtn.disabled {
    opacity: 0.4;
    cursor: not-allowed;
}
.button_main_active {
	font-size:1.1em;
	font-weight:600;
	border: 1px solid #605e5e;
	padding: 5px 9px;
	margin: 3px;
	vertical-align: middle;
	display: inline-block;
	text-align:center;
}
a.button_main_small {
	font-size:0.9em;
	text-decoration:none;
	font-weight:600;
	background-color:#605e5e;
	color:#f2f2f2;
	padding:3px 10px 4px 10px;
	margin: 0 10px 10px 0;
	display: inline-block;
	vertical-align: middle;
	text-transform:uppercase;
	white-space: nowrap;
}
a.button_main_big {
	font-size:1.3em;
	text-decoration:none;
	font-weight:600;
	background-color:#605e5e;
	color:#f2f2f2;
	padding:7px 12px;
	vertical-align: middle;
	display:inline-block;
	margin: 10px 0 0 0;
	text-align:center;
	text-transform:uppercase;
}
a.button_main:hover, a.button_main_big:hover, a.button_main_small:hover  {
	background-color:#d33756;
	color:#f0efef;
}

a.button_border_big_light {
	text-decoration:none;
	font-weight: bold;
	color: #414141;
	background-color: #ffffff;
	border: 1px solid #ffffff;
	padding: 15px 30px;
	vertical-align: middle;
	display:inline-block;
	margin: 10px 0 0 0;
	text-transform:uppercase;
}
a.button_border_big_light:hover {
	background-color:#d33756;
	color: #ffffff;
}
a.button_border_big_dark {
	text-decoration:none;
	font-weight: bold;
	color: #ffffff;
	border: 1px solid #ffffff;
	background-color: #605e5e;
	padding: 15px 30px;
	vertical-align: middle;
	display:inline-block;
	margin: 10px 10px 0 10px;
	text-transform:uppercase;
}
a.button_border_big_dark:hover {
	background-color: #d33756;
	color: #ffffff;
}
a.button_border_big_white {
	text-decoration:none;
	font-weight: 600;
	border: 2px solid #605e5e;
	background-color: #ffffff;
	padding: 15px 30px;
	vertical-align: middle;
	display:inline-block;
	margin: 10px 0 0 0;
	text-transform:uppercase;
}
a.button_border_big_white:hover {
	background-color: #d33756;
	color: #ffffff;
	border: 2px solid #ffffff;
}
a.button_border_big_theme {
	text-decoration:none;
	font-weight: bold;
	color: #ffffff;
	background-color: #d33756;
	border: 1px solid #ffffff;
	padding: 15px 30px;
	vertical-align: middle;
	display:inline-block;
	margin: 10px 10px 0 10px;
	text-transform:uppercase;
}

a.button_inactive {
	background-color: #D5D5D5;
	cursor:not-allowed;
}
a.button_inactive:hover {
	background-color:#D5D5D5;
	color:#f2f2f2;
}

.text_button {
	float:left;
	margin:0 10px 10px 0;
	border:1px solid #dedede;
	border-top:1px solid #eee;
	border-left:1px solid #eee;
	border-radius: 7px;
	font-size:1.0em;
	text-decoration:none;
	font-weight:bold;
	background-color:#f0efef;
	color:#3366CC;
	padding:3px 5px 3px 5px; /* Links */
}

.button_small_square_lightGray {
	background-color:#ededed;
	border-radius: 5px;
	margin: 0 5px 7px 0;
	padding: 0 10px; /* Links */
	font-weight: bold;
	line-height: 30px;
	display: inline-block;
}
.button_small_square_lightGray:hover {
	background-color:#fff;
}

.pushmenu-toggle{
	background-color: #414141;
	color:#f1f1f1;
	border-radius:15px;
	padding:8px 15px;
	display: inline-block;
	border: 2px solid #f1f1f1;
}
.pushmenu-close{
	background-color: #f1f1f1;
	color:#414141;
	border-radius: 15px;
	padding:8px 15px;
	border: 1px solid #414141;
	display:none;
}

/***************
FORMS
****************/
input, select {color: #666;}
input.topSearch[type="text"] {
    background-color: white;
    border: 1px solid #ccc;
	border-right: none;
    box-sizing: border-box;
    font-size: 1.2em;
    padding: 6px 10px;
    width: 250px;
	height: 40px;
	vertical-align:bottom;
}
input.textField_search_med{ 
	width: 100%;
	height: 50px;
	padding: 0 15px;
	font-size:1.1em;
	color: #525252;
	letter-spacing:1px;

	border: solid 1px #DADADA;
}
input.textField_search_big{ 
	width: 100%;
	max-width: 100%;
	font-size:1.4em;
	height: 50px;
	padding-left: 20px;
	border: 1px solid #CDCDCD;
}
#divsubjects_button{
	position:relative;
	width: 450px;
	max-width: 100%;
}
#npa_results{width:355px;}

div.auto_complete {
	position:absolute;
	margin:1px 0 0 !important;
	width: 100%;
	border: solid 1px #cdcdcd;
	background: #fAfAfA;
	display:none;
	z-index:99;
	color: #414141;
	text-align: left;
	max-height: 360px;
	font-weight: normal;
	font-size: 1.1em;
	overflow-y: auto;
}
div.auto_complete div {
	margin:0 !important;
}
div.auto_complete > div {
	padding: 10px;
	cursor:pointer;
	border-bottom: 1px solid #e0e0e0;
}
div.auto_complete > div:hover {
	background-color: #f4d5db;
}

div.select_results {
	position:absolute;
	width: 100%;
	border: solid 1px #cdcdcd;
	background: #fAfAfA;
	display:none;
	z-index:99;
	color: #414141;
	text-align: left;
	left:0;
	line-height: initial;
	font-weight: normal;
	font-size: 1.1em;
	max-height: 360px;
	overflow-y: auto;
}
div.select_results div {
	padding: 10px;
	cursor:pointer;
	border-bottom: 1px solid #e0e0e0;
}
div.select_results div:hover {
	background-color: #f4d5db;
}

input.textField_search_med:hover, input.textField_search_big:hover{ 
	opacity : 1.0;
	box-shadow: 0 0 5px rgba(123, 123, 123, 0.2);
	transition: all 0.1s linear;
}

input.regular, textarea.regular, select.regular{
	background-color: #f4f8fa;
    border: 1px solid #d2dee6;
	font: 300 1.0em Verdana;
    line-height: 1.4;
    margin: 0;
    padding: 5px 10px;
    transition: all 0.15s ease-in-out 0s;
	max-width:100%;
}
textarea.regular{width:100%;}

input.regular[readonly]{border:none; color:#999; }

input.regular_big, select.regular_big{
	background-color: #f4f8fa;
    border: 1px solid #d2dee6;
    font-size: 1.3em;
	font-weight:bold;
    margin: 0;
    padding: 10px 15px;
    transition: all 0.15s ease-in-out 0s;
	max-width:100%;
}

input.regular_small, select.regular_small{
	background-color: #f4f8fa;
    border: 1px solid #d2dee6;
    font-size: 1.0em;
    margin: 0;
    padding: 2px 10px;
    transition: all 0.15s ease-in-out 0s;	
}

input.formSpam{
	background-color: #f4f8fa;
    border: 1px solid #d2dee6;
    width: 96px;
	height: 43px;
	font-size: 2.0em;
	letter-spacing: 1px;
	text-align:center;
    transition: all 0.15s ease-in-out 0s;
	margin-left: 30px;
}
input.regular:hover, input.formSpam:hover, textarea.regular:hover, select.regular:hover, input.regular_small:hover, select.regular_small:hover {
    background-color: white;
    border-color: #aaa;
}
input.regular:hover[readonly]{border:none; background-color: #f4f8fa; cursor:default;}
input.regular:focus[readonly]{border:none; background-color: #f4f8fa; cursor:default; outline:none; box-shadow:none;}

input.regular:focus, input.formSpam:focus, textarea.regular:focus, select.regular:focus, input.regular_small:focus, select.regular_small:focus {
    background-color: white;
    border-color: #0085be;
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.3) inset;
    outline: medium none;
}
input.regular:disabled, textarea.regular:disabled {
    background: none repeat scroll 0 0 #f4f8fa;
    border: medium none;
    color: #2e4453;
}

input.error {
	border: 1px solid #FF7C7C;
}


.errorBloc, .warningBloc, .successBloc, .infoBloc {
    color: #f1f1f1;
	font-size:0.9em;
	line-height: 1.2em;
    display: block;
    padding: 7px 10px;
	margin: 10px auto;
	width: 100%;
}
.errorBloc {background-color: #d94f4f;}
.warningBloc {background-color:#d9a34f;}
.successBloc {background-color: #108B29;}
.infoBloc {background-color: #F9F6DB; color: #717171;}

#slider-age .ui-slider-range { background: #729fcf; }
#slider-age .ui-slider-handle { border-color: #729fcf; }

:checked + label {font-weight: bold;}




input[type="checkbox"].checkbox_gorgeous {display:none;}
input[type="checkbox"].checkbox_gorgeous + label span {
    display:inline-block;
    width:21px;
    height:19px;
    margin:-1px 4px 0 2px;
    vertical-align:middle;
    background:url(../../public/img/csscheckbox_gorgeous.png) left top no-repeat;
}
input[type="checkbox"].checkbox_gorgeous + label {
    cursor:pointer;
	color:#414141;
}
input[type="checkbox"].checkbox_gorgeous:checked + label span {background-position: 0 -18px;}
input[type="checkbox"].checkbox_gorgeous:checked:disabled + label span {
	background:url(../../public/img/csscheckbox_gorgeous_disabled.png) left top no-repeat;
	background-position: 0 -18px;
}
input[type="checkbox"].checkbox_gorgeous:disabled + label span {background:url(../../public/img/csscheckbox_gorgeous_disabled.png) left top no-repeat;}


input[type="checkbox"].checkbox_modern {display:none;}
input[type="checkbox"].checkbox_modern + label span {
    display:inline-block;
    width:20px;
    height:20px;
    margin:0 10px 0 0;
    vertical-align:text-bottom;
    background:url(../../public/img/csscheckbox_modern.png) left top no-repeat;
}
input[type="checkbox"].checkbox_modern + label {
    cursor:pointer;
	font-size:1.05em;
}
input[type="checkbox"].checkbox_modern:checked + label span {background-position: 0 -20px;}


input[type="checkbox"].checkbox_onoff {display:none;}
input[type="checkbox"].checkbox_onoff + label span {
    display:inline-block;
    width:76px;
    height:16px;
    margin:-1px 4px 0 2px;
    vertical-align:middle;
    background:url(../../public/img/csscheckbox_onoff.png) left top no-repeat;
}
input[type="checkbox"].checkbox_onoff + label {
    cursor:pointer;
	font-size:1.05em;
	color:#414141;
}
input[type="checkbox"].checkbox_onoff:checked + label span {
    background-position: 0 -16px;
}
input[type="checkbox"].checkbox_onoff:checked:disabled + label span {
	background:url(../../public/img/csscheckbox_onoff_disabled.png) left top no-repeat;
	background-position: 0 -16px;
}
input[type="checkbox"].checkbox_onoff:disabled + label span {
    background:url(../../public/img/csscheckbox_onoff_disabled.png) left top no-repeat;
}

input[type="radio"].radio_gorgeous {display:none;}
input[type="radio"].radio_gorgeous + label span {
    display:inline-block;
    width:26px;
    height:26px;
    margin:-1px 4px 0 -2px;
    vertical-align:middle;
    background:url(../../public/img/cssradio_gray.png) left top no-repeat;
}
input[type="radio"].radio_gorgeous + label {
    cursor:pointer;
	font-size:1.1em;
	color:#414141;
}
input[type="radio"].radio_gorgeous:checked + label span {background-position: 0 -26px;}


/*Word counter*/
input.textFieldSmall{ 
	font-size:0.7em;
	border-style:solid;
	border-width:1px;
	border-color:#D3D2D2;
	font-weight: bold;
	text-align:center;
}
input.textFieldSmallBad{ 
	font-size:0.7em;
	border-style:solid;
	border-width:1px;
	border-color:#D3D2D2;
	font-weight: bold;
	color:#C00;
	text-align:center;
}
input.textFieldSmallGood{ 
	font-size:0.7em;
	border-style:solid;
	border-width:1px;
	border-color:#D3D2D2;
	font-weight: bold;
	color:#009900;
	text-align:center;
}


/*******************
MODALE & POPUPS
********************/
#backgroundPopup, #backgroundHeaderPopup{
	display:none;  
	position:fixed;
	height:100%;  
	width:100%;  
	top:0;  
	left:0;  
	background:#414141; 
	opacity: 0.7;
	border:1px solid #cecece;  
	z-index:999;
}  

.popupCloseButton{
	line-height: 25px;
	height: 25px;
    text-align: center;
    top: 7px;
	right: 7px;
    width: 25px;
	background-color: #414141;
	color: #fAfAfA;
	position:absolute;
	display:block;
	cursor:pointer;
	font-size: 1.4em;
	z-index:2003;
}

.popup{  
	display:none;  
	position:fixed;
	background:#f1f1f1;
	z-index:2000;
	width:750px;
	height: 700px;
	overflow: hidden;
	top: 50%;  /* Place le haut de l'élément au milieu vertical */
	left: 50%; /* Place la gauche de l'élément au milieu horizontal */
	transform: translate(-50%, -50%); /* Corrige la moitié de la largeur et de la hauteur */
}
.popupTitle{
	border-bottom: 2px solid #e5e5e5;
	padding : 10px 30px;
    position: absolute;
	top:0;
	height: 85px;
    text-align: center;
	width:100%;
	background-color: #414141;
	color: #fAfAfA;
	z-index:2002;
}
.popup h2{margin: 20px 0 !important;}
.popupBody{
	padding : 95px 30px 10px 30px;
	overflow: auto;
	height: 100%;
	z-index:2001;
}
.popupBodywFooter{
	padding : 95px 30px 75px 30px;
	overflow: auto;
	height: 100%;
	z-index:2001;
}
.popupFooter{
	background-color: #414141;
	padding : 15px 30px;
	height: 72px;
	width: 100%;
	position: absolute;
	bottom : 0;
	text-align: center;
}

#popupViewEval{
	height: 550px;
}
#popupContact{
	height: 400px;
}
#popupViewPicture{
	height: 800px;
}

.popup_small{  
	display:none;  
	position:absolute;  
	background:#f1f1f1;  
	border: 1px solid #cecece;
	border-radius: 8px;
	z-index:2000;
	padding: 10px;
	width: 97%;
	height: auto;
	overflow: auto;
	text-align: left;
	font-weight:normal;
	text-align: left;
	text-transform: none;
	letter-spacing: normal;
	font-family: "Open Sans", Verdana, sans-serif;
}


/******************************
CAROUSEL SIGNUP
******************************/
/* ── WRAPPER ─────────────────────────────────────────── */
.carousel-wrapper {
    width: 100%;
    max-width: 860px;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 8px 40px rgba(0,0,0,.10);
    overflow: hidden;
    display:inline-block;
}

/* ── SLIDES CONTAINER ────────────────────────────────── */
.slides-track {
    display: flex;
    transition: transform .45s cubic-bezier(.65,0,.35,1);
    will-change: transform;
}

.slide {
    min-width: 100%;
    display: flex;
    min-height: 560px;
}

/* ── LEFT PANEL ──────────────────────────────────────── */
.panel-left {
    flex: 1;
    padding: 44px 48px 36px;
    display: flex;
    flex-direction: column;
    text-align: left;
}

/* ── RIGHT PANEL ─────────────────────────────────────── */
.panel-right {
    width: 340px;
    flex-shrink: 0;
    background: #f2f3f5;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 32px;
    gap: 24px;
}

/* ── PROGRESS DOTS ───────────────────────────────────── */
.steps {
    display: flex;
    align-items: center;
    gap: 0;
    margin-bottom: 32px;
}
.step-dot {
    width: 28px; height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    border: 2px solid #d1d5db;
    color: #9ca3af;
    background: #fff;
    transition: 0.4s cubic-bezier(.4,0,.2,1);
    position: relative;
    z-index: 1;
}
.step-dot.active {
    background: #4caf50;
    border-color: #4caf50;
    color: #fff;
    box-shadow: 0 0 0 4px rgba(76,175,80,.18);
}
.step-dot.done {
    background: #4caf50;
    border-color: #4caf50;
    color: #fff;
}
.step-dot.done::after {
    content: '✓';
}
.step-dot.done span { display: none; }
.step-line {
    flex: 1;
    height: 2px;
    background: #e5e7eb;
    transition: background 0.4s cubic-bezier(.4,0,.2,1);
}
.step-line.done { background: #4caf50; }

.step .pricing-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.step .pricing-row {
    min-width: 560px;
}

/* ── FORM CONTENT ────────────────────────────────────── */

.form-group {
    margin-bottom: 20px;
}

.form-label {
    display: block;
    font-size: 0.9em;
    font-weight: 600;
    color: #44495a;
    margin-bottom: 8px;
}

.form-input {
    width: 100%;
    padding: 11px 14px;
    border: 1.5px solid #dde0e8;
    border-radius: 8px;
    font-size: 1.1em;
    font-family: inherit;
    color: #1a1d23;
    outline: none;
    transition: border-color .2s;
    background: #fff;
}

.form-input:focus {
    border-color: #d64270;
}

.form-input.small {
    max-width: 180px;
}

/* ── PROFILE TYPE SELECTOR ───────────────────────────── */
.type-selector {
    display: flex;
    gap: 12px;
    margin-bottom: 22px;
}

.type-option {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px;
    width: 160px;
    height: 105px;
    border: 2px solid #dde0e8;
    border-radius: 10px;
    cursor: pointer;
    background: #fff;
    transition: border-color .2s, background .2s;
    padding: 12px 2px;
    user-select: none;
}

.type-option:hover {
    border-color: #c0c4ce;
}

.type-option.selected {
    border-color: #d64270;
    background: #fff8fb;
}

.type-option .type-label {
    font-size: 0.9em;
    font-weight: 600;
    color: #44495a;
}

.type-option.selected .type-label {
    color: #d64270;
}

/* ── CHECKBOX ────────────────────────────────────────── */
.checkbox-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 28px;
    margin-top: 4px;
}

.checkbox-row input[type="checkbox"] {
    width: 17px;
    height: 17px;
    accent-color: #d64270;
    cursor: pointer;
    flex-shrink: 0;
}

.checkbox-row label {
    font-size: 13px;
    color: #44495a;
    cursor: pointer;
    line-height: 1.4;
}

/* ── BUTTONS ─────────────────────────────────────────── */
.btn-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: auto;
}
.btn-row:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.btn-next {
    flex: 1;
    padding: 13px 20px;
    background: #d64270;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1.05em;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    transition: background .2s, transform .1s;
}

.btn-next:hover { background: #bf3460; }
.btn-next:active { transform: scale(.98); }
.btn-next:disabled { background: #e8a0b8; cursor: not-allowed; }

.btn-prev {
    padding: 12px 20px;
    background: transparent;
    color: #878d9e;
    border: 1.5px solid #dde0e8;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    font-family: inherit;
    cursor: pointer;
    transition: border-color .2s, color .2s;
    white-space: nowrap;
}

.btn-prev:hover { border-color: #aab0bc; color: #44495a; }

/* ── RIGHT PANEL ILLUSTRATION ────────────────────────── */
.illustration-caption {
    font-size: 20px;
    font-weight: 700;
    color: #1a1d23;
    text-align: center;
    line-height: 1.35;
}


/******************************
INCLUDE LIBRARY - CROPIT
******************************/
.cropit-image-preview {
	background-color: #f2f2f2;
	background-size: cover;
	border: 2px dashed #d33756;
	border-radius: 3px;
	margin: 10px 0 10px 0;
	width: 379px;
	height: 254px;
	cursor: move;
	position:relative;
}
.cropit-image-preview.cropit-image-loading .loader {opacity: 1; z-index:9999999;}
.cropit-image-preview.cropit-image-loading .cut {opacity: 0;}
.cropit-image-preview.cropit-image-loaded {cursor: move;}
.cropit-image-preview.cropit-image-loaded .loader {opacity: 0; z-index:0;}
.cropit-image-preview.cropit-image-loaded .cut {opacity: 1;}
.cropit-image-background {
	opacity: 0.1;
	cursor: auto;
}

.cropit-preview-525 {
	/*525 x 350 - 1.0*/
	width: 525px;
	height: 350px;
}
.cropit-preview-336 {
	/*525 x 350 - 1.5625*/
	width: 336px;
	height: 224px;
}
.cropit-preview-800 {
	/*1680 x 725 - 2.1*/
	width: 800px;
	height: 300px;
}
.cropit-preview {
	background-color: #f2f2f2;
	background-size: cover;
	cursor: move;
	position:relative;
	margin: 10px 0 10px 0;
}
.cropit-preview.cropit-image-loading .loader {opacity: 1;  z-index:9999999;}
.cropit-preview.cropit-image-loading .cut {opacity: 0;}
.cropit-preview.cropit-image-loaded {cursor: move;}
.cropit-preview.cropit-image-loaded .loader {opacity: 0;  z-index:0;}
.cropit-preview.cropit-image-loaded .cut {opacity: 1;}
.cropit-preview-background {
	opacity: 0.1;
	cursor: auto;
}
.cropit-preview img {max-width:none !important;}

input.cropit-image-input{
	position: relative;
	z-index: 10;
}
input.cropit-image-zoom-input {
	position: relative;
	z-index: 10;
	width:190px;
}
.cropit-image-zoom-input[disabled]{opacity: .2;}

.loader{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height: 100%;
	text-align: center;
	line-height: 100%;
	opacity: 0;
	z-index:9999;
	display:none;
	background-color: rgba(62,62,62,0.7);
}
.loader i{
	position:absolute;
	top:50%;
	left:50%;
}
.loader.active{
	display:block !important;
	opacity: 100%;
}

.loader2{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	z-index:9999;
}

.cut{
	position:absolute;
	bottom:5px;
	left:5px;
	opacity: 1;
	z-index:999;
}




/***********************************
INCLUDE LIBRARY - FONT AWESOME v5
***********************************/
@font-face {
	font-family: 'Font TUC';
	src:  url('../fonts/fontawesome-tuc.woff?9tx728') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

.fa,
.fas,
.far,
.fal,
.fad,
.fab {
	font-family: 'Font TUC';
	display: inline-block;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-rendering: auto;
}
  
.fad {position: relative;}
.fad:before {
  position: absolute;
  opacity: 1;
}
.fad:after {
  opacity: 0.4;
}
.fa-swap-opacity .fad:before,
.fad.fa-swap-opacity:before {
  opacity: 0.4;
}
.fa-swap-opacity .fad:after,
.fad.fa-swap-opacity:after {
  opacity: 1;
}
.fad.fa-inverse {
  color: #ffffff; }
.fad.fa-stack-1x, .fad.fa-stack-2x {
  position: absolute; }
.fad.fa-stack-1x:before,
.fad.fa-stack-2x:before,
.fad.fa-fw:before {
  left: 50%;
  transform: translateX(-50%);
}

.fa-1-2x {font-size: 1.2em;}
.fa-1-3x {font-size: 1.3em;}
.fa-1-4x {font-size: 1.4em;}
.fa-1-5x {font-size: 1.5em;}
.fa-2x {font-size: 2em;}
.fa-2-5x {font-size: 2.5em;}
.fa-3x {font-size: 3em;}
.fa-4x {font-size: 4em;}
.fa-5x {font-size: 5em;}

.fa-theme1 {color: #d33756;}
.fa-white {color: #ffffff;}
.fa-black {color: #333;}
.fa-green {color: #01b053;}
.fa-grey {color: #606060;}
.fa-lightgrey {color:#e8e8e8;}
.fa-red {color: #c20101;}
a:hover .fa-hover-theme1, li:hover .fa-hover-theme1{color: #d33756;}
a:hover .fa-hover-grey, li:hover .fa-hover-grey{color: #797a7a;}
a:hover .fa-hover-white, li:hover .fa-hover-white{color: #fff;}

.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-social {
	border-radius: 10px;
	height:40px;
	line-height: 40px;
    text-align: right;
	padding-right: 5px;
	width:40px;
	background-color: #d33756;
	font-size: 2.8em;
}
.fa-social:hover {
	background-color: #414141;
	color: #ffffff;
}

.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {position: relative; margin-top: 5px;}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}

.fa-ul-theme1 {
	padding: 0;
	margin: 0;
	list-style-type: none;
}
.fa-ul-theme1 > li {
	padding: 0.2em 0 0.2em 1.2em;
}
.fa-ul-theme1 > li:before{
	margin: 0 .5em 0 -1.15em;
	color: #d33756;
	font-family: 'Font TUC';
	content: "\f054";

}

.fa-lg {
	font-size: 1.33333333em;
	line-height: 0.75em;
	vertical-align: -15%;
}
.fa-rg-5 {
	vertical-align: -5%;
}
.fa-rg-20 {
	vertical-align: -20%;
}

.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-tw {
	text-align: center;
	min-width:15px;
	margin-right: 10px;
}

/*Solid*/
.fa-adults:before {content: "\e916";}
.fa-arrow-circle-up:before {content: "\f0aa";}
.fa-arrows-alt:before {content: "\f0b2";}

.fa-bars:before {content: "\f0c9";}
.fa-book:before {content: "\f02d";}

.fa-birthday-cake:before {content: "\f1fd";}
.fa-building:before {content: "\f1ad";}
.fa-bullseye:before { content: "\f140";}

.fa-calendar:before {content: "\f133";}
.fa-caret-down:before {content: "\f0d7";}
.fa-caret-up:before {content: "\f0d8";}
.fa-caret-left:before {content: "\f0d9";}
.fa-caret-right:before {content: "\f0da";}
.fa-chart-line:before {content: "\f201";}
.fa-check:before {content: "\f00c";}
.fa-check-circle:before{content: "\f058";}
.fa-chevron-up:before {content: "\f077";}
.fa-chevron-right:before {content: "\f054";}
.fa-chevron-left:before {content: "\f053";}
.fa-chevron-down:before {content: "\f078";}
.fa-clock:before {content: "\f017";}
.fa-comment:before {content: "\f075";}
.fa-copy:before {content: "\e904";}
.fa-credit-card:before {content: "\f09d";}

.fa-edit:before { content: "\f044";}
.fa-ederlies:before {content: "\e915";}
.fa-envelope:before {content: "\f0e0";}
.fa-envelope-alt:before {content: "\f0e1";}
.fa-exclamation-circle:before {content: "\f06a";}
.fa-external-link:before {content: "\f089";}
.fa-eye:before {content: "\f06e";}

.fa-facebook:before {content: "\f09a";}
.fa-facebook-f:before {content: "\f39e";}
.fa-file-pdf:before {content: "\f1c1";}
.fa-file-invoice-dollar:before {content: "\f571";}
.fa-filter:before {content: "\f0b0";}
.fa-folder-tree:before {content: "\f802";}

.fa-gift:before {content: "\f06c";}
.fa-globe:before {content: "\f0ac";}
.fa-graduation-cap:before {content: "\f19d";}

.fa-home:before {content: "\f015";}

.fa-icons:before {content: "\f86d";}
.fa-image:before {content: "\f03e";}
.fa-info-circle:before {content: "\f05a";}
.fa-instagram:before {content: "\e913";}

.fa-kids:before {content: "\e914";}

.fa-layer-plus:before {content: "\f600";}
.fa-laptop-house:before {content: "\f966";}
.fa-linkedin:before {content: "\f08c";}
.fa-list:before {content: "\f03a";}

.fa-map-marker:before {content: "\f3c5";}
.fa-minus-circle:before {content: "\f056";}
.fa-mobile-alt:before {content: "\f3cd";}
.fa-money-bill:before {content: "\f0d6";}

.fa-paper-plane:before {content: "\f1d8";}
.fa-paste:before {content: "\e903";}
.fa-pause:before {content: "\f04c";}
.fa-phone:before {content: "\f095";}
.fa-play:before {content: "\f04b";}
.fa-plus-circle:before {content: "\f055";}
.fa-plus-square:before {content: "\f0fe";}

.fa-question-circle:before {content: "\f059";}
.fa-quote-left:before {content: "\f10d";}
.fa-quote-right:before {content: "\f10e";}

.fa-school:before {content: "\f549";}
.fa-search:before {content: "\f002";}
.fa-share-square:before {content: "\f14d";}
.fa-sign-in-alt:before {content: "\f2f6";}
.fa-sitemap:before {content: "\f0e8";}
.fa-sliders-v1:before {content: "\f3f2";}
.fa-sort:before {content: "\f0dc";}
.fa-spinner:before {content: "\f110";}
.fa-star:before {content: "\f005";}
.fa-star-alt:before {content: "\f006";}
.fa-star-half-alt:before {content: "\f5c0";}
.fa-sync-alt:before {content: "\f2f1";}

.fa-tachometer-alt:before {content: "\f3fd";}
.fa-tags:before {content: "\f02c";}
.fa-thumbs-up:before {content: "\f165";}
.fa-times:before {content: "\f00d";}
.fa-times-circle:before {content: "\f057";}
.fa-trash:before {content: "\f1f8";}
.fa-trophy:before {content: "\f091";}
.fa-twitter:before {content: "\f099";}

.fa-undo-alt:before {content: "\f2ea";}
.fa-university:before {content: "\f19c";}
.fa-user:before {content: "\f007";}
.fa-users:before {content: "\f0c0";}

.fa-webcam:before {content: "\f832";}

.fa-youtube:before {content: "\f169";}

/*Light*/
.fal.fa-birthday-cake1:before {content: "\f1fe";}
.fal.fa-calendar:before {content: "\f134";}
.fal.fa-sliders-v:before {content: "\f3f1";}
.fal.fa-user:before {content: "\f008";}
.fal.fa-users:before {content: "\f0c2";}
.fal.fa-building:before {content: "\e901";}
.fal.fa-school:before {content: "\e902";}
.fal.fa-university:before {content: "\e900";}

/*Regular*/
.far.fa-save:before {content: "\f0c7";}
.far.fa-user:before {content: "\f009";}
.far.fa-users:before {content: "\f0c3";}

/*Duo tone*/
.fad.fa-bullseye-arrow:before {content: "\f648";}
.fad.fa-bullseye-arrow:after {content: "\10f648";}

.fad.fa-gift:before {content: "\f06b";}
.fad.fa-gift:after {content: "\10f06b";}

.fad.fa-thumbs-up:before {content: "\f164";}
.fad.fa-thumbs-up:after {content: "\10f164";}

.fad.fa-binoculars:before {content: "\f1e5";}
.fad.fa-binoculars:after {content: "\10f1e5";}

.fad.fa-network-wired:before {content: "\10f6ff";}
.fad.fa-network-wired:after {content: "\f6ff";}

.fad.fa-layer-plus:before {content: "\f5ff";}
.fad.fa-layer-plus:after {content: "\10f5ff";}

.fad.fa-check:before {content: "\f00e";}
.fad.fa-check:after {content: "\10f00c";}

.fad.fa-user-edit:before {content: "\f4ff";}
.fad.fa-user-edit:after {content: "\10f4ff";}

.fad.fa-clock:before {content: "\f018";}
.fad.fa-clock:after {content: "\10f017";}

.fad.fa-piggy-bank:before {content: "\f4d3";}
.fad.fa-piggy-bank:after {content: "\10f4d3";}

.fad.fa-link:before {content: "\f0c4";}
.fad.fa-link:after {content: "\10f0c1";}

.fad.fa-home-lg-alt:before {content: "\f80c";}
.fad.fa-home-lg-alt:after {content: "\10f80c";}
  
@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}



/***********************************
RESPONSIVE - TABLET WIDE
***********************************/
@media only screen and (max-width : 1200px) {

	/***********************************
        COMMON ELEMENTS
    ***********************************/
	.background_opacity_white{background-color: rgba(255, 255, 255, 0.7);}
	.background_opacity_black{background-color: rgba(0, 0, 0, 0.6);}

	/**** SEARCH - FILTERS ****/
	div.layer_search_left {
		display: block;
		width: 100%;
		padding: 10px;
		border-right: none;
		position: relative;
		box-shadow: none;
		height: auto;
		overflow-y: inherit;
	}

	div.layer_search_right {
		float: none;
		display: block;
		width: 100%;
		padding: 10px 10px 100px 10px;
	}
}



/***********************************
RESPONSIVE - TABLET
***********************************/
@media only screen and (min-width : 950px)
{
	.tablet_only{display:none !important;}
}
@media only screen and (max-width : 950px), only screen and (max-height: 690px) {

	.tablet_none{display:none !important;}

	/***********************************
	COMMON ELEMENTS
	***********************************/
	.sticker {right: 150px;}
	.flex_reverse_tablet{flex-direction: column-reverse !important;}

	/***********************************
	LAYERS
	***********************************/
	.layer_header_slide{height: 200px;}
	.layer_footer{padding: 15px 20px;}
	.layer_header_title_wide{margin-top: 115px; margin-bottom: 75px;}
	.layer_header_title_ads{max-width:100% !important; min-height: auto; padding: 30px; text-align: center; margin-top:50px; margin-bottom:10px;}
    .layer_header_title_sheets{max-width:100% !important; min-height: auto; padding: 30px; text-align: center; margin-top:50px; margin-bottom:10px;}
    .layer_header_middle{text-align: center;}
	.layer_background_header_parent::after{background-position: center top;}

	.layer_container, .layer_container_first, .layer_container_nopadding, .layer_container_kids, .layer_container_kids_index, .layer_container_pro, .layer_container_admin, .layer_container_narrow{width: 100%;}
	
	.container {
		width: 650px;
		padding-left: 5px;
		padding-right: 5px;
	}


	/***********************************
	TAB
	***********************************/
	ol.tabberCours {border-bottom: none;}
	ol.tabberCours li{margin: 5px 5px;}
	ol.tabberCours li a, ol.tabberCours li.tabberactive a{border: 1px solid #ababab;}

	/****************
	DIV
	****************/

	/**** STRUCTURE ****/
	.box_2_container_margin > * {
		flex: 1 1 50%;
		padding: 10px;
	}

	.box_12_to_21_container > div {flex: 1 1 100%;}
	.box_12_to_21_container > div:last-of-type {padding-top: 10px;}

	/**** HEADER ****/
	.div_navpro_title:first-of-type{margin-top: 70px;}
	.div_navpro_title{font-size:1.0em;}

	/**** SEARCH - FILTERS ****/
	.box_search_listing_h .main_filter {margin-right: 20px;}
	.main_filter_button {display: block;}
	.main_filter_button .title {display: none;}
	div.layer_search_left {
		display: block;
		width: 330px;
		padding: 20px 10px 100px 10px;
		margin-bottom:20px;
		border-right: none;
		position: fixed;
		box-shadow: none;
		height: 100%;
		overflow-y: scroll;
	}
	div.layer_search_right
	{
		padding: 10px 10px 100px 10px;
	}

	/**** DESCRIPTION ****/
	div.box_description_content {flex-basis: 100%; padding: 0 10px 0 10px;}
	div.box_description_content > h2 {text-align: center;}

	/**** HIGHLIGHT ****/
	div.box_highlight_content{text-align: center;}

	/**** BOX ITEM COMMON ****/
	.box_itempage_cartouche .box_item_img {width: 45%; padding-right: 20px;}
	.box_itempage_cartouche .box_item_detail {width: 55%;}

	/**** BOX ITEM ADS ****/
    div.grid_listing_locations_4
    {
        grid-template-columns: repeat(3, 1fr);
    }
    div.grid_listing_locations_3
    {
        grid-template-columns: repeat(2, 1fr);
    }

	div.box_item_ads {flex-flow: row wrap;}
	div.box_item_ads .grid > .grid_item {min-height:auto; padding: 4px;}
	div.box_item_ads > .picture, div.box_item_ads > .picture_reduced{flex: 1 1 250px;}
	div.box_item_ads > .attributes{flex: 1 1 220px;}
	div.box_item_ads .description .variables {padding: 10px 0 0;}

	/**** RECOMMANDATIONS ****/
	.recos_container {columns: 2;}
	.div_recommendation {margin:0;}

	/**** BOX ITEM ARTICLE ****/

	/**** ADS ****/
	div.layer_ads_left{
		float:none;
		display: block;
		width:100%;
	}
	div.layer_ads_right {
		float: none;
		display: block;
		width:100%;
		margin-left:0;
		margin-top: 0;
		margin-bottom: 40px;
	}

	/**** SCHOOL / PROF ****/
	div.layer_school_left{
		float:none;
		display: block;
		width:100%;
		margin-top:0;
	}
	div.layer_school_right {
		float: none;
		display: block;
		width:100%;
		margin-left:0;
		margin-top: 0;
		margin-bottom: 20px;
	}

	/**** ARTICLE ****/
	div.grid_container_article{display: block;}
	.div_article_box_header{text-align:left;}

	/**** SCHOOL ****/
	.flex_item_orga {
		width:311px;
		margin-right: 30px;
		display: inline-block;
	}

	/**** MAP ****/
	#map_canvas_school{
		width:100%;
		height:250px;
	}
	.box_map_control {
		width: 100%;
		float: none;
		background-color: inherit;
		padding: 0 0 10px 0;
		height: auto;
		border: none;
	}

	/**** ACCOUNT ****/
	.layer_nav_left{
		display: block;
		width:100%;
		position:fixed;
		top: 0;
		overflow-y: scroll;
		padding-bottom: 100px;
	}
	.layer_section_right{
		float: none;
		clear:both;
		width:100%;
		display: block;
		padding: 0;
	}

	.div_private_ava_short{display:inline-block;}
	.div_private_ava_medium, .div_private_ava_long{display:none;}


	/*******************
	TABLE
	********************/
	.rwd-table-select {display: inline-block; margin:20px 0 0 0;}
	.rwd-table thead { display: none;}
	.enhanced th.optional, .enhanced td.optional {display: none;}

	/*******************
	BUTTON
	********************/


	/*******************
	HEADINGS
	********************/


	/*******************
	TOGGLE MENU
	********************/
	.pushmenu-left {
		width: 100% !important;
		height: 100%;
		position: fixed;
		left: -100%;
		overflow-y: scroll;
		z-index:12;
	}
	.pushmenu-left.open {left: 0;}
	.pushmenu-body.open {
		left: 100%;
		overflow: hidden;
	}
	.pushmenu-left, .pushmenu-body {transition: all 0.5s ease;}


	/*******************
	MODALE & POPUP
	********************/
	.popup {
		width: 100% !important;
		height: 100% !important;
		top: 0px !important;
		left: 0px !important;
		transform: none;
	}
	.popupTitle{
		height: 65px;
		padding : 10px;
	}
	.popup h2{margin: 10px 0 !important;}
	.popupBody{
		padding : 75px 10px 10px 10px;
	}
	.popupBodywFooter{
		padding : 75px 10px 75px 10px;
	}
	.popupCloseButton {
		top: 1px;
		right: 1px;
	}

    /******************************
    CAROUSEL SIGNUP
    ******************************/
    .panel-left {
        flex: 1 1 100%;
    }

    .panel-right {
        display: none;
    }

}




/***********************************
RESPONSIVE - MOBILE
***********************************/
@media only screen and (min-width : 600px)
{
	.mobile_only{display:none !important;}

	/* Override Swiper */
	.swiper-wrapper-mobile-only {display: block !important; height: 100%;}
	.swiper-slide-mobile-only {width: auto !important;}
}
@media only screen and (max-width : 600px) {
	.mobile_none{display:none !important;}
	.mobile_value_none{font-size: 0em;}
	.mobile_width_100{width:100% !important;}
	.mobile_width_85{width:85% !important;}

	/***********************************
	OVERRIDE EXTERNAL LIBRARIES
	***********************************/

	/*Override nice-select */
	.nice-select{width:100% !important}

	/**************************
	COLOR
	***************************/


	/***********************************
	COMMON ELEMENTS
	***********************************/
	.video
	{
		width: 375px;
		max-width: 100%;
		height: 250px;
	}
	.sticker {
		display: none !important;
	}
	.fa-100_mobile{
		width:100%;
		padding-bottom: 30px;
	}


	/**************************
	LAYERS
	***************************/
	.layer_container, .layer_container_first, .layer_container_kids, .layer_container_kids_index, .layer_container_pro, .layer_container_admin, .layer_container_narrow{padding: 15px 10px 30px 10px;}
	.layer_header_slide{
		height: 120px;
		line-height: 120px;
		background-color: rgba(0,0,0,0.15);
	}
	.layer_header_title{padding: 10px;}
	.layer_header_title_wide{margin: 50px auto; margin-top: 90px; border-radius: initial; width: 100% !important;}
	.layer_header_title_ads{padding: 10px; text-align: center;}
    .layer_header_title_sheets{padding: 10px; text-align: center;}
	.layer_header_border_color{
		height:7px;
	}


	/**************************
	LIST
	***************************/
	ul.header_main_nav{font-size: 0.7em;}
	ul.header_main_nav li > * {padding-right:0px;}

	ul.simplemenu > li{
		border-width:thin;
		border-bottom-style:dotted;
		border-color: #414141;
		margin: 0;
		padding: 15px 0 !important;
		position: relative;
		font-size: 1.1em;
	}
	ul.simplemenu > li:hover{
		background-color:#f4d5db;
	}
	ul.simplemenu > li:after, ul.simplemenu > li:last-child::after{
		content: "\f0da";
		font-size: 1.2em;
		font-family: 'Font TUC';
		width: auto;
		position: absolute;
		right: 10px;
		top: 30%;
	}
	ul.simplemenu > li:last-child{
		border: none;
	}
	ul.simplemenu > li a { margin: 0; display: block; width: 100%; height: 100%; }

	ul.column_2_row{display:table; width:100%;}
	ul.column_2_row > li {display:table-cell; text-align: left; vertical-align: middle;}
	ul.column_2_row > li:nth-child(1) {width:40%; padding-right:10px;}
	ul.column_2_row > li:nth-child(2) {width:60%;}



	/**************************
	TAB
	***************************/
	ol.tabberCoursCreation
	{
		padding: 5px;
	}
	ol.tabberCoursCreation li
	{
		height: 30px;
		padding-right: 10px;
		padding-top: 4px;
		padding-bottom: 2px;
	}
	ol.tabberCoursCreation li.tabberactive
	{
		background-size:cover;
	}
	ol.tabberCoursCreation li.tabberactiveend
	{
		background-size:cover;
	}

	ul.chevron_listing li:first-child span{padding-left: 10px;}
	ul.chevron_listing li:last-child span{padding-right: 10px;}
	ul.chevron_listing li span {padding: 0 5px 0 1px;}



	/**************************
	DIV
	***************************/

	/**** STRUCTURE ****/
	.box_2_container_margin > * {
		flex: 1 1 100%;
		padding: 0;
		margin-bottom: 20px;
	}
    .box_2_container_full > * {
        flex: 1 1 100%;
        padding: 10px 5px;
    }
	.box_2_container_margin > *:last-child {
		margin-bottom: 0;
	}
    .box_3_container_full > * {
        flex: 1 1 100%;
        padding: 10px 5px;
    }

	/**** FOOTER ****/
	.div_footer_links{width:100%; margin:15px 0 15px 0; float:none; text-align:center;}
	.div_footer_social{width:100%; margin:15px 0 0 0; float:none; text-align:center;}

	/**** HIGHLIGHT ****/
	div.box_container_highlight > div {flex-basis: 100%; padding: 0 0 0 0;}
	div.box_highlight_content > div {margin: 15px auto; margin-top:0px;}

	/**** SEARCH ****/
	.box_search_listing_h{padding: 10px;background-color: #f2f2f2;float:none; width:100%;}
	.box_search_listing_h .main_filter {min-width: 100%;}

	/**** MAPS ****/
	#frame_map_content
	{
		height:352px;
	}

	/**** KIDS ****/
	div.box_kids_links_left {
		margin: 40px 0 40px 0;
	}

	/**** DESCRIPTION ****/
	div.box_container_description {columns: 1; padding: 20px 0 0 0;}

	/**** BOX ITEM COMMON ****/
	.box_itempage_cartouche{padding:10px; border-radius:5px; margin-top: 0;}
	.box_itempage_cartouche .box_item_img {width:100%; display:block; padding-right:0; padding-bottom: 20px;}
	.box_itempage_cartouche .box_item_detail {width:100%; display:block;}

	/**** BOX ITEM ADS ****/
	div.box_item_ads {display: block; margin: 20px 0 40px 0;}
	.swiper-container div.box_item_ads {margin: 10px 0;}
	div.box_item_ads .grid > .grid_item {
		flex: 1;
		min-width: 50%;
		padding: 2px;
		border: none !important;
		font-size: 0.9em;
	}
	div.box_item_ads > .picture, div.box_item_ads > .picture_reduced{flex: 1 1 250px; padding: 0;}
	div.box_item_ads > .attributes{padding: 10px 10px 3px 10px;}
	div.box_item_ads .attributes .title{height: auto;}
	div.box_item_ads .description .variables {padding: 0;}
	div.box_item_ads .description .variables li{display:block; margin:4px 0;}
	div.box_item_ads > .description{padding: 0px 10px 10px 20px;}

	div.grid_item_subject .content{padding: 6px;}


	/**** BOX ITEM SCHOOL ****/
	.flex_item_orga {display:block;}
	.flex_item_orga_normalized{margin:10px 0 !important;}
	.flex_item_orga_normalized li{padding: 5px; display:block; width:100% !important; margin-top:0 !important;}

	/**** BOX ITEM SUBJECT ***/
    div.grid_listing_locations
    {
        gap: 10px;
    }
    div.grid_listing_locations_4, div.grid_listing_locations_3
    {
        grid-template-columns: repeat(2, 1fr);
    }
	div.grid_container_subjects
	{
		grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
		grid-gap: 10px;
	}
	div.grid_container_subjects:first-of-type{
		margin-top: 0;
	}
	div.grid_item_subject_small {
		width: 100%;
		display: block;
	}

	/**** RECOMMANDATIONS ****/
	.recos_container {columns: 1;}

	/**** BOX ITEM ARTICLE ***/

	/**** BOX ITEM TESTIMONIAL ****/
	div.grid_container_testimonials > *{
		flex: 0 1 100%;
		margin: 0 0 30px 0;
	}
	div.grid_container_testimonials > *:last-of-type{
		margin: 0;
	}
	
	/***** ADS ******/
	div.flex_container_orgas > div {flex: 0 1 100%;}
	div.flex_container_prices > div {border-right: none;}
	div.flex_container_prices > div {flex: 0 1 50%;}
	div.flex_container_prices > div:nth-child(even) {border-right: none;}

	/***** SCHOOL / PROF *****/
	div.flex_container_attr > div {flex:1 1 50% !important;}
	div.flex_container_attr > div:nth-child(even) {border-right: none;}

	/**** SEARCH & FILTER ****/
	div.searchBloc{padding: 5px 10px;}

	ul.search_compact {text-align: left;}
	ul.search_compact > li {
		padding: 5px 15px;
		width:100%;
		margin: 6px 0 0 0;
	}
	ul.search_compact li.action a{width:100%;}

    /**** Pricing ****/
    div.pricing-table{
        width:90%;
    }
    div.pricing-plan-col1 {
        flex: 0 0 100%;
    }

    /*******************
    TABLE
    ********************/
	table.table_mobile_singlecol{width:100%;}
	table.table_mobile_singlecol td, table.table_mobile_singlecol th{display: block; width:100%; padding-top:5px; padding-bottom: 5px;}
	
	.table_rsp .row_header{display: none;}
	.table_rsp .row{display: block;}
	.table_rsp .column
	{
		display: block;
		padding: 5px 5px;
		position:relative;
		padding-left: 155px;
		min-height: 20px;
	}
	.table_rsp .column:before{
		padding: 5px 5px;
		font-weight:bold;
		padding-right:20px;
		display: inline-block;
		width: 150px;
		content:" "attr(data-label)" ";
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
	}
	
	.table_rsp .row_form{margin-bottom:10px;}
	.table_rsp .row_compressed{margin-bottom: 10px;}
	.table_rsp > div
	{
		padding: 5px 0;
		text-align: left;
	}
	.table_rsp > div > div{display: inline-block; width:100% !important;}
	.table_rsp > div > div:last-of-type{padding-top: 0;}

	.table_rsp .visible_row {display:block;}
	.table_rsp .hidden_row {display:none;}

	.table_rsp .empty_column{display:none;}



	.table_rsp .column_form_title{padding: 0 15px 8px 0; text-align:right;}
	.table_rsp .column_form_body{padding: 0 0 8px 0;}
	.table_rsp .column_form_title1{padding: 15px 15px 15px 0; width:25%;}
	.table_rsp .column_form_body1{padding: 15px 0 15px 0; width:75%;}
	.table_rsp .column_form_title2{padding: 20px 15px 20px 0; width:25%;}
	.table_rsp .column_form_body2{padding: 20px 0 20px 0; width:75%;}
	.table_rsp .column_form_title3{padding: 10px 15px 10px 0; width:35%;}
	.table_rsp .column_form_body3{padding: 10px 0 10px 0; width:65%;}
	.table_rsp .column_form_title4{padding: 10px 0 10px 0;}
	.table_rsp .column_form_body4{
		padding: 10px 0 10px 10px;
		text-align: center
	}


	/**************************
	HEADING
	***************************/
	h1.header_title
	{
		font-size: 1.6em;
	}
    .header_subtitle
    {
        font-size: 1.3em;
    }

	h1.admin_title
	{
		font-size:1.6em;
		line-height: 30px;
	}

	/**** LAYERS STD ****/
	h2.layer_title{
		font-size: 1.4em;
		margin: 20px 0;
	}
	h2.layer_title > .layer_subtitle
	{
        font-size: 0.6em;
	}
	h2.layer_title_inline{
		font-size: 1.4em;
	}
	h3.layer_title{
		font-size:1.25em;
		margin: 10px 0;
	}

	/**** LAYERS HIGHLIGHT ****/
	h2.layer_title_highlight{
		font-size:2.4em;
	}

	/**** SECTION STD ****/
	h2.section_title
	{
		font-size:1.4em;
		margin: 30px 0 15px 0;
	}
	h3.section_title
	{
		font-size:1.25em;
		margin: 20px 0 8px 0;
	}
	h3.section_title:first-child{margin: 8px 0;}

	/**** BOX ****/
	h2.box_title
	{
		font-size:1.4em;
		margin: 30px 0 15px 0;
	}
	* > h2.box_title:first-child{margin: 15px 0;}
	h3.box_title
	{
		font-size:1.25em;
		margin: 20px 0 8px 0;
	}
	* > h3.box_title:first-child{margin: 8px 0;}

	h2.box_title_cap
	{
		font-size:1.4em;
		margin: 30px 0 15px 0;
	}
	* > h2.box_title_cap:first-child{margin: 15px 0;}
	h3.box_title_cap
	{
		font-size:1.1em;
		margin: 20px 0 8px 0;
	}
	* > h3.box_title_cap:first-child{margin: 8px 0;}

	h2.button_title {
		font-size:1.4em;
		padding: 10px 15px;
	}





	/**************************
	TEXT
	***************************/
	.text_cap_xxhigh{
		font-size: 2.5em;
	}
	.text_cap_xhigh{
		font-size: 1.9em;
	}
	.text_cap_high{
		font-size: 1.6em;
	}
	.text_cap_mhigh{
		font-size: 1.3em;
	}
	.text_cap_medium{
		font-size: 1.15em;
	}



	/**************************
	LINK
	***************************/
	a.link_navigation_header{font-size:1.2em;}
	a.button_main, .button_main_active {font-size:1.2em;}
	a.button_main_mobile_fullwidth {width:100%;}
	a.button_border_big_light, a.button_border_big_dark, a.button_border_big_white, a.button_border_big_theme {padding: 10px 20px;}


	/**************************
	BUTTON
	***************************/
	a.button_medium_theme{
		font-size: 1.1em;
		padding: 6px 12px;
	}

	a.button_big_theme{
		font-size: 1.3em;
		padding: 10px 20px;
	}
	.button_small_square_lightGray {
		padding: 0 6px; /* Links */
	}

	/*******************
	FORM
	********************/
	input.regular {width: 100%; max-width: 100%;}
	input.regular.half {width:45%; max-width: 45%;}
	select.regular{width: 100%; max-width: 100%;}
	
	.auto_width {width:auto !important;}
	
	.auto_complete {
		position:relative;
		font-size: 1.2em;
	}

	#npa_results{width:100%;}
	
	input.textField, select.textField{width: 100%; max-width: 400px;}

}