.section-cotizacion {
  padding: 60px 0;
  background: #f1f1f1;
}
.cotizacion-titulo {
  text-align: center;
  color: #333;
  margin-bottom: 30px;
  font-weight: 700;
}
.cotizacion-card {
  max-width: 560px;
  margin: 0 auto;
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 12px;
  padding: 32px 28px;
}

/* Filas */
.form-row {
  margin-bottom: 18px;
}
.form-row-2 {
  display: flex;
  gap: 16px;
}
.form-row-2 .form-group {
  flex: 1;
}

/* Labels */
.cotizacion-form label {
  display: block;
  font-weight: 700;
  color: #333;
  font-size: 14px;
  margin-bottom: 6px;
}
.label-hint {
  font-weight: 400;
  font-size: 11px;
  color: #888;
}

/* Inputs, selects y textarea */
.cotizacion-input,
.cotizacion-select,
.cotizacion-textarea {
  width: 100%;
  padding: 11px 14px;
  border: 1px solid #d8d8d8;
  border-radius: 24px;
  background: #ececec;
  color: #444;
  font-size: 14px;
  outline: none;
  transition: border-color .15s ease, background .15s ease;
}
.cotizacion-textarea {
  border-radius: 16px;
  resize: vertical;
}
.cotizacion-input:focus,
.cotizacion-select:focus,
.cotizacion-textarea:focus {
  border-color: #ff7400;
  background: #fff;
}
.cotizacion-input::placeholder,
.cotizacion-textarea::placeholder {
  color: #999;
}

/* Teléfono con código de país */
.telefono-wrap {
  display: flex;
  gap: 8px;
}
.codigo-pais {
  width: 110px;
  flex-shrink: 0;
}

/* Botón enviar */
.form-row-submit {
  text-align: center;
  margin-top: 24px;
  margin-bottom: 0;
}
.btn-enviar {
  background: #ff7400;
  color: #fff;
  border: none;
  border-radius: 24px;
  padding: 11px 38px;
  font-weight: 700;
  letter-spacing: 1px;
  cursor: pointer;
  transition: background .2s ease;
}
.btn-enviar:hover {
  background: #e56700;
}

/* Responsive */
@media (max-width: 575px) {
  .form-row-2 {
    flex-direction: column;
    gap: 18px;
  }
  .codigo-pais {
    width: 100px;
  }
}

.cotizacion-form .form-group {
  text-align: left !important;
}
.cotizacion-select option:checked,
.cotizacion-select option:hover {
  background: #ff7400 !important;   /* naranja de tu tema */
  color: #fff !important;
}
.cotizacion-select option {
  background: #fff;
  color: #444;
}

/* Validación */
.cotizacion-input.is-invalid,
.cotizacion-select.is-invalid,
.cotizacion-textarea.is-invalid {
  border-color: #e3342f;
  background: #fff5f5;
}
.field-error {
  display: none;
  color: #e3342f;
  font-size: 12px;
  margin-top: 5px;
}
.field-error.is-visible {
  display: block;
}
#cotizacionFormResponse:empty {
  display: none;
}
#cotizacionFormResponse {
  margin-bottom: 18px;
}