/* Header + navigation + footer (classes .hdr-* / .ftr-*) — header en position:sticky, pas de padding-top sur body */

/* ---------- Lien d'évitement ---------- */
.hdr-skip{position:absolute;inset-inline-start:var(--sp-4);top:-60px;z-index:200;background:var(--plum);color:#fff;padding:.6em 1em;border-radius:var(--r-pill);font-weight:600;transition:top var(--dur) var(--ease)}
.hdr-skip:focus{top:var(--sp-3)}

/* ---------- Barre ---------- */
.hdr{position:sticky;top:0;z-index:90;height:var(--header-h);background:rgba(250,246,239,.94);border-bottom:1px solid transparent;transition:transform .45s var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}
/* rétraction au scroll vers le bas (transform uniquement), retour au scroll vers le haut */
.hdr.is-hidden{transform:translateY(calc(-100% - 2px));box-shadow:none}
.hdr.is-scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(30,26,32,.02),0 6px 18px rgba(30,26,32,.05);background:rgba(250,246,239,.97)}
.hdr-bar{height:100%;display:flex;align-items:center;gap:var(--sp-5)}

.hdr-brand{display:inline-flex;align-items:center;gap:var(--sp-3);min-height:44px;flex-shrink:0}
.hdr-logo{width:40px;height:40px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px var(--line)}
.hdr-word{font-family:var(--f-display);font-weight:500;font-size:1.22rem;letter-spacing:.16em;color:var(--ink);white-space:nowrap}

