/* ======================================================
   BLOCO 01 — GALERIA RESPONSIVA SEM CORTAR FOTOS NO CELULAR
   ====================================================== */
.imovel-detalhe{min-width:0}
.imovel-gallery{border-radius:24px;background:rgba(226,240,243,.65);padding:10px;overflow:hidden}
.imovel-gallery-main{position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:clamp(250px,51vw,550px);background:#142c36;border-radius:17px;overflow:hidden;cursor:zoom-in}
.imovel-gallery-main img{display:block;width:100%;height:100%;object-fit:contain}
.imovel-gallery-expand{position:absolute;bottom:13px;left:13px;padding:9px 13px;border-radius:13px;background:rgba(255,255,255,.93);color:#164151;font-size:12px;font-weight:750;box-shadow:0 5px 15px #071b2629}
.imovel-gallery-thumbs{display:flex;gap:9px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:11px 2px 4px}
.imovel-thumb{flex:0 0 112px;height:78px;overflow:hidden;border-radius:12px;border:3px solid transparent;background:#d7e7e9;scroll-snap-align:start}
.imovel-thumb.is-selected{border-color:#0b888b}.imovel-thumb img{width:100%;height:100%;object-fit:cover}
.imovel-photo-label{font-size:11px;color:#567b87;padding:5px 7px 2px}
.imovel-gallery-empty{min-height:280px;display:grid;place-items:center}.imovel-gallery-empty img{max-height:300px;object-fit:contain}
@media(max-width:640px){.imovel-gallery{margin:0 -9px;border-radius:18px;padding:6px}.imovel-gallery-main{height:auto;aspect-ratio:4/3;border-radius:14px}.imovel-thumb{flex-basis:86px;height:68px;border-radius:9px}.imovel-gallery-expand{bottom:10px;left:9px}}
/* BLOCO 02 — DESCRIÇÃO RICA E PERFIL PROFISSIONAL */
.imovel-rich-public{overflow-wrap:anywhere}.imovel-rich-public p{margin-bottom:12px}.imovel-rich-public h2{font-size:1.3rem;font-weight:800;color:#163f4c;margin:15px 0 9px}.imovel-rich-public h3{font-size:1.12rem;font-weight:750;margin:12px 0 8px}.imovel-rich-public ul{list-style:disc;padding-left:23px;margin:8px 0}.imovel-rich-public ol{list-style:decimal;padding-left:23px;margin:8px 0}.imovel-rich-public blockquote{border-left:3px solid #0a8588;padding-left:12px;font-style:italic}
.imovel-public-broker{display:flex;align-items:center;gap:12px;border-radius:17px;background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.75);padding:14px;margin-top:18px}
.imovel-broker-photo{display:grid;place-items:center;flex:0 0 64px;height:64px;border-radius:17px;background:#d9eee9;color:#0a8081;font-size:23px;overflow:hidden}.imovel-broker-photo img{width:100%;height:100%;object-fit:cover}
.imovel-broker-contact{display:flex;align-items:center;gap:9px;font-size:12px;color:#09666e;font-weight:700;margin-top:12px}
/* BLOCO 03 — COMPARTILHAMENTO E ROTAS */
.imovel-share-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.imovel-share-grid :is(a,button){display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 7px;text-align:center;border:1px solid rgba(11,111,120,.14);background:rgba(255,255,255,.72);color:#245565;border-radius:13px;font-size:12px;font-weight:750;min-width:0}
.imovel-share-grid :is(a,button):hover{background:#dcf2ef}.imovel-share-grid i{font-size:16px;color:#07838a}
.imovel-map-button{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #a2cbd1;background:rgba(255,255,255,.65);padding:13px 7px;border-radius:14px;font-size:13px;font-weight:750;color:#145e69}
.imovel-map-button i{font-size:19px}.imovel-map-button:hover{background:#dcf2ef}
.imovel-map-alert{display:flex;align-items:flex-start;gap:8px;margin-bottom:15px;background:#e5f4f3;padding:12px;border-radius:12px;color:#305d64;font-size:12px;line-height:1.5}
@media(max-width:390px){.imovel-share-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* BLOCO 04 — LIGHTBOX FULLSCREEN, ACESSÍVEL E SEM CORTE */
.imovel-lightbox[hidden]{display:none!important}
.imovel-lightbox{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:3px;background:rgba(2,14,24,.97);padding:60px 10px 54px}
.imovel-lightbox img{max-width:100%;max-height:calc(100dvh - 120px);width:auto;height:auto;object-fit:contain;justify-self:center;min-width:0}
.imovel-lightbox button{display:grid;place-items:center;width:44px;height:44px;color:#fff;border-radius:12px;background:rgba(255,255,255,.12);cursor:pointer}
.imovel-lightbox button:focus-visible{outline:3px solid #47c7bb;outline-offset:2px}
.imovel-lightbox-close{position:absolute;right:16px;top:14px}.imovel-lightbox-counter{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#e1f1f5;font-size:13px}
@media(min-width:768px){.imovel-lightbox{grid-template-columns:70px minmax(0,1fr) 70px;padding:45px 24px}.imovel-lightbox img{max-height:calc(100dvh - 90px)}}
