.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.join-layout{grid-template-columns:.9fr 1.2fr;gap:8%}
.join-form{position:relative;min-width:0;padding:34px;background:#f1f3eb;color:#1b2917;border:1px solid #dbe4d2;border-top:4px solid var(--green);border-radius:20px;box-shadow:0 24px 70px #0003;color-scheme:light}
.audience-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.audience-choice legend{font-size:24px;font-weight:600;letter-spacing:-.6px;margin-bottom:20px;color:#1b2917}
.audience-choice label{position:relative;min-width:0;align-items:flex-start;gap:10px;padding:16px 14px;border:1px solid #c9d2c2;border-radius:10px;background:#fff;color:#43523c;transition:background .2s,border-color .2s}
.audience-choice label:has(input:checked){background:var(--green);border-color:var(--green);color:#14200d}
.audience-choice input{flex:0 0 17px;width:17px;height:17px;margin:5px 0 0;accent-color:#213b12}
.audience-choice input:checked+span{color:#14200d}
.audience-choice strong{display:block;font-size:18px;font-weight:700;line-height:1.5}
.audience-choice small{display:block;margin-top:2px;font-size:13px;line-height:1.7}
.lead-fields{border:0;padding:0;margin:0;min-inline-size:0}
.form-intro{font-size:14px;line-height:1.8;color:#58634f;margin:20px 0 0}
.form-fields{margin:24px 0 28px;gap:20px 18px}
.form-fields label>span{font-size:14px;font-weight:500;color:#34432c;margin-bottom:8px}
.form-fields input,.form-fields select{display:block;font-size:1rem;min-height:54px;padding:13px 14px;background:#fff;color:#1b2917;width:100%;border:1px solid #c9d2c2;border-radius:8px;transition:border-color .2s,box-shadow .2s}
.form-fields input:hover,.form-fields select:hover{border-color:#91a283}
.join-form .form-fields input:focus,.join-form .form-fields select:focus{border-color:#558d2f;outline:2px solid #71c335;outline-offset:2px;box-shadow:0 0 0 5px #71c33518}
.form-fields select{color-scheme:light;padding-inline-end:28px}
.form-fields select option{background:#fff;color:#1b2917}
.form-fields [dir=ltr]{text-align:right}
.form-fields input::placeholder{color:#6b7564;opacity:1}
.field-wide{grid-column:1/-1}
.form-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.8;font-size:14px;color:#46553d;margin:0 0 24px;cursor:pointer}
.form-consent input{width:20px;height:20px;flex:0 0 20px;margin:3px 0 0;accent-color:#548d2f}
.form-consent a{color:#345d1b;text-decoration:underline;text-underline-offset:4px;font-weight:500}
.form-submit{min-height:56px;border-radius:8px;font-size:16px}
.form-note{max-width:none;font-size:13px;line-height:1.85;color:#616c58;margin-top:18px}
.form-status{padding:18px 20px;border-inline-start:3px solid #548d2f;border-radius:6px;background:#e2eed8;color:#234317;font-size:1rem}
.form-status[data-state=error]{border-color:#aa3f29;background:#fbe9e2;color:#7d2a19}
.a11y-contrast .join-form .form-fields input::placeholder{color:#59634f}
.a11y-text .audience-choice strong,.a11y-text .audience-choice small{font-size:inherit;line-height:inherit}
.form-submit:disabled{cursor:wait;opacity:.65}
.honey-field{position:absolute;left:0;top:0;width:1px;height:1px;overflow:hidden;clip-path:inset(100%);pointer-events:none}
.footer{flex-wrap:wrap}
.footer-links{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px;color:#b7c2ae}
.footer-links a{padding:8px 0}
.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1050px){.join-layout{grid-template-columns:.8fr 1.2fr;gap:6%}.join-form{padding:28px}.audience-choice label{padding:14px 10px;gap:8px}}
@media(max-width:760px){.join-layout{grid-template-columns:1fr;gap:36px}.join-form{padding:24px 20px;border-radius:16px}.audience-choice{gap:8px}.audience-choice legend{font-size:23px;margin-bottom:18px}.audience-choice label{padding:13px 10px;gap:7px}.audience-choice strong{font-size:17px}.audience-choice small{font-size:12px}.form-fields{gap:20px;margin:24px 0}.form-intro{margin-top:18px}.form-note{font-size:13px}.footer-links{order:4;flex-basis:100%;justify-content:center;gap:8px 18px}.form-consent{font-size:14px}}
@media(max-width:370px){.join-form{padding-inline:16px}.audience-choice label{padding-inline:8px}.audience-choice small{font-size:11px}}
@media(max-width:1050px){.a11y-text .join-layout{grid-template-columns:1fr}.a11y-text .audience-choice{grid-template-columns:1fr}}
