@font-face {
    font-family: "HK-Grotesk";
    src: url("fonts/hk-grotesk/hkgrotesk-regular-webfont.woff2") format("woff2"),
  url("fonts/hk-grotesk/hkgrotesk-regular-webfont.woff") format("woff");
  font-display: swap;
}
@font-face {
    font-family: "HK-Grotesk-Bold";
    src: url("fonts/hk-grotesk/hkgrotesk-bold-webfont.woff2") format("woff2"),
  url("fonts/hk-grotesk/hkgrotesk-bold-webfont.woff") format("woff");
  font-display: swap;
}

* {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}

/*:root {
    --del-general: 3s;
    --vit-app: .3s;
    --vitesse: 1s;
    --del-header: 4s;
    --del-header-tombe: 17s;
    --del-trifouille: 3s;
    --debut-partie-2: 37s;
}*/
:root {
    --del-general: 3s;
    --vit-app: .3s;
    --vitesse: 1s;
    --del-header: 8s;
    --del-header-tombe: 17s;
    --del-trifouille: 7s;
    --debut-partie-2: 46s;
}

html {
    overflow: hidden;
}
html:not(.firefox, .opera) * {
    filter: blur(1px) !important;
}
html:not(.firefox, .opera) .conteneur-bloc, html:not(.firefox, .opera) .partie-2, html:not(.firefox, .opera) .partie-2-conteneur {
    filter: none !important;
}
html:not(.firefox, .opera) .partie-2-conteneur * {
    filter: blur(.5px) !important;;
}
.message-proprietaire {
    z-index: 99;
    display: none;
    position: absolute;
    height: 100vh;
    width: 100vw;
    font-size: 20px;
    font-family: HK-Grotesk-Bold;
}
.message-proprietaire div {
    position: relative;
    max-width: 100%;
    width: 500px;
    max-height: 350px;
    padding: 1rem 2rem;
    background-color: #fff;
    border-radius: 15px;
    box-shadow: #7b7b7b 2px 2px 5px;
    overflow: auto;
}
.message-proprietaire p {
    margin: 1rem 0;
    line-height: 1.2;
    font-size: 90%;
}
.message-proprietaire p.espace {
    margin: 3rem 0;
}
.message-proprietaire .croix {
  z-index: 2;
  width: 25px;
  height: 25px;
  cursor: pointer;
  position: absolute;
  top: 10px;
  right: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.message-proprietaire .croix .bar {
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 2px;
  background: rgb(120,120,120);
  border-radius: 1.5px;
}
.message-proprietaire .croix .bar:nth-of-type(1) {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
.message-proprietaire .croix .bar:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

html:not(.firefox, .opera) .message-proprietaire {
    display: flex;
    justify-content: center;
    align-items: center;
}
html:not(.firefox, .opera) .message-proprietaire, html:not(.firefox, .opera) .message-proprietaire *, html:not(.firefox, .opera) body {
    filter: none !important;
}
body {
    margin: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    /*background-image: url('images/image_fond.jpg');
    background-size: auto 100vh;
    background-position: calc(-55vh + 480px) center;
    background-repeat: no-repeat;*/
    background-color: #fff;
    font-size: 16px;
    font-family: HK-Grotesk;
}
.stop {
    display: none !important;
}
@keyframes sablier {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}
.sablier {
    position: fixed;
    z-index: 99;
    background-color: #fff;
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sablier svg {
    height: 100px;
    width: auto;
    position: absolute;
    animation: sablier 2s infinite linear;
}

.bg {
    z-index: 0;
    position: absolute;
    top: 0;
    height: 100vh;
    width: 100vw;
    display: flex;
    justify-content: center;
}
/*.portrait .bg .bg-fond {
    height: 100%;
    width: auto;
}
.paysage .bg .bg-fond {
    height: auto;
    width: 100%;
}*/
.bg-fond {
    position: absolute;
    background-image: url('images/Fond_2000px.webp');
    background-size: cover;
    background-position: center top;
    background-attachment: fixed;
}
@media screen and (max-width: 1497px) and (max-height: 700px) {
    .bg-fond {
        background-image: url('images/Fond_700px.webp');
    }
}
.bg-comme-fond {
    position: absolute;
}
.portrait .bg .bg-comme-fond, .portrait .bg .bg-fond {
    height: 100%;
    width: calc(100vh * 2 / .935);
}
.paysage .bg .bg-comme-fond, .paysage .bg .bg-fond {
    height: calc(100vw / calc(2 / .935));
    width: 100%;
}
.bg img {
    position: absolute;
}


@keyframes tachesTombent {
    /*from {
        filter: none !important;
        top: 0;
    }*/
    to {
        /*filter: none !important;*/
        top: 120vh;
    }
}
.bg-tache {
    --delay: 4;
    z-index: 1;
    opacity: 0;
    mix-blend-mode: multiply;
    animation: apparait .01s var(--del-tache) linear forwards/*, disparait .5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards*//*, pixelisation .5s calc(2s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear forwards, pixelisation2 .5s calc(6s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear forwards, turbulence 1s calc(10s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) linear, turbulence2 1s calc(11s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) linear*/, tachesTombent 2.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards;
}
.bg-tache-1 {
    --del-tache: calc(2.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: auto;
    top: 65%;
    left: 75%;
}
.bg-tache-2 {
    --del-tache: calc(2.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 15%;
    top: 80%;
    left: 65%;
    
}
.bg-tache-3 {
    --del-tache: calc(3.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 10%;
    top: 50%;
    left: 60%;
    
    transform: rotate(-15deg);
}
.bg-tache-4 {
    --del-tache: calc(6.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 16%;
    top: 35%;
    left: 65%;
    
    transform: rotate(180deg);
}
.bg-tache-5 {
    --del-tache: calc(6.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 18%;
    top: 58%;
    left: 43%;
    
}
.bg-tache-6 {
    --del-tache: calc(7.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 15%;
    top: 8%;
    left: 73%;
    
}
.bg-tache-7 {
    --del-tache: calc(7.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 8%;
    top: 90%;
    left: 33%;
    
}
.bg-tache-8 {
    --del-tache: calc(10.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 12%;
    top: 15%;
    left: 23%;
    mix-blend-mode: darken;
    transform: rotate(-15deg);
}
.bg-tache-9 {
    --del-tache: calc(10.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 9%;
    top: 7%;
    left: 36%;
    
}
.bg-tache-10 {
    --del-tache: calc(11.5s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille));
    height: 11%;
    top: 46%;
    left: 20%;
    
    transform: rotate(-60deg);
}


.bg-bonhommes {
    position: absolute;
    display: flex;
    justify-content: space-between;
}
.bg-bonhommes-1 {
    --del-bg-bonhomme: 4s;
    top: 60%;
    left: 40%;
    width: 60%;
}
.bg-bonhommes-2 {
    --del-bg-bonhomme: 6s;
    top: 10%;
    left: 62%;
    width: 38%;
}
.bg-bonhommes-3 {
    --del-bg-bonhomme: 8s;
    top: 70%;
    left: 56%;
    width: 44%;
}
.bg-bonhommes-2 .bonhomme {
    height: 120px;
}
.bg-bonhommes-inverse .bonhomme {
    transform: rotateY(180deg);
}
.bg-bonhommes-inverse .bonhomme-1 {
    --delay: 5;
}
.bg-bonhommes .bonhomme:not(.bonhomme-1) {
    z-index: 1;
}
.bg-bonhommes .bonhomme-1 {
    position: absolute;
    left: -20%;
}

/*@keyframes traversentBG {
    0% {
        opacity: 0;
        transform: translateX(-5vh);
    }
    1% {
        opacity: 1;
        transform: translateX(-5vh);
    }
    50% {
        transform: translateX(0);
    }
    99% {
        opacity: 1;
        transform: translateX(5vh);
    }
    100% {
        opacity: 0;
        transform: translateX(5vh);
    }
}
@keyframes traversentInverseBG {
    0% {
        opacity: 0;
        transform: translateX(5vh) rotateY(180deg);
    }
    1% {
        opacity: 1;
        transform: translateX(5vh) rotateY(180deg);
    }
    50% {
        transform: translateX(0) rotateY(180deg);
    }
    99% {
        opacity: 1;
        transform: translateX(-5vh) rotateY(180deg);
    }
    100% {
        opacity: 0;
        transform: translateX(-5vh) rotateY(180deg);
    }
}*/

.retire .bg-bonhommes .bonhomme {
    animation: traversent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-bg-bonhomme)) linear forwards;
}
.retire .bg-bonhommes-inverse .bonhomme {
    animation: traversentInverse var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-bg-bonhomme)) linear forwards;
}

.bg-bras {
    transform-origin: top left;
    transition: transform var(--vit-retire) var(--del-retire);
    z-index: 1;
}
.mains-tissus .bg-bras {
    z-index: 0;
}
@keyframes arrivee {
    0% {
        right: 100vw;
    }
    100% {
        right: var(--right);
    }
}
@keyframes rep1 {
    0% {
        transform: rotate(0);
    }
    25% {
        transform: rotate(-5deg);
    }
    75% {
        transform: rotate(5deg);
    }
    100% {
        transform: rotate(0);
    }
}
@keyframes rep2 {
    0% {
        transform: rotate(15deg);
    }
    25% {
        transform: rotate(10deg);
    }
    75% {
        transform: rotate(20deg);
    }
    100% {
        transform: rotate(15deg);
    }
}
@keyframes rep3 {
    0% {
        transform: rotate(0);
    }
    25% {
        transform: rotate(-5deg);
    }
    75% {
        transform: rotate(5deg);
    }
    100% {
        transform: rotate(0);
    }
}
/*@keyframes bagarre {
    0% {
        right: var(--right);
    }
    10% {
        right: calc(var(--right) - 400px);
    }
    30% {
        right: calc(var(--right) - 200px);
    }
    50% {
        right: calc(var(--right) - 800px);
    }
    80% {
        right: calc(var(--right) - 700px);
    }
    100% {
        right: calc(var(--right) - 1600px);
    }
}*/
@keyframes bagarre {
    0% {
        right: var(--right);
    }
    10% {
        right: calc(var(--right) - 400px);
    }
    30% {
        right: calc(var(--right) - 200px);
    }
    50% {
        right: calc(var(--right) - 600px);
    }
    60% {
        right: calc(var(--right) - 550px);
    }
    75% {
        right: calc(var(--right) - 800px);
    }
    80% {
        right: calc(var(--right) - 700px);
    }
    100% {
        right: calc(var(--right) - 1600px);
    }
}

.bg-bande-bas {
    --del-bagarre: 3s;
    width: 940px;
    bottom: 50px;
    --right: -30px;
    right: var(--right);
    --rotate: 5deg;
    transform: rotate(var(--rotate));
}
.bg-bande-milieu {
    --del-bagarre: 8.5s;
    width: 950px;
    bottom: 200px;
    --right: -30px;
    right: var(--right);
    --rotate: 12deg;
    transform: rotate(var(--rotate));
}
.bg-bande-haut {
    --del-bagarre: 6s;
    width: 980px;
    bottom: 350px;
    --right: -110px;
    right: var(--right);
    --rotate: 17deg;
    transform: rotate(var(--rotate));
}
.mains-tissus .bg-bande {
    animation: bagarre 7s var(--del-bagarre) ease-in-out forwards;
}

.bg-bras-1 {
    --del-retire: 2s;
    --vit-retire: 4s;
    height: 24%;
    transform: rotate(23.5deg) translate(-56%, 35%);
    filter: drop-shadow(-10px 20px 20px);
}
.retire .bg-bras-1 {
    transform: rotate(53.5deg) translate(-150%, -30%);
}
.mains-tissus .bg-bras-1 {
    --rotate: 0;
    transform: rotate(var(--rotate));
    height: 180px;
    bottom: 480px;
    --right: 770px;
    right: 100vw;
    animation: arrivee 2s 3s linear forwards, rep1 .5s 3s 4 linear, bagarre 7s 6s ease-in-out forwards;
}
.bg-bras-2 {
    --del-retire: .4s;
    --vit-retire: 3.5s;
    height: 12.5%;
    transform: rotate(80deg) translate(-12%, -42%);
    filter: drop-shadow(30px 20px 20px);
}
.retire .bg-bras-2 {
    transform: rotate(50deg) translate(-150%, -42%);
}
.bg-bras-3 {
    --del-retire: 1.4s;
    --vit-retire: 4s;
    height: 23.2%;
    transform: rotate(-50deg) translate(-100%, 185%);
    filter: drop-shadow(-50px 30px 20px);
}
.retire .bg-bras-3 {
    transform: rotate(-20deg) translate(-205%, 350%);
}
.mains-tissus .bg-bras-3 {
    --rotate: 15deg;
    transform: rotate(var(--rotate));
    height: 130px;
    bottom: 375px;
    --right: 810px;
    right: 100vw;
    animation: arrivee 2s 5.5s linear forwards, rep2 .5s 5.5s 4 linear, bagarre 7s 8.5s ease-in-out forwards;
}
.bg-bras-4 {
    --del-retire: 1s;
    --vit-retire: 3.5s;
    height: 18.5%;
    transform: rotate(-99deg) translate(-137%, 168%);
    filter: drop-shadow(-30px -20px 20px);
}
.retire .bg-bras-4 {
    transform: rotate(-120deg) translate(-240%, -100%);
}
.mains-tissus .bg-bras-4 {
    --rotate: 0;
    transform: rotate(var(--rotate));
    height: 130px;
    bottom: 80px;
    --right: 810px;
    right: 100vw;
    animation: arrivee 2s linear forwards, rep3 .5s 4 linear, bagarre 7s 3s ease-in-out forwards;
}
.bg-bras-5 {
    --del-retire: 0s;
    --vit-retire: 3s;
    height: 18%;
    transform: rotate(96deg) translate(-8%, -132%);
    filter: drop-shadow(30px 5px 20px);
}
.retire .bg-bras-5 {
    transform: rotate(115deg) translate(-125%, -102%);
}
.bg-bras-6 {
    --del-retire: 1.2s;
    --vit-retire: 4s;
    height: 22%;
    transform: rotate(134deg) translate(-108%, -258%);
    filter: drop-shadow(40px -15px 20px);
}
.retire .bg-bras-6 {
    transform: rotate(165deg) translate(-268%, -120%);
}

/*.mains-tissus.bg {
    z-index: 9;
}*/
.fin-tissus .bg-fond, .fin-tissus .bg-tache {
    display: none;
}
.mains-tissus .bg-bras {
    filter: none !important;
    transition: transform 0.01s;
}

.fin-tissus.bg {
    display: none;
}

.bg-cache {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 0;
    background-color: #fff;
}

header {
    /*z-index: 1;*/
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: bold;
    background-color: #000;
    color: #fff;
    padding: 15px 20px;
}
.header-item {
    position: relative;
    display: flex;
}
/*.header-item.boutons-souscription {
    position: absolute;
    right: 20px;
}*/
.bouton {
    padding: 5px 10px;
    border-radius: 30px;
    margin: 0 5px;
    cursor: pointer;
}
.logo-conteneur {
    margin-left: 30px;
}
.logo-conteneur img {
    height: 50px;
}
.boutons-explications {
    margin-left: 50px;
}
.concept-contenu:not(.actif) {
    top: 5px;
}
.concept-contenu::after {
    content: '>';
    display: inline-block;
    position: relative;
    top: 5px;
    left: -5px;
    transform: rotate(90deg);
    transform-origin: bottom right;
    line-height: 1;
}
.bouton.service {
    position: relative;
    display: flex;
    align-items: center;
    margin-left: 30px;
    border: solid #fff;
}
.bouton.service span {
    display: inline-block;
    text-align: center;
    line-height: .9;
    position: relative;
    height: 17px;
    width: 17px;
    color: #000;
    background-color: #fff;
    border-radius: 50%;
    margin-right: 5px;
}
.bouton.service:hover {
    color: #000;
    background-color: #fff;
}
.bouton.service:hover span {
    color: #fff;
    background-color: #000;
}
.service-contenu:not(.actif) {
    top: 5px;
    left: 32px;
}
.boutons-souscription .bouton.actif {
    background-color: #fff;
    color: #000;
}
.boutons-souscription .bouton.actif:hover {
    background-color: rgb(226, 226, 226);
}
.bouton-connexion, .bouton.concept {
    position: relative;
    border-radius: 30px;
}
.bouton-connexion:hover, .bouton.concept:hover {
    background-color: rgb(51, 51, 51);
}
.connexion-contenu:not(.actif) {
    top: 5px;
}

.bonhommes-porte {
    z-index: 1;
    position: fixed;
    bottom: calc(100vh - 80px - 94px);
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.portes-gauche, .portes-droite {
    display: flex;
}
.portes-droite {
    position: relative;
    transform: translateY(105px);
    width: 350px;
    justify-content: space-between;
    align-items: flex-end;
}
.bonhommes-porte .bonhomme {
    height: 110px;
}
.echelle {
    position: absolute;
    left: 100%;
}
.echelle img {
    height: 180px;
    transform: rotateY(180deg);
}
.portes-droite .bonhomme-6, .portes-droite .bonhomme-7, .portes-droite .bonhomme-8 {
    position: absolute;
} 

main {
    position: relative;
    flex-grow: 1;
}
.conteneur-bloc {
    position: absolute;
    width: calc(100% - 125px);
    margin: 10vh 0 0 125px;
}
.bonhommes-pousse {
    position: absolute;
    bottom: -10px;
    left: -440px;
    display: flex;
}
.bonhommes-tient {
    position: absolute;
    bottom: -90px;
    right: -40px;
    display: flex;
    justify-content: space-between;
    width: calc(100vw - 625px);
}
.bonhomme {
    position: relative;
    height: 150px;
    opacity: 0;
    transform: translateX(-10px);
}
.bonhommes-tient .bonhomme, .portes-droite .bonhomme {
    transform: translateX(0) rotateY(180deg);
}
.bonhomme img {
    height: 100%;
}
.bonhomme-1 {
    --delay: 0;
}
.bonhomme-2 {
    --delay: 1;
}
.bonhomme-3 {
    --delay: 2;
}
.bonhomme-4 {
    --delay: 3;
}
.bonhomme-5 {
    --delay: 4;
}
.bloc {
    z-index: 1;
    position: relative;
    width: 500px;
    filter: drop-shadow(-10px 20px 20px);
}
.bloc-header {
    display: flex;
    align-items: flex-end;
    background-color: #f3f3f3;
    border-bottom: solid #aeadad;
}
.bloc-header-partie {
    width: 33.33%;
}
.bloc-clic {
    width: 60px;
    text-align: center;
    margin: auto;
    padding: 15px 0 10px;
    font-size: 20px;
    cursor: pointer;
}
.bloc-clic.actif {
    border-bottom: solid;
}
.bloc-clic.bloc-clic-en {
    cursor: auto;
    pointer-events: none;
}
.bloc-contenu {
    position: relative;
    padding: 50px;
}
.bloc-contenu-partie:not(.actif) {
    top: 50px;
    max-width: 400px;
}
.texte-gras {
    font-family: HK-Grotesk-Bold;
    font-size: 28px;
    line-height: 1.3;
}
.texte-pas-gras {
    margin-top: 5px;
    font-size: 18px;
    line-height: 1.2;
}
.texte-anime {
    display: flex;
    align-items: center;
    position: relative;
    left: -10px;
    width: 300px;
    margin-top: 50px;
    padding: 10px;
    border: solid #aeadad;
    border-radius: 30px;
}
.texte-anime .anime {
    width: calc(100% - 25px);
    height: 57px;
    padding-left: 5px;
    font-size: 13px;
}
.texte-anime .rond {
    position: absolute;
    right: 10px;
    height: 25px;
    width: 25px;
    border: solid #aeadad 2px;
    border-radius: 50%;
}
@media screen and (max-height: 700px) {
    .bloc-contenu {
        padding: 30px;
    }
    .texte-gras {
        font-size: 22px;
    }
    .texte-pas-gras {
        font-size: 16px;
    }
    .texte-anime {
        margin-top: 30px;
    }
}

.trifouilleur {
    position: absolute;
    /*top: 26vh;
    left: 30vh;
    width: 52vh;*/
    display: flex;
    justify-content: space-between;
}
.paysage .trifouilleur {
    top: calc(17vw - 10vh);
    left: calc(41vw - 125px);
    width: 20vw;
}
.portrait .trifouilleur {
    top: calc(34vh - 80px);
    left: calc(45vw - 220px);
}
.trifouilleur .bonhomme {
    position: relative;
    height: 15vh;
}
.trifouilleur img {
    height: 100%;
}


.bonhommes-traversent {
    position: absolute;
    left: -20px;
    width: calc(100vw + 40px);
    display: flex;
    justify-content: space-between;
}
.bonhommes-traversent .bonhomme {
    height: 50px;
}
.bonhommes-traversent.inverse .bonhomme {
    transform: rotateY(180deg);
}
.bonhommes-traversent-1 {
    --del-trav: 6s;
    top: 20vh;
    transform: rotate(2deg);
}
.bonhommes-traversent-2 {
    --del-trav: 9s;
    top: 55vh;
    transform: rotate(-3deg);
}
.bonhommes-traversent-3 {
    --del-trav: 11s;
    top: 70vh;
    transform: rotate(4deg);
}
.bonhomme-6 {
    --delay: 5;
}
.bonhomme-7 {
    --delay: 6;
}
.bonhomme-8 {
    --delay: 7;
}
@keyframes traversent {
    0% {
        opacity: 0;
        transform: translateX(-5vw);
    }
    1% {
        opacity: 1;
        transform: translateX(-5vw);
    }
    50% {
        transform: translateX(0);
    }
    99% {
        opacity: 1;
        transform: translateX(5vw);
    }
    100% {
        opacity: 0;
        transform: translateX(5vw);
    }
}
@keyframes traversentInverse {
    0% {
        opacity: 0;
        transform: translateX(5vw) rotateY(180deg);
    }
    1% {
        opacity: 1;
        transform: translateX(5vw)translateX(5vw) rotateY(180deg);
    }
    50% {
        transform: translateX(0)translateX(5vw) rotateY(180deg);
    }
    99% {
        opacity: 1;
        transform: translateX(-5vw)translateX(5vw) rotateY(180deg);
    }
    100% {
        opacity: 0;
        transform: translateX(-5vw)translateX(5vw) rotateY(180deg);
    }
}
.bonhommes-traversent .bonhomme {
    animation: traversent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-trifouille) + var(--del-general) + var(--del-trav)) linear forwards;
}
.bonhommes-traversent.inverse .bonhomme {
    animation: traversentInverse var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-trifouille) + var(--del-general) + var(--del-trav)) linear forwards;
}


/* ANIMATION TRADUCTION */
.bloc-contenu-partie, .concept-contenu, .service-contenu, .connexion-contenu, .inscription-contenu {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    transition: opacity 1s;
}
.bloc-contenu-partie.actif, .concept-contenu.actif, .service-contenu.actif, .connexion-contenu.actif, .inscription-contenu.actif {
    position: relative;
    opacity: 1;
    pointer-events: all;
    transition: opacity 1s;
}


/* ANIMATION APPARITION UBER */
@keyframes apparait {
    to {
        opacity: 1;
    }
}
.header-item:not(.logo-conteneur), .bloc-header {
    --del-app: 1;
}
.texte-gras {
    --del-app: 2;
}
.texte-pas-gras {
    --del-app: 3;
}
.texte-anime {
    --del-app: 4;
}
.header-item:not(.logo-conteneur), .bloc-header, .texte-gras, .texte-pas-gras, .texte-anime {
    opacity: 0;
    animation: apparait var(--vit-app) calc(var(--del-app) * var(--vit-app)) linear forwards;
}


/* ANIMATIONS BLOC */
/*@keyframes bloc {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(5vh);
    }
}
@keyframes bloc2 {
    0% {
        transform: translateX(5vh);
    }
    100% {
        transform: translateX(10vh);
    }
}
@keyframes bloc3 {
    0% {
        transform: translateX(10vh);
    }
    100% {
        transform: translateX(15vh);
    }
}
@keyframes blocChute {
    0% {
        transform: translateX(15vh) translateY(0) rotate(0);
    }
    100% {
        transform: translateX(15vh) translateY(calc(90vh - 140px)) rotate(0);
    }
}*/
@keyframes bloc {
    0% {
        transform: translateX(var(--transX-1));
    }
    100% {
        transform: translateX(var(--transX-2));
    }
}
@keyframes bloc2 {
    0% {
        transform: translateX(var(--transX-2));
    }
    100% {
        transform: translateX(var(--transX-3));
    }
}
@keyframes bloc3 {
    0% {
        transform: translateX(var(--transX-3));
    }
    100% {
        transform: translateX(var(--transX-fin));
    }
}
@keyframes blocChute {
    0% {
        transform: translateX(var(--transX-fin)) translateY(0) rotate(0);
    }
    100% {
        transform: translateX(var(--transX-fin)) translateY(calc(90vh - 140px)) rotate(0);
    }
}

@keyframes blocTangue {
    0% {
        transform: rotate(0);
    }
    20% {
        transform: rotate(.5deg);
    }
    40% {
        transform: rotate(-.8deg);
    }
    60% {
        transform: rotate(.7deg);
    }
    80% {
        transform: rotate(-.4deg);
    }
    100% {
        transform: rotate(1deg);
    }
}
.conteneur-bloc {
    --transX-1: 0vh;
    --transX-2: 5vh;
    --transX-3: 10vh;
    --transX-fin: 15vh;
}
.bloc {
    transform: translateX(var(--transX-1));
    animation: bloc 1.66s calc(var(--vitesse) * 5 + var(--del-general)) ease-out forwards, bloc2 1.66s calc(var(--vitesse) * 5 + var(--del-general) + 1.66s) ease-out forwards, bloc3 1.66s calc(var(--vitesse) * 5 + var(--del-general) + 3.33s) ease-out forwards, blocChute 2s calc(var(--vitesse) * 5 + 5.5s + var(--del-general)) linear forwards;
}
/*.bloc.en-bas {
    transform: translateX(var(--transX-fin)) translateY(calc(90vh - 140px)) rotate(0) !important;
}*/
.bloc.en-bas {
    position: fixed;
    top: calc(100vh - 70px);
    transform: translateX(var(--transX-fin)) !important;
}
.bloc-tangue {
    position: relative;
    background-color: #fff;
    animation: blocTangue 7s calc(var(--vitesse) * 5 + var(--del-general)) linear forwards;
}

@keyframes bonhommesPoussent {
    0% {
        opacity: 0;
        transform: translateX(-10px);
    }
    1% {
        opacity: 1;
        transform: translateX(-10px);
    }
    50% {
        transform: translateX(-5px);
    }
    99% {
        opacity: 1;
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        transform: translateX(0);
    }
}
.bonhommes-pousse .bonhomme {
    animation: bonhommesPoussent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-general)) linear forwards;
}

@keyframes bonhommeLastPousse {
    0% {
        opacity: 0;
        transform: translateX(-10px);
    }
    1% {
        opacity: 1;
        transform: translateX(-10px);
    }
    50% {
        transform: translateX(-5px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes blocChutePousse {
    0% {
        transform: translateX(15vh) translateY(0) rotate(0);
    }
    100% {
        transform: translateX(0vh) translateY(calc(90vh - 160px)) rotate(-80deg);
    }
}
.bonhommes-pousse .bonhomme-5 {
    animation: bonhommeLastPousse var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-general)) linear forwards, bloc 1.66s calc(var(--vitesse) * 5 + var(--del-general)) ease-out forwards, bloc2 1.66s calc(var(--vitesse) * 5 + var(--del-general) + 1.66s) ease-out forwards, bloc3 1.66s calc(var(--vitesse) * 5 + var(--del-general) + 3.33s) ease-out forwards, blocChutePousse 2s calc(var(--vitesse) * 5 + 5.5s + var(--del-general)) linear forwards;
}

@keyframes bonhommesTiennent {
    0% {
        opacity: 0;
        transform: translateX(0) rotateY(180deg);
    }
    1% {
        opacity: 1;
        transform: translateX(0) rotateY(180deg);
    }
    50% {
        transform: translateX(-2.5vw) rotateY(180deg);
    }
    99% {
        opacity: 1;
        transform: translateX(-5vw) rotateY(180deg);
    }
    100% {
        opacity: 0;
        transform: translateX(-5vw) rotateY(180deg);
    }
}
.bonhommes-tient .bonhomme {
    animation: bonhommesTiennent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-general)) linear forwards;
}

@keyframes bonhommeLastTient {
    0% {
        opacity: 0;
        transform: translateX(0);
    }
    1% {
        opacity: 1;
        transform: translateX(0);
    }
    50% {
        transform: translateX(calc(.5 * var(--transX-depart)));
    }
    100% {
        opacity: 1;
        transform: translateX(var(--transX-depart));
    }
}
@keyframes blocTient {
    0% {
        transform: translateX(var(--transX-depart));
    }
    100% {
        transform: translateX(calc(calc(var(--transX-2) - var(--transX-1)) + var(--transX-depart)));
    }
}
@keyframes blocTient2 {
    0% {
        transform: translateX(calc(calc(var(--transX-2) - var(--transX-1)) + var(--transX-depart)));
    }
    100% {
        transform: translateX(calc(calc(var(--transX-3) - var(--transX-1)) + var(--transX-depart)));
    }
}
@keyframes blocTient3 {
    0% {
        transform: translateX(calc(calc(var(--transX-3) - var(--transX-1)) + var(--transX-depart)));
    }
    100% {
        transform: translateX(calc(calc(var(--transX-fin) - var(--transX-1)) + var(--transX-depart)));
    }
}
@keyframes blocChuteTient {
    0% {
        transform: translateX(calc(calc(var(--transX-fin) - var(--transX-1)) + var(--transX-depart))) translateY(0) rotate(0);
    }
    100% {
        transform: translateX(calc(calc(var(--transX-fin) - var(--transX-1) + 100px) + var(--transX-depart))) translateY(calc(90vh - 160px)) rotate(80deg);
    }
}
.bonhommes-tient .bonhomme-5 {
    --transX-depart: -55px;
    animation: bonhommeLastTient var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-general)) linear forwards, blocTient 1.66s calc(var(--vitesse) * 5 + var(--del-general)) ease-out forwards, blocTient2 1.66s calc(var(--vitesse) * 5 + var(--del-general) + 1.66s) ease-out forwards, blocTient3 1.66s calc(var(--vitesse) * 5 + var(--del-general) + 3.33s) ease-out forwards, blocChuteTient 2s calc(var(--vitesse) * 5 + 5.5s + var(--del-general)) linear forwards;
}


