/* MariaJoana 1.0.2. El catalogo hereda sus tarjetas y columnas de Flatsome.
 * Los ajustes de tarjetas y slider se limitan a .mj-top-products.
 */
.mj-category{--mj-green:#203120;min-width:0}
.mj-category>.container{box-sizing:border-box;min-width:0}
.mj-category-head{padding-top:24px;padding-bottom:22px}
.mj-category-head .woocommerce-breadcrumb{font-size:12px;margin-bottom:14px;opacity:.75}
.mj-category-head h1{font-size:clamp(25px,2.3vw,32px);line-height:1.15;margin:0 0 16px;color:var(--mj-green);overflow-wrap:anywhere}
.mj-category-intro{width:100%;max-width:none;font-size:15px;line-height:1.65}
.mj-category-intro p:last-child{margin-bottom:0}
.mj-section-heading h2,.mj-catalog-toolbar h2{color:var(--mj-green);font-size:clamp(21px,2.2vw,27px);line-height:1.3;margin:0;overflow-wrap:anywhere}
.mj-subcategories{margin:0 0 30px;padding:0;background:transparent;border:0;box-shadow:none}
.mj-subcategory-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;gap:14px;min-width:0;max-width:100%;overflow:visible;scroll-snap-type:none;padding-bottom:0}
.mj-subcategory{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;min-width:0;padding:16px 10px;border:0;border-radius:10px;background:#fff;box-shadow:none;color:var(--mj-green);text-align:center;font-size:14px;font-weight:600;line-height:1.35;scroll-snap-align:start;text-decoration:none!important}
.mj-subcategory:hover,.mj-subcategory:focus,.mj-subcategory:active,.mj-subcategory:visited{color:var(--mj-green);background:#fff;box-shadow:none;text-decoration:none!important}
.mj-subcategory span{text-decoration:none!important}
.mj-subcategory-image{display:flex;align-items:center;justify-content:center;width:80px;height:80px}
.mj-subcategory-image img{display:block;width:100%;height:100%;object-fit:contain;border-radius:8px}
.mj-subcategory-placeholder{display:block;width:36px;height:36px;border:2px solid #b6c6b0;border-radius:50%}
.mj-top-products{box-sizing:border-box;min-width:0;max-width:100%;margin:0 0 32px;padding:24px 20px 20px;background:#edf3e9;border:0;border-radius:12px;box-shadow:none}
.mj-section-heading{margin:0 0 10px!important;padding:0}
.mj-category .mj-top-products .products{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch;box-sizing:border-box;width:100%;max-width:100%;margin:0;padding:0;list-style:none}
.mj-category .mj-top-products .products:before,.mj-category .mj-top-products .products:after{display:none}
.mj-category .mj-top-products .products>.col,.mj-category .mj-top-products .products>.product{box-sizing:border-box;display:flex;float:none;width:100%;max-width:100%;min-width:0;margin:0;padding:0;scroll-snap-align:start}
.mj-category .mj-top-products .products>.col>.col-inner{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;height:100%;box-shadow:none}
.mj-category .mj-top-products .product-small.box{display:flex;flex-direction:column;flex:1 1 auto;width:100%;min-width:0;box-shadow:none}
.mj-category .mj-top-products .box-image{flex:0 0 auto;width:100%;max-width:100%;align-self:stretch}
.mj-category .mj-top-products .box-text{display:flex;flex-direction:column;flex:1 1 auto;height:auto!important}
.mj-category .mj-top-products .price-wrapper{height:auto!important;margin-top:auto}
.mj-category .mj-top-products .products{min-height:0;scroll-padding-inline:0}
.mj-subcategory-grid{align-items:stretch}
/* Tarjetas: tipografia, padding, imagenes y redondeos heredados del catalogo. */
/* No se redefine out-of-stock-label: sigue vigente tu Custom CSS. */
.mj-catalog-container{scroll-margin-top:100px}
.mj-catalog-container .shop-container{min-width:0}
.mj-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;padding:0;margin-bottom:22px}
.mj-catalog-toolbar h2{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;flex:1 1 0}
.mj-catalog-tools{flex:0 1 270px;min-width:0}
.mj-catalog-tools .woocommerce-ordering{float:none;width:100%;margin:0}
.mj-catalog-tools select{width:100%;max-width:100%;margin:0;border-radius:8px;font-size:13px}
.mj-main-products{min-width:0}
.mj-category-bottom{padding-top:24px;margin-top:24px;font-size:15px;line-height:1.75}
.mj-category-bottom h2,.mj-category-bottom h3{margin-top:24px}
.mj-category-bottom ul,.mj-category-bottom ol{padding-left:22px}
.mj-category-head a:focus-visible,.mj-subcategories a:focus-visible,.mj-subcategory-grid:focus-visible,.mj-top-grid:focus-visible{outline:2px solid var(--mj-green);outline-offset:4px}
@media(max-width:849px){
 .mj-subcategory-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3.3);gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:10px;scrollbar-width:thin;scrollbar-color:#a8b4a4 transparent}
 .mj-category .mj-top-products .products{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 42px)/3.3);justify-content:start;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:0 0 12px;scrollbar-width:thin;scrollbar-color:#a8b4a4 transparent}
 .mj-top-products .products::-webkit-scrollbar{height:5px}
 .mj-top-products .products::-webkit-scrollbar-thumb{background:#a8b4a4;border-radius:5px}
 .mj-top-products .products::-webkit-scrollbar-track{background:transparent}
}
@media(max-width:549px){
 .mj-category-head{padding-top:18px;padding-bottom:18px}
 .mj-subcategory-grid{grid-auto-columns:calc((100% - 20px)/2.35);gap:10px}
 .mj-subcategory{padding:12px 6px;font-size:12px;gap:8px}
 .mj-subcategory-image{width:56px;height:56px}
 .mj-subcategories{margin-bottom:24px}
 .mj-category .mj-top-products .products{grid-auto-columns:calc((100% - 12px)/1.7);gap:12px}
 .mj-top-products{margin-bottom:26px;padding:18px 12px 14px}
 .mj-section-heading{margin-bottom:10px!important}
 .mj-catalog-toolbar{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:20px}
 .mj-catalog-toolbar h2{flex:none;font-size:21px}
 .mj-catalog-tools{flex:none;width:100%}
}

@media(min-width:850px) and (max-width:1099px){
 .mj-category .mj-top-products .products{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 64px)/4.3);gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#a8b4a4 transparent}
}

@media(min-width:550px) and (max-width:699px){
 .mj-category .mj-top-products .products{grid-auto-columns:calc((100% - 28px)/2.3)}
}
