/* Breadcrumbs SEO */
.breadcrumbs-section{padding-block:var(--s-3)}
.breadcrumbs-section .container{overflow-x:auto;overflow-y:visible}
.breadcrumbs-list{display:flex;align-items:center;gap:var(--s-2);list-style:none;margin:0;padding:0;flex-wrap:nowrap;white-space:nowrap}
.breadcrumb-item{font-size:var(--fs-small);font-weight:500}
.breadcrumb-item a{transition:color .2s ease}
.breadcrumb-item a:hover{text-decoration:underline}
.breadcrumb-item + .breadcrumb-item::before{content:"›";margin: 0 var(--s-2);opacity:.55}
.breadcrumb-item a:focus-visible{outline: 2px solid currentColor;outline-offset:2px;border-radius:6px}

/* Scroll horizontal sur tablette */
@media(min-width:768px) and (max-width:1023px){
  .breadcrumbs-section .container{scrollbar-width:thin;scrollbar-color:var(--gris) transparent;padding-bottom:var(--s-1)}
  .breadcrumbs-section .container::-webkit-scrollbar{height:4px}
  .breadcrumbs-section .container::-webkit-scrollbar-track{background:transparent}
  .breadcrumbs-section .container::-webkit-scrollbar-thumb{background:var(--gris);border-radius:2px}
  .breadcrumbs-section .container::-webkit-scrollbar-thumb:hover{background:var(--muted)}
}
@media(min-width:1024px){
  .breadcrumbs-section .container{overflow-x:visible}
  .breadcrumbs-list{flex-wrap:wrap}
}

/* Hero Archive */
#archive-hero{padding-block:var(--s-5)}
.archive-hero-grid{align-items:center;gap:0}
.archive-hero__actions{display:flex;align-items:flex-start}
.archive-title,#archive-hero h1{font-size:var(--fs-h3)!important;line-height:var(--lh-h3);font-weight:700;margin:0 0 var(--s-2)}
.archive-subtitle{font-size:var(--fs-body);color:var(--muted);margin:0;line-height:1.5}

/* Bouton Filtrer Toggle */
.btn-filter-toggle{display:inline-flex;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);background:var(--bleu-principal);color:var(--blanc);border:none;border-radius:50px;font-family:'Satoshi',sans-serif;font-size:var(--fs-body);font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease;white-space:nowrap}
.btn-filter-toggle:hover,.btn-filter-toggle.active{background:var(--bleu-secondaire)}
.btn-filter-toggle svg{flex-shrink:0}
.btn-filter-toggle i{font-size:1.25rem}

/* Slider Sous-catégories */
.subcategories-slider{padding-block:var(--s-5)}
.subcategories-slider .container{overflow:visible}
.subcategories-track{display:flex;gap:var(--s-4);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--s-2)}
.subcategories-track::-webkit-scrollbar{display:none}
.subcat-card{flex:0 0 auto;width:200px;scroll-snap-align:start;text-decoration:none;color:var(--text);transition:transform .2s ease}
.subcat-card:hover{transform:translateY(-4px)}
.subcat-card__image{width:100%;aspect-ratio:1/1;border-radius:12px;overflow:hidden;margin-bottom:var(--s-3)}
.subcat-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.subcat-card:hover .subcat-card__image img{transform:scale(1.05)}
.subcat-card__title{font-family:'Satoshi',sans-serif;font-size:var(--fs-h5);font-weight:600;text-align:left;margin:0}
.subcat-card__desc{font-size:var(--fs-small);color:var(--muted);margin:var(--s-1) 0 0;line-height:1.4}
.subcat-card__badge{display:inline-block;background:var(--bleu-principal);color:var(--blanc);font-size:var(--fs-badge);font-weight:600;padding:var(--s-1) var(--s-3);border-radius:20px;margin-left:var(--s-2);vertical-align:middle}

/* Layout Archive (Sidebar + Grid) */
.archive-layout{display:grid;grid-template-columns:1fr;gap:var(--s-6);transition:grid-template-columns .3s ease}
.archive-layout.filter-open{grid-template-columns:280px 1fr}

