.elementor-210 .elementor-element.elementor-element-a15cd5f{--display:flex;}.elementor-210 .elementor-element.elementor-element-0ed84e9{background-color:#000000;}/* Start custom CSS for html, class: .elementor-element-0ed84e9 */.custom-footer{
  --bg:#0f0f12; --panel:#16161b; --ink:#f4f6fb; --muted:#a8adbb;
  --accent:#2fb0ff; --stroke:#23232a;
  background:var(--bg); color:var(--ink);
  padding:28px 18px 20px; border-top:1px solid var(--stroke);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
.custom-footer a{ color:var(--ink); text-decoration:none; }
.custom-footer a:hover{ color:var(--accent); }

/* logo */
.footer-logo{ display:flex; justify-content:center; margin-bottom:16px; }
.footer-logo img{ height:42px; width:auto; display:block; }

/* grille principale */
.footer-content{
  display:grid; gap:18px;
  grid-template-columns: 1.2fr 1fr; /* desktop */
  background:var(--panel);
  border:1px solid var(--stroke);
  border-radius:14px;
  padding:16px;
}

/* colonne gauche */
.footer-title{
  font-weight:800; letter-spacing:.02em; margin:0 0 10px; font-size:18px;
}
.footer-form{ display:flex; gap:10px; flex-wrap:wrap; }
.footer-form input{
  flex:1 1 240px; min-width:200px;
  background:#0f1116; color:var(--ink);
  border:1px solid #262833; border-radius:999px;
  padding:10px 14px; outline:none;
}
.footer-form button{
  background:linear-gradient(180deg,#2fb0ff 0%,#178de0 100%);
  color:#071521; font-weight:800;
  border:none; border-radius:999px; padding:10px 16px; cursor:pointer;
}
.footer-form button:hover{ filter:brightness(1.06); }

/* colonne droite */
.footer-right .footer-heading{
  margin:0 0 8px; font-weight:800; font-size:16px; color:#fff;
}
.footer-right ul{ list-style:none; padding:0; margin:0; }
.footer-right li{ margin:8px 0; }
.footer-right a{ color:var(--muted); }
.footer-right a:hover{ color:#fff; }

/* bas de footer */
.footer-bottom{
  display:flex; gap:12px; align-items:center; justify-content:space-between;
  margin-top:14px; border-top:1px solid var(--stroke); padding-top:12px;
  flex-wrap:wrap;
}
.footer-bottom p{ margin:0; color:var(--muted); font-size:13px; }
.legal-links{ list-style:none; display:flex; gap:14px; padding:0; margin:0; }
.legal-links a{ color:var(--muted); font-size:13px; }
.legal-links a:hover{ color:#fff; }

/* accessibilité */
.sr-only{
  position:absolute!important; height:1px;width:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px); white-space:nowrap;
}

/* responsive */
@media (max-width:900px){
  .footer-content{ grid-template-columns:1fr; }
  .footer-form{ gap:8px; }
}
@media (max-width:520px){
  .custom-footer{ padding:22px 14px 16px; }
  .footer-form input{ min-width:0; flex:1 1 100%; }
  .footer-form button{ width:100%; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; gap:10px; }
}/* End custom CSS */