@media screen and (max-width : 576px){
  .recap-section{
    font-size: 7px ;
  }
  .expo2025-section{
    font-size: 7px ;
  }

  .photo-section{
    font-size: 7px ;
    padding: 10px 5px 30px 5px ;
    height :200px;
  }
}

@media screen and (min-width : 577px) and (max-width :700px){
  .recap-section{
    font-size: 8px ;
  }
  .expo2025-section{
    font-size: 8px ;
  }

  .photo-section{
    font-size: 8px ;
    padding: 10px 10px 40px 10px ;
    height :200px;
  }
}

@media screen and (min-width : 701px) and (max-width :800px){
  .recap-section{
    font-size: 10px ;
  }
  .expo2025-section{
    font-size: 10px ;
  }

  .photo-section{
    font-size: 10px ;
    padding: 10px 15px 50px 15px ;
    height :300px;
  }
}

@media screen and (min-width : 801px) and (max-width :1000px){
  .recap-section{
    font-size: 11.9px ;
  }
  .expo2025-section{
    font-size: 11.9px ;
  }

  .photo-section{
    font-size: 11.9px ;
    padding: 10px 20px 50px 20px ;
    height :400px;
  }
}

@media screen and (min-width : 1001px) and (max-width :1200px){
  .recap-section{
    font-size: 11.9px ;
  }
  .expo2025-section{
    font-size: 11.9px ;
  }

  .photo-section{
    font-size: 11.9px ;
    padding: 10px 20px 60px 20px ;
    height :480px;
  }
}

@media screen and (min-width : 1201px)and (max-width :1500px){
  .recap-section{
    font-size: 14px ;
  }
  .expo2025-section{
    font-size: 14px ;
  }

  .photo-section{
    font-size: 14px ;
    padding: 10px 25px 70px 25px ;
    height :480px;
  }
}

@media screen and (min-width : 1501px){
  .recap-section{
    font-size: 16px ;
  }
  .expo2025-section{
    font-size: 16px ;
  }

  .photo-section{
    font-size: 16px ;
    padding: 10px 30px 80px 30px ;
    height :480px;
  }
}
body {
  font-variant: small-caps;
  background-color: #eeeeee;
}

.header {
    position: fixed;
    float: left;
    top: 0;
    left: 0;
    height: 50px;
    width: 30%;
  }
  /*menu test */
  .tabs {
    display: flex;
    align-items: center;
    position: absolute;
  left: 50%;
  transform: translate(-50%,-20%);
    box-shadow: 0 0 1px 0 rgba(50, 94, 224, 0.15), 0 6px 12px 0 rgba(24, 94, 224, 0.15);
    padding: 0.5rem;
    border-radius: 99px;
    width: 45%;
    background-color: #fff;
    font-size: medium;
    
  }
  .tab3:hover , .tab1:hover , .tab2:hover { 
    transform: scale(1.3);
    text-shadow: #000;
    background: linear-gradient(45deg, rgb(240, 240, 240) 0%,rgb(180, 18, 209)) 100% ;
    width : 30% ;
    text-decoration:overline;
  }
  .tabs a {
    color :#000 ;
    text-decoration: none ;
    font-variant: small-caps;
    text-align: center;
    font-size: medium;

  }


  
  .tab {
    flex :1 ;
    justify-content: space-between;
    height: 40px;
    width: 10%;
    font-size:large;
    color: black;
    border-radius: 99px;
    cursor: pointer;
    transition: color 0.15s ease-in;
  }

/* fin du test */  


  .title {
    text-align: center;
    top : 20% ;
    transform: translate(0%,60%);
    font-size: 3em;
    font-weight: bold;
    color: black;
    text-shadow: 1px 1px 3px #000000;
    padding: 0.25em 0.25em;
    
  }

