#mailformpro [hidden] { display: none !important; }
#mailformpro .form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#mailformpro [aria-invalid="true"] { outline: 2px solid #b3261e; outline-offset: 2px; }
#form-error { margin: 20px 0; padding: 16px; color: #9f201a; border: 1px solid #b3261e; background: #fff5f4; }
#form-error ul { margin: 10px 0 0 20px; }
#form-status { margin: 16px 0; text-align: center; }
#form-confirm { margin: 25px 0; }
#confirm-heading { font-size: 1.3em; margin-bottom: 16px; }
#confirm-values { display: grid; grid-template-columns: 30% 70%; border-top: 1px solid #ccc; margin: 20px 0; }
#confirm-values dt, #confirm-values dd { margin: 0; padding: 14px; border-bottom: 1px solid #ccc; box-sizing: border-box; }
#confirm-values dt { background: #f3f3f3; font-weight: bold; }
#confirm-values dd { white-space: pre-wrap; overflow-wrap: anywhere; }
.form-actions { text-align: center; }
.form-actions button { padding: 12px 22px; margin: 8px; font: inherit; cursor: pointer; border: 1px solid #aaa; border-radius: 3px; background: #eee; color: #222; }
#form-send { background: #305849; color: white; border-color: #305849; }
#mailformpro button:disabled, #mailformpro input:disabled { opacity: .55; cursor: wait; }
#mailformpro button:focus-visible { outline: 3px solid #4679ac; outline-offset: 3px; }
@media screen and (max-width: 640px) {
 #confirm-values { grid-template-columns: 1fr; }
 #confirm-values dt { padding: 10px; border-bottom: none; }
 #confirm-values dd { padding: 10px; }
 .form-actions button { width: 90%; }
}

#confirm-heading { margin-left: 3%; margin-right: 3%; }

#form-error { white-space: pre-line; }
#mailformpro input, #mailformpro textarea { font: inherit; box-sizing: border-box; padding: 3px; }
