.sbx-contact { --sbx-accent: #202020; max-width: 640px; width: 100%; margin: 1.25rem 0; color: inherit; }
.sbx-contact *, .sbx-contact *::before, .sbx-contact *::after { box-sizing: border-box; }
.sbx-contact .sbx-form { display: grid; gap: 1.15rem; }
.sbx-contact .sbx-field { display: grid; gap: .4rem; }
.sbx-contact label { display: block; margin: 0; font-weight: 600; }
.sbx-contact .sbx-required { font-size: .85em; font-weight: 400; }
.sbx-contact input:not([type="hidden"]), .sbx-contact textarea { width: 100%; min-width: 0; border: 1px solid #767676; border-radius: 6px; padding: .8rem .9rem; background: #fff; color: #202020; font: inherit; line-height: 1.5; }
.sbx-contact textarea { resize: vertical; min-height: 150px; }
.sbx-contact input:focus-visible, .sbx-contact textarea:focus-visible, .sbx-contact button:focus-visible, .sbx-contact a:focus-visible { outline: 3px solid #2768b2; outline-offset: 3px; }
.sbx-contact button { justify-self: start; max-width: 100%; border: 2px solid var(--sbx-accent); border-radius: 6px; padding: .8rem 1.3rem; background: var(--sbx-accent); color: #fff; font: inherit; font-weight: 600; cursor: pointer; }
.sbx-contact button:disabled { opacity: .6; cursor: wait; }
.sbx-contact .sbx-note { margin: 0; font-size: .88em; line-height: 1.6; }
.sbx-contact .sbx-note a { color: inherit; text-decoration: underline; }
.sbx-contact .sbx-trap { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip-path: inset(50%) !important; white-space: nowrap !important; }
.sbx-contact .sbx-status:empty { display: none; }
.sbx-contact .sbx-status { margin-bottom: 1.15rem; padding: 1rem; border: 1px solid; border-radius: 6px; line-height: 1.6; }
.sbx-contact .sbx-status--success { color: #175326; background: #edf8ef; }
.sbx-contact .sbx-status--error { color: #8a2020; background: #fff1f1; }
