/* ==========================================================================
   2056 clone-kit overrides
   Only what the rebuilt (native Elementor) markup needs in order to match the
   reference. Reference CSS is vendored separately in ./refcss/ and enqueued
   before this file.
   ========================================================================== */

/* ---------- header: top bar ---------- */
.elementor-7 .elementor-element-4774895a {
	padding: 10px 70px !important;
	min-height: 59px;
}
.elementor-7 .elementor-element-4774895a .elementor-heading-title {
	font-size: 16px;
	line-height: 30px;
	font-weight: 400;
	color: #fff;
}
.elementor-7 .elementor-widget-social-icons .elementor-social-icons-wrapper {
	display: flex;
	gap: 16px;
	align-items: center;
}
.elementor-7 .elementor-social-icon {
	width: auto;
	height: auto;
	padding: 0;
	font-size: 16px;
	background-color: transparent !important;
	color: #fff;
}
.elementor-7 .elementor-social-icon svg {
	fill: #fff;
	width: 16px;
	height: 16px;
}
.elementor-7 .elementor-social-icon:hover {
	color: #F1D2A9;
}
.elementor-7 .elementor-social-icon:hover svg {
	fill: #F1D2A9;
}

/* ---------- header: main row ---------- */
.elementor-7 .elementor-element-236060aa {
	background-color: #FCFAF7;
}
.elementor-7 .elementor-element-236060aa > .e-con-inner {
	min-height: 110px;
}

/* nav */
.elementor-7 .elementor-nav-menu--main .elementor-item {
	color: #2F2F2F;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 16px;
	padding: 13px 20px;
}
.elementor-7 .elementor-nav-menu--main .elementor-item:hover,
.elementor-7 .elementor-nav-menu--main .elementor-item:focus,
.elementor-7 .elementor-nav-menu--main .elementor-item.is-active,
.elementor-7 .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-7 .elementor-nav-menu--main .current-menu-item > .elementor-item {
	color: #2A7D2E;
}
.elementor-7 .elementor-nav-menu--main .elementor-item.is-active:after,
.elementor-7 .elementor-nav-menu--main .elementor-item.highlighted:after {
	background-color: transparent;
}
/* dropdown */
.elementor-7 .elementor-nav-menu--dropdown .elementor-item {
	color: #2F2F2F;
	font-weight: 500;
}
.elementor-7 .elementor-nav-menu--dropdown .elementor-item:hover {
	color: #2A7D2E;
}

/* Get a Quote button */
.elementor-7 .elementor-element-78ed91f .elementor-button {
	background-color: #0B3D2C;
	color: #fff;
	border-radius: 24px;
	padding: 16px 40px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 16px;
	white-space: nowrap;
}
.elementor-7 .elementor-element-78ed91f .elementor-button:hover {
	background-color: #2A7D2E;
	color: #fff;
}

/* search: reference shows a compact magnifier only (ElementsKit modal in the
   original); keep the native form but collapse it to the icon */
.elementor-7 .elementor-widget-search-form {
	width: auto;
}
.elementor-7 .elementor-search-form__container {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	min-height: 0 !important;
	padding: 0 !important;
}
.elementor-7 .elementor-search-form__input {
	display: none;
}
.elementor-7 .elementor-search-form__icon {
	color: #2F2F2F;
	font-size: 20px;
	padding: 0 !important;
	min-width: 0 !important;
}
.elementor-7 .elementor-search-form__submit {
	display: none;
}

/* ---------- footer ---------- */
.elementor-27 .elementor-icon-list-item .elementor-icon-list-icon i,
.elementor-27 .elementor-icon-list-item .elementor-icon-list-icon svg {
	color: #2A7D2E;
	fill: #2A7D2E;
}
.elementor-27 .elementor-element-2acac737 .elementor-button {
	border-radius: 24px;
	padding: 16px 40px;
	font-weight: 600;
}

