@import url('https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&family=Whisper&display=swap');

.ubuntu-regular {
  font-family: "Ubuntu", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.ubuntu-medium {
  font-family: "Ubuntu", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.ubuntu-bold {
  font-family: "Ubuntu", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.whisper-regular {
  font-family: "Whisper", cursive;
  font-weight: 400;
  font-style: normal;
}

* {
  margin: 0;
  padding: 0;
  list-style: none;
  text-decoration: none;
  font-family: "Ubuntu", Arial, Helvetica, sans-serif;
}

/* custom browser scrollbar */

body::-webkit-scrollbar {
  width: 1%;
}

body::-webkit-scrollbar-track {
  background: whitesmoke;
  border-radius: 10%;
  border: 1px solid silver;
}

body::-webkit-scrollbar-thumb {
  background: thistle;
  border-radius: 10px;
}

body::-webkit-scrollbar-thumb:hover {
  background: silver;
}

body::-webkit-scrollbar-thumb:active {
  background-color: #9e619e;
}

/* HEADER */

header {
  width: 100%;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: whitesmoke;
  border-bottom: 1px solid #e6e6e6;
}

.fixed {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: 555;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.06);
}

/* le header en mobile */

#sticky2 {
  display: none;
}

#logo {
  order: 1;
  width: 10%;
  box-sizing: border-box;
}

#logo img {
  max-width: 100%;
  max-height: 100%;
  width: 100px;
  height: 65.5px;
}

nav {
  order: 2;
  width: 40%;
  box-sizing: border-box;
}

nav ul {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

nav ul li {
  padding: 10px 20px;
}

nav a {
  color: silver;
}

/* pour créer un hover qui soit plus grand que l'élément <a> sans bouger les div autour */

nav ul li:hover {
  background: linear-gradient(to bottom, rgba(236, 223, 236, 0.5), transparent);
  border-radius: 10px;
}

.active a {
  border-bottom: 1.5px solid silver;
}

#social-networks {
  order: 3;
  width: 10%;
  box-sizing: border-box;
}

#social-networks ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

#social-networks ul li {
  margin: 0 5px;
}

#social-networks a {
  color: thistle;
}

#social-networks a:hover {
  color: silver;
}

#linkBlog {
  font-size: 32px;
  display: block;
  text-align: right;
  position: fixed;
  left: 20px;
  top: 15px;
}

#linkBlog a {
  color: thistle;
  transition: all 250ms ease-in-out;
  font-family: "Whisper", Arial, Helvetica, sans-serif;
}

#linkBlog a:hover {
  color: #9e619e;
}

#linkBlog a:active {
  color: whitesmoke;
}

/* PORTFOLIO */

#portfolio-page {
  display: flex;
  flex-wrap: wrap;
  background-color: whitesmoke;
  width: 100%;
  height: 170vw;
}

#page1 {
  order: 1;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: 85vw;
}

.col1 {
  display: flex;
  flex-wrap: wrap;
  width: 40%;
  height: 85vw;
}

.col1-inner {
  order: 1;
  width: 30%;
  height: 40%;
}

#image1 {
  width: 100%;
  height: 50%;
  overflow: hidden;
}

#image2 {
  width: 100%;
  height: 50%;
  overflow: hidden;
}

#image3 {
  order: 2;
  width: 70%;
  height: 40%;
  overflow: hidden;
}

.col1-inner2 {
  order: 3;
  width: 100%;
  height: 60%;
}

#image4 {
  width: 100%;
  height: 50%;
  overflow: hidden;
}

#image5 {
  width: 100%;
  height: 50%;
  overflow: hidden;
}

.col2 {
  display: flex;
  flex-wrap: wrap;
  width: 60%;
  height: 85vw;
}

.col2-inner {
  order: 1;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: 30%;
}

#image6 {
  order: 1;
  width: 33.33%;
  height: 100%;
  overflow: hidden;
}

#image7 {
  order: 2;
  width: 33.33%;
  height: 100%;
  overflow: hidden;
}

#image8 {
  order: 3;
  width: 33.33%;
  height: 100%;
  overflow: hidden;
}

.col2-inner2 {
  order: 2;
  width: 40%;
  height: 70%;
}

#image9 {
  width: 100%;
  height: 50%;
  overflow: hidden;
}

#image10 {
  width: 100%;
  height: 50%;
  overflow: hidden;
}

.col2-inner3 {
  order: 3;
  display: flex;
  flex-wrap: wrap;
  width: 60%;
  height: 70%;
}

#image11 {
  order: 1;
  width: 100%;
  height: 65%;
  overflow: hidden;
}

#image12 {
  order: 2;
  width: 50%;
  height: 35%;
  overflow: hidden;
}

#image13 {
  order: 3;
  width: 50%;
  height: 35%;
  overflow: hidden;
}

#page2 {
  order: 2;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: 85vw;
}

.animation-image {
  opacity: 0;
  -moz-transition: all 500ms linear;
  -webkit-transition: all 500ms linear;
  -o-transition: all 500ms linear;
  transition: all 500ms linear;
  -moz-transform: translate3d(-100px, 0px, 0px);
  -webkit-transform: translate3d(-100px, 0px, 0px);
  transform: translate3d(0px, 100px, 0px);
}

