/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@300;400;500;600;700&display=swap');
/* Fonts end */

body {
    font-family: 'Work Sans', sans-serif;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.5;
    background-color: #ebffaf;
    background-image: linear-gradient(180deg, #ffffff, rgba(255, 255, 255, 0));
    color: #052837;

    height: 100vh;
    width: 100vw;
    margin: 0;
    padding: 0;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}
.main {
    display: flex;
    flex-direction: column;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    height: 100vh;
    width: 100vw;
}

h1 {
    font-size: 42px;
    font-weight: 600;
    line-height: 0.7;
    margin: 80px 0;
}

.logo img {
	width: 32rem;
}

footer {
    display: flex;
    position: fixed;
    width: 100vw;
    z-index: 1;
    bottom: 0;
    -webkit-box-pack: justify;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
}

footer h1 {
    font-size: 54px;
    font-weight: 600;
    line-height: 0.7;
    margin: 0;
    padding: 15px;
    -webkit-box-flex: 1;
    flex-grow: 1;
    text-align: center;
}

footer h2 {
    font-size: 25px;
    font-weight: 600;
    line-height: 0.7;
    margin: 0;
    padding: 15px;
    transition: opacity .1s linear;
    -webkit-transition: opacity .1s linear;
    -moz-transition: opacity .1s linear;
    -ms-transition: opacity .1s linear;
    -o-transition: opacity .1s linear;
}

footer h2:hover {
    opacity: 0.5;
}

footer h2 a {
    color: #000;
    text-decoration: none;
}

footer .line {
    -webkit-box-flex: 1;
    flex-grow: 1;
    position: relative;
}

footer .line::after {
    content: '';
    background-color: rgb(92, 0, 129);
    display: block;
    position: absolute;
    height: 2px;
    left: 15px;
    right: 15px;
    top: 55%;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    -o-border-radius: 100px;
}

/* Media queries */
@media (max-width: 1120px) {
    footer h2 {
        font-size: 18px;
    }
}

@media (max-width: 900px) {
    .logo img {
        width: 20rem;
    }

    footer h2 {
        font-size: 16px;
    }

    h1 {
        font-size: 32px;
    }
}

@media (max-width: 670px) {
    .logo img {
        width: 16rem;
    }

    .line {
        display: none;
    }

    footer {
        padding: 8px;
    }

    footer h2 {
        font-size: 14px;
    }

    h1 {
        font-size: 22px;
    }
}

@media (max-width: 580px) {
	footer {
		flex-direction: column;
	}
}
/* Media queries end */