/* ===== SHARED SITE FOOTER — synchronisé avec index.html ===== */
.container{max-width:1280px;margin:0 auto;padding:0 max(clamp(1rem,4vw,2rem),env(safe-area-inset-right,0px)) 0 max(clamp(1rem,4vw,2rem),env(safe-area-inset-left,0px))}

.footer{background:var(--navy-dark);color:rgba(255,255,255,.8)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:3rem;padding:clamp(3rem,6vw,5rem) 0 4rem}
.footer-logo{height:60px;width:auto;margin-bottom:1.25rem;object-fit:contain}
.footer-tagline{font-family:var(--font-serif),serif;font-style:italic;font-size:1rem;color:var(--gold);margin-bottom:.75rem;line-height:1.5}
.footer-desc{font-size:.875rem;line-height:1.7;color:rgba(255,255,255,.6);margin-bottom:1.5rem;max-width:300px}
.footer-social{display:flex;gap:.75rem}
.social-icon{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);transition:var(--tr)}
.social-icon:hover{background:var(--gold);border-color:var(--gold);color:var(--dark);transform:translateY(-3px)}
.footer-heading{font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:1.25rem}
.footer-links{display:flex;flex-direction:column;gap:.6rem;list-style:none}
.footer-links a{font-size:.875rem;color:rgba(255,255,255,.65);transition:var(--tr)}
.footer-links a:hover{color:white;padding-left:4px}
.footer-contact{display:flex;flex-direction:column;gap:.75rem;list-style:none}
.footer-contact li{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:rgba(255,255,255,.65)}
.footer-contact svg{flex-shrink:0;margin-top:2px;color:var(--gold)}
.footer-contact a{color:rgba(255,255,255,.65);transition:var(--tr)}
.footer-contact a:hover{color:white}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:1.25rem 0 calc(1.25rem + env(safe-area-inset-bottom,0px));background:rgba(0,0,0,.2)}
.footer-bottom-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.8rem;color:rgba(255,255,255,.4)}
.footer-bottom-links{display:flex;gap:1.5rem}
.footer-bottom-links a{color:rgba(255,255,255,.4);transition:var(--tr)}
.footer-bottom-links a:hover{color:var(--gold)}

@media(max-width:1024px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
}
@media(max-width:768px){
  .footer-grid{grid-template-columns:1fr;gap:0;padding:1.5rem 0 0}
  .footer-desc{max-width:100%}
  .footer-bottom-inner{flex-direction:column;text-align:center;gap:.75rem}
  .footer-bottom-links{justify-content:center}
  .footer-brand{text-align:center;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}
  .footer-brand .footer-social{justify-content:center}

  .footer-accordion{border-top:1px solid rgba(255,255,255,.08)}
  .footer-accordion:last-child{border-bottom:1px solid rgba(255,255,255,.08)}
  .footer-acc-toggle{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:1rem 0;margin-bottom:0;user-select:none}
  .footer-acc-chevron{transition:transform .3s ease;color:var(--gold);flex-shrink:0}
  .footer-accordion.open .footer-acc-chevron{transform:rotate(180deg)}
  .footer-acc-body{max-height:0;overflow:hidden;transition:max-height .35s ease,opacity .3s ease,padding .3s ease;opacity:0;padding-bottom:0}
  .footer-accordion.open .footer-acc-body{max-height:400px;opacity:1;padding-bottom:1.2rem}
}
@media(min-width:1440px){
  .container{max-width:1360px}
  .footer-grid{grid-template-columns:2.2fr 1fr 1fr 1.6fr}
}
