/* Local AutoChat rebuild safety overrides.
   Purpose: keep the mirrored WordPress/Elementor design intact while preventing
   mobile overflow and broken asset fallbacks inside the Next.js rebuild. */

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

@media (max-width: 767px) {
  .elementor-1068 .elementor-element.elementor-element-a4a9c35,
  .elementor-1068 .elementor-element.elementor-element-a4a9c35 > .elementor-widget-container {
    width: 100% !important;
    max-width: 302px !important;
    --container-widget-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-1068 .elementor-element.elementor-element-a4a9c35 .elementor-heading-title {
    font-size: 23.4px !important;
    line-height: 1.16 !important;
  }

  #blogcontent .elementor-widget-text-editor h2 {
    font-size: 23.4px !important;
    line-height: 1.16 !important;
  }
}

.autochat-mobile-sticky-footer {
  display: none;
}

/* 2026-05-20 desktop header cleanup.
   Preserved Elementor pages keep the mobile toggle in the DOM. On tablet/desktop,
   the full navigation is already visible, so suppress the toggle and emergency
   glyph completely to avoid a duplicate menu affordance. */
@media (min-width: 768px) {
  .elementor-16 .elementor-menu-toggle,
  .elementor-16 .elementor-menu-toggle *,
  .elementor-16 .autochat-mobile-menu-glyph,
  body.elementor-default::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    content: none !important;
  }
}

/* 2026-05-28 final mobile footer/menu override.
   Keep this block last so older emergency hamburger rules cannot re-fix the
   icon over scrolled footer content. */
@media (max-width: 767px), (orientation: portrait) {
  body.elementor-default::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .elementor-16 .elementor-element-5600d21::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .elementor-16 {
    position: relative !important;
  }

  .elementor-16 .autochat-mobile-menu-glyph {
    position: absolute !important;
    top: 28px !important;
    left: auto !important;
    right: 22px !important;
    transform: none !important;
    z-index: 80 !important;
  }
}

/* 2026-05-28 final mobile footer/menu override.
   Keep this at EOF so older emergency hamburger rules cannot re-fix the icon
   over scrolled footer content. */
@media (max-width: 767px), (orientation: portrait) {
  body.elementor-default::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .elementor-16 {
    position: relative !important;
  }

  .elementor-16 .autochat-mobile-menu-glyph {
    position: absolute !important;
    top: 28px !important;
    left: auto !important;
    right: 22px !important;
    transform: none !important;
    z-index: 80 !important;
  }
}

/* 2026-05-28 footer/mobile header cleanup.
   Older emergency rules made a faux hamburger fixed across the whole page,
   which caused it to sit on top of footer content while scrolling. */
@media (max-width: 767px), (orientation: portrait) {
  body.elementor-default::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .elementor-16 .autochat-mobile-menu-glyph {
    position: absolute !important;
    top: 50% !important;
    left: auto !important;
    right: 18px !important;
    transform: translateY(-50%) !important;
    z-index: 80 !important;
  }

  .autochat-hostao-ecosystem-card {
    width: 100% !important;
    max-width: min(100%, 340px) !important;
    margin-top: 18px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 14px !important;
    box-sizing: border-box !important;
  }

  .autochat-hostao-ecosystem-card a,
  .autochat-hostao-ecosystem-card span {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    line-height: 1.2 !important;
  }

  .elementor-location-footer,
  .site-footer {
    padding-top: 8px !important;
  }

  .elementor-location-footer .elementor-widget-text-editor,
  .site-footer .elementor-widget-text-editor {
    max-width: 100% !important;
  }
}

/* 2026-05-28 homepage mobile integration logo repair.
   The global Elementor mobile containment rules intentionally stack content,
   but the homepage logo strips must remain compact tiles. */
