/* Shared form feedback (error boxes, messages under fields) and mobile input size. Loaded on every page, after the page's own CSS. */
.form-message{margin:0 0 18px;padding:12px 14px;border:1px solid #cfe3d6;border-left:4px solid var(--success,#3F7A5A);border-radius:10px;background:#F2F8F4;color:#1F4D36;font-size:14.5px;line-height:1.45;text-align:left}
.form-message.error{border-color:#EFC4B8;border-left-color:#C62828;background:#FDF3EF;color:#8E1B12}
.form-message.info{border-color:var(--line,#E7E1DB);border-left-color:var(--ink-soft,#6b615a);background:var(--paper-warm,#F7F4F1);color:var(--ink,#211A16)}
.form-message .fm-title{font-weight:700;margin:0 0 4px}
.form-message ul{margin:0;padding-left:18px;list-style:disc}
.form-message ul li{margin:2px 0}
.form-message > div + div{margin-top:2px}
/* message under a field */
.err{display:block;margin:6px 0 0;color:#C62828;font-size:13px;font-weight:600;line-height:1.35}
.cf-field:has(> .err) input,.cf-field:has(> .err) textarea,.cf-field:has(> .err) select,
.rf-field:has(> .err) input,.lf-field:has(> .err) input{border-color:#C62828;background:#FFF8F6}
.rf-checkbox-row + .err,.cf-checkbox-row + .err{margin:-6px 0 14px}
.req{color:#C62828;font-weight:700}
/* iPhone zooms the page when a focused field has text smaller than 16px */
@media (max-width:900px){
  input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]):not([type=range]):not([type=file]),
  select,textarea{font-size:16px !important}
}
