/* Widget de formulario (pageform.form). Hereda los colores del tema de la agencia vía
   las custom properties --brand-* (con fallback si el dominio no tiene tema). */
.pageform {
    max-width: 640px;
    margin: 0 auto;
    width: 100%;
}
.pageform__title {
    color: var(--brand-ink, #1a1a2e);
    font-weight: 800;
    margin-bottom: 6px;
}
.pageform__subtitle {
    color: var(--brand-ink, #556);
    opacity: .85;
    margin-bottom: 18px;
}
.pageform__group { margin-bottom: 14px; }
.pageform__label {
    display: block;
    font-weight: 600;
    margin-bottom: 6px;
    color: var(--brand-ink, #333);
}
.pageform__req { color: var(--brand-accent, #c0336d); }
.pageform__input:focus {
    border-color: var(--brand-accent, #c0336d);
    box-shadow: 0 0 0 .2rem rgba(0, 0, 0, .06);
}
.pageform__check {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    color: var(--brand-ink, #333);
}
.pageform__submit {
    border: 0;
    padding: 12px 24px;
    border-radius: 10px;
    font-weight: 700;
    cursor: pointer;
    margin-top: 6px;
}
.pageform__submit:disabled { opacity: .6; cursor: default; }
.pageform__input.is-invalid,
.pageform .parsley-error {
    border-color: #dc3545;
}
.pageform .parsley-errors-list {
    list-style: none;
    padding: 0;
    margin: 4px 0 0;
    color: #dc3545;
    font-size: 13px;
}
.pageform__msg { margin-top: 14px; font-weight: 600; }
.pageform__msg--ok { color: #1a7f37; }
.pageform__msg--err { color: #b02a37; }
