/* =========================================================================
   PatiSwap — header mobile : contraste du bouton menu + design du panneau
   Chargé sur TOUTES les pages (contrairement à home.css qui est ciblé).
   Corrige un vrai bug de contraste : l'icône hamburger (#fbfbfb, quasi
   blanche) est quasi invisible sur fond crème (#FFF7F0) comme sur la photo
   du hero en header transparent. On lui donne un badge plein, donc un
   contraste garanti quel que soit le fond, + un habillage du panneau
   d'ouverture cohérent avec l'identité (ambre / crème / brun).
   ========================================================================= */
:root{
  --psh-h-amber:#9A690F;
  --psh-h-amber-dark:#885C09;
  --psh-h-brown:#291901;
  --psh-h-ink:#1A0E00;
  --psh-h-cream:#FFF7F0;
  --psh-h-peach:#FFE0C1;
  --psh-h-line:#F0D9BC;
}

/* ---------- Bouton hamburger : badge plein, contraste garanti ---------- */
.menu-toggle.main-header-menu-toggle{
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  background: var(--psh-h-brown) !important;
  border: none !important;
  border-radius: 13px !important;
  box-shadow: 0 2px 10px rgba(26,14,0,.28);
  color: var(--psh-h-cream) !important;
  transition: background-color .2s ease, transform .15s ease;
}
.menu-toggle.main-header-menu-toggle:hover{
  background: var(--psh-h-ink) !important;
}
.menu-toggle.main-header-menu-toggle:active{
  transform: scale(.93);
}
.menu-toggle.main-header-menu-toggle:focus-visible{
  outline: 2px solid var(--psh-h-amber);
  outline-offset: 2px;
}
.menu-toggle.main-header-menu-toggle .mobile-menu-toggle-icon{
  display: flex;
  align-items: center;
  justify-content: center;
}
.menu-toggle.main-header-menu-toggle .mobile-menu-toggle-icon svg{
  color: var(--psh-h-cream) !important;
  fill: var(--psh-h-cream) !important;
  width: 19px;
  height: 19px;
}
/* le panneau ouvert contient un 2e exemplaire du bouton (icône croix) : même badge */
#ast-mobile-header .menu-toggle.main-header-menu-toggle{
  background: var(--psh-h-brown) !important;
}

/* ---------- Panneau du menu mobile (type "dropdown" Astra) ----------
   Important : on cible UNIQUEMENT .ast-mobile-header-content (le panneau
   qui s'ouvre/se ferme), jamais .ast-mobile-header-wrap lui-même — ce
   wrap contient aussi la barre logo + bouton TOUJOURS visible, qui doit
   rester transparente pour ne pas plaquer un bandeau crème sur la photo
   du hero en permanence. */
#ast-mobile-header .ast-mobile-header-content{
  background: var(--psh-h-cream);
  border-radius: 0 0 20px 20px;
  box-shadow: 0 18px 30px -14px rgba(26,14,0,.32);
  overflow: hidden;
}
#ast-mobile-header .ast-mobile-header-content::before{
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(90deg, var(--psh-h-amber), var(--psh-h-amber-dark));
}
#ast-mobile-header .ast-above-header-wrap,
#ast-mobile-header .ast-above-header-bar{
  background: transparent !important;
}

/* ---------- Liste des liens ---------- */
#ast-mobile-header .main-header-menu{
  padding: 6px 6px 16px !important;
}
#ast-mobile-header .main-header-menu > li.menu-item{
  border-bottom: 1px solid var(--psh-h-line) !important;
  opacity: 0;
  animation: psh-menu-item-in .32s ease forwards;
}
#ast-mobile-header .main-header-menu > li.menu-item:last-child{
  border-bottom: none !important;
}
#ast-mobile-header .main-header-menu > li.menu-item:nth-child(1){ animation-delay: .02s; }
#ast-mobile-header .main-header-menu > li.menu-item:nth-child(2){ animation-delay: .06s; }
#ast-mobile-header .main-header-menu > li.menu-item:nth-child(3){ animation-delay: .10s; }
#ast-mobile-header .main-header-menu > li.menu-item:nth-child(4){ animation-delay: .14s; }
#ast-mobile-header .main-header-menu > li.menu-item:nth-child(5){ animation-delay: .18s; }
#ast-mobile-header .main-header-menu > li.menu-item:nth-child(6){ animation-delay: .22s; }
#ast-mobile-header .main-header-menu > li.menu-item:nth-child(n+7){ animation-delay: .26s; }