/* premierer div */
  .photo-section {
    transform: translate(0%,10%);
    width: 40%;
    float: left;
    /*background-color: rgb(195,150,236);
    border : 1px solid black ;*/
    color: black;
    justify-content : center ;
    align-items : center ;
    display :flex ;
  }

  .photo-section img {
    width: 100%;
    height: 100%;
    margin : auto ;
    box-shadow: 0 0 30px rgba(0,0,0,0.3);
    border: 2px double black;
    border-radius: 10px ;
    background-color:#eeeeee;
  }

  h2 {
    font-size: 3em;
    font-weight: bold;
    color: black ;
    text-shadow: 1px 1px 3px #000000;
  }

  .recap-section {
    transform: translate(0%,7%);
    padding: 8.8px 0px;
    background-color: #eeeeee;
    color: black;
    box-sizing: border-box;
    margin-right : 60px ;
    float : right ;
    width : 42.4% ;
  }

  .recap-section h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
  }
  .recap-section p {
    font-size: 1.2em;
    line-height: 1.5;
  }

  .expo2025-section {
    z-index : 999 ;
    width : 50px ;
    padding: 8.8px;
    text-align: center;
    margin : 0 auto ;
    background-color: #ffffff;
    color: black;
    box-sizing: border-box;
    margin-top: 650px;
    width: 100%;
    border-radius : 200px ;
    border : 2px solid #000000 ;
    box-shadow: 0 0 1px 0 rgba(50, 94, 224, 0.15), 0 6px 12px 0 rgba(24, 94, 224, 0.15);
  }
  .expo2025-section img {
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
    margin : auto ;
  }

  .interview-section h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
  }

  .interview-section p {
    font-size: 1.2em;
    line-height: 1.5;
  }

  .language-menu {
    float: right;
    margin-top: -10px;
    
  }

  footer {
  bottom :0 ;
  width :99% ;
  background-color: rgb(50, 50, 50);
  color: white ;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
  font-size: 15px;
  margin-top : 50px ;
}

.youtube{
  color : red ;
  margin-right: 30px;
  transition: transform 0.5s ease-in-out;
  }
  .instagram{
  color :#fb92d1;
  margin-right: 30px;
  transition: transform 0.5s ease-in-out;
  }
  .facebook{
  color : rgb(67, 67, 242) ;
  margin-right: 30px;
  transition: transform 0.5s ease-in-out;
  }
  .link{
  color : rgb(14, 171, 244) ;
  margin-right: 30px;
  transition: transform 0.5s ease-in-out;
  }
  .youtube:hover{
    color : rgb(139, 8, 8) ;
    transition-duration: .3s;
    }
    .instagram:hover{
    color :#c75097;
    transition-duration: .3s;
    }
    .facebook:hover{
    color : rgb(47, 47, 171) ;
    transition-duration: .3s;
    }
    .link:hover{
    color : rgb(15, 109, 153) ;
   transition-duration: .3s;
    }
.footer-left h3 {
  margin-bottom: 10px;
  font-size: 18px;
}
#myBtn {
  font-family: inherit;
  font-size: 20px;
  background: #212121;
  color: white;
  fill: rgb(155, 153, 153);
  padding: 0.7em 1em;
  padding-left: 0.9em;
  display: flex;
  align-items: center;
  border: none;
  border-radius: 15px;
  font-weight: 1000;
  cursor:pointer;
}

#myBtn span {
  display: block;
  margin-left: 0.3em;
  transition: all 0.3s ease-in-out;
}

#myBtn svg {
  display: block;
  transform-origin: center center;
  transition: transform 0.3s ease-in-out;
}

#myBtn:hover {
  background: #000;
  cursor:pointer;
}

#myBtn:hover .svg-wrapper {
  transform: scale(1.25);
  transition: .5s linear;
}

#myBtn:hover svg {
  transform: translateX(1.2em) scale(1.1);
  fill: #fff;
}

#myBtn:hover span {
  opacity: 0;
  transition: .5s linear;
}

#myBtn:active {
  transform: scale(0.95);
}



  .footer-medium p {
    margin-top: 0;
    font-size:270%;
    display : flex ;
    justify-content: space-between;
    transform: translate(0%,40%);
  }
  .footer-medium p :hover {
    transform :rotate(10deg) scale(1.1) ;
  }

.footer-right ul {
  margin: 0;
  padding: 0;
  display: flex;
  font-size: large;
}

.footer-right li {
  list-style: none;
  margin-left: 20px;
}

