.contact-dock{position:fixed;right:20px;bottom:max(20px,env(safe-area-inset-bottom));z-index:90;display:flex;gap:8px;font-family:system-ui,sans-serif}
.contact-trigger{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:10px 14px;border:1px solid #c8e2e8;border-radius:999px;background:#fff;color:#075b3b;box-shadow:0 4px 20px #12334420;text-decoration:none;font:600 13px/1.3 system-ui,sans-serif;cursor:pointer}
.contact-trigger:hover{background:#e8fafd;border-color:#34c5dd}.contact-trigger svg{width:24px;height:24px;flex:none}
.contact-trigger:focus-visible,.contact-close:focus-visible,.contact-save:focus-visible{outline:3px solid #087e94;outline-offset:3px}
.contact-panel[hidden]{display:none}.contact-panel{position:absolute;bottom:calc(100% + 12px);right:0;width:320px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 110px);overflow:auto;box-sizing:border-box;padding:24px;border:1px solid #c8e2e8;border-radius:16px;background:#fff;color:#102b45;box-shadow:0 10px 40px #12334430}
.contact-panel h2{font:700 20px/1.3 system-ui,sans-serif;margin:0 20px 12px 0}.contact-panel p{font:400 14px/1.5 system-ui,sans-serif;margin:10px 0}.contact-panel img{display:block;width:100%;height:auto;background:white;border-radius:0;object-fit:contain}.contact-panel .contact-tip{font-size:12px;color:#476271}.contact-panel .contact-services{font-size:12px}.contact-close{position:absolute;right:10px;top:6px;background:transparent;border:0;color:#102b45;width:36px;height:36px;font-size:26px;cursor:pointer}.contact-save{display:block;text-align:center;padding:10px;border-radius:8px;background:#e8fafd;color:#085c6c;font-weight:600;font-size:14px;text-decoration:none}
body>footer{padding-bottom:100px}
@media(max-width:600px){.contact-dock{right:12px;bottom:max(12px,env(safe-area-inset-bottom));gap:6px}.contact-trigger{min-height:44px;padding:8px 10px;font-size:12px}.contact-panel{width:300px;padding:20px}}

.contact-telegram{color:#126b96}
@media(max-width:600px){.contact-dock{max-width:calc(100vw - 24px);flex-wrap:wrap;justify-content:flex-end}.contact-trigger{gap:5px;padding:8px}.contact-trigger svg{width:20px;height:20px}}
