
  .grosco-chat {
    --grosco-blue: #1269b0;
    --grosco-blue-dark: #0a4f8a;
    --grosco-ease: cubic-bezier(0.22, 1, 0.36, 1);
    position: fixed;
    left: 24px;
    bottom: max(24px, var(--grosco-cookie-offset, 0px));
    z-index: 880;
    width: min(360px, calc(100vw - 48px));
    height: min(520px, calc(100svh - max(48px, calc(var(--grosco-cookie-offset, 0px) + 24px))));
    pointer-events: none;
    transition: bottom 0.24s var(--grosco-ease);
  }

  .grosco-chat .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .grosco-chat__launcher {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 92px;
    height: 92px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 3px solid var(--grosco-blue);
    border-radius: 50%;
    background: var(--ink, #171918);
    box-shadow:
      0 14px 32px rgba(0, 0, 0, 0.22),
      0 0 0 5px rgba(18, 105, 176, 0.12);
    opacity: 1;
    cursor: pointer;
    pointer-events: auto;
    transition:
      opacity 0.2s ease,
      transform 0.3s var(--grosco-ease),
      background 0.18s ease,
      visibility 0s linear 0s;
  }

  .grosco-chat__launcher:hover,
  .grosco-chat__launcher:focus-visible {
    background: var(--grosco-blue);
    opacity: 1;
    transform: translateY(-2px) scale(1.03);
    outline: none;
  }

  .grosco-chat[data-open="true"] .grosco-chat__launcher {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(12px) scale(0.82);
    transition-delay: 0s, 0s, 0.24s;
  }

  .grosco-chat__bubble-icon {
    position: relative;
    width: 40px;
    height: 35px;
    display: block;
    transform: scale(1.35);
  }

  .grosco-chat__bubble-back,
  .grosco-chat__bubble-front {
    position: absolute;
    display: block;
    border-radius: 7px;
  }

  .grosco-chat__bubble-back {
    right: 0;
    bottom: 0;
    width: 28px;
    height: 22px;
    background: #ff9b78;
  }

  .grosco-chat__bubble-back::after {
    content: "";
    position: absolute;
    right: 6px;
    bottom: -6px;
    width: 0;
    height: 0;
    border-top: 8px solid #ff9b78;
    border-left: 6px solid transparent;
  }

  .grosco-chat__bubble-front {
    left: 0;
    top: 0;
    width: 33px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    background: #ffffff;
  }

  .grosco-chat__bubble-front::after {
    content: "";
    position: absolute;
    left: 8px;
    bottom: -7px;
    width: 0;
    height: 0;
    border-top: 9px solid #ffffff;
    border-right: 7px solid transparent;
  }

  .grosco-chat__bubble-front i {
    width: 4px;
    height: 4px;
    display: block;
    border-radius: 50%;
    background: var(--grosco-blue);
  }

  .grosco-chat__panel {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(18, 105, 176, 0.28);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 22px 54px rgba(23, 25, 24, 0.27);
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(18px) scale(0.94);
    transform-origin: left bottom;
    transition:
      opacity 0.24s ease,
      transform 0.34s var(--grosco-ease),
      visibility 0s linear 0.3s;
  }

  .grosco-chat[data-open="true"] .grosco-chat__panel {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
    transition-delay: 0s;
  }

  .grosco-chat__header {
    min-height: 74px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) 38px;
    align-items: center;
    gap: 11px;
    background: #0d74ad;
    color: #ffffff;
    padding: 12px 13px;
  }

  .grosco-chat__avatar {
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    background: #eef7ff;
    font-size: 27px;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(5, 48, 87, 0.2);
    overflow: hidden;
  }

  .grosco-chat__avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  .grosco-chat__avatar > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .grosco-chat__avatar [hidden] {
    display: none;
  }

  .grosco-chat__identity {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }

  .grosco-chat__identity strong {
    max-width: 100%;
    overflow: hidden;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .grosco-chat__hours {
    font-size: 11px;
    line-height: 1.2;
    color: #e5edf4;
  }

  .grosco-chat__close {
    position: relative;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: rgba(5, 57, 96, 0.32);
    color: #ffffff;
    cursor: pointer;
  }

  .grosco-chat__close::before,
  .grosco-chat__close::after {
    content: "";
    position: absolute;
    left: 11px;
    top: 18px;
    width: 16px;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
  }

  .grosco-chat__close::before {
    transform: rotate(45deg);
  }

  .grosco-chat__close::after {
    transform: rotate(-45deg);
  }

  .grosco-chat__close:hover,
  .grosco-chat__close:focus-visible {
    background: rgba(5, 57, 96, 0.52);
    outline: 2px solid rgba(255, 255, 255, 0.84);
    outline-offset: 2px;
  }

  .grosco-chat__messages {
    min-height: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #eef8f9;
    padding: 16px 14px 18px;
    scrollbar-color: rgba(11, 79, 145, 0.28) transparent;
    scrollbar-width: thin;
  }

  .grosco-chat__date {
    align-self: center;
    color: #65758a;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
  }

  .grosco-chat__message-row {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .grosco-chat__message-row[hidden] {
    display: none !important;
  }

  .grosco-chat__message-bubble {
    max-width: 84%;
    border: 1px solid rgba(30, 72, 104, 0.1);
    border-radius: 7px;
    color: #24354a;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.42;
    padding: 11px 12px;
    box-shadow: 0 6px 16px rgba(35, 66, 92, 0.08);
  }

  .grosco-chat__message-bubble p {
    margin: 0;
  }

  .grosco-chat__message-row time {
    color: #78889a;
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
  }

  .grosco-chat__message-row.is-assistant {
    align-items: flex-start;
  }

  .grosco-chat__message-row.is-assistant .grosco-chat__message-bubble {
    background: #ffffff;
  }

  .grosco-chat__message-row.is-user {
    align-items: flex-end;
  }

  .grosco-chat__message-row.is-user .grosco-chat__message-bubble {
    border-color: rgba(22, 117, 207, 0.3);
    background: #d8edff;
    color: #153a5e;
  }

  .grosco-chat__file-link {
    max-width: 100%;
    display: block;
    margin-top: 8px;
    border: 0;
    border-radius: 5px;
    background: rgba(22, 117, 207, 0.1);
    color: #0a4f8a;
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
    overflow-wrap: anywhere;
    padding: 8px 9px;
    text-align: left;
  }

  .grosco-chat__file-link:hover,
  .grosco-chat__file-link:focus-visible {
    background: rgba(22, 117, 207, 0.18);
    outline: 2px solid rgba(22, 117, 207, 0.26);
  }

  .grosco-chat__contact-form {
    display: grid;
    gap: 8px;
    padding: 12px 14px;
    border-top: 1px solid #dbe4ed;
    background: #f5f8fb;
    color: #17334c;
    flex: 0 0 auto;
    max-height: calc(100% - 100px);
    min-height: 0;
    overflow-y: auto;
  }
  .grosco-chat__contact-form[hidden], .grosco-chat__composer[hidden] { display: none !important; }
  .grosco-chat__contact-form .grosco-chat__contact-prompt { margin: 0; font-size: 13px; line-height: 1.4; font-weight: 600; }
  .grosco-chat__contact-form label { display: grid; gap: 4px; margin: 0; font-size: 12px; font-weight: 600; }
  .grosco-chat__contact-form input { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #bacbda; border-radius: 5px; height: 38px; padding: 8px 10px; background: #fff; color: #17334c; font: inherit; font-size: 14px; }
  .grosco-chat__contact-form input::placeholder { color: #677c90; }
  .grosco-chat__contact-form input:focus { outline: 2px solid #1269b0; outline-offset: 1px; }
  .grosco-chat__contact-form button { min-height: 38px; padding: 8px 12px; border: 0; border-radius: 5px; background: #1269b0; color: #fff; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
  .grosco-chat__contact-form button:disabled { opacity: .6; cursor: wait; }
  .grosco-chat__contact-form small { font-size: 11px; line-height: 1.3; color: #51687c; }
  .grosco-chat__contact-form .grosco-chat__contact-error { margin: 0; color: #a52525; font-size: 12px; line-height: 1.4; }
  .grosco-chat__contact-error[hidden] { display: none !important; }

  .grosco-chat__composer {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    align-items: center;
    column-gap: 8px;
    row-gap: 5px;
    border-top: 1px solid rgba(11, 79, 145, 0.16);
    background: #ffffff;
    padding: 11px;
  }

  .grosco-chat__composer [data-grosco-chat-input] {
    min-width: 0;
    min-height: 44px;
    border: 1px solid rgba(11, 79, 145, 0.24);
    border-radius: 7px;
    background: #ffffff;
    color: #24354a;
    font: inherit;
    font-size: 14px;
    line-height: 1.3;
    padding: 10px 12px;
  }

  .grosco-chat__composer [data-grosco-chat-input]::placeholder {
    color: #8795a5;
  }

  .grosco-chat__composer [data-grosco-chat-input]:focus {
    border-color: var(--grosco-blue);
    box-shadow: 0 0 0 3px rgba(22, 117, 207, 0.12);
    outline: none;
  }

  .grosco-chat__composer [data-grosco-chat-input]:disabled {
    background: #f4f7fa;
    cursor: wait;
  }

  .grosco-chat__composer > button {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(11, 79, 145, 0.28);
    border-radius: 7px;
    background: var(--grosco-blue);
    color: #ffffff;
    cursor: pointer;
    font: inherit;
    font-size: 25px;
    line-height: 1;
  }

  .grosco-chat__composer > button:hover,
  .grosco-chat__composer > button:focus-visible {
    background: var(--grosco-blue-dark);
    outline: 2px solid rgba(22, 117, 207, 0.24);
    outline-offset: 2px;
  }

  .grosco-chat__composer > button:disabled {
    opacity: 0.58;
    cursor: wait;
  }

  .grosco-chat__composer > .grosco-chat__attach {
    background: #ffffff;
    color: var(--grosco-blue-dark);
    transition: border-color 160ms ease, box-shadow 160ms ease;
  }

  .grosco-chat__composer > .grosco-chat__attach:hover,
  .grosco-chat__composer > .grosco-chat__attach:focus-visible {
    border-color: rgba(22, 117, 207, 0.78);
    background: #ffffff;
    box-shadow:
      0 0 0 2px rgba(22, 117, 207, 0.18),
      0 0 12px rgba(22, 117, 207, 0.58);
    outline: none;
  }

  .grosco-chat__attach svg {
    display: block;
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .grosco-chat__selected-file {
    grid-column: 1 / -1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 7px;
    border-radius: 5px;
    background: #edf6ff;
    color: #23415e;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.3;
    padding: 6px 8px;
  }

  .grosco-chat__selected-file[hidden] {
    display: none;
  }

  .grosco-chat__selected-file span {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .grosco-chat__selected-file button {
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
    border: 0;
    border-radius: 50%;
    background: rgba(11, 79, 145, 0.12);
    color: #0a4f8a;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
  }

  .grosco-chat__status,
  .grosco-chat__privacy {
    grid-column: 1 / -1;
    margin: 0;
  }

  .grosco-chat__status {
    color: #17643a;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.3;
  }

  .grosco-chat__status[data-error="true"] {
    color: #8a241f;
  }

  .grosco-chat__privacy {
    color: #718096;
    font-size: 9px;
    font-weight: 500;
    line-height: 1.25;
  }

  .grosco-chat__privacy a {
    color: #4d6987;
    text-decoration: underline;
    text-underline-offset: 2px;
  }

  @media (max-width: 767px) {
    .grosco-chat {
      left: 12px;
      bottom: max(12px, var(--grosco-cookie-offset, 0px));
      width: calc(100vw - 24px);
      height: min(540px, calc(100svh - max(24px, calc(var(--grosco-cookie-offset, 0px) + 12px))));
    }

    .grosco-chat__launcher {
      width: 89px;
      height: 89px;
    }

    .grosco-chat__bubble-icon {
      transform: scale(1.16);
    }

    .grosco-chat__header {
      min-height: 68px;
      grid-template-columns: 42px minmax(0, 1fr) 36px;
      padding: 10px 11px;
    }

    .grosco-chat__avatar {
      width: 42px;
      height: 42px;
      font-size: 24px;
    }

    .grosco-chat__messages {
      padding: 14px 12px 16px;
    }
  }

  @media (max-height: 560px) and (min-width: 768px) {
    .grosco-chat {
      bottom: max(12px, var(--grosco-cookie-offset, 0px));
      height: calc(100svh - max(24px, calc(var(--grosco-cookie-offset, 0px) + 12px)));
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .grosco-chat__launcher,
    .grosco-chat__panel {
      transition-duration: 0.01ms;
    }
  }



.callback-widget {
  --callback-offset: 0px;
  position: fixed;
  right: 24px;
  bottom: max(24px, var(--callback-offset));
  z-index: 880;
  width: 380px;
  height: min(530px, calc(100svh - max(48px, calc(var(--callback-offset) + 24px))));
  pointer-events: none;
  transition: bottom 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

.callback-widget__launcher {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 92px;
  height: 92px;
  display: grid;
  place-items: center;
  border: 3px solid var(--accent);
  border-radius: 50%;
  background: var(--ink);
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.22),
    0 0 0 5px rgba(18, 105, 176, 0.12);
  color: white;
  pointer-events: auto;
  transition:
    transform 180ms ease,
    background 180ms ease;
}

.callback-widget__launcher:hover {
  background: var(--accent);
  transform: translateY(-3px);
}

.callback-widget__launcher svg {
  width: 36.5px;
  height: 36.5px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.callback-widget__panel {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  max-height: 100%;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--paper);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.24);
  color: var(--ink);
  opacity: 0;
  padding: 30px;
  pointer-events: none;
  transform: translateY(16px) scale(0.97);
  transform-origin: right bottom;
  visibility: hidden;
  transition:
    opacity 180ms ease,
    transform 220ms ease,
    visibility 0s linear 220ms;
}

.callback-widget[data-open="true"] .callback-widget__panel {
  opacity: 1;
  pointer-events: auto;
  transform: none;
  visibility: visible;
  transition-delay: 0s;
}

.callback-widget[data-open="true"] .callback-widget__launcher {
  opacity: 0;
  pointer-events: none;
}

.callback-widget__panel h2 {
  margin-bottom: 12px;
  padding-right: 22px;
  font-size: 2rem;
  line-height: 1.02;
}

.callback-widget__note {
  margin-bottom: 22px;
  color: var(--muted);
  font-size: 0.78rem;
}

.callback-widget__form {
  display: grid;
  gap: 16px;
}

.callback-widget__form .button {
  width: 100%;
}

.widget-close {
  position: absolute;
  top: 13px;
  right: 13px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: var(--warm);
  color: var(--ink);
  font-size: 1.5rem;
  line-height: 1;
}

.callback-widget__attention {
  pointer-events: none;
}



@media(max-width:767px){.callback-widget{right:12px;bottom:12px;width:calc(100vw - 24px);height:min(520px,calc(100svh - 24px))}.callback-widget__launcher{width:89px;height:89px}.callback-widget__panel{padding:25px 20px}}


  .grosco-chat__attention,
  .callback-widget__attention {
    --widget-attention-background: #e8f4ff;
    --widget-attention-pointer-offset: 36px;
    position: absolute;
    bottom: 118px;
    z-index: 3;
    width: max-content;
    max-width: min(250px, calc(100vw - 48px));
    border: 1px solid #1269b0;
    border-radius: 8px;
    background: linear-gradient(180deg, #fbfdff 0%, var(--widget-attention-background) 100%);
    box-shadow:
      0 12px 28px rgba(11, 79, 145, 0.2),
      0 0 0 3px rgba(22, 117, 207, 0.07);
    color: #0a4f8a;
    font: inherit;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    padding: 11px 15px;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px) scale(0.94);
    transition:
      opacity 0.48s ease,
      transform 0.48s cubic-bezier(0.22, 1, 0.36, 1),
      visibility 0s linear 0.48s;
    will-change: opacity, transform;
  }

  .grosco-chat__launcher,
  .callback-widget__launcher {
    --widget-attention-wave-scale: 1.48;
    isolation: isolate;
  }

  .grosco-chat__launcher::before,
  .grosco-chat__launcher::after,
  .callback-widget__launcher::before,
  .callback-widget__launcher::after {
    content: "";
    position: absolute;
    inset: -3px;
    z-index: 0;
    border: 3px solid rgba(18, 105, 176, 0.94);
    border-radius: 50%;
    box-shadow: 0 0 18px rgba(18, 105, 176, 0.34);
    opacity: 0;
    pointer-events: none;
    transform: scale(0.88);
  }

  .grosco-chat__bubble-icon,
  .callback-widget__launcher svg {
    position: relative;
    z-index: 1;
  }

  .grosco-chat__attention {
    left: 0;
    transform-origin: left bottom;
  }

  .callback-widget__attention {
    right: 0;
    transform-origin: right bottom;
  }

  .grosco-chat__attention::before,
  .grosco-chat__attention::after,
  .callback-widget__attention::before,
  .callback-widget__attention::after {
    content: "";
    position: absolute;
    bottom: -10px;
    width: 0;
    height: 0;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    border-top: 10px solid #1269b0;
  }

  .grosco-chat__attention::after,
  .callback-widget__attention::after {
    bottom: -8px;
    border-right-width: 9px;
    border-left-width: 9px;
    border-top: 9px solid var(--widget-attention-background);
  }

  .grosco-chat__attention::before {
    left: var(--widget-attention-pointer-offset);
  }

  .grosco-chat__attention::after {
    left: calc(var(--widget-attention-pointer-offset) + 1px);
  }

  .callback-widget__attention::before {
    right: var(--widget-attention-pointer-offset);
  }

  .callback-widget__attention::after {
    right: calc(var(--widget-attention-pointer-offset) + 1px);
  }

  .grosco-chat[data-widget-attention="shake"] .grosco-chat__launcher,
  .callback-widget[data-widget-attention="shake"] .callback-widget__launcher {
    animation: widget-attention-shake 1.05s ease-in-out both;
  }

  .grosco-chat[data-widget-attention="shake"] .grosco-chat__launcher::before,
  .grosco-chat[data-widget-attention="shake"] .grosco-chat__launcher::after,
  .callback-widget[data-widget-attention="shake"] .callback-widget__launcher::before,
  .callback-widget[data-widget-attention="shake"] .callback-widget__launcher::after {
    animation: widget-attention-wave 1.55s cubic-bezier(0.2, 0.72, 0.35, 1) 1 both;
  }

  .grosco-chat[data-widget-attention] .grosco-chat__launcher::after,
  .callback-widget[data-widget-attention] .callback-widget__launcher::after {
    animation-delay: 0.45s;
  }

  .grosco-chat[data-widget-attention="show"] .grosco-chat__attention,
  .callback-widget[data-widget-attention="show"] .callback-widget__attention {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    transition:
      opacity 0.26s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
      visibility 0s linear 0s;
  }

  .grosco-chat[data-open="true"] .grosco-chat__attention,
  .callback-widget[data-open="true"] .callback-widget__attention {
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px) scale(0.94);
  }

  @keyframes widget-attention-shake {
    0%, 100% { transform: translateX(0) rotate(0); }
    12% { transform: translateX(-6px) rotate(-2deg); }
    24% { transform: translateX(6px) rotate(2deg); }
    36% { transform: translateX(-5px) rotate(-1.6deg); }
    48% { transform: translateX(5px) rotate(1.6deg); }
    60% { transform: translateX(-4px) rotate(-1.2deg); }
    72% { transform: translateX(4px) rotate(1.2deg); }
    84% { transform: translateX(-2px) rotate(-0.65deg); }
    92% { transform: translateX(2px) rotate(0.65deg); }
  }

  @keyframes widget-attention-wave {
    0% {
      opacity: 0;
      transform: scale(0.88);
    }
    16% {
      opacity: 0.92;
    }
    100% {
      opacity: 0;
      transform: scale(var(--widget-attention-wave-scale));
    }
  }

  @media (max-width: 767px) {
    .grosco-chat__attention,
    .callback-widget__attention {
      --widget-attention-pointer-offset: 34px;
      bottom: 105px;
      max-width: calc(100vw - 24px);
      font-size: 14px;
      padding: 10px 13px;
    }

    .grosco-chat__launcher,
    .callback-widget__launcher {
      --widget-attention-wave-scale: 1.28;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    [data-widget-attention="shake"] :is(.grosco-chat__launcher, .callback-widget__launcher) {
      animation: widget-attention-shake 1.05s ease-in-out both !important;
    }

    [data-widget-attention="shake"] :is(.grosco-chat__launcher, .callback-widget__launcher)::before,
    [data-widget-attention="shake"] :is(.grosco-chat__launcher, .callback-widget__launcher)::after {
      animation: widget-attention-wave 1.55s cubic-bezier(0.2, 0.72, 0.35, 1) 1 both !important;
    }

    [data-widget-attention] :is(.grosco-chat__launcher, .callback-widget__launcher)::after {
      animation-delay: 0.45s !important;
    }

    [data-widget-attention="show"] :is(.grosco-chat__attention, .callback-widget__attention) {
      transition:
        opacity 0.26s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 0s !important;
    }

    [data-widget-attention="hide"] :is(.grosco-chat__attention, .callback-widget__attention) {
      transition:
        opacity 0.48s ease,
        transform 0.48s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 0.48s !important;
    }
  }



.grosco-chat,.callback-widget{--ink:#17334c;--paper:#fff;--line:#d7e3ec;--warm:#edf3f8;--muted:#526779;--accent:#1269b0;--accent-dark:#0a4f8a;--accent-pale:#eaf4fc;font-family:Arial,sans-serif;line-height:1.45;text-align:left}
.grosco-chat *,.callback-widget *{box-sizing:border-box}.grosco-chat button,.callback-widget button{cursor:pointer;font-family:inherit}
.grosco-chat[data-open="true"],.callback-widget[data-open="true"]{z-index:900}
.callback-widget .field{display:grid;gap:6px;font-size:14px}.callback-widget .field input{width:100%;min-height:44px;background:#fff;color:#17334c;border:1px solid #b8cad9;border-radius:8px;padding:10px 12px;font:inherit}
.callback-widget .consent{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.4}.callback-widget .consent input{appearance:auto;flex:none;width:16px;height:16px;margin:1px 0}
.callback-widget .button{border:0;border-radius:8px;min-height:46px;padding:12px 18px;background:var(--accent);color:white;font-weight:bold;font-size:15px}.callback-widget .button:disabled{opacity:.6;cursor:wait}
.callback-widget .eyebrow{font-size:12px;color:var(--muted);margin:0 0 12px}.callback-widget__panel h2{margin:0 0 12px;font-size:27px;line-height:1.12}.callback-widget__note{margin:0 0 20px}
.callback-widget .honeypot,.grosco-chat .sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
[data-slings-callback-status]{font-size:13px;margin:0}[data-slings-callback-status][data-error="true"]{color:#a62727}
.grosco-chat__avatar img{object-fit:contain;max-width:100%;max-height:100%}.grosco-chat__avatar img[data-personal="true"]{object-fit:cover}.grosco-chat__header{background:#17334c}.grosco-chat__messages{color:#17334c}
@media(max-width:767px){.grosco-chat,.callback-widget{bottom:max(12px,var(--slings-bottom,0px));height:min(520px,calc(100svh - var(--slings-bottom,12px) - 12px))}.grosco-chat input,.callback-widget input{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){.grosco-chat *, .callback-widget *, .grosco-chat *::before, .callback-widget *::before,.grosco-chat *::after,.callback-widget *::after{animation:none!important;transition:none!important}}

/* Keep the light callback panel readable in every page theme. */
.callback-widget .callback-widget__panel h2 { color: var(--ink) !important; }
.callback-widget .callback-widget__note,
.callback-widget .callback-widget__panel .eyebrow { color: var(--muted) !important; }
/* Fixed widgets must fit the client width, including a visible scrollbar. */
@media (max-width: 767px) {
  .grosco-chat[data-open="true"], .callback-widget[data-open="true"] {
    left: 12px;
    right: 12px;
    width: auto;
  }
}

/* Page themes must not override the contact request and chat text colors. */
.grosco-chat .grosco-chat__contact-prompt { color: #17334c !important; }
.grosco-chat .grosco-chat__contact-error { color: #a52525 !important; }
.grosco-chat .grosco-chat__message-bubble p { color: inherit !important; }
