/*---------------------------------------------------------------------
File Name: style.css
---------------------------------------------------------------------*/
@import url("../media/other/Space Mono/space-mono.regular.ttf");

@font-face {
     font-family: 'Space-Mono-Regular';
     src: url('../media/other/Space Mono/space-mono.regular.ttf');
}

body {
     
     background-image: url('../media/pictures/backgrounddd.png');
     /* background-position: 50% 50%; */
     background-size: contain;
     font-family: "Space-Mono-Regular", sans-serif !important;
     font-size: 16px;
     font-weight: 400;
     color: rgb(255, 255, 255);
     line-height: 28px;
     letter-spacing: -0.5px;
     cursor: cell;
     padding: 0;
     margin: 0;
}

div {
     display: block;
     position: static;
}

@media screen and (min-width: 1000px){
     .section {
          margin: 0 60;
     }

     h1 {
          margin-top: 20px;
          margin-bottom: 15px;
          font-size: 44px;
          font-weight: 400;
          line-height: 62px;
     }
     
     h2 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 36px;
          font-weight: 400;
          line-height: 50px;
     }
     
     h3 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 30px;
          font-weight: 400;
          line-height: 46px;
     }
     
     h4 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 24px;
          font-weight: 400;
          line-height: 38px;
     }
     
     h5 {
          color: rgb(255, 255, 255);
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 20px;
          font-weight: 400;
          line-height: 34px; 
     }
     
     h6 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 16px;
          font-weight: 400;
          line-height: 34px; 
     }
     
     p {
          font-size: 20px;
          margin-bottom: 0px;
          text-align: left;
          display: block;
          margin-block-start: 0;
          margin-block-end: 0;
          margin-inline-start: 0px;
          margin-inline-end: 0px;
          color: #c8c7c7;
     }
}

@media screen and (max-width: 1000px){
     .section {
          margin: 0 20;
     }

     h1 {
          margin-top: 20px;
          margin-bottom: 15px;
          font-size: 32px;
          font-weight: 400;
          line-height: 62px;
     }
     
     h2 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 26px;
          font-weight: 400;
          line-height: 50px;
     }
     
     h3 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 22px;
          font-weight: 400;
          line-height: 46px;
     }
     
     h4 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 18px;
          font-weight: 400;
          line-height: 38px;
     }
     
     h5 {
          color: white;
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 16px;
          font-weight: 400;
          line-height: 34px; 
     }
     
     h6 {
          margin-top: 10px;
          margin-bottom: 10px;
          font-size: 16px;
          font-weight: 400;
          line-height: 34px; 
     }
     
     p {
          font-size: 16px;
          margin-bottom: 0px;
          text-align: left;
          display: block;
          margin-block-start: 0;
          margin-block-end: 0;
          margin-inline-start: 0px;
          margin-inline-end: 0px;
          color: #c5c5c5;
     }
}

a {
     text-decoration: underline;
     transition: opacity .2s;
     display: block;
     cursor: pointer;
     color: rgb(0, 0, 0);
}

a:hover {
     color:#1a1b1f;
     background-color:#fff;
}

a:active {
     color: aqua;
}

.no_text_a {
     text-decoration: none;
     width: auto;
     height: auto;
}

.no_text_a:hover {
     color:transparent;
     background-color:transparent;
}

button {
     letter-spacing: 2px;
     font-size: 16px;
     font-family: 'Space mono', sans-serif;
     border: 2px solid #fff;
     border-radius: 20px;
     padding: 12px 25px;
     line-height: 20px;
     transition: background-color .4s, opacity .4s, color .4s;
     display: inline-block;
     cursor: pointer;
}

button:hover {
     color: #000;
     background-color: #fff;
}

button:active {
     background-color: #43464d;
}

.button {
     color: #fff;
     letter-spacing: 2px;
     font-size: 16px;
     font-family: 'Space mono', sans-serif;
     border: 2px solid #fff;
     border-radius: 20px;
     padding: 12px 25px;
     line-height: 20px;
     transition: background-color .4s, opacity .4s, color .4s;
     display: inline-block;
     text-decoration: none;
}

.button:hover {
     color: #000;
     background-color: #fff;
}

.button:active {
     background-color: #43464d;
}

.invisibleLink {
     text-decoration: none;
     position: absolute;
     display: flex;
     justify-content: center;
     align-items: center;
     z-index: 10;
     top: 0;
     bottom: 0;
     left: 0;
     right: 0;
}

 
.invisibleLink:hover {
     color: transparent;
     background-color: transparent;
}

@media screen and (max-width: 500px) {
     #navigation {
          padding-left: 20px;
          padding-right: 20px; 
     }
     
     #nav_img_logo {
          width: 80px;
     }

     .nav_title {
          padding: 9 10;
     }

     #langue {
          padding: 2 10;
          margin-left: 20px;
     }
}

@media screen and (min-width: 500px) and (max-width: 1000px) {
     #navigation {
          padding-left: 20px;
          padding-right: 20px; 
     }

     #nav_img_logo {
          width: 110px;
     }

     .nav_title {
          padding: 9 15;
     }

     #langue {
          padding: 4 10;
          margin-left: 30px;
     }
}

@media screen and (min-width: 1000px) {
     #navigation {
          padding-left: 60px;
          padding-right: 60px; 
     }

     #nav_img_logo {
          width: 140px;
     }

     .nav_title {
          padding: 9 20;
     }

     #langue {
          padding: 5 10;
          margin-left: 40px;
     }
}


#navigation {
     padding-top: 20px;
     padding-bottom: 0px;
     position: sticky;
     top: 0;
     display: block;
     z-index: 100;
}