/* ANIMATIONS HEADER */
@keyframes headerAttente {
    0% {
        transform: rotate(0);
    }
    25% {
        transform: rotate(-1deg);
    }
    50% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(0);
    }
}
@keyframes headerPart {
    0% {
        transform: scaleY(1);
    }
    100% {
        transform: scaleY(.8);
    }
}
@keyframes headerPart2 {
    0% {
        transform: scaleY(1);
    }
    100% {
        transform: scaleY(.6);
    }
}
@keyframes headerPart3 {
    0% {
        transform: scaleY(1);
    }
    70% {
        transform: scaleY(.3);
    }
    100% {
        transform: scaleY(.3);
    }
}
@keyframes headerTombe {
    0% {
        top: 0px;
        transform: rotate(0);
        transform-origin: center;
    }
    100% {
        top: 100vh;
        transform: rotate(180deg);
        transform-origin: center;
    }
}
header {
    transform-origin: 100px 0;
    animation: headerAttente 3s calc(4 * var(--vitesse) + var(--del-header) + var(--del-general) + 3s) 3 linear, headerPart 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general)) linear alternate, headerPart2 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 2s) linear alternate, headerPart3 1.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 4s) linear, headerTombe 2.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards;
}
/*
@keyframes bgCache {
    0% {
        height: 0;
    }
    100% {
        height: 100vh;
    }
}
.bg-cache {
    animation: bgCache 2.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards;
}*/

