:root{
  --sbs-contact-bg:#F6F3ED;
  --sbs-contact-canvas:#E9E2D6;
  --sbs-contact-ink:#252522;
  --sbs-contact-sea:#526F82;
  --sbs-contact-line:#B7AA96;
  --sbs-contact-muted:#655f57;
}

body.sbs-contact-open{overflow:hidden!important}
.sbs-contact-modal[hidden]{display:none!important}
.sbs-contact-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:24px}
.sbs-contact-modal__backdrop{position:absolute;inset:0;background:rgba(25,24,22,.58);backdrop-filter:blur(3px)}
.sbs-contact-panel{position:relative;z-index:1;width:min(680px,100%);max-height:min(840px,calc(100vh - 48px));overflow:auto;background:var(--sbs-contact-bg);border:1px solid var(--sbs-contact-line);border-radius:0!important;padding:44px;box-shadow:0 24px 70px rgba(25,24,22,.24);color:var(--sbs-contact-ink)}
.sbs-contact-inline-form .sbs-contact-panel{width:100%;max-height:none;overflow:visible;box-shadow:none}
.sbs-contact-panel__close{position:absolute;top:15px;right:18px;width:38px;height:38px;border:0!important;background:transparent!important;color:var(--sbs-contact-ink)!important;font:300 30px/1 Arial,sans-serif;cursor:pointer;border-radius:0!important;padding:0!important}
.sbs-contact-panel__heading>span{display:block;margin:0 0 14px;color:var(--sbs-contact-sea);font:700 12px/1.2 Inter,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase}
.sbs-contact-panel__heading h2{margin:0 0 14px!important;color:var(--sbs-contact-ink)!important;font-family:"Cormorant Garamond",Georgia,serif!important;font-size:clamp(34px,5vw,48px)!important;line-height:1.02!important;font-weight:500!important;letter-spacing:-.015em!important}
.sbs-contact-panel__heading p{margin:0 0 28px;color:var(--sbs-contact-muted);font:300 16px/1.65 Inter,Arial,sans-serif}
.sbs-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.sbs-contact-fields label{display:grid;gap:8px;margin:0;font:500 12px/1.25 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--sbs-contact-ink)}
.sbs-contact-fields input,.sbs-contact-fields textarea{width:100%;box-sizing:border-box;border:1px solid var(--sbs-contact-line)!important;border-radius:0!important;background:#fff!important;color:var(--sbs-contact-ink)!important;padding:13px 14px!important;font:300 16px/1.45 Inter,Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;outline:none}
.sbs-contact-fields input:focus,.sbs-contact-fields textarea:focus{border-color:var(--sbs-contact-sea)!important;box-shadow:0 0 0 1px var(--sbs-contact-sea)!important}
.sbs-contact-fields__message{grid-column:1/-1}
.sbs-contact-fields textarea{resize:vertical;min-height:150px}
.sbs-contact-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.sbs-turnstile{grid-column:1/-1;margin-top:2px;min-height:0}
.sbs-contact-panel__privacy{margin:16px 0 20px;color:var(--sbs-contact-muted);font:300 12px/1.55 Inter,Arial,sans-serif}
.sbs-contact-panel__actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.sbs-contact-panel__actions button{min-height:46px;border:1px solid var(--sbs-contact-sea)!important;border-radius:0!important;background:var(--sbs-contact-sea)!important;color:#fff!important;padding:12px 20px!important;font:700 11px/1 Inter,Arial,sans-serif!important;letter-spacing:.13em!important;text-transform:uppercase!important;cursor:pointer;transition:background .18s ease,color .18s ease}
.sbs-contact-panel__actions button:hover,.sbs-contact-panel__actions button:focus-visible{background:#fff!important;color:var(--sbs-contact-sea)!important}
.sbs-contact-panel__actions button:disabled{opacity:.55;cursor:wait}
[data-sbs-contact-status]{font:400 13px/1.4 Inter,Arial,sans-serif;color:var(--sbs-contact-muted)}
[data-sbs-contact-status].is-success{color:#2f6944}
[data-sbs-contact-status].is-error{color:#9c2d2d}

@media(max-width:680px){
  .sbs-contact-modal{padding:12px}
  .sbs-contact-panel{padding:36px 22px 28px;max-height:calc(100vh - 24px)}
  .sbs-contact-fields{grid-template-columns:1fr}
  .sbs-contact-fields__message{grid-column:auto}
  .sbs-contact-panel__actions{align-items:flex-start;flex-direction:column}
  .sbs-contact-panel__actions button{width:100%}
}
