/* Scoped to the campaign form; the approved landing page remains unchanged. */
.questionnaire{gap:32px 28px}
.questionnaire .field{gap:12px;justify-content:flex-end}
.questionnaire fieldset{min-width:0;margin:0;padding:0;border:0}
.questionnaire legend,.questionnaire .field>label{font-size:15px;line-height:1.8;margin-bottom:0}
.questionnaire legend{margin-bottom:12px}
.questionnaire .required-mark{display:inline-block;color:#ff8000;font-size:10px;margin-left:8px;white-space:nowrap}
.questionnaire .name-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.questionnaire .name-part{display:grid;gap:7px;min-width:0}
.questionnaire .name-part>span{font-size:12px;color:#fff;margin:0}
.questionnaire input,.questionnaire select{border-color:#d9d9d9;border-radius:4px;height:54px;min-height:54px}
/* iOS date controls must use the same border box as the other answers. */
.questionnaire input[type=date]{-webkit-appearance:none;appearance:none;box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0;min-inline-size:0;height:54px;min-height:54px;max-height:54px;text-align:left}
.questionnaire input[type=date]::-webkit-date-and-time-value{min-height:24px;text-align:left}
.questionnaire input[type=date]::-webkit-datetime-edit{min-width:0;padding:0}
.questionnaire input:focus-visible,.questionnaire select:focus-visible,.questionnaire textarea:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.questionnaire select{appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 9'%3E%3Cpath d='m1 1 6 6 6-6' fill='none' stroke='%23050f23' stroke-width='1.5'/%3E%3C/svg%3E");background-size:12px 8px;background-repeat:no-repeat;background-position:right 16px center}
.questionnaire .field-hint{font-size:12px;color:#fff;margin:0 0 14px}
.questionnaire .answer-options{display:grid;gap:10px}
.questionnaire .answer-option{display:flex;align-items:flex-start;gap:12px;padding:13px 15px;border:1px solid #454545;border-radius:4px;cursor:pointer;line-height:1.7}
.questionnaire .answer-option:has(input:checked){border-color:var(--orange);background:#ff80000b}
.questionnaire .answer-option input{width:18px;height:18px;min-height:18px;flex:0 0 18px;margin:4px 0 0;padding:0;accent-color:var(--orange)}
.questionnaire .answer-option span{color:#eee;font-size:14px;margin:0}
.questionnaire [hidden]{display:none!important}
@media(max-width:700px){.questionnaire{gap:28px}.questionnaire .name-pair{gap:12px}.questionnaire legend,.questionnaire .field>label{font-size:14px}.questionnaire .answer-option{padding:12px}.questionnaire .answer-option span{font-size:13px}}
