.sot-contact,.sot-contact *{box-sizing:border-box}
.sot-contact{padding:64px 20px 112px;background:#fff;color:#171717;font-family:inherit}
.sot-contact__inner{width:min(100%,680px);margin:auto}
.sot-contact__heading{margin-bottom:36px}
.sot-contact__eyebrow{margin:0 0 12px;color:#777;font-size:11px;font-weight:700;letter-spacing:.16em}
.sot-contact h1{margin:0;font-size:clamp(36px,9vw,56px);line-height:1.12;letter-spacing:-.05em;font-weight:750}
.sot-contact__dot{color:#777}
.sot-contact__heading>p:last-child{margin:16px 0 0;color:#666;font-size:15px;line-height:1.7;word-break:keep-all}
.sot-contact__content{display:block}
.sot-contact__form{display:grid;gap:22px}
.sot-contact__trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sot-contact__step[hidden],.sot-contact__retry[hidden]{display:none!important}
.sot-contact [data-field][hidden]{display:none!important}
.sot-contact__row{display:grid;grid-template-columns:1fr;gap:22px}
.sot-contact label{display:block;min-width:0;font-size:14px;font-weight:650}
.sot-contact__required{color:#c84646}.sot-contact__optional{color:#999;font-size:12px;font-weight:400}
.sot-contact__kind{min-width:0;margin:0;padding:0;border:0}
.sot-contact__kind legend{padding:0;font-size:14px;font-weight:650}
.sot-contact__choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}
.sot-contact .sot-contact__choice{position:relative;display:block;cursor:pointer}
.sot-contact .sot-contact__choice input{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;opacity:0;pointer-events:none}
.sot-contact__choice span{display:flex;align-items:center;justify-content:center;min-height:56px;padding:10px;border:1px solid #d6d6d6;border-radius:8px;background:#fff;color:#333;text-align:center;font-size:15px}
.sot-contact__choice input:checked+span{border-color:#191919;background:#191919;color:#fff}
.sot-contact__choice input:focus-visible+span{outline:2px solid #111;outline-offset:3px}
.sot-contact input,.sot-contact select,.sot-contact textarea{display:block;width:100%;min-width:0;min-height:48px;margin-top:8px;padding:12px 14px;border:1px solid #d6d6d6;border-radius:8px;background:#fff;color:#171717;font:inherit;font-size:15px;font-weight:400;outline:none;box-shadow:none;appearance:none}
.sot-contact input:focus,.sot-contact select:focus,.sot-contact textarea:focus{border-color:#333;box-shadow:0 0 0 2px #e5e5e5}
.sot-contact input[type=file]{padding:9px 12px;line-height:1.6}
.sot-contact input[type=file]::file-selector-button{margin-right:12px;padding:7px 12px;border:1px solid #d6d6d6;border-radius:6px;background:#f5f5f5;color:#222;font:inherit;font-size:13px;cursor:pointer}
.sot-contact select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%23333' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:44px}
.sot-contact textarea{min-height:172px;resize:vertical;line-height:1.6}
.sot-contact input::placeholder,.sot-contact textarea::placeholder{color:#999}
.sot-contact__status{margin:8px 0 0;color:#777;font-size:12px;line-height:1.5}
.sot-contact__privacy{margin:12px 0 0;color:#777;font-size:12px;line-height:1.6;word-break:keep-all}
.sot-contact__submit{display:inline-flex;align-items:center;justify-content:center;gap:16px;width:100%;min-height:52px;margin-top:22px;padding:0 22px;border:0;border-radius:8px;background:#191919;color:#fff;font:inherit;font-size:15px;font-weight:650;cursor:pointer}
.sot-contact__submit:hover{background:#3a3a3a}
.sot-contact__submit:disabled{background:#999;cursor:not-allowed}
.sot-contact__turnstile{min-height:65px}
.sot-contact__status[data-state=error]{color:#bb3030}
.sot-contact__status[data-state=success]{color:#237747}
.sot-contact__retry{margin-top:10px;padding:0;border:0;background:none;color:#222;text-decoration:underline;font:inherit;font-size:13px;cursor:pointer}
.sot-contact :focus-visible{outline:2px solid #111;outline-offset:3px}
@media(min-width:600px){.sot-contact__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media(min-width:768px){.sot-contact{padding:112px 40px 150px}.sot-contact__heading{margin-bottom:40px}.sot-contact__form{gap:24px}}