@keyframes porteTombe {
    0% {
        opacity: 1;
        bottom: calc(100vh - 80px - 75px);
    }
    100% {
        opacity: 1;
        bottom: -155px;
    }
}
@keyframes bonhommesGauche {
    0% {
        opacity: 0;
        transform: translateX(-5px);
    }
    1% {
        opacity: 1;
        transform: translateX(-5px);
    }
    50% {
        transform: translateX(2.5vh);
    }
    99% {
        opacity: 1;
        transform: translateX(calc(5vh + 10px));
    }
    100% {
        opacity: 0;
        transform: translateX(calc(5vh + 10px));
    }
}
.portes-gauche .bonhomme {
    animation: bonhommesGauche var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-header) + var(--del-general)) linear forwards;
}

@keyframes bonhommeLastGauche {
    0% {
        opacity: 0;
        transform: translateX(-5px);
    }
    1% {
        opacity: 1;
        transform: translateX(-5px);
    }
    50% {
        transform: translateX(2.5vh);
    }
    100% {
        opacity: 1;
        transform: translateX(calc(5vh + 10px));
    }
}
@keyframes porteEtireGauche {
    0% {
        opacity: 1;
        transform: translateY(0) translateX(0);
    }
    99.99% {
        opacity: 1;
        transform: translateY(-15px) translateX(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-15px) translateX(0);
    }
}
@keyframes porteEtire2Gauche {
    0% {
        opacity: 1;
        transform: translateY(0) translateX(0);
    }
    99.99% {
        opacity: 1;
        transform: translateY(-30px) translateX(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-30px) translateX(0);
    }
}
@keyframes porteEtire3Gauche {
    0% {
        opacity: 1;
        transform: translateY(0) translateX(0);
    }
    70% {
        transform: translateY(-50px) translateX(0);
    }
    100% {
        opacity: 1;
        transform: translateY(-50px) translateX(0);
    }
}
@keyframes bonhommeLastGaucheTombe {
    0% {
        opacity: 1;
        transform: translateX(0) rotate(0);
    }
    100% {
        opacity: 1;
        transform: translateX(-5vh) rotate(-360deg);
    }
}
@keyframes disparait {
    to {
        opacity: 0;
    }
}
@keyframes apparaitDisparait {
    0% {
        opacity: 1;
    }
    99.99% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes apparaitDisparait2 {
    0% {
        opacity: 1;
    }
    99.99% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
.portes-gauche .bonhomme-4 {
    animation: bonhommeLastGauche var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-header) + var(--del-general)) linear forwards, disparait .01s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general)) linear forwards, apparaitDisparait 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 1s) linear, apparaitDisparait2 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 3s) linear;
}
.portes-gauche .bonhomme-5 {
    top: -2px;
    transform: translateX(0);
    transform-origin: bottom;
    animation: /*bonhommeLastGauche var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-header) + var(--del-general)) linear forwards,*//* apparait .5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) - .5s) linear forwards,*/ porteEtireGauche 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general)) linear alternate, porteEtire2Gauche 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 2s) linear alternate, porteEtire3Gauche 1.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 4s) linear alternate, bonhommeLastGaucheTombe 2.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards;
}



