@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@200;400;600;700&display=swap");

:root {
    --clr-bg-main: #ebeef7;
    --clr-bg-box: #ffffff;
    --clr-bg-quote: #102451;
    --clr-bg-quote-hover: #0f1396;
    --clr-text-main: #bebebe;
    --clr-text-headline: #131125;
    --clr-text-link: #a0a4e3;
    --clr-accent: #93f8e0;
  }

* {
  box-sizing: border-box;
}

body {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 14px;
  color: var(--clr-text-main);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  margin: 0;
  background-color: var(--clr-bg-main);
  overflow: hidden;
}

h1 {
  font-size: 2.5em;
  color: var(--clr-text-headline);
  font-weight: 700;
  margin: 0;
}

p {
  line-height: 180%;
}

.login-box {
  display: flex;
  height: 100vh;
  min-height: 60em;
  background-color: var(--clr-bg-box);
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.025);
  width: 100%;
}

.login-box-formbox,
.login-box-quotebox {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1 1 100%;
   width: 100%;
  padding: 4em 6em;
}

.login-box-quotebox {
  color: white;
  background-color: var(--clr-bg-quote);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="%235257f0" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M6 17.6l-2 -1.1v-2.5"></path><path d="M4 10v-2.5l2 -1.1"></path><path d="M10 4.1l2 -1.1l2 1.1"></path><path d="M18 6.4l2 1.1v2.5"></path><path d="M20 14v2.5l-2 1.12"></path><path d="M14 19.9l-2 1.1l-2 -1.1"></path><line x1="12" y1="12" x2="14" y2="10.9"></line><line x1="18" y1="8.6" x2="20" y2="7.5"></line><line x1="12" y1="12" x2="12" y2="14.5"></line><line x1="12" y1="18.5" x2="12" y2="21"></line><path d="M12 12l-2 -1.12"></path><line x1="6" y1="8.6" x2="4" y2="7.5"></line></svg>'),
    linear-gradient(
      to right top,
      #0f1396,
      #202199,
      #2d2d9c,
      #38389f,
      #4243a1,
      #4243a1,
      #4142a0,
      #4142a0,
      #36379d,
      #2b2b99,
      #1d1e95,
      #0a0f90
    );
  background-size: 125%;
  background-repeat: no-repeat;
  background-position: center left;
}

.login-box-signup a{
    color: var(--clr-text-link);
    font-weight: 600;
    text-decoration: inherit;
}
.login-box-signup:hover,
.login-box-signup:focus{
    color: var(--clr-bg-quote-hover);
}

.login-box-login {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  flex-grow: 1;
  margin-top: -50px;
}
.login-box-login > *{
    width: 100%;
    flex-shrink: 0;
}
form > div{
    position: relative;
    padding: 1em 0;
}
form input{
    color: var(--clr-text-main);
    width: 100%;
    padding: 0.8em 1.5em;
    border: 1px solid var(--clr-text-main);
    border-radius: 5px;
    color: var(--clr-text-headline);
}

form input.input-email,
form input.input-password{
    background-repeat: no-repeat;
    background-position: right 0.8em top .8em;
}
form input.input-email{
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="lightgrey" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><circle cx="12" cy="12" r="4"></circle><path d="M16 12v1.5a2.5 2.5 0 0 0 5 0v-1.5a9 9 0 1 0 -5.5 8.28"></path></svg>');
}
form input.input-password{
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="lightgrey" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><rect x="5" y="11" width="14" height="10" rx="2"></rect><circle cx="12" cy="16" r="1"></circle><path d="M8 11v-4a4 4 0 0 1 8 0v4"></path></svg>');
}
form input:focus{
    outline-color: var(--clr-bg-quote);
    border-color: var(--clr-bg-quote);
}
form label{
    font-size: 0.85em;
    position: absolute;
    top: 0.6em;
    left: 1.5em;
    background: var(--clr-bg-box);
    padding: 0 0.5em;
}
form:focus-within label{
    color: var(--clr-bg-quote);
    font-weight: 600;
}
form .btn{
    color: var(--clr-bg-box);
    font-size: 1em;
    letter-spacing: 1px;
    line-height: 1;
    background-color: var(--clr-bg-quote);
    border-color: var(--clr-bg-quote);
    padding: 0.8em 0;
    transition: all 500ms ease;
}
form .btn:focus,
form .btn:hover{
    background-color: var(--clr-bg-quote-hover);
    border-color: var(--clr-bg-quote-hover);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    color:#fff;
}


.alternate-text {
  display: flex;
  align-items: center;
  margin: 1.5em 0;
  text-align: center;
}
.alternate-text::before,
.alternate-text::after {
    content: "";
    flex: 1;
    border-bottom: 1px solid var(--clr-text-main);
}

.alternate-text::before {
    margin-right: 1em;
  }

.alternate-text::after {
    margin-left: 1em;
}


.alternate-boxes {
  display: flex;
  justify-content: space-between;
  gap: 1em;
  margin-top: 1.5em;
}


.alternate-box {
    color: var(--clr-text-headline);
    text-align: center;
    width: 100%;
    padding: 1em 1em;
    border: 1px solid rgba(var(--clr-text-main, 0.5));
    border-radius: 5px;
    cursor: pointer;
    transition: all 500ms ease;
}
.alternate-box svg{
    transition: transform 500ms ease;
}
.alternate-box:hover{
    border-color: var(--clr-text-main);
    background-color: rgba(var(--clr-text-main, 0.25));
}
.alternate-box:hover svg{
    transform: scale(1.25);
}

.quote-container{
    padding: 1em 0;
    position: relative;
}
.quote-container::before{
    content: "";
    position: absolute;
    top: -4.5em;
    left: -0.65em;
    width: 3.5em;
    height: 3.5em;
    background-color: var(--clr-accent);
    border-radius: 100%;
}
.quote-container::after{
    content: "";
    position: absolute;
    top: 0;
    left: 15px;
    height: 100%;
    width: 2px;
    background-color: rgba(var(--clr-bg-box, 0.25));
}

.quote {
  color: var(--clr-bg-box);
  font-size: 3.5em;
  font-weight: 600;
  line-height: 1;
}

.quote-small {
  color: var(--clr-bg-main);
  line-height: 180%;
  padding: 2em 0 0 6em;
  position: relative;
}
.quote-small::before {
    content: "";
    position: absolute;
    top: 2.75em;
    left: 1.2em;
    width: 3em;
    height: 2px;
    background-color: rgba(var(--clr-bg-box, 0.25));
  }

.forgot-password-btn:hover{
  color: var(--clr-bg-quote-hover);
  font-weight: 400;
  cursor: pointer;
}

.show-576{
  display: none;
}


@media (max-width: 576px) {
  .login-box-formbox{
     flex-direction: row;
     flex: 0 0 100% !important;
     padding: 2em;
  }

  .show-576{
    display: block;
  }
}

@media (max-width: 768px) { 
  .login-box-formbox{
     flex-direction: row;
     flex: 0 1 100%;
  }

  .login-box-quotebox {
     flex-direction: row;
     flex: 0 1 100%;
     display: flex;
     align-items: center;
     justify-content: center;
     align-content: center;
     flex-wrap: nowrap;
  }

  .quote{
      font-size: 2em;
    }
}

@media (max-width: 660px) { 
  .login-box-quotebox {
     flex: 0 2 100%;
  }
}

@media (max-width: 819px) {
  .login-box-formbox, .login-box-quotebox {
    padding: 3em;
  }
}

@media (max-width: 1013px) {
  .quote-small{
    padding: 10px;
  }
}