/* ---------- Liens desktop ---------- */
.hdr-nav{display:flex;align-items:center;gap:var(--sp-2);margin-inline-start:var(--sp-4)}
.hdr-link{position:relative;display:inline-flex;align-items:center;min-height:44px;padding-inline:var(--sp-3);font-size:var(--fs-sm);font-weight:500;color:var(--ink-2);transition:color var(--dur) var(--ease)}
/* soulignement qui se dessine depuis le début de ligne et se retire vers la fin (sens selon la langue) */
.hdr-link::after{content:"";position:absolute;inset-inline:var(--sp-3);bottom:8px;height:1.5px;background:var(--plum);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
[dir="rtl"] .hdr-link::after{transform-origin:left}
.hdr-link:hover{color:var(--ink)}
.hdr-link:hover::after,.hdr-link:focus-visible::after{transform:scaleX(1);transform-origin:left}
[dir="rtl"] .hdr-link:hover::after,[dir="rtl"] .hdr-link:focus-visible::after{transform-origin:right}
.hdr-link[aria-current="page"]{color:var(--plum)}
.hdr-link[aria-current="page"]::after{transform:scaleX(1)}

/* ---------- Actions ---------- */
.hdr-actions{display:flex;align-items:center;gap:var(--sp-3);margin-inline-start:auto}
.hdr-status{display:inline-flex;align-items:center;gap:.5em;font-size:var(--fs-xs);color:var(--ink-3);white-space:nowrap;margin:0}
.hdr-status[hidden]{display:none}
.hdr-dot{width:7px;height:7px;border-radius:50%;background:var(--ink-3);flex-shrink:0}
.hdr-status.is-open .hdr-dot{background:var(--wasabi);box-shadow:0 0 0 3px rgba(141,163,87,.18)}
.hdr-status.is-open{color:var(--ink-2)}
.hdr-cta{min-height:44px;padding:.55em 1.25em;font-size:var(--fs-sm)}

.hdr-ico{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}

.hdr-cart{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--ink);transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}
.hdr-cart:hover{background:var(--plum-soft);color:var(--plum-deep)}
.hdr-badge{position:absolute;top:3px;inset-inline-end:1px;min-width:19px;height:19px;padding-inline:5px;border-radius:var(--r-pill);background:var(--plum);color:#fff;font-size:.7rem;font-weight:700;line-height:19px;text-align:center;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--rice)}
.hdr-badge[hidden]{display:none}
.hdr-badge{animation:hdr-pop .4s var(--ease)}
.hdr-badge.is-bump{animation:hdr-bump .55s var(--ease)}
.hdr-badge.is-drop{animation:hdr-drop .4s var(--ease)}
.hdr-cart.is-shake .hdr-ico{animation:hdr-shake .55s var(--ease)}
@keyframes hdr-pop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes hdr-bump{0%{transform:translateY(0) scale(1)}30%{transform:translateY(-5px) scale(1.3)}60%{transform:translateY(0) scale(.92)}100%{transform:scale(1)}}
@keyframes hdr-drop{0%{transform:scale(1)}40%{transform:scale(.78)}100%{transform:scale(1)}}
@keyframes hdr-shake{0%,100%{transform:rotate(0)}25%{transform:rotate(-9deg)}55%{transform:rotate(6deg)}80%{transform:rotate(-2deg)}}

/* ---------- Sélecteur de langue « עב · FR · EN · RU » ---------- */
.hdr-lang{display:inline-flex;align-items:center;gap:0;font-size:var(--fs-xs);font-weight:500;letter-spacing:.06em;color:var(--ink-3);white-space:nowrap}
.hdr-lang-cur,.hdr-lang-alt{position:relative;display:inline-grid;place-items:center;min-width:30px;min-height:44px;padding-inline:.15em}
.hdr-lang-cur{color:var(--plum);font-weight:700}
.hdr-lang-alt{color:var(--ink-3);transition:color var(--dur) var(--ease)}
.hdr-lang-alt::after{content:"";position:absolute;inset-inline:25%;bottom:11px;height:1px;background:currentColor;transform:scaleX(0);transition:transform .35s var(--ease)}
.hdr-lang-alt:hover{color:var(--ink)}
.hdr-lang-alt:hover::after,.hdr-lang-alt:focus-visible::after{transform:scaleX(1)}
.hdr-lang-sep{width:3px;height:3px;border-radius:50%;background:var(--line);flex-shrink:0}
@media (min-width:1024px) and (max-width:1279px){.hdr-actions > .hdr-status{display:none}}
@media (min-width:1024px) and (max-width:1139px){.hdr-word{display:none}}

/* ---------- Bouton menu (mobile) ---------- */
.hdr-burger{display:none;width:44px;height:44px;border-radius:50%;place-items:center;color:var(--ink)}
.hdr-burger-lines{position:relative;display:block;width:20px;height:10px}
.hdr-burger-lines span{position:absolute;inset-inline:0;height:1.5px;background:currentColor;border-radius:2px;transition:transform var(--dur) var(--ease),top var(--dur) var(--ease)}
.hdr-burger-lines span:first-child{top:0}
.hdr-burger-lines span:last-child{top:8.5px}
.hdr-burger[aria-expanded="true"] .hdr-burger-lines span:first-child{top:4.25px;transform:rotate(45deg)}
.hdr-burger[aria-expanded="true"] .hdr-burger-lines span:last-child{top:4.25px;transform:rotate(-45deg)}

/* ---------- Panneau mobile ---------- */
.hdr-panel{display:none}

@media (max-width:1023px){
  .hdr-nav,.hdr-cta,.hdr-actions > .hdr-status,.hdr-actions > .hdr-lang{display:none}
  .hdr-lang--panel{margin-top:var(--sp-3);font-size:var(--fs-sm);margin-inline-start:-.2em}
  .hdr-lang--panel .hdr-lang-cur,.hdr-lang--panel .hdr-lang-alt{min-width:44px}
  .hdr-burger{display:inline-grid}
  .hdr-actions{gap:var(--sp-1)}
  .hdr-word{font-size:1.08rem;letter-spacing:.14em}
  .hdr-logo{width:36px;height:36px}

  .hdr-panel{display:block;position:fixed;inset:var(--header-h) 0 0 0;z-index:89;background:var(--rice);border-top:1px solid var(--line);overflow-y:auto;overscroll-behavior:contain;
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s linear var(--dur)}
  .hdr.is-menu-open .hdr-panel{opacity:1;visibility:visible;transform:none;transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s}
  .hdr.is-menu-open{background:var(--rice);border-bottom-color:transparent;box-shadow:none}

  /* entrée en cascade des éléments du panneau */
  .hdr-plink,.hdr-panel-cta,.hdr-panel-info > *{opacity:0;transform:translateY(14px);transition:opacity .45s var(--ease),transform .5s var(--ease)}
  .hdr.is-menu-open .hdr-plink,.hdr.is-menu-open .hdr-panel-cta,.hdr.is-menu-open .hdr-panel-info > *{opacity:1;transform:none;transition-delay:calc(80ms + var(--hdr-i,0) * 55ms)}
  .hdr-panel-in{display:flex;flex-direction:column;min-height:100%;padding-block:var(--sp-6) calc(var(--sp-6) + env(safe-area-inset-bottom))}
  .hdr-panel-nav{display:flex;flex-direction:column}
  .hdr-plink{display:flex;align-items:center;min-height:64px;font-family:var(--f-display);font-size:clamp(1.8rem,1.2rem + 3vw,2.6rem);overflow-wrap:anywhere;font-weight:500;line-height:1.1;color:var(--ink);border-bottom:1px solid var(--line)}
  .hdr-plink[aria-current="page"]{color:var(--plum)}
  .hdr-plink[aria-current="page"]::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--plum);margin-inline-end:var(--sp-3)}
  .hdr-panel-cta{margin-top:var(--sp-6);width:100%}
  .hdr-panel-info{margin-top:auto;padding-top:var(--sp-7);display:flex;flex-direction:column;gap:var(--sp-1)}
  .hdr-status--panel{margin-bottom:var(--sp-2);font-size:var(--fs-sm)}
  .hdr-pinfo{display:flex;align-items:center;gap:var(--sp-3);min-height:44px;margin:0;color:var(--ink-2);font-size:var(--fs-md)}
  .hdr-pinfo .hdr-ico{width:20px;height:20px;color:var(--plum)}
  a.hdr-pinfo:hover{color:var(--plum-deep)}
}
html.hdr-lock,html.hdr-lock body{overflow:hidden}

