:root{--membership-navy:#12253f;--membership-blue:#235f9d;--membership-light:#eef4fa;--membership-border:#d4dee8;--membership-danger:#b42318;--membership-success:#16803c}*{box-sizing:border-box}body{margin:0;background:#f3f6f8;color:#24303b}.membership-shell{width:min(1180px,calc(100% - 2rem));margin:2rem auto 4rem}.membership-hero{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--membership-navy);color:#fff;border-radius:1rem;padding:2rem 2.5rem;box-shadow:0 .5rem 1.5rem rgba(18,37,63,.14)}.membership-hero h1{margin:.2rem 0;font-size:clamp(2rem,4vw,3.2rem)}.membership-hero p{margin:0;opacity:.82}.membership-hero img{width:92px;height:108px;object-fit:contain;background:#fff;border-radius:.8rem;padding:.4rem}.membership-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.13em}.membership-introduction,.form-section,.payment-summary,.confirmation-card{background:#fff;border:1px solid var(--membership-border);border-radius:1rem;padding:1.5rem 1.75rem;margin-top:1.25rem;box-shadow:0 .25rem 1rem rgba(18,37,63,.05)}.membership-introduction p:last-child{margin-bottom:0}.required-key{color:#5d6873;font-size:.9rem}.required-key span,.field>span,.choice-group legend>span,.declaration-check>span{color:var(--membership-danger);font-weight:800}.section-heading{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.25rem}.section-heading>span{display:grid;place-items:center;flex:0 0 2.4rem;height:2.4rem;border-radius:50%;background:var(--membership-blue);color:#fff;font-weight:800}.section-heading h2{font-size:1.45rem;color:var(--membership-navy);margin:0}.section-heading p{margin:.25rem 0 0;color:#65707c}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:.35rem;font-weight:700;color:#263849}.field.full{grid-column:1/-1}.field input,.field textarea,.field select{width:100%;border:1px solid #aebdcc;border-radius:.55rem;padding:.7rem .75rem;background:#fff;color:#1c2731;font:inherit;font-weight:400}.field textarea{resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:3px solid rgba(35,95,157,.18);border-color:var(--membership-blue)}.field small,.field-note{font-weight:400;color:#69747f}.field.is-invalid input,.field.is-invalid textarea,.field.is-invalid select,.choice-group.is-invalid{border-color:var(--membership-danger)}.field-error{display:block;color:var(--membership-danger);font-size:.88rem;font-weight:700}.membership-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.membership-type-card{display:flex;flex-direction:column;gap:.25rem;border:2px solid var(--membership-border);border-radius:.75rem;padding:1rem;cursor:pointer;background:#fff}.membership-type-card input{margin:0 0 .25rem}.membership-type-card span{font-size:.9rem;color:#65707c}.membership-type-card.is-selected{border-color:var(--membership-blue);background:var(--membership-light)}.check-grid{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem}.check-grid label,.choice-group label,.declaration-check{display:flex;align-items:flex-start;gap:.5rem}.check-grid input,.choice-group input,.declaration-check input{width:1.1rem;height:1.1rem;margin-top:.15rem}.choice-group{border:0;padding:0;margin:0 0 1rem}.choice-group legend{font-weight:700;margin-bottom:.65rem}.choice-group label{display:inline-flex;margin-right:1.5rem}.conditional-panel{border-left:4px solid var(--membership-blue);background:#f7fafc;border-radius:.45rem;padding:1.25rem;margin-top:1rem}.conditional-panel[hidden],.form-section[hidden],[data-community-other-field][hidden]{display:none!important}.conditional-panel h3{font-size:1.1rem;color:var(--membership-navy);margin:1.25rem 0 .8rem}.conditional-panel h3:first-child{margin-top:0}.declaration-check{font-weight:700;margin:1rem 0}.safety-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.safety-item{border:1px solid var(--membership-border);border-radius:.6rem;padding:.8rem}.safety-item>label:first-child{font-weight:700}.field.compact{margin-top:.5rem;font-size:.9rem}.validation-summary{background:#fff3f2;border:1px solid #f1aaa5;border-left:5px solid var(--membership-danger);border-radius:.75rem;padding:1rem 1.25rem;margin-top:1.25rem}.validation-summary h2{font-size:1.15rem;color:#7a1b15}.validation-summary ul{margin-bottom:0}.payment-summary{background:var(--membership-light);border-color:#aac5df}.payment-summary>div{display:flex;justify-content:space-between;gap:1rem;font-size:1.2rem}.payment-summary p{margin:.5rem 0 0;color:#536170}.form-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:1.25rem}.form-actions button,.confirmation-card .button{border:0;border-radius:.55rem;padding:.8rem 1.2rem;background:var(--membership-blue);color:#fff;font-weight:800;text-decoration:none}.form-actions .button-secondary{background:#fff;color:#394957;border:1px solid #9eacb9}.autosave-status{color:#64717d;font-size:.9rem;text-align:right;margin-top:.6rem}.membership-footer{display:flex;justify-content:space-between;gap:1rem;margin-top:1.25rem;color:#65707c}.membership-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.was-validated input:invalid,.was-validated textarea:invalid,.was-validated select:invalid{border-color:var(--membership-danger);box-shadow:0 0 0 .18rem rgba(180,35,24,.12)}.confirmation-shell{max-width:850px}.confirmation-card{text-align:center;padding:2.5rem}.confirmation-mark{display:grid;place-items:center;width:4rem;height:4rem;margin:0 auto 1rem;border-radius:50%;background:#daf2e2;color:var(--membership-success);font-size:2rem;font-weight:900}.confirmation-card h2{color:var(--membership-navy)}.confirmation-card dl{max-width:560px;margin:1.5rem auto;text-align:left}.confirmation-card dl div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--membership-border);padding:.65rem 0}.confirmation-card dd{font-weight:700;text-align:right}.confirmation-card .button{display:inline-block;margin-top:1rem}@media(max-width:850px){.membership-type-grid,.form-grid.three-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.membership-shell{width:min(100% - 1rem,1180px);margin:.5rem auto 2rem}.membership-hero{border-radius:.75rem;padding:1.25rem}.membership-hero img{width:66px;height:78px}.membership-introduction,.form-section,.payment-summary,.confirmation-card{padding:1.1rem}.form-grid,.form-grid.three-columns,.membership-type-grid,.safety-grid{grid-template-columns:1fr}.form-actions,.membership-footer,.payment-summary>div{flex-direction:column}.form-actions button{width:100%}.membership-footer{text-align:center}.section-heading{gap:.7rem}.section-heading>span{flex-basis:2rem;height:2rem}.confirmation-card dl div{display:block}.confirmation-card dd{margin:0;text-align:left}}
