/* ==========================================================================
   MARVATOYS - TIENDA
   Misma gramatica que la landing: fondo void, tintas por categoria,
   piezas sobre blob y nada de cajas rectangulares.
   Todo va bajo .marva-tienda para no tocar el resto del sitio.
   ========================================================================== */
body.marva-tienda{
  --void:#08070A;
  --carbon:#111017;
  --humo:#1E1C26;
  --linea:#2A2733;
  --sangre:#FF1E1E;
  --amarillo:#FFD400;
  --hueso:#F5F1E8;
  --ceniza:#C3BCD2;
  --ceniza-2:#8F87A3;

  --f-display:'Anton','Arial Narrow',Impact,sans-serif;
  --f-cuerpo:'Space Grotesk',system-ui,sans-serif;
  --f-dato:'Space Mono',ui-monospace,monospace;
  /* Tipografia del rotulo. Alternativas ya cargadas:
     'Rubik Spray Paint' (spray sucio) o var(--f-display) para volver a Anton. */
  --f-graffiti:'Bungee',var(--f-display);

  --curva:cubic-bezier(.16,1,.3,1);
  --blob-a:58% 42% 47% 53%/44% 56% 44% 56%;
  --blob-b:42% 58% 61% 39%/56% 45% 55% 44%;
  --blob-c:50% 50% 38% 62%/38% 58% 42% 62%;

  background:var(--void) !important;
  color:var(--hueso);
  font-family:var(--f-cuerpo);
  overflow-x:hidden;
}
body.marva-tienda #main,
body.marva-tienda .site-main,
body.marva-tienda [class*="ct-container"],
body.marva-tienda .entry-content{background:transparent !important}
body.marva-tienda a{color:inherit}

