html.crcw-no-scroll,
body.crcw-no-scroll {
  overflow: hidden !important;
}

.crcw-root,
.crcw-root *,
.crcw-root *::before,
.crcw-root *::after {
  box-sizing: border-box !important;
}

.crcw-root [hidden] {
  display: none !important;
}

.crcw-root {
  --crcw-blue-1: #3248d5;
  --crcw-blue-2: #0a1177;
  --crcw-blue-3: #070d59;
  --crcw-surface: #ffffff;
  --crcw-surface-soft: #f5f7fc;
  --crcw-input: #edf3ff;
  --crcw-text: #121933;
  --crcw-muted: #6f7897;
  --crcw-border: #d5dced;
  --crcw-ring: rgba(80, 103, 224, 0.18);
  --crcw-shadow-lg: 0 34px 90px rgba(7, 13, 89, 0.22);
  --crcw-shadow-md: 0 20px 44px rgba(7, 13, 89, 0.24);
  position: fixed !important;
  right: 22px !important;
  bottom: 22px !important;
  z-index: 2147483000 !important;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  color: var(--crcw-text) !important;
  pointer-events: none !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.crcw-root button,
.crcw-root input,
.crcw-root textarea,
.crcw-root label,
.crcw-root p,
.crcw-root span,
.crcw-root strong,
.crcw-root small,
.crcw-root div,
.crcw-root form,
.crcw-root svg,
.crcw-root path {
  font-family: inherit !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

.crcw-root button,
.crcw-root input,
.crcw-root textarea {
  appearance: none !important;
  -webkit-appearance: none !important;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  margin: 0 !important;
}

.crcw-backdrop,
.crcw-panel,
.crcw-fab {
  pointer-events: auto !important;
}

.crcw-backdrop {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(12, 18, 79, 0.18) !important;
  opacity: 0 !important;
  transition: opacity .22s ease !important;
}

.crcw-root.is-open .crcw-backdrop {
  opacity: 1 !important;
}

.crcw-fab {
  all: unset;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: 318px !important;
  min-width: 318px !important;
  max-width: 318px !important;
  min-height: 82px !important;
  padding: 12px 18px 12px 14px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, var(--crcw-blue-1) 0%, var(--crcw-blue-2) 76%) !important;
  color: #ffffff !important;
  box-shadow: var(--crcw-shadow-md) !important;
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease !important;
}

.crcw-fab::before {
  content: "";
  position: absolute !important;
  inset: 1px !important;
  border-radius: inherit !important;
  background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0)) !important;
  pointer-events: none !important;
}

.crcw-fab:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 26px 56px rgba(7, 13, 89, 0.28) !important;
}

.crcw-fab:focus-visible,
.crcw-close:focus-visible,
.crcw-submit:focus-visible,
.crcw-form input:focus,
.crcw-form textarea:focus {
  outline: none !important;
}

.crcw-fab__icon {
  position: relative !important;
  z-index: 1 !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 54px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08)) !important;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.12), 0 12px 26px rgba(0, 0, 0, 0.12) !important;
}

.crcw-fab__icon::after {
  content: "";
  position: absolute !important;
  inset: 6px !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0)) !important;
}

.crcw-fab__icon svg {
  position: relative !important;
  z-index: 1 !important;
  width: 24px !important;
  height: 24px !important;
  display: block !important;
}

.crcw-fab__text {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.crcw-fab__text strong {
  display: block !important;
  color: #ffffff !important;
  font-size: 16px !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.crcw-fab__text small {
  display: block !important;
  margin-top: 4px !important;
  color: rgba(255,255,255,.92) !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}

.crcw-panel {
  position: fixed !important;
  right: 22px !important;
  bottom: 118px !important;
  width: 430px !important;
  max-width: calc(100vw - 28px) !important;
  max-height: min(88vh, 780px) !important;
  border-radius: 30px !important;
  background: #ffffff !important;
  border: 1px solid rgba(7, 13, 89, 0.08) !important;
  box-shadow: var(--crcw-shadow-lg) !important;
  overflow: hidden !important;
  opacity: 0 !important;
  transform: translateY(16px) scale(.985) !important;
  transition: opacity .22s ease, transform .22s ease !important;
}

.crcw-root.is-open .crcw-panel {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
}

.crcw-root.is-open .crcw-fab {
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
}

.crcw-panel__header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 22px 22px 18px !important;
  background: linear-gradient(135deg, var(--crcw-blue-1) 0%, var(--crcw-blue-2) 76%) !important;
  color: #ffffff !important;
}

.crcw-brand {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

.crcw-brand__badge {
  width: 58px !important;
  min-width: 58px !important;
  height: 58px !important;
  border-radius: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08)) !important;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.11) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
}

