/* HCA ps1 — Refonte design, lot H : socle (jetons) + en-tête unifié + pied de page non fixe (2026-10-18).
   Présentation seulement. Jetons repris de HCA/design/refonte-listing-2026-10-18/tokens.css (préfixe --hca-).
   --Primary (couleur du compte) n'est plus utilisée pour les états interactifs de l'en-tête : accent fixe --hca-teal-600.
   Les sélecteurs sont préfixés par #header .hca-hdr pour l'emporter sur custom.css et sur les <style> en ligne des modules. */
:root{
  --hca-brand-navy:#0A579B;--hca-teal-600:#007A91;--hca-teal-500:#0B95AB;--hca-teal-700:#006577;--hca-link:#00718A;
  --hca-teal-50:#EAF8FB;--hca-teal-100:#D3F1F6;--hca-teal-200:#B9E6EE;
  --hca-ink:#0F1E4A;--hca-ink-2:#2C4A85;--hca-muted:#5A6B8F;
  --hca-bg:#F2F7FB;--hca-surface:#FFFFFF;--hca-img-bg:#F2F5F8;--hca-line:#E4E9F1;--hca-field:#C9D2E0;--hca-field-strong:#7C8AA5;
  --hca-danger:#B3261E;--hca-focus:0 0 0 3px rgba(0,122,145,.35);
  --hca-font:"Inter","Poppins",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --hca-fs-body:14px;--hca-lh:1.45;
  --hca-r-sm:6px;--hca-r-md:10px;--hca-r-lg:16px;--hca-r-pill:999px;
  --hca-shadow-1:0 1px 2px rgba(15,30,74,.06),0 1px 3px rgba(15,30,74,.04);
  --hca-shadow-2:0 6px 18px rgba(15,30,74,.10);
  --hca-shadow-3:0 12px 32px rgba(15,30,74,.14);
  --hca-shadow-header:0 1px 0 #E4E9F1,0 2px 8px rgba(15,30,74,.04);
  --hca-container:1440px;--hca-gutter:24px;
  --hca-target:40px;--hca-header-h:72px;--hca-nav-h:44px;
}
@media (pointer:coarse){:root{--hca-target:44px}}
@media (max-width:1199px){:root{--hca-gutter:20px}}
@media (max-width:767px){:root{--hca-gutter:16px}}

.hca-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}

/* ---------- Conteneur de l'en-tête ---------- */
/* custom.css : #header{position:fixed} + custom.js pose body{padding-top:<hauteur>} au chargement.
   En-tête collant (≥ 768 px) ou dans le flux (< 768 px) : plus besoin de ce décalage. */
