.gk-floating-contact{
  --gk-fc-trigger-size:58px;
  --gk-fc-trigger-size-mobile:54px;
  --gk-fc-trigger-bg:#3342fd;
  --gk-fc-trigger-hover-bg:#2635e8;
  --gk-fc-trigger-color:#fff;
  --gk-fc-trigger-border:rgba(255,255,255,.28);
  --gk-fc-trigger-border-width:1px;
  --gk-fc-trigger-shadow:0 10px 30px rgba(16,24,40,.18);
  --gk-fc-panel-width:330px;
  --gk-fc-panel-bg:#fff;
  --gk-fc-panel-text:#101828;
  --gk-fc-panel-muted:#667085;
  --gk-fc-panel-border:#e4e7ec;
  --gk-fc-panel-radius:18px;
  --gk-fc-item-bg:#f8f9fc;
  --gk-fc-side:24px;
  --gk-fc-bottom:24px;
  --gk-fc-side-mobile:16px;
  --gk-fc-bottom-mobile:18px;
  --gk-fc-nav-offset:0px;
  --gk-fc-z:99990;
  position:fixed;
  z-index:var(--gk-fc-z);
  bottom:calc(var(--gk-fc-bottom) + var(--gk-fc-nav-offset));
  max-width:calc(100vw - (var(--gk-fc-side) * 2));
  font-family:inherit;
  line-height:1.5;
  isolation:isolate;
  transition:opacity .2s ease,transform .2s ease,bottom .2s ease;
}
.gk-floating-contact--left{left:var(--gk-fc-side)}
.gk-floating-contact--right{right:var(--gk-fc-side)}
.gk-floating-contact *, .gk-floating-contact *::before, .gk-floating-contact *::after{box-sizing:border-box}
.gk-floating-contact svg{display:block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gk-floating-contact button,.gk-floating-contact a{-webkit-tap-highlight-color:transparent}

.gk-floating-contact__trigger{
  position:relative;
  z-index:3;
  width:var(--gk-fc-trigger-size);
  height:var(--gk-fc-trigger-size);
  min-width:var(--gk-fc-trigger-size);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:0;
  color:var(--gk-fc-trigger-color)!important;
  background:var(--gk-fc-trigger-bg)!important;
  border:var(--gk-fc-trigger-border-width) solid var(--gk-fc-trigger-border)!important;
  border-radius:999px;
  box-shadow:var(--gk-fc-trigger-shadow);
  outline:none;
  text-decoration:none!important;
  cursor:pointer;
  transform:translateZ(0);
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.gk-floating-contact--shape-pill .gk-floating-contact__trigger{width:auto;max-width:min(280px,calc(100vw - 32px));padding-inline:18px}
.gk-floating-contact__trigger:hover{color:var(--gk-fc-trigger-color)!important;background:var(--gk-fc-trigger-hover-bg)!important;transform:translateY(-2px)}
.gk-floating-contact__trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--gk-fc-trigger-bg) 32%,transparent);outline-offset:3px}
.gk-floating-contact__trigger-icon{display:grid;place-items:center;flex:0 0 auto;font-size:25px;transition:opacity .18s ease,transform .22s ease}
.gk-floating-contact__trigger-image{display:block;width:27px;height:27px;object-fit:contain}
.gk-floating-contact__trigger-label{overflow:hidden;max-width:180px;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800}
.gk-floating-contact__trigger-icon--close{position:absolute;opacity:0;transform:rotate(-70deg) scale(.72)}
.gk-floating-contact.is-open .gk-floating-contact__trigger-icon--open{opacity:0;transform:rotate(70deg) scale(.72)}
.gk-floating-contact.is-open .gk-floating-contact__trigger-icon--close{opacity:1;transform:rotate(0) scale(1)}
.gk-floating-contact--shape-pill.is-open .gk-floating-contact__trigger-image{display:block;width:27px;height:27px;object-fit:contain}
.gk-floating-contact__trigger-label{opacity:.78}

