/* ===== Nouveau menu CHR-Restauration (barre + panneaux) ===== */
#nm{--nmb:#033e66;--nmb2:#0b5d93;--nmb3:#e8f1f8;--nmo:#e8590c;--nmo2:#fff1e8;--nmg:#5b6875;--nmt:#dde5ec;position:relative;font-family:inherit}
#nm *{box-sizing:border-box}
#nm a{text-decoration:none}
#nm .nm-in{max-width:1280px;margin:auto}
/* barre */
#nm-bar{background:var(--nmb);position:relative;z-index:3}
#nm-bar > .nm-in{display:flex;align-items:stretch;padding:0 8px}
#nm-btn{display:flex;align-items:center;gap:9px;background:var(--nmo);color:#fff;font-weight:700;font-size:14px;padding:0 15px;border:0;cursor:pointer;font-family:inherit;white-space:nowrap}
#nm-btn:hover,#nm-btn.on{background:#c94a08}
.nm-burger{width:18px;height:12px;position:relative;display:inline-block}
.nm-burger:before,.nm-burger:after,.nm-burger i{content:"";position:absolute;left:0;right:0;height:2px;background:#fff;border-radius:2px}
.nm-burger:before{top:0}.nm-burger i{top:5px}.nm-burger:after{bottom:0}
#nm-u1{display:flex;flex:1;align-items:stretch;justify-content:space-between;overflow:hidden;padding-left:4px}
#nm-u1 a{display:flex;align-items:center;gap:6px;color:#fff;font-size:13.5px;font-weight:500;padding:12px 5px;white-space:nowrap;position:relative}
#nm-u1 a svg{width:22px;height:22px;opacity:.95;flex:none}
#nm-u1 a:after{content:"";position:absolute;left:6px;right:6px;bottom:0;height:3px;background:var(--nmo);transform:scaleX(0);transition:transform .18s}
#nm-u1 a:hover,#nm-u1 a.on{background:var(--nmb2);color:#fff}
#nm-u1 a:hover:after,#nm-u1 a.on:after{transform:scaleX(1)}
#nm-u2{display:flex;align-items:center;gap:6px;padding-left:8px}
#nm-u2 a{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;padding:5px 12px;border-radius:20px;white-space:nowrap;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
#nm-u2 a svg{width:20px;height:20px;color:#ffb07a}
#nm-u2 a:hover,#nm-u2 a.on{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.8)}
/* voile */
#nm-voile{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(3,30,50,.35);opacity:0;pointer-events:none;transition:opacity .15s;z-index:-1}
#nm-voile.on{opacity:1;pointer-events:auto}
/* panneaux */
#nm .nm-pan{position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 18px 40px rgba(0,0,0,.18);border-top:3px solid var(--nmo);display:none;z-index:4;max-height:calc(100vh - 120px);overflow:auto}
#nm .nm-pan.on{display:block;animation:nmApp .16s ease-out}
@keyframes nmApp{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
#nm-mega > .nm-in{display:grid;grid-template-columns:1fr 300px}
#nm .nm-cols{padding:22px 26px 18px;columns:4 200px;column-gap:28px}
#nm .nm-grp{break-inside:avoid;margin-bottom:18px}
#nm .nm-grp h4{margin:0 0 7px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--nmo);font-weight:700}
#nm .nm-grp a{display:block;font-size:14px;padding:4px 0;color:#24323f}
#nm .nm-grp a:hover{color:var(--nmb2);text-decoration:underline}
#nm .nm-cote{background:var(--nmb3);padding:20px;border-left:1px solid var(--nmt)}
#nm .nm-cote h5{margin:0 0 10px;font-size:13px;color:var(--nmb)}
#nm .nm-top{display:flex;gap:10px;align-items:center;background:#fff;border-radius:8px;padding:8px;margin-bottom:8px;border:1px solid var(--nmt)}
#nm .nm-top:hover{border-color:var(--nmb2);box-shadow:0 2px 8px rgba(3,62,102,.12)}
#nm .nm-top img,#nm .nm-noimg{width:54px;height:54px;object-fit:contain;mix-blend-mode:multiply;flex:none}
#nm .nm-top span{font-size:13.5px;font-weight:600;color:var(--nmb)}
#nm .nm-aide{margin-top:14px;background:var(--nmb);color:#fff;border-radius:8px;padding:14px;font-size:13px;line-height:1.45}
#nm .nm-aide b{font-size:17px;display:block;margin:4px 0 8px}
#nm .nm-aide a{display:inline-block;margin:4px 4px 0 0;background:var(--nmo);color:#fff;padding:6px 10px;border-radius:5px;font-weight:600;font-size:12.5px}
#nm .nm-pied{grid-column:1/-1;border-top:1px solid var(--nmt);padding:10px 26px;font-size:13.5px;display:flex;justify-content:space-between;color:var(--nmg)}
#nm .nm-pied a{color:var(--nmb2);font-weight:600}
/* tous nos rayons */
#nm-ray > .nm-in{display:grid;grid-template-columns:270px 1fr}
#nm-liste{background:#f6f9fb;border-right:1px solid var(--nmt);padding:8px 0}
#nm-liste a{display:flex;align-items:center;gap:10px;padding:9px 18px;font-size:14px;color:#24323f}
#nm-liste a svg{width:22px;height:22px;color:var(--nmb2);flex:none}
#nm-liste .nm-fl{margin-left:auto;color:#a0acb7}
#nm-liste a.on,#nm-liste a:hover{background:#fff;color:var(--nmb);font-weight:600;box-shadow:inset 3px 0 0 var(--nmo)}
#nm .nm-sep{border-top:1px solid var(--nmt);margin:6px 0}
#nm-raycols{padding:22px 26px 18px;columns:3 200px;column-gap:28px}
#nm-raycols .nm-rt{column-span:all;display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
#nm-raycols .nm-rt b{font-size:17px;color:var(--nmb)}
#nm-raycols .nm-rt a{color:var(--nmb2);font-weight:600;font-size:13.5px}
/* volet mobile */
#nm-tiroir{position:fixed;top:0;bottom:0;left:0;width:min(88vw,380px);background:#fff;z-index:1000;transform:translateX(-102%);transition:transform .25s;display:flex;flex-direction:column;box-shadow:4px 0 24px rgba(0,0,0,.25)}
#nm-tiroir.on{transform:none}
#nm .nm-tete{display:flex;align-items:center;gap:10px;background:var(--nmb);color:#fff;padding:14px 16px;font-weight:700;font-size:16px}
#nm .nm-tete button{background:none;border:0;color:#fff;font-size:22px;cursor:pointer;padding:0 4px;line-height:1}
#nm-tback{visibility:hidden}
#nm-ttitre{flex:1}
#nm-tcorps{overflow:auto;flex:1;-webkit-overflow-scrolling:touch}
#nm-tcorps a.nm-ml{display:flex;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid #eef2f5;font-size:15px;color:#1d2a36}
#nm-tcorps a.nm-ml svg{width:22px;height:22px;color:var(--nmb2);flex:none}
#nm-tcorps .nm-fl{margin-left:auto;color:#a0acb7}
#nm-tcorps .nm-h{padding:12px 18px 4px;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--nmo);font-weight:700}
#nm-tcorps .nm-tout{display:block;margin:12px 16px;text-align:center;background:var(--nmo2);color:var(--nmo);font-weight:700;padding:11px;border-radius:6px}
#nm-tcorps .nm-raccs{display:flex;gap:8px;padding:10px 16px 16px;flex-wrap:wrap}
#nm-tcorps .nm-raccs a{font-size:13px;padding:7px 11px;border:1px solid var(--nmt);border-radius:20px;color:var(--nmb)}
#nm-voile.mob{z-index:999}
@media (max-width:1270px){#nm-u1 a svg{display:none}}
@media (max-width:1100px){#nm-bar,#nm .nm-pan{display:none!important}}
/* ===== Barre mobile / tablette (<= 1100 px) ===== */
@media (max-width:1100px){
#nav #dhbg{display:flex;align-items:stretch;justify-content:space-between;height:auto;min-height:54px;padding:0;background:#033e66;border-bottom:3px solid #e8590c;position:relative;z-index:10}
#nav button#hbg{display:flex;align-items:center;justify-content:center;background:#e8590c;color:#fff;border:0;padding:0;width:56px;min-width:56px;height:auto;cursor:pointer}
#nav button#hbg span:last-child{display:none}
#nav button#hbg:active,#nav button#hbg.on{background:#c94a08}
#nav button#hbg .nm-burger{width:18px;height:12px}
#nav button#hbg .nm-burger:before,#nav button#hbg .nm-burger:after,#nav button#hbg .nm-burger i{height:2px;background:#fff;border-radius:2px}
#nav .nm-mico{display:flex;align-items:stretch}
#nav #dhbg .nm-mico a{position:static;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:auto;height:auto;min-width:58px;padding:6px 8px;color:#fff;text-decoration:none;font-size:11px;line-height:1}
#nav #dhbg .nm-mico a:active,#nav #dhbg .nm-mico a.on{background:#0b5d93}
#nav #dhbg .nm-mico svg{width:24px;height:24px}
#nav #dhbg .nm-mico #mob-cart svg{color:#ffb07a}
#rchmob{background:#e8f1f8;padding:0 12px;box-sizing:border-box}
#rchmob form{display:flex;max-width:600px;margin:7px auto 0}
#rchmob input{flex:1;min-width:0;width:auto;margin:0;border:1px solid #c8d1da;border-radius:20px 0 0 20px;padding:6px 14px;font-size:15px;height:32px;box-sizing:border-box}
#rchmob button{margin:0;border:0;border-radius:0 20px 20px 0;background:#e8590c;color:#fff;font-size:14px;width:46px;height:32px;vertical-align:top;cursor:pointer}
}
@media (max-width:420px){
#nav button#hbg{width:50px;min-width:50px}
#nav #dhbg .nm-mico a{min-width:48px;padding:6px 4px;font-size:10px}
}

