* {
	font-family: "Inclusive Sans", sans-serif;
	min-height: 0;
	min-width: 0;
	margin: 0;
	padding: 0;
}
  
h1 {
  font-family: "Bagel Fat One", system-ui;
  font-weight: 400;
  font-style: normal;
  color: #FF6666;
}

h2 {
  font-family: "Bagel Fat One", system-ui;
  font-weight: 400;
  font-style: normal;
  color: #FF6666;
}

h3 {
  font-weight: 400;
  font-style: normal;
  font-size: 20px;
  color: #FFFFFF;
}


.page {
  background-color: #FFFBF4;
  background-image: url(../img/logo/fondlogo.png);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  overflow: hidden;
}


.flier > * {
/* Adjust animation duration to change the element’s speed */
  animation: fly 50s linear infinite;
	top: 0;
	left: 0;
	transform: translateX(-120%) translateY(-120%) rotateZ(0);
	position: fixed;
	animation-delay: 1s;
	z-index: 999999;
  height: 20vh;
}

 /* Keyframe values control where the element will begin
    and end its trajectory across the screen. Each rule
    represents a path the element follows across the screen. */


@keyframes fly {

	98.001%, 0% {
                display: block;
		transform: translateX(-200%) translateY(100vh) rotateZ(0deg)
	}

	15% {
		transform: translateX(100vw) translateY(-100%) rotateZ(180deg)
	}

	15.001%, 18% {
		transform: translateX(100vw) translateY(-30%) rotateZ(0deg)
	}

	40% {
		transform: translateX(-200%) translateY(3vh) rotateZ(-180deg)
	}

	40.001%, 43% {
		transform: translateX(-200%) translateY(-100%) rotateZ(-180deg)
	}

	65% {
		transform: translateX(100vw) translateY(50vh) rotateZ(0deg)
	}

	65.001%, 68% {
		transform: translateX(20vw) translateY(-200%) rotateZ(180deg)
	}

	95% {
		transform: translateX(10vw) translateY(100vh) rotateZ(0deg)
	}
}

 /* Header  */
header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  margin-top: 2vh;
  margin-bottom: 2vh;
  padding-left: 6vw;
  padding-right: 6vw;
}

.logo{
  height: 15vh;
}

.logo img{
  height: 100%;
  display: flex;
}

#menu{
  display: flex;
  justify-content: end;
  gap: 30%;
}

#menu a {
  text-decoration: 0;
  min-width: fit-content;
}

#menu a h2 {
  display: inline;
}


.contact{
  position: fixed;
  right: 1vw;
  top: 50vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  transform: translate(-50%, -50%); 
  z-index: 1;
  gap: 2vh;
}

.contact a {
  color: #FFB627;
  text-decoration: 0;
}

.rotatetext{
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-size: 16px;
}

.icon{  
  width: 25px;
  height: 25px;
}

#tete-ij{
  width: 10vw;
  height: auto;
}

#speedSliderContainer {
  position: fixed;
  left: 50vw;
  bottom: 4vh;
  z-index: 1;
  transform: translate(-50%, -50%); 
}

#speedSlider {
  width: 300px;
  appearance: none;
  height: 8px;
  border-radius: 5px;
  background: #8F000060;
  outline: none;
  transition: background 0.3s ease;
}

#speedSlider::-webkit-slider-thumb {
  appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--thumb-color, #FFB627);
  border: 2px solid #8F0000;
  cursor: pointer;
  transition: transform 0.2s ease, background-color 0.3s ease;
}

#speedSlider::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--thumb-color, #FFB627);
  border: 2px solid #8F0000;
  cursor: pointer;
  transition: transform 0.2s ease, background-color 0.3s ease;
}

@keyframes shake {
  0% { transform: translateX(0); }
  25% { transform: translateX(-1px); }
  50% { transform: translateX(1px); }
  75% { transform: translateX(-1px); }
  100% { transform: translateX(0); }
}

.shake {
  animation: shake 0.3s infinite;
}

/* Tags */

.tag{
  display: inline-block;
	background-color: #FBDDDD;
	color: #8F0000;
	border: 0;
	border-radius: 100px;
	padding: 8px 16px;
	font-size: 16px;
	text-decoration: none;
}

