*, ::before, ::after{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body{
    font-family: Arial, Helvetica, sans-serif;
    background: linear-gradient(rgb(255, 255, 255), rgb(202, 164, 106));
    background-size: cover;
    background-repeat: no-repeat;
    height: 280vh;
}

.container-grille{
  height: 11vh;
  width: 100%;
  display: grid;
  grid-template-columns: 100px 1fr 380px;
  background-color: #011439;
}

.tab2{
  height: 20vh;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.logo-site{
display: flex;
justify-content: center;
align-items: center;
grid-column: 2;
}

.logo{
  width: 70px;
}

.sidenav {
  height: 100%;
  width: 250px;
  position: fixed;
  z-index: 50;
  top: 0;
  left: -250px;
  background-color: rgb(214, 214, 214);
  padding-top: 60px;
  transition: left 0.5s ease;
}

.sidenav a {
  padding: 8px 8px 8px 32px;
  text-decoration: none;
  font-size: 18px;
  color: black;
  display: block;
  transition: 0.3s;
}

.sidenav a:hover {
  color: red;
}

.sidenav ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

/* Active class */
.sidenav.active {
  left: 0;
}

/* Close btn */
.sidenav .close {
  position: absolute;
  top: 0;
  right: 25px;
  font-size: 36px;
}

/* Icône burger */
.burger-icon span {
  display: block;
  width: 35px;
  height: 3px;
  background-color: white;
  border-radius: 10px;
  margin: 6px;
}

.elections{
  width: 110px;
  height: 40px;
  background-color: #f87171;
  color: white;
  font-size: x-large;
  border: none;
  border-radius: 10px;
}

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

.position-menu{
display: flex;
justify-content: center;
align-items: center;
height: 11vh;
}

.rechercher{
grid-column: 3;
display: flex;
justify-content: center;
align-items: center;
width: 380px;
}

#search{
  display: block;
  border-radius: 50px;
  border: 1px solid black;
  border: none;
  width: 300px;
  height: 40px;
  padding: 10px;
}

.tab3{
  height: 8vh;
  width: 100%;
  background-color: #0077ff;
  filter: opacity(80%);
  box-shadow: 5px 5px 10px;
}

.flash{
  color: white;
  font-size: x-large;
  font-family: 'DejaVu Sans Mono', arial;
}

.position-ecriture{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 8vh;
  width: 520px;
  position: relative;
  -webkit-animation: mymove 15s infinite; 
  -webkit-animation-timing-function: linear; 
  animation: mymove 15s infinite;
  animation-timing-function: linear;
}

@-webkit-keyframes mymove {
  from {
left: 30%;
}
  to {
left: -40%;
}
}

@keyframes mymove{
  from {
left: 50%;
}
  to{
left: -40%;
}
}

.tab4{
    height: 10vh;
    width: 100%;
    grid-template-columns: repeat(1, 1fr);
  }
  
  #texte-page{
    color: #011439;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 10vh;
    text-align: center;
    font-size: x-large;
}

.tab5, .tab6, .tab7, .tab8{
    height: 45vh;
    width: 100%;
    grid-template-columns: repeat(4, 1fr);
    display: grid;
}

.position-carre{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 45vh;
}

.carre{
    background-color: #011439;
    width: 250px;
    height: 250px;
    transition: all 1s ease-out;
}

.carre:hover{
  background-color: red;
}

h3{
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    height: 250px;
    text-align: center;
}

a:link{
    text-decoration: none;
}

.tab9{
  height: 45vh;
  width: 100%;
  grid-template-columns: repeat(5, 1fr);
  display: grid;
  align-items: center;
  justify-content: center;
  background-color: #011439;
  bottom: -180%;
  position: absolute;
}

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

#info-snd{
  font-family: Arial, Helvetica, sans-serif;
  color: white;
  font-size: large;
}

#info{
  font-family: Arial, Helvetica, sans-serif;
  color: white;
  font-size: large;
}

#info-sncd{
  font-family: Arial, Helvetica, sans-serif;
  color: white;
  font-size: large;
  white-space: nowrap;
}

.reseau-sociaux{
  justify-content: space-between;
  margin: 20%;
  align-items: center;
  display: flex;
}

#instagram, #twitter, #facebook, #mail{
  display: block;
  border-radius: 5px;
  width: 30px;
}

