/* ============================================================
   Catálogo (ediciones, sesiones, video sesiones, cursos)
   Reutiliza .vdjr-serv__hero de servicio.css. Variables de color
   heredadas de .vdjr (articulo.css).
   ============================================================ */

/* ── Buscador y orden ──────────────────────────────────────── */
.vdjr-tienda__controles{
  display:flex;gap:20px;flex-wrap:wrap;align-items:center;justify-content:space-between;
  padding:34px var(--margen);border-bottom:1px solid var(--linea);
}
.vdjr-tienda__buscador{display:flex;gap:10px;flex:1;max-width:520px;min-width:260px}
.vdjr-tienda__buscadorCampo{
  flex:1;background:#101010;border:1px solid var(--linea);color:var(--hueso);
  padding:12px 16px;font-family:Archivo,sans-serif;font-size:15px;
}
.vdjr-tienda__buscadorCampo::placeholder{color:var(--gris)}
.vdjr-tienda__orden select{
  background:#101010;border:1px solid var(--linea);color:var(--hueso);
  padding:12px 16px;font-family:Archivo,sans-serif;font-size:14px;
}

/* ── Rejilla ───────────────────────────────────────────────── */
.vdjr-tienda__rejillaSeccion{padding:24px var(--margen) 70px}
.vdjr-tienda__contador{font-size:13px;color:var(--gris);margin:0 0 24px}
.vdjr-tienda ul.products{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:34px 24px;
}
.vdjr-tienda ul.products li.product{list-style:none;width:100%;margin:0!important;padding:0!important;float:none!important}
.vdjr-tienda__cardEnlace{display:block!important;width:100%;color:var(--hueso);text-decoration:none}
.vdjr-tienda__cardFoto{
  display:block;width:100%;aspect-ratio:1/1;overflow:hidden;position:relative;
  border:1px solid var(--linea);margin-bottom:10px;background:#101010;
}
.vdjr-tienda__cardFoto img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;display:block;margin:0!important;transition:transform .5s cubic-bezier(.16,.84,.44,1)}
.vdjr-tienda__cardEnlace:hover .vdjr-tienda__cardFoto img{transform:scale(1.06)}
.vdjr-tienda__cardTitulo{display:block;font-size:14.5px;line-height:1.4;color:inherit}

/* ── Paginación ────────────────────────────────────────────── */
.vdjr-tienda__paginacion{margin-top:72px;padding-top:40px;border-top:1px solid var(--linea)}
.vdjr-tienda__paginacion ul.page-numbers{
  list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;
}
.vdjr-tienda__paginacion ul.page-numbers li{margin:0;padding:0;list-style:none}
.vdjr-tienda__paginacion li>a.page-numbers,
.vdjr-tienda__paginacion li>span.page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:52px;padding:0 18px;
  border:1px solid var(--linea);color:var(--hueso);text-decoration:none;
  font:700 15px/1 'Space Mono',ui-monospace,monospace;letter-spacing:.5px;
  transition:border-color .25s,background .25s,color .25s,transform .25s;
}
.vdjr-tienda__paginacion li>a.page-numbers:hover{
  border-color:var(--azul);background:rgba(31,122,255,.12);color:var(--claro);transform:translateY(-3px);
}
.vdjr-tienda__paginacion li>span.page-numbers.current{background:var(--azul);border-color:var(--azul);color:var(--negro)}
.vdjr-tienda__paginacion li>span.page-numbers.dots{border-color:transparent;color:var(--gris);min-width:auto;padding:0 4px}
.vdjr-tienda__paginacion li>a.prev,
.vdjr-tienda__paginacion li>a.next{font-size:20px;padding:0 22px}
.vdjr-tienda__vacio{color:var(--grisTexto);font-size:16px}

/* ── Ficha individual ──────────────────────────────────────── */
.vdjr-tienda__fichaCabeza{padding:60px var(--margen) 30px;max-width:1000px;margin:0 auto;border-bottom:1px solid var(--linea)}
.vdjr-tienda__fichaCabeza .vdjr-etiqueta a{color:var(--claro);text-decoration:none}
.vdjr-tienda__fichaTitulo{
  font-family:'Archivo Black',Archivo,sans-serif!important;color:var(--hueso)!important;
  font-size:clamp(26px,4vw,46px);line-height:1.05;text-transform:uppercase;letter-spacing:-.6px;
  margin:10px 0 18px;
}
.vdjr-tienda__fichaResumen{font-size:16px;line-height:1.65;color:var(--grisTexto);margin-bottom:20px}
.vdjr-tienda__fichaResumen p{margin:0 0 8px}
.vdjr-tienda__fichaTags{margin-top:6px}

.vdjr-tienda__fichaVideo{padding:50px var(--margen);max-width:1000px;margin:0 auto}
/* MediaElement.js (el reproductor del shortcode [video] de WordPress) fija
   su propio ancho/alto en pixeles por JS, y a veces calcula mal (queda en
   1-2px). En vez de pelear con esos valores inline, se fuerza todo el
   reproductor a rellenar un marco con proporcion 16:9 fija, igual que el
   iframe de YouTube en videobook.php. */
