
/* =========================================================
   LFA 2026 - CLEAN SITE FINAL
   Objectif : btn_billet indépendant, nav homogène, pas de chevauchement texte/logo/nav.
   ========================================================= */
html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;min-width:0!important;}
*{box-sizing:border-box;}
body #header{position:relative!important;z-index:9000!important;background:#fff!important;overflow:visible!important;min-width:0!important;}
body #header .shell{position:relative!important;overflow:visible!important;box-sizing:border-box!important;min-width:0!important;}

/* Le logo peut chevaucher l'intro : c'est le seul chevauchement voulu */
body #logo{z-index:9800!important;overflow:visible!important;}

/* NAV : on garde sa position existante mais on neutralise les anciennes règles incohérentes */
body .lfa2026-nav-wrap,
.lfa2026-nav-wrap{z-index:9600!important;overflow:visible!important;box-sizing:border-box!important;}
body .lfa2026-mainnav,
.lfa2026-mainnav{box-sizing:border-box!important;overflow:visible!important;}
body .lfa2026-mainnav ul,
.lfa2026-mainnav ul{box-sizing:border-box!important;margin:0!important;padding:0!important;list-style:none!important;}
body .lfa2026-mainnav li,
.lfa2026-mainnav li{float:none!important;box-sizing:border-box!important;position:relative!important;}
body .lfa2026-mainnav a,
.lfa2026-mainnav a{box-sizing:border-box!important;}

/* Bouton recréé : aucun ancien .btn1 ne doit s'appliquer */
a.btn1{display:none!important;}
#btn_billet,
a.btn_billet{
  position:absolute!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  padding:10px 15px!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  max-width:none!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-decoration:none!important;
  z-index:99999!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:1.02em!important;
  font-weight:bold!important;
  line-height:1!important;
  color:#fff!important;
  background:#976a46!important;
  border:4px solid #fff!important;
  border-radius:24px!important;
  box-shadow:3px 3px 12px rgba(0,0,0,.45)!important;
  text-shadow:none!important;
}
#btn_billet:hover,a.btn_billet:hover{background:#996633!important;color:#fff!important;box-shadow:1px 1px 4px rgba(0,0,0,.45)!important;}

/* Intro toutes pages */
body #intro{max-height:300px!important;overflow:hidden!important;box-sizing:border-box!important;}
body #intro img{max-width:100%;}
body .lfa2026-carousel{max-height:300px!important;box-sizing:border-box!important;}

/* Grille texte : neutralise les anciens floats/heights qui croisaient les textes */
body #main{clear:both!important;overflow:visible!important;min-width:0!important;}
body #main .shell{min-width:0!important;overflow:visible!important;box-sizing:border-box!important;}
body .lfa2026-box-grid{
  width:min(1200px,100%)!important;
  max-width:1200px!important;
  margin:0 auto!important;
  padding:18px 12px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:start!important;
  clear:both!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
body .lfa2026-box-grid>.box,
body .lfa2026-box-grid>.last-box,
body #main .shell>.box,
body #main .shell>.last-box{
  float:none!important;
  clear:none!important;
  position:relative!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding-left:0;
  padding-right:0;
  overflow:visible!important;
  box-sizing:border-box!important;
}
body #main .entry,
body #main .news,
body #main .news ul,
body #main .news li,
body #main .post-data,
body #main p,
body #main h1,
body #main h2,
body #main h3{
  float:none!important;
  clear:none!important;
  position:relative!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
body #main .news ul{padding-left:0!important;margin-left:0!important;}
body #main .news li{display:block!important;}
body #main img{max-width:100%!important;height:auto!important;}

/* Fancybox : au-dessus de toute la page */
body .fancybox-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:100000!important;overflow:auto!important;}
body .fancybox-wrap{position:fixed!important;z-index:100001!important;max-width:96vw!important;max-height:92vh!important;}
body .fancybox-close{display:block!important;visibility:visible!important;opacity:1!important;z-index:100010!important;top:-18px!important;right:-18px!important;}
body .fancybox-inner{overflow:auto!important;-webkit-overflow-scrolling:touch!important;}

@media(max-width:1100px){
  body .lfa2026-box-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #btn_billet,a.btn_billet{font-size:.92em!important;padding:8px 12px!important;border-width:3px!important;}
}

@media(max-width:760px){
  body #header{height:auto!important;min-height:0!important;padding-bottom:0!important;}
  body #header .shell{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;padding-left:0!important;padding-right:0!important;}
  body #logo{position:relative!important;left:auto!important;right:auto!important;top:auto!important;margin:0 auto -18px auto!important;text-align:center!important;transform:none!important;}
  body #logo a{margin-left:auto!important;margin-right:auto!important;}

  body .lfa2026-nav-wrap,
  .lfa2026-nav-wrap{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding:0 8px!important;
    order:2!important;
    box-shadow:none!important;
  }
  body .lfa2026-menu-toggle,
  .lfa2026-menu-toggle{display:block!important;width:100%!important;}
  body .lfa2026-mainnav,
  .lfa2026-mainnav{display:none!important;width:100%!important;}
  body .lfa2026-nav-wrap.lfa2026-expanded .lfa2026-mainnav{display:block!important;}
  body .lfa2026-mainnav>ul{display:block!important;width:100%!important;}
  body .lfa2026-mainnav li{display:block!important;width:100%!important;}
  body .lfa2026-mainnav a{display:block!important;width:100%!important;white-space:normal!important;text-align:left!important;}
  body .lfa2026-sub{position:static!important;width:100%!important;max-width:none!important;min-width:0!important;display:none!important;box-shadow:none!important;}
  body .lfa2026-mainnav li.lfa2026-open>.lfa2026-sub{display:block!important;}

  #btn_billet,
  a.btn_billet{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    transform:none!important;
    order:3!important;
    margin:7px auto 8px auto!important;
    padding:8px 14px!important;
    font-size:.90em!important;
    border-width:3px!important;
    z-index:9700!important;
  }

  body #intro{max-height:300px!important;min-height:0!important;}
  body .lfa2026-box-grid{display:block!important;width:100%!important;padding:14px 10px!important;}
  body .lfa2026-box-grid>.box,
  body .lfa2026-box-grid>.last-box,
  body #main .shell>.box,
  body #main .shell>.last-box{display:block!important;width:100%!important;max-width:620px!important;margin:0 auto 16px auto!important;}
}