.crcw-brand__text strong {
  display: block !important;
  margin: 0 0 6px !important;
  font-size: 19px !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  color: #ffffff !important;
}

.crcw-brand__text p {
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  color: rgba(255,255,255,.93) !important;
}

.crcw-close {
  all: unset;
  width: 46px !important;
  min-width: 46px !important;
  height: 46px !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,.12) !important;
  color: #ffffff !important;
  cursor: pointer !important;
  transition: transform .16s ease, background .16s ease !important;
}

.crcw-close:hover {
  transform: scale(1.04) !important;
  background: rgba(255,255,255,.18) !important;
}

.crcw-close svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
}

.crcw-panel__body {
  padding: 16px 22px 18px !important;
  max-height: calc(min(88vh, 780px) - 96px) !important;
  overflow: auto !important;
  background: #ffffff !important;
}

.crcw-status-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 44px !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  background: var(--crcw-surface-soft) !important;
  border: 1px solid var(--crcw-border) !important;
  color: var(--crcw-blue-3) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.crcw-status-dot {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #17a34a !important;
  box-shadow: 0 0 0 4px rgba(23,163,74,.14) !important;
}

.crcw-help {
  margin: 14px 0 14px !important;
  color: #182237 !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

.crcw-form {
  display: grid !important;
  gap: 14px !important;
}

.crcw-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.crcw-form label {
  display: grid !important;
  gap: 8px !important;
}

.crcw-form label > span {
  display: block !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #10172d !important;
}

.crcw-form input[type="text"],
.crcw-form input[type="email"],
.crcw-form textarea {
  all: unset;
  display: block !important;
  width: 100% !important;
  min-height: 56px !important;
  padding: 16px 18px !important;
  border-radius: 18px !important;
  border: 1px solid var(--crcw-border) !important;
  background: var(--crcw-input) !important;
  color: #10172d !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease !important;
}

.crcw-form textarea {
  min-height: 132px !important;
  resize: vertical !important;
  background: #ffffff !important;
}

.crcw-form input[type="text"]::placeholder,
.crcw-form input[type="email"]::placeholder,
.crcw-form textarea::placeholder {
  color: #8a92ad !important;
  opacity: 1 !important;
}

.crcw-form input[type="text"]:focus,
.crcw-form input[type="email"]:focus,
.crcw-form textarea:focus {
  border-color: #5168e0 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 4px var(--crcw-ring) !important;
}

.crcw-hp {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  margin: -1px !important;
  padding: 0 !important;
  clip: rect(0,0,0,0) !important;
}


.crcw-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

.crcw-footer p {
  margin: 0 !important;
  max-width: 190px !important;
  color: #79819c !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.crcw-submit {
  all: unset;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 208px !important;
  height: 58px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--crcw-blue-1) 0%, var(--crcw-blue-2) 76%) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: 0 16px 34px rgba(7, 13, 89, 0.2) !important;
  transition: transform .16s ease, box-shadow .16s ease, opacity .16s ease !important;
}

.crcw-submit:hover:not(:disabled) {
  transform: translateY(-1px) !important;
  box-shadow: 0 20px 40px rgba(7, 13, 89, 0.28) !important;
}

.crcw-submit:disabled {
  opacity: .72 !important;
  cursor: wait !important;
}

