/* typos */
@font-face {
    font-family: "IBM";
    src: url(../src/fonts/IBMPlexMono-Regular.ttf);
    font-style: normal;
    font-weight: bold;
}

@font-face {
    font-family: "IBM";
    src: url(../src/fonts/IBMPlexMono-Light.ttf);
    font-style: normal;
    font-weight: lighter;
}

@font-face {
    font-family: "Orbitron";
    src: url(../src/fonts/Orbitron-SemiBold.ttf);
    font-style: normal;
    font-weight: bold;
}

/* reset */
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* variables */
:root{
    --main_clr : rgb(240, 240, 240);
    --scnd_clr : rgb(186, 186, 185); 
    --img_clr : rgb(224, 224, 224);
    --img_border : 13px;
}

body{
    color: var(--scnd_clr);
    font-family: IBM;
    font-weight: lighter;
    font-size: 14px;
    background-color: rgb(16, 16, 17);
    display: flex;
    overflow: hidden;

    cursor: url("../src/img/rocket.png"), auto;
}

/* Header */
nav{
    width: 340px;
    display: inline-block;
    margin: 30px;
    position: sticky;
    top: 0;
    text-transform: uppercase;
}

a{
    display: block;
    padding: 5px;
    width: fit-content;
    color: var(--scnd_clr);
    text-decoration: none;
    cursor: pointer;
}

a:hover{
    color: var(--main_clr);
}

#croix{
    position: sticky;
    font-family: Jost;
    font-weight: lighter;
    color: var(--main_clr);
    font-size: 30px;
    pointer-events: none;
}

#croix p{
    position: fixed;
    margin: 6px 10px 0px 10px;
}

#croix p:nth-child(1){
    top: 0;
    left: 0;
}
#croix p:nth-child(2){
    top: 0;
    right: 0;
}
#croix p:nth-child(3){
    bottom: 0;
    left: 0;
}
#croix p:nth-child(4){
    bottom: 0;
    right: 0;
}

/* Main */
main::-webkit-scrollbar {
    display: none;
}

main{
    width: 100vw;
    height: 100vh;
    overflow-y: scroll;
    scroll-behavior: smooth;
}

.text-container{
    height: 100vh; 
    width: 750px;
}

.menu{
    height: auto; 
    padding-bottom: 60px;
}

/* menu1 */
h1{
    color: var(--main_clr);
    font-family: Orbitron;
    font-weight: bold;
    font-size: 50px;
    margin-top: 22px;
    margin-bottom: 20px;
    position: relative;

    white-space: nowrap;
    overflow: hidden;
}

h2{
    padding-bottom: 10px;
    padding-top: 20px;
    font-weight: bold;
    color: var(--main_clr);
    text-transform: uppercase;
}

figcaption{
    font-size: 10px;
}

.anim{
    cursor: pointer;
    border-right: 2px solid var(--main_clr);
    animation: typewriter 1.5s steps(25) 
    1s  normal both,
    blinkTextCursor 750ms steps(25) infinite normal;
}

@keyframes typewriter{
    from{width: 0;}
    to{width: 520px;}
}
@keyframes blinkTextCursor{
    from, to { border-color: transparent }
    50% { border-color: var(--main_clr); }
}

#column{
    display: flex;
}

#column p{
    padding-left: 15px;
}

#menu1 img{
    width: 300px;
    border: var(--img_border) solid var(--img_clr);
}

/* menu3 */
#menu3 span{
    color: var(--main_clr);
}

#menu3 figure{
    margin-top: 30px;

}

#books{
    width: 300px;
    align-self: start;
    margin: auto;
    position: relative;
    
}
#books img{
    width: 100%;
    border: var(--img_border) solid var(--img_clr);
}
    /* caroussel */
    #caroussel{
        justify-self: center;
        align-self: start;
        position: relative;
        width: 500px;
        overflow: hidden;
        margin: auto;
    }
    
    #caroussel ul{
        position: relative;
        margin-top: 25px;
        bottom: 0px;
        left: 50%;
        transform: translate(-50%, 0);
        justify-content: center;
        list-style: none;
        display: flex;
        gap: 15px;
    }
    #caroussel ul li{
        cursor: pointer;
        width: 17px;
        height: 17px;
        border-radius: 50%;
        background-color: var(--scnd_clr);
    }
    #caroussel ul li.active,
    #caroussel ul li:hover{
        cursor: pointer;
        background-color: var(--main_clr);
    }
    
    #caroussel_wrapper{
    width: 300%;
    height: 100%;
    display: flex;
    transition: all 300ms ease-in-out;
    }
    #caroussel_wrapper figure{
        width: 100%;
        height: 100%;
    }
    #caroussel_wrapper figure > img{
        width: 200%;
        height: 100%;
        display: block;
        object-fit: cover;
    }
    
    #caroussel figure{
        position: relative;
        justify-self: center;
        align-self: center;
    }
    #caroussel figure img{
        display: block;
        width: 100%;
        border: var(--img_border) solid var(--img_clr);
    }
    #caroussel figure figcaption{
        position: relative;
        left: 0;
        bottom: 0;
        margin-top: 5px;
    }

/* menu6 */
#menu6 ul{
    list-style: inside;
}

#menu6 li{
    padding: 10px;
    display: list-item;
}

#hide-obama{
    margin: 0;
    width: fit-content;
    display: inline-block;

}

#hide-obama a{
    padding: 0;
    cursor: pointer;
    text-decoration: underline;
    position: relative;
}

#hide-obama a span{
    position: absolute;
    display: none;
    z-index: 99;
    transform: scale(0);
    border: 25px solid var(--img_clr);
    top: 0;
}
 
#hide-obama a:hover span {
    display: block;
    transform: translate(-37.5%, -63%) scale(0.25);
}


#hide-lego{
    width: fit-content;
    display: inline-block;
    vertical-align: baseline;
}

#hide-lego a{
    padding: 0;
    cursor: pointer;
    text-decoration: underline;
    position: relative;
}

#hide-lego a span{
    position: absolute;
    display: none;
    z-index: 99;
    transform: scale(0);
    top: 0;
}
 
#hide-lego a:hover span {
    display: block;
    transform: translate(-35%, -65%) scale(0.3);
}

#hide-lego img{
    border: 20px solid var(--img_clr);
}

.next-to{
    vertical-align: baseline;
}

#video a{
    width: 100%;
    padding: 0;
    cursor: pointer;
    position: relative;
}
#video a iframe{
    position: absolute;
    display: none;
    z-index: 99;
    transform: scale(0);
    overflow: hidden;
    top: 0;
    border: 5px solid var(--img_clr);
}
#video a:hover iframe {
    display: block;
    transform: translate(18%, -115%) scale(1.3);
}

#video span{
    position: absolute;
    margin-top: 5px;
    margin-left: 5px;
    color: var(--main_clr);
}

/* menu7 */
#menu7{
    height: 100vh;
}

#menu7 a{
    text-decoration: underline;
    font-size: 11px;
    width: fit-content;
}