:root{--green:#073f2c;--green2:#0b5a40;--gold:#c9a13b;--paper:#fbfaf6;--ink:#17211c;--muted:#607067;--line:#d9e1dc}*{box-sizing:border-box}body{margin:0;background:#f2f5f2;color:var(--ink);font-family:Arial,Helvetica,sans-serif}.portal-shell{max-width:920px;margin:28px auto;background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden}.portal-header{display:flex;align-items:center;gap:18px;padding:22px 28px;background:var(--green);color:white;border-bottom:4px solid var(--gold)}.logo{width:64px;height:64px;object-fit:contain;background:white;border-radius:10px}.portal-header h1{margin:0 0 4px;font-size:25px}.portal-header p{margin:0;opacity:.85}.progress{height:7px;background:#e6ebe8}.progress span{display:block;width:20%;height:100%;background:var(--gold);transition:.2s}form{padding:28px}.step{display:none}.step.active{display:block}.step h2{margin:0 0 20px;color:var(--green)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.wide{grid-column:1/-1}label{font-weight:700;font-size:14px;display:flex;flex-direction:column;gap:7px}input,select,textarea{width:100%;border:1px solid #bdc9c2;border-radius:9px;padding:12px;font:inherit;background:white}input:focus,select:focus,textarea:focus{outline:2px solid #b9d5c9;border-color:var(--green)}small,.helper{font-weight:400;color:var(--muted)}.track-box{padding:16px;border:1px solid #dac77e;background:#fffaf0;border-radius:10px}.track-box p{font-weight:400}.download-btn{display:inline-block;background:var(--green);color:#fff;text-decoration:none;padding:10px 14px;border-radius:8px}.files input[type=file]{padding:10px;background:var(--paper)}.consent{margin-top:20px;display:flex;gap:10px;align-items:flex-start}.consent input{width:auto;margin-top:3px}.consent label{display:block;font-weight:400}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px;border-top:1px solid var(--line);padding-top:20px}button{border:1px solid #adbbb3;background:#fff;border-radius:9px;padding:11px 17px;font-weight:700;cursor:pointer}.primary{background:var(--green);color:white;border-color:var(--green)}.hidden{display:none!important}.status{margin-top:16px;color:#8a3c16}.success{padding:42px;text-align:center}.success h2{color:var(--green)}@media(max-width:640px){.portal-shell{margin:0;border-radius:0}.portal-header{padding:18px}.portal-header h1{font-size:21px}form{padding:20px}.grid{grid-template-columns:1fr}.wide{grid-column:auto}.actions{justify-content:space-between}.logo{width:52px;height:52px}}

.portal-program-field{display:none}
.portal-program-field.portal-show{display:block}
.dscr-heading{grid-column:1/-1;margin-top:4px;padding:11px 13px;border-left:5px solid var(--gold);background:#f2f7f4;border-radius:7px}.dscr-heading h3{margin:0;color:var(--green)}
.portal-mailing-address{display:none}.portal-mailing-address.portal-show{display:flex}
.pac-container.bcf-address-suggestions-dismissed{display:none!important}
.application-role-field{border:1px solid var(--gold);border-radius:10px;background:#fbfaf6;margin:0 0 24px;padding:18px;min-width:0}.application-role-field legend{font-weight:700;color:var(--green);padding:0 5px}.application-role-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.application-role-choices label{flex-direction:row;align-items:center;background:white;border:1px solid var(--line);border-radius:8px;padding:14px;cursor:pointer}.application-role-choices input{width:auto;accent-color:var(--green);flex-shrink:0}.application-role-choices label:has(input:checked){border-color:var(--green);background:#edf5f0}.portal-broker-fields{margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--line)}@media(max-width:640px){.application-role-choices{grid-template-columns:1fr}}

/* v2.2.90 — restore clear unit-range boxes */
.unit-count-field{border:0;padding:0;margin:0;min-width:0}.unit-count-field legend{font-weight:700;margin-bottom:8px}.unit-count-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.unit-count-choice{display:block;position:relative}.unit-count-choice input{position:absolute;opacity:0;pointer-events:none}.unit-count-choice span{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #b9c7c0;border-radius:8px;background:#fff;font-weight:700;cursor:pointer;padding:8px;text-align:center}.unit-count-choice input:checked+span{outline:3px solid rgba(185,154,62,.28);border-color:#b99a3e;background:#fffaf0}.unit-count-choice input:focus-visible+span{outline:3px solid rgba(7,63,44,.25)}@media(max-width:640px){.unit-count-choices{grid-template-columns:1fr}}


/* v2.3.16 correction mode */
.correction-panel{max-width:850px;margin:0 auto;padding:18px}.correction-card{padding:24px}.brand-mini{font-size:.72rem;font-weight:900;letter-spacing:.09em;color:#9b771d;margin-bottom:4px}.correction-card h2{color:#073f2c;margin:0 0 8px}.correction-card .grid{margin-top:16px}.correction-card label.requested{border-left:4px solid #b59a52;padding-left:10px}.correction-card label small{display:block;color:#718078;margin-top:4px}.correction-readonly{background:#f2f5f3!important;color:#66736c}.hidden{display:none!important}
.receipt-check{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:#073f2c;color:#fff;font-size:30px}.receipt-id{font-weight:700;color:#073f2c}

.broker-workspace{padding:24px 28px}.broker-workspace h2{color:var(--green)}.broker-buttons{display:flex;gap:10px;flex-wrap:wrap}.broker-profile{padding:20px 0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.broker-profile button{align-self:end}.broker-row{padding:16px;border:1px solid var(--line);border-radius:10px;margin:12px 0}.broker-documents p{overflow-wrap:anywhere}.broker-workspace form:not(.broker-profile){padding:15px 0}.broker-workspace>button{margin-top:14px}@media(max-width:640px){.broker-profile{grid-template-columns:1fr}.broker-workspace{padding:20px}.broker-buttons button{flex:1}}

/* v2.3.128 — conditional residency fields */
.portal-residency-field{display:none}
.portal-residency-field.portal-show{display:flex}
.residency-information h3{margin:0 0 6px}

.portal-language{display:flex;justify-content:flex-end;gap:8px;margin:12px 0 20px}.portal-language button{padding:10px 18px;border:1px solid #246246;border-radius:6px;background:white;color:#174c35;font:inherit;cursor:pointer}.portal-language button[aria-pressed="true"]{background:#174c35;color:white}.portal-language button:focus-visible{outline:3px solid #bc9c48;outline-offset:3px}@media(max-width:600px){.portal-language{justify-content:center}.portal-header h1{overflow-wrap:anywhere}}