.crcw-feedback {
  padding: 13px 14px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

.crcw-feedback.is-success {
  background: #edf9f0 !important;
  color: #11783b !important;
  border: 1px solid #caebd2 !important;
}

.crcw-feedback.is-error {
  background: #fff1f2 !important;
  color: #c02038 !important;
  border: 1px solid #ffd0d8 !important;
}

.crcw-feedback.is-neutral {
  background: #f4f6fb !important;
  color: #4b587b !important;
  border: 1px solid #dde3f0 !important;
}

@media (max-width: 782px) {
  .crcw-root {
    right: 14px !important;
    bottom: max(14px, env(safe-area-inset-bottom)) !important;
  }

  .crcw-fab {
    width: 236px !important;
    min-width: 236px !important;
    max-width: min(236px, calc(100vw - 44px)) !important;
    min-height: 66px !important;
    padding: 9px 14px 9px 11px !important;
  }

  .crcw-fab__icon {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
  }

  .crcw-panel {
    right: 10px !important;
    bottom: calc(92px + env(safe-area-inset-bottom)) !important;
    width: min(420px, calc(100vw - 20px)) !important;
    max-width: min(420px, calc(100vw - 20px)) !important;
    max-height: calc(100dvh - 108px - env(safe-area-inset-bottom)) !important;
    border-radius: 26px !important;
  }

  .crcw-panel__body {
    max-height: calc(100dvh - 204px - env(safe-area-inset-bottom)) !important;
    padding: 14px 16px 16px !important;
    overflow: hidden !important;
  }

  .crcw-panel__header {
    padding: 18px 16px 16px !important;
  }

  .crcw-brand__badge {
    width: 52px !important;
    min-width: 52px !important;
    height: 52px !important;
    border-radius: 16px !important;
  }

  .crcw-brand__text strong {
    font-size: 18px !important;
  }

  .crcw-brand__text p {
    font-size: 13px !important;
  }

  .crcw-close {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
  }

  .crcw-status-pill {
    display: none !important;
  }

  .crcw-help {
    margin: 2px 0 10px !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  .crcw-form {
    gap: 10px !important;
  }

  .crcw-grid,
  .crcw-footer {
    grid-template-columns: 1fr !important;
    display: grid !important;
    gap: 10px !important;
  }

  .crcw-form label {
    gap: 6px !important;
  }

  .crcw-form label > span {
    font-size: 13px !important;
  }

  .crcw-form input[type="text"],
  .crcw-form input[type="email"],
  .crcw-form textarea {
    min-height: 50px !important;
    padding: 13px 15px !important;
    border-radius: 16px !important;
    font-size: 15px !important;
  }

  .crcw-form textarea {
    min-height: 94px !important;
    max-height: 94px !important;
    resize: none !important;
  }

  .crcw-footer p {
    max-width: none !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  .crcw-submit {
    width: auto !important;
    min-width: 200px !important;
    justify-self: end !important;
    height: 54px !important;
  }
}

@media (max-width: 480px) {
  .crcw-root {
    right: 10px !important;
    bottom: max(10px, env(safe-area-inset-bottom)) !important;
  }

  .crcw-fab {
    width: 210px !important;
    min-width: 210px !important;
    max-width: min(210px, calc(100vw - 36px)) !important;
    min-height: 58px !important;
    padding: 8px 12px 8px 10px !important;
  }

  .crcw-fab__icon {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
  }

  .crcw-fab__icon svg {
    width: 19px !important;
    height: 19px !important;
  }

  .crcw-fab__text strong {
    font-size: 13px !important;
  }

  .crcw-fab__text small {
    font-size: 10px !important;
    margin-top: 2px !important;
  }

  .crcw-panel {
    right: 8px !important;
    bottom: calc(86px + env(safe-area-inset-bottom)) !important;
    width: min(396px, calc(100vw - 16px)) !important;
    max-width: min(396px, calc(100vw - 16px)) !important;
    max-height: calc(100dvh - 98px - env(safe-area-inset-bottom)) !important;
    border-radius: 22px !important;
  }

  .crcw-panel__header {
    padding: 14px 14px 14px !important;
  }

  .crcw-brand {
    gap: 12px !important;
  }

  .crcw-brand__badge {
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    border-radius: 15px !important;
    font-size: 17px !important;
  }

  .crcw-brand__text strong {
    font-size: 16px !important;
    margin-bottom: 4px !important;
  }

  .crcw-brand__text p {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  .crcw-close {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    border-radius: 13px !important;
  }

  .crcw-panel__body {
    max-height: calc(100dvh - 176px - env(safe-area-inset-bottom)) !important;
    padding: 12px 14px 14px !important;
  }

  .crcw-help {
    font-size: 14px !important;
    margin: 0 0 8px !important;
  }

  .crcw-form {
    gap: 8px !important;
  }

  .crcw-form input[type="text"],
  .crcw-form input[type="email"],
  .crcw-form textarea {
    min-height: 48px !important;
    padding: 12px 14px !important;
    border-radius: 15px !important;
    font-size: 15px !important;
  }

  .crcw-form textarea {
    min-height: 88px !important;
    max-height: 88px !important;
  }

  .crcw-submit {
    width: 100% !important;
    min-width: 100% !important;
    height: 52px !important;
    justify-self: stretch !important;
  }
}

