/* join.css */

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

body{
  font-family:Inter,sans-serif;

  background:url("../images/login.jpg");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  background-attachment:fixed;

  min-height:100vh;

  position:relative;

  overflow-x:hidden;
  overflow-y:auto;
}

/* OVERLAY */

.bg-overlay{
  position:absolute;
  inset:0;

  background:
  linear-gradient(
    to bottom,
    rgba(0,0,0,.45),
    rgba(0,0,0,.6)
  );

  backdrop-filter:blur(2px);
}

/* NAVBAR */

.navbar{
  position:relative;
  z-index:10;

  width:100%;

  padding:24px 60px;

  display:flex;
  align-items:center;
  justify-content:space-between;
}

.logo{
  text-decoration:none;

  color:#fff;

  font-size:36px;
  font-weight:800;
}

.nav-links{
  display:flex;
  gap:34px;
}

.nav-links a{
  text-decoration:none;

  color:#f1f1f1;

  font-size:15px;

  transition:.3s;
}

.nav-links a:hover{
  color:#fff;
}

.login-btn{
  text-decoration:none;

  background:#fff;
  color:#111;

  padding:12px 20px;

  border-radius:14px;

  font-weight:600;
}

/* WRAPPER */

.join-wrapper{
  position:relative;
  z-index:5;

  width:100%;

  display:flex;
  justify-content:center;
  align-items:flex-start;

  padding:20px 20px 60px;
}

/* BOX */

.join-box{
  width:100%;
  max-width:620px;

  background:rgba(255,255,255,.12);

  backdrop-filter:blur(18px);

  border:1px solid rgba(255,255,255,.16);

  border-radius:34px;

  padding:40px;

  box-shadow:0 20px 60px rgba(0,0,0,.28);

  margin-bottom:40px;
}

/* TOP */

.join-top{
  text-align:center;

  margin-bottom:32px;
}

.join-badge{
  display:inline-block;

  padding:10px 18px;

  border-radius:999px;

  background:rgba(255,255,255,.12);

  border:1px solid rgba(255,255,255,.15);

  color:#fff;

  font-size:13px;

  margin-bottom:22px;
}

.join-top h1{
  color:#fff;

  font-size:52px;

  line-height:1.1;

  margin-bottom:16px;
}

.join-top p{
  color:#e5e5e5;

  line-height:1.7;
}

/* GOOGLE */

.google-btn{
  width:100%;
  height:64px;

  border:none;

  border-radius:18px;

  background:#fff;

  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;

  font-size:15px;
  font-weight:600;

  cursor:pointer;

  margin-bottom:28px;
}

.google-btn img{
  width:22px;
  height:22px;
}

/* DIVIDER */

.divider{
  position:relative;

  text-align:center;

  margin-bottom:28px;
}

.divider::before{
  content:"";

  position:absolute;
  top:50%;
  left:0;

  width:100%;
  height:1px;

  background:rgba(255,255,255,.15);
}

.divider span{
  position:relative;

  padding:0 16px;

  color:#eee;
}

/* FORM */

.join-form{
  display:flex;
  flex-direction:column;
  gap:22px;
}

.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.input-group{
  display:flex;
  flex-direction:column;
}

.input-group label{
  color:#fff;

  margin-bottom:10px;

  font-size:14px;
}

.input-group input{
  width:100%;
  height:60px;

  border:none;
  outline:none;

  border-radius:18px;

  padding:0 18px;

  background:rgba(255,255,255,.12);

  color:#fff;

  font-size:15px;

  border:1px solid rgba(255,255,255,.08);
}

.input-group input::placeholder{
  color:#ddd;
}

/* TERMS */

.terms{
  display:flex;
  align-items:flex-start;
  gap:12px;

  color:#eee;

  font-size:14px;

  line-height:1.7;
}

.terms a{
  color:#fff;
  font-weight:600;
  text-decoration:none;
}

/* BUTTON */

.join-submit{
  width:100%;
  height:64px;

  border:none;

  border-radius:18px;

  background:#fff;

  color:#111;

  font-size:16px;
  font-weight:700;

  cursor:pointer;

  margin-top:10px;

  transition:.3s;
}

.join-submit:hover{
  transform:translateY(-2px);
}

/* BOTTOM */

.bottom-text{
  margin-top:28px;

  text-align:center;

  color:#eee;
}

.bottom-text a{
  color:#fff;

  text-decoration:none;

  font-weight:600;
}

/* RESPONSIVE */

@media(max-width:768px){

  .navbar{
    padding:20px;
  }

  .nav-links{
    display:none;
  }

  .join-box{
    padding:30px 22px;
  }

  .join-top h1{
    font-size:40px;
  }

  .form-grid{
    grid-template-columns:1fr;
  }

}

/* LAPTOP HEIGHT FIX */

@media (max-height: 900px){

  .join-box{
    transform:scale(.9);
    transform-origin:top center;
  }

}