/* V46.483 - Apply for membership / sponsorship */
.apply-wrap{max-width:860px;margin:0 auto}
.apply-switch{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.apply-switch button{flex:1 1 220px;border:1px solid #c9dbe6;background:#fff;border-radius:14px;padding:14px 16px;font:inherit;font-weight:700;font-size:1.02rem;color:#073b64;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}
.apply-switch button:hover{background:#f1f8fc}
.apply-switch button[aria-selected="true"]{background:#073b64;border-color:#073b64;color:#fff;box-shadow:0 6px 16px rgba(7,59,100,.18)}
.apply-switch button:focus-visible{outline:3px solid rgba(22,119,184,.35);outline-offset:2px}
.apply-card{background:#fff;border:1px solid #d6e3ec;border-radius:18px;padding:24px;box-shadow:0 8px 26px rgba(18,54,76,.07)}
.apply-card fieldset{border:0;margin:0 0 22px;padding:0;min-width:0}
.apply-card legend{font-weight:800;color:#073b64;font-size:1.08rem;margin:0 0 12px;padding:0}
.apply-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.apply-grid .wide{grid-column:1/-1}
.apply-field label{display:block;font-weight:700;margin:0 0 5px;color:#173547;font-size:.95rem}
.apply-field label .opt{font-weight:400;color:#5b7080;font-size:.85rem}
.apply-field input,.apply-field textarea{width:100%;box-sizing:border-box;border:1px solid #b9ccd8;border-radius:10px;padding:11px 12px;font:inherit;background:#fbfdfe;color:#173547}
.apply-field textarea{min-height:90px;resize:vertical}
.apply-field input:focus,.apply-field textarea:focus{outline:3px solid rgba(22,119,184,.28);border-color:#1677b8;background:#fff}
.apply-field.bad input,.apply-field.bad textarea{border-color:#b3261e;background:#fff7f6}
.apply-hint{color:#5b7080;font-size:.85rem;margin:5px 0 0;line-height:1.6}
.apply-error{display:none;background:#fdecea;border:1px solid #f1b5b0;color:#8a1c14;border-radius:12px;padding:12px 14px;margin:0 0 16px;font-weight:600}
.apply-error.show{display:block}
.apply-note{background:#eef6fb;border:1px solid #cfe2ee;border-radius:12px;padding:13px 15px;color:#1c4560;line-height:1.8;margin:0 0 18px}
.apply-submit{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#073b64;color:#fff;font:inherit;font-weight:800;font-size:1.02rem;padding:13px 28px;cursor:pointer}
.apply-submit:hover{background:#0b5c8f}.apply-submit[disabled]{opacity:.6;cursor:wait}
.apply-show{display:inline-flex;gap:7px;align-items:center;margin-top:8px;font-size:.88rem;color:#4a5b6b}
.apply-foot{margin-top:16px;color:#4a5b6b}
@media(max-width:640px){.apply-grid{grid-template-columns:1fr}.apply-card{padding:18px}}
/* apply buttons used on other pages */
.apply-cta{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.apply-cta a,a.apply-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#073b64;color:#fff;font-weight:800;padding:11px 22px;text-decoration:none;border:2px solid #073b64}
.apply-cta a.ghost,a.apply-btn.ghost{background:#fff;color:#073b64}
.apply-cta a:hover,a.apply-btn:hover{background:#0b5c8f;border-color:#0b5c8f;color:#fff}
.apply-cta a.ghost:hover,a.apply-btn.ghost:hover{background:#eef6fb;color:#073b64;border-color:#073b64}
/* login page */
.login-apply{margin:18px 0 4px;padding:14px;border:1px solid #d3e3ee;border-radius:14px;background:#f5fafd;text-align:center}
.login-apply strong{display:block;color:#073b64;margin-bottom:9px;font-size:.98rem}
.login-apply .row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.login-apply a{flex:1 1 150px;border:1.5px solid #073b64;border-radius:999px;padding:9px 12px;font-weight:700;color:#073b64;text-decoration:none;background:#fff;font-size:.93rem}
.login-apply a:hover{background:#073b64;color:#fff}
/* application banner for signed-in applicants */
.app-banner{max-width:1500px;margin:0 auto 14px;border-radius:14px;padding:14px 18px;line-height:1.8;font-weight:600;border:1px solid}
.app-banner.pending{background:#fff7e0;border-color:#e8d49a;color:#6a4d00}
.app-banner.rejected{background:#fdecea;border-color:#f1b5b0;color:#8a1c14}
.app-banner.approved{background:#edf8f0;border-color:#bfdcc5;color:#165b2b}
.app-banner small{display:block;font-weight:400;margin-top:3px}

.sp-btns{display:flex;gap:10px;flex-wrap:wrap}
.sp-btn.sp-btn-ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.85)}
.sp-btn.sp-btn-ghost:hover,.sp-btn.sp-btn-ghost:focus-visible{background:rgba(255,255,255,.16);color:#fff}
