/* Callback form (Hub intake contract superior-v1, 2026-10-22). Markup is generated by
   scripts/generate.mjs; behaviour lives in /assets/js/lead.js. Loaded on the two pages with the form. */
.swf-callback{color:var(--ink)}
.swf-optional-note{font-size:12px;color:var(--muted);margin:14px 0 12px}
.swf-test-note{margin:14px 0 4px;padding:9px 12px;border-radius:3px;background:#fff7e0;border:1px solid #e8c45c;color:#5a4300;font-size:13px;font-weight:700}
.swf-row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.swf-form .swf-field{margin:0 0 12px;min-width:0}
.swf-form fieldset.swf-field{border:0;padding:0;margin:0 0 12px}
.swf-form .swf-field>label,.swf-form .swf-choice legend{display:block;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 5px;padding:0}
.swf-form .swf-field small{font-weight:400;font-size:12px;color:var(--muted);margin-left:4px}
.swf-form input[type="text"],.swf-form input[type="tel"],.swf-form input[type="email"],.swf-form select,.swf-form textarea{display:block;width:100%;min-height:46px;margin:0;padding:9px 10px;border:1px solid #a7aaa2;border-radius:2px;background:#fff;color:var(--ink);font-size:16px;line-height:1.4}
.swf-form textarea{min-height:80px;height:auto;resize:vertical}
.swf-form [aria-invalid="true"]{border-color:#b3261e;box-shadow:0 0 0 1px #b3261e}
.swf-form .swf-field--zip input{max-width:150px}
.swf-form .swf-pills{display:flex;flex-wrap:wrap;gap:6px}
.swf-form .swf-pills .swf-pill{display:inline-flex;align-items:center;gap:7px;min-height:44px;margin:0;padding:7px 12px;border:1px solid #a7aaa2;border-radius:999px;background:#fff;color:var(--ink);font-size:14px;font-weight:400;cursor:pointer}
.swf-form .swf-pills .swf-pill input[type="radio"]{display:inline-block;width:18px;height:18px;min-height:0;margin:0;padding:0;accent-color:var(--red);flex:none}
.swf-form .swf-pills .swf-pill:has(input:checked){border-color:var(--red);background:#fbeceb;font-weight:700}
.swf-form .swf-pills .swf-pill:has(input:focus-visible){outline:2px solid var(--red);outline-offset:2px}
.swf-form .swf-check{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start}
.swf-form .swf-check input[type="checkbox"]{display:block;width:20px;height:20px;min-height:0;margin:1px 0 0;padding:0;accent-color:var(--red)}
.swf-form .swf-check label{font-size:13px;line-height:1.55;font-weight:400;margin:0;color:var(--ink);cursor:pointer}
.swf-form .swf-error{margin:5px 0 0;color:#b3261e;font-size:13px;font-weight:700}
.swf-form .swf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.swf-form .swf-turnstile{min-height:65px;margin:0 0 10px}
.swf-form .swf-submit{width:100%;margin-top:4px;border:0;cursor:pointer;justify-content:center}
.swf-form .swf-submit:disabled{opacity:.7;cursor:progress}
.swf-status{font-size:14px;line-height:1.55;margin:14px 0 0;padding:12px 14px;border-radius:4px;border-left:3px solid var(--muted);background:#f3f4f5;color:var(--ink)}
.swf-status--error{border-left-color:var(--red);background:#fbeceb}
.swf-status:focus{outline:2px solid var(--red);outline-offset:2px}
.swf-status a,.swf-done a{color:var(--red);font-weight:700;white-space:nowrap}
.swf-done{padding:14px 0 4px}
.swf-done:focus{outline:none}
.swf-done__mark{display:grid;place-items:center;background:#e5eadf;color:#475e38;border-radius:50%;width:38px;height:38px;font-size:20px;margin-bottom:12px}
.swf-done h3{font-size:23px;margin:0 0 8px}
.swf-done p{font-size:14px;line-height:1.65;color:var(--muted);margin:0 0 16px}
.swf-again{min-height:44px;padding:8px 16px;border:1px solid #a7aaa2;border-radius:3px;background:#fff;color:var(--ink);font-weight:700;cursor:pointer}
.swf-noscript{font-size:14px;font-weight:700;margin-top:10px}
@media (max-width:560px){.swf-row{grid-template-columns:1fr}}