body{padding-top:0!important}
#header{position:sticky!important;top:0;left:auto;width:100%;max-width:100%;z-index:1000;background:#fff;box-shadow:var(--hca-shadow-header);font-family:var(--hca-font)}
@media (max-width:767px){#header{position:relative!important}}
#header .header-banner:empty{display:none}
#header .hca-wrap{max-width:var(--hca-container);margin:0 auto;padding-left:var(--hca-gutter);padding-right:var(--hca-gutter);box-sizing:border-box}
#header .hca-hdr{color:var(--hca-ink);font-size:var(--hca-fs-body);line-height:var(--hca-lh)}
#header .hca-hdr *,#header .hca-hdr *::before,#header .hca-hdr *::after{box-sizing:border-box}
#header .hca-hdr style{display:none}

/* Bandeau mode démo (classe html.hca-demo posée par eg-refonte.js d'après la case .demo) */
#header .hca-demo-strip{display:none;background:var(--hca-ink);color:#fff;font-size:13px;text-align:center;padding:6px 12px}
html.hca-demo #header .hca-demo-strip{display:block}

/* ---------- Rangée 1 ---------- */
#header .hca-hdr__row{display:flex;align-items:center;gap:8px;min-height:var(--hca-header-h);flex-wrap:nowrap}
#header .hca-hdr__row>*{order:50}
#header .hca-hdr__logo{order:1;flex:none;display:flex;align-items:center;width:auto!important;margin-right:16px}
#header .hca-hdr__logo a{display:flex;align-items:center;outline-offset:3px}
#header .hca-hdr__logo h1{margin:0;font-size:inherit}
#header .hca-hdr__logo img,#header .hca-hdr__logo .logo{display:block;height:auto!important;max-height:44px;width:auto!important;max-width:180px;object-fit:contain}

/* Recherche (ps_searchbar : #search_widget) */
#header .hca-hdr #search_widget{order:2;flex:1 1 auto;max-width:640px;width:auto;min-width:0;margin:0;float:none;border-radius:var(--hca-r-pill);position:relative;overflow:visible}
#header .hca-hdr #search_widget form{position:relative;margin:0}
#header .hca-hdr #search_widget form i.icon-search{position:absolute;left:16px;top:50%;translate:none;transform:translateY(-50%);font-size:18px;line-height:1;color:var(--hca-teal-600);pointer-events:none;padding:0}
#header .hca-hdr #search_widget form input[name="search_query"]{width:100%;height:46px;line-height:normal;border-radius:var(--hca-r-pill);border:1px solid transparent;background:var(--hca-bg);padding:0 18px 0 46px!important;font-family:var(--hca-font);font-size:15px;font-weight:400;color:var(--hca-ink);box-shadow:none;outline:none}
#header .hca-hdr #search_widget form input[name="search_query"]::placeholder{font-size:15px;color:var(--hca-muted);opacity:1}
#header .hca-hdr #search_widget form input[name="search_query"]:hover{border-color:var(--hca-field)}
#header .hca-hdr #search_widget form input[name="search_query"]:focus{background:#fff;border-color:var(--hca-teal-600);box-shadow:var(--hca-focus)}
/* bouton « Rechercher » : conservé (Entrée et lecteurs d'écran), masqué visuellement */
#header .hca-hdr #search_widget form button[type="submit"]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;border:0!important;right:auto;top:auto;transform:none}

/* Interrupteurs (Mode démo = .price-show.hca-demo ; Prix = .btn-switch .price-show, rendu seulement si le compte peut afficher les prix) */
#header .hca-hdr .price-show{position:static;display:flex;align-items:center;padding:0;margin:0;width:auto;max-width:none;flex:none;background:none;left:auto;bottom:auto;z-index:auto}
#header .hca-hdr .price-show.hca-demo{order:3;margin-left:auto}
#header .hca-hdr .btn-switch{order:5;flex:none;display:flex;align-items:center;width:auto;max-width:none;margin:0;padding:0;border:0}
#header .hca-hdr .btn-switch:not(:has(.switch-mode)){display:none}
#header .hca-hdr .hca-hdr__sep{order:4;flex:none;width:1px;height:24px;background:var(--hca-line);margin:0 4px}
#header .hca-hdr__row:not(:has(.switch-mode)) .hca-hdr__sep{display:none}
html.hca-demo #header .hca-hdr__sep{display:none} /* en démo, egconfig masque le bouton Prix */
#header .hca-hdr .price-show>.btn{display:flex;align-items:center;gap:6px;padding:0 6px;margin:0;min-height:var(--hca-target);width:auto;background:none!important;border:0;box-shadow:none;border-radius:var(--hca-r-sm);color:var(--hca-ink);font-family:var(--hca-font);font-size:14px;font-weight:500;text-transform:none;letter-spacing:0;white-space:nowrap;cursor:default}
#header .hca-hdr .price-show>.btn:hover{background:var(--hca-bg)!important}
#header .hca-hdr .hca-sw{display:inline-flex;align-items:center;gap:8px;min-height:var(--hca-target);margin:0;width:auto;height:auto;position:relative;cursor:pointer;font-weight:500;color:var(--hca-ink)}
#header .hca-hdr .hca-sw__label{font-size:14px;font-weight:500;color:var(--hca-ink)}
#header .hca-hdr .hca-sw__euro{font-weight:700;font-size:16px;color:var(--hca-teal-600)!important;margin:0}
#header .hca-hdr span.switch{position:relative;display:inline-flex;width:auto;height:auto;margin:0}
#header .hca-hdr .price-show input.demo,#header .hca-hdr .price-show input.switch-mode{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
#header .hca-hdr .price-show .slider{position:relative;inset:auto;display:inline-block;flex:none;width:40px;height:22px;border-radius:11px;background:#C3CBD9;transition:background .15s;cursor:pointer}
#header .hca-hdr .price-show .slider::before{content:"";position:absolute;top:2px;left:2px;bottom:auto;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .15s;display:block}
#header .hca-hdr .price-show input:checked+.slider{background:var(--hca-teal-600)}
#header .hca-hdr .price-show input:checked+.slider::before{transform:translateX(18px)}
#header .hca-hdr .price-show input:focus-visible+.slider{box-shadow:var(--hca-focus)}
#header .hca-hdr .price-show input:disabled+.slider{opacity:.45;cursor:not-allowed}

/* Compte (ps_customersignin) et favoris (egwishlist) : icônes de 40-44 px, encre ; accent au survol */
#header .hca-hdr #_desktop_user_info{order:6;flex:none;margin:0}
#header .hca-hdr #_desktop_user_info .user-info,#header .hca-hdr #_desktop_user_info .account{display:flex}
#header .hca-hdr #_desktop_user_info .account a,#header .hca-hdr .wishlist_btn a{display:inline-flex;align-items:center;justify-content:center;width:var(--hca-target);height:var(--hca-target);border-radius:var(--hca-r-pill);position:relative;text-decoration:none;color:var(--hca-ink)}
#header .hca-hdr #_desktop_user_info .account a:hover,#header .hca-hdr .wishlist_btn a:hover{background:var(--hca-teal-50)}
#header .hca-hdr #_desktop_user_info .account a i,#header .hca-hdr #_desktop_user_info i{font-size:22px;color:var(--hca-ink)}
#header .hca-hdr #_desktop_user_info .account a:hover i{color:var(--hca-teal-600)}
#header .hca-hdr .wishlist_btn{order:7;flex:none;display:flex!important;margin:0}
#header .hca-hdr .wishlist_btn a i{font-size:24px;color:var(--hca-ink)}
#header .hca-hdr .wishlist_btn a:hover i{color:var(--hca-teal-600)}
#header .hca-hdr .wishlist_btn a .counter{position:absolute;top:2px;right:0;left:auto;bottom:auto;min-width:18px;width:auto;height:18px;padding:0 5px;border-radius:9px;background:var(--hca-teal-600);color:#fff;font-family:var(--hca-font);font-size:11px;font-weight:700;line-height:18px;display:block;text-align:center;box-shadow:0 0 0 2px #fff;font-variant-numeric:tabular-nums}
#header .hca-hdr .wishlist_btn a .counter.egwishlist-nb-zero{display:none}
#header .hca-hdr .notification{order:99}
#header .hca-hdr a:focus-visible,#header .hca-hdr button:focus-visible{outline:none;box-shadow:var(--hca-focus)}

/* ---------- Rangée 2 : navigation ---------- */
#header .hca-nav{border-top:1px solid var(--hca-line)}
#header .hca-nav__row{display:flex;align-items:stretch;gap:8px;height:var(--hca-nav-h)}
#header .hca-nav__item{position:relative;display:flex;align-items:center}
#header .hca-nav__link{display:inline-flex;align-items:center;gap:8px;height:100%;min-height:var(--hca-target);padding:0 14px;color:var(--hca-ink-2);font-family:var(--hca-font);font-size:14px;font-weight:500;text-decoration:none;border:0;border-bottom:3px solid transparent;background:none;cursor:pointer;margin:0 0 -1px;border-radius:0;white-space:nowrap}
#header .hca-nav__link svg{width:20px;height:20px;flex:none}
#header .hca-nav__link:hover{color:var(--hca-ink);background:var(--hca-bg);text-decoration:none}
#header .hca-nav__link[aria-current="page"],#header .hca-nav__link.is-current{color:var(--hca-ink);font-weight:700;border-bottom-color:var(--hca-teal-500)}
#header .hca-nav__count{display:inline-block;font-size:12px;font-weight:700;color:var(--hca-teal-600);background:var(--hca-teal-50);border-radius:10px;padding:0 7px;line-height:20px;font-variant-numeric:tabular-nums}
#header .hca-nav__chev{width:16px!important;height:16px!important;transition:transform .15s}
#header .hca-nav__link[aria-expanded="true"] .hca-nav__chev{transform:rotate(180deg)}

/* Menu « Catalogue » */
#header .hca-mega{position:absolute;top:100%;left:0;width:min(860px,calc(100vw - 48px));max-height:calc(100vh - 140px);overflow:auto;background:#fff;border:1px solid var(--hca-line);border-radius:0 0 var(--hca-r-lg) var(--hca-r-lg);box-shadow:var(--hca-shadow-3);padding:16px 24px;z-index:1010}
#header .hca-mega[hidden]{display:none}
#header .hca-mega__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
#header .hca-mega__all{display:inline-flex;align-items:center;gap:6px;min-height:var(--hca-target);font-weight:600;color:var(--hca-link);text-decoration:none}
#header .hca-mega__all:hover{text-decoration:underline}
#header .hca-mega__close{display:none;align-items:center;justify-content:center;width:var(--hca-target);height:var(--hca-target);border:0;border-radius:var(--hca-r-pill);background:none;color:var(--hca-ink);cursor:pointer}
#header .hca-mega__close svg{width:24px;height:24px}
#header .hca-mega__cols{display:grid;grid-template-columns:1fr 1fr;gap:8px 32px}
#header .hca-mega__title{margin:0 0 6px;font-family:var(--hca-font);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--hca-muted)}
#header .hca-mega__title a{color:inherit;text-decoration:none}
#header .hca-mega__title a:hover{color:var(--hca-ink);text-decoration:underline}
#header .hca-mega ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px}
#header .hca-mega li a{display:flex;align-items:center;min-height:var(--hca-target);padding:4px 8px;border-radius:var(--hca-r-sm);color:var(--hca-ink);font-size:14px;text-decoration:none;text-transform:none}
#header .hca-mega li a:hover{background:var(--hca-teal-50);color:var(--hca-ink)}
#header .hca-mega__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--hca-line);margin-top:12px;padding-top:8px}
#header .hca-mega__extra{display:flex;gap:4px 16px;flex-wrap:wrap}
#header .hca-mega__extra a{display:inline-flex;align-items:center;min-height:var(--hca-target);font-weight:600;color:var(--hca-ink);text-decoration:none}
#header .hca-mega__extra a:hover{text-decoration:underline}
#header .hca-mega__foot small{color:var(--hca-muted);font-size:12px}

/* ---------- Responsive ---------- */
@media (max-width:1199px){
  #header .hca-hdr .hca-sw__label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  #header .hca-hdr .hca-hdr__logo{margin-right:8px}
}
@media (max-width:1023px){#header .hca-hdr #search_widget{max-width:none}}
@media (max-width:767px){
  #header .hca-hdr__row{flex-wrap:wrap;min-height:0;padding-top:8px;padding-bottom:8px;gap:4px}
  #header .hca-hdr__logo{flex:1 1 auto;margin-right:0}
  #header .hca-hdr__logo img,#header .hca-hdr__logo .logo{max-height:36px;max-width:140px}
  #header .hca-hdr .price-show.hca-demo{margin-left:auto}
  #header .hca-hdr .hca-hdr__sep{display:none}
  #header .hca-hdr .price-show>.btn{padding:0 2px}
  #header .hca-hdr .price-show .slider{width:36px;height:20px}
  #header .hca-hdr .price-show .slider::before{width:16px;height:16px}
  #header .hca-hdr .price-show input:checked+.slider::before{transform:translateX(16px)}
  #header .hca-hdr #search_widget{order:20;flex:1 1 100%;max-width:none;width:100%;margin-top:4px;display:block!important;position:relative;top:auto;left:auto;opacity:1;visibility:visible;padding:0;box-shadow:none;background:none}
  #header .hca-hdr #search_widget form input[name="search_query"]{height:44px}
  #header .hca-nav__row{overflow-x:auto;scrollbar-width:none;gap:0;-webkit-overflow-scrolling:touch}
  #header .hca-nav__row::-webkit-scrollbar{display:none}
  #header .hca-nav__item{position:static}
  #header .hca-nav__link{padding:0 12px}
  #header .hca-mega{position:fixed;inset:0;width:auto;max-height:none;border-radius:0;padding:12px 16px 24px;z-index:2000}
  #header .hca-mega__close{display:inline-flex}
  #header .hca-mega__cols,#header .hca-mega ul{grid-template-columns:1fr}
}
@media (max-width:767px){html.hca-mega-open,html.hca-mega-open body{overflow:hidden}}

/* Mention « WEB CATALOGUE » du gabarit listing (widget CE 5b8e0a37) : retirée par défaut, option HCA_HDR_WEBCAT=1 pour la remettre.
   Seul le titre est masqué : le bouton « Masquer le filtre » et la puce de personnalisation restent. */
body:has(#header .hca-hdr--no-webcat) .eg-webcat-header>.h1{display:none}

/* ---------- Pied de page non fixe ---------- */
/* custom.css (≥ 641 px) : #footer{position:fixed;bottom:0} recouvrait le bas des pages. */
#footer{position:static!important;left:auto;bottom:auto;width:100%;z-index:auto;margin-top:48px}
#footer .footer-container{background:#fff!important;border-top:1px solid var(--hca-line);color:var(--hca-muted);font-family:var(--hca-font);padding:16px 0;margin:0}
#footer .footer-container .copyright p,#footer .footer-container .copyright span{color:var(--hca-muted);font-size:13px}
@media (max-width:640px){#footer{padding-bottom:0}}

/* ==========================================================================
   Lot 2 (2026-10-18) : colonne de filtres du listing (widget CE listing-filters d'egfacetedsearch).
   Présentation seulement : aucune règle (facettes, ordre, valeurs, compteurs, restriction, liens js-search-link) n'est touchée.
   Titre « Filtres » et libellé « Effacer les filtres » : réglages du widget dans le gabarit CE (données ce_meta 7170101).
   Préfixe body .elementor .elementor-widget-listing-filters : l'emporte sur eg-recherche.css, eg-facettes-retours.css et le CSS du widget.
   ========================================================================== */
:root{--hca-sidebar:300px;--hca-strip-h:0px}
html.hca-demo{--hca-strip-h:31px}
@media (max-width:1199px){:root{--hca-sidebar:260px}}

/* ---- Disposition (≥ 1024 px) : colonne de 300 px (260 px de 1024 à 1199), 24 px d'écart, collante sous l'en-tête ---- */
@media (min-width:1024px){
  body .elementor .elementor-row:has(> .sidebar_filter.elementor-column){display:grid;grid-template-columns:var(--hca-sidebar) minmax(0,1fr);column-gap:24px;align-items:start}
  body .elementor .elementor-row:has(> .sidebar_filter.elementor-column) > .elementor-column{width:auto!important;max-width:none;min-width:0}
  body .elementor .sidebar_filter.elementor-column{position:sticky;top:calc(var(--hca-header-h) + var(--hca-nav-h) + var(--hca-strip-h) + 16px);z-index:5}
  body .elementor .sidebar_filter.elementor-column > .elementor-element-populated{padding:0!important;margin:0!important}
  body .elementor .elementor-widget-listing-filters .ce-filters{max-height:calc(100vh - var(--hca-header-h) - var(--hca-nav-h) - var(--hca-strip-h) - 32px);overflow-y:auto;overscroll-behavior:contain}
  /* aucune facette rendue (ex. catégorie vide pour le compte) : pas de colonne vide, le contenu prend toute la largeur */
  body .elementor .elementor-row > .sidebar_filter.elementor-column:not(:has(.ce-filters .elementor-field-group)){display:none}
  body .elementor .elementor-row > .sidebar_filter.elementor-column:not(:has(.ce-filters .elementor-field-group)) ~ .elementor-column{grid-column:1 / -1}
  /* préférence « filtre masqué » (option HCA_LST_FILTRE_TOGGLE=1 seulement) : une seule colonne */
  #content-wrapper-parent.fullwidth .elementor-row:has(> .sidebar_filter.elementor-column){grid-template-columns:minmax(0,1fr)}
}

/* ---- Carte « Filtres » ---- */
body .elementor .elementor-widget-listing-filters .ce-filters{font-family:var(--hca-font);color:var(--hca-ink);font-size:var(--hca-fs-body);line-height:var(--hca-lh);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;align-content:start}
body .elementor .elementor-widget-listing-filters .ce-filters > *{grid-column:1 / -1;min-width:0}
@media (min-width:1024px){
  body .elementor .elementor-widget-listing-filters .ce-filters{background:var(--hca-surface);border:1px solid var(--hca-line);border-radius:var(--hca-r-lg);padding:20px 20px 16px;box-shadow:var(--hca-shadow-1);box-sizing:border-box}
}
body .elementor .elementor-widget-listing-filters .ce-filters > .elementor-heading-title{grid-column:1;margin:0;padding:0;font-family:var(--hca-font);font-size:18px;font-weight:700;line-height:40px;color:var(--hca-ink);text-transform:none;letter-spacing:0}
body .elementor .elementor-widget-listing-filters .ce-filters > .elementor-heading-title:empty{display:none}
body .elementor .elementor-widget-listing-filters .ce-filters > .ce-filters__clear{grid-column:2;grid-row:1;justify-self:end;margin:0}
body .elementor .elementor-widget-listing-filters .ce-filters > .elementor-heading-title + .ce-filters__clear{grid-row:auto}
body .elementor .elementor-widget-listing-filters .ce-filters__clear a.elementor-button{display:inline-flex;align-items:center;min-height:var(--hca-target);padding:0 2px;background:none!important;border:0!important;box-shadow:none;color:var(--hca-link)!important;font-family:var(--hca-font);font-size:14px;font-weight:500;text-decoration:underline!important;text-underline-offset:3px;text-transform:none;letter-spacing:0}
body .elementor .elementor-widget-listing-filters .ce-filters__clear a.elementor-button:hover{color:var(--hca-teal-700)!important;text-decoration-thickness:2px!important}
body .elementor .elementor-widget-listing-filters .ce-filters__clear .elementor-button-icon{display:none}
body .elementor .elementor-widget-listing-filters .ce-filters a:focus-visible,
body .elementor .elementor-widget-listing-filters .ce-filters summary:focus-visible,
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tab:focus-visible,
body .elementor .elementor-widget-listing-filters .ce-filters [role=button]:focus-visible{outline:2px solid var(--hca-teal-600)!important;outline-offset:2px!important;border-radius:var(--hca-r-sm)}

/* ---- Rubriques : titre 15 px / 600 en casse normale, au pluriel, cible de 40 px ---- */
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group{margin:0;padding:8px 0 12px;border-top:1px solid var(--hca-line)}
body .elementor .elementor-widget-listing-filters .ce-filters > .elementor-heading-title + .elementor-field-group,
body .elementor .elementor-widget-listing-filters .ce-filters > .ce-filters__clear + .elementor-field-group{border-top:0}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tab{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:var(--hca-target);margin:0;padding:0;font-family:var(--hca-font);font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--hca-ink);border:0!important}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__title{display:inline-flex;align-items:center;flex:1 1 auto;min-height:var(--hca-target);color:var(--hca-ink);font:inherit;text-transform:none}
/* libellés stockés au singulier (« Fournisseur », « Marque ») et utilisés tels quels dans les URL ?q= : pluriel affiché seulement */
body .elementor .elementor-widget-listing-filters .eg-facet-supplier .ce-filters__title::after,
body .elementor .elementor-widget-listing-filters .eg-facet-manufacturer .ce-filters__title::after{content:"s"}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tab-icon{display:inline-grid;place-items:center;width:24px;height:24px;color:var(--hca-ink-2)}
/* rotation du chevron à l'ouverture : règle de CE (angle-right → 90°) */
@media (prefers-reduced-motion:reduce){body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tab-icon>*{transition:none}}

/* ---- Options : case de 20 px AVANT le libellé, compteur en --hca-muted, cible de 40 px ---- */
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) a.elementor-field-option{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:var(--hca-target);padding:4px 6px;margin:0 -6px;border-radius:var(--hca-r-sm);color:var(--hca-ink);font-family:var(--hca-font);font-size:14px;text-decoration:none;background:none;box-shadow:none}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) a.elementor-field-option:hover{background:#F5F8FB;color:var(--hca-ink)}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) a.elementor-field-option:has(input:checked){background:var(--hca-teal-50)}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) .elementor-field-option .elementor-field-label{font-family:var(--hca-font);font-size:14px;font-weight:400;line-height:1.35;color:var(--hca-ink)}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) a.elementor-field-option:hover .elementor-field-label{color:var(--hca-ink)}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) a.elementor-field-option:has(input:checked) .elementor-field-label{font-weight:600}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) .elementor-field-label[data-magnitude]::after{color:var(--hca-muted);font-size:13px;font-weight:400;font-variant-numeric:tabular-nums}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) .elementor-field-option .ce-checkbox{flex:none;display:inline-grid;place-items:center;width:20px;height:20px;margin:0;border:1.5px solid var(--hca-field-strong);border-radius:4px;background:#fff;color:transparent;font-size:12px;line-height:1;box-sizing:border-box}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) .elementor-field-option input:checked ~ .ce-checkbox{background:var(--hca-teal-600);border-color:var(--hca-teal-600);color:#fff}
body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) a.elementor-field-option:hover input:not(:checked) ~ .ce-checkbox{border-color:var(--hca-teal-600)}

/* ---- Arbre des catégories (conservé) : chevron 24 px avant la case, retrait de 22 px par niveau ---- */
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-children{margin:0 0 0 12px;padding:0 0 0 10px;border-left:0}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-node > summary{min-height:var(--hca-target);gap:0}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-node > summary::before{width:24px;height:24px;border-radius:4px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l6 6-6 6' fill='none' stroke='%232C4A85' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px 14px no-repeat}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-node > summary:hover::before{background-color:#EEF2F7}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-node > summary > a.elementor-field-option{margin-left:0}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level1 > .elementor-field-option .elementor-field-label,
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level1 > details > summary .elementor-field-label{font-size:14px;font-weight:600;color:var(--hca-ink);text-transform:none}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level2 > .elementor-field-option .elementor-field-label,
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level2 > details > summary .elementor-field-label,
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level3 > .elementor-field-option .elementor-field-label,
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level3 > details > summary .elementor-field-label,
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level4 > .elementor-field-option .elementor-field-label,
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-item--level4 > details > summary .elementor-field-label{font-size:14px;font-weight:400;color:var(--hca-ink)}
body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-group{color:var(--hca-ink-2);font-weight:600}

/* ---- Recherche dans Fournisseurs / Marques ---- */
body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-search{margin:4px 0 8px}
body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-search__input{min-height:var(--hca-target);border:1px solid var(--hca-field-strong);border-radius:var(--hca-r-sm);font-family:var(--hca-font);font-size:14px;color:var(--hca-ink)}
body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-search__input::placeholder{color:var(--hca-muted)}
body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-search__input:hover{border-color:var(--hca-teal-600)}
body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-search__input:focus,
body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-search__input:focus-visible{border-color:var(--hca-teal-600);outline:0!important;box-shadow:var(--hca-focus)}
@media (max-width:1023px){body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-search__input{font-size:16px}}

/* ---- Filtres actifs (puces de tête) et valeurs sélectionnées (bas de rubrique) ---- */
body .elementor .elementor-widget-listing-filters .ce-filters a.eg-chip{min-height:var(--hca-target);border-radius:var(--hca-r-pill);background:var(--hca-teal-50);color:var(--hca-ink-2);box-shadow:inset 0 0 0 1px var(--hca-teal-200);font-family:var(--hca-font);font-size:13px}
body .elementor .elementor-widget-listing-filters .ce-filters a.eg-chip:hover{background:var(--hca-teal-100);color:var(--hca-ink);box-shadow:inset 0 0 0 1px var(--hca-teal-600)}
body .elementor .elementor-widget-listing-filters .ce-filters .eg-chip__facet,
body .elementor .elementor-widget-listing-filters .ce-filters .eg-facet-selected__title{color:var(--hca-muted)}

/* ---- Tablette et mobile (< 1024 px) : barre « Filtres » collante + panneau (tiroir CE) ---- */
@media (max-width:1023px){
  /* en-tête du lot H : collant (≥ 768 px) sur 2 rangées, dans le flux sous 768 px */
  body{--eg-header-h:calc(var(--hca-header-h) + var(--hca-nav-h) + var(--hca-strip-h) + 1px)}
  body .elementor .sidebar_filter.elementor-column,
  body .elementor .sidebar_filter.elementor-column.show{background:#fff;border-bottom:1px solid var(--hca-line)}
  .elementor .ce-filters__toggle,
  body .elementor .elementor-widget-listing-filters .ce-filters__toggle .elementor-button{width:auto}
  body .elementor .elementor-widget-listing-filters .ce-filters__toggle .elementor-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--hca-r-pill);border:1px solid var(--hca-field-strong);background:#fff;color:var(--hca-ink);font-family:var(--hca-font);font-size:15px;font-weight:600;text-transform:none;letter-spacing:0;box-shadow:none}
  body .elementor .elementor-widget-listing-filters .ce-filters__toggle .elementor-button:hover{border-color:var(--hca-teal-600);color:var(--hca-ink)}
  body .elementor .elementor-widget-listing-filters .ce-filters__toggle .elementor-button-icon{color:var(--hca-ink-2)}
  body .elementor .elementor-widget-listing-filters .eg-filters-count{background:var(--hca-teal-600);color:#fff}
  /* panneau ouvert : colonne flex d'eg-recherche.css conservée (pied « Afficher les résultats » plaqué en bas) ; titre puis « Effacer les filtres » */
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters{display:flex;flex-direction:column;align-items:stretch;padding:8px 20px 0;background:#fff}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .elementor-heading-title{line-height:44px;padding-right:48px}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .ce-filters__clear{align-self:flex-start;margin-top:-4px}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .dialog-close-button{color:var(--hca-ink-2)}
  body .elementor .elementor-widget-listing-filters .ce-filters .eg-filters-apply{background:var(--hca-teal-600);border-radius:var(--hca-r-sm);font-family:var(--hca-font);font-weight:600}
  body .elementor .elementor-widget-listing-filters .ce-filters .eg-filters-apply:hover{background:var(--hca-teal-700)}
  body .elementor .elementor-widget-listing-filters .ce-filters .elementor-field-group:not(.elementor-field-type-color) a.elementor-field-option,
  body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tree-node > summary,
  body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__tab,
  body .elementor .elementor-widget-listing-filters .ce-filters .ce-filters__title{min-height:44px}
}
@media (max-width:767px){body{--eg-header-h:0px}}

/* ---- Bouton « Masquer / Afficher le filtre » (widget CE 5b8e0a37) : retiré par défaut, option HCA_LST_FILTRE_TOGGLE=1 pour le remettre.
   Tant qu'il est retiré, la préférence « filtre masqué » d'un compte (eg_color.save_config=0) n'est pas appliquée à l'affichage :
   sans bouton, la colonne ne pourrait plus être rouverte. La préférence enregistrée n'est pas modifiée. ---- */
body:has(#header .hca-hdr--no-ftoggle) #showHideSearch{display:none!important}
@media (min-width:1024px){
  body:has(#header .hca-hdr--no-ftoggle) #content-wrapper-parent.fullwidth .sidebar_filter.elementor-column{display:block!important}
  body:has(#header .hca-hdr--no-ftoggle) #content-wrapper-parent.fullwidth .elementor-row:has(> .sidebar_filter.elementor-column){grid-template-columns:var(--hca-sidebar) minmax(0,1fr)}
}
/* mention « WEB CATALOGUE » ET bouton retirés : le bloc d'en-tête vide (marge de 40 px) disparaît aussi */
body:has(#header .hca-hdr--no-webcat.hca-hdr--no-ftoggle) .elementor-section:has(.eg-webcat-header){display:none}

/* ---- /recherche (repli natif) : la grille CE porte une marge négative de 10 px qui débordait de 10 px à 820 px ---- */
@media (max-width:1199px){body#search .elementor .ce-product-grid.products{margin-left:0;margin-right:0}}

/* ================= Retouches lot H (2026-10-18) ================= */
/* Connexion et mot de passe oublié : en-tête affiché (custom.css le masquait : #authentication #header{display:none}).
   Visiteur : rangée 1 réduite au logo (header.tpl). Le pied de page de ces écrans reste masqué (choix d'origine). */
body#authentication #header,body#password #header{display:block!important}
body#authentication,body#password{padding-top:0!important}
body#authentication #header .hca-hdr,body#password #header .hca-hdr{position:relative;z-index:3}
body#authentication #wrapper,body#password #wrapper{padding-top:32px}
/* custom.css donne une marge basse de 25 px aux logos de ces écrans : le logo de l'en-tête reste centré */
body#authentication #header .hca-hdr__logo img,body#password #header .hca-hdr__logo img{margin:0!important}
/* logo déjà dans l'en-tête : le doublon du formulaire est retiré */
body#authentication .form > .logo,body#password .form > .logo{display:none}

/* Pied de page : lien « Nous contacter » (page contact native) */
#footer .footer-container .copyright .hca-ftr__sep{margin:0 8px;color:var(--hca-field-strong)}
#footer .footer-container .copyright a.hca-ftr__link{display:inline-flex;align-items:center;min-height:var(--hca-target);color:var(--hca-link);font-size:13px;font-weight:500;text-decoration:underline;text-underline-offset:2px}
#footer .footer-container .copyright a.hca-ftr__link:hover{color:var(--hca-teal-700)}
#footer .footer-container .copyright a.hca-ftr__link:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:2px;border-radius:var(--hca-r-sm)}

/* ==========================================================================
   Lot 3 (2026-10-18) : en-tête de résultats du listing — titre <h1>, bandeau « Personnalisation du catalogue »,
   barre d'outils (« N produits », « Trier : », bascule grille / liste, « Exporter la liste »).
   Présentation seulement. Gabarits CE concernés : 7170101 (toutes les catégories) et 5170101 (recherche, marques, nouveautés,
   meilleures ventes, promotions). Widgets ajoutés dans leurs données : .hca-perso-widget et .hca-lh-count-widget
   (tags shortcode -> function.eg_listing_context.php, rafraîchis en AJAX par CE). Vue liste et export : eg-refonte.js.
   ========================================================================== */

/* ---- Zone titre + barre d'outils : une colonne (la rangée CE 50/50 devient une pile) ---- */
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container > .elementor-row{display:flex;flex-direction:column;align-items:stretch}
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container > .elementor-row > .elementor-column{width:100%!important;max-width:100%;display:block}
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container > .elementor-row > .elementor-column > .elementor-element-populated{padding:0!important}
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container > .elementor-row > .elementor-column:not(:has(.elementor-widget)){display:none}
body .elementor .elementor-inner-section:has(.hca-lh-count-widget){margin-bottom:0;width:100%}
/* la barre d'outils ne doit jamais imposer sa largeur (rangées flex de CE) : elle passe à la ligne */
body .elementor .elementor-inner-section:has(.hca-lh-count-widget),
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container,
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container > .elementor-row,
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container > .elementor-row > .elementor-column,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) > .elementor-column-wrap,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) > .elementor-column-wrap > .elementor-widget-wrap,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) > .elementor-column-wrap > .elementor-widget-wrap > *{min-width:0;max-width:100%}
body .elementor .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container > .elementor-row{width:100%;flex:1 1 100%}

/* Colonne du titre : fil d'Ariane / chemin au-dessus du <h1> */
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) > .elementor-column-wrap > .elementor-widget-wrap{display:flex;flex-direction:column;align-items:stretch}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .elementor-widget-breadcrumb,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .eg-cat-path-widget{order:1;margin:0 0 4px!important}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .elementor-widget-heading:has(h1){order:2;margin:0!important}
/* catégorie d'accueil : le fil « Accueil » seul doublonnait le titre */
body .elementor .elementor-widget-breadcrumb:has(.ce-breadcrumb[data-depth="1"]){display:none}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .ce-breadcrumb,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .ce-breadcrumb li,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .ce-breadcrumb li:last-child,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .eg-cat-path{font-family:var(--hca-font);font-size:13px!important;font-weight:400!important;line-height:1.45;color:var(--hca-muted)!important;text-transform:none}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .ce-breadcrumb a,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .eg-cat-path a{color:var(--hca-muted)!important;text-decoration:underline;text-underline-offset:2px}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .ce-breadcrumb a:hover,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget-heading h1) .eg-cat-path a:hover{color:var(--hca-ink)!important}

/* Titre <h1> (« Catalogue produits », nom de la catégorie, « Résultats pour « … » ») */
body .elementor .elementor-element.elementor-widget-heading h1.elementor-heading-title{margin:0 0 12px;font-family:var(--hca-font);font-size:32px;font-weight:800;line-height:1.2;letter-spacing:0;color:var(--hca-ink);text-transform:none;overflow-wrap:anywhere}
body .elementor .elementor-element.elementor-widget-heading h1.elementor-heading-title a{color:inherit;text-decoration:none}
body .elementor .elementor-element.elementor-widget-heading h1.elementor-heading-title a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
body .elementor .elementor-element.elementor-widget-heading h1.elementor-heading-title a:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:3px;border-radius:var(--hca-r-sm)}
@media (max-width:767px){body .elementor .elementor-element.elementor-widget-heading h1.elementor-heading-title{font-size:24px;margin-bottom:8px}}

/* ---- Colonne outils : bandeau perso sur toute la largeur, puis la barre d'outils ---- */
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget){justify-content:flex-start!important}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) > .elementor-column-wrap > .elementor-widget-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0 12px;font-family:var(--hca-font)}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) > .elementor-column-wrap > .elementor-widget-wrap > *{width:auto;margin:0!important}
body .elementor .hca-perso-widget{flex:0 0 100%;order:-1}
body .elementor .hca-perso-widget:not(:has(.hca-perso:not([hidden]), .eg-noperso-notice)){display:none}
body .elementor .hca-perso-widget .elementor-heading-title{font:inherit;color:inherit;line-height:inherit}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) > .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget{margin-right:auto!important}
body .elementor .hca-lh-count-widget .elementor-heading-title{font:inherit;line-height:inherit}
body .elementor .hca-lh__count{margin:0;font-family:var(--hca-font);font-size:18px;font-weight:700;line-height:var(--hca-target);color:var(--hca-ink);font-variant-numeric:tabular-nums;white-space:nowrap}