.animation-image.in-view {
  opacity: 1;
  -moz-transform: translate3d(0px, 0px, 0px);
  -webkit-transform: translate3d(0px, 0px, 0px);
  transform: translate3d(0px, 0px, 0px);
}

#portfolio-page img,
#modal img {
  width: 100%;
  filter: grayscale(80%);
  transition: 0.3s ease-in-out;
  border: 2px solid whitesmoke;
  box-sizing: border-box;
}

#portfolio-page img:hover {
  filter: grayscale(0);
  cursor: pointer;
}

#modalSlider img {
  filter: grayscale(0);
}

/* modal et contenu du modal */

#modal {
  display: none;
  position: fixed;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);
  padding-top: 5%;
}

#modalSlider {
  width: 25%;
  margin: 0 auto;
}

#modalSlider {
  max-width: 80%;
}

#modal-slides {
  width: 80vw;
  height: 80vh;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

#modal-slides img {
  width: 50%;
  filter: grayscale(0);
  border: 0;
}

/* on cache les images du slider en modal pour les afficher qu'en modal */

.slides {
  display: none;
}

/* boutons prev next pause play close */

#prev {
  cursor: pointer;
  position: fixed;
  bottom: 2.5%;
  left: 2.5%;
  font-size: 5vw;
  color: white;
  transition: 0.5s ease;
  text-align: center;
  user-select: none;
  border: none;
  background-image: none;
  background-color: transparent;
  box-shadow: none;
  outline: none;
  animation: prevArrow 2s infinite ease-in-out;
}

#next {
  cursor: pointer;
  position: fixed;
  bottom: 2.5%;
  right: 2.5%;
  font-size: 5vw;
  color: white;
  transition: 0.5s ease;
  text-align: center;
  user-select: none;
  border: none;
  background-image: none;
  background-color: transparent;
  box-shadow: none;
  outline: none;
  animation: nextArrow 2s infinite ease-in-out;
}

#prev:hover,
#next:hover {
  color: black;
  background-color: white;
  padding: 2.5%;
  animation: none;
}

#pause {
  cursor: pointer;
  position: fixed;
  bottom: 2.5%;
  left: 48.5%;
  font-size: 3vw;
  transition: 0.5s ease;
  border: none;
  background-image: none;
  background-color: transparent;
  box-shadow: none;
  outline: none;
  color: white;
}

#play {
  display: none;
  cursor: pointer;
  position: fixed;
  bottom: 2.5%;
  left: 48.5%;
  font-size: 3vw;
  transition: 0.5s ease;
  border: none;
  background-image: none;
  background-color: transparent;
  box-shadow: none;
  outline: none;
  color: white;
}

#close {
  cursor: pointer;
  position: fixed;
  top: 1%;
  right: 1%;
  font-size: 3vw;
  border: none;
  background-image: none;
  background-color: transparent;
  box-shadow: none;
  outline: none;
  color: white;
}

#pause:hover,
#play:hover,
#close:hover {
  color: thistle;
}

/* bouton back to top */

#back-to-top {
  position: fixed;
  bottom: 2.5%;
  z-index: 555;
  width: 50px;
  height: 50px;
  left: 50%;
  margin-left: -25px;
  border-radius: 50%;
  border: 2px solid white;
  box-sizing: border-box;
  background: linear-gradient(-45deg, #feac5e, #c779d0, #4bc0c8);
  color: white;
  font-size: 20px;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  transition: opacity 0.5s ease-out;
  opacity: 0;
  animation: buttongradient 2.5s ease infinite;
  background-size: 300% 300%;
  padding: 8px;
}

#back-to-top:hover {
  background: silver;
}

#back-to-top.show {
  opacity: 1;
}

/* FOOTER */

footer {
  order: 3;
  background-color: black;
  width: 100%;
  height: auto;
  margin-top: 2px;
}

footer p {
  color: whitesmoke;
  text-align: center;
}

.credits {
  font-size: 14px;
  padding: 20px;
}

/* les petites animations */

@keyframes buttongradient {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

@keyframes prevArrow {
  0% {
    left: 2.5%;
  }

  50% {
    left: 1.5%;
  }

  100% {
    left: 2.5%;
  }
}

@keyframes nextArrow {
  0% {
    right: 2.5%;
  }

  50% {
    right: 1.5%;
  }

  100% {
    right: 2.5%;
  }
}

/* mediaqueries */
@media all and (max-width: 480px) {
  header {
    display: none;
  }

  .fixed {
    display: none;
  }

  #sticky2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    background: white;
  }

  #linkBlog {
    font-size: 32px;
    display: block;
    text-align: left;
    position: initial;
    left: initial;
    top: initial;
    width: 100%;
    order: 1;
    padding-left: 20px;
    background: thistle;
  }

  #linkBlog a {
    color: white;
  }

  #logo2 {
    order: 1;
  }

  #logo2 img {
    max-width: 100%;
    max-height: 100%;
    width: 100px;
    padding: 10px 20px;
  }

  #social-networks {
    order: 2;
    width: 120px;
  }

  #nav2 {
    order: 3;
    width: 100%;
  }

  nav ul li {
    padding: 10px;
  }

  #back-to-main-page {
    order: 3;
    width: 100%;
  }

  #modalSlider {
    width: 100%;
  }
}