/*
Theme Name: Ellipse
Theme URI: http://julbeg.com
Description: Theme pour Ellipse Montessori Academy
Author: Jules Begouen
Author URI: http://julbeg.com
Version: 1.0
Template: illdy
*/

.wp-block-table table {
	border: 1px solid #888;
}

/* Accessibilité : texte lu par les lecteurs d'écran, invisible à l'écran */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

#blog {
	padding-top: 0;
}

#about {
	padding-top: 20px;
}

#about .section-header h3 {
	margin-bottom: 20px;
}

h1, h2, h3, h4, h5, h6 {
	text-align:center;
}

img {
	max-width: 100%;
	height: auto;
}

p, ul {
	text-align:justify;
}

body {
	overflow-x: hidden;
}

.bottom-header p {
	text-align:center;
}

.page-id-198 img,
.page-id-188 img,
.page-id-539 img,
.page-id-1430 img,
.page-id-35 img {
	margin: 20px 0;
}

hr {
    margin-top: 50px;
    margin-bottom: 50px;
}

.markup-format p {
    margin: 0 0 1em 0;
}

.markup-format a {
    color: #263167;
}

.markup-format h1, .markup-format h2, .markup-format h3, .markup-format h4, .markup-format h5, .markup-format h6 {
    margin: 1.5em 0 0.4em 0;
}

.markup-format h2 {
	color: #263167;
	font-size: 27px;
	line-height: 36px;
	font-weight: 700;
}
.markup-format h3 {
	font-size: 25px;
	line-height: 32px;
	font-weight: 700;
	color: #263167;
}
.markup-format h4 {
	font-size: 23px;
	line-height: 32px;
	font-weight: 700;
	color: #263167;
}
.markup-format h5 {
	font-size: 20px;
	line-height: 24px;
	font-weight: 700;
	color: #263167;
}

.markup-format .aligncenter {
	text-align:center;
}

.markup-format .alignleft {
	text-align:left;
}

.markup-format .alignright {
	text-align:right;
}

.bold {
	font-weight: bold;
}

a.button {
	text-decoration: none;
	color: #fff;
	background: #ed7600;
}
a.button:hover, .button_two:hover {
    background: #263167;
}

.is_flex {
	display: flex;
}

.is-flex-center {
	display:flex;
	align-items:center;
	justify-content:center;
}

.page-id-1545 .has-vertical-padding img {
	margin: 50px 0;
}

.button_two {
	background-color: #ed7600;
	border-radius:3px;
	transition:all .3s;
	width:auto;
	min-height:63px;
	margin: 0 15px;
  	padding: 0 70px;
  	display: inline-block;
  	font-weight: 700;
  	min-width: 242px;
  	font-size: 16px;
  	font-family: Lato, sans-serif;
  	color: #fff !important;
	display:flex;
	align-items:center;
	justify-content:center;
}
.wp-block-button__link {
	transition: all .3s;
}
.wp-block-button__link:hover {
	background: #263167 !important;
	color: #FFFFFF !important;
}

#about p {
	color: #000000;
}

#about .section-header {
	margin-bottom: 20px;
}

#about .section-description {
	text-align:justify;
}

#about .section-description br{
	display:block;
	content: '';
	margin-top: 10px
}

#about .section-content .row {
	width:100%;
	margin:0;
	display:flex;
	justify-content:center;
}

#front_about_vision {
	display:flex;
	flex-direction:column;
	row-gap: 10px;
}

.button_two:hover {
	color: #FFFFFF;
}

.card {
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	min-width: fit-content;
	background: #263167;
	color: #FFFFFF;
	box-sizing:border-box;
	padding: 30px;
	border: 15px solid #FFFFFF;
}

.card br {
	display: block;
	content: "";
	margin-top:20px;
}

#vision_cards, #vision_cards_container {
	max-width: 1200px;
	overflow: hidden;
	margin-top: 30px;
	scroll-behavior: smooth;
	align-items:center;
}

#arrow-left, #arrow-right {
	font-size: 50px;
	cursor: pointer;
}

#vision_cards {
	display:flex;
	align-items:center;
	justify-content:center;
	column-gap:15px;
}

#vision_cards_container {
	margin-top:0;
	height:288px;
}

