
/* Static conversion fixes for Elementor cache rendering */
html, body { overflow-x: hidden; }
body { margin: 0; background:#fff; }
.elementor-invisible { visibility: visible !important; opacity: 1 !important; }
.elementor-section[data-settings*="slideshow"] { background-size: cover; background-position: center center; background-repeat: no-repeat; position: relative; }
.elementor-background-overlay { pointer-events:none; }
.elementor-widget-nav-menu .elementor-nav-menu { list-style:none; padding:0; margin:0; }
.elementor-nav-menu--main .elementor-nav-menu { display:flex; align-items:center; gap:35px; }
.elementor-nav-menu--main .menu-item { position:relative; }
.elementor-nav-menu--main .elementor-item { text-decoration:none; display:flex; align-items:center; gap:7px; }
.elementor-nav-menu--main .sub-menu { position:absolute; z-index:9999; top:100%; left:0; min-width:230px; background:#fff; box-shadow:0 10px 28px rgba(0,0,0,.08); border-radius:0 0 15px 15px; padding:12px 0; display:none; }
.elementor-nav-menu--main .menu-item:hover > .sub-menu { display:block; }
.elementor-nav-menu--main .sub-menu li { display:block; }
.elementor-nav-menu--main .sub-menu a { display:block; padding:10px 18px; color:#2C3941; }
.elementor-menu-toggle { display:none; cursor:pointer; font-size:28px; color:#2C3941; }
.elementor-nav-menu--dropdown { display:none; }
.elementor-nav-menu--dropdown.is-open { display:block; position:absolute; right:20px; left:20px; top:100%; z-index:99999; background:#fff; padding:14px 18px; box-shadow:0 18px 35px rgba(0,0,0,.13); border-radius:12px; }
.elementor-nav-menu--dropdown .elementor-nav-menu, .elementor-nav-menu--dropdown .sub-menu { list-style:none; margin:0; padding:0; }
.elementor-nav-menu--dropdown .elementor-item { display:block; padding:10px 0; text-decoration:none; color:#2C3941; font-weight:600; }
.elementor-nav-menu--dropdown .sub-menu { padding-left:16px; }
.elementor-location-header { position: relative; z-index: 999; background:#fff; }
.elementor-image-carousel.swiper-wrapper { display:flex; gap:35px; }
.elementor-image-carousel .swiper-slide { flex:0 0 auto; }
@media(max-width:1024px){
  .elementor-nav-menu--main { display:none !important; }
  .elementor-menu-toggle { display:flex; align-items:center; justify-content:flex-end; }
}
@media(max-width:767px){
  .elementor-section .elementor-container { padding-left: 15px; padding-right: 15px; }
  .elementor-image-carousel.swiper-wrapper { gap:18px; overflow:hidden; }
}

/* ===== Hostinger hero text clipping fix =====
   The Elementor mask was clipping the first letters of the hero title on live hosting.
   This keeps the same white blob shape but applies the mask only to a background layer,
   so the actual text stays fully visible. */
.elementor-143 .elementor-element.elementor-element-5b2892e2 > .elementor-widget-container{
  background-color: transparent !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
  position: relative !important;
  overflow: visible !important;
}
.elementor-143 .elementor-element.elementor-element-5b2892e2 > .elementor-widget-container::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #ffffff;
  -webkit-mask-image: url(../../wp-content/plugins/elementor/assets/mask-shapes/custom.svg);
  mask-image: url(../../wp-content/plugins/elementor/assets/mask-shapes/custom.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
.elementor-143 .elementor-element.elementor-element-5b2892e2 .elementor-cta{
  position: relative;
  z-index: 1;
}
.elementor-143 .elementor-element.elementor-element-5b2892e2 .elementor-cta__content{
  position: relative;
  z-index: 2;
  overflow: visible !important;
}
.elementor-143 .elementor-element.elementor-element-5b2892e2 .elementor-cta__title{
  overflow: visible !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

@media (min-width: 768px){
  .elementor-143 .elementor-element.elementor-element-5b2892e2 .elementor-cta__content{
    padding-left: 6.4em !important;
    padding-right: 6.4em !important;
  }
}

@media (max-width: 767px){
  .elementor-143 .elementor-element.elementor-element-5b2892e2 > .elementor-widget-container::before{
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
}
