.wpf-page{margin:0;padding:40px 18px;background:#f3f5f9;color:#1b263b;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6}.wpf-card{max-width:760px;margin:0 auto;padding:36px;background:#fff;border:1px solid #e0e6ef;border-radius:16px;box-shadow:0 8px 36px #162b4510}.wpf-eyebrow{color:#4169af;letter-spacing:.18em;font-size:12px;font-weight:700}.wpf-card h1{font-size:30px;line-height:1.25;margin:10px 0 28px;overflow-wrap:anywhere}.wpf-form-wrap{max-width:760px;color:inherit;line-height:1.6}.wpf-form-wrap *{box-sizing:border-box}.wpf-field{margin:22px 0;min-width:0;padding:0;border:0}.wpf-field>label,.wpf-field legend{display:block;font-weight:600;margin-bottom:7px}.wpf-field input:not([type=checkbox]):not([type=radio]),.wpf-field textarea,.wpf-field select{display:block;width:100%;max-width:100%;padding:11px 12px;border:1px solid #aab7ca;border-radius:7px;background:#fff;color:#18253b;font:inherit}.wpf-field input:focus,.wpf-field textarea:focus,.wpf-field select:focus,.wpf-submit:focus{outline:3px solid #95b8f2;outline-offset:2px}.wpf-field input[aria-invalid=true],.wpf-field textarea[aria-invalid=true],.wpf-field select[aria-invalid=true]{border-color:#ab2638}.wpf-option{display:flex!important;align-items:flex-start;gap:10px;font-weight:400!important;margin:8px 0}.wpf-option input{flex-shrink:0;margin-top:7px;width:17px;height:17px;accent-color:#2559a6}.wpf-help,.wpf-required-note{font-size:14px;color:#586479;margin:7px 0}.wpf-field-error{color:#9c2133;font-size:14px;margin:6px 0}.wpf-submit{padding:13px 24px;border:0;border-radius:7px;background:#2559a6;color:#fff;font:inherit;font-weight:600;cursor:pointer}.wpf-submit:hover{background:#194784}.wpf-submit:disabled{opacity:.55;cursor:not-allowed}.wpf-errors,.wpf-message,.wpf-success{padding:18px;border-radius:8px;margin:18px 0;overflow-wrap:anywhere}.wpf-errors{background:#fff1f2;border:1px solid #e9b5be;color:#792137}.wpf-message{background:#edf3fc;border:1px solid #bed0ed}.wpf-success{background:#edf8f0;border:1px solid #a8d5b4;color:#235336}.wpf-description{overflow-wrap:anywhere}.wpf-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.wpf-form-wrap a{color:#2559a6;text-decoration:underline}@media(max-width:600px){.wpf-page{padding:18px 10px}.wpf-card{padding:24px 18px;border-radius:10px}.wpf-card h1{font-size:25px}.wpf-submit{width:100%}}
/* Field layout follows DOM order; full-width fields start a fresh row. */
.wpf-fields{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:22px 20px;margin:22px 0}
.wpf-fields>.wpf-field{margin:0;min-width:0;grid-column:span 12;overflow-wrap:anywhere}
.wpf-fields>.wpf-width-half{grid-column:span 6}
.wpf-fields>.wpf-width-third{grid-column:span 4}
@media(max-width:600px){.wpf-fields{grid-template-columns:minmax(0,1fr);gap:22px}.wpf-fields>.wpf-field{grid-column:1/-1}}

/* Other input is progressively disclosed without requiring JavaScript. */
.wpf-other-entry>label{display:block;margin:8px 0;font-weight:600}
@supports selector(:has(*)){.wpf-other-wrap:not(:has(input[type="checkbox"]:checked)) .wpf-other-entry{display:none}}
/* Organisation review portal */
.wpf-card.wpf-review{max-width:1500px}.wpf-table-scroll{overflow:auto;max-height:70vh;border:1px solid #d4dce7;border-radius:8px}.wpf-review-table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px}.wpf-review-table caption{text-align:left;padding:12px;font-weight:600}.wpf-review-table th,.wpf-review-table td{border-right:1px solid #e0e6ef;border-bottom:1px solid #e0e6ef;vertical-align:top;padding:12px;min-width:190px;text-align:left}.wpf-review-table thead th{position:sticky;top:0;background:#edf3fc;z-index:1}.wpf-review-table tbody th{background:#f7f9fc;min-width:210px;font-weight:400}.wpf-review-table input:not([type=checkbox]),.wpf-review-table select,.wpf-review-table textarea{box-sizing:border-box;width:100%;min-width:170px;padding:8px;border:1px solid #aab7ca;border-radius:5px;font:inherit;background:white;color:#18253b}.wpf-review-table details{margin-top:10px;max-width:360px;overflow-wrap:anywhere;white-space:pre-wrap}.wpf-review-table summary{cursor:pointer;color:#2559a6}.wpf-review-table details div{padding:7px;background:#f3f5f9}.wpf-review-actions{margin:24px 0;padding:20px;background:#edf3fc;border-radius:8px}.wpf-review nav{margin:20px 0}.wpf-review input:focus,.wpf-review textarea:focus,.wpf-review select:focus,.wpf-review summary:focus{outline:3px solid #95b8f2;outline-offset:2px}

/* Mobile embedded forms need their own gutter; direct pages already have a card. */
@media(max-width:600px){
  .wpf-form-wrap{box-sizing:border-box;width:100%;padding-inline:16px}
  .wpf-page .wpf-card .wpf-form-wrap{padding-inline:0}
}

.wpf-contact{margin:24px 0;padding:20px;border:1px solid #bed0ed;border-radius:8px;max-width:760px}.wpf-contact legend{font-size:20px;font-weight:700}.wpf-contact details{overflow-wrap:anywhere}

/* Keep field padding inside the contact frame, including fieldset intrinsic sizing. */
.wpf-contact,.wpf-contact *{box-sizing:border-box}
.wpf-contact{width:100%;min-width:0;min-inline-size:0;margin-inline:0}
.wpf-contact legend{max-width:100%;white-space:normal;overflow-wrap:anywhere}
