* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  background-color: #e7eaec;
}

body {
  overflow-y: hidden;
}

main {
  overflow-y: hidden;
  height: 100vh;
}

.respiration {
  flex: 0 0 25vw;
  height: 100vh;
  z-index: -4;
  background-color: transparent;
}

.wrapper {
  display: flex;
  position: relative;
  flex-direction: row;
  height: 200vh;
  overflow-x: auto;
  transition: transform 2s;
  font-family: "gensco";
  background-color: transparent;
  z-index: 9;
}

.cave .wrapper {
  transform: translateY(-100vh);
}

.wrapper>* {
  margin: 0;
  /* padding: .5em; */
  flex-shrink: 0;
  /* width: calc(var(--w, 100) * 1vw); */
  position: relative;
  height: 100vh;

}

.item-cave {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100vh;
  transform: translateY(80vh);
}

body:has(.cave),
main.cave,
.wrapper {
  overflow: hidden;
}

p {
  margin: 0;
}

.center {
  display: flex;
  align-items: center;
  width: calc(var(--w, 70) * 1vw);
  z-index: 0;
  background-color: transparent;
}

.moisissure {
  position: relative;
  /* color: #d8d8d8; */
  z-index: -3;
}

span {
  background-color: transparent;
}

.suite {
  display: block;
  font-family: "fluxisch";
  font-size: 40px;
  margin: 10px;
  /* text-align: start; */
  text-align: start;
  text-decoration: none;
  /* margin-left: 20vw; */
  transition: letter-spacing 3s ease;
   object-fit: cover;
}

a{
   background-color: transparent;
  margin: 0;
   color: #e7eaec;
   text-shadow: 2px 1px 6px #4c5030;
   text-decoration: none;
   filter: url(#filtre-a-cave);
   z-index: 99;
}

a span:hover{
   letter-spacing: 5px;
}

.citation{
  font-family: "fluxisch";
  line-height: 1.2;
}

.titre-svg {
  width: 100vw;
  height: 100vh;
  overflow: visible;
  font-size: 60px;
  z-index: 5;
  background-color: transparent;
  margin: 0;
  background: radial-gradient(closest-side, rgba(231, 234, 236, 1) 80%, rgba(0, 0, 0, 0) 100%)
}

.titres {
  flex: 0 0 100vw;
  width: 100vw;
  display: flex;
  margin: 0;
}

.titrea {
  /* font-size: 60px; */
  fill: #e7eaec;
  /* fill: #000000; */
  font-family: "fluxisch";
  width: 100vw;
  letter-spacing: -10px;
  /* margin: 10% 0 0 10%; */
  /* color: #bbb67c; */
  filter: url(#filtre-un);
  text-shadow: 1px 5px 5px #a1a77a;
  /* #b4b888 */
  animation: spacing 20s linear infinite alternate;
}

@keyframes spacing {

  0% {
    letter-spacing: -20px;
  }

  100% {
    letter-spacing: -10px;
  }
}


.titreb {
  font-family: "fluxisch";
  filter: url(#filtre-deux);
  fill: #e7eaec;
  /* fill: #000000; */
  letter-spacing: 0;
  /* font-size: 60px; */
  width: 100vw;
  text-shadow: 8px 8px 8px #878d47;
  animation: spacing-deux 20s linear infinite alternate;
}

@keyframes spacing-deux {

  0% {
    letter-spacing: -15px;
  }

  100% {
    letter-spacing: 0;
  }
}

.titrec {
  font-family: "fluxisch";
  filter: url(#filtre-trois);
  fill: #e7eaec;
  /* fill: #000000; */
  letter-spacing: 10px;
  width: 100vw;
  text-shadow: 10px 10px #878d478e, 20px 0px 10px #878d47;
  animation: spacing-trois 20s linear infinite alternate;
}

@keyframes spacing-trois {

  0% {
    letter-spacing: -5px;
  }

  100% {
    letter-spacing: 5px;
  }
}

.titred {
  font-family: "fluxisch";
  filter: url(#filtre-quatre);
  fill: #e7eaec;
  /* fill: #000000; */
  /* letter-spacing: 10px; */
  width: 100vw;
  text-shadow: 10px 10px 10px #878d47, 20px 10px 30px #5b6320, -10px 20px #737939;
  animation: spacing-quatre 20s linear infinite alternate;
}

/* #737939 */

@keyframes spacing-quatre {

  0% {
    letter-spacing: 5px;
  }

  100% {
    letter-spacing: 15px;
  }
}


.titree {
  font-family: "fluxisch";
  filter: url(#filtre-cinq);
  fill: #e7eaec;
  /* fill: #000000; */
  /* letter-spacing: 10px; */
  width: 100vw;
  text-shadow: 10px 10px 10px #878d47, 20px 10px 30px #5b6320, -10px 20px #737939;
  animation: spacing-quatre 20s linear infinite alternate;
}

/* #737939 */

@keyframes spacing-cinq {

  0% {
    letter-spacing: 15px;
  }

  100% {
    letter-spacing: 25px;
  }
}

.moisissure p {
  z-index: 9;
}

.moisissure img {
  position: absolute;
  background-color: transparent;
  mix-blend-mode: difference;
  z-index: -5;
  pointer-events: none;
}


.micro img {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  scale: 0.5;
  transition: all 1s linear;
}

/* .micro img:hover {
  scale: 1;
} */

.un img {
  width: 70px;
  top: -15px;
  left: -30px;
}

.deux img {
  width: 150px;
  top: -15px;
  left: -10px;
}

.trois img {
  width: 240px;
  top: -30px;
  left: -50px;
}

.quatre img {
  width: 300px;
  top: -30px;
  left: -50px;
}

/* .cinq img {
  width: 350px;
  top: -50px;
  left: -50px;
} */

.six img {
  width: 450px;
  top: -60px;
  left: -50px;
}

.sept img {
  width: 600px;
  top: -100px;
  left: -70px;
}

.huit img {
  width: 800px;
  top: -350px;
  left: -100px;
}

.neuf img {
  width: 1200px;
  top: -420px;
  left: -200px;
}


.dix img {
  width: 1500px;
  top: -600px;
  left: -500px;
}

/* .onze img {
    width: 1300px;
    top: -400px;
    left: -1000px;
} */

.douze img {
  width: 2450px;
  top: -500px;
  left: -100px;
}

.treize img {
  width: 2700px;
  top: -650px;
  left: -100px;
}

.quinze img {
  width: 3000px;
  top: -700px;
  left: -1300px;
}

.seize img {
  width: 3000px;
  top: -800px;
  left: -500px;
}

.dix-sept img {
  width: 3000px;
  top: -800px;
  left: -500px;
}

@font-face {
  font-family: "gensco";
  src: url(GENSCO.woff2);
}

@font-face {
  font-family: "HNT";
  src: url(Hershey-Noailles-Times-Triplex-Regular.woff2);
}


@font-face {
  font-family: "hershey";
  src: url(Hershey-Noailles-help-me.woff2);
}


@font-face {
  font-family: "fluxisch";
  src: url(FluxischElse-Light.woff);
}


@media (max-width: 768px) {

  .textes p {
    max-width: 75vw;
  }
}


@font-face {
  font-family: "gensco";
  src: url(GENSCO.woff2);
}

@font-face {
  font-family: "fluxisch";
  src: url(FluxischElse-Light.woff);
}