/* El Arte del Placer · Carrusel público de ofertas v11.53 */
.eap-offers-carousel-zone{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 18%,rgba(235,184,202,.32),transparent 33%),
    radial-gradient(circle at 92% 76%,rgba(206,173,112,.19),transparent 35%),
    linear-gradient(135deg,#171016 0%,#24151f 52%,#120e12 100%);
  color:#fff;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.eap-offers-carousel-zone::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.24;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
}
.eap-offers-carousel-zone .pm5-section{
  position:relative;
  z-index:1;
  padding-top:58px;
  padding-bottom:54px;
}
.eap-offers-carousel-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:26px;
}
.eap-offers-carousel-head>div:first-child{max-width:760px}
.eap-offers-carousel-kicker{
  display:block;
  margin-bottom:7px;
  font-size:.73rem;
  font-weight:800;
  letter-spacing:.18em;
  color:#f1bfd0;
}
.eap-offers-carousel-head h2{
  margin:0;
  font-size:clamp(1.8rem,3.4vw,3rem);
  line-height:1.04;
  letter-spacing:-.035em;
  color:#fff;
}
.eap-offers-carousel-head p{
  margin:10px 0 0;
  color:rgba(255,255,255,.76);
  font-size:1rem;
  line-height:1.55;
}
.eap-offers-carousel-actions{
  display:flex;
  align-items:center;
  gap:9px;
  flex:0 0 auto;
}
.eap-offers-carousel-actions button{
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff;
  font:700 1.15rem/1 system-ui;
  cursor:pointer;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.eap-offers-carousel-actions button:hover,
.eap-offers-carousel-actions button:focus-visible{
  transform:translateY(-2px);
  background:#fff;
  color:#1d1219;
  border-color:#fff;
  outline:none;
}
.eap-offers-carousel-actions a{
  margin-left:8px;
  color:#fff;
  font-weight:750;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.42);
}
.eap-offers-carousel-viewport{
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  border-radius:24px;
}
.eap-offers-carousel-viewport::-webkit-scrollbar{display:none}
.eap-offers-carousel-track{
  display:flex;
  gap:18px;
  align-items:stretch;
}
.eap-offers-carousel-slide{
  flex:0 0 calc((100% - 36px)/3);
  min-width:0;
  scroll-snap-align:start;
}
.eap-offers-carousel-slide>a{
  position:relative;
  display:flex;
  min-height:100%;
  flex-direction:column;
  overflow:hidden;
  border-radius:22px;
  color:#1b1318;
  text-decoration:none;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(255,255,255,.42);
  box-shadow:0 18px 48px rgba(0,0,0,.26);
  transform:translateZ(0);
  transition:transform .28s ease,box-shadow .28s ease;
}
.eap-offers-carousel-slide>a:hover,
.eap-offers-carousel-slide>a:focus-visible{
  transform:translateY(-5px);
  box-shadow:0 25px 62px rgba(0,0,0,.38);
  outline:2px solid rgba(255,255,255,.85);
  outline-offset:3px;
}
.eap-offers-carousel-badge{
  position:absolute;
  z-index:2;
  top:14px;
  left:14px;
  max-width:calc(100% - 28px);
  padding:8px 11px;
  border-radius:999px;
  background:rgba(24,13,21,.92);
  color:#fff;
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
  line-height:1.2;
  backdrop-filter:blur(10px);
}

/* v11.69 · porcentaje exacto en las fichas individuales de Ofertas destacadas */
.eap-offers-carousel-discount{
  position:absolute;
  z-index:4;
  top:12px;
  right:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:82px;
  min-height:42px;
  padding:9px 13px;
  border:2px solid rgba(255,255,255,.92);
  border-radius:999px;
  background:#111;
  color:#fff;
  box-shadow:0 9px 28px rgba(0,0,0,.32);
  font-size:.92rem;
  font-weight:950;
  letter-spacing:-.02em;
  line-height:1;
  white-space:nowrap;
  text-transform:none;
}
.eap-offers-carousel-slide.has-exact-discount .eap-offers-carousel-badge{
  max-width:calc(100% - 118px);
}
@media (max-width:640px){
  .eap-offers-carousel-discount{
    top:10px;
    right:10px;
    min-width:74px;
    min-height:38px;
    padding:8px 11px;
    font-size:.84rem;
  }
  .eap-offers-carousel-slide.has-exact-discount .eap-offers-carousel-badge{
    max-width:calc(100% - 104px);
  }
}
.eap-offers-carousel-media{
  display:grid;
  place-items:center;
  aspect-ratio:1.34/1;
  overflow:hidden;
  background:linear-gradient(135deg,#f6f2f4,#fff);
}
.eap-offers-carousel-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform .4s ease;
}
.eap-offers-carousel-slide>a:hover .eap-offers-carousel-media img{transform:scale(1.025)}
.eap-offers-carousel-caption{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  padding:18px 18px 19px;
  background:#fff;
}
.eap-offers-carousel-caption strong{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font-size:1rem;
  line-height:1.28;
  color:#241720;
}
.eap-offers-carousel-description{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  min-height:3.95em;
  color:#6d5b65;
  font-size:.86rem;
  line-height:1.48;
}
.eap-offers-carousel-caption small{
  margin-top:auto;
  color:#8e3158;
  font-size:.82rem;
  font-weight:800;
}
.eap-offers-carousel-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin-top:20px;
  color:rgba(255,255,255,.75);
}
.eap-offers-carousel-footer>span{
  flex:0 0 auto;
  font-size:.85rem;
  letter-spacing:.08em;
}
.eap-offers-carousel-footer>span b{font-size:1rem;color:#fff}
.eap-offers-carousel-dots{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  overflow:hidden;
}
.eap-offers-carousel-dots button{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.35);
  cursor:pointer;
  transition:width .25s ease,background .25s ease;
}
.eap-offers-carousel-dots button[aria-current="true"]{width:28px;background:#fff}
.eap-offers-carousel-dots button:focus-visible{outline:2px solid #fff;outline-offset:3px}

@media (max-width:980px){
  .eap-offers-carousel-head{align-items:flex-start;flex-direction:column}
  .eap-offers-carousel-actions{width:100%}
  .eap-offers-carousel-actions a{margin-left:auto}
  .eap-offers-carousel-slide{flex-basis:calc((100% - 18px)/2)}
}
@media (max-width:620px){
  .eap-offers-carousel-zone .pm5-section{padding-top:40px;padding-bottom:40px}
  .eap-offers-carousel-head{gap:19px;margin-bottom:20px}
  .eap-offers-carousel-head p{font-size:.92rem}
  .eap-offers-carousel-actions{gap:7px}
  .eap-offers-carousel-actions button{width:40px;height:40px}
  .eap-offers-carousel-actions a{font-size:.84rem}
  .eap-offers-carousel-track{gap:12px}
  .eap-offers-carousel-slide{flex-basis:88%}
  .eap-offers-carousel-slide>a{border-radius:18px}
  .eap-offers-carousel-media{aspect-ratio:1.28/1}
  .eap-offers-carousel-caption{padding:15px}
  .eap-offers-carousel-description{min-height:auto;-webkit-line-clamp:4}
}
@media (prefers-reduced-motion:reduce){
  .eap-offers-carousel-slide>a,
  .eap-offers-carousel-media img,
  .eap-offers-carousel-actions button{transition:none}
}
