.elementor-1104 .elementor-element.elementor-element-a2f319d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1104 .elementor-element.elementor-element-2f60a6d{padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* CSS pour le shortcode [erre_footer] — À coller dans Elementor >
   Avancé > CSS personnalisé (ou dans le CSS global du thème, le footer
   étant commun à toutes les pages).
   Couleurs héraldiques (fond noir, accent or) — chrome global,
   indépendant du système de palette par section. */

.erre-footer {
  background: var(--noir, #0c0703);
  color: rgba(255,255,255,.7);
  padding: 50px 28px 28px;
}
.erre-footer-inner { max-width: 1200px; margin: 0 auto; }

.erre-footer-top {
  display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px;
  margin-bottom: 40px;
}

/* ---- Bloc marque ---- */
.erre-footer-logo { display: flex; align-items: center; gap: 12px; text-decoration: none !important; margin-bottom: 14px; }
.erre-footer-logo-img { width: 48px; height: 48px; object-fit: contain; flex-shrink: 0; filter: drop-shadow(0 1px 2px rgba(0,0,0,.3)); }
.erre-footer-logo-badge {
  width: 48px; height: 48px; border-radius: 12px; background: var(--vert, #29450c);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.erre-footer-logo-badge svg { width: 24px; height: 24px; stroke: #fff; fill: none; }
.erre-footer-logo-title { font-family: 'Playfair Display', serif; font-size: 24px; font-weight: 900; color: var(--blanc, #fff); line-height: 1.1; }
.erre-footer-logo-sub { font-size: 11px; font-weight: 800; color: var(--or, #fdcc06); text-transform: uppercase; letter-spacing: 1px; margin-top: 2px; }
.erre-footer-desc { font-size: 13px; line-height: 1.7; color: rgba(255,255,255,.6); }

/* ---- Colonnes de liens ---- */
.erre-footer-col h4 {
  font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: 1px;
  color: var(--blanc, #fff); margin: 0 0 14px;
}
.erre-footer-col ul { list-style: none; margin: 0; padding: 0; }
.erre-footer-col ul li { margin-bottom: 10px; }
.erre-footer-col ul li a {
  display: flex; align-items: center; gap: 8px;
  color: rgba(255,255,255,.65); font-size: 13px; font-weight: 600;
  text-decoration: none !important; transition: color .2s;
}
.erre-footer-col ul li a svg { width: 14px; height: 14px; stroke: rgba(255,255,255,.4); fill: none; flex-shrink: 0; transition: stroke .2s; }
.erre-footer-col ul li a:hover { color: var(--or, #fdcc06); }
.erre-footer-col ul li a:hover svg { stroke: var(--or, #fdcc06); }

/* ---- Barre du bas ---- */
.erre-footer-bottom {
  border-top: 1px solid rgba(255,255,255,.1); padding-top: 22px;
  display: flex; justify-content: space-between; align-items: flex-start;
  flex-wrap: wrap; gap: 16px;
}
.erre-footer-legal { font-size: 12px; color: rgba(255,255,255,.55); display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.erre-footer-legal a { color: rgba(255,255,255,.55); text-decoration: none !important; transition: color .2s; }
.erre-footer-legal a:hover { color: var(--or, #fdcc06); }
.erre-footer-sep { color: rgba(255,255,255,.3); }

.erre-footer-right { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.erre-footer-socials { display: flex; gap: 10px; }
.erre-footer-social-btn {
  width: 36px; height: 36px; background: rgba(255,255,255,.1); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  text-decoration: none !important; transition: all .2s;
}
.erre-footer-social-btn svg { width: 17px; height: 17px; stroke: rgba(255,255,255,.7); fill: none; }
.erre-footer-social-btn:hover { background: var(--or, #fdcc06); }
.erre-footer-social-btn:hover svg { stroke: var(--noir, #0c0703); }

.erre-footer-credit { font-size: 11px; color: rgba(255,255,255,.35); }
.erre-footer-credit a { color: rgba(255,255,255,.5); font-weight: 700; text-decoration: none !important; }
.erre-footer-credit a:hover { color: var(--or, #fdcc06); }

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .erre-footer-top { grid-template-columns: 1fr 1fr; }
  .erre-footer-brand { grid-column: 1 / -1; }
  .erre-footer-bottom { flex-direction: column; align-items: flex-start; }
  .erre-footer-right { align-items: flex-start; }
}
@media (max-width: 600px) {
  .erre-footer-top { grid-template-columns: 1fr; }
}/* End custom CSS */