/* Theme Name: Theme Kordall
   URI: https://www.kordall.lu
   Description: Theme crèche Kordall de Petange
   Version: 1.0
   Author: Temsamani  
*/



@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,600;1,400;1,600&family=Oswald:wght@600&display=swap');

* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: montserrat;
}


/*********************
**********************
**** PAGE ACCUEIL **** 
**********************
*********************/

html {
scroll-behavior: smooth;
margin-top:0px !important;
}

body {
margin:0;
}

header {
position: relative;
height: 120px;
max-width: 100%;
background-color: #ffffff;
box-shadow: rgba(33, 43, 84, 0.15) 0px 5px 20px 0px, rgb(164, 214, 41) 0px 5px, #a4d6294d 0px 10px, rgba(164, 214, 41, 0.2) 0px 15px, rgba(164, 214, 41, 0.1) 0px 20px, rgba(164, 214, 41, 0.05) 0px 25px;
}

nav {
max-width: 1200px;
height: 120px;
margin: 0 auto;
position: relative;
z-index: 1;
}

nav {
display: flex;
align-items: center;
justify-content: space-between;
}

nav ul li > a {
font-size: 18px;
font-weight: 600;
font-variant: small-caps;
}

nav img {
height: auto;
width: 150px;
}


nav .nav {
height: calc(120px - 30%);
display: flex;
flex-direction: column;
justify-content: space-evenly;
}

nav .nav ul {
display: flex;
justify-content: end;
}

nav .nav ul > li {
display: inline-flex;
margin-left: 30px;
}

