.gkc,.gkc *{box-sizing:border-box}
.gkc{--gk:#1e73be;--gk-d:#155a96;--gk-bg:#f3f6fa;--gk-tx:#1d2733;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.45;color:var(--gk-tx);position:fixed;right:16px;bottom:16px;z-index:99990}
.gkc button{font-family:inherit;cursor:pointer}
.gkc-bubble{width:58px;height:58px;border-radius:50%;border:0;background:var(--gk);color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.28);display:flex;align-items:center;justify-content:center;transition:transform .15s,background .15s;padding:0}
.gkc-bubble:hover{background:var(--gk-d);transform:scale(1.06)}
.gkc-bubble:focus-visible,.gkc button:focus-visible,.gkc textarea:focus-visible{outline:3px solid #ffb400;outline-offset:2px}
.gkc-bubble svg{width:28px;height:28px;fill:#fff}
.gkc-nudge{position:absolute;right:0;bottom:70px;width:230px;background:#fff;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.22);padding:12px 30px 12px 14px;font-size:14px}
.gkc-nudge button.gkc-nudge-go{background:none;border:0;padding:0;color:var(--gk);font-weight:600;text-align:left;font-size:14px}
.gkc-nudge .gkc-x{position:absolute;top:4px;right:6px}
.gkc-panel{position:absolute;right:0;bottom:70px;width:372px;max-width:calc(100vw - 32px);height:min(600px,calc(100vh - 110px));background:#fff;border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.3);display:flex;flex-direction:column;overflow:hidden}
.gkc[hidden],.gkc [hidden]{display:none!important}
.gkc-head{background:var(--gk);color:#fff;padding:12px 14px;display:flex;align-items:center;gap:10px}
.gkc-head-t{flex:1;min-width:0}
.gkc-head-t b{display:block;font-size:16px}
.gkc-head-t span{font-size:12px;opacity:.9}
.gkc-head a.gkc-call{color:#fff;text-decoration:none;font-size:13px;font-weight:600;border:1px solid rgba(255,255,255,.7);border-radius:20px;padding:5px 11px;white-space:nowrap}
.gkc-x{background:none;border:0;color:inherit;font-size:24px;line-height:1;padding:4px 6px;opacity:.85}
.gkc-x:hover{opacity:1}
.gkc-log{flex:1;overflow-y:auto;padding:14px;background:var(--gk-bg);display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.gkc-m{max-width:88%;padding:9px 12px;border-radius:14px;word-wrap:break-word;overflow-wrap:anywhere}
.gkc-m a{color:var(--gk);font-weight:600}
.gkc-bot{background:#fff;border:1px solid #dde4ec;border-bottom-left-radius:4px;align-self:flex-start}
.gkc-me{background:var(--gk);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.gkc-me a{color:#fff}
.gkc-cards{align-self:stretch;display:flex;flex-direction:column;gap:8px}
.gkc-card{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #cfd9e4;border-radius:12px;padding:8px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}
.gkc-card:hover{border-color:var(--gk);box-shadow:0 2px 10px rgba(30,115,190,.2)}
.gkc-card img{width:56px;height:56px;object-fit:cover;border-radius:8px;background:#e8edf3;flex:none}
.gkc-card-b{flex:1;min-width:0}
.gkc-card-b b{display:block;font-size:14px;line-height:1.25}
.gkc-card-b span{display:block;font-size:13px;color:#4b5b6c;margin-top:2px}
.gkc-card-go{flex:none;background:#f58220;color:#fff;font-weight:700;font-size:13px;border-radius:8px;padding:7px 10px}
.gkc-chips{display:flex;flex-wrap:wrap;gap:6px}
.gkc-chip{background:#fff;border:1px solid var(--gk);color:var(--gk);border-radius:18px;padding:6px 12px;font-size:13.5px}
.gkc-chip:hover{background:var(--gk);color:#fff}
.gkc-typing{display:inline-flex;gap:4px;padding:4px 2px}
.gkc-typing i{width:7px;height:7px;border-radius:50%;background:#8aa0b5;animation:gkcb 1.2s infinite ease-in-out}
.gkc-typing i:nth-child(2){animation-delay:.15s}.gkc-typing i:nth-child(3){animation-delay:.3s}
@keyframes gkcb{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}
.gkc-form{display:flex;gap:8px;padding:10px;border-top:1px solid #dde4ec;background:#fff;align-items:flex-end}
.gkc-form textarea{flex:1;resize:none;border:1px solid #c5d0dc;border-radius:12px;padding:9px 11px;font:inherit;font-size:16px;max-height:110px;min-height:40px;color:var(--gk-tx);background:#fff}
.gkc-send{background:#f58220;border:0;color:#fff;font-weight:700;border-radius:12px;padding:0 16px;height:40px;font-size:15px}
.gkc-send:disabled{opacity:.5;cursor:default}
.gkc-note{font-size:11.5px;color:#66788b;padding:0 12px 9px;background:#fff;text-align:center}
@media (max-width:600px){
.gkc{right:12px;bottom:12px}
.gkc.gkc-open{right:0;bottom:0}
.gkc.gkc-open .gkc-bubble{display:none}
.gkc-panel{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;border-radius:0}
.gkc-nudge{width:200px}
}
/* Phones: the Call Now Button is a 60px full-width bar at the bottom. Sit above it, and hide it while the chat is open (the chat header has its own Call us button). */
@media (max-width:800px){body:has(#callnowbutton) .gkc:not(.gkc-open){bottom:72px}}
body:has(.gkc-open) #callnowbutton{display:none!important}
@media (prefers-reduced-motion:reduce){.gkc *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
