:root{
    /* l'ardoise remplace le bois : plus aucun brun dans la palette de base */
    --wood:#1a1b1d; --wood-2:#25272b; --wood-3:#303338;
    /* neutralises avec le reste : ces deux cremes chaudes servaient encore
       de fond a des modales et de couleur de texte sur l'ardoise */
    --cream:#f5f6f7; --cream-2:#e9ebed;
    --gold:#f1f2f3; --gold-soft:#ffffff;
    --ink:#1a1b1d; --muted:#676c72; --wa:#25d366;
    --shadow:0 20px 60px rgba(40,25,15,.18);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{font-family:'Heebo',sans-serif;color:var(--ink);background:var(--cream);line-height:1.7;}
  a{text-decoration:none;color:inherit;}
  img{max-width:100%;display:block;}
  .serif{font-family:'Frank Ruhl Libre',serif;}
  .fr{font-family:'Cormorant Garamond',serif;letter-spacing:.12em;}
  .wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
  section{position:relative;}

  header{position:fixed;inset-inline:0;top:0;z-index:50;transition:.3s;}
  header.solid{background:rgba(58,35,24,.96);box-shadow:0 6px 30px rgba(0,0,0,.25);}
  nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 24px;max-width:1180px;margin:0 auto;}
  nav .brand{display:flex;align-items:center;gap:12px;color:var(--wood);}
  nav .brand img{height:44px;width:44px;border-radius:8px;object-fit:cover;}
  nav .brand b{font-family:'Frank Ruhl Libre',serif;font-size:20px;font-weight:700;}
  nav ul{display:flex;gap:20px;list-style:none;align-items:center;}
  nav ul a{color:var(--wood);font-weight:500;font-size:15px;opacity:.9;transition:.2s;cursor:pointer;}
  nav ul a:hover{opacity:1;color:var(--gold);}
  header.solid nav .brand, header.solid nav ul a{color:var(--cream);}
  header.solid nav ul a:hover{color:var(--gold-soft);}
  nav ul.open a{color:var(--cream);}
  nav .cta{background:var(--gold);color:var(--wood);padding:9px 20px;border-radius:30px;font-weight:700;}
  nav .cta:hover{background:var(--gold-soft);transform:translateY(-1px);}
  .lang{background:none;border:1.5px solid var(--wood);color:var(--wood);border-radius:30px;padding:7px 14px;font-weight:700;font-size:13px;cursor:pointer;font-family:inherit;transition:.2s;}
  .lang:hover{background:var(--wood);color:var(--cream);}
  header.solid .lang{border-color:var(--gold-soft);color:var(--gold-soft);}
  header.solid .lang:hover{background:var(--gold-soft);color:var(--wood);}
  .burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px;}
  .burger span{width:26px;height:2px;background:var(--wood);border-radius:2px;}
  header.solid .burger span{background:var(--cream);}

  .hero{min-height:100vh;display:flex;align-items:stretch;background:var(--cream);}
  .hero-grid{max-width:1240px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;align-items:center;}
  .hero-left{padding:110px 44px 60px;text-align:center;}
  .hero-logo{width:172px;height:172px;border-radius:20px;object-fit:cover;margin:0 auto 22px;box-shadow:var(--shadow);}
  .hero-sub{font-family:'Cormorant Garamond',serif;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);font-size:clamp(14px,2.2vw,18px);margin-bottom:14px;}
  .hero-line{width:60px;height:2px;background:var(--gold);margin:0 auto 20px;}
  .hero-tag{font-size:clamp(1.05rem,2vw,1.3rem);color:#5a4a3a;max-width:440px;margin:0 auto 30px;font-weight:300;}
  .hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
  .hero-right{position:relative;min-height:60vh;overflow:hidden;}
  .hero-right img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.3s ease;}
  .hero-right img.on{opacity:1;}
  .hero-right img[src="img/photo6.jpg"]{object-position:center bottom;}
  .hero-dots{position:absolute;bottom:16px;inset-inline:0;display:flex;gap:8px;justify-content:center;z-index:3;}
  .hero-dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;transition:.2s;}
  .hero-dots i.on{background:var(--gold);transform:scale(1.15);}
  .btn-outline{border-color:var(--wood);color:var(--wood);} .btn-outline:hover{background:var(--wood);color:var(--cream);}
  .hero-social{display:flex;gap:14px;justify-content:center;margin-top:26px;}
  .hero-social a{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--wood);border:1.6px solid var(--wood);transition:.2s;}
  .hero-social a:hover{background:var(--wood);color:var(--cream);transform:translateY(-2px);}
  .hero-social svg{width:23px;height:23px;fill:currentColor;}
  @media(max-width:860px){ .hero-grid{grid-template-columns:1fr;} .hero-right{min-height:280px;} .hero-left{padding:96px 24px 44px;} }
  .btn{padding:15px 34px;border-radius:34px;font-weight:700;font-size:16px;transition:.25s;cursor:pointer;border:2px solid transparent;display:inline-flex;align-items:center;gap:10px;justify-content:center;}
  .btn-gold{background:var(--gold);color:var(--wood);} .btn-gold:hover{background:var(--gold-soft);transform:translateY(-2px);box-shadow:0 12px 30px rgba(198,155,87,.4);}
  .btn-ghost{border-color:var(--cream);color:var(--cream);} .btn-ghost:hover{background:var(--cream);color:var(--wood);}
  .btn-wa{background:var(--wa);color:#0b3d24;} .btn-wa:hover{background:#1fbe5a;transform:translateY(-2px);}
  .kosher{position:fixed;top:50%;inset-inline-start:0;transform:translateY(-50%);writing-mode:vertical-rl;background:var(--wood);color:var(--gold-soft);font-weight:900;letter-spacing:.35em;padding:18px 9px;font-size:14px;z-index:40;border-radius:0 10px 10px 0;box-shadow:3px 3px 12px rgba(40,25,15,.28);}

  .sec{padding:96px 0;}
  .sec-head{text-align:center;max-width:760px;margin:0 auto 48px;}
  .sec-head .kicker{font-family:'Cormorant Garamond',serif;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);font-size:15px;margin-bottom:10px;}
  .sec-head h2{font-family:'Frank Ruhl Libre',serif;font-size:clamp(2rem,5vw,3rem);font-weight:900;color:var(--wood);margin-bottom:16px;}
  .sec-head p{color:var(--muted);font-size:17px;}
  .divider{width:70px;height:3px;background:var(--gold);margin:14px auto 0;border-radius:3px;}

  /* MENU / commande */
  .menu{background:var(--cream);}
  .mcat{margin-bottom:40px;}
  .mcat-head{display:flex;align-items:center;gap:16px;margin-bottom:18px;}
  .mcat-head img{width:64px;height:64px;border-radius:12px;object-fit:cover;box-shadow:var(--shadow);}
  .mcat-head h3{font-family:'Frank Ruhl Libre',serif;font-size:1.6rem;color:var(--wood);}
  .mcat-head span{font-family:'Cormorant Garamond',serif;letter-spacing:.12em;color:var(--gold);font-size:14px;display:block;}
  .mitems{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .mitem{background:#fff;border:1px solid var(--cream-2);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 14px rgba(40,25,15,.04);}
  .mitem .mi-info{flex:1;min-width:0;}
  .mitem .mi-name{font-weight:600;color:var(--ink);}
  .mitem .mi-price{color:var(--gold);font-weight:700;font-family:'Frank Ruhl Libre',serif;}
  .mitem .mi-add{background:var(--wood);color:var(--cream);border:none;width:38px;height:38px;border-radius:50%;font-size:22px;cursor:pointer;flex-shrink:0;transition:.2s;line-height:1;}
  .mitem .mi-add:hover{background:var(--gold);color:var(--wood);transform:scale(1.08);}
  .mitem .qty{display:flex;align-items:center;gap:10px;flex-shrink:0;}
  .mitem .qty button{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--gold);background:#fff;color:var(--wood);font-size:18px;cursor:pointer;line-height:1;}
  .mitem .qty b{min-width:20px;text-align:center;}

  /* DELIVERY band */
  .delivery-band{background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--wood);}
  .delivery-band .wrap{display:flex;align-items:center;gap:26px;padding:40px 24px;flex-wrap:wrap;justify-content:center;text-align:center;}
  .delivery-band .db-ic{font-size:50px;line-height:1;}
  .delivery-band h3{font-family:'Frank Ruhl Libre',serif;font-size:1.7rem;margin-bottom:4px;}
  .delivery-band p{font-size:16px;max-width:560px;opacity:.92;}
  @media(max-width:600px){.delivery-band .wrap{flex-direction:column;gap:16px;}}

  .about{background:var(--cream-2);}
  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
  .about-grid img{border-radius:16px;box-shadow:var(--shadow);height:100%;object-fit:cover;min-height:420px;}
  .about-txt h3{font-family:'Frank Ruhl Libre',serif;font-size:2rem;color:var(--wood);margin-bottom:18px;}
  .about-txt p{color:#5a4a3a;margin-bottom:16px;font-size:17px;}
  .about-feats{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px;}
  .feat{background:#fff;border:1px solid var(--cream-2);border-radius:12px;padding:14px 18px;flex:1;min-width:120px;text-align:center;box-shadow:0 6px 18px rgba(40,25,15,.05);}
  .feat b{display:block;font-family:'Frank Ruhl Libre',serif;font-size:1.4rem;color:var(--gold);}
  .feat span{font-size:13px;color:var(--muted);}

  .gallery{background:var(--cream);}
  .g-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
  .g-grid img{height:260px;width:100%;object-fit:cover;border-radius:10px;transition:.3s;}
  .g-grid img:hover{filter:brightness(1.08);transform:scale(1.02);}
  /* ---- Catalogue épicerie (fiches produit) ---- */
  .rayons{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:26px 0 30px;}
  .rayon-btn{border:1.5px solid var(--gold);background:transparent;color:inherit;font-family:inherit;font-size:15px;font-weight:600;padding:9px 18px;border-radius:30px;cursor:pointer;transition:.2s;}
  .rayon-btn.on{background:var(--gold);color:#1a1b1d;}
  .prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
  .prod{border:1px solid rgba(255,255,255,.09);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;background:rgba(255,255,255,.02);}
  .prod-img{width:100%;aspect-ratio:3/4;height:auto;object-fit:contain;background:#fff;padding:8px;}
  .prod-body{padding:12px 13px 14px;display:flex;flex-direction:column;gap:6px;flex:1;}
  .prod-name{font-weight:700;font-size:15px;line-height:1.25;}
  .prod-desc{font-size:13px;line-height:1.45;opacity:.78;flex:1;}
  .prod-bot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;}
  .prod-price{font-weight:700;color:var(--gold);white-space:nowrap;}
  .prod-price small{display:block;font-weight:400;font-size:11px;opacity:.7;}
  .prod-add{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--gold);background:transparent;color:inherit;font-size:20px;line-height:1;cursor:pointer;transition:.2s;}
  .prod-add:hover{background:var(--gold);color:#1a1b1d;}
  .prod .qty{display:flex;align-items:center;gap:9px;}
  .prod .qty button{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--gold);background:transparent;color:inherit;font-size:17px;line-height:1;cursor:pointer;}
  .rayon-vide{text-align:center;opacity:.6;padding:40px 0;}
  /* ---- Sélection de produits sur l'accueil ---- */
  .selection{padding:56px 0 10px;}
  .selection .sec-head{margin-bottom:26px;}
  .sel-rail{display:flex;gap:14px;overflow-x:auto;padding:4px 20px 22px;scroll-snap-type:x mandatory;}
  .sel-rail::-webkit-scrollbar{height:6px;}
  .sel-rail::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:3px;}
  .sel-item{flex:none;width:190px;scroll-snap-align:start;border:1px solid rgba(255,255,255,.10);border-radius:14px;
    overflow:hidden;background:rgba(255,255,255,.03);cursor:pointer;transition:.2s;}
  .sel-item:hover{border-color:var(--gold);transform:translateY(-2px);}
  .sel-item img{width:100%;height:190px;object-fit:cover;background:#fff;display:block;}
  .sel-item .si-txt{padding:11px 12px 13px;}
  .sel-item .si-nom{font-size:14px;font-weight:700;line-height:1.25;}
  .sel-item .si-ray{font-size:12px;opacity:.55;margin-top:3px;}
  @media(max-width:700px){ .sel-item{width:150px;} .sel-item img{height:150px;} }

  /* ---- Bandeau des marques qui défile ---- */
  .marques{padding:52px 0 46px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);overflow:hidden;}
  .marques-titre{text-align:center;margin-bottom:26px;padding:0 20px;}
  .marques-titre b{display:block;font-size:clamp(22px,3.4vw,30px);font-weight:700;}
  .marques-titre span{display:block;margin-top:6px;opacity:.7;font-size:15px;}
  .marques-piste{display:flex;width:max-content;animation:defile 42s linear infinite;}
  .marques:hover .marques-piste{animation-play-state:paused;}
  .marques-serie{display:flex;align-items:center;gap:14px;padding-inline-end:14px;flex:none;}
  .marque{flex:none;padding:11px 22px;border:1px solid rgba(255,255,255,.14);border-radius:26px;
    font-size:16px;letter-spacing:.3px;white-space:nowrap;background:rgba(255,255,255,.03);}
  @keyframes defile{ from{transform:translateX(0)} to{transform:translateX(-50%)} }
  @media(max-width:700px){ .marque{font-size:14px;padding:9px 17px;} .marques{padding:40px 0 34px;} }

  /* ---- Entrée du marché : recherche + cartes de rayon ---- */
  .marche-intro{max-width:640px;margin:0 auto 30px;text-align:center;}
  .marche-intro p{opacity:.8;font-size:15px;line-height:1.6;}
  .boutique-recherche{position:relative;max-width:560px;margin:0 auto 34px;}
  .boutique-recherche input{width:100%;padding:15px 20px 15px 46px;border-radius:30px;border:1.5px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.04);color:inherit;font-family:inherit;font-size:16px;}
  .boutique-recherche input::placeholder{color:rgba(239,233,219,.45);}
  .boutique-recherche input:focus{outline:none;border-color:var(--gold);}
  .boutique-recherche .loupe{position:absolute;inset-inline-start:18px;top:50%;transform:translateY(-50%);opacity:.5;font-size:17px;}
  .rayons-cartes{display:grid;gap:14px;}
  .rayon-carte{display:grid;grid-template-columns:200px 1fr;align-items:stretch;border:1px solid rgba(255,255,255,.10);
    border-radius:16px;overflow:hidden;background:rgba(255,255,255,.03);cursor:pointer;transition:.25s;text-align:start;
    font-family:inherit;color:inherit;padding:0;width:100%;}
  .rayon-carte:hover{border-color:var(--gold);transform:translateY(-2px);}
  .rayon-carte img{width:100%;height:100%;min-height:150px;object-fit:cover;background:#fff;}
  .rayon-carte .rc-txt{padding:24px 26px;display:flex;flex-direction:column;justify-content:center;gap:4px;}
  .rayon-carte .rc-num{font-size:13px;color:var(--gold);letter-spacing:2px;}
  .rayon-carte .rc-nom{font-size:23px;font-weight:700;}
  .rayon-carte .rc-nb{font-size:13px;opacity:.6;}
  .rayon-carte .rc-fleche{margin-top:12px;font-size:20px;color:var(--gold);}
  .fil{display:flex;align-items:center;gap:10px;margin-bottom:22px;font-size:14px;}
  .fil button{background:none;border:none;color:var(--gold);font-family:inherit;font-size:14px;cursor:pointer;padding:0;}
  .fil span{opacity:.5;}
  @media(max-width:700px){ .rayon-carte{grid-template-columns:120px 1fr;} .rayon-carte .rc-txt{padding:16px 18px;} .rayon-carte .rc-nom{font-size:19px;} }

  /* Visionneuse photo (clic sur une image) */
  .prod-img{cursor:zoom-in;}
  .visio{position:fixed;inset:0;z-index:250;background:rgba(8,9,10,.92);display:none;align-items:center;justify-content:center;padding:24px;}
  .visio.on{display:flex;}
  .visio figure{margin:0;max-width:min(760px,92vw);text-align:center;}
  .visio img{max-width:100%;max-height:74vh;border-radius:14px;background:#fff;}
  .visio figcaption{margin-top:14px;color:var(--chalk,#f1f2f3);font-size:16px;font-weight:700;}
  .visio .v-desc{margin-top:6px;color:#b9b3a6;font-size:14px;line-height:1.5;max-width:560px;margin-inline:auto;}
  .visio .v-close{position:absolute;top:18px;inset-inline-end:22px;width:42px;height:42px;border-radius:50%;border:none;background:rgba(255,255,255,.12);color:#fff;font-size:20px;cursor:pointer;}
  .visio .v-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:none;background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer;}
  .visio .v-prev{inset-inline-start:18px;} .visio .v-next{inset-inline-end:18px;}
  @media(max-width:1000px){ .prod-grid{grid-template-columns:repeat(3,1fr);} }
  @media(max-width:760px){ .prod-grid{grid-template-columns:1fr 1fr;gap:12px;} }
  .epi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:36px;}
  .epi-grid img{width:100%;height:240px;object-fit:cover;border-radius:12px;transition:.3s;box-shadow:0 8px 24px rgba(0,0,0,.18);}
  .epi-grid img:hover{filter:brightness(1.08);transform:scale(1.02);}
  @media(max-width:860px){ .epi-grid{grid-template-columns:1fr 1fr;} }

  .infos{background:var(--cream-2);}
  .info-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;}
  .info-card{background:#fff;border-radius:16px;padding:34px;box-shadow:var(--shadow);border:1px solid var(--cream-2);}
  .info-card h3{font-family:'Frank Ruhl Libre',serif;font-size:1.6rem;color:var(--wood);margin-bottom:20px;}
  .hours-row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px dashed var(--cream-2);font-size:16px;}
  .hours-row:last-child{border-bottom:none;}
  .hours-row b{color:var(--wood);}
  .contact-line{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:16px;}
  .contact-line .ic{width:40px;height:40px;border-radius:50%;background:var(--cream-2);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}

  footer{background:var(--wood-2);color:var(--cream);text-align:center;padding:54px 24px 28px;}
  footer img{width:80px;border-radius:12px;margin:0 auto 18px;}
  footer .socials{display:flex;gap:16px;justify-content:center;margin:20px 0;}
  footer .socials a{width:44px;height:44px;border-radius:50%;background:rgba(214,155,87,.15);color:var(--gold-soft);display:flex;align-items:center;justify-content:center;font-size:20px;transition:.2s;}
  footer .socials a:hover{background:var(--gold);color:var(--wood);}
  footer small{color:rgba(246,239,228,.5);display:block;margin-top:14px;}
  .note{background:#fff7e6;border:1px dashed var(--gold);color:#8a6a2a;text-align:center;padding:10px;font-size:13px;}

  /* Panier flottant */
  .cart-fab{position:fixed;bottom:22px;inset-inline-end:22px;z-index:60;background:var(--wood);color:var(--cream);height:60px;padding:0 22px;border-radius:34px;display:flex;align-items:center;gap:10px;box-shadow:0 12px 34px rgba(40,25,15,.4);cursor:pointer;border:none;font-family:inherit;font-weight:700;font-size:16px;transition:.2s;}
  .cart-fab:hover{background:var(--wood-3);transform:translateY(-2px);}
  .cart-fab .cbadge{background:var(--gold);color:var(--wood);border-radius:50%;min-width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;padding:0 6px;}

  .pwa-banner{position:fixed;inset-inline:16px;bottom:92px;z-index:70;background:var(--wood);color:var(--cream);border-radius:16px;padding:13px 16px;display:none;align-items:center;gap:13px;box-shadow:0 16px 40px rgba(40,25,15,.5);max-width:500px;margin:0 auto;}
  .pwa-banner.show{display:flex;}
  .pwa-banner img{width:46px;height:46px;border-radius:10px;flex-shrink:0;}
  .pwa-banner .pwa-txt{flex:1;min-width:0;line-height:1.35;}
  .pwa-banner .pwa-txt b{display:block;font-family:'Frank Ruhl Libre',serif;font-size:15px;}
  .pwa-banner .pwa-txt span{font-size:12px;color:var(--cream-2);opacity:.85;}
  .pwa-banner .pwa-go{background:var(--gold);color:var(--wood);border:none;border-radius:24px;padding:10px 18px;font-weight:700;cursor:pointer;font-family:inherit;font-size:14px;white-space:nowrap;flex-shrink:0;}
  .pwa-banner .pwa-go:hover{background:var(--gold-soft);}
  .pwa-banner .pwa-x{background:none;border:none;color:var(--cream);opacity:.6;font-size:22px;cursor:pointer;line-height:1;flex-shrink:0;padding:0 2px;}

  /* Modal commande */
  .overlay{position:fixed;inset:0;background:rgba(30,18,10,.6);z-index:100;display:none;align-items:flex-start;justify-content:center;padding:24px;overflow-y:auto;}
  .overlay.on{display:flex;}
  .modal{background:var(--cream);border-radius:20px;max-width:560px;width:100%;margin:auto;box-shadow:0 30px 80px rgba(0,0,0,.4);overflow:hidden;}
  .modal-head{background:var(--wood);color:var(--cream);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;}
  .modal-head h3{font-family:'Frank Ruhl Libre',serif;font-size:1.4rem;}
  .modal-head .x{background:none;border:none;color:var(--cream);font-size:28px;cursor:pointer;line-height:1;}
  .modal-body{padding:24px;}
  .cart-list{margin-bottom:8px;}
  .cart-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px dashed var(--cream-2);}
  .cart-row .cr-name{flex:1;font-weight:500;}
  .cart-row .cr-qty{display:flex;align-items:center;gap:8px;}
  .cart-row .cr-qty button{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--gold);background:#fff;cursor:pointer;font-size:16px;line-height:1;}
  .cart-row .cr-price{min-width:64px;text-align:end;font-weight:700;color:var(--gold);}
  .cart-empty{text-align:center;color:var(--muted);padding:24px 0;}
  .cart-total{display:flex;justify-content:space-between;font-size:1.25rem;font-weight:700;font-family:'Frank Ruhl Libre',serif;color:var(--wood);padding:14px 0;border-top:2px solid var(--cream-2);margin-bottom:6px;}
  .form-lbl{font-weight:700;color:var(--wood);font-size:14px;margin:16px 0 6px;display:block;}
  .modal input,.modal textarea{width:100%;padding:12px 14px;border:1.5px solid var(--cream-2);border-radius:10px;font-family:inherit;font-size:15px;background:#fff;}
  .modal input:focus,.modal textarea:focus{outline:none;border-color:var(--gold);}
  .radios{display:flex;gap:10px;flex-wrap:wrap;}
  .radios label{flex:1;min-width:110px;border:1.5px solid var(--cream-2);border-radius:10px;padding:12px;text-align:center;cursor:pointer;font-weight:600;background:#fff;transition:.15s;font-size:14px;}
  .radios input{display:none;}
  .radios input:checked + span{color:var(--gold);}
  .radios label:has(input:checked){border-color:var(--gold);background:#fff9ef;box-shadow:0 0 0 2px rgba(198,155,87,.25);}
  .send-btn{width:100%;background:var(--wa);color:#08331d;border:none;padding:16px;border-radius:12px;font-weight:800;font-size:16px;cursor:pointer;margin-top:22px;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:10px;transition:.2s;}
  .send-btn:hover{background:#1fbe5a;}
  .send-btn:disabled{background:#c9c2b6;color:#fff;cursor:not-allowed;}
  #adresse-wrap{display:none;}

  @media(max-width:860px){
    nav ul{display:none;}
    .burger{display:flex;}
    nav ul.open{display:flex;position:absolute;top:70px;inset-inline:12px;flex-direction:column;background:var(--wood);padding:18px;border-radius:14px;gap:16px;box-shadow:var(--shadow);}
    .about-grid,.info-grid{grid-template-columns:1fr;gap:32px;}
    .g-grid{grid-template-columns:1fr 1fr;}
  }
  @media(max-width:560px){ .mitems{grid-template-columns:1fr;} .g-grid{grid-template-columns:1fr 1fr;} .sec{padding:60px 0;} .cart-fab{inset-inline:16px;width:auto;justify-content:center;} }

  /* ===================== THÈME ARDOISE / CRAIE ===================== */
  :root{
    --board:#1a1b1d; --board-2:#212327; --card:#25272b;
    /* craie neutre : un blanc casse sans jaune, pour rester strictement
       dans les deux tons ardoise et blanc */
    --chalk:#f1f2f3; --chalk-dim:#a9adb2;
    --line:rgba(239,233,219,.16);
    /* Deux tons seulement : l'ardoise et la craie. L'ancien dore (#e2c084)
       etait la seule teinte beige de la vitrine ; les accents se distinguent
       desormais par la police manuscrite et le contraste, pas par la couleur. */
    --gold:#f1f2f3; --gold-soft:#ffffff;
  }
  body{background:var(--board)!important;color:var(--chalk)!important;}
  body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.6;
    background:radial-gradient(120% 90% at 15% 0%,rgba(255,255,255,.04),transparent 55%),
               radial-gradient(120% 90% at 85% 100%,rgba(255,255,255,.03),transparent 55%);}
  section,footer{position:relative;z-index:1;}

  .hero,.menu,.gallery,.about,.infos,section,.sec{background:var(--board)!important;}
  .about,.infos{background:var(--board-2)!important;}

  /* police craie pour titres/intitulés */
  .hero-sub,.sec-head .kicker,.mcat-head span,.hero h1,.sec-head h2,.mcat-head h3,
  .about-txt h3,.info-card h3,nav .brand b,.delivery-band h3,.modal-head h3,.cart-total,.feat b{
    font-family:'Caveat','Frank Ruhl Libre',cursive!important;font-weight:700!important;}
  .sec-head h2{font-size:clamp(2.7rem,6.5vw,4.4rem)!important;line-height:1.05!important;letter-spacing:.5px;}
  .sec-head .kicker,.hero-sub{font-family:'Caveat',cursive!important;text-transform:none!important;letter-spacing:.02em!important;font-size:clamp(20px,3vw,27px)!important;color:var(--gold-soft)!important;}
  .mcat-head span{font-family:'Caveat',cursive!important;letter-spacing:normal!important;font-size:18px!important;color:var(--gold-soft)!important;}
  nav .brand b{font-size:26px!important;}

  h1,h2,h3,.sec-head h2,.mcat-head h3,.about-txt h3,.info-card h3,.mitem .mi-name,.hours-row b,.cart-total,.form-lbl{color:var(--chalk)!important;}
  .hero-tag,.about-txt p,.sec-head p,.feat span,.hours-row,.contact-line,.cart-empty{color:var(--chalk-dim)!important;}
  nav .brand,nav ul a{color:var(--chalk)!important;}
  nav ul a:hover{color:var(--gold-soft)!important;}
  .burger span{background:var(--chalk)!important;}
  .lang{border-color:var(--line)!important;color:var(--chalk)!important;}
  .lang:hover{background:var(--chalk)!important;color:var(--board)!important;}

  header.solid{background:rgba(16,17,19,.94)!important;box-shadow:0 6px 30px rgba(0,0,0,.5)!important;}
  header.solid nav .brand,header.solid nav ul a{color:var(--chalk)!important;}
  header.solid .lang{border-color:var(--gold-soft)!important;color:var(--gold-soft)!important;}

  .mitem,.feat,.info-card{background:var(--card)!important;border:1px solid var(--line)!important;box-shadow:none!important;}
  .mcat-head{border-bottom:1px dashed var(--line);padding-bottom:12px;}
  .mitem .qty button,.cart-row .cr-qty button{background:transparent!important;color:var(--chalk)!important;border-color:var(--gold-soft)!important;}
  .mitem .mi-add{background:var(--gold)!important;color:#1a1b1d!important;}
  .contact-line .ic{background:var(--card)!important;color:var(--gold-soft)!important;}

  .btn-outline,.btn-ghost{border-color:var(--chalk)!important;color:var(--chalk)!important;}
  .btn-outline:hover,.btn-ghost:hover{background:var(--chalk)!important;color:var(--board)!important;}
  .hero-social a{border-color:var(--line)!important;color:var(--chalk)!important;}
  .hero-social a:hover{background:var(--chalk)!important;color:var(--board)!important;}
  .hero-line,.divider{background:var(--gold-soft)!important;}
  .hero-dots i{background:rgba(239,233,219,.4)!important;} .hero-dots i.on{background:var(--gold-soft)!important;}
  .cart-fab{border:1.5px solid var(--gold-soft)!important;}

  .kosher{background:#0e0f10!important;color:var(--gold-soft)!important;}
  footer{background:#0e0f10!important;color:var(--chalk)!important;}

  .modal{background:var(--board-2)!important;color:var(--chalk)!important;}
  .modal-head{background:#0e0f10!important;}
  .modal input,.modal textarea{background:var(--card)!important;color:var(--chalk)!important;border-color:var(--line)!important;}
  .modal input::placeholder,.modal textarea::placeholder{color:var(--chalk-dim)!important;}
  .radios label{background:var(--card)!important;color:var(--chalk)!important;border-color:var(--line)!important;}
  .radios label:has(input:checked){border-color:var(--gold-soft)!important;background:rgba(226,192,132,.14)!important;box-shadow:0 0 0 2px rgba(226,192,132,.3)!important;}
  .cart-row,.hours-row,.cart-total{border-color:var(--line)!important;}
  .cart-row .cr-price,.mitem .mi-price{color:var(--gold-soft)!important;}
  .note{background:#26241d!important;border-color:var(--gold-soft)!important;color:var(--gold-soft)!important;}
  .pwa-banner{background:#0e0f10!important;}

  /* logo sans fond (transparent, sur l'ardoise) */
  .hero-logo{box-shadow:none!important;border-radius:0!important;object-fit:contain!important;background:transparent!important;width:min(360px,66vw)!important;height:auto!important;margin-bottom:14px!important;}
  .pwa-banner img{display:none!important;}
  nav .brand img{display:block!important;height:18px!important;width:auto!important;border-radius:0!important;object-fit:contain!important;background:transparent!important;}
  @media(max-width:860px){ nav .brand img{height:16px!important;} }
  footer img{object-fit:contain!important;border-radius:0!important;background:transparent!important;width:190px!important;height:auto!important;}

  /* MUR DE CRAIE (dessins façon boutique) sur l'accueil */
  .hero-grid{position:relative;z-index:1;}
  .chalk-wall{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:.24;}
  .chalk-wall svg{position:absolute;stroke:#f1f2f3;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
  .chalk-wall .w{position:absolute;font-family:'Caveat',cursive;color:#f1f2f3;white-space:nowrap;transform-origin:center;line-height:1;}
  @media(max-width:860px){ .chalk-wall{opacity:.14;} }

  /* HERO = mur de craie (photo réelle) plein cadre, logo net au-dessus */
  .hero{min-height:100vh!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;text-align:center!important;
    background:linear-gradient(180deg,rgba(14,15,17,.70) 0%,rgba(14,15,17,.40) 52%,rgba(14,15,17,.72) 100%),url('img/mur-craie.jpg') center/cover no-repeat!important;
    padding:88px 20px 64px!important;}
  .hero-content-c{position:relative;z-index:2;max-width:660px;width:100%;text-shadow:0 2px 18px rgba(0,0,0,.75),0 1px 4px rgba(0,0,0,.6);}
  .hero .hero-logo{width:min(420px,74vw)!important;height:auto!important;margin:0 auto 20px!important;filter:drop-shadow(0 3px 20px rgba(0,0,0,.7));}
  .hero .hero-sub{margin-bottom:12px;}
  @media(max-width:860px){
    .hero{padding:82px 18px 46px!important;}
    .hero .hero-logo{width:min(320px,80vw)!important;margin-bottom:16px!important;}
    .hero .hero-btns .btn{padding-left:22px!important;padding-right:22px!important;}
  }
  html{overflow-x:hidden;}

  /* Pop-up Plat du jour (ardoise/craie) */
  .plat-overlay{position:fixed!important;inset:0!important;z-index:200!important;align-items:center!important;background:rgba(8,9,10,.74)!important;padding:24px!important;overflow-y:auto!important;}
  .plat-card{position:relative;background:var(--card,#25272b);border:1px solid var(--line,#3a3d42);border-radius:22px;
    max-width:430px;width:100%;margin:auto;padding:38px 30px 30px;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.6);}
  .plat-x{position:absolute;top:12px;inset-inline-end:16px;background:none;border:none;color:var(--chalk,#f1f2f3);font-size:28px;line-height:1;cursor:pointer;opacity:.55;transition:.15s;}
  .plat-x:hover{opacity:1;}
  .plat-kicker{font-family:'Caveat',cursive;color:var(--gold-soft,#d9b982);font-size:27px;margin-bottom:4px;}
  .plat-img{width:100%;height:190px;border-radius:14px;background-size:cover;background-position:center;margin:6px 0 14px;}
  /* Affiche verticale (annonce) : montree en entier, jamais recadree. */
  .plat-img.affiche{height:auto;aspect-ratio:2/3;max-height:40vh;background-size:contain;background-repeat:no-repeat;}
  .plat-name{font-family:'Caveat',cursive;color:var(--chalk,#f1f2f3);font-weight:700;font-size:clamp(30px,7.4vw,44px);line-height:1.08;}
  .plat-line{width:84px;height:2px;background:var(--gold,#c69b57);opacity:.75;margin:14px auto;}
  .plat-desc{color:var(--chalk-dim,#c7c1b4);font-size:15px;line-height:1.55;margin:0 auto 14px;max-width:330px;}
  .plat-price{font-family:'Caveat',cursive;color:var(--gold-soft,#d9b982);font-size:32px;margin-bottom:18px;}
  .plat-btns{display:flex;flex-direction:column;gap:10px;}
  .plat-btns .btn{width:100%;}
  .plat-btns .btn-outline{background:transparent!important;border-color:var(--line,#3a3d42)!important;color:var(--chalk,#f1f2f3)!important;}
  .plat-btns .btn-outline:hover{background:var(--chalk,#f1f2f3)!important;color:var(--board,#1a1b1d)!important;}
  /* Bouton flottant clignotant "Plat du jour" */
  .plat-fab{position:fixed;bottom:24px;inset-inline-start:24px;z-index:60;display:inline-flex;align-items:center;gap:9px;
    background:var(--gold,#c69b57);color:var(--wood,#3a2318);border:none;border-radius:34px;height:54px;padding:0 20px;
    font-family:inherit;font-weight:800;font-size:15px;cursor:pointer;
    box-shadow:0 10px 30px rgba(0,0,0,.45);animation:platPulse 1.8s infinite,platBlink 1.4s infinite;transition:transform .2s;}
  .plat-fab span:first-child{font-size:20px;}
  .plat-fab:hover{transform:translateY(-2px);}
  @keyframes platPulse{0%{box-shadow:0 0 0 0 rgba(214,155,87,.6),0 10px 30px rgba(0,0,0,.45);}
    70%{box-shadow:0 0 0 15px rgba(214,155,87,0),0 10px 30px rgba(0,0,0,.45);}
    100%{box-shadow:0 0 0 0 rgba(214,155,87,0),0 10px 30px rgba(0,0,0,.45);}}
  @keyframes platBlink{0%,100%{opacity:1;} 50%{opacity:.7;}}
  @media(max-width:560px){ .plat-fab{bottom:90px;inset-inline-start:14px;height:48px;padding:0 15px;font-size:13px;} }
  @media(prefers-reduced-motion:reduce){ .plat-fab{animation:none;} }


/* ============ SITE EN PLUSIEURS PAGES ============ */
/* Page ouverte mise en valeur dans la navigation */
nav ul li a.on{ color: var(--gold); }
nav ul li a{ cursor: pointer; }

/* Les trois univers, sur l'accueil */
.univers-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.univers-carte{
  display:block; border:1px solid rgba(255,255,255,.10); border-radius:18px; overflow:hidden;
  background:rgba(255,255,255,.03); text-decoration:none; color:inherit; transition:.25s;
}
.univers-carte:hover{ border-color:var(--gold); transform:translateY(-3px); }
.univers-carte img{ width:100%; height:230px; object-fit:cover; display:block; }
.univers-carte .uc-txt{ padding:22px 24px 26px; }
.univers-carte h3{ font-size:23px; margin-bottom:8px; }
.univers-carte p{ font-size:14.5px; line-height:1.55; opacity:.78; }
.univers-carte .uc-lien{ display:inline-block; margin-top:14px; color:var(--gold); font-weight:600; font-size:14px; }
.sec.univers{ padding-bottom:20px; }
.sec.apercu-contact{ padding:56px 0 70px; }
@media(max-width:900px){ .univers-grid{ grid-template-columns:1fr; } .univers-carte img{ height:190px; } }


/* ============ FICHE PRODUIT ============ */
.fiche{ padding:34px 0 70px; }
.fil-ariane{ font-size:13.5px; opacity:.65; margin-bottom:26px; }
.fil-ariane a{ color:inherit; text-decoration:none; }
.fil-ariane a:hover{ color:var(--gold); }
.fiche-grid{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.fiche-photo{ background:#fff; border-radius:18px; padding:26px; display:flex; align-items:center; justify-content:center; }
.fiche-photo img{ width:100%; max-height:520px; object-fit:contain; cursor:zoom-in; }
.fiche-marque{ font-size:12.5px; letter-spacing:2.4px; text-transform:uppercase; color:var(--gold); margin-bottom:8px; }
.fiche-titre{ font-size:clamp(27px,3.6vw,40px); line-height:1.15; margin-bottom:16px; }
.fiche-dispo{ display:inline-flex; align-items:center; gap:8px; font-size:13.5px; opacity:.85; margin-bottom:20px; }
.fiche-dispo i{ width:9px; height:9px; border-radius:50%; background:#3fbf6a; display:inline-block; }
.fiche-prix{ font-size:38px; font-weight:700; letter-spacing:-.5px; }
.fiche-prix small{ display:block; font-size:13px; font-weight:400; opacity:.6; margin-top:4px; letter-spacing:0; }
.fiche-desc{ font-size:15.5px; line-height:1.7; opacity:.82; margin:22px 0 28px; }
.fiche-achat{ display:flex; gap:12px; align-items:stretch; flex-wrap:wrap; }
.fiche-qte{ display:flex; align-items:center; border:1.5px solid rgba(255,255,255,.2); border-radius:12px; overflow:hidden; }
.fiche-qte button{ width:46px; height:56px; background:none; border:none; color:inherit; font-size:20px; cursor:pointer; }
.fiche-qte b{ min-width:44px; text-align:center; font-size:17px; }
.fiche-ajout{ flex:1; min-width:220px; height:56px; border:none; border-radius:12px; background:var(--gold); color:#1a1b1d;
  font-family:inherit; font-size:16px; font-weight:700; letter-spacing:.4px; cursor:pointer; transition:.2s; }
.fiche-ajout:hover{ filter:brightness(1.08); }
.fiche-wa{ display:inline-flex; align-items:center; gap:8px; margin-top:18px; font-size:14px; color:inherit; text-decoration:none; opacity:.85; }
.fiche-wa:hover{ color:var(--gold); }
.fiche-atouts{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:34px; padding-top:26px; border-top:1px solid rgba(255,255,255,.12); }
.fiche-atouts div{ text-align:center; }
.fiche-atouts b{ display:block; font-size:14px; margin-bottom:3px; }
.fiche-atouts span{ font-size:12.5px; opacity:.6; }
.fiche-suite{ margin-top:66px; }
@media(max-width:860px){
  .fiche-grid{ grid-template-columns:1fr; gap:26px; }
  .fiche-photo{ padding:16px; }
  .fiche-atouts{ grid-template-columns:1fr; gap:12px; text-align:start; }
}


/* Bouton « Retour » de la fiche produit */
.btn-retour{ display:inline-flex; align-items:center; gap:8px; margin-bottom:16px;
  padding:9px 16px 9px 13px; border:1px solid rgba(255,255,255,.22); border-radius:999px;
  background:rgba(255,255,255,.04); color:inherit; font-family:inherit; font-size:14px;
  cursor:pointer; transition:.18s; }
.btn-retour:hover{ background:rgba(255,255,255,.1); border-color:var(--gold); color:var(--gold); }
.btn-retour span[aria-hidden]{ font-size:17px; line-height:1; }
[dir="rtl"] .btn-retour span[aria-hidden]{ transform:scaleX(-1); }
@media(max-width:760px){
  .btn-retour{ margin:4px 0 18px; padding:11px 20px 11px 16px; font-size:15px; }
}


/* ── Rayons : mise en page à la Délice Market (thème sombre conservé) ── */
.fil-rayons{ display:flex; align-items:center; gap:8px; font-size:13.5px; margin-bottom:28px; opacity:.75; }
.fil-rayons a:hover{ color:var(--gold); }
.marche-head{ max-width:760px; margin:0 0 46px; text-align:start; }
.marche-head h2{ line-height:1.02; margin:0; }
.marche-head .marche-h2b{ margin-bottom:20px; }
.marche-head p{ font-size:15.5px; line-height:1.65; max-width:560px; }

.rayons-cartes{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px; }
.rayon-carte{ grid-template-columns:44% 1fr; border-radius:14px; }
.rayon-carte img{ object-fit:cover!important; object-position:center; background:#f3ece0!important; padding:0; min-height:210px; height:100%; }
.rayon-carte .rc-txt{ padding:26px 28px; }
.rc-num{ font-size:16px!important; font-style:italic; font-family:'Cormorant Garamond',serif; margin-bottom:6px; }
.rc-nom{ font-size:24px; line-height:1.15; }
.rc-fleche{ margin-top:16px; font-size:19px; }
@media(max-width:900px){
  .rayons-cartes{ grid-template-columns:1fr 1fr; gap:12px; }
  .rayon-carte{ grid-template-columns:42% 1fr; }
  .rayon-carte img{ min-height:140px; }
  .rc-nom{ font-size:19px; }
  .marche-head{ margin-bottom:32px; }
}

/* Les logos des marques qui défilent : pastilles claires sur le fond sombre */
.marques-serie .marque{ display:flex; align-items:center; justify-content:center;
  width:150px; height:78px; padding:12px 16px; background:#fff; border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.22); flex:0 0 auto; }
.marques-serie .marque img{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
@media(max-width:700px){ .marques-serie .marque{ width:118px; height:64px; padding:9px 12px; } }

/* ── Bandeau « Kabalat Chabbat » : rouge, clignotant, sous l'en-tête ── */
.bandeau-chabbat{ margin:16px auto 0; padding:0 16px; text-align:center; position:relative; z-index:2;
  max-width:100%; box-sizing:border-box; }
.chabbat-lien{ background:none; border:none; cursor:pointer; font-family:inherit; padding:2px 6px;
  display:inline-block; max-width:100%; white-space:normal; line-height:1.35;
  font-size:clamp(15px,1.7vw,18px); font-weight:700; letter-spacing:.2px; color:#e23b2e;
  text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1.5px;
  animation:clignote 1.15s steps(1,end) infinite; }
.chabbat-lien:hover{ color:#ff5a4a; }
@keyframes clignote{ 0%,54%{ opacity:1 } 55%,100%{ opacity:.25 } }
@media (prefers-reduced-motion: reduce){ .chabbat-lien{ animation:none; } }
@media(max-width:700px){ .bandeau-chabbat{ margin-top:12px; } }

/* La fenêtre de réservation */
.resa-intro{ font-size:14.5px; opacity:.8; margin-bottom:16px; }
#resa-overlay .modal-body input, #resa-overlay .modal-body textarea{ width:100%; }
#resa-overlay .modal-body textarea{ margin-bottom:14px; }
.btn-envoi{ width:100%; padding:14px; border:none; border-radius:12px; background:var(--gold);
  color:#241d16; font-family:inherit; font-size:16px; font-weight:700; cursor:pointer; transition:.2s; }
.btn-envoi:hover{ filter:brightness(1.07); }

/* ── Cartes de rayon : photo pleine (le nom est déjà dans l'image) + compteur discret ── */
.rayon-carte{ display:block!important; grid-template-columns:none!important; position:relative;
  padding:0!important; border-radius:14px; overflow:hidden; border:1px solid rgba(255,255,255,.10);
  background:#111; cursor:pointer; }
.rayon-carte img{ width:100%!important; height:auto!important; min-height:0!important; display:block; aspect-ratio:1.16 / 1; object-fit:cover; object-position:center bottom; background:#111!important; }
.rayon-carte .rc-txt{ display:none!important; }
.rayon-carte .rc-count{ position:absolute; top:10px; inset-inline-end:10px;
  background:rgba(18,19,21,.80); color:#f1f2f3; font-size:12px; font-weight:600;
  padding:5px 12px; border-radius:999px; -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px);
  border:1px solid rgba(255,255,255,.12); }
.rayon-carte:hover{ border-color:var(--gold); transform:translateY(-2px); }

/* ── Sandwichs (carte + configurateur) ── */
.sw-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.sw-card{ background:var(--card,#25272b); border:1px solid var(--line,#3a3d42); border-radius:14px; padding:18px 18px 16px; display:flex; flex-direction:column; }
.sw-top{ display:flex; justify-content:space-between; align-items:baseline; gap:10px; }
.sw-name{ font-weight:700; font-size:18px; color:var(--chalk,#f1f2f3); }
.sw-price{ font-family:'Caveat',cursive; font-size:24px; color:var(--gold-soft,#d9b982); white-space:nowrap; }
.sw-desc{ font-size:13.5px; line-height:1.5; color:var(--chalk-dim,#c7c1b4); margin:8px 0 14px; flex:1; }
.sw-btn{ width:100%; padding:11px 0!important; font-size:15px!important; }
@media(max-width:640px){ .sw-grid{ grid-template-columns:1fr; } }

.sand-grp{ margin-bottom:16px; }
.sand-grp-h{ display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-bottom:8px; }
.sand-grp-h b{ font-size:15px; color:var(--chalk,#f1f2f3); }
.sand-grp-h span{ font-size:12px; color:var(--gold-soft,#d9b982); opacity:.9; }
.sand-choices{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.sand-c{ display:flex!important; align-items:center; justify-content:flex-start!important; gap:10px; border:1.4px solid var(--line,#3a3d42); border-radius:10px; padding:10px 13px; font-size:13.5px; cursor:pointer; color:var(--chalk,#f1f2f3); background:rgba(255,255,255,.02); transition:.15s; text-align:start; }
.sand-c input{ flex:0 0 auto; width:18px; height:18px; margin:0; }
.sand-c span{ flex:1; text-align:start; line-height:1.25; }
@media(max-width:600px){ .sand-choices{ grid-template-columns:1fr; } }
.sand-c:has(input:checked){ border-color:var(--gold,#c69b57); background:rgba(198,155,87,.14); }
.sand-c input:disabled + span{ opacity:.4; }
.sand-c input{ accent-color:var(--gold,#c69b57); }
.sand-qtybar{ display:flex; align-items:center; gap:14px; margin:6px 0 16px; }
.sand-qtybar .qty b input{ width:44px; text-align:center; background:transparent; border:none; color:var(--chalk,#f1f2f3); font-size:16px; font-weight:700; -moz-appearance:textfield; }
.sand-qtybar .qty b input::-webkit-outer-spin-button,.sand-qtybar .qty b input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }

/* ── Stock produit ── */
.prod-stock{ font-size:12px; color:#7fbf7f; margin:2px 0 6px; font-weight:600; }
.prod-stock.rupture{ color:#e07a6b; }
.prod-rupture{ font-size:13px; font-weight:700; color:#e07a6b; }
.prod.est-epuise{ opacity:.62; }
.prod.est-epuise .prod-img{ filter:grayscale(.5); }

/* ── Pages compte / auth ── */
.auth-wrap{ max-width:460px; margin:96px auto 60px; padding:0 18px; }
.auth-wrap.wide{ max-width:640px; }
.auth-card{ background:var(--card,#25272b); border:1px solid var(--line,#3a3d42); border-radius:16px; padding:26px 24px; }
.auth-card.block{ margin-bottom:18px; }
.auth-card h1,.compte-head h1{ font-family:'Frank Ruhl Libre',serif; font-size:26px; color:var(--chalk,#f1f2f3); margin-bottom:4px; }
.auth-card h2{ font-size:18px; color:var(--gold-soft,#d9b982); margin-bottom:14px; }
.auth-sub{ color:var(--chalk-dim,#c7c1b4); font-size:13.5px; line-height:1.5; margin-bottom:16px; }
.fld{ width:100%; background:#14161a; border:1px solid var(--line,#3a3d42); color:var(--chalk,#f1f2f3); border-radius:10px; padding:12px 14px; font-size:15px; margin-bottom:10px; }
.fld:disabled{ opacity:.6; }
.auth-row{ display:flex; gap:10px; } .auth-row .fld{ flex:1; }
.auth-btn{ width:100%; background:var(--gold,#c69b57); color:#1a1b1d; border:none; border-radius:10px; padding:13px; font-weight:700; font-size:15px; cursor:pointer; margin-top:4px; }
.auth-btn.ghost{ background:transparent; border:1.5px solid var(--gold,#c69b57); color:var(--gold-soft,#d9b982); }
.auth-btn:disabled{ opacity:.6; }
.auth-msg{ font-size:13.5px; margin-top:10px; text-align:center; } .auth-msg.err{ color:#e07a6b; } .auth-msg.ok{ color:#7fbf7f; }
.auth-alt{ text-align:center; margin-top:16px; font-size:14px; color:var(--chalk-dim,#c7c1b4); } .auth-alt a{ color:var(--gold-soft,#d9b982); font-weight:600; }
.compte-head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:18px; }
.lnk-logout{ background:none; border:1px solid var(--line,#3a3d42); color:var(--chalk-dim,#c7c1b4); border-radius:8px; padding:8px 14px; cursor:pointer; font-size:13px; }
.adr-row,.cmd-row{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--line,#3a3d42); }
.adr-row b,.cmd-row b{ color:var(--chalk,#f1f2f3); } .adr-row .auth-sub,.cmd-row .auth-sub{ margin:0; }
.adr-del{ background:none; border:none; color:#e07a6b; cursor:pointer; font-size:13px; flex-shrink:0; }
.cmd-top{ display:flex; justify-content:space-between; gap:12px; width:100%; }
.cmd-row{ flex-direction:column; align-items:stretch; }

/* Carte rayon "vedette" (Rosh Hashana) — pulsation douce pour attirer l'œil */
@keyframes roshPulse { 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.045); } }
.rayon-carte.vedette{ animation:roshPulse 2.2s ease-in-out infinite; border-color:var(--gold)!important; box-shadow:0 0 24px rgba(217,185,130,.40); z-index:2; }
.rayon-carte.vedette:hover{ animation-play-state:paused; transform:scale(1.06); }
@media (prefers-reduced-motion: reduce){ .rayon-carte.vedette{ animation:none; } }

/* Menu spécial Rosh Hashana — liste plat + prix (sous les cartes du rayon) */
.rmenu{ grid-column:1/-1; width:100%; margin-top:22px; background:var(--card,#25272b); border:1px solid var(--line,#3a3d42); border-radius:14px; padding:20px 22px; }
.rmenu-head{ text-align:center; border-bottom:1px solid var(--line,#3a3d42); padding-bottom:12px; margin-bottom:4px; }
.rmenu-title{ display:block; font-family:'Frank Ruhl Libre',serif; font-size:22px; color:var(--gold-soft,#d9b982); }
.rmenu-sub{ display:block; font-size:12.5px; color:#9a9a9a; margin-top:3px; }
.rmenu-row{ display:flex; align-items:baseline; gap:12px; padding:11px 2px; border-bottom:1px dashed rgba(255,255,255,.09); }
.rmenu-row:last-of-type{ border-bottom:none; }
.rmenu-l{ flex:1; display:flex; flex-direction:column; gap:2px; }
.rmenu-nom{ font-size:15.5px; color:var(--chalk,#f1f2f3); font-weight:500; }
.rmenu-note{ font-size:12px; color:#9a9a9a; line-height:1.35; }
.rmenu-prix{ white-space:nowrap; color:var(--gold-soft,#d9b982); font-weight:700; font-size:15px; }
.rmenu-cta{ display:block; width:100%; margin-top:16px; }

/* Logo de FÊTE sur l'accueil — bannière festive cliquable qui pulse (zoom avant/arrière) */
.hero-fete{ display:block; width:min(560px,90vw); margin:0 auto 10px; border-radius:16px; overflow:hidden;
  border:1px solid rgba(217,185,130,.55); box-shadow:0 12px 44px rgba(0,0,0,.55), 0 0 0 1px rgba(217,185,130,.15);
  animation:fetePulse 2.6s ease-in-out infinite; cursor:pointer; will-change:transform; }
.hero-fete img{ display:block; width:100%; height:auto; }
.hero-fete:hover{ animation-play-state:paused; transform:scale(1.035); }
@keyframes fetePulse{ 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.04); } }
@media (prefers-reduced-motion: reduce){ .hero-fete{ animation:none; } }

/* Menu Rosh Hashana — lignes cliquables + badge d'ajout */
.rmenu-row{ width:100%; background:none; border:0; border-bottom:1px dashed rgba(255,255,255,.09); color:inherit; font:inherit; text-align:start; cursor:pointer; align-items:center!important; border-radius:8px; transition:background .15s; }
.rmenu-row:hover{ background:rgba(217,185,130,.07); }
.rmenu-plus{ flex:0 0 auto; width:28px; height:28px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:var(--gold-soft,#d9b982); color:#1a1b1d; font-weight:800; font-size:16px; line-height:1; }
.rmenu-plus.has{ background:#3fb96b; color:#fff; font-size:14px; }

/* Modale « nombre de personnes » (plat du menu) */
.rmd-card{ background:var(--card,#25272b); border:1px solid var(--line,#3a3d42); border-radius:16px; padding:26px 24px; width:min(380px,94vw); margin:auto; text-align:center; position:relative; }
.rmd-x,.login-x{ position:absolute; top:10px; inset-inline-end:14px; background:none; border:0; color:#bbb; font-size:26px; line-height:1; cursor:pointer; }
.rmd-nom{ font-family:'Frank Ruhl Libre',serif; font-size:21px; color:var(--chalk,#f1f2f3); margin-bottom:4px; }
.rmd-prix{ color:var(--gold-soft,#d9b982); font-weight:700; }
.rmd-note{ font-size:12.5px; color:#9a9a9a; margin-top:6px; line-height:1.35; }
.rmd-qtylbl{ margin-top:18px; font-size:13px; color:#9a9a9a; }
.rmd-stepper{ display:flex; align-items:center; justify-content:center; gap:18px; margin-top:8px; }
.rmd-stepper button{ width:42px; height:42px; border-radius:50%; border:1px solid var(--gold-soft,#d9b982); background:transparent; color:var(--gold-soft,#d9b982); font-size:22px; cursor:pointer; }
.rmd-stepper b{ font-size:24px; min-width:44px; color:var(--chalk,#f1f2f3); }
.rmd-total{ margin-top:14px; font-size:15px; color:var(--chalk,#f1f2f3); }
.rmd-total b{ color:var(--gold-soft,#d9b982); }
.rmd-add{ width:100%; margin-top:18px; }

/* Modale de connexion (s'ouvre à l'ajout si non connecté) */
.login-card{ background:var(--card,#25272b); border:1px solid var(--line,#3a3d42); border-radius:16px; padding:24px 22px; width:min(380px,94vw); margin:auto; text-align:center; position:relative; }
.login-emoji{ font-size:38px; line-height:1; }
.login-card h3{ font-family:'Frank Ruhl Libre',serif; font-size:22px; color:var(--chalk,#f1f2f3); margin:6px 0 2px; }
.login-sub{ font-size:13px; color:#9a9a9a; margin-bottom:14px; }
.login-card .fld{ margin-bottom:10px; text-align:start; }
.login-btn{ width:100%; margin-top:6px; }
.login-msg{ font-size:13px; color:#9a9a9a; min-height:18px; margin-top:8px; }
.login-msg.err{ color:#e07a6b; }
.login-alt{ font-size:13px; color:#9a9a9a; margin-top:8px; }
.login-alt a{ color:var(--gold-soft,#d9b982); font-weight:600; }

/* Choix du goût (articles déclinés) */
.gout-liste{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:6px;}
.gout-liste .gout-b{padding:10px 16px;font-size:15px;border-radius:9px;}

.prod-gout{display:inline-block;margin:4px 0 2px;padding:3px 9px;border-radius:999px;
  background:rgba(217,185,130,.16);color:var(--gold-soft,#d9b982);font-size:12px;font-weight:600;}

/* Règlement par Bit : QR affiché à la demande */
.bit-bloc{margin:10px 0 4px;padding:14px;border-radius:12px;text-align:center;
  background:rgba(217,185,130,.08);border:1px solid rgba(217,185,130,.35);}
.bit-bloc .bit-titre{font-weight:700;margin-bottom:10px;color:var(--gold-soft,#d9b982);}
.bit-bloc img{width:190px;max-width:70%;height:auto;border-radius:10px;background:#fff;padding:8px;display:block;margin:0 auto 10px;}
.bit-bloc .bit-aide{font-size:13px;opacity:.85;line-height:1.45;}

.bit-bloc .bit-ref{margin:12px 0;padding:12px 14px;border-radius:11px;font-size:14px;line-height:1.5;
  background:rgba(224,120,90,.14);border:2px solid rgba(224,120,90,.65);}
.bit-bloc .bit-ref .br-avert{display:block;font-size:12px;font-weight:800;letter-spacing:.6px;
  text-transform:uppercase;color:#f0a48c;margin-bottom:2px;}
.bit-bloc .bit-ref .br-txt{display:block;margin-bottom:6px;}
.bit-bloc .bit-ref b{display:block;font-size:24px;font-weight:800;letter-spacing:1px;color:#fff;}
.bit-bloc .bit-ref .br-copier{margin-top:8px;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.35);color:inherit;border-radius:8px;padding:6px 14px;
  font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
.bit-bloc .bit-montant{margin:4px 0 2px;font-size:14px;line-height:1.4;opacity:.95;}
.bit-bloc .bit-montant b{font-size:22px;color:var(--gold-soft,#d9b982);}
.bit-bloc .bit-montant small{display:block;font-size:12px;opacity:.8;margin-top:3px;}

/* Confirmation de commande + commentaire libre */
.merci-card{text-align:center;}
.merci-card .merci-ico{width:58px;height:58px;line-height:58px;margin:0 auto 12px;border-radius:50%;
  background:rgba(63,185,107,.15);color:#3fb96b;font-size:30px;font-weight:700;}
.merci-card .merci-ref{margin:10px 0 16px;padding:10px 14px;border-radius:10px;font-size:14px;
  background:rgba(217,185,130,.12);line-height:1.5;}
.merci-card .merci-ref b{font-size:19px;letter-spacing:.5px;color:var(--gold-soft,#d9b982);}
.merci-card textarea{width:100%;box-sizing:border-box;margin:6px 0 12px;padding:10px 12px;border-radius:10px;
  background:#0f1115;border:1px solid rgba(255,255,255,.15);color:inherit;font:inherit;resize:vertical;}
.merci-card .merci-fermer{display:block;margin:10px auto 0;background:none;border:0;cursor:pointer;
  color:inherit;opacity:.6;font:inherit;text-decoration:underline;}

.gout-liste .gout-b.epuise{opacity:.4;cursor:not-allowed;text-decoration:line-through;}
.gout-liste .gout-b small{display:block;font-size:11px;font-weight:600;opacity:.85;text-decoration:none;}

.bit-bloc .bit-num-lbl{font-size:13px;opacity:.8;margin-bottom:6px;}
.bit-bloc .bit-num{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;}
.bit-bloc .bit-num span{font-size:26px;font-weight:800;letter-spacing:1px;color:var(--gold-soft,#d9b982);}
.bit-bloc .bit-num button{background:rgba(217,185,130,.18);border:1px solid rgba(217,185,130,.5);
  color:inherit;border-radius:8px;padding:7px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
.bit-bloc .bit-num button:hover{background:rgba(217,185,130,.3);}

.bit-bloc .bit-lien{display:block;margin:0 auto 12px;padding:13px 20px;border-radius:10px;
  background:var(--gold,#d9b982);color:#1a1b1d;font-weight:800;font-size:16px;text-decoration:none;}
.bit-bloc .bit-lien:hover{filter:brightness(1.07);}

.ham-version{display:block;margin-top:8px;font-size:11px;opacity:.35;letter-spacing:1px;}

/* ===================== BOUTIQUE — ARDOISE & BLANC =====================
   La vitrine est un tableau d'ardoise ; la boutique en est la page claire.
   Les deux ne partagent QUE deux teintes : l'ardoise et le blanc, avec des
   gris strictement neutres entre les deux. Aucun beige, aucun brun : les
   photos produit sont des pack shots sur fond blanc, et la moindre teinte
   chaude derriere elles se voyait comme un raccord rate.
   Les regles du theme ardoise portent !important sur `body` ; `body.boutique`
   est plus specifique, elle l'emporte a !important egal.                    */
body.boutique{
  --papier:#f7f8f9; --blanc:#ffffff; --trait:#e4e6e9; --trait-fort:#d3d7db;
  --ardoise:#1a1b1d; --ardoise-2:#25272b; --encre:#1a1b1d; --doux:#676c72;
  background:var(--papier)!important; color:var(--encre)!important;
}
body.boutique::after{ display:none!important; }
body.boutique section, body.boutique .sec,
body.boutique .menu, body.boutique .gallery{ background:transparent!important; }

/* Le bandeau du haut est l'ardoise elle-meme : c'est la couture avec la vitrine. */
body.boutique header{ background:var(--ardoise)!important; box-shadow:0 1px 0 rgba(0,0,0,.10); }
body.boutique header nav .brand,
body.boutique header nav ul a{ color:#f2f3f4!important; }
body.boutique header nav ul a:hover{ color:#fff!important; }
body.boutique nav .cta{ background:#fff!important; color:var(--ardoise)!important; }
body.boutique nav .cta:hover{ background:#e4e6e9!important; }
body.boutique .lang{ border-color:rgba(255,255,255,.45)!important; color:#f2f3f4!important; }
body.boutique .lang:hover{ background:#fff!important; color:var(--ardoise)!important; }
body.boutique .burger span{ background:#f2f3f4!important; }

body.boutique h1, body.boutique h2, body.boutique h3,
body.boutique .marche-h2b, body.boutique .sec-head h2{ color:var(--encre)!important; }
body.boutique .fil-ariane, body.boutique .sec-head p,
body.boutique .marche-head p{ color:var(--doux)!important; opacity:1; }
body.boutique .kicker{ color:var(--doux)!important; }
body.boutique .fil-ariane button, body.boutique .fil-ariane a,
body.boutique #fil button, body.boutique #fil a,
body.boutique #fil span{ color:var(--doux)!important; }
body.boutique #fil button:hover{ color:var(--encre)!important; text-decoration:underline; }

body.boutique .boutique-recherche,
body.boutique .boutique-recherche input{ background:var(--blanc)!important; color:var(--encre)!important;
  border:1px solid var(--trait)!important; }
body.boutique .boutique-recherche input::placeholder{ color:var(--doux)!important; }

/* --- Carte produit compacte : vignette a gauche, texte a droite --------- */
body.boutique .prod-grid{ grid-template-columns:repeat(auto-fill,minmax(330px,1fr))!important; gap:12px!important; }
body.boutique .prod{
  display:grid!important; grid-template-columns:96px 1fr; gap:14px; align-items:start;
  background:var(--blanc)!important; border:1px solid var(--trait)!important;
  border-radius:12px!important; padding:12px!important; overflow:hidden; cursor:pointer;
  transition:box-shadow .18s, transform .18s, border-color .18s;
}
body.boutique .prod:hover{ border-color:var(--trait-fort)!important;
  box-shadow:0 6px 18px rgba(26,27,29,.08); transform:translateY(-1px); }
body.boutique .prod:focus-within{ outline:2px solid var(--ardoise); outline-offset:2px; }
body.boutique .prod > a{ display:block; }
body.boutique .prod-img{
  width:96px!important; height:96px!important; aspect-ratio:auto!important;
  object-fit:contain!important; background:#fff!important; padding:0!important;
  border-radius:8px!important; cursor:pointer;
}
body.boutique .prod-body{ padding:0!important; gap:4px!important; min-width:0; }
body.boutique .prod-name{ font-size:14.5px!important; font-weight:600!important; line-height:1.3!important;
  color:var(--encre)!important; }
body.boutique .prod-desc{ font-size:12.5px!important; color:var(--doux)!important; opacity:1!important;
  line-height:1.4!important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden; flex:none!important; }
/* Stock et rupture restent distincts : c'est une information, pas un ornement. */
body.boutique .prod-stock{ font-size:10.5px!important; color:var(--doux)!important; }
body.boutique .prod-stock.rupture{ color:#9a2f22!important; }
body.boutique .prod-gout{ font-size:10.5px!important; color:var(--doux)!important; }
body.boutique .prod-bot{ margin-top:6px!important; }
body.boutique .prod-price, body.boutique .prod-bot b{ color:var(--encre)!important; }
body.boutique .prod-add{ background:var(--ardoise)!important; color:#fff!important; border-color:transparent!important; }
body.boutique .prod-add:hover{ background:var(--ardoise-2)!important; }
body.boutique .qty{ border-color:var(--trait-fort)!important; }
body.boutique .qty button{ color:var(--encre)!important; }

/* --- Cartes de rayon, boutons flottants, bandeaux ---------------------- */
body.boutique .rayon-carte{ background:var(--blanc)!important; border-color:var(--trait)!important; }
body.boutique .rayon-carte:hover{ border-color:var(--trait-fort)!important; }
body.boutique .rayon-carte .rc-nom{ color:var(--encre)!important; }
body.boutique .rayon-carte .rc-nb, body.boutique .rayon-carte .rc-count{ color:var(--doux)!important; opacity:1; }
body.boutique .bandeau-chabbat{ background:var(--blanc)!important; color:var(--encre)!important;
  border-color:var(--trait)!important; }

/* --- Le mur de craie a l'envers : encre ardoise sur papier blanc -------- */
body.boutique{
  background:
    linear-gradient(rgba(247,248,249,.80), rgba(247,248,249,.80)),
    url('img/mur-encre.jpg?v=2') center top / 1100px auto repeat!important;
  background-attachment:fixed, fixed!important;
}

@media(max-width:520px){
  body.boutique .prod-grid{ grid-template-columns:1fr!important; }
}

/* ===== Sous-menu de rayon (couleurs du vin) =====
   Un rayon de 65 bouteilles se parcourt mal d'un seul bloc. Les onglets
   occupent toute la largeur de la grille et se placent avant les cartes.   */
.sous-menu{ grid-column:1/-1; display:flex; flex-wrap:wrap; gap:8px; margin:0 0 6px; }
.sous-menu button{
  font-family:inherit; font-size:13.5px; font-weight:600; cursor:pointer;
  border:1px solid var(--trait,#e4e6e9); background:transparent; color:inherit;
  border-radius:30px; padding:8px 16px; display:inline-flex; align-items:center; gap:7px;
  transition:.16s;
}
.sous-menu button i{ font-style:normal; font-size:11.5px; opacity:.6; font-variant-numeric:tabular-nums; }
.sous-menu button:hover{ border-color:var(--trait-fort,#d3d7db); }
.sous-menu button:focus-visible{ outline:2px solid var(--ardoise,#1a1b1d); outline-offset:2px; }
body.boutique .sous-menu button.on{ background:var(--ardoise,#1a1b1d); color:#fff; border-color:transparent; }
body.boutique .sous-menu button.on i{ opacity:.75; }
/* une pastille rappelle la couleur du vin */
.sous-menu button::before{ content:""; width:9px; height:9px; border-radius:50%; }
.sous-menu button.c-rouge::before{ background:#7b1e2b; }
.sous-menu button.c-blanc::before{ background:#e6d79a; }
.sous-menu button.c-rose::before{ background:#e79c98; }
.sous-menu button.c-petillant::before{ background:#cbb37a; }
.sous-menu button:first-child::before{ display:none; }


/* ===== Boutons flottants en ardoise =====
   Le panier et le plat du jour etaient bruns et dores : les deux seules
   taches chaudes qui restaient, visibles sur toutes les pages.            */
.cart-fab{ background:#1a1b1d!important; color:#f2f3f4!important; }
.cart-fab:hover{ background:#25272b!important; }
.cart-fab .cbadge{ background:#f2f3f4!important; color:#1a1b1d!important; }
.plat-fab{ background:#1a1b1d!important; color:#f2f3f4!important; }
.plat-fab:hover{ background:#25272b!important; }
@keyframes platPulse{
  0%{   box-shadow:0 0 0 0 rgba(255,255,255,.30),0 10px 30px rgba(0,0,0,.45); }
  70%{  box-shadow:0 0 0 15px rgba(255,255,255,0),0 10px 30px rgba(0,0,0,.45); }
  100%{ box-shadow:0 0 0 0 rgba(255,255,255,0),0 10px 30px rgba(0,0,0,.45); }
}

/* Les boutons d'appel passent en craie pleine sur l'ardoise : contraste franc,
   plus aucune teinte chaude. */
nav .cta{ background:#f1f2f3!important; color:#1a1b1d!important; }
nav .cta:hover{ background:#fff!important; }
.btn-gold{ background:#f1f2f3!important; color:#1a1b1d!important; border-color:transparent!important; }
.btn-gold:hover{ background:#fff!important; }

/* ===== Menu deroulant mobile en ardoise =====
   Il etait reste sur `background:var(--wood)`, seul reliquat brun de la
   navigation. Le panneau prend la teinte du bandeau, avec un liseré clair
   pour le detacher de la page quand celle-ci est blanche (boutique).       */
@media(max-width:900px){
  nav ul.open{
    background:#1a1b1d!important;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 18px 44px rgba(0,0,0,.45);
  }
  nav ul.open a{ color:#f1f2f3!important; }
  nav ul.open a:hover, nav ul.open a.on{ color:#fff!important; }
  nav ul.open .cta{ background:#f1f2f3!important; color:#1a1b1d!important; }
  nav ul.open .lang{ border-color:rgba(255,255,255,.45)!important; color:#f1f2f3!important; }
  nav ul.open .lang:hover{ background:#f1f2f3!important; color:#1a1b1d!important; }
}
