/* General Style */

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

body {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    flex-direction: column;
    background-color: hsl(235, 18%, 26%)
}

/* Text style */

@font-face {
    font-family: 'roboto';
    src: url('assets/fonts/Roboto-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'boltRoboto';
    src: url('assets/fonts/Roboto-Bold.ttf') format('truetype');
}

/* Cards style */

.container {
    background-color: hsl(0, 0%, 100%);
    border-radius: 20px;
    box-shadow: 0 15px 30px 1px rgb(14, 13, 13);
}

/* Preview Card Style */

.card {
    display: flex;
    margin: 1.5em;
    max-width: 760px;
}

.card-content {
    margin: 2em 3.5em 2em 2em;
}

.card-title {
    font-family: 'boltRoboto', sans-serif;
    font-size: 49px;
    margin-bottom: 0.5em;
}

.card-text {
    font-size: 14px;
    font-family: 'roboto', sans-serif;
    margin-bottom: 2em;
}

.card-features {
    margin: 2em 0em 3em 0.5em;
}

.card-features ul {
    list-style-position: inside;
    list-style-type: none;
    margin: 0;
}

.card-features ul li {
    position: relative;
    margin: 1em 0;
    display: flex;
    align-items: center;
}

.card-features ul li::before {
    content: url(./assets/images/icon-list.svg);
    height: 20px;
    width: 20px;
    transform: translatex(-50%);
}

.email-text {
    font-family: 'boltRoboto', sans-serif;
    font-size: 12px;
    margin-bottom: 0.7em;
}

/* Input and Button Style */

.card-inputBox,
.card-button {
    height: 50px;
    width: 100%;
    border-radius: 10px;
    border: 1px solid hsl(231, 7%, 60%);
    margin-bottom: 1.5em;
}

form input {
    padding: 1.5em;
}

.validation-email {
    display: flex;
    justify-content: space-between;
}

.valid-emailInput {
    font-family: 'Roboto', sans-serif;
    font-size: 12px;
    color: hsl(4, 100%, 67%);
}

.invalid-box {
    height: 50px;
    width: 100%;
    border-radius: 10px;
    background-color: hsl(4, 81%, 92%);
    border: 1px solid hsl(4, 100%, 67%);
    color: hsl(4, 100%, 67%);
    margin-bottom: 1.5em;
}

.card-button {
    background-color: hsl(234, 29%, 20%);
    color: hsl(0, 0%, 100%);
    border: transparent;
    cursor: pointer;
}

.card-button:hover {
    background: linear-gradient(90deg, rgba(221, 14, 91, 1) 4%, rgba(241, 118, 47, 1) 40%, rgba(255, 98, 87, 1) 78%);
    color: hsl(0, 0%, 100%);
}

/* Preview Image Style */

.card-image {
    max-height: 520px;
    width: 350px;
}

.card-ilustration {
    max-height: 100%;
    content: url(./assets/images/illustration-sign-up-desktop.svg);
}

/* Success card Style */

.success-card-continer {
    display: block;
    margin: 3em 3em 1.5em 3em;
    max-width: 330px;
}

.success-icon {
    margin-bottom: 2em;
}

/* Footer style */

.attribution {
    font-size: 12px;
    text-align: center;
    margin: 2em;
    color: hsl(231, 7%, 60%);
}

.attribution a {
    color: hsl(228, 56%, 58%);
}

/* Responsive Style */

@media screen and (max-width: 768px) {
    .container {
        border-radius: 0px;
    }

    .card {
        margin: 0px;
        max-width: 374px;
    }

    .card-content {
        padding-top: 18em;
        margin-right: 2em;
    }

    .card-title {
        font-size: 46px;
    }

    .card-image {
        position: absolute;
    }

    .card-ilustration {
        content: url(./assets/images/illustration-sign-up-mobile.svg);
    }
}

@media screen and (max-width: 375px) {
    .card-content {
        padding-top: 16em;
    }

    .card-title {
        font-size: 40px;
    }

    .card-image,
    .card-ilustration {
        max-width: -webkit-fill-available;
    }
}