/* V89 — small movements, warm details, full product framing. */
html:has(.tlv89-motion){scroll-behavior:smooth;scroll-padding-top:96px}
.tlv89-motion .s29-pending{opacity:1!important;transform:none!important}
.tlv89-motion :is(.site-header,body>header){transition:box-shadow .28s ease,border-color .28s ease}
.tlv89-motion.tlv89-scrolled .site-header{box-shadow:0 5px 22px #60432c15;border-bottom-color:#cbb38e}
.tlv89-card{transform-origin:50% 60%;transition:transform .38s cubic-bezier(.2,.7,.2,1),box-shadow .38s ease,border-color .38s ease}
.tlv89-motion :is(.s29-hero-frame,.v31-gallery-main,article>figure){transform-origin:50% 60%}
.tlv89-motion :is(.button,button,.v85-zalo,.v85-call,.z43-zalo,.text-link){transition:background-color .22s ease,color .22s ease,box-shadow .22s ease,transform .22s ease}
.tlv89-motion :is(.button,button,.v85-zalo,.v85-call,.z43-zalo):active{transform:translateY(1px) scale(.985)}
.tlv89-card:focus-within{border-color:#a78859;box-shadow:0 8px 28px #60432c17}
.tlv89-discover{text-underline-offset:7px;text-decoration-thickness:1px;transition:color .22s ease,text-decoration-color .22s ease}
.tlv89-motion :is(a,button,summary):focus-visible{outline:2px solid #936136;outline-offset:4px}
.tlv89-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:300;pointer-events:none;background:transparent}
.tlv89-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#714437,#c6a263);transform:scaleX(0);transform-origin:left}
.tlv89-top{position:fixed;right:16px;bottom:calc(104px + env(safe-area-inset-bottom,0px));width:46px;height:46px;border-radius:50%;border:1px solid #b49b72;background:#fffaf1;color:#714437;box-shadow:0 5px 18px #50372016;z-index:45;display:grid;place-items:center;font:24px/1 system-ui;cursor:pointer}
.tlv89-top[hidden],.tlv89-progress[hidden]{display:none!important}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .tlv89-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #60432c1c;border-color:#b89d72}
 .tlv89-motion :is(.button,.v85-zalo,.z43-zalo):hover{transform:translateY(-2px);box-shadow:0 6px 18px #60432c24}
 .tlv89-discover:hover{text-decoration:underline;text-decoration-color:#a78859}
 .tlv89-top:hover{transform:translateY(-3px);background:#f4e8d3}
}
@media(max-width:600px){
 html:has(.tlv89-motion){scroll-padding-top:86px}
 .tlv89-progress{height:2px}
 .tlv89-top{right:12px;width:44px;height:44px}
 .tlv89-card:active{border-color:#b89d72;box-shadow:0 6px 18px #60432c15}
}
@media(prefers-reduced-motion:reduce){
 html:has(.tlv89-motion){scroll-behavior:auto!important}
 .tlv89-motion *,.tlv89-motion *::before,.tlv89-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .tlv89-motion :is(.button,button,.v85-zalo,.v85-call,.z43-zalo):active{transform:none!important}
}
@media print{.tlv89-progress,.tlv89-top{display:none!important}.tlv89-motion *{animation:none!important;transition:none!important;transform:none!important}}
