.membership-page{min-height:auto;padding:26px 18px 34px;background:linear-gradient(180deg,#f4f7fa 0,#eef3f6 100%);font-family:Inter,"Segoe UI",Arial,sans-serif}
.membership-shell{width:min(930px,100%);margin:auto;border:1px solid #dce4e8;border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(12,31,52,.1)}
.membership-form-card{padding:25px 30px 22px}
.membership-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.membership-heading>span{display:block;margin-bottom:4px;color:#df681f;font-size:9px;font-weight:850;letter-spacing:.14em}
.membership-heading h2{margin:0;color:#102944;font-size:26px;font-weight:800;line-height:1.1;letter-spacing:-.025em}
.membership-heading p{margin:6px 0 0;color:#71808b;font-size:11px;line-height:1.45}
.membership-back{min-height:34px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;border:1px solid #d9e2e7;border-radius:7px;color:#536672;text-decoration:none;font-size:10px;font-weight:750;background:#fff}
.membership-back:hover{border-color:#cbd7dd;color:#102944;background:#f8fafb}
.membership-steps{position:relative;margin:18px 0 20px;display:grid;grid-template-columns:repeat(3,1fr)}
.membership-steps:before{content:"";position:absolute;left:16%;right:16%;top:13px;height:1px;background:#dce4e8}
.membership-steps button{position:relative;z-index:1;border:0;background:transparent;color:#94a0a7;font-size:9px;font-weight:750}
.membership-steps i{width:27px;height:27px;margin:0 auto 4px;display:flex;align-items:center;justify-content:center;border:1px solid #d7e0e5;border-radius:50%;background:#fff;font-style:normal;font-size:10px}
.membership-steps button.is-active{color:#17384b}
.membership-steps button.is-active i{border-color:#ef7625;background:#ef7625;color:#fff;box-shadow:0 3px 10px rgba(239,118,37,.2)}
.membership-step-panel{display:none}
.membership-step-panel.is-active{display:block;animation:membershipPanelIn .22s ease both}
.membership-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.membership-field{display:grid;align-content:start;gap:4px;color:#354b58;font-size:10px;font-weight:750}
.membership-field-wide{grid-column:1/-1}
.membership-field input,.membership-field select,.membership-field textarea{width:100%;min-height:39px;padding:7px 10px;border:1px solid #dbe4e9;border-radius:7px;background:#fbfcfd;color:#173240;font:500 12px/1.35 Inter,"Segoe UI",Arial,sans-serif;outline:0;box-sizing:border-box}
.membership-field textarea{min-height:58px;max-height:74px;resize:vertical}
.membership-field input:focus,.membership-field select:focus,.membership-field textarea:focus{border-color:#ef7625;box-shadow:0 0 0 3px rgba(239,118,37,.1);background:#fff}
.membership-field .field-validation-error,.membership-check-error{color:#b42318;font-size:8px;line-height:1.25}
.membership-step-actions{margin-top:14px;display:flex;align-items:center;justify-content:space-between}
.membership-step-actions button{min-height:37px;padding:0 14px;border:0;border-radius:7px;background:#ed7223;color:#fff;font-size:10px;font-weight:800;box-shadow:0 5px 12px rgba(237,114,35,.16)}
.membership-step-actions button:hover{background:#d96018}
.membership-step-actions .membership-secondary{border:1px solid #d9e2e7;background:#fff;color:#50636e;box-shadow:none}
.membership-consent-grid{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.membership-check{margin:0;padding:10px 11px;display:flex;align-items:flex-start;gap:8px;border:1px solid #dce5e9;border-radius:8px;background:#f9fbfc;color:#586b75;font-size:9px;line-height:1.45}
.membership-check input{margin-top:2px;accent-color:#ed7223}
.membership-security{margin-top:9px;padding:8px 10px;border-radius:7px;background:#eef7f2;color:#38624f;font-size:9px}
.membership-security i{margin-right:6px;color:#277153}
.membership-validation,.membership-success{margin:10px 0;padding:9px 11px;border-radius:8px;font-size:10px}
.membership-validation{color:#9f2d20;background:#fff0ee}
.membership-validation.validation-summary-valid{display:none}
.membership-validation ul{margin:0;padding-left:16px}
.membership-success{display:flex;gap:9px;color:#276044;background:#eaf6ed}
.membership-success span,.membership-success strong{display:block}
.membership-success i{font-size:16px}
@keyframes membershipPanelIn{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}
@media(max-width:700px){.membership-page{padding:14px 10px 24px}.membership-form-card{padding:20px 18px}.membership-heading-row{gap:12px}.membership-heading h2{font-size:23px}.membership-back{padding:0 9px}.membership-back{font-size:0}.membership-back i{font-size:13px}.membership-field-grid{gap:9px}.membership-consent-grid{grid-template-columns:1fr}}
@media(max-width:480px){.membership-shell{border-radius:11px}.membership-field-grid{grid-template-columns:1fr}.membership-field-wide{grid-column:auto}.membership-heading p{max-width:280px}.membership-steps{margin:16px 0}.membership-form-card{padding:18px 14px}}
