.tsg-reach-out{position:fixed;right:28px;bottom:28px;z-index:6;display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:14px 22px;border:1px solid #3457d5;border-radius:30px;background:#3457d5;color:#fff;font:600 15px/1.3 'Instrument Sans',sans-serif;box-shadow:0 5px 20px #17181a20;cursor:pointer;animation:tsgReachIn .25s ease-out}
.tsg-reach-out[hidden]{display:none}
.tsg-reach-out:hover,.tsg-quick-contact__submit:hover{background:#2545bd}
.tsg-quick-contact{position:fixed;inset:auto 28px 28px auto;margin:0;width:min(430px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 56px);padding:30px;border:1px solid #d6d1c7;border-radius:8px;background:#f7f5f0;color:#17181a;overflow-y:auto;overscroll-behavior:contain;font:15px/1.5 'Instrument Sans',sans-serif;box-sizing:border-box;box-shadow:0 20px 80px #0003}
.tsg-quick-contact:not([open]){display:none}
.tsg-quick-contact[open]{animation:tsgReachIn .2s ease-out}
.tsg-quick-contact::backdrop{background:#17181a70;backdrop-filter:blur(3px)}
html:has(.tsg-quick-contact[open]){overflow:hidden}
.tsg-quick-contact *{box-sizing:border-box}
.tsg-quick-contact__close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;color:inherit;cursor:pointer}
.tsg-quick-contact__eyebrow{font:9px/1.4 'JetBrains Mono',monospace;letter-spacing:.07em;margin:0 38px 16px 0;color:#55575a}
.tsg-quick-contact h2{font:800 36px/1.03 'Bricolage Grotesque',sans-serif;letter-spacing:-.045em;margin:0 0 12px;color:inherit}
.tsg-quick-contact #TSGQuickIntro{font-size:14px;color:#55575a;margin:0 0 22px}
.tsg-quick-contact label{display:block;font-size:13px;font-weight:500;margin:13px 0 6px}
.tsg-quick-contact__optional{font-weight:400;color:#6b6d70}
.tsg-quick-contact input:not([type=hidden]),.tsg-quick-contact textarea{display:block;width:100%;border:1px solid #aaa79f;border-radius:3px;background:#fff;color:#17181a;font:16px/1.4 'Instrument Sans',sans-serif;padding:10px 12px;min-height:44px;box-shadow:none}
.tsg-quick-contact textarea{min-height:92px;resize:vertical}
.tsg-quick-contact__submit{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:48px;margin-top:20px;padding:12px 16px;border:0;border-radius:3px;background:#3457d5;color:#fff;font:600 15px/1.4 'Instrument Sans',sans-serif;cursor:pointer}
.tsg-reach-out:focus-visible,.tsg-quick-contact :is(input,textarea,button,a):focus-visible{outline:3px solid #3457d5;outline-offset:4px}
.tsg-quick-contact h2:focus{outline:none;box-shadow:none}
.tsg-quick-contact__response{border-left:3px solid #3457d5;padding:8px 16px;background:#e7ebfa;margin:20px 0 0}
.tsg-quick-contact__response h3{font-size:22px;margin:8px 0}
.tsg-quick-contact__response--error{background:#f7e8e5;border-color:#a22a20}
@keyframes tsgReachIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:749px){.tsg-reach-out{right:18px;bottom:calc(18px + env(safe-area-inset-bottom));gap:20px;min-height:48px;padding:12px 18px;font-size:14px}.tsg-quick-contact{inset:auto 12px calc(12px + env(safe-area-inset-bottom)) 12px;width:auto;max-height:calc(100dvh - 24px - env(safe-area-inset-bottom));padding:26px 22px}.tsg-quick-contact h2{font-size:32px}.tsg-quick-contact #TSGQuickIntro{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.tsg-reach-out,.tsg-quick-contact[open]{animation:none}}

body:has(#shop-hcaptcha-badge-container) .tsg-reach-out{bottom:calc(88px + env(safe-area-inset-bottom))}