@keyframes echelleArrive {
    0% {
        left: 100%;
        opacity: 0;
    }
    1% {
        left: 100%;
        opacity: 1;
    }
    100% {
        left: -50px;
        opacity: 1;
    }
}
@keyframes echellerebond1 {
    to {
      transform: rotate(-30deg);
    }
  }
  @keyframes echellerebond2 {
    to {
      transform: rotate(0);
    }
  }
  @keyframes echellerebond3 {
    to {
      transform: rotate(-15deg);
    }
  }
  @keyframes echellerebond4 {
    to {
      transform: rotate(0);
    }
  }
  @keyframes echellerebond5 {
    to {
      transform: rotate(-5deg);
    }
  }
  @keyframes echellerebond6 {
    to {
      transform: rotate(0);
    }
  }
  
@keyframes echelleTombe {
    0% {
        transform-origin: center center;
        top: 0;
        transform: rotate(0);
    }
    100% {
        transform-origin: center center;
        top: 100vh;
        transform: rotate(-60deg);
    }
}
.echelle {
    transform-origin: left bottom;
    animation: echelleArrive 2s calc(var(--del-header) + var(--del-general) - 3s) linear forwards, echellerebond1 .3s calc(var(--del-header) + var(--del-general) - 3s + 2s) ease-out forwards, echellerebond2 .2s calc(var(--del-header) + var(--del-general) - 3s + 2.3s) ease-in forwards, echellerebond3 .15s calc(var(--del-header) + var(--del-general) - 3s + 2.5s) ease-out forwards, echellerebond4 .1s calc(var(--del-header) + var(--del-general) - 3s + 2.65s) ease-in forwards, echellerebond5 .1s calc(var(--del-header) + var(--del-general) - 3s + 2.75s) ease-out forwards, echellerebond6 .15s calc(var(--del-header) + var(--del-general) - 3s + 2.85s) ease-in forwards, echelleTombe 2s calc(6s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille) + .5s) linear forwards;
}

