/* KARS VIAL Landing · microinteracciones. La maquetación base queda nativa en Elementor. */
.kvl-reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1)}
.kvl-reveal.kvl-in{opacity:1;transform:none}
.kvl-reveal-left{transform:translateX(-28px)}
.kvl-reveal-right{transform:translateX(28px)}
.kvl-image-card .elementor-widget-container{overflow:hidden;border-radius:18px}
.kvl-image-card img{transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .35s ease}
.kvl-image-card:hover img{transform:scale(1.025)}
.kvl-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.kvl-card:hover{transform:translateY(-5px);box-shadow:0 18px 50px rgba(12,17,33,.11)}
.kvl-btn .elementor-button{transition:transform .22s ease,box-shadow .22s ease}
.kvl-btn .elementor-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(12,17,33,.16)}
.kvl-accent-top{position:relative;overflow:hidden}
.kvl-accent-top:before{content:"";position:absolute;left:0;top:0;width:100%;height:5px;background:linear-gradient(90deg,#F6A311 0 34%,#F05A0E 34% 67%,#EA2106 67% 100%);z-index:2}
.kvl-dark-grid{position:relative;overflow:hidden}
.kvl-dark-grid:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 90%)}
.kvl-dark-grid > .elementor-container{position:relative;z-index:1}
.kvl-service-number{font-variant-numeric:tabular-nums}
@media(max-width:767px){
  .kvl-reveal,.kvl-reveal-left,.kvl-reveal-right{transform:translateY(18px)}
  .kvl-card:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .kvl-reveal,.kvl-reveal-left,.kvl-reveal-right{opacity:1;transform:none;transition:none}
  .kvl-image-card img,.kvl-card,.kvl-btn .elementor-button{transition:none}
}
