.pgrid{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:30px}
.pgrid--4{--cols:4}.pgrid--5{--cols:5}
@media (max-width:1279.98px){.pgrid--5{--cols:4}}
@media (max-width:1023.98px){.pgrid--4,.pgrid--5{--cols:3}}
@media (max-width:767.98px){.pgrid{--cols:2;gap:24px 16px}}
.pcard{position:relative}
.pcard__img{position:relative;aspect-ratio:1;background:var(--product-bg);overflow:hidden}
.pcard__link,.pcard__link img{position:absolute;inset:0;width:100%;height:100%}
.pcard__a{object-fit:contain;padding:12%}
.pcard__b{object-fit:cover;opacity:0;transition:opacity .4s ease}
@media (hover:hover){.pcard:hover .pcard__b{opacity:1}}
.ptag{position:absolute;top:10px;left:10px;background:#fff;color:rgb(var(--body-text-color));font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:5px 12px;pointer-events:none}
.pcard__add{position:absolute;left:10px;right:10px;bottom:10px;background:#000;color:#fff;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;padding:12px;opacity:0;transform:translateY(8px);transition:.25s}
@media (hover:hover){.pcard:hover .pcard__add,.pcard__add:focus-visible{opacity:1;transform:none}}
@media (hover:none){.pcard__add{display:none}}
.pcard__info{display:block;padding-top:16px}
.pcard__info h3{font-size:13px;font-weight:500;text-transform:uppercase;color:rgb(var(--heading-color));line-height:1.3}
.pcard__color{margin:2px 0 0;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#6f6f73}
.pcard__price{margin:6px 0 0;font-size:14px}
.empty{padding:60px 0;text-align:center}

/* Colección */
.coll{padding-block:60px 100px}
.coll__head{text-align:center;margin-bottom:30px}
.coll__head p{margin:8px 0 0;font-size:13px}
.coll__bar{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--divider-col);border-bottom:1px solid var(--divider-col);padding:14px 0;margin-bottom:30px;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.seg{display:inline-flex;border:1px solid var(--input-border-color);border-radius:3px;overflow:hidden}
.seg button{padding:9px 18px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;transition:background .2s,color .2s}
.seg button:hover{background:var(--product-bg)}
.seg button[aria-pressed=true]{background:#000;color:#fff}
.coll__bar select{border:1px solid var(--input-border-color);padding:9px 12px;background:#fff;font-size:13px;border-radius:3px}
.coll__none{text-align:center;padding:50px 0 80px}.coll__links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 28px;margin-top:20px}
.coll__bar select:hover{border-color:var(--input-border-hover)}

/* Producto */
.pdp{padding-block:50px 100px;display:grid;grid-template-columns:1fr;gap:40px}
#pdp{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);gap:50px;align-items:start}
.gallery{position:relative;display:grid;grid-template-columns:84px 1fr;gap:16px}
.gallery__count{display:none}
.gallery__thumbs{display:flex;flex-direction:column;gap:10px}
.gallery__thumbs button{aspect-ratio:1;background:var(--product-bg);border:1px solid transparent}
.gallery__thumbs button.is-active{border-color:#000}
.gallery__thumbs img{width:100%;height:100%;object-fit:contain;padding:8%}
.gallery__main{aspect-ratio:1;background:var(--product-bg);overflow:hidden;position:relative}
.gallery__main img{display:none;width:100%;height:100%;object-fit:contain;transition:transform .3s}
.gallery__main img.is-active{display:block}
@media (hover:hover){.gallery__main img.is-active:hover{transform:scale(1.8);cursor:zoom-in}}
.pinfo{position:sticky;top:calc(var(--header-height) + 20px)}
.pinfo h1{font-size:24px;text-transform:uppercase}
.pinfo__color{text-transform:uppercase;letter-spacing:.08em;color:#6f6f73;margin:4px 0 0}
.pinfo__price{font-size:18px;margin:14px 0 26px;color:rgb(var(--heading-color))}
.sizes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.size{min-width:52px;height:52px;border:1px solid var(--input-border-color);font-weight:500;transition:.2s}
.size:hover{border-color:var(--input-border-hover)}
.size:disabled{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.size.is-active{background:#000;color:#fff;border-color:#000}
.pinfo__err{color:var(--sale);font-size:13px;margin:0 0 12px}
.pinfo__add{width:100%;margin-bottom:30px}
.pinfo__add:disabled{opacity:.4;cursor:not-allowed}
.pinfo details{border-top:1px solid var(--divider-col);padding:16px 0}
.pinfo details:last-child{border-bottom:1px solid var(--divider-col)}
.pinfo summary{cursor:pointer;font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.08em;color:rgb(var(--heading-color))}
.pinfo details p{margin:12px 0 0}
.related{grid-column:1/-1}.related .h4{text-align:center;margin-bottom:30px}
@media (max-width:899.98px){
  #pdp{grid-template-columns:1fr}.pinfo{position:static}
  .gallery{grid-template-columns:1fr}.gallery__thumbs{display:none}
  .gallery__main{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;aspect-ratio:auto;scrollbar-width:none}
  .gallery__main img{display:block;flex:0 0 100%;aspect-ratio:1;scroll-snap-align:start}
  .gallery__count{display:block;position:absolute;right:12px;bottom:12px;background:#000a;color:#fff;font-size:12px;letter-spacing:.06em;padding:4px 10px;border-radius:20px;pointer-events:none}
}

/* Carrusel */
.cslider{padding-block:60px 70px;--gap:30px}
.cslider__head{display:flex;justify-content:center;align-items:center;gap:32px}
.cslider__head button{color:rgb(var(--heading-color));padding:6px;transition:opacity .2s}
.cslider__head button:disabled{opacity:.25;cursor:default}
.cslider__all{text-align:center;margin:8px 0 36px}
.cslider__head+.slider{margin-top:36px}
.slider{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - var(--container-pad) - (var(--cols) - 1)*var(--gap))/var(--cols));gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(var(--container-pad)*-1);padding-right:var(--container-pad);position:relative;cursor:grab}
.slider::-webkit-scrollbar{display:none}
.slider__item{scroll-snap-align:start}
.slider.is-static{overflow-x:hidden;scroll-snap-type:none;cursor:default}
.slider.is-dragging{scroll-snap-type:none;cursor:grabbing;scroll-behavior:auto}
.slider.is-dragging a{pointer-events:none}
@media (max-width:767.98px){.cslider{--cols:2!important;--gap:16px;padding-block:40px 50px}.cslider__head{gap:20px}}

/* Breakpoints: carruseles y tarjetas */
@media (min-width:1024px) and (max-width:1279.98px){.cslider{--cols:4!important}}
@media (min-width:768px) and (max-width:1023.98px){.cslider{--cols:3!important}}
@media (max-width:479.98px){.pgrid{gap:20px 12px}.pcard__info h3,.pcard__color{font-size:12px}.pcard__price{font-size:13px}.ptag{font-size:10px;padding:4px 8px}.cslider__head h2{font-size:18px}.sizes .size{min-width:48px;height:48px}}
