/* tablet animado (planner digital) */
.tablet{position:relative;aspect-ratio:1024/768;background:#2B2238;border-radius:clamp(18px,2.6vw,34px);padding:clamp(10px,1.4vw,18px);box-shadow:0 8px 0 #2B2238,0 40px 70px -30px rgba(43,34,56,.55),inset 0 0 0 2px #4a3e5c;transform-style:preserve-3d}
.tablet::before{content:"";position:absolute;top:50%;left:clamp(4px,.6vw,8px);width:5px;height:5px;border-radius:50%;background:#4a3e5c;transform:translateY(-50%)}
.tablet .tela{position:relative;width:100%;height:100%;border-radius:clamp(8px,1vw,14px);overflow:hidden;background:#E4DEFF}
.tablet .tela img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .55s,transform .7s cubic-bezier(.2,.8,.2,1)}
.tablet .tela img.on{opacity:1;transform:none}
.dedo{position:absolute;z-index:5;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;background:rgba(255,255,255,.55);border:2.5px solid #2B2238;box-shadow:0 6px 14px rgba(0,0,0,.25);transition:left .9s cubic-bezier(.5,0,.2,1),top .9s cubic-bezier(.5,0,.2,1),transform .15s;pointer-events:none}
.dedo.toque{transform:scale(.7)}
.dedo::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:3px solid #E655FF;opacity:0}
.dedo.toque::after{animation:onda .6s ease-out}
@keyframes onda{0%{opacity:1;transform:scale(.6)}100%{opacity:0;transform:scale(2.6)}}
.foco{position:absolute;z-index:4;border:3px solid #E655FF;border-radius:14px;box-shadow:0 0 0 9999px rgba(43,34,56,.32);transition:all .7s cubic-bezier(.2,.8,.2,1);pointer-events:none;opacity:0}
.foco.on{opacity:1}

.lb{position:fixed;inset:0;z-index:1200;background:rgba(29,22,38,.88);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px}
.lb.on{display:flex;animation:lbIn .35s}
@keyframes lbIn{from{opacity:0}}
.lb img{max-width:min(1200px,100%);max-height:88vh;border-radius:14px;border:3px solid #fff;animation:lbZ .45s cubic-bezier(.2,.8,.2,1)}
@keyframes lbZ{from{transform:scale(.85)}}
.lb button{position:absolute;top:16px;right:16px;width:48px;height:48px;border-radius:50%;background:#fff;color:#2B2238;display:grid;place-items:center}.lb button .i{width:22px;height:22px}
.lb .lb-s{top:50%;transform:translateY(-50%)}
.lb.so1 .lb-s{display:none}
.lb .lb-a{left:16px;right:auto}.lb .lb-p{right:16px}
