/* Loupe de l'en-tête */
.hv-search-btn{display:inline-block;vertical-align:middle;margin:0 8px 0 0;padding:4px;border:0;background:none;color:inherit;cursor:pointer;line-height:0}
.hv-search-btn:hover{opacity:.7}
.hv-search-btn:focus-visible{outline:2px solid currentColor;outline-offset:2px}
/* Loupe : dans le menu, à droite de « Contact » (ordinateur) ; près du burger quand le menu complet est masqué (≤ 960 px, bascule du thème) */
.hv-search-item{display:inline-block;list-style:none}
.hv-search-item .hv-search-btn{margin:0 0 0 6px;vertical-align:middle}
@media (min-width:961px){.hv-search-btn--corner{display:none}}
@media (max-width:960px){.hv-search-item{display:none}}
/* Le panneau du burger garde son menu et son champ de recherche ; son texte d'aide (« en lieu et place du mot Search… ») n'a plus de sens */
.mobile_menu_wrapper .widget_text,.mobile_menu_wrapper .sidebar_widget{display:none!important}

/* Suggestions du champ du panneau du burger */
.mobile_menu_wrapper #autocomplete{display:none!important}
.hv-ac-box{margin:0 0 6px}
.hv-ac{list-style:none;margin:6px 0 0;padding:0}
.hv-ac li{margin:0;padding:0;border-bottom:1px solid #eee}
.hv-ac a{display:flex;align-items:center;gap:12px;padding:8px 0;color:#222;text-decoration:none;font-size:14px}
.hv-ac a:hover,.hv-ac a:focus-visible{background:#f4f4f4;outline:0}
.hv-ac img{flex:none;width:50px;height:37px;object-fit:cover}
.hv-ac__all a{justify-content:center;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:12px 0}
.hv-ac__none{margin:10px 0 0;font-size:14px;opacity:.7}

/* Recherche plein écran */
.hv-s[hidden]{display:none}
.hv-s{position:fixed;inset:0;z-index:100000;background:#fff;color:#222;overflow-y:auto;-webkit-overflow-scrolling:touch}
.hv-s__inner{max-width:1100px;margin:0 auto;padding:28px 20px 60px}
.hv-s__bar{display:flex;align-items:center;gap:12px;margin:0;border-bottom:2px solid #222}
.hv-s__q{flex:1;min-width:0;height:64px;margin:0;padding:0;border:0;border-radius:0;background:none;color:#222;font:inherit;font-size:clamp(20px,3.4vw,32px);outline:0;box-shadow:none}
.hv-s__q::placeholder{color:#8a8a8a}
.hv-s__q::-webkit-search-cancel-button,.hv-s__q::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}
.hv-s__close{flex:none;width:48px;height:48px;margin:0;padding:0;border:0;border-radius:0;background:none;color:#222;font-size:38px;line-height:1;cursor:pointer}
.hv-s__label{margin:22px 0 8px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.6}
.hv-s__sugg p{margin:0}
.hv-s__chip{display:inline-block;margin:0 8px 8px 0;padding:7px 15px;border:1px solid #ccc;border-radius:999px;background:#fff;color:#222;font:inherit;font-size:14px;cursor:pointer}
.hv-s__chip:hover,.hv-s__chip:focus-visible{border-color:#222;background:#222;color:#fff;outline:0}
.hv-s__count{margin:20px 0 14px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;opacity:.65}
.hv-s__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.hv-s__item{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#111;color:#fff;text-decoration:none}
.hv-s__item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.hv-s__item:hover img{transform:scale(1.05)}
.hv-s__item span{position:absolute;left:0;right:0;bottom:0;padding:24px 12px 10px;font-size:13px;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.hv-s__more{margin:22px 0 0;text-align:center}
.hv-s__all{color:#222;text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){.hv-s__grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){.hv-s__inner{padding:16px 16px 50px}.hv-s__grid{grid-template-columns:repeat(2,1fr);gap:8px}.hv-s__q{height:56px}}
@media (prefers-reduced-motion:reduce){.hv-s__item img{transition:none}}

/* Page de résultats */
.hv-sp__form{display:flex;gap:10px;max-width:640px;margin:0 auto 34px}
.hv-sp__q{flex:1;min-width:0;height:46px;margin:0;padding:0 14px;border:1px solid #cfcfcf;border-radius:0;background:#fff;color:#222;font:inherit;font-size:15px}
.hv-sp__q:focus{outline:2px solid #222;outline-offset:0;border-color:#222}
.hv-sp__go{height:46px;margin:0;padding:0 22px;border:0;border-radius:0;background:#222;color:#fff;font:inherit;font-size:12px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.hv-sp__none{text-align:center;margin:0 0 10px}
@media (max-width:520px){.hv-sp__form{flex-direction:column}}