/* ---- Bandeau « Personnalisation du catalogue » : encadré à partir de 768 px, puce repliable (option B) en dessous ---- */
body .elementor .hca-perso__box{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px 16px;align-items:start;background:var(--hca-teal-50);border:1px solid var(--hca-teal-200);border-radius:var(--hca-r-md);padding:14px 20px;font-family:var(--hca-font);color:var(--hca-ink);font-size:14px;line-height:var(--hca-lh)}
body .elementor .hca-perso__icon{color:var(--hca-teal-600);margin-top:1px;flex:none}
body .elementor .hca-perso__title{margin:0 0 2px;font-family:var(--hca-font);font-size:15px;font-weight:700;line-height:1.4;color:var(--hca-ink);text-transform:none;letter-spacing:0}
body .elementor .hca-perso__lines{margin:0;color:var(--hca-ink-2);font-size:14px;line-height:var(--hca-lh)}
body .elementor .hca-perso__item{display:inline}
body .elementor .hca-perso__item + .hca-perso__item::before{content:"•";margin:0 8px;color:var(--hca-teal-500)}
body .elementor .hca-perso__k{font-weight:600;color:var(--hca-ink)}
body .elementor .hca-perso__actions{display:flex;align-items:center;gap:4px 16px;align-self:center;white-space:nowrap}
body .elementor .hca-perso__sep{width:1px;height:20px;background:var(--hca-teal-200)}
body .elementor .hca-perso__reset{display:inline;margin:0}
body .elementor .hca-perso__link,
body .elementor .hca-perso__resetbtn{display:inline-flex;align-items:center;min-height:var(--hca-target);padding:0;margin:0;border:0;background:none;font-family:var(--hca-font);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;box-shadow:none;text-transform:none}
body .elementor .hca-perso__link{color:var(--hca-link)}
body .elementor .hca-perso__link:hover{color:var(--hca-teal-700)}
body .elementor .hca-perso__resetbtn{color:var(--hca-danger)}
body .elementor .hca-perso__resetbtn:hover{color:#8C1D17}
body .elementor .hca-perso__resetbtn[disabled]{opacity:.6;cursor:progress}
body .elementor .hca-perso__link:focus-visible,
body .elementor .hca-perso__resetbtn:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:2px;border-radius:var(--hca-r-sm)}
@media (min-width:768px){body .elementor .hca-perso__chip{display:none!important}}
@media (max-width:767px){body .elementor .hca-perso__box{display:none!important}}
@media (min-width:768px) and (max-width:1023px){
  body .elementor .hca-perso__box{grid-template-columns:auto minmax(0,1fr)}
  body .elementor .hca-perso__actions{grid-column:2}
}

/* ---- Barre d'outils : « Trier : » ---- */
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .elementor-widget-listing-sort-order{flex:none}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .elementor-widget-listing-sort-order > .elementor-widget-container{padding:0!important;box-shadow:none!important;border:0!important}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order{display:flex;align-items:center;gap:6px;font-family:var(--hca-font)}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order::before{content:"Trier :";font-size:14px;color:var(--hca-muted);white-space:nowrap}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .select-title{min-height:var(--hca-target);padding:0 6px 0 10px;gap:4px;border:1px solid transparent;border-radius:var(--hca-r-sm);font:500 14px/1 var(--hca-font);letter-spacing:0;color:var(--hca-ink);white-space:nowrap}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .select-title:hover{border-color:var(--hca-field);color:var(--hca-ink)}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .select-title:focus-visible{outline:2px solid var(--hca-teal-600)!important;outline-offset:1px!important;box-shadow:var(--hca-focus)}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .select-title i{font-size:20px}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .dropdown-menu{top:calc(100% + 4px);padding:6px;border:1px solid var(--hca-line);border-radius:var(--hca-r-md);box-shadow:var(--hca-shadow-3)}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .dropdown-menu > a.select-list{display:flex;align-items:center;min-height:var(--hca-target);padding:0 12px;border-radius:var(--hca-r-sm);font:400 14px/1.3 var(--hca-font);color:var(--hca-ink)}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .dropdown-menu > a.select-list:hover,
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .dropdown-menu > a.select-list:focus{background:var(--hca-teal-50);color:var(--hca-ink)}
body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .ce-sort-order .products-sort-order .dropdown-menu > a.select-list.current{font-weight:600;color:var(--hca-teal-600)}

/* ---- Bascule grille / liste (eg-refonte.js, choix gardé dans localStorage « hcaListView ») ---- */
body .elementor .hca-view{display:flex;gap:4px;flex:none}
body .elementor .hca-view[hidden],body .elementor .hca-exp[hidden],body .elementor .hca-exp__menu[hidden]{display:none!important}
body .elementor .hca-view button{display:grid;place-items:center;width:var(--hca-target);height:var(--hca-target);padding:0;border:1px solid transparent;border-radius:var(--hca-r-sm);background:none;color:var(--hca-ink-2);cursor:pointer}
body .elementor .hca-view button svg{width:20px;height:20px}
body .elementor .hca-view button:hover{border-color:var(--hca-teal-200)}
body .elementor .hca-view button[aria-pressed="true"]{background:var(--hca-teal-100);color:var(--hca-teal-600)}
body .elementor .hca-view button:focus-visible,body .elementor .hca-exp button:focus-visible,body .elementor .hca-exp__item:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:2px}
body .elementor .hca-tb-sep{width:1px;height:28px;background:var(--hca-field);flex:none}
body .elementor .hca-view[hidden] + .hca-tb-sep{display:none}

