/* Slider de Productos Elegante - Se puede ajustar fuentes y tamaños en las variables */
.ps-wrap{
  --ps-n:var(--ps-d,6);
  --ps-ink:#1a1a1a;
  --ps-muted:#6f6f6f;
  --ps-font:'Jost','Montserrat','Helvetica Neue',Arial,sans-serif;
  --ps-font-title:'Marcellus','Cormorant Garamond',Georgia,serif;
  background:var(--ps-bg,#f6f6f6);
  color:var(--ps-ink);
  font-family:var(--ps-font);
  padding:14px 10px 28px;
  box-sizing:border-box;
}
.ps-wrap *,.ps-wrap *::before,.ps-wrap *::after{box-sizing:border-box}

.ps-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.ps-title{margin:0;font-family:var(--ps-font-title);font-weight:400;font-size:26px;letter-spacing:.05em;text-transform:uppercase;color:var(--ps-ink)}
.ps-viewall{font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--ps-ink);text-decoration:none}
.ps-viewall:hover{text-decoration:underline}

.ps-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:8px;outline:none}
.ps-viewport::-webkit-scrollbar{display:none}
.ps-track{display:flex;gap:var(--ps-gap,15px);list-style:none;margin:0;padding:0}

.ps-item{
  flex:0 0 calc((100% - (var(--ps-n) - 1) * var(--ps-gap,15px)) / var(--ps-n));
  min-width:0;scroll-snap-align:start;margin:0;padding:0;list-style:none;
}
.ps-card{display:block;color:inherit;text-decoration:none}

/* Recuadro FIJO cuadrado: la imagen se ajusta dentro sin deformarse ni descuadrar */
.ps-box{
  position:relative;display:block;width:100%;aspect-ratio:1/1;
  background:#fff;overflow:hidden;
  box-shadow:0 3px 3px -1px rgba(0,0,0,.13);
}
.ps-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:var(--ps-img-pad,2%);user-select:none;-webkit-user-drag:none;margin:0;max-width:none}

.ps-badge{
  position:absolute;top:14px;left:50%;transform:translateX(-50%);z-index:2;
  max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  background:#f1f1f1;color:#333;border-radius:2px;
  font-size:10.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;
}

.ps-info{display:block;padding-top:12px}
.ps-info>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.ps-brand{font-size:12px;font-weight:600;letter-spacing:.09em;line-height:1.3}
.ps-model{font-size:11px;font-weight:400;letter-spacing:.07em;color:var(--ps-muted);margin-top:7px;line-height:1.3}
.ps-price{font-size:14px;font-weight:500;letter-spacing:.04em;margin-top:9px;line-height:1.3}

.ps-nav{display:flex;justify-content:center;gap:37px;margin-top:22px}
.ps-wrap.ps-no-nav .ps-nav{display:none}
.ps-btn{
  width:30px;height:30px;padding:0;border:0;border-radius:2px;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--ps-accent,#2f4050);color:#fff;transition:background .2s,opacity .2s;
}
.ps-btn:hover:not(:disabled){opacity:.85}
.ps-btn:disabled{background:#a9b4b4;cursor:default}

/* Botón que abre el pop-up */
button.ps-box{border:0;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit;cursor:zoom-in;-webkit-appearance:none;appearance:none}
button.ps-box:focus-visible{outline:2px solid var(--ps-accent,#2f4050);outline-offset:2px}
a.ps-info{color:inherit;text-decoration:none}
a.ps-info:hover .ps-brand{text-decoration:underline}

/* Pop-up (lightbox) */
.psl{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;font-family:'Jost','Montserrat','Helvetica Neue',Arial,sans-serif}
.psl.psl-open{display:flex;animation:psl-fade .18s ease-out}
@keyframes psl-fade{from{opacity:0}to{opacity:1}}
.psl *{box-sizing:border-box}
.psl-backdrop{position:absolute;inset:0;background:rgba(15,15,15,.82)}
.psl-fig{position:relative;margin:0;max-width:92vw;max-height:92vh;display:flex;flex-direction:column;align-items:center;background:#fff;padding:10px 10px 0;box-shadow:0 10px 40px rgba(0,0,0,.45)}
.psl-img{display:block;max-width:100%;max-height:76vh;width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none}
.psl-cap{width:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 14px;padding:12px 8px 14px;text-align:center;color:#1a1a1a;text-transform:uppercase;letter-spacing:.07em;font-size:12px;line-height:1.3}
.psl-cap:empty{display:none}
.psl-cap b{font-weight:600;letter-spacing:.09em}
.psl-cap .psl-m{color:#6f6f6f;font-size:11px}
.psl-cap .psl-p{font-size:14px;font-weight:500}
.psl-cap a{display:inline-block;background:var(--ps-accent,#2f4050);color:#fff;text-decoration:none;padding:7px 14px;border-radius:2px;font-size:11px;letter-spacing:.08em}
.psl-cap a:hover{opacity:.85}
.psl-btn{position:absolute;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:2px;background:#fff;color:#1a1a1a;cursor:pointer;opacity:.92;transition:opacity .2s}
.psl-btn:hover{opacity:1}
.psl-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.psl-close{top:14px;right:14px}
.psl-prev{left:14px;top:50%;transform:translateY(-50%)}
.psl-next{right:14px;top:50%;transform:translateY(-50%)}
.psl.psl-single .psl-prev,.psl.psl-single .psl-next{display:none}
body.psl-lock{overflow:hidden}
@media (max-width:640px){
  .psl-fig{max-width:96vw;padding:6px 6px 0}
  .psl-img{max-height:70vh}
  .psl-btn{width:36px;height:36px}
  .psl-prev{left:6px}.psl-next{right:6px}.psl-close{top:8px;right:8px}
}

@media (max-width:1024px){.ps-wrap{--ps-n:var(--ps-t,3)}}
@media (max-width:640px){
  .ps-wrap{--ps-n:var(--ps-m,2)}
  .ps-title{font-size:21px}
}
