/*==============================
    "The Pour" — Bordomet logo casting preloader (homepage only)
    Mold outline draws -> molten brand color rises to fill the wordmark
    -> ® trademark stamps in -> sets with a pulse -> overlay lifts.
==============================*/
#ac-preloader{position:fixed;inset:0;z-index:99999}
#ac-preloader .ac-pre__overlay{
    position:absolute;inset:0;display:flex;flex-direction:column;
    align-items:center;justify-content:center;background:#f5f3ee;
}
#ac-preloader .ac-pre__logo{
    width:clamp(230px,44vw,400px);height:auto;
    transform-box:fill-box;transform-origin:center;
}
#ac-preloader .ac-pre__mold path{
    fill:none;stroke-width:.5;stroke-linejoin:round;stroke-linecap:round;
    stroke-dasharray:100;stroke-dashoffset:100;
}
#ac-preloader .ac-pre__mold .mb{stroke:#223064}
#ac-preloader .ac-pre__mold .mr{stroke:#bf2134}
#ac-preloader .ac-pre__rect{transform:translateY(24px)}
#ac-preloader .ac-pre__meniscus{fill:#bf2134;opacity:0}
#ac-preloader .ac-pre__reg{transform-box:fill-box;transform-origin:center;transform:scale(.4);opacity:0}
#ac-preloader .ac-pre__cap{
    position:absolute;bottom:clamp(40px,8vh,72px);
    font:400 13px/1 'Lama Sans','Inter',sans-serif;letter-spacing:.04em;color:#8a8478;opacity:0;
}
#ac-preloader .ac-pre__cap .dt{animation:acDots 1.4s steps(4,end) infinite}
#ac-preloader .ac-pre__bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(34,48,100,.10)}
#ac-preloader .ac-pre__bar i{display:block;height:100%;width:0;background:#bf2134}

@keyframes acDraw{to{stroke-dashoffset:0}}
@keyframes acPour{from{transform:translateY(24px)}to{transform:translateY(0)}}
@keyframes acRise{0%{transform:translateY(24px);opacity:0}10%{opacity:.95}88%{opacity:.95}100%{transform:translateY(0);opacity:0}}
@keyframes acStamp{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.15);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes acSettle{0%{transform:scale(1)}45%{transform:scale(1.03)}100%{transform:scale(1)}}
@keyframes acProg{to{width:100%}}
@keyframes acCapIn{to{opacity:1}}
@keyframes acLift{to{transform:translateY(-101%)}}
@keyframes acDots{0%{clip-path:inset(0 100% 0 0)}100%{clip-path:inset(0 0 0 0)}}

#ac-preloader.go .ac-pre__mold path{animation:acDraw .9s ease forwards;animation-delay:calc(.15s + var(--i)*.06s)}
#ac-preloader.go .ac-pre__rect{animation:acPour 1s cubic-bezier(.4,0,.2,1) .62s forwards}
#ac-preloader.go .ac-pre__meniscus{animation:acRise 1s cubic-bezier(.4,0,.2,1) .62s forwards}
#ac-preloader.go .ac-pre__reg{animation:acStamp .45s cubic-bezier(.5,1.6,.5,1) 1.5s forwards}
#ac-preloader.go .ac-pre__logo{animation:acSettle .38s ease 1.62s}
#ac-preloader.go .ac-pre__bar i{animation:acProg 1.9s ease .2s forwards}
#ac-preloader.go .ac-pre__cap{animation:acCapIn .4s ease .25s forwards}
#ac-preloader.go .ac-pre__overlay{animation:acLift .75s cubic-bezier(.7,0,.28,1) 2.15s forwards}

#ac-preloader.done{opacity:0;visibility:hidden;pointer-events:none}

@media (prefers-reduced-motion: reduce){
    #ac-preloader{display:none}
}
