/* ===== Footer moderno Boi&Cia (clean) ===== */
.bc-footer{
  --panel: var(--bc-panel, rgba(22,22,24,.75));
  --border: var(--bc-border, rgba(255,255,255,.08));
  --text: var(--bc-text, #e9e9ea);
  --muted: var(--bc-muted, #b8b8bc);
  --brand: var(--bc-red, #e11d48);
  color: var(--text);
  background: transparent;
  margin: 16px auto 28px;
}

/* container */
.bc-footer__grid{
  width: 96dvw; max-width: 1200px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  justify-items: start;
  align-items: start;
  column-gap: 28px;           /* espaçamento horizontal entre colunas */
  row-gap: 22px;              /* espaçamento vertical no responsivo   */
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 22px;
  backdrop-filter: blur(6px);
  margin: 0 auto;
  box-sizing: border-box;
}

/* colunas */
.bc-footer__col{
  display: flex;
  flex-direction: column;
  gap: 14px;                  /* ritmo vertical dentro da coluna */
  padding: 4px 6px;
}
.bc-footer__col--about{ padding-top: 4px; }

/* marca/textos/links */
.bc-footer__logo{ width:72px; height:auto; filter: drop-shadow(0 2px 6px rgba(0,0,0,.25)); }
.bc-footer__title{
  font: 700 1.05rem/1 "Bree Serif", serif;
  text-transform: uppercase;
  letter-spacing: .4px;
  min-height: 28px;
  display: flex; align-items: center;
  margin: 2px 0 12px;
}
.bc-footer__text{ margin:0; line-height:1.55; }
.bc-footer__link{ color:#fff; text-decoration:none; }
.bc-footer__link:hover{ color: var(--brand); }

/* créditos */
.bc-footer__dev{
  display:flex; flex-wrap:wrap; gap:6px 10px; align-items:center;
  font-size:.925rem; color:var(--muted);
}
.bc-footer__copy{ color:var(--muted); }
.bc-footer__sep{ opacity:.5; }

/* listas com ícones (ícone fixo + conteúdo fluido)  */
.bc-list{ list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.bc-list li{
  display:grid;
  grid-template-columns: 24px 1fr; /* ícone ainda mais confortável */
  align-items:center;
  column-gap: 12px;
}
.bc-list i,
.bc-list .lucide{                 /* garante tamanho do SVG Lucide */
  width:22px; height:22px;
  display:inline-block;           /* evita “colar” no texto */
  color:var(--muted);
}

/* mapa responsivo */
.bc-map__wrap{
  position: relative; width:100%;
  border-radius:12px; overflow:hidden;
  border:1px solid var(--border);
  background:#0f0f10;
  aspect-ratio: 16 / 10;
  margin-top: 6px;
}
.bc-map__wrap iframe{
  position:absolute; inset:0; width:100%; height:100%; border:0;
}

/* CTA WhatsApp */
.bc-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  padding:.8rem 1rem; border-radius:12px; font-weight:800; text-decoration:none;
}
.bc-btn i,.bc-btn .lucide{ width:20px; height:20px; }
.bc-btn--whats{
  width:100%; min-height:48px; font-size:1rem;
  background: var(--brand); color:#fff;
  box-shadow: 0 6px 14px rgba(225,29,72,.25);
  margin-top:14px;
}
.bc-btn--whats:hover{ filter:brightness(1.05); transform: translateY(-1px); }

/* redes sociais */
.bc-socials{ display:grid; gap:12px; margin-top:6px; }
.bc-socials__btn{
  display:inline-flex; align-items:center; justify-content:flex-start;
  gap:10px; min-height:48px;
  padding:.6rem .8rem; border-radius:10px; color:#fff; text-decoration:none;
  border:1px solid var(--border);
  background: color-mix(in srgb, var(--panel) 92%, transparent);
}
.bc-socials__btn:hover{ border-color: color-mix(in srgb, var(--brand) 45%, transparent); }

/* linha inferior */
.bc-footer__bottom{ margin-top:12px; }
.bc-footer__bottom-inner{
  width: 90dvw; max-width: 1200px;
  display:flex; align-items:center; justify-content:space-between;
  color: var(--muted); font-size:.92rem; padding: 0 6px; margin: 0 auto;
}
.bc-footer__muted{ opacity:.85; }

/* ===== Breakpoints ===== */
@media (max-width: 1100px){
  .bc-footer__grid{ grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 900px){
  .bc-footer__grid{ grid-template-columns: repeat(2, 1fr); }
  .bc-footer__col--about{ padding-top: 0; } /* não precisa compensar em 2 colunas */
}
@media (max-width: 640px){
  .bc-footer__grid{ grid-template-columns: 1fr; }
  .bc-footer__title{ margin-bottom: 10px; }
}