/* ---------- plugin driven routes (archive / taxonomy / single product) ---------- */
body.post-type-archive-cxb_products .cxb-b2b-page-background-wrapper,
body.tax-cxb_product_category .cxb-b2b-page-background-wrapper,
body.single-cxb_products .cxb-b2b-page-background-wrapper,
body.archive .cxb-b2b-page-background-wrapper {
	background: #ffffff;
}
.cxb-b2b-products-archive-container,
.cxb-b2b-products-taxonomy-container,
.cxb-b2b-product-single-container,
.cxb-b2b-template1-container,
.cxb-b2b-template2-container,
.cxb-b2b-template3-container {
	background: #ffffff;
}
.cxb-b2b-template2-description,
.cxb-b2b-template2-header,
.cxb-b2b-template3-description {
	border-left-color: #0B3D2C !important;
}
.cxb-b2b-add-to-quote-button,
.cxb-b2b-inquiry-button,
.cxb-b2b-button-primary {
	background-color: #0B3D2C !important;
	border-color: #0B3D2C !important;
	color: #fff !important;
}
.cxb-b2b-add-to-quote-button:hover,
.cxb-b2b-inquiry-button:hover,
.cxb-b2b-button-primary:hover {
	background-color: #2A7D2E !important;
	border-color: #2A7D2E !important;
}
.cxb-b2b-template2-description {
	color: #2F2F2F;
}
/* product archive card text */
.cxb-b2b-product-title a {
	color: #2F2F2F;
}
.cxb-b2b-product-title a:hover {
	color: #2A7D2E;
}
/* plugin floating contact widget primary color */
.nbb2b-cw-item:hover .nbb2b-cw-icon,
.nbb2b-lm-bar {
	background-color: #0B3D2C;
}

/* ---------- stronger overrides (Elementor generated CSS specificity) ---------- */
.elementor-7 .elementor-element-41dc0813 .elementor-social-icon {
	width: 16px !important;
	height: 16px !important;
	font-size: 16px !important;
	padding: 0 !important;
	margin: 0 6px !important;
	background-color: transparent !important;
	color: #fff !important;
}
.elementor-7 .elementor-element-41dc0813 .elementor-social-icon svg {
	width: 16px; height: 16px; fill: #fff;
}
.elementor-7 .elementor-element-41dc0813 .elementor-social-icons-wrapper {
	display: flex !important;
	gap: 10px;
	align-items: center;
	justify-content: flex-end;
}
.elementor-7 .elementor-element-4774895a {
	padding: 12px 70px !important;
}
.elementor-7 .elementor-element-4774895a > .e-con-inner {
	align-items: center;
	min-height: 35px;
}
.elementor-7 .elementor-element-4774895a .elementor-heading-title {
	font-size: 16px !important;
	line-height: 35px !important;
	font-weight: 400 !important;
}
.elementor-7 .elementor-nav-menu--main .elementor-item,
.elementor-7 .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-7 .elementor-nav-menu--main .elementor-item.is-active,
.elementor-7 .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-7 .elementor-nav-menu--main .current-menu-item > .elementor-item,
.elementor-7 .elementor-nav-menu--main .current_page_item > .elementor-item {
	font-family: Montserrat, sans-serif !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	padding: 13px 20px !important;
}
.elementor-7 .elementor-nav-menu--main .elementor-item {
	color: #2F2F2F !important;
}
.elementor-7 .elementor-nav-menu--main .elementor-item:hover,
.elementor-7 .elementor-nav-menu--main .elementor-item.is-active,
.elementor-7 .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-7 .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-7 .elementor-nav-menu--main .current-menu-item > .elementor-item,
.elementor-7 .elementor-nav-menu--main .current_page_item > .elementor-item {
	color: #2A7D2E !important;
}
.elementor-7 .elementor-widget-search-form .elementor-search-form__input {
	display: none !important;
}
.elementor-7 .elementor-widget-search-form .elementor-search-form__submit {
	display: none !important;
}
.elementor-7 .elementor-widget-search-form .elementor-search-form__container {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	min-height: 0 !important;
	padding: 0 !important;
	width: auto !important;
}
.elementor-7 .elementor-widget-search-form .elementor-search-form__icon {
	color: #2F2F2F !important;
	font-size: 22px !important;
	padding: 0 6px !important;
	min-width: 0 !important;
}