/* ---- « Exporter la liste » : relais du bouton d'hcacatalogueexport (même appel, même jeton) + menu « Plus d'options » ---- */
html.hca-tb-export .elementor [data-hcace-listing]{display:none!important}
html.hca-demo .elementor .hca-exp{display:none!important}
body .elementor .hca-exp{position:relative;display:inline-flex;flex:none}
body .elementor .hca-exp button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--hca-target);margin:0;border:1px solid var(--hca-teal-600);background:#fff;color:var(--hca-teal-600);font:600 14px/1.2 var(--hca-font);text-transform:none;cursor:pointer;box-shadow:none}
body .elementor .hca-exp button:hover{background:var(--hca-teal-50)}
body .elementor .hca-exp button[disabled]{opacity:.6;cursor:progress}
body .elementor .hca-exp__btn{padding:0 16px;border-radius:var(--hca-r-sm) 0 0 var(--hca-r-sm)}
body .elementor .hca-exp__btn svg{width:18px;height:18px;flex:none}
body .elementor .hca-exp__more{width:var(--hca-target);padding:0;border-left-width:0!important;border-radius:0 var(--hca-r-sm) var(--hca-r-sm) 0}
body .elementor .hca-exp__more svg{width:16px;height:16px;transition:transform .15s}
body .elementor .hca-exp__more[aria-expanded="true"] svg{transform:rotate(180deg)}
body .elementor .hca-exp__menu{position:absolute;top:calc(100% + 4px);right:0;z-index:1001;min-width:220px;padding:6px;background:#fff;border:1px solid var(--hca-line);border-radius:var(--hca-r-md);box-shadow:var(--hca-shadow-3)}
body .elementor .hca-exp__item{display:flex;align-items:center;min-height:var(--hca-target);padding:0 12px;border-radius:var(--hca-r-sm);font:500 14px/1.3 var(--hca-font);color:var(--hca-ink);text-decoration:none;white-space:nowrap}
body .elementor .hca-exp__item:hover{background:var(--hca-teal-50);color:var(--hca-ink);text-decoration:none}

/* ---- Vue liste (≥ 768 px ; sous 768 px la carte reste celle d'aujourd'hui : cartes horizontales = lot 6) ---- */
@media (min-width:768px){
  html.hca-view-list .elementor #js-product-list .ce-products{grid-template-columns:minmax(0,1fr)!important;row-gap:12px!important;column-gap:0!important}
  html.hca-view-list .elementor #js-product-list .ce-products > .elementor{width:100%!important;max-width:none;justify-self:stretch}
  html.hca-view-list .elementor #js-product-list .ce-products > .elementor > article{width:100%}
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-widget-shortcode:has(.wishlist-button-add){position:absolute!important;top:0;bottom:0;right:16px;display:flex;align-items:center;width:auto!important;margin:0!important;z-index:2}
  html.hca-view-list .elementor #js-product-list .ce-products article .wishlist-button-add .btn-egwishlist-add{top:50%!important;bottom:auto!important;right:0!important;transform:translateY(-50%)}
  html.hca-view-list .elementor #js-product-list .ce-products > .elementor > article > .elementor-top-section > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap > .elementor-widget-wrap{display:grid;grid-template-columns:160px minmax(0,1fr) auto;grid-template-rows:1fr auto auto auto 1fr;column-gap:24px;row-gap:0;align-items:center;position:relative}
  html.hca-view-list .elementor #js-product-list .elementor-widget-product-miniature-image{grid-column:1;grid-row:1 / 6;align-self:center}
  html.hca-view-list .elementor #js-product-list .elementor-widget-product-miniature-name{grid-row:2}
  html.hca-view-list .elementor #js-product-list .elementor-widget-product-meta{grid-row:3}
  html.hca-view-list .elementor #js-product-list .elementor-widget-product-miniature-image > .elementor-widget-container{margin:0!important}
  html.hca-view-list .elementor #js-product-list .elementor-widget-product-miniature-image img{height:110px!important;width:100%}
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-widget:not(.elementor-widget-product-miniature-image):not(:has(.wishlist-button-add)),
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-inner-section:not(:has(.elementor-widget-button)){grid-column:2}
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-inner-section:not(:has(.elementor-widget-button)){grid-row:4}
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-inner-section:has(.elementor-widget-button){grid-column:3;grid-row:1 / 6;margin:0 68px 0 0!important;width:auto}
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-inner-section:has(.elementor-widget-button) .elementor-column{width:auto!important}
  html.hca-view-list .elementor #js-product-list .elementor-widget-product-miniature-name > .elementor-widget-container{margin:0 0 6px!important}
  html.hca-view-list .elementor #js-product-list .elementor-widget-product-meta > .elementor-widget-container{margin:0!important}
}

/* ---- /recherche et autres listes du gabarit 5170101 ---- */
/* titre puis barre d'outils (dans le gabarit, la rangée du tri précédait celle du titre) */
body .elementor-5170101 .elementor-widget-wrap:has(> .elementor-inner-section .hca-lh-count-widget){display:flex;flex-direction:column;align-items:stretch}
body .elementor-5170101 .elementor-widget-wrap:has(> .elementor-inner-section .hca-lh-count-widget) > .elementor-inner-section:has(h1){order:1}
body .elementor-5170101 .elementor-widget-wrap:has(> .elementor-inner-section .hca-lh-count-widget) > .elementor-inner-section:has(.hca-lh-count-widget){order:2}
body .elementor-5170101 .elementor-widget-wrap:has(> .elementor-inner-section .hca-lh-count-widget) > .elementor-widget{order:3}
/* « Web Catalogue » (retiré comme sur les catégories, option HCA_HDR_WEBCAT), module Advanced Search désactivé (vide)
   et libellé « FILTRES » sans fonction (pas de colonne de filtres sur ce gabarit) : la liste prend toute la largeur */
body:has(#header .hca-hdr--no-webcat) .elementor-5170101 .elementor-top-section > .elementor-container > .elementor-row > .elementor-column:has(> .elementor-column-wrap .elementor-widget-ps-widget-module){display:none}
body:has(#header .hca-hdr--no-webcat) .elementor-5170101 .elementor-top-section > .elementor-container > .elementor-row > .elementor-column:has(> .elementor-column-wrap .elementor-widget-ps-widget-module) + .elementor-column{width:100%!important;max-width:100%}
body .elementor-5170101 .elementor-widget-icon-list:not(.elementor-widget-listing-pagination):not(:has(a)){display:none}
/* custom.css du thème : #content-wrapper .products en flex, cartes à 33,33 % ; l'écart de 50 px du gabarit n'en laissait tenir que 2 par ligne.
   Même réglage que le gabarit des catégories (écart horizontal 0) : 3 par ligne, comme décidé. */
body .elementor-5170101 #js-product-list .ce-products{column-gap:0!important}
body .elementor-5170101 .elementor-inner-section:has(h1) .elementor-row{align-items:flex-end}
body .elementor-5170101 .elementor-inner-section:has(h1) > .elementor-container,
body .elementor-5170101 .elementor-inner-section:has(.hca-lh-count-widget) > .elementor-container{max-width:none}
body .elementor-5170101 .elementor-inner-section:has(h1) > .elementor-container > .elementor-row > .elementor-column > .elementor-element-populated{padding-left:0;padding-right:0}
@media (max-width:1023px){
  body .elementor-5170101 .elementor-inner-section:has(h1) > .elementor-container > .elementor-row > .elementor-column{width:100%!important}
  body .elementor-5170101 .elementor-inner-section:has(h1),body .elementor-5170101 .elementor-inner-section:has(.hca-lh-count-widget){padding-left:10px!important;padding-right:10px!important}
}

/* ---- Tablette / mobile ---- */
@media (max-width:767px){
  body .elementor .hca-view,body .elementor .hca-tb-sep{display:none!important}
  body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) > .elementor-column-wrap > .elementor-widget-wrap{gap:4px 8px;margin:8px 0}
  body .elementor .hca-lh-count-widget{flex:0 0 100%}
  body .elementor .hca-lh__count{font-size:16px;line-height:32px}
  body .elementor .elementor-column:has(> .elementor-column-wrap > .elementor-widget-wrap > .hca-lh-count-widget) .elementor-widget-listing-sort-order{margin-right:auto!important}
  body .elementor .hca-exp__long{display:none}
  body .elementor .hca-exp__btn{padding:0 12px}
}

/* ---- Menu « Catalogue » : rubrique sans sous-catégorie (« Location ») en 3e colonne, titre seul ---- */
#header .hca-mega:has(.hca-mega__col--solo){width:min(960px,calc(100vw - 48px))}
#header .hca-mega__cols:has(.hca-mega__col--solo){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(120px,max-content)}
@media (max-width:767px){#header .hca-mega__cols:has(.hca-mega__col--solo){grid-template-columns:1fr}}

/* =====================================================================================================
   Lot 4 (2026-10-18) : cartes produit = miniature CE n°10 (.elementor-10170101), partagée par les catégories
   (gabarit 7170101) et par recherche, marques, nouveautés, meilleures ventes, promotions (gabarit 5170101).
   Ordre : image sur fond clair, catégorie (widget hca-card-cat), nom (MAJUSCULES de la donnée), « Réf. »,
   marque (logo + nom ; logo « Aucune image » masqué => nom seul), prix (seulement s'il est rendu et visible :
   règle displayEgGetPrice / SWITCH_MODE / mode démo inchangée), bouton « Voir le produit » (contour, plein au
   survol/focus), cœur egwishlist en pastille en haut à droite. Carte entière cliquable (lien du nom étendu).
   ===================================================================================================== */
#js-product-list .ce-products > .elementor-10170101{align-self:stretch;height:auto}
body .elementor-10170101 > article,
body .elementor-10170101 > article > .elementor-top-section,
body .elementor-10170101 > article > .elementor-top-section > .elementor-container,
body .elementor-10170101 > article > .elementor-top-section > .elementor-container > .elementor-row,
body .elementor-10170101 .elementor-element.elementor-element-d6d3632{height:100%}
body .elementor-10170101 .elementor-element.elementor-element-d6d3632 > .elementor-element-populated,
body .elementor-10170101 .elementor-element.elementor-element-d6d3632:hover > .elementor-element-populated{height:100%;margin:0!important;padding:12px!important;background:var(--hca-surface)!important;border:1px solid var(--hca-line)!important;border-radius:var(--hca-r-md)!important;box-shadow:none!important;transition:box-shadow .15s,border-color .15s}
body .elementor-10170101 .elementor-element.elementor-element-d6d3632:hover > .elementor-element-populated,
body .elementor-10170101 .elementor-element.elementor-element-d6d3632:focus-within > .elementor-element-populated{box-shadow:var(--hca-shadow-2)!important;border-color:#D2DAE6!important}
body .elementor-10170101 .elementor-element.elementor-element-d6d3632 > .elementor-column-wrap > .elementor-widget-wrap{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;height:100%;position:relative;font-family:var(--hca-font)}
body .elementor-10170101 .elementor-element-d6d3632 > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element{width:100%;margin:0!important}
/* ordre visuel */
body .elementor-10170101 .elementor-element-ccbae1d{order:1}
body .elementor-10170101 .hca-card-cat{order:2}
body .elementor-10170101 .elementor-element-ebb2acb{order:3}
body .elementor-10170101 .elementor-element-5f02d11{order:4}
body .elementor-10170101 .elementor-element-dd4879c{order:5}
body .elementor-10170101 .elementor-element-bd9ceef{order:6}
/* image : zone claire, photo entière */
body .elementor-10170101 .elementor-element.elementor-element-ccbae1d > .elementor-widget-container{margin:0!important;padding:8px!important;background:var(--hca-img-bg)!important;border:0!important;border-radius:var(--hca-r-sm)!important}
body .elementor-10170101 .elementor-element.elementor-element-ccbae1d .elementor-image img{display:block;width:100%;height:150px!important;object-fit:contain;border:0!important;border-radius:0!important;mix-blend-mode:multiply}
/* catégorie */
body .elementor-10170101 .hca-card-cat > .elementor-widget-container{margin:12px 0 2px!important}
body .elementor-10170101 .hca-card-cat .ce-product-meta{display:block;margin:0!important}
body .elementor-10170101 .hca-card-cat .ce-product-meta__detail{padding:0!important}
body .elementor-10170101 .hca-card-cat .ce-product-meta__label{display:none}
body .elementor-10170101 .hca-card-cat .ce-product-meta__value{position:relative;z-index:2;font:500 var(--hca-fs-small)/1.4 var(--hca-font);color:var(--hca-muted);text-decoration:none}
body .elementor-10170101 .hca-card-cat a.ce-product-meta__value:hover{color:var(--hca-link);text-decoration:underline}
/* nom (casse de la donnée conservée) ; son lien couvre toute la carte */
body .elementor-10170101 .elementor-element.elementor-element-ebb2acb,
body .elementor-10170101 .elementor-element.elementor-element-ebb2acb > .elementor-widget-container{position:static!important;margin:0 0 2px!important}
body .elementor-10170101 .elementor-element.elementor-element-ebb2acb .elementor-heading-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.7em;white-space:normal!important;text-overflow:clip;overflow-wrap:anywhere;font-family:var(--hca-font)!important;font-size:var(--hca-fs-card-name)!important;font-weight:600!important;line-height:1.35!important;color:var(--hca-ink)!important}
body .elementor-10170101 .elementor-element-ebb2acb .elementor-heading-title a{color:inherit;text-decoration:none;white-space:normal!important}
body .elementor-10170101 .elementor-element-ebb2acb .elementor-heading-title a::after{content:"";position:absolute;inset:-12px;z-index:1;border-radius:var(--hca-r-md)}
body .elementor-10170101 .elementor-element-ebb2acb .elementor-heading-title a:focus-visible{outline:0}
body .elementor-10170101 .elementor-element-ebb2acb .elementor-heading-title a:focus-visible::after{box-shadow:var(--hca-focus)}
/* référence */
body .elementor-10170101 .elementor-element.elementor-element-5f02d11 > .elementor-widget-container{margin:0!important}
body .elementor-10170101 .elementor-element.elementor-element-5f02d11 .ce-product-meta{margin:0!important}
body .elementor-10170101 .elementor-element.elementor-element-5f02d11 .ce-product-meta__detail{padding:0!important}
body .elementor-10170101 .elementor-element.elementor-element-5f02d11,
body .elementor-10170101 .elementor-element.elementor-element-5f02d11 .ce-product-meta__label,
body .elementor-10170101 .elementor-element.elementor-element-5f02d11 .ce-product-meta__value{font:500 var(--hca-fs-small)/1.4 var(--hca-font)!important;color:var(--hca-muted)!important;font-variant-numeric:tabular-nums}
/* marque : logo (max 64 × 22) + nom ; sans logo (image « Aucune image disponible » de PrestaShop) => nom seul */
body .elementor-10170101 .elementor-element.elementor-element-dd4879c{margin:6px 0 0!important}
body .elementor-10170101 .elementor-element-dd4879c > .elementor-container > .elementor-row{align-items:center;min-height:22px;gap:8px}
body .elementor-10170101 .elementor-element.elementor-element-dd4879c .elementor-column > .elementor-column-wrap{padding:0!important}
body .elementor-10170101 .elementor-element.elementor-element-2febd57{width:auto!important;flex:1 1 auto;min-width:0}
body .elementor-10170101 .elementor-element.elementor-element-dbd55c5{width:auto!important;flex:0 0 auto;max-width:50%}
body .elementor-10170101 .elementor-element-d3380e3 .elementor-image,
body .elementor-10170101 .elementor-element-d3380e3 figure{display:flex;align-items:center;gap:8px;margin:0;min-width:0;text-align:left}
body .elementor-10170101 .elementor-element-d3380e3 a{position:relative;z-index:2;display:inline-flex;flex:none}
body .elementor-10170101 .elementor-element.elementor-element-d3380e3 img{display:block;max-height:22px!important;max-width:64px!important;width:auto!important;height:auto!important;object-fit:contain}
body .elementor-10170101 .elementor-element-d3380e3 img[src$="/img/m/fr.jpg"],
body .elementor-10170101 .elementor-element-d3380e3 img[src*="/img/m/fr-default"]{display:none!important}
body .elementor-10170101 .elementor-element-d3380e3 a:has(> img[src$="/img/m/fr.jpg"]),
body .elementor-10170101 .elementor-element-d3380e3 a:has(> img[src*="/img/m/fr-default"]){display:none}
body .elementor-10170101 .elementor-element.elementor-element-d3380e3 figcaption{margin:0!important;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:500 var(--hca-fs-small)/1.3 var(--hca-font)!important;color:var(--hca-ink-2)!important;text-align:left!important}
body .elementor-10170101 .elementor-element-1f4eaed a{position:relative;z-index:2}
/* prix puis bouton, en bas de carte */
body .elementor-10170101 .elementor-element.elementor-element-bd9ceef{margin:auto 0 0!important;padding-top:12px}
body .elementor-10170101 .elementor-element-bd9ceef > .elementor-container > .elementor-row{flex-direction:column;align-items:stretch;gap:8px}
body .elementor-10170101 .elementor-element.elementor-element-bd9ceef .elementor-column{width:100%!important}
body .elementor-10170101 .elementor-element.elementor-element-bd9ceef .elementor-column > .elementor-column-wrap{padding:0!important}
body .elementor-10170101 .elementor-element.elementor-element-431361e:not(:has(.ce-product-prices:not([style*="none"]))){display:none!important}
body .elementor-10170101 .elementor-element-431361e .ce-product-prices{font:600 15px/1.3 var(--hca-font);color:var(--hca-ink);font-variant-numeric:tabular-nums}
body .elementor-10170101 .elementor-element-431361e .ce-product-price-label{font-weight:500;font-size:var(--hca-fs-body);color:var(--hca-ink-2)}
body .elementor-10170101 .elementor-element-8fe5914 .elementor-button-wrapper{text-align:center}
body .elementor-10170101 .elementor-element.elementor-element-8fe5914 a.elementor-button:not(#e){position:relative;z-index:2;display:flex;width:100%;align-items:center;justify-content:center;min-height:var(--hca-target);padding:0 16px!important;white-space:nowrap;font:600 var(--hca-fs-body)/1.2 var(--hca-font)!important;color:var(--hca-teal-600)!important;background:var(--hca-surface)!important;border:1px solid var(--hca-teal-600)!important;border-radius:var(--hca-r-sm)!important;box-shadow:none;transition:background .15s,color .15s}
body .elementor-10170101 .elementor-element.elementor-element-8fe5914 a.elementor-button:not(#e):hover,
body .elementor-10170101 .elementor-element.elementor-element-8fe5914 a.elementor-button:not(#e):focus-visible,
body .elementor-10170101 .elementor-element.elementor-element-d6d3632:hover .elementor-element-8fe5914 a.elementor-button:not(#e),
body .elementor-10170101 .elementor-element.elementor-element-d6d3632:focus-within .elementor-element-8fe5914 a.elementor-button:not(#e){color:#fff!important;background:var(--hca-teal-600)!important;border-color:var(--hca-teal-600)!important}
body .elementor-10170101 .elementor-element.elementor-element-8fe5914 a.elementor-button:not(#e):hover{background:var(--hca-teal-700)!important;border-color:var(--hca-teal-700)!important}
body .elementor-10170101 .elementor-element.elementor-element-8fe5914 a.elementor-button:not(#e):focus-visible{outline:0;box-shadow:var(--hca-focus)}
/* cœur favori (egwishlist, classes inchangées) : pastille ronde blanche */
body .elementor-10170101 .elementor-element.elementor-element-644f374{position:absolute!important;top:8px;right:8px;width:auto!important;z-index:3;margin:0!important}
body .elementor-10170101 .wishlist-button-add .btn-egwishlist-add.js-egwishlist-add{position:static!important;display:grid!important;place-items:center;width:36px;height:36px;padding:0!important;border-radius:50%;background:var(--hca-surface);box-shadow:var(--hca-shadow-1);color:var(--hca-teal-600)!important;transform:none!important;transition:background .15s,color .15s}
body .elementor-10170101 .wishlist-button-add .btn-egwishlist-add.js-egwishlist-add:hover{background:var(--hca-teal-50);color:var(--hca-teal-700)!important}
body .elementor-10170101 .wishlist-button-add .btn-egwishlist-add.js-egwishlist-add:focus-visible{outline:0;box-shadow:var(--hca-focus)}
body .elementor-10170101 .wishlist-button-add .btn-egwishlist-add.js-egwishlist-add i{font-size:20px;line-height:1}
@media (pointer:coarse){body .elementor-10170101 .wishlist-button-add .btn-egwishlist-add.js-egwishlist-add{width:44px;height:44px}}
/* 4 colonnes à partir de 1600 px (grille ; la vue liste reste à 1 colonne) */
@media (min-width:1600px){
  /* custom.css : liste en flex, cartes à 33,33 % */
  html:not(.hca-view-list) #content-wrapper #js-product-list .products > [data-elementor-type=product-miniature]{width:25%}
}
/* vue liste (≥ 768 px, bascule du lot 3) : image | catégorie, nom, Réf., marque, prix | bouton, cœur à droite */
@media (min-width:768px){
  html.hca-view-list .elementor #js-product-list .ce-products > .elementor > article > .elementor-top-section > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap > .elementor-widget-wrap{display:grid;grid-template-columns:160px minmax(0,1fr) auto;grid-template-rows:1fr repeat(5,auto) 1fr;column-gap:24px;row-gap:0}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .elementor-element-ccbae1d{grid-column:1;grid-row:1 / 8}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .elementor-element-ccbae1d img{height:120px!important}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .hca-card-cat{grid-column:2;grid-row:2}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .hca-card-cat > .elementor-widget-container{margin:0 0 2px!important}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .elementor-element-ebb2acb{grid-column:2;grid-row:3}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .elementor-element-ebb2acb .elementor-heading-title{min-height:0}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .elementor-element-5f02d11{grid-column:2;grid-row:4}
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-inner-section.elementor-element-dd4879c{grid-column:2;grid-row:5}
  html.hca-view-list .elementor #js-product-list .ce-products article .elementor-widget-wrap > .elementor-inner-section.elementor-element-bd9ceef{grid-column:3;grid-row:1 / 8;align-self:center;margin:0 60px 0 0!important;padding:0;width:200px}
  html.hca-view-list .elementor #js-product-list .elementor-10170101 .elementor-element.elementor-element-644f374{top:50%!important;bottom:auto!important;right:12px!important;transform:translateY(-50%)}
}

/* =====================================================================================================================
   Lot 5 (2026-10-18) : bas de liste = « Produits par page » (à gauche) + pagination en pastilles (à droite), états
   « chargement » et « aucun produit ». Présentation seulement : le sélecteur (resultsPerPage dans l'URL), les liens de
   pagination et l'AJAX restent ceux d'EgListingPagination / Creative Elements / PrestaShop. Les règles d'eg-recherche.css
   (blocs C4, C5) sont reprises ici avec les jetons --hca-* ; sélecteurs préfixés par body pour l'emporter.
   ===================================================================================================================== */
body .elementor .ce-bottom-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;margin-top:24px;font-family:var(--hca-font)}
body .elementor .ce-bottom-row .ce-per-page{display:flex;align-items:center;gap:10px;margin:0;font-size:var(--hca-fs-body);color:var(--hca-ink-2)}
body .elementor .ce-bottom-row .ce-per-page label{margin:0;font-weight:500;color:var(--hca-ink-2);white-space:nowrap}
body .elementor .ce-bottom-row .ce-per-page__select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:var(--hca-target);min-height:var(--hca-target);min-width:84px;padding:0 34px 0 12px;border:1px solid var(--hca-field)!important;border-radius:var(--hca-r-sm)!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%232C4A85' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 10px center/16px 16px;color:var(--hca-ink);font:500 14px/1 var(--hca-font);cursor:pointer}
body .elementor .ce-bottom-row .ce-per-page__select:hover{border-color:var(--hca-field-strong)!important}
body .elementor .ce-bottom-row .ce-per-page__select:focus,body .elementor .ce-bottom-row .ce-per-page__select:focus-visible{outline:none!important;border-color:var(--hca-teal-600)!important;box-shadow:var(--hca-focus)}

/* pastilles rondes : 40 px (44 px au tactile), page active pleine --hca-teal-600 */
body .elementor .elementor-widget-listing-pagination .ce-pagination{display:flex;align-items:center;gap:6px;margin:0 0 0 auto;padding:0}
body .elementor .elementor-widget-listing-pagination .ce-pagination .elementor-icon-list-items{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;margin:0!important;padding:0}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item.js-search-link{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:var(--hca-target);width:auto;height:var(--hca-target);margin:0!important;padding:0 6px;border:1px solid var(--hca-field);border-radius:var(--hca-r-pill);background:#fff!important;color:var(--hca-ink-2)!important;font:500 14px/1 var(--hca-font);font-variant-numeric:tabular-nums;text-decoration:none;line-height:1;transition:border-color .15s,color .15s,background-color .15s}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item.js-search-link::after{content:none!important;display:none!important}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item .elementor-icon-list-text{padding:0;margin:0;color:inherit!important;font:inherit}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item.js-search-link:not(.ce-disabled):not(.elementor-active):not(.hca-pg-gap):hover{border-color:var(--hca-teal-600);color:var(--hca-teal-600)!important;background:var(--hca-teal-50)!important}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item.js-search-link.elementor-active{background:var(--hca-teal-600)!important;border-color:var(--hca-teal-600)!important;color:#fff!important;font-weight:600;cursor:default;pointer-events:none}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item.js-search-link.elementor-active .elementor-icon-list-text{color:#fff!important}
/* « … » : neutre, non cliquable */
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item.js-search-link:not([href]):not(.elementor-active){min-width:24px;padding:0 2px;border-color:transparent!important;background:transparent!important;color:var(--hca-muted)!important;pointer-events:none}
/* flèches : même pastille, icône centrée ; désactivée = estompée, non cliquable */
body .elementor .elementor-widget-listing-pagination .ce-pagination a.ce-pagination__arrow{width:var(--hca-target);padding:0}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.ce-pagination__arrow .elementor-icon-list-icon{display:inline-flex;align-items:center;justify-content:center;height:auto;line-height:1;margin:0;padding:0;font-size:13px;color:inherit}
body .elementor .elementor-widget-listing-pagination .ce-pagination > *{order:0!important}
/* chevrons ‹ › (maquette) à la place des flèches CE ; ordre visuel = ordre du DOM (précédente, pages, suivante) pour la tabulation */
body .elementor .elementor-widget-listing-pagination .ce-pagination a.ce-pagination__arrow .elementor-icon-list-icon i{display:none}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.ce-pagination__arrow .elementor-icon-list-icon::before{content:"";display:block;width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l6 6-6 6' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px 16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l6 6-6 6' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px 16px no-repeat}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.ce-pagination__arrow[rel="prev"] .elementor-icon-list-icon::before{transform:scaleX(-1)}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.ce-pagination__arrow .elementor-icon-list-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.ce-disabled{opacity:.45;cursor:default;pointer-events:none}
body .elementor .elementor-widget-listing-pagination .ce-pagination a.elementor-icon-list-item:focus-visible{outline:none!important;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--hca-teal-600)}
@media (max-width:575px){
  body .elementor .ce-bottom-row{flex-direction:column;align-items:center;gap:16px}
  body .elementor .elementor-widget-listing-pagination .ce-pagination{order:1;margin:0;justify-content:center;flex-wrap:nowrap}
  body .elementor .ce-bottom-row .ce-per-page{order:2;justify-content:center}
}

/* état « chargement » : aria-busy posé par eg-refonte.js sur le widget de la liste ; opacité + barre fine, aucun
   changement de taille ; la liste reste utilisable. Voile plein écran de ps_facetedsearch masqué sur les listes. */
html.hca-lst .faceted-overlay{display:none!important}
body .elementor .elementor-widget-listing-products{position:relative}
body .elementor .elementor-widget-listing-products > .elementor-widget-container{transition:opacity .15s ease}
body .elementor .elementor-widget-listing-products[aria-busy="true"] > .elementor-widget-container{opacity:.5;transition-delay:.12s}
body .elementor .elementor-widget-listing-products::before{content:"";position:absolute;left:0;right:0;top:-8px;height:3px;border-radius:3px;background:linear-gradient(90deg,transparent 0,var(--hca-teal-500) 50%,transparent 100%) no-repeat;background-size:40% 100%;background-position:-40% 0;opacity:0;pointer-events:none;z-index:2;transition:opacity .15s ease}
body .elementor .elementor-widget-listing-products[aria-busy="true"]::before{opacity:1;animation:hca-busy-bar 1.1s linear infinite}
body .elementor .elementor-widget-listing-products:focus{outline:none}
@keyframes hca-busy-bar{from{background-position:-40% 0}to{background-position:140% 0}}
@media (prefers-reduced-motion:reduce){
  body .elementor .elementor-widget-listing-products[aria-busy="true"]::before{animation:none;background:var(--hca-teal-500)}
  body .elementor .elementor-widget-listing-products > .elementor-widget-container{transition:none}
}

/* état « aucun produit » (catalog/_partials/hca-empty.tpl) */
body .hca-empty{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;box-sizing:border-box;margin:0 0 24px;padding:48px 24px;border:1px solid var(--hca-line);border-radius:var(--hca-r-md);background:var(--hca-surface);text-align:center;font-family:var(--hca-font);color:var(--hca-ink-2)}
body .hca-empty__icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:4px;border-radius:50%;background:var(--hca-teal-50);color:var(--hca-teal-600)}
body .hca-empty__icon svg{width:28px;height:28px}
body .hca-empty .hca-empty__title{max-width:560px;margin:0;font:700 18px/1.35 var(--hca-font);color:var(--hca-ink);text-transform:none;letter-spacing:0}
body .hca-empty .hca-empty__text{max-width:520px;margin:0;font-size:var(--hca-fs-body);line-height:1.5;color:var(--hca-muted)}
body .hca-empty__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:10px}
body .hca-empty a.hca-empty__btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--hca-target);padding:0 18px;border:1px solid var(--hca-teal-600);border-radius:var(--hca-r-sm);background:#fff;color:var(--hca-teal-600);font:600 14px/1.2 var(--hca-font);text-decoration:none;transition:background-color .15s,color .15s,border-color .15s}
body .hca-empty a.hca-empty__btn:hover{background:var(--hca-teal-50);color:var(--hca-teal-700);border-color:var(--hca-teal-700)}
body .hca-empty a.hca-empty__btn--primary{background:var(--hca-teal-600);color:#fff}
body .hca-empty a.hca-empty__btn--primary:hover{background:var(--hca-teal-700);border-color:var(--hca-teal-700);color:#fff}
body .hca-empty a.hca-empty__btn:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--hca-teal-600)}
@media (max-width:575px){body .hca-empty{padding:32px 16px}body .hca-empty a.hca-empty__btn{width:100%}}

/* =====================================================================================================================
   Lot 6 (2026-10-19) : tablette, mobile, accessibilité. Présentation seulement (facettes, personnalisation, prix,
   mode démo, favoris inchangés). Comportements associés dans eg-refonte.js (bloc « Lot 6 »).
   ===================================================================================================================== */

/* ---- Focus visible : custom.css impose « a,button{outline:none!important} », ce qui annulait les anneaux des lots
   précédents (titre, bandeau perso, bascule grille/liste, export, en-tête). Contour plein 2 px #007A91 (3:1 au moins
   sur blanc, teal-50 et fond de page), comme la règle « Focus » des jetons. Exceptions : nom de la carte (anneau sur la
   carte entière) et pagination (double anneau plein du lot 5). ---- */
body :is(a,button,summary,select,[role=button],[tabindex]:not([tabindex="-1"])):focus-visible:not(.elementor-10170101 .elementor-element-ebb2acb a):not(.ce-pagination a){outline:2px solid var(--hca-teal-600)!important;outline-offset:2px!important}
body .elementor-10170101 .elementor-element-ebb2acb .elementor-heading-title a:focus-visible::after{box-shadow:0 0 0 2px var(--hca-teal-600),0 0 0 5px rgba(0,122,145,.25)}
/* interrupteur « Mode démo » : la case est masquée, l'anneau est porté par le curseur visible */
#header .hca-hdr .price-show input:focus-visible+.slider{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--hca-teal-600)}
/* bouton « Rechercher » du formulaire d'en-tête (masqué visuellement) : visible quand il reçoit le focus clavier */
#header .hca-hdr #search_widget form button[type="submit"]:focus-visible{width:auto!important;height:36px!important;clip:auto!important;margin:0!important;padding:0 14px!important;top:5px!important;right:5px!important;overflow:visible!important;border-radius:var(--hca-r-pill)!important;background:var(--hca-teal-600)!important;color:#fff!important;font:600 14px/36px var(--hca-font)!important;z-index:3;transition:none!important}
/* ---- Contraste des composants (WCAG 1.4.11, 3:1 au moins) : bord des champs et piste « Mode démo » éteinte.
   Avant : champ de recherche sans bord (fond #F2F7FB sur blanc = 1,08:1), « Produits par page » #C9D2E0 (1,52:1),
   piste éteinte #C3CBD9 (1,63:1). Après : --hca-field-strong #7C8AA5 = 3,48:1 sur blanc. ---- */
#header .hca-hdr #search_widget form input[name="search_query"]{border-color:var(--hca-field-strong)}
#header .hca-hdr #search_widget form input[name="search_query"]:focus{border-color:var(--hca-teal-600)}
#header .hca-hdr .price-show .slider{background:var(--hca-field-strong)}
#header .hca-hdr .price-show input:checked+.slider{background:var(--hca-teal-600)}
body .elementor .ce-bottom-row .ce-per-page__select{border-color:var(--hca-field-strong)!important}
body .elementor .ce-bottom-row .ce-per-page__select:focus{border-color:var(--hca-teal-600)!important}
/* lien d'évitement « Aller aux produits » (inséré par eg-refonte.js sur les listes) */
.hca-skip{position:absolute;left:8px;top:8px;z-index:10001;padding:10px 16px;border-radius:var(--hca-r-sm);background:var(--hca-teal-600);color:#fff!important;font:600 14px/1.2 var(--hca-font);text-decoration:none;transform:translateY(-200%)}
.hca-skip:focus,.hca-skip:focus-visible{transform:none;outline:2px solid var(--hca-ink)!important;outline-offset:2px!important}

/* ---- Mouvement réduit : transitions et animations neutralisées sur l'en-tête, le listing et le panneau ---- */
@media (prefers-reduced-motion:reduce){
  #header *,#header *::before,#header *::after,#wrapper *,#wrapper *::before,#wrapper *::after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
  html{scroll-behavior:auto!important}
}

/* ---- Débordement horizontal (marques, nouveautés, meilleures ventes, promotions : gabarit 5170101) ----
   La grille CE .products garde une marge négative de 10 px qui dépassait de 10 px à 1100 px et moins
   (même correctif que /recherche au lot 2, étendu à toutes les pages du gabarit 5170101). */
@media (max-width:1199px){body #content-wrapper .elementor-5170101 .ce-product-grid.products{margin-left:0;margin-right:0;margin-inline:0}}
/* pagination (gabarit 5170101) : marge négative de 5 px de la liste d'icônes CE, qui dépassait de 4 px à 1100 et 1024 px */
@media (max-width:1199px){body #content-wrapper .elementor-5170101 .ce-bottom-row nav.ce-pagination{margin-left:0!important;margin-right:0!important}}

/* ---- Panneau des filtres (tiroir CE « ce-filters--shown ») ----
   ≤ 820 px : plein écran (en-tête collant « Filtres » + Fermer, « Effacer les filtres », pied collant
   « Afficher les résultats (n) »). 821–1023 px : panneau latéral de 380 px conservé. Dans les deux cas :
   role=dialog, focus piégé et restitué au bouton « Filtres », Échap, défilement de la page bloqué (eg-refonte.js). */
html.hca-fp-open,html.hca-fp-open body{overflow:hidden!important}
@media (max-width:1023px){
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters{overscroll-behavior:contain}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .dialog-close-button{position:sticky!important;top:10px;align-self:flex-end;order:-4;z-index:4;display:grid;place-items:center;width:44px;height:44px;margin:10px -8px -54px 0!important;padding:0;border-radius:var(--hca-r-pill);font-size:18px;color:var(--hca-ink)!important;background:#fff;cursor:pointer}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .dialog-close-button:hover{background:var(--hca-teal-50)}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .elementor-heading-title{position:sticky;top:0;order:-3;z-index:3;margin:0 -20px!important;padding:10px 64px 10px 20px!important;background:#fff;border-bottom:1px solid var(--hca-line);font:700 18px/44px var(--hca-font)!important;color:var(--hca-ink)}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .ce-filters__clear{margin-top:8px}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters{padding-top:0!important}
  body .elementor .elementor-widget-listing-filters .ce-filters .eg-filters-apply{font-size:16px;min-height:48px}
}
/* panneau fermé (< 1024 px) : CE le réduit à 0 × 0 mais ses options restaient dans l'ordre de tabulation (16 arrêts
   invisibles avant le bouton « Filtres » à 390 px) ; visibility:hidden les retire, après le fondu de fermeture */
@media (max-width:1023px){
  body .elementor .elementor-widget-listing-filters .ce-filters__container:not(.ce-filters--shown){visibility:hidden;transition:background-color .4s,transform 0s .4s,visibility 0s .4s}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown{visibility:visible}
}
@media (max-width:820px){
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown{background:#fff}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters{left:0;right:0;top:0;bottom:0;width:100%!important;max-width:none!important;height:100%;height:100dvh;padding-left:20px;padding-right:20px;box-shadow:none!important;border-radius:0}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > *:not(.elementor-heading-title):not(.eg-filters-footer):not(.dialog-close-button){max-width:720px}
}
@media (max-width:767px){
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters{padding-left:16px;padding-right:16px}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .ce-filters > .elementor-heading-title{margin:0 -16px!important;padding-left:16px!important}
  body .elementor .elementor-widget-listing-filters .ce-filters__container.ce-filters--shown .eg-filters-footer{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}
}

/* ---- Cartes produit en mobile (< 768 px) : format liste horizontal de la proposition (proposition-390.png) ----
   image 96 px à gauche ; catégorie, nom (2 lignes), Réf., marque, prix (s'il est rendu) à droite ; cœur de 44 px en
   haut à droite ; carte entière cliquable (lien du nom étendu, lot 4) ; bouton « Voir le produit » retiré (doublon
   du lien de la carte). Mêmes widgets CE, rien n'est retiré du DOM. */
@media (max-width:767px){
  html body .elementor-10170101 .elementor-element.elementor-element-d6d3632 > .elementor-column-wrap > .elementor-widget-wrap{display:grid;grid-template-columns:96px minmax(0,1fr);grid-auto-rows:auto;column-gap:12px;row-gap:0;align-content:start}
  html body .elementor-10170101 .elementor-element.elementor-element-d6d3632 > .elementor-element-populated,
  html body .elementor-10170101 .elementor-element.elementor-element-d6d3632:hover > .elementor-element-populated{padding:10px 8px 10px 10px!important}
  html body .elementor-10170101 .elementor-element.elementor-element-ccbae1d{grid-column:1;grid-row:1 / span 6;align-self:start}
  html body .elementor-10170101 .elementor-element.elementor-element-ccbae1d > .elementor-widget-container{padding:4px!important}
  html body .elementor-10170101 .elementor-element.elementor-element-ccbae1d .elementor-image img{height:88px!important}
  html body .elementor-10170101 .hca-card-cat{grid-column:2;grid-row:1;padding-right:40px}
  html body .elementor-10170101 .hca-card-cat > .elementor-widget-container{margin:0 0 2px!important}
  html body .elementor-10170101 .elementor-element.elementor-element-ebb2acb{grid-column:2;grid-row:2;padding-right:36px}
  html body .elementor-10170101 .elementor-element.elementor-element-ebb2acb .elementor-heading-title{min-height:0;font-size:14px!important}
  html body .elementor-10170101 .elementor-element.elementor-element-5f02d11{grid-column:2;grid-row:3}
  html body .elementor-10170101 .elementor-element.elementor-element-dd4879c{grid-column:2;grid-row:4;margin:4px 0 0!important}
  html body .elementor-10170101 .elementor-element.elementor-element-bd9ceef{grid-column:2;grid-row:5;margin:0!important;padding-top:4px}
  html body .elementor-10170101 .elementor-element.elementor-element-9bc6c8c{display:none!important}
  html body .elementor-10170101 .elementor-element.elementor-element-bd9ceef:not(:has(.ce-product-prices:not([style*="none"]))){display:none!important}
  html body .elementor-10170101 .elementor-element.elementor-element-644f374{top:2px!important;right:2px!important}
  html body .elementor-10170101 .wishlist-button-add .btn-egwishlist-add.js-egwishlist-add{width:44px;height:44px;box-shadow:none;background:transparent}
  html body .elementor-10170101 .wishlist-button-add .btn-egwishlist-add.js-egwishlist-add:hover{background:var(--hca-teal-50)}
  html body .elementor-10170101 .elementor-element-ebb2acb .elementor-heading-title a::after{inset:-10px -8px -10px -10px}
  /* tailles de la proposition en mobile (les jetons --hca-fs-small / --hca-fs-card-name du lot 4 ne sont pas définis :
     le texte retombait à 16 px ; desktop inchangé, voir le rapport) */
  html body .elementor-10170101 .elementor-element.elementor-element-ebb2acb .elementor-heading-title{font-size:14px!important;line-height:1.3!important}
  html body .elementor-10170101 .hca-card-cat .ce-product-meta__value,
  html body .elementor-10170101 .elementor-element.elementor-element-5f02d11,
  html body .elementor-10170101 .elementor-element.elementor-element-5f02d11 .ce-product-meta__label,
  html body .elementor-10170101 .elementor-element.elementor-element-5f02d11 .ce-product-meta__value,
  html body .elementor-10170101 .elementor-element.elementor-element-d3380e3 figcaption{font-size:12px!important;line-height:1.4!important}
  body #content-wrapper #js-product-list .ce-products{row-gap:10px!important}
}

/* =====================================================================================================================
   Lot 7 (2026-10-19) : carrousel « À la une » = section CE .hca-une du gabarit de listing 7170101 (contenu éditable
   dans Creative Elements : une section interne .hca-une__slide par diapositive ; dupliquer une diapositive pour en
   ajouter une). Affiché seulement sur la catégorie 2, page 1, sans filtre actif (CSS :has + classe hca-une-off posée
   par head.tpl puis par eg-refonte.js après chaque AJAX) ; masqué sous 576 px (la liste reste en tête en mobile).
   Pas de défilement automatique. Hauteur fixe (pas de CLS), images en lazy. Comportements : eg-refonte.js, « Lot 7 ».
   + jetons du lot 4 enfin déclarés (catégorie, Réf., marque en 12 px ; nom de carte 16 px, inchangé).
   ===================================================================================================================== */
:root{--hca-fs-small:12px;--hca-fs-card-name:16px}
body:not(.category-id-2) .elementor-section.hca-une,
body:has(.eg-active-filters) .elementor-section.hca-une,
html.hca-une-off .elementor-section.hca-une{display:none!important}
@media (max-width:575px){.elementor-section.hca-une{display:none!important}}
/* éditeur CE : toujours visible, diapositives empilées pour être modifiées une à une */
html.hca-une-edit body .elementor-section.hca-une,
body.elementor-editor-active .elementor-section.hca-une{display:block!important}
html.hca-une-edit body .elementor-section.hca-une .hca-une__slide,
body.elementor-editor-active .hca-une .hca-une__slide{display:block!important;height:var(--une-h);margin-bottom:12px!important}
html.hca-une-edit body .hca-une .hca-une__frame > .elementor-column-wrap > .elementor-widget-wrap,
body.elementor-editor-active .hca-une .hca-une__frame > .elementor-column-wrap > .elementor-widget-wrap{height:auto!important;overflow:visible!important;background:none!important;border:0!important}
html.hca-une-edit body .elementor-section.hca-une .hca-une__slide,body.elementor-editor-active .hca-une .hca-une__slide{border:1px dashed var(--hca-teal-500)!important;border-radius:var(--hca-r-lg);background:linear-gradient(100deg,#F4FBFD 0%,#CDEFF5 100%)!important}

.elementor-section.hca-une{--une-h:240px;--une-img:200px;--une-pad:76px;font-family:var(--hca-font)}
/* section non étirée (pas d'étirement JS = pas de décalage après rendu) : annule le retrait de 15 px du conteneur pour
   s'aligner sur la colonne des filtres et la liste (section 1aef3c44, étirée) */
#wrapper .container .elementor-section.hca-une{margin-left:-15px!important;margin-right:-15px!important;width:auto!important;max-width:none}
.hca-une > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap{padding:0!important}
.hca-une .hca-une__frame > .elementor-column-wrap > .elementor-widget-wrap{position:relative;display:block!important;height:var(--une-h);overflow:hidden;border-radius:var(--hca-r-lg);border:1px solid var(--hca-teal-200);box-sizing:border-box;
  background:radial-gradient(circle at 96% -10%,rgba(11,149,171,.20) 0 150px,transparent 151px),radial-gradient(circle at 70% 130%,rgba(11,149,171,.12) 0 140px,transparent 141px),linear-gradient(100deg,#F4FBFD 0%,#E6F7FA 45%,#CDEFF5 100%)}
/* sans JS : seule la 1re diapositive est rendue (même hauteur => pas de saut quand le JS démarre) */
.hca-une:not([data-hca-une]) .hca-une__slide ~ .hca-une__slide,
.hca-une .hca-une__slide[hidden]{display:none!important}
.hca-une .hca-une__slide{height:100%;margin:0!important;padding:0!important;background:none!important}
.hca-une .hca-une__slide.hca-une__slide--in{animation:hcaUneIn .25s ease-out}
@keyframes hcaUneIn{from{opacity:0}to{opacity:1}}
.hca-une .hca-une__slide > .elementor-container{height:100%;max-width:none!important}
.hca-une .hca-une__slide > .elementor-container > .elementor-row{height:100%;align-items:stretch;flex-wrap:nowrap}
.hca-une .hca-une__body{width:58%!important;flex:0 0 58%}
.hca-une .hca-une__media{width:42%!important;flex:0 0 42%}
.hca-une .hca-une__body > .elementor-column-wrap{height:100%;padding:24px 16px 30px var(--une-pad)!important;box-sizing:border-box}
.hca-une .hca-une__body > .elementor-column-wrap > .elementor-widget-wrap{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;height:100%;gap:0}
.hca-une .hca-une__body .elementor-widget{width:100%;margin:0!important}
.hca-une .hca-une__body .elementor-widget > .elementor-widget-container{margin:0!important;padding:0!important}
.hca-une .hca-une__kicker .elementor-heading-title{margin:0 0 6px!important;font:700 13px/1.3 var(--hca-font)!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--hca-teal-700)!important}
.hca-une .hca-une__title .elementor-heading-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0!important;font:700 32px/1.15 var(--hca-font)!important;letter-spacing:-.01em!important;text-transform:none!important;color:var(--hca-ink)!important}
.hca-une .hca-une__text .elementor-text-editor,
.hca-une .hca-une__text .elementor-widget-container{color:var(--hca-ink-2)!important}
.hca-une .hca-une__text p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:8px 0 0!important;font:400 16px/1.45 var(--hca-font)!important;color:var(--hca-ink-2)!important}
.hca-une .hca-une__btn{margin-top:16px!important;width:auto!important}
.hca-une .hca-une__btn .elementor-button-wrapper{text-align:left!important}
.hca-une .hca-une__btn a.elementor-button{display:inline-flex!important;align-items:center;gap:10px;min-height:46px;padding:0 22px!important;border:0!important;border-radius:var(--hca-r-md)!important;background:var(--hca-teal-600)!important;color:#fff!important;font:600 15px/1 var(--hca-font)!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;box-shadow:none!important;transition:background-color .15s!important}
.hca-une .hca-une__btn a.elementor-button:hover{background:var(--hca-teal-700)!important}
.hca-une .hca-une__btn a.elementor-button .elementor-button-text::after{content:"\2192";content:"\2192" / "";margin-left:10px;font-weight:600}
.hca-une .hca-une__media > .elementor-column-wrap{height:100%;padding:12px var(--une-pad) 12px 0!important;box-sizing:border-box}
.hca-une .hca-une__media > .elementor-column-wrap > .elementor-widget-wrap{display:flex;align-items:center;justify-content:flex-end;height:100%}
.hca-une .hca-une__img{width:auto!important;margin:0!important}
.hca-une .hca-une__img .elementor-widget-container{margin:0!important;padding:0!important}
.hca-une .hca-une__img img{display:block;width:auto!important;height:var(--une-img)!important;max-width:100%;aspect-ratio:1/1;object-fit:contain;border:0!important;border-radius:var(--hca-r-md)!important;mix-blend-mode:multiply}
/* commandes (créées par eg-refonte.js, seulement s'il y a plus d'une diapositive) */
.hca-une .hca-une__nav{position:absolute;top:50%;z-index:3;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-22px 0 0;padding:0;border:1px solid var(--hca-line);border-radius:var(--hca-r-pill);background:#fff;color:var(--hca-ink);box-shadow:var(--hca-shadow-2);cursor:pointer}
.hca-une .hca-une__nav:hover{background:var(--hca-teal-50);color:var(--hca-teal-700)}
.hca-une .hca-une__nav--prev{left:16px}
.hca-une .hca-une__nav--next{right:16px}
.hca-une .hca-une__nav svg{width:20px;height:20px;pointer-events:none}
.hca-une .hca-une__dots{position:absolute;left:var(--une-pad);bottom:6px;z-index:3;display:flex;gap:4px;margin:0;padding:0}
.hca-une .hca-une__dot{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin:0;padding:0;border:0;border-radius:var(--hca-r-pill);background:none;cursor:pointer}
.hca-une .hca-une__dot span{display:block;width:8px;height:8px;border-radius:var(--hca-r-pill);background:var(--hca-muted);transition:width .2s}
.hca-une .hca-une__dot[aria-current="true"] span{width:22px;background:var(--hca-teal-600)}
.hca-une .hca-une__nav:focus-visible,
.hca-une .hca-une__dot:focus-visible,
.hca-une .hca-une__btn a.elementor-button:focus-visible{outline:2px solid var(--hca-teal-600)!important;outline-offset:2px!important}
@media (max-width:1023px){
  .elementor-section.hca-une{--une-h:220px;--une-img:168px;--une-pad:68px}
  .hca-une .hca-une__title .elementor-heading-title{font-size:26px!important}
  .hca-une .hca-une__text p{font-size:15px!important}
}
@media (max-width:767px){
  .elementor-section.hca-une{--une-h:184px;--une-img:120px;--une-pad:58px}
  .hca-une .hca-une__body{width:64%!important;flex-basis:64%}
  .hca-une .hca-une__media{width:36%!important;flex-basis:36%}
  .hca-une .hca-une__body > .elementor-column-wrap{padding:16px 8px 28px var(--une-pad)!important}
  .hca-une .hca-une__title .elementor-heading-title{font-size:20px!important}
  .hca-une .hca-une__text{display:none!important}
  .hca-une .hca-une__btn{margin-top:10px!important}
  .hca-une .hca-une__btn a.elementor-button{min-height:40px;padding:0 16px!important;font-size:14px!important}
  .hca-une .hca-une__nav{width:40px;height:40px;margin-top:-20px}
  .hca-une .hca-une__nav--prev{left:10px}
  .hca-une .hca-une__nav--next{right:10px}
}
@media (pointer:coarse){.hca-une .hca-une__nav{width:44px;height:44px;margin-top:-22px}}
@media (prefers-reduced-motion:reduce){
  .hca-une .hca-une__slide.hca-une__slide--in{animation:none}
  .hca-une .hca-une__dot span{transition:none}
}

/* ======================================================================================================================
   Lot FP1 (2026-10-22) : fiche produit, socle et tête. Gabarit CE produit n°13 (ce_meta 13170101) : section .hca-fp,
   colonnes .hca-fp-media (galerie) et .hca-fp-info (infos) ; tête = marque ({eg_fp_head part='brand'}), h1, Réf. +
   catégorie, prix (crochet displayEgGetPrice inchangé : on ne touche jamais à son « display », piloté par le module),
   accroche ({eg_fp_head part='accroche'}). Présentation seulement.
   ====================================================================================================================== */
/* Tête en double (mécanisme existant du gabarit) pilotée par la largeur et non plus par l'appareil détecté côté serveur :
   copie de la colonne galerie (.hca-fp-m) sous 768 px, copie de la colonne infos (.hca-fp-d) à partir de 768 px. */
@media (max-width:767px){body#product .hca-fp .hca-fp-d{display:none!important}}
@media (min-width:768px){body#product .hca-fp .hca-fp-m{display:none!important}}

/* Grille : conteneur aligné sur l'en-tête (1440 px, gouttière), 2 colonnes 1fr/1fr (768-1023 px, écart 24 px) puis
   6fr/5fr (>= 1024 px, écart 40 px). La colonne infos reste collante comme avant (réglage CE, top 142 px) ; la galerie
   collante viendra avec FP2, quand la vidéo quittera la colonne galerie. */
body#product #wrapper > .container{max-width:var(--hca-container);padding-left:var(--hca-gutter);padding-right:var(--hca-gutter)}
body#product .elementor-section.hca-fp > .elementor-container{max-width:none}
/* min-width:0 : sans lui, une ligne insécable faisait grandir la colonne, et le diaporama CE (Swiper) recalculait sa largeur
   en boucle (débordement horizontal mesuré sur mobile avant ce lot : 1 160 px sur la fiche 6369). La section est en flex (réglage CE)
   et son conteneur, élément flex, avait min-width:auto. */
body#product .hca-fp > .elementor-container,
body#product .hca-fp > .elementor-container > .elementor-row,
body#product .hca-fp > .elementor-container > .elementor-row > .elementor-column,
body#product .hca-fp .elementor-widget-wrap,
body#product .hca-fp .elementor-widget{min-width:0;max-width:100%}
@media (min-width:768px){
  body#product .hca-fp > .elementor-container > .elementor-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px;align-items:stretch}
  body#product .hca-fp > .elementor-container > .elementor-row > .elementor-column{width:auto;max-width:none;min-width:0}
  body#product .hca-fp > .elementor-container > .elementor-row > .elementor-column > .elementor-element-populated{padding-left:0;padding-right:0}
}
@media (min-width:1024px){body#product .hca-fp > .elementor-container > .elementor-row{grid-template-columns:minmax(0,6fr) minmax(0,5fr);column-gap:40px}}

/* Ordre des widgets = ordre du gabarit. Neutralise, sur la fiche, la règle du listing (lot 2) qui envoyait le widget
   contenant le h1 en bas de colonne (order:2) : le titre apparaissait sous les documents. */
body#product .hca-fp .elementor-widget{order:0}
body#product .hca-fp .elementor-widget.hca-fp-brand-w,
body#product .hca-fp .elementor-widget.hca-fp-title,
body#product .hca-fp .elementor-widget.hca-fp-meta,
body#product .hca-fp .elementor-widget.hca-fp-price,
body#product .hca-fp .elementor-widget.hca-fp-accroche-w{margin:0!important}

/* Marque : logo (40 px de haut au plus) ou nom en texte, lien vers la marque */
body#product .hca-fp .hca-fp-brand{display:flex;align-items:center;min-height:var(--hca-target)}
body#product .hca-fp .hca-fp-brand__link{display:inline-flex;align-items:center;min-height:var(--hca-target);color:var(--hca-brand-navy);text-decoration:none;border-radius:var(--hca-r-sm)}
body#product .hca-fp a.hca-fp-brand__link:hover .hca-fp-brand__name{text-decoration:underline;text-underline-offset:3px}
body#product .hca-fp a.hca-fp-brand__link:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:2px}
body#product .hca-fp img.hca-fp-brand__logo{display:block;width:auto;height:auto;max-height:40px;max-width:160px;object-fit:contain}
body#product .hca-fp .hca-fp-brand__name{font-family:var(--hca-font);font-size:15px;font-weight:700;letter-spacing:.04em;line-height:1.2}

/* Titre : Inter 700, 26 / 22 / 20 px, capitales des données gardées */
body#product .hca-fp .hca-fp-title h1.elementor-heading-title{margin:6px 0 8px;font-family:var(--hca-font);font-size:26px;font-weight:700;line-height:1.25;letter-spacing:.01em;color:var(--hca-ink);text-transform:none;overflow-wrap:anywhere}
@media (max-width:1023px){body#product .hca-fp .hca-fp-title h1.elementor-heading-title{font-size:22px}}
@media (max-width:767px){body#product .hca-fp .hca-fp-title h1.elementor-heading-title{font-size:20px;margin-top:2px}}

/* Réf. (chiffres tabulaires) + bouton copier, séparateur, catégorie en lien */
body#product .hca-fp .hca-fp-meta .ce-product-meta{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;font-family:var(--hca-font);font-size:14px;line-height:1.4;color:var(--hca-muted)}
body#product .hca-fp .hca-fp-meta .ce-product-meta__detail{display:inline-flex;align-items:center;padding:0;min-height:var(--hca-target)}
body#product .hca-fp .hca-fp-meta .ce-product-meta__detail:not(:last-child){padding-right:14px;margin-right:14px}
body#product .hca-fp .hca-fp-meta .ce-product-meta__detail:not(:last-child)::after{content:"";border:0;border-inline-start:1px solid var(--hca-field);height:16px;margin:0}
body#product .hca-fp .hca-fp-meta .ce-product-meta__label{font-weight:400;color:var(--hca-muted);margin-right:4px}
body#product .hca-fp .hca-fp-meta .ce-product-meta__category .ce-product-meta__label{display:none}
body#product .hca-fp .hca-fp-meta .ce-product-meta__reference .ce-product-meta__value{font-weight:600;color:var(--hca-ink);font-variant-numeric:tabular-nums}
body#product .hca-fp .hca-fp-meta .ce-product-meta__value a{color:var(--hca-link);text-decoration:none}
body#product .hca-fp .hca-fp-meta .ce-product-meta__value a:hover{text-decoration:underline;text-underline-offset:2px}
body#product .hca-fp .hca-fp-meta .ce-product-meta__value a:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:2px;border-radius:var(--hca-r-sm)}
body#product .hca-fp .hca-fp-copy{display:inline-grid;place-items:center;width:var(--hca-target);height:var(--hca-target);margin:0 -8px 0 -4px;padding:0;border:0;border-radius:var(--hca-r-sm);background:none;color:var(--hca-link);cursor:pointer;position:relative}
body#product .hca-fp .hca-fp-copy:hover{background:var(--hca-teal-50);color:var(--hca-teal-700)}
body#product .hca-fp .hca-fp-copy:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:-2px}
body#product .hca-fp .hca-fp-copy svg{width:16px;height:16px;pointer-events:none}
body#product .hca-fp .hca-fp-copy__ok{position:absolute;left:50%;bottom:100%;transform:translateX(-50%);white-space:nowrap;background:var(--hca-ink);color:#fff;font-size:12px;font-weight:500;line-height:1;padding:6px 8px;border-radius:var(--hca-r-sm);pointer-events:none}
body#product .hca-fp .hca-fp-copy__ok[hidden]{display:none}
@media (max-width:767px){body#product .hca-fp .hca-fp-meta .ce-product-meta{font-size:13px}}

/* Prix (règle inchangée : rendu ou non par le module eg_getprice, visibilité pilotée par son style en ligne et le mode démo) */
body#product .hca-fp .hca-fp-price .ce-product-prices{margin:6px 0 0;font-family:var(--hca-font);color:var(--hca-ink);font-variant-numeric:tabular-nums}
body#product .hca-fp .hca-fp-price .ce-product-price{font-size:18px;font-weight:700;line-height:1.3}
body#product .hca-fp .hca-fp-price .ce-product-price-label{font-size:15px;font-weight:600;color:var(--hca-ink-2)}

/* Accroche : description courte, sinon repli (1re phrase de la description). Tant que la description tronquée
   « Lire plus » est juste en dessous (jusqu'au lot FP4 des onglets), le repli répéterait sa 1re phrase : il est rendu
   mais masqué dans ce cas ; il s'affichera seul quand la description quittera la colonne. */
body#product .hca-fp .hca-fp-accroche{margin:12px 0 4px;font-family:var(--hca-font);font-size:15px;line-height:1.5;color:var(--hca-ink-2)}
body#product .hca-fp .hca-fp-info .elementor-widget-wrap:has(> .product-description) .hca-fp-accroche[data-src="repli"]{display:none}
body#product .hca-fp .hca-fp-info .elementor-widget-wrap:has(> .product-description) > .hca-fp-accroche-w:has(.hca-fp-accroche[data-src="repli"]){display:none}
body#product .hca-fp .hca-fp-accroche-w + .product-description,
body#product .hca-fp .hca-fp-price + .product-description,
body#product .hca-fp .hca-fp-meta + .product-description{margin-top:16px}

/* ===================================================================================================================
   Lot FP2 « Galerie et vidéo » (2026-10-22) + retouche FP1 (écart 2). Fiche produit (gabarit CE n°13) seulement.
   Données CE : widget product-images 104e11b en vignettes en bas (7 / 4 / 4 par vue), widget vidéo fc87e54 = façade
   {eg_fp_head part='video'} (classe hca-fp-video-w). JS du thème (initFpGallery) : compteur, loupe, légende, vignette et
   diapositive « Vidéo », clavier ; la section reçoit .hca-fp-gal-js quand la galerie est prête (sans JS : rendu CE
   ordinaire, vidéo en lien sous la galerie, rien de collant).
   =================================================================================================================== */
/* Retouche FP1 (écart 2) : description courte limitée à 3 lignes, texte complet conservé dans le DOM */
body#product .hca-fp .hca-fp-accroche[data-src="court"]{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}

/* Zone principale : 5:4 (hauteur bornée à l'écran à partir de 768 px), image entière sur fond --hca-img-bg */
body#product .hca-fp .hca-gal .elementor-swiper{position:relative}
body#product .hca-fp .hca-gal .elementor-main-swiper{container-type:inline-size;border-radius:var(--hca-r-md);background:var(--hca-img-bg)}
body#product .hca-fp .hca-gal .elementor-main-swiper .swiper-slide{height:80cqw;display:flex;align-items:center;justify-content:center;background:var(--hca-img-bg);border:0!important;border-radius:var(--hca-r-md)!important;overflow:hidden}
body#product .hca-fp .hca-gal .elementor-main-swiper .swiper-slide > a{display:block;width:100%;height:100%;cursor:zoom-in}
body#product .hca-fp .hca-gal .elementor-main-swiper .swiper-slide img.elementor-carousel-image{display:block;width:100%;height:100%;max-width:none;object-fit:contain;mix-blend-mode:multiply;border-radius:0!important}
@media (min-width:768px){
  body#product .hca-fp .hca-gal .elementor-main-swiper .swiper-slide{height:min(80cqw,max(320px,calc(100vh - 300px - var(--hca-strip-h))))}
}
/* Compteur (haut gauche) et loupe (haut droite) */
body#product .hca-fp .hca-gal__count{position:absolute;top:12px;left:12px;z-index:3;padding:5px 10px;border-radius:var(--hca-r-pill);background:rgba(255,255,255,.94);color:var(--hca-ink);font:600 13px/1.2 var(--hca-font);font-variant-numeric:tabular-nums;box-shadow:var(--hca-shadow-1);pointer-events:none}
body#product .hca-fp .hca-gal__zoom{position:absolute;top:12px;right:12px;z-index:3;display:grid;place-items:center;width:var(--hca-target);height:var(--hca-target);margin:0;padding:0;border:0;border-radius:var(--hca-r-pill);background:#fff;color:var(--hca-ink);box-shadow:var(--hca-shadow-1);cursor:zoom-in}
body#product .hca-fp .hca-gal__zoom:hover{color:var(--hca-teal-700);box-shadow:var(--hca-shadow-2)}
body#product .hca-fp .hca-gal__zoom:focus-visible,
body#product .hca-fp .hca-gal .elementor-swiper-button:focus-visible,
body#product .hca-fp .hca-gal-vthumb__in:focus-visible,
body#product .hca-fp .hca-fp-video__facade:focus-visible{outline:2px solid var(--hca-teal-600);outline-offset:2px}
body#product .hca-fp .hca-gal.is-video .hca-gal__zoom{display:none}
/* Flèches de 40 px */
body#product .hca-fp .hca-gal .elementor-main-swiper .elementor-swiper-button{display:grid;place-items:center;width:var(--hca-target);height:var(--hca-target);border-radius:var(--hca-r-pill);background:#fff;color:var(--hca-ink);font-size:16px;box-shadow:var(--hca-shadow-1);opacity:1}
body#product .hca-fp .hca-gal .elementor-main-swiper .elementor-swiper-button svg{width:16px;height:16px;fill:currentColor}
body#product .hca-fp .hca-gal .elementor-main-swiper .elementor-swiper-button-prev{left:12px}
body#product .hca-fp .hca-gal .elementor-main-swiper .elementor-swiper-button-next{right:12px}
body#product .hca-fp .hca-gal .elementor-main-swiper .elementor-swiper-button.swiper-button-disabled{opacity:.35;cursor:default}
/* Légende (aria-live) */
body#product .hca-fp .hca-gal__cap{margin:8px 0 0;font:500 13px/1.45 var(--hca-font);color:var(--hca-muted)}
body#product .hca-fp .hca-gal__cap:empty{margin:0}
/* Vignettes en bas : 96 px environ à 1440 px, 72 à 80 px sur mobile ; active entourée de 2 px --hca-teal-600 */
body#product .hca-fp .hca-gal .elementor-thumbnails-swiper{margin-top:12px}
body#product .hca-fp .hca-gal .elementor-thumbnails-swiper .swiper-slide{aspect-ratio:1/1;height:auto;box-sizing:border-box;border:2px solid var(--hca-line);border-radius:var(--hca-r-sm)!important;overflow:hidden;background:var(--hca-img-bg);cursor:pointer;opacity:1}
body#product .hca-fp .hca-gal .elementor-thumbnails-swiper .swiper-slide.swiper-slide-thumb-active{border-color:var(--hca-teal-600)}
body#product .hca-fp .hca-gal .elementor-thumbnails-swiper .swiper-slide > a{display:block;width:100%;height:100%}
body#product .hca-fp .hca-gal .elementor-thumbnails-swiper .swiper-slide img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;border-radius:0!important}
/* Une seule image et pas de vidéo : ni compteur, ni flèches, ni vignettes */
body#product .hca-fp .hca-gal--single .hca-gal__count,
body#product .hca-fp .hca-gal--single .elementor-swiper-button,
body#product .hca-fp .hca-gal--single .elementor-thumbnails-swiper{display:none!important}

/* Vidéo : façade (aucune requête vers YouTube avant le clic), lecteur youtube-nocookie au clic */
body#product .hca-fp .hca-fp-video{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--hca-r-md);overflow:hidden;background:var(--hca-ink)}
body#product .hca-fp .hca-gal-vid .hca-fp-video{height:100%;aspect-ratio:auto;border-radius:0}
body#product .hca-fp .hca-fp-video__facade{position:absolute;inset:0;display:grid;place-items:center;color:#fff!important;text-decoration:none!important;cursor:pointer}
body#product .hca-fp .hca-fp-video__play{display:grid;place-items:center;width:68px;height:68px;border-radius:var(--hca-r-pill);background:rgba(255,255,255,.16);border:2px solid rgba(255,255,255,.85);color:#fff;transition:background .15s}
body#product .hca-fp .hca-fp-video__facade:hover .hca-fp-video__play{background:var(--hca-teal-600)}
body#product .hca-fp .hca-fp-video__note{position:absolute;left:16px;right:16px;bottom:12px;font:500 13px/1.4 var(--hca-font);color:#fff;opacity:.92;text-align:left}
body#product .hca-fp .hca-fp-video__frame{position:absolute;inset:0;width:100%;height:100%;border:0}
body#product .hca-fp .hca-gal-vid{background:var(--hca-ink)!important}
body#product .hca-fp .hca-gal-vthumb{background:var(--hca-ink)!important}
body#product .hca-fp .hca-gal-vthumb__in{position:relative;display:grid;place-items:center;width:100%;height:100%;color:#fff;background:rgba(15,30,74,.25)}
body#product .hca-fp .hca-gal-vthumb__in svg{width:22px;height:22px;margin-bottom:14px}
body#product .hca-fp .hca-gal-vthumb__in b{position:absolute;left:0;right:0;bottom:6px;font:600 12px/1 var(--hca-font);text-align:center}
/* la façade de la galerie remplace le widget vidéo sous la galerie (écart 4 du FP1) */
body#product .hca-fp.hca-fp-gal-js .hca-fp-video-w{display:none!important}

/* Galerie collante (proposition : top 132 px = en-tête 72 + onglets 44 + bandeau démo + 16), en 2 colonnes et sur un
   écran assez haut ; seulement quand le JS a placé la vidéo dans la galerie (plus rien dessous à masquer). */
@media (min-width:768px) and (min-height:600px){
  body#product .hca-fp.hca-fp-gal-js .hca-fp-media{align-items:flex-start}
  body#product .hca-fp.hca-fp-gal-js .hca-fp-media > .elementor-widget-wrap,
  body#product .hca-fp.hca-fp-gal-js .hca-fp-media > .elementor-column-wrap{position:sticky;top:calc(var(--hca-header-h) + var(--hca-nav-h) + var(--hca-strip-h) + 16px)}
}

/* Visionneuse CE : zoom ×2 au clic (JS), curseur, icônes atteignables au clavier */
.elementor-lightbox .swiper-zoom-container img{cursor:zoom-in}
.elementor-lightbox .swiper-slide-zoomed .swiper-zoom-container img{cursor:zoom-out}
.elementor-lightbox .elementor-slideshow__header i[role="button"]:focus-visible,
.elementor-lightbox .dialog-lightbox-close-button:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* ==========================================================================================================
   Lot FP3 « Variantes » (2026-10-22). Fiche produit (gabarit CE n°13) seulement : widget product-variants 54ace8c
   et shortcode f1b0004 {eg_fp_head part='variants'}. Décision D3 : Modèle + Couleur = vrais choix, autres groupes
   informatifs (puces). Coloris : photo de la déclinaison > code hex > pastille neutre hachurée ; nom toujours affiché.
   ========================================================================================================== */
.hca-fp .hca-fp-vx-w{margin-bottom:4px}
.hca-fp-vx__intro{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0;color:var(--hca-muted);font:400 14px/1.4 var(--hca-font)}
.hca-fp-vx__illus{display:inline-flex;align-items:center;gap:6px;min-height:var(--hca-target);padding:0 12px;border:1px solid var(--hca-line);border-radius:var(--hca-r-pill);background:#fff;color:var(--hca-ink-2);font:600 13px/1 var(--hca-font);cursor:help}
.hca-fp-vx__illus svg{flex:none;width:16px;height:16px;color:var(--hca-teal-600)}
.hca-fp-vx__illus:hover{border-color:var(--hca-field-strong)}
.hca-fp-vx__illus:focus-visible{outline:0;box-shadow:var(--hca-focus)}
.hca-fp-vx__tip{display:none;position:absolute;z-index:30;top:calc(100% + 8px);left:0;right:0;max-width:440px;padding:10px 12px;border-radius:var(--hca-r-sm);background:var(--hca-ink);color:#fff;font:400 13px/1.45 var(--hca-font);box-shadow:var(--hca-shadow-2)}
.hca-fp-vx__illus:hover+.hca-fp-vx__tip,.hca-fp-vx__illus:focus-visible+.hca-fp-vx__tip,.hca-fp-vx__illus[aria-expanded="true"]+.hca-fp-vx__tip{display:block}
.hca-fp-vx__illus.is-closed+.hca-fp-vx__tip{display:none}

.hca-fp .elementor-widget-product-variants .ce-product-variants[data-fp3]{margin:0}
.hca-fp .elementor-widget-product-variants .ce-product-variants[data-fp3] .ce-product-variants__item{display:block;margin:0 0 18px}
.hca-fp .elementor-widget-product-variants .ce-product-variants[data-fp3] .hca-vx-title{display:block;margin:0 0 8px;color:var(--hca-ink);font:700 15px/1.35 var(--hca-font);text-transform:none;letter-spacing:0}
.hca-fp .hca-vx-val{font-weight:600;color:var(--hca-teal-700)}
.hca-fp .hca-vx-help{font-weight:400;color:var(--hca-muted)}
.hca-fp .hca-vx-hide{display:none!important}
/* listes déroulantes gardées (plus de 12 valeurs ou libellés longs) */
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__select{max-width:min(100%,460px)}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__select select{width:100%;min-height:44px;padding:0 36px 0 12px;border:1px solid var(--hca-field);border-radius:var(--hca-r-sm);background-color:#fff;color:var(--hca-ink);font:500 14px/1.3 var(--hca-font)}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__select select:focus-visible{outline:0;box-shadow:var(--hca-focus);border-color:var(--hca-teal-600)}
/* Modèle : boutons radio */
.hca-vx-btns{display:flex;flex-wrap:wrap;gap:10px;padding-top:8px}
.hca-vx-btn{position:relative;display:inline-flex;margin:0;cursor:pointer}
.hca-vx-btn input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.hca-vx-btn span{display:grid;place-items:center;min-width:84px;min-height:44px;padding:6px 16px;border:1px solid var(--hca-field);border-radius:var(--hca-r-sm);background:#fff;color:var(--hca-ink);font:600 14px/1.25 var(--hca-font);text-align:center}
.hca-vx-btn input:hover+span{border-color:var(--hca-field-strong)}
.hca-vx-btn input:checked+span{padding:5px 15px;border:2px solid var(--hca-teal-600);background:var(--hca-teal-50)}
.hca-vx-btn input:focus-visible+span{box-shadow:var(--hca-focus)}
.hca-vx-btn input:checked+span::after,.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper.is-on::after{content:"";position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;background:var(--hca-teal-600) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 3.5 8-8' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center/14px no-repeat;box-shadow:0 0 0 2px #fff;pointer-events:none}
/* Coloris : pastilles de 52 px + nom */
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__patterns{display:flex;flex-wrap:wrap;gap:12px 6px;margin:0;padding-top:8px}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__patterns label.ce-product-variants__radio-wrapper{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:6px;width:76px;margin:0;cursor:pointer;text-align:center}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__patterns label.ce-product-variants__radio-wrapper::after{right:6px;top:-6px}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper .ce-product-variants__radio{position:absolute;top:0;left:12px;width:52px;height:52px;margin:0;opacity:0;cursor:pointer}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper .ce-product-variants__pattern{box-sizing:border-box;flex:none;width:52px;height:52px;margin:0;padding:0;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--hca-field);background-size:cover;background-position:center}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper:hover .ce-product-variants__pattern{padding:0;border:3px solid #fff;box-shadow:0 0 0 1px var(--hca-field-strong)}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper.is-on .ce-product-variants__pattern,.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper input:checked~.ce-product-variants__pattern{padding:0;border:3px solid #fff;box-shadow:0 0 0 2px var(--hca-teal-600)}
.hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper input:focus-visible~.ce-product-variants__pattern{box-shadow:0 0 0 2px var(--hca-teal-600),0 0 0 5px rgba(0,122,145,.35)}
.hca-fp .ce-product-variants[data-fp3] .hca-vx-neutre{background:repeating-linear-gradient(135deg,#F2F5F8 0 5px,#DCE3EC 5px 10px)}
.hca-vx-sw__name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-width:76px;color:var(--hca-ink-2);font:400 12.5px/1.25 var(--hca-font);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}
.is-on>.hca-vx-sw__name{color:var(--hca-ink);font-weight:700}
/* groupes informatifs : puces non interactives */
.hca-vx-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.hca-vx-chip{display:grid;place-items:center;min-width:56px;min-height:40px;padding:0 12px;border:1px solid var(--hca-line);border-radius:var(--hca-r-sm);background:#FBFCFE;color:var(--hca-ink-2);font:600 14px/1.2 var(--hca-font);font-variant-numeric:tabular-nums}
.hca-vx-chip.is-cur{border-color:var(--hca-teal-600)}
.hca-vx-chip.is-off{background:#fff;color:var(--hca-muted);font-weight:500;text-decoration:line-through}
/* références de la variante présentée */
.hca-vx-refs{margin:0 0 18px;border:1px solid var(--hca-line);border-radius:var(--hca-r-sm);background:#fff}
.hca-vx-refs summary{display:flex;align-items:center;min-height:var(--hca-target);padding:0 12px;color:var(--hca-link);font:600 14px/1.3 var(--hca-font);cursor:pointer}
.hca-vx-refs summary:focus-visible{outline:0;box-shadow:var(--hca-focus)}
.hca-vx-refs__scroll{max-height:280px;overflow:auto;border-top:1px solid var(--hca-line)}
.hca-vx-refs table{width:100%;border-collapse:collapse;font:400 13.5px/1.35 var(--hca-font);font-variant-numeric:tabular-nums}
.hca-vx-refs th{position:sticky;top:0;background:#F7F9FC;color:var(--hca-ink);font-weight:700;text-align:left}
.hca-vx-refs th,.hca-vx-refs td{padding:7px 12px;border-bottom:1px solid var(--hca-line)}
.hca-vx-refs__ref{overflow-wrap:anywhere}
.hca-vx-refs tr.is-cur td{background:var(--hca-teal-50);font-weight:700}
.hca-vx-chip[hidden]{display:none}
.hca-vx-chips__more{display:flex}
.hca-vx-more{min-height:40px;padding:0 12px;border:1px dashed var(--hca-field-strong);border-radius:var(--hca-r-sm);background:#fff;color:var(--hca-link);font:600 13.5px/1.2 var(--hca-font);cursor:pointer}
.hca-vx-more:hover{border-style:solid}
.hca-vx-more:focus-visible{outline:0;box-shadow:var(--hca-focus)}
/* les cases radio restent atteignables au clavier (custom.css du thème : « #product .ce-product-variants__radio{display:none!important} ») */
#product .hca-fp .ce-product-variants[data-fp3] .ce-product-variants__radio-wrapper .ce-product-variants__radio,#product .hca-fp .hca-vx-btn input{display:block!important;visibility:visible!important;-webkit-appearance:none!important;appearance:none!important}

/* ======================================================================================================================
   Lot FP4 « Onglets » (2026-10-22). Fiche produit (gabarit CE n°13) : section .hca-fpx (shortcode {eg_fp_head part='tabs'}),
   fiche PDF (.hca-fp-pdf, lien du module inchangé), accès rapide (.hca-fp-quick), retouche E (ordre d'affichage des groupes,
   en JS). Sans JS : sections empilées, toutes ouvertes. Présentation seulement.
   ====================================================================================================================== */
body#product .elementor-section.hca-fpx > .elementor-container{max-width:none}
body#product .hca-fpx > .elementor-container,
body#product .hca-fpx > .elementor-container > .elementor-row,
body#product .hca-fpx .elementor-column,
body#product .hca-fpx .elementor-widget-wrap,
body#product .hca-fpx .elementor-widget{min-width:0;max-width:100%}
body#product .hca-fpx > .elementor-container > .elementor-row > .elementor-column > .elementor-element-populated{padding-left:0;padding-right:0}
body#product .elementor-section.hca-fpx{margin-top:40px}
body#product .hca-fp-tabs{font-family:var(--hca-font);color:var(--hca-ink);background:#fff;border:1px solid var(--hca-line);border-radius:var(--hca-r-lg);padding:8px 24px 24px;scroll-margin-top:calc(var(--hca-header-h) + var(--hca-nav-h) + var(--hca-strip-h) + 16px)}
body#product .hca-fp-tabs__list{display:flex;gap:8px;border-bottom:1px solid var(--hca-line);overflow-x:auto;scrollbar-width:none}
body#product .hca-fp-tabs__list[hidden]{display:none}
body#product .hca-fp-tabs__tab{display:inline-flex;align-items:center;gap:10px;min-height:56px;margin:0 0 -1px;padding:0 18px;border:0;border-bottom:3px solid transparent;border-radius:0;background:none;font:500 16px/1.2 var(--hca-font);color:var(--hca-ink-2);cursor:pointer;white-space:nowrap;text-transform:none}
body#product .hca-fp-tabs__tab svg{flex:none;width:22px;height:22px}
body#product .hca-fp-tabs__tab:hover{color:var(--hca-ink);background:var(--hca-bg)}
body#product .hca-fp-tabs__tab[aria-selected="true"]{color:var(--hca-teal-700);font-weight:700;border-bottom-color:var(--hca-teal-600)}
body#product .hca-fp-tabs__tab:focus-visible,body#product .hca-fp-acc:focus-visible{outline:0;box-shadow:inset 0 0 0 3px rgba(0,122,145,.35)}
body#product .hca-fp-tabs__n{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--hca-r-pill);background:var(--hca-teal-50);color:var(--hca-teal-700);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
body#product .hca-fp-acc .hca-fp-tabs__n{display:inline;min-width:0;height:auto;padding:0;background:none;color:var(--hca-muted);font-size:15px;font-weight:500}
body#product .hca-fp-acc-h{scroll-margin-top:calc(var(--hca-header-h) + var(--hca-nav-h) + var(--hca-strip-h) + 8px);margin:0;padding:0;border:0;font:inherit;text-transform:none;letter-spacing:normal}
body#product .hca-fp-acc{display:flex;width:100%;align-items:center;gap:10px;min-height:56px;margin:0;padding:0;border:0;border-radius:0;background:none;font:700 18px/1.3 var(--hca-font);color:var(--hca-ink);text-align:left;text-transform:none;cursor:pointer}
body#product .hca-fp-acc svg{flex:none;width:22px;height:22px;color:var(--hca-teal-600)}
body#product .hca-fp-acc .hca-fp-acc__chev{margin-left:auto;color:var(--hca-muted);transition:transform .15s}
body#product .hca-fp-acc[aria-expanded="true"] .hca-fp-acc__chev{transform:rotate(180deg)}
body#product .hca-fp-tabs:not(.is-js) .hca-fp-acc__chev{display:none}
body#product .hca-fp-tabs:not(.is-js) .hca-fp-acc{cursor:default}
body#product .hca-fp-tabs.is-tabs .hca-fp-acc-h{display:none}
body#product .hca-fp-panel{padding-top:20px}
body#product .hca-fp-panel[hidden]{display:none}
body#product .hca-fp-panel:focus{outline:0}
body#product .hca-fp-panel:focus-visible{box-shadow:var(--hca-focus);border-radius:var(--hca-r-sm)}
/* Description (texte du BO, rendu tel quel) */
body#product .hca-fp-desc{max-width:860px;font-size:15px;line-height:1.6;color:var(--hca-ink-2);overflow-wrap:anywhere}
body#product .hca-fp-desc p{margin:0 0 .9em}
body#product .hca-fp-desc p:empty{display:none}
body#product .hca-fp-desc img{max-width:100%;height:auto}
body#product .hca-fp-desc table{display:block;max-width:100%;overflow-x:auto}
/* Caractéristiques : 2 cartes à partir d'environ 900 px de contenu, sinon 1 ; une carte seule prend toute la largeur */
body#product .hca-fp-spec{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:20px;align-items:start}
body#product .hca-fp-card{min-width:0;scroll-margin-top:calc(var(--hca-header-h) + var(--hca-nav-h) + var(--hca-strip-h) + 16px);padding:18px 20px;border:1px solid var(--hca-line);border-radius:var(--hca-r-md)}
body#product .hca-fp-card[hidden]{display:none}
body#product .hca-fp-card__h{margin:0 0 12px;padding:0;font:700 18px/1.3 var(--hca-font);color:var(--hca-ink);text-transform:none}
body#product .hca-fp-dl{margin:0;border-top:1px solid var(--hca-line)}
body#product .hca-fp-dl > div{display:grid;grid-template-columns:minmax(120px,40%) minmax(0,1fr);border-bottom:1px solid var(--hca-line)}
body#product .hca-fp-dl dt,body#product .hca-fp-dl dd{margin:0;padding:11px 12px;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
body#product .hca-fp-dl dt{font-weight:600;background:#F7F9FC;color:var(--hca-ink)}
body#product .hca-fp-dl dd{color:var(--hca-ink-2)}
body#product .hca-fp-dl__ref{font-variant-numeric:tabular-nums;font-weight:700}
body#product .hca-vx-refs--tab{margin:16px 0 0}
body#product .hca-vx-refs__cap{margin:0;padding:10px 12px;font:600 14px/1.3 var(--hca-font);color:var(--hca-ink)}
body#product .hca-vx-refs--tab .hca-vx-refs__scroll{max-height:320px}
body#product .hca-vx-refs__scroll:focus-visible{outline:0;box-shadow:var(--hca-focus)}
body#product .hca-vx-refs-go{margin:0 0 14px;font:500 14px/1.4 var(--hca-font)}
body#product .hca-vx-refs-go a{display:inline-flex;align-items:center;min-height:var(--hca-target);color:var(--hca-link);text-decoration:underline;text-underline-offset:2px}
/* Vidéos : même façade que la galerie (aucune requête YouTube avant le clic) */
body#product .hca-fpx .hca-fp-video{position:relative;max-width:860px;aspect-ratio:16/9;border-radius:var(--hca-r-md);overflow:hidden;background:var(--hca-ink)}
body#product .hca-fpx .hca-fp-video__facade{position:absolute;inset:0;display:grid;place-items:center;color:#fff!important;text-decoration:none!important;cursor:pointer}
body#product .hca-fpx .hca-fp-video__facade:focus-visible{outline:3px solid var(--hca-teal-500);outline-offset:-3px}
body#product .hca-fpx .hca-fp-video__play{display:grid;place-items:center;width:68px;height:68px;border-radius:var(--hca-r-pill);background:rgba(255,255,255,.16);border:2px solid rgba(255,255,255,.85);color:#fff;transition:background .15s}
body#product .hca-fpx .hca-fp-video__facade:hover .hca-fp-video__play{background:var(--hca-teal-600)}
body#product .hca-fpx .hca-fp-video__note{position:absolute;left:16px;right:16px;bottom:12px;font:500 13px/1.4 var(--hca-font);color:#fff;opacity:.92;text-align:left}
body#product .hca-fpx .hca-fp-video__frame{position:absolute;inset:0;width:100%;height:100%;border:0}
/* Documents */
body#product .hca-fp-docs{display:grid;gap:10px;max-width:860px;margin:0;padding:0;list-style:none}
body#product .hca-fp-docs__i{display:flex;align-items:center;gap:14px;margin:0;padding:12px 14px;border:1px solid var(--hca-line);border-radius:var(--hca-r-md)}
body#product .hca-fp-docs__ic{flex:none;width:28px;height:28px;color:var(--hca-teal-600)}
body#product .hca-fp-docs__t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
body#product .hca-fp-docs__t b{font:600 15px/1.35 var(--hca-font);color:var(--hca-ink);overflow-wrap:anywhere}
body#product .hca-fp-docs__t small{font-size:12.5px;line-height:1.4;color:var(--hca-muted);overflow-wrap:anywhere}
body#product .hca-fp-docs__btn{flex:none;display:inline-flex;align-items:center;min-height:var(--hca-target);padding:0 16px;border:1.5px solid var(--hca-teal-600);border-radius:var(--hca-r-sm);background:#fff;color:var(--hca-teal-700)!important;font:600 14px/1 var(--hca-font);text-decoration:none!important;white-space:nowrap}
body#product .hca-fp-docs__btn:hover{background:var(--hca-teal-50)}
body#product .hca-fp-docs__btn:focus-visible{outline:0;box-shadow:var(--hca-focus)}
/* Colonne infos : fiche PDF en bouton contour (lien et texte du module inchangés), accès rapide */
body#product .hca-fp .elementor-widget.hca-fp-pdf{margin:12px 0 0!important}
body#product .hca-fp .hca-fp-pdf a{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:52px;padding:0 16px;border:1.5px solid var(--hca-teal-600);border-radius:var(--hca-r-sm);background:#fff;color:var(--hca-teal-700)!important;font:600 15px/1.2 var(--hca-font);text-decoration:none!important;text-align:center}
body#product .hca-fp .hca-fp-pdf a:hover{background:var(--hca-teal-50)}
body#product .hca-fp .hca-fp-pdf a:focus-visible{outline:0;box-shadow:var(--hca-focus)}
body#product .hca-fp .elementor-widget.hca-fp-quick-w{margin:0!important}
body#product .hca-fp-quick{display:flex;flex-wrap:wrap;align-items:center;gap:0 14px;margin:8px 0 0;font:400 13.5px/1.4 var(--hca-font);color:var(--hca-muted)}
body#product .hca-fp-quick a{display:inline-flex;align-items:center;gap:6px;min-height:var(--hca-target);color:var(--hca-link)!important;text-decoration:underline;text-underline-offset:2px}
body#product .hca-fp-quick svg{flex:none;width:16px;height:16px}
@media (max-width:767px){
  body#product .elementor-section.hca-fpx{margin-top:28px}
  body#product .hca-fp-tabs{padding:0 16px;border-radius:var(--hca-r-md)}
  body#product .hca-fp-acc-h{border-top:1px solid var(--hca-line)}
  body#product .hca-fp-acc-h:first-of-type{border-top:0}
  body#product .hca-fp-acc{font-size:16px}
  body#product .hca-fp-panel{padding:0 0 18px}
  body#product .hca-fp-card{padding:14px}
  body#product .hca-fp-dl > div{grid-template-columns:minmax(100px,42%) minmax(0,1fr)}
}
@media (max-width:479px){
  body#product .hca-fp-docs__i{flex-wrap:wrap}
  body#product .hca-fp-docs__btn{margin-left:42px}
}
/* ===== Lot FP5 « Mobile et accessibilité » (2026-10-22) : fiche produit =====
   Texte du bouton fiche PDF (réécrit en JS, lien du module inchangé), barre collante mobile (< 768 px) au-dessus de la
   zone sûre, marge basse du pied de page quand la barre existe, cible tactile du lien de catégorie (Réf. · catégorie).
   Rien au-dessus de 767 px pour la barre : l'en-tête collant (lot H) et la galerie collante (FP2) ne sont pas concernés. */
body#product .hca-fp .hca-fp-pdf__s{display:none}
@media (max-width:479px){
  body#product .hca-fp .hca-fp-pdf__l{display:none}
  body#product .hca-fp .hca-fp-pdf__s{display:inline}
}
body#product .hca-fp .hca-fp-meta .ce-product-meta__value a{display:inline-flex;align-items:center;min-height:var(--hca-target)}
body#product .hca-fp-stick{display:none}
@media (max-width:767px){
  body#product .hca-fp-stick{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:900;gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:#fff;box-shadow:0 -4px 16px rgba(15,30,74,.12);transform:translateY(110%);visibility:hidden;transition:transform .2s ease,visibility 0s linear .2s}
  body#product .hca-fp-stick.is-on{transform:none;visibility:visible;transition:transform .2s ease,visibility 0s}
  body#product .hca-fp-stick[hidden],html.hca-demo body#product .hca-fp-stick{display:none!important}
  body#product .hca-fp-stick__add,body#product .hca-fp-stick__pdf{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:var(--hca-r-sm);font:600 15px/1.2 var(--hca-font);cursor:pointer;text-decoration:none!important;white-space:nowrap}
  body#product .hca-fp-stick__add{flex:1 1 auto;min-width:0;padding:0 16px;border:0;background:var(--hca-teal-600);color:#fff}
  body#product .hca-fp-stick__add:hover{background:var(--hca-teal-700)}
  body#product .hca-fp-stick__pdf{flex:none;padding:0 14px;border:1.5px solid var(--hca-teal-600);background:#fff;color:var(--hca-teal-700)!important}
  body#product .hca-fp-stick__pdf[hidden]{display:none}
  body#product .hca-fp-stick svg{flex:none;width:20px;height:20px}
  body#product .hca-fp-stick__add:focus-visible,body#product .hca-fp-stick__pdf:focus-visible{outline:0;box-shadow:var(--hca-focus)}
  body#product.hca-fp-has-stick #footer{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
  html.hca-demo body#product.hca-fp-has-stick #footer{padding-bottom:0}
}
@media (max-width:767px) and (prefers-reduced-motion:reduce){
  body#product .hca-fp-stick,body#product .hca-fp-stick.is-on{transition:none}
}

/* ===== Lot FP6 (2026-10-22) : fiche produit, gabarit CE n°13 =====
   Pastilles clés (part='keys'), cœur favori de la variante (part='fav') à côté de la fiche PDF, « Dans la même catégorie »
   (part='same', cartes du listing = miniature CE n°10 du lot 4) ; Mes favoris : ligne indisponible (R1). */
body#product .hca-fp .elementor-widget.hca-fp-keys-w{margin:0 0 4px!important}
body#product .hca-fp-keys{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:2px 0 14px;padding:0;list-style:none}
body#product .hca-fp-key{display:flex;gap:10px;align-items:center;min-width:0;margin:0;padding:12px 14px;background:var(--hca-teal-50);border-radius:var(--hca-r-md)}
body#product .hca-fp-key svg{flex:none;width:28px;height:28px;color:var(--hca-teal-600)}
body#product .hca-fp-key__t{min-width:0}
body#product .hca-fp-key b{display:block;font:700 15px/1.25 var(--hca-font);color:var(--hca-ink);overflow-wrap:anywhere}
body#product .hca-fp-key small{display:block;font:400 12.5px/1.35 var(--hca-font);color:var(--hca-muted)}
@media (max-width:767px){body#product .hca-fp-keys{grid-template-columns:1fr 1fr}}
@media (max-width:359px){body#product .hca-fp-keys{grid-template-columns:1fr}}

/* cœur de la variante : 52 px, à droite du bouton fiche PDF, sur la même rangée (colonne CE en flex vertical : le cœur
   remonte de sa hauteur quand il suit directement le bouton PDF ; sans bouton PDF, il reste à sa place) */
body#product .hca-fp .elementor-widget.hca-fp-pdf:has(+ .hca-fp-fav-w){width:calc(100% - 62px)!important;max-width:calc(100% - 62px)}
body#product .hca-fp .elementor-widget.hca-fp-fav-w{width:52px!important;max-width:52px;margin:12px 0 0!important}
body#product .hca-fp .elementor-widget.hca-fp-pdf + .elementor-widget.hca-fp-fav-w{align-self:flex-end;margin:calc(-52px - var(--hca-fp-wgap, 20px)) 0 0!important} /* 20 px = espacement CE des widgets (row-gap mesuré) */
body#product .hca-fp .hca-fp-fav{display:block;margin:0}
body#product .hca-fp .hca-fp-fav .hca-fp-fav__btn{position:static!important;display:grid!important;place-items:center;width:52px!important;height:52px!important;margin:0!important;padding:0!important;border:1px solid var(--hca-field)!important;border-radius:var(--hca-r-sm)!important;background:#fff!important;color:var(--hca-ink-2)!important;box-shadow:none!important;cursor:pointer;transform:none!important}
body#product .hca-fp .hca-fp-fav .hca-fp-fav__btn:hover{background:var(--hca-teal-50)!important;color:var(--hca-teal-700)!important}
body#product .hca-fp .hca-fp-fav .hca-fp-fav__btn:focus-visible{outline:0;box-shadow:var(--hca-focus)!important}
body#product .hca-fp .hca-fp-fav .hca-fp-fav__btn.egwishlist-added{color:var(--hca-danger)!important;border-color:#E6B3AF!important;background:#FCEDEC!important}
body#product .hca-fp .hca-fp-fav .hca-fp-fav__btn svg{width:24px;height:24px}
body#product .hca-fp .hca-fp-fav .hca-fp-fav__btn.egwishlist-added svg path{fill:currentColor}

/* Dans la même catégorie : rangée défilante de cartes du listing (4 / 3 / 70 %) */
body#product .elementor-widget.hca-fp-rel-w{margin:0!important}
body#product .hca-fp-rel{margin:40px 0 0;min-width:0}
body#product .hca-fp-rel__h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 14px}
body#product .hca-fp-rel__h h2{margin:0;font:700 20px/1.3 var(--hca-font);color:var(--hca-ink);text-transform:none}
body#product .hca-fp-rel__h small{color:var(--hca-muted);font:400 13.5px/1.4 var(--hca-font)}
body#product .hca-fp-rel__all{margin-left:auto;display:inline-flex;align-items:center;min-height:var(--hca-target);color:var(--hca-link)!important;font:600 14px/1.3 var(--hca-font);text-decoration:underline;text-underline-offset:2px}
body#product .hca-fp-rel__all:focus-visible{outline:0;box-shadow:var(--hca-focus);border-radius:4px}
body#product .hca-fp-rel__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px) / 4);gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:4px 2px 10px;margin:0 -2px}
body#product .hca-fp-rel__i{min-width:0;scroll-snap-align:start;display:flex}
body#product .hca-fp-rel__i > .elementor{flex:1 1 auto;min-width:0;height:auto}
@media (max-width:1199px){body#product .hca-fp-rel__track{grid-auto-columns:calc((100% - 32px) / 3)}}
@media (max-width:767px){body#product .hca-fp-rel{margin-top:28px}body#product .hca-fp-rel__track{grid-auto-columns:86%}body#product .hca-fp-rel__all{margin-left:0}}

/* Mes favoris (egwishlist, R1 du lot FP6 back3) : ligne indisponible grisée, sans lien ; étiquette lisible même sans
   eg-listes.css (non chargée en mode démo) : mêmes valeurs que .eglistes-off de la page Mes listes */
#egwishlist-user-products .product__card.is-off .product__card--img img,
#egwishlist-user-products .product__card.is-off .product__card--off-name{opacity:.65}
#egwishlist-user-products .product__card.is-off .product__card--name{color:var(--hca-muted)}
#egwishlist-user-products .eglistes-off{display:inline-block;font:600 12px/1.5 var(--hca-font,inherit);color:var(--egl-warn,#7A5200);background:var(--egl-warn-50,#FFF7E3);border-radius:var(--hca-r-pill,999px);padding:1px 8px;margin-left:6px;vertical-align:1px;opacity:1}