@keyframes bonhommesDroite {
    0% {
        opacity: 0;
        transform: translateX(5px) rotateY(180deg);
    }
    1% {
        opacity: 1;
        transform: translateX(5px) rotateY(180deg);
    }
    50% {
        transform: translateX(2.5px) rotateY(180deg);
    }
    99% {
        opacity: 1;
        transform: translateX(0) rotateY(180deg);
    }
    100% {
        opacity: 0;
        transform: translateX(0) rotateY(180deg);
    }
}
.portes-droite .bonhomme {
    animation: bonhommesDroite var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-header) + var(--del-general)) linear forwards;
}

@keyframes bonhommesMontent {
    0% {
        opacity: 0;
    }
    1% {
        opacity: 1;
    }
    99% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
.portes-droite .bonhomme-6 {
    --delay: 4;
    top: -15px;
    left: 25px;
}
.portes-droite .bonhomme-7 {
    --delay: 5;
    top: -58px;
    left: 20px;
}
.portes-droite .bonhomme-8 {
    --delay: 6;
    top: -70px;
    left: -5px;
}
.portes-droite .bonhomme-6, .portes-droite .bonhomme-7, .portes-droite .bonhomme-8 {
    animation: bonhommesMontent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-header) + var(--del-general)) linear forwards;
}

