.ml-hero-onload{
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  min-height: 520px;
  isolation: isolate;
}

.ml-hero-onload__bg{
  position:absolute; inset:0;
  background-size: cover;
  background-position: center;
  transform: scale(1.02);
  opacity: 0;
  transition: opacity .25s ease;
}

.ml-hero-onload--ready .ml-hero-onload__bg{
  opacity: 1;
}

.ml-hero-onload__overlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(0,0,0,.75), rgba(0,0,0,.15));
  opacity: .45;
}

.ml-hero-onload__content{
  position: relative;
  z-index: 2;
  padding: clamp(22px, 4vw, 64px);
  color: #fff;
}

/* Ensure Elementor global styles can't override readability */
.elementor-widget-ml_hero_onload .ml-hero-onload__content,
.elementor-widget-ml_hero_onload .ml-hero-onload__headline,
.elementor-widget-ml_hero_onload .ml-hero-onload__text{
  color: #fff;
}

.ml-hero-onload__headline{
  margin: 0 0 10px 0;
  font-size: clamp(28px, 4vw, 56px);
  line-height: 1.05;
  text-shadow: 0 2px 18px rgba(0,0,0,.35);
}

.ml-hero-onload__text{
  margin: 0 0 16px 0;
  font-size: clamp(14px, 1.3vw, 18px);
  opacity: .95;
  text-shadow: 0 2px 18px rgba(0,0,0,.25);
}

.ml-hero-onload__dots{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 6px 0 18px;
}

.ml-hero-onload__dots span{
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background-color: #E91E63;
}

.ml-hero-onload__content.is-align-center .ml-hero-onload__dots{ justify-content: center; }
.ml-hero-onload__content.is-align-left .ml-hero-onload__dots{ justify-content: flex-start; }
.ml-hero-onload__content.is-align-right .ml-hero-onload__dots{ justify-content: flex-end; }

.ml-hero-onload__btn{
  display:inline-block;
  padding: 12px 18px;
  border-radius: 12px;
  background: rgba(255,255,255,.92);
  color: #111;
  text-decoration: none;
  font-weight: 600;
}
.ml-hero-onload__btn:hover{
  background: rgba(255,255,255,1);
}

.ml-hero-box{display:inline-block;background:rgba(255,255,255,0.7);} .ml-hero-title{margin-bottom:10px;}