.vdjr-tienda__fichaMarco{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--linea);background:#000}
.vdjr-tienda__fichaMarco .wp-video,
.vdjr-tienda__fichaMarco .mejs-container{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
.vdjr-tienda__fichaMarco .mejs-mediaelement,
.vdjr-tienda__fichaMarco video,
.vdjr-tienda__fichaMarco .mejs-poster,
.vdjr-tienda__fichaMarco .mejs-overlay,
.vdjr-tienda__fichaMarco .mejs-layers{width:100%!important;height:100%!important}
.vdjr-tienda__fichaMarco video{object-fit:contain;display:block}

.vdjr-tienda__compartir{margin-top:22px;display:flex;align-items:center;flex-wrap:wrap;gap:14px;font-size:14px}
.vdjr-tienda__compartir .vdjr-etiqueta{margin:0}
.vdjr-tienda__compartir a,
.vdjr-tienda__copiar{
  color:var(--claro);border:1px solid rgba(102,178,255,.4);padding:8px 14px;
  background:transparent;font-family:Archivo,sans-serif;font-size:13px;cursor:pointer;text-decoration:none;
}
.vdjr-tienda__compartir a:hover,.vdjr-tienda__copiar:hover{background:rgba(31,122,255,.08)}

/* ── Relacionados ──────────────────────────────────────────── */
.vdjr-tienda__relacionados{position:relative;padding:60px var(--margen);background:var(--hueso);color:var(--negro)}
.vdjr-tienda__relacionados .vdjr-etiqueta{color:#77726a;margin-bottom:24px}
.vdjr-tienda__relacionados .vdjr-tienda__cardEnlace{color:var(--negro)}
.vdjr-tienda__relacionados .vdjr-tienda__cardFoto{border-color:rgba(10,10,10,.18);background:rgba(10,10,10,.05)}
.vdjr-tienda__verTodo{margin-top:34px}

/* ── Móvil ─────────────────────────────────────────────────── */
@media (max-width:760px){
  .vdjr-tienda__paginacion ul.page-numbers{gap:10px}
  .vdjr-tienda__paginacion li>a.page-numbers,.vdjr-tienda__paginacion li>span.page-numbers{min-width:46px;height:46px;padding:0 12px}
  .vdjr-tienda__controles{padding:24px var(--margen);flex-direction:column;align-items:stretch}
  .vdjr-tienda__buscador{max-width:none}
  .vdjr-tienda__rejillaSeccion{padding:20px var(--margen) 50px}
  .vdjr-tienda__fichaCabeza,.vdjr-tienda__fichaVideo{padding:40px var(--margen)}
  .vdjr-tienda__relacionados{padding:40px var(--margen)}
}

/* Botones de buscar/aplicar: son <button>; sin esto salen blancos con el texto invisible */
.vdjr-tienda__buscador .vdjr-btn,
.vdjr-tienda__orden .vdjr-btn{
  -webkit-appearance:none;appearance:none;border-radius:0;cursor:pointer;
  background:var(--azul);color:var(--negro);border:1px solid var(--azul);
  padding:13px 26px;font:700 13px/1 'Space Mono',ui-monospace,monospace;letter-spacing:1.4px;text-transform:uppercase;
  transition:background .25s,border-color .25s,transform .25s;
}
.vdjr-tienda__buscador .vdjr-btn:hover,
.vdjr-tienda__orden .vdjr-btn:hover{background:var(--hueso);border-color:var(--hueso);color:var(--negro);transform:translateY(-1px)}
.vdjr-tienda__buscadorCampo:focus,.vdjr-tienda__orden select:focus{outline:0;border-color:var(--azul);box-shadow:0 0 0 3px rgba(31,122,255,.25)}

/* ── Cursos de pago: tarjeta con precio, franja de datos y compra ───────── */
.vdjr-tienda__cardPrecio{display:block;margin-top:8px;font:700 14px/1 'Space Mono',ui-monospace,monospace;letter-spacing:.6px;color:var(--azul)}
.vdjr-tienda__relacionados .vdjr-tienda__cardPrecio{color:#0b5ed0}
.vdjr-tienda__cardPrecio .woocommerce-Price-amount{color:inherit}

.vdjr-tienda__info{display:flex;flex-wrap:wrap;gap:14px 44px;justify-content:center;padding:26px var(--margen);border-bottom:1px solid var(--linea)}
.vdjr-tienda__infoItem{margin:0;font:400 12px/1.5 'Space Mono',ui-monospace,monospace;letter-spacing:1.4px;text-transform:uppercase;color:var(--hueso)}
.vdjr-tienda__infoN{color:var(--azul);margin-right:8px}

.vdjr-tienda__curso{max-width:1000px;margin:0 auto;padding:56px var(--margen);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:start}
.vdjr-tienda__curso>.woocommerce-notices-wrapper,.vdjr-tienda__curso>.woocommerce-message{grid-column:1/-1}
.vdjr-tienda__cursoFoto{aspect-ratio:1/1;overflow:hidden;background:#000;border:1px solid var(--linea)}
.vdjr-tienda__cursoFoto img{display:block;width:100%;height:100%;object-fit:cover}
.vdjr-tienda__cursoCompra{display:grid;gap:26px;align-content:start}
.vdjr-tienda__cursoPrecio{margin:0;font-family:'Archivo Black',Archivo,sans-serif;font-size:clamp(40px,6vw,72px);line-height:1;letter-spacing:-1px;color:var(--hueso)}
.vdjr-tienda__cursoPrecio .woocommerce-Price-amount{color:inherit}
.vdjr-tienda__cursoForm form.cart{display:flex;flex-wrap:wrap;gap:14px;align-items:stretch;margin:0}
.vdjr-tienda__cursoForm .quantity{display:none}
.vdjr-tienda__cursoForm .single_add_to_cart_button{
  -webkit-appearance:none;appearance:none;cursor:pointer;border-radius:0!important;background:var(--azul)!important;color:var(--negro)!important;
  border:1px solid var(--azul)!important;padding:18px 38px!important;font:700 13px/1 'Space Mono',ui-monospace,monospace!important;
  letter-spacing:1.6px;text-transform:uppercase;transition:background .25s,color .25s,transform .25s;
}
.vdjr-tienda__cursoForm .single_add_to_cart_button:hover{background:var(--hueso)!important;border-color:var(--hueso)!important;transform:translateY(-2px)}
.vdjr-tienda__cursoForm .single_add_to_cart_button::after,.vdjr-tienda__cursoForm .single_add_to_cart_button::before{display:none!important}

@media (max-width:760px){
  .vdjr-tienda__curso{grid-template-columns:1fr;gap:30px;padding:36px var(--margen)}
}

/* ── Reproductor de las sesiones de audio ──────────────────── */
.vdjr-tienda__fichaMarco--audio{
  aspect-ratio:auto;overflow:visible;background:#0e0e0e;
  display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:34px;align-items:center;padding:26px;
}
.vdjr-tienda__audioCover img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border:1px solid var(--linea)}
.vdjr-tienda__audioCuerpo .vdjr-etiqueta{margin:0 0 16px}
.vdjr-tienda__fichaMarco--audio .wp-audio-shortcode,
.vdjr-tienda__fichaMarco--audio .mejs-container{position:relative!important;inset:auto!important;width:100%!important;max-width:none!important;height:56px!important;min-width:0!important;background:#101010!important}
.vdjr-tienda__fichaMarco--audio .mejs-mediaelement,
.vdjr-tienda__fichaMarco--audio .mejs-layers{width:auto!important;height:auto!important}
.vdjr-tienda__fichaMarco--audio .mejs-controls{background:#101010!important;border:1px solid rgba(102,178,255,.35);height:56px!important;padding:0 8px}
.vdjr-tienda__fichaMarco--audio .mejs-time{color:var(--hueso)!important;font-family:'Space Mono',ui-monospace,monospace;padding-top:20px}
.vdjr-tienda__fichaMarco--audio .mejs-button,
.vdjr-tienda__fichaMarco--audio .mejs-time-rail,
.vdjr-tienda__fichaMarco--audio .mejs-horizontal-volume-slider{margin-top:10px}
.vdjr-tienda__fichaMarco--audio .mejs-time-total{background:rgba(237,234,227,.2)!important}
.vdjr-tienda__fichaMarco--audio .mejs-time-loaded{background:rgba(102,178,255,.35)!important}
.vdjr-tienda__fichaMarco--audio .mejs-time-current,
.vdjr-tienda__fichaMarco--audio .mejs-horizontal-volume-current{background:var(--azul)!important}
@media (max-width:700px){
  .vdjr-tienda__fichaMarco--audio{grid-template-columns:1fr;gap:22px;padding:18px}
  .vdjr-tienda__audioCover{max-width:300px;margin:0 auto;width:100%}
}

/* ── Track list de las sesiones de audio ───────────────────── */
.vdjr-tienda__tracklist{margin-top:36px;padding-top:28px;border-top:1px solid var(--linea)}
.vdjr-tienda__tracklist .vdjr-etiqueta{margin:0 0 18px}
.vdjr-tienda__temas{list-style:none;margin:0;padding:0;columns:2;column-gap:46px}
.vdjr-tienda__temas li{break-inside:avoid;display:flex;gap:14px;align-items:baseline;padding:9px 0;border-bottom:1px solid rgba(237,234,227,.12);font-size:15px;line-height:1.45;color:var(--hueso)}
.vdjr-tienda__temaN{flex:none;min-width:22px;font-family:'Space Mono',ui-monospace,monospace;font-size:12px;letter-spacing:1.2px;color:#8d897f}
@media (max-width:760px){.vdjr-tienda__temas{columns:1}}