.tags-banner {
  width: 100vw;
  padding-left: 2vw;
  padding-right: 6vw;
	padding-top: 1vh;
  padding-bottom: 1vh;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
  align-items: stretch;
  height: 79vh;
}

.tag-line {
  width: 100%; 
  text-decoration: 0;
}


/* Responsive */


/* Page Projets */

@media only screen and (min-width: 3000px) {
  h1 {
    font-size: 32px;
  }
  
  h2 {
    font-size: 32px;
  }
  
  h3 {
    font-size: 28px;
  }
  
  h4 {
    font-size: 32px;
  }
  
  /* Header  */
  header {
    margin-top: 2vh;
    margin-bottom: 2vh;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  
  .logo{
    height: 15vh;
  }
  
  #menu{
    gap: 40%;
  }
  
  .contact{
    right: 2vw;
  }
  
  .rotatetext{
    font-size: 24px;
  }
  
  /* Tags */
  
  .tag{
    padding: 16px 24px;
    font-size: 24px;
  }
  
  /* .tags-banner {
    padding-left: 2vw;
    padding-right: 6vw;
    margin-top: 2vh;
    min-height: 79.8vh;
  }*/
}

@media only screen and (max-width: 3000px) {
  h1 {
    font-size: 32px;
  }
  
  h2 {
    font-size: 32px;
  }
  
  h3 {
    font-size: 28px;
  }
  
  h4 {
    font-size: 32px;
  }
  
  /* Header  */
  header {
    margin-top: 2vh;
    margin-bottom: 2vh;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  
  .logo{
    height: 15vh;
  }
  
  #menu{
    gap: 40%;
  }
  
  .contact{
    right: 2vw;
  }
  
  .rotatetext{
    font-size: 24px;
  }
  
  /* Tags */
  
  .tag{
    padding: 16px 24px;
    font-size: 24px;
  }
  
  /* .tags-banner {
    padding-left: 2vw;
    padding-right: 6vw;
    margin-top: 2vh;
    min-height: 79.8vh;
  }*/
}

@media only screen and (max-width: 2000px) {
  h1 {
    font-size: 24px;
  }
  
  h2 {
    font-size: 24px;
  }
  
  h3 {
    font-size: 20px;
  }
  
  h4 {
    font-size: 24px;
  }
  
  /* Header  */
  header {
    margin-top: 2vh;
    margin-bottom: 2vh;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  
  .logo{
    height: 15vh;
  }
  
  #menu{
    gap: 30%;
  }
  
  .contact{
    right: 2vw;
  }
  
  .rotatetext{
    font-size: 16px;
  }
  
  /* Tags */
  

  .tag{
    padding: 8px 16px;
    font-size: 16px;
  }
  
}

@media only screen and (max-width: 1200px) {
  h1 {
    font-size: 24px;
  }
  
  h2 {
    font-size: 24px;
  }
  
  h3 {
    font-size: 20px;
  }
  
  h4 {
    font-size: 24px;
  }
  
  /* Header  */
  header {
    margin-top: 2vh;
    margin-bottom: 2vh;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  
  .logo{
    height: 15vh;
  }
  
  #menu{
    gap: 30%;
  }
  
  .contact{
    right: 1vw;
  }
  
  .rotatetext{
    font-size: 16px;
  }
  
  /* Tags */
  
  .tag{
    padding: 8px 16px;
    font-size: 16px;
  }

  .tags-banner{
    height: 80vh;
  }
  
}

@media only screen and (max-width: 600px) {
	h1 {
    font-size: 20px;
  }
  
  h2 {
    font-size: 20px;
  }
  
  h3 {
    font-size: 16px;
  }
  
  h4 {
    font-size: 18px;
  }
  
  .page{
    background-size: 200% auto;
  }

  /* Header  */
  header {
    margin-top: 2vh;
    margin-bottom: 2vh;
    padding-left: 6vw;
    padding-right: 6vw;
  }
  
  .logo{
    height: 8vh;
  }
  
  #tete-ij{
  width: 30vw;
  }

  #menu{
    gap: 30%;
  }
  
  .contact{
    right: 2vw;
  }
  
  .rotatetext{
    font-size: 14px;
  }
  
  #speedSliderContainer {
  bottom: 3vh;
  }


  /* Tags */

  .tags-banner{
    height: 86vh;
  }
}
