.reg {
  padding: 5rem;
  position: relative;
  margin-bottom: 5rem;
  border: 0.1rem solid rgba(229, 229, 229, 1);
  border-radius: 0.5rem;
  overflow: hidden;

  .loader {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0%;
    left: 0%;
    background: rgba(255, 255, 255, 0.8);
    width: 100%;
    height: 100%;
    z-index: 300;
  }
  .spinner {
    width: 6rem;
    height: 6rem;
  }

  form {
    display: flex;
    flex-direction: column;
    gap: 5rem;
  }
}

.reg-top {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}

.error {
  font-size: 1.4rem;
  color: red;
}

.reg-title {
  font-size: 2.2rem;
}

.reg-input-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3rem;
}

.reg-input-block {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;

  label {
    font-size: 1.2rem;
  }

  span {
    color: red;
  }

  input {
    border-radius: 0.5rem;
    border: 0.1rem solid rgba(229, 229, 229, 1);
    padding: 2rem;
    height: 5rem;
    font-size: 1.6rem;
    width: 100%;
  }
}

.split {
  display: grid;
  grid-template-columns: minmax(5rem, 10rem) minmax(5rem, 10rem) minmax(
      10rem,
      1fr
    );
  gap: 3rem;
}

.split-block {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 1.4rem;
}

.reg-btns {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3rem;

  * {
    align-self: center;
  }
  h2 {
    font-weight: normal;
  }

  span {
    color: red;
  }
}

// MEDIA

@media screen and (max-width: 1200px) {
  .reg-input-wrapper {
    grid-template-columns: 1fr 1fr;
  }
  .reg-input-block input {
    font-size: 1.4rem;
  }

  .form-title {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 850px) {
  .reg-input-block input {
    font-size: 1.2rem;
  }
  .reg {
    input {
      font-size: 1.4rem;
    }
  }
  .reg-input-block.rel-block {
    max-height: unset;
    height: 100%;
  }
  .reg-input-wrapper,
  .reg-btns {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 600px) {
  .reg-title {
    text-align: center;
    font-size: 1.8rem;
  }

  .reg {
    padding: 2rem;
  }

  .reg-btns h2 {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 550px) {
  .split {
    grid-template-columns: 1fr;
  }
}
