/* Page-specific CSS for Contact Us. Shared design tokens/utilities live in layout.css. */
.page-contact-contact-us {
    min-height: 0;
}

/* Contact form submission feedback message (hidden until a result is available) */
.contact-form-status {
    display: none;
    margin: 0.85rem 0 0;
    font-size: 0.8rem;
    line-height: 1.5;
}

.contact-form-status.is-visible {
    display: block;
}

.contact-form-status--success {
    color: #1f7a4d;
}

.contact-form-status--error {
    color: #c0392b;
}

/* Hides the validation-summary box unless it actually contains an error message */
.contact-form-status.validation-summary-valid {
    display: none;
}

.contact-form-status.validation-summary-errors {
    display: block;
}

.contact-form-status.validation-summary-errors ul {
    margin: 0;
    padding-left: 1.1rem;
}

/* Per-field server-side validation message */
.contact-field-error {
    display: block;
    margin-top: 0.3rem;
    color: #c0392b;
    font-size: 0.72rem;
    line-height: 1.4;
}

@media (max-width: 768px) {
    .page-contact-contact-us {
        min-height: 0;
    }
}
