/* Lightbox das galerias de unidade + avaliacoes no estilo Google (home e seja-remax-city) */
.gallery-photo{cursor:zoom-in;}
.gallery-photo .gp-more{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(11,31,58,.55);color:#fff;font-weight:700;font-size:1.15rem;letter-spacing:-.01em;pointer-events:none;}

.lb{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;background:rgba(14,48,110,.62);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.lb.open{display:flex;animation:lbIn .22s ease-out;}
@keyframes lbIn{from{opacity:0}to{opacity:1}}
.lb-stage{position:relative;max-width:min(94vw,1400px);max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:12px;}
.lb-stage img{display:block;max-width:100%;max-height:80vh;object-fit:contain;border-radius:14px;box-shadow:0 24px 80px rgba(3,12,36,.55);background:#0b1f3a;}
.lb-count{color:#fff;font:600 13px/1 system-ui,sans-serif;letter-spacing:.04em;opacity:.9;}
.lb button{position:absolute;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#0b1f3a;cursor:pointer;box-shadow:0 6px 24px rgba(3,12,36,.35);transition:transform .15s;}
.lb button:hover{transform:scale(1.07);}
.lb button:focus-visible{outline:3px solid #fff;outline-offset:3px;}
.lb button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}
.lb-x{top:18px;right:18px;}
.lb-prev{left:18px;top:50%;margin-top:-24px;}
.lb-next{right:18px;top:50%;margin-top:-24px;}
.lb.single .lb-prev,.lb.single .lb-next,.lb.single .lb-count{display:none;}
@media(max-width:640px){.lb-prev{left:8px}.lb-next{right:8px}.lb button{width:42px;height:42px}.lb-x{top:10px;right:10px}}

/* avaliacoes */
.rv{margin:-24px 0 0;}
.rv-un[hidden]{display:none;}
.rv-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-bottom:18px;padding:16px 20px;border:1px solid #dadce0;border-radius:16px;background:#fff;}
.rv-g{width:26px;height:26px;flex-shrink:0;}
.rv-nota{font-weight:800;font-size:2rem;line-height:1;color:#202124;letter-spacing:-.02em;}
.rv-sum{display:flex;flex-direction:column;gap:3px;font-size:13.5px;color:#5f6368;}
.rv-stars{display:inline-flex;gap:1px;}
.rv-stars svg{width:16px;height:16px;fill:#fbbc04;}
.rv-btn{margin-left:auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;background:#1a73e8;color:#fff;font-weight:600;font-size:14.5px;text-decoration:none;transition:background .15s;}
.rv-btn:hover{background:#1558b8;}
.rv-list{position:relative;display:flex;gap:16px;height:520px;overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent);}
.rv-col{flex:1;min-width:0;}
.rv-track{display:flex;flex-direction:column;gap:16px;animation:rvUp 40s linear infinite;}
.rv-track.down{animation-name:rvDown;}
.rv-dup{display:flex;flex-direction:column;gap:16px;}
.rv-list:hover .rv-track{animation-play-state:paused;}
@keyframes rvUp{from{transform:translateY(0)}to{transform:translateY(calc(-50% - 8px))}}
@keyframes rvDown{from{transform:translateY(calc(-50% - 8px))}to{transform:translateY(0)}}
.rv-list.static{height:auto;-webkit-mask-image:none;mask-image:none;}
.rv-list.static .rv-track{animation:none;}
.rv-list.static .rv-dup{display:none;}
.rv-card{background:#fff;border:1px solid #dadce0;border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:10px;font-family:'Roboto','Inter',system-ui,sans-serif;}
.rv-top{display:flex;align-items:center;gap:12px;}
.rv-av{width:40px;height:40px;border-radius:50%;flex-shrink:0;object-fit:cover;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:500;font-size:18px;}
.rv-who{min-width:0;flex:1;}
.rv-name{font-weight:500;font-size:14.5px;color:#202124;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rv-meta{margin-top:2px;}
.rv-card .rv-g{width:18px;height:18px;opacity:.9;}
.rv-card .rv-stars svg{width:14px;height:14px;}
.rv-txt{font-size:14.5px;line-height:1.55;color:#3c4043;}
@media(max-width:640px){.rv-list{height:460px;}.rv-btn{margin-left:0;width:100%;justify-content:center;}.rv-nota{font-size:1.7rem;}}