.question {
  	width: 100%;
  	max-width: 1200px;
	margin: 0 auto;
  	overflow: hidden;
  	margin-bottom: 50px;
  	max-height: fit-content;
}

.question_header {
  	background: #263167;
  	width: 100%;
  	height: fit-content;
  	display: flex;
	flex-direction:column;
  	justify-content: center;
  	align-items: center;
  	padding: 30px;
	z-index:1;
	position:relative;
	row-gap: 10px;
}

.question.list {
	margin-bottom: 26px;
	width: 80%;
}

.question.list .question_header {
	padding: 15px;
	flex-direction:row;
	align-items:center;
	justify-content:center;
	column-gap:20px;
}

.question.list .question_header h3{
	color: #ed7600;
	margin: 0;
}

.question_header i {
	color: #ed7600;
	font-size: 30px;
	transition: all .3s
}

.question.active .question_header i {
	transform: rotate(-180deg);
}

.question_header h2 {
  	margin: 0;
  	text-align: center;
	color: #ed7600;
}

.question_reponse {
  	width: 100%;
  	padding: 0 30px;
  	z-index: 0;
	position:relative;
  	background: #d9d9d9;
  	text-align: justify;
	height: 0;
	transform: translatey(-100%);
	overflow:hidden;
	transition: all .5s;
}

.question_reponse.visible {
	padding: 30px;
	height: fit-content;
	transform: translatey(0);
}

#videos {
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:flex-start;
	gap:50px;
    margin-top: 50px;
}

#container-66 {
	width: 66%;
	margin-left: 16.5%;
	margin-right: 16.5%;
}

#header .container {
	padding: 0;
}

/*Header responsive*/
@media screen and (max-width: 992px){
	.header-navigation {
		height: 0;
		width: 100vw;
		transition: all .3s;
		background: #FFFFFF;
		display: flex !important;
		flex-direction:column;
		justify-content:center;
		align-items:center;
		overflow:hidden;
		position:absolute;
		z-index:0;
	}
	
	#header .container {
		padding: 0 15px;
	}
	
	.header-navigation.visible {
		transform:translatey(0);
		top: 78px;
		height: calc(100vh - 78px);
		left: 50%;
    	transform: translate(-59.7%, 0);
	}

	.header-navigation #menu-header {
		display:none;
	}
	
	.header-navigation.visible #menu-header {
		display: flex;
		flex-direction: column;
		justify-content: space-evenly;
		align-items: flex-start;
		margin: 0 !important;
		width: fit-content !important;
	}
	
	#menu-header i {
		font-size: 18px;
		transition: all .3s;
		margin-left: 10px
	}
	
	#menu-header i.rotate {
		transform: rotate(-180deg);
	}
	
	header .row div:last-child {
		position:relative;
	}
	
	header .open-responsive-menu {
		position:relative;
		z-index:1;
	}
	
	#header .top-header .header-navigation ul li.menu-item-has-children .sub-menu.visible {
		visibility: visible;
	}
}

@media screen and (max-width: 767px) {
	
	.header-navigation.visible {
		right:0;
		left:auto;
		transform:none;
	}
}


/** HEADER **/
#header li a {
	text-align:left;
}

#header .top-header .header-navigation ul li a,
.open-responsive-menu .fa {
	color: #263167;
}

#header .top-header .header-navigation ul li:hover a {
	color: #ed7600;
}

#header .top-header .header-navigation ul li.current-menu-item a {
	color: #ed7600;
}

#header .top-header .header-navigation>ul {
	display:flex;
	gap: 10px;
}

#header .header-navigation .lang-switcher,
#header #menu-item-1568 a {
	align-self: center;
}

#header .top-header .header-navigation ul li:last-child {
    margin-right: 0;
}
#header .top-header .header-navigation ul li {
    margin-left: 0;
    margin-right: 0;
}

#header .top-header .header-navigation ul li.menu-item-has-children .sub-menu li a {
	line-height: 1.5em;
	margin: 8px 0;
}

#header .top-header {
	background: #fff;
	padding: 10px 0;
}

#header .bottom-header {
    padding-top: 60px;
    padding-bottom: 200px;
}

#menu-item-1568 a {
	padding: 10px;
	background: #ed7600;
	color: #FFF !important;
	border-radius: 50px;
	transition: all .3s;
}