.gk-floating-contact__panel{
  position:absolute;
  z-index:2;
  bottom:calc(100% + 13px);
  width:min(var(--gk-fc-panel-width),calc(100vw - 24px));
  max-height:min(68vh,620px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  color:var(--gk-fc-panel-text);
  background:var(--gk-fc-panel-bg);
  border:1px solid var(--gk-fc-panel-border);
  border-radius:var(--gk-fc-panel-radius);
  box-shadow:0 20px 56px rgba(16,24,40,.20),0 4px 14px rgba(16,24,40,.08);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform-origin:bottom center;
  transition:opacity .2s ease,visibility .2s ease,transform .24s cubic-bezier(.2,.8,.2,1);
}
.gk-floating-contact--left .gk-floating-contact__panel{left:0;transform-origin:bottom left}
.gk-floating-contact--right .gk-floating-contact__panel{right:0;transform-origin:bottom right}
.gk-floating-contact[data-open-animation="fade-scale"] .gk-floating-contact__panel{transform:translateY(7px) scale(.965)}
.gk-floating-contact[data-open-animation="slide-up"] .gk-floating-contact__panel{transform:translateY(18px)}
.gk-floating-contact--left[data-open-animation="slide-side"] .gk-floating-contact__panel{transform:translateX(-18px)}
.gk-floating-contact--right[data-open-animation="slide-side"] .gk-floating-contact__panel{transform:translateX(18px)}
.gk-floating-contact[data-open-animation="none"] .gk-floating-contact__panel{transition:none;transform:none}
.gk-floating-contact.is-open .gk-floating-contact__panel{opacity:1;visibility:visible;pointer-events:auto;transform:none}

.gk-floating-contact__panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:17px 17px 13px;border-bottom:1px solid var(--gk-fc-panel-border)}
.gk-floating-contact__panel-copy{min-width:0;display:flex;flex-direction:column;gap:4px}
.gk-floating-contact__panel-title{color:var(--gk-fc-panel-text);font-size:14px;font-weight:900;line-height:1.65}
.gk-floating-contact__panel-subtitle{color:var(--gk-fc-panel-muted);font-size:11px;line-height:1.75}
.gk-floating-contact__panel-close{flex:0 0 32px;width:32px;height:32px;padding:0;display:grid;place-items:center;color:var(--gk-fc-panel-muted);background:transparent;border:0;border-radius:9px;cursor:pointer;transition:color .15s ease,background .15s ease}
.gk-floating-contact__panel-close:hover{color:var(--gk-fc-panel-text);background:color-mix(in srgb,var(--gk-fc-panel-text) 6%,transparent)}
.gk-floating-contact__panel-close svg{width:18px;height:18px}