.footer-right li:first-child {
  margin-left: 0;
}
/* Popup */
.modal {
display: none;
position: fixed;
z-index: 3;
left: 0;
top: 0;
color :#000 ;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0, 0, 0, 0.4);
}


.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
color : #000 ;
border: 1px solid #888;
width: 60%;
border-radius: 0.7cm;
}
.button {
position: relative;
width: 1.3em;
height: 1.3em;
border: none;
background: rgba(180, 83, 107, 0.11);
border-radius: 5px;
transition: background 0.5s;
float : right ;
cursor:pointer;
}

.X {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 1.1em;
height: 1.1px;
background-color: rgb(255, 255, 255);
transform: translateX(-50%) rotate(45deg);
}

.Y {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 1.1em;
height: 1.1px;
background-color: #fff;
transform: translateX(-50%) rotate(-45deg);
}



.button:hover {
background-color: rgb(211, 21, 21);
transform : scale(1.5) ;
box-shadow: #000;
}


.container2 {
max-width: 350px;
background: #F8F9FD;
background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(244, 247, 251) 100%);
border-radius: 40px;
padding: 25px 35px;
border: 5px solid rgb(255, 255, 255);
box-shadow: rgba(133, 189, 215, 0.8784313725) 0px 30px 30px -20px;
margin: 20px;
}

.heading {
text-align: center;
font-weight: 900;
font-size: 30px;
color: rgb(16, 137, 211);
}

.form {
margin-top: 20px;
}

.form .input {
width: 100%;
float :none ;
background: white;
border: none;
padding: 15px 20px;
border-radius: 20px;
margin-top: 15px;
box-shadow: #cff0ff 0px 10px 10px -5px;
border-inline: 2px solid transparent;
}
.form .input:hover {
transform : scale(1.03) ;
}

.form .input::-moz-placeholder {
color: rgb(170, 170, 170);
}

.form .input::placeholder {
color: rgb(170, 170, 170);
}

.form .input:focus {
outline: none;
border-inline: 2px solid #12B1D1;
}



.form .send-button {
display: block;
width: 100%;
font-weight: bold;
background: linear-gradient(45deg, rgb(16, 137, 211) 0%, rgb(18, 177, 209) 100%);
color: white;
padding-block: 15px;
margin: 20px auto;
border-radius: 20px;
box-shadow: rgba(133, 189, 215, 0.8784313725) 0px 20px 10px -15px;
border: none;
transition: all 0.2s ease-in-out;
}

.form .send-button:hover {
transform: scale(1.03);
}


.footer-left p {
  margin-top: 0;
  line-height: 1.5;
}

.footer-right ul {
  margin: 0;
  padding: 0;
  display: flex;
  font-size: large;
}

.footer-right li {
  list-style: none;
  margin-left: 20px;
}

.footer-right li:first-child {
  margin-left: 0;
}

/* flip de la photo et du programme */
.photo-section {
  perspective: 1000px;
}

.card {
  width: 70%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 1s;
}

.card:hover {
  transform: rotateY(180deg);
}

.face {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}



.back {
  transform: rotateY(180deg);
}
/*test de bouton langages*/
.language-menu {
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  font-style: italic;
  font-weight: bold;
  font-size :xx-small ;
  display: grid;
  gap: 1.5em;
  place-content: center;
  width:150px;
}

.language-menu input[type=radio] {
  display: none;
}