#menu-item-1568:hover a {
	background: #263167;
}

a.montessori-france {
	float: right;
	font-size: 11px;
	line-height: 1.3em;
	font-family: 'Poppins';
	text-align: center;
	color: #e3e3e3;
	margin: 0 40px 100px 0;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

a.montessori-france strong {
	font-weight: 500;
	color: #fff;
}
.montessori-france img {
	display: block;
	margin: 0 auto 10px;
}

@media only screen and (max-width: 767px) {
	a.montessori-france {
		margin: 0 auto 60px;
		float: none;
	}
}

#header .bottom-header h1 {
	margin-bottom: 20px;
	font-size: 50px;
	line-height: 54px;
	text-shadow: -2px2 px 13px rgba(0, 0, 0, 0.4);
}

#header .bottom-header.blog p {
    color: #FFFFFF;
    font-size: 22px;
}

#header .bottom-header .header-button-one:hover {
    background: rgba(24, 31, 63, 0.3);
}

#header blockquote {
    line-height: 30px;
	font-size: 20px;
 	text-shadow: -1px 1px 6px rgba(0, 0, 0, 0.5);
	font-family: Georgia, serif;
	font-style: italic;
	border: 0;
	padding: 0;
}

#header blockquote .author {
	font-size: 16px;
	opacity: 0.6;
	display: block;
}

#header .container {
	position: relative;
}


a.lang-switcher {
	position: absolute;
	top: -15px;
	right: 15px;
	color: #fff;
	display: block;
}
.lang-switcher img {
	display: block;
}

/** Front page **/
#header .bottom-header .section-description {
	font-size: 18px;
}

#header .bottom-header .header-button-one {
	background: transparent;
}

#header .bottom-header .header-button-three {
    width: auto;
    height: 63px;
    line-height: 63px;
    background: #263167;
    margin: 0 15px;
    padding: 0 70px;
    display: inline-block;
    border-radius: 3px;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    font-family: "Lato";
    min-width: 242px;
}


/** Widgets **/
#services .widget_illdy_service:nth-child(4) {
    margin-top: 0;
}

@media only screen and (max-width: 767px) {
	#services .widget_illdy_service:nth-child(4) {
		margin-top: 40px;
	}
}

/* Poles */

#poles {
	width: 100%;
	background: #fafafa;
	padding: 65px 0 75px 0;
	border-bottom: 1px solid #e1e1e1;
}

.ema-pole .pole-image {
	margin-bottom: 20px;
	display: block;
}

.ema-pole h5 {
	font-size: 18px;
	line-height: 24px;
	color: #263262;
}

.ema-pole a:hover h5 {
	color: #ed7600;
}
.ema-pole a:hover {
	color: inherit;
}

@media only screen and (max-width: 767px) {
	#poles .ema-pole:first-child {
		margin-top: 0;
	}
	#poles .ema-pole {
		margin-top: 40px;
	}
}

/** Contact section **/
#contact-us {
	background-color: #263167;
	color: #fff;
}
#contact-us.front-page-section .section-header h3 {
	color: #ed7600;
}

#contact-us .section-content .contact-us-box .box-right span,
#contact-us .section-content .contact-us-box .box-right span a,
#contact-us .section-content .contact-us-social a,
#contact-us .section-content .wpcf7-form p .wpcf7-text {
	color: #fff;
}

#contact-us .section-content .contact-us-box .box-left {
	color: #ed7600;
	font-weight: 600;
	text-transform: uppercase;
	font-family: 'Poppins';
	font-size: 18px;
	border-color: #ed7600;
}

#contact-us .section-content .contact-us-social a {
	font-size: 30px;
	margin-left: 30px;
}

#contact-us .section-content .contact-us-social a:hover {
    color: #ed7600;
}

/* cf7 */
#contact-us .section-content .wpcf7-form p .wpcf7-text,
#contact-us .section-content .wpcf7-form p .wpcf7-textarea {
	background-color: rgba(0,0,0,.05);
	border: 1px solid rgba(0,0,0,.2);
	color: #fff;
}

#contact-us .section-content .wpcf7-form p .wpcf7-text {
	height: 40px;
}

