.sn-contact .sn-contact-form{margin:24px 0 8px;max-width:720px}
.sn-contact .sn-contact-fields{display:grid;grid-template-columns:1fr;gap:16px}
.sn-contact label{display:block;font-size:14px;font-weight:700;line-height:1.4}
.sn-contact .sn-contact-optional{font-weight:400}
.sn-contact input,.sn-contact select,.sn-contact textarea{display:block;width:100%;margin-top:6px;min-height:44px;padding:10px 12px;font:inherit;font-weight:400;color:#262626;background:#fff;border:1px solid #767676;border-radius:4px;box-sizing:border-box}
.sn-contact textarea{min-height:132px;resize:vertical}
.sn-contact input:focus-visible,.sn-contact select:focus-visible,.sn-contact textarea:focus-visible,.sn-contact .sn-contact-submit:focus-visible{outline:2px solid #262626;outline-offset:2px}
.sn-contact label+label,.sn-contact .sn-contact-fields+label{margin-top:16px}
.sn-contact .sn-contact-submit{margin-top:20px;min-height:44px;padding:12px 28px;font-size:14px;font-weight:700;color:#fff;background:#262626;border:1px solid #262626;border-radius:12px;cursor:pointer}
.sn-contact .sn-contact-submit:hover{background:#000}
.sn-contact .sn-contact-success{margin:24px 0;padding:16px;font-size:16px;background:#f4f4f4;border-radius:12px}
.sn-contact .errors,.sn-contact .form-message--error{margin:16px 0;padding:12px 16px;color:#8b0000;background:#fdf1f1;border-radius:12px}
.sn-contact .errors ul{margin:0;padding-left:20px}
@media (min-width:768px){.sn-contact .sn-contact-fields{grid-template-columns:1fr 1fr}.sn-contact .sn-contact-fields>label:nth-child(5){grid-column:1 / -1}}
