
/* logo */
.logo {
    position: fixed;
    width: 65px;
    height: 39px;
    top : 10px;
    left: 10px;
    z-index: 99;
    cursor: pointer;
    filter: invert(1);
    mix-blend-mode: difference;
    /* background-color: aqua; */
}

#logo-container {
    width: 100%;
    height: 100%;
    position: absolute;
    top: -9px;;
}

.letter {
    position: absolute;

    left: 0;
    font-weight: 600;
    font-size: 30px;
    transition: transform 0.5s ease;
}
.letter#L {
    left: 17px;
}

/* Extension du logo */
.extra-text {
    position: absolute;
    top: 6px;
    left: 30px;
    font-weight: 100;
    font-size: 23px;
    opacity: 0;
    transition: opacity 0.4s ease, transform 0.5s ease;
    transform: translateX(0px);
}
.extra-name{
    position: absolute;
    top: 35px;
    left: 5px;
    width: 100%;
    font-weight: 200;
    font-size: 10px;
    opacity: 0;
    transition: opacity 0.4s ease, transform 0.5s ease;
    transform: translateX(0px);
}

/* Animation pour étendre le logo */
.logoExtended .letter#L {
    transform: translateX(4px); /* Déplace le L vers la droite */
}
.logoExtended .extra-text {
    transform: translateX(25px);
    opacity: 1; /* Fait apparaître "im" et "esellier" en fondu */
}
.logoExtended .extra-name {
    opacity: 1;
}

.blur-background {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100vw;
    height: 100vh;
    z-index: 96;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    transition: visibility 0.5s ease, opacity 0.5s ease;
}

.blur-background.open {
    visibility: visible;
    opacity: 1;
}

.blur-background.close {    
    visibility: hidden;
    opacity: 0;
}


.revealZone {
    position: fixed;
    left: 0;
    top: 0;
    width: 30px;
    height: 100vh;
    z-index: 98;
    cursor: pointer;
    /* display: none; */
    /* background-color: rgb(226, 43, 43); */
}
.closeZone{
    z-index: 98;
    position: fixed;
    right: 0;
    top: 0;
    width: calc(100vw - 300px);
    height: 100vh;
    cursor: pointer;
    visibility: hidden;
}
.button{
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-size: 0.6rem;
}
.closeButton{
    z-index: 97;
    position: absolute;
    left: 10px;
    height: 300px;
    top: 50vh;
    margin-top: -150px;
    text-align: center;
    display: flex;    align-items: center;
    justify-content: center;
    transition: visibily 0.5 ease, transform 0.5s ease, opacity 0.5s cubic-bezier(0.860, 0.000, 0.070, 1.000);
    visibility: hidden;
    opacity: 0; 
    
    filter: invert(1);
    mix-blend-mode: difference;
}
.revealButton{
    z-index: 97;
    position: absolute;
    left: 10px;
    height: 300px;
    top: 50vh;
    margin-top: -150px;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    transition: visibily 0.5 ease, transform 0.5s ease, opacity 0.1s cubic-bezier(0.860, 0.000, 0.070, 1.000);
    /* visibility: visible; */
    opacity: 1;
    
    filter: invert(1);
    mix-blend-mode: difference;
}
.buttonArrow{
    font-size: 0.5rem;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}
.buttonText{
    justify-content: center;
    align-items: center;
    margin-left: -0.2rem;
}

.displayNone {
    display: none;
}

.menu-container {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 300px;
    height: 100vh;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    background-color: rgb(255, 255, 255);
    transition: transform 0.5s ease;
    z-index: 98;
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* background-color: royalblue; */
}
.menu-container.open {
    transform: translateX(0px);
}
.menu-container.close {
    transform: translateX(-350px);
}

.menu-browser {
    /* margin-top: -50px; */
    padding-right: 50px;
}

.submenu {
    border-top: 1px solid #000;
    margin-top: 10px;
    padding-right: 2px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: end;
}
.submenu-title {
    position:absolute;
    left: 0;
    font-size: 0.8rem;
    font-weight: 300;
    font-style: italic;
    padding-top: 2px;
}

.page-container {
    position: relative;
    cursor: pointer;
    width: 50%;

}
.page {
    padding-top: 2px;
    padding-bottom: 2px;
    position: relative;
    right: 0;
    text-align: end;
    
    transition: color 0.3s ease, transform 0.3s ease;
    font-size: 0.8rem;
    font-weight: 300;
    z-index: 1;
    color: #000; /* Couleur du texte par défaut */
    text-decoration: none;
}
.page a {
    text-decoration: none;
    color: #000;
}

.activePage {
    font-weight: 500;
}
.activePage::before {
    content: "< ";
}
.activePage::after {
    content: " >";
}


.page-container:hover {
    .page {
        transform: translateX(-15px);    
    }
}

.arrow-icon {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%); /* Centre verticalement la flèche */
    width: 8px;
    aspect-ratio: 1/1;
    opacity: 0; /* Masque la flèche par défaut */
    transition: opacity 0.3s ease;
}

.page-container:hover .arrow-icon {
    opacity: 1; /* Fait apparaître la flèche au survol */
}

.lang-container{
    display: flex;
    flex-direction: row;
    font-size: 0.8rem;
    font-weight: 300;
    z-index: 1;
    color: #000; /* Couleur du texte par défaut */
    text-decoration: none;
    gap: 4px;
}
.lang-container a{
    text-decoration: none;
    color: #000;
}
.lang-container .activeLang{
    font-weight: 500;
}

.informations {
    position: absolute;
    bottom: 3px;
    right: 10px;
    width: 100%;
    height: 20px;
    display: flex;
    justify-content: right;
    align-items: bottom;
    
}
.footerRightsReserved {
    text-decoration: none;
    color: black;
    font-size: 0.6rem;
    font-weight: 300;
}

@supports (height: 100svh) {
    .content-container {
        height: 100svh;
    }
}



@media (min-width: 700px) {
    .logo {
        width: calc(50px * 1.3);
        height: calc(26px * 1.3);
        top: calc(10px * 1.3);
        left: calc(10px * 1.3);
    }

    .letter {
        font-size: calc(30px * 1.3);
    }

    .letter#L {
        left: calc(17px * 1.3);
    }

    .extra-text {
        font-size: calc(23px * 1.3);
        top: calc(6px * 1.3);
        left: calc(30px * 1.3);
    }
    .extra-name{
        top: calc(35px * 1.3);
        left: calc(5px * 1.3);
        font-size: calc(10px * 1.3);
    }

    .logoExtended .letter#L {
        transform: translateX(calc(4px * 1.3));
    }
    .logoExtended .extra-text {
        transform: translateX(calc(25px* 1.3));
    }

    .button{
        font-size: 0.7rem;
    }
    .closeButton{
        left: calc(10px * 1.3);
    }
    .revealButton{
        left: calc(10px * 1.3);
    }
}
