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

:root {
    --blue-500: hsl(215, 51%, 70%);
    --cyan-400: hsl(178, 100%, 50%);
    --blue-950: hsl(217, 54%, 11%);
    --blue-900: hsl(216, 50%, 16%);
    --blue-800: hsl(215, 32%, 27%);
    --white: hsl(0, 0%, 100%);
}
.fw-300 { font-weight: 300; }
.fw-400 { font-weight: 400; }
.fw-600 { font-weight: 600; }

.attribution { text-align: center; color: var(--blue-800);}
.attribution a { color: hsl(228, 45%, 44%); text-decoration: none; color: var(--blue-500);}

body {
    font-size: 18px;
    background-color: var(--blue-950);
    font-family: 'Outfit', sans-serif;
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 400px;
    padding: 20px;
    background-color: var(--blue-900);
    border-radius: 16px;
}

.image-wrapper {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
}

.image-wrapper img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 16px;
}

.overlay {
    position: absolute;
    inset: 0;
    background-color: hsl(178, 100%, 50%, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.overlay img {
    width: 50px;
    height: 50px;
}

.image-wrapper:active .overlay {
    opacity: 1;
}


h1 {
    font-size: 24px;
    margin: 20px 0;
    color: var(--white);
    cursor: pointer;
}

h1:active {
    color: var(--cyan-400);
}

.main-p {
    margin-bottom: 20px;
}

.main-p, .p-days {
    color: var(--blue-500);
}

.p-eth {
    color: var(--cyan-400);
}

.main-div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 20px;
}

.div-eth {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.div-eth img {
    width: 15px;
    margin-right: 10px;
}

.div-days {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.div-days img {
    width: 20px;
    margin-right: 10px;
}

hr {
    width: 100%;
    height: 1px;
    color: var(--blue-500);
}

.div-avatar {
    display: flex;
    align-items: center;
    justify-content: start;
    width: 100%;
    margin-top: 20px;
    color: var(--blue-500)
}

.div-avatar img {
    width: 40px;
    height: auto;
    border-radius: 50%;
    border: solid var(--white) 1px;
    margin-right: 20px;
}

.div-avatar a {
    color: var(--white);
    text-decoration: none;
}

.div-avatar a:active {
    color: var(--cyan-400);
    cursor: pointer;
}

footer {
    text-align: center;
    margin-top: 30px;
}

@media screen and (max-width: 768px) {
    main {
        margin-top: 80px;
    }
}

@media screen and (max-width: 425px) {
    main {
        margin-top: 40px;
        width: 370px;
    }
    footer {
        font-size: 15px;
    }
}

@media screen and (max-width: 375px) {
    main {
        margin-top: 20px;
        width: 330px;
    }
    h1 {
        font-size: 20px;
    }
    .main-p, .p-days, .p-eth, .div-avatar p {
        font-size: 15px;
    }
    .div-eth img {
        width: 11px;
        margin-right: 5px;
    }
    .div-days img {
        width: 15px;
        margin-right: 5px;
    }
    footer {
        font-size: 13px;
    }
}

@media screen and (max-width: 320px) {
    main {
        width: 280px;
    }
    h1 {
        font-size: 18px;
    }
    .main-p, .p-days, .p-eth, .div-avatar p {
        font-size: 13px;
    }
    .div-eth img {
        width: 10px;
    }
    .div-days img {
        width: 14px;
    }
    footer {
        font-size: 12px;
    }
}