/* ByFab menu V27, styles autonomes. */
.byfab-header details.bf-mega{position:static}
.byfab-header .bf-menu-panel{left:auto;right:var(--gutter,22px);top:calc(100% - 1px);width:min(960px,calc(100% - 44px));max-height:calc(100svh - 120px);overflow:auto;padding:24px;background:#0F1A38;color:#fff;border:1px solid #BDD0F54d;border-top:3px solid #BDD0F5;border-radius:0 0 12px 12px;box-shadow:0 24px 55px #0006;gap:18px;animation:bf-menu-enter .18s ease-out}
.bf-menu-title{font-size:16px;color:#BDD0F5;font-weight:600;letter-spacing:.02em}
.bf-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0}
.byfab-header .bf-menu-card{display:flex;align-items:center;gap:12px;min-width:0;padding:10px;background:#1E2D5A66;border:1px solid #BDD0F526;border-radius:8px;text-decoration:none;transition:background .18s,border-color .18s,transform .18s}
.byfab-header .bf-menu-card img{width:82px;height:72px;flex:0 0 82px;object-fit:cover;border-radius:5px}
.bf-menu-card span{display:block;min-width:0}
.bf-menu-card strong{display:block;font-size:15px;font-weight:600;line-height:1.3;color:#fff}
.bf-menu-card small{display:block;font-size:12px;line-height:1.45;color:#BDD0F5;margin-top:5px}
.byfab-header .bf-menu-card:hover{background:#1E2D5A;border-color:#BDD0F5;transform:translateY(-2px);text-decoration:none}
.byfab-header .bf-menu-panel a:focus-visible{outline:3px solid #BDD0F5;outline-offset:3px}
.bf-menu-models{grid-template-columns:repeat(4,minmax(0,1fr))}
.byfab-header .bf-menu-models .bf-menu-card{display:flex;flex-direction:column;align-items:stretch}
.byfab-header .bf-menu-models .bf-menu-card img{width:100%;height:115px;flex:auto;object-fit:cover}
.bf-menu-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;padding-top:16px;border-top:1px solid #BDD0F530}
.byfab-header .bf-menu-links a{font-size:14px;min-height:44px;display:inline-flex;align-items:center;color:#BDD0F5}
.byfab-header .bf-menu-links .bf-menu-devis{margin-left:auto;padding:9px 16px;border-radius:5px;background:#BDD0F5;color:#0F1A38;font-weight:600;text-decoration:none}
@keyframes bf-menu-enter{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(max-width:1050px) and (min-width:761px){.bf-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bf-menu-models{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){
 .byfab-header .bf-menu-panel{position:relative;inset:auto;width:100%;max-width:100%;max-height:none;padding:14px;margin-top:12px;border-radius:8px;box-shadow:none;overflow:visible}
 .bf-menu-grid,.bf-menu-models{grid-template-columns:minmax(0,1fr);gap:10px}
 .byfab-header .bf-menu-card,.byfab-header .bf-menu-models .bf-menu-card{flex-direction:row;align-items:center;padding:9px;min-width:0}
 .byfab-header .bf-menu-card img,.byfab-header .bf-menu-models .bf-menu-card img{width:76px;height:66px;flex:0 0 76px}
 .bf-menu-card strong{font-size:15px}.bf-menu-card small{font-size:12px}
 .bf-menu-links{gap:7px 15px}.byfab-header .bf-menu-links .bf-menu-devis{margin-left:0;width:100%;justify-content:center}
 .byfab-header nav{max-width:100%;max-height:calc(100svh - 90px);overflow-y:auto;overflow-x:hidden}
}
@media(prefers-reduced-motion:reduce){.byfab-header .bf-menu-panel{animation:none}.byfab-header .bf-menu-card{transition:none}.byfab-header .bf-menu-card:hover{transform:none}}
