/* Responsive form safeguards shared by registration, membership and helper forms. */
main .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
main .form-grid>*{min-width:0}
main form,main fieldset,main label,.signature-field{min-width:0}
main input,main select,main textarea{max-width:100%;min-width:0;box-sizing:border-box}
main input[type=file]{overflow:hidden}
main .signature-field canvas{max-width:100%;min-width:0;box-sizing:border-box}
main .check-label{display:block;line-height:1.6;overflow-wrap:anywhere}
main .check-label input[type=checkbox]{display:inline-block;width:20px;height:20px;min-width:20px;vertical-align:middle;margin:0 8px 0 0}
main .table-wrap{max-width:100%;min-width:0;overscroll-behavior-x:contain}
main form .primary,main form .secondary{white-space:normal;overflow-wrap:anywhere;max-width:100%}
main .registration-documents a{display:inline-block;padding:8px 0}
main input,main textarea,main select{scroll-margin-top:140px}
@media(max-width:760px){
 main .public-registration-form,main .public-registration-form:has(input[name=attendee_count]){grid-template-columns:minmax(0,1fr);padding:20px}
 main .public-registration-form>.full{grid-column:1}
 main .public-registration-form button.primary{width:100%;justify-self:stretch}
}
@media(max-width:600px){
 main .primary,main .secondary{max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere}
 main .form-grid{grid-template-columns:minmax(0,1fr)}
 main .form-grid>.full{grid-column:1}
 main .panel{padding:18px}
 main form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),main form select,main form textarea{font-size:16px;min-height:46px}
 main form .check-label{padding:6px 0;min-height:44px}
 main form button,main form .primary,main form .secondary{min-height:44px}
 main .section h1,main .subhero h1{font-size:clamp(28px,8vw,38px);overflow-wrap:anywhere}
 main .section h2{font-size:clamp(23px,6.5vw,30px);overflow-wrap:anywhere}
 main .registration-event-intro,main .panel p{overflow-wrap:anywhere}
}
