@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@100;400&display=swap');

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

@font-face {
    font-family: EmperorTen;
    src: url(../../fonts/emperorten-regular.ttf);
}

@font-face {
    font-family: ArcadeClassic;
    src: url(../../fonts/arcade-classic.TTF);
}

@font-face {
    font-family: Helvetica;
    src: url(../../fonts/Helvetica.ttf);
}

button {
    background: none;
    outline: none;
    border: none;
}

.page-container {
    position: relative;
    padding: .8rem 1.2rem 1.8rem;
    display: flex;
    gap: 1rem;
    flex-direction: column;
}

.back-btn-wrapper {
    width: max-content;
    height: max-content;
    border-radius: 50%;
    z-index: 10;
    transition: .4s;
}

.back-btn-wrapper svg:hover {
    box-shadow: 2px 2px 50px #08f21e,
    -2px 2px 50px #08f21e,
    2px -2px 50px #08f21e,
    -2px -2px 50px #08f21e;
}

.back-btn-wrapper svg {
    transition: .4s;
    border-radius: 50%;
    width: 10vw;
    height: 10vw;
    max-width: 28px;
    max-height: 28px;
}

.page-container .text-container {
    display: flex;
    gap: .8rem;
    min-height: max-content;
    flex-direction: column;
}

.page-container .text-container span {
    font-family: ArcadeClassic, serif;
    font-weight: bold;
    letter-spacing: .1rem;
    line-height: 1.8rem;
    font-size: 2.2rem;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-text-fill-color: transparent;
    -webkit-text-stroke-width: calc(1px / 2);
    -webkit-text-stroke-color: black
}

.page-container .text-container .line1-container .line1 {
    background-image: linear-gradient(to bottom, #e308f7 , #c429db);
}

.page-container .text-container .line2-container .line2 {
    background-image: linear-gradient(to bottom, #8c65a8 , #599c7a);
}

.page-container .text-container .line3-container .line3 {
    background-image: linear-gradient(to bottom, #22d648 , #03f72c);
}

.page-container .text-container .text-content {
    font-family: "IBM Plex Sans", sans-serif;
    font-weight: bold;
    font-size: 15px;
}

.page-container .images-container {
    height: max-content;
    position: relative;
}

.show-image {
    opacity: 1 !important;
    transform: scale(1) !important;
}

.page-container .image-container {
    opacity: 0;
    transform: scale(0);
    position: absolute;
    transition: .2s;
    z-index: 0;
}

.page-container .l1-container {
    width: 80%;
    right: 0;
}

.page-container .l2-container {
    width: 100%;
    top: 20%;
    right: -1%;
}

.page-container .l3-container {
    width: 100%;
    top: -2%;
    left: -4%;
}

.page-container .l4-container {
    width: 98%;
    top: 20%;
    left: 0;
}

.page-container .l5-container {
    width: 85%;
    top: 10%;
    left: 0;
}

.page-container .l6-container {
    width: 65%;
    top: -10%;
    left: 0;
}

.page-container .l7-container {
    width: 65%;
    top: 5%;
    left: 20%;
}

.btn-container {
    text-align: center;
    width: 100%;
    position: absolute;
    bottom: -35vw;
    left: 50%;
    transform: translateX(-50%);
}

.btn-container .btn-wrapper {
    width: 25%;
    max-width: 160px;
    border-radius: 50%;
    transition: .3s;
}


.btn-container .btn-wrapper:hover {
    box-shadow: 2px 2px 50px #08f21e,
    -2px 2px 50px #08f21e,
    2px -2px 50px #08f21e,
    -2px -2px 50px #08f21e;
}

.btn-container h1 {
    font-family: ArcadeClassic, sans-serif;
    color: #08f21e;
    font-weight: 700;
    letter-spacing: 3px;
}

@media only screen and (min-width: 787px) {

    .page-container {
        padding: 2rem 3.6rem;
    }

    .page-container .text-container span {
        font-size: 2.6rem;
        line-height: 2.2rem ;
    }

    .page-container .text-container .text-content {
        font-size: 1.3rem;
        line-height: 1.3rem;
        font-weight: 500;
    }

    .btn-container {
        bottom: -25vw;
        z-index: 50;
    }

    .page-container .images-container {
        width: 90%;
        margin: 0 auto;
    }

    .page-container .l1-container {
        width: 70%;
    }

    .page-container .l2-container {
        width: 95%;
        top: 25%;
    }

    .page-container .l3-container {
        width: 75%;
        top: -2%;
        left: -1%;
    }

    .page-container .l4-container {
        width: 80%;
        top: 30%;
        left: 5%;
    }

    .page-container .l5-container {
        width: 85%;
        top: 20%;
        left: 2%;
    }

    .page-container .l6-container {
        width: 65%;
        top: -10%;
        left: 0;
    }
}

@media only screen and (min-width: 1080px) {
    .page-container {
        flex-direction: row;
        min-height: 100vh;
    }

    .page-container .text-container {
        gap: 1vw;
        padding-right: 5rem;
    }

    .back-btn-wrapper svg {
        max-width: 36px;
        max-height: 36px;
    }

    .page-container .text-container, .page-container .images-container {
        flex: 1 1 0;
    }

    .page-container {
        padding: .4vw 3.4vw 1.6vw;
    }

    .page-container .text-container span {
        font-size: 3vw;
        line-height: 2.4vw;
    }

    .page-container .text-container .text-content {
        font-size: 1.2vw;
        line-height: 1.1vw;
        font-weight: 600;
    }

    .btn-container {
        bottom: 0;
        z-index: 50;
    }

    .btn-container .btn-wrapper {
        max-width: 9vw;
    }

    .page-container .l1-container {
        width: 70%;
    }

    .page-container .l2-container {
        width: 100%;
        top: 25%;
        right: -5%;
    }

    .page-container .l3-container {
        width: 95%;
        top: -2%;
        left: -30%;
    }

    .page-container .l4-container {
        width: 95%;
        top: 30%;
        left: 1%;
    }

    .page-container .l5-container {
        width: 90%;
        top: 20%;
        left: -20%;
    }

    .page-container .l6-container {
        width: 65%;
        top: -10%;
        left: -25%;
    }

    .page-container .l7-container {
        width: 65%;
        top: 0;
        left: 0;
    }

    .btn-container h1 {
        font-size: 3.2vw !important;
    }
}

@media only screen and (min-width: 1080px) and (min-aspect-ratio: 21/10) {
    .page-container {
        padding: 1.2vw 3vw;
    }

    .page-container .text-container .text-content {
        font-size: 1.1vw;
        line-height: 1.1vw;
        padding-right: 2.5rem;
    }
}

@media only screen and (min-width: 1540px) {
    .back-btn-wrapper svg {
        max-width: 48px;
        max-height: 48px;
    }

    .page-container .text-container {
        padding-right: 8rem;
    }
}