nav .nav ul:nth-of-type(2) li > a {
text-decoration: none;
--s: 0.12em;   /* the thickness of the line */
--c: rgb(27, 175, 197);

color: #0000;
padding-bottom: var(--s);
background: 
linear-gradient(90deg,var(--c) 50%,#000 0) calc(100% - var(--_p,0%))/200% 100%,
linear-gradient(var(--c) 0 0) 0% 100%/var(--_p,0%) var(--s) no-repeat;
-webkit-background-clip: text,padding-box;
background-clip: text,padding-box;
transition: 0.5s;
}

nav .nav ul:nth-of-type(2) li > a:hover {
--_p: 100%;
transition: .3s, -webkit-mask-size .3s .3s;
}

nav .nav ul:nth-of-type(2) li.current_page_item {
--_p: 100%;

}

nav .nav #pre {
background: #212B54;
text-decoration: none;
background: linear-gradient(to right, #212B54 0%, #2c5e75 26%, #439eac 55%, #212B54 100%);
padding: 6px 25px;
border-radius: 0 180px 180px 180px;
font-weight: 600;
cursor: pointer;
border: none;
background-size: 200% 100%;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

nav .nav #pre a {
color: #A4D629;
text-decoration: none;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

nav .nav #pre:hover a {
color: #fff;
text-decoration: none;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out
}

nav .nav #pre:hover {
text-decoration: none;
padding: 6px 25px;
border-radius: 0 180px 180px 180px;
background-position: 100% 0;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

main {
background: rgb(164,214,41);
background: linear-gradient(90deg, rgba(164,214,41,1) 0%, rgba(132,204,94,1) 26%, rgba(101,195,145,1) 65%, rgba(66,185,204,1) 100%);
}

.backg {
margin: 0 auto;
position: relative;
z-index: 0;
}

.backg > img {
position: fixed;
/* z-index: 0; */
height: auto;
width: 100%;
margin: 0;
animation: rotation 18s infinite linear;
}

@keyframes rotation {
from {
transform: rotate(0deg);
}
to {
transform: rotate(359deg);
}
}

.bg {
animation:slide 5s ease-in-out infinite alternate;
background-image: linear-gradient(-60deg, #A4D629 50%, #42B9CC 50%);
bottom:0;
left:-50%;
opacity:.5;
position:fixed;
right:-50%;
top:0;
z-index:-1;
}

.bg2 {
animation-direction:alternate-reverse;
animation-duration:6s;
}

.bg3 {
animation-duration:7s;
}

.content {
box-sizing:border-box;
left:50%;
height: 70%;
position:fixed;
text-align:center;
top:50%;
transform:translate(-50%, -50%);
z-index: 0;
display: flex;
flex-direction: column;
justify-content: space-around;
}

.content h1 {
font-size: 40px;
font-weight: 600;
color: #212B54;
margin-top: 5vmin;
}

.content h3 {
font-size: 25px;
color: #212B54;
padding-bottom:1.5vmin;
margin-top: 0vmin;
font-weight: 600;
font-variant: small-caps;
}

.content .txt img {
height: auto;
width: 400px;
margin-top: 1vmin;
}

@keyframes slide {
0% {
transform:translateX(-25%);
}
100% {
transform:translateX(25%);
}
}

.btn{
margin-top: -8vmin;
}

.content > .btn button {
border: 0;
background-color: transparent;
}

.content > .btn button a {
margin: 10px;
border: 0px;
font-variant: small-caps;
font-size: 18px;
font-weight: 600;
background-color: #ffffff;
padding: 6px 25px;
border-radius: 180px;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

.content > .btn button a:hover {
color: #4bb9ca;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

.content > .btn button a {
color: #212B54;
text-decoration: none;
}

.content > .btn button:nth-child(2) a {
color: #A4D629;
background: #212B54;
text-decoration: none;
background: linear-gradient(to right, #212B54 0%, #2c5e75 26%, #439eac 55%, #212B54 100%);
cursor: pointer;
border: none;
background-size: 200% 100%;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

.content > .btn button:nth-child(2) a:hover {
color: #fff;
text-decoration: none;
background-position: 100% 0;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

.floating {
animation-name: floating;
animation-duration: 3s;
animation-iteration-count: infinite;
animation-timing-function: ease-in-out;
}

@keyframes floating {
0% { transform: translate(0,  0px); }
50%  { transform: translate(0, 15px); }
100%   { transform: translate(0, -0px); }   
}

.floating a > svg {
height: auto;
width: 8%;
}

.svg {
display: flex;
align-items: flex-end;
height: calc(100vh - 120px );
}

.svg > svg {
width: 100%;
height: auto;
z-index: 1;
margin-bottom: -5%;
/* margin-bottom: -170px; */
}

.svg svg > path {
width: 100vw;
height: 100%;
}


/* ---------- */
/*   POP UP   */
/* ---------- */

.img-replace {
  /* replace text with an image */
  display: inline-block;
  overflow: hidden;
  text-indent: 100%;
  color: transparent;
  white-space: nowrap;
}

.cd-nugget-info {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 50px;
  line-height: 50px;
  bottom: 0;
  left: 0;
}
.cd-nugget-info a {
  position: relative;
  font-size: 14px;
  color: #5e6e8d;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}
.no-touch .cd-nugget-info a:hover {
  opacity: .8;
}
.cd-nugget-info span {
  vertical-align: middle;
  display: inline-block;
}
.cd-nugget-info span svg {
  display: block;
}
.cd-nugget-info .cd-nugget-info-arrow {
  fill: #5e6e8d;
}

.cd-popup {
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(94, 110, 141, 0.9);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s;
  -moz-transition: opacity 0.3s 0s, visibility 0s 0.3s;
  transition: opacity 0.3s 0s, visibility 0s 0.3s;
}
.cd-popup.is-visible {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.3s 0s, visibility 0s 0s;
  -moz-transition: opacity 0.3s 0s, visibility 0s 0s;
  transition: opacity 0.3s 0s, visibility 0s 0s;
	z-index: 100;
}

.cd-popup-container {
  position: relative;
  width: 90%;
  max-width: 400px;
  margin: 4em auto;
  background: #FFF;
  border-radius: .25em .25em .4em .4em;
  text-align: center;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-40px);
  -moz-transform: translateY(-40px);
  -ms-transform: translateY(-40px);
  -o-transform: translateY(-40px);
  transform: translateY(-40px);
  /* Force Hardware Acceleration in WebKit */
  -webkit-backface-visibility: hidden;
  -webkit-transition-property: -webkit-transform;
  -moz-transition-property: -moz-transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.cd-popup-container p {
  padding: 3em 1em;
}
.cd-popup-container .cd-buttons:after {
  content: "";
  display: table;
  clear: both;
}
.cd-popup-container .cd-buttons li {
  float: left;
  width: 50%;
  list-style: none;
}
.cd-popup-container .cd-buttons a {
  display: block;
  height: 60px;
  line-height: 60px;
  text-transform: uppercase;
  color: #FFF;
  -webkit-transition: background-color 0.2s;
  -moz-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.cd-popup-container .cd-buttons li:first-child a {
  background: #fc7169;
  border-radius: 0 0 0 .25em;
}
.no-touch .cd-popup-container .cd-buttons li:first-child a:hover {
  background-color: #fc8982;
}
.cd-popup-container .cd-buttons li:last-child a {
  background: #b6bece;
  border-radius: 0 0 .25em 0;
}
.no-touch .cd-popup-container .cd-buttons li:last-child a:hover {
  background-color: #c5ccd8;
}
.cd-popup-container .cd-popup-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 30px;
  height: 30px;
}
.cd-popup-container .cd-popup-close::before, .cd-popup-container .cd-popup-close::after {
  content: '';
  position: absolute;
  top: 12px;
  width: 14px;
  height: 3px;
  background-color: #8f9cb5;
}
.cd-popup-container .cd-popup-close::before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 8px;
}
.cd-popup-container .cd-popup-close::after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  right: 8px;
}
.is-visible .cd-popup-container {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
@media only screen and (min-width: 1170px) {
  .cd-popup-container {
    margin: 8em auto;
  }
}


/* ---------- */
/*   ARTICLE  */
/* ---------- */

.histo {
background-color: #ffffff;
position: relative;
}

.histo > svg > path {
width: 100%;
height: auto;
position: relative;
background-color: #212B54;
z-index: 2;
}

.tout {
margin: 0 auto;
max-width: 1200px;
height: auto;
position: relative;
z-index: 3;
display: flex;
padding: 40px 0 75px 0;
display: flex;
align-items: center;
background-image: url(img/bg-c.svg);
background-position: center;
background-repeat: no-repeat;
}

#historique {
max-width: 50%;
display: flex;
flex-direction: column;
justify-content: center;
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1b7;
backdrop-filter: blur( 4.5px );
-webkit-backdrop-filter: blur( 1.5px );
border-radius: 10px;
border: 1px solid rgba( 255, 255, 255, 0.18 );
padding: 0 50px;
}

#historique h2 {
font-family: oswald;
font-size: 60px;
color: #212B54;
}

#historique h4 {
font-family: montserrat;
font-weight: 600;
font-style: italic;
color: #212B54;
line-height: -2em;
padding-bottom: 25px;
font-size: 15px;
}

#historique p {
font-weight: 400;
color: #212B54;
font-size: 18px;
width: 90%;
padding-bottom: 15px;
}

.photos {
max-width: 50%;
/* display: flex;
flex-direction: column;
justify-content: center;
align-items: flex-end; */
}

.photos img {
width: 600px;
height: 450px;
object-fit: cover;
}



/****************************
*****************************
********** GALLERY ********** 
*****************************
****************************/

.container {
  position: relative;

}

/* Hide the images by default */
.mySlides {
  display: none;
}

/* Add a pointer when hovering over the thumbnail images */
.cursor {
  cursor: pointer;
}

/* Next & previous buttons */
.prev,
.next {
  cursor: pointer;
  position: absolute;
  top: 48%;
  width: auto;
  padding: 16px;
  margin-top: -50px;
  color: white;
  font-weight: bold;
  font-size: 20px;
  border-radius: 0 3px 3px 0;
  user-select: none;
  -webkit-user-select: none;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover,
.next:hover {
  background: rgb(164,214,41);
  background: linear-gradient(90deg, rgba(164,214,41,1) 0%, rgba(132,204,94,1) 26%, rgba(101,195,145,1) 65%, rgba(66,185,204,1) 100%);
}

/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

/* Six columns side by side */
.column {
  float: left;
  width: 20%;
}

/* Add a transparency effect for thumnbail images */
.demo {
  opacity: 0.6;
}

.active,
.demo:hover {
  opacity: 1;
}


/* ---------- */
/*   FOOTER   */
/* ---------- */

footer {
height: 25vh;
position: relative;
background-color: #ffffff;
}

.bas > svg {
width: 100%;
height: auto;
z-index: 1;
background-color: #ffffff;
/* margin-bottom: -170px; */
}

.bas {
max-width: 100%;
height: 25vh;
display: flex;
align-items: flex-end;
}

.menusec {
background-color: #42B9CC;
}

.menusec ul {
max-width: 1400px;
margin: 0 auto;
display: flex;
justify-content: center;
padding: 20px 0 10px 0;
}

.menusec ul > li {
display: inline-flex;
padding: 0 10px;
}

.menusec ul li a {
font-variant: small-caps;
font-size: 18px;
color: #212B54;
text-decoration: none;
font-weight: 600;
background: 
  linear-gradient(90deg,#212B54 50%,#77b9c3 0) 
  var(--_p,100%)/200% no-repeat;
-webkit-background-clip: text;
        background-clip: text;
transition: .4s;
}

.menusec ul li a:hover {
--_p: 0%;
font-weight: 600;
}

.menusec ul li.current_page_item {
--_p: 0%;
font-weight: 600;
}

.copy {
height: 40px;
display: flex;
justify-content: center;
align-items: center;
}

.copy > p{
font-size: 13px;
font-weight: 400;
color: #212B54;
}


/*********************
**********************
**** PAGE CONTACT **** 
**********************
*********************/


.mainc {
background-color: #ffffff;
z-index: 0;
}  

.mainc > .contact {
margin: 0 auto;
height: calc(100vh - 80px);
width: 100%;
background-color: #ffffff;
background-image: url(img/bg-c.svg);
background-size: contain;
background-position: left;
background-repeat:round;
}

.titre {
max-width: 1200px;
margin: 0 auto;
padding-top: 50px;
}

.titre > h2 {
font-family: oswald;
color: #212B54;
font-size: 60px;
padding-bottom: 20px;
}

.all,.obj {
max-width: 1200px;
margin: 0 auto;
display: flex;
justify-content: center;
}

.c1 {
height: 55vh;
display: flex;
justify-content: center;
width: 50%;
}

.c1 > .ch, .c1 > .cb {
height: calc((100% / 2) - 5px);
width: 100%;
}

.c1 .ch > .ch1 {
height: 100%;
margin: 0 10px 10px 0;
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1b7;
backdrop-filter: blur( 4.5px );
-webkit-backdrop-filter: blur( 1.5px );
border-radius: 10px;
border: 1px solid rgba( 255, 255, 255, 0.18 );
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}

.c1 .cb > .ch1 {
height: 100%;
margin: 0px 0px 10px 0;
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1b7;
backdrop-filter: blur( 2.5px );
-webkit-backdrop-filter: blur( 1.5px );
border-radius: 10px;
border: 1px solid rgba( 255, 255, 255, 0.18 );
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}

.c1 .ch p, .c1 .cb {
text-align: center;
}

.cb .ch1:nth-of-type(2) {
border-bottom-right-radius: 180px
}

.ch .ch1:nth-of-type(1) {
border-top-left-radius: 180px
}

.c1 .ch .ch1:nth-of-type(2) > svg, .c1 .ch .ch1:nth-of-type(1) > svg {
height: auto;
width: 14%;
padding-bottom: 20px;
}

.c1 .cb .ch1:nth-of-type(1) > svg {
height: auto;
width: 10%;
padding-bottom: 20px;
}

.c1 .cb .ch1:nth-of-type(2) > svg {
height: auto;
width: 12%;
padding-bottom: 20px;
}

.c1 .ch .ch1 > h3, .c1 .cb .ch1 > h3 {
color: #212B54;
font-size: 16px;
}

.c1 .ch .ch1 > p, .c1 .cb .ch1 > p {
color: #212B54;
font-size: 14px;
}

.c1 .ch .ch1 p > a {
color: #212B54;
text-decoration: none;
font-weight: 400;
position: relative;
} 

.c1 .ch .ch1 p > a::before {
content: '';
background-color: #89dae6;
position: absolute;
left: 0;
bottom: 0px;
width: 100%;
height: 4px;
z-index: -1;
transition: all .3s ease-in-out;
}

.c1 .ch .ch1 p > a:hover::before {
bottom: 0;
height: 90%;
}


.carte {
display: flex;
flex-direction: column;
width: 50%;
height: 55vh;
}

.carte iframe {
width: 100%;
height: 55vh;
border: 0;
border-radius:0 180px 0 180px ;
}



/*********************
**********************
**** FORM CONTACT **** 
**********************
*********************/

.mainfc, .mainpi {
background-color: #ffffff;
z-index: 0;
margin-bottom: 75px;
}  

.mainfc > .contact, .mainpi > .contact {
margin: 0 auto;
height: auto;
width: 100%;
background-color: #ffffff;

}

.illu, .mainpi .illu {
max-width: 50%;
max-height: 55vh;
margin-right: 20px;
display: flex;
flex-direction: column;
}

.illu > img{
width: 100%;
height: 60vh;
border: 0;
object-fit: contain;
position: relative;
bottom: 15%;
}

.mainfc .contact > .titre, .mainpi .contact > .titre {
max-width: 1200px;
margin: 0 auto;
padding-top: 50px;
}

.c2 {
width: 50%;
display: flex;
flex-direction: column;
align-items: flex-end;
}

/* form animation starts */
.contact .all .c2 .wrapper .wpcf7 {
background-image: url(img/bg-c.svg);
box-shadow: 0 8px 32px 0 #ebeee1b7;
border: 1px solid rgb(255, 255, 255);
border-top:5px solid #fff;
animation: bounce 2s infinite;
position:relative;
padding: 50px;
}

.contact .all .c2 .wrapper .wpcf7:first-child:before {
content:'';
position:absolute;
width:100%;
height:6px;
background: linear-gradient(90deg, rgba(164,214,41,1) 0%, rgba(132,204,94,1) 26%, rgba(101,195,145,1) 65%, rgba(66,185,204,1) 100%);
top:-5px;
right: 0px;
border-radius: 100% 100% 70% 70%;
}

::-webkit-input-placeholder {
font-size: 1.3em;
}

.contact .all .c2 .wrapper .fwpcf7 .wpcf7-list-item label  {
margin: 30px 40px 10px 40px;
padding: 10px;
display: flex;
}

.contact .all .c2 .wrapper .wpcf7 label .wpcf7-list-item-label{
font-size: 13px;
padding-left: 10px;
font-weight: 400;
}

.mainfc .contact .all .c2 .wrapper .wpcf7  input, .wpcf7 textarea, .mainpi .contact .all .c2 .wrapper .wpcf7  input {
background-color: #00ddff18;;
box-shadow: 0 8px 12px 0 #ebeee1b7;
backdrop-filter: blur( 2px );
-webkit-backdrop-filter: blur( 1.5px );
color: #212B54;
font-weight: 600;
font-size: 14px;
border-radius: 0 180px 180px 180px;
margin-bottom: 10px;
padding: 5px 0px 5px 15px;
}


input::placeholder, textarea::placeholder {
font-weight: 600;
font-size: 13px;
color: #212B54;
}

.contact .all .c2 .wrapper .wpcf7 textarea {
border-radius: 0 20px 20px 20px;
margin-bottom: 15px;
resize: vertical;
}

.contact .all .c2 .wrapper .wpcf7  .name:focus, .contact .all .c2 .wrapper .wpcf7  .email:focus, .contact .all .c2 .wrapper .wpcf7  .message:focus {
border-bottom: 5px solid #42B9CC;
transition: ease 0.5s;
}

.mainfc .contact .all .c2 .wrapper .wpcf7 .message, .mainpi .contact .all .c2 .wrapper .wpcf7 .message {
height: 10rem;
}

.mainfc .contact .all .c2 .wrapper .wpcf7 .formEntry, .mainpi .contact .all .c2 .wrapper .wpcf7 .formEntry {
display: block;
min-width: 400px;
padding: 10px;
border: none;
transition: all 0.5s ease 0s;
}

.mainfc .contact .all .c2 .wrapper .wpcf7 .wpcf7-submit, .mainpi .contact .all .c2 .wrapper .wpcf7 .wpcf7-submit {
background: rgb(164,214,41);
background: linear-gradient(to right, rgba(164,214,41,1) 0%, rgb(94, 204, 134) 15%, #42B9CC 35%, rgba(164,214,41,1) 100%);
font-size: 18px;
border-radius: 180px;
margin-top: 30px;
width: 200px;
font-weight: 600;
color: #fff;
cursor: pointer;
text-align:center;
border: none;
background-size: 200% 100%;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

.mainfc .contact .all .c2 .wrapper .wpcf7 .wpcf7-submit:hover, .mainpi .contact .all .c2 .wrapper .wpcf7 .wpcf7-submit:hover {
background-position: 100% 0;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

/* @keyframes bounce {
0% {
tranform: translate(0, 4px);
}
50% {
transform: translate(0, 8px);
}
}  */

.screen-reader-response {
display: none;
}
.wrapper .wpcf7-form p span {
font-size: 14px;
margin-top: 10px;
margin-bottom: 20px;
}

.wpcf7-response-output {
font-size: 15px;
color: #212B54;
font-weight: 600;
}



/*********************
**********************
***** PROTECTIONS **** 
**********************
*********************/

.maing {
background-color: #ffffff;
z-index: 0;
margin-bottom: 75px;
}  

.maing > .contact {
margin: 0 auto;
height: 100%;
width: 100%;
background-color: #ffffff;
background-image: url(img/bg-c.svg);
background-size: contain;
background-position-y: 120px;
background-repeat: round;
background-attachment: fixed;
}

.maing .titre {
max-width: 1200px;
margin: 0 auto;
padding-top: 70px;
position: relative;
z-index: 1;
}

.titre > h2 {
font-family: oswald;
color: #212B54;
font-size: 60px;
padding-bottom: 20px;
}

.maing .contact h2:nth-of-type(1) {
line-height: 85%;
}
.maing .contact h2:nth-of-type(2) {
line-height: 20%;
}

.maing .all {
max-height: 100vh;
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1ee;
backdrop-filter: blur( 2.5px );
-webkit-backdrop-filter: blur( 1.5px );
border-radius: 0 0 180px 0px;
border: 1px solid rgba( 255, 255, 255, 0.18 );
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
z-index: 0;
top: -20px;
box-sizing: initial;
position:relative;
padding: 70px 50px;
}

.maing .all .c2:first-child:before {
content:'';
position:absolute;
width:100%;
height:6px;
background: linear-gradient(90deg, rgba(164,214,41,1) 0%, rgba(132,204,94,1) 26%, rgba(101,195,145,1) 65%, rgba(66,185,204,1) 100%);
top:-5px;
right: 0px;
border-radius: 100% 100% 70% 70%;
}

.maing .all .c2, .maing .all .c3 {
width: 94%;
margin: 0 auto;
display: flex;
align-items: flex-start;
}

.maing .all .c2 h3, .maing .all .c3 h3 {
margin-top: 20px;
font-size: 18px;
color: #212B54;
}
.maing .all .c2 p, .maing .all .c3 p {
font-size: 16px;
color: #212B54;
}

.maing .all .c2 h4, .maing .all .c3 h4 {
font-weight: 400;
font-size: 14px;
margin-top: 35px;
font-style: italic;
color: #212B54;
}

.maing .all .c3 {
display: flex;
flex-direction: column;
align-items: flex-start;
}

.maing .all .c3:first-child:before {
content:'';
position:absolute;
width:100%;
height:6px;
background: linear-gradient(90deg, rgba(164,214,41,1) 0%, rgba(132,204,94,1) 26%, rgba(101,195,145,1) 65%, rgba(66,185,204,1) 100%);
top:-5px;
right: 0px;
border-radius: 100% 100% 70% 70%;
}


/*********************
**********************
****** CONCEPTS ****** 
**********************
*********************/


.mainp {
background-color: #ffffff;
z-index: 0;
margin-bottom: 75px;
}  

.mainp > .contact {
margin: 0 auto;
height: 100%;
width: 100%;
background-color: #ffffff;
}

.mainp > .contact:nth-of-type(1) {
padding-bottom: 30px;
}

.mainp .titre, .mainp .title {
max-width: 1200px;
margin: 0 auto;
padding-top: 70px;
}

.titre > h2, .title > h2, .ti >h2 {
font-family: oswald;
color: #212B54;
font-size: 60px;
padding-bottom: 20px;
}


.title > h2 {
text-align: center;
}

.mainp .contact .titre h2:nth-of-type(1), .mainp .contact .title h2:nth-of-type(1), .ti >h2:nth-of-type(1) {
line-height: 85%;
}

.mainp .contact .titre:nth-of-type(2) h2:nth-of-type(1) {
text-align: center;
}

.mainp .contact .titre h2:nth-of-type(2),.ti >h2:nth-of-type(2) {
line-height: 20%;
}

.ti >h2:nth-of-type(2) {
  padding-bottom: 35px;
}

.mainp .contact:nth-of-type(2) {
margin: 0 auto;
height: 100%;
width: 100%;
background-color: #ffffff;
background-image: url(img/bg-p.svg);
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}

.mainp .contact .all .c2 p  {
font-weight: 400;
color: #212B54;
font-size: 18px;
}

p span {
font-weight: 600;
color: #212B54;
font-size: 18px;
}

.mainp .contact .obj .c2 {
width: 25%;
}

.mainp .contact .obj  {
background-image: url(img/bg-c.svg);
background-repeat: no-repeat;
background-size: contain;
background-position: center;
}

.mainp .contact .obj .c2 p {
text-align: center;
font-size: 16px;
padding-bottom: 10px;
font-weight: 400;
color: #212B54;
}

.vobj {
width: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1ee;
backdrop-filter: blur( 2.5px );
-webkit-backdrop-filter: blur( 1.5px );
border: 1px solid rgba( 255, 255, 255, 0.18 );
padding: 0 10px;
}

.vobj svg {
height: auto;
width: 12%;
padding-top: 30px;
padding-bottom: 5px;
}

.vobj:nth-of-type(1) svg {
padding-top: 10px;
}

.vobj:nth-of-type(1) {
border-radius: 180px 180px 0 0;
}


/*********************
**********************
****** SERVICES ****** 
**********************
*********************/

.mains {
background-color: #ffffff;
z-index: 0;
margin-bottom: 75px;
}  

.mains .contact, .maind > .contact {
margin: 0 auto;
height: auto;
width: 100%;
background-color: #ffffff;
background-image: url(img/bg-c.svg);
background-size: contain;
background-repeat: round;
background-position-y: -100px;
background-position-y: right;
background-attachment: fixed;
}


.mains .faq {
margin: auto;
text-align: center;
}

.mains .faq ul {
text-align: left;
}

.mains .faq p, .mains .faq ul li i:before, .mains .faq ul li i:after {
transition: all 0.3s;
}

.mains .faq .no-select, .mains .faq h2 {
-webkit-tap-highlight-color: transparent;
-webkit-touch-callout: none;
user-select: none;
}

.mains .faq h2 {
color: #212B54;
font-family: montserrat;
font-weight: 600;
font-size: 20px;
line-height: 34px;
text-align: left;
padding: 15px 0 0 25px;
text-transform: none;
display: block;
cursor: pointer;
}

.mains .faq p {
color: #333;
text-align: left;
color: #212B54;
font-family: montserrat;
font-weight: 400;
font-size: 16px;
line-height: 1.45;
position: relative;
overflow: hidden;
max-height: 1100px;
will-change: max-height;
contain: layout;
display: inline-block;
opacity: 1;
transform: translate(0, 0);
padding-top: 5px;
padding-bottom: 15px;
padding: 5px 100px 10px 25px;
transition: .3s opacity, .8s max-height;
z-index: 2;
}

.mains .faq svg {
height: auto;
width: 2%;
padding-top: 20px;
}
.mains .faq a {
color: #212B54;
text-decoration: none;
font-weight: 400;
position: relative;
top: -9px;
padding-left: 5px;
} 

/* ACCORDEON ICI */
.accordions {
  border-radius: 8px;
  overflow: hidden;
  font-size: 1.2em;
  background: rgba(255, 255, 255, 0);
  box-shadow: 0 8px 32px 0 #ebeee1ee;
  backdrop-filter: blur( 2.5px );
  -webkit-backdrop-filter: blur( 1.5px );
  border: 1px solid rgba( 255, 255, 255, 0.18 );
  padding: 0 10px;
  -webkit-tap-highlight-color: transparent;
  height: auto;
  margin-bottom: 20px;
}

.accordion {
  width: 100%;
  color:  #212B54;
  overflow: hidden;
}

.acc-label {
  display: flex;
  justify-content: space-between;
  padding: 1em;
  font-weight: bolder;
  cursor: pointer;
  font-family: montserrat;
}

.acc-content {
  max-height: 0;
  padding: 0 1em;
  color: black;
  transition: all 0.4s ease;
}
/* ACCORDEON FIN ICI */

.accordions input {
  position: absolute;
  opacity: 0;
  z-index: -1;
}

input:checked+.acc-label::after {
  transform: rotate(-90deg);
}

input:checked~.acc-content {
  max-height: 100%;
  padding: 1em;
}
.mains .faq a::before {
content: '';
background-color: #89dae6;
position: absolute;
left: 2.5px;
bottom: 0px;
width: 100%;
height: 4px;
z-index: -1;
transition: all .3s ease-in-out;
}

.mains .faq a:hover::before {
bottom: 0;
height: 90%;
}

.mains .faq p span {
font-size: 20px;
font-variant: small-caps;
line-height: 0%;
}

.mains .faq p #x {
font-weight: 400;
font-variant: normal;
font-size: 16px;
}


.mains .faq .acc-label:before, .acc-label:after {
content: "";
position: absolute;
background-color: #212B54;
width: 3px;
height: 9px;
transition: all ease .4s;
left: 97%;
}

.mains .faq .acc-label:before {
transform: translate(-2px, 0) rotate(45deg);
}

.mains .faq .acc-label:after {
transform: translate(2px, 0) rotate(-45deg);
}

.mains .faq ul li input[type=checkbox] {
position: absolute;
cursor: pointer;
width: 100%;
height: 100%;
z-index: 1;
opacity: 0;
touch-action: manipulation;
}

.mains .faq input[type=checkbox]:checked ~ h2 {
color: #212B54;
font-family: montserrat;
font-weight: 600;

}

.mains .faq input[type=checkbox]:checked ~ p {
/*margin-top: 0;*/
max-height: 0;
transition: .3s;
opacity: 0;
/*transform: translate(0, 50%);*/
}

.mains .faq input[type=checkbox]:checked ~ .acc-label:before {
transform: translate(2px, 0) rotate(45deg);
}

.mains .faq input[type=checkbox]:checked ~ .acc-label:after {
transform: translate(-2px, 0) rotate(-45deg);
}



/****************************
*****************************
****** INFOS PRATIQUES ****** 
*****************************
****************************/

.maini, .maind{
background-color: #ffffff;
z-index: 0;
margin-bottom: 75px;
}  

.maini > .contact {
margin: 0 auto;
height: 100%;
width: 100%;
background-color: #ffffff;
}

.maini .contact:nth-of-type(1) .c2, .mainpi .contact:nth-of-type(1) .c2 {
padding-left: 20px;
}

.maini .contact:nth-of-type(2) .c2, .mainpi .contact:nth-of-type(1) .c2 {
padding-right: 20px;
}

.maini .titre, .mains .contact .ti, .mainpi .contact .titre {
max-width: 1200px;
margin: 0 auto;
padding-top: 70px;
display: flex;
flex-direction: column;
}

.maini .contact:nth-of-type(2) .titre, .mainpi .contact:nth-of-type(2) .titre {
padding: 0;
padding-top: 0;
}

.maini .contact:nth-of-type(2) .titre {
max-width: 1200px;
margin: 0 auto;
display: flex;
flex-direction: column;
align-items: flex-end;
}

.titre > h2 {
font-family: oswald;
color: #212B54;
font-size: 60px;
padding-bottom: 20px;
}

.maini .contact .titre h2:nth-of-type(1), .maini .contact .title h2:nth-of-type(1), .mainpi .contact .titre h2:nth-of-type(1) {
line-height: 85%;
}

.maini .contact .titre:nth-of-type(2) h2:nth-of-type(1) {
text-align: center;
}

.maini .contact .titre h2:nth-of-type(2), .mainpi .contact .titre h2:nth-of-type(2) {
line-height: 20%;
}

.mainpi .contact .titre h2:nth-of-type(2) {
padding-bottom: 50px;
}

.maini .contact .all .c2 p  {
font-weight: 400;
color: #212B54;
font-size: 18px;
}

p span {
font-weight: 600;
color: #212B54;
font-size: 18px;

}

p > img {
margin-top: 10px;
height: auto;
width: calc((100% / 3) - 3px);
}

.mains .faq p > u {
text-decoration: none;
position: relative;
top: -9px;
}

.carr {
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1ee;
backdrop-filter: blur( 2.5px );
-webkit-backdrop-filter: blur( 1.5px );
border: 1px solid rgba( 255, 255, 255, 0.18 );
padding: 0 10px;
-webkit-tap-highlight-color: transparent;
margin-bottom: 15px;
}

.mains .carr {
margin-top: 15px;
}

/* Slideshow container */
.slideshow-container {
max-width: 60%;
position: relative;
margin: auto;
}

/* Hide the images by default */
.mySlides {
display: none;
}

/* Next & previous buttons */
.accordion .slideshow-container a.prev {
cursor: pointer;
position: absolute;
top: 50%;
left: -6%;
width: auto;
margin-top: -22px;
padding: 16px;
color: #212B54;
font-weight: bold;
font-size: 18px;
transition: 0.6s ease;
border-radius: 3px 0 0 3px;
user-select: none;
}

.accordion .slideshow-container a.prev::before, .accordion .slideshow-container a.next::before{
  display: none;
}

/* Position the "next button" to the right */
.accordion .slideshow-container a.next {
right: -6%;
border-radius: 3px 0 0 3px;
cursor: pointer;
position: absolute;
top: 50%;
width: auto;
margin-top: -22px;
padding: 16px;
color: #212B54;
font-weight: bold;
font-size: 18px;
transition: 0.6s ease;
border-radius: 0 3px 3px 0;
user-select: none;
}

/* The dots/bullets/indicators */
.dot {
cursor: pointer;
height: 15px;
width: 15px;
margin: 0 2px;
background-color: #bbb;
border-radius: 50%;
display: inline-block;
transition: background-color 0.6s ease;
}

.active, .dot:hover {
background-color: #717171;
}

/* Fading animation */
.fade {
animation-duration: 1.5s;
}

@keyframes fade {
from {
  opacity: .4
}
to {
  opacity: 1
}
}



/****************************
*****************************
****** PRE-INSCRIPTION ****** 
*****************************
****************************/

.mainpi .contact .all .illu > p {
color: #212B54;
font-size: 16px;
width: 70%;
}

.mainpi.c2 {
display: flex;
flex-direction: column;
}

.mainpi .c2 {
margin-top: -100px;
}

.mainpi .contact {
background-image: url(img/bg-c.svg);
background-size: contain;
background-repeat: round;
background-position-y: -100px;
background-position-y: right;
background-attachment: fixed;
}

.mainpi .contact .all .c2 .wrapper .wpcf7 {
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1ee;
backdrop-filter: blur( 2.5px );
-webkit-backdrop-filter: blur( 1.5px );
border: 1px solid rgba( 255, 255, 255, 0.18 );
-webkit-tap-highlight-color: transparent;
position:relative;
padding: 0 50px 50px 50px;
}

/* .mainpi .contact .all .illu > p {
color: #212B54;
font-size: 16px;
width: 90%;
text-align: center;
}

.mainpi .all {
flex-direction: column;
align-items: center;
}

.mainpi .illu {
align-items: center;
justify-content: center;
margin-bottom: 50px;
} */

.contact .all .c2 .wrapper .wpcf7 .fpi {
font-variant: small-caps;
font-size: 18px;
}

.contact .all .c2 .wrapper .wpcf7 .fpp {
font-variant: normal;
font-size: 14px;
}

.mainpi .contact .all .c2 .wrapper p {
margin-top: 50px;
}

.mainpi .contact .all .c2 .wrapper .wpcf7 input {
border: 0;
margin-bottom: 0;
padding: 5px 0px 5px 15px;
font-size: 13px;

}

.mainpi .contact .all .c2 .wrapper .wpcf7  label {
color: #212B54;
margin-top: 10px;
font-weight: 400;
}

.mainpi .contact .all .c2 .wrapper .wpcf7 .formEntry{
padding: 8px 0px 8px 15px;
margin-bottom: 5px;
}

.mainpi .contact .all .c2 .wrapper .wpcf7 .fpp input {
width: 60px;
}

.mainpi .wrapper .wpcf7-form p span {
margin-top: 0;
margin-bottom: 0;
}

.mainpi .contact .all .c2 .wrapper .wpcf7 label .wpcf7-list-item-label {
padding-right: 20px;
}

.mainpi .contact .all a{
background: rgb(164,214,41);
background: linear-gradient(to right, rgba(164,214,41,1) 0%, rgb(94, 204, 134) 15%, #42B9CC 35%, rgba(164,214,41,1) 100%);
font-size: 15px;
border-radius: 180px;
margin-top: 30px;
width: 300px;
font-weight: 600;
color: #fff;
cursor: pointer;
text-align:center;
border: none;
background-size: 200% 100%;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
padding: 8px 10px;
text-decoration: none;
}

.mainpi .contact .all a:hover {
background-position: 100% 0;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}


/****************************
*****************************
********* DOCUMENTS ********* 
*****************************
****************************/

.maind .contact .all {
justify-content: flex-start;
}

.maind .contact .all .faq {
display: flex;
height: auto;
flex-wrap: wrap;
}

.maind .contact .all .card {
background: rgba(255, 255, 255, 0);
box-shadow: 0 8px 32px 0 #ebeee1ee;
backdrop-filter: blur( 2.5px );
-webkit-backdrop-filter: blur( 1.5px );
border: 1px solid rgba( 255, 255, 255, 0.18 );
padding: 0 10px;
-webkit-tap-highlight-color: transparent;
width: 280px;
height: 300px;
margin: 10px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}

.maind .contact .all .card svg {
height: 18%;
width: auto;
}

.maind .contact .all .card h3 {
color: #212B54;
text-align: center;
padding-top: 20px;
padding-bottom: 10px;
}

.maind .contact .all a{
background: rgb(164,214,41);
background: linear-gradient(to right, rgba(164,214,41,1) 0%, #42B9CC 45%, rgba(164,214,41,1) 100%);
font-size: 15px;
border-radius: 180px;
margin-top: 30px;
width: 150px;
font-weight: 600;
color: #fff;
cursor: pointer;
text-align:center;
border: none;
background-size: 200% 100%;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
padding: 8px 10px;
text-decoration: none;
}

.maind .contact .all a:hover {
background-position: 100% 0;
moz-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
-webkit-transition: all .4s ease-in-out;
transition: all .4s ease-in-out;
}

/* Slideshow container */
.photos .slideshow-container {
  max-width: 1000px;
  position: relative;
  margin: auto;
}

/* Hide the images by default */
.photos .mySlides {
  display: none;
}

/* Next & previous buttons */
.photos .prev, .photos .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

/* Position the "next button" to the right */
.photos .next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.photos .prev:hover, .photos .next:hover {
  background-color: rgba(0,0,0,0.8);
}

/* The dots/bullets/indicators */
.photos .dot {
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.photos .active, .photos .dot:hover {
  background-color: #717171;
}

/* Fading animation */
.photos .fade {
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}

@media only screen and (max-width: 600px) {
    /* For mobile phones: */
    header {
      height: 350px;
      display: flex;
      justify-content: space-between;
    }
    
    nav {
      max-width: 100%;
      flex-direction: column;
    }

    nav .nav {
      height: auto;
      max-width: 100%;
    }

    nav .nav ul{
      max-width: 100%;
      flex-direction: column;
      align-items: center;
    }

    nav .nav ul:nth-of-type(1) {
      justify-content: center;
      margin: 5px 0;
    }

    nav .nav ul > li {
      margin: 2px 15px;
    }

    nav img {
      display: flex;
      flex-direction: column;
      margin: 10px auto;
      
    }

    .backg > img {
      display: none;
    }
      
    .content {
      top: 75%;
    }

    .btn {
      display: flex;
      flex-direction: column;
    }

    .content > .btn button {
      height: 70px;
    }

    .content > .btn button a {
      padding:  12px 100px;
    }

    .content > .btn button:nth-child(2) a {
      padding:  12px 80px;
      margin: 50px;
    }

    nav .nav #pre {
      padding:  8px 50px;
    }

    nav .nav #pre:hover {
      padding:  8px 50px;
    }

    .svg {
      height: calc(100vh - 300px );
    }

    #historique {
      max-width: 100%;
    }

    .tout {
      background-image: none;
      flex-direction: column;
      display: block;
    }

    .photos {
      max-width: 100%;
    }
    
    #historique p {
      width: 100%;
    }

    .menusec ul {
      flex-direction: column;
      justify-content: center;
      align-items: center;
    }

    .menusec ul > li {
      padding: 0;
    }

    .menusec ul li a {
      margin: 5px 0;
    }

    .titre > h2, .ti >h2 {
      text-align: center;
    }

    .all {
      display: block;
    }

    .illu > img {
      height: auto;
      margin: 0 auto;
    }

    .illu {
      max-width: 70%;
      margin: 0 auto;
    }

    .c2 {
      margin: 0 auto;
      width: 80%;
      display: flex;
      align-items: center;
    }

    .mainp .contact .obj .c2 {
      width: 60%;
    }

    .mainp .contact .obj {
      background-image: none;
    }

    .mainp .contact:nth-of-type(2) {
      background-image: url(img/bg-c.svg);
    }

    .mains .faq h2 {
      padding: 15px 15px 0 25px;
    }

    .mains .faq svg {
      width: 5%;
    }

    .mains .faq p{
      padding: 5px 50px 10px 25px;
    }

    .slideshow-container {
      max-width: 90%;
    }

    .carte, .c1 {
      margin: 0 auto;
      width: 80%;
    }

    .mainc .all {
      display: flex;
      flex-direction: column;
      margin-bottom: 75px;
    }

    .mainc > .contact {
      height: auto;
    }

    .illu, .mainpi .illu {
      max-width: 90%;
      height: auto;
      margin-right: 0;
    }

    .mainpi .contact .all .illu > p {
      width: 90%;
    }

    .mainpi .c2 {
      margin-top: 60px;
    }

    .maing .contact:nth-of-type(2) .all {
      padding: 120px 50px;
    }

    .maing .contact:nth-of-type(1) .all {
      padding: 50px 50px;
    }

    .maing .all .c3 h4 {
      width: 90%;
    }

    .maind .contact .all .faq {
      justify-content: center;
    }

    .mains .contact .all  {
      width: 100%;
    }
    
    .mains .contact .all .illu {
      margin-right: 20px;
    }
    
    .mains .contact .all .illu > p {
      color: #212b54;
      text-align: center;
      width: 100%;
    }

    .photos img {
      width: 100%;
      height: 450px;
      object-fit: cover;
    }

    .photos .fade{
      margin: 0 auto;
      height: auto;
    }
}