    .ctrl-mapa {
        position:absolute; right:10px; z-index:1000;
        background:white; border:none; border-radius:8px;
        width:34px; height:34px; cursor:pointer;
        box-shadow:0 2px 6px rgba(0,0,0,.25);
        font-size:16px; display:flex; align-items:center; justify-content:center;
        transition:background .2s;
    }
    /* Mapbox native controls ficam em bottom:30px (zoom) e bottom:90px (fullscreen) */
    /* Nossos botões começam acima deles com espaço suficiente                        */
    #btn-3d-toggle { bottom:170px; }
    #btn-3d-toggle:hover { background:#f0fdf4; }
    #btn-3d-toggle.ativo { background:#15803d; color:white; }
    #btn-compass { bottom:214px; }
    #btn-compass:hover { background:#eff6ff; }
    #btn-rotar { bottom:258px; }
    #btn-rotar:hover { background:#fef9c3; }
    #btn-rotar.ativo { background:#b45309; color:white; }
    #btn-fotos { bottom:302px; }
    #btn-fotos:hover { background:#fdf4ff; }
    #btn-fotos.ativo { background:#7c3aed; color:white; }
    .mapboxgl-ctrl-group { border-radius:8px !important; }
    /* Slideshow overlay no mapa */
    .mapa-slideshow {
        display:none; position:absolute; inset:0; z-index:500;
        background:rgba(0,0,0,.0); transition:background .6s ease;
        border-radius:var(--radius);
    }
    .mapa-slideshow.ativo { display:block; background:rgba(0,0,0,.15); }
    .mapa-slide-img {
        position:absolute; inset:0; width:100%; height:100%;
        object-fit:cover; border-radius:var(--radius);
        opacity:0; transition:opacity .9s ease;
    }
    .mapa-slide-img.visivel { opacity:1; }
    .mapa-slide-fechar {
        position:absolute; top:10px; left:10px; z-index:510;
        background:rgba(0,0,0,.55); color:white; border:none;
        border-radius:6px; width:32px; height:32px; font-size:18px;
        cursor:pointer; display:flex; align-items:center; justify-content:center;
        backdrop-filter:blur(4px); transition:background .2s;
    }
    .mapa-slide-fechar:hover { background:rgba(0,0,0,.8); }
    .mapa-slide-counter {
        position:absolute; bottom:12px; left:50%; transform:translateX(-50%);
        background:rgba(0,0,0,.5); color:white; font-size:12px; font-weight:600;
        padding:4px 12px; border-radius:20px; z-index:510;
        backdrop-filter:blur(4px);
    }
