/* H.AB LUXURY – finishing touches */
.banner{position:relative}
.hab-dust{position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:screen}
.banner__content{position:relative;z-index:2}

.hab-tilt{transition:transform .6s cubic-bezier(.22,.61,.36,1);transform-style:preserve-3d;will-change:transform;position:relative}
.card-wrapper:hover .hab-tilt{transition:transform .12s linear}
.hab-tilt__glare{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;transition:opacity .5s;mix-blend-mode:screen;border-radius:inherit}

.hab-shine{background:linear-gradient(105deg,currentColor 0%,currentColor 42%,#f4dfae 50%,currentColor 58%,currentColor 100%) 120% 0/250% 100% no-repeat;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hab-shine.is-shining{animation:habShine 2.6s cubic-bezier(.45,.05,.25,1) .2s 1 both, habShineLoop 9s ease-in-out 3s infinite}
@keyframes habShine{from{background-position:120% 0}to{background-position:-20% 0}}
@keyframes habShineLoop{0%,78%{background-position:120% 0}100%{background-position:-20% 0}}
[dir=rtl] .hab-shine{background-image:linear-gradient(-105deg,currentColor 0%,currentColor 42%,#f4dfae 50%,currentColor 58%,currentColor 100%)}

@media (prefers-reduced-motion: reduce){.hab-dust{display:none}.hab-shine{animation:none!important;-webkit-text-fill-color:currentColor;background:none}}
