/* 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;
}

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

@media (max-width: 767px) {
  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;
}

.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-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;
  }
}