/* --------------- Fondo de ambiente --------------- */
.marva-fondo{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.marva-fondo__t{position:absolute;border-radius:50%;will-change:transform;
  background:radial-gradient(circle closest-side,var(--t) 0%,rgba(0,0,0,0) 72%)}
.marva-fondo__t.t1{--t:rgba(255,30,30,.5);width:70vmax;height:70vmax;left:-25vmax;top:-27vmax;
  animation:marva-vagar1 26s ease-in-out infinite alternate}
.marva-fondo__t.t2{--t:rgba(139,92,246,.3);width:56vmax;height:56vmax;right:-19vmax;top:18vh;
  animation:marva-vagar2 34s ease-in-out infinite alternate}
.marva-fondo__t.t3{--t:rgba(255,46,154,.2);width:48vmax;height:48vmax;left:24vw;bottom:-24vmax;
  animation:marva-vagar3 40s ease-in-out infinite alternate}
@keyframes marva-vagar1{to{transform:translate3d(12vw,10vh,0) scale(1.18)}}
@keyframes marva-vagar2{to{transform:translate3d(-14vw,-8vh,0) scale(.84)}}
@keyframes marva-vagar3{to{transform:translate3d(9vw,-12vh,0) scale(1.22)}}
.marva-fondo__rejilla{position:absolute;inset:-15%;opacity:.13;will-change:transform;
  background-image:linear-gradient(var(--linea) 1px,transparent 1px),
                   linear-gradient(90deg,var(--linea) 1px,transparent 1px);
  background-size:74px 74px;animation:marva-rejilla 11s linear infinite}
@keyframes marva-rejilla{to{transform:translate3d(74px,74px,0)}}
.marva-fondo__velo{position:absolute;inset:0;
  background:radial-gradient(ellipse at 50% 34%,transparent 26%,rgba(8,7,10,.5) 62%,var(--void) 96%)}
.marva-fondo__grano{position:absolute;inset:0;opacity:.34;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
body.marva-tienda #main,
body.marva-tienda header,
body.marva-tienda footer{position:relative;z-index:2}

/* --------------- Hero --------------- */
.marva-hero{position:relative;overflow:hidden;
  padding:clamp(24px,3vw,44px) 0 clamp(16px,2vw,28px);margin-bottom:18px;
  background:linear-gradient(180deg,transparent,rgba(255,30,30,.07) 55%,transparent)}
.marva-hero__caja{position:relative;z-index:3;text-align:center}

/* El titulo lleva una copia roja detras, no una sombra encima:
   el frente queda solido y se lee limpio. */
.marva-hero__t{position:relative;display:inline-block;margin:0;
  font-family:var(--f-graffiti);text-transform:uppercase;
  font-size:clamp(34px,6vw,82px);line-height:1.04;letter-spacing:.005em;
  color:var(--hueso);padding:0 .06em;
  transform:rotate(-1.4deg)}
/* Una sola capa detras: el spray ya trae textura, dos capas lo ensucian. */
.marva-hero__t::before{content:attr(data-t);position:absolute;left:0;top:0;z-index:-1;
  padding:0 .06em;color:var(--sangre);transform:translate3d(6px,7px,0);opacity:.85}
@media(max-width:620px){
  .marva-hero__t{transform:rotate(-1deg)}
  .marva-hero__t::before{transform:translate3d(3px,4px,0)}
}

.marva-hero__d{font-family:var(--f-dato);font-size:11px;letter-spacing:.22em;
  text-transform:uppercase;color:var(--ceniza);margin:12px 0 0}
.marva-hero__d span{color:var(--amarillo);font-size:15px;font-weight:700}
.marva-hero__x{position:relative;z-index:3;max-width:62ch;margin:16px auto 0;
  text-align:center;color:var(--ceniza);font-size:15px;line-height:1.85}

.marva-hero__mq{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);
  z-index:0;overflow:hidden;pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
.marva-hero__mq em{font-style:normal;font-family:var(--f-display);text-transform:uppercase;
  font-size:clamp(40px,6.4vw,84px);line-height:1;white-space:nowrap;display:block;
  width:max-content;color:transparent;-webkit-text-stroke:1.2px rgba(245,241,232,.075);
  will-change:transform;animation:marva-correr 44s linear infinite}
.marva-hero__estrella{position:absolute;left:50%;top:50%;width:min(34vw,300px);
  margin:min(-17vw,-150px) 0 0 min(-17vw,-150px);z-index:1;opacity:.26;
  pointer-events:none;animation:marva-girar 58s linear infinite}
.marva-hero__estrella path{fill:none;stroke:var(--sangre);stroke-width:1.1}
@keyframes marva-correr{to{transform:translate3d(-50%,0,0)}}
@keyframes marva-girar{to{transform:rotate(360deg)}}

/* --------------- Ancho del archivo ---------------
   Solo se ensancha el contenedor en las paginas de catalogo.
   No se toca display ni grid: eso rompe el layout de Blocksy. */
body.marva-archivo #main > [class*="ct-container"],
body.marva-archivo .site-main{max-width:1680px}
body.marva-archivo .marva-hero{margin-inline:calc(50% - 50vw);
  padding-inline:calc(50vw - 50%)}

/* --------------- Rejilla: aside + loop --------------- */
.marva-layout{display:grid;grid-template-columns:298px minmax(0,1fr);
  gap:clamp(20px,2.2vw,36px);align-items:start}
@media(max-width:1000px){.marva-layout{grid-template-columns:1fr;gap:0}}

.marva-filtros{position:sticky;top:88px;align-self:start;z-index:20}
.marva-filtros__caja{background:#15141C;border:1px solid #302C3D;border-radius:18px;
  padding:16px 15px;display:flex;flex-direction:column;gap:16px}
.marva-filtros__barra{display:none}

.marva-fgrupo{display:flex;flex-direction:column;gap:9px;position:relative}
.marva-fgrupo__t{margin:0;font-family:var(--f-display);text-transform:uppercase;
  font-size:12.5px;letter-spacing:.1em;color:var(--hueso);
  padding-bottom:7px;border-bottom:1px solid #302C3D;position:relative}
.marva-fgrupo__t::after{content:'';position:absolute;left:0;bottom:-1px;
  width:30px;height:2px;background:var(--sangre)}

/* --------------- Campos: base comun --------------- */
body.marva-tienda .marva-filtros input[type="search"],
body.marva-tienda .marva-filtros input[type="number"],
body.marva-tienda .marva-filtros select{
  width:100%;height:auto !important;min-height:0;
  background:#211E2B !important;border:1.6px solid #3D3849 !important;
  border-radius:11px !important;color:var(--hueso) !important;
  font-family:var(--f-cuerpo) !important;font-size:13.5px !important;
  line-height:1.35 !important;padding:11px 13px !important;
  box-shadow:none !important;-webkit-appearance:none;appearance:none}
body.marva-tienda .marva-filtros input:focus,
body.marva-tienda .marva-filtros select:focus{
  border-color:var(--amarillo) !important;outline:none;background:#272232 !important}
/* Placeholder legible: antes quedaba casi invisible */
body.marva-tienda .marva-filtros ::placeholder{color:#9A92AC !important;opacity:1}

/* Selects con flecha propia y sin recorte de texto */
body.marva-tienda .marva-filtros select{
  padding-right:34px !important;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23C3BCD2' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 12px center !important}
body.marva-tienda .marva-filtros select option{background:#15141C;color:var(--hueso);
  padding:8px}

/* --------------- Buscador --------------- */
.marva-buscar{display:flex;gap:7px}
body.marva-tienda .marva-buscar button{flex:0 0 auto;width:42px;height:42px;
  display:grid;place-items:center;background:var(--sangre);border:0;border-radius:11px;
  cursor:pointer;transition:background-color .25s,transform .2s}
body.marva-tienda .marva-buscar button:hover{background:var(--amarillo);
  transform:translate3d(0,-2px,0)}
.marva-buscar button svg{width:17px;height:17px;fill:none;stroke:var(--hueso);
  stroke-width:2.2;stroke-linecap:round}
.marva-buscar button:hover svg{stroke:var(--void)}
.marva-buscar__x{display:inline-block;margin-top:8px;font-family:var(--f-dato);
  font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--sangre);
  text-decoration:none;border-bottom:1px dashed currentColor;padding-bottom:2px}
.marva-buscar__x:hover{color:var(--amarillo)}

/* Resultados en vivo, al costado de la barra */
.marva-buscar__res{position:absolute;left:calc(100% + 14px);top:0;width:330px;z-index:60;
  background:#15141C;border:1px solid #3D3849;border-radius:18px;padding:10px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.9)}
.marva-buscar__res[hidden]{display:none}
@media(max-width:1240px){
  .marva-buscar__res{left:0;top:calc(100% + 8px);width:100%}
}
.marva-res__i{display:flex;align-items:center;gap:11px;padding:8px;border-radius:12px;
  text-decoration:none;transition:background-color .2s}
.marva-res__i:hover{background:rgba(255,255,255,.06)}
.marva-res__img{width:52px;height:52px;flex:0 0 auto;border-radius:10px;overflow:hidden;
  background:#0E0D13;border:2px solid var(--ac,#3D3849)}
.marva-res__img img{width:100%;height:100%;object-fit:cover;display:block}
.marva-res__d{min-width:0;flex:1}
.marva-res__c{display:block;font-family:var(--f-dato);font-size:8.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ac,#8F87A3);margin-bottom:3px}
.marva-res__n{display:block;font-size:13px;line-height:1.3;color:var(--hueso);
  font-weight:700;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;
  -webkit-box-orient:vertical}
.marva-res__p{display:block;font-family:var(--f-dato);font-size:12px;font-weight:700;
  color:var(--amarillo);margin-top:3px}
.marva-res__p del{color:#8F87A3;font-weight:400;font-size:10px}
.marva-res__p ins{text-decoration:none}
.marva-res__ver{display:block;text-align:center;margin-top:6px;padding:11px;
  border-top:1px solid #302C3D;font-family:var(--f-dato);font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--amarillo);text-decoration:none}
.marva-res__ver:hover{color:var(--hueso)}
.marva-res__vacio,.marva-res__carga{padding:18px 12px;text-align:center;
  font-family:var(--f-dato);font-size:11px;letter-spacing:.1em;color:#9A92AC}

/* --------------- Precio --------------- */
.marva-precio{display:flex;flex-direction:column;gap:9px}
.marva-precio__par{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.marva-precio label{display:flex;flex-direction:column;gap:5px}
.marva-precio label i{font-style:normal;font-family:var(--f-dato);font-size:8.5px;
  letter-spacing:.16em;text-transform:uppercase;color:#9A92AC}
body.marva-tienda .marva-precio input[type="number"]{text-align:center;
  font-family:var(--f-dato) !important;font-weight:700;-moz-appearance:textfield}
body.marva-tienda .marva-precio input::-webkit-outer-spin-button,
body.marva-tienda .marva-precio input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
body.marva-tienda .marva-precio button{background:var(--amarillo);color:var(--void);
  border:0;border-radius:999px;font-family:var(--f-dato);font-size:10px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;padding:11px 16px;cursor:pointer;
  transition:background-color .25s,transform .2s}
body.marva-tienda .marva-precio button:hover{background:var(--hueso);
  transform:translate3d(0,-2px,0)}

/* --------------- Secciones --------------- */
.marva-secc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}
.marva-secc__a{--ac:var(--sangre);display:flex;align-items:center;gap:8px;
  padding:7px 10px;border-radius:9px;text-decoration:none;
  font-family:var(--f-cuerpo);font-size:12.5px;color:var(--ceniza);line-height:1.3;
  transition:background-color .2s,color .2s}
.marva-secc__a i{width:7px;height:7px;flex:0 0 auto;border-radius:50%;
  background:var(--ac);opacity:.8}
.marva-secc__a span{flex:1;min-width:0}
.marva-secc__a b{font-family:var(--f-dato);font-size:10px;font-weight:400;color:#9A92AC}
.marva-secc__a:hover{background:rgba(255,255,255,.06);color:var(--hueso)}
.marva-secc__a.is-active{background:var(--ac);color:var(--void);font-weight:700}
.marva-secc__a.is-active i{background:var(--void);opacity:1}
.marva-secc__a.is-active b{color:rgba(8,7,10,.65)}
.marva-secc__hijas{list-style:none;margin:3px 0 6px;padding:0 0 0 12px;
  border-left:1px dashed #3A3547;display:flex;flex-direction:column;gap:1px}
.marva-secc__a--hija{font-size:11.5px;padding:6px 9px}
.marva-secc__li--extra{display:none}
.marva-secc.abierto .marva-secc__li--extra{display:block}
.marva-secc__mas{background:none;border:1.6px dashed #3A3547;border-radius:999px;
  color:var(--hueso);font-family:var(--f-dato);font-size:9px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;padding:10px 12px;cursor:pointer;
  transition:background-color .25s,color .25s,border-color .25s}
.marva-secc__mas:hover{background:var(--amarillo);border-color:var(--amarillo);
  border-style:solid;color:var(--void)}

/* --------------- Resumen sobre el loop --------------- */
.marva-resumen{display:flex;align-items:center;justify-content:space-between;gap:16px;
  flex-wrap:wrap;margin:0 0 16px;padding-bottom:11px;border-bottom:1px solid #302C3D}
.marva-resumen__n{font-family:var(--f-dato);font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--ceniza)}
.marva-resumen__n b{color:var(--hueso);font-size:14px}
.marva-limpiar{font-family:var(--f-dato);font-size:9.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--sangre);border:1.6px dashed var(--sangre);
  border-radius:999px;padding:9px 15px;text-decoration:none;
  transition:background-color .25s,color .25s,border-style .25s}
.marva-limpiar:hover{background:var(--sangre);color:var(--hueso);border-style:solid}

/* ==========================================================================
   MOVIL: los filtros viven en un cajon que abre un boton fijo abajo
   ========================================================================== */
.marva-fab{display:none}
.marva-velo{display:none}

@media(max-width:1000px){
  .marva-filtros{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:9200;
    transform:translate3d(0,100%,0);transition:transform .4s var(--curva);
    max-height:86vh;display:flex;flex-direction:column}
  body.marva-filtros-abiertos .marva-filtros{transform:none}

  .marva-filtros__barra{display:flex;align-items:center;justify-content:space-between;
    background:#15141C;border:1px solid #302C3D;border-bottom:0;
    border-radius:22px 22px 0 0;padding:16px 20px;
    font-family:var(--f-display);text-transform:uppercase;font-size:17px;
    color:var(--hueso)}
  .marva-filtros__cerrar{background:none;border:0;color:var(--ceniza);font-size:30px;
    line-height:1;cursor:pointer;padding:0 4px}
  .marva-filtros__cerrar:hover{color:var(--sangre)}
  .marva-filtros__caja{border-radius:0;border-bottom:0;
    padding:18px 20px calc(22px + env(safe-area-inset-bottom));
    overflow-y:auto;-webkit-overflow-scrolling:touch}

  .marva-velo{display:block;position:fixed;inset:0;z-index:9050;
    background:rgba(8,7,10,.72);opacity:0;pointer-events:none;
    transition:opacity .35s}
  .marva-velo[hidden]{display:block}
  body.marva-filtros-abiertos .marva-velo{opacity:1;pointer-events:auto}
  body.marva-filtros-abiertos{overflow:hidden}

  .marva-fab{display:inline-flex;align-items:center;gap:10px;
    position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:9060;
    background:var(--sangre);color:var(--hueso);border:2px solid var(--void);
    border-radius:999px;padding:15px 26px;cursor:pointer;
    font-family:var(--f-dato);font-size:12px;font-weight:700;letter-spacing:.16em;
    text-transform:uppercase;box-shadow:0 14px 32px rgba(0,0,0,.6),5px 5px 0 var(--amarillo);
    transition:background-color .25s,color .25s,opacity .3s}
  .marva-fab svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;
    stroke-linecap:round}
  .marva-fab:hover{background:var(--amarillo);color:var(--void)}
  body.marva-filtros-abiertos .marva-fab{opacity:0;pointer-events:none}

  .marva-buscar__res{position:static;width:100%;margin-top:8px;box-shadow:none}
}

/* --------------- Rejilla de piezas --------------- */
body.marva-tienda ul.products{display:grid;grid-template-columns:repeat(4,1fr);
  gap:72px 20px;margin:0;padding:0;list-style:none}
body.marva-tienda ul.products::before,
body.marva-tienda ul.products::after{content:none}
@media(max-width:1440px){body.marva-tienda ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1080px){body.marva-tienda ul.products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){body.marva-tienda ul.products{grid-template-columns:repeat(2,1fr);gap:48px 14px}}
@media(max-width:420px){body.marva-tienda ul.products{grid-template-columns:repeat(2,1fr);gap:40px 10px}}

/* --------------- La pieza --------------- */
body.marva-tienda li.product.marva-pz{
  position:relative;display:flex;flex-direction:column;text-align:center;
  width:100% !important;margin:0 !important;float:none !important;clear:none !important;
  background:none !important;border:0 !important;padding:0 !important;box-shadow:none !important}
.marva-pz .pz__vit{position:relative;display:block;aspect-ratio:1;margin-bottom:24px}
.marva-pz .pz__aura{position:absolute;inset:4%;z-index:0;border-radius:50%;background:var(--ac);
  opacity:.14;transition:opacity .5s,transform .6s var(--curva)}
.marva-pz .pz__blob{position:absolute;inset:8%;z-index:1;background:var(--ac);
  border-radius:var(--blob-a);opacity:.95;
  transform:rotate(-5deg) translate3d(9px,9px,0);
  will-change:transform;transition:transform .55s var(--curva)}
.marva-pz .pz__foto{position:absolute;inset:8%;z-index:2;overflow:hidden;background:#0E0D13;
  border-radius:var(--blob-a);box-shadow:0 18px 34px -18px rgba(0,0,0,.95);
  transition:transform .55s var(--curva),border-radius .8s var(--curva)}
.marva-pz .pz__foto img{width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .6s var(--curva),filter .4s}
.marva-pz .pz__err{position:absolute;inset:0;z-index:2;display:none;place-items:center;padding:16%;
  font-family:var(--f-dato);font-size:10.5px;line-height:1.75;color:var(--hueso);
  text-transform:uppercase;letter-spacing:.06em}
.marva-pz .pz__anillo{position:absolute;inset:1%;z-index:3;pointer-events:none;
  animation:marva-girar 24s linear infinite;animation-play-state:paused}
.marva-pz .pz__anillo circle{fill:none;stroke:var(--ac);stroke-width:1;stroke-dasharray:2 10;opacity:.5}
.marva-pz .pz__fol{position:absolute;top:0;left:1%;z-index:5;font-family:var(--f-dato);
  font-size:10.5px;letter-spacing:.2em;color:var(--ceniza)}
.marva-pz .pz__tag{position:absolute;top:3%;right:0;z-index:5;font-family:var(--f-dato);
  font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--void);
  background:var(--ac);padding:6px 12px;border-radius:999px;font-weight:700;
  transform:rotate(4deg)}
.marva-pz .pz__ver{display:none;position:absolute;left:50%;bottom:4%;z-index:6;font-family:var(--f-dato);
  font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--void);background:var(--amarillo);padding:11px 20px;border-radius:999px;
  white-space:nowrap;box-shadow:0 12px 26px rgba(0,0,0,.55),0 0 0 2px rgba(8,7,10,.85);
  transform:translate3d(-50%,26px,0);opacity:0;
  transition:transform .45s var(--curva),opacity .3s}

@media(hover:none),(pointer:coarse){
  .marva-pz .pz__ver{display:block}
  .marva-pz.activa .pz__ver{transform:translate3d(-50%,0,0);opacity:1}
}
.marva-pz:hover .pz__blob,.marva-pz.activa .pz__blob{
  transform:rotate(7deg) translate3d(-14px,11px,0) scale(1.02)}
.marva-pz:hover .pz__foto,.marva-pz.activa .pz__foto{
  transform:translate3d(0,-10px,0);border-radius:var(--blob-c)}
.marva-pz:hover .pz__foto img,.marva-pz.activa .pz__foto img{transform:scale(1.07)}
.marva-pz:hover .pz__aura,.marva-pz.activa .pz__aura{opacity:.42;transform:scale(1.12)}
.marva-pz:hover .pz__anillo,.marva-pz.activa .pz__anillo{animation-play-state:running}
.marva-pz--sinimg .pz__err{display:grid}
.marva-pz--sinimg .pz__foto{background:linear-gradient(150deg,var(--ac),#0E0D13 78%)}
.marva-pz--fuera .pz__foto img{filter:grayscale(1);opacity:.4}
.marva-pz--fuera .pz__blob{opacity:.32}
.marva-pz--fuera .pz__cat{color:var(--ceniza)}

/* --------------- Texto de la pieza --------------- */
.marva-pz .pz__info{display:flex;flex-direction:column;flex:1;align-items:center;gap:9px}
.marva-pz .pz__cat{font-family:var(--f-dato);font-size:10.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--ac)}
.marva-pz .pz__n{font-family:var(--f-cuerpo);font-weight:700;text-transform:none;
  font-size:16px;line-height:1.4;letter-spacing:0;flex:1;max-width:26ch;margin:0;
  color:var(--hueso)}
.marva-pz .pz__n a{color:inherit;text-decoration:none}
.marva-pz .pz__pie{display:flex;align-items:center;justify-content:center;gap:16px;
  flex-wrap:wrap;margin-top:4px}
.marva-pz .pz__precio,
.marva-pz .pz__precio .amount,
.marva-pz .pz__precio bdi{font-family:var(--f-dato);font-size:19px;font-weight:700;
  color:var(--hueso)}
.marva-pz .pz__precio del{opacity:.45;font-size:12px;font-weight:400}
.marva-pz .pz__precio ins{text-decoration:none;color:var(--amarillo)}

/* --------------- Boton --------------- */
body.marva-tienda .marva-pz .button,
body.marva-tienda .marva-pz .added_to_cart{
  font-family:var(--f-dato);font-size:10px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;background:var(--amarillo);color:var(--void);border:0;
  padding:12px 18px;border-radius:999px;cursor:pointer;line-height:1;margin:0;
  transition:background-color .25s,transform .2s,box-shadow .3s}
body.marva-tienda .marva-pz .button:hover{background:var(--hueso);
  transform:translate3d(0,-2px,0);box-shadow:0 10px 22px rgba(255,212,0,.28)}
body.marva-tienda .marva-pz .button.loading{opacity:.7}
body.marva-tienda .marva-pz .button.added{background:#B6FF00}
body.marva-tienda .marva-pz.outofstock .button{background:var(--humo);color:var(--ceniza)}

/* --------------- Barra de orden --------------- */
body.marva-tienda .woocommerce-ordering{margin:0 0 22px}
body.marva-tienda .woocommerce-ordering select{
  background:rgba(255,255,255,.04);border:1.6px solid var(--linea);border-radius:999px;
  color:var(--hueso);font-family:var(--f-dato);font-size:10.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;padding:11px 34px 11px 18px}
body.marva-tienda .woocommerce-ordering select:focus{outline:none;border-color:var(--amarillo)}

/* --------------- Paginacion --------------- */
body.marva-tienda .woocommerce-pagination{margin-top:clamp(48px,6vw,80px);
  padding-top:clamp(24px,3vw,36px);border-top:1px solid #302C3D;position:relative}
body.marva-tienda .woocommerce-pagination::before{content:'';position:absolute;
  left:50%;top:-2px;width:72px;height:3px;margin-left:-36px;background:var(--sangre)}
body.marva-tienda .woocommerce-pagination ul{border:0;display:flex;gap:9px;
  justify-content:center;align-items:center;margin:0;padding:0;flex-wrap:wrap}
body.marva-tienda .woocommerce-pagination ul li{border:0;margin:0;overflow:visible}

body.marva-tienda .woocommerce-pagination ul li a,
body.marva-tienda .woocommerce-pagination ul li span{
  min-width:46px;height:46px;padding:0 14px;
  display:flex;align-items:center;justify-content:center;
  background:#1C1A25;border:1.6px solid #35313F;border-radius:14px;
  font-family:var(--f-dato);font-size:13px;font-weight:700;color:var(--ceniza);
  line-height:1;text-decoration:none;
  transition:transform .3s var(--curva),box-shadow .3s var(--curva),
             background-color .25s,color .25s,border-color .25s}

/* La pagina actual es una calcomania */
body.marva-tienda .woocommerce-pagination ul li span.current{
  background:var(--hueso);border-color:var(--void);color:var(--void);
  box-shadow:4px 4px 0 var(--sangre);transform:rotate(-2deg)}

body.marva-tienda .woocommerce-pagination ul li a:hover{
  background:var(--amarillo);border-color:var(--void);color:var(--void);
  box-shadow:4px 4px 0 var(--void);transform:translate3d(0,-3px,0) rotate(1.5deg)}

/* Flechas: mas anchas y con su glifo */
body.marva-tienda .woocommerce-pagination ul li a.prev,
body.marva-tienda .woocommerce-pagination ul li a.next{
  padding:0 20px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  background:none;border-style:dashed;border-color:#3A3547;color:var(--hueso)}
body.marva-tienda .woocommerce-pagination ul li a.prev:hover,
body.marva-tienda .woocommerce-pagination ul li a.next:hover{
  background:var(--sangre);border-style:solid;border-color:var(--void);
  color:var(--hueso);box-shadow:4px 4px 0 var(--amarillo)}

/* Puntos suspensivos: sin caja */
body.marva-tienda .woocommerce-pagination ul li span.dots{
  background:none;border:0;color:#6E6878;min-width:20px;padding:0;
  box-shadow:none;transform:none}

@media(max-width:620px){
  body.marva-tienda .woocommerce-pagination{margin-top:40px;padding-top:22px}
  body.marva-tienda .woocommerce-pagination ul{gap:7px}
  body.marva-tienda .woocommerce-pagination ul li a,
  body.marva-tienda .woocommerce-pagination ul li span{min-width:42px;height:42px;
    padding:0 11px;font-size:12px;border-radius:12px}
  body.marva-tienda .woocommerce-pagination ul li a.prev,
  body.marva-tienda .woocommerce-pagination ul li a.next{padding:0 15px;font-size:10px}
}

/* --------------- Revelado --------------- */
.marva-rev{opacity:0;transform:translate3d(0,42px,0);
  transition:opacity .8s var(--curva),transform .8s var(--curva)}
.marva-rev.dentro{opacity:1;transform:none}

@media(prefers-reduced-motion:reduce){
  .marva-fondo__t,.marva-fondo__rejilla,.marva-hero__mq em,.marva-pz .pz__anillo{animation:none !important}
  .marva-rev{opacity:1;transform:none;transition:none}
}
@media(max-width:760px){
  .marva-fondo__rejilla{display:none}
  .marva-fondo__t.t3{display:none}
  .marva-fondo__grano{opacity:.22}
}

/* ==========================================================================
   CURSOR DE VINIL
   ========================================================================== */
html.marva-cursor-vivo body.marva-tienda *{cursor:none}
html.marva-cursor-vivo body.marva-tienda input,
html.marva-cursor-vivo body.marva-tienda textarea,
html.marva-cursor-vivo body.marva-tienda select{cursor:text}
.marva-gota{position:fixed;left:0;top:0;z-index:9993;pointer-events:none;border-radius:50%;
  width:var(--d);height:var(--d);margin:calc(var(--d) / -2) 0 0 calc(var(--d) / -2);
  background:var(--c);box-shadow:0 0 16px var(--c);opacity:.95;will-change:transform}
.marva-mira{position:fixed;left:0;top:0;z-index:9995;pointer-events:none;
  width:64px;height:64px;margin:-32px 0 0 -32px;will-change:transform}
.marva-mira__aro{position:absolute;inset:0;border:1.6px solid #F5F1E8;border-radius:50%;
  transform:scale(.5);
  transition:transform .45s cubic-bezier(.16,1,.3,1),border-color .3s,background-color .3s}
.marva-mira__x,.marva-mira__y{position:absolute;left:50%;top:50%;background:#F5F1E8;
  transition:opacity .3s,transform .45s cubic-bezier(.16,1,.3,1)}
.marva-mira__x{width:16px;height:1.6px;margin:-.8px 0 0 -8px}
.marva-mira__y{width:1.6px;height:16px;margin:-8px 0 0 -.8px}
.marva-mira.pega .marva-mira__aro{transform:scale(1.3);border-color:#FFD400;
  background:rgba(255,212,0,.14)}
.marva-mira.pega .marva-mira__x,.marva-mira.pega .marva-mira__y{opacity:0;transform:scale(2.4)}
.marva-etq{position:fixed;left:0;top:0;z-index:9996;pointer-events:none;
  font-family:'Space Mono',ui-monospace,monospace;font-size:13px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap;
  color:#08070A;background:#FFD400;padding:11px 16px;border-radius:999px;
  box-shadow:0 12px 28px rgba(0,0,0,.65),0 0 0 2px rgba(8,7,10,.9);opacity:0;
  transition:opacity .18s linear;will-change:transform}
.marva-etq.ver{opacity:1}
.marva-chispa{position:fixed;left:0;top:0;z-index:9994;pointer-events:none;border-radius:50%;
  width:6px;height:6px;margin:-3px 0 0 -3px}
@media(hover:none),(pointer:coarse){.marva-gota,.marva-mira,.marva-etq{display:none}}

/* ==========================================================================
   PRODUCTO INDIVIDUAL
   ========================================================================== */
/* El layout del producto lo maneja Blocksy. Aqui solo va lo cosmetico. */

/* Galeria: marco de calcomania, sin blob suelto */
body.marva-tienda .woocommerce-product-gallery{position:relative}
body.marva-tienda .woocommerce-product-gallery__wrapper{position:relative;z-index:1;
  border-radius:20px;overflow:hidden;border:3px solid var(--void);
  box-shadow:14px 14px 0 var(--sangre)}
body.marva-tienda .woocommerce-product-gallery img{width:100%;height:auto;display:block}
body.marva-tienda .woocommerce-product-gallery__trigger{z-index:5;border-radius:50%}
body.marva-tienda .flex-control-thumbs{position:relative;z-index:2;display:flex;gap:10px;
  flex-wrap:wrap;margin:26px 0 0;padding:0;list-style:none}
body.marva-tienda .flex-control-thumbs li{width:68px;margin:0}
body.marva-tienda .flex-control-thumbs img{border-radius:12px;border:2px solid var(--linea);
  opacity:.55;transition:opacity .25s,border-color .25s,transform .3s cubic-bezier(.16,1,.3,1)}
body.marva-tienda .flex-control-thumbs img:hover,
body.marva-tienda .flex-control-thumbs img.flex-active{opacity:1;border-color:var(--amarillo);
  transform:translate3d(0,-3px,0)}

/* Resumen */
.marva-single__k{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px;
  font-family:var(--f-dato);font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.marva-single__fol{color:var(--ceniza)}
.marva-single__cat{color:var(--ac);border:1.6px solid var(--ac);padding:7px 15px;border-radius:999px;
  font-weight:700}
body.marva-tienda .product_title{font-family:var(--f-display);text-transform:uppercase;
  font-size:clamp(28px,3.4vw,46px);line-height:1.06;letter-spacing:-.005em;
  color:var(--hueso);margin:0 0 20px;
  text-shadow:none;}
body.marva-tienda div.product p.price,
body.marva-tienda div.product span.price{font-family:var(--f-dato);font-size:30px;
  font-weight:700;color:var(--amarillo);margin:0 0 22px;line-height:1}
body.marva-tienda div.product p.price del{color:var(--ceniza);font-size:17px;opacity:.6}
body.marva-tienda div.product p.price ins{text-decoration:none;color:var(--amarillo)}
body.marva-tienda .woocommerce-product-details__short-description{color:var(--ceniza);
  font-size:16.5px;line-height:1.85;max-width:52ch;margin-bottom:28px}
body.marva-tienda .stock.in-stock{font-family:var(--f-dato);font-size:13px;letter-spacing:.16em;
  text-transform:uppercase;color:#B6FF00;font-weight:700}
body.marva-tienda .stock.out-of-stock{font-family:var(--f-dato);font-size:13px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--sangre);font-weight:700}

/* Cantidad y boton */
body.marva-tienda .quantity input.qty{background:rgba(255,255,255,.05);
  border:1.6px solid var(--linea);border-radius:999px;color:var(--hueso);
  font-family:var(--f-dato);font-size:14px;font-weight:700;padding:14px 10px;width:88px;
  text-align:center}
body.marva-tienda .quantity input.qty:focus{outline:none;border-color:var(--amarillo)}
body.marva-tienda .single_add_to_cart_button{font-family:var(--f-dato) !important;
  font-size:12px !important;font-weight:700 !important;letter-spacing:.16em !important;
  text-transform:uppercase !important;background:var(--sangre) !important;
  color:var(--hueso) !important;border:2px solid var(--void) !important;border-radius:999px !important;
  padding:17px 30px !important;box-shadow:6px 6px 0 var(--amarillo);transform:rotate(-1.4deg);
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),
             background-color .3s,color .3s}
body.marva-tienda .single_add_to_cart_button:hover{background:var(--amarillo) !important;
  color:var(--void) !important;box-shadow:2px 2px 0 var(--hueso);
  transform:rotate(0deg) translate3d(4px,4px,0)}

/* Variaciones */
body.marva-tienda table.variations th,
body.marva-tienda table.variations td{background:none;border:0;padding:8px 0}
body.marva-tienda table.variations label{font-family:var(--f-dato);font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ceniza)}
body.marva-tienda table.variations select{background:rgba(255,255,255,.05);
  border:1.6px solid var(--linea);border-radius:999px;color:var(--hueso);
  font-family:var(--f-dato);font-size:11px;padding:12px 34px 12px 18px}

/* El SKU y las categorias ya salen en la pastilla de arriba */
body.marva-tienda .product_meta{display:none}
body.marva-tienda div.product .woocommerce-product-rating{display:none}

/* Ficha y aviso legal */
.marva-ficha{border:1px solid var(--linea);border-radius:16px;overflow:hidden;margin-top:28px;
  background:rgba(17,16,23,.7)}
.marva-ficha__f{display:flex;justify-content:space-between;gap:18px;padding:17px 22px;
  border-bottom:1px solid var(--linea);font-family:var(--f-dato);font-size:15.5px}
.marva-ficha__f:last-child{border-bottom:0}
.marva-ficha__k{color:var(--ceniza);font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.marva-ficha__v{font-weight:700;color:var(--hueso);text-align:right}
.marva-legal{border:1px solid var(--sangre);padding:20px 22px;margin-top:16px;border-radius:16px;
  font-family:var(--f-dato);font-size:13.5px;line-height:1.8;color:var(--ceniza);
  background:rgba(255,30,30,.06)}
.marva-legal b{display:block;color:#FF5A46;letter-spacing:.2em;margin-bottom:10px;font-size:13px}

/* --------------- Descripcion y valoraciones --------------- */
body.marva-tienda .woocommerce-tabs{margin-top:clamp(48px,6vw,80px);
  padding-top:clamp(28px,4vw,44px);border-top:1px solid #302C3D;position:relative}
body.marva-tienda .woocommerce-tabs::before{content:'';position:absolute;left:0;top:-1px;
  width:96px;height:3px;background:var(--sangre)}

body.marva-tienda .woocommerce-tabs ul.tabs{display:flex;gap:10px;flex-wrap:wrap;
  padding:0;margin:0 0 32px;border:0}
body.marva-tienda .woocommerce-tabs ul.tabs::before{display:none}
body.marva-tienda .woocommerce-tabs ul.tabs li{background:none;border:1.6px solid #302C3D;
  border-radius:999px;margin:0;padding:0;
  transition:transform .3s var(--curva),border-color .25s}
body.marva-tienda .woocommerce-tabs ul.tabs li::before,
body.marva-tienda .woocommerce-tabs ul.tabs li::after{display:none}
body.marva-tienda .woocommerce-tabs ul.tabs li a{font-family:var(--f-dato);font-size:12px;
  font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--ceniza);
  padding:14px 24px;display:block}
body.marva-tienda .woocommerce-tabs ul.tabs li:hover{transform:translate3d(0,-3px,0);
  border-color:var(--amarillo)}
body.marva-tienda .woocommerce-tabs ul.tabs li:hover a{color:var(--amarillo)}
body.marva-tienda .woocommerce-tabs ul.tabs li.active{background:var(--hueso);
  border-color:var(--void);box-shadow:5px 5px 0 var(--sangre);transform:rotate(-1.2deg)}
body.marva-tienda .woocommerce-tabs ul.tabs li.active a{color:var(--void)}

/* Panel: caja de lectura ancha y comoda */
body.marva-tienda .woocommerce-tabs .panel{background:#15141C;border:1px solid #302C3D;
  border-radius:22px;padding:clamp(24px,3.4vw,44px);margin:0;
  color:var(--ceniza);font-size:16.5px;line-height:1.9}
body.marva-tienda .woocommerce-tabs .panel > h2:first-child{display:none}
body.marva-tienda .woocommerce-tabs .panel h2,
body.marva-tienda .woocommerce-tabs .panel h3{font-family:var(--f-display);
  text-transform:uppercase;font-size:24px;line-height:1.1;color:var(--hueso);
  margin:0 0 18px}
body.marva-tienda .woocommerce-tabs .panel p{margin:0 0 16px}
body.marva-tienda .woocommerce-tabs .panel p:last-child{margin-bottom:0}
body.marva-tienda .woocommerce-tabs .panel strong{color:var(--hueso)}
body.marva-tienda .woocommerce-tabs .panel a{color:var(--amarillo)}
body.marva-tienda .woocommerce-tabs .panel ul,
body.marva-tienda .woocommerce-tabs .panel ol{padding-left:22px;margin:0 0 16px}
body.marva-tienda .woocommerce-tabs .panel li{margin-bottom:8px}

/* Tabla de atributos */
body.marva-tienda table.shop_attributes{border:0;width:100%}
body.marva-tienda table.shop_attributes th,
body.marva-tienda table.shop_attributes td{border:0;border-bottom:1px solid #302C3D;
  padding:15px 4px;font-size:15.5px;background:none}
body.marva-tienda table.shop_attributes th{font-family:var(--f-dato);font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ceniza);width:34%;
  font-weight:400}
body.marva-tienda table.shop_attributes td{color:var(--hueso);font-style:normal}
body.marva-tienda table.shop_attributes td p{margin:0}

/* --------------- Valoraciones --------------- */
body.marva-tienda #reviews #comments > h2{font-family:var(--f-display);
  text-transform:uppercase;font-size:24px;color:var(--hueso);margin:0 0 24px}
body.marva-tienda .woocommerce-noreviews{color:var(--ceniza);font-size:16px;
  background:rgba(255,255,255,.04);border:1px dashed #3A3547;border-radius:16px;
  padding:22px 24px;margin:0 0 28px}

body.marva-tienda ol.commentlist{list-style:none;margin:0 0 32px;padding:0;
  display:flex;flex-direction:column;gap:16px}
body.marva-tienda ol.commentlist li{margin:0;padding:0}
body.marva-tienda ol.commentlist li .comment_container{display:flex;gap:18px;
  background:#1C1A25;border:1px solid #302C3D;border-radius:18px;
  padding:22px 24px;position:relative}
body.marva-tienda ol.commentlist li img.avatar{position:static;width:56px;height:56px;
  border-radius:50%;border:2px solid var(--sangre);padding:0;background:none;
  flex:0 0 auto}
body.marva-tienda ol.commentlist li .comment-text{margin:0;border:0;padding:0;flex:1}
body.marva-tienda .comment-text p.meta{font-family:var(--f-dato);font-size:12px;
  letter-spacing:.1em;color:var(--ceniza);margin:0 0 10px}
body.marva-tienda .comment-text p.meta strong{color:var(--hueso);font-size:15px;
  letter-spacing:0;font-family:var(--f-cuerpo)}
body.marva-tienda .comment-text .description{color:var(--ceniza);font-size:16px;
  line-height:1.85}
body.marva-tienda .comment-text .description p:last-child{margin-bottom:0}

/* Estrellas */
body.marva-tienda .star-rating span::before,
body.marva-tienda p.stars a::before{color:var(--amarillo)}
body.marva-tienda .star-rating::before{color:#3A3547}
body.marva-tienda .comment-form-rating label{font-family:var(--f-dato);font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ceniza);
  display:block;margin-bottom:10px}

/* Formulario de resena */
body.marva-tienda #review_form_wrapper{background:#15141C;border:1px solid #302C3D;
  border-radius:22px;padding:clamp(22px,3vw,36px)}
body.marva-tienda #reply-title{font-family:var(--f-display);text-transform:uppercase;
  font-size:22px;color:var(--hueso);display:block;margin:0 0 8px}
body.marva-tienda .comment-notes,
body.marva-tienda .comment-form-cookies-consent label{color:var(--ceniza);font-size:14.5px;
  line-height:1.8}
body.marva-tienda .comment-form label{font-family:var(--f-cuerpo);font-size:14.5px;
  color:var(--ceniza);display:block;margin-bottom:8px}
body.marva-tienda .comment-form input[type="text"],
body.marva-tienda .comment-form input[type="email"],
body.marva-tienda .comment-form textarea{width:100%;background:#1C1A25 !important;
  border:1.6px solid #35313F !important;border-radius:14px !important;
  color:var(--hueso) !important;font-family:var(--f-cuerpo);font-size:15px;
  padding:15px 18px !important}
body.marva-tienda .comment-form textarea{min-height:150px}
body.marva-tienda .comment-form input:focus,
body.marva-tienda .comment-form textarea:focus{border-color:var(--amarillo) !important;
  outline:none}
body.marva-tienda .comment-form .form-submit{margin-top:20px}
body.marva-tienda #submit.submit{font-family:var(--f-dato) !important;font-size:12px !important;
  font-weight:700 !important;letter-spacing:.16em !important;text-transform:uppercase !important;
  background:var(--sangre) !important;color:var(--hueso) !important;
  border:2px solid var(--void) !important;border-radius:999px !important;
  padding:16px 30px !important;box-shadow:6px 6px 0 var(--amarillo);
  transform:rotate(-1.4deg);cursor:pointer;
  transition:transform .3s var(--curva),box-shadow .3s var(--curva),
             background-color .3s,color .3s}
body.marva-tienda #submit.submit:hover{background:var(--amarillo) !important;
  color:var(--void) !important;box-shadow:2px 2px 0 var(--hueso);
  transform:rotate(0deg) translate3d(4px,4px,0)}

/* Relacionados */
body.marva-tienda .related.products,
body.marva-tienda .upsells.products{margin-top:clamp(48px,6vw,88px)}
body.marva-tienda .related.products > h2,
body.marva-tienda .upsells.products > h2,
body.marva-tienda .cross-sells > h2{font-family:var(--f-display);text-transform:uppercase;
  font-size:clamp(26px,3.2vw,44px);line-height:1;color:var(--hueso);margin:0 0 36px;
  text-shadow:2px 2px 0 rgba(193,13,13,.75)}
body.marva-tienda .related.products ul.products,
body.marva-tienda .upsells.products ul.products{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){
  body.marva-tienda .related.products ul.products,
  body.marva-tienda .upsells.products ul.products{grid-template-columns:repeat(2,1fr)}
}

/* ==========================================================================
   CARRITO, CHECKOUT Y MI CUENTA
   ========================================================================== */
body.marva-tienda .woocommerce-cart-form,
body.marva-tienda .woocommerce-checkout,
body.marva-tienda .woocommerce-account .woocommerce{color:var(--hueso)}
body.marva-tienda h1.entry-title,
body.marva-tienda .woocommerce-column__title,
body.marva-tienda #order_review_heading,
body.marva-tienda .woocommerce-billing-fields h3,
body.marva-tienda .woocommerce-additional-fields h3{font-family:var(--f-display);
  text-transform:uppercase;letter-spacing:-.01em;color:var(--hueso)}

body.marva-tienda table.shop_table{border:1px solid var(--linea);border-radius:16px;
  border-collapse:separate;border-spacing:0;overflow:hidden;background:rgba(17,16,23,.7)}
body.marva-tienda table.shop_table th{background:rgba(255,255,255,.03);
  font-family:var(--f-dato);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ceniza);border-bottom:1px solid var(--linea);padding:16px}
body.marva-tienda table.shop_table td{border-top:1px solid var(--linea);padding:16px;
  color:var(--hueso);font-size:14px}
body.marva-tienda table.shop_table .product-name a{font-family:var(--f-display);
  text-transform:uppercase;font-size:14px;color:var(--hueso)}
body.marva-tienda table.shop_table .product-name a:hover{color:var(--amarillo)}
body.marva-tienda table.shop_table img{border-radius:50%;border:2px solid var(--linea);
  width:62px;height:62px;object-fit:cover}
body.marva-tienda table.shop_table .amount{font-family:var(--f-dato);font-weight:700}
body.marva-tienda .cart_item .product-remove a.remove{color:var(--sangre) !important;
  background:none !important;font-size:22px}
body.marva-tienda .cart_item .product-remove a.remove:hover{color:var(--amarillo) !important}

body.marva-tienda .cart-collaterals .cart_totals,
body.marva-tienda #order_review,
body.marva-tienda .woocommerce-order,
body.marva-tienda .woocommerce-MyAccount-content{background:rgba(17,16,23,.7);
  border:1px solid var(--linea);border-radius:20px;padding:clamp(20px,3vw,32px)}
body.marva-tienda .cart_totals h2,
body.marva-tienda .cart-collaterals h2{font-family:var(--f-display);text-transform:uppercase;
  font-size:24px;color:var(--hueso);margin:0 0 18px}
body.marva-tienda .order-total .amount{color:var(--amarillo);font-size:20px}

/* Campos */
body.marva-tienda .woocommerce form .form-row label,
body.marva-tienda .woocommerce-form-login label{font-family:var(--f-dato);font-size:10px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ceniza);margin-bottom:8px}
body.marva-tienda input[type="text"],
body.marva-tienda input[type="email"],
body.marva-tienda input[type="tel"],
body.marva-tienda input[type="password"],
body.marva-tienda input[type="number"],
body.marva-tienda input[type="search"],
body.marva-tienda textarea,
body.marva-tienda .select2-container--default .select2-selection--single{
  background:rgba(255,255,255,.05) !important;border:1.6px solid var(--linea) !important;
  border-radius:14px !important;color:var(--hueso) !important;
  font-family:var(--f-cuerpo);font-size:14px;padding:14px 18px !important;
  height:auto !important;box-shadow:none !important}
body.marva-tienda textarea{border-radius:18px !important}
body.marva-tienda input:focus,
body.marva-tienda textarea:focus{outline:none;border-color:var(--amarillo) !important}
body.marva-tienda ::placeholder{color:#6E6878}
body.marva-tienda .select2-container--default .select2-selection--single
  .select2-selection__rendered{color:var(--hueso);line-height:1.6}
body.marva-tienda .select2-dropdown{background:var(--carbon);border-color:var(--linea);
  color:var(--hueso)}
body.marva-tienda .select2-container--default .select2-results__option--highlighted{
  background:var(--sangre)}

/* Botones generales */
body.marva-tienda .woocommerce a.button,
body.marva-tienda .woocommerce button.button,
body.marva-tienda .woocommerce input.button,
body.marva-tienda .woocommerce a.button.alt,
body.marva-tienda .woocommerce button.button.alt{
  font-family:var(--f-dato);font-size:11px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;background:var(--hueso);color:var(--void);
  border:2px solid var(--void);border-radius:999px;padding:15px 26px;
  box-shadow:6px 6px 0 var(--sangre);transform:rotate(1.2deg);
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),
             background-color .3s,color .3s}
body.marva-tienda .woocommerce a.button:hover,
body.marva-tienda .woocommerce button.button:hover,
body.marva-tienda .woocommerce input.button:hover{background:var(--void);color:var(--hueso);
  border-color:var(--hueso);box-shadow:2px 2px 0 var(--amarillo);
  transform:rotate(0deg) translate3d(4px,4px,0)}
body.marva-tienda .checkout-button,
body.marva-tienda #place_order{background:var(--sangre) !important;color:var(--hueso) !important;
  box-shadow:6px 6px 0 var(--amarillo) !important;transform:rotate(-1.4deg);
  font-size:12px !important;padding:18px 32px !important;width:100%}
body.marva-tienda .checkout-button:hover,
body.marva-tienda #place_order:hover{background:var(--amarillo) !important;
  color:var(--void) !important;box-shadow:2px 2px 0 var(--hueso) !important;
  transform:rotate(0deg) translate3d(4px,4px,0)}

/* Avisos */
body.marva-tienda .woocommerce-message,
body.marva-tienda .woocommerce-info,
body.marva-tienda .woocommerce-error{background:rgba(17,16,23,.85);
  border-top:3px solid var(--amarillo);border-radius:14px;color:var(--hueso);
  font-family:var(--f-dato);font-size:12px;line-height:1.9}
body.marva-tienda .woocommerce-error{border-top-color:var(--sangre)}
body.marva-tienda .woocommerce-message::before,
body.marva-tienda .woocommerce-info::before{color:var(--amarillo)}

/* Pagos y cupon */
body.marva-tienda #payment{background:none;border-radius:0}
body.marva-tienda #payment ul.payment_methods{border-bottom:1px solid var(--linea);padding:0 0 18px}
body.marva-tienda #payment ul.payment_methods li{list-style:none;
  font-family:var(--f-dato);font-size:12px;color:var(--hueso)}
body.marva-tienda #payment div.payment_box{background:rgba(255,255,255,.04);
  border-radius:14px;color:var(--ceniza);font-size:13px}
body.marva-tienda #payment div.payment_box::before{border-bottom-color:rgba(255,255,255,.04)}
body.marva-tienda .coupon input.input-text{max-width:220px}

/* ==========================================================================
   MI CUENTA
   ========================================================================== */
body.marva-tienda.woocommerce-account .woocommerce{
  display:grid;grid-template-columns:272px minmax(0,1fr);
  gap:clamp(20px,2.6vw,40px);align-items:start;
  max-width:1240px;margin-inline:auto}
@media(max-width:900px){
  body.marva-tienda.woocommerce-account .woocommerce{grid-template-columns:1fr}
}

/* --------------- Navegacion --------------- */
body.marva-tienda .woocommerce-MyAccount-navigation{
  background:#15141C;border:1px solid #302C3D;border-radius:20px;padding:12px;
  position:sticky;top:88px}
@media(max-width:900px){
  body.marva-tienda .woocommerce-MyAccount-navigation{position:static}
}
body.marva-tienda .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;gap:3px}
body.marva-tienda .woocommerce-MyAccount-navigation li{margin:0;padding:0;border:0;
  background:none !important}
body.marva-tienda .woocommerce-MyAccount-navigation li a{
  display:flex !important;align-items:center;gap:12px;
  background:none !important;border:0 !important;border-radius:12px !important;
  padding:13px 15px !important;
  font-family:var(--f-cuerpo) !important;font-size:14.5px !important;font-weight:500;
  letter-spacing:0 !important;text-transform:none !important;
  color:var(--ceniza) !important;text-decoration:none;box-shadow:none !important;
  transform:none !important;
  transition:background-color .22s,color .22s,transform .28s var(--curva)}
body.marva-tienda .woocommerce-MyAccount-navigation li a:hover{
  background:rgba(255,255,255,.06) !important;color:var(--hueso) !important;
  transform:translate3d(3px,0,0) !important}
body.marva-tienda .woocommerce-MyAccount-navigation li.is-active a{
  background:var(--sangre) !important;color:var(--hueso) !important;font-weight:700;
  box-shadow:4px 4px 0 var(--amarillo) !important}
body.marva-tienda .woocommerce-MyAccount-navigation li a svg,
body.marva-tienda .woocommerce-MyAccount-navigation li a img{
  width:18px;height:18px;flex:0 0 auto;opacity:.75}
body.marva-tienda .woocommerce-MyAccount-navigation li.is-active a svg{opacity:1}
/* La sesion se cierra en rojo, separada del resto */
body.marva-tienda .woocommerce-MyAccount-navigation li--customer-logout{
  margin-top:8px;padding-top:10px;border-top:1px solid #302C3D !important}
body.marva-tienda .woocommerce-MyAccount-navigation li--customer-logout a{
  color:var(--sangre) !important}
body.marva-tienda .woocommerce-MyAccount-navigation li--customer-logout a:hover{
  background:rgba(255,30,30,.12) !important;color:#FF5A46 !important}

/* --------------- Panel de contenido --------------- */
body.marva-tienda .woocommerce-MyAccount-content{
  background:#15141C;border:1px solid #302C3D;border-radius:20px;
  padding:clamp(22px,3vw,38px);color:var(--ceniza);font-size:15.5px;line-height:1.85;
  min-height:340px;position:relative}
body.marva-tienda .woocommerce-MyAccount-content::before{content:'';position:absolute;
  left:clamp(22px,3vw,38px);top:-1px;width:64px;height:3px;background:var(--sangre)}
body.marva-tienda .woocommerce-MyAccount-content p{margin:0 0 16px}
body.marva-tienda .woocommerce-MyAccount-content p:last-child{margin-bottom:0}
body.marva-tienda .woocommerce-MyAccount-content strong{color:var(--hueso)}
body.marva-tienda .woocommerce-MyAccount-content a{color:var(--amarillo);
  text-decoration:none;border-bottom:1px solid rgba(255,212,0,.35);
  transition:border-color .2s}
body.marva-tienda .woocommerce-MyAccount-content a:hover{border-color:var(--amarillo)}
body.marva-tienda .woocommerce-MyAccount-content h2,
body.marva-tienda .woocommerce-MyAccount-content h3,
body.marva-tienda .woocommerce-MyAccount-content legend{
  font-family:var(--f-display);text-transform:uppercase;font-size:21px;line-height:1.1;
  color:var(--hueso);margin:0 0 18px;letter-spacing:.01em}

/* Tabla de pedidos y descargas */
body.marva-tienda .woocommerce-MyAccount-content table.shop_table{
  background:none;border:0;border-radius:0}
body.marva-tienda .woocommerce-MyAccount-content table.shop_table th{
  background:none;border:0;border-bottom:1px solid #302C3D;padding:12px 10px;
  font-family:var(--f-dato);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:#9A92AC}
body.marva-tienda .woocommerce-MyAccount-content table.shop_table td{
  border:0;border-bottom:1px solid #26232F;padding:16px 10px;
  font-size:14.5px;color:var(--hueso)}
body.marva-tienda .woocommerce-MyAccount-content table.shop_table td.woocommerce-orders-table__cell-order-status{
  font-family:var(--f-dato);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--amarillo)}
body.marva-tienda .woocommerce-MyAccount-content table.shop_table .button{
  padding:10px 18px;font-size:10px;box-shadow:3px 3px 0 var(--sangre)}

/* Formularios de la cuenta */
body.marva-tienda .woocommerce-MyAccount-content form .form-row{margin:0 0 18px}
body.marva-tienda .woocommerce-MyAccount-content label{
  font-family:var(--f-cuerpo);font-size:14px;color:var(--ceniza);
  letter-spacing:0;text-transform:none;display:block;margin-bottom:8px}
body.marva-tienda .woocommerce-MyAccount-content input[type="text"],
body.marva-tienda .woocommerce-MyAccount-content input[type="email"],
body.marva-tienda .woocommerce-MyAccount-content input[type="tel"],
body.marva-tienda .woocommerce-MyAccount-content input[type="password"],
body.marva-tienda .woocommerce-MyAccount-content select{
  width:100%;background:#211E2B !important;border:1.6px solid #3D3849 !important;
  border-radius:13px !important;color:var(--hueso) !important;
  font-family:var(--f-cuerpo);font-size:15px;padding:14px 16px !important;
  height:auto !important}
body.marva-tienda .woocommerce-MyAccount-content input:focus,
body.marva-tienda .woocommerce-MyAccount-content select:focus{
  border-color:var(--amarillo) !important;outline:none;background:#272232 !important}
body.marva-tienda .woocommerce-MyAccount-content ::placeholder{color:#9A92AC;opacity:1}
body.marva-tienda .woocommerce-MyAccount-content fieldset{
  border:1px solid #302C3D;border-radius:16px;padding:22px;margin:24px 0}

/* Direcciones */
body.marva-tienda .woocommerce-Addresses{display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:8px}
body.marva-tienda .woocommerce-Address{background:#1C1A25;border:1px solid #302C3D;
  border-radius:16px;padding:20px;width:auto;float:none}
body.marva-tienda .woocommerce-Address address{font-style:normal;color:var(--ceniza);
  font-size:14.5px;line-height:1.85}
body.marva-tienda .woocommerce-Address-title{display:flex;align-items:center;
  justify-content:space-between;gap:12px;margin-bottom:12px}
body.marva-tienda .woocommerce-Address-title h2,
body.marva-tienda .woocommerce-Address-title h3{font-size:17px;margin:0}
body.marva-tienda .woocommerce-Address-title a.edit{font-family:var(--f-dato);
  font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--amarillo);
  border:0}

/* Login y registro */
body.marva-tienda .woocommerce-form-login,
body.marva-tienda .woocommerce-form-register{
  background:#15141C;border:1px solid #302C3D;border-radius:20px;
  padding:clamp(22px,3vw,36px);max-width:520px;margin-inline:auto}
body.marva-tienda .woocommerce-form-login__rememberme{color:var(--ceniza);font-size:14px}
body.marva-tienda .woocommerce-LostPassword a{color:var(--amarillo)}
body.marva-tienda.woocommerce-account:not(.logged-in) .woocommerce{
  grid-template-columns:1fr}

/* ==========================================================================
   TITULOS DE PAGINA
   El hero de Blocksy pinta "Carrito" y "Finalizar compra" en un gris que se
   pierde contra el fondo void.
   ========================================================================== */
body.marva-tienda .page-title,
body.marva-tienda .entry-title,
body.marva-tienda .wp-block-post-title,
body.marva-tienda .ct-title{font-family:var(--f-display) !important;
  text-transform:uppercase;letter-spacing:-.01em;
  color:var(--hueso) !important;
  text-shadow:2px 2px 0 rgba(193,13,13,.75)}
body.marva-tienda .woocommerce-breadcrumb,
body.marva-tienda .ct-breadcrumbs{font-family:var(--f-dato);font-size:9.5px;
  letter-spacing:.14em;text-transform:uppercase;color:#6E6878}
body.marva-tienda .woocommerce-breadcrumb a,
body.marva-tienda .ct-breadcrumbs a{color:var(--ceniza)}
body.marva-tienda .woocommerce-breadcrumb a:hover,
body.marva-tienda .ct-breadcrumbs a:hover{color:var(--amarillo)}

/* ==========================================================================
   CARRITO Y CHECKOUT EN BLOQUES (wc-block-*)
   Estas son las pantallas nuevas de WooCommerce. No comparten una sola clase
   con el carrito clasico, por eso hay que vestirlas aparte.
   ========================================================================== */
body.marva-tienda .wc-block-components-title,
body.marva-tienda .wp-block-woocommerce-cart-order-summary-heading-block,
body.marva-tienda .wc-block-cart__totals-title,
body.marva-tienda .wc-block-components-checkout-step__title{
  font-family:var(--f-display) !important;text-transform:uppercase !important;
  letter-spacing:.01em !important;color:var(--hueso) !important;font-weight:400 !important}
body.marva-tienda .wc-block-components-checkout-step__title{font-size:22px !important}
body.marva-tienda .wc-block-components-checkout-step__description{color:var(--ceniza);
  font-family:var(--f-dato);font-size:11px;letter-spacing:.06em}

/* Tabla de articulos */
body.marva-tienda .wc-block-cart-items{border:0}
body.marva-tienda .wc-block-cart-items__header{font-family:var(--f-dato);font-size:9.5px;
  letter-spacing:.2em;text-transform:uppercase;color:var(--ceniza);
  border-bottom:1px solid var(--linea)}
body.marva-tienda .wc-block-cart-items__row{border-top:1px solid var(--linea)}
body.marva-tienda .wc-block-cart-items__row::after{display:none}
body.marva-tienda .wc-block-cart-item__image img,
body.marva-tienda .wc-block-components-order-summary-item__image img{
  border-radius:14px;border:2px solid var(--linea)}
body.marva-tienda .wc-block-components-product-name{font-family:var(--f-display) !important;
  text-transform:uppercase;font-size:15px !important;line-height:1.25;
  color:var(--hueso) !important;text-decoration:none}
body.marva-tienda .wc-block-components-product-name:hover{color:var(--amarillo) !important}
body.marva-tienda .wc-block-components-product-metadata,
body.marva-tienda .wc-block-cart-item__product-metadata{color:var(--ceniza);
  font-family:var(--f-dato);font-size:10.5px}
body.marva-tienda .wc-block-components-product-price,
body.marva-tienda .wc-block-components-formatted-money-amount,
body.marva-tienda .wc-block-formatted-money-amount{
  font-family:var(--f-dato) !important;font-weight:700;color:var(--hueso)}
body.marva-tienda .wc-block-components-product-price__value{color:var(--hueso)}

/* Cantidad */
body.marva-tienda .wc-block-components-quantity-selector{
  background:rgba(255,255,255,.05);border:1.6px solid var(--linea);border-radius:999px;
  overflow:hidden}
body.marva-tienda .wc-block-components-quantity-selector::after{display:none}
body.marva-tienda .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{
  background:none;color:var(--hueso);font-family:var(--f-dato);font-weight:700;
  border:0;box-shadow:none}
body.marva-tienda .wc-block-components-quantity-selector__button{
  color:var(--ceniza);background:none;border:0;font-size:18px;
  transition:color .2s,background-color .2s}
body.marva-tienda .wc-block-components-quantity-selector__button:hover{
  color:var(--void);background:var(--amarillo)}
body.marva-tienda .wc-block-cart-item__remove-link{font-family:var(--f-dato);font-size:10px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--sangre) !important}
body.marva-tienda .wc-block-cart-item__remove-link:hover{color:var(--amarillo) !important}

/* Panel de totales y resumen */
body.marva-tienda .wp-block-woocommerce-cart-order-summary-block,
body.marva-tienda .wc-block-components-sidebar,
body.marva-tienda .wc-block-checkout__sidebar .wc-block-components-sidebar-layout,
body.marva-tienda .wc-block-checkout__sidebar > div{
  background:rgba(17,16,23,.72);border:1px solid var(--linea);border-radius:20px;
  padding:clamp(18px,2.4vw,28px)}
body.marva-tienda .wc-block-components-totals-wrapper{border-top-color:var(--linea)}
body.marva-tienda .wc-block-components-totals-item__label{font-family:var(--f-dato);
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ceniza)}
body.marva-tienda .wc-block-components-totals-item__value{font-family:var(--f-dato);
  font-weight:700;color:var(--hueso)}
body.marva-tienda .wc-block-components-totals-footer-item{border-top:1px solid var(--linea)}
body.marva-tienda .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  font-family:var(--f-display);font-size:18px;letter-spacing:0;color:var(--hueso)}
body.marva-tienda .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-size:22px;color:var(--amarillo)}
body.marva-tienda .wc-block-components-totals-item__description{color:#6E6878;
  font-family:var(--f-dato);font-size:10px}

/* Cupon plegable */
body.marva-tienda .wc-block-components-panel__button{font-family:var(--f-dato) !important;
  font-size:10.5px !important;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ceniza) !important}
body.marva-tienda .wc-block-components-panel__button:hover{color:var(--amarillo) !important}

/* Botones de bloque */
body.marva-tienda .wc-block-components-button:not(.is-link){
  font-family:var(--f-dato) !important;font-size:12px !important;font-weight:700 !important;
  letter-spacing:.16em !important;text-transform:uppercase !important;
  background:var(--sangre) !important;color:var(--hueso) !important;
  border:2px solid var(--void) !important;border-radius:999px !important;
  padding:18px 30px !important;box-shadow:6px 6px 0 var(--amarillo);
  transform:rotate(-1.2deg);
  transition:transform .3s var(--curva),box-shadow .3s var(--curva),
             background-color .3s,color .3s}
body.marva-tienda .wc-block-components-button:not(.is-link):hover{
  background:var(--amarillo) !important;color:var(--void) !important;
  box-shadow:2px 2px 0 var(--hueso);transform:rotate(0deg) translate3d(4px,4px,0)}
body.marva-tienda .wc-block-components-button__text{color:inherit}
body.marva-tienda .wc-block-components-button.is-link{color:var(--amarillo) !important;
  font-family:var(--f-dato);font-size:11px;letter-spacing:.12em;text-transform:uppercase}

/* Campos del checkout en bloques */
body.marva-tienda .wc-block-components-text-input input,
body.marva-tienda .wc-block-components-textarea,
body.marva-tienda .wc-block-components-combobox-control input,
body.marva-tienda .wc-block-components-form .wc-block-components-text-input input[type="text"],
body.marva-tienda .wc-block-components-select__container{
  background:rgba(255,255,255,.05) !important;border:1.6px solid var(--linea) !important;
  border-radius:14px !important;color:var(--hueso) !important;
  font-family:var(--f-cuerpo) !important;font-size:14px !important;
  box-shadow:none !important}
body.marva-tienda .wc-block-components-text-input input:focus,
body.marva-tienda .wc-block-components-combobox-control input:focus,
body.marva-tienda .wc-block-components-select__container:focus-within{
  border-color:var(--amarillo) !important;outline:none !important;box-shadow:none !important}
body.marva-tienda .wc-block-components-text-input label,
body.marva-tienda .wc-block-components-select__label{color:var(--ceniza) !important;
  font-family:var(--f-dato) !important;font-size:12px !important}
body.marva-tienda .wc-block-components-text-input.is-active label,
body.marva-tienda .wc-block-components-select__container .wc-block-components-select__label{
  font-size:10px !important;letter-spacing:.12em;text-transform:uppercase}
body.marva-tienda .wc-block-components-select select{background:none !important;
  color:var(--hueso) !important;font-family:var(--f-cuerpo) !important}
body.marva-tienda .wc-block-components-select__expand{fill:var(--ceniza)}

/* Casillas y radios */
body.marva-tienda .wc-block-components-checkbox__input,
body.marva-tienda .wc-block-components-radio-control__input{
  accent-color:var(--sangre);border-color:var(--linea) !important}
body.marva-tienda .wc-block-components-checkbox__label,
body.marva-tienda .wc-block-components-radio-control__label{color:var(--hueso);font-size:14px}
body.marva-tienda .wc-block-components-radio-control-accordion-option{
  border:1px solid var(--linea);border-radius:14px;margin-bottom:10px;
  background:rgba(255,255,255,.03)}
body.marva-tienda .wc-block-components-radio-control__option{color:var(--hueso)}

/* Avisos, envio y separadores */
body.marva-tienda .wc-block-components-shipping-rates-control,
body.marva-tienda .wc-block-components-shipping-address{color:var(--ceniza);
  font-family:var(--f-dato);font-size:12px}
body.marva-tienda .wc-block-components-notice-banner{
  background:rgba(17,16,23,.9) !important;border-color:var(--amarillo) !important;
  border-radius:14px;color:var(--hueso) !important}
body.marva-tienda .wc-block-components-notice-banner.is-error{border-color:var(--sangre) !important}
body.marva-tienda .wc-block-checkout__form hr,
body.marva-tienda .wc-block-components-checkout-step{border-color:var(--linea)}
body.marva-tienda .wc-block-checkout__actions_row a{color:var(--amarillo)}
body.marva-tienda .wc-block-components-order-summary__button-text{color:var(--hueso)}
body.marva-tienda .wc-block-components-address-card{border-color:var(--linea);
  color:var(--hueso)}
body.marva-tienda .wc-block-components-address-card__edit{color:var(--amarillo) !important}

/* Carrito vacio */
body.marva-tienda .wp-block-woocommerce-empty-cart-block{text-align:center}
body.marva-tienda .wp-block-woocommerce-empty-cart-block h2{font-family:var(--f-display);
  text-transform:uppercase;color:var(--hueso)}

/* ==========================================================================
   CONTRASTE EN CARRITO Y CHECKOUT
   Space Mono en mayusculas a bajo contraste no se lee. Aqui se sube el
   contraste, se baja el uso de mayusculas en textos largos y se separan
   los bloques con superficies mas claras que el fondo.
   ========================================================================== */
body.marva-tienda.woocommerce-cart .wp-block-woocommerce-cart,
body.marva-tienda.woocommerce-checkout .wp-block-woocommerce-checkout{
  max-width:1240px;margin-inline:auto;padding-block:clamp(16px,3vw,40px)}

/* Tarjetas de panel: superficie mas clara para despegarlas del fondo */
body.marva-tienda .wp-block-woocommerce-cart-order-summary-block,
body.marva-tienda .wc-block-components-sidebar,
body.marva-tienda .wc-block-checkout__sidebar > div,
body.marva-tienda .wc-block-components-order-summary{
  background:#15141C !important;border:1px solid #302C3D !important;
  border-radius:20px;padding:clamp(18px,2.4vw,28px)}

/* Textos: nada de mayusculas en frases largas */
body.marva-tienda .wc-block-components-totals-item__label,
body.marva-tienda .wc-block-components-totals-item__description,
body.marva-tienda .wc-block-components-product-metadata,
body.marva-tienda .wc-block-cart-item__product-metadata,
body.marva-tienda .wc-block-components-shipping-rates-control,
body.marva-tienda .wc-block-components-shipping-address{
  text-transform:none !important;letter-spacing:.01em !important;
  font-family:var(--f-cuerpo) !important;font-size:13.5px !important;
  color:var(--ceniza) !important}
body.marva-tienda .wc-block-components-totals-item__label{font-size:14px !important;
  color:var(--hueso) !important}
body.marva-tienda .wc-block-components-totals-item__description{
  font-size:12px !important;color:var(--ceniza-2) !important}

/* Encabezados de tabla y de paso */
body.marva-tienda .wc-block-cart-items__header,
body.marva-tienda .wc-block-cart-items__header th{
  font-family:var(--f-dato) !important;font-size:10px !important;letter-spacing:.18em;
  text-transform:uppercase;color:var(--ceniza) !important;
  border-bottom:1px solid #302C3D !important}
body.marva-tienda .wc-block-components-checkout-step__title{
  font-size:clamp(19px,2.2vw,26px) !important;color:var(--hueso) !important;
  text-shadow:2px 2px 0 rgba(193,13,13,.7)}
body.marva-tienda .wc-block-components-checkout-step{
  border-color:#302C3D;padding-block:clamp(14px,2vw,22px)}

/* Nombre y precio de cada pieza */
body.marva-tienda .wc-block-components-product-name{
  font-size:16px !important;letter-spacing:.01em;color:var(--hueso) !important}
body.marva-tienda .wc-block-components-product-price,
body.marva-tienda .wc-block-components-formatted-money-amount{
  font-size:15px !important;color:var(--hueso) !important}
body.marva-tienda .wc-block-cart-item__image img,
body.marva-tienda .wc-block-components-order-summary-item__image img{
  border-radius:14px;border:2px solid #302C3D;width:72px;height:72px;object-fit:cover}

/* Total: el unico numero grande de la pantalla */
body.marva-tienda .wc-block-components-totals-footer-item{
  border-top:1px solid #302C3D;margin-top:8px;padding-top:16px}
body.marva-tienda .wc-block-components-totals-footer-item
  .wc-block-components-totals-item__label{
  font-family:var(--f-display) !important;font-size:20px !important;
  text-transform:uppercase;letter-spacing:.01em;color:var(--hueso) !important}
body.marva-tienda .wc-block-components-totals-footer-item
  .wc-block-components-totals-item__value{
  font-size:26px !important;color:var(--amarillo) !important}

/* Campos: fondo mas claro y etiqueta legible */
body.marva-tienda .wc-block-components-text-input input,
body.marva-tienda .wc-block-components-textarea,
body.marva-tienda .wc-block-components-combobox-control input,
body.marva-tienda .wc-block-components-select__container{
  background:#1C1A25 !important;border:1.6px solid #35313F !important;
  border-radius:14px !important;color:var(--hueso) !important;
  font-family:var(--f-cuerpo) !important;font-size:15px !important;
  padding:16px 18px !important;min-height:56px}
body.marva-tienda .wc-block-components-text-input label,
body.marva-tienda .wc-block-components-select__label{
  color:var(--ceniza) !important;font-family:var(--f-cuerpo) !important;
  font-size:14px !important;text-transform:none !important;letter-spacing:0 !important}
body.marva-tienda .wc-block-components-text-input.is-active label,
body.marva-tienda .wc-block-components-text-input:focus-within label{
  color:var(--amarillo) !important;font-size:11px !important}
body.marva-tienda .wc-block-components-text-input input:focus,
body.marva-tienda .wc-block-components-combobox-control input:focus,
body.marva-tienda .wc-block-components-select__container:focus-within{
  border-color:var(--amarillo) !important;background:#211E2B !important}
body.marva-tienda .wc-block-components-checkbox__label,
body.marva-tienda .wc-block-components-radio-control__label,
body.marva-tienda .wc-block-components-address-card{
  color:var(--hueso) !important;font-size:14.5px}
body.marva-tienda .wc-block-components-address-card{border-color:#302C3D}

/* Opciones de envio y pago */
body.marva-tienda .wc-block-components-radio-control-accordion-option,
body.marva-tienda .wc-block-components-shipping-rates-control__package{
  border:1px solid #302C3D;border-radius:16px;background:#15141C;
  margin-bottom:12px;padding:4px 6px}
body.marva-tienda .wc-block-components-shipping-rates-control__no-results-notice{
  color:var(--ceniza) !important;text-transform:none !important;
  font-family:var(--f-cuerpo) !important}

/* Cupon */
body.marva-tienda .wc-block-components-panel__button{
  font-family:var(--f-cuerpo) !important;font-size:14px !important;
  letter-spacing:0 !important;text-transform:none !important;
  color:var(--hueso) !important}
body.marva-tienda .wc-block-components-panel__button:hover{color:var(--amarillo) !important}

/* Boton de pago: uno solo, grande, imposible de perder */
body.marva-tienda .wc-block-cart__submit-button,
body.marva-tienda .wc-block-components-checkout-place-order-button{
  width:100%;font-size:13px !important;padding:20px 30px !important;
  margin-top:18px;transform:rotate(-1deg)}


@media(max-width:520px){
  .marva-pz .pz__n{font-size:13.5px;line-height:1.35;max-width:none}
  .marva-pz .pz__cat{font-size:9px;letter-spacing:.12em}
  .marva-pz .pz__precio,
  .marva-pz .pz__precio .amount,
  .marva-pz .pz__precio bdi{font-size:15px}
  .marva-pz .pz__fol{font-size:9px}
  .marva-pz .pz__pie{gap:8px}
  body.marva-tienda .marva-pz .button,
  body.marva-tienda .marva-pz .added_to_cart{padding:10px 13px;font-size:9px;
    letter-spacing:.1em}
  body.marva-archivo .marva-loop{padding-bottom:96px}
}

@media(max-width:1000px){
  .marva-hero{padding:16px 0 10px;margin-bottom:10px}
  .marva-hero__d{margin-top:8px;font-size:10px;letter-spacing:.18em}
  .marva-hero__estrella{display:none}
  body.marva-archivo .marva-loop{padding-top:0}
  .marva-resumen{margin-bottom:14px;padding-bottom:10px}
}
@media(max-width:620px){
  .marva-hero{padding:10px 0 6px;margin-bottom:6px}
  .marva-hero__t{font-size:clamp(30px,10vw,44px)}
}

/* ==========================================================================
   PAGINACION DE BLOCKSY Y DE BLOQUES
   La rejilla no usa .woocommerce-pagination sino .ct-pagination (Blocksy)
   o .wp-block-query-pagination (bloques). Se visten las tres.
   ========================================================================== */
body.marva-tienda .ct-pagination,
body.marva-tienda .wp-block-query-pagination{
  margin-top:clamp(48px,6vw,80px);padding-top:clamp(24px,3vw,36px);
  border-top:1px solid #302C3D;position:relative;
  display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap}
body.marva-tienda .ct-pagination::before,
body.marva-tienda .wp-block-query-pagination::before{content:'';position:absolute;
  left:50%;top:-2px;width:72px;height:3px;margin-left:-36px;background:var(--sangre)}

body.marva-tienda .ct-pagination .page-numbers,
body.marva-tienda .ct-pagination > a,
body.marva-tienda .ct-pagination > span,
body.marva-tienda .wp-block-query-pagination .page-numbers,
body.marva-tienda .wp-block-query-pagination-numbers a,
body.marva-tienda .wp-block-query-pagination-numbers span{
  min-width:48px !important;height:48px !important;padding:0 14px !important;
  display:inline-flex !important;align-items:center;justify-content:center;
  background:#1C1A25 !important;border:1.6px solid #35313F !important;
  border-radius:14px !important;
  font-family:var(--f-dato) !important;font-size:13.5px !important;font-weight:700 !important;
  color:var(--ceniza) !important;line-height:1 !important;text-decoration:none !important;
  box-shadow:none;
  transition:transform .3s var(--curva),box-shadow .3s var(--curva),
             background-color .25s,color .25s,border-color .25s}

/* Pagina actual: calcomania */
body.marva-tienda .ct-pagination .page-numbers.current,
body.marva-tienda .ct-pagination span.current,
body.marva-tienda .wp-block-query-pagination-numbers .current{
  background:var(--hueso) !important;border-color:var(--void) !important;
  color:var(--void) !important;
  box-shadow:4px 4px 0 var(--sangre) !important;transform:rotate(-2.5deg)}

body.marva-tienda .ct-pagination a.page-numbers:hover,
body.marva-tienda .ct-pagination > a:hover,
body.marva-tienda .wp-block-query-pagination-numbers a:hover{
  background:var(--amarillo) !important;border-color:var(--void) !important;
  color:var(--void) !important;
  box-shadow:4px 4px 0 var(--void) !important;
  transform:translate3d(0,-3px,0) rotate(1.8deg)}

/* Anterior y siguiente */
body.marva-tienda .ct-pagination .prev,
body.marva-tienda .ct-pagination .next,
body.marva-tienda .wp-block-query-pagination-previous,
body.marva-tienda .wp-block-query-pagination-next{
  padding:0 22px !important;font-size:11px !important;letter-spacing:.15em !important;
  text-transform:uppercase !important;background:none !important;
  border:1.6px dashed #3A3547 !important;color:var(--hueso) !important;gap:9px}
body.marva-tienda .ct-pagination .prev:hover,
body.marva-tienda .ct-pagination .next:hover,
body.marva-tienda .wp-block-query-pagination-previous:hover,
body.marva-tienda .wp-block-query-pagination-next:hover{
  background:var(--sangre) !important;border-style:solid !important;
  border-color:var(--void) !important;color:var(--hueso) !important;
  box-shadow:4px 4px 0 var(--amarillo) !important}
body.marva-tienda .ct-pagination svg{width:13px;height:13px;fill:currentColor}

/* Puntos suspensivos */
body.marva-tienda .ct-pagination .dots,
body.marva-tienda .wp-block-query-pagination-numbers .dots{
  background:none !important;border:0 !important;min-width:22px !important;
  padding:0 !important;color:#6E6878 !important;box-shadow:none !important;
  transform:none !important}

@media(max-width:620px){
  body.marva-tienda .ct-pagination,
  body.marva-tienda .wp-block-query-pagination{gap:7px;margin-top:40px;padding-top:22px}
  body.marva-tienda .ct-pagination .page-numbers,
  body.marva-tienda .wp-block-query-pagination-numbers a,
  body.marva-tienda .wp-block-query-pagination-numbers span{
    min-width:42px !important;height:42px !important;padding:0 11px !important;
    font-size:12px !important;border-radius:12px !important}
  body.marva-tienda .ct-pagination .prev,
  body.marva-tienda .ct-pagination .next{padding:0 15px !important;font-size:10px !important}
}

/* ==========================================================================
   CHECKOUT: contraste real y vida
   Las etiquetas flotantes de los bloques se quedan en el gris nativo y
   desaparecen sobre fondo oscuro. Aqui se fuerzan todas.
   ========================================================================== */
body.marva-tienda .wc-block-components-text-input label,
body.marva-tienda .wc-block-components-text-input.is-active label,
body.marva-tienda .wc-block-components-combobox label,
body.marva-tienda .wc-block-components-combobox-control label,
body.marva-tienda .wc-block-components-select__label,
body.marva-tienda .wc-block-components-form .wc-block-components-text-input label{
  color:#B7AFC7 !important;opacity:1 !important;font-weight:500}
body.marva-tienda .wc-block-components-text-input.is-active label,
body.marva-tienda .wc-block-components-combobox.is-active label,
body.marva-tienda .wc-block-components-select__container .wc-block-components-select__label{
  color:var(--amarillo) !important;font-size:11.5px !important;
  letter-spacing:.08em;text-transform:uppercase;font-weight:700}

/* El valor elegido, no el marcador de posicion */
body.marva-tienda .wc-block-components-combobox-control input,
body.marva-tienda .wc-block-components-select select,
body.marva-tienda .wc-block-components-text-input input{
  color:var(--hueso) !important;-webkit-text-fill-color:var(--hueso) !important}
body.marva-tienda .wc-block-components-form ::placeholder{
  color:#9A92AC !important;opacity:1 !important}
body.marva-tienda .wc-block-components-combobox-control .components-form-token-field__input{
  color:var(--hueso) !important}

/* Autocompletado del navegador: fuera el fondo blanco */
body.marva-tienda input:-webkit-autofill,
body.marva-tienda input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--hueso) !important;
  -webkit-box-shadow:0 0 0 60px #211E2B inset !important;
  caret-color:var(--hueso)}

/* Campos: acento de color y foco animado */
body.marva-tienda .wc-block-components-text-input,
body.marva-tienda .wc-block-components-combobox,
body.marva-tienda .wc-block-components-select{position:relative}
body.marva-tienda .wc-block-components-text-input input,
body.marva-tienda .wc-block-components-combobox-control input,
body.marva-tienda .wc-block-components-select__container{
  background:#211E2B !important;border:1.6px solid #3D3849 !important;
  transition:border-color .25s,background-color .25s,box-shadow .25s,transform .25s}
body.marva-tienda .wc-block-components-text-input input:hover,
body.marva-tienda .wc-block-components-combobox-control input:hover{
  border-color:#4E4760 !important}
body.marva-tienda .wc-block-components-text-input input:focus,
body.marva-tienda .wc-block-components-combobox-control input:focus,
body.marva-tienda .wc-block-components-select__container:focus-within{
  border-color:var(--amarillo) !important;background:#272232 !important;
  box-shadow:0 0 0 3px rgba(255,212,0,.16) !important;
  transform:translate3d(0,-1px,0)}

/* Pasos numerados con acento */
body.marva-tienda .wc-block-components-checkout-step{
  position:relative;padding-left:0}
body.marva-tienda .wc-block-components-checkout-step__title-wrapper{
  position:relative;padding-left:16px;margin-bottom:6px}
body.marva-tienda .wc-block-components-checkout-step__title-wrapper::before{
  content:'';position:absolute;left:0;top:50%;width:5px;height:22px;
  margin-top:-11px;border-radius:99px;background:var(--sangre);
  transition:background-color .3s,height .3s}
body.marva-tienda .wc-block-components-checkout-step:focus-within
  .wc-block-components-checkout-step__title-wrapper::before{
  background:var(--amarillo);height:30px;margin-top:-15px}

/* Casillas y radios en color de casa */
body.marva-tienda .wc-block-components-checkbox__input[type="checkbox"],
body.marva-tienda .wc-block-components-radio-control__input{
  accent-color:var(--sangre) !important;width:20px;height:20px;
  border:1.6px solid #4E4760 !important;background:#211E2B !important}
body.marva-tienda .wc-block-components-checkbox__mark{fill:var(--hueso)}
body.marva-tienda .wc-block-components-radio-control-accordion-option{
  transition:border-color .25s,background-color .25s,transform .3s var(--curva)}
body.marva-tienda .wc-block-components-radio-control-accordion-option:hover{
  border-color:#4E4760;transform:translate3d(0,-2px,0)}
body.marva-tienda .wc-block-components-radio-control__option--checked-option-highlighted,
body.marva-tienda .wc-block-components-radio-control-accordion-option:has(:checked){
  border-color:var(--sangre);background:rgba(255,30,30,.07)}

/* Panel lateral: acento arriba y total que respira */
body.marva-tienda .wc-block-checkout__sidebar > div,
body.marva-tienda .wp-block-woocommerce-cart-order-summary-block{position:relative}
body.marva-tienda .wc-block-checkout__sidebar > div::before,
body.marva-tienda .wp-block-woocommerce-cart-order-summary-block::before{
  content:'';position:absolute;left:clamp(18px,2.4vw,28px);top:-1px;
  width:58px;height:3px;background:var(--sangre)}
body.marva-tienda .wc-block-components-totals-footer-item
  .wc-block-components-totals-item__value{
  animation:marva-latido 3.2s ease-in-out infinite}
@keyframes marva-latido{
  0%,100%{text-shadow:0 0 0 rgba(255,212,0,0)}
  50%{text-shadow:0 0 22px rgba(255,212,0,.42)}
}

/* Miniatura del resumen con su marco */
body.marva-tienda .wc-block-components-order-summary-item{
  transition:background-color .25s;border-radius:14px;padding:10px}
body.marva-tienda .wc-block-components-order-summary-item:hover{
  background:rgba(255,255,255,.04)}
body.marva-tienda .wc-block-components-order-summary-item__quantity{
  background:var(--sangre) !important;border-color:var(--void) !important;
  color:var(--hueso) !important;font-family:var(--f-dato);font-weight:700}

/* Boton de pago con brillo que cruza */
body.marva-tienda .wc-block-components-checkout-place-order-button,
body.marva-tienda .wc-block-cart__submit-button{position:relative;overflow:hidden}
body.marva-tienda .wc-block-components-checkout-place-order-button::after,
body.marva-tienda .wc-block-cart__submit-button::after{
  content:'';position:absolute;top:0;left:-60%;width:40%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);
  transform:skewX(-18deg);animation:marva-brillo 4.5s ease-in-out infinite}
@keyframes marva-brillo{
  0%,72%{left:-60%}
  100%{left:130%}
}

/* Avisos con entrada */
body.marva-tienda .wc-block-components-notice-banner{
  animation:marva-entra .45s var(--curva) both}
@keyframes marva-entra{
  from{opacity:0;transform:translate3d(0,-10px,0)}
}

/* Cargando */
body.marva-tienda .wc-block-components-spinner::before{border-top-color:var(--amarillo)}

@media(prefers-reduced-motion:reduce){
  body.marva-tienda .wc-block-components-totals-footer-item
    .wc-block-components-totals-item__value,
  body.marva-tienda .wc-block-components-checkout-place-order-button::after,
  body.marva-tienda .wc-block-cart__submit-button::after{animation:none}
}

/* ==========================================================================
   CHECKOUT: correcciones
   1. Las cajas del panel lateral iban a .wc-block-checkout__sidebar > div,
      que tambien atrapa envoltorios vacios de WooCommerce y los pinta como
      tarjetas fantasma. Ahora se apunta solo al bloque de resumen.
   2. El placeholder estaba limitado a .wc-block-components-form y no cubria
      los campos de direccion.
   ========================================================================== */

/* --- 1. Fuera las tarjetas fantasma --- */
body.marva-tienda .wc-block-checkout__sidebar > div,
body.marva-tienda .wc-block-components-sidebar,
body.marva-tienda .wc-block-components-sidebar > div{
  background:none !important;border:0 !important;border-radius:0 !important;
  padding:0 !important}
body.marva-tienda .wc-block-checkout__sidebar > div::before,
body.marva-tienda .wc-block-components-sidebar::before,
body.marva-tienda .wc-block-components-sidebar > div::before{content:none !important}

/* Solo el bloque de resumen es una tarjeta */
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-block,
body.marva-tienda .wp-block-woocommerce-cart-order-summary-block{
  position:relative;
  background:#15141C !important;border:1px solid #302C3D !important;
  border-radius:20px !important;padding:clamp(18px,2.4vw,28px) !important}
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-block::before,
body.marva-tienda .wp-block-woocommerce-cart-order-summary-block::before{
  content:'' !important;position:absolute;left:clamp(18px,2.4vw,28px);top:-1px;
  width:58px;height:3px;background:var(--sangre)}

/* Los sub-bloques del resumen no llevan caja propia */
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-block > div,
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-cart-items-block,
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-totals-block,
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-subtotal-item-block,
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-shipping-block,
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-coupon-form-block{
  background:none !important;border:0 !important;padding:0 !important}
body.marva-tienda .wp-block-woocommerce-checkout-order-summary-block > div::before{
  content:none !important}

/* La pieza dentro del resumen: caja discreta, sin doble borde */
body.marva-tienda .wc-block-components-order-summary__content{
  background:rgba(255,255,255,.03);border:1px solid #26232F;border-radius:14px;
  padding:8px}

/* --- 2. Placeholders y etiquetas legibles --- */
body.marva-tienda input::placeholder,
body.marva-tienda textarea::placeholder,
body.marva-tienda .wc-block-components-text-input input::placeholder,
body.marva-tienda .wc-block-components-combobox-control input::placeholder{
  color:#A79FB8 !important;opacity:1 !important}

body.marva-tienda .wc-block-components-text-input label,
body.marva-tienda .wc-block-components-combobox label,
body.marva-tienda .wc-block-components-select__label{
  color:#A79FB8 !important;opacity:1 !important}
body.marva-tienda .wc-block-components-text-input.is-active label,
body.marva-tienda .wc-block-components-text-input:focus-within label,
body.marva-tienda .wc-block-components-combobox.is-active label{
  color:var(--amarillo) !important}

/* Un campo con valor no debe verse mas apagado que uno vacio */
body.marva-tienda .wc-block-components-text-input input,
body.marva-tienda .wc-block-components-combobox-control input,
body.marva-tienda .wc-block-components-select select{
  color:var(--hueso) !important;-webkit-text-fill-color:var(--hueso) !important;
  opacity:1 !important}

/* ==========================================================================
   CHECKOUT: los combobox (Pais/Region y Region/Estado)
   No usan clases wc-block-components-* sino las del componente
   ComboboxControl de WordPress, con prefijo components-*.
   ========================================================================== */

/* Etiqueta flotante del combobox */
body.marva-tienda .components-base-control__label,
body.marva-tienda .wc-block-components-combobox-control label,
body.marva-tienda .wc-block-components-combobox-control .components-base-control__label,
body.marva-tienda .wc-blocks-components-select__label,
body.marva-tienda .wc-blocks-components-select .components-base-control__label{
  color:#B9B2C6 !important;opacity:1 !important}

body.marva-tienda .wc-block-components-combobox.is-active .components-base-control__label,
body.marva-tienda .wc-block-components-combobox-control:focus-within .components-base-control__label,
body.marva-tienda .wc-blocks-components-select:focus-within .wc-blocks-components-select__label{
  color:var(--amarillo) !important}

/* Valor elegido dentro del combobox */
body.marva-tienda .components-combobox-control__input,
body.marva-tienda .components-form-token-field__input,
body.marva-tienda .wc-block-components-combobox-control .components-combobox-control__input,
body.marva-tienda .wc-blocks-components-select__select,
body.marva-tienda .wc-blocks-components-select select{
  color:var(--hueso) !important;
  -webkit-text-fill-color:var(--hueso) !important;
  opacity:1 !important;
  background:none !important;
  font-family:var(--f-cuerpo) !important;font-size:15px !important}

/* La caja del combobox comparte el estilo de los demas campos */
body.marva-tienda .wc-block-components-combobox-control,
body.marva-tienda .components-combobox-control,
body.marva-tienda .wc-blocks-components-select__container{
  background:#211E2B !important;border:1.6px solid #3D3849 !important;
  border-radius:14px !important;box-shadow:none !important}
body.marva-tienda .wc-block-components-combobox-control:focus-within,
body.marva-tienda .wc-blocks-components-select__container:focus-within{
  border-color:var(--amarillo) !important;background:#272232 !important}

/* Sugerencias desplegables */
body.marva-tienda .components-form-token-field__suggestions-list,
body.marva-tienda .components-combobox-control__suggestions-container ul{
  background:#15141C !important;border:1px solid #3D3849 !important;
  border-radius:14px;color:var(--hueso) !important}
body.marva-tienda .components-form-token-field__suggestion{
  color:var(--ceniza) !important;font-size:14px}
body.marva-tienda .components-form-token-field__suggestion.is-selected,
body.marva-tienda .components-form-token-field__suggestion:hover{
  background:var(--sangre) !important;color:var(--hueso) !important}

/* Placeholders: un tono mas claro en toda la tienda */
body.marva-tienda input::placeholder,
body.marva-tienda textarea::placeholder,
body.marva-tienda .components-combobox-control__input::placeholder,
body.marva-tienda .components-form-token-field__input::placeholder{
  color:#B9B2C6 !important;opacity:1 !important}

/* La cabecera se dibuja en assets/header.css con marcado propio. */

/* ==========================================================================
   TARJETAS FUERA DEL CATALOGO
   Carrito vacio, relacionados y cross-sells tambien pintan productos:
   ahi Blocksy metia su propio boton azul.
   ========================================================================== */
body.marva-tienda .wp-block-woocommerce-empty-cart-block ul.products,
body.marva-tienda .cross-sells ul.products,
body.marva-tienda .wc-block-grid__products{
  display:grid;grid-template-columns:repeat(4,1fr);gap:44px 20px;
  margin:0;padding:0;list-style:none}
@media(max-width:1080px){
  body.marva-tienda .wp-block-woocommerce-empty-cart-block ul.products,
  body.marva-tienda .cross-sells ul.products,
  body.marva-tienda .wc-block-grid__products{grid-template-columns:repeat(2,1fr)}
}

body.marva-tienda .wc-block-grid__product{background:none;border:0;padding:0}
body.marva-tienda .wc-block-grid__product-title{
  font-family:var(--f-cuerpo) !important;font-weight:700;font-size:15px;
  color:var(--hueso)}
body.marva-tienda .wc-block-grid__product-price{
  font-family:var(--f-dato) !important;font-weight:700;color:var(--sangre)}

/* Cualquier boton de producto suelto adopta la pildora amarilla */
body.marva-tienda .products .button,
body.marva-tienda .wc-block-grid__product .wp-block-button__link,
body.marva-tienda .wc-block-grid__product .add_to_cart_button{
  font-family:var(--f-dato) !important;font-size:10px !important;
  font-weight:700 !important;letter-spacing:.14em !important;
  text-transform:uppercase !important;
  background:var(--amarillo) !important;color:var(--void) !important;
  border:0 !important;border-radius:999px !important;
  padding:12px 18px !important;line-height:1 !important;
  transition:background-color .25s,transform .2s,box-shadow .3s}
body.marva-tienda .products .button:hover,
body.marva-tienda .wc-block-grid__product .wp-block-button__link:hover{
  background:var(--hueso) !important;transform:translate3d(0,-2px,0);
  box-shadow:0 10px 22px rgba(255,212,0,.28)}

/* Titulo de las secciones sueltas */
body.marva-tienda .wp-block-woocommerce-empty-cart-block h2,
body.marva-tienda .wp-block-woocommerce-empty-cart-block h3{
  font-family:var(--f-display);text-transform:uppercase;
  font-size:clamp(24px,3.4vw,40px);color:var(--hueso);text-align:center;
  margin:0 0 32px}

/* ==========================================================================
   BOTON DE FILTROS EN MOVIL
   Antes se perdia sobre las piezas. Ahora vive en una barra propia,
   con su propio fondo, y late hasta que se usa por primera vez.
   ========================================================================== */
@media(max-width:1000px){
  .marva-fab{
    left:0;right:0;bottom:0;transform:none;
    width:100%;border-radius:0;border:0;
    padding:calc(14px + env(safe-area-inset-bottom)) 20px 14px;
    justify-content:center;gap:12px;
    background:linear-gradient(180deg,rgba(8,7,10,0),rgba(8,7,10,.92) 34%);
    box-shadow:none;
    backdrop-filter:none;-webkit-backdrop-filter:none}

  /* La pildora real va dentro de la barra */
  .marva-fab::before{content:'';position:absolute;
    left:50%;top:14px;bottom:calc(14px + env(safe-area-inset-bottom));
    width:min(74vw,320px);margin-left:min(-37vw,-160px);
    border-radius:999px;z-index:0;
    background:var(--sangre);
    border:2px solid var(--void);
    box-shadow:0 14px 30px -10px rgba(255,30,30,.6),
               5px 5px 0 var(--amarillo);
    transition:background-color .3s,box-shadow .35s,transform .35s var(--curva)}

  .marva-fab svg,
  .marva-fab span{position:relative;z-index:1}

  .marva-fab:hover::before,
  .marva-fab:active::before{background:var(--amarillo);
    box-shadow:0 14px 30px -10px rgba(255,212,0,.6),2px 2px 0 var(--hueso);
    transform:translate3d(2px,2px,0)}
  .marva-fab:hover,
  .marva-fab:active{background:linear-gradient(180deg,rgba(8,7,10,0),rgba(8,7,10,.92) 34%);
    color:var(--void)}

  /* Llama la atencion hasta que se toca por primera vez */
  body:not(.marva-filtros-usados) .marva-fab::before{
    animation:marva-fab-late 2.6s ease-in-out infinite}
  @keyframes marva-fab-late{
    0%,100%{box-shadow:0 14px 30px -10px rgba(255,30,30,.6),
                       5px 5px 0 var(--amarillo),
                       0 0 0 0 rgba(255,30,30,.45)}
    55%{box-shadow:0 14px 30px -10px rgba(255,30,30,.6),
                   5px 5px 0 var(--amarillo),
                   0 0 0 16px rgba(255,30,30,0)}
  }

  /* Contador de filtros activos */
  .marva-fab b{position:relative;z-index:1;
    min-width:22px;height:22px;display:grid;place-items:center;
    border-radius:50%;background:var(--void);color:var(--hueso);
    font-family:var(--f-dato);font-size:10px;font-weight:700}

  /* El loop deja sitio para la barra */
  body.marva-archivo .marva-loop{padding-bottom:104px}
}

@media(prefers-reduced-motion:reduce){
  .marva-fab::before{animation:none !important}
}


/* ==========================================================================
   BOTON DE FILTROS EN MOVIL  (v4: azul palpitante)
   Pegar al FINAL de assets/shop.css

   BORRA ANTES cualquier bloque mio anterior que empiece con
   "BOTON DE FILTROS EN MOVIL". Si quedan dos, se pelean entre si.

   Sin rojo. Sin amarillo. Sin vidrio transparente. Boton azul solido
   que late para llamar la atencion.
   ========================================================================== */

@media(max-width:1000px){

  .marva-fab{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:11px;

    position:fixed;
    left:50%;
    bottom:calc(22px + env(safe-area-inset-bottom));
    z-index:9060;

    width:auto !important;
    max-width:calc(100vw - 40px);
    white-space:nowrap;

    padding:16px 30px;
    border:0;
    border-radius:999px;
    cursor:pointer;

    background:linear-gradient(135deg,#2E8BFF,#1567D8);
    color:#FFFFFF;

    font-family:var(--f-dato);
    font-size:12px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;

    transform:translateX(-50%);
    transition:
      transform .3s cubic-bezier(.16,1,.3,1),
      opacity .3s,
      background .3s;

    box-shadow:
      0 14px 30px -8px rgba(0,0,0,.8),
      0 0 0 0 rgba(46,139,255,.55);
    animation:marva-fab-late 2.4s ease-out infinite;
  }

  .marva-fab:active{
    transform:translateX(-50%) scale(.95);
    background:linear-gradient(135deg,#1567D8,#0B4EA8);
  }

  .marva-fab:focus-visible{
    outline:2px solid #8CC8FF;
    outline-offset:3px;
  }

  /* Icono */
  .marva-fab svg{
    width:18px;
    height:18px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    flex:0 0 auto;
    transition:transform .4s cubic-bezier(.16,1,.3,1);
  }
  .marva-fab:active svg{transform:rotate(90deg)}
  .marva-fab svg circle{fill:#FFFFFF;stroke:none}

  /* Con el cajon abierto el boton baja y se apaga */
  body.marva-filtros-abiertos .marva-fab{
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) translateY(22px) scale(.9);
    animation:none;
  }

  /* ---------------- El cajon ---------------- */
  .marva-filtros{
    transition:transform .45s cubic-bezier(.16,1,.3,1);
  }

  .marva-filtros__barra{
    position:relative;
    background:#15141C;
    border-color:rgba(245,241,232,.14);
    border-radius:24px 24px 0 0;
    padding:22px 22px 15px;
  }

  /* Tirador, para que se lea como panel deslizable */
  .marva-filtros__barra::before{
    content:"";
    position:absolute;
    left:calc(50% - 21px);
    top:9px;
    width:42px;
    height:4px;
    border-radius:999px;
    background:rgba(245,241,232,.26);
  }

  .marva-filtros__cerrar{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid rgba(245,241,232,.16);
    color:var(--hueso);
    font-size:22px;
    transition:background-color .25s,transform .35s cubic-bezier(.16,1,.3,1);
  }
  .marva-filtros__cerrar:hover{
    background:#2E8BFF;
    color:#FFFFFF;
    transform:rotate(90deg);
  }

  .marva-velo{
    background:rgba(8,7,10,.78);
    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
  }
}

/* El latido: un aro azul que sale del boton y se desvanece.
   Solo cambia box-shadow, asi que la caja nunca se mueve ni desborda. */
@keyframes marva-fab-late{
  0%{
    box-shadow:
      0 14px 30px -8px rgba(0,0,0,.8),
      0 0 0 0 rgba(46,139,255,.55);
  }
  70%{
    box-shadow:
      0 14px 30px -8px rgba(0,0,0,.8),
      0 0 0 16px rgba(46,139,255,0);
  }
  100%{
    box-shadow:
      0 14px 30px -8px rgba(0,0,0,.8),
      0 0 0 0 rgba(46,139,255,0);
  }
}

@media(prefers-reduced-motion:reduce){
  .marva-fab{animation:none}
}
  /* Solo se muestra el primer boton de filtros: hay otro duplicado */
  .marva-fab ~ .marva-fab{display:none !important}
  
  @media(max-width:1000px){
  /* Apaga las capas rojas que dejaron versiones anteriores del boton */
  .marva-fab::before,
  .marva-fab::after{
    content:none !important;
    display:none !important;
  }

  /* Y asegura el azul por encima de cualquier regla previa */
  .marva-fab{
    background:linear-gradient(135deg,#2E8BFF,#1567D8) !important;
    color:#FFFFFF !important;
    border:0 !important;
    box-shadow:0 14px 30px -8px rgba(0,0,0,.8) !important;
  }
  .marva-fab svg circle{fill:#FFFFFF !important}
}

/* Las pestanas y su panel vuelven a su sitio: Blocksy los estaba sacando */
body.marva-tienda .woocommerce-tabs{
  position:relative !important;
  top:auto !important;left:auto !important;
  right:auto !important;bottom:auto !important;
  transform:none !important;
  display:block !important;
  width:100%;
  clear:both;
}
body.marva-tienda .woocommerce-tabs > article,
body.marva-tienda .woocommerce-Tabs-panel{
  position:static !important;
  top:auto !important;left:auto !important;
  right:auto !important;bottom:auto !important;
  transform:none !important;
  float:none !important;
  display:block;
  width:100%;
}
body.marva-tienda .woocommerce-Tabs-panel[style*="display: none"]{display:none !important}

body.marva-tienda .woocommerce-Tabs-panel{
  background:#15141C;
  border:1px solid #302C3D;
  border-radius:22px;
  padding:clamp(24px,3.4vw,44px);
  margin:0;
  color:var(--ceniza);
  font-size:16.5px;
  line-height:1.9;
}

/* Titulos de secciones sin la sombra roja */
body.marva-tienda .ct-module-title,
body.marva-tienda .related.products h2,
body.marva-tienda .upsells.products h2,
body.marva-tienda .woocommerce-Reviews-title{
  text-shadow:none !important;
}
body.marva-tienda .product_title,
body.marva-tienda h1.entry-title{
  text-shadow:none !important;
}

body.marva-tienda .product_title,
body.marva-tienda h1.entry-title{
  font-family:var(--f-cuerpo) !important;
  font-weight:700;
  font-size:clamp(24px,2.6vw,36px);
  line-height:1.22;
  letter-spacing:-.01em;
  text-transform:none;
  text-shadow:none !important;
}

/* "USD" junto al precio en dolares */
.marva-usd-price::after{
  content:" USD";
  font-size:.62em;
  font-weight:400;
  letter-spacing:.08em;
  opacity:.62;
  margin-left:2px;
}