.gk-floating-contact__items{padding:10px;display:flex;flex-direction:column;gap:7px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.gk-floating-contact__item{min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr) 22px;align-items:center;gap:11px;padding:9px 10px;color:var(--gk-fc-panel-text)!important;background:var(--gk-fc-item-bg);border:1px solid color-mix(in srgb,var(--gk-fc-panel-border) 88%,transparent);border-radius:13px;text-decoration:none!important;transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}
.gk-floating-contact--items-minimal .gk-floating-contact__item{padding:8px 6px;background:transparent;border-color:transparent;border-radius:10px}
.gk-floating-contact__item:hover{color:var(--gk-fc-panel-text)!important;background:color-mix(in srgb,var(--gk-fc-channel) 5%,#fff);border-color:color-mix(in srgb,var(--gk-fc-channel) 22%,var(--gk-fc-panel-border));box-shadow:0 5px 16px rgba(16,24,40,.055);transform:translateY(-1px)}
.gk-floating-contact__item:focus-visible{outline:2px solid color-mix(in srgb,var(--gk-fc-channel) 40%,transparent);outline-offset:1px}
.gk-floating-contact__item-icon{width:44px;height:44px;display:grid;place-items:center;overflow:hidden;color:#fff;background:var(--gk-fc-channel);border-radius:12px;box-shadow:0 5px 15px color-mix(in srgb,var(--gk-fc-channel) 20%,transparent)}
.gk-floating-contact__item-icon svg{width:21px;height:21px}
.gk-floating-contact__item-icon img{width:100%;height:100%;padding:8px;display:block;object-fit:contain;background:#fff}
.gk-floating-contact__item-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.gk-floating-contact__item-copy strong{overflow:hidden;color:var(--gk-fc-panel-text);font-size:12.5px;font-weight:850;line-height:1.6;text-overflow:ellipsis;white-space:nowrap}
.gk-floating-contact__item-copy small{overflow:hidden;color:var(--gk-fc-panel-muted);font-size:10.5px;line-height:1.65;text-overflow:ellipsis;white-space:nowrap}
.gk-floating-contact__item-arrow{display:grid;place-items:center;color:color-mix(in srgb,var(--gk-fc-panel-muted) 82%,transparent)}
.gk-floating-contact__item-arrow svg{width:17px;height:17px}

.gk-floating-contact__backdrop{display:none}
.gk-floating-contact--admin-preview .gk-floating-contact__trigger{outline:2px dashed color-mix(in srgb,var(--gk-fc-trigger-bg) 42%,#fff);outline-offset:3px}
.gk-floating-contact__preview-badge{position:absolute;z-index:4;bottom:calc(100% + 8px);inset-inline-start:0;padding:4px 8px;color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:999px;box-shadow:0 4px 14px rgba(16,24,40,.09);font-size:9px;font-weight:800;white-space:nowrap;pointer-events:none}
.gk-floating-contact__panel--preview{width:min(340px,calc(100vw - 24px))}
.gk-floating-contact__preview-state{padding:20px;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center}
.gk-floating-contact__preview-icon{width:42px;height:42px;display:grid;place-items:center;color:#3342fd;background:#eef0ff;border-radius:12px;font-size:22px}
.gk-floating-contact__preview-state strong{color:#101828;font-size:13px;font-weight:900;line-height:1.8}
.gk-floating-contact__preview-state p{margin:0;color:#667085;font-size:11px;line-height:1.9}
.gk-floating-contact__preview-link{margin-top:3px;padding:8px 12px;color:#fff!important;background:#3342fd;border-radius:9px;text-decoration:none!important;font-size:11px;font-weight:800}
.gk-floating-contact__preview-link:hover{color:#fff!important;background:#2635e8}

/* Attention is driven periodically by JS instead of animating forever. */
.gk-floating-contact.is-attention-active[data-attention="pulse"] .gk-floating-contact__trigger{animation:gk-fc-pulse 1s ease-in-out 1}
.gk-floating-contact.is-attention-active[data-attention="bounce"] .gk-floating-contact__trigger{animation:gk-fc-bounce .78s ease 1}
.gk-floating-contact.is-attention-active[data-attention="shake"] .gk-floating-contact__trigger{animation:gk-fc-shake .7s ease 1}
.gk-floating-contact.is-attention-active[data-attention="glow"] .gk-floating-contact__trigger{animation:gk-fc-glow 1.2s ease 1}
.gk-floating-contact.is-attention-active[data-attention="ring"] .gk-floating-contact__trigger::after{content:"";position:absolute;inset:-1px;border:2px solid var(--gk-fc-trigger-bg);border-radius:inherit;animation:gk-fc-ring 1.15s ease-out 1;pointer-events:none}
@keyframes gk-fc-pulse{0%,100%{transform:scale(1)}45%{transform:scale(1.075)}70%{transform:scale(.985)}}
@keyframes gk-fc-ring{0%{opacity:.58;transform:scale(.9)}100%{opacity:0;transform:scale(1.55)}}
@keyframes gk-fc-bounce{0%,100%{transform:translateY(0)}35%{transform:translateY(-8px)}60%{transform:translateY(2px)}80%{transform:translateY(-2px)}}
@keyframes gk-fc-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-4px)}40%,80%{transform:translateX(4px)}}
@keyframes gk-fc-glow{0%,100%{box-shadow:var(--gk-fc-trigger-shadow)}50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--gk-fc-trigger-bg) 16%,transparent),0 12px 34px color-mix(in srgb,var(--gk-fc-trigger-bg) 30%,transparent)}}

.gk-floating-contact.is-overlay-suppressed{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(14px)}

.gk-floating-contact--device-mobile{display:none}
@media (max-width:767px){
  body.gk-floating-contact-open{overflow:hidden}
  .gk-floating-contact{bottom:calc(var(--gk-fc-bottom-mobile) + var(--gk-fc-nav-offset));max-width:calc(100vw - (var(--gk-fc-side-mobile) * 2))}
  .gk-floating-contact--left{left:var(--gk-fc-side-mobile)}
  .gk-floating-contact--right{right:var(--gk-fc-side-mobile)}
  .gk-floating-contact__trigger{width:var(--gk-fc-trigger-size-mobile);height:var(--gk-fc-trigger-size-mobile);min-width:var(--gk-fc-trigger-size-mobile)}
  .gk-floating-contact--shape-pill .gk-floating-contact__trigger{width:auto}
  .gk-floating-contact__trigger-icon{font-size:23px}
  .gk-floating-contact--device-desktop{display:none}
  .gk-floating-contact--device-mobile{display:block}
  .gk-floating-contact__panel{position:fixed;left:12px!important;right:12px!important;bottom:calc(var(--gk-fc-bottom-mobile) + var(--gk-fc-nav-offset) + var(--gk-fc-trigger-size-mobile) + 12px);width:auto;max-width:none;max-height:min(66vh,540px);transform-origin:bottom center}
  .gk-floating-contact[data-mobile-backdrop="1"].is-open .gk-floating-contact__backdrop{position:fixed;z-index:1;inset:0;display:block;width:100vw;height:100vh;padding:0;background:rgba(15,23,42,.32);border:0;backdrop-filter:blur(1.5px);cursor:default}
  .gk-floating-contact__panel-head{padding:15px 15px 12px}
  .gk-floating-contact__items{padding:9px}
}
@media (min-width:768px){.gk-floating-contact--device-mobile{display:none!important}}

/* Cooperate with other full-screen theme layers when requested. */
body.gk-floating-contact-hide-overlays.gk-cart-open .gk-floating-contact,
html.gk-cart-open body.gk-floating-contact-hide-overlays .gk-floating-contact,
body.gk-floating-contact-hide-overlays.gk-filters-open .gk-floating-contact,
body.gk-floating-contact-hide-overlays:has(.gk-archive__filters-wrapper--open) .gk-floating-contact{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(14px)}

@media (prefers-reduced-motion:reduce){
  .gk-floating-contact,.gk-floating-contact *{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}
  .gk-floating-contact__panel{transform:none!important}
}
