/* Catalogue : reprend les variables et la typographie du thème Santa Lucia. */
body:has(.slcat) .klb-page-title{display:none}
.slcat{--slcat-primary:var(--theme-primary-color,#e85499);--slcat-yellow:var(--theme-secondary-color,#ffd200);--slcat-ink:var(--theme-body-color,#030712);--slcat-muted:#6b7280;--slcat-line:#e7e7eb;max-width:1180px;margin:0 auto;padding:10px 0 70px;color:var(--slcat-ink);font-family:inherit}
.slcat *{box-sizing:border-box}.slcat__intro{max-width:680px;padding:12px 0 20px}.slcat__eyebrow{margin:0 0 9px;color:var(--slcat-primary);font:800 11px/1.2 inherit;letter-spacing:.14em;text-transform:uppercase}.slcat__intro h1{margin:0;color:var(--slcat-ink);font-size:clamp(34px,4.3vw,58px);font-weight:800;line-height:1;letter-spacing:-.05em}.slcat__intro>p:last-child{margin:12px 0 0;color:#52525b;font-size:17px;font-weight:500}
.slcat__control{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:10px;padding:10px;border:1px solid var(--slcat-line);border-radius:var(--theme-site-border-radius,6px);background:#fff;box-shadow:0 10px 28px rgba(3,7,18,.07)}.slcat__agency-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.slcat__agency,.slcat__search{min-width:0;min-height:54px;height:54px!important;border:1px solid #dedee3;border-radius:4px;background:#fff;color:var(--slcat-ink);font:500 15px/1.2 inherit!important}.slcat__agency{padding:0 15px;cursor:pointer}.slcat__search{padding:0 18px}.slcat__search:disabled{opacity:.55;cursor:not-allowed;background:#fafafa}.slcat__agency:focus,.slcat__search:focus{outline:2px solid var(--slcat-primary);outline-offset:1px}
.slcat__availability{display:flex;align-items:center;gap:8px;margin:13px 0 30px;color:var(--slcat-muted);font-size:13px}.slcat__availability span{flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#c6c6cd}.slcat[data-ready="true"] .slcat__availability span{background:#15a66b}.slcat__body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:34px;align-items:start}.slcat__sidebar{position:sticky;top:20px;padding:20px;border:1px solid var(--slcat-line);border-radius:var(--theme-site-border-radius,6px);background:#fafafa;text-align:left}.slcat__sidebar h2,.slcat__results h2{margin:0;color:var(--slcat-ink);font-size:24px;line-height:1.1;letter-spacing:-.035em}.slcat__sidebar .slcat__eyebrow{margin-bottom:7px}.slcat__categories{display:grid;justify-items:stretch;gap:6px;margin-top:18px}.slcat__category,.slcat__all-cats{width:100%;min-height:40px;padding:0 12px;border:0;border-radius:4px;background:transparent;color:var(--slcat-ink);font:700 13px/1 inherit;text-align:left !important;cursor:pointer;transition:background .15s,color .15s}.slcat__category:hover,.slcat__category:focus,.slcat__all-cats:hover,.slcat__all-cats:focus{background:#fff;color:var(--slcat-primary);outline:0}.slcat__category.is-active,.slcat__all-cats.is-active{background:var(--slcat-primary);color:#fff}.slcat__reset{border:0;background:transparent;color:var(--slcat-primary);padding:8px 0;font:800 13px/1 inherit;cursor:pointer}.slcat__results{padding-top:2px;border-top:0}.slcat__results-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 14px}.slcat__results-content{min-height:80px}.slcat__empty{margin:0;padding:28px;border:1px dashed #d5d5dc;border-radius:var(--theme-site-border-radius,6px);color:var(--slcat-muted);background:#fafafa}.slcat__product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.slcat-product{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--slcat-line);border-radius:var(--theme-site-border-radius,6px);background:#fff;transition:box-shadow .18s,transform .18s}.slcat-product:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(3,7,18,.09)}.slcat-product__image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#fafafa;border-bottom:1px solid #f0f0f2}.slcat-product__image img{width:100%;height:100%;object-fit:contain}.slcat-product__copy{display:grid;gap:10px;padding:15px}.slcat-product h3{margin:0;min-height:42px;font-size:14px;font-weight:700;line-height:1.42}.slcat-product h3 a{color:var(--slcat-ink);text-decoration:none}.slcat-product__price{margin:0;color:var(--slcat-primary);font-size:17px;font-weight:800}.slcat-product__add{min-height:42px;border:1px solid var(--slcat-primary);border-radius:4px;background:var(--slcat-primary);color:#fff;font:800 13px/1 inherit;cursor:pointer;transition:filter .15s}.slcat-product__add:hover{filter:brightness(.92)}.slcat-product__add:disabled{opacity:.65;cursor:wait}.slcat__toast{position:fixed;left:50%;bottom:25px;z-index:99999;max-width:min(420px,92vw);padding:13px 18px;border-radius:6px;background:var(--slcat-ink);color:#fff;box-shadow:0 15px 35px rgba(0,0,0,.25);transform:translateX(-50%)}.slcat__toast a{display:inline-block;margin-left:10px;color:#fff;font-weight:800}
@media(max-width:900px){.slcat{padding:8px 18px 48px}.slcat__body{grid-template-columns:190px minmax(0,1fr);gap:18px}.slcat__sidebar{padding:16px}.slcat__product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.slcat__intro{padding-top:2px}.slcat__intro h1{font-size:38px}.slcat__intro>p:last-child{font-size:15px}.slcat__control{grid-template-columns:1fr;padding:8px;gap:8px}.slcat__agency,.slcat__search{height:50px}.slcat__body{grid-template-columns:1fr;gap:24px}.slcat__sidebar{position:static;padding:14px}.slcat__sidebar h2{font-size:20px}.slcat__categories{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.slcat__category,.slcat__all-cats{min-height:38px;padding:0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slcat__product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.slcat-product__copy{padding:11px}.slcat-product h3{font-size:13px}}

/* Priorité à l'alignement gauche malgré les styles hérités du thème. */
.slcat__sidebar,.slcat__sidebar > *,.slcat__sidebar .slcat__categories,.slcat__sidebar .slcat__category,.slcat__sidebar .slcat__all-cats{align-items:flex-start;text-align:left!important}.slcat__sidebar > *{margin-left:0;margin-right:0}.slcat__sidebar .slcat__categories{justify-items:stretch}.slcat__sidebar .slcat__category,.slcat__sidebar .slcat__all-cats{display:block;justify-self:stretch;text-align:left!important}

/* Elementor peut transformer les boutons en flex et recentrer leur contenu. */
body .slcat__sidebar,body .slcat__sidebar > *,body .slcat__sidebar .slcat__categories,body .slcat__sidebar .slcat__category,body .slcat__sidebar .slcat__all-cats{margin-left:0!important;margin-right:0!important;text-align:left!important}.slcat__sidebar .slcat__category,.slcat__sidebar .slcat__all-cats{display:block!important;justify-content:flex-start!important;justify-self:stretch!important}

/* La liste des rayons reste toujours verticale et entièrement alignée à gauche. */
body .slcat__sidebar .slcat__categories{display:grid!important;grid-template-columns:1fr!important;grid-auto-flow:row!important;justify-items:stretch!important;align-items:start!important;width:100%!important}.slcat__sidebar .slcat__category,.slcat__sidebar .slcat__all-cats{width:100%!important;min-width:100%!important;display:block!important;margin:0!important;padding-left:12px!important;padding-right:12px!important;text-align:left!important;white-space:normal!important}

.slcat__pagination{margin-top:28px}.slcat-pagination{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.slcat-pagination button{min-width:38px;height:38px;padding:0 12px;border:1px solid var(--slcat-line);border-radius:4px;background:#fff;color:var(--slcat-ink);font:700 13px/1 inherit;cursor:pointer}.slcat-pagination button:hover,.slcat-pagination button:focus{border-color:var(--slcat-primary);color:var(--slcat-primary);outline:0}.slcat-pagination button.is-current{border-color:var(--slcat-primary);background:var(--slcat-primary);color:#fff}.slcat-pagination__prev,.slcat-pagination__next{border-color:transparent!important;background:transparent!important;color:var(--slcat-primary)!important}.slcat-pagination__gap{padding:0 2px;color:var(--slcat-muted)}
