/* JPnet: movimento leve, sem bloquear conteúdo ou controles. */
.hero{position:relative;isolation:isolate}
.hero::after{content:'';position:absolute;inset:-15%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 25% 35%,#49ccff25,transparent 48%);animation:jpnet-light 4s ease-out both}
@keyframes jpnet-light{from{transform:translateX(-8%);opacity:0}to{transform:translateX(0);opacity:1}}
.plan,.combo-card,.hero-offer,.hero-facts>div{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.btn,.combo-tabs button{transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
@media(hover:hover) and (pointer:fine){
.plan:hover,.combo-card:hover{transform:translateY(-6px);border-color:#29bbdb;box-shadow:0 20px 42px #092d4e18}
.hero-offer:hover{transform:translateY(-3px);box-shadow:0 14px 36px #031b3e35}
.hero-facts>div:hover{transform:translateY(-3px);border-color:#91eaff}
.btn:hover{box-shadow:0 8px 22px #092d4e24}
.combo-tabs button:hover{transform:translateY(-2px)}
}
.btn:active,.combo-tabs button:active{transform:scale(.98)}
@media(prefers-reduced-motion:reduce){
html,:root{scroll-behavior:auto!important}
.hero::after{animation:none}
.plan,.combo-card,.hero-offer,.hero-facts>div,.btn,.combo-tabs button{transition:none!important;transform:none!important}
}
