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


:root {
    /* ___ Colors ___ */
    --Blue-200: hsl(193, 38%, 86%);
    --Green-300: hsl(150, 100%, 66%);
    --Blue-600: hsl(217, 19%, 38%);
    --Blue-900: hsl(217, 19%, 24%);
    --Blue-950: hsl(218, 23%, 16%);

    /* ___ Font ___ */
    --fontFamily: "Manrope", sans-serif;
    --fontSize: 28px;
}


body {
    width: 100vw;
    height: 100vh;
    font-family: var(--fontFamily);
}

body main {
    width: 100%;
    height: 100%;
    background-color: var(--Blue-950);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--Blue-200);
    padding: 20px;
}

main .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: var(--Blue-900);
    border-radius: 10px;
    position: relative;
    padding: 50px 30px;
    text-align: center;
    gap: 25px;
    width: 500px;
    height: fit-content !important;

    @media screen and (max-width:577px) {
        width: 100% !important;
    }

}

.container h1 {
    font-size: 12px;
    color: var(--Green-300);
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .2rem;
}

.container .text {
    font-size: 28px;
    margin-bottom: 20px;
    font-weight: bold;
}

.container .divider {
    width: 100%;
    height: 30px;
    background-image: url("../images/pattern-divider-desktop.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: flex;
    align-items: center;
    justify-content: center;

    @media screen and (max-width:577px) {
        background-image: url('../images/pattern-divider-mobile.svg');
    }
}

.container .btn {
    position: absolute;
    left: 50%;
    bottom: -30px;
    transform: translate(-50%, 0);
    background-color: var(--Green-300);
    border-radius: 50%;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    cursor: pointer;

    img {
        width: 1.3rem;
    }

    &:hover {
        box-shadow: 0 0 20px var(--Green-300);
    }
}




/* ______ Attribution ______ */
.attribution {
    text-align: center;
    padding: 10px;
    margin-top: 50px;
    align-items: center;
    display: flex;
    justify-content: center;
    gap: 5px;
    z-index: 1;

    @media screen and (max-width:577px) {
        flex-direction: column;
    }

}

.attribution p {
    font-size: 14px;
    margin-bottom: 5px;
}

.attribution a {
    color: var(--Green-300);
    text-decoration: none;
    text-transform: capitalize;
    opacity: .8;
    transition: all .3s ease;

    &:hover {
        opacity: 1;
        font-weight: bolder;
    }

}