* {
  user-select: none;
}
main {
  width: 100%;
  height: 100dvh;
  position: relative;
}
main > img {
  width: 100%;
  height: 100%;
  object-fit: fill;
  position: absolute;
  z-index: -1;
}
nav {
  width: 100%;
  height: 100px;
  display: flex;
  justify-content: space-between;
  padding: 20px 60px;
}
nav figure {
  width: 250px;
  height: 80%;
}
nav figure img {
  width: 90%;
  object-fit: contain;
}
nav ul {
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  list-style: none;
  gap: 15px;
}
nav ul li {
  width: 150px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s scale ease;
}
nav ul li:hover {
  scale: 1.02;
}
nav ul li a {
  width: 100%;
  height: 100%;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 25px;
  gap: 5px;
}
nav ul li.active a {
  background-color: #fff;
  color: #000;
}
section {
  width: 100%;
  height: calc(100vh - 100px);
  display: grid;
  grid-template-columns: 60% 40%;
  grid-template-rows: 100%;
}
section figure {
  display: flex;
  align-items: end;
  justify-content: center;
}
section figure img {
  height: 95%;
  object-fit: contain;
  object-position: bottom;
}
section form {
  align-self: center;
  width: 500px;
  height: auto;
  padding: 50px 25px;
  background-color: #4f4840b7;
  border-radius: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 25px;
}

form img {
  width: 60%;
}
form p {
  font-size: 32px;
  margin-bottom: 45px;
  font-weight: bold;
  color: #fff;
}
form span {
  color: #fff;
  font-weight: lighter;
}
.input {
  width: 80%;
  height: 45px;
  background-color: #a2a19f;
  border-radius: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
input {
  width: 90%;
  height: 100%;
  text-align: center;
  font-size: 24px;
  border: none;
  color: #fff;
  background-color: transparent;
}
.icon_1 {
  position: absolute;
  left: 10px;
  z-index: 10;
  color: #fff;
  font-size: 26px;
  cursor: pointer;
}
.icon_2 {
  position: absolute;
  right: 10px;
  z-index: 10;
  color: #fff;
  font-size: 16px;
  cursor: pointer;
}
input:focus {
  outline: none;
  background-color: transparent;
}
input::placeholder {
  color: #fff;
}
button {
  border: none;
  background-color: #fbc700;
  width: 80%;
  height: 45px;
  border-radius: 15px;
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
}
.switch-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Ocultamos el checkbox real */
.switch-input {
  display: none;
}

/* Contenedor del switch */
.switch {
  width: 60px;
  height: 32px;
  background: #ccc;
  border-radius: 50px;
  position: relative;
  cursor: pointer;
  transition: background 0.3s ease;
}

.switch::before {
  content: "";
  position: absolute;
  width: 26px;
  height: 26px;
  background: white;
  border-radius: 50%;
  top: 3px;
  left: 3px;
  transition: transform 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
.switch-input:checked + .switch {
  background: #f9c800;
}

.switch-input:checked + .switch::before {
  transform: translateX(28px);
}
form strong {
  color: #fff;
  font-weight: 300;
}
.container-switch {
  width: 80%;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 768px) {
  section {
    height: calc(100dvh - 100px);
    grid-template-columns: 1fr;
    grid-template-rows: 100%;
  }
  section figure {
    display: none;
  }
  section form {
    align-self: center;
    justify-self: center;
    width: 90%;
    height: auto;
    padding: 30px 25px;
    background-color: #4f4840b7;
    border-radius: 20px;
    gap: 16px;
  }

  form img {
    width: 100%;
  }
  .input {
    width: 98%;
  }
  form p {
    font-size: 32px;
    margin-bottom: 5px;
    font-weight: bold;
    color: #fff;
  }
  .container-switch {
    width: 90%;
  }
  nav figure {
    display: none;
  }
  nav {
    width: 100%;
    height: 100px;
    display: flex;
    justify-content: space-between;
    padding: 20px 30px;
  }
}
