/* POINT UP - Espacios: 2 opções de fotos em teste (24/10/2026; a 3ª, visor, foi removida a pedido do Ricardo). Ricardo escolhe uma e as outras saem.
   1 .pu-lens  "Tu mejor decisión es conocernos": foto em P&B, círculo ("el punto") revela a cor; no fim da rolagem tudo colorido.
   2 .pu-rec   recorrido horizontal (ref. roveia): a seção fica presa, as fotos passam de lado e a do centro ganha cor.
   JS: espacios-fotos.js. Sem JS (ou "reduzir movimento"): fotos coloridas, sem efeitos. */
.pu-fx,.pu-fx *{box-sizing:border-box}
.pu-fx{position:relative;font-family:"Inter Tight",sans-serif;color:#151515;-webkit-font-smoothing:antialiased}
.pu-fx img{display:block;width:100%;height:100%;object-fit:cover}
.pu-fx em{font-style:italic}

/* ===== 1. Lente ===== */
.pu-lens{height:240vh}
.pu-lens .lx-stick{position:sticky;top:0;height:100vh;padding:16px 0}
.pu-lens .lx-pan{position:relative;height:100%;border-radius:40px;overflow:hidden;background:#151515;isolation:isolate}
.pu-lens .lx-bw,.pu-lens .lx-col{position:absolute;inset:0}
.pu-lens .lx-bw{filter:grayscale(1) brightness(.82) contrast(1.05)}
.pu-lens .lx-col{clip-path:circle(var(--r,0px) at var(--x,50%) var(--y,50%));transform:scale(1.05);transform-origin:var(--x,50%) var(--y,50%)}
.pu-lens .lx-ring{position:absolute;left:var(--x,50%);top:var(--y,50%);width:calc(var(--r,0px)*2);height:calc(var(--r,0px)*2);transform:translate(-50%,-50%);border-radius:50%;box-shadow:0 0 0 2px #F4D000;pointer-events:none;opacity:var(--ro,1)}
.pu-lens .lx-tx{position:absolute;left:clamp(24px,4vw,56px);bottom:clamp(24px,4vw,56px);margin:0;max-width:640px;color:#FFFFFF;font:600 clamp(32px,4.4vw,64px)/1.04 "Inter Tight",sans-serif;letter-spacing:-.02em;text-wrap:balance;text-shadow:0 1px 24px rgba(0,0,0,.25)}
html.pu-fx-on .pu-lens .lx-pan{cursor:none}

/* ===== 2. Recorrido ===== */
.pu-rec{height:300vh}
.pu-rec .rc-stick{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:clamp(24px,4vh,48px)}
.pu-rec .rc-t{margin:0;text-align:center;font:600 clamp(28px,3.1vw,44px)/1.15 "Inter Tight",sans-serif;letter-spacing:-.01em;color:#151515}
.pu-rec .rc-track{display:flex;gap:20px;padding:0 calc(50vw - min(15vw,210px));will-change:transform}
.pu-rec .rc-card{position:relative;flex:none;margin:0;width:min(30vw,420px);aspect-ratio:3/4;max-height:64vh;border-radius:28px;overflow:hidden;background:#E9E8E2}
html.pu-fx-on .pu-rec .rc-card{transform:scale(.88)}
html.pu-fx-on .pu-rec .rc-card img{filter:grayscale(1)}
.pu-rec figcaption{position:absolute;left:14px;bottom:14px;background:#FFFFFF;color:#151515;border-radius:100px;padding:8px 14px;font:600 14px/1 "Inter Tight",sans-serif;opacity:var(--co,1)}

/* ===== celular/tablet ===== */
@media (max-width:991px){
  .pu-lens{height:200vh}
  .pu-lens .lx-stick{padding:84px 0 12px}
  .pu-lens .lx-pan{border-radius:28px}
  .pu-rec .rc-card{width:68vw;max-height:58vh}
  .pu-rec .rc-track{padding:0 16vw;gap:14px}
}
@media (prefers-reduced-motion:reduce){
  .pu-lens,.pu-rec{height:auto}
  .pu-lens .lx-stick,.pu-rec .rc-stick{position:relative;height:auto;min-height:80vh}
}

/* containers do Elementor que recebem as opções (largura total; bloco simples para o "sticky" funcionar) */
.pu-esp-fx1,.pu-esp-fx2{display:block !important;--padding-top:0px;--padding-bottom:0px;padding-top:0 !important;padding-bottom:0 !important}
.pu-esp-fx1 > .elementor-element,.pu-esp-fx2 > .elementor-element{width:100% !important;max-width:none !important}
.pu-esp-fx1{padding-inline:20px !important}
.pu-esp-fx2{padding-inline:0 !important}
@media (max-width:767px){.pu-esp-fx1{padding-inline:10px !important}}
