.elementor-25 .elementor-element.elementor-element-63a8662{--display:flex;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-25 .elementor-element.elementor-element-0c766ee{width:100%;max-width:100%;}.elementor-25 .elementor-element.elementor-element-2abf803{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-25 .elementor-element.elementor-element-71e7dc6{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:20px;--margin-right:0px;}.elementor-25 .elementor-element.elementor-element-71e7dc6.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-25 .elementor-element.elementor-element-20d8812{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-25 .elementor-element.elementor-element-71e7dc6{--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-25 .elementor-element.elementor-element-20d8812{--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-25 .elementor-element.elementor-element-71e7dc6{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-da85ccf *//* =========================================================
   BOOST PIXEL — FINAL MOBILE LAYOUT FIX
   Paste this AFTER every other CSS rule
========================================================= */

/* Prevent any child element from widening the page */
html,
body {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: clip !important;
}

body {
  position: relative;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}

/* Do not allow headings to break at random letters */
.bp-h2,
.bp-hero h1,
.bp-journey-head h2,
.bp-services-head h2,
.bp-problems-intro h2,
.bp-locations-head h2,
.bp-blog-head h2,
.bp-faq-intro h2,
.bp-contact-copy h2 {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

/* =========================================================
   MOBILE — 680PX AND BELOW
========================================================= */
@media (max-width: 680px) {

  /* True centred content container */
  .bp-wrap {
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  /* Remove desktop width and positional behaviour */
  .bp-section,
  .bp-hero,
  .bp-partner,
  .bp-services,
  .bp-problems,
  .bp-locations,
  .bp-blog,
  .bp-faq,
  .bp-contact,
  .bp-clients,
  .bp-final-cta {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    overflow: hidden !important;
  }

  /* Every grid becomes a safe single column */
  .bp-hero-grid,
  .bp-partner-grid,
  .bp-trust-grid,
  .bp-services-grid,
  .bp-connected-new,
  .bp-problems-layout,
  .bp-problem-grid-new,
  .bp-benefits,
  .bp-benefit-grid,
  .bp-location-grid,
  .bp-blog-grid,
  .bp-faq-grid,
  .bp-contact-wrap,
  .bp-contact-form,
  .bp-platform-row,
  .bp-flow-row,
  .bp-timeline {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .bp-hero-grid > *,
  .bp-partner-grid > *,
  .bp-services-grid > *,
  .bp-connected-new > *,
  .bp-problems-layout > *,
  .bp-problem-grid-new > *,
  .bp-benefits > *,
  .bp-benefit-grid > *,
  .bp-location-grid > *,
  .bp-blog-grid > *,
  .bp-faq-grid > *,
  .bp-contact-wrap > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* Centre every large panel */
  .bp-connected-new,
  .bp-journey,
  .bp-contact-wrap,
  .bp-cta {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding: 24px 18px !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
  }

  /* Customer journey section from screenshot */
  .bp-journey {
    margin-top: 44px !important;
    border-radius: 18px !important;
  }

  .bp-journey-head {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 28px !important;
    text-align: center !important;
  }

  .bp-journey-head .bp-eyebrow {
    width: auto !important;
    max-width: 100% !important;
    min-height: 30px !important;
    padding: 7px 12px !important;
    font-size: 8px !important;
    line-height: 1.35 !important;
    letter-spacing: .45px !important;
    white-space: normal !important;
    text-align: center !important;
  }

  .bp-journey-head .bp-h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 15px !important;
    font-size: clamp(29px, 9vw, 38px) !important;
    line-height: 1.14 !important;
    letter-spacing: -1.2px !important;
    text-align: center !important;
    text-wrap: balance;
  }

  .bp-journey-head .bp-line {
    width: 64px !important;
    margin: 19px auto !important;
  }

  .bp-journey-head p {
    width: 100% !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.7 !important;
    text-align: center !important;
  }

  /* Journey timeline cards */
  .bp-step {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 16px !important;
  }

  /* Service and problem cards */
  .bp-service-card,
  .bp-info-card,
  .bp-problem-card-new,
  .bp-benefit,
  .bp-location-card,
  .bp-blog-card,
  .bp-faq-item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
    transform: none !important;
  }

  .bp-service-card {
    padding: 22px 18px !important;
  }

  .bp-service-card h3 {
    font-size: 25px !important;
    line-height: 1.25 !important;
  }

  .bp-service-card h4 {
    font-size: 15px !important;
    line-height: 1.5 !important;
  }

  .bp-service-card p {
    font-size: 13px !important;
    line-height: 1.7 !important;
  }

  .bp-tags {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
  }

  .bp-tags span {
    max-width: 100% !important;
    white-space: normal !important;
  }

  /* Form */
  .bp-contact-form {
    gap: 12px !important;
  }

  .bp-field,
  .bp-field-full,
  .bp-contact-submit,
  .bp-form-note {
    width: 100% !important;
    max-width: 100% !important;
    grid-column: 1 !important;
  }

  .bp-field input,
  .bp-field select,
  .bp-field textarea {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Remove leftover translated/absolute mobile cards */
  .bp-card,
  .bp-floating-card {
    transform: none !important;
  }
}

/* =========================================================
   SMALL PHONES — 420PX AND BELOW
========================================================= */
@media (max-width: 420px) {

  .bp-wrap {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
  }

  .bp-connected-new,
  .bp-journey,
  .bp-contact-wrap,
  .bp-cta {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }

  .bp-journey-head .bp-h2 {
    font-size: clamp(27px, 9vw, 34px) !important;
    line-height: 1.13 !important;
  }

  .bp-journey-head p {
    font-size: 12.5px !important;
  }

  .bp-service-card {
    padding: 20px 16px !important;
  }
  
 
  .bp-clients-heading h2 {
    margin: 7px 0 0;
    color: var(--bp-ink);
    font-size: clamp(20px, 2vw, 30px);
    line-height: 1.3;
    font-family: 'Poppins';
    font-weight: 800;
}

.bp-info-card h3 {
    margin: 0 0 10px;
    color: var(--bp-ink);
    font-size: 19px;
    line-height: 1.3;
    font-family: 'POPPINS';
    font-weight: 800;
}

.bp-platforms h3 {
    font-family: 'POPPINS';
    font-weight: 800;
    margin: 0 0 18px;
    text-align: center;
    color: var(--bp-ink);
    font-size: 19px;
}


@media (max-width: 680px) {
    .bp-service-card h3 {
        font-size: 26px !important;
        line-height: 1.25 !important;
        overflow-wrap: o;
        word-break: normal !important;
        font-family: 'POPPINS';
        font-weight: 800;
    }
    
    
    .bp-problem-card-new h3 {
    margin: 0 0 9px;
    color: var(--bp-ink);
    font-size: 16px;
    line-height: 1.42;
    font-family: 'POPPINS';
    font-weight: 800;
}


.bp-info-card h3 {
     font-family: 'POPPINS';
    font-weight: 800;
    
}/* End custom CSS */