.membership-page{padding-bottom:clamp(4rem,7vw,7rem)}.membership-application{width:100%}.membership-form{width:100%;min-width:0}.membership-section{grid-template-columns:minmax(11rem,.65fr) minmax(0,2fr);gap:clamp(2rem,5vw,5rem);padding-block:3rem;display:grid}.membership-section:not(:last-child){border-bottom:1px solid var(--border)}.membership-section-heading{align-self:start;position:sticky;top:7.5rem}.membership-section-number{font-family:var(--font-mono);color:var(--workshop-accent);margin-bottom:.75rem;font-size:.8125rem;display:block}.membership-section-heading h2{letter-spacing:-.04em;text-wrap:pretty;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:500;line-height:1.2}.membership-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.5rem;min-width:0;display:grid}.membership-field{grid-column:1/-1;min-width:0}.membership-field--half{grid-column:auto}.membership-label{color:var(--foreground);margin-bottom:.75rem;padding:0;font-size:1rem;font-weight:500;line-height:1.5;display:block}.membership-required{color:var(--workshop-accent)}.membership-input{border:1px solid var(--border);background:var(--workshop-surface);width:100%;min-width:0;min-height:52px;color:var(--foreground);font:inherit;border-radius:2px;padding:.875rem 1rem;font-size:1rem;line-height:1.5;transition:border-color .15s;display:block}.membership-input::placeholder{color:var(--muted-foreground);opacity:1}textarea.membership-input{resize:vertical;min-height:11rem}.membership-input:hover{border-color:var(--muted-foreground)}.membership-input:focus-visible{border-color:var(--workshop-accent);outline:2px solid var(--workshop-accent);outline-offset:2px;box-shadow:none}.membership-input[aria-invalid=true]{border-color:var(--error)}.membership-fieldset{border:0;padding:0}.membership-fieldset legend{width:100%}.membership-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.membership-choices--three{grid-template-columns:repeat(3,minmax(0,1fr))}.membership-choice{border:1px solid var(--border);background:var(--workshop-surface);cursor:pointer;border-radius:2px;align-items:flex-start;gap:.75rem;min-width:0;min-height:56px;padding:1rem;transition:border-color .15s,background-color .15s;display:flex}.membership-choice:hover{border-color:var(--muted-foreground)}.membership-choice:has(input:checked){border-color:var(--workshop-accent);background:color-mix(in srgb,var(--workshop-accent) 10%,var(--background))}.membership-choice:has(input:focus-visible){outline:2px solid var(--workshop-accent);outline-offset:2px}.membership-choice input{appearance:auto;width:1.125rem;height:1.125rem;accent-color:var(--workshop-accent);cursor:pointer;box-shadow:none;flex-shrink:0;margin:.1875rem 0 0}.membership-choice-label{color:var(--foreground);font-size:1rem;line-height:1.5}.membership-hint,.membership-error{margin-top:.75rem;font-size:.875rem;line-height:1.6}.membership-hint{color:var(--muted-foreground)}.membership-error{color:var(--error)}.membership-error-banner{border:1px solid var(--error);background:color-mix(in srgb,var(--error) 8%,var(--background));color:var(--foreground);margin-top:2rem;padding:1.25rem}.membership-submit-row{grid-column:1/-1;justify-content:flex-end;padding-top:.5rem;display:flex}.membership-submit{color:#fff;min-height:56px;font-family:var(--font-display);cursor:pointer;background:#167535;border:1px solid #167535;border-radius:2px;justify-content:space-between;align-items:center;gap:1.75rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;line-height:1.5;display:inline-flex}.membership-submit:hover{background:#1b6030;border-color:#1b6030}.membership-submit:focus-visible{outline:2px solid var(--workshop-accent);outline-offset:4px}.membership-submit:disabled{opacity:.65;cursor:wait}.membership-submit svg{flex-shrink:0;width:1.5rem;height:1.5rem}.membership-success{border:1px solid var(--border);background:var(--workshop-surface);text-align:center;margin-top:3rem;padding:clamp(2rem,5vw,4rem)}.membership-success-icon{border:1px solid var(--workshop-accent);width:3.5rem;height:3.5rem;color:var(--workshop-accent);justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.membership-success h3{margin-bottom:1rem;font-size:2rem;line-height:1.25}.membership-success p{max-width:35rem;color:var(--muted-foreground);margin-inline:auto;font-size:1.125rem;line-height:1.7}@media (max-width:1023px){.membership-section{grid-template-columns:minmax(0,1fr);gap:1.75rem}.membership-section-heading{position:static}.membership-section-number{margin-bottom:.5rem}}@media (max-width:639px){.membership-section{padding-block:2rem}.membership-fields,.membership-choices{grid-template-columns:minmax(0,1fr)}.membership-fields{gap:1.75rem}.membership-submit{width:100%}}@media (prefers-reduced-motion:reduce){.membership-input,.membership-choice{transition:none}}