@keyframes psh-menu-item-in{
  from{ opacity: 0; transform: translateY(-6px); }
  to{ opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce){
  #ast-mobile-header .main-header-menu > li.menu-item{ animation: none; opacity: 1; }
}

#ast-mobile-header .main-header-menu > li.menu-item > a.menu-link{
  display: flex !important;
  align-items: center;
  gap: 13px;
  padding: 14px 16px !important;
  font-size: 16px;
  font-weight: 600;
  color: var(--psh-h-brown) !important;
  text-decoration: none !important;
  border-radius: 12px;
  transition: background-color .15s ease, color .15s ease, padding-left .15s ease;
}
#ast-mobile-header .main-header-menu > li.menu-item > a.menu-link:hover,
#ast-mobile-header .main-header-menu > li.menu-item > a.menu-link:focus-visible{
  background: var(--psh-h-peach);
  color: var(--psh-h-ink) !important;
  padding-left: 22px !important;
  text-decoration: none !important;
}
#ast-mobile-header .main-header-menu > li.menu-item.current-menu-item > a.menu-link,
#ast-mobile-header .main-header-menu > li.menu-item.current_page_item > a.menu-link{
  color: var(--psh-h-amber) !important;
}

/* pastille d'icône avant chaque libellé */
#ast-mobile-header .main-header-menu > li.menu-item > a.menu-link::before{
  content: "";
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
/* chevron discret en fin de ligne */
#ast-mobile-header .main-header-menu > li.menu-item > a.menu-link::after{
  content: "\203A";
  margin-left: auto;
  color: var(--psh-h-amber);
  font-size: 19px;
  line-height: 1;
  opacity: .55;
}

#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/a-propos/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27/%3E%3Cline%20x1%3D%2712%27%20y1%3D%2711%27%20x2%3D%2712%27%20y2%3D%2716%27/%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%277.6%27%20r%3D%271.15%27%20fill%3D%27%239A690F%27%20stroke%3D%27none%27/%3E%3C/svg%3E");
}
#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/ingredients/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%273%27%20y%3D%273%27%20width%3D%277.5%27%20height%3D%277.5%27%20rx%3D%271.6%27/%3E%3Crect%20x%3D%2713.5%27%20y%3D%273%27%20width%3D%277.5%27%20height%3D%277.5%27%20rx%3D%271.6%27/%3E%3Crect%20x%3D%273%27%20y%3D%2713.5%27%20width%3D%277.5%27%20height%3D%277.5%27%20rx%3D%271.6%27/%3E%3Crect%20x%3D%2713.5%27%20y%3D%2713.5%27%20width%3D%277.5%27%20height%3D%277.5%27%20rx%3D%271.6%27/%3E%3C/svg%3E");
}
#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/outils/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M14.7%206.3a4%204%200%201%200-5.4%205.4L4%2017l3%203%205.3-5.3a4%204%200%200%200%205.4-5.4l-2.6%202.6-2-2z%27/%3E%3C/svg%3E");
}
#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/calculateur/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%275%27%20y%3D%272%27%20width%3D%2714%27%20height%3D%2720%27%20rx%3D%272.2%27/%3E%3Cline%20x1%3D%278%27%20y1%3D%276.3%27%20x2%3D%2716%27%20y2%3D%276.3%27/%3E%3Cline%20x1%3D%278%27%20y1%3D%2711.2%27%20x2%3D%278.01%27%20y2%3D%2711.2%27/%3E%3Cline%20x1%3D%2712%27%20y1%3D%2711.2%27%20x2%3D%2712.01%27%20y2%3D%2711.2%27/%3E%3Cline%20x1%3D%2716%27%20y1%3D%2711.2%27%20x2%3D%2716.01%27%20y2%3D%2711.2%27/%3E%3Cline%20x1%3D%278%27%20y1%3D%2715.1%27%20x2%3D%278.01%27%20y2%3D%2715.1%27/%3E%3Cline%20x1%3D%2712%27%20y1%3D%2715.1%27%20x2%3D%2712.01%27%20y2%3D%2715.1%27/%3E%3Cline%20x1%3D%2716%27%20y1%3D%2715.1%27%20x2%3D%2716.01%27%20y2%3D%2715.1%27/%3E%3Cline%20x1%3D%278%27%20y1%3D%2719%27%20x2%3D%2712%27%20y2%3D%2719%27/%3E%3C/svg%3E");
}
#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/adapter-ma-recette/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%208h13l-3-3M20%2016H7l3%203%27/%3E%3C/svg%3E");
}
#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/blog/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M6%202h9l5%205v13a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V4a2%202%200%200%201%202-2z%27/%3E%3Cpath%20d%3D%27M15%202v5h5%27/%3E%3Cline%20x1%3D%278%27%20y1%3D%2713%27%20x2%3D%2716%27%20y2%3D%2713%27/%3E%3Cline%20x1%3D%278%27%20y1%3D%2717%27%20x2%3D%2713%27%20y2%3D%2717%27/%3E%3C/svg%3E");
}
#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/recettes/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M6%2012.5h12l-1.6%208H7.6z%27/%3E%3Cpath%20d%3D%27M6%2012.5a6%205.2%200%200%201%2012%200%27/%3E%3Cpath%20d%3D%27M12%203.5v3.2%27/%3E%3Cpath%20d%3D%27M12%204.2c-1.3-1%200-2.4%200-2.4%27/%3E%3Cline%20x1%3D%2710%27%20y1%3D%2715.5%27%20x2%3D%2710.4%27%20y2%3D%2718%27/%3E%3Cline%20x1%3D%2714%27%20y1%3D%2715.5%27%20x2%3D%2713.6%27%20y2%3D%2718%27/%3E%3C/svg%3E");
}

