@import url('https://fonts.googleapis.com/css2?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=Turret+Road:wght@200;300;400;500;700;800&display=swap');

* { box-sizing: border-box; }
body { background: #F6F5F7; display: flex; justify-content: center; align-items: center; flex-direction: column; font-family: 'Poppins'; height: 100vh; margin: -20px 0 50px; }
h1 { font-weight: 600; margin: 0; }
h2 { text-align: center; }
p { font-size: .85rem; font-weight: 200; line-height: 1.25rem; letter-spacing: 0.5px; margin: 20px 0 30px; }
span { font-size: .75rem; }
a { color: #333333; font-size: .85rem; text-decoration: none; margin: 15px 0; }
button {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    border: 1px solid #27CDA7;
    background-color: #27CDA7;
    color: #FFFFFF;
    font-size: .75rem;
    font-weight: 500;
    padding: 0.75rem 2.8rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: all .25s ease-in;
    -webkit-transition: all .25s ease-in;
    -moz-transition: all .25s ease-in;
    -ms-transition: all .25s ease-in;
    -o-transition: all .25s ease-in;
    cursor: pointer;
}
    button:hover { background-color: #37DFB8; }
    button:active { transform: scale(.95); -webkit-transform: scale(.95rem); -moz-transform: scale(.95); -ms-transform: scale(.95); -o-transform: scale(.95); }
    button:focus { outline: none; }
    button.ghost { background-color: transparent; border-color: #FFFFFF; }
form { background-color: #FFFFFF; display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 0 50px; height: 100%; text-align: center; }
input { background-color: #EEEEEE; border: none; padding: 12px 15px; margin: 8px 0; width: 100%; }
.container {
    background-color: #FFFFFF;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    box-shadow: 0 14px 28px rgba(0, 0, 0, .25), 0 10px 10px rgba(0, 0, 0, .22);
    position: relative;
    overflow: hidden;
    width: 768px;
    max-width: 100%;
    min-height: 400px;
}
.form-container {
    position: absolute;
    top: 0;
    height: 100%;
    transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
}
.login-container { left: 0; width: 50%; z-index: 2; }
.container.right-panel-active .login-container { 
    transform: translateX(100%); 
    -webkit-transform: translateX(100%); 
    -moz-transform: translateX(100%); 
    -ms-transform: translateX(100%); 
    -o-transform: translateX(100%);
}
.signup-container { left: 0; width: 50%; opacity: 0; z-index: 1; }
.container.right-panel-active .signup-container {
    transform: translateX(100%); 
    -webkit-transform: translateX(100%); 
    -moz-transform: translateX(100%); 
    -ms-transform: translateX(100%); 
    -o-transform: translateX(100%);
    opacity: 1;
    z-index: 5;
    animation: show .5s;
    -webkit-animation: show .5s;
}
.social-container { margin: 20px 0; }
    .social-container a {
        border: 1px solid #DDDDDD;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 5px;
        height: 40px;
        width: 40px;
    }

@keyframes show { 
    0%, 49.99% { opacity: 0; z-index: 1; }
    50%, 100% { opacity: 1; z-index: 5; }
}

.overlay-container {
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    height: 100%;
    overflow: hidden;
    transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    z-index: 100;
}
.container.right-panel-active .overlay-container{
    transform: translateX(-100%); 
    -webkit-transform: translateX(-100%); 
    -moz-transform: translateX(-100%); 
    -ms-transform: translateX(-100%); 
    -o-transform: translateX(-100%);
}
.overlay { 
    background: linear-gradient(to right, #37DFB8, #E87B37, #E8375A);
    background-size: cover;
    background-position: 0 0;
    color: #FFFFFF;
    position: relative;
    left: -100%;
    height: 100%;
    width: 200%;
    transform: translateX(0); 
    -webkit-transform: translateX(0); 
    -moz-transform: translateX(0); 
    -ms-transform: translateX(0); 
    -o-transform: translateX(0);
    transition: transform .5s ease-in-out;
    -webkit-transition: transform .5s ease-in-out;
    -moz-transition: transform .5s ease-in-out;
    -ms-transition: transform .5s ease-in-out;
    -o-transition: transform .5s ease-in-out;
}
    .container.right-panel-active .overlay {
        transform: translateX(50%); 
        -webkit-transform: translateX(50%); 
        -moz-transform: translateX(50%); 
        -ms-transform: translateX(50%); 
        -o-transform: translateX(50%);
    }
.overlay-panel {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 0 40px;
    text-align: center;
    top: 0;
    height: 100%;
    width: 50%;
    transform: translateX(0); 
    -webkit-transform: translateX(0); 
    -moz-transform: translateX(0); 
    -ms-transform: translateX(0); 
    -o-transform: translateX(0);
    transition: transform .5s ease-in-out;
    -webkit-transition: transform .5s ease-in-out;
    -moz-transition: transform .5s ease-in-out;
    -ms-transition: transform .5s ease-in-out;
    -o-transition: transform .5s ease-in-out;
}
.overlay-left {
    transform: translateX(-20%); 
    -webkit-transform: translateX(-20%); 
    -moz-transform: translateX(-20%); 
    -ms-transform: translateX(-20%); 
    -o-transform: translateX(-20%);
}
    .container.right-panel-active .overlay-left {
        transform: translateX(0); 
        -webkit-transform: translateX(0); 
        -moz-transform: translateX(0); 
        -ms-transform: translateX(0); 
        -o-transform: translateX(0);
    }
.overlay-right {
    right: 0;
    transform: translateX(0); 
    -webkit-transform: translateX(0); 
    -moz-transform: translateX(0); 
    -ms-transform: translateX(0); 
    -o-transform: translateX(0);
}
    .container.right-panel-active .overlay-right {
        transform: translateX(20%); 
        -webkit-transform: translateX(20%); 
        -moz-transform: translateX(20%); 
        -ms-transform: translateX(20%); 
        -o-transform: translateX(20%);
    }

@media(max-width: 730px) {
    h1 { font-size: 1.2rem;}
}