/* responsive fixes (Lead 2026-11-09): containers with fixed --width on tablet/mobile */
@media (max-width: 1024px) {
  .elementor-316 .elementor-element.elementor-element-22c1c921 {
    width: 100% !important;
    max-width: 100% !important;
    --width: 100% !important;
    flex: 0 0 auto !important;
  }
}

/* responsive fixes: plugin product gallery on tablet/mobile */
@media (max-width: 1024px) {
  .cxb-b2b-gallery-main-image,
  .cxb-b2b-gallery-main-image img,
  .cxb-b2b-product-gallery img {
    max-width: 100% !important;
    height: auto !important;
  }
  .cxb-b2b-product-gallery { max-width: 100% !important; overflow-x: auto; }
}

/* responsive fixes: match reference tablet/mobile header + inline lists */
@media (max-width: 1024px) {
  .clone-header-scope .elementor-element-4774895a { display: none !important; }
  .clone-header-scope .elementor-widget-search-form { display: none !important; }
  .clone-header-scope .elementor-widget-button { display: none !important; }
  .elementor-icon-list-items.elementor-inline-items { max-width: 100% !important; flex-wrap: wrap !important; }
}

/* mobile nav dropdown fallback (reference CSS hides Elementor Pro dropdown) */
@media (max-width: 1024px) {
  .elementor-widget-nav-menu { position: relative; }
  .elementor-widget-nav-menu:has(.elementor-menu-toggle.elementor-active) .elementor-nav-menu--dropdown {
    display: block !important;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 9999;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
    max-height: 70vh;
    overflow-y: auto;
  }
  .elementor-widget-nav-menu:has(.elementor-menu-toggle.elementor-active) .elementor-nav-menu--dropdown a {
    display: block;
    padding: 12px 20px;
    color: #0b3d2c;
    border-bottom: 1px solid rgba(11, 61, 44, .08);
  }
}
@media (max-width: 767px) {
  .elementor-icon-list-items.elementor-inline-items { margin-left: 0 !important; padding-left: 0 !important; }
}

/* 1:1 footer desktop (reference 2056): QR row small, white 10+ badge fixed height, plain privacy */
@media (min-width: 1025px) {
  .elementor-27 .elementor-element-5519655 {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 30px !important;
    align-items: flex-start !important;
  }
  .elementor-27 .elementor-element-2056qr1,
  .elementor-27 .elementor-element-2056qr2 {
    width: 97px !important;
    max-width: 97px !important;
    flex: 0 0 97px !important;
  }
  .elementor-27 .elementor-element-2056qr1 img,
  .elementor-27 .elementor-element-2056qr2 img {
    width: 97px !important;
    height: 97px !important;
    object-fit: contain !important;
  }
  .elementor-27 .elementor-element-3bd97381 {
    height: 244px !important;
    max-height: 244px !important;
    flex: 0 0 244px !important;
    align-self: flex-start !important;
  }
  .elementor-27 .elementor-element-3b60d308 .elementor-icon-list-icon { display: none !important; }
  .elementor-27 .elementor-element-3b60d308 .elementor-icon-list-item { justify-content: flex-end !important; }
}

