.wwf-public { --wwf-primary:#14577b; --wwf-focus:#268ac5; max-width:850px; width:100%; font-family:inherit; }
.wwf-public *, .wwf-public *::before, .wwf-public *::after { box-sizing:border-box; }
.wwf-public .wwf-intro { margin:0 0 22px; white-space:normal; }
.wwf-public .wwf-public-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 22px; }
.wwf-public .wwf-item.wwf-full { grid-column:span 2; }
.wwf-public .wwf-item.wwf-half { grid-column:span 1; }
.wwf-public .wwf-label { display:block; margin:0 0 7px; font-size:inherit; font-weight:600; }
.wwf-public input:not([type=checkbox]):not([type=radio]):not([type=file]), .wwf-public textarea, .wwf-public select { display:block; width:100%; max-width:100%; background:#fff; border:1px solid #a4abb2; border-radius:6px; padding:11px 12px; color:#202428; font:inherit; line-height:1.45; }
.wwf-public input[type=file] { display:block; width:100%; max-width:100%; font:inherit; }
.wwf-public textarea { min-height:110px; resize:vertical; }
.wwf-public input:focus, .wwf-public select:focus, .wwf-public textarea:focus { outline:2px solid var(--wwf-focus); outline-offset:1px; }
.wwf-public .wwf-help { display:block; margin:6px 0 0; font-size:.875em; opacity:.8; }
.wwf-public .wwf-required { color:#b3251c; }
.wwf-public .wwf-options { border:0; margin:0; padding:0; }
.wwf-public .wwf-options label { display:block; margin:8px 0; cursor:pointer; }
.wwf-public .wwf-options input, .wwf-public .wwf-consent input { margin-right:8px; vertical-align:middle; }
.wwf-public .wwf-consent { display:flex; align-items:flex-start; gap:6px; cursor:pointer; }
.wwf-public .wwf-consent input { flex:0 0 auto; margin-top:5px; }
.wwf-public .wwf-item-heading h3 { margin:8px 0 0; }
.wwf-public .wwf-item-paragraph p { margin:0; }
.wwf-public .wwf-divider { margin:0; border:0; border-top:1px solid #d8d8d8; }
.wwf-public .wwf-submit { margin:23px 0 0; background:var(--wwf-primary); border:1px solid var(--wwf-primary); border-radius:6px; color:#fff; cursor:pointer; font:inherit; font-weight:650; padding:12px 24px; transition:background .2s; }
.wwf-public .wwf-submit:hover { background:#0b3d58; }
.wwf-public .wwf-alert { border-radius:6px; padding:14px 16px; margin-bottom:18px; }
.wwf-public .wwf-success { border:1px solid #82bd91; background:#f0faf2; color:#204f27; }
.wwf-public .wwf-error { border:1px solid #d49a90; background:#fff4f2; color:#852a1a; }
.wwf-public .wwf-trap { position:absolute !important; left:-9999px !important; opacity:0 !important; width:1px; height:1px; overflow:hidden; }
@media(max-width:600px){.wwf-public .wwf-item.wwf-half{grid-column:span 2}.wwf-public .wwf-public-grid{gap:18px}}

/* Cloudflare Turnstile: make room between fields and the send button. */
.wwf-public .wwf-turnstile { margin: 18px 0 15px; max-width: 100%; }
.wwf-public .wwf-turnstile .cf-turnstile { max-width: 100%; }

/* Required participant details are separate from editable survey questions. */
.wwf-public .wwf-identity { border:1px solid #cbd5df; border-radius:8px; padding:16px 18px; margin:0 0 25px; min-width:0; }
.wwf-public .wwf-identity legend { font-weight:700; padding:0 8px; }
.wwf-public .wwf-identity-intro { margin:0 0 14px; }
.wwf-public .wwf-identity-notice { font-size:.88em; opacity:.82; margin:11px 0 0; }