h4{
  color: #2EFF00;
  text-align: center;
}

@media screen and (max-width: 1015px){
    .tab5, .tab6, .tab7, .tab8{
        height: 45vh;
        width: 100%;
        display: grid;
    }

    .position-carre{
        display: flex;
        align-items: center;
        justify-content: center;
        height: 45vh;
    }

    .carre{
        background-color: #011439;
        width: 200px;
        height: 200px;
    }

    h3{
        font-size: small;
        height: 200px;
    }
}

@media screen and (max-width: 833px){
  .tab5, .tab6, .tab7, .tab8{
    height: 20vh;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
    display: grid;
}

.position-carre{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 45vh;
}

.carre{
    background-color: #011439;
    width: 100px;
    height: 100px;
}

h3{
    font-size: small;
    height: 100px;
}
.tab9{
  bottom: -100%;
  position: absolute;
}
body{
  height: 160vh;
}
}

@media(max-width: 508px){
  .tab5, .tab6, .tab7, .tab8{
    height: 25vh;
}
.position-carre{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40vh;
}

h3{
  font-size: small;
  height: 180px;
}
.tab9{
  bottom: -130%;
  position: absolute;
}
body{
  height: 185vh;
}
}

@media(max-width: 410px){
  .tab5, .tab6, .tab7, .tab8{
    height: 60vh;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    display: grid;
}

.position-carre{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30vh;
}

.carre{
    background-color: #011439;
    width: 120px;
    height: 120px;
}

h3{
    font-size: small;
    height: 120px;
}

#search{
  width: 150px;
}
.tab9{
  bottom: -270%;
  position: absolute;
}

body{
  height: 325vh;
}
}

@media screen and (max-width: 1100px){
  .tab9{
    grid-template-columns: repeat(3, 1fr);
    display: grid;
    align-items: center;
    justify-content: center;
  }
  .reseau-sociaux{
    grid-column: 3;
  }
  #info-sncd{
    grid-row: 2;
    grid-column: 2;
    font-size: small;
  }
  .position-douanes{
    grid-row: 2;
  }
  #info{
    grid-row: 1;
    grid-column: 3;
    font-size: small;
  }
  #info-snd{
    grid-row: 1;
    grid-column: 2;
    font-size: small;
  }
  .reseau-sociaux{
    margin: 10%;
    align-items: center;
    display: flex;
  }
  h4{
    grid-column: 1;
    grid-row: 1;
    text-align: center;
  }
}

@media screen and (max-width: 512px){
  .reseau-sociaux{
    grid-row: 2;
    grid-column: 1;
    display: list-item;
    display: grid;
    align-items: center;
    justify-content: center;
  }
  .douanes{
    width: 50px;
  }
  .position-douanes{
    grid-row: 1;
    grid-column: 1;
  }
  h4{
    grid-column: 3;
    grid-row: 2;
    font-size: small;
  }
}

@media(max-width:550px){
  .carre{
    height: 100px;
    width: 100px;
  }
  h3{
    font-size: small;
    height: 100px;
}
}

@media(max-width:1100px){
  @-webkit-keyframes mymove {
    from {
  left: 10%;
  }
    to {
  left: -50%;
  }
  }
  
  @keyframes mymove{
    from {
  left: 10%;
  }
    to{
  left: -50%;
  }
  }
}

@media(max-width:790px){
  .flash{
    font-size: large;
  }
  .position-ecriture{
    width: 400px;
  }
}

@media(max-width:430px){
  .flash{
    font-size: small;
  }
  .position-ecriture{
    width: 300px;
    margin: 0px;
  }
}

@media(max-width:300px){
  .flash{
    font-size: x-small;
  }
  .position-ecriture{
    width: 235px;
  }
  #instagram, #twitter, #facebook, #mail{
    width: 20px;
  }
}

@media screen and (max-width: 457px){
  #search{
    width: 200px;
  }
  .rechercher{
    width: 200px;
    }
    .container-grille{
      grid-template-columns: 100px 1fr 220px;
  }
}

@media(max-width:313px){
  #search{
    width: 150px;
  }
  .rechercher{
    width: 150px;
    }
    .container-grille{
      grid-template-columns: 100px 1fr 180px;
  }
}