@font-face {    
    font-family: Jose Thin;
    src: url('./../fuente/JosefinSans-Thin.ttf');
}

@font-face {
    font-family: Josefin Sans;
    src: url('./../fuente/JosefinSans-Regular.ttf');
}

.attribution { 
    font-size: 11px; text-align: center; 
}

.attribution a { 
    color: hsl(228, 45%, 44%); 
}

body {
    font-family: Josefin Sans;     
    background-image: url('./../images/bg-pattern-desktop.svg'), url('./../images/hero-desktop.jpg');  
    background-repeat: no-repeat, no-repeat;
    background-position: left 0 top 0, right -1vw top -1vh;
    background-size: 61vw 100vh, 40vw 102vh;       
}

main {
    width: 50vw;
    margin-top: 4vh;
    margin-left: 10vw;
}

section {
    margin-top: 10vh;
}

.imagen-user {
    width: 400px;
}

.logo {
    margin-left: 0vw;
    margin-top: 5vh;
}

.pink {
    font-family: Jose Thin;    
    font-size: 60px;    
    color: hsl(0, 36%, 70%);
    font-weight: 600;
    letter-spacing: 1vw;
}

.black {
    font-family: Josefin Sans;
    font-size: 50px;
    letter-spacing: 2vw;
    font-weight: 800;
}

.parrafo {
    width: 30vw;
    color: hsl(0, 36%, 70%);    
}

footer {    
    margin-top: 18vh;
}

.email input {
    height: 40px;
    width: 30vw;
    font-family: Josefin Sans;  
    border-radius: 20px; 
    border: 1px solid hsl(0, 36%, 70%); 
    font-size: 18px;    
    padding-left: 20px;    
    outline:none !important;         
}

.error {
    background-image: url('./../images/icon-error.svg');
    background-repeat: no-repeat;        
    background-position: top 2vh left 27vw;
}

.email {
    margin-top: 5vh;
}

.email input::-webkit-input-placeholder { 
    color: hsl(0, 36%, 70%);     
} 

.email input:focus {                 
    font-size: 18px;         
    padding-left: 20px; 
    border: 1px solid hsl(0, 70%, 56%);
}

button {
    cursor: pointer;
    position: absolute;
    margin-left: -5vw;
    margin-top: 0;
    background-image: linear-gradient(to left , hsl(0, 60%, 72%), hsl(0, 36%, 70%));
    height: 44px;
    width: 80px;
    border-radius: 25px;
    border: 0;
    box-shadow: 0 7px 10px hsl(0, 36%, 70%); 
    outline: none;   
}

button:active {
    background-image: linear-gradient(to left , hsl(0, 29%, 73%), hsl(0, 20%, 73%));
}

#respuesta {
    font-size: 12px;
    margin-top: 1vh;
    margin-left: 2vw;
    color: hsl(0, 70%, 56%);
}

.right {
    margin-left: -2vw;
}




@media screen and (max-width: 590px){

    body {        
        background-image: url('./../images/hero-mobile.jpg');  
        background-repeat: no-repeat;
        background-position: right 0vw top 15vh;
        background-size: 100vw 60vh; 
    }

    section {
        margin-top: 70vh;
    }

    article {
        width: 80vw;
        text-align: center;               
    }

    .pink {
        font-family: Jose Thin;    
        font-size: 40px;    
        color: hsl(0, 36%, 70%);
        font-weight: 600;
        letter-spacing: 1vw;         
    }
    
    .black {
        font-family: Josefin Sans;
        font-size: 40px;
        letter-spacing: 2vw;
        font-weight: 800;
    }
    
    .parrafo {
        width: 80vw;
        color: hsl(0, 36%, 70%);    
    }

    .email {
        width: 75vw;
    }

    .email input {
        height: 40px;
        width: 65vw;
        font-family: Josefin Sans;  
        border-radius: 20px; 
        border: 1px solid hsl(0, 36%, 70%); 
        font-size: 14px;    
        padding-left: 20px;    
        outline:none !important;         
    }

    .email input:focus {                 
        font-size: 14px;         
        padding-left: 20px; 
        border: 1px solid hsl(0, 70%, 56%);
    }

    .error {
        background-image: url('./../images/icon-error.svg');
        background-repeat: no-repeat;        
        background-position: top 2vh left 61vw;
    }

    button {
        cursor: pointer;
        position: absolute;
        margin-left: -10vw;
        margin-top: 0;
        background-image: linear-gradient(to left , hsl(0, 60%, 72%), hsl(0, 36%, 70%));
        height: 44px;
        width: 60px;
        border-radius: 25px;
        border: 0;
        box-shadow: 0 7px 10px hsl(0, 36%, 70%); 
        outline: none;   
    }    
    
    .right {
        margin-left: -3vw;
    }

    footer {    
        margin-top: 18vh;
        width: 70vw;
    }
    
}
