a {
  text-decoration: none;

  color: white;
}

a::after {
  content: "";
}

a:hover::after {
  display: block;

  border: 1px solid white;

  animation: under-line 0.5s ease-in-out 1;
}

@keyframes under-line {
  0% {
    width: 0%;
  }

  100% {
    width: 100%;
  }
}

body {
  background: #64c8de;
}

section {
  /* min-height: 100vh; */

  display: flex;

  justify-content: center;

  align-items: center;

  /* background: url(https://images2.alphacoders.com/130/1308322.jpeg) center; */

  background-size: cover;

  color: #fff;
}

.login-container {
  background: transparent;

  height: 67vh;

  width: 400px;

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  backdrop-filter: blur(5px);

  /* border: 1px white solid; */

  /* border-radius: 20px;*/
}

h2 {
  font-size: 1.75em;

  margin: 0 0 10px;

  filter: drop-shadow(0 3px 2px black);
}

.input-box {
  position: relative;

  border-bottom: 2px solid white;

  margin: 20px 0;

  width: 310px;
}

.input-box label {
  position: absolute;

  top: 50%;

  left: 5px;

  transform: translateY(-50%);

  pointer-events: none;

  font-size: 1em;

  transition: 0.5s;
}

.input-box input:valid ~ label,
.input-box input:focus ~ label {
  top: -5px;
}

.input-box input {
  background: transparent;

  border: none;

  outline: none;

  color: white;

  width: 100%;

  height: 50px;

  font-size: 1em;

  padding: 0 40px 0 5px;
}

.input-box .icon {
  position: absolute;

  right: 8px;

  font-size: 1.4em;

  line-height: 45px;
}

.remember-forgot {
  display: flex;

  justify-content: space-between;

  width: 310px;

  margin: 0 0 20px;
}

button {
  height: 40px;

  width: 310px;

  border-radius: 20px;

  margin: 0 0 10px;

  outline: none;

  border: none;

  background: white;

  color: black;

  transition: 0.3s;
}

button:hover {
  background-color: rgba(255, 255, 255, 0.8);
}

.create-account {
  margin: 12px 0 0 0;
}

@media screen and (max-width: 360px) {
  .login-container {
    width: 100%;

    height: 100vh;

    border: none;

    border-radius: none;
  }
}

/* Preloader Css  */

.ctn-preloader {
  align-items: center;

  cursor: none;

  display: flex;

  height: 100%;

  justify-content: center;

  position: fixed;

  left: 0;

  top: 0;

  width: 100%;

  z-index: 900;
}

.ctn-preloader .animation-preloader {
  position: absolute;

  z-index: 100;
}

/* Text loading animation */

.ctn-preloader .animation-preloader .txt-loading {
  font: bold 5em "Montserrat", sans-serif;

  text-align: center;

  user-select: none;

  margin: 0 auto; /* Center the text */
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:before {
  animation: letters-loading 4s infinite;

  color: #40599b;

  content: attr(data-text-preloader);

  left: 0;

  opacity: 0;

  position: absolute;

  top: 0;

  transform: rotateY(-90deg);
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading {
  color: rgba(0, 0, 0, 0.2);

  position: relative;
}

.ctn-preloader
  .animation-preloader
  .txt-loading
  .letters-loading:nth-child(2):before {
  animation-delay: 0.2s;
}

.ctn-preloader
  .animation-preloader
  .txt-loading
  .letters-loading:nth-child(3):before {
  animation-delay: 0.4s;
}

.ctn-preloader
  .animation-preloader
  .txt-loading
  .letters-loading:nth-child(4):before {
  animation-delay: 0.6s;
}

.ctn-preloader
  .animation-preloader
  .txt-loading
  .letters-loading:nth-child(5):before {
  animation-delay: 0.8s;
}

.ctn-preloader
  .animation-preloader
  .txt-loading
  .letters-loading:nth-child(6):before {
  animation-delay: 1s;
}

.ctn-preloader
  .animation-preloader
  .txt-loading
  .letters-loading:nth-child(7):before {
  animation-delay: 1.2s;
}

.ctn-preloader .loader-section {
  background-color: #ffffff;

  height: 100%;

  position: fixed;

  top: 0;

  width: calc(50% + 1px);
}

.ctn-preloader .loader-section.section-left {
  left: 0;
}

.ctn-preloader .loader-section.section-right {
  right: 0;
}

/* Fade-out animation for preloader */

.loaded .animation-preloader {
  opacity: 0;

  transition: 0.3s ease-out;
}

/* Sliding curtain effect */

.loaded .loader-section.section-left {
  transform: translateX(-101%);

  transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1);
}

.loaded .loader-section.section-right {
  transform: translateX(101%);

  transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1);
}

/* Letters loading animation */

@keyframes letters-loading {
  0%,
  75%,
  100% {
    opacity: 0;

    transform: rotateY(-90deg);
  }

  25%,
  50% {
    opacity: 1;

    transform: rotateY(0deg);
  }
}

/* Responsive design for smaller screens */

@media screen and (max-width: 767px) {
  /* Adjust font size for tablets and smaller screens */

  .ctn-preloader .animation-preloader .txt-loading {
    font: bold 3.5em "Montserrat", sans-serif;
  }
}

@media screen and (max-width: 500px) {
  /* Adjust font size for mobile screens */

  .ctn-preloader .animation-preloader .txt-loading {
    font: bold 2em "Montserrat", sans-serif;
  }
}

.copyright {
  display: flex;

  justify-content: space-between;
}

#footer {
  position: fixed;
  width: 99%;
  bottom: 0;
  margin: 5px;
  margin-bottom: 2px;
  border-radius: 5px 5px 0px 0px;
  padding: 5px;
  background: #2a2f63;
  color: #fff;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.footer-icon-mob {
  font-size: 20px;
}

.footer-text-mob {
  font-size: 10px;

  text-decoration: none;
}

@media (max-width: 768px) {
  #footer,
  .footer {
    position: fixed;

    bottom: 0;

    width: 98%;
  }
}
