:root {
    --color-purple: #73437d;
    --color-yellow: #f5c446;
    --color-gray: #f9f9f9;
    --color-text: #909090;
    --color-darkgrey: #c0c0c0;
    --color-pink: #a600c8;
    --color-blue: #2b2746;
}

a#scroll-top {
    position: fixed;
    background-color: var(--color-yellow);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 32pt;
    font-size: 32pt;
    font-family: sans-serif;
    transform: rotate(270deg);
    bottom: 20px;
    right: 20px;
    box-shadow: -5px 0px 10px rgba(0, 0, 0, .25);
    opacity: .5;
    text-decoration: none;
    color: var(--color-text);
}

a#scroll-top:visited {
    color: var(--color-text);
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    min-height: 100vh;
    background-image: radial-gradient(50% var(--color-purple), 50% var(--color-yellow));
    font-family: Zain;
    font-size: 16pt;
    color: var(--color-text);
}

h1,
h2 {
    line-height: 28pt;
    font-size: 32pt;
    color: var(--color-purple);
}

h3 {
    line-height: 22pt;
    font-size: 24pt;
    color: var(--color-purple);
    margin-top: 2em;
}

.wrapper {
    max-width: 990px;
    margin: 0 auto;
}

header {
    margin: 5vh 5vw;
    border-bottom: 2px solid var(--color-purple);
    background: linear-gradient(to top, var(--color-yellow) 2px,
            transparent 1px);
    text-align: center;
    padding-bottom: 5vh;
}

aside {
    margin: 5vh 5vw;
}

aside ul {
    display: flex;
    flex-wrap: wrap;
    overflow-wrap: break-word;
    max-width: 90vw;
    gap: 10px;
    ;
}

aside ul li {
    max-width: calc(50% - 10px);
}

aside ul li img {
    max-width: 100%;
}

main {
    margin: 5vh 5vw;
}

footer {
    margin: 5vh 5vw;
    text-align: center;
    border-top: solid 10px var(--color-yellow), solid 10px var(--color-purple);
    border-top: 2px solid var(--color-purple);
    background: linear-gradient(to bottom, var(--color-yellow) 2px,
            transparent 1px);
    padding-top: 5vh;
    margin-top: 20vh;
}

a.cta {
    background-color: var(--color-yellow);
    color: var(--color-purple);
    padding: 0.5rem 1rem;
    border-radius: 0.5rem;
    text-decoration: none;
    box-shadow: -5px 0px 10px rgba(0, 0, 0, .25);
    display: block;
    margin: 0;
    margin-bottom: 3rem;
    max-width: 90%;

}

header a.cta {
    margin-top: 3rem;
    margin-bottom: 0;
}

a.cta:hover {
    background-color: var(--color-purple);
    color: var(--color-yellow);
}

ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.copyright {
    margin-top: 2rem;
}

* {
    user-select: none;
}