/* ===== Kecamatan Baolan — gerak halaman =====
   Satu gaya, sama seperti hero: kata naik dari bawah, blok naik dan muncul. Hanya transform/opacity/clip-path.
   Aktif bila <html class="mo">; tanpa JS atau "kurangi gerakan" halaman tampil statis utuh. */

/* hero */
html.mo .bl-hero-kicker,html.mo .bl-hero-sub,html.mo .bl-find,html.mo .bl-quick{opacity:0;translate:0 18px;transition:opacity .7s ease,translate .8s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d,0ms) + var(--k,0)*110ms)}
html.mo.mo-go .bl-hero-kicker,html.mo.mo-go .bl-hero-sub,html.mo.mo-go .bl-find,html.mo.mo-go .bl-quick{opacity:1;translate:0 0}
html.mo .bl-hero h1 .w,html.mo .bl-head h2 .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
html.mo .bl-hero h1 .w>span,html.mo .bl-head h2 .w>span{display:inline-block;transform:translateY(112%);transition:transform .85s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d,0ms) + var(--i)*60ms)}
html.mo.mo-go .bl-hero h1 .w>span,html.mo .bl-head.mo-in h2 .w>span{transform:none}
html.mo:not(.mo-go) .bl-hero h1:not([data-mo]){opacity:0}
html.mo .bl-cutout{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s cubic-bezier(.65,0,.2,1) calc(var(--d,0ms) + 250ms)}
html.mo.mo-go .bl-cutout{clip-path:inset(0 0 0 0)}
html.mo .bl-camat figcaption{opacity:0;translate:0 14px;transition:opacity .7s ease calc(var(--d,0ms) + 1200ms),translate .7s ease calc(var(--d,0ms) + 1200ms)}
html.mo.mo-go .bl-camat figcaption{opacity:1;translate:0 0}

/* bagian lain: muncul saat digulir, gaya yang sama */
html.mo .mo-r{opacity:0;translate:0 18px;transition:opacity .7s ease,translate .8s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--k,0)*90ms)}
html.mo .mo-r.mo-in{opacity:1;translate:0 0}
html.mo .bl-head h2::after{content:"";display:block;height:3px;width:56px;margin-top:14px;background:#c9a24b;transform:scaleX(0);transform-origin:left;transition:transform .9s .3s cubic-bezier(.2,.8,.2,1)}
html.mo .bl-head.mo-in h2::after{transform:none}

html.mo,html.mo body{overflow-x:clip}
@media(prefers-reduced-motion:reduce){
 html.mo .mo-r,html.mo .bl-hero-kicker,html.mo .bl-hero-sub,html.mo .bl-find,html.mo .bl-quick,html.mo .bl-camat figcaption,html.mo .bl-hero h1 .w>span,html.mo .bl-head h2 .w>span{opacity:1!important;translate:none!important;transform:none!important;transition:none!important}
 html.mo .bl-cutout{clip-path:none!important;transition:none!important}}
