/* =====================================================================
   RECHERCHE (08/11/2026, demande de la Maison) — la loupe ouvre un panneau qui descend du haut de la page :
   un champ pour taper, « Quelques suggestions », puis un tiroir de résultats (sélections + créations).
   DA du site : Cormorant Garamond pour les mots, Montserrat en petites capitales pour les titres, cuivre #c09578.
   Outil : site TEST/outils/recherche/poser.py
   ===================================================================== */
.hz-rch {
  --r-ink: #242424; --r-grey: #5a5a5a; --r-muted: #9a928a; --r-cuivre: #c09578; --r-line: #ece6df;
  --r-studio: radial-gradient(120% 95% at 50% 38%, #f7efe7 0%, #f0e4d8 62%, #eadbcd 100%);
  --r-ease: cubic-bezier(.22,.61,.36,1);
  position: fixed; inset: var(--wp-admin--admin-bar--height, 0px) 0 0 0; z-index: 100002;
  color: var(--r-grey); font: 400 18px/1.5 "Cormorant Garamond", Georgia, serif;
  -webkit-font-smoothing: antialiased;
}
.hz-rch[hidden] { display: none; }
.hz-rch *, .hz-rch *::before, .hz-rch *::after { box-sizing: border-box; }
.hz-rch a { color: inherit; text-decoration: none; }
.hz-rch button { font: inherit; color: inherit; background: none; border: 0; padding: 0; margin: 0; cursor: pointer; -webkit-appearance: none; appearance: none; }
html.hz-rch-ouvert, html.hz-rch-ouvert body { overflow: hidden; }

/* voile sur la page */
.hz-rch__voile { position: absolute; inset: 0; background: rgba(28, 22, 17, .32); opacity: 0; transition: opacity .4s ease; }
.hz-rch.is-ouvert .hz-rch__voile { opacity: 1; }

/* le panneau descend du haut */
.hz-rch__panneau {
  position: relative; max-height: 100%; overflow-y: auto; overscroll-behavior: contain;
  background: #fff; border-bottom: 1px solid var(--r-line); box-shadow: 0 24px 60px rgba(36, 28, 20, .10);
  transform: translateY(-24px); opacity: 0; transition: transform .5s var(--r-ease), opacity .35s ease;
}
.hz-rch.is-ouvert .hz-rch__panneau { transform: none; opacity: 1; }
.hz-rch__wrap { width: min(1180px, 100% - 80px); margin: 0 auto; }

/* en-tête du panneau : logo au centre, croix à droite */
.hz-rch__tete { position: relative; display: flex; justify-content: center; align-items: center; height: 92px; }
.hz-rch__logo { display: block; width: 92px; }
.hz-rch__logo img { display: block; width: 100%; height: auto; }
.hz-rch__fermer { position: absolute; right: -10px; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; display: grid; place-items: center; color: var(--r-ink); transition: color .3s, transform .5s var(--r-ease); }
.hz-rch__fermer:hover { color: var(--r-cuivre); transform: translateY(-50%) rotate(90deg); }

/* le champ */
.hz-rch__champ { position: relative; display: flex; align-items: center; gap: 16px; max-width: 760px; margin: 8px 0 0; padding: 0 0 10px; border-bottom: 1px solid #d8d0c8; transition: border-color .4s; }
.hz-rch__champ:focus-within { border-bottom-color: var(--r-ink); }
.hz-rch__champ > svg { flex: none; color: var(--r-ink); }
.hz-rch__q {
  flex: 1; min-width: 0; height: 46px; margin: 0; padding: 0; border: 0; border-radius: 0; outline: 0; background: transparent; box-shadow: none;
  font: 300 30px/46px "Cormorant Garamond", Georgia, serif; color: var(--r-ink); letter-spacing: .01em;
  -webkit-appearance: none; appearance: none;
}
.hz-rch__q::placeholder { color: #b5aca4; opacity: 1; }
.hz-rch__q::-webkit-search-cancel-button, .hz-rch__q::-webkit-search-decoration { -webkit-appearance: none; display: none; }
.hz-rch .hz-rch__q:focus-visible { outline: 0; }
.hz-rch__effacer { flex: none; font: 400 10px/1 "Montserrat", Arial, sans-serif !important; letter-spacing: .22em; text-transform: uppercase; color: var(--r-muted) !important; transition: color .3s; }
.hz-rch__effacer:hover { color: var(--r-ink) !important; }
.hz-rch__effacer[hidden] { display: none; }

/* le tiroir sous le champ (sa hauteur glisse quand le contenu change) */
.hz-rch__tiroir { overflow: hidden; transition: height .42s var(--r-ease); }
.hz-rch__dedans { padding: 34px 0 54px; }
.hz-rch__titre { margin: 0 0 16px; font: 400 10.5px/1.4 "Montserrat", Arial, sans-serif; letter-spacing: .26em; text-transform: uppercase; color: var(--r-muted); }
.hz-rch__titre b { font-weight: 400; color: var(--r-cuivre); }

/* « Quelques suggestions » (avant de taper) */
.hz-rch__idees { margin: 0; padding: 0; list-style: none; }
.hz-rch__idees li { margin: 0; }
.hz-rch__idees button, .hz-rch__liens a {
  display: inline-block; padding: 7px 0; font: 400 21px/1.35 "Cormorant Garamond", Georgia, serif; color: var(--r-ink); text-align: left;
  background-image: linear-gradient(var(--r-cuivre), var(--r-cuivre)); background-size: 0 1px; background-repeat: no-repeat; background-position: 0 92%;
  transition: color .3s, background-size .45s var(--r-ease);
}
.hz-rch__idees button:hover, .hz-rch__idees button:focus-visible,
.hz-rch__liens a:hover, .hz-rch__liens a:focus-visible, .hz-rch__liens a.is-actif { color: var(--r-cuivre); background-size: 100% 1px; outline: 0; }

/* résultats : liens à gauche, créations à droite */
.hz-rch__res { display: grid; grid-template-columns: minmax(220px, 300px) 1fr; gap: 0 64px; align-items: start; }
.hz-rch__res.sans-liens { grid-template-columns: 1fr; }
.hz-rch__res.sans-liens .hz-rch__col--liens { display: none; }
.hz-rch__liens { margin: 0; padding: 0; list-style: none; }
.hz-rch__liens li { margin: 0; }
.hz-rch__liens a { font-size: 19px; padding: 6px 0; color: var(--r-grey); }
.hz-rch__liens a b { font-weight: 500; color: var(--r-ink); }
.hz-rch__liens a:hover b, .hz-rch__liens a.is-actif b { color: inherit; }
.hz-rch__nb { font: 400 11px/1 "Montserrat", Arial, sans-serif; letter-spacing: .06em; color: var(--r-muted); margin-left: 4px; white-space: nowrap; }

.hz-rch__grille { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px 18px; margin: 0; padding: 0; list-style: none; }
.hz-rch__grille li { margin: 0; animation: hzRchArrive .5s var(--r-ease) both; }
.hz-rch-carte { display: block; text-align: center; outline: 0; }
.hz-rch-carte__img { position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden; background: var(--r-studio); }
.hz-rch-carte__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--r-ease); }
.hz-rch-carte:hover .hz-rch-carte__img img, .hz-rch-carte:focus-visible .hz-rch-carte__img img, .hz-rch-carte.is-actif .hz-rch-carte__img img { transform: scale(1.05); }
/* photo détourée (fond beige) : réduite, bords fondus dans le fond — pas de carré dans le carré (comme les grilles sur téléphone) */
.hz-rch-carte__img.is-cut { background: #ece0d3; }
.hz-rch-carte__img.is-cut img { object-fit: cover; transform: scale(.8); -webkit-mask-image: radial-gradient(closest-side, #000 78%, transparent 100%); mask-image: radial-gradient(closest-side, #000 78%, transparent 100%); }
.hz-rch-carte:hover .hz-rch-carte__img.is-cut img, .hz-rch-carte:focus-visible .hz-rch-carte__img.is-cut img { transform: scale(.85); }
.hz-rch-carte:focus-visible .hz-rch-carte__img, .hz-rch-carte.is-actif .hz-rch-carte__img { box-shadow: inset 0 0 0 1px var(--r-cuivre); }
.hz-rch-carte__type { display: block; margin-top: 13px; font: 400 9.5px/1.4 "Montserrat", Arial, sans-serif; letter-spacing: .24em; text-transform: uppercase; color: var(--r-cuivre); }
.hz-rch-carte__nom { display: block; margin-top: 5px; font: 400 19px/1.2 "Cormorant Garamond", Georgia, serif; color: var(--r-ink); transition: color .3s; }
.hz-rch-carte:hover .hz-rch-carte__nom, .hz-rch-carte.is-actif .hz-rch-carte__nom { color: var(--r-cuivre); }
.hz-rch-carte__sub { display: block; margin-top: 2px; font: italic 400 15px/1.3 "Cormorant Garamond", Georgia, serif; color: var(--r-muted); }
.hz-rch-carte__prix { display: block; margin-top: 4px; font: 400 11px/1.4 "Montserrat", Arial, sans-serif; letter-spacing: .04em; color: var(--r-grey); }

.hz-rch .hz-rch__tout { display: block; margin: 34px auto 0; padding: 15px 32px; border: 1px solid var(--r-ink); font: 400 10.5px/1 "Montserrat", Arial, sans-serif; letter-spacing: .24em; text-transform: uppercase; color: var(--r-ink); transition: background .3s, color .3s; }
.hz-rch .hz-rch__tout:hover, .hz-rch .hz-rch__tout:focus-visible { background: var(--r-ink); color: #fff; outline: 0; }
.hz-rch__tout[hidden] { display: none; }

/* rien trouvé */
.hz-rch__rien { max-width: 640px; }
.hz-rch__rien p { margin: 0 0 14px; font: 400 21px/1.45 "Cormorant Garamond", Georgia, serif; color: var(--r-ink); }
.hz-rch__rien p + p { font-size: 18px; color: var(--r-grey); }
.hz-rch__rien a { color: var(--r-cuivre); border-bottom: 1px solid currentColor; }
.hz-rch__attente { font: italic 400 19px/1.4 "Cormorant Garamond", Georgia, serif; color: var(--r-muted); }

@keyframes hzRchArrive { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.hz-rch__fondu { animation: hzRchFondu .35s ease both; }
@keyframes hzRchFondu { from { opacity: 0; } to { opacity: 1; } }

/* loupe de la barre collante (ajoutée par le script) */
.hz-sticky__loupe { flex: none; width: 38px; height: 38px; display: grid; place-items: center; margin-left: auto; padding: 0; border: 1px solid var(--site-line, #ebebeb); border-radius: 3px; background: none; color: var(--site-ink, #242424); cursor: pointer; transition: color .3s, border-color .3s; }
.hz-sticky__loupe:hover, .hz-search:hover { color: var(--site-accent, #c09578); border-color: var(--site-accent, #c09578); }
.hz-search { cursor: pointer; transition: color .3s, border-color .3s; }
/* loupe du téléphone, à droite du menu ≡ (ajoutée par le script) */
.hz-rch-mob { display: none; }

/* ---------- Tablette ---------- */
@media (max-width: 1100px) {
  .hz-rch__grille { grid-template-columns: repeat(3, 1fr); }
  .hz-rch__res { gap: 0 44px; }
}

/* ---------- Téléphone et tablette : panneau plein écran ---------- */
@media (max-width: 991px) {
  body .hz-mobile-actions .hz-rch-mob {
    display: grid; place-items: center; position: absolute; left: 40px; top: 50%; transform: translateY(-50%);
    width: 40px; height: 40px; padding: 0; border: 0; background: none; color: var(--site-ink, #242424); cursor: pointer;
  }
  .hz-rch__panneau { height: 100%; border-bottom: 0; box-shadow: none; transform: translateY(-12px); }
  .hz-rch__wrap { width: calc(100% - 36px); }
  .hz-rch__tete { height: 66px; }
  .hz-rch__logo { width: 66px; }
  .hz-rch__fermer { right: -12px; }
  .hz-rch__champ { margin-top: 4px; gap: 12px; }
  .hz-rch__q { font-size: 24px; height: 42px; line-height: 42px; }
  .hz-rch__dedans { padding: 26px 0 40px; }
  .hz-rch__res { grid-template-columns: 1fr; gap: 0; }
  .hz-rch__col--liens { margin-bottom: 30px; }
  .hz-rch__idees button { font-size: 20px; padding: 6px 0; }
  .hz-rch__liens a { font-size: 18px; }
  .hz-rch__grille { grid-template-columns: repeat(2, 1fr); gap: 24px 12px; }
  .hz-rch-carte__nom { font-size: 17px; }
  .hz-rch-carte__sub { font-size: 14px; }
}
@media (max-width: 359px) {
  body .hz-mobile-actions .hz-rch-mob { left: 34px; width: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  .hz-rch__voile, .hz-rch__panneau, .hz-rch__tiroir, .hz-rch-carte__img img, .hz-rch__fermer { transition: none !important; }
  .hz-rch__grille li, .hz-rch__fondu { animation: none !important; }
}