/* Sidebar Filtres */
.filter-sidebar{display:none;flex-direction:column;gap:var(--s-4)}
.archive-layout.filter-open .filter-sidebar{display:flex}
.filter-sidebar__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--s-4);border-bottom:1px solid var(--gris)}
.filter-sidebar__count{font-family:'Satoshi',sans-serif;font-size:var(--fs-h5);font-weight:700;color:var(--text);display:flex;align-items:center;gap:var(--s-3);flex:1}
.filter-sidebar__clear-link{font-size:var(--fs-small);color:var(--bleu-principal);text-decoration:underline;font-weight:400;cursor:pointer;transition:color .2s ease;margin-left:auto}
.filter-sidebar__clear-link:hover{color:var(--bleu-secondaire)}
.filter-sidebar__actions{display:flex;position:sticky;bottom:0;background:var(--blanc);gap:var(--s-3);padding: var(--s-5) 0}
.filter-sidebar__btn{flex:1;padding:var(--s-4);border-radius:6px;font-family:'Satoshi',sans-serif;font-size:var(--fs-body);font-weight:600;cursor:pointer;transition:all .2s ease;border:none}
.filter-sidebar__btn--reset{background:none;border:1px solid var(--bleu-principal);color:var(--bleu-principal)}
.filter-sidebar__btn--reset:hover{background:none;color:var(--bleu-principal);opacity:.8}
.filter-sidebar__btn--apply{background:var(--bleu-principal);color:var(--blanc)}
.filter-sidebar__btn--apply:hover{background:var(--bleu-secondaire)}
.filter-sidebar__close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--gris);border:none;border-radius:50%;cursor:pointer;transition:background .2s ease;color:var(--text)}
.filter-sidebar__close:hover{background:#e5e5e5}
.filter-sidebar__close svg{color:var(--text)}
.filter-reset{width:100%;padding:var(--s-3);background:none;border:1px solid var(--bleu-principal);border-radius:6px;color:var(--bleu-principal);font-family:'Satoshi',sans-serif;font-size:var(--fs-small);font-weight:600;cursor:pointer;transition:all .2s ease}
.filter-reset:hover{background:var(--bleu-principal);color:var(--blanc)}
@media(min-width:1024px){
  .filter-sidebar__close{display:none}
  .filter-reset{display:none}
}
.filter-group{padding-bottom:var(--s-4);border-bottom:1px solid var(--gris)}
.filter-group:last-child{border-bottom:none;padding-bottom:0}
.filter-group__title{display:block;font-family:'Satoshi',sans-serif;font-size:var(--fs-h6);font-weight:700;margin:0 0 var(--s-3);color:var(--text)}
.filter-options{display:flex;flex-direction:column;gap:6px}
.filter-colors{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.filter-color{width:32px;height:32px;border-radius:6px;border:2px solid transparent;cursor:pointer;transition:all .2s ease;position:relative}
.filter-color input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}
.filter-color:hover{transform:scale(1.05)}
.filter-color.active,.filter-color:has(input:checked){border-color:var(--text);box-shadow:inset 0 0 0 2px var(--blanc)}
.filter-tags{display:flex;flex-wrap:wrap;gap:6px}
.filter-tag{display:inline-flex;padding:6px 12px;background:var(--gris);border-radius:20px;cursor:pointer;font-size:var(--fs-small);color:var(--text);transition:all .2s ease;position:relative}
.filter-tag input{position:absolute;opacity:0;pointer-events:none}
.filter-tag:hover{background:#e5e5e5}
.filter-tag.active,.filter-tag:has(input:checked){background:var(--bleu-principal);color:var(--blanc)}
.filter-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--fs-small);color:var(--text);transition:color .2s ease;position:relative}
.filter-checkbox:hover{color:var(--bleu-principal)}
.filter-checkbox input[type="checkbox"]{width:16px;height:16px;border:1.5px solid var(--muted);border-radius:3px;appearance:none;cursor:pointer;transition:all .15s ease;flex-shrink:0;position:relative}
.filter-checkbox input[type="checkbox"]:checked{border-color:var(--bleu-principal);background:var(--bleu-principal)}
.filter-checkbox input[type="checkbox"]:checked::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 256 256'%3E%3Cpath fill='%23fff' d='M232.49 80.49l-128 128a12 12 0 0 1-17 0l-56-56a12 12 0 1 1 17-17L96 183L215.51 63.51a12 12 0 0 1 17 17Z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center}
.filter-checkbox span{line-height:1.3}
.filter-checkbox em{color:var(--muted);font-style:normal}

/* Grille Produits */
.products-wrapper{min-width:0}
.products-grid{display:grid;gap:var(--s-5);transition:opacity .2s ease}
.products-grid.is-loading{opacity:.5;pointer-events:none}
@media(min-width:1024px){.products-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:768px) and (max-width:1023px){.products-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:480px) and (max-width:767px){.products-grid{grid-template-columns:repeat(2,1fr);gap:var(--s-4)}}
@media(max-width:479px){.products-grid{grid-template-columns:repeat(2,1fr);gap:var(--s-3)}}

