/* v10: keep category cards out of Elementor's boxed inner-column calculation. */
.tb-categories.e-con{
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:14px!important;
  width:min(1720px,calc(100% - 40px))!important;
  max-width:1720px!important;
  margin:-24px auto 0!important;
  padding:18px!important;
}
.tb-categories.e-con>.e-con-inner{display:contents!important}
.tb-categories.e-con .tb-category-card.e-con{
  --width:100%!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
.tb-request-banner.e-con:before,.tb-request-banner.e-con:after{
  content:""!important;display:block!important;position:absolute!important;z-index:0!important;
  background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;
  pointer-events:none!important;
}
.tb-request-banner.e-con:before{left:20px!important;bottom:10px!important;width:125px!important;height:105px!important;background-image:url('../images/decor/request-bubble.png')!important}
.tb-request-banner.e-con:after{right:16px!important;bottom:0!important;width:105px!important;height:110px!important;background-image:url('../images/decor/request-note.png')!important}
.tb-request-banner.e-con>.e-con-inner{position:relative!important;z-index:1!important}
@media(max-width:980px){.tb-categories.e-con{grid-template-columns:repeat(4,minmax(0,1fr))!important}.tb-request-banner.e-con:before,.tb-request-banner.e-con:after{display:none!important}}
@media(max-width:767px){.tb-categories.e-con{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:calc(100% - 24px)!important;gap:10px!important;padding:12px!important}.tb-categories.e-con .tb-category-card.e-con{min-height:96px!important}}