/* 1:1 footer desktop refinements */
@media (min-width: 1025px) {
  .elementor-27 .elementor-element-60f0f50d { height: 6px !important; min-height: 6px !important; }
  .elementor-27 .elementor-element-60f0f50d .elementor-divider { padding-top: 0 !important; padding-bottom: 0 !important; }
  .elementor-27 .elementor-element-3b60d308 .elementor-icon-list-items { justify-content: flex-end !important; }
  .elementor-27 .elementor-element-3b60d308 .elementor-icon-list-item { width: auto !important; }
  /* restore missing brand icons for YouTube / Pinterest */
  .elementor-27 .elementor-element-40d2a88 .elementor-icon-list-item:nth-child(3) .elementor-icon-list-icon::before,
  .elementor-27 .elementor-element-40d2a88 .elementor-icon-list-item:nth-child(4) .elementor-icon-list-icon::before {
    font-family: "Font Awesome 5 Brands" !important;
    font-weight: 400 !important;
    font-size: 16px !important;
    color: #f1d2a9 !important;
    display: inline-block !important;
    width: 1em !important;
    text-align: center !important;
    margin-right: 4px !important;
  }
  .elementor-27 .elementor-element-40d2a88 .elementor-icon-list-item:nth-child(3) .elementor-icon-list-icon::before { content: "\f167"; }
  .elementor-27 .elementor-element-40d2a88 .elementor-icon-list-item:nth-child(4) .elementor-icon-list-icon::before { content: "\f231"; }
}
.fhwp-float { display: none !important; }

/* 1:1 home stats (reference funfact): number 55px, suffix inline, card height 282 */
.elementor-298 .elementor-counter-number,
.elementor-298 .elementor-counter-number-suffix {
  font-size: 55px !important;
  line-height: 71.5px !important;
}
.elementor-298 .elementor-counter-number-wrapper {
  justify-content: flex-start !important;
  align-items: baseline !important;
  width: 100% !important;
  white-space: nowrap !important;
}
.elementor-298 .elementor-counter-number,
.elementor-298 .elementor-counter-number-suffix { white-space: nowrap !important; }
.elementor-298 .elementor-counter-title { font-size: 18px !important; line-height: 1.25 !important; }
@media (min-width: 1025px) {
  .elementor-298 .elementor-element-3fa69639,
  .elementor-298 .elementor-element-1853ff67,
  .elementor-298 .elementor-element-599fd7b6,
  .elementor-298 .elementor-element-106aa270 { min-height: 282px !important; }
}

