/* Impossible Forms: neutral, inherits the theme's fonts and colours. */
.impf { margin: 1.5em 0; max-width: 100%; }
.impf-title { margin: 0 0 .25em; }
.impf-description { margin: .25em 0 1em; font-size: .9em; opacity: .85; }
.impf-fields { display: flex; flex-wrap: wrap; gap: 1.1em 4%; }
.impf-field { flex: 1 1 100%; margin: 0; padding: 0; border: 0; min-width: 0; }
.impf-half { flex-basis: 48%; }
.impf-label { display: block; font-weight: 700; margin: 0 0 .35em; padding: 0; }
.impf-required { color: #c02b0a; }
.impf input[type="text"], .impf input[type="email"], .impf input[type="url"], .impf input[type="date"],
.impf select, .impf textarea { width: 100%; box-sizing: border-box; padding: 8px 10px; font-size: 16px; line-height: 1.4; }
.impf input, .impf select, .impf textarea, .impf button { font-family: inherit; }
.impf select { min-height: 2.6em; }
.impf textarea { font-size: 16px; }
.impf-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.impf-legend { font-size: .9em; margin: 0 0 1em; }
.impf input[type="checkbox"] { width: 1.15em; height: 1.15em; vertical-align: -0.15em; }
.impf-choice { display: block; padding: .15em 0; }
.impf textarea { min-height: 10em; resize: vertical; }
.impf input[type="file"] { max-width: 100%; }
.impf-name { display: flex; gap: 4%; }
.impf-name > span { flex: 1 1 48%; }
.impf-name label { display: block; font-size: .8em; margin-top: .2em; }
.impf-choices { display: flex; flex-direction: column; gap: .35em; }
.impf-choice label { display: inline; font-weight: normal; }
.impf-field .impf-description { margin: .35em 0 0; }
.impf-field--error input, .impf-field--error select, .impf-field--error textarea { border-color: #c02b0a; }
.impf-error { color: #c02b0a; font-size: .9em; margin: .35em 0 0; }
.impf-notice { border: 1px solid #c02b0a; border-left-width: 4px; background: #fff6f5; color: #3d0d06 !important; padding: .8em 1em; margin: 0 0 1em; border-radius: 0; font-weight: normal; }
.impf-notice p { margin: 0; }
.impf-notice ul { margin: .5em 0 0 1.2em; padding: 0; }
.impf .impf-notice li { margin: .2em 0; font-weight: normal; }
.impf .impf-notice a, .impf .impf-notice a:visited, .entry-content .impf .impf-notice a { color: inherit; font-weight: normal; text-decoration: underline; }
/* Thank-you: neutral and theme-inherited (text colour, font, square corners), readable on light and dark themes. */
.impf-confirmation { border-left: 4px solid currentColor; background: rgba(128, 128, 128, .08); color: inherit; padding: .9em 1.1em; border-radius: 0; }
.impf-notice:focus, .impf-confirmation:focus { outline: 2px solid currentColor; outline-offset: 2px; }
.impf-footer { margin-top: 1.2em; }
.impf-submit { font-size: 1.1em; padding: 10px 24px; cursor: pointer; }
.impf-submit[disabled] { opacity: .6; cursor: progress; }
.impf .cf-turnstile { margin-top: 1em; }
.impf-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 600px) {
	.impf-half { flex-basis: 100%; }
	.impf-name { flex-direction: column; gap: .8em; }
}