.input-btn:is(:checked) + .neon-btn .span {
  inset: 2px;
  background-color: #4090b5;
  background: repeating-linear-gradient(to bottom, transparent 0%, #4090b5 1px, #4090b5 3px, #4090b5 5px, #4090b5 4px, transparent 0.5%), repeating-linear-gradient(to left, hsl(295, 60%, 12%) 100%, hsl(295, 60%, 12%) 100%);
  box-shadow: inset 0 40px 20px hsl(296, 59%, 10%);
}

.input-btn:is(:checked) + .neon-btn .english {
  text-shadow: 2px 4px 1px #9e30a9, 2px 2px 1px #4090b5, 0 0 20px rgba(255, 255, 255, 0.616);
  color: rgb(255, 255, 255);
  animation: colorchange 0.3s ease;
}
.input-btn:is(:checked) + .neon-btn .french {
  text-shadow: 2px 4px 1px #9e30a9, 2px 2px 1px #4090b5, 0 0 20px rgba(255, 255, 255, 0.616);
  color: rgb(255, 255, 255);
  animation: colorchange 0.3s ease;
}

.input-btn:is(:checked) + .neon-btn::before {
  animation-duration: 0.6s;
}

.input-btn:is(:checked) + .neon-btn::after {
  animation-duration: 0.6s;
}

.neon-btn {
  width: 10px;
  height: 13px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.5em 5em;
  text-align: right;
  background: transparent;
  position: relative;
  overflow: hidden;
  float :right ;
  transition: all 2s ease-in-out;
  -webkit-clip-path: polygon(6% 0, 93% 0, 100% 8%, 100% 86%, 90% 89%, 88% 100%, 5% 100%, 0% 85%);
  clip-path: polygon(6% 0, 93% 0, 100% 8%, 100% 86%, 90% 89%, 88% 100%, 5% 100%, 0% 85%);
}

.neon-btn .span {
  display: flex;
  -webkit-clip-path: polygon(6% 0, 93% 0, 100% 8%, 100% 86%, 90% 89%, 88% 100%, 5% 100%, 0% 85%);
  clip-path: polygon(6% 0, 93% 0, 100% 8%, 100% 86%, 90% 89%, 88% 100%, 5% 100%, 0% 85%);
  position: absolute;
  inset: 1px;
  background-color: #212121;
  z-index: 1;
}

.neon-btn .english , .french {
  text-align: right;
  position: relative;
  z-index: 2;
  color: aliceblue;
  font-size: 1em;
  transition: all ease-in-out 2s linear;
  text-shadow: 0px 0px 1px #4090b5, 0px 0px 1px #9e30a9, 0 0 1px white;
}


.neon-btn::before {
  content: "";
  position: absolute;
  height: 300px;
  aspect-ratio: 1.5/1;
  box-shadow: -17px -19px 20px #9e30a9;
  background-image: conic-gradient(#9e30a9, transparent, transparent, transparent, transparent, transparent, transparent, #9e30a9);
  animation: rotate 4s linear infinite -2s;
}

.neon-btn::after {
  content: "";
  position: absolute;
  height: 300px;
  aspect-ratio: 1.5/1;
  box-shadow: -17px -19px 10px #4090b5;
  background-image: conic-gradient(#4090b5, transparent, transparent, transparent, transparent, transparent, transparent, transparent, #4090b5);
  animation: rotate 4s linear infinite;
}

@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}


@keyframes backgroundchange {
  0% {
    background-color: transparent;
  }

  50% {
    background-color: #4090b5;
  }

  to {
    background-color: transparent;
  }
}
/* bouton retour a l'expo 2025 */
.cta {
  border: none;
  background: none;
}

.cta span {
  
  padding-bottom: 7px;
  letter-spacing: 3px;
  font-size: 14px;
  padding-right: 15px;
  text-transform: uppercase;
  
}
.cta span a {
  text-decoration: none;
  color :#000 ;
  font-style:italic;
  font-weight: bold;
}

.cta svg {
  transform: translateX(-8px);
  transition: all 0.3s ease;
}

.cta:hover svg {
  transform: translateX(0);
}

.cta:active svg {
  transform: scale(0.9);
}

.hover-underline-animation {
  position: relative;
  color: black;
  padding-bottom: 20px;
}

.hover-underline-animation:after {
  content: "";
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: #000000;
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
}

.cta:hover .hover-underline-animation:after {
  transform: scaleX(1);
  transform-origin: bottom left;
}
/* bouton who are we */
.equipe a {
  transition: transform 0.5s ease-in-out;
  font-size:220%;
  color : #fff ;
}
.equipe a :hover {
  transition-duration: .3s;
  transform :scale(1.1) ;
  color :#cacaca
  
}
/* bouton map */
.map a {
  color :#fff ;
  font-size: 300%;
  left :  10px ;
}
.map a :hover{
  transition-duration: .3s;
  transform:scaleX(1.15) ;
  color :#cacaca ;
}