/* 1:1 home factory image band: 3 full-bleed 480x360 images (reference 2df3180a) */
.elementor-298 .elementor-element-2df3180a > .e-con-inner {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: none !important;
}
.elementor-298 .elementor-element-2df3180a > .e-con-inner > .e-con {
  flex: 1 1 33.3333% !important;
  max-width: 33.3333% !important;
  width: 33.3333% !important;
  padding: 0 !important;
  gap: 0 !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-img {
  width: 100% !important;
  margin: 0 !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-img img {
  width: 100% !important;
  height: 360px !important;
  object-fit: cover !important;
  display: block !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-title,
.elementor-298 .elementor-element-2df3180a .elementor-image-box-description { display: none !important; }

/* 1:1 factory team-card hover overlay (reference ElementsKit team style-overlay) */
.elementor-298 .elementor-element-2df3180a { padding: 0 !important; }
.elementor-298 .elementor-element-2df3180a .elementor-widget-image-box,
.elementor-298 .elementor-element-2df3180a .elementor-image-box-wrapper { margin: 0 !important; }
.elementor-298 .elementor-element-2df3180a .elementor-image-box-wrapper {
  position: relative !important;
  height: 360px !important;
  overflow: hidden !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-img {
  position: absolute !important;
  inset: 0 !important;
  margin: 0 !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-img img {
  width: 100% !important;
  height: 360px !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .5s ease !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-content {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  padding: 30px !important;
  background: rgba(0, 0, 0, .55) !important;
  opacity: 0 !important;
  transform: translateY(30px) !important;
  transition: opacity .35s ease, transform .35s ease !important;
  z-index: 2 !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-content:hover { opacity: 1 !important; transform: translateY(0) !important; }
.elementor-298 .elementor-element-2df3180a .elementor-image-box-wrapper:hover .elementor-image-box-content { opacity: 1 !important; transform: translateY(0) !important; }

.elementor-298 .elementor-element-2df3180a .elementor-image-box-title {
  display: block !important;
  color: #fff !important;
  font-size: 32px !important;
  line-height: 1.2 !important;
  margin: 0 0 12px !important;
}
.elementor-298 .elementor-element-2df3180a .elementor-image-box-description {
  display: block !important;
  color: #fff !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

/* factory image band: mobile/tablet reference layout (360x270 stacked, 15px side padding) */
@media (max-width: 767px) {
  .elementor-298 .elementor-element-2df3180a { padding: 0 0 25px !important; }
  .elementor-298 .elementor-element-2df3180a > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    gap: 25px !important;
    padding: 0 15px !important;
    width: 100% !important;
  }
  .elementor-298 .elementor-element-2df3180a > .e-con-inner > .e-con {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-wrapper { height: 270px !important; }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-img img { height: 270px !important; width: 100% !important; }
}

@media (max-width: 767px) {
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-img img {
    width: 360px !important;
    max-width: calc(100vw - 30px) !important;
    height: 270px !important;
    margin: 0 auto !important;
    display: block !important;
  }
  .elementor-298 .elementor-element-2df3180a .elementor-widget-image-box { margin: 0 !important; }
  .elementor-298 .elementor-element-2df3180a { padding: 0 0 25px !important; }
}
@media (max-width: 767px) {
  .elementor-298 .elementor-element-2df3180a { padding: 0 !important; }
}

/* reference original mobile: factory cards are 2 columns (2 + 1) */
@media (max-width: 767px) {
  .elementor-298 .elementor-element-2df3180a > .e-con-inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    padding: 0 15px !important;
  }
  .elementor-298 .elementor-element-2df3180a > .e-con-inner > .e-con {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
  }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-wrapper { height: 160px !important; }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-img img {
    width: 100% !important;
    max-width: none !important;
    height: 160px !important;
    margin: 0 !important;
  }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-content { padding: 12px !important; }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-title { font-size: 18px !important; margin-bottom: 6px !important; }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-description { font-size: 12px !important; line-height: 1.35 !important; }
  .elementor-298 .elementor-element-2df3180a { padding: 0 0 20px !important; }
}

@media (max-width: 767px) {
  .elementor-298 .elementor-element-2df3180a {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    align-items: start !important;
    padding: 0 15px 20px !important;
  }
  .elementor-298 .elementor-element-2df3180a > .e-con {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-wrapper { height: 160px !important; }
  .elementor-298 .elementor-element-2df3180a .elementor-image-box-img img {
    width: 100% !important;
    height: 160px !important;
    margin: 0 !important;
  }
}

/* mobile 1:1 fixes (reference 390): hide years counter, Why-Choose-Us + stats card styling */
@media (max-width: 767px) {
  .elementor-298 .elementor-element-54491ac0 { display: none !important; }

  /* Why Choose Us cards */
  .elementor-298 .elementor-element-3e4a0e48 .elementor-widget-icon-box { width: 100% !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon-box-wrapper { padding: 40px 25px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon-box-icon { margin-bottom: 24px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon {
    width: 150px !important;
    height: 150px !important;
    background: #eef5e7 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto !important;
  }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon i { font-size: 55px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon-box-title { font-size: 20px !important; margin-bottom: 12px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon-box-description { font-size: 16px !important; line-height: 1.6 !important; }

  /* Stats cards */
  .elementor-298 .elementor-element-3ffd4081 .e-con-inner { display: flex !important; flex-direction: column !important; gap: 10px !important; padding: 10px !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-3fa69639,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-1853ff67,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-599fd7b6,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-106aa270 {
    min-height: 243px !important;
    padding: 34px 30px !important;
    position: relative !important;
  }
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-3fa69639::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-1853ff67::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-599fd7b6::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-106aa270::before {
    content: "\2197";
    width: 48px; height: 48px; border-radius: 50%;
    background: #fff; color: #0b3d2c;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px; font-weight: 700;
    margin-bottom: 22px;
  }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-wrapper { justify-content: flex-start !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number,
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-suffix { font-size: 48px !important; line-height: 1.1 !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-title { font-size: 16px !important; margin-top: 10px !important; }
}

@media (max-width: 767px) {
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon-box-wrapper { padding: 24px 25px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon { width: 100px !important; height: 100px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon i { font-size: 42px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon-box-icon { margin-bottom: 14px !important; }
  .elementor-298 .elementor-element-3e4a0e48 .elementor-icon-box-title { margin-bottom: 10px !important; }
}

@media (max-width: 767px) {
  /* footer mobile: match reference 10+ badge height and hide privacy row */
  .elementor-27 .elementor-element-3bd97381 {
    height: 150px !important;
    max-height: 150px !important;
    flex: 0 0 150px !important;
    align-self: center !important;
  }
  .elementor-27 .elementor-element-3b60d308 { display: none !important; }
}
@media (max-width: 767px) {
  .elementor-298 .elementor-element-3ffd4081 > .e-con-inner { padding: 100px 0 !important; }
}
@media (max-width: 767px) {
  /* 10+ badge content centred inside 150px badge */
  .elementor-27 .elementor-element-3bd97381 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
  }
  .elementor-27 .elementor-element-3bd97381 .elementor-widget { width: auto !important; height: auto !important; }
  .elementor-27 .elementor-element-3bd97381 .elementor-heading-title { text-align: center !important; }

  /* stats left alignment + reference font size */
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-wrapper { justify-content: flex-start !important; text-align: left !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-title { justify-content: flex-start !important; text-align: left !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number,
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-suffix { font-size: 55px !important; }
}
@media (max-width: 767px) {
  .elementor-27 .elementor-element-3bd97381 {
    width: 340px !important;
    max-width: calc(100vw - 30px) !important;
    flex: 0 0 auto !important;
    height: 150px !important;
    max-height: 150px !important;
    align-self: center !important;
  }
  .elementor-27 .elementor-element-3bd97381 .elementor-heading-title { font-size: 24px !important; line-height: 1.15 !important; }
  .elementor-27 .elementor-element-3bd97381 .elementor-element-60d9343b .elementor-heading-title { font-size: 14px !important; }
}
@media (max-width: 767px) {
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter { text-align: left !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-wrapper { width: 100% !important; justify-content: flex-start !important; margin: 0 !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-prefix,
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number,
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-suffix { text-align: left !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-title { width: 100% !important; justify-content: flex-start !important; text-align: left !important; margin-left: 0 !important; }
}
@media (max-width: 767px) {
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-prefix,
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-suffix { flex: 0 0 auto !important; }
  .elementor-298 .elementor-element-3ffd4081 .elementor-counter-number-suffix { margin-left: 4px !important; }
}
@media (max-width: 767px) {
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-3fa69639::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-1853ff67::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-599fd7b6::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-106aa270::before { margin-bottom: 30px !important; }
}
@media (max-width: 767px) {
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-3fa69639::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-1853ff67::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-599fd7b6::before,
  .elementor-298 .elementor-element-3ffd4081 .elementor-element-106aa270::before {
    position: absolute !important;
    top: 30px !important;
    left: 30px !important;
    margin: 0 !important;
  }
  .elementor-298 .elementor-element-3ffd4081 .elementor-widget-counter { padding-top: 88px !important; }
}

/* hero slide 2: force copy layout left (reference CSS mirrored it right) */
.elementor-298 .elementor-element-ba6804b .elementor-repeater-item-20404b1 .swiper-slide-contents {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
.elementor-298 .elementor-element-ba6804b .elementor-repeater-item-20404b1 .swiper-slide-inner {
  text-align: start !important;
  align-items: center !important;
}
