.pep-category-yarn-premium-fix .pep-category-panel {
  background: linear-gradient(145deg, #fffaf2 0%, #f8eadb 55%, #f3dfcf 100%) !important;
}

.pep-category-yarn-premium-fix:hover .pep-category-panel,
.pep-category-yarn-premium-fix.pep-mobile-active .pep-category-panel {
  background: linear-gradient(145deg, #fffaf2 0%, #f5e2d1 52%, #efd5c1 100%) !important;
}

.pep-ornament-yarn-premium-fix {
  right: 10px !important;
  bottom: 5px !important;
  width: 82px !important;
  height: 82px !important;
  overflow: visible !important;
  cursor: pointer;
  isolation: isolate;
  filter: drop-shadow(0 7px 8px rgba(92, 51, 31, .22));
}

.pep-ornament-yarn-premium-fix::before,
.pep-ornament-yarn-premium-fix::after {
  content: none !important;
}

.pep-ornament-yarn-premium-fix .pep-yarn-thread {
  position: absolute;
  z-index: 0;
  left: -63px;
  top: 56px;
  width: 79px;
  height: 25px;
  border-top: 4px solid #b86f43;
  border-radius: 70% 35% 0 0;
  opacity: .96;
  transform: rotate(7deg) skewX(-20deg);
  transform-origin: right center;
  filter: drop-shadow(0 1px 1px rgba(92, 51, 31, .2));
}

.pep-ornament-yarn-premium-fix .pep-yarn-ball {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  background: url('bola-estambre-premium.png') center / contain no-repeat;
  transform: rotate(-7deg);
  transform-origin: 52% 55%;
}

.pep-category-yarn-premium-fix:hover .pep-yarn-thread,
.pep-category-yarn-premium-fix.pep-mobile-active .pep-yarn-thread {
  animation: pep-fix-reel-in 1.35s cubic-bezier(.45,.05,.2,1) forwards;
}

.pep-category-yarn-premium-fix:hover .pep-yarn-ball,
.pep-category-yarn-premium-fix.pep-mobile-active .pep-yarn-ball {
  animation: pep-fix-wind 1.35s cubic-bezier(.35,.05,.2,1) forwards;
}

@keyframes pep-fix-reel-in {
  0%   { left: -63px; width: 79px; opacity: .96; transform: rotate(7deg) skewX(-20deg) scaleX(1); }
  35%  { left: -45px; width: 61px; opacity: 1; transform: rotate(-7deg) skewX(16deg) scaleX(.82); }
  68%  { left: -20px; width: 37px; opacity: .9; transform: rotate(6deg) skewX(-9deg) scaleX(.5); }
  100% { left: 7px; width: 9px; opacity: 0; transform: rotate(0) scaleX(.08); }
}

@keyframes pep-fix-wind {
  0%   { transform: rotate(-7deg) translateY(0) scale(1); }
  30%  { transform: rotate(190deg) translateY(-2px) scale(1.04); }
  65%  { transform: rotate(425deg) translateY(-4px) scale(1.09); }
  100% { transform: rotate(713deg) translateY(-2px) scale(1.07); }
}

@media (max-width: 620px) {
  .pep-ornament-yarn-premium-fix {
    right: 8px !important;
    bottom: 4px !important;
    width: 72px !important;
    height: 72px !important;
  }
  .pep-ornament-yarn-premium-fix .pep-yarn-thread {
    left: -49px;
    top: 49px;
    width: 64px;
  }
}

/* Versión 1.4: tienda boutique editorial */
.pep-shop-premium .site-content,
.pep-shop-premium main {
  background:
    radial-gradient(circle at 6% 15%,rgba(201,137,145,.12),transparent 24%),
    radial-gradient(circle at 94% 34%,rgba(120,148,116,.13),transparent 27%),
    linear-gradient(180deg,#fffdf9 0,#f9f3e9 68%,#fffaf3 100%) !important;
}
.pep-shop-premium .content-area,
.pep-shop-premium .site-main { padding-top: 42px !important; }

.pep-shop-premium .pep-shop-hero {
  min-height: 390px;
  margin-bottom: 18px;
  padding: 64px clamp(130px,16vw,245px);
  overflow: hidden;
  border: 1px solid rgba(190,139,44,.42);
  border-radius: 38px;
  background:
    radial-gradient(circle at 50% -35%,rgba(255,255,255,.95),transparent 47%),
    linear-gradient(120deg,rgba(251,232,212,.91),rgba(255,252,244,.94) 48%,rgba(228,237,225,.9));
  color: #3f2d25;
  box-shadow: 0 30px 80px rgba(73,48,34,.13),inset 0 1px 0 rgba(255,255,255,.98);
  isolation: isolate;
}
.pep-shop-premium .pep-shop-hero::before,
.pep-shop-premium .pep-shop-hero::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: clamp(145px,17vw,240px);
  aspect-ratio: 1;
  pointer-events: none;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  filter: drop-shadow(0 20px 18px rgba(78,48,31,.2));
  transition: transform .8s cubic-bezier(.2,.8,.2,1);
}
.pep-shop-premium .pep-shop-hero::before {
  left: clamp(-18px,2vw,32px);
  bottom: -19px;
  background-image: url('agujas-tejiendo-3d.png');
  transform: rotate(-8deg);
}
.pep-shop-premium .pep-shop-hero::after {
  right: clamp(-4px,3vw,42px);
  top: 50%;
  width: clamp(130px,15vw,215px);
  background-image: url('maquina-coser-3d.png');
  transform: translateY(-47%) rotate(5deg);
}
.pep-shop-premium .pep-shop-hero:hover::before { transform: translateY(-8px) rotate(-3deg); }
.pep-shop-premium .pep-shop-hero:hover::after { transform: translateY(-53%) rotate(0); }
.pep-shop-premium .pep-shop-hero-copy { max-width: 820px; }
.pep-shop-premium .pep-shop-hero .pep-kicker {
  display: inline-flex;
  padding: 9px 15px 8px;
  border: 1px solid rgba(189,139,44,.43);
  border-radius: 999px;
  background: rgba(255,255,255,.54);
  color: #9d6a28;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter: blur(8px);
}
.pep-shop-premium .pep-shop-hero h1 {
  margin: 14px 0 16px;
  color: #37241c;
  font-size: clamp(62px,6.7vw,100px);
  line-height: .92;
  letter-spacing: -.035em;
  text-shadow: 0 2px 0 rgba(255,255,255,.8);
}
.pep-shop-premium .pep-shop-hero p {
  max-width: 680px;
  color: #69564a;
  font-size: clamp(19px,1.6vw,24px);
}
.pep-shop-premium .pep-shop-yarn {
  z-index: 0;
  width: 240px;
  height: 240px;
  opacity: .15;
  filter: blur(.2px);
}
.pep-shop-premium .pep-shop-yarn-one { left: 16%; bottom: -145px; }
.pep-shop-premium .pep-shop-yarn-two { right: 18%; top: -156px; }

.pep-shop-premium .pep-shop-categories {
  position: relative;
  z-index: 4;
  gap: 14px;
  margin: -45px 34px 34px;
  padding: 13px;
  border: 1px solid rgba(255,255,255,.88);
  border-radius: 28px;
  background: rgba(255,253,248,.7);
  box-shadow: 0 20px 50px rgba(73,48,34,.12),inset 0 1px 0 #fff;
  backdrop-filter: blur(18px) saturate(1.2);
  -webkit-backdrop-filter: blur(18px) saturate(1.2);
}
.pep-shop-premium .pep-shop-chip {
  position: relative;
  min-height: 72px;
  justify-content: flex-start;
  overflow: hidden;
  padding: 13px 20px;
  border-color: color-mix(in srgb,var(--pep-chip-color),transparent 45%);
  border-radius: 18px;
  background: linear-gradient(145deg,rgba(255,255,255,.86),color-mix(in srgb,var(--pep-chip-color) 10%,#fff));
  font-size: 18px;
  box-shadow: inset 0 1px 0 #fff,0 8px 20px rgba(73,48,34,.07);
}
.pep-shop-premium .pep-shop-chip::after {
  content: "Explorar colección  →";
  position: absolute;
  left: 52px;
  bottom: 8px;
  color: #8b7b70;
  font: 700 8px/1 var(--pep-sans);
  letter-spacing: .1em;
  text-transform: uppercase;
  opacity: .8;
}
.pep-shop-premium .pep-shop-chip span {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 50%;
  background: color-mix(in srgb,var(--pep-chip-color) 15%,#fff);
  box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--pep-chip-color),transparent 55%);
}
.pep-shop-premium .pep-shop-chip:hover {
  transform: translateY(-6px) scale(1.015);
  box-shadow: 0 18px 30px color-mix(in srgb,var(--pep-chip-color) 18%,transparent);
}

.pep-shop-premium .woocommerce-result-count,
.pep-shop-premium .woocommerce-ordering {
  position: relative;
  z-index: 2;
  margin-top: 4px !important;
  margin-bottom: 24px !important;
}
.pep-shop-premium .woocommerce-result-count {
  padding-left: 18px;
  color: #746256 !important;
  font-size: 16px !important;
}
.pep-shop-premium .woocommerce-result-count::before {
  content: "✦";
  margin-right: 10px;
  color: #bd8b2c;
}
.pep-shop-premium .woocommerce-ordering select {
  min-width: 275px;
  border: 1px solid rgba(189,139,44,.45) !important;
  border-radius: 16px !important;
  background-color: rgba(255,255,255,.74) !important;
  color: #57453a !important;
  box-shadow: 0 9px 23px rgba(73,48,34,.08),inset 0 1px 0 #fff;
  backdrop-filter: blur(10px);
}

.pep-shop-premium ul.products {
  clear: both;
  gap: 22px !important;
  margin: 0 !important;
  padding: 28px !important;
  border: 1px solid rgba(211,174,105,.35);
  border-radius: 34px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.78),rgba(255,248,239,.62)),
    repeating-linear-gradient(90deg,transparent 0 24.7%,rgba(189,139,44,.06) 24.8% 25%);
  box-shadow: 0 28px 75px rgba(73,48,34,.11),inset 0 1px 0 rgba(255,255,255,.98);
  backdrop-filter: blur(18px);
}
.pep-shop-premium ul.products li.product { box-shadow: 0 16px 38px rgba(73,48,34,.11),inset 0 1px 0 #fff !important; }

.pep-shop-premium li.pep-product-missing-image .astra-shop-thumbnail-wrap {
  position: relative;
  min-height: 285px;
  overflow: hidden;
  background:
    radial-gradient(circle at 48% 45%,rgba(255,255,255,.92),transparent 31%),
    linear-gradient(145deg,#f7eee3,#e7eee6) !important;
}
.pep-shop-premium li.pep-product-missing-image .astra-shop-thumbnail-wrap::before {
  z-index: 2;
  top: 50%;
  left: 50%;
  width: 58%;
  height: 58%;
  border-radius: 0;
  background-image: url('bola-estambre-premium.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: .76;
  filter: saturate(.72) drop-shadow(0 18px 14px rgba(73,48,34,.18));
  transform: translate(-50%,-55%);
}
.pep-shop-premium li.pep-placeholder-scene-2 .astra-shop-thumbnail-wrap::before { background-image: url('agujas-tejiendo-3d.png'); }
.pep-shop-premium li.pep-placeholder-scene-3 .astra-shop-thumbnail-wrap::before { background-image: url('maquina-coser-3d.png'); }
.pep-shop-premium li.pep-placeholder-scene-4 .astra-shop-thumbnail-wrap::before { background-image: url('tijeras-cortando-3d.png'); }
.pep-shop-premium li.pep-product-missing-image img.woocommerce-placeholder { opacity: 0 !important; }
.pep-shop-premium .pep-photo-coming {
  position: absolute;
  z-index: 4;
  left: 50%;
  bottom: 19px;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,.8);
  border-radius: 999px;
  background: rgba(255,253,248,.72);
  color: #8d704e;
  box-shadow: 0 8px 20px rgba(73,48,34,.1);
  backdrop-filter: blur(9px);
  font: 700 9px/1 var(--pep-sans);
  letter-spacing: .12em;
  text-transform: uppercase;
  transform: translateX(-50%);
  white-space: nowrap;
}

@media (max-width: 1024px) {
  .pep-shop-premium .pep-shop-hero { padding-inline: 150px; }
  .pep-shop-premium .pep-shop-categories { grid-template-columns: repeat(2,1fr); margin-inline: 22px; }
  .pep-shop-premium ul.products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 700px) {
  .pep-shop-premium .content-area,
  .pep-shop-premium .site-main { padding: 20px 14px 55px !important; }
  .pep-shop-premium .pep-shop-hero { min-height: 420px; padding: 58px 24px 120px; border-radius: 26px; }
  .pep-shop-premium .pep-shop-hero::before { left: 8px; bottom: -15px; width: 135px; }
  .pep-shop-premium .pep-shop-hero::after { right: 4px; top: auto; bottom: -4px; width: 125px; transform: rotate(4deg); }
  .pep-shop-premium .pep-shop-hero:hover::after { transform: translateY(-5px) rotate(0); }
  .pep-shop-premium .pep-shop-hero h1 { font-size: clamp(51px,16vw,72px); }
  .pep-shop-premium .pep-shop-hero p { font-size: 18px; }
  .pep-shop-premium .pep-shop-categories { grid-template-columns: 1fr; margin: -42px 12px 28px; padding: 10px; border-radius: 23px; }
  .pep-shop-premium .pep-shop-chip { min-height: 66px; }
  .pep-shop-premium .woocommerce-result-count { float: none !important; margin-bottom: 12px !important; line-height: 1.4 !important; }
  .pep-shop-premium .woocommerce-ordering { float: none !important; width: 100%; }
  .pep-shop-premium .woocommerce-ordering select { width: 100%; min-width: 0; }
  .pep-shop-premium ul.products { grid-template-columns: 1fr !important; padding: 14px !important; border-radius: 25px; }
}

@media (prefers-reduced-motion: reduce) {
  .pep-category-yarn-premium-fix:hover .pep-yarn-thread { animation: none; opacity: .55; }
  .pep-category-yarn-premium-fix:hover .pep-yarn-ball { animation: none; transform: rotate(7deg) scale(1.04); }
}

/* Peluches: agujas tejiendo */
.pep-ornament-knitting-fix,
.pep-ornament-sewing-fix,
.pep-ornament-scissors-fix {
  right: 7px !important;
  bottom: 3px !important;
  width: 88px !important;
  height: 88px !important;
  overflow: visible !important;
  cursor: pointer;
  isolation: isolate;
}
.pep-ornament-knitting-fix::before,
.pep-ornament-knitting-fix::after,
.pep-ornament-sewing-fix::before,
.pep-ornament-sewing-fix::after,
.pep-ornament-scissors-fix::before,
.pep-ornament-scissors-fix::after { content: none !important; }
.pep-knitting-piece {
  position: absolute; z-index: 1; inset: 0; display: block;
  background: url('agujas-tejiendo-3d.png') center / contain no-repeat;
  transform: rotate(-4deg); transform-origin: 52% 58%;
  filter: drop-shadow(0 7px 7px rgba(83,49,42,.2));
}
.pep-knit-loop {
  position: absolute; z-index: 2; width: 10px; height: 16px;
  border: 3px solid #c98991; border-top-color: transparent; border-radius: 50%;
  opacity: 0; filter: drop-shadow(0 1px 1px rgba(83,49,42,.18));
}
.pep-knit-loop-one { left: 37px; bottom: 9px; }
.pep-knit-loop-two { left: 51px; bottom: 12px; }
.pep-category-knitting-fix:hover .pep-knitting-piece,
.pep-category-knitting-fix.pep-mobile-active .pep-knitting-piece { animation: pep-knit-work 1.15s ease-in-out 2; }
.pep-category-knitting-fix:hover .pep-knit-loop-one,
.pep-category-knitting-fix.pep-mobile-active .pep-knit-loop-one { animation: pep-knit-loop 1.15s ease-in-out 2; }
.pep-category-knitting-fix:hover .pep-knit-loop-two,
.pep-category-knitting-fix.pep-mobile-active .pep-knit-loop-two { animation: pep-knit-loop 1.15s .18s ease-in-out 2; }
@keyframes pep-knit-work {
  0%,100% { transform: rotate(-4deg) translateY(0) scale(1); }
  25% { transform: rotate(3deg) translate(-2px,-3px) scale(1.03); }
  50% { transform: rotate(-7deg) translate(2px,1px) scale(1.02); }
  75% { transform: rotate(2deg) translate(-1px,-2px) scale(1.04); }
}
@keyframes pep-knit-loop {
  0%,15% { opacity: 0; transform: translateY(7px) scale(.35); }
  42%,65% { opacity: 1; transform: translateY(-2px) scale(1); }
  100% { opacity: 0; transform: translate(5px,-10px) scale(.55); }
}

/* Accesorios: máquina cosiendo */
.pep-sewing-machine {
  position: absolute; z-index: 1; inset: 0; display: block;
  background: url('maquina-coser-3d.png') center / contain no-repeat;
  transform: rotate(-2deg); transform-origin: 54% 72%;
  filter: drop-shadow(0 7px 7px rgba(52,75,52,.2));
}
.pep-sewing-needle {
  position: absolute; z-index: 3; left: 28px; bottom: 20px;
  width: 2px; height: 19px; border-radius: 2px;
  background: linear-gradient(#e9d7a8,#85642a); opacity: 0;
}
.pep-sewing-stitches {
  position: absolute; z-index: 2; left: -34px; bottom: 13px;
  width: 64px; height: 3px;
  background: repeating-linear-gradient(90deg,#789474 0 6px,transparent 6px 11px);
  opacity: .25; transform-origin: right center;
}
.pep-category-sewing-fix:hover .pep-sewing-machine,
.pep-category-sewing-fix.pep-mobile-active .pep-sewing-machine { animation: pep-machine-work .24s linear 8; }
.pep-category-sewing-fix:hover .pep-sewing-needle,
.pep-category-sewing-fix.pep-mobile-active .pep-sewing-needle { animation: pep-needle-stitch .24s linear 8; }
.pep-category-sewing-fix:hover .pep-sewing-stitches,
.pep-category-sewing-fix.pep-mobile-active .pep-sewing-stitches { animation: pep-stitches-move 1.92s linear forwards; }
@keyframes pep-machine-work {
  0%,100% { transform: rotate(-2deg) translateY(0); }
  50% { transform: rotate(-1deg) translateY(1px); }
}
@keyframes pep-needle-stitch {
  0%,100% { opacity: .75; transform: translateY(-6px); }
  50% { opacity: 1; transform: translateY(6px); }
}
@keyframes pep-stitches-move {
  0% { opacity: .25; transform: translateX(0) scaleX(.25); }
  25% { opacity: .9; }
  100% { opacity: 1; transform: translateX(-9px) scaleX(1); }
}

/* Otros: tijeras cortando */
.pep-scissors-tool {
  position: absolute; z-index: 1; inset: 0; display: block;
  background: url('tijeras-cortando-3d.png') center / contain no-repeat;
  transform: rotate(3deg); transform-origin: 56% 55%;
  filter: drop-shadow(0 7px 7px rgba(69,48,78,.2));
}
.pep-cut-piece {
  position: absolute; z-index: 3; right: 65px; bottom: 27px;
  width: 14px; height: 8px; border-radius: 2px 8px 2px 8px;
  background: linear-gradient(135deg,#c2a5cf,#8f6aa2); opacity: 0;
}
.pep-cut-piece-two { right: 54px; bottom: 18px; transform: rotate(35deg) scale(.75); }
.pep-category-scissors-fix:hover .pep-scissors-tool,
.pep-category-scissors-fix.pep-mobile-active .pep-scissors-tool { animation: pep-scissors-cut .44s ease-in-out 4; }
.pep-category-scissors-fix:hover .pep-cut-piece-one,
.pep-category-scissors-fix.pep-mobile-active .pep-cut-piece-one { animation: pep-cut-fly 1.76s .28s ease-out forwards; }
.pep-category-scissors-fix:hover .pep-cut-piece-two,
.pep-category-scissors-fix.pep-mobile-active .pep-cut-piece-two { animation: pep-cut-fly-two 1.76s .5s ease-out forwards; }
@keyframes pep-scissors-cut {
  0%,100% { transform: rotate(3deg) scale(1); }
  45% { transform: rotate(-5deg) translate(-3px,1px) scale(.96,.9); }
  65% { transform: rotate(5deg) translate(2px,-2px) scale(1.03); }
}
@keyframes pep-cut-fly {
  0% { opacity: 0; transform: translate(0,0) rotate(0) scale(.4); }
  18% { opacity: 1; }
  100% { opacity: 0; transform: translate(-28px,-24px) rotate(-145deg) scale(1); }
}
@keyframes pep-cut-fly-two {
  0% { opacity: 0; transform: translate(0,0) rotate(35deg) scale(.35); }
  18% { opacity: 1; }
  100% { opacity: 0; transform: translate(-18px,20px) rotate(190deg) scale(.85); }
}

@media (max-width: 620px) {
  .pep-ornament-knitting-fix,
  .pep-ornament-sewing-fix,
  .pep-ornament-scissors-fix { right: 6px !important; bottom: 3px !important; width: 76px !important; height: 76px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .pep-category-knitting-fix:hover .pep-category-ornament *,
  .pep-category-sewing-fix:hover .pep-category-ornament *,
  .pep-category-scissors-fix:hover .pep-category-ornament *,
  .pep-category-yarn-premium-fix.pep-mobile-active .pep-category-ornament *,
  .pep-category-knitting-fix.pep-mobile-active .pep-category-ornament *,
  .pep-category-sewing-fix.pep-mobile-active .pep-category-ornament *,
  .pep-category-scissors-fix.pep-mobile-active .pep-category-ornament * { animation: none !important; }
}

/* Fichas editoriales premium: portada */
.pep-products .pep-product {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(190,139,48,.58) !important;
  border-radius: 24px !important;
  background: #fffaf3 !important;
  box-shadow: 0 16px 42px rgba(73,48,34,.11), 0 2px 0 rgba(255,255,255,.9) inset !important;
  transition: transform .45s cubic-bezier(.2,.8,.2,1), box-shadow .45s ease, border-color .35s ease !important;
}
.pep-products .pep-product:hover {
  transform: translateY(-10px) scale(1.012);
  border-color: #bd8b2c !important;
  box-shadow: 0 28px 58px rgba(73,48,34,.19), 0 0 0 4px rgba(223,189,114,.14) !important;
}
.pep-products .pep-product-image {
  position: relative;
  aspect-ratio: 1 / 1.04;
  overflow: hidden;
  background: linear-gradient(145deg,#f5e8d8,#ead7c4) !important;
}
.pep-products .pep-product-image::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 27%;
  pointer-events: none;
  background: linear-gradient(0deg,rgba(74,42,26,.18),transparent);
  opacity: 0;
  transition: opacity .4s ease;
}
.pep-products .pep-product:hover .pep-product-image::after { opacity: 1; }
.pep-products .pep-product-image img {
  transition: transform .75s cubic-bezier(.18,.82,.2,1), filter .45s ease !important;
}
.pep-products .pep-product:hover .pep-product-image img {
  transform: scale(1.075) !important;
  filter: saturate(1.08) contrast(1.02);
}
.pep-products .pep-product-heart {
  top: 14px !important;
  right: 14px !important;
  width: 41px !important;
  height: 41px !important;
  border: 1px solid rgba(189,139,44,.52);
  background: rgba(255,250,243,.88) !important;
  color: #b86f43 !important;
  font-size: 23px !important;
  box-shadow: 0 8px 20px rgba(73,48,34,.15);
  backdrop-filter: blur(8px);
  transition: transform .35s ease, background .35s ease, color .35s ease;
}
.pep-products .pep-product:hover .pep-product-heart {
  transform: rotate(-8deg) scale(1.08);
  background: #b86f43 !important;
  color: #fffaf3 !important;
}
.pep-products .pep-product-info {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 23px 20px 20px !important;
  background: radial-gradient(circle at 100% 0,rgba(201,143,146,.14),transparent 35%),linear-gradient(145deg,#fffdf8,#fbf0e4);
  text-align: left;
}
.pep-products .pep-product-info::before {
  content: "";
  position: absolute;
  top: 0;
  left: 18px;
  right: 18px;
  height: 2px;
  background: repeating-linear-gradient(90deg,#c99a4b 0 8px,transparent 8px 13px);
  opacity: .55;
}
.pep-products .pep-product h3 {
  display: -webkit-box;
  min-height: 2.35em;
  margin: 0 0 10px !important;
  overflow: hidden;
  color: #33251e !important;
  font: 600 23px/1.15 var(--pep-serif) !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-transform: none !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.pep-products .pep-product h3 a,
.pep-products .pep-product h3 a:hover {
  color: inherit !important;
  text-decoration: none !important;
}
.pep-products .pep-price {
  display: block;
  margin: auto 0 2px;
  color: #a4613e !important;
  font: 700 21px/1.3 var(--pep-serif) !important;
}
.pep-products .pep-view {
  position: relative;
  display: flex !important;
  min-height: 49px;
  align-items: center;
  justify-content: center;
  margin-top: 14px !important;
  overflow: hidden;
  border: 1px solid #a9683d !important;
  border-radius: 999px !important;
  background: linear-gradient(110deg,#a95f3e,#c5844c 58%,#bd8b2c) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(169,95,62,.24);
  font: 700 13px/1 var(--pep-sans) !important;
  letter-spacing: .02em;
  text-decoration: none !important;
  transition: transform .3s ease, box-shadow .3s ease, filter .3s ease;
}
.pep-products .pep-view::after { content: "→"; margin-left: 9px; transition: transform .3s ease; }
.pep-products .pep-view:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: 0 15px 28px rgba(169,95,62,.32); }
.pep-products .pep-view:hover::after { transform: translateX(4px); }

/* Fichas editoriales premium: tienda WooCommerce */
.pep-woocommerce ul.products li.product {
  display: flex !important;
  min-height: 100%;
  flex-direction: column;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid rgba(190,139,48,.55) !important;
  border-radius: 24px !important;
  background: #fffaf3 !important;
  box-shadow: 0 16px 42px rgba(73,48,34,.11) !important;
  transition: transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .35s ease !important;
}
.pep-woocommerce ul.products li.product:hover {
  transform: translateY(-10px) scale(1.012) !important;
  border-color: #bd8b2c !important;
  box-shadow: 0 28px 58px rgba(73,48,34,.19),0 0 0 4px rgba(223,189,114,.14) !important;
}
.pep-woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
  position: relative;
  overflow: hidden;
  background: linear-gradient(145deg,#f5e8d8,#ead7c4);
}
.pep-woocommerce ul.products li.product .astra-shop-thumbnail-wrap::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: auto 0 0;
  height: 25%;
  pointer-events: none;
  background: linear-gradient(0deg,rgba(74,42,26,.17),transparent);
  opacity: 0;
  transition: opacity .4s ease;
}
.pep-woocommerce ul.products li.product:hover .astra-shop-thumbnail-wrap::after { opacity: 1; }
.pep-woocommerce ul.products li.product img {
  display: block;
  aspect-ratio: 1 / 1.04 !important;
  margin: 0 !important;
  object-fit: cover;
  transition: transform .75s cubic-bezier(.18,.82,.2,1),filter .45s ease !important;
}
.pep-woocommerce ul.products li.product:hover img { transform: scale(1.075) !important; filter: saturate(1.08) contrast(1.02); }
.pep-woocommerce ul.products li.product .pep-loop-category {
  position: absolute;
  z-index: 3;
  left: 14px;
  bottom: 14px;
  display: inline-flex;
  max-width: calc(100% - 28px);
  align-items: center;
  margin: 0 !important;
  padding: 8px 11px 7px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 999px;
  background: rgba(255,250,243,.9);
  color: #9d6730 !important;
  box-shadow: 0 7px 18px rgba(73,48,34,.14);
  backdrop-filter: blur(8px);
  font: 700 9px/1 var(--pep-sans) !important;
  letter-spacing: .13em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pep-woocommerce ul.products li.product .astra-shop-summary-wrap {
  position: relative;
  display: flex !important;
  flex: 1;
  flex-direction: column;
  padding: 23px 20px 20px !important;
  background: radial-gradient(circle at 100% 0,rgba(201,143,146,.14),transparent 35%),linear-gradient(145deg,#fffdf8,#fbf0e4);
  text-align: left !important;
}
.pep-woocommerce ul.products li.product .astra-shop-summary-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: 18px;
  right: 18px;
  height: 2px;
  background: repeating-linear-gradient(90deg,#c99a4b 0 8px,transparent 8px 13px);
  opacity: .55;
}
.pep-woocommerce ul.products li.product .ast-loop-product__link,
.pep-woocommerce ul.products li.product .ast-loop-product__link:hover { text-decoration: none !important; }
.pep-woocommerce ul.products li.product h2.woocommerce-loop-product__title {
  display: -webkit-box !important;
  min-height: 3.45em !important;
  padding: 0 !important;
  margin: 0 0 11px !important;
  overflow: hidden;
  color: #33251e !important;
  font: 600 22px/1.15 var(--pep-serif) !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-decoration: none !important;
  text-transform: none !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.pep-woocommerce ul.products li.product .price {
  display: block !important;
  margin: auto 0 1px !important;
  color: #a4613e !important;
  font: 700 22px/1.25 var(--pep-serif) !important;
  text-align: left !important;
}
.pep-woocommerce ul.products li.product .button {
  display: flex !important;
  width: 100% !important;
  min-height: 49px;
  align-items: center;
  justify-content: center;
  margin: 14px 0 0 !important;
  padding: 12px 15px !important;
  border: 1px solid #a9683d !important;
  border-radius: 999px !important;
  background: linear-gradient(110deg,#a95f3e,#c5844c 58%,#bd8b2c) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(169,95,62,.24);
  font: 700 13px/1.1 var(--pep-sans) !important;
  letter-spacing: .01em !important;
  text-align: center;
  text-decoration: none !important;
  text-transform: none !important;
  transition: transform .3s ease,box-shadow .3s ease,filter .3s ease;
}
.pep-woocommerce ul.products li.product .button::after { content: "→"; margin-left: 9px; transition: transform .3s ease; }
.pep-woocommerce ul.products li.product .button:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: 0 15px 28px rgba(169,95,62,.32); }
.pep-woocommerce ul.products li.product .button:hover::after { transform: translateX(4px); }

@media (max-width: 620px) {
  .pep-products .pep-product-info,
  .pep-woocommerce ul.products li.product .astra-shop-summary-wrap { padding: 21px 18px 18px !important; }
  .pep-products .pep-product h3 { font-size: 22px !important; }
  .pep-woocommerce ul.products li.product h2.woocommerce-loop-product__title { min-height: 2.4em !important; font-size: 23px !important; -webkit-line-clamp: 2; }
  .pep-products .pep-price,
  .pep-woocommerce ul.products li.product .price { font-size: 21px !important; }
}

/* Versión 1.3: títulos completos, WhatsApp oficial y vitrina de cristal */
.pep-floating-whatsapp > span:first-child svg,
.pep-social-whatsapp > span:first-child svg {
  display: block;
  width: 23px;
  height: 23px;
  color: currentColor;
}
.pep-social-whatsapp > span:first-child svg { width: 22px; height: 22px; }

.pep-products .pep-product,
.pep-woocommerce ul.products li.product {
  isolation: isolate;
  background: linear-gradient(145deg,rgba(255,255,255,.74),rgba(255,246,237,.6)) !important;
  backdrop-filter: blur(16px) saturate(1.18);
  -webkit-backdrop-filter: blur(16px) saturate(1.18);
  box-shadow: 0 22px 55px rgba(73,48,34,.14), inset 0 1px 0 rgba(255,255,255,.96), inset 0 -1px 0 rgba(189,139,44,.13) !important;
}
.pep-products .pep-product::after,
.pep-woocommerce ul.products li.product::after {
  content: "";
  position: absolute;
  z-index: 9;
  inset: 7px;
  border: 1px solid rgba(255,255,255,.64);
  border-radius: 18px;
  pointer-events: none;
  box-shadow: inset 0 0 24px rgba(255,255,255,.18);
}
.pep-products .pep-product::before,
.pep-woocommerce ul.products li.product::before {
  content: "";
  position: absolute;
  z-index: 8;
  top: -28%;
  left: -60%;
  width: 34%;
  height: 158%;
  pointer-events: none;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.58),rgba(255,255,255,.16),transparent);
  opacity: 0;
  transform: rotate(14deg);
}
.pep-products .pep-product:hover::before,
.pep-woocommerce ul.products li.product:hover::before {
  animation: pep-glass-showcase 1.05s cubic-bezier(.2,.75,.2,1);
}
@keyframes pep-glass-showcase {
  0% { left: -60%; opacity: 0; }
  18% { opacity: .82; }
  100% { left: 125%; opacity: 0; }
}
.pep-products .pep-product-image,
.pep-woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.45), inset 0 -22px 36px rgba(78,48,31,.08);
}
.pep-products .pep-product-image::before,
.pep-woocommerce ul.products li.product .astra-shop-thumbnail-wrap::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 3%;
  left: 6%;
  width: 52%;
  height: 13%;
  border-radius: 999px;
  pointer-events: none;
  background: radial-gradient(ellipse at center,rgba(255,255,255,.56),rgba(255,255,255,0) 72%);
  opacity: .72;
  transform: rotate(-9deg);
}
.pep-products .pep-product-info,
.pep-woocommerce ul.products li.product .astra-shop-summary-wrap {
  background: linear-gradient(145deg,rgba(255,253,248,.84),rgba(249,234,221,.72)) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.pep-products .pep-product-info::after,
.pep-woocommerce ul.products li.product .astra-shop-summary-wrap::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 8%;
  right: 8%;
  bottom: -13px;
  height: 24px;
  border-radius: 50%;
  background: radial-gradient(ellipse at center,rgba(189,139,44,.25),transparent 70%);
  filter: blur(8px);
}

.pep-products .pep-product h3,
.pep-woocommerce ul.products li.product h2.woocommerce-loop-product__title,
.pep-catalog-card h3 {
  display: block !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
  text-overflow: clip !important;
  text-transform: none !important;
  -webkit-box-orient: initial !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
}
.pep-products .pep-product h3,
.pep-woocommerce ul.products li.product h2.woocommerce-loop-product__title { font-size: 22px !important; line-height: 1.14 !important; }
.pep-products .pep-product h3.pep-title-medium,
.pep-woocommerce ul.products li.product h2.pep-title-medium { font-size: 20px !important; line-height: 1.15 !important; }
.pep-products .pep-product h3.pep-title-long,
.pep-woocommerce ul.products li.product h2.pep-title-long { font-size: 18px !important; line-height: 1.16 !important; }
.pep-products .pep-product h3.pep-title-xlong,
.pep-woocommerce ul.products li.product h2.pep-title-xlong { font-size: 16.5px !important; line-height: 1.17 !important; }

@media (max-width: 620px) {
  .pep-products .pep-product h3,
  .pep-woocommerce ul.products li.product h2.woocommerce-loop-product__title { font-size: 22px !important; }
  .pep-products .pep-product h3.pep-title-medium,
  .pep-woocommerce ul.products li.product h2.pep-title-medium { font-size: 20px !important; }
  .pep-products .pep-product h3.pep-title-long,
  .pep-woocommerce ul.products li.product h2.pep-title-long { font-size: 18px !important; }
  .pep-products .pep-product h3.pep-title-xlong,
  .pep-woocommerce ul.products li.product h2.pep-title-xlong { font-size: 16.5px !important; }
}
