/* Shared local adjustment: native links, controls and menu behavior stay intact. */
.night-nav-actions{display:contents}
@media(max-width:1240px){.night-nav .nav-tel{min-height:44px}.night-nav .nav-zones{display:none}}
@media(max-width:760px){
  .nav.night-nav .nav-inner{flex-wrap:wrap;gap:4px;white-space:normal}
  .night-nav .nav-spacer,.night-nav .nav-zones{display:none}
  .night-nav .brand{margin-right:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .night-nav .night-nav-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto;width:max-content;max-width:100%;margin-left:auto}
  .night-nav .night-nav-actions .nav-tel{min-width:0;min-height:44px;margin:0;white-space:normal}
  .night-nav .night-nav-actions .burger{flex:0 0 44px;margin:0}
}
@media(max-width:360px){.nav.night-nav .nav-inner{column-gap:0}}
/* Leave reading space when the device is landscape or the keyboard is open. */
@media(max-width:1240px) and (max-height:400px){.nav.night-nav{position:relative}}
.night-menu-head{display:contents}
html.js .mm.night-menu{padding-top:0;scroll-padding-top:96px}
html.js .mm.night-menu .night-menu-head{display:block;position:sticky;top:0;z-index:2;flex:0 0 78px;height:78px;margin:0 -2rem 18px;background:#F7F7F5}

/* Jusqu'à 379px, garder logo, téléphone ET menu sur une ligne dans la pilule.
   Le logotype reste au minimum de 18px prévu par le book, les cibles à 44px. */
@media(max-width:379px){
  .nav.night-nav,.nav.night-nav.is-scrolled{padding-left:8px;padding-right:8px}
  .nav.night-nav .nav-inner,.nav.night-nav.is-scrolled .nav-inner{padding:6px;gap:4px}
  .nav.night-nav .brand{font-size:18px;margin-right:0;gap:6px}
  .nav.night-nav .nav-spacer{display:none}
  .nav.night-nav .nav-tel{font-size:12px;padding:8px 6px;gap:4px;margin:0 0 0 auto;min-height:44px}
}


/* Les téléphones conservent la graisse Mono disponible, y compris dans le menu. */
.night-menu a[href^="tel:"],.night-nav a[href^="tel:"]{font-family:var(--mono);font-weight:400;font-variant-numeric:tabular-nums}

/* Six acces sur la barre de bureau : garder les cibles de 44px et les deux
   actions sans rogner le CTA. Le menu mobile prend le relais sous 1241px. */
@media(min-width:1241px){
  .night-nav .nav-inner{gap:0;padding-left:14px}
  .night-nav .brand{margin-right:12px}
  .night-nav .nl{padding-inline:8px;font-size:14px}
  .night-nav .nav-tel{padding-inline:7px;gap:6px}
  .night-nav .nav-cta{padding-inline:12px}
}
.night-nav .nav-zones-hub{grid-column:1/-1;border-top:1px solid rgba(10,10,11,.1);margin-top:3px;padding-top:12px}

/* La pilule reste légère ; ses commandes gardent un repère clavier visible. */
.night-nav :is(.brand,.nl,.nav-tel,.nav-cta,.burger):focus-visible,
.night-menu :is(.mm-close,a.ml,.mm-foot a):focus-visible{
  outline:2px solid #0A0A0B;outline-offset:3px}
.night-nav .nav-cta{position:relative;overflow:hidden}
.night-nav .nav-cta::before{content:"";position:absolute;inset:0 auto 0 0;width:26%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);
  transform:translateX(-160%) skewX(-12deg);animation:aecShine 5s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.night-nav .nav-cta::before{display:none}}

/* Logotype original du handoff : image 400 × 60, présentée à 133 × 20. */
.night-nav .brand,.night-menu .brand,.ftr-brandcol .brand{gap:9px;line-height:1;flex:none}
.night-nav .brand img,.night-menu .brand img,.ftr-brandcol .brand img{display:block;width:133px;height:20px;object-fit:contain}
.ftr-brandcol .brand img{height:21px;width:auto}
@media(max-width:760px){
  .nav.night-nav .brand{gap:6px}
  .nav.night-nav .brand img{width:112px;height:auto}
}

/* La grille de la maquette appartient à la pilule entière, pas au seul bouton. */
@media(min-width:1241px){
  .night-nav .nav-inner{gap:1px;padding:9px 12px 9px 18px}
  .night-nav.is-scrolled .nav-inner{padding:7px 9px 7px 16px}
  .night-nav .brand{margin-right:10px}
  .night-nav .nl{display:inline-flex;align-items:center;min-height:44px;padding:9px 13px;font-size:14.5px;font-weight:400;color:#55565A}
  .night-nav .nav-zones{position:static;align-self:stretch;align-items:center}
  .night-nav .nav-zones-trigger{min-height:44px}
  .night-nav .nav-tel{padding:8px 12px;gap:7px}
  .night-nav .nav-cta{flex:0 0 auto;padding:12px 20px;font-size:14.5px;min-height:44px}
  .night-nav .nav-zones::after{left:0;right:0;top:100%;width:auto;height:12px;transform:none}
  .night-nav .nav-zones-menu{left:0;right:0;top:calc(100% + 12px);min-width:0;width:auto;margin:0;transform:none;
    grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr) minmax(230px,1.2fr);gap:22px 26px;
    padding:24px 26px 22px;border:1px solid rgba(255,255,255,.95);border-radius:24px;
    background:rgba(255,255,255,.94);backdrop-filter:blur(30px) saturate(1.8);-webkit-backdrop-filter:blur(30px) saturate(1.8);
    box-shadow:0 30px 70px -30px rgba(10,10,11,.45),inset 0 1px 0 #fff}
  .night-nav .nav-zones-col b{margin:0 0 10px;font-size:10.5px}
  .night-nav .nav-zones-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
  .night-nav .nav-zones-col:nth-child(2) .nav-zones-links{grid-template-columns:1fr}
  .night-nav .nav-zones-col .nav-zones-links a{padding:7px 0;border-radius:0;font-size:14.5px;font-weight:500;color:#0A0A0B;white-space:normal}
  .night-nav .nav-zones-col .nav-zones-links a:is(:hover,:focus-visible){padding-left:6px;background:transparent}
  .night-nav .nav-zones-offer{position:relative;display:flex;min-height:190px;flex-direction:column;justify-content:flex-end;
    overflow:hidden;border-radius:18px;padding:18px;background:#0A0A0B;color:#fff;white-space:normal;isolation:isolate}
  .night-nav .nav-zones-offer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;z-index:-2}
  .night-nav .nav-zones-offer::before{content:"";position:absolute;inset:0;z-index:-1;
    background:linear-gradient(180deg,rgba(10,10,11,0) 20%,rgba(10,10,11,.85) 100%)}
  .night-nav .nav-zones-offer-content{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
  .night-nav .nav-zones-offer-badge{border-radius:99px;padding:5px 10px;background:#ADE83C;color:#0A0A0B;
    font:400 10px/1.3 var(--mono);letter-spacing:.09em}
  .night-nav .nav-zones-offer strong{font-size:19px;font-weight:600;letter-spacing:-.03em;line-height:1.1;color:#fff}
  .night-nav .nav-zones-offer-content>span:last-child{font-size:13px;line-height:1.4;color:rgba(255,255,255,.82)}
  .night-nav .nav-zones-offer:is(:hover,:focus-visible){background:#0A0A0B;color:#fff;transform:translateY(-3px)}
  .night-nav .nav-zones-hub{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;
    border:1px solid rgba(10,10,11,.12);border-radius:14px;margin:0;padding:14px 18px;background:rgba(255,255,255,.7);
    color:#0A0A0B;font-size:14.5px;font-weight:600}
  .night-nav .nav-zones-hub::after{content:"→";font-family:var(--mono)}
  .night-nav .nav-zones-hub:is(:hover,:focus-visible){border-color:#0A0A0B;background:#fff}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .night-nav .nav-zones-menu{background:#fff}
}
@media(max-width:1240px){
  .night-menu .night-menu-head .brand{display:inline-flex;position:relative;z-index:1;margin:20px 0 0 8px}
  .night-menu .night-menu-head .mm-close{top:12px;right:8px}
  .night-menu .mm-offer{font-weight:600}
}
@media(max-width:379px){
  .nav.night-nav .brand{gap:6px}
  .nav.night-nav .brand img{width:112px;height:auto}
}