@keyframes bonhommeLastDroite {
    0% {
        opacity: 0;
    }
    1% {
        opacity: 1;
    }
    100% {
        opacity: 1;
    }
}
@keyframes porteAttente {
    0% {
        transform: translateY(0) translateX(0);
    }
    25% {
        transform: translateY(-1.4vw) translateX(0);
    }
    50% {
        transform: translateY(0) translateX(0);
    }
    100% {
        transform: translateY(0) translateX(0);
    }
}
@keyframes bonhommeLastDroiteTombe {
    0% {
        transform: translateX(0) rotate(0);
    }
    100% {
        transform: translateX(5vh) rotate(360deg);
    }
}
@keyframes porteEtire {
    0% {
        transform: translateY(0) translateX(0);
    }
    100% {
        transform: translateY(-15px) translateX(0);
    }
}
@keyframes porteEtire2 {
    0% {
        transform: translateY(0) translateX(0);
    }
    100% {
        transform: translateY(-30px) translateX(0);
    }
}
@keyframes porteEtire3 {
    0% {
        transform: translateY(0) translateX(0);
    }
    70% {
        transform: translateY(-50px) translateX(0);
    }
    100% {
        transform: translateY(-50px) translateX(0);
    }
}

.portes-droite .bonhomme-5 {
    top: -105px;
    left: -25px;
    transform: translateX(0) translateY(0) rotateY(0);
    --delay: 7;
    transform-origin: bottom;
    animation: bonhommeLastDroite var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-header) + var(--del-general)) linear forwards, porteAttente 3s calc(4 * var(--vitesse) + var(--del-header) + var(--del-general) + 3s) 3 linear, porteEtire 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general)) linear alternate, porteEtire2 1s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 2s) linear alternate, porteEtire3 1.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 4s) linear alternate, bonhommeLastDroiteTombe 2.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards;
}
.bonhommes-porte {
    animation: porteTombe 2.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards;
}

/* ANIMATIONS TRIFOUILLE */
@keyframes bonhommesTrifouillent {
    0% {
        opacity: 0;
        transform: translateX(-2vh);
    }
    1% {
        opacity: 1;
        transform: translateX(-2vh);
    }
    50% {
        transform: translateX(-1vh);
    }
    99% {
        opacity: 1;
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        transform: translateX(0);
    }
}

@keyframes bonhommeLastTrifouille {
    0% {
        opacity: 0;
        transform: translateX(-2vh);
    }
    1% {
        opacity: 1;
        transform: translateX(-2vh);
    }
    50% {
        transform: translateX(-1vh);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes trifouille {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(5deg);
    }
}
@keyframes trifouille2 {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(5deg);
    }
}
@keyframes trifouille3 {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(5deg);
    }
}
@keyframes trifouille4 {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(5deg);
    }
}
@keyframes trifouilleTombe {
    0% {
        top: 26vh;
        transform: rotate(0);
    }
    100% {
        top: calc(90vh + 70px);
        transform: rotate(-80deg);
    }
}
@keyframes turbulence {
    0% {
      filter: url('#noiseFilter2') url('#dilate3');
    }
    25% {
      filter: url('#noiseFilter3') url('#dilate3');
    }
    50% {
      filter: url('#noiseFilter4') url('#dilate3');
    }
    75% {
      filter: url('#noiseFilter5') url('#dilate3');
    }
}
@keyframes turbulence2 {
    0% {
      filter: url('#noiseFilter2') invert() url('#dilate3');
    }
    25% {
      filter: url('#noiseFilter3') invert() url('#dilate3');
    }
    50% {
      filter: url('#noiseFilter4') invert() url('#dilate3');
    }
    75% {
      filter: url('#noiseFilter5') invert() url('#dilate3');
    }
}
@keyframes bright {
    0% {
        filter: brightness(1);
    }
    25% {
        filter: brightness(.7);
    }
    75% {
        filter: contrast(2) brightness(2) saturate(2);
    }
    100% {
        filter: brightness(1);
    }
}
@keyframes bright2 {
    0% {
        filter: brightness(1);
    }
    25% {
        filter: brightness(.7);
    }
    75% {
        filter: contrast(2) brightness(2) saturate(2);
    }
    100% {
        filter: brightness(1);
    }
}
@keyframes pixelisation {
    0% {
        filter: url('#dilate') blur(2px);
    }
    100% {
        filter: url('#dilate') blur(2px);
    }
}
@keyframes pixelisation2 {
    0% {
        filter: url('#dilate2');
    }
    100% {
        filter: url('#dilate2');
    }
}
@keyframes pixelisation3 {
    0% {
        filter: url('#dilate3');
    }
    100% {
        filter: url('#dilate3');
    }
}
@keyframes bgTombe {
    0% {
        filter: none !important;
        top: 0px;
        transform: rotate(0);
        transform-origin: center;
    }
    100% {
        filter: none !important;
        top: 120vh;
        transform: rotate(-10deg);
        transform-origin: center;
    }
}