@media (prefers-reduced-motion:reduce){
  .hdr-panel,.hdr.is-hidden{transform:none!important}
  .hdr-plink,.hdr-panel-cta,.hdr-panel-info > *{transform:none!important;transition-delay:0s!important}
  .hdr-badge,.hdr-badge.is-bump,.hdr-badge.is-drop,.hdr-cart.is-shake .hdr-ico{animation:none}
}

/* ================= Footer ================= */
.ftr-order{white-space:nowrap}
.ftr-hours li span:first-child{min-width:0}
.ftr{background:var(--nori);color:var(--rice);font-size:var(--fs-sm)}
.ftr-in{display:grid;grid-template-columns:1fr 1fr 1.35fr .8fr;gap:var(--sp-6);padding-block:var(--sp-7) var(--sp-6)}
.ftr-brand{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-2)}
.ftr-logo{width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px rgba(250,246,239,.18)}
.ftr-word{font-family:var(--f-display);font-size:1.35rem;letter-spacing:.18em;margin-top:var(--sp-2)}
.ftr-tag{color:rgba(250,246,239,.6);font-size:var(--fs-xs);letter-spacing:.08em}
.ftr-h{font-family:var(--f-body);font-size:var(--fs-xs);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(250,246,239,.55);margin-bottom:var(--sp-3)}
.ftr-line{display:block;color:rgba(250,246,239,.88);line-height:1.7}
.ftr-tel{display:inline-flex;align-items:center;min-height:44px;font-weight:500;color:var(--rice);font-variant-numeric:tabular-nums}
/* soulignement qui se dessine (sens selon la langue) */
.ftr-tel,.ftr-links a,.ftr-order{background:linear-gradient(currentColor,currentColor) no-repeat right 0 bottom 10px / 0 1px;transition:background-size .45s var(--ease),color var(--dur) var(--ease)}
[dir="rtl"] .ftr-tel,[dir="rtl"] .ftr-links a,[dir="rtl"] .ftr-order{background-position:left 0 bottom 10px}
.ftr-tel:hover,.ftr-links a:hover,.ftr-order:hover,.ftr-tel:focus-visible,.ftr-links a:focus-visible,.ftr-order:focus-visible{color:var(--plum-soft);background-size:100% 1px;background-position:left 0 bottom 10px}
[dir="rtl"] .ftr-tel:hover,[dir="rtl"] .ftr-links a:hover,[dir="rtl"] .ftr-order:hover,[dir="rtl"] .ftr-tel:focus-visible,[dir="rtl"] .ftr-links a:focus-visible,[dir="rtl"] .ftr-order:focus-visible{background-position:right 0 bottom 10px}
.ftr-hours,.ftr-links{list-style:none;margin:0;padding:0}
.ftr-hours li{display:flex;justify-content:space-between;gap:var(--sp-4);padding-block:.3em;border-bottom:1px solid rgba(250,246,239,.1);color:rgba(250,246,239,.88)}
.ftr-hours li:last-child{border-bottom:0}
.ftr-hours li span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums;color:rgba(250,246,239,.7)}
.ftr-links{display:flex;flex-direction:column}
.ftr-links a{display:inline-flex;align-items:center;min-height:36px;color:rgba(250,246,239,.88)}
.ftr-bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4);padding-block:var(--sp-4) calc(var(--sp-4) + env(safe-area-inset-bottom));border-top:1px solid rgba(250,246,239,.12);color:rgba(250,246,239,.55);font-size:var(--fs-xs)}
.ftr-bottom p{margin:0}
.ftr-order{display:inline-flex;align-items:center;min-height:44px;color:rgba(250,246,239,.85);font-weight:500}
.ftr :focus-visible{outline-color:var(--plum-soft)}

@media (max-width:1023px){
  .ftr-in{grid-template-columns:1fr 1fr;gap:var(--sp-6) var(--sp-5)}
  .ftr-brand{grid-column:1/-1}
}
@media (max-width:560px){
  .ftr-in{grid-template-columns:1fr;gap:var(--sp-5);padding-block:var(--sp-6) var(--sp-5)}
  .ftr-links{flex-direction:row;flex-wrap:wrap;gap:0 var(--sp-5)}
  .ftr-links a{min-height:44px}
}