#nav_items {
     display: -webkit-flex;
     flex-direction: row;
     align-items: center;
     justify-content: space-between;
     -webkit-flex-direction: row;
     -webkit-align-items: center;
     -webkit-justify-content: space-between;
     position: static;
}

#nav_wrap {
     display: -webkit-flex;
     flex-direction: row;
     align-items: center;
     justify-content: center;
     -webkit-flex-direction: row;
     -webkit-align-items: center;
     -webkit-justify-content: center;
     position: static;
}

#nav_titles {
     display: -webkit-flex;
     flex-direction: row;
     align-items: center;
     justify-content: space-between;
     -webkit-flex-direction: row;
     -webkit-align-items: center;
     -webkit-justify-content: space-between;
     position: static;
}

.nav_title {
     color: white;
     display: block;
     position: static;
     text-decoration: none;
     background-color: transparent;
}

.nav_title:hover {
     text-decoration: overline;
     background-color: transparent;
     color: white;
}

#langue {
     border-radius: 20px;
     border: 2px solid #fff;
}

#langue:hover {
     text-decoration: none;
     background-color: white;
     color: black;
}

.footer {
     display: flex;
     flex-direction: row;
     justify-content: space-between;
     align-items: stretch;
     padding: 5 10;
     position: fixed;
     bottom: 0;
     right: 0;
     left: 0;
     z-index: 100;
     background: rgb(2,0,36);
     background: linear-gradient(180deg, rgba(2,0,36,0) 0%, rgba(9,9,121,0) 11%, rgba(117,35,115,0.5564600840336135) 100%);
}

.footer_link {
     align-self: baseline;
     position: relative;
}

.background_video {
     position: absolute;
     display: block;
     width: 100%;
     height: 100%;
     object-fit: cover;
}

.background_image {
     position: absolute;
     display: block;
     width: 100%;
     height: 100%;
     background-size: cover;
     background-repeat: no-repeat;
}

.logo {
     padding: 20 20;
     display: block;
     position: relative;
     float: left;
}

.grid {
     display: grid;
     grid-template-rows: repeat(auto-fit, minmax(100px, 1fr));
     grid-template-columns: repeat(3, 1fr);
     grid-template-areas: "a b c" "d e f" "g h i";
     grid-gap: 20px;
     grid-auto-columns: 1fr;
     margin-right: 20px;
     margin-left: 0px;
}

.text-link-arrow {
     display: flex;
     direction: horizontal;
     align-items: center;
     justify-content: left;
     position: absolute;
     text-decoration: none;
}

.arrow-embed {
     display: flex;
     margin-left: 2px;
     margin-right: 0px;
}


/*---------------------------------------------------------------------
Carousel part
---------------------------------------------------------------------*/

.slider {
     display: block;
     position: relative;
     width: 100%;
     height: 400px;
}
.slider-carousel {
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     display: flex;
     overflow-x: scroll;
     counter-reset: item;
     scroll-behavior: smooth;
     scroll-snap-type: x mandatory;
}

.slider-carousel img {
     width: 100%;
     height: 100%;
     white-space: normal;
     text-align: left;
     display: inline-block;
     opacity: 1;
     transition: all 1s ease;
     border: 2px solid white;
}

.left_arrow {
     position: absolute;
     display: flex;
     align-items: center;
     justify-content: center;
     bottom: 0;
     left: 0;
     top: 0;
     width: 10%;
     cursor: pointer;
     z-index: 3;
}

.right_arrow {
     position: absolute;
     display: flex;
     align-items: center;
     justify-content: center;
     bottom: 0;
     right: 0;
     top: 0;
     width: 10%;
     cursor: pointer;
     z-index: 3;
}

.slider_nav {
     position: absolute;
     right: 0;
     bottom: 0;
     left: 0;
     text-align: center;
     z-index: 4;
}

.slider_nav button {
     display: inline-block;
     width: 20px;
     height: 20px;
     background-color: #333;
     background-clip: content-box;
     border: 1px solid black;
     border-radius: 50%;
     font-size: 0;
     transition: transform 0.1s;
     padding: 0 0;
     cursor: pointer;
}

.slider_nav button:active {
     background-color: white;
}

.slider-carousel .images {
     position: relative;
     flex: 0 0 100%;
     width: 100%;
}

.image-text {
     position: absolute;
     top: 0;
     width: 100%;
     display: flex;
     font-size: 20px;
     justify-content: center;
     align-items: center;
     color: rgb(255, 255, 255);
     background: rgba(0, 0, 0, 0.3);
     height: 35px;
}

.carousel-img-on {
     transform: translateX(0%);
     opacity: 1;
     width: 100%;
     height: 100%;
     z-index: 1;
     transition:
           transform 0.01s;
 }

.carousel-img-out {
     transform: translateX(-150%);
     opacity: 1;
     z-index: 2;
     transition:
           transform 1s;
}

.gallerie {
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
}


.gallerie_photo {
     width: auto;
     position: relative;
     margin: 50 0;
     float: left;
}

.gallerie_video {
     height: 50vw;
     width: auto;
     position: relative;
     margin: 50 0;
     float: left;
}

.txt_legende {
     position: absolute;
     line-height: 10px;
     bottom: 0;
     width: 100%;
     z-index: 2;
     padding: 10 10;
     color: white;
     text-align: center;
}

@media screen and (max-width: 900px) {
     .gallerie_photo {
          height: 60vw;
     }

     .txt_legende {
          font-size: 8px;
     }
}

@media screen and (min-width: 900px) {
     .gallerie_photo {
          height: 40vw;
     }

     .txt_legende {
          font-size: 12px;
     }
}