@media (max-width: 767px) {
  .elementor-30 .elementor-element.elementor-element-490baae,
  .elementor-30 .elementor-element.elementor-element-af54f42 {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    overflow: hidden !important;
  }

  .elementor-30 .elementor-element.elementor-element-490baae > .e-con-inner,
  .elementor-30 .elementor-element.elementor-element-af54f42 > .e-con-inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: center !important;
    justify-items: stretch !important;
    width: min(100%, 380px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-30 .elementor-element.elementor-element-02d0dd3,
  .elementor-30 .elementor-element.elementor-element-8af6db4,
  .elementor-30 .elementor-element.elementor-element-3f98527,
  .elementor-30 .elementor-element.elementor-element-8d18c04,
  .elementor-30 .elementor-element.elementor-element-085e411,
  .elementor-30 .elementor-element.elementor-element-828bae1,
  .elementor-30 .elementor-element.elementor-element-6bfd1d3,
  .elementor-30 .elementor-element.elementor-element-755514e,
  .elementor-30 .elementor-element.elementor-element-b221425,
  .elementor-30 .elementor-element.elementor-element-db73f0f,
  .elementor-30 .elementor-element.elementor-element-cb6ac2f,
  .elementor-30 .elementor-element.elementor-element-7ec60e5,
  .elementor-30 .elementor-element.elementor-element-c98fb40,
  .elementor-30 .elementor-element.elementor-element-709f3bd,
  .elementor-30 .elementor-element.elementor-element-20d19bc,
  .elementor-30 .elementor-element.elementor-element-b23f61a {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 78px !important;
    flex: none !important;
    flex-basis: auto !important;
    align-self: stretch !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
  }

  .elementor-30 .elementor-element.elementor-element-490baae .elementor-widget-image,
  .elementor-30 .elementor-element.elementor-element-af54f42 .elementor-widget-image,
  .elementor-30 .elementor-element.elementor-element-490baae .elementor-widget-container,
  .elementor-30 .elementor-element.elementor-element-af54f42 .elementor-widget-container {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .elementor-30 .elementor-element.elementor-element-490baae img,
  .elementor-30 .elementor-element.elementor-element-af54f42 img {
    display: block !important;
    width: auto !important;
    max-width: min(120px, 100%) !important;
    max-height: 46px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .elementor-30 .elementor-element.elementor-element-cb6ac2f img,
  .elementor-30 .elementor-element.elementor-element-7ec60e5 img {
    max-height: 54px !important;
  }
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
}

@media (min-width: 768px) {
  .elementor-menu-toggle,
  .elementor-menu-toggle__icon--open,
  .elementor-menu-toggle__icon--close {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

@media (max-width: 767px) {
  body {
    padding-bottom: calc(96px + env(safe-area-inset-bottom)) !important;
  }

  .autochat-mobile-sticky-footer {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    z-index: 999999 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr 72px 1fr 1fr !important;
    align-items: center !important;
    gap: 4px !important;
    width: auto !important;
    max-width: 430px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 8px !important;
    border: 1px solid rgba(226, 232, 240, 0.92) !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.18) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
  }

  .autochat-mobile-sticky-footer__item,
  .autochat-mobile-sticky-footer__cta {
    box-sizing: border-box !important;
    text-decoration: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .autochat-mobile-sticky-footer__item {
    display: flex !important;
    min-width: 0 !important;
    min-height: 54px !important;
    max-width: none !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 4px 2px !important;
    border-radius: 16px !important;
    color: #64748b !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  .autochat-mobile-sticky-footer__item.is-active {
    background: rgba(0, 168, 45, 0.1) !important;
    color: #00a82d !important;
  }

  .autochat-mobile-sticky-footer__item svg {
    width: 20px !important;
    height: 20px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  .autochat-mobile-sticky-footer__cta {
    position: relative !important;
    display: flex !important;
    width: 72px !important;
    height: 72px !important;
    max-width: 72px !important;
    min-width: 72px !important;
    margin-top: -28px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 24px !important;
    background: #00a82d !important;
    color: #ffffff !important;
    box-shadow: 0 16px 35px rgba(0, 168, 45, 0.35) !important;
    outline: 4px solid #ffffff !important;
  }

  .autochat-mobile-sticky-footer__cta svg {
    width: 28px !important;
    height: 28px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.3 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  .autochat-mobile-sticky-footer__cta span {
    position: absolute !important;
    left: 50% !important;
    bottom: -12px !important;
    transform: translateX(-50%) !important;
    color: #1f2937 !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  html,
  body,
  #page,
  .site,
  .elementor,
  .elementor-location-header,
  .elementor-location-footer {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .e-con,
  .e-con > .e-con-inner,
  .elementor-section,
  .elementor-container,
  .elementor-column,
  .elementor-widget-wrap,
  .elementor-widget-container,
  .elementor-element,
  .elementor-inner-section {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .e-con,
  .e-con.e-flex,
  .e-con-full,
  .e-con-boxed > .e-con-inner,
  .elementor-container {
    width: 100% !important;
    --width: 100% !important;
    --content-width: 100% !important;
  }

  .e-con > .e-con-inner,
  .elementor-section.elementor-section-boxed > .elementor-container {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .elementor-widget-heading h1,
  .elementor-widget-heading h2,
  .elementor-heading-title,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p {
    max-width: 100% !important;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .elementor-widget-heading h1,
  h1.elementor-heading-title {
    font-size: clamp(34px, 10vw, 48px) !important;
    line-height: 1.08 !important;
  }

  .elementor-widget-heading h2,
  h2.elementor-heading-title {
    font-size: clamp(28px, 8vw, 40px) !important;
    line-height: 1.14 !important;
  }

  img,
  .elementor-widget-image img,
  .elementor-image-box-img img {
    height: auto !important;
    max-width: 100% !important;
  }

  .elementor-absolute {
    max-width: 100% !important;
  }

  .elementor-nav-menu--main {
    display: none !important;
  }

  .elementor-menu-toggle {
    display: inline-flex !important;
  }
}

@media (max-width: 767px) {
  body * {
    max-width: 100vw !important;
  }

  .e-con.e-flex,
  .e-con-full.e-flex,
  .elementor-container,
  .elementor-row,
  .elementor-widget-wrap {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
  }

  .e-con.e-child,
  .e-con-full.e-child,
  .elementor-column,
  .elementor-widget,
  .elementor-widget:not(:last-child),
  .elementor-widget-image,
  .elementor-widget-heading,
  .elementor-widget-text-editor,
  .elementor-widget-button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex-basis: auto !important;
    flex-grow: 0 !important;
    flex-shrink: 1 !important;
    align-self: stretch !important;
  }

  .elementor-widget-container,
  .elementor-heading-title,
  .elementor-button-wrapper,
  .elementor-image,
  .elementor-image-box-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .elementor-button,
  .elementor-button-link {
    max-width: 100% !important;
    white-space: normal !important;
  }

  .elementor-absolute,
  .elementor-motion-effects-element,
  .elementor-motion-effects-layer {
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }
}

@media (max-width: 767px) {
  h1, h2, h3, h4, h5, h6, p, span, a, li,
  .elementor-heading-title,
  .elementor-heading-title span,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor * {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    text-overflow: clip !important;
  }

  .elementor-heading-title span,
  .elementor-widget-heading span {
    display: inline !important;
  }

  [style*="width"] {
    max-width: 100% !important;
  }

  [style*="min-width"] {
    min-width: 0 !important;
  }

  [style*="margin-left"] {
    margin-left: 0 !important;
  }

  [style*="left"] {
    left: auto !important;
  }

  .elementor-location-header img,
  header img,
  .site-header img {
    max-width: 180px !important;
    width: auto !important;
  }

  .elementor-widget-heading h1,
  h1.elementor-heading-title {
    font-size: 36px !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em !important;
  }

  .elementor-widget-heading h2,
  h2.elementor-heading-title {
    font-size: 30px !important;
    line-height: 1.16 !important;
    letter-spacing: -0.01em !important;
  }
}

@media (max-width: 767px) {
  .elementor-location-header img,
  header img,
  .site-header img {
    max-width: 145px !important;
  }
}
/* Hide the legacy Elementor micro-price artifact that overlaps the mobile pricing cards. */
@media (max-width: 767px) {
  .elementor-element-66ffc29 {
    display: none !important;
  }
}

/* 2026-05-15 final mobile containment pass: prevent hidden overflow from clipping
   the preserved Elementor layout on real 390px mobile screenshots. */
@media (max-width: 767px) {
  *,
  *::before,
  *::after {
    box-sizing: border-box !important;
  }

  html,
  body {
    width: 100% !important;
    min-width: 0 !important;
    overflow-x: clip !important;
  }

  body {
    position: relative !important;
  }

  .elementor,
  .elementor-section,
  .elementor-container,
  .elementor-row,
  .elementor-column,
  .elementor-widget-wrap,
  .elementor-widget,
  .elementor-widget-container,
  .e-con,
  .e-con-inner,
  .e-child,
  .e-con-full {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .elementor-section,
  .elementor-container,
  .e-con,
  .e-con-inner {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .elementor-location-header .e-con,
  .elementor-location-header .e-con-inner,
  header .e-con,
  header .e-con-inner {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .elementor-location-header .elementor-widget-image,
  header .elementor-widget-image {
    width: auto !important;
    max-width: 150px !important;
    flex: 0 1 150px !important;
    align-self: center !important;
  }

  .elementor-location-header img,
  header img,
  .site-header img {
    max-width: 138px !important;
    height: auto !important;
  }

  .elementor-location-header .elementor-widget-button,
  header .elementor-widget-button,
  .elementor-location-header .elementor-menu-toggle,
  header .elementor-menu-toggle {
    width: auto !important;
    max-width: 120px !important;
    flex: 0 0 auto !important;
    align-self: center !important;
  }

  .elementor-widget-heading,
  .elementor-widget-text-editor,
  .elementor-widget-button,
  .elementor-widget-image {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-widget-heading .elementor-heading-title,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p {
    width: 100% !important;
    max-width: calc(100vw - 36px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-button-wrapper,
  .elementor-button-link,
  .elementor-button {
    max-width: calc(100vw - 36px) !important;
  }
}

/* 2026-05-15 preserved-WordPress mobile visual scale guard.
   The original Elementor export contains desktop-sized absolute/motion elements;
   scaling the legacy canvas is safer than redesigning the page structure. */
@media (max-width: 480px) {
  body {
    zoom: 1;
    transform: scale(0.86);
    transform-origin: top left;
    width: 100% !important;
  }
}

/* Mobile visual polish: keep hero/pricing copy comfortably inside the screen edge
   and force the billing toggle to stay compact. */
@media (max-width: 480px) {
  /* Do not scale the full body canvas: Chrome clips the transformed right edge in
     390px screenshots. Contain the individual Elementor sections instead. */
  body {
    transform: none !important;
    width: 100% !important;
  }

  .site-main,
  .page-content,
  .elementor-30,
  .elementor-1388,
  .elementor-1386 {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .elementor-30 .elementor-element.elementor-element-15e956a,
  .elementor-30 .elementor-element.elementor-element-5727943,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3fda736,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-d90c9ed,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3de2f0f5 {
    padding-left: 16px !important;
    padding-right: 16px !important;
    --padding-left: 16px !important;
    --padding-right: 16px !important;
  }

  .elementor-30 .elementor-element.elementor-element-15e956a > .e-con-inner,
  .elementor-30 .elementor-element.elementor-element-5727943 > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3fda736 > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-d90c9ed > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3de2f0f5 > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-widget-heading .elementor-heading-title,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p {
    max-width: 100% !important;
  }

  .elementor-30 .elementor-element.elementor-element-335b3f8,
  .elementor-30 .elementor-element.elementor-element-71bb92b,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-1d2be54c {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-30 .elementor-element.elementor-element-335b3f8 > .elementor-widget-container,
  .elementor-30 .elementor-element.elementor-element-71bb92b > .elementor-widget-container,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45 > .elementor-widget-container,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61 > .elementor-widget-container,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-1d2be54c > .elementor-widget-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 12px !important;
    margin-bottom: 18px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 .elementor-widget-text-editor,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 .elementor-widget-text-editor p {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    white-space: nowrap !important;
    line-height: 1.2 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 .elementor-widget-text-editor > .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 {
    width: 82px !important;
    max-width: 82px !important;
    min-width: 82px !important;
    flex: 0 0 82px !important;
    --divider-border-width: 0px !important;
    --size: 22px !important;
    --padding: 5px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 > .elementor-widget-container {
    width: 82px !important;
    height: 32px !important;
    margin: 0 !important;
    border-radius: 999px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 .elementor-divider,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 .elementor-divider-separator {
    width: 82px !important;
    max-width: 82px !important;
    min-width: 82px !important;
    height: 32px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 .elementor-divider:after {
    top: 5px !important;
    left: 55px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605.monthly .elementor-divider:after {
    left: 5px !important;
  }
}

/* 2026-05-15 subagent mobile clipping fix: use the same containment rules for
   all Elementor mobile breakpoints, because headless Chrome evaluates the
   WordPress mobile view against Elementor's 767px breakpoint. */
@media (max-width: 767px) {
  body {
    transform: none !important;
    width: 100% !important;
  }

  .site-main,
  .page-content,
  .elementor-30,
  .elementor-1388,
  .elementor-1386 {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .elementor-30 .elementor-element.elementor-element-15e956a,
  .elementor-30 .elementor-element.elementor-element-5727943,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3fda736,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-d90c9ed,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3de2f0f5 {
    padding-left: 16px !important;
    padding-right: 16px !important;
    --padding-left: 16px !important;
    --padding-right: 16px !important;
  }

  .elementor-30 .elementor-element.elementor-element-15e956a > .e-con-inner,
  .elementor-30 .elementor-element.elementor-element-5727943 > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3fda736 > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-d90c9ed > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3de2f0f5 > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-30 .elementor-element.elementor-element-335b3f8 > .elementor-widget-container,
  .elementor-30 .elementor-element.elementor-element-71bb92b > .elementor-widget-container,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45 > .elementor-widget-container,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61 > .elementor-widget-container,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-1d2be54c > .elementor-widget-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 12px !important;
    margin-bottom: 18px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 .elementor-widget-text-editor,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 .elementor-widget-text-editor p {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    white-space: nowrap !important;
    line-height: 1.2 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 .elementor-widget-text-editor > .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 {
    width: 82px !important;
    max-width: 82px !important;
    min-width: 82px !important;
    flex: 0 0 82px !important;
    --divider-border-width: 0px !important;
    --size: 22px !important;
    --padding: 5px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 > .elementor-widget-container {
    width: 82px !important;
    height: 32px !important;
    margin: 0 !important;
    border-radius: 999px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 .elementor-divider,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 .elementor-divider-separator {
    width: 82px !important;
    max-width: 82px !important;
    min-width: 82px !important;
    height: 32px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605 .elementor-divider:after {
    top: 5px !important;
    left: 55px !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-9571605.monthly .elementor-divider:after {
    left: 5px !important;
  }
}

/* 2026-05-15 final conservative mobile text fit pass.
   Keep the old design, but reduce only the mobile hero/intro typography width
   enough that screenshots no longer visually crop text at 390px. */
@media (max-width: 480px) {
  .elementor-30 .elementor-widget-heading .elementor-heading-title,
  .elementor-30 .elementor-widget-text-editor,
  .elementor-30 .elementor-widget-text-editor p,
  .elementor-1388,
  .elementor-1386 .elementor-widget-heading .elementor-heading-title,
  .elementor-1388,
  .elementor-1386 .elementor-widget-text-editor,
  .elementor-1388,
  .elementor-1386 .elementor-widget-text-editor p {
    width: 100% !important;
    max-width: 292px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .elementor-30 h1.elementor-heading-title,
  .elementor-30 .elementor-widget-heading h1.elementor-heading-title {
    font-size: 32px !important;
    line-height: 1.1 !important;
  }

  .elementor-30 h2.elementor-heading-title,
  .elementor-30 .elementor-widget-heading h2.elementor-heading-title,
  .elementor-1388,
  .elementor-1386 h2.elementor-heading-title,
  .elementor-1388,
  .elementor-1386 .elementor-widget-heading h2.elementor-heading-title {
    font-size: 25px !important;
    line-height: 1.16 !important;
  }

  .elementor-30 h4.elementor-heading-title,
  .elementor-30 .elementor-widget-heading h4.elementor-heading-title {
    font-size: 18px !important;
    line-height: 1.22 !important;
  }

  .elementor-30 .elementor-widget-text-editor,
  .elementor-30 .elementor-widget-text-editor p,
  .elementor-1388,
  .elementor-1386 .elementor-widget-text-editor,
  .elementor-1388,
  .elementor-1386 .elementor-widget-text-editor p {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 > .e-con-inner {
    max-width: 292px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* 2026-05-15 final 390px screenshot guard: headless Chrome keeps a 500px
   layout viewport for --window-size=390, so cap key copy blocks to a true
   phone-sized measure instead of letting Elementor use the full layout width. */
@media (max-width: 767px) {
  .elementor-30 .elementor-element.elementor-element-648de38 .elementor-heading-title,
  .elementor-30 .elementor-element.elementor-element-0132506 .elementor-heading-title,
  .elementor-30 .elementor-element.elementor-element-80dda95 .elementor-heading-title,
  .elementor-30 .elementor-element.elementor-element-335b3f8,
  .elementor-30 .elementor-element.elementor-element-335b3f8 p,
  .elementor-30 .elementor-element.elementor-element-087b20f .elementor-heading-title,
  .elementor-30 .elementor-element.elementor-element-71bb92b,
  .elementor-30 .elementor-element.elementor-element-71bb92b p,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f3723f3 .elementor-heading-title,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45 p,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-bea2fa4 .elementor-heading-title,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61 p {
    width: 100% !important;
    max-width: min(calc(100vw - 36px), 360px) !important;
    box-sizing: border-box !important;
  }

  .elementor-30 .elementor-element.elementor-element-648de38,
  .elementor-30 .elementor-element.elementor-element-0132506,
  .elementor-30 .elementor-element.elementor-element-80dda95,
  .elementor-30 .elementor-element.elementor-element-335b3f8,
  .elementor-30 .elementor-element.elementor-element-087b20f,
  .elementor-30 .elementor-element.elementor-element-71bb92b,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f3723f3,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-bea2fa4,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61 {
    max-width: min(calc(100vw - 36px), 360px) !important;
  }

  .elementor-30 .elementor-element.elementor-element-648de38,
  .elementor-30 .elementor-element.elementor-element-0132506,
  .elementor-30 .elementor-element.elementor-element-80dda95,
  .elementor-30 .elementor-element.elementor-element-335b3f8 {
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .elementor-30 .elementor-element.elementor-element-087b20f,
  .elementor-30 .elementor-element.elementor-element-71bb92b,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f3723f3,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-bea2fa4,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61 {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-30 .elementor-element.elementor-element-6e94ca8,
  .elementor-30 .elementor-element.elementor-element-c211a6d,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-a641852 {
    max-width: calc(100vw - 32px) !important;
    overflow: hidden !important;
  }
}

/* 2026-05-15 hard 390px Chrome screenshot containment. Chrome's headless
   --window-size=390 can report a 500px layout viewport; keep the visible phone
   canvas inside the left 390px capture instead of centering in the 500px canvas. */
@media (max-width: 767px) {
  .elementor-30 .elementor-element.elementor-element-15e956a > .e-con-inner,
  .elementor-30 .elementor-element.elementor-element-5727943 > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-3fda736 > .e-con-inner,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-d90c9ed > .e-con-inner {
    width: min(calc(100vw - 32px), 358px) !important;
    max-width: min(calc(100vw - 32px), 358px) !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .elementor-30 .elementor-element.elementor-element-087b20f,
  .elementor-30 .elementor-element.elementor-element-71bb92b,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-f3723f3,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-bea2fa4,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61 {
    max-width: min(calc(100vw - 40px), 330px) !important;
  }

  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-6afae45 p,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61,
  .elementor-1388,
  .elementor-1386 .elementor-element.elementor-element-2a82c61 p {
    max-width: min(calc(100vw - 40px), 330px) !important;
  }
}

/* Home pricing intro and hero CTA were the last 390px visual edge cases. */
@media (max-width: 767px) {
  .elementor-30 .elementor-element.elementor-element-ce14db9,
  .elementor-30 .elementor-element.elementor-element-ce14db9 > .e-con-inner {
    width: min(calc(100vw - 32px), 358px) !important;
    max-width: min(calc(100vw - 32px), 358px) !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    --padding-left: 0px !important;
    --padding-right: 0px !important;
  }

  .elementor-30 .elementor-element.elementor-element-1010a74,
  .elementor-30 .elementor-element.elementor-element-4fc1a12,
  .elementor-30 .elementor-element.elementor-element-4fc1a12 p {
    width: 100% !important;
    max-width: min(calc(100vw - 48px), 318px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .elementor-30 .elementor-element.elementor-element-c559399,
  .elementor-30 .elementor-element.elementor-element-c559399 .elementor-button-wrapper,
  .elementor-30 .elementor-element.elementor-element-c559399 .elementor-button-link,
  .elementor-30 .elementor-element.elementor-element-c559399 .elementor-button {
    width: auto !important;
    max-width: min(calc(100vw - 64px), 260px) !important;
  }

  .elementor-30 .elementor-element.elementor-element-c559399 .elementor-button {
    padding-left: 18px !important;
    padding-right: 18px !important;
    font-size: 14px !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 767px) {
  .elementor-30 .elementor-element.elementor-element-c559399 .elementor-button,
  .elementor-30 .elementor-element.elementor-element-c559399 .elementor-button-text {
    font-size: 13px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.1px !important;
  }

  .elementor-30 .elementor-element.elementor-element-c559399 .elementor-button {
    padding: 14px 14px !important;
    min-width: 0 !important;
  }
}

/* 2026-05-15 final visual smoke polish: remove static-mirror artifacts while
   preserving the legacy Elementor page design. */
.entry-title {
  display: none !important;
}

.elementor-location-popup,
.e-floating-bars,
.elementor-widget-floating-bars,
.elementor-floating-bars,
[class*="floating-bar"],
[class*="floating-button"] {
  display: none !important;
}

/* 2026-05-28 live mobile section pass.
   The production domain now serves the preserved Elementor mirror. These rules
   keep the original visual direction but make each mobile section fit the real
   390px viewport instead of Elementor's wider legacy canvas. */
@media (max-width: 767px) {
  .elementor-30 .e-con.e-parent,
  .elementor-30 .elementor-section {
    padding-left: 16px !important;
    padding-right: 16px !important;
    --padding-left: 16px !important;
    --padding-right: 16px !important;
  }

  .elementor-30 .e-con.e-parent > .e-con-inner,
  .elementor-30 .elementor-section > .elementor-container {
    width: 100% !important;
    max-width: 358px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-30 .elementor-element.elementor-element-15e956a {
    padding-top: 52px !important;
    padding-bottom: 44px !important;
  }

  .elementor-30 .elementor-element.elementor-element-15e956a > .e-con-inner {
    row-gap: 22px !important;
  }

  .elementor-30 .elementor-element.elementor-element-7dcefa8,
  .elementor-30 .elementor-element.elementor-element-7dcefa8 > .elementor-widget-container {
    min-height: 0 !important;
    margin-top: 18px !important;
    padding-top: 0 !important;
  }

  .elementor-30 .elementor-element.elementor-element-7dcefa8 img {
    display: block !important;
    width: 100% !important;
    max-width: 340px !important;
    margin: 0 auto !important;
  }

  .elementor-30 .elementor-element.elementor-element-5266359 {
    width: 100% !important;
    max-width: 320px !important;
    margin: 10px 0 0 !important;
    align-self: flex-start !important;
  }

  .elementor-30 .elementor-element.elementor-element-ce14db9 {
    padding-top: 54px !important;
    padding-bottom: 42px !important;
  }

  .elementor-30 .elementor-element.elementor-element-4ba8d5e,
  .elementor-30 .elementor-element.elementor-element-2a80535,
  .elementor-30 .elementor-element.elementor-element-1bb4bf9 {
    width: 100% !important;
    max-width: 358px !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    transform: none !important;
  }

  .elementor-30 .elementor-element.elementor-element-4ba8d5e *,
  .elementor-30 .elementor-element.elementor-element-2a80535 *,
  .elementor-30 .elementor-element.elementor-element-1bb4bf9 * {
    max-width: 100% !important;
  }

  .elementor-30 .elementor-element.elementor-element-4ba8d5e li,
  .elementor-30 .elementor-element.elementor-element-2a80535 li,
  .elementor-30 .elementor-element.elementor-element-1bb4bf9 li,
  .elementor-30 .elementor-icon-list-text {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  .elementor-30 .elementor-element.elementor-element-297026d,
  .elementor-30 .elementor-element.elementor-element-0003980,
  .elementor-30 .elementor-element.elementor-element-7aa8715,
  .elementor-30 .elementor-element.elementor-element-21f62ef,
  .elementor-30 .elementor-element.elementor-element-a19cdb1,
  .elementor-30 .elementor-element.elementor-element-c86380d,
  .elementor-30 .elementor-element.elementor-element-4d44cff,
  .elementor-30 .elementor-element.elementor-element-0f2a230,
  .elementor-30 .elementor-element.elementor-element-2653b94f,
  .elementor-30 .elementor-element.elementor-element-02b4809,
  .elementor-30 .elementor-element.elementor-element-5727943 {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .elementor-30 .elementor-heading-title {
    max-width: 100% !important;
    overflow: visible !important;
    text-wrap: balance;
  }

  .elementor-30 h1.elementor-heading-title {
    font-size: clamp(31px, 8.5vw, 38px) !important;
    line-height: 1.12 !important;
  }

  .elementor-30 h2.elementor-heading-title {
    font-size: clamp(27px, 7.2vw, 34px) !important;
    line-height: 1.18 !important;
  }

  .elementor-30 h3.elementor-heading-title {
    font-size: clamp(23px, 6.5vw, 29px) !important;
    line-height: 1.18 !important;
  }

  .elementor-30 .elementor-widget-image,
  .elementor-30 .elementor-widget-image > .elementor-widget-container,
  .elementor-30 .elementor-widget-image img {
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .elementor-30 .elementor-button-wrapper {
    display: flex !important;
    justify-content: flex-start !important;
  }

  .elementor-30 .elementor-button {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

.elementor-post__title,
.elementor-post__title a,
.elementor-post__excerpt,
.elementor-post__excerpt p {
  display: block !important;
  overflow: visible !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
  white-space: normal !important;
}

.elementor-widget-google_maps iframe {
  background: #eef2f7 !important;
}

/* 2026-05-15 visual smoke finalization: the old WordPress export positions the
   small Animation.png decorative dots partly outside the canvas. In the static
   rebuild they read as broken clipped widgets, so hide only that decorative asset. */
img.wp-image-568,
.elementor-widget-image:has(img.wp-image-568) {
  display: none !important;
}

/* Google Maps embeds show an external loading card in headless/static smoke.
   Keep the section polished without relying on live third-party map UI. */
.elementor-widget-google_maps iframe {
  display: none !important;
}
.elementor-widget-google_maps .elementor-widget-container::before {
  content: "AutoChat serves businesses across India and global markets";
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 320px;
  width: 100%;
  border-radius: 18px;
  background: linear-gradient(135deg, #eefbf3 0%, #f8fafc 48%, #e7f7ee 100%);
  color: #0f5132;
  font: 600 18px/1.4 Inter, Arial, sans-serif;
  text-align: center;
  padding: 32px;
  box-shadow: inset 0 0 0 1px rgba(8, 153, 28, 0.14);
}

/* 2026-05-15 positioning pass: mobile containment for preserved pricing mirrors.
   This does not redesign the Elementor layout; it only keeps long updated copy
   and the legacy billing toggle inside the 390px mobile viewport. */
@media (max-width: 767px) {
  .elementor-1388,
  .elementor-1386,
  .elementor-1388 .elementor,
  .elementor-1386 .elementor,
  .elementor-1388 .e-con,
  .elementor-1386 .e-con,
  .elementor-1388 .e-con-inner,
  .elementor-1386 .e-con-inner,
  .elementor-1388 .elementor-section,
  .elementor-1386 .elementor-section,
  .elementor-1388 .elementor-container,
  .elementor-1386 .elementor-container,
  .elementor-1388 .elementor-column,
  .elementor-1386 .elementor-column,
  .elementor-1388 .elementor-widget,
  .elementor-1386 .elementor-widget,
  .elementor-1388 .elementor-widget-wrap,
  .elementor-1386 .elementor-widget-wrap,
  .elementor-1388 .elementor-widget-container,
  .elementor-1386 .elementor-widget-container {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  .elementor-1388 .e-con-inner,
  .elementor-1386 .e-con-inner,
  .elementor-1388 .elementor-container,
  .elementor-1386 .elementor-container {
    width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-1388 .elementor-heading-title,
  .elementor-1386 .elementor-heading-title,
  .elementor-1388 .elementor-widget-text-editor,
  .elementor-1386 .elementor-widget-text-editor,
  .elementor-1388 .elementor-widget-text-editor p,
  .elementor-1386 .elementor-widget-text-editor p,
  .elementor-1388 .elementor-icon-list-text,
  .elementor-1386 .elementor-icon-list-text {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .elementor-1388 .elementor-element.elementor-element-f4f1e05,
  .elementor-1386 .elementor-element.elementor-element-f4f1e05 {
    max-width: calc(100vw - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* 2026-05-16 footer badge repair: restore real badge image ratios and align
   Startup Fame + Product Hunt neatly before the WhatsApp help card. */
.elementor-location-footer .elementor-element-1ce583f,
.elementor-location-footer .elementor-element-a8c8794,
.site-footer .elementor-element-1ce583f,
.site-footer .elementor-element-a8c8794 {
  width: auto !important;
  max-width: 250px !important;
  align-self: flex-start !important;
  margin: 10px 0 0 0 !important;
  padding: 0 !important;
}

.elementor-location-footer .elementor-element-1ce583f .elementor-widget-container,
.elementor-location-footer .elementor-element-a8c8794 .elementor-widget-container,
.site-footer .elementor-element-1ce583f .elementor-widget-container,
.site-footer .elementor-element-a8c8794 .elementor-widget-container {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 250px !important;
  max-width: 250px !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-location-footer .elementor-element-1ce583f img,
.elementor-location-footer .elementor-element-a8c8794 img,
.site-footer .elementor-element-1ce583f img,
.site-footer .elementor-element-a8c8794 img {
  display: block !important;
  height: 54px !important;
  max-height: 54px !important;
  object-fit: contain !important;
  object-position: left center !important;
  margin: 0 !important;
}

.elementor-location-footer .elementor-element-1ce583f img,
.site-footer .elementor-element-1ce583f img {
  width: 171px !important;
  max-width: 171px !important;
}

.elementor-location-footer .elementor-element-a8c8794 img,
.site-footer .elementor-element-a8c8794 img {
  width: 250px !important;
  max-width: 250px !important;
}

.elementor-location-footer #footerhelp,
.site-footer #footerhelp {
  margin-top: 12px !important;
}

/* Footer badge row hardening for the preserved Elementor export. */
.elementor-element-1ce583f,
.elementor-element-a8c8794 {
  width: auto !important;
  max-width: 250px !important;
  align-self: flex-start !important;
  margin: 10px 0 0 0 !important;
  padding: 0 !important;
}
.elementor-element-1ce583f .elementor-widget-container,
.elementor-element-a8c8794 .elementor-widget-container {
  width: 250px !important;
  max-width: 250px !important;
  min-height: 54px !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}
.elementor-element-1ce583f img,
.elementor-element-a8c8794 img {
  height: 54px !important;
  max-height: 54px !important;
  display: block !important;
  object-fit: contain !important;
  object-position: left center !important;
  margin: 0 !important;
}
.elementor-element-1ce583f img { width: 171px !important; max-width: 171px !important; }
.elementor-element-a8c8794 img { width: 250px !important; max-width: 250px !important; }

/* 2026-05-16 preserved footer placement repair: keep the original image assets,
   but restore the desktop four-column Elementor footer distribution so the
   right side is not empty. */
@media (min-width: 768px) {
  .elementor-11602 .elementor-element.elementor-element-66a9e208 > .e-con-inner {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 28px !important;
  }

  .elementor-11602 .elementor-element.elementor-element-251284d5,
  .elementor-11602 .elementor-element.elementor-element-fd77641,
  .elementor-11602 .elementor-element.elementor-element-2f66cfcc,
  .elementor-11602 .elementor-element.elementor-element-7b703899 {
    display: flex !important;
    flex-direction: column !important;
    width: 25% !important;
    max-width: 25% !important;
    flex: 0 0 25% !important;
    min-width: 0 !important;
    align-self: flex-start !important;
  }

  .elementor-11602 .elementor-element.elementor-element-251284d5 {
    padding-right: 22px !important;
  }

  .elementor-11602 .elementor-element.elementor-element-66a9e208::before {
    background-position: center right !important;
    background-size: auto 100% !important;
  }

  .elementor-11602 .elementor-element.elementor-element-1f088c0c img {
    width: 80% !important;
    max-width: 220px !important;
    height: auto !important;
  }

  .elementor-11602 #footerhelp img,
  .elementor-11602 #mobilefooterhelp img {
    width: 310px !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

/* 2026-05-16 Reference-benchmark content integration: use proper page sections,
   not floating chips/buttons, and preserve the original Elementor visual system. */
.autochat-capability-section {
  --padding-top: 30px;
  --padding-bottom: 48px;
  background: #ffffff;
}
.autochat-capability-section > .e-con-inner {
  width: min(1120px, calc(100% - 48px)) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: block !important;
}
.autochat-capability-heading .elementor-heading-title {
  text-align: center;
  color: #111827;
  font-family: Poppins, Sans-serif;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.15;
  font-weight: 700;
  margin: 0 0 10px;
}
.autochat-capability-intro p {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 28px !important;
  color: #56645d;
  font: 400 16px/1.75 Poppins, Sans-serif;
}
.autochat-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.autochat-capability-card {
  min-height: 178px;
  padding: 22px 22px 20px;
  border-radius: 22px;
  background: #f8fffb;
  border: 1px solid rgba(8,153,28,.14);
  box-shadow: 0 14px 35px rgba(6,26,19,.06);
}
.autochat-capability-card h3 {
  margin: 0 0 10px;
  color: #061a13;
  font: 700 18px/1.3 Poppins, Sans-serif;
}
.autochat-capability-card p {
  margin: 0 !important;
  color: #405349;
  font: 400 14px/1.65 Poppins, Sans-serif;
}
.autochat-capability-card-wide {
  grid-column: span 3;
  min-height: auto;
  background: linear-gradient(135deg, #eefbf3 0%, #ffffff 100%);
}
.autochat-pricing-clarity-section > .e-con-inner {
  width: min(1120px, calc(100% - 48px)) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.autochat-pricing-clarity-card {
  margin: 22px 0 34px;
  padding: 26px 28px;
  border-radius: 24px;
  background: #f8fffb;
  border: 1px solid rgba(8,153,28,.16);
  box-shadow: 0 16px 40px rgba(6,26,19,.06);
  color: #31433a;
  font-family: Poppins, Sans-serif;
}
.autochat-pricing-clarity-card h2 {
  margin: 0 0 10px;
  color: #061a13;
  font: 700 24px/1.25 Poppins, Sans-serif;
}
.autochat-pricing-clarity-card p,
.autochat-pricing-clarity-card li {
  color: #405349;
  font: 400 14px/1.7 Poppins, Sans-serif;
}
.autochat-pricing-clarity-card ul {
  margin: 14px 0 0;
  padding-left: 20px;
}
@media (max-width: 767px) {
  .autochat-capability-section > .e-con-inner,
  .autochat-pricing-clarity-section > .e-con-inner {
    width: calc(100% - 28px) !important;
  }
  .autochat-capability-grid {
    grid-template-columns: 1fr;
  }
  .autochat-capability-card-wide {
    grid-column: auto;
  }
}

/* 2026-05-16 Features mobile containment after benchmark comparison section. */
@media (max-width: 767px) {
  .elementor-375,
  .elementor-375 .e-con,
  .elementor-375 .e-con-inner,
  .elementor-375 .elementor-widget,
  .elementor-375 .elementor-widget-container,
  .elementor-375 .elementor-heading-title,
  .elementor-375 .elementor-widget-text-editor,
  .elementor-375 .elementor-widget-text-editor p,
  .elementor-375 #breadcrumbs,
  .elementor-375 #breadcrumbs * {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-overflow: clip !important;
  }

  .elementor-375 > .e-con,
  .elementor-375 .e-con.e-parent,
  .elementor-375 .e-con-boxed {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .elementor-375 .e-con > .e-con-inner,
  .elementor-375 .e-con-boxed > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .autochat-capability-section {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .autochat-capability-section > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .autochat-capability-heading .elementor-heading-title,
  .autochat-capability-intro p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .autochat-capability-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 18px 16px !important;
  }

  .autochat-capability-card h3,
  .autochat-capability-card p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
  }
}

/* 2026-05-16 mobile alignment repair after live phone review.
   Keep the preserved WordPress visual identity, but force a real phone canvas:
   no right-edge clipping, no floating hero arrow overlap, and consistent mobile
   section/card widths across home, features, contact, blog, pricing, AI, and ecommerce pages. */
@media (max-width: 767px) {
  html,
  body,
  #page,
  .site,
  .site-main,
  .page-content {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .elementor-30,
  .elementor-375,
  .elementor-840,
  .elementor-1163,
  .elementor-1386,
  .elementor-1388,
  .elementor-519,
  .elementor-1068 {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .elementor-30 .e-con,
  .elementor-375 .e-con,
  .elementor-840 .e-con,
  .elementor-1163 .e-con,
  .elementor-1386 .e-con,
  .elementor-1388 .e-con,
  .elementor-519 .e-con,
  .elementor-1068 .e-con,
  .elementor-30 .elementor-section,
  .elementor-375 .elementor-section,
  .elementor-840 .elementor-section,
  .elementor-1163 .elementor-section,
  .elementor-519 .elementor-section,
  .elementor-1068 .elementor-section {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
  }

  .elementor-30 .e-con > .e-con-inner,
  .elementor-375 .e-con > .e-con-inner,
  .elementor-840 .e-con > .e-con-inner,
  .elementor-1163 .e-con > .e-con-inner,
  .elementor-1386 .e-con > .e-con-inner,
  .elementor-1388 .e-con > .e-con-inner,
  .elementor-519 .e-con > .e-con-inner,
  .elementor-1068 .e-con > .e-con-inner,
  .elementor-30 .elementor-container,
  .elementor-375 .elementor-container,
  .elementor-840 .elementor-container,
  .elementor-1163 .elementor-container,
  .elementor-519 .elementor-container,
  .elementor-1068 .elementor-container {
    width: min(calc(100% - 28px), 362px) !important;
    max-width: min(calc(100% - 28px), 362px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  .elementor-30 .elementor-widget,
  .elementor-375 .elementor-widget,
  .elementor-840 .elementor-widget,
  .elementor-1163 .elementor-widget,
  .elementor-1386 .elementor-widget,
  .elementor-1388 .elementor-widget,
  .elementor-519 .elementor-widget,
  .elementor-1068 .elementor-widget,
  .elementor-30 .elementor-widget-container,
  .elementor-375 .elementor-widget-container,
  .elementor-840 .elementor-widget-container,
  .elementor-1163 .elementor-widget-container,
  .elementor-1386 .elementor-widget-container,
  .elementor-1388 .elementor-widget-container,
  .elementor-519 .elementor-widget-container,
  .elementor-1068 .elementor-widget-container,
  .elementor-30 .elementor-heading-title,
  .elementor-375 .elementor-heading-title,
  .elementor-840 .elementor-heading-title,
  .elementor-1163 .elementor-heading-title,
  .elementor-1386 .elementor-heading-title,
  .elementor-1388 .elementor-heading-title,
  .elementor-519 .elementor-heading-title,
  .elementor-1068 .elementor-heading-title,
  .elementor-30 .elementor-widget-text-editor,
  .elementor-375 .elementor-widget-text-editor,
  .elementor-840 .elementor-widget-text-editor,
  .elementor-1163 .elementor-widget-text-editor,
  .elementor-1386 .elementor-widget-text-editor,
  .elementor-1388 .elementor-widget-text-editor,
  .elementor-519 .elementor-widget-text-editor,
  .elementor-1068 .elementor-widget-text-editor,
  .elementor-30 .elementor-widget-text-editor p,
  .elementor-375 .elementor-widget-text-editor p,
  .elementor-840 .elementor-widget-text-editor p,
  .elementor-1163 .elementor-widget-text-editor p,
  .elementor-1386 .elementor-widget-text-editor p,
  .elementor-1388 .elementor-widget-text-editor p,
  .elementor-519 .elementor-widget-text-editor p,
  .elementor-1068 .elementor-widget-text-editor p,
  .elementor-30 #breadcrumbs,
  .elementor-375 #breadcrumbs,
  .elementor-840 #breadcrumbs,
  .elementor-1163 #breadcrumbs {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    text-overflow: clip !important;
  }

  .elementor-30 .elementor-element-c211a6d,
  .elementor-30 .elementor-element-6e94ca8,
  .elementor-30 img.wp-image-343,
  .elementor-30 .elementor-widget-image:has(img.wp-image-343) {
    display: none !important;
  }

  .elementor-30 .elementor-element-1bfebd9,
  .elementor-30 .elementor-element-1bfebd9 > .e-con-inner,
  .elementor-30 .elementor-element-5266359,
  .elementor-30 .elementor-element-5266359 > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-30 .elementor-element-c559399,
  .elementor-30 .elementor-element-c559399 .elementor-button-wrapper,
  .elementor-30 .elementor-element-c559399 .elementor-button-link,
  .elementor-30 .elementor-element-c559399 .elementor-button {
    width: 100% !important;
    max-width: 272px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  .elementor-30 .elementor-element-4fa22f1,
  .elementor-30 .elementor-element-543866f,
  .elementor-30 .elementor-element-1d4a294,
  .elementor-30 .elementor-element-0a65434,
  .elementor-30 .elementor-element-161a804 {
    width: 100% !important;
    max-width: 300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    align-self: center !important;
  }

  .elementor-30 .elementor-element-1d4a294 img {
    width: min(100%, 300px) !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-375 .elementor-icon-box-wrapper,
  .elementor-375 .elementor-image-box-wrapper,
  .elementor-840 .elementor-icon-box-wrapper,
  .elementor-840 .elementor-image-box-wrapper,
  .elementor-1163 .elementor-post,
  .elementor-1163 .elementor-post__card,
  .elementor-1163 article,
  .elementor-1163 .elementor-post__text,
  .elementor-1163 .elementor-post__thumbnail,
  .elementor-1163 .elementor-post__thumbnail img {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .elementor-1163 .elementor-posts-container,
  .elementor-1163 .elementor-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-1163 .elementor-post__title,
  .elementor-1163 .elementor-post__title a,
  .elementor-1163 .elementor-post__excerpt,
  .elementor-1163 .elementor-post__excerpt p {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    overflow: visible !important;
  }

  .elementor-840 .elementor-spacer-inner {
    max-height: 34px !important;
  }
}

/* 2026-05-16 mobile screenshot alignment hardening.
   Elementor/Chrome can calculate a wider layout viewport than the captured phone
   canvas. Left-anchor the phone content measure so headings, breadcrumbs and
   cards do not disappear off the right edge on real phone screenshots. */
@media (max-width: 767px) {
  .elementor-375 .e-con > .e-con-inner,
  .elementor-840 .e-con > .e-con-inner,
  .elementor-1163 .e-con > .e-con-inner,
  .elementor-519 .e-con > .e-con-inner,
  .elementor-1068 .e-con > .e-con-inner,
  .elementor-375 .elementor-container,
  .elementor-840 .elementor-container,
  .elementor-1163 .elementor-container,
  .elementor-519 .elementor-container,
  .elementor-1068 .elementor-container {
    width: min(calc(100% - 28px), 362px) !important;
    max-width: min(calc(100% - 28px), 362px) !important;
    margin-left: 14px !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-375 .elementor-widget,
  .elementor-840 .elementor-widget,
  .elementor-1163 .elementor-widget,
  .elementor-519 .elementor-widget,
  .elementor-1068 .elementor-widget,
  .elementor-375 .elementor-widget-container,
  .elementor-840 .elementor-widget-container,
  .elementor-1163 .elementor-widget-container,
  .elementor-519 .elementor-widget-container,
  .elementor-1068 .elementor-widget-container,
  .elementor-375 .elementor-heading-title,
  .elementor-840 .elementor-heading-title,
  .elementor-1163 .elementor-heading-title,
  .elementor-519 .elementor-heading-title,
  .elementor-1068 .elementor-heading-title,
  .elementor-375 .elementor-widget-text-editor,
  .elementor-840 .elementor-widget-text-editor,
  .elementor-1163 .elementor-widget-text-editor,
  .elementor-519 .elementor-widget-text-editor,
  .elementor-1068 .elementor-widget-text-editor,
  .elementor-375 .elementor-widget-text-editor p,
  .elementor-840 .elementor-widget-text-editor p,
  .elementor-1163 .elementor-widget-text-editor p,
  .elementor-519 .elementor-widget-text-editor p,
  .elementor-1068 .elementor-widget-text-editor p,
  .elementor-375 #breadcrumbs,
  .elementor-840 #breadcrumbs,
  .elementor-1163 #breadcrumbs,
  .elementor-375 #breadcrumbs *,
  .elementor-840 #breadcrumbs *,
  .elementor-1163 #breadcrumbs * {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .elementor-1163 .elementor-posts-container,
  .elementor-1163 .elementor-grid,
  .elementor-1163 .elementor-post,
  .elementor-1163 .elementor-post__card,
  .elementor-1163 .elementor-post__thumbnail,
  .elementor-1163 .elementor-post__text,
  .elementor-1163 .elementor-post__title,
  .elementor-1163 .elementor-post__excerpt {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* 2026-05-16 blog mobile card overflow fix.
   The blog listing section is an e-con-full container without an inner wrapper,
   so the generic inner-container phone measure above does not constrain it. */
@media (max-width: 767px) {
  .elementor-1163 .elementor-element-609fff92,
  .elementor-1163 .elementor-element-cc6a0b5,
  .elementor-1163 #blog,
  .elementor-1163 #blog > .elementor-widget-container {
    width: min(calc(100% - 28px), 362px) !important;
    max-width: min(calc(100% - 28px), 362px) !important;
    min-width: 0 !important;
    margin-left: 14px !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .elementor-1163 #blog .elementor-posts-container,
  .elementor-1163 #blog .elementor-grid {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .elementor-1163 #blog article.elementor-post,
  .elementor-1163 #blog .elementor-grid-item,
  .elementor-1163 #blog .elementor-post__thumbnail__link,
  .elementor-1163 #blog .elementor-post__thumbnail,
  .elementor-1163 #blog .elementor-post__text {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .elementor-1163 #blog .elementor-post__thumbnail img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    object-fit: cover !important;
    box-sizing: border-box !important;
  }

  .elementor-1163 #blog .elementor-post__title,
  .elementor-1163 #blog .elementor-post__title a,
  .elementor-1163 #blog .elementor-post__meta-data,
  .elementor-1163 #blog .elementor-post__excerpt,
  .elementor-1163 #blog .elementor-post__excerpt p,
  .elementor-1163 #blog .elementor-post__read-more {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    overflow: visible !important;
  }
}

/* 2026-05-16 blog mobile polish: keep cards away from phone edge without
   changing the preserved WordPress desktop layout. */
@media (max-width: 767px) {
  .elementor-1163 #blog article.elementor-post {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  .elementor-1163 #blog .elementor-post__text {
    padding-top: 12px !important;
  }
}

/* 2026-05-16 original-feel mobile correction.
   The previous overflow repair made the page fit, but it changed the old
   AutoChat mobile proportions. Restore the original-like header, logo, CTA,
   proof row and hero image sizing while keeping overflow guarded. */
@media (max-width: 767px) {
  .elementor-16 .elementor-element-5600d21,
  .elementor-16 .elementor-element-5600d21 > .e-con-inner {
    min-height: 58px !important;
    height: 58px !important;
    max-height: 58px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    align-items: center !important;
    overflow: visible !important;
  }

  .elementor-16 .elementor-element-ed8f5e2,
  .elementor-16 #logo {
    width: 168px !important;
    max-width: 168px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .elementor-16 #logo img.wp-image-24,
  .elementor-16 .elementor-element-ed8f5e2 img.wp-image-24 {
    width: 168px !important;
    max-width: 168px !important;
    height: auto !important;
    display: block !important;
  }

  .elementor-16 .elementor-element-6928644 {
    width: 34px !important;
    max-width: 34px !important;
    margin-left: auto !important;
    margin-right: 2px !important;
  }

  .elementor-16 .elementor-menu-toggle {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    padding: 5px !important;
    margin: 0 !important;
    line-height: 1 !important;
  }

  .elementor-16 .elementor-menu-toggle svg {
    width: 18px !important;
    height: 18px !important;
  }

  .elementor-30 .elementor-element-15e956a {
    padding-top: 18px !important;
  }

  .elementor-30 .elementor-element-28aac82,
  .elementor-30 .elementor-element-28aac82 > .e-con-inner {
    align-items: flex-start !important;
    text-align: left !important;
  }

  .elementor-30 .elementor-element-648de38,
  .elementor-30 .elementor-element-0132506,
  .elementor-30 .elementor-element-80dda95,
  .elementor-30 .elementor-element-335b3f8,
  .elementor-30 .elementor-element-648de38 .elementor-heading-title,
  .elementor-30 .elementor-element-0132506 .elementor-heading-title,
  .elementor-30 .elementor-element-80dda95 .elementor-heading-title,
  .elementor-30 .elementor-element-335b3f8,
  .elementor-30 .elementor-element-335b3f8 p {
    text-align: left !important;
  }

  .elementor-30 .elementor-element-1bfebd9,
  .elementor-30 .elementor-element-1bfebd9 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px 14px !important;
    text-align: left !important;
    width: min(calc(100% - 28px), 362px) !important;
    max-width: min(calc(100% - 28px), 362px) !important;
    margin-left: 14px !important;
    margin-right: auto !important;
  }

  .elementor-30 .elementor-element-c559399,
  .elementor-30 .elementor-element-c559399 .elementor-button-wrapper,
  .elementor-30 .elementor-element-c559399 .elementor-button-link,
  .elementor-30 .elementor-element-c559399 .elementor-button {
    width: 188px !important;
    max-width: 188px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .elementor-30 .elementor-element-c559399 .elementor-button {
    min-height: 58px !important;
    padding: 13px 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .elementor-30 .elementor-element-4fa22f1 {
    flex: 1 1 118px !important;
    width: auto !important;
    max-width: 138px !important;
    margin: 0 !important;
    text-align: left !important;
  }

  .elementor-30 .elementor-element-4fa22f1 .elementor-icon-box-wrapper,
  .elementor-30 .elementor-element-4fa22f1 .elementor-icon-box-content,
  .elementor-30 .elementor-element-4fa22f1 .elementor-icon-box-title,
  .elementor-30 .elementor-element-4fa22f1 .elementor-icon-box-description {
    text-align: left !important;
  }

  .elementor-30 .elementor-element-543866f {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
  }

  .elementor-30 .elementor-element-543866f .e-rating,
  .elementor-30 .elementor-element-543866f .e-rating-wrapper {
    justify-content: flex-start !important;
    text-align: left !important;
  }

  .elementor-30 .elementor-element-5266359,
  .elementor-30 .elementor-element-5266359 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    text-align: left !important;
    width: min(calc(100% - 28px), 362px) !important;
    max-width: min(calc(100% - 28px), 362px) !important;
    margin-left: 14px !important;
    margin-right: auto !important;
  }

  .elementor-30 .elementor-element-1d4a294 {
    flex: 0 0 78px !important;
    width: 78px !important;
    max-width: 78px !important;
    margin: 0 !important;
  }

  .elementor-30 .elementor-element-1d4a294 img {
    width: 78px !important;
    max-width: 78px !important;
    height: auto !important;
  }

  .elementor-30 .elementor-element-0a65434 {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 78px !important;
    margin: 0 !important;
    text-align: left !important;
  }

  .elementor-30 .elementor-element-0a65434 p {
    font-size: 12px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  .elementor-30 .elementor-element-161a804 {
    flex: 0 0 96px !important;
    width: 96px !important;
    max-width: 96px !important;
    margin: 0 !important;
  }

  .elementor-30 .elementor-element-161a804 img {
    width: 96px !important;
    max-width: 96px !important;
    height: auto !important;
  }

  .elementor-30 .elementor-element-7dcefa8,
  .elementor-30 .elementor-element-0f7b6e8 {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 8px !important;
    overflow: visible !important;
  }

  .elementor-30 .elementor-element-0f7b6e8 img.wp-image-2619 {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    display: block !important;
  }
}

/* 2026-05-16 mobile nav/proof final pass: make the menu button present and
   keep the original compact CTA + trust feel without cramped wrapping. */
@media (max-width: 767px) {
  .elementor-16 .elementor-nav-menu--main {
    display: none !important;
  }

  .elementor-16 .elementor-element-6928644,
  .elementor-16 .elementor-element-6928644 .elementor-widget-container {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .elementor-16 .elementor-menu-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #111827 !important;
    background: transparent !important;
    border: 0 !important;
  }

  .elementor-16 .elementor-menu-toggle .elementor-menu-toggle__icon--open {
    display: block !important;
  }

  .elementor-16 .elementor-menu-toggle .elementor-menu-toggle__icon--close {
    display: none !important;
  }

  .elementor-16 .elementor-element-ed8f5e2,
  .elementor-16 #logo,
  .elementor-16 #logo img.wp-image-24,
  .elementor-16 .elementor-element-ed8f5e2 img.wp-image-24 {
    width: 158px !important;
    max-width: 158px !important;
  }

  .elementor-30 .elementor-element-c559399,
  .elementor-30 .elementor-element-c559399 .elementor-button-wrapper,
  .elementor-30 .elementor-element-c559399 .elementor-button-link,
  .elementor-30 .elementor-element-c559399 .elementor-button {
    width: 178px !important;
    max-width: 178px !important;
  }

  .elementor-30 .elementor-element-4fa22f1 {
    flex: 0 1 154px !important;
    width: 154px !important;
    max-width: 154px !important;
  }

  .elementor-30 .elementor-element-4fa22f1 .elementor-icon-box-title,
  .elementor-30 .elementor-element-4fa22f1 .elementor-icon-box-title span,
  .elementor-30 .elementor-element-4fa22f1 .elementor-icon-box-description {
    font-size: 13px !important;
    line-height: 1.22 !important;
  }
}

/* 2026-05-16 menu icon visibility fallback.
   Some Elementor export CSS suppresses the SVG in the static mirror; keep the
   actual toggle element clickable and paint a lightweight hamburger on it. */
@media (max-width: 767px) {
  .elementor-16 .elementor-menu-toggle::before {
    content: "☰" !important;
    display: block !important;
    font-size: 24px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    color: #111827 !important;
  }

  .elementor-16 .elementor-menu-toggle svg {
    display: none !important;
  }
}

/* 2026-05-16 static mirror header fallback: paint the mobile menu glyph on the
   header itself so the menu section visually matches the original even when
   Elementor's exported toggle display rules suppress the nested icon. */
@media (max-width: 767px) {
  .elementor-16 .elementor-element-5600d21 {
    position: relative !important;
  }

  .elementor-16 .elementor-element-5600d21::after {
    content: "☰" !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: block !important;
    z-index: 50 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    color: #111827 !important;
    pointer-events: none !important;
  }

  .elementor-16 .elementor-element-6928644 {
    position: absolute !important;
    right: 10px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 60 !important;
    width: 42px !important;
    height: 42px !important;
  }
}

/* 2026-05-16 last-resort visual parity for mobile hamburger in static WP pages. */
body.elementor-default::after {
  content: "☰" !important;
  position: fixed !important;
  top: 17px !important;
  right: 20px !important;
  z-index: 2147483000 !important;
  display: block !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 24px !important;
  line-height: 28px !important;
  font-weight: 600 !important;
  color: #111827 !important;
  text-align: center !important;
  pointer-events: none !important;
}

@media (min-width: 768px) {
  body.elementor-default::after {
    display: none !important;
    content: none !important;
  }
}

.autochat-mobile-menu-glyph {
  display: none;
}

@media (max-width: 767px) {
  .elementor-16 .autochat-mobile-menu-glyph {
    display: block !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 2147483001 !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 24px !important;
    line-height: 28px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    text-align: center !important;
    pointer-events: none !important;
  }
}

/* 2026-05-16 Elementor/Chrome mobile capture breakpoint correction.
   Elementor's exported mobile/tablet header can evaluate above 767px in some
   headless/mobile captures, so expose the menu glyph through the full tablet
   breakpoint and hide only on real desktop. */
@media (max-width: 1024px) {
  body.elementor-default::after {
    content: "☰" !important;
    position: fixed !important;
    top: 17px !important;
    right: 20px !important;
    z-index: 2147483000 !important;
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 24px !important;
    line-height: 28px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    text-align: center !important;
    pointer-events: none !important;
  }

  .elementor-16 .autochat-mobile-menu-glyph {
    display: block !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 2147483001 !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 24px !important;
    line-height: 28px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    text-align: center !important;
    pointer-events: none !important;
  }
}

@media (min-width: 1025px) {
  body.elementor-default::after,
  .elementor-16 .autochat-mobile-menu-glyph {
    display: none !important;
    content: none !important;
  }
}

/* 2026-05-28 pricing mobile pass.
   Keep the Elementor look, but stop the billing tables from stacking together
   and reduce the forced desktop spacing that made each plan card feel broken. */
body.autochat-route-pricing:not(.autochat-pricing-monthly) .elementor-1386 .pricing-tables-1,
body.autochat-route-pricing.autochat-pricing-monthly .elementor-1386 .pricing-tables-2 {
  display: none !important;
}

body.autochat-route-pricing:not(.autochat-pricing-monthly) .elementor-1386 .pricing-tables-2,
body.autochat-route-pricing.autochat-pricing-monthly .elementor-1386 .pricing-tables-1 {
  display: flex !important;
}

@media (max-width: 767px) {
  body.autochat-route-pricing .elementor-1386 .elementor-element-3fda736 {
    min-height: 0 !important;
    margin-top: 0 !important;
    padding-top: 24px !important;
    padding-bottom: 28px !important;
  }

  body.autochat-route-pricing .elementor-1386 .elementor-element-b08f74f {
    min-height: 0 !important;
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }

  body.autochat-route-pricing .elementor-1386 .elementor-element-d90c9ed {
    min-height: 0 !important;
    padding-top: 30px !important;
    padding-bottom: 18px !important;
  }

  body.autochat-route-pricing .elementor-1386 .elementor-element-f4f1e05 {
    min-height: 0 !important;
    width: min(100% - 28px, 320px) !important;
    margin: 6px auto 22px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    background: #f2fbf5 !important;
    border: 1px solid rgba(8, 153, 28, 0.14) !important;
  }

  body.autochat-route-pricing .elementor-1386 .price-toggle {
    min-width: 54px !important;
    width: 54px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables {
    padding-top: 0 !important;
    padding-bottom: 8px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables > .e-con-inner {
    gap: 14px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables > .e-con-inner > .e-con,
  body.autochat-route-pricing .elementor-1386 .pricing-tables > .e-con-inner > .e-child {
    width: min(calc(100vw - 30px), 354px) !important;
    max-width: min(calc(100vw - 30px), 354px) !important;
    margin-bottom: 14px !important;
    padding: 22px 18px 20px !important;
    gap: 8px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables h2.elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.12 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables h6.elementor-heading-title {
    font-size: 15px !important;
    line-height: 1.24 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget {
    margin-bottom: 6px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-items {
    gap: 7px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-item {
    grid-template-columns: 18px minmax(0, 1fr) !important;
    gap: 8px !important;
    min-height: 0 !important;
    height: auto !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-item > a {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 8px !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    color: inherit !important;
    text-decoration: none !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-item:has(> a) {
    display: block !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-icon {
    width: 18px !important;
    min-width: 18px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-text {
    font-size: 14.5px !important;
    line-height: 1.32 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-button {
    min-height: 44px !important;
    padding-top: 11px !important;
    padding-bottom: 11px !important;
  }

  body.autochat-route-pricing .elementor-1386 .elementor-element-754c9ab8 {
    min-height: 0 !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }

  body.autochat-route-pricing .elementor-1386 .elementor-element-754c9ab8 .elementor-button-wrapper,
  body.autochat-route-pricing .elementor-1386 .elementor-element-754c9ab8 .elementor-button {
    width: 100% !important;
    max-width: 320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.autochat-route-pricing .elementor-1386 .autochat-pricing-clarity-section {
    min-height: 0 !important;
    margin-top: 0 !important;
    padding-top: 26px !important;
    padding-bottom: 22px !important;
  }

  body.autochat-route-pricing .elementor-1386 .autochat-pricing-clarity-card {
    margin: 12px 0 18px !important;
    padding: 20px 18px !important;
    border-radius: 18px !important;
  }

  body.autochat-route-pricing .elementor-1386 .autochat-pricing-clarity-card h2 {
    font-size: 22px !important;
    line-height: 1.22 !important;
  }

  body.autochat-route-pricing .elementor-1386 .autochat-pricing-clarity-card p,
  body.autochat-route-pricing .elementor-1386 .autochat-pricing-clarity-card li {
    font-size: 13.5px !important;
    line-height: 1.58 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-heading:is(
    .elementor-element-528139c,
    .elementor-element-100f14d,
    .elementor-element-c4a01e3,
    .elementor-element-8ebb6ac,
    .elementor-element-d7d5cc4,
    .elementor-element-7e43d9b
  ),
  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-image-box {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-heading:is(
    .elementor-element-4414dcd,
    .elementor-element-0c88a82,
    .elementor-element-29b89ef,
    .elementor-element-e4d7569,
    .elementor-element-3afe866,
    .elementor-element-1294607
  ) {
    margin-top: -2px !important;
    margin-bottom: 12px !important;
    min-height: 18px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-heading:is(
    .elementor-element-4414dcd,
    .elementor-element-0c88a82,
    .elementor-element-29b89ef,
    .elementor-element-e4d7569,
    .elementor-element-3afe866,
    .elementor-element-1294607
  ) .elementor-heading-title {
    display: block !important;
    min-height: 18px !important;
    color: #5f7168 !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-item:has(.e-fas-times) {
    display: none !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-icon .e-fas-check {
    color: #08991c !important;
    fill: #08991c !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-icon-list:empty,
  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-icon-list:not(:has(.elementor-icon-list-item:not([style*="display: none"]))) {
    margin: 0 !important;
  }
}

/* 2026-05-28 pricing mobile hardening.
   The imported Elementor pricing cards used desktop-height spacing on phones,
   and the fixed quick nav could cover the lower plan features. Pricing is a
   decision surface, so keep this page fully readable over always-on nav. */
@media (max-width: 767px) {
  body.autochat-route-pricing {
    padding-bottom: calc(128px + env(safe-area-inset-bottom)) !important;
  }

  body.autochat-route-pricing .autochat-mobile-sticky-footer {
    display: grid !important;
  }

  .elementor-1386 .pricing-tables,
  .elementor-1386 .pricing-tables > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 18px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }

  .elementor-1386 .pricing-tables > .e-con-inner > .e-con,
  .elementor-1386 .pricing-tables > .e-con-inner > .e-child {
    width: min(calc(100vw - 28px), 360px) !important;
    max-width: min(calc(100vw - 28px), 360px) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    align-self: center !important;
    margin: 0 auto 20px auto !important;
    padding: 28px 22px 26px 22px !important;
    border-radius: 18px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .elementor-1386 .pricing-tables > .e-con-inner > .e-con > .elementor-widget,
  .elementor-1386 .pricing-tables > .e-con-inner > .e-child > .elementor-widget {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 10px !important;
  }

  .elementor-1386 .pricing-tables h2.elementor-heading-title {
    max-width: 100% !important;
    font-size: 32px !important;
    line-height: 1.12 !important;
    text-align: center !important;
    overflow-wrap: break-word !important;
  }

  .elementor-1386 .pricing-tables h6.elementor-heading-title {
    max-width: 100% !important;
    font-size: 17px !important;
    line-height: 1.28 !important;
    text-align: center !important;
    overflow-wrap: break-word !important;
  }

  .elementor-1386 .pricing-tables .elementor-widget-heading .elementor-heading-title {
    width: 100% !important;
  }

  .elementor-1386 .pricing-tables .elementor-widget-image-box {
    margin-top: 10px !important;
    margin-bottom: 12px !important;
  }

  .elementor-1386 .pricing-tables .elementor-image-box-wrapper {
    display: grid !important;
    grid-template-columns: 62px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
  }

  .elementor-1386 .pricing-tables .elementor-image-box-img {
    width: 62px !important;
    max-width: 62px !important;
    margin: 0 !important;
  }

  .elementor-1386 .pricing-tables .elementor-image-box-img img {
    width: 62px !important;
    max-width: 62px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .elementor-1386 .pricing-tables .elementor-image-box-content,
  .elementor-1386 .pricing-tables .elementor-image-box-description {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    text-align: left !important;
    overflow-wrap: break-word !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-item {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 9px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-icon {
    width: 22px !important;
    min-width: 22px !important;
    padding-top: 2px !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-icon svg {
    width: 14px !important;
    height: 14px !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-text {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.34 !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .elementor-1386 .pricing-tables .elementor-button-wrapper,
  .elementor-1386 .pricing-tables .elementor-button {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-1386 .pricing-tables .elementor-button {
    min-height: 46px !important;
    justify-content: center !important;
  }
}

/* 2026-05-16 portrait-device menu visibility fallback. Some headless captures
   report a tablet/desktop CSS width while still rendering a phone-size portrait
   screenshot, so use orientation as the mobile visual signal. */
@media (orientation: portrait) {
  body.elementor-default::after {
    content: "☰" !important;
    position: fixed !important;
    top: 17px !important;
    right: 20px !important;
    z-index: 2147483000 !important;
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 24px !important;
    line-height: 28px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    text-align: center !important;
    pointer-events: none !important;
  }
}

@media (orientation: landscape) {
  body.elementor-default::after {
    display: none !important;
    content: none !important;
  }
}

/* 2026-05-16 emergency: visible menu mark for preserved WP static mobile header. */
.elementor-16 .autochat-mobile-menu-glyph {
  display: block !important;
  position: fixed !important;
  right: 20px !important;
  top: 17px !important;
  z-index: 2147483001 !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 24px !important;
  line-height: 28px !important;
  font-weight: 600 !important;
  color: #111827 !important;
  text-align: center !important;
  pointer-events: none !important;
}

/* 2026-05-16 phone-canvas position fix for headless/static captures that use
   a wider CSS layout viewport than the rendered 390px phone screenshot. */
.elementor-16 .elementor-menu-toggle,
.elementor-16 .autochat-mobile-menu-glyph,
body.elementor-default::after {
  left: 340px !important;
  right: auto !important;
}

/* 2026-05-16 desktop cleanup: the emergency mobile glyph must not appear on
   desktop/landscape headers. Keep it only for phone portrait captures. */
@media (orientation: landscape), (min-width: 1025px) {
  .elementor-16 .autochat-mobile-menu-glyph,
  body.elementor-default::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    content: none !important;
  }
}

/* 2026-05-16 final responsive menu glyph: hidden by default in HTML, shown only
   in portrait/mobile capture, and positioned against the 390px phone canvas. */
@media (orientation: portrait) {
  .elementor-16 .autochat-mobile-menu-glyph {
    display: block !important;
    position: fixed !important;
    left: 340px !important;
    right: auto !important;
    top: 20px !important;
    z-index: 2147483001 !important;
    width: 26px !important;
    height: 18px !important;
    background: linear-gradient(#111827,#111827) 0 0/26px 3px no-repeat,
                linear-gradient(#111827,#111827) 0 7.5px/26px 3px no-repeat,
                linear-gradient(#111827,#111827) 0 15px/26px 3px no-repeat !important;
    pointer-events: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}

@media (orientation: landscape) {
  .elementor-16 .autochat-mobile-menu-glyph {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }
}

/* 2026-05-17 About page image containment.
   The preserved Elementor export uses desktop-width cards on /about-us; keep
   the original content but fit image blocks inside real phone screenshots. */
@media (max-width: 767px) {
  .elementor-799,
  .elementor-799 .page-content,
  .elementor-799 .e-con,
  .elementor-799 .e-con-inner,
  .elementor-799 .elementor-widget,
  .elementor-799 .elementor-widget-container {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  .elementor-799 > .e-con,
  .elementor-799 > .e-con > .e-con-inner,
  .elementor-799 .elementor-element-3711d48 > .e-con-inner,
  .elementor-799 .elementor-element-12a1d341 > .e-con-inner {
    width: min(calc(100vw - 32px), 358px) !important;
    max-width: min(calc(100vw - 32px), 358px) !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-799 .elementor-heading-title,
  .elementor-799 .elementor-widget-text-editor,
  .elementor-799 .elementor-widget-text-editor p {
    width: 100% !important;
    max-width: min(calc(100vw - 40px), 330px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  .elementor-799 .elementor-element-c9e734e,
  .elementor-799 .elementor-element-e310db1,
  .elementor-799 .elementor-element-e310db1 .elementor-widget-container {
    width: 100% !important;
    max-width: min(calc(100vw - 48px), 320px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  .elementor-799 .elementor-element-e310db1 img {
    width: min(72vw, 240px) !important;
    height: auto !important;
    display: inline-block !important;
    object-fit: contain !important;
  }

  .elementor-799 .inner-box,
  .elementor-799 .service-block-one,
  .elementor-799 .service-block-two,
  .elementor-799 .service-block-three,
  .elementor-799 .service-block-four {
    width: min(calc(100vw - 48px), 330px) !important;
    max-width: min(calc(100vw - 48px), 330px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: hidden !important;
  }

  .elementor-799 .inner-box > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-799 .service-block-image,
  .elementor-799 .inner-box .image,
  .elementor-799 .inner-box .image .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-799 .inner-box .image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: cover !important;
  }

  .elementor-799 .inner-box .title,
  .elementor-799 .inner-box .text {
    width: 100% !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* 2026-05-20 final desktop header cleanup. */
@media (min-width: 768px) {
  .elementor-16 .elementor-menu-toggle,
  .elementor-16 .elementor-menu-toggle *,
  .elementor-16 .autochat-mobile-menu-glyph,
  body.elementor-default::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    content: none !important;
  }
}

/* 2026-05-28 final mobile footer/menu override.
   Keep this block at EOF so older emergency hamburger rules cannot re-fix the
   icon over scrolled footer content. */
@media (max-width: 767px), (orientation: portrait) {
  body.elementor-default::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .elementor-16 {
    position: relative !important;
  }

  .elementor-16 .elementor-element-5600d21::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .elementor-16 .elementor-menu-toggle {
    display: flex !important;
    position: absolute !important;
    top: 22px !important;
    left: auto !important;
    right: 22px !important;
    width: 30px !important;
    height: 30px !important;
    max-width: 30px !important;
    min-width: 30px !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 120 !important;
  }

  .elementor-16 .elementor-menu-toggle::before,
  .elementor-16 .elementor-menu-toggle::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }

  .elementor-16 .elementor-menu-toggle svg {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
  }

  .elementor-16 .autochat-mobile-menu-glyph {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  .elementor-30 .elementor-element-15e956a {
    margin-top: 0 !important;
    --margin-top: 0px !important;
    padding-top: 72px !important;
    --padding-top: 72px !important;
  }
}

/* 2026-05-28 responsive header menu activation.
   The static Elementor export can leave the burger visible but unbound on
   phones, and at 768px portrait the desktop cleanup hid the only usable menu. */
@media (max-width: 1024px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .elementor-16,
  .elementor-16 .elementor-widget-nav-menu,
  .elementor-16 .elementor-element-5600d21 {
    position: relative !important;
    overflow: visible !important;
  }

  .elementor-16 .elementor-nav-menu--main {
    display: none !important;
  }

  .elementor-16 .elementor-menu-toggle {
    display: flex !important;
    position: absolute !important;
    top: 22px !important;
    left: auto !important;
    right: clamp(18px, 5vw, 34px) !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    max-width: 32px !important;
    max-height: 32px !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 10020 !important;
    cursor: pointer !important;
  }

  .elementor-16 .elementor-menu-toggle svg {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
    pointer-events: none !important;
  }

  .elementor-16 .elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--open,
  .elementor-16 .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--open {
    display: none !important;
  }

  .elementor-16 .elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--close,
  .elementor-16 .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close {
    display: block !important;
  }

  .elementor-16 .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    display: block !important;
    position: absolute !important;
    top: 64px !important;
    left: max(14px, calc(100vw - 374px)) !important;
    right: auto !important;
    width: calc(100vw - 28px) !important;
    max-width: 360px !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-6px) !important;
    z-index: 10010 !important;
    box-sizing: border-box !important;
  }

  .elementor-16 .elementor-menu-toggle[aria-expanded="true"] + .elementor-nav-menu--dropdown,
  .elementor-16 .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown,
  .elementor-16 .elementor-nav-menu--dropdown.elementor-active,
  .elementor-16 .elementor-nav-menu--dropdown[aria-hidden="false"] {
    height: auto !important;
    max-height: calc(100vh - 92px) !important;
    overflow-y: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .elementor-16 .elementor-nav-menu--dropdown .elementor-nav-menu {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16) !important;
    overflow: hidden !important;
  }

  .elementor-16 .elementor-nav-menu--dropdown a {
    min-height: 42px !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .elementor-16 .elementor-nav-menu--dropdown .sub-menu {
    display: none !important;
  }

  .elementor-16 .elementor-nav-menu--dropdown .menu-item-has-children.elementor-active > .sub-menu {
    display: block !important;
  }
}

@media (min-width: 1025px) {
  .elementor-16 .elementor-menu-toggle,
  .elementor-16 .elementor-menu-toggle *,
  .elementor-16 .autochat-mobile-menu-glyph,
  body.elementor-default::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

/* 2026-05-28 final compact-header alignment.
   Keep the real Elementor toggle vertically centered in the header and near the
   right edge on mobile/tablet; older Elementor offsets pushed it low/left. */
@media (max-width: 1024px) {
  .elementor-16 .elementor-element-5600d21,
  .elementor-16 .elementor-element-5600d21 > .e-con-inner {
    min-height: 58px !important;
    height: 58px !important;
    align-items: center !important;
  }

  .elementor-16 .elementor-element-6928644 {
    position: absolute !important;
    top: 0 !important;
    right: 22px !important;
    width: 42px !important;
    height: 58px !important;
    min-width: 42px !important;
    min-height: 58px !important;
    transform: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10030 !important;
  }

  .elementor-16 .elementor-element-6928644 > .elementor-widget-container {
    position: relative !important;
    width: 42px !important;
    height: 58px !important;
    display: block !important;
  }

  .elementor-16 .elementor-menu-toggle {
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    max-width: 32px !important;
    max-height: 32px !important;
  }

  .elementor-16 .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: fixed !important;
    top: 64px !important;
    left: max(14px, calc(100vw - 374px)) !important;
    right: auto !important;
  }
}

/* 2026-05-28 mobile section alignment pass.
   The preserved Elementor pages render reliably inside 390px, but several
   inner-page headings still use desktop-like vertical scale. Keep the old
   AutoChat visual language while making every section readable above the
   fixed phone navigation. */
@media (max-width: 767px) {
  body {
    padding-bottom: calc(128px + env(safe-area-inset-bottom)) !important;
  }

  .autochat-mobile-sticky-footer {
    left: 10px !important;
    right: 10px !important;
    bottom: calc(6px + env(safe-area-inset-bottom)) !important;
    grid-template-columns: 1fr 1fr 62px 1fr 1fr !important;
    gap: 2px !important;
    padding: 7px !important;
    border-radius: 20px !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.16) !important;
  }

  .autochat-mobile-sticky-footer__item {
    min-height: 48px !important;
    gap: 3px !important;
    padding: 3px 1px !important;
    font-size: 10.5px !important;
  }

  .autochat-mobile-sticky-footer__item svg {
    width: 19px !important;
    height: 19px !important;
  }

  .autochat-mobile-sticky-footer__cta {
    width: 62px !important;
    height: 62px !important;
    max-width: 62px !important;
    min-width: 62px !important;
    margin-top: -22px !important;
    border-radius: 22px !important;
    outline-width: 4px !important;
    box-shadow: 0 14px 30px rgba(0, 168, 45, 0.32) !important;
  }

  .autochat-mobile-sticky-footer__cta svg {
    width: 25px !important;
    height: 25px !important;
  }

  .autochat-mobile-sticky-footer__cta span {
    bottom: -12px !important;
    font-size: 10.5px !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) {
    overflow-x: hidden !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .e-con,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-section {
    scroll-margin-bottom: 118px !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .e-con > .e-con-inner,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-container {
    max-width: min(calc(100vw - 32px), 358px) !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) h1.elementor-heading-title,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-heading h1.elementor-heading-title {
    font-size: clamp(30px, 7.8vw, 34px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    text-wrap: balance !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) h2.elementor-heading-title,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-heading h2.elementor-heading-title,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-text-editor h2 {
    font-size: clamp(25px, 6.6vw, 28px) !important;
    line-height: 1.16 !important;
    letter-spacing: 0 !important;
    text-wrap: balance !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) h3.elementor-heading-title,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-heading h3.elementor-heading-title,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-icon-box-title,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-image-box-title {
    font-size: clamp(21px, 5.8vw, 24px) !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-text-editor,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-text-editor p {
    font-size: clamp(16px, 4.7vw, 18px) !important;
    line-height: 1.55 !important;
    letter-spacing: 0 !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-heading {
    margin-bottom: 12px !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-text-editor h2,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-text-editor h3,
  .elementor:not(.elementor-16):not(.elementor-11602) .wp-block-heading {
    max-width: 100% !important;
    margin-top: 22px !important;
    margin-bottom: 14px !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-text-editor h3,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget-text-editor .wp-block-heading:is(h3) {
    font-size: clamp(21px, 5.8vw, 24px) !important;
    line-height: 1.2 !important;
  }

  .elementor-1068 .elementor-widget-heading,
  .elementor-1388 .elementor-widget-heading,
  .elementor-799 .elementor-widget-heading,
  .elementor-840 .elementor-widget-heading,
  .elementor-375 .elementor-widget-heading {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget__width-initial.elementor-widget-heading,
  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget__width-initial.elementor-widget-text-editor {
    width: 100% !important;
    max-width: 100% !important;
  }

  #blogcontent,
  #blogcontent .elementor,
  #blogcontent .elementor-widget-text-editor,
  #blogcontent .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-1068 .elementor-element.elementor-element-a4a9c35,
  .elementor-1068 .elementor-element.elementor-element-a4a9c35 > .elementor-widget-container {
    width: 100% !important;
    max-width: 302px !important;
    --container-widget-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-1068 .elementor-element.elementor-element-a4a9c35 .elementor-heading-title,
  #blogcontent .elementor-widget-text-editor h2 {
    font-size: clamp(23px, 6vw, 25px) !important;
    line-height: 1.16 !important;
  }

  .elementor:not(.elementor-16):not(.elementor-11602) .elementor-widget:not(:last-child) {
    margin-bottom: 16px !important;
  }

  .elementor-799 h2.elementor-heading-title,
  .elementor-375 h2.elementor-heading-title,
  .elementor-840 h2.elementor-heading-title,
  .elementor-1068 h2.elementor-heading-title,
  .elementor-1366 h2.elementor-heading-title,
  .elementor-1386 h2.elementor-heading-title,
  .elementor-1388 h2.elementor-heading-title {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }
}

/* Keep this final: it must beat page-specific Elementor CSS for long mobile
   section/article headings. */
@media (max-width: 767px) {
  .elementor-1068 .elementor-element.elementor-element-a4a9c35,
  .elementor-1068 .elementor-element.elementor-element-a4a9c35 > .elementor-widget-container {
    width: 100% !important;
    max-width: 302px !important;
    --container-widget-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-1068 .elementor-element.elementor-element-a4a9c35 .elementor-heading-title,
  #blogcontent .elementor-widget-text-editor h2 {
    font-size: 23.4px !important;
    line-height: 1.16 !important;
  }
}

/* 2026-05-28 desktop/tablet menu repair.
   The static Elementor mirror does not always run Elementor's hover menu
   controller, so expose the real desktop submenu with CSS and let the small
   runtime script toggle it for click/touch devices. */
@media (min-width: 1025px) {
  .elementor-16 .elementor-nav-menu--main {
    overflow: visible !important;
  }

  .elementor-16 .elementor-nav-menu--main .elementor-nav-menu,
  .elementor-16 .elementor-nav-menu--main .menu-item {
    overflow: visible !important;
  }

  .elementor-16 .elementor-nav-menu--main .menu-item-has-children {
    position: relative !important;
  }

  .elementor-16 .elementor-nav-menu--main .menu-item-has-children > .sub-menu {
    display: block !important;
    position: absolute !important;
    top: calc(100% + 12px) !important;
    left: 0 !important;
    z-index: 10030 !important;
    min-width: 220px !important;
    width: max-content !important;
    max-width: min(320px, calc(100vw - 32px)) !important;
    padding: 10px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.16) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
    transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease !important;
  }

  .elementor-16 .elementor-nav-menu--main .menu-item-has-children:hover > .sub-menu,
  .elementor-16 .elementor-nav-menu--main .menu-item-has-children:focus-within > .sub-menu,
  .elementor-16 .elementor-nav-menu--main .menu-item-has-children.autochat-submenu-open > .sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .elementor-16 .elementor-nav-menu--main .sub-menu a {
    display: flex !important;
    width: 100% !important;
    min-width: 190px !important;
    padding: 10px 12px !important;
    border-radius: 10px !important;
    color: #163024 !important;
    white-space: nowrap !important;
  }

  .elementor-16 .elementor-nav-menu--main .sub-menu a:hover,
  .elementor-16 .elementor-nav-menu--main .sub-menu a:focus {
    background: #eefbf3 !important;
    color: #0b7d32 !important;
  }
}

/* 2026-05-28 pricing phone card cleanup.
   Keep the imported Elementor card design, but remove the old Meta/logo
   pricing artifacts and place the popular badge inside the card flow. */
@media (max-width: 767px) {
  body.autochat-route-pricing .elementor-1386 .pricing-tables > .e-con-inner {
    gap: 16px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables > .e-con-inner > .e-con,
  body.autochat-route-pricing .elementor-1386 .pricing-tables > .e-con-inner > .e-child {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    width: min(calc(100vw - 32px), 350px) !important;
    max-width: min(calc(100vw - 32px), 350px) !important;
    padding: 22px 18px 20px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-image-box,
  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-heading:is(
    .elementor-element-100f14d,
    .elementor-element-c4a01e3,
    .elementor-element-d7d5cc4,
    .elementor-element-7e43d9b,
    .elementor-element-66ffc29,
    .elementor-element-44c0f25
  ) {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-button:is(
    .elementor-element-6a5bfe0,
    .elementor-element-abdd0e8
  ) {
    order: -5 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: -4px 0 8px !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-button:is(
    .elementor-element-6a5bfe0,
    .elementor-element-abdd0e8
  ) .elementor-button {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 38px !important;
    padding: 8px 12px !important;
    border-radius: 12px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.02em !important;
    text-decoration: none !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables h2.elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.1 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables h6.elementor-heading-title {
    font-size: 15px !important;
    line-height: 1.25 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-widget-heading:is(
    .elementor-element-7b3dc02,
    .elementor-element-0eba708,
    .elementor-element-93e1bac,
    .elementor-element-1cd174b,
    .elementor-element-dc25e1f,
    .elementor-element-55f712c,
    .elementor-element-aac05d3,
    .elementor-element-2948b3d,
    .elementor-element-b1c2f0b,
    .elementor-element-b5c9455,
    .elementor-element-7ec83cf,
    .elementor-element-1a75c39
  ) {
    margin-top: 8px !important;
    margin-bottom: 0 !important;
  }

  body.autochat-route-pricing .elementor-1386 .pricing-tables .elementor-icon-list-items {
    gap: 8px !important;
  }
}

/* 2026-05-28 pricing mobile hard override.
   This intentionally does not depend on JS body classes, so cached mobile
   browsers still get the corrected pricing cards as soon as the CSS loads. */
@media (max-width: 767px) {
  .elementor-1386 .pricing-tables-1 {
    display: none !important;
  }

  .elementor-1386 .pricing-tables-2 {
    display: flex !important;
  }

  .elementor-1386 .pricing-tables > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-1386 .pricing-tables > .e-con-inner > .e-con,
  .elementor-1386 .pricing-tables > .e-con-inner > .e-child {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    width: min(calc(100vw - 34px), 350px) !important;
    max-width: min(calc(100vw - 34px), 350px) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 auto 18px !important;
    padding: 22px 18px 20px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .elementor-1386 .pricing-tables .elementor-widget-image-box,
  .elementor-1386 .pricing-tables .elementor-widget-heading:is(
    .elementor-element-100f14d,
    .elementor-element-c4a01e3,
    .elementor-element-d7d5cc4,
    .elementor-element-7e43d9b,
    .elementor-element-66ffc29,
    .elementor-element-44c0f25
  ),
  .elementor-1386 .pricing-tables .elementor-icon-list-item:has(.e-fas-times) {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .elementor-1386 .pricing-tables .elementor-widget-button:is(
    .elementor-element-6a5bfe0,
    .elementor-element-abdd0e8
  ) {
    order: -5 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: -4px 0 8px !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  .elementor-1386 .pricing-tables .elementor-widget-button:is(
    .elementor-element-6a5bfe0,
    .elementor-element-abdd0e8
  ) .elementor-button {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 38px !important;
    padding: 8px 12px !important;
    border-radius: 12px !important;
    background: #10185f !important;
    color: #ffffff !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    opacity: 1 !important;
    text-decoration: none !important;
  }

  .elementor-1386 .pricing-tables h2.elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.1 !important;
    text-align: center !important;
  }

  .elementor-1386 .pricing-tables h6.elementor-heading-title {
    font-size: 15px !important;
    line-height: 1.25 !important;
    text-align: center !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-items {
    gap: 8px !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-item {
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-item:has(> a) {
    display: block !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-item > a {
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    color: inherit !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }

  .elementor-1386 .pricing-tables .elementor-icon-list-text {
    display: block !important;
    font-size: 14.5px !important;
    line-height: 1.32 !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}
