/* Une seule ligne ; les cartes actuelles restent le style par défaut. */
.gna-cat-carousel{min-width:0;--gna-cat-count:var(--gna-cat-count-desktop,8)}
.gna-cat-carousel .gna-cat-track{display:flex;flex-wrap:nowrap;gap:var(--gna-cat-gap,14px);overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;padding:4px 2px 14px;scroll-behavior:auto;touch-action:pan-x pan-y}
.gna-cat-carousel .gna-cat-track>a{flex:0 0 calc((100% - (var(--gna-cat-count) - 1)*var(--gna-cat-gap,14px))/var(--gna-cat-count));min-width:0;scroll-snap-align:start;overflow-wrap:anywhere;justify-content:space-between;background:var(--gna-cat-background,#fff);color:var(--gna-cat-text,inherit)}
.gna-cat-carousel .gna-hp-category-icon{flex:none;max-width:100%;width:calc(var(--gna-cat-icon-size,48px) + 32px);height:calc(var(--gna-cat-icon-size,48px) + 32px)}
.gna-cat-carousel .gna-hp-category-icon .gnc-category-svg{width:var(--gna-cat-icon-size,48px);height:var(--gna-cat-icon-size,48px);max-width:100%;object-fit:contain}
.gna-cat-carousel .gna-cat-track>a:hover{border-color:var(--gna-cat-accent,var(--gna-accent))}
.gna-cat-controls{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.gna-cat-controls[hidden]{display:none}
.gna-cat-controls>button{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:8px 12px;border-radius:10px;border:1px solid #d8dce4;background:#fff;color:var(--gna-cat-accent,var(--gna-accent));cursor:pointer;font:inherit;font-size:12px}.gna-cat-controls .gna-icon{width:18px;height:18px}.gna-cat-controls [data-cat-prev] .gna-icon{transform:rotate(180deg)}.gna-cat-controls button:disabled{opacity:.35;cursor:default}.gna-cat-controls button:focus-visible,.gna-cat-track:focus-visible{outline:3px solid var(--gna-cat-accent,var(--gna-accent));outline-offset:3px}
.gna-cat-dots{display:flex;flex-wrap:wrap;gap:3px}.gna-cat-dots button{border:0;background:transparent;padding:9px;cursor:pointer;min-width:28px;min-height:28px}.gna-cat-dots button:after{content:'';display:block;width:7px;height:7px;border-radius:50%;background:#bfc5cf}.gna-cat-dots button[aria-pressed=true]:after{background:var(--gna-cat-accent,var(--gna-accent))}
.gna-cat-light .gna-cat-track>a{border-radius:20px;border-color:#eceef2;box-shadow:0 5px 18px #1a293609;background:var(--gna-cat-background,#fff);color:var(--gna-cat-text,#20242c)}.gna-cat-light .gna-hp-category-icon{background:#fff0f3;border-radius:50%}
.gna-cat-dark .gna-cat-track>a{background:var(--gna-cat-background,#171a20);color:var(--gna-cat-text,#f5f6fa);border:1px solid #333743;border-radius:16px;box-shadow:inset 0 1px #ffffff08}.gna-cat-dark .gna-hp-category-icon{background:radial-gradient(circle,#ed123b24,#ed123b05);border-radius:22px}.gna-cat-dark .gna-cat-track>a:hover{border-color:var(--gna-cat-accent,var(--gna-accent));box-shadow:0 0 20px #ed123b20}.gna-cat-dark .gna-cat-controls>button{background:#171a20;border-color:#333743}
.gna-cat-circle .gna-cat-track>a{background:var(--gna-cat-background,transparent);color:var(--gna-cat-text,inherit);border:0;border-radius:0;box-shadow:none;padding:14px 8px;justify-content:flex-start;gap:14px}.gna-cat-circle .gna-hp-category-icon{border-radius:50%;background:#fff;border:1px solid #e5e8ed;box-shadow:0 5px 20px #18212e08}.gna-cat-circle .gna-cat-track>a>.gna-icon{display:none}.gna-cat-circle .gna-cat-track>a:hover .gna-hp-category-icon{border-color:var(--gna-cat-accent,var(--gna-accent));box-shadow:0 5px 20px #ed123b15}
@media(max-width:1024px){.gna-cat-carousel{--gna-cat-count:var(--gna-cat-count-tablet,4)}}
@media(max-width:760px){.gna-cat-carousel{--gna-cat-count:var(--gna-cat-count-mobile,2)}.gna-cat-carousel .gna-cat-track>a{padding:16px 8px}.gna-cat-controls{justify-content:center}.gna-cat-carousel.gna-cat-current .gna-hp-category-icon{width:calc(var(--gna-cat-icon-size,48px) + 12px);height:calc(var(--gna-cat-icon-size,48px) + 12px)}.gna-cat-carousel.gna-cat-current .gna-hp-category-icon .gnc-category-svg{width:calc(var(--gna-cat-icon-size,48px) * .8);height:calc(var(--gna-cat-icon-size,48px) * .8)}}
@media(prefers-reduced-motion:reduce){.gna-cat-track>a{transition:none!important}}

/* Taille réelle des cartes, sans transform/zoom pour conserver la netteté. */
.gna-cat-carousel{--gna-cat-scale:var(--gna-cat-scale-desktop,1);--gna-cat-font:13px}
.gna-cat-carousel .gna-cat-track::-webkit-scrollbar{display:none;width:0;height:0}
.gna-cat-carousel .gna-cat-track{gap:calc(var(--gna-cat-gap,14px)*var(--gna-cat-scale));padding-bottom:4px}
.gna-cat-carousel .gna-cat-track>a{flex-basis:min(100%,calc(((100% - (var(--gna-cat-count) - 1)*var(--gna-cat-gap,14px))/var(--gna-cat-count))*var(--gna-cat-scale)));font-size:calc(var(--gna-cat-font)*var(--gna-cat-scale));padding:calc(22px*var(--gna-cat-scale)) calc(16px*var(--gna-cat-scale));gap:calc(12px*var(--gna-cat-scale))}
.gna-cat-carousel .gna-hp-category-icon{width:calc((var(--gna-cat-icon-size,48px) + 32px)*var(--gna-cat-scale));height:calc((var(--gna-cat-icon-size,48px) + 32px)*var(--gna-cat-scale))}
.gna-cat-carousel .gna-hp-category-icon .gnc-category-svg{width:calc(var(--gna-cat-icon-size,48px)*var(--gna-cat-scale));height:calc(var(--gna-cat-icon-size,48px)*var(--gna-cat-scale))}
.gna-cat-carousel .gna-hp-category-icon .gna-icon{width:calc(32px*var(--gna-cat-scale));height:calc(32px*var(--gna-cat-scale))}
.gna-cat-carousel .gna-cat-track>a>.gna-icon{width:calc(15px*var(--gna-cat-scale));height:calc(15px*var(--gna-cat-scale))}
.gna-cat-carousel.gna-cat-circle .gna-cat-track>a{padding:calc(14px*var(--gna-cat-scale)) calc(8px*var(--gna-cat-scale));gap:calc(14px*var(--gna-cat-scale))}
@media(max-width:1024px){.gna-cat-carousel{--gna-cat-scale:var(--gna-cat-scale-tablet,1)}}
@media(max-width:760px){.gna-cat-carousel{--gna-cat-scale:var(--gna-cat-scale-mobile,1);--gna-cat-font:12px}.gna-cat-carousel .gna-cat-track>a{padding:calc(16px*var(--gna-cat-scale)) calc(8px*var(--gna-cat-scale))}.gna-cat-carousel.gna-cat-current .gna-hp-category-icon{width:calc((var(--gna-cat-icon-size,48px) + 12px)*var(--gna-cat-scale));height:calc((var(--gna-cat-icon-size,48px) + 12px)*var(--gna-cat-scale))}.gna-cat-carousel.gna-cat-current .gna-hp-category-icon .gnc-category-svg{width:calc(var(--gna-cat-icon-size,48px)*.8*var(--gna-cat-scale));height:calc(var(--gna-cat-icon-size,48px)*.8*var(--gna-cat-scale))}}