.trifouilleur .bonhomme {
    animation: bonhommesTrifouillent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-trifouille) + var(--del-general) - 4s) linear forwards;
}
.trifouilleur .bonhomme-5 {
    transform-origin: right bottom;
    animation: bonhommeLastTrifouille var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--del-trifouille) + var(--del-general) - 4s) linear forwards, trifouille .5s calc(var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille) - 2s) 2 linear, trifouille2 .5s calc(2s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille)) 2 linear, trifouille3 .5s calc(6s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille)) 2 linear, trifouille4 .5s calc(10s + var(--del-general) + var(--delay) * var(--vitesse) + var(--del-trifouille)) 2 linear;
}
.trifouilleur {
    animation: trifouilleTombe 1.3s calc(11s + var(--del-general) + 4 * var(--vitesse) + var(--del-trifouille)) linear forwards;
}
body {
    animation: bright .5s calc(2s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear, bright2 .5s calc(6s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear;
}
.bg-fond {
    animation: pixelisation .5s calc(2s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear forwards, pixelisation2 .5s calc(6s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear forwards, turbulence 1s calc(10s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) linear, turbulence2 1s calc(11s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) linear, bgTombe 2.5s calc(var(--del-header-tombe) + var(--del-header) + var(--del-general) + 5.5s) linear forwards;
}
.bloc-contenu {
    animation: pixelisation .5s calc(2s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear forwards/*, pixelisation2 .5s calc(6s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear forwards, pixelisation3 1s calc(10s + var(--del-general) + 4.1 * var(--vitesse) + var(--del-trifouille)) 2 linear forwards*/;
}
.en-bas .bloc-contenu {
    animation: none;
}



/************/
/* PARTIE 2 */
/************/
.partie-2 {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    display: flex;
    justify-content: center;
    /*align-items: center;*/
    opacity: 0;
    animation: apparait 0.1s var(--debut-partie-2) forwards;
    overflow: hidden auto;
}
.partie-2-conteneur {
    position: relative;
    height: 100%;
    min-height: 900px;
    width: 800px;
    display: flex;
    align-items: center;
    padding-top: 200px;
}
.partie-2 img {
    height: 100%;
}
.glande-conteneur, .chaise-conteneur, .zone {
    position: absolute;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    opacity: 0;
    animation: apparait 0.5s calc(var(--debut-partie-2) + var(--del-app-2)) forwards;
}
.chaise {
    position: relative;
    height: 150px;
}
.partie-2 .bonhommes {
    position: absolute;
    left: 0;
    height: 180px;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
}
.partie-2 .glande-conteneur .bonhomme-5 {
    height: 110px;
}
.glande-conteneur .bonhommes {
    align-items: flex-end;
}
.partie-2 .bonhommes:not(.inverse) {
    left: unset;
    right: 0;
}
.partie-2 .bonhomme {
    position: absolute;
    height: 180px;
    pointer-events: none;
}
.inverse .bonhomme:not(.bonhomme-5) {
    transform: rotateY(180deg);
}
.zone {
    --del-app-2: 1s;
    transform: translate(-20px, 70px);
}
.chaise-conteneur-1 {
    --del-app-2: 1.5s;
    transform: translate(0, 0);
}
.chaise-conteneur-2 {
    --del-app-2: 2s;
    transform: translate(200px, 20px);
}
.chaise-conteneur-3 {
    --del-app-2: 3s;
    transform: translate(500px, 40px);
}
.chaise-conteneur-4 {
    --del-app-2: 3.5s;
    transform: translate(650px, 50px);
}
.chaise-conteneur-5 {
    --del-app-2: 4s;
    transform: translate(600px, -130px);
}
.chaise-conteneur-6 {
    --del-app-2: 4.5s;
    transform: translate(400px, -150px);
}
.chaise-conteneur-7 {
    --del-app-2: 5s;
    transform: translate(150px, -130px);
}
.glande-conteneur-1 {
    --del-app-2: 2.2s;
    transform: translate(150px, -130px);
}
.glande-conteneur-2 {
    --del-app-2: 3.7s;
    transform: translate(230px, 200px);
}
.glande-conteneur-3 {
    --del-app-2: 4.2s;
    transform: translate(500px, -200px);
}

.partie-2 .chaise-conteneur-1 .bonhommes {
    width: calc(50vw - 400px + 200px);
    right: -50px;
}
.partie-2 .chaise-conteneur-2 .bonhommes {
    width: calc(50vw - 400px + 400px);
    right: 20px;
}
.partie-2 .chaise-conteneur-3 .bonhommes {
    width: calc(50vw - 400px + 450px);
    left: -30px;
}
.partie-2 .chaise-conteneur-4 .bonhommes {
    width: calc(50vw - 400px + 250px);
    left: -30px;
}
.partie-2 .chaise-conteneur-5 .bonhommes {
    width: calc(50vw - 400px + 200px);
    left: 40px;
    bottom: 20px;
}
.partie-2 .chaise-conteneur-6 .bonhommes {
    width: calc(50vw - 400px + 400px);
    left: 0px;
    bottom: -10px;
}
.partie-2 .chaise-conteneur-7 .bonhommes {
    width: calc(50vw - 400px + 350px);
    right: 10px;
    bottom: 10px;
}
.partie-2 .glande-conteneur-1 .bonhommes {
    width: calc(50vw - 400px + 200px);
    right: 10px;
    bottom: 10px;
}
.partie-2 .glande-conteneur-1 .bonhomme-5 {
    height: 90px;
}
.partie-2 .glande-conteneur-2 .bonhommes {
    width: calc(50vw - 400px + 850px);
    right: 10px;
    bottom: 10px;
}
.partie-2 .glande-conteneur-3 .bonhommes {
    width: calc(50vw - 400px + 500px);
    right: 10px;
    bottom: 10px;
}

.partie-2 .bonhommes:not(.inverse) .bonhomme-1 {
    right: 80%;
}
.partie-2 .bonhommes:not(.inverse) .bonhomme-2 {
    right: 60%;
}
.partie-2 .bonhommes:not(.inverse) .bonhomme-3 {
    right: 40%;
}
.partie-2 .bonhommes:not(.inverse) .bonhomme-4 {
    right: 20%;
}
.partie-2 .bonhommes:not(.inverse) .bonhomme-5 {
    right: 0;
}
.partie-2 .bonhommes.inverse .bonhomme-1 {
    left: 80%;
}
.partie-2 .bonhommes.inverse .bonhomme-2 {
    left: 60%;
}
.partie-2 .bonhommes.inverse .bonhomme-3 {
    left: 40%;
}
.partie-2 .bonhommes.inverse .bonhomme-4 {
    left: 20%;
}
.partie-2 .bonhommes.inverse .bonhomme-5 {
    left: 0;
}

.partie-2 .bonhommes:not(.inverse) .bonhomme {
    animation: bonhommesPoussent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--debut-partie-2) + var(--del-app-2) + 5s) linear forwards;
}
.partie-2 .bonhommes.inverse .bonhomme {
    animation: bonhommesTiennent var(--vitesse) calc(var(--delay) * var(--vitesse) + var(--debut-partie-2) + var(--del-app-2) + 5s) linear forwards;
}
.partie-2 .bonhommes:not(.inverse) .bonhomme-5, .partie-2 .bonhommes.inverse .bonhomme-5 {
    animation: apparait .5s calc(var(--delay) * var(--vitesse) + var(--debut-partie-2) + var(--del-app-2) + 5s) linear forwards;
}


.chaise-conteneur-1, .chaise-conteneur-2 {
    z-index: 1;
}
.bulle {
    position: absolute;
    bottom: 130%;
    width: 250px;
    background-color: #fff;
    border: solid 2px;
    border-radius: 50px 40px 60px 30px;
    padding: 8px 15px;
    opacity: 0;
    transition: opacity .3s;
    pointer-events: none;
    line-height: 1.1;
    box-shadow: #d26e55 4px 4px 10px;
}
.bulle.show {
    opacity: 1;
    transition: opacity .3s var(--del-reponse);
    pointer-events: all;
}
.bulle span {
    display: none;
}
.bulle span.actif {
    display: inline-block;
}
.partie-2 .bulle-pointe {
    position: absolute;
    bottom: -30px;
    height: 30px;
    display: none;
}
.bulle-perso-gauche {
    --del-reponse: 0s;
    left: -100px;
}
.bulle-perso-gauche .bulle-pointe {
    left: 140px;
}
.bulle-perso-droite {
    --del-reponse: 2s;
    right: -100px;
}
.bulle-perso-droite .bulle-pointe {
    right: 160px;
}
.bulle-perso-autre {
    transform: var(--position) scale(.4);
    transform-origin: bottom left;
    --del-reponse: 2.5s;
    bottom: unset;
    min-width: 250px;
    font-size: 7px;
    padding-bottom: 18px;
}
.bulle-perso-autre.show {
    transition: transform .5s, opacity .3s calc(var(--del-reponse) + var(--del-sup));
}
.bulle-perso-autre:hover {
    transform: var(--position) scale(1);
    z-index: 9;
    font-size: 16px;
}
.bulle-perso-autre span {
    height: 100%;
    max-height: calc(var(--max-h) - 50px);
    padding-right: 10px;
    /*overflow: scroll;*/
    overflow: hidden auto;
    scrollbar-color: #63849f #fff;
}
.bulle-perso-autre span::-webkit-scrollbar-thumb {
    background-color: #fff;
    outline: 2px solid #63849f;
}


.bulle-perso-autre-1 {
    --del-sup: .1s;
    top: 0;
    --position: translate(-160px, -70px);
    width: 450px;
    transform-origin: top left;
}
.bulle-perso-autre-2 {
    --del-sup: .05s;
    --position: translate(-10px, -190px);
    --max-h: 300px;
}
.bulle-perso-autre-3 {
    --del-sup: .2s;
    --position: translate(-25px, -175px);
    --max-h: 300px;
}
.bulle-perso-autre-4 {
    --del-sup: .15s;
    --position: translate(20px, -90px);
    top: 0;
    width: 350px;
    transform-origin: top left;
}
.bulle-perso-autre-5 {
    --del-sup: .175s;
    --position: translate(80px, -50px);
    --max-h: 300px;
    bottom: 100%;
    right: 0;
    width: 300px;
    transform-origin: bottom right;
}
.bulle-perso-autre-6 {
    --del-sup: .025s;
    --position: translate(0px, -180px);
}
.bulle-perso-autre-7 {
    --del-sup: .075s;
    --position: translate(-30px, 10px);
    top: 0;
    width: 400px;
    transform-origin: top left;
}
.bulle-perso-autre-8 {
    --del-sup: .125s;
    --position: translate(120px, -130px);
}

.bulle-perso-gauche::after {
    content: '';
    position: absolute;
    top: 100%;
    right: 80px;
    width: 30px;
    border: solid 1px;
    transform: rotate(-45deg);
    transform-origin: top right;
}
.bulle-perso-droite::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 60px;
    width: 30px;
    border: solid 1px;
    transform: rotate(45deg);
    transform-origin: top left;
}
.bulle-perso-autre::after {
    content: 'O o o';
    position: absolute;
    top: 100%;
    left: 110px;
    width: 20px;
    /*border: solid 1px;*/
    transform: rotate(45deg) scale(3);
    transform-origin: top left;
    transition: left .3s .1s, right .3s .1s, transform .01s;
}
.bulle-perso-autre:hover::after {
    content: '';
    border: solid 1px;
    left: 20px;
    transform: rotate(45deg) scale(1);
    transition: left .3s, right .3s, transform .01s;
}
/*.bulle-perso-autre-2::after, .bulle-perso-autre-3::after, .bulle-perso-autre-4::after, .bulle-perso-autre-5::after, .bulle-perso-autre-6::after, .bulle-perso-autre-7::after, .bulle-perso-autre-8::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 20px;
    width: 20px;
    border: solid 1px;
    transform: rotate(45deg);
    transform-origin: top left;
}*/
.bulle-perso-autre-2::after {
    left: 100px;
}
.bulle-perso-autre-2:hover::after {
    left: 40px;
}
.bulle-perso-autre-3::after {
    left: 80px;
}
.bulle-perso-autre-4::after, .bulle-perso-autre-7::after {
    top: unset;
    left: 150px;
    bottom: 100%;
    transform: rotate(-45deg) scale(3);
    transform-origin: bottom left;
}
.bulle-perso-autre-4:hover::after, .bulle-perso-autre-7:hover::after {
    left: 50px;
    transform: rotate(-45deg) scale(1);
}
.bulle-perso-autre-6::after {
    left: 150px;
}
.bulle-perso-autre-6:hover::after {
    left: 50px;
}
.bulle-perso-autre-1::after, .bulle-perso-autre-5::after {
    content: 'o o O';
    transform: rotate(-45deg) scale(3);
    transform-origin: top right;
}
.bulle-perso-autre-1::after {
    top: 20px;
    left: -20px;
    transform: rotate(45deg) scale(3);
    /*border: solid 1px;*/
}
.bulle-perso-autre-1:hover::after {
    content: '';
    left: -25px;
    width: 30px;
}
.bulle-perso-autre-5::after {
    left: unset;
    right: 160px;
}
.bulle-perso-autre-5:hover::after {
    content: '';
    transform: rotate(-45deg) scale(1);
    left: unset;
    right: 50px;
}



/* FEU DE CAMP */
.feu-de-camp {
    z-index: 2;
    position: absolute;
    top: 75%;
    left: -250px;
    width: 500px;
    /*height: 300px;*/
}
.feu-rocher, .foyer, .bouton-dialogues {
    opacity: 0;
    position: absolute;
    height: 40px;
    transition: opacity .3s;
}
.feu-rocher.show, .foyer.show {
    opacity: 1;
}
.foyer {
    height: 40px;
    top: 90px;
    left: 22%;
}
.bouton-dialogues.suivant {
    cursor: pointer;
    height: 65px;
    left: 51%;
    top: 5px;
}
@keyframes clignote {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes reClignote {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.bouton-dialogues.show {
    animation: clignote 5 .5s 2.5s alternate forwards linear;
}
.bouton-dialogues.re-show .bouton-dialogues-texte {
    opacity: 0;
    animation: reClignote 2 1s 2.5s alternate forwards linear;
}
.bouton-dialogues-texte {
    display: none;
    position: absolute;
    text-transform: uppercase;
    transform: rotate(25deg);
}
.bouton-dialogues-texte.actif {
    display: inline-block;
}
.suivant .bouton-dialogues-texte {
    left: 2px;
    top: 20px;
    font-size: 15px;
}
.precedent .bouton-dialogues-texte {
    left: 7px;
    top: 30px;
    font-size: 10px;
}
.precedent .bouton-dialogues-texte-ge {
    top: 26px;
}
.precedent .bouton-dialogues-texte-en {
    top: 28px;
}

.bouton-dialogues.precedent {
    cursor: pointer;
    height: 60px;
    left: 58%;
    top: 78px;
}
.bouton-dialogues.precedent[data-dia='0'] {
    display: none;
}
.feu-rocher:nth-child(2) {
    height: 65px;
    left: 32%;
    top: -10px;
}
.feu-rocher:nth-child(3) {
    height: 30px;
    left: 35%;
    top: 150px;
}
.feu-rocher:nth-child(4) {
    height: 30px;
    left: 0;
    top: 90px;
}
.feu-rocher:nth-child(5) {
    height: 30px;
    left: 5%;
    top: 50px;
}
.feu-rocher:nth-child(6) {
    height: 80px;
    left: 12%;
    top: 95px;
}
.feu-rocher:nth-child(7) {
    height: 50px;
    left: 15%;
    top: 10px;
}
.feu-rocher:nth-child(8) {
    height: 55px;
    left: 53%;
    top: 120px;
}
.feu-rocher:nth-child(8) img {
    transform: rotateY(180deg);
}



/**********/
/* MOBILE */
/**********/

/* MENU */
.menu-mobile {
    display: none;
    position: absolute;
    right: 0;
    width: 50px;
    height: 50px;
    background-color: rgba(0, 0, 0, .9);
}
.menu-mobile .menu {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.burger {
    position: absolute;
    top: 0;
    right: 0;
    height: 50px;
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.burger span {
    position: relative;
    width: 20px;
}
.burger span::before, .burger span::after {
    content: '';
    position: absolute;
    width: 100%;
    border: solid 2px;
    border-radius: 5px;
}
.burger span::before {
    transform: translateY(-5px);
}
.burger span::after {
    transform: translateY(5px);
}



@media screen and (max-width: 1000px) {
    .partie-2-conteneur {
        padding-left: 100px;
        overflow: auto;
        width: 100%/* 900px */;
    }
}
@media screen and (max-width: 900px) {
    .conteneur-bloc {
        width: 100%;
        margin: 10vh 0 0;
        --transX-1: -500px;
        --transX-2: -334px;
        --transX-3: -167px;
        --transX-fin: 0px;
    }
    /*.bonhommes-pousse {
        left: -440px;
    }*/
    .bonhommes-tient {
        width: calc(100vw + 40px);
    }
    .bonhommes-tient .bonhomme-5 {
        --transX-depart: -15px;
    }
}
@media screen and (max-width: 768px) {
    header {
        padding: 15px 60px 15px 15px;
        height: 70px;
    }
    .boutons-explications, .portes-gauche {
        display: none;
    }
    .bonhommes-porte {
        justify-content: flex-end;
    }
    .portes-droite {
        width: 50%;
    }
    .menu-mobile {
        display: block;
    }
    .menu-mobile.ouvert {
        top: 0;
        width: 100vw;
        height: 100vh;
        z-index: 99;
    }
    .ouvert .burger span::before {
        transform: translateY(0) rotate(45deg);
    }
    .ouvert .burger span::after {
        transform: translateY(0) rotate(-45deg);
    }
}
@media screen and (max-width: 500px) {
    .conteneur-bloc {
        --transX-1: -100vw;
        --transX-2: -66vw;
        --transX-3: -33vw;
        --transX-fin: 0px;
    }
    .bloc {
        width: 100vw;
    }
}




/*.bg, .bg-fond, .bg-tache {
    animation: none !important;
}
.bg-tache {
    opacity: 1 !important;
}
.fin-tissus.bg, .fin-tissus .bg-fond, .fin-tissus .bg-tache {
    display: flex !important;
}
.fin-tissus.bg {
    z-index: 9;
}*/