/* --- layout base --- */

html, body {
  overflow-x: hidden;
}

.bz-wrap{
  display:grid;
  grid-template-columns:420px 1fr;
  gap:14px;
  max-width:1200px;   /* já força o limite */
  margin:0 auto;
  width:100%;         /* nunca use 100vw aqui */
  box-sizing:border-box;
  padding:0 10px;     /* um respiro nas laterais se quiser */
}

.bz-left{background:#fff;border-radius:12px;box-shadow:0 3px 12px rgba(0,0,0,.06);padding:12px}
#bz-map{width:100%;height:78vh;border-radius:12px;overflow:hidden}

/* --- CTA achar loja --- */
.bz-cta-wrap{margin-bottom:12px}
.bz-cta{
  width:100%; display:flex; align-items:center; gap:12px;
  background:#f4f4f4; border:2px solid #e6e8ee; border-radius:12px;
  padding:16px 18px; cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.04);
  text-align: center;
}
.bz-cta:hover{background:#fffdfd}
.bz-cta-pin{font-size:22px}
.bz-cta strong{font-size:18px; letter-spacing:.3px; text-align: center;}
.bz-cta-help{
  margin-top:8px; font-size:13px; color:#7a7a7a; text-align: center; padding:0 2px;
}

/* --- lista --- */
.bz-results{
  margin-top:10px;
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:70vh;          /* <- mantém no desktop */
  overflow:auto;            /* <- mantém no desktop */
}


/* Card grande: imagem full width + conteúdo embaixo (desktop e mobile) */
.bz-item{
  display:grid; grid-template-columns:1fr; gap:12px;
  padding:12px; border:1px solid #e6e8ee; border-radius:12px; background:#fff;
}
.bz-item img,.bz-thumbph{
  width:100%; height:220px; border-radius:10px; object-fit:cover; background:#eee;
}
.bz-info h4{margin:2px 0 8px; font-size:18px; font-weight: 700;}
.bz-info p{margin:0 0 8px; color:#444; font-size:14px}
.bz-info .bz-hours{color:#e10600; font-weight:700}
.bz-info .bz-phone{color:#222; font-weight:600}

/* Ações menores */
.bz-actions{display:flex; gap:10px; margin-top:6px; flex-wrap:wrap}
.bz-btn{
  display:inline-block; text-decoration:none; border-radius:999px;
  padding:8px 14px; font-weight:700; letter-spacing:.3px; font-size:14px;
}
.bz-btn.black{background:#111; color:#fff}
.bz-btn.red{background:#e10600; color:#fff}

/* Ver todas ao final */
.bz-seeall{display:flex; justify-content:center; margin:4px 0 6px}
.bz-seeall button{
  border:none; background:#f1f3f7; color:#333; border-radius:999px;
  padding:10px 14px; cursor:pointer; font-weight:600;
}

/* --- MOBILE --- */
@media (max-width: 980px){
  /* 1 coluna, mapa vem primeiro */
  .bz-wrap{ grid-template-columns: 1fr; }

  /* Mapa com o mesmo respiro lateral da coluna esquerda */
  .bz-right{ order:1; padding: 0 12px; }
  .bz-left{  order:2; }

  /* Mapa mais baixo e com cantos arredondados */
  #bz-map{
    height: 32vh;              /* menor que 60vh */
    border-radius: 12px;
    overflow: hidden;          /* garante o recorte nos cantos */
  }

  /* (opcional) se algum tema zera o radius interno do Leaflet */
  #bz-map .leaflet-container{ border-radius: 12px; }

  /* Imagens dos cards já estão full width, mantemos só um ajuste de altura */
  .bz-item img, .bz-thumbph{ height: 200px; }
    .bz-hero{
    padding:8px 12px;
    margin:6px auto 10px;
    border-radius:12px;
  }
  .bz-logo{
    height:64px;
  }


  /* slot que recebe o mapa no mobile */
#bz-map-mobile-slot {
  display: none;               /* escondido no desktop */
}

  #bz-map-mobile-slot{
    display: block;
    margin-bottom: 12px;
    border-radius: 12px;
    overflow: hidden;
  }

  /* altura menor e responsiva no mobile */
  #bz-map{
    height: clamp(220px, 38vh, 380px); /* ajuste à vontade */
    border-radius: 12px;
  }
  .bz-results{
    max-height:none;        /* sem limite */
    overflow:visible;       /* sem scroll interno */
    -webkit-overflow-scrolling:auto; /* desativa o momentum do container */
  }
}





/* --- “landing” limpo quando for a página do shortcode (TT5 etc.) --- */
.wp-site-blocks > header,
.wp-site-blocks > footer,
.wp-block-template-part[rel="header"],
.wp-block-template-part[rel="footer"],
.wp-block-post-title { display: none !important; }

.wp-site-blocks { padding-top: 0 !important; gap: 0 !important; }
main, .wp-block-post-content { margin: 0 !important; padding: 0 !important; }


