/* ============================================================
   LOCATION EN FÊTE — CSS FOOTER
   Fichier : lef-footer.css (thème enfant)
   ============================================================ */

/* ========== BARRE RÉSERVATION (autres pages, pas accueil) ========== */
.lef-resbar{
  background:linear-gradient(135deg,#3AA6B9 0%,#2997AA 100%);
  padding:3rem 4rem;position:relative;overflow:hidden;
}
.lef-resbar::before{
  content:'';position:absolute;inset:0;
  background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg fill='%23ffffff' fill-opacity='0.06'%3E%3Ccircle cx='30' cy='30' r='3'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.lef-resbar-inner{max-width:1300px;margin:0 auto;position:relative;z-index:2;}
.lef-resbar-title{text-align:center;color:#fff;font-size:1.4em;font-weight:800;margin-bottom:2rem;}
.lef-resbar-title span{color:#FFEAA7;}
.lef-resbar-steps{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;}
.lef-resbar-step{
  display:flex;align-items:center;gap:.7rem;
  background:rgba(255,255,255,.12);backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.15);border-radius:14px;
  padding:.8rem 1.4rem;color:#fff;transition:all .3s;text-decoration:none;
}
.lef-resbar-step:hover{background:rgba(255,255,255,.2);transform:translateY(-2px);color:#fff;}
.lef-resbar-num{
  width:36px;height:36px;background:rgba(255,255,255,.2);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:.85em;font-weight:800;flex-shrink:0;
}
.lef-resbar-step strong{font-size:.85em;display:block;}
.lef-resbar-step small{font-size:.7em;color:rgba(255,255,255,.65);display:block;}
@media(max-width:768px){
  .lef-resbar{padding:2rem 1.5rem;}
  .lef-resbar-steps{flex-direction:column;max-width:400px;margin:0 auto;}
  .lef-resbar-title{font-size:1.1em;}
}

/* ========== FOOTER ========== */
.lef-ft-a{background:#1a2428;color:#fff;padding:0;}
.lef-ft-a *{margin:0;padding:0;box-sizing:border-box;}
.lef-ft-a a{text-decoration:none;transition:color .3s;}

/* ---- Bandeau CTA Chapiteaux en Fête ---- */
.lef-ft-a .ft-cta-a{
  background:linear-gradient(135deg,rgba(58,166,185,.18),rgba(255,107,107,.1));
  border-bottom:1px solid rgba(255,255,255,.08);
  padding:2rem 4rem;
}
.lef-ft-a .ft-cta-a-inner{
  max-width:1350px;margin:0 auto;
  display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap;
}
.lef-ft-a .ft-cta-a-text{color:rgba(255,255,255,.8);font-size:1em;}
.lef-ft-a .ft-cta-a-text strong{color:#fff;}
.lef-ft-a .ft-cta-a-text span{color:rgba(255,255,255,.5);font-size:.9em;}
.lef-ft-a .ft-cta-a-btn{
  display:inline-block;padding:.75rem 2rem;
  background:#3AA6B9;color:#fff !important;border-radius:50px;
  font-weight:600;font-size:.88em;
  transition:all .3s;box-shadow:0 4px 15px rgba(58,166,185,.3);text-decoration:none !important;
}
.lef-ft-a .ft-cta-a-btn:hover{background:#2997AA;transform:translateY(-2px);color:#fff !important;}

/* ---- Bloc principal ---- */
.lef-ft-a .ft-main{padding:4rem 4rem 3rem;max-width:1350px;margin:0 auto;display:grid;grid-template-columns:1.8fr 1fr 1fr 1.2fr;gap:3rem;}

/* 🔧 LOGO FOOTER PNG */
.lef-ft-a .ft-brand-logo{margin-bottom:1.5rem;}
.lef-ft-a .ft-brand-logo img{
  width:180px !important;height:auto !important;display:block;
}
.lef-ft-a .ft-brand p{font-size:.82em;color:rgba(255,255,255,.5);line-height:1.7;max-width:300px;margin-bottom:1.5rem;}

/* Réseaux sociaux */
.lef-ft-a .ft-socials{display:flex;gap:.5rem;}
.lef-ft-a .ft-socials a{
  width:38px;height:38px;background:rgba(255,255,255,.07);border-radius:10px;
  display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);
  font-size:.85em;transition:all .3s;
}
.lef-ft-a .ft-socials a:hover{background:#3AA6B9;color:#fff;transform:translateY(-2px);}
.lef-ft-a .ft-socials svg{width:16px;height:16px;fill:currentColor;}

/* Colonnes liens */
.lef-ft-a .ft-col h4{font-size:.9em;font-weight:700;margin-bottom:1rem;color:#fff;position:relative;padding-bottom:.6rem;}
.lef-ft-a .ft-col h4::after{content:'';position:absolute;bottom:0;left:0;width:25px;height:2px;background:#3AA6B9;border-radius:2px;}
.lef-ft-a .ft-col a{display:block;color:rgba(255,255,255,.5);font-size:.82em;margin-bottom:.6rem;padding-left:0;transition:all .3s;}
.lef-ft-a .ft-col a:hover{color:#3AA6B9;padding-left:4px;}

/* ---- Contact — icônes fines outline ---- */
.lef-ft-a .ft-contact-item{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:1rem;color:rgba(255,255,255,.6);font-size:.82em;line-height:1.6;}
.lef-ft-a .ft-contact-icon{
  width:32px;height:32px;min-width:32px;
  background:rgba(58,166,185,.12);border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.lef-ft-a .ft-contact-icon svg{
  width:15px;height:15px;
  fill:none;stroke:rgba(255,255,255,.6);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;
}
.lef-ft-a .ft-contact-item a{color:rgba(255,255,255,.7);}
.lef-ft-a .ft-contact-item a:hover{color:#3AA6B9;}

/* ---- Copyright ---- */
.lef-ft-a .ft-bottom{
  max-width:1350px;margin:0 auto;padding:1.5rem 4rem;
  border-top:1px solid rgba(255,255,255,.06);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;
}
.lef-ft-a .ft-bottom p{font-size:.72em;color:rgba(255,255,255,.25);}
.lef-ft-a .ft-bottom a{color:rgba(255,255,255,.35);font-size:.72em;}
.lef-ft-a .ft-bottom a:hover{color:#3AA6B9;}

/* ========== RESPONSIVE ========== */
@media(max-width:1100px){
  .lef-ft-a .ft-main{grid-template-columns:1fr 1fr;gap:2.5rem;}
}
@media(max-width:768px){
  .lef-ft-a .ft-main{grid-template-columns:1fr;padding:3rem 2rem 2rem;gap:2rem;}
  .lef-ft-a .ft-bottom{padding:1.5rem 2rem;flex-direction:column;text-align:center;}
  .lef-ft-a .ft-cta-a{padding:1.5rem 2rem;}
  .lef-ft-a .ft-cta-a-inner{flex-direction:column;text-align:center;}
  .lef-ft-a .ft-brand-logo img{width:140px !important;}
}