.wpcf7-form p .wpcf7-form-control:hover,
.wpcf7-form p .wpcf7-form-control:focus,
#contact-us .section-content .wpcf7-form p .wpcf7-textarea:hover,
#contact-us .section-content .wpcf7-form p .wpcf7-textarea:focus,
#contact-us .section-content .wpcf7-form p .wpcf7-text:hover,
#contact-us .section-content .wpcf7-form p .wpcf7-text:focus {
	border-color: rgba(0,0,0,.4);
}

#contact-us .section-content .wpcf7-form p .wpcf7-submit {
	background-color: #fff;
	color: #263167;
}

#contact-us .section-content .wpcf7-form p .wpcf7-submit:hover {
	background-color: #ed7600;
}

#contact-us .section-content .wpcf7-form ::placeholder {
	color: #fff!important;
	opacity: 1;
}

/*submit*/
#contact-us .section-content .wpcf7-form p:nth-of-type(5) {
	position: relative;
}

#contact-us .section-content .wpcf7-form .ajax-loader {
	width: 16px;
	position: absolute;
	bottom: 14px;
	left: 25px;
}

/* Socials */

#contact-us .section-content .contact-us-social a {
	font-size: 20px;
}

/** Pages **/

#header .bottom-header.blog {
    padding: 100px 0;
}

.markup-format blockquote::before, .markup-format blockquote::after {
    content: unset;
}

.markup-format blockquote {
    line-height: 30px;
	font-size: 20px;
	font-family: Georgia, serif;
	font-style: italic;
	border: 0;
	padding: 0;
	margin-bottom: 2em;
}

.markup-format blockquote .author {
	font-size: 16px;
	opacity: 0.6;
	display: block;
}


/* tables */
.markup-format table tbody {
	font-size: 14px;
	font-weight: 400;
}

.markup-format table tbody tr td,
.markup-format table tbody tr th {
	vertical-align: top;
	padding: 8px;
}

.markup-format .table > tbody > tr > td.success {
	background-color: #ed7600;
	color: #fff;
	font-weight: 700;
}

.markup-format table tbody {
	color: #000000;	
}

/* Tabs */
.markup-format .nav a {
	text-decoration: none;
}

.vertical-pills.nav-pills > li {
	float: none;
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:focus,
.nav-pills > li.active > a:hover {
	background-color: #ed7600;
}


/** Subscription forms **/
.subscription-form {
	max-width: 800px;
	margin: 40px auto 0;
}

.subscription-form fieldset {
	margin-bottom: 40px;
}

.subscription-form input.age {
	width: 50px;
}
.subscription-form .activities {
	margin-top: 15px;
}

.subscription-form .subscriber {
	padding: 40px 20px;
	border: 1px solid #eee;
	position: relative;
	margin-bottom: 20px;
}
.subscription-form .activity {
	display: block;
	margin-bottom: 5px;
}
.subscription-form .add-activity {
	display: inline-block;
}
.subscription-form .remove-subscriber {
	position: absolute;
	top: 0;
	right: 0;
}
.subscription-form .remove-activity,
.subscription-form .remove-subscriber {
	color: #ff2b2b;
}

/** Tableaux **/
#activites_extrascolaire tbody {
	color: #565656;
}

#activites_extrascolaire colgroup {
	border: 2px solid #a6bbec;
}

#activites_extrascolaire th {
	border: 2px solid #a6bbec;
}
#activites_extrascolaire tbody tr td {
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	padding: 2px;
	font-size: 11px;
	height: 32px;
}
/*#activites_extrascolaire tbody [rowspan],
#activites_extrascolaire tbody [rowspan] ~ th,
#activites_extrascolaire tbody [rowspan] ~ td {
  border-top: 2px solid #a6bbec;
}*/

/*#activites_extrascolaire tbody tr td.reactive {
	cursor: pointer;
	opacity: .8;
}

#activites_extrascolaire tbody tr td.reactive:hover {
	opacity: 1;
}*/

#activites_extrascolaire tbody tr td.reactive.yoga {
	background: #fcd5b5;
}
#activites_extrascolaire tbody tr td.reactive.music {
	background: #93cddd;
}
#activites_extrascolaire tbody tr td.reactive.jazz {
	background: #ff66cc;
}
#activites_extrascolaire tbody tr td.reactive.paint {
	background: #72b0dd;
}
#activites_extrascolaire tbody tr td.reactive.eveil {
	background: #ffe5ff;
}
#activites_extrascolaire tbody tr td.reactive.danse {
	background: #ffccff;
}
#activites_extrascolaire tbody tr td.reactive.theatre {
	background: #f89a4d;
}
#activites_extrascolaire tbody tr td.reactive.cinema {
	background: #c98cf6;
}

#activites_extrascolaire tbody tr td .title {
	display: block;
	font-weight: 700;
	font-size: 12px;
}
#activites_extrascolaire tbody tr td .age {
	display: block;
	margin-bottom: 5px;
}
#activites_extrascolaire tbody tr td .time {
	display: block;
	opacity: .7;
}
#activites_extrascolaire tbody tr td .price {
	display: block;
	font-weight: 700;
}


/** Footer **/
#footer {
	padding: 0;
}
#footer .bottom-footer {
    margin-top: 0;
}

#footer .copyright {
	font-size: 13px;
}
#footer .bottom-copyright {
	color: inherit;
}
#footer .bottom-copyright a {
	text-decoration: underline;
}

/** Cookie button **/
.cn-set-cookie.button {
	height: 30px;
	line-height: 30px;
	margin-bottom: 0;
	padding: 0 12px;
	font-size: 12px;
}

/** Bootstrap Hack **/

.embed-responsive-1by1 {
	padding-bottom: 100%;
}

.markup-format a.btn {
	text-decoration: none;
	color: #fff;
}

legend {
	margin-bottom: 15px;
	border-bottom: 0;
}

.form-inline .form-group {
	margin-left: 5px;
}

.alert p:last-child {
	margin-bottom: 0;
}

/* Modal */
.modal {
  text-align: center;
  padding: 0!important;
}

.modal:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -4px;
}

.modal-dialog {
  display: inline-block;
  text-align: left;
  vertical-align: middle;
}
/********************************/
.btn-pdf-style{
    background-color: #ed7600;
    border-radius: 3px;
    transition: all .3s;
    width: fit-content;
	margin-inline:auto;
    min-height: 63px;
    padding: 0 70px;
    display: inline-block;
    font-weight: 700;
    min-width: 242px;
    font-size: 16px;
    font-family: Lato, sans-serif;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-pdf-style:hover {
    background: #263167;
}
.flx-logos .e-con-inner{display:grid !important;grid-template-columns:1fr 1fr 1fr !important;}
.page-id-1545 article, .page-id-1545 .blog-post-entry.markup-format{margin-bottom: 0px !important;}
.sec-vids-h {
    max-width: 1200px !important;
    margin: auto !important;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
.sec-vids-h #videos {
    display: flex;
    flex-direction: column;
    justify-content: center;
	align-items: center;
    margin-block: 50px;}
.sec-vids-h iframe#primaire, .sec-vids-h iframe#college {padding-inline:2% !important;max-width: 100% !important; width: 100%;}
.col-logo{ display: flex; align-items: center; align-content: center;  justify-content: center;}
@media only screen and (max-width:1024px){
.sec-vids-h {gap: 5px;}
}
@media only screen and (max-width:800px){
.sec-vids-h { grid-template-columns: 1fr;}
.sec-vids-h #videos { margin-block: 5px;}
}
@media only screen and (max-width:497px){
.flx-logos .e-con-inner{gap:0 !important;grid-template-columns:1fr !important;}
.col-logo{ width: 50%!important;  margin: auto !important;}
}
@media only screen and (max-width:320px){
.col-logo{ width: 100%!important;  margin: auto !important;}
}
.page-id-2038 .bottom-header.blog{display:none !important;}
.author {text-shadow: -1px 1px 6px rgba(0, 0, 0, 0.5) !important;color: #ffffffbd;}

a.montessori-france {
    float: right;
	margin-top: -168px !important;
    font-size: 11px;
    line-height: 1.3em;
    font-family: 'Poppins';
    text-align: center;
    color: #e3e3e3;
    margin: 0 40px 100px 0;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
blockquote {
    border-left: 0px solid #eee;
}
.m-w{max-width:60%;margin:auto;}
.titre-structure:hover{color:#ED7600;}
.m-w-p {
    max-width: 50% !important;
    margin: auto;
}
.home a.montessori-france {	margin-top: 0px !important;}
.img-filt{filter: opacity(0.82) !important;}





