/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* *                                                                                  */
/* *                                page-specific rules                               */
/* *                                                                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

html {
    --fg-color: #B8691B;
    --bg-color: #C3700D;
    --txt-color: #e1ddec;
    --bg-img: url(/pictures/backgrounds/indexBg.png);
}

body {
    background-color: var(--bg-color);
    background-image: var(--bg-img);
    color: var(--txt-color);
}

main {
    margin: 0;
    height: auto;
    width: 100%;
    padding: 0;
    padding-bottom: 1vh;
    overflow-x: hidden;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

/* content begins */

content {
    width: 100%;
    height: 90vh;
    padding: 7vh .5vw 0 5.5vw;
    margin: 0;
    color: var(--txt-color);
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

.contentLeft {
    height: 80%;
    width: 30%;
    display: flex;
    flex-flow: row wrap;
    padding: 1%;
    overflow: hidden;
    justify-content: center;
}

.contentLeft>* {
    width: 100%;
}

.contentRight {
    height: 80%;
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    padding: 1%;
}

#cR1 {
    height: 20%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.welcomeSpeech {
    width: 100%;
    height: fit-content;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    border-radius: 1vw;
    margin: auto 5% auto 5%;
    padding: 1%;
    background-color: rgba(0, 0, 0, 0.3);
}

#cR2,
#cR3 {
    margin: 1%;
    font-size: clamp(1.375rem, 1.3169rem + 0.4651vw, 1.875rem);
}

.contentLink {
    height: 20%;
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: auto 5% auto 5%;
}

.contentLink>a {
    width: 30%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50%;
    border-radius: 1vw;
    margin: 0 1%;
    background-color: rgba(0, 0, 0, 0.1);
    transition: all .25s linear;
    font-size: clamp(1.375rem, 1.3169rem + 0.4651vw, 1.875rem);
}

.contentLink>a:hover {
    transform: scale(110%);
    background-color: rgba(0, 0, 0, 0.5);
}

thumbnail {
    display: block;
    margin: 0;
    padding: 2vh 0;
    height: fit-content;
    width: 100%;
}

carrousel {
    width: 100vw;
    height: 80vh;
    margin: 2% auto;
    padding: 0 5%;
    display: inline-flex;
    flex-flow: row nowrap;
    overflow-x: scroll;
    align-items: center;
}

.carrouselContainer {
    margin: -1%;
    flex: 0 0 auto;
}

.carrouselContainerAnimated {
    margin: -1%;
    width: max-content;
    aspect-ratio: 16/9;
    position: absolute;
    left: 110vw;
    animation: moving-images var(--anim-duration) infinite linear;
    --anim-duration: 30s;
    --img-number: 5;
}

@keyframes moving-images {
    to {
        transform: translateX(calc(-50vw * var(--img-number)));
    }
}

#cF1 {
    transform: rotateZ(358deg);
    width: 50vw;
}

#cF2 {
    transform: rotateZ(358deg);
    width: 54vw;
}

#cF3 {
    transform: rotateZ(5deg);
    width: 50vw;
}

#cF4 {
    transform: rotateZ(359deg);
    width: 59vw;
}

#cF5 {
    transform: rotateZ(2deg);
    width: 55vw;
}

#carrouselContainer0 {
    animation-delay: -10s;
}

#carrouselContainer1 {
    animation-delay: -4.5s;
}

#carrouselContainer2 {
    animation-delay: 1.5s;
}

#carrouselContainer3 {
    animation-delay: 7s;
}

#carrouselContainer4 {
    animation-delay: -16s;
}

.carrouselContainer>a,
.carrouselContainerAnimated>a {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    border: .15rem solid black;
    background-color: white;
    aspect-ratio: 3/2;
    overflow: hidden;
    padding: 1%;
    padding-bottom: 2%;
}

.carrouselImage {
    height: fit-content;
    margin: -1%;
    border: 2px solid black;
}

.projectTitle {
    color: #000;
}

.controlButtonContainer {
    width: 100%;
    height: 10vh;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    padding: 0 .5vw 0 5.5vw;
}

.controlButton {
    height: 80%;
    aspect-ratio: 1/1;
    margin: 0 1vw;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    transition: transform .25s;
    background: rgba(255, 255, 255, 0);
    border-radius: .5vw;
    border: none;
}

.controlButton:hover {
    transform: scale(125%);
}

#mobile-only-carrousel {
    display: none;
}

@media only screen and (max-width: 1000px) {
    content {
        padding: 0;
        padding-top: 10vh;
    }

    .welcomeSpeech {
        padding: 1.5vh;
        border-radius: 3vw;
        margin-bottom: 1vh;
    }

    .contentLink {
        display: flex;
        flex-flow: row wrap;
    }

    .contentLink>a {
        width: max-content;
        margin: 1vh;
        padding: 3vh;
        border-radius: 3vw;
    }

    thumbnail {
        padding-bottom: 1vh;
    }

    .carrouselContainerAnimated {
        animation-duration: 30s;
    }

    @keyframes moving-images {
        to {
            transform: translateX(calc(-80vh * var(--img-number)));
        }
    }

    #carrouselContainer0 {
        animation-delay: -1s;
    }

    #carrouselContainer1 {
        animation-delay: 4.6s;
    }

    #carrouselContainer2 {
        animation-delay: 11s;
    }

    #carrouselContainer3 {
        animation-delay: -14s;
    }

    #carrouselContainer4 {
        animation-delay: -7.6s;
    }

    #cF1,
    #cF2,
    #cF3,
    #cF4,
    #cF5 {
        width: 90vh;
    }

    .controlButtonContainer {
        padding: 0;
    }

    .controlButton {
        border-radius: 3vw;
    }
}

/* content ends */