@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Kumbh+Sans:wght@100..900&family=Libre+Franklin:ital,wght@0,100..900;1,100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Rubik:ital,wght@0,300..900;1,300..900&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');
*{
    margin:0;
    padding:0;
    font-family: "Poppins", sans-serif;
}
:root{
--Red: hsl(0, 100%, 74%);
--Green: hsl(154, 59%, 51%);
--Blue: hsl(248, 32%, 49%);
--DarkBlue: hsl(249, 10%, 26%);
--GrayishBlue: hsl(246, 25%, 77%);
}
h1{
    font-size:3.1rem;
    font-weight:600;
    width:35rem;
    position: relative;
    top:-2.2rem;
    line-height:3.5rem;
    color:white;
}
h2{
    font-size:1rem;
    font-weight:400;
    width:31rem;
    color:white;
    line-height:1.7rem;
    position: relative;
    top:-0.5rem;
}
#row{
    position: relative;
    top:14rem;
}
#first-btn{
    position: relative;
    top:1rem;
    border:0;
    width:34.5rem;
    border-radius:8px;
    padding-top:1.4rem;
    padding-bottom:1.4rem;
    padding-left:7rem;
    padding-right:7rem;
    background-color: var(--Blue);
    color:white;
}
#firstcolor{
    font-weight:700;
}
#second-wrapper{
    display: flex;
    flex-direction: column;
    gap:0.8rem;
    position: relative;
    top:2rem;
}
#first-name,#last-name,#gmail,#passkey{
    border-radius:8px;
    padding-top:1rem;
    border-style:solid;
    padding-bottom:1rem;
    padding-left:1.3rem;
    width:25.5rem;
    padding-right:1.3rem;
    border-width:1px;
    font-size:1rem;
}
#second-btn{
    border-radius:8px;
    padding-top:1.1rem;
    padding-bottom:1.1rem;
    padding-left:3rem;
    padding-right:3rem;
    position: relative;
    top:-0.1rem;
    border:0;
    font-weight:600;
    width:28.5rem;
    background-color: var(--Green);
    color:white;
}
h3{
    font-size:0.8rem;
    font-weight:400;
    position: relative;
    top:-0.4rem;
}
#errorstateone,#errorstatetwo,#errorstatethree,#errorstatefour{
    height:1rem;
    float:right;
    position: relative;
    top:-2.5rem;
    display:none;
    right:2.5rem;
}
#colorchangered{
    color:var(--Red);
}
p{
    text-align: end;
    position: relative;
    top:-0.3;
    color:var(--Red);
    font-weight:300;
}
body{
    background-image:url(images/bg-intro-desktop.png);
    background-color: var(--Red);
    display: flex;
    align-items: center;
    justify-content: center;
    height:100vh
}
#second-wrapper{
    border-style: solid;
    padding:3rem;
    width:28.5rem;
    border-radius:8px;
    border:0;
    height:22rem;
    background-color:white;
}
#container{
    display: flex;
    flex-direction:row;
}
@media (max-width:1130px) {
    h1{
        font-size:2.5rem;
        width:25rem;
        position: relative;
        top:-1.6rem;
    }
    h2{
        font-size:0.8rem;
        line-height:1.3rem;
        position: relative;
        top:-0.2rem;
        width:20rem;
    }
    #first-btn{
        width:22rem;
        padding-left:1rem;
        padding-right:1rem;
    }
    #first-name,#last-name,#gmail,#passkey{
        width:15rem;
    }
    #second-btn{
        width:18rem;
    }
    #second-wrapper{
        width:18rem;
        padding:2rem;
        height:24rem;
    }
    h3{
        font-size:0.7rem;
    }
    #fname-valid,#lname-valid,#email-valid,#pass-valid{
        font-size:0.8rem;
        font-weight:400;
    } 
}
@media (max-width:780px) {
    #container{
        display: flex;
        flex-direction:column;
        align-items: center;
        justify-content: center;
        margin-top:25rem;
        padding-bottom:5rem;
    }
    h1{
        font-size:2rem;
        width:25rem;
        position: relative;
        top:-15rem;
        line-height:2.3rem;
        text-align: center;
    }
    h2{
        font-size:0.8rem;
        line-height:1.3rem;
        position: relative;
        top:-14rem;
        left:2.5rem;
        text-align: center;
    }
}
@media (max-width:400px) {
    h1{
        width:90vw;
    }
    body{
        background-image:url(images/bg-intro-mobile.png);
        background-repeat: no-repeat;
        background-size: cover;
    }
    h2{
        width:90vw;
        left:0.1rem;
    }
    #first-btn{
        width:92vw;
        font-size:0.7rem;
    }
    #first-btn:active{
        box-shadow: 0 5px #666;
        transform: translateY(4px);
    }
    #second-btn:active{
        box-shadow: 0 5px #666;
        transform: translateY(4px);
    }
    #second-wrapper{
        width:74vw;
        gap:1.5rem;
        height:26rem;
    }
    #second-btn{
        width:74vw;
        font-size:0.7rem;
    }
    #first-name,#last-name,#gmail,#passkey{
        width:62vw;
    }
    h3{
        width:75vw;
    }
}