/* Inputs, labels y botones de formularios */

/* ── Formulario de contacto ─────────────────────── */

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

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

.form-field { display: flex; flex-direction: column; }

.form-label {
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  letter-spacing: 2px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 8px;
}

.form-input {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 400;
  border: none;
  border-bottom: 2px solid var(--color-blue);
  border-radius: 0;
  padding: 12px 0;
  background: transparent;
  color: var(--color-white);
  outline: none;
  width: 100%;
  transition: border-color var(--transition-base);
}

.form-input:focus { border-bottom-color: var(--color-red); }

.form-input::placeholder { color: rgba(255,255,255,0.35); }

.form-select {
  cursor: pointer;
  appearance: none;
  color: rgba(255,255,255,0.8);
  background: transparent;
}

.form-select option { background: var(--color-graphite); color: var(--color-white); }

.form-textarea { resize: vertical; display: block; }

.btn-submit {
  background: var(--color-red);
  color: var(--color-white);
  border: none;
  padding: 16px;
  border-radius: var(--radius-sm);
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  transition: background var(--transition-base);
  width: 100%;
}

.btn-submit:hover { background: var(--color-red-dark); }

/* ── Overrides formulario sobre fondo claro ─────── */

.section--light .form-label          { color: rgba(49,49,49,0.5); }
.section--light .form-input          { color: var(--color-graphite); }
.section--light .form-input::placeholder { color: rgba(49,49,49,0.35); }
.section--light .form-select         { color: rgba(49,49,49,0.8); }

/* ── Simulador de vuelos ────────────────────────── */

.sim-label {
  font-size: 11px;
  color: rgba(49,49,49,0.5);
  letter-spacing: 1px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 6px;
}

.sim-input {
  font-family: var(--font-sans);
  font-size: 14px;
  border: 1px solid var(--color-blue);
  border-radius: var(--radius-sm);
  padding: 14px 18px;
  background: var(--color-white);
  color: var(--color-graphite);
  outline: none;
  width: 100%;
  transition: border-color var(--transition-base);
}

.sim-input:focus { border-color: var(--color-red); }

.btn-primary {
  background: var(--color-red);
  color: var(--color-white);
  border: none;
  padding: 14px;
  border-radius: var(--radius-sm);
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  transition: background var(--transition-base);
  width: 100%;
}

.btn-primary:hover { background: var(--color-red-dark); }

.sim-feedback {
  margin-top: 16px;
  padding: 14px;
  background: rgba(189,205,210,0.2);
  border: 1px solid var(--color-blue);
  border-radius: var(--radius-sm);
  font-size: 13px;
  color: var(--color-graphite);
}
