.bom-services-item{position:relative!important}.bom-submenu{position:absolute;z-index:99999;top:calc(100% + 14px);left:50%;display:grid;grid-template-columns:1fr 1fr;gap:12px;width:min(680px,92vw);padding:22px;background:#211d23;border:1px solid #4b424e;border-radius:16px;box-shadow:0 24px 60px rgba(25,12,34,.28);opacity:0;visibility:hidden;transform:translate(-50%,10px);transition:.2s ease}.bom-submenu:before{content:"";position:absolute;left:0;right:0;top:-16px;height:18px}.bom-services-item:hover>.bom-submenu,.bom-services-item:focus-within>.bom-submenu,.bom-services-item.bom-menu-open>.bom-submenu{opacity:1;visibility:visible;transform:translate(-50%,0)}.bom-submenu__group{display:flex;flex-direction:column;gap:3px}.bom-submenu__group>span{padding:5px 11px 9px;color:#c4a0ed;font:600 11px/1.2 Lexend,sans-serif;letter-spacing:1.3px;text-transform:uppercase}.bom-submenu a{display:block!important;padding:10px 11px!important;color:#fff!important;border-radius:9px!important;font:400 13px/1.35 Lexend,sans-serif!important;white-space:normal!important}.bom-submenu a:hover,.bom-submenu a:focus{background:#913bfa!important;color:#fff!important}.bom-clickable-card{cursor:pointer}.bom-clickable-card h2 a,.bom-clickable-card h3 a{color:inherit;text-decoration:none}@media(max-width:900px){.bom-services-item{width:100%}.bom-submenu{position:static;display:none;width:100%;grid-template-columns:1fr;max-height:55vh;overflow:auto;margin:8px 0;padding:12px;opacity:1;visibility:visible;transform:none;box-shadow:none}.bom-services-item:hover>.bom-submenu,.bom-services-item:focus-within>.bom-submenu{display:none}.bom-services-item.bom-menu-open>.bom-submenu{display:grid}.bom-submenu:before{display:none}}@media(max-width:480px){.bom-submenu{border-radius:10px}.bom-submenu a{font-size:14px!important;padding:11px!important}}
html,
body {
  width: 100%;
  height: 100%;
  max-width: 100%;
}

/* Service-detail pages use the custom .sp-nav header instead of JKit. */
@media (max-width: 900px) {
  .sp-nav.open {
    box-sizing: border-box;
    width: min(100% - 28px, 1140px);
    align-items: stretch;
    overflow: visible;
    text-align: center;
  }

  .sp-nav.open > a {
    display: block;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
  }

  .sp-nav .bom-services-item {
    position: static !important;
    display: block;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center;
  }

  .sp-nav .bom-services-item > a {
    display: inline-block;
    width: auto;
  }

  .sp-nav .bom-services-item > .bom-submenu {
    position: static !important;
    inset: auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    margin: 12px 0 0 !important;
    padding: 14px !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    text-align: left;
  }

  .sp-nav .bom-submenu__group {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .sp-nav .bom-submenu__group > span,
  .sp-nav .bom-submenu a {
    position: static !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 10px 11px !important;
    text-indent: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    transform: none !important;
  }
}

img,
svg,
video {
  max-width: 100%;
  height: auto;
}

.elementor-widget-button .elementor-button {
  max-width: 100%;
  white-space: normal;
}

/* Use one scrolling surface only: body owns the normal visible scrollbar. */
html {
  overflow: hidden;
}

body {
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: auto;
  -ms-overflow-style: auto;
}

@media (max-width: 767px) {
  /* Reset desktop dropdown geometry inside the mobile navigation drawer. */
  .jkit-nav-menu .bom-services-item {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
  }

  .jkit-nav-menu .bom-services-item > .bom-submenu {
    position: static !important;
    inset: auto !important;
    box-sizing: border-box !important;
    width: calc(100vw - 80px) !important;
    max-width: 320px !important;
    max-height: none !important;
    margin: 10px 0 12px !important;
    padding: 14px !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .jkit-nav-menu .bom-submenu__group {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
  }

  .jkit-nav-menu .bom-submenu__group > span,
  .jkit-nav-menu .bom-submenu a {
    position: static !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 10px 11px !important;
    text-indent: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    transform: none !important;
  }

  /* Elementor's off-canvas navigation should scroll only while it is open. */
  .jkit-nav-menu .jkit-menu-wrapper:not(.active) {
    overflow: hidden !important;
    pointer-events: none;
  }

  .jkit-nav-menu .jkit-menu-wrapper.active {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    pointer-events: auto;
  }

  /* Restore the missing space between the four impact-stat rows. */
  .elementor-102 .elementor-element.elementor-element-73f45261,
  .elementor-102 .elementor-element.elementor-element-6e17c593,
  .elementor-102 .elementor-element.elementor-element-3d51a649,
  .elementor-102 .elementor-element.elementor-element-e733eed {
    --gap: 14px 14px;
    --row-gap: 14px;
    --column-gap: 14px;
    margin-bottom: 14px;
  }

  .elementor-102 .elementor-element.elementor-element-e733eed {
    margin-bottom: 0;
  }

  /* Prevent rounded cards in the impact and Why Choose Us sections touching. */
  .elementor-102 .elementor-element.elementor-element-20f2af40,
  .elementor-102 .elementor-element.elementor-element-fc75765,
  .elementor-102 .elementor-element.elementor-element-7792e2d,
  .elementor-102 .elementor-element.elementor-element-c99a612,
  .elementor-102 .elementor-element.elementor-element-2290624d,
  .elementor-102 .elementor-element.elementor-element-2e855cc8,
  .elementor-102 .elementor-element.elementor-element-143b62ed,
  .elementor-102 .elementor-element.elementor-element-faca638 {
    min-width: 0;
    overflow: hidden;
  }

  .elementor-102 .elementor-element.elementor-element-38534834 {
    --gap: 16px 16px;
    --row-gap: 16px;
    --column-gap: 16px;
  }

  .elementor-102 .elementor-element.elementor-element-b6a7bb1,
  .elementor-102 .elementor-element.elementor-element-777a447c,
  .elementor-102 .elementor-element.elementor-element-5fab4681,
  .elementor-102 .elementor-element.elementor-element-47d1d0a4 {
    margin-bottom: 0;
  }

  /* Contain the testimonial artwork and slider inside the phone viewport. */
  .elementor-102 .elementor-element.elementor-element-5ed659f4 {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  .elementor-102 .elementor-element.elementor-element-4ed23314,
  .elementor-102 .elementor-element.elementor-element-7dca9525,
  .elementor-102 .elementor-element.elementor-element-77d57815,
  .elementor-102 .elementor-element.elementor-element-77d57815 .jeg-elementor-kit,
  .elementor-102 .elementor-element.elementor-element-77d57815 .testimonials-track {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .elementor-102 .elementor-element.elementor-element-26cb7f4e .elementor-heading-title {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  /* Tiny Slider can retain its desktop multi-slide widths after a resize.
     On phones, show exactly one readable, full-width testimonial. */
  .elementor-102 .elementor-element.elementor-element-77d57815 .tns-ovh {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
  }

  .elementor-102 .elementor-element.elementor-element-77d57815 .testimonials-track {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
  }

  .elementor-102 .elementor-element.elementor-element-77d57815 .testimonial-item {
    display: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  .elementor-102 .elementor-element.elementor-element-77d57815 .testimonial-item.tns-slide-active {
    display: block !important;
  }

  .elementor-102 .elementor-element.elementor-element-77d57815 .testimonial-item.tns-slide-active ~ .testimonial-item.tns-slide-active {
    display: none !important;
  }

  .elementor-102 .elementor-element.elementor-element-77d57815 .testimonial-box,
  .elementor-102 .elementor-element.elementor-element-77d57815 .testimonial-slider,
  .elementor-102 .elementor-element.elementor-element-77d57815 .comment-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
  }
}
