/* Landing — formulario de registro (extiende jde-theme.css) */
@import url("jde-theme.css");

/* Index — logo fijo (no tocar) */
.landing--index {
  max-width: none;
  width: 100%;
}

.landing--index .landing__hero-row {
  width: 100%;
  margin-bottom: 20px;
}

.landing--index .landing__header {
  width: 100%;
  max-width: none;
  margin: 0;
  padding-top: 0;
  text-align: center;
}

@media (min-width: 1180px) {
  .landing--index .landing__hero-row {
    display: grid;
    grid-template-columns: 1fr minmax(0, 720px) 1fr;
    align-items: center;
    column-gap: 0;
  }

  .landing--index .landing__logo-wrap {
    position: relative;
    left: auto;
    top: auto;
    grid-column: 1;
    grid-row: 1;
    justify-self: center;
    align-self: center;
    width: 210px;
    margin: 0;
  }

  .landing--index .landing__header {
    grid-column: 2;
    grid-row: 1;
  }
}

@media (max-width: 1179px) {
  .landing--index .landing__hero-row {
    margin-bottom: 16px;
  }

  .landing--index .landing__logo-wrap {
    width: 173px;
    margin: 0 auto 16px;
  }
}

.landing--index .landing__form-panel {
  max-width: 720px;
  margin: 0 auto;
}

.landing__form .form-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 16px;
  margin-bottom: 0;
}

.landing__form .form-group:not(.checkbox-group) {
  display: flex;
  flex-direction: column;
}

.landing__form label {
  font-size: 0.78rem;
  font-weight: 600;
  margin-bottom: 6px;
  color: #ffffff;
}

.landing__form input:not([type="checkbox"]),
.landing__form select {
  width: 100%;
  padding: 10px 12px;
  border: none;
  border-radius: 2px;
  font-size: 0.88rem;
  color: #1a1a1a;
  background-color: #ffffff;
  font-family: "Open Sans", sans-serif;
}

.landing__form input::placeholder {
  color: #9a9a9a;
}

.landing__form select {
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23333' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 32px;
}

.landing__form select:required:invalid {
  color: #9a9a9a !important;
}

.landing__form .checkbox-group {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}

.landing__form .checkbox-group input[type="checkbox"] {
  width: 16px;
  height: 16px;
  min-width: 16px;
  margin: 0;
  padding: 0;
  flex-shrink: 0;
  accent-color: #2a9fe8;
}

.landing__form .checkbox-group label {
  margin-bottom: 0;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.35;
  flex: 1;
}

.landing__form .terms-link {
  color: #7ec8ff;
  text-decoration: underline;
}

.landing__form .terms-link:hover {
  color: #ffffff;
}

.landing__submit {
  margin-top: 18px;
}

@media (max-width: 768px) {
  .landing__form .form-fields {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}