/* Cards Produits */
.product-card{display:flex;flex-direction:column;border-radius:0;overflow:hidden;transition:transform .2s ease}
.product-card__link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}
.product-card__image{position:relative;width:100%;aspect-ratio:1/1;background:linear-gradient(135deg,#f8f9fa 0%,#f0f0f0 100%);overflow:hidden}
.products-grid--etiquettes .product-card__image{background:linear-gradient(135deg,rgba(17,159,174,.04) 0%,#f8f9fa 50%,rgba(17,159,174,.1) 100%)}
.products-grid--imprimantes .product-card__image{background:linear-gradient(135deg,rgba(60,149,210,.04) 0%,#f8f9fa 50%,rgba(60,149,210,.1) 100%)}
.products-grid--etiqueteuses .product-card__image{background:linear-gradient(135deg,rgba(38,69,188,.04) 0%,#f8f9fa 50%,rgba(38,69,188,.1) 100%)}
.product-card__image img,.product-card__image .product-image{width:100%;height:100%;object-fit:cover}
.product-image--primary{transition:opacity .3s ease}
.product-image--secondary{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity .3s ease}
.product-image--secondary img{width:100%;height:100%;object-fit:cover}
.product-card:hover .product-image--primary{opacity:1}
.product-card:has(.product-image--secondary):hover .product-image--primary{opacity:0}
.product-card:hover .product-image--secondary{opacity:1}
.product-badge{position:absolute;top:var(--s-3);right:var(--s-3);z-index:3;background:var(--bleu-principal);color:var(--blanc);font-size:var(--fs-badge);font-weight:600;padding:var(--s-2) var(--s-3);border-radius:4px}
.product-badge:empty,.product-badge[data-badge=""]{display:none}
.product-card__info{padding:var(--s-4) 0;display:flex;flex-direction:column;gap:var(--s-1)}
.product-title{font-family:'Satoshi',sans-serif;font-size:var(--fs-h5);font-weight:600;margin:0;line-height:1.3;color:var(--text)}
.product-category{font-size:var(--fs-small);color:var(--muted);margin:0}

/* SEO Content */
.seo-text-content{max-width:800px;margin:0 auto}
.seo-text{line-height:1.7;color:var(--text)}
.seo-text h2,.seo-text h3,.seo-text h4{color:var(--bleu-principal);margin-top:var(--s-6);margin-bottom:var(--s-3)}
.seo-text p{margin-bottom:var(--s-4)}

/* No Results */
.no-results{text-align:center;padding:var(--s-8) 0}
.no-results-message{font-size:var(--fs-h4)}

/* Responsive */
@media(max-width:1023px){
  .archive-layout.filter-open{grid-template-columns:1fr}
  .filter-sidebar{position:fixed;top:0;left:0;width:100%;height:100dvh;z-index:1001;overflow-x:hidden;webkit-overflow-scrolling:touch;transform:translateX(-100%);transition:transform .3s ease;padding:var(--s-5) var(--s-5) 0 var(--s-5);background:var(--blanc)}
  .archive-layout.filter-open .filter-sidebar{transform:translateX(0);box-shadow:4px 0 20px rgba(0,0,0,.15)}
  .filter-sidebar__clear-link{display:none}
  .filter-reset{display:none}
  .archive-hero-grid{gap:var(--s-3)}
}
@media(min-width:1024px){
  .filter-sidebar__actions{display:none}
  .filter-sidebar__clear-link{display:inline}
}
@media (max-width:1024px){.grid-2cols.archive-hero-grid{grid-template-columns:4fr 1fr !important;display:grid}.grid-2cols.archive-hero-grid > .archive-hero__actions{order:2;justify-content:flex-end}.grid-2cols.archive-hero-grid > *:not(.archive-hero__actions){order:1}.mobile-first{order:-1}.fullheight{height:auto}}
@media(max-width:768px){#archive-hero{padding-block:var(--s-3) var(--s-4)}.btn-filter-toggle{padding:var(--s-3) var(--s-4);font-size:var(--fs-small)}.btn-filter-toggle span{display:none}.subcat-card{width:160px}}
@media(max-width:480px){.product-card__info{padding:var(--s-3) 0}.product-title{font-size:var(--fs-body)}.subcat-card{width:140px}}