#ast-mobile-header .main-header-menu > li.menu-item > a[href*="/contact/"]::before{
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%239A690F%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%272%27%20y%3D%274.5%27%20width%3D%2720%27%20height%3D%2715%27%20rx%3D%272.2%27/%3E%3Cpath%20d%3D%27M2.5%206.5l9.5%206.6%209.5-6.6%27/%3E%3C/svg%3E");
}

/* ---------- Sous-menus éventuels (au cas où) ---------- */
#ast-mobile-header .main-header-menu .sub-menu{
  border-left: 2px solid var(--psh-h-peach);
  margin-left: 32px;
}
#ast-mobile-header .main-header-menu .sub-menu a.menu-link{
  font-size: 15px;
  font-weight: 500;
  padding: 10px 16px !important;
}
#ast-mobile-header .main-header-menu .sub-menu a.menu-link::before{
  display: none;
}

/* =========================================================================
   Page Outils (ID 298) : menu desktop illisible sur header transparent.
   Astra applique un texte de menu BLANC a tout header "transparent"
   (pense pour flotter sur une photo sombre en fond de hero). Or la page
   Outils n'a pas de photo derriere son header (fond creme uni, voir
   outils.css) : le texte blanc devient quasi invisible. On repasse les
   memes elements en couleurs de marque, uniquement sur cette page (les
   autres pages a header transparent ont bien une photo sombre et le
   blanc y reste correct, on n'y touche pas).
   ========================================================================= */
body.page-id-298.ast-theme-transparent-header .site-title a,
body.page-id-298.ast-theme-transparent-header .site-title a:hover,
body.page-id-298.ast-theme-transparent-header .site-title a:focus,
body.page-id-298.ast-theme-transparent-header .site-title a:visited,
body.page-id-298.ast-theme-transparent-header .site-header .site-description{
  color: var(--psh-h-brown) !important;
}
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu,
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-link,
body.page-id-298.ast-theme-transparent-header [class*="ast-builder-menu-"] .main-header-menu .menu-item > .menu-link,
body.page-id-298.ast-theme-transparent-header .ast-masthead-custom-menu-items,
body.page-id-298.ast-theme-transparent-header .ast-masthead-custom-menu-items a,
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle,
body.page-id-298.ast-theme-transparent-header .main-header-menu .menu-link{
  color: var(--psh-h-brown) !important;
}
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link,
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .ast-menu-toggle,
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .menu-link,
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .menu-link,
body.page-id-298.ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .menu-link,
body.page-id-298.ast-theme-transparent-header [class*="ast-builder-menu-"] .main-header-menu .current-menu-item > .menu-link,
body.page-id-298.ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link,
body.page-id-298.ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link,
body.page-id-298.ast-theme-transparent-header .main-header-menu .current-menu-ancestor > .menu-link{
  color: var(--psh-h-amber-dark) !important;
}