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


:root {
    /* ___ Colors ___ */
    --Blue-600: hsl(185, 75%, 39%);
    --Navy-950: hsl(229, 23%, 23%);
    --Gray-500: hsl(227, 10%, 46%);
    --Gray-100: hsl(225, 10%, 92%);

    /* ___ Font ___ */
    --fontFamily: "Kumbh Sans", sans-serif;
    /* Font size (name and stats): 18px */
    --fontSize: 18px;
}

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

/* ___ Main ___ */
main {
    width: 100%;
    height: 100%;
    background-color: var(--Blue-600);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    padding: 20px;



    &::before,
    &::after {
        content: "";
        position: absolute;
        background-image: url('../images/bg-pattern-top.svg');
        width: 100%;
        height: 100%;
        border-radius: 50%;
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
    }

    &::before {
        left: -30%;
        top: -50%;
    }

    &::after {
        background-image: url("../images/bg-pattern-bottom.svg");
        right: -30%;
        bottom: -50%;
    }
}

main .profile-card {
    background-color: #fff;
    z-index: 1;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 400px;

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

.profile-card .pattern {
    width: 100%;
    height: 130px;
    background-image: url("../images/bg-pattern-card.svg");
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: inherit;
    border-end-end-radius: 0;
    border-end-start-radius: 0;
    position: relative;
    margin-bottom: 50px;

    img {
        position: absolute;
        left: 50%;
        bottom: -50px;
        width: 100px;
        height: 100px;
        border: 5px solid var(--Gray-100);
        border-radius: 50%;
        transform: translate(-50%, 0);

    }
}

.info {
    font-size: var(--fontSize);
    text-align: center;
    margin: 20px 0;

    p {
        margin-top: 10px;
    }

    .name {
        color: var(--Navy-950);
        font-weight: bold;
    }

    .age {
        color: var(--Gray-500);
        margin-left: 10px;
    }

    .location {
        color: var(--Gray-500);
        font-size: 14px;
    }

}

.stats {
    border-top: 2px solid var(--Gray-100);
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    width: 100%;
    padding: 20px;
    text-align: center;

    p {
        font-size: 14px;
        color: var(--Gray-500);
    }

    .num {
        color: var(--Navy-950);
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 5px;
    }
}


/* ______ Attribution ______ */
.attribution {
    text-align: center;
    padding: 10px;
    margin-top: 10px;
    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(--Gray-100);
    text-decoration: none;
    text-transform: capitalize;
    opacity: .8;
    transition: all .3s ease;

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

}