/* =========================
   FOOTER – LB EDITORIAL
========================= */

:root{
  --lb-deep-sage:#4a635d;
  --lb-cream: rgba(255,250,248,.96);
  --lb-cream-soft: rgba(255,250,248,.82);
  --lb-line: rgba(255,250,248,.14);
  --lb-line-strong: rgba(255,250,248,.22);
}

.lb-footer{
  background: var(--lb-deep-sage);
  color: var(--lb-cream);
}

.lb-footer a{
  color: inherit;
  text-decoration: none;
}

.lb-footer-wrap{
  width: min(var(--lb-container-xl), calc(100% - (var(--lb-gutter) * 2)));
  margin: 0 auto;
  padding: 24px 0 14px;
}

/* TOP */
.lb-footer-top{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding-bottom:14px;
  border-bottom:1px solid var(--lb-line);
}

.lb-footer-brand-title{
  font-family:"Playfair Display", serif;
  font-size:17px;
  margin:0 0 5px;
  color: var(--lb-cream)
}

.lb-footer-brand-sub{
  font-size:12.5px;
  line-height:1.55;
  color:var(--lb-cream-soft);
  max-width:520px;
  margin:0;
}

/* MID */
.lb-footer-mid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:20px;
  padding:16px 0 12px;
  
  background:rgba(255,250,248,.06);
  
}

.lb-footer-block-title{
  font-size:11.5px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,250,248,.78);
  margin-bottom:8px;
  
  background:rgba(255,250,248,.06);
  
  
}

.lb-footer-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  list-style:none;
  padding:0;
  margin:0;
  
  
  
  background:rgba(255,250,248,.06);
  
  
}

.lb-footer-nav a{
  display:inline-flex;
  align-items:center;
  gap:0px;
  font-size:13.5px;
  padding:5px 9px;
  border-radius:999px;
  
  
 
  
  
}

.lb-footer-nav a:hover{
  background:rgba(255,250,248,.06);
}

.lb-footer-dot{
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--lb-deep-sage);
}

/* NOTE */
.lb-footer-note{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--lb-line);
  font-size:12.2px;
  line-height:1.6;
  color:rgba(255,250,248,.78);
}

/* CONTATO */
.lb-footer-email{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13.5px;
  padding:8px 10px;
  border-radius:12px;
  border:1px solid rgba(255,250,248,.16);
  background:rgba(255,250,248,.04);
}

.lb-footer-mail-ico svg{
  width:18px;
  height:18px;
  stroke:rgba(255,250,248,.92);
  fill:none;
  stroke-width:1.7;
}

.lb-footer-social{
  display:flex;
  gap:10px;
  margin-top:10px;
}

.lb-social{
  width:36px;
  height:36px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,250,248,.18);
  background:rgba(255,250,248,.04);
  transition: transform .18s ease, background .18s ease;
}

.lb-social:hover{
  transform: translateY(-2px);
  background:rgba(255,250,248,.08);
}

.lb-social svg{
  width:18px;
  height:18px;
  stroke:rgba(255,250,248,.92);
  fill:none;
  stroke-width:1.7;
}

/* BOTTOM */
.lb-footer-bottom{
  border-top:1px solid var(--lb-line-strong);
  padding-top:10px;
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:11.5px;
  color:rgba(255,250,248,.72);
}

.lb-footer-bottom strong{
  color: rgba(255,250,248,.92);
  font-weight: 600;
}

/* RESPONSIVO */
@media (max-width:900px){
  .lb-footer-mid{ grid-template-columns:1fr; }
}

@media (max-width:720px){
  .lb-footer-wrap{ padding: 22px 0 14px; }
  .lb-footer-top,
  .lb-footer-bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}

/* =========================
   CONSISTÊNCIA ENTRE TEMPLATES
========================= */
.lb-footer,
footer.lb-footer{
  background: #4a635d !important;
  color: rgba(255,250,248,.96) !important;
}

.lb-footer *{
  background-color: transparent;
}
