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

/* Global style */
body {
    background-image: linear-gradient(135deg, hsl(0, 0%, 100%), hsl(0, 43%, 95%));
    background-repeat: no-repeat;
    min-width: 375px;
    height: 100%;
    overflow: hidden;
}
.main {
    width: 100%;
    height: 100vh;
    /* max-width: 500px; */
    margin-left: auto;
    margin-right: auto;
    /* background-color: ; */
    font-size: 16px;
    font-family: 'Josefin Sans', sans-serif;
    padding-bottom: 20px;


}

/* header style */

.logo {
    padding: 20px;
    padding-left: 40px;
    min-width: 90%;
    margin-left: auto;
    margin-right: auto;
}

/* Content style */

.soon-email {
    margin: 0 auto;
    padding: 30px;
    min-width: 375px;
    max-width: 620px;
    
}

/* .attribution {
    margin: 0;
    position: relative;
    z-index: 50;
    margin-top: 20px;
} */

h1 {
    font-size: 30px;
    letter-spacing: 5px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    width: min(200px, 100%);
    text-align: center;
    text-transform: uppercase;
}

.soon-email span:first-child {
    font-weight: 300;
    color: hsl(0, 36%, 70%)
}

.content, label{
    color: hsl(0, 36%, 70%);
}

.content {
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20px;
    width: 100%;
    max-width: 400px;
    /* padding-left: 40px;
    padding-right: 40px; */
    line-height: 20px;
    font-size: 15px;
}

/* inpute and label style */
.buttonInput {
    display: flex;
    flex-direction:row;
}

#email {
    display: block;
    width: 100%;
    height: 50px;
    border-radius: 25px;
    border: 1px hsl(0, 36%, 70%) solid;
    margin-left: auto;
    margin-right: auto;
    /* margin-bottom: 30px; */
    background-color: transparent;
    flex-grow:2;
    padding-left: 20px;
}

#email::-webkit-input-placeholder {
    color: hsl(0, 36%, 70%);
    padding-left: 10px;
    font-weight: 300;
}

/* button Input style */

button {
    margin-left: -50px;
    width: 75px;
    height: 50px;
    border-radius: 25px;
    border: 1px hsl(0, 36%, 70%) solid;
    /* background-color: hsl(0, 72%, 73%); */
    background-image: linear-gradient(135deg, hsl(0, 80%, 86%), hsl(0, 74%, 74%));
    /* position: relative; */
}

.image {
    width: 100%;
    min-width: 375px;
    height: 250px;
    background: url("images/hero-mobile.jpg");
    background-size: cover;
    background-repeat: no-repeat;
}

.background-image {
    display: none;
}

#email:focus {
    outline: none !important;
    border: 2px red solid;
}

.error {
    align-self: center;
    /* position: absolute;
    left: 66%; */
    position:absolute;
    left: 65%;
    display: none;
    /* margin-left: -1150px; */
}

.shown {
        
    display: block;
}

.error-message {
    color: red;
    margin-top: 10px;
    font-size: 10px;
    padding-left: 30px;
}

@media (min-width: 900px) {
    .grid-container{
        display: grid;
        width: 100%;
        height: 100vh;
        grid-template-columns: 1.4fr 1.2fr;
        grid-template-rows: repeat(6, auto);
        /* grid-template-areas: 
        "logo logo image"
        "header header image"
        "header header image"
        "content content image"
        "button button image"; */
}

    .soon-email {
        grid-column: 1/2;
        grid-row: 2/6;
        margin: 0;
        padding: 0;
        width: 80%;
        /* padding-left: 55px; */
        text-align: left;
        padding-left: 100px;

        position: relative;
        z-index: 10;
    }


    .logo {
        margin: 0;
        padding: 0;
        padding-left: 100px;
        padding-top: 40px;
        position: relative;
        z-index: 100;
        margin-top: 15px;
    }

    h1 {
        margin: 0;
        margin-bottom: 40px;
        margin-top: 100px;
        text-align: left;
        font-size: 70px;
    }

    .content {
        text-align: left;
        margin: 0;
        font-size: 15px;
        max-width: 400px;
    }

    .image {
        display: none;
    }

    .desktop-image {
        background-image: url("images/hero-desktop.jpg");
        width: 100%;
        background-size: cover;
        grid-column: 2/4;
        grid-row: 1/-1;
        background-repeat: no-repeat;
        position: relative;
        z-index: 10;
    }

    .buttonInput {
        margin-top: 30px;
    }

    #email{
        margin: 0;
        max-width: 340px;
        /* justify-content: flex-start; */
    }

    button {
        width: 90px;
        margin-left: -50px;
    }
/* 
    .buttonInput {
        margin-left: 0;
        
    } */

    .background-image {
        display: block;
        position: absolute;
        z-index: 0;
        /* top: 10px; */
        /* left: -0px; */
    }

    .error {
        /* width: 50px;
        height: 50px;
        background-color: red; */
        align-self: center;
        margin-left: -130px;
        position:static;
        display: none;
    
    }

    .shown {
        
        display: block;
    }

}