.elementor-2005 .elementor-element.elementor-element-24539cd4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-2005 .elementor-element.elementor-element-1e465063{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-2005 .elementor-element.elementor-element-15f1845e{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:5%;--padding-bottom:5%;--padding-left:5%;--padding-right:5%;overflow:visible;}.elementor-2005 .elementor-element.elementor-element-15f1845e.e-con{--align-self:center;}.elementor-2005 .elementor-element.elementor-element-6ed1579{--wcf-duration:1000ms;--wcf-delay:0ms;--wcf-ease:ease;text-align:center;}.elementor-2005 .elementor-element.elementor-element-6ed1579 .elementor-heading-title{font-size:37px;}.elementor-2005 .elementor-element.elementor-element-59398a89{--wcf-duration:1000ms;--wcf-delay:0ms;--wcf-ease:ease;}.elementor-2005 .elementor-element.elementor-element-59398a89 img{max-width:100%;border-radius:20px 20px 20px 20px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-2005 .elementor-element.elementor-element-6ed1579 .elementor-heading-title{font-size:32px;}}@media(min-width:768px){.elementor-2005 .elementor-element.elementor-element-24539cd4{--content-width:1600px;}.elementor-2005 .elementor-element.elementor-element-1e465063{--width:100%;}.elementor-2005 .elementor-element.elementor-element-15f1845e{--width:38%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2005 .elementor-element.elementor-element-15f1845e{--width:89%;}}/* Start custom CSS *//* ================================ 
   HERO TEXT-ONLY ALIGN-LEFT (RESPONSIVE, SOLID)
   ================================ */

/* Variabel responsif */
.as-hero{
  --hero-h: clamp(300px, 48vh, 600px);      /* tinggi hero default agar tidak “lompat” */
  --max-w: 1300px;                           /* lebar konten maksimum */
  --title-size: clamp(28px, 4vw, 56px);      /* heading fluid */
  --body-size: clamp(14px, 1.25vw, 18px);    /* paragraf fluid */
  --title-ch: 24ch;                          /* panjang baris aman heading */
  --body-ch: 62ch;                           /* panjang baris aman paragraf */
}

/* Pembungkus section hero */
.as-hero{
  position: relative;
  overflow: hidden;
  min-height: 60vh;
  color: inherit;
  background: transparent;
}

/* Kontainer teks yang berubah-ubah */
.as-changing-widget{
  position: relative;
  z-index: 2;
  width: min(var(--max-w), 100%);
  margin-left: 0;           /* align-left */
  margin-right: auto;       /* align-left */
  text-align: left;         /* align-left */
  padding: clamp(12px, 2.5vw, 24px) var(--pad-x);
  /* Kunci tinggi agar tidak meloncat saat ganti slide */
  height: var(--h, var(--hero-h));
  overflow: hidden;
  /* Biarkan transisi fokus ke opacity/transform untuk performa */
  transition: opacity .35s ease;
}

/* Wadah slide, posisi relatif agar absolute child mengacu ke sini */
.as-changing-widget{ position: relative; }

/* Setiap slide berisi Heading + Text Editor */
.as-slide{
  position: absolute;
  inset: 0 auto auto 0;  /* top:0; left:0 */
  width: 100%;
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .35s ease, transform .35s ease;
  pointer-events: none; /* hindari fokus pada slide tersembunyi */
}

/* State tampil saat maju/mundur */
.as-slide.currentUp,
.as-slide.currentDown{
  position: relative;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* State keluar */
.as-slide.prev{  opacity: 0; transform: translateY(-12px); }
.as-slide.next{  opacity: 0; transform: translateY(12px);  }

/* Tipografi */
.as-changing-widget h1,
.as-changing-widget .elementor-heading-title{
  margin: 0 0 .25rem;
  font-size: var(--title-size);
  line-height: 1.2;
  letter-spacing: -0.02em;
  max-width: var(--title-ch);
}
.as-changing-widget p{
  margin: .5rem 0 0;
  font-size: var(--body-size);
  line-height: 1.6;
  opacity: .95;
  max-width: var(--body-ch);
}

/* Indikator titik non-klik (disembunyikan) */
.as-bar{ display: none; }

/* Tablet landscape dan desktop besar: beri ruang vertikal lebih */
@media (min-width: 1024px){
  .as-hero{ --hero-h: clamp(360px, 52vh, 680px); }
}

/* Tablet portrait: rapikan padding */
@media (min-width: 641px) and (max-width: 1023px){
  .as-changing-widget{
    padding: clamp(16px, 3vw, 24px) var(--pad-x);
  }
}

/* Mobile: kompak, tetap align-left */
@media (max-width: 640px){
  .as-hero{ min-height: 50vh; }
  .as-changing-widget{
    width: min(720px, 94vw);
    padding: 28px max(16px, env(safe-area-inset-left)) 28px max(16px, env(safe-area-inset-right));
  }
  .as-changing-widget h1,
  .as-changing-widget .elementor-heading-title{
    /* override untuk mobile kecil */
    font-size: clamp(22px, 7vw, 32px);
    max-width: 28ch;
  }
  .as-changing-widget p{
    font-size: clamp(13px, 4vw, 16px);
    max-width: 60ch;
  }
}

/* Preferensi aksesibilitas: kurangi animasi jika user minta */
@media (prefers-reduced-motion: reduce){
  .as-slide{ transition: none; transform: none; }
  .as-changing-widget{ transition: none; }
}

/* Kontras tinggi: sedikit gelapkan teks agar terbaca */
@media (prefers-contrast: more){
  .as-changing-widget p{ opacity: 1; }
}/* End custom CSS */