/* ===================== slider de promociones (sección 1) ===================== */
.promoslider{position:relative;width:100%;height:min(80vh,620px);min-height:440px;overflow:hidden}
.promoslide{position:absolute;inset:0;display:flex;opacity:0;transition:opacity 1s ease}
.promoslide.active{opacity:1}
.promoslide__body{
  flex:1 1 50%;display:flex;flex-direction:column;justify-content:center;color:#fff;
  background:linear-gradient(155deg,var(--primary),var(--primary-deep));
  padding:clamp(2rem,5vw,5rem);
}
.promoslide__media{flex:1 1 50%;position:relative;overflow:hidden;background:var(--bg-400)}
.promoslide__media img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}
.promoslide__kick{font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:.6rem;margin-bottom:.9rem}
.promoslide__kick::before{content:"";width:22px;height:1px;background:var(--accent);display:inline-block}
.promoslide__title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(1.8rem,1.1rem + 2.2vw,2.7rem);line-height:1.08;margin:0 0 1rem;color:#fff;max-width:14ch}
.promoslide__price{font-size:1.05rem;margin-bottom:.9rem}
.promoslide__price b{font-family:'Cormorant Garamond',Georgia,serif;font-size:2.2rem;font-weight:600;color:var(--accent)}
.promoslide__desc{font-size:.92rem;line-height:1.55;color:rgba(255,255,255,.82);max-width:34ch;margin-bottom:.6rem}
.promoslide__auto{display:inline-flex;align-items:center;gap:.5rem;font-size:.76rem;color:rgba(255,255,255,.8);margin-bottom:1.6rem}
.promoslide__auto svg{width:.9rem;height:.9rem;color:var(--accent);flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.promobtn{
  display:inline-flex;align-items:center;gap:.55rem;padding:.9rem 1.6rem;border-radius:var(--r-md);
  background:var(--accent-bright);color:var(--on-accent);font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;
  font-weight:500;border:none;cursor:pointer;width:fit-content;text-decoration:none;
}
.promobtn:hover{filter:brightness(1.08)}
.promobtn svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.promoslider__dots{position:absolute;z-index:3;bottom:1.2rem;left:50%;transform:translateX(-50%);display:flex;gap:.55rem}
.promoslider__dots button{width:.55rem;height:.55rem;border-radius:999px;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.3);padding:0;cursor:pointer}
.promoslider__dots button.active{background:var(--accent);border-color:var(--accent)}
.promoslider__arrow{
  position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:2.5rem;height:2.5rem;border-radius:999px;
  background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.5);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
}
.promoslider__arrow svg{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.promoslider__arrow--prev{left:1rem}
.promoslider__arrow--next{right:1rem}
@media(max-width:780px){
  .promoslide{flex-direction:column}
  .promoslide__media{order:-1;flex-basis:40%}
  .promoslide__body{flex-basis:60%;padding:1.6rem}
  .promoslider__arrow{display:none}
}

/* ===== mejoras de la portada nueva ===== */
/* el texto del banner se alinea con la grilla del resto de la página */
.promoslide__body{padding-inline-start:max(clamp(2rem,5vw,5rem), calc((100vw - var(--maxw)) / 2 + var(--pad)))}
/* al cambiar de promoción: la foto se acerca despacio y el texto sube */
.promoslide__media img{transform:scale(1.08);transition:transform 6s ease-out}
.promoslide.active .promoslide__media img{transform:scale(1)}
.promoslide__body > *{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}
.promoslide.active .promoslide__body > *{opacity:1;transform:none}
.promoslide.active .promoslide__body > :nth-child(2){transition-delay:.08s}
.promoslide.active .promoslide__body > :nth-child(3){transition-delay:.16s}
.promoslide.active .promoslide__body > :nth-child(4){transition-delay:.22s}
.promoslide.active .promoslide__body > :nth-child(5){transition-delay:.28s}
.promoslide.active .promoslide__body > :nth-child(6){transition-delay:.34s}
.promoslider__arrow{transition:background-color .2s ease,border-color .2s ease}
.promoslider__arrow:hover{background:rgba(255,255,255,.34);border-color:#fff}
.promoslider.una .promoslider__arrow,.promoslider.una .promoslider__dots{display:none}
@media (max-width:780px){ .promoslide__body{padding-inline-start:1.6rem} }
@media (prefers-reduced-motion: reduce){
  .promoslide__media img,.promoslide__body > *{transform:none!important;transition:none!important;opacity:1}
}
