/*
Theme Name: Jatosto TCG
Theme URI: https://jatosto-tcg.com
Author: Pedro Royo
Description: Tema propio de Jatosto TCG para WooCommerce. Negro manga, cian de la marca y brillo holográfico.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: jatosto
WC requires at least: 9.0
*/

/* Layout: tienda en negro con viñetas manga; el cian neón del logo es el único acento y el brillo holo es hielo */
:root{
  color-scheme: dark;
  --ink:#07090C;          /* negro con punta azul: cabecera, menú y pie */
  --fondo:#0D1317;        /* fondo de las páginas (un tono más suave que --ink) */
  --panel:#10161B;        /* viñetas y tarjetas */
  --panel-2:#0B1115;
  --line:#1F2D35;         /* bordes finos */
  --text:#EEF4F7;
  --muted:#93A9B3;
  --neon:#1BE4F5;         /* cian neón del escudo: acento principal */
  --cyan:#13B2C0;         /* cian medio */
  --teal:#128D98;         /* turquesa de la mascota */
  --petrol:#0D6770;
  --abyss:#08444A;
  --ice:#84F0F9;
  --silver:#DCE4EA;
  --ok:#2BD98A; --low:#FFC94A; --out:#3A4650;   /* estados de stock (semánticos) */
  --foil:linear-gradient(115deg,#84F0F9 0%,#1BE4F5 20%,#E9FBFF 40%,#A7B8FF 58%,#1BE4F5 78%,#84F0F9 100%);
  --f-display:"Dela Gothic One","Arial Black",Impact,sans-serif;
  --f-body:"Zen Kaku Gothic New","Hiragino Sans","Segoe UI",system-ui,sans-serif;
  --f-tag:"DotGothic16","Courier New",monospace;
  --gutter:clamp(16px,4vw,48px);
  --max:1240px;
}
*{box-sizing:border-box}
html{background:var(--fondo);overflow-x:clip}
body{margin:0;background:var(--fondo);color:var(--text);font-family:var(--f-body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--neon);outline-offset:3px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.tag{font-family:var(--f-tag);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
h1,h2,h3{font-family:var(--f-display);font-weight:400;line-height:1.05;text-wrap:balance;margin:0}
h2{font-size:clamp(28px,4.2vw,46px)}
p{margin:0}

/* ---------- Cinta de avisos ---------- */
.ticker{background:var(--neon);color:#031417;overflow:hidden;white-space:nowrap;border-block:2px solid #000}
.ticker div{display:inline-flex;gap:28px;padding-block:7px;animation:tick 34s linear infinite;font-family:var(--f-display);font-size:13px;letter-spacing:.04em}
.ticker span::after{content:"◆";margin-left:28px;color:var(--abyss)}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- Cabecera ---------- */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(7,9,12,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.admin-bar .site-header{top:calc(32px + env(safe-area-inset-top,0px))}
.hd{display:flex;align-items:center;gap:26px;padding-block:10px}
.logo{flex:none;display:block;line-height:0}
.logo img{height:54px;width:auto}
nav.main ul{list-style:none;margin:0;padding:0;display:flex;gap:22px;font-weight:700;font-size:16px}
nav.main a{white-space:nowrap;padding-block:4px}
nav.main a:hover,nav.main .current-menu-item>a{color:var(--neon)}
.hd-actions{margin-left:auto;display:flex;gap:10px;align-items:center}
.buscador{position:relative;display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:0 14px;min-width:230px}
.buscador svg{flex:none;color:var(--muted)}
.buscador input{background:none;border:0;padding:9px 0;width:100%;font-size:13.5px;color:var(--text)}
.buscador input::placeholder{color:var(--muted)}
.buscador input:focus{outline:none}
.icon-btn{position:relative;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--panel);cursor:pointer}
.icon-btn svg{width:18px;height:18px;fill:none;stroke:var(--text);stroke-width:2}
.badge-n{position:absolute;top:-4px;right:-4px;background:var(--neon);color:#031417;font-size:10.5px;font-weight:900;border-radius:999px;min-width:18px;height:18px;padding-inline:4px;display:grid;place-items:center;border:2px solid var(--ink)}
.badge-n:empty,.badge-n[data-n="0"]{display:none}
.burger{display:none}
.buscar-btn{display:none}
.mobile-nav{display:none;border-top:1px solid var(--line);padding-block:12px}
.mobile-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-weight:700;font-size:17px}
.mobile-nav a{display:block;padding:8px 0}
.mobile-nav.open{display:block}

/* ---------- Botones ---------- */
.btn,.button,.wp-element-button,button.single_add_to_cart_button,.checkout-button,#place_order{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:900;font-size:15px;padding:13px 24px;border:2px solid #000;border-radius:0;cursor:pointer;transition:transform .15s,box-shadow .15s;background:var(--silver);color:#05090B;box-shadow:5px 5px 0 var(--neon);text-decoration:none;line-height:1.2}
.btn:hover,.button:hover,.wp-element-button:hover,button.single_add_to_cart_button:hover,.checkout-button:hover,#place_order:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--neon);background:#fff;color:#05090B}
.btn-ghost{background:transparent;color:var(--text);border-color:var(--text);box-shadow:none}
.btn-ghost:hover{background:rgba(255,255,255,.06);color:var(--text);box-shadow:none}
.button.disabled,.button:disabled,button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;border-bottom:3px solid #000}
.hero::before{content:"";position:absolute;left:70%;top:50%;width:260vmax;height:260vmax;margin:-130vmax 0 0 -130vmax;background:repeating-conic-gradient(from 0deg,rgba(132,240,249,.13) 0deg 1.2deg,transparent 1.2deg 7deg);-webkit-mask:radial-gradient(circle,transparent 4%,#000 18%);mask:radial-gradient(circle,transparent 4%,#000 18%);animation:rayos-gira 140s linear infinite;pointer-events:none}
@keyframes rayos-gira{to{transform:rotate(360deg)}}
@media (max-width:900px){.hero::before{left:50%;top:72%}}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(27,228,245,.42) 1.3px,transparent 1.6px) 0 0/11px 11px;-webkit-mask:linear-gradient(200deg,#000 0%,transparent 45%);mask:linear-gradient(200deg,#000 0%,transparent 45%);pointer-events:none}
.hero-in{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:32px;align-items:center;padding-block:clamp(40px,6vw,80px)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--neon)}
.eyebrow::before{content:"";width:28px;height:2px;background:var(--neon)}
.hero h1{font-size:clamp(42px,6.4vw,84px);margin-top:18px;letter-spacing:-.015em}
.hero h1 .stroke{color:transparent;-webkit-text-stroke:2px var(--text)}
.hero h1 .foil{background:var(--foil);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 6s ease-in-out infinite alternate}
@keyframes sheen{to{background-position:100% 0}}
.hero .lead{margin-top:22px;font-size:17px;color:#CFDDE3;max-width:46ch}
.ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.trust{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:34px;font-size:13.5px;color:var(--muted)}
.trust span{display:flex;align-items:center;gap:7px}
.trust span::before{content:"";width:7px;height:7px;background:var(--neon);transform:rotate(45deg)}
.stage-hero{position:relative;height:clamp(360px,40vw,520px)}
.stage-hero .mascota{position:absolute;left:50%;top:46%;width:clamp(250px,30vw,390px);height:auto;transform:translate(-50%,-50%);filter:drop-shadow(0 0 46px rgba(27,228,245,.38)) drop-shadow(0 24px 30px rgba(0,0,0,.6));z-index:1}
.stage-hero .pimg{position:absolute;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 22px 26px rgba(0,0,0,.75));z-index:2}
.stage-hero .p1{width:31%;left:-3%;bottom:-3%;transform:rotate(-6deg)}
.stage-hero .p2{width:30%;right:-3%;bottom:0;transform:rotate(5deg)}
.stage-hero .p3{width:21%;right:2%;top:2%;transform:rotate(9deg);z-index:0;opacity:.95}
.kana{position:absolute;right:-6px;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;font-family:var(--f-display);font-size:clamp(54px,7vw,92px);line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(132,240,249,.16);letter-spacing:.06em;pointer-events:none;z-index:0}
.sticker{position:absolute;z-index:4;left:0;top:4%;background:var(--neon);color:#031417;font-family:var(--f-display);font-size:14px;line-height:1.1;text-align:center;border:2px solid #000;transform:rotate(-9deg);clip-path:polygon(50% 0,61% 12%,78% 6%,80% 24%,97% 28%,88% 44%,100% 58%,84% 66%,88% 85%,69% 84%,58% 100%,46% 88%,30% 98%,26% 80%,8% 78%,13% 61%,0 48%,14% 36%,6% 19%,24% 17%,30% 2%,43% 13%);width:118px;height:118px;display:grid;place-items:center}

/* ---------- Carta holo (compartida) ---------- */
.holo{--mx:50%;--my:50%;position:relative;aspect-ratio:63/88;border-radius:4.5%/3.2%;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.08);transition:transform .25s ease-out}
.holo img{display:block;width:100%;height:100%;object-fit:cover}
.holo::after{content:"";position:absolute;inset:0;background:radial-gradient(farthest-corner circle at var(--mx) var(--my),rgba(255,255,255,.55) 0%,transparent 45%),var(--foil);background-size:100% 100%,260% 260%;background-position:center,var(--mx) var(--my);mix-blend-mode:color-dodge;opacity:.18;transition:opacity .25s;pointer-events:none}
.holo:hover::after{opacity:.55}

/* Carta propia de Jatosto (sustituye a las ilustraciones) */
.jcard{--h:186;position:absolute;inset:0;overflow:hidden;border-radius:inherit;
  background:radial-gradient(circle at 50% 44%,hsl(var(--h) 92% 58% / .55),transparent 52%),repeating-conic-gradient(from 0deg at 50% 44%,hsl(var(--h) 90% 75% / .16) 0 3deg,transparent 3deg 11deg),linear-gradient(165deg,hsl(var(--h) 60% 18%),#06090c 72%);
  box-shadow:inset 0 0 0 5px #cfe2e8,inset 0 0 0 7px #0006}
.jcard::before{content:"";position:absolute;inset:7% 8%;border:1.5px solid rgba(255,255,255,.35);border-radius:4px}
.jcard .emb{position:absolute;left:50%;top:44%;width:46%;aspect-ratio:1;transform:translate(-50%,-50%) rotate(-8deg);background:var(--foil);background-size:200% 200%;clip-path:polygon(50% 0,61% 33%,96% 35%,68% 56%,79% 91%,50% 70%,21% 91%,32% 56%,4% 35%,39% 33%);filter:drop-shadow(0 0 12px hsl(var(--h) 100% 70% / .8))}
.jcard .top,.jcard .bot{position:absolute;left:12%;right:12%;display:flex;justify-content:space-between;align-items:baseline;z-index:1}
.jcard .top{top:10%;font-family:var(--f-display);font-size:clamp(7px,.9vw,12px);color:#fff}
.jcard .bot{bottom:10%;font-family:var(--f-tag);font-size:clamp(6px,.75vw,10px);color:#ffffffc0}

/* ---------- Preventa ---------- */
.pre{background:linear-gradient(100deg,var(--abyss),var(--petrol) 60%,var(--teal));color:#fff;border-block:3px solid #000;position:relative;overflow:hidden}
.pre::before{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(132,240,249,.25) 1.4px,transparent 1.7px) 0 0/10px 10px;pointer-events:none}
.pre-in{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:28px;align-items:center;padding-block:18px}
.pre-img{width:120px;height:auto;transform:rotate(-6deg);filter:drop-shadow(0 10px 14px rgba(0,0,0,.5))}
.pre .stamp{display:inline-block;margin-bottom:8px;font-family:var(--f-display);font-size:13px;background:#000;color:var(--neon);padding:8px 12px;transform:rotate(-4deg)}
.pre h3{font-size:clamp(20px,2.6vw,30px)}
.pre p{font-size:14px;opacity:.92;margin-top:6px}
.count{display:flex;gap:8px}
.count div{background:#000;min-width:64px;padding:8px 6px;text-align:center;border-radius:6px;border:1px solid rgba(27,228,245,.35)}
.count b{display:block;font-family:var(--f-display);font-weight:400;font-size:26px;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--neon)}
.count small{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#C3D7DD}

/* ---------- Secciones ---------- */
.block{padding-block:clamp(56px,8vw,96px)}
.block.tight{padding-top:0}
.head{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:34px}
.head .tag{color:var(--neon);display:block;margin-bottom:10px}
.head p{color:var(--muted);max-width:52ch;margin-top:10px}
.more{font-weight:700;font-size:14px;border-bottom:2px solid var(--neon);padding-bottom:2px;white-space:nowrap}

/* Formatos: viñetas */
.panels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.panels .panel{grid-column:span 2}
/* La última fila ocupa todo el ancho: 2 viñetas → mitad y mitad; 1 viñeta → entera */
.panels .panel:nth-child(3n+1):nth-last-child(2),.panels .panel:nth-child(3n+2):last-child{grid-column:span 3}
.panels .panel:nth-child(3n+1):last-child{grid-column:span 6}
.panels .panel{position:relative;min-height:190px;padding:22px;background:var(--panel);border:3px solid #000;outline:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;transition:transform .2s}
.panels .panel:nth-child(6n+1){clip-path:polygon(0 0,100% 0,96% 100%,0 100%)}
.panels .panel:nth-child(6n+2){clip-path:polygon(4% 0,100% 0,100% 100%,0 100%)}
.panels .panel:nth-child(6n+3){clip-path:polygon(0 0,100% 0,100% 100%,3% 100%)}
.panels .panel:nth-child(6n+4){clip-path:polygon(0 0,97% 0,100% 100%,0 100%)}
.panels .panel:nth-child(6n+5){clip-path:polygon(0 0,100% 0,96% 100%,3% 100%)}
.panels .panel:hover{transform:translateY(-3px)}
.panels .panel .jp{position:absolute;top:12px;left:22px;font-family:var(--f-tag);font-size:13px;color:var(--muted);z-index:1}
.panels .panel .art{position:absolute;inset:auto 0 0 auto;width:56%;height:100%;background-size:contain;background-repeat:no-repeat;background-position:right 6px bottom 6px;-webkit-mask:linear-gradient(90deg,transparent 0%,#000 35%);mask:linear-gradient(90deg,transparent 0%,#000 35%);filter:drop-shadow(0 10px 14px rgba(0,0,0,.6))}
.panels .panel h3{position:relative;font-size:24px;max-width:62%}
.panels .panel p{position:relative;color:var(--muted);font-size:13.5px;max-width:62%}
.panels .panel::before{content:"";position:absolute;inset:-50%;background:repeating-conic-gradient(from 0deg at 76% 52%,rgba(132,240,249,.09) 0 1.5deg,transparent 1.5deg 8deg);-webkit-mask:radial-gradient(circle at 76% 52%,transparent 6%,#000 30%);mask:radial-gradient(circle at 76% 52%,transparent 6%,#000 30%);pointer-events:none}
.panels .panel::after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(27,228,245,.3) 1.2px,transparent 1.5px) 0 0/10px 10px;-webkit-mask:linear-gradient(200deg,#000 0%,transparent 38%);mask:linear-gradient(200deg,#000 0%,transparent 38%);pointer-events:none}
.panels .panel > *{z-index:1}
.panels .panel .art{z-index:1}
.panels .panel.soon{background:repeating-linear-gradient(135deg,var(--panel) 0 14px,var(--panel-2) 14px 28px)}
.chips{position:relative;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.chips span{font-size:12px;font-weight:700;border:1px solid var(--line);padding:3px 9px;border-radius:999px;background:var(--ink)}

/* Tarjetas de producto (home y tienda) */
.grid,.woocommerce ul.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.prod,.woocommerce ul.products li.product{position:relative;width:auto!important;margin:0!important;float:none!important;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
.prod:hover,.woocommerce ul.products li.product:hover{border-color:#2F5560;transform:translateY(-3px)}
.stage{position:relative;aspect-ratio:4/3;display:grid;place-items:center;background:radial-gradient(circle at 50% 60%,#163A44 0%,var(--panel) 65%);overflow:hidden}
.stage::before{content:"";position:absolute;inset:-30%;background:repeating-conic-gradient(from 0deg at 50% 60%,rgba(132,240,249,.085) 0 2deg,transparent 2deg 10deg)}
.stage img,.pimg{position:relative;z-index:1;width:82%;height:88%;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(0,0,0,.65));transition:transform .25s}
.prod:hover .stage img,.woocommerce ul.products li.product:hover .stage img{transform:scale(1.04) rotate(-1deg)}
.flag,.woocommerce span.onsale{position:absolute;top:12px;left:12px;z-index:2;font-size:11.5px;font-weight:900;padding:4px 10px;border-radius:999px;border:1.5px solid #000;min-height:0;min-width:0;line-height:1.3;margin:0}
.f-ok{background:var(--ok);color:#06210F}
.f-low{background:var(--low);color:#1C1500}
.f-out{background:var(--out);color:#D4DEE3}
.f-pre{background:var(--neon);color:#031417}
.woocommerce span.onsale{left:auto;right:12px;background:var(--silver);color:#05090B}
.lang{position:absolute;bottom:12px;right:12px;z-index:2;font-family:var(--f-tag);font-size:11px;background:#000;padding:3px 8px;border-radius:4px}
.info{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.info .set{font-size:12px;color:var(--muted);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.info h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--f-body);font-weight:900;font-size:16.5px;line-height:1.3;padding:0;margin:0}
.buy{margin-top:auto;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.price,.woocommerce ul.products li.product .price{font-family:var(--f-display);font-size:22px;color:var(--text);font-variant-numeric:tabular-nums;margin:0}
.price del,.woocommerce .price del{font-family:var(--f-body);font-size:13px;color:var(--muted);opacity:1;margin-right:6px}
.price ins,.woocommerce .price ins{text-decoration:none}
.add,.woocommerce ul.products li.product .button{padding:9px 14px;font-size:13.5px;box-shadow:3px 3px 0 var(--neon);margin:0}
.add:hover,.woocommerce ul.products li.product .button:hover{box-shadow:4px 4px 0 var(--neon)}
.woocommerce a.added_to_cart{font-size:12.5px;color:var(--neon);margin-left:8px}

/* Vitrina: página de carpeta con fundas */
.binder-zone{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(28px,5vw,64px);align-items:center}
.binder-copy p{color:#CFDDE3;margin-top:16px;max-width:46ch}
.legend{margin-top:24px;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:13.5px}
.legend dt{font-family:var(--f-tag);color:var(--neon)}
.legend dd{margin:0;color:var(--muted)}
.binder{--bx:30%;--by:18%;--bglow:.55;position:relative;background:#05080A;border:3px solid #000;outline:1px solid var(--line);border-radius:16px;padding:clamp(10px,2vw,20px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.6vw,16px);box-shadow:0 30px 60px rgba(0,0,0,.5)}
.binder::before{content:"";position:absolute;left:-14px;top:12%;bottom:12%;width:8px;background:repeating-linear-gradient(#2B3A42 0 22px,transparent 22px 64px);border-radius:4px}
.binder::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:5;mix-blend-mode:screen;
  background:radial-gradient(ellipse 34% 24% at var(--bx) var(--by),rgb(255 255 255 / calc(var(--bglow) * .26)),transparent 70%),radial-gradient(ellipse 85% 60% at var(--bx) var(--by),rgb(132 240 249 / calc(var(--bglow) * .1)),transparent 75%),linear-gradient(118deg,transparent 0 40%,rgb(255 255 255 / calc(.02 + var(--bglow) * .07)) 47%,transparent 53%) calc(var(--bx) * -.6 + 30%) 0/220% 100% no-repeat,repeating-linear-gradient(93deg,rgba(255,255,255,.014) 0 1px,transparent 1px 6px),linear-gradient(180deg,rgba(255,255,255,.05),transparent 20%,transparent 85%,rgba(255,255,255,.04))}
.pocket{position:relative;display:flex;flex-direction:column;gap:6px;padding:5px;border-radius:8px;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.01));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.sleeve{--px:30%;--py:15%;--glow:.35;position:relative;padding:5%;border-radius:7px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),inset 0 1px 0 rgba(255,255,255,.4),0 2px 6px rgba(0,0,0,.5)}
.sleeve .holo{--mx:var(--px);--my:var(--py);border-radius:5px;box-shadow:0 2px 6px rgba(0,0,0,.55)}
.sleeve .holo::after{opacity:calc(.1 + var(--glow) * .55)}
.sleeve::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:2;background:linear-gradient(180deg,transparent 0 3.2%,rgba(255,255,255,.45) 3.2% 3.6%,rgba(0,0,0,.25) 3.6% 4.1%,transparent 4.1%),repeating-linear-gradient(93deg,rgba(255,255,255,.022) 0 1px,transparent 1px 6px),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.02) 28%,rgba(255,255,255,.06) 85%,rgba(255,255,255,.12))}
.sleeve::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;mix-blend-mode:screen;background:radial-gradient(ellipse 70% 42% at var(--px) var(--py),rgb(255 255 255 / calc(var(--glow) * .55)),transparent 70%),linear-gradient(118deg,transparent 0 38%,rgb(255 255 255 / calc(.05 + var(--glow) * .16)) 46%,transparent 52%,transparent 64%,rgb(255 255 255 / calc(.03 + var(--glow) * .09)) 69%,transparent 74%) calc(var(--px) * -.6 + 30%) 0/220% 100% no-repeat}
.pocket .meta{display:flex;justify-content:space-between;align-items:baseline;gap:4px;font-size:11.5px;line-height:1.25;padding-inline:2px}
.pocket .meta b{font-weight:900;min-width:0;overflow-wrap:anywhere}
.pocket .meta span{font-family:var(--f-display);font-size:12.5px;white-space:nowrap}
.pocket .cond{font-family:var(--f-tag);font-size:10.5px;color:var(--muted);padding-inline:2px}
.only{position:absolute;top:10px;left:10px;z-index:4;background:var(--neon);color:#031417;font-size:10.5px;font-weight:900;padding:2px 7px;border-radius:3px;border:1.5px solid #000}

/* Compramos tus cartas */
.buyback{background:var(--panel);border:3px solid #000;outline:1px solid var(--line);position:relative;overflow:hidden;padding:clamp(28px,5vw,56px)}
.buyback::before{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(27,228,245,.22) 1.3px,transparent 1.6px) 0 0/12px 12px;-webkit-mask:linear-gradient(110deg,transparent 45%,#000 100%);mask:linear-gradient(110deg,transparent 45%,#000 100%)}
.bb-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:40px;align-items:center}
.bb-in > div > p{color:#CFDDE3;margin-top:14px;max-width:44ch}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:s}
.steps li{counter-increment:s;display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:center;background:var(--ink);border:1px solid var(--line);padding:14px 18px 14px 14px}
.steps li::before{content:counter(s);font-family:var(--f-display);font-size:30px;color:var(--ink);-webkit-text-stroke:1.5px var(--neon);text-align:center}
.steps b{display:block;font-size:15.5px}
.steps span{color:var(--muted);font-size:13.5px}

/* Visítanos */
.visit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.visit > div{border-top:3px solid var(--neon);padding-top:16px}
.visit .tag{color:var(--muted)}
.visit p{margin-top:8px;font-weight:700;font-size:16px}
.visit p small{display:block;font-weight:400;color:var(--muted);font-size:13.5px}

/* ---------- Pie ---------- */
.site-footer{background:var(--ink);border-top:1px solid var(--line);margin-top:clamp(40px,6vw,72px);padding-block:40px 28px;color:var(--muted);font-size:13.5px}
.ft{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:28px}
.ft .ft-logo img{width:120px;height:auto}
.ft h4{color:var(--text);font-size:13px;margin:0 0 10px;letter-spacing:.06em;text-transform:uppercase}
.ft ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ft a:hover{color:var(--neon)}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:32px;padding-top:18px;border-top:1px solid var(--line);font-size:12px}

/* ---------- Páginas interiores y WooCommerce ---------- */
.page-wrap{padding-block:clamp(28px,4vw,48px) 0}
.page-title{font-size:clamp(30px,4vw,48px);margin-bottom:24px}
.entry{max-width:75ch}
.entry a{color:var(--neon);text-decoration:underline}
.woocommerce-breadcrumb{font-size:13px;color:var(--muted)!important;margin-bottom:18px!important}
.woocommerce-breadcrumb a{color:var(--muted)!important}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{margin-bottom:22px}
.woocommerce .woocommerce-ordering select,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection--single,.woocommerce .quantity .qty,#coupon_code{background:var(--panel)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:6px!important;padding:10px 12px!important;min-height:44px}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--text)!important;line-height:24px!important}
.select2-dropdown{background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{border:3px solid #000;outline:1px solid var(--line);background:radial-gradient(circle at 50% 58%,#163A44 0%,var(--panel) 62%)}
.woocommerce div.product div.images img{object-fit:contain;aspect-ratio:1/1;padding:6%}
.woocommerce div.product .product_title{font-size:clamp(30px,3.6vw,46px);margin-bottom:12px}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-family:var(--f-display);font-size:clamp(34px,4vw,48px)!important;color:var(--text)!important}
.woocommerce div.product .stock{font-weight:700}
.woocommerce div.product .stock.in-stock{color:var(--ok)}
.woocommerce div.product .stock.out-of-stock{color:#FF8A8A}
.woocommerce div.product form.cart{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-block:24px}
.woocommerce div.product form.cart .quantity .qty{width:72px;text-align:center}
.woocommerce-product-details__short-description{color:#CFDDE3}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 16px!important;border-bottom:1px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:0!important;margin:0 18px 0 0!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--muted)!important;font-weight:900;padding:10px 0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--text)!important;box-shadow:inset 0 -3px 0 var(--neon)}
.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
.woocommerce div.product .related > h2,.woocommerce div.product .upsells > h2{font-size:clamp(24px,3vw,34px);margin-bottom:22px}
/* Avisos de WooCommerce (añadido a la cesta, errores, información) */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-notices-wrapper,.woocommerce-NoticeGroup{grid-column:1/-1;margin-bottom:22px}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;list-style:none;margin:0 0 14px!important;padding:14px 18px 14px 50px!important;background:var(--panel)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-left:4px solid var(--neon)!important;border-radius:10px;font-size:15px;line-height:1.45}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:grid;place-items:center;border-radius:50%;font:900 13px var(--f-body);color:#031417}
.woocommerce-message::before{content:"✓";background:var(--neon)}
.woocommerce-info::before{content:"i";background:var(--silver)}
.woocommerce-error{border-left-color:#FF6B6B!important;flex-direction:column;align-items:flex-start}
.woocommerce-error::before{content:"!";background:#FF6B6B;top:24px}
.woocommerce-error li{margin:0}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{float:none!important;order:2;margin:0!important;padding:9px 16px;font-size:13.5px;box-shadow:3px 3px 0 var(--neon)}
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button){color:var(--neon);text-decoration:underline}
.wc-block-components-notice-banner > svg{background:var(--neon)!important;border-radius:50%;fill:#031417!important;position:absolute;left:14px;top:50%;transform:translateY(-50%)}
@media (max-width:560px){.woocommerce-message,.woocommerce-info{flex-direction:column;align-items:flex-start}.woocommerce-message .button,.woocommerce-info .button{width:100%}}
.woocommerce table.shop_table{border-color:var(--line)!important;border-radius:10px}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--line)!important}
.woocommerce-checkout #payment{background:var(--panel)!important;border-radius:10px}
.woocommerce-checkout #payment div.payment_box{background:var(--panel-2)!important;color:var(--text)!important}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--panel-2)!important}
.wc-block-components-button:not(.is-link){background:var(--silver)!important;color:#05090B!important}
.jt-limite{font-size:13px;color:var(--muted);margin-top:-8px}
.jt-limite b{color:var(--neon);font-family:var(--f-tag);font-weight:400}
.jt-preventa-aviso{display:inline-block;background:var(--neon);color:#031417;font-weight:900;font-size:13px;padding:6px 12px;border:2px solid #000;margin-bottom:10px}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  nav.main{display:none}
  .burger{display:grid}
  .buscador{min-width:0;flex:1}
  .hd-actions{flex:1;justify-content:flex-end}
}
@media (max-width:900px){
  .hero-in{grid-template-columns:minmax(0,1fr)}
  .kana,.binder::before{display:none}
  .pre-in{grid-template-columns:minmax(0,1fr);gap:14px}
  .grid,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .panels{grid-template-columns:repeat(2,minmax(0,1fr))}
  .panels .panel,.panels .panel:nth-child(n){grid-column:auto!important}
  .panels .panel:nth-child(odd):last-child{grid-column:1/-1!important}
  .binder-zone,.bb-in,.woocommerce div.product{grid-template-columns:minmax(0,1fr)}
  .ft{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:782px){.admin-bar .site-header{top:calc(46px + env(safe-area-inset-top,0px))}}
@media (max-width:560px){
  .logo img{height:42px}
  /* Móvil: la lupa abre la barra de búsqueda bajo la cabecera */
  .buscar-btn{display:grid}
  .buscador{display:none;position:absolute;left:0;right:0;top:100%;margin:0;border-radius:0;border-width:1px 0;min-width:0;padding:4px var(--gutter);background:var(--ink)}
  .buscador.abierto{display:flex}
  .buscador input{font-size:16px;padding:12px 0}
  .hd{gap:12px}
  .hd-actions{gap:6px}
  .panels,.grid,.woocommerce ul.products,.visit,.ft{grid-template-columns:minmax(0,1fr)}
  .panels .panel:nth-child(n){grid-column:1/-1!important}
  .panels .panel{clip-path:none!important}
  .panels .panel h3,.panels .panel p{max-width:100%}
  .panels .panel .art{opacity:.35}
  .stage-hero{height:340px}
  .sticker{width:96px;height:96px;font-size:12px}
  .pocket .meta{flex-direction:column;gap:0}
  .only{font-size:9px;top:7px;left:7px}
  .count div{min-width:0;flex:1}
}
@media (prefers-reduced-motion:reduce){
  /* Decisión del cliente: la web se mantiene viva aunque el móvil tenga «Reducir movimiento»
     (muchos lo llevan activado sin saberlo). Solo se ralentiza la cinta. */
  .ticker div{animation-duration:70s}
  .hero::before{animation-duration:260s}
}
.ticker:hover div,.ticker:active div{animation-play-state:paused}

/* Ficha: la etiqueta «ejemplo» es interna */
.product_meta .tagged_as{display:none}
.woocommerce div.product .woocommerce-tabs .panel{background:none;border:0;padding:0;margin:0}
.woocommerce-product-gallery{opacity:1!important}
.woocommerce div.product div.images .woocommerce-product-gallery__image:not(:first-child){display:inline-block;width:23%;margin:2% 2% 0 0;border:1px solid var(--line)}
.woocommerce div.product div.images .woocommerce-product-gallery__image:not(:first-child) img{padding:4%}

/* Rayos y trama también en la galería de la ficha y en las fichas de los bloques de WooCommerce
   (cesta vacía, «también te puede interesar»…), igual que en .stage */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{position:relative;overflow:hidden}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper::before,
.wc-block-components-product-image::before,.wc-block-grid__product-image::before{content:"";position:absolute;inset:-30%;background:repeating-conic-gradient(from 0deg at 50% 58%,rgba(132,240,249,.1) 0 1.6deg,transparent 1.6deg 8deg);pointer-events:none;z-index:0}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper::after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(27,228,245,.32) 1.3px,transparent 1.6px) 0 0/11px 11px;-webkit-mask:linear-gradient(20deg,#000 0%,transparent 42%);mask:linear-gradient(20deg,#000 0%,transparent 42%);pointer-events:none;z-index:0}
.woocommerce div.product div.images .woocommerce-product-gallery__image{position:relative;z-index:1}
.wc-block-components-product-image,.wc-block-grid__product-image{position:relative;overflow:hidden;display:block;background:radial-gradient(circle at 50% 60%,#163A44 0%,var(--panel) 65%);border-radius:12px}
.wc-block-components-product-image img,.wc-block-grid__product-image img{position:relative;z-index:1;object-fit:contain;padding:6%;filter:drop-shadow(0 18px 22px rgba(0,0,0,.65))}

/* ---------- Aviso de cookies: una carta ---------- */
.jt-cookie{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;padding-block:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-bottom,0px));background:rgba(2,6,8,.8);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);overflow-y:auto;overscroll-behavior:contain}
.jt-cookie[hidden]{display:none}
.jt-cookie-caja{width:min(370px,84vw,calc((100vh - 120px) * .6));width:min(370px,84vw,calc((100dvh - 120px) * .6));display:grid;gap:12px;filter:drop-shadow(0 30px 50px rgba(0,0,0,.75)) drop-shadow(0 0 40px rgba(27,228,245,.18))}
.jt-cookie.entra{animation:jtc-fondo .35s ease-out both}
.jt-cookie.entra .jt-cookie-caja{animation:jtc-robar .75s cubic-bezier(.2,.9,.25,1.15) both}
.jt-cookie.sale{animation:jtc-fondo-sale .35s ease-in both}
.jt-cookie.sale .jt-cookie-caja{animation:jtc-salir .35s ease-in both}
@keyframes jtc-fondo{from{background:rgba(2,6,8,0);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}
@keyframes jtc-fondo-sale{to{background:rgba(2,6,8,0);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}
@keyframes jtc-robar{from{transform:translateY(70vh) rotate(-16deg) scale(.85)}60%{transform:translateY(-12px) rotate(2deg) scale(1.02)}to{transform:none}}
@keyframes jtc-salir{to{transform:translateY(60vh) rotate(10deg) scale(.9);opacity:0}}
html.jt-cookie-abierto{overflow:hidden}
/* Modo suave (páginas legales): sin oscurecer ni bloquear, abajo a la izquierda */
.jt-cookie.suave{inset:auto auto 0 0;width:min(400px,100vw);display:block;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible}
.jt-cookie.suave.entra,.jt-cookie.suave.sale{animation:none}
@media (max-width:560px){.jt-cookie.suave{left:50%;transform:translateX(-50%)}}
.jt-cookie-carta{--mx:50%;--my:30%;container-type:inline-size;position:relative;padding:8px;border-radius:14px;background:linear-gradient(135deg,#E9FBFF,#84F0F9 20%,#1BE4F5 38%,#DCE4EA 55%,#A7B8FF 72%,#1BE4F5 88%,#E9FBFF);overflow:hidden}
.jt-cookie-carta::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.45),transparent 40%),var(--foil);background-size:100% 100%,240% 240%;background-position:center,var(--mx) var(--my);mix-blend-mode:color-dodge;opacity:.22}
.jt-cookie-cara{position:relative;border-radius:8px;padding:9px 10px 8px;background:linear-gradient(170deg,#12333B 0%,#0B1F25 45%,#07090C 100%);color:var(--text);display:grid;gap:7px;font-size:3.64cqw;line-height:1.4}
.jtc-cab{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:6px}
.jtc-fase{font-size:2.69cqw;font-weight:900;text-transform:uppercase;letter-spacing:.06em;background:var(--silver);color:#05090B;padding:1px 5px;border-radius:3px}
.jtc-nombre{margin:0;font-family:var(--f-display);font-size:4.43cqw;line-height:1.1;white-space:nowrap;letter-spacing:-.01em}
.jtc-ps{font-family:var(--f-display);font-size:4.43cqw;color:var(--neon);white-space:nowrap}
.jtc-ps small{font-family:var(--f-body);font-size:2.69cqw;font-weight:900;margin-right:2px;color:var(--text)}
.jtc-tipo,.jtc-energia{display:inline-block;width:5.7cqw;height:5.7cqw;border-radius:50%;background:radial-gradient(circle at 35% 30%,#E9FBFF,var(--neon) 45%,var(--petrol));box-shadow:0 0 0 1.5px #000,0 0 8px rgba(27,228,245,.6)}
.jtc-energia{width:4.1cqw;height:4.1cqw;vertical-align:-2px;margin-right:2px}
.jtc-arte{position:relative;aspect-ratio:16/10;border:3px solid #cfe2e8;border-radius:3px;overflow:hidden;background:radial-gradient(circle at 50% 70%,#1E6670,#0A2228 70%);box-shadow:inset 0 0 0 1px #000}
.jtc-arte::before{content:"";position:absolute;inset:-40%;background:repeating-conic-gradient(from 0deg at 50% 70%,rgba(132,240,249,.18) 0 2deg,transparent 2deg 9deg)}
.jtc-arte img{position:absolute;left:50%;bottom:-18%;width:62%;height:auto;transform:translateX(-50%);filter:drop-shadow(0 6px 10px rgba(0,0,0,.6))}
.jtc-sub{font-size:2.69cqw;font-style:italic;text-align:center;background:linear-gradient(90deg,transparent,rgba(132,240,249,.22),transparent);padding:2px 0;color:#CFE6EC;margin-top:-3px}
.jtc-cuerpo{display:grid;gap:8px}
.jtc-hab-tit{font-weight:900;font-size:3.96cqw;display:flex;align-items:center;gap:6px}
.jtc-etq{font-family:var(--f-display);font-weight:400;font-size:3.01cqw;background:#B31B4D;color:#fff;padding:1px 6px;border-radius:3px;transform:skewX(-8deg)}
.jtc-dano{margin-left:auto;font-family:var(--f-display);font-weight:400;font-size:4.75cqw}
.jtc-hab p:last-child,.jtc-ataque p:last-child{color:#D3E4EA}
.jtc-ataque{border-top:1px solid rgba(255,255,255,.12);padding-top:7px}
.jtc-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;border-top:1px solid rgba(255,255,255,.12);padding-top:6px;font-size:2.85cqw;text-align:center}
.jtc-stats dt{font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.jtc-stats dd{margin:0;color:#D3E4EA}
.jtc-ambiente{font-size:3.01cqw;font-style:italic;color:#B9CDD4;border:1px solid rgba(255,255,255,.14);border-radius:3px;padding:5px 6px}
.jtc-ambiente a{color:var(--neon);text-decoration:underline}
.jtc-pie{display:flex;justify-content:space-between;font-family:var(--f-tag);font-size:2.69cqw;color:var(--muted)}
.jt-cookie-botones{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.jtc-btn{font:900 15px var(--f-body);padding:13px 10px;border:2px solid #000;cursor:pointer;transition:transform .15s,box-shadow .15s}
.jtc-aceptar{background:var(--silver);color:#05090B;box-shadow:4px 4px 0 var(--neon)}
.jtc-rechazar{background:#0B1F25;color:var(--text);box-shadow:4px 4px 0 var(--neon);outline:1px solid rgba(132,240,249,.5);outline-offset:-4px}
.jtc-btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--neon)}
.ft-cookies{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline}
.ft-cookies:hover{color:var(--neon)}

/* ---------- Textos legales y páginas de contenido ---------- */
.entry{font-size:15.5px;line-height:1.7;color:#D6E3E8}
.entry > * + *{margin-top:14px}
.entry h2{font-size:clamp(20px,2.4vw,26px);line-height:1.2;color:var(--text);margin-top:40px;padding-top:18px;border-top:1px solid var(--line)}
.entry h2:first-of-type{margin-top:24px}
.entry h3{font-size:18px;margin-top:26px}
.entry ul,.entry ol{padding-left:22px;display:grid;gap:6px}
.entry li::marker{color:var(--neon)}
.entry strong,.entry b{color:var(--text)}
.entry em{color:var(--muted)}
.entry blockquote{margin:18px 0;padding:14px 18px;background:var(--panel);border-left:3px solid var(--neon);border-radius:0 8px 8px 0}
.entry blockquote p + p{margin-top:10px}
.entry table{display:block;overflow-x:auto;width:100%;border-collapse:collapse;font-size:14px;margin-top:18px}
.entry th,.entry td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;min-width:140px}
.entry th{color:var(--text);font-weight:900;background:var(--panel)}
.entry code{font-size:12.5px;background:var(--panel);padding:1px 6px;border-radius:4px;color:var(--ice);overflow-wrap:anywhere}

/* ---------- Visor de imágenes de producto (propio, sin PhotoSwipe) ---------- */
.woocommerce-product-gallery__image a{cursor:zoom-in;display:block}
.jt-visor{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:clamp(56px,7vw,80px) clamp(16px,4vw,48px);background:rgba(2,6,8,.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.jt-visor[hidden]{display:none}
.jt-visor.abierto{animation:jtv-fondo .25s ease-out both}
.jt-visor.abierto .jt-visor-marco{animation:jtv-entra .35s cubic-bezier(.2,.9,.25,1.1) both}
@keyframes jtv-fondo{from{background:rgba(2,6,8,0)}}
@keyframes jtv-entra{from{transform:scale(.9) rotate(-2deg);opacity:0}}
.jt-visor-marco{position:relative;width:min(860px,100%,calc(100vh - 150px));width:min(860px,100%,calc(100dvh - 150px));aspect-ratio:1/1;display:grid;place-items:center;padding:3px;border-radius:14px;background:linear-gradient(135deg,var(--ice),var(--neon) 30%,var(--teal) 55%,var(--neon) 80%,var(--ice));box-shadow:0 0 0 1px #000,0 0 34px rgba(27,228,245,.45),0 30px 70px rgba(0,0,0,.7)}
.jt-visor-marco::before{content:"";position:absolute;inset:3px;border-radius:11px;background:radial-gradient(circle at 50% 56%,#173E48 0%,#0B151A 62%);z-index:0}
.jt-visor-marco::after{content:"";position:absolute;inset:3px;border-radius:11px;background:repeating-conic-gradient(from 0deg at 50% 56%,rgba(132,240,249,.09) 0 1.6deg,transparent 1.6deg 8deg);z-index:0;pointer-events:none}
.jt-visor-img{position:relative;z-index:1;max-width:88%;max-height:88%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 26px 34px rgba(0,0,0,.7))}
/* La X: sello cian con borde negro y sombra dura, gira al pasar por encima */
.jt-visor-cerrar{position:fixed;top:calc(16px + env(safe-area-inset-top,0px));right:16px;z-index:2;width:58px;height:58px;display:grid;place-items:center;border:3px solid #000;border-radius:12px;background:var(--neon);box-shadow:5px 5px 0 #000,0 0 26px rgba(27,228,245,.7);cursor:pointer;transform:rotate(-6deg);transition:transform .2s cubic-bezier(.3,1.6,.5,1),box-shadow .2s}
.jt-visor-cerrar span,.jt-visor-cerrar span::before{position:absolute;width:30px;height:6px;border-radius:3px;background:#031417}
.jt-visor-cerrar span{transform:rotate(45deg)}
.jt-visor-cerrar span::before{content:"";left:0;top:0;transform:rotate(90deg)}
.jt-visor-cerrar:hover{transform:rotate(90deg) scale(1.08);box-shadow:3px 3px 0 #000,0 0 36px rgba(27,228,245,.9)}
.jt-visor-cerrar:focus-visible{outline:3px solid #fff;outline-offset:4px}
.jt-visor-nav{position:fixed;top:50%;z-index:2;width:50px;height:50px;margin-top:-25px;border:2px solid #000;border-radius:50%;background:var(--panel);color:var(--neon);font:900 30px/1 var(--f-body);cursor:pointer;box-shadow:0 0 0 2px var(--neon),0 0 18px rgba(27,228,245,.5)}
.jt-visor-nav.ant{left:16px}.jt-visor-nav.sig{right:16px}
.jt-visor-nav:hover{background:var(--neon);color:#031417}
.jt-visor-cuenta{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);font-family:var(--f-tag);color:var(--ice);font-size:13px;letter-spacing:.1em}
@media (max-width:560px){.jt-visor-cerrar{width:50px;height:50px;top:calc(12px + env(safe-area-inset-top,0px));right:12px}.jt-visor-cerrar span,.jt-visor-cerrar span::before{width:26px;height:5px}.jt-visor-nav{top:auto;bottom:calc(14px + env(safe-area-inset-bottom,0px));margin-top:0}}

/* ---------- Vitrina: bolsillos enlazados, vendida y página completa ---------- */
a.pocket{color:inherit;text-decoration:none;transition:transform .2s}
a.pocket:hover{transform:translateY(-3px)}
.sello-vendida{display:none;position:absolute;left:50%;top:38%;z-index:6;transform:translate(-50%,-50%) rotate(-14deg);font-family:var(--f-display);font-size:clamp(12px,1.6vw,20px);letter-spacing:.06em;text-transform:uppercase;color:#FF5A6E;border:3px solid #FF5A6E;border-radius:6px;padding:4px 10px;background:rgba(7,9,12,.75);box-shadow:0 0 18px rgba(255,90,110,.45);pointer-events:none}
.pocket.vendida .sello-vendida{display:block}
.pocket.vendida .sleeve{filter:grayscale(.75) brightness(.7)}
.pocket.vendida .meta span{color:#FF8A96}
.carpeta{display:grid;gap:clamp(28px,4vw,48px);margin-top:28px}
.carpeta .binder{max-width:760px}
.vitrina-intro{color:#CFDDE3;max-width:62ch}
/* Ficha de una carta suelta */
.jt-carta-datos{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}
.jt-carta-datos div{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 12px}
.jt-carta-datos dt{font-family:var(--f-tag);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--neon)}
.jt-carta-datos dd{margin:0;font-weight:700}
.jt-solo-tienda{margin:16px 0;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--neon);border-radius:10px;display:grid;gap:12px;justify-items:start}
/* Aviso en directo cuando algo se vende mientras se mira */
.jt-vivo{display:none;margin:12px 0;padding:12px 16px;border-radius:10px;background:#2A1218;border:1px solid #FF5A6E;color:#FFD6DC;font-weight:700}
.jt-vivo.on{display:block}

/* Texto seleccionado: el amarillo de la cinta policial */
::selection{background:#FFD21F;color:#111;text-shadow:none}

/* Redes sociales */
.redes{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}
.redes a{display:inline-flex;align-items:center;gap:7px;text-decoration:none;border:0;color:inherit}
.redes a:hover{color:var(--neon)}
.redes svg{width:18px;height:18px;flex:none}
.ft .redes{display:flex}

/* Migas de pan y «Explora» (formatos y expansiones) */
.migas ol{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:4px 0;font-size:13px;color:var(--muted)}
.migas li+li::before{content:"›";margin:0 8px;color:var(--line-2,#3a4a52)}
.migas a{color:var(--muted);text-decoration:none}
.migas a:hover{color:var(--neon)}
.migas li[aria-current]{color:var(--text)}
.explora{display:grid;gap:10px;margin:18px 0 26px}
.chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.chips-tit{font-family:var(--f-tag,monospace);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ice,#84F0F9);margin-right:4px}
.chip{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--text);text-decoration:none;background:var(--panel)}
.chip:hover{border-color:var(--neon);color:var(--neon)}
.chip.on{background:var(--neon);border-color:var(--neon);color:#031417}
@media (max-width:600px){.chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.chip{white-space:nowrap}}

/* Menú: «Tienda» despliega las categorías */
nav.main .has-sub{position:relative}
nav.main .has-sub>a::after{content:"";display:inline-block;width:6px;height:6px;margin:0 0 3px 7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
nav.main ul.sub{display:none;position:absolute;top:100%;left:-16px;z-index:60;min-width:250px;padding:10px 0;margin-top:8px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.55);flex-direction:column;gap:0;font-size:16px}
nav.main ul.sub::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
nav.main .has-sub:hover>ul.sub,nav.main .has-sub:focus-within>ul.sub{display:flex}
nav.main ul.sub a{display:flex;align-items:center;gap:12px;padding:8px 18px}
nav.main ul.sub a:hover{background:var(--panel-2);color:var(--neon)}
nav.main ul.sub .sub-sep{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}
.sub .mi{flex:none;width:22px;height:22px;color:var(--neon)}
.mobile-nav ul.sub a{display:flex;align-items:center;gap:10px}
.mobile-nav ul.sub .mi{width:20px;height:20px}
.mobile-nav ul.sub{display:grid;gap:0;margin:0 0 6px 14px;padding-left:12px;border-left:2px solid var(--line);font-weight:400}
.mobile-nav ul.sub a{padding:6px 0}

/* Pie con la trama de puntos */
.site-footer{position:relative;overflow:hidden}
.site-footer::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,rgba(27,228,245,.3) 1.3px,transparent 1.6px) 0 0/11px 11px;-webkit-mask:linear-gradient(200deg,#000 0%,transparent 55%);mask:linear-gradient(200deg,#000 0%,transparent 55%)}
.site-footer>.wrap{position:relative}

/* Vitrina: precio orientativo y «¿Buscas una carta concreta?» */
.orientativo{display:block;font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0}
.pocket .meta abbr{text-decoration:none;color:var(--muted)}
.jt-solo-tienda .jt-nota{font-size:13px;color:var(--muted)}
.busco-carta{margin-top:28px;padding:18px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--neon);border-radius:12px}
.busco-carta b{display:block;font-family:var(--f-display);font-weight:400;font-size:20px}
.busco-carta span{color:var(--muted);font-size:14px}

/* Preventa: entrega aproximada · Venta online apagada */
.jt-entrega{margin:0 0 12px;font-size:14px;color:var(--text)}
.jt-entrega b{color:var(--neon)}
.jt-proximamente{margin:16px 0;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--neon);border-radius:10px;display:grid;gap:12px;justify-items:start}
.ord{font-family:var(--f-body);font-weight:900;font-size:.62em;vertical-align:.55em;margin-left:.02em}

/* Fotos del listado enteras (WooCommerce las ponía al 100 % de ancho y los sobres se cortaban) */
.woocommerce ul.products li.product .stage img,.stage img{position:absolute;inset:6% 9%;width:82%;height:88%;max-height:none;object-fit:contain;margin:0}
/* Productos del bloque principal sin cortar por abajo */
/* Bloque principal: los 4 elementos flotan alrededor del logo sin taparlo.
   Se dimensionan por ALTO (un sobre alto no puede crecer más que una caja ancha) */
.stage-hero .pimg{width:auto;max-width:none}
.stage-hero .p1{height:31%;left:1%;right:auto;bottom:6%;top:auto;transform:rotate(-7deg);animation:jt-flota 6s ease-in-out infinite}
.stage-hero .p2{height:36%;right:2%;left:auto;bottom:9%;top:auto;transform:rotate(7deg);animation:jt-flota 7s ease-in-out -2s infinite}
.stage-hero .p3{height:25%;right:9%;left:auto;top:5%;bottom:auto;transform:rotate(10deg);z-index:2;opacity:1;animation:jt-flota 5.5s ease-in-out -4s infinite}
.stage-hero .sticker{left:13%;top:9%;animation:jt-flota 6.5s ease-in-out -1s infinite}
@keyframes jt-flota{0%,100%{translate:0 0}50%{translate:0 -10px}}
@media (max-width:700px){.stage-hero .p1{height:27%}.stage-hero .p2{height:31%}.stage-hero .p3{height:22%}.stage-hero .sticker{left:4%;top:4%}}
.stage-hero .sticker{background:#FFD21F;color:#111}

/* Sin zoom por doble toque en toda la web (al pasar fotos del visor rápido el móvil ampliaba la página).
   El zoom con dos dedos sigue funcionando. */
html{touch-action:manipulation}
.jt-visor{touch-action:pan-y}

/* Miniaturas de la galería: hueco cuadrado y foto entera dentro */
.woocommerce div.product div.images .woocommerce-product-gallery__image:not(:first-child) a{aspect-ratio:1/1;display:grid;place-items:center}
.woocommerce div.product div.images .woocommerce-product-gallery__image:not(:first-child) img{width:100%;height:100%;object-fit:contain}

/* Visor: la foto va fijada dentro del marco cuadrado y se encaja entera (antes una foto alta estiraba
   el marco por encima de la pantalla). El marco cabe siempre: por ancho y por alto de la ventana. */
.jt-visor-marco{width:min(860px,calc(100vw - 32px),calc(100vh - 150px));width:min(860px,calc(100vw - 32px),calc(100dvh - 150px));height:auto;overflow:hidden}
.jt-visor .jt-visor-img{position:absolute;inset:6%;width:88%;height:88%;max-width:none;max-height:none;object-fit:contain}   /* .jt-visor delante: le gana a «.woocommerce img{height:auto}» */
@media (max-width:560px){.jt-visor-marco{width:min(calc(100vw - 24px),calc(100dvh - 190px))}}

/* ---------- Precios: amarillo de la cinta policial y a la medida de su hueco ----------
   El precio grande de la ficha (div.product … span.price) se colaba en «Productos relacionados»:
   ahora solo la ficha lo tiene grande. En las tarjetas, precio y botón comparten fila; si no caben,
   el botón baja a la línea siguiente en vez de taparse. */
:root{--cinta:#FFD21F}
.price,.woocommerce ul.products li.product .price,
.woocommerce div.product ul.products li.product .price,.woocommerce div.product ul.products li.product span.price{font-size:clamp(17px,1.7vw,22px)!important;color:var(--cinta)!important;line-height:1.1;white-space:nowrap;min-width:0}
.woocommerce div.product .summary p.price,.woocommerce div.product .summary span.price{font-size:clamp(30px,4vw,44px)!important;color:var(--cinta)!important}
.price del,.woocommerce .price del{color:var(--muted)!important}
.buy{flex-wrap:wrap;row-gap:10px}
.buy .button,.buy a.button,.buy button{flex-shrink:0;margin-left:auto}

/* ---------- Pago (bloques de WooCommerce) en la paleta oscura ----------
   Los campos venían en blanco con el texto claro del tema: no se leía nada. */
.wc-block-checkout,.wc-block-cart{color:var(--text)}
.wc-block-components-text-input input,.wc-block-components-text-input textarea,
.wc-block-components-textarea,.wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-form .wc-block-components-text-input input{background:var(--panel-2)!important;color:var(--text)!important;border:1px solid #34474F!important;border-radius:8px!important}
.wc-block-components-text-input input:focus,.wc-blocks-components-select .wc-blocks-components-select__select:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input:focus{border-color:var(--neon)!important;box-shadow:0 0 0 1px var(--neon)!important;outline:0}
.wc-block-components-text-input label,.wc-blocks-components-select .wc-blocks-components-select__label,
.wc-block-components-combobox .wc-block-components-combobox-control label{color:var(--muted)!important}
.wc-block-components-text-input input::placeholder{color:var(--muted)}
.wc-blocks-components-select .wc-blocks-components-select__expand{fill:var(--text)}
.wc-blocks-components-select__select option{background:var(--panel);color:var(--text)}
input:-webkit-autofill{-webkit-text-fill-color:var(--text)!important;box-shadow:0 0 0 40px var(--panel-2) inset!important}
/* Envío / Recogida: la opción elegida, en cian con texto oscuro; la otra, panel con texto claro */
.wc-block-checkout__shipping-method-container{background:var(--panel)!important;border:1px solid var(--line);border-radius:12px;padding:6px;gap:6px}
.wc-block-checkout__shipping-method-option{background:transparent!important;color:var(--text)!important;border:0!important;border-radius:8px!important;box-shadow:none!important}
.wc-block-checkout__shipping-method-option svg{fill:currentColor}
.wc-block-checkout__shipping-method-option--selected{background:var(--neon)!important;color:#031417!important;font-weight:700}
/* Listas de opciones (métodos de envío, puntos de recogida, pago) */
.wc-block-components-radio-control__option,.wc-block-components-radio-control-accordion-option{color:var(--text)}
.wc-block-components-radio-control__input{background:var(--panel-2)!important;border-color:var(--muted)!important}
.wc-block-components-radio-control__input:checked::before{background:var(--neon)!important}
.wc-block-components-radio-control__secondary-label,.wc-block-components-radio-control__description,
.wc-block-components-radio-control__secondary-description{color:var(--muted)!important}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted{box-shadow:inset 0 0 0 2px var(--neon)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{background:var(--panel-2);border-color:var(--muted)}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:#031417}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:var(--neon);border-color:var(--neon)}
.wc-block-components-checkout-step__description,.wc-block-components-address-card,.wc-block-components-totals-item__description{color:var(--muted)}
.wc-block-components-address-card{background:var(--panel);border-color:var(--line)}
.wc-block-components-validation-error p{color:#FF8A96}
/* Autorrelleno del navegador (pinta los campos en gris claro): se tapa con una sombra interior oscura */
.wc-blocks-components-select__container{background:var(--panel-2)!important;border-radius:8px}
select:-webkit-autofill,select:autofill,input:autofill,
.wc-blocks-components-select .wc-blocks-components-select__select:-webkit-autofill{-webkit-text-fill-color:var(--text)!important;box-shadow:0 0 0 60px var(--panel-2) inset!important;background-color:var(--panel-2)!important;color:var(--text)!important}
/* Nombre de cada opción de envío/pago */
.wc-block-components-radio-control__label,.wc-block-components-radio-control__label-group,
.wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__label{color:var(--text)!important}
.wc-block-components-radio-control__secondary-label{color:var(--cinta)!important}

/* ---------- Aviso de disponibilidad (ficha) ---------- */
.jt-aviso{margin:14px 0 18px;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-radius:12px;display:grid;gap:10px}
.jt-aviso-titulo{margin:0;color:var(--text);line-height:1.45}
.jt-aviso-fila{display:flex;flex-wrap:wrap;gap:10px}
.jt-aviso-fila input[type=email]{flex:1 1 220px;min-width:0;min-height:46px;padding:10px 12px;background:var(--panel-2);color:var(--text);border:1px solid #34474F;border-radius:8px;font:inherit}
.jt-aviso-fila input[type=email]:focus{border-color:var(--neon);outline:0;box-shadow:0 0 0 1px var(--neon)}
.jt-aviso-fila .button{flex:0 0 auto}
.jt-aviso-acepto{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--muted)}
.jt-aviso-acepto input{margin-top:3px;accent-color:var(--neon);flex:0 0 auto;width:18px;height:18px}
.jt-aviso-acepto a{color:var(--ice)}
.jt-aviso-estado{margin:0;font-size:14px;color:var(--ice);min-height:1em}
.jt-aviso.hecho .jt-aviso-estado{color:var(--cinta);font-weight:700}
.jt-aviso-trampa{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

/* ---------- Lo que falta para el envío gratis (carrito y pago) ---------- */
.jt-gratis{margin:0 0 18px;padding:12px 16px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--cinta);border-radius:10px;color:var(--text)}
.jt-gratis p{margin:0 0 8px;font-size:15px;line-height:1.4}
.jt-gratis b,.jt-gratis .amount{color:var(--cinta)}
.jt-gratis-barra{display:block;height:8px;background:var(--panel-2);border-radius:99px;overflow:hidden}
.jt-gratis-barra i{display:block;height:100%;background:linear-gradient(90deg,var(--neon),var(--cinta));border-radius:99px;transition:width .4s ease}
.jt-gratis.conseguido{border-left-color:var(--neon)}
.jt-gratis-fila td{padding:10px 0!important;border:0!important}
.jt-gratis-fila .jt-gratis{margin:0}

/* Foto principal de la ficha: hueco cuadrado y la foto lo llena (contenida), sea del tamaño que sea.
   Antes una foto pequeña se quedaba a su tamaño real en un marco ancho y bajo. */
.woocommerce div.product div.images .woocommerce-product-gallery__image:first-child a{aspect-ratio:1/1;display:grid;place-items:center}
.woocommerce div.product div.images .woocommerce-product-gallery__image:first-child img{width:100%;height:100%;max-width:none;object-fit:contain}

/* ---------- Líneas de la cesta (carrito y cesta lateral) ---------- */
.jt-lineas{display:grid;gap:10px}
.jt-linea{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;background:var(--panel-2);border:1px solid var(--line);border-radius:10px}
.jt-linea-img{width:64px;height:64px;border-radius:8px;background:radial-gradient(circle at 50% 60%,#163A44 0%,#0D1418 70%);display:grid;place-items:center}
.jt-linea-img img{max-width:84%;max-height:84%;width:auto;height:auto;object-fit:contain}
.jt-linea-nom{font-weight:700;font-size:14.5px;line-height:1.3}
.jt-linea-nom a{color:var(--text);text-decoration:none}
.jt-linea-nom a:hover{color:var(--ice)}
.jt-linea-meta{font-size:12px;color:var(--muted)}
.jt-linea-pre{font-size:12px;color:var(--neon);font-weight:700}
.jt-linea-acc{display:flex;gap:12px;align-items:center;margin-top:6px;flex-wrap:wrap}
.jt-linea-precio{font-family:var(--f-display);color:var(--cinta);font-size:16px;white-space:nowrap}
.jt-cant{display:inline-flex;align-items:center;border:1px solid #34474F;border-radius:6px;overflow:hidden;background:var(--panel)}
.jt-cant button{all:unset;width:30px;height:30px;display:grid;place-items:center;cursor:pointer;font-size:17px;color:var(--text)}
.jt-cant button:hover{background:rgba(27,228,245,.12)}
.jt-cant button:focus-visible{outline:2px solid var(--cinta);outline-offset:-2px}
.jt-cant button[disabled]{opacity:.35;cursor:default;background:none}
.jt-cant .num{min-width:28px;text-align:center;font-weight:700;font-size:14px}
.jt-cant .quantity{margin:0}
.jt-cant input.qty{width:38px!important;min-height:30px!important;height:30px;padding:0!important;border:0!important;border-radius:0!important;background:none!important;text-align:center;font-weight:700;color:var(--text)!important;-moz-appearance:textfield}
.jt-cant input.qty::-webkit-inner-spin-button,.jt-cant input.qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.jt-quitar,.jt-c-quitar{all:unset;cursor:pointer;color:var(--muted)!important;font-size:12.5px;text-decoration:underline}
.jt-quitar:hover,.jt-c-quitar:hover{color:var(--text)!important}
.jt-c-quitar:focus-visible,.jt-quitar:focus-visible{outline:2px solid var(--cinta)}
.jt-totales{display:grid;gap:6px;font-size:14px}
.jt-totales>div{display:flex;justify-content:space-between;gap:12px}
.jt-totales .jt-gris{color:var(--muted)}
.jt-totales .jt-desc{color:var(--ok,#58D68D)}
.jt-totales .jt-total{font-size:16px;font-weight:900;border-top:1px solid var(--line);padding-top:10px;margin-top:4px;align-items:baseline}
.jt-totales .jt-total small{font-weight:400;color:var(--muted);font-size:12px}
.jt-totales .jt-total .num{font-family:var(--f-display);font-weight:400;color:var(--cinta);font-size:22px}
.jt-btn-pagar{width:100%;background:var(--neon)!important;color:#031417!important;box-shadow:5px 5px 0 var(--cinta)!important;font-size:16px}
.jt-btn-pagar:hover{background:#5CEFFA!important;box-shadow:7px 7px 0 var(--cinta)!important}

/* ---------- Cesta lateral ---------- */
.jt-cesta-velo{position:fixed;inset:0;background:rgba(2,6,8,.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1200}
.jt-cesta{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);z-index:1201;background:var(--panel);border-left:1px solid #34474F;display:flex;flex-direction:column;animation:jt-entra .3s cubic-bezier(.2,.9,.25,1.05);padding-top:env(safe-area-inset-top,0px)}
.jt-cesta[hidden],.jt-cesta-velo[hidden]{display:none}
@keyframes jt-entra{from{transform:translateX(30px);opacity:0}}
@media (max-width:640px){.jt-cesta{top:auto;width:100%;max-height:90%;border-left:0;border-top:1px solid #34474F;border-radius:18px 18px 0 0;animation-name:jt-sube;padding-top:0}}
@keyframes jt-sube{from{transform:translateY(40px);opacity:0}}
.jt-cesta-cab{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}
.jt-cesta-cab b{display:flex;gap:9px;align-items:center;font-size:16px}
.jt-cesta-cab b::before{content:"";width:22px;height:22px;border-radius:50%;background:#58D68D url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306210F' stroke-width='3.4'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/13px no-repeat}
.jt-cerrar{all:unset;cursor:pointer;color:var(--muted);font-size:28px;line-height:1;padding:2px 8px;border-radius:6px}
.jt-cerrar:hover{color:var(--text)}.jt-cerrar:focus-visible{outline:2px solid var(--cinta)}
.jt-cesta-contenido{display:flex;flex-direction:column;min-height:0;flex:1;transition:opacity .2s}
.jt-cesta-contenido.cargando{opacity:.55;pointer-events:none}
.jt-cesta-cuerpo{overflow:auto;padding:14px 16px;display:grid;gap:14px;align-content:start;flex:1}
.jt-cesta-pie{border-top:1px solid var(--line);padding:14px 16px calc(16px + env(safe-area-inset-bottom,0px));display:grid;gap:12px;background:var(--panel-2)}
.jt-seguir{all:unset;cursor:pointer;text-align:center;padding:11px;border:1px solid #34474F;border-radius:4px;font-weight:700;color:var(--text)}
.jt-seguir:hover{border-color:var(--ice)}.jt-seguir:focus-visible{outline:2px solid var(--cinta)}
.jt-vacia{color:var(--muted);margin:0}
.jt-sug-tit{margin:4px 0 -4px;font-family:var(--f-tag);font-size:12px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.jt-sugeridos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.jt-sug{border:1px solid var(--line);border-radius:10px;padding:10px;display:grid;gap:6px;background:var(--panel-2);align-content:start}
.jt-sug-img{height:70px;display:grid;place-items:center}
.jt-sug-img img{max-height:70px;width:auto;object-fit:contain}
.jt-sug-nom{font-size:13px;font-weight:700;line-height:1.25;color:var(--text);text-decoration:none}
.jt-sug-fila{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap}
.jt-sug .price,.jt-sug .jt-precio{font-family:var(--f-display);color:var(--cinta);font-size:14px}
.jt-mas-sug{border:1px solid var(--neon);color:var(--neon);background:transparent;border-radius:6px;font-size:13px;font-weight:700;padding:4px 8px;text-decoration:none;white-space:nowrap}
.jt-mas-sug:hover{background:var(--neon);color:#031417}
.jt-mas-sug.hecho,.jt-mas-sug.added{border-color:#34474F;color:var(--muted);pointer-events:none}
.jt-sug .added_to_cart{display:none}
.jt-cesta .jt-gratis{margin:0}
.jt-entrega span{display:block;color:var(--muted);margin-top:2px}

/* =========================================================================
 * Auditoría 4-11-2026: portada, filtros de los listados y ficha de producto
 * ====================================================================== */
:root{
  --i-envio:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M2 6h12v10H2zM14 9h4l4 4v3h-8z'/%3E%3Ccircle cx='6.5' cy='17.5' r='1.8' fill='%23000'/%3E%3Ccircle cx='17.5' cy='17.5' r='1.8' fill='%23000'/%3E%3C/svg%3E");
  --i-tienda:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 9l2-5h14l2 5M4 9v11h16V9M3 9h18M9 20v-6h6v6'/%3E%3C/svg%3E");
  --i-sello:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 2l3 2.2 3.6.2.9 3.5 2.6 2.6-1.5 3.3.4 3.6-3.4 1.2-2 3-3.6-1-3.6 1-2-3-3.4-1.2.4-3.6L1.9 10.5l2.6-2.6.9-3.5 3.6-.2z'/%3E%3Cpath d='M8 12l3 3 5-6'/%3E%3C/svg%3E");
  --i-pago:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
}
.i-envio{--ico:var(--i-envio)} .i-tienda{--ico:var(--i-tienda)} .i-sello{--ico:var(--i-sello)} .i-pago{--ico:var(--i-pago)}

/* Portada: el H1 lleva lo que es la tienda (la línea pequeña) y el lema */
.hero h1{margin-top:0}
.hero h1 .eyebrow{display:flex;margin-bottom:18px;font-size:12px;line-height:1.4;letter-spacing:.12em}
.hero h1 .lema{display:block}

/* Portada: franja de condiciones */
.ventajas{background:var(--panel-2);border-block:1px solid var(--line)}
.ventajas ul{list-style:none;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 24px;padding-block:18px}
.ventajas li{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:12px;align-items:center;line-height:1.35}
.ventajas li::before{content:"";grid-row:span 2;width:30px;height:30px;background:var(--neon);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.ventajas b{font-size:14.5px;color:var(--text)}
.ventajas span{font-size:13px;color:var(--muted)}
@media (max-width:900px){.ventajas ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.ventajas li{grid-template-columns:24px minmax(0,1fr)}.ventajas li::before{width:24px;height:24px}.ventajas b{font-size:13.5px}.ventajas span{font-size:12px}}

/* Portada: vitrina sin cartas = una fila de muestra */
.vitrina-vacia .binder{grid-template-columns:repeat(3,minmax(0,1fr))}

/* /tienda/: formatos como navegación */
.jt-formatos{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}
.jt-formatos a{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--text);font-weight:700;font-size:14px;text-decoration:none}
.jt-formatos a span{font:12px var(--f-tag);color:var(--muted)}
.jt-formatos a:hover{border-color:var(--neon);color:var(--neon)}
@media (max-width:600px){.jt-formatos{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter)}.jt-formatos a{white-space:nowrap}}

/* Filtros de los listados */
.jt-filtros{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:4px 0 22px;padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:12px;position:relative;z-index:5}
.jt-filtros-tit{font:12px var(--f-tag);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.jt-filtro{position:relative}
.jt-filtro summary{list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border:1px solid #2A3A44;border-radius:8px;background:var(--panel-2);color:var(--text);font-size:14px;font-weight:700;cursor:pointer;user-select:none}
.jt-filtro summary::-webkit-details-marker{display:none}
.jt-filtro summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.7}
.jt-filtro[open] summary::after{transform:translateY(2px) rotate(-135deg)}
.jt-filtro summary:hover,.jt-filtro[open] summary{border-color:var(--neon)}
.jt-filtro.activo summary{border-color:var(--neon);color:var(--neon)}
.jt-filtro summary b{color:var(--text);font-weight:900}
.jt-filtro ul{list-style:none;margin:0;padding:6px;position:absolute;top:calc(100% + 6px);left:0;min-width:240px;max-height:min(60vh,420px);overflow:auto;background:var(--panel-2);border:1px solid var(--neon);border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.55);z-index:20}
.jt-filtro li a{display:flex;justify-content:space-between;gap:16px;padding:9px 10px;border-radius:6px;color:var(--text);text-decoration:none;font-size:14px}
.jt-filtro li a em{font-style:normal;min-width:0}
.jt-filtro li a span{font:12px var(--f-tag);color:var(--muted)}
.jt-filtro li a:hover{background:var(--panel)}
.jt-filtro li a[aria-current]{background:var(--neon);color:#031417;font-weight:900}
.jt-filtro li a[aria-current] span{color:#031417}
.jt-filtro-si{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:8px 6px;color:var(--text);font-size:14px;font-weight:700;text-decoration:none}
.jt-filtro-si i{width:34px;height:20px;border-radius:999px;background:#2A3A44;position:relative;transition:background .15s}
.jt-filtro-si i::after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--text);transition:transform .15s}
.jt-filtro-si.activo i{background:var(--neon)}
.jt-filtro-si.activo i::after{transform:translateX(14px);background:#031417}
.jt-filtros-quitar{margin-left:auto;font-size:13.5px;color:var(--ice);text-decoration:underline;text-underline-offset:3px}
.jt-sin-resultados{color:var(--muted)}
.jt-sin-resultados a{color:var(--ice)}
@media (max-width:600px){
  .jt-filtros{padding:10px}
  .jt-filtros-tit{width:100%}
  .jt-filtro{flex:1 1 calc(50% - 10px)}
  .jt-filtro summary{width:100%;justify-content:space-between}
  .jt-filtro ul{position:fixed;left:12px;right:12px;top:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px));min-width:0;max-height:70vh}
  .jt-filtros-quitar{margin-left:0}
}

/* Paginación de los listados: botones que se pueden pulsar */
.woocommerce nav.woocommerce-pagination ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;border:0!important;margin:28px 0 0!important}
.woocommerce nav.woocommerce-pagination ul li{border:0!important;float:none!important;overflow:visible!important}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:grid!important;place-items:center;min-width:44px;height:44px;padding:0 12px!important;border:1px solid var(--line)!important;border-radius:8px;background:var(--panel)!important;color:var(--text)!important;font-weight:900;font-size:15px!important;line-height:1!important;text-decoration:none}
.woocommerce nav.woocommerce-pagination ul li a:hover{border-color:var(--neon)!important;color:var(--neon)!important}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--neon)!important;border-color:var(--neon)!important;color:#031417!important}

/* Texto de la categoría bajo los productos */
.jt-guia{max-width:78ch;margin:clamp(40px,6vw,64px) 0 0;padding-top:32px;border-top:1px solid var(--line);color:var(--muted)}
.jt-guia h2{font-size:clamp(22px,2.6vw,30px);color:var(--text);margin-bottom:14px}
.jt-guia h3{font-family:var(--f-body);font-weight:900;font-size:17px;color:var(--text);margin:24px 0 6px}
.jt-guia p{margin:0 0 12px}
.jt-guia ul{margin:0 0 12px;padding-left:20px}
.jt-guia a{color:var(--ice)}
.jt-guia details{border-bottom:1px solid var(--line);padding:12px 0}
.jt-guia summary{cursor:pointer;color:var(--text);font-weight:700}
.jt-guia details p{margin:8px 0 0}

/* Ficha: condiciones de compra junto al botón */
.jt-condiciones{list-style:none;margin:18px 0 6px;padding:14px 16px;display:grid;gap:9px;background:var(--panel);border:1px solid var(--line);border-radius:12px;font-size:14px;color:var(--muted)}
.jt-condiciones li{display:flex;align-items:flex-start;gap:10px;line-height:1.4}
.jt-condiciones li span{flex:1;min-width:0;padding-top:1px}
.jt-condiciones li::before{content:"";flex:0 0 20px;height:20px;background:var(--neon);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.jt-condiciones b{color:var(--text)}

/* Ficha: sobre este producto + detalles (sustituye a las pestañas) */
.jt-ficha-info{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);margin-top:clamp(28px,4vw,48px);padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--line)}
.jt-ficha-info.solo-detalles{grid-template-columns:minmax(0,1fr)}
.jt-ficha-info.solo-detalles .jt-ficha-detalles{max-width:560px}
.jt-ficha-info h2{font-size:clamp(20px,2.2vw,26px);margin-bottom:14px;color:var(--text)}
.jt-ficha-desc{color:var(--muted);max-width:70ch}
.jt-ficha-desc p{margin:0 0 12px}
.jt-ficha-desc h3{font-family:var(--f-body);font-weight:900;font-size:16px;color:var(--text);margin:18px 0 6px}
.jt-ficha-desc a{color:var(--ice)}
.jt-ficha-detalles dl{margin:0;display:grid;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}
.jt-ficha-detalles dl div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:11px 16px;border-top:1px solid var(--line)}
.jt-ficha-detalles dl div:first-child{border-top:0}
.jt-ficha-detalles dt{font:12px/1.9 var(--f-tag);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.jt-ficha-detalles dd{margin:0;color:var(--text);font-weight:700}
.jt-ficha-detalles dd a{color:var(--text);text-decoration:underline;text-decoration-color:var(--neon);text-underline-offset:3px}
@media (max-width:760px){.jt-ficha-info{grid-template-columns:minmax(0,1fr)}.jt-ficha-detalles{order:-1}}

/* Ficha: barra fija de compra en el móvil */
.jt-barra-ficha{display:none}
@media (max-width:760px){
  .jt-barra-ficha{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;gap:12px;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:rgba(7,9,12,.96);backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(0,0,0,.45)}
  .jt-barra-ficha[hidden]{display:none!important}
  .jt-barra-ficha-txt{flex:1;min-width:0;display:grid;line-height:1.25}
  .jt-barra-ficha-txt b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .jt-barra-ficha-txt span,.jt-barra-ficha-txt .amount{font-family:var(--f-display);color:var(--cinta);font-size:19px}
  .jt-barra-ficha .button{flex:0 0 auto;padding:11px 20px}
}

/* Agotado o sin precio: WhatsApp dentro de la caja del aviso */
.jt-aviso-acepto span{flex:1;min-width:0}
.jt-aviso-wa{margin:0;padding-top:10px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.jt-aviso-wa a{color:var(--ice);font-weight:700}
@media (max-width:760px){body:has(.jt-barra-ficha){padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}}

/* Bandera del idioma: círculo arriba a la derecha de la foto (la etiqueta de estado va a la izquierda) */
.jt-bandera{position:absolute;top:10px;right:10px;z-index:3;width:30px;height:30px;border-radius:50%;background:#fff center/cover no-repeat;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.55),0 4px 10px rgba(0,0,0,.45);pointer-events:auto}
.b-es{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Crect width='30' height='30' fill='%23AA151B'/%3E%3Crect y='7.5' width='30' height='15' fill='%23F1BF00'/%3E%3C/svg%3E")}
.b-jp{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Crect width='30' height='30' fill='%23fff'/%3E%3Ccircle cx='15' cy='15' r='8' fill='%23BC002D'/%3E%3C/svg%3E")}
.b-en{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='15 0 30 30'%3E%3CclipPath id='t'%3E%3Cpath d='M30,15h30v15zv15h-30zh-30v-15zv-15h30z'/%3E%3C/clipPath%3E%3Crect width='60' height='30' fill='%23012169'/%3E%3Cpath d='M0,0L60,30M60,0L0,30' stroke='%23fff' stroke-width='6'/%3E%3Cpath d='M0,0L60,30M60,0L0,30' clip-path='url(%23t)' stroke='%23C8102E' stroke-width='4'/%3E%3Cpath d='M30,0v30M0,15h60' stroke='%23fff' stroke-width='10'/%3E%3Cpath d='M30,0v30M0,15h60' stroke='%23C8102E' stroke-width='6'/%3E%3C/svg%3E")}
.woocommerce div.product div.images .woocommerce-product-gallery__image:first-child .jt-bandera{top:14px;right:14px;width:42px;height:42px;border-width:3px}
@media (max-width:600px){.jt-bandera{width:26px;height:26px;top:8px;right:8px}}

/* Más idiomas: chino, coreano, francés, alemán, italiano y portugués */
.b-zh{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Crect width='30' height='20' fill='%23EE1C25'/%3E%3Cpath fill='%23FFFF00' d='M5.00,2.00 L5.67,4.07 L7.85,4.07 L6.09,5.35 L6.76,7.43 L5.00,6.15 L3.24,7.43 L3.91,5.35 L2.15,4.07 L4.33,4.07Z M10.80,1.40 L10.38,1.99 L10.82,2.57 L10.12,2.36 L9.71,2.96 L9.69,2.23 L9.00,2.02 L9.69,1.78 L9.67,1.05 L10.11,1.63Z M12.50,3.13 L12.35,3.84 L12.98,4.21 L12.26,4.28 L12.10,4.99 L11.81,4.33 L11.09,4.41 L11.63,3.92 L11.33,3.26 L11.96,3.62Z M12.00,6.00 L12.22,6.69 L12.95,6.69 L12.36,7.12 L12.59,7.81 L12.00,7.38 L11.41,7.81 L11.64,7.12 L11.05,6.69 L11.78,6.69Z M9.50,8.13 L10.04,8.62 L10.67,8.26 L10.37,8.92 L10.91,9.41 L10.19,9.33 L9.90,9.99 L9.74,9.28 L9.02,9.21 L9.65,8.84Z'/%3E%3C/svg%3E")}
.b-ko{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='6 0 24 24'%3E%3Crect width='36' height='24' fill='%23fff'/%3E%3Cg transform='rotate(-33.69 18 12)'%3E%3Cpath d='M12,12a6,6 0 0 1 12,0z' fill='%23CD2E3A'/%3E%3Cpath d='M12,12a6,6 0 0 0 12,0z' fill='%230047A0'/%3E%3Ccircle cx='15' cy='12' r='3' fill='%23CD2E3A'/%3E%3Ccircle cx='21' cy='12' r='3' fill='%230047A0'/%3E%3C/g%3E%3Cg transform='rotate(56.31 10.2 6.8)' fill='%23000'%3E%3Crect x='7.699999999999999' y='5.3' width='5' height='0.8'/%3E%3Crect x='7.699999999999999' y='6.55' width='5' height='0.8'/%3E%3Crect x='7.699999999999999' y='7.8' width='5' height='0.8'/%3E%3C/g%3E%3Cg transform='rotate(56.31 25.8 17.2)' fill='%23000'%3E%3Crect x='23.3' y='15.7' width='2.2' height='0.8'/%3E%3Crect x='26.1' y='15.7' width='2.2' height='0.8'/%3E%3Crect x='23.3' y='16.95' width='2.2' height='0.8'/%3E%3Crect x='26.1' y='16.95' width='2.2' height='0.8'/%3E%3Crect x='23.3' y='18.2' width='2.2' height='0.8'/%3E%3Crect x='26.1' y='18.2' width='2.2' height='0.8'/%3E%3C/g%3E%3Cg transform='rotate(123.69 25.8 6.8)' fill='%23000'%3E%3Crect x='23.3' y='5.3' width='2.2' height='0.8'/%3E%3Crect x='26.1' y='5.3' width='2.2' height='0.8'/%3E%3Crect x='23.3' y='6.55' width='5' height='0.8'/%3E%3Crect x='23.3' y='7.8' width='2.2' height='0.8'/%3E%3Crect x='26.1' y='7.8' width='2.2' height='0.8'/%3E%3C/g%3E%3Cg transform='rotate(123.69 10.2 17.2)' fill='%23000'%3E%3Crect x='7.699999999999999' y='15.7' width='5' height='0.8'/%3E%3Crect x='7.699999999999999' y='16.95' width='2.2' height='0.8'/%3E%3Crect x='10.5' y='16.95' width='2.2' height='0.8'/%3E%3Crect x='7.699999999999999' y='18.2' width='5' height='0.8'/%3E%3C/g%3E%3C/svg%3E")}
.b-fr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Crect width='10' height='30' fill='%230055A4'/%3E%3Crect x='10' width='10' height='30' fill='%23fff'/%3E%3Crect x='20' width='10' height='30' fill='%23EF4135'/%3E%3C/svg%3E")}
.b-de{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Crect width='30' height='10' fill='%23000'/%3E%3Crect y='10' width='30' height='10' fill='%23DD0000'/%3E%3Crect y='20' width='30' height='10' fill='%23FFCE00'/%3E%3C/svg%3E")}
.b-it{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Crect width='10' height='30' fill='%23009246'/%3E%3Crect x='10' width='10' height='30' fill='%23fff'/%3E%3Crect x='20' width='10' height='30' fill='%23CE2B37'/%3E%3C/svg%3E")}
.b-pt{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Crect width='12' height='30' fill='%23006600'/%3E%3Crect x='12' width='18' height='30' fill='%23FF0000'/%3E%3Ccircle cx='12' cy='15' r='5' fill='%23FFCC00'/%3E%3Ccircle cx='12' cy='15' r='3.2' fill='%23FF0000'/%3E%3Crect x='10.6' y='13' width='2.8' height='3.6' rx='0.6' fill='%23fff'/%3E%3C/svg%3E")}

/* Portada · Preventas: cinta policial amarilla cruzando por detrás de los productos */
.preventas-home{position:relative;overflow:hidden;isolation:isolate}
.preventas-home .wrap{position:relative;z-index:1}
.cinta-poli{position:absolute;left:-15%;width:130%;height:64px;z-index:0;display:flex;overflow:hidden;white-space:nowrap;color:#111;border-block:2px solid #111;box-shadow:0 14px 30px rgba(0,0,0,.55);background:var(--cinta,#FFD21F)}
/* Se mueve la cinta entera: cada mitad lleva sus rayas (baldosa de 32 px que encaja en horizontal; el script de la portada
   ajusta el ancho de cada mitad a un múltiplo de 32 para que el bucle no tenga costura) */
.cinta-poli>div{display:flex;flex:none;width:max-content;height:100%;animation:cinta-izq 115s linear infinite;will-change:transform}
.cinta-poli.c2>div,.cinta-poli.c4>div{animation-name:cinta-der;animation-duration:165s}
.cinta-poli.c3>div{animation-duration:105s}
.cinta-poli.c4>div{animation-duration:180s}
@keyframes cinta-izq{to{transform:translateX(-50%)}}
@keyframes cinta-der{from{transform:translateX(-50%)}to{transform:none}}
.cinta-poli span{flex:none;display:flex;align-items:center;height:100%;font-family:var(--f-display);font-size:24px;line-height:1;letter-spacing:.06em;text-transform:uppercase;padding-left:20px;white-space:pre;
  background:linear-gradient(var(--cinta,#FFD21F),var(--cinta,#FFD21F)) center/100% calc(100% - 20px) no-repeat,linear-gradient(-45deg,#111 25%,var(--cinta,#FFD21F) 25% 50%,#111 50% 75%,var(--cinta,#FFD21F) 75%) left top/32px 32px repeat-x,linear-gradient(-45deg,#111 25%,var(--cinta,#FFD21F) 25% 50%,#111 50% 75%,var(--cinta,#FFD21F) 75%) left bottom/32px 32px repeat-x,var(--cinta,#FFD21F)}
.cinta-poli.c1{top:38%;transform:rotate(-7deg)}
.cinta-poli.c2{top:70%;transform:rotate(5deg)}
@media (max-width:760px){.cinta-poli{height:48px}.cinta-poli span{font-size:18px}.cinta-poli.c1{top:22%}.cinta-poli.c2{top:62%}}

/* Menú · «Preventas» con un trozo de la misma cinta policial */
.menu-preventa>a span{position:relative;display:inline-block;padding:7px 12px 6px;color:#111;font-family:var(--f-display);font-weight:400;font-size:14.5px;letter-spacing:.06em;text-transform:uppercase;line-height:1;transform:rotate(-3deg);border-block:1.5px solid #111;box-shadow:0 4px 10px rgba(0,0,0,.45);
  background:repeating-linear-gradient(-45deg,#111 0 5px,var(--cinta,#FFD21F) 5px 10px) top/100% 4px no-repeat,repeating-linear-gradient(-45deg,#111 0 5px,var(--cinta,#FFD21F) 5px 10px) bottom/100% 4px no-repeat,var(--cinta,#FFD21F);
  clip-path:polygon(0 0,100% 0,97% 50%,100% 100%,0 100%,3% 50%)}
nav.main .menu-preventa>a:hover span,.mobile-nav .menu-preventa>a:hover span{transform:rotate(-1deg)}
nav.main .menu-preventa>a:hover{color:inherit}
.mobile-nav .menu-preventa>a span{transform:rotate(-2deg);font-size:16px}

/* Botón de cinta amarilla al final de cada sección («Ver catálogo completo») */
.ver-todo{display:flex;justify-content:center;margin-top:clamp(28px,4vw,44px)}
.btn-cinta{display:inline-block;transform:rotate(-1.5deg);transition:transform .15s}
.btn-cinta span{display:inline-block;padding:17px 34px 16px;color:#111;font-family:var(--f-display);font-size:clamp(16px,1.6vw,20px);letter-spacing:.05em;text-transform:uppercase;line-height:1;border-block:2px solid #111;box-shadow:0 12px 26px rgba(0,0,0,.55);
  background:repeating-linear-gradient(-45deg,#111 0 9px,var(--cinta,#FFD21F) 9px 18px) top/100% 7px no-repeat,repeating-linear-gradient(-45deg,#111 0 9px,var(--cinta,#FFD21F) 9px 18px) bottom/100% 7px no-repeat,var(--cinta,#FFD21F);
  clip-path:polygon(0 0,100% 0,98% 50%,100% 100%,0 100%,2% 50%)}
.btn-cinta:hover{transform:rotate(0) scale(1.03)}
.btn-cinta:focus-visible{outline:none}
.btn-cinta:focus-visible span{outline:3px solid var(--neon);outline-offset:4px}

/* Preventas en el móvil: más cinta y más inclinada para que asome entre y a los lados de las tarjetas */
.cinta-poli.c3,.cinta-poli.c4{display:none}
@media (max-width:760px){
  .preventas-home .grid{padding-inline:22px;gap:34px}
  .cinta-poli.c3,.cinta-poli.c4{display:flex}
  .cinta-poli.c1{top:14%;transform:rotate(-14deg)}
  .cinta-poli.c2{top:36%;transform:rotate(12deg)}
  .cinta-poli.c3{top:58%;transform:rotate(-12deg)}
  .cinta-poli.c4{top:80%;transform:rotate(14deg)}
}

/* Ficha: aviso de arte aleatorio (sobres, minilatas…) */
.jt-aleatorio{display:flex;gap:10px;align-items:flex-start;margin:12px 0 14px;padding:10px 14px;background:var(--panel);border:1px dashed var(--cinta,#FFD21F);border-radius:10px;font-size:14px;color:var(--muted);line-height:1.45}
.jt-aleatorio::before{content:"";flex:0 0 22px;height:22px;margin-top:-1px;background:var(--cinta,#FFD21F);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='4'/%3E%3Ccircle cx='8' cy='8' r='1.3' fill='%23000'/%3E%3Ccircle cx='16' cy='16' r='1.3' fill='%23000'/%3E%3Ccircle cx='12' cy='12' r='1.3' fill='%23000'/%3E%3Ccircle cx='16' cy='8' r='1.3' fill='%23000'/%3E%3Ccircle cx='8' cy='16' r='1.3' fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='4'/%3E%3Ccircle cx='8' cy='8' r='1.3' fill='%23000'/%3E%3Ccircle cx='16' cy='16' r='1.3' fill='%23000'/%3E%3Ccircle cx='12' cy='12' r='1.3' fill='%23000'/%3E%3Ccircle cx='16' cy='8' r='1.3' fill='%23000'/%3E%3Ccircle cx='8' cy='16' r='1.3' fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat}
.jt-aleatorio b{color:var(--text)}

/* ---------- Vitrina: hojear la carpeta (más de 9 cartas; portada y página de la vitrina) ----------
   Sin JavaScript las páginas salen una debajo de otra; con él (.js) se apilan y se pasan con un giro sobre las anillas.
   Las únicas indicaciones son las esquinas dobladas: «Pasa página» (derecha) y «Página anterior» (izquierda, desde la 2.ª). */
.carpeta .hojas{display:grid;gap:clamp(28px,4vw,48px);position:relative;max-width:760px}
.carpeta.centrada .hojas{margin-inline:auto}
.carpeta.en-portada{margin-top:0}
.carpeta.en-portada .hojas{max-width:none}
.carpeta.hojeable:not(.js) .hoja-esquina{display:none}
.carpeta.js .hojas{gap:0;perspective:2400px;touch-action:pan-y}
.carpeta.js .hoja{cursor:grab;-webkit-user-select:none;user-select:none}
.carpeta.arrastrando,.carpeta.arrastrando *{cursor:grabbing!important}
.carpeta.arrastrando .hoja{animation:none!important}
.carpeta.js .hoja{grid-area:1/1;transform-origin:left center;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.carpeta.js .hoja:not(.activa):not(.entra):not(.vuelve){visibility:hidden}
.carpeta.js .hoja.activa{z-index:2}
.carpeta.js .hoja.entra{z-index:1;animation:hoja-luz .9s ease-out both}
.carpeta.js .hoja.sale{z-index:3;animation:hoja-sale .9s cubic-bezier(.45,.05,.35,1) both}
.carpeta.js .hoja.vuelve{z-index:3;animation:hoja-vuelve .9s cubic-bezier(.45,.05,.35,1) both}
.carpeta.js .hoja.activa.tapada{animation:hoja-sombra .9s ease-in both}
@keyframes hoja-sale{0%{transform:none;filter:none}35%{filter:brightness(1.08)}100%{transform:rotateY(-180deg);filter:brightness(.35)}}
@keyframes hoja-vuelve{0%{transform:rotateY(-180deg);filter:brightness(.35)}65%{filter:brightness(1.08)}100%{transform:none;filter:none}}
@keyframes hoja-luz{from{filter:brightness(.45)}to{filter:none}}
@keyframes hoja-sombra{to{filter:brightness(.45)}}

/* Pestañas de separador que asoman por los lados de la página: «Pasar página» (derecha) y «Página anterior»
   (izquierda, desde la 2.ª). Van fuera de la hoja para no tapar ninguna carta; la carpeta deja sitio a los lados. */
.carpeta.hojeable .hojas{margin-inline:42px}
.carpeta.centrada.hojeable .hojas{margin-inline:auto}
.hoja-esquina{position:absolute;top:50%;z-index:6;width:38px;padding:16px 0;border:2px solid #111;cursor:pointer;color:#111;
  background:linear-gradient(90deg,#F2BE00,#FFD21F 40%,#FFE36B);box-shadow:0 8px 18px rgba(0,0,0,.5);transition:transform .15s}
.hoja-esquina.sig{right:-40px;border-left:0;border-radius:0 12px 12px 0;transform:translateY(-50%);animation:pestana-sig 3.2s ease-in-out infinite}
.hoja-esquina.ant{left:-40px;border-right:0;border-radius:12px 0 0 12px;transform:translateY(-50%);animation:pestana-ant 3.2s ease-in-out -1.6s infinite;
  background:linear-gradient(270deg,#F2BE00,#FFD21F 40%,#FFE36B)}
.hoja-esquina span{display:block;margin-inline:auto;writing-mode:vertical-rl;font-family:var(--f-display);font-size:12px;line-height:1;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.hoja-esquina.ant span{transform:rotate(180deg)}
.hoja-esquina.sig span::after{content:" ›";font-size:15px}
.hoja-esquina.ant span::before{content:"‹ ";font-size:15px}
.hoja-esquina:hover,.hoja-esquina:focus-visible{animation:none}
.hoja-esquina.sig:hover,.hoja-esquina.sig:focus-visible{transform:translateY(-50%) translateX(4px)}
.hoja-esquina.ant:hover,.hoja-esquina.ant:focus-visible{transform:translateY(-50%) translateX(-4px)}
.hoja-esquina:focus-visible{outline:2px solid var(--cinta,#FFD21F);outline-offset:3px}
.carpeta.ultima .hoja-esquina.sig,.carpeta.primera .hoja-esquina.ant,.carpeta.girando .hoja-esquina{display:none}
@keyframes pestana-sig{0%,70%,100%{transform:translateY(-50%)}80%{transform:translateY(-50%) translateX(6px)}90%{transform:translateY(-50%) translateX(2px)}}
@keyframes pestana-ant{0%,70%,100%{transform:translateY(-50%)}80%{transform:translateY(-50%) translateX(-6px)}90%{transform:translateY(-50%) translateX(-2px)}}
@media (max-width:560px){
  .carpeta.hojeable .hojas,.carpeta.centrada.hojeable .hojas{margin-inline:26px}
  .hoja-esquina{width:27px;padding:12px 0}
  .hoja-esquina.sig{right:-27px}
  .hoja-esquina.ant{left:-27px}
  .hoja-esquina span{font-size:10px}
}

/* Ficha de carta de la vitrina: aviso sobre las fotos (mismo diseño que el de arte aleatorio, con una cámara) */
.jt-aviso-fotos::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M4 8h3l2-3h6l2 3h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M4 8h3l2-3h6l2 3h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E")}
.jt-aviso-fotos a{color:var(--cinta,#FFD21F);font-weight:700}

/* Ficha de carta: «También te puede interesar» con otras cartas de la vitrina en sus fundas */
.jt-rel-vitrina .binder{max-width:760px;margin-top:18px}
.jt-rel-mas{margin-top:22px}

/* ---------------------------------------------------------------------------
 * Expositor de cartas gradeadas (Nuestro álbum): vitrina con luz arriba, baldas de cristal y cada carta en su
 * caja de gradeo dibujada con CSS (etiqueta con empresa, nota y certificado; la carta, en la ventana)
 * ------------------------------------------------------------------------ */
.expo-sec{margin-top:clamp(40px,6vw,72px);display:grid;justify-items:center;text-align:center;gap:8px}
.expo-sec>p{max-width:62ch;color:var(--muted);margin:0 0 14px}
.ir-expo{color:var(--neon);font-weight:700;white-space:nowrap}
.expositor{position:relative;width:100%;max-width:980px;margin-inline:auto;padding:clamp(18px,3vw,34px) clamp(10px,2.4vw,28px) clamp(10px,1.6vw,18px);border:3px solid #000;outline:1px solid var(--line);border-radius:14px;
  background:radial-gradient(120% 60% at 50% 0,rgba(27,228,245,.16),transparent 60%),linear-gradient(180deg,#0B1418,#05080A 70%);box-shadow:0 30px 60px rgba(0,0,0,.5),inset 0 0 0 6px #0A0F12,inset 0 0 0 7px #1A262D;overflow:hidden;isolation:isolate}
.expositor::before{content:"";position:absolute;left:8%;right:8%;top:7px;height:4px;border-radius:4px;background:var(--ice);box-shadow:0 0 14px 2px rgba(132,240,249,.8),0 0 60px 10px rgba(27,228,245,.25);z-index:3}
.expositor::after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(112deg,transparent 18%,rgba(255,255,255,.07) 24%,transparent 31%,transparent 62%,rgba(255,255,255,.045) 67%,transparent 72%)}
.expositor-baldas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:0;row-gap:clamp(18px,3vw,30px)}
@media (max-width:700px){.expositor-baldas{grid-template-columns:repeat(2,minmax(0,1fr))}}
.slab-hueco{container-type:inline-size;position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 clamp(6px,1.4vw,16px) 0;color:inherit;text-decoration:none;perspective:900px}
/* la balda: un canto de cristal que se une con el del hueco de al lado */
.slab-hueco::after{content:"";order:2;align-self:stretch;height:12px;margin-inline:calc(-1 * clamp(6px,1.4vw,16px));margin-top:-12px;background:linear-gradient(180deg,rgba(132,240,249,.5) 0 1px,rgba(132,240,249,.13) 1px 5px,rgba(6,12,15,.95) 5px);box-shadow:0 10px 18px rgba(0,0,0,.55)}
.slab{--g:#3A4650;position:relative;order:1;width:100%;aspect-ratio:3.25/5.4;border-radius:4.5cqw;padding:5cqw 5cqw 6cqw;display:flex;flex-direction:column;gap:4cqw;
  background:linear-gradient(160deg,rgba(255,255,255,.28),rgba(220,235,242,.12) 40%,rgba(255,255,255,.2));border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 0 0 2.2cqw rgba(255,255,255,.07),inset 0 0 0 calc(2.2cqw + 1px) rgba(255,255,255,.25),0 14px 24px rgba(0,0,0,.6);
  transform:rotateX(5deg);transform-origin:50% 100%;transition:transform .3s cubic-bezier(.2,.7,.3,1),box-shadow .3s}
.slab::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.32) 42%,transparent 54%);background-size:250% 100%;background-position:100% 0;transition:background-position .7s ease}
a.slab-hueco:hover .slab,a.slab-hueco:focus-visible .slab{transform:translateY(-8px) rotateX(0);box-shadow:inset 0 0 0 2.2cqw rgba(255,255,255,.07),inset 0 0 0 calc(2.2cqw + 1px) rgba(255,255,255,.25),0 22px 34px rgba(0,0,0,.65),0 0 26px rgba(27,228,245,.25)}
a.slab-hueco:hover .slab::after{background-position:-40% 0}
.slab-etiqueta{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2cqw;padding:3.2cqw 4cqw 5.6cqw;border-radius:1.6cqw;background:#F3F3EF;color:#121212;border:1.4cqw solid var(--g);text-align:left;line-height:1.1}
.slab-izq{display:grid;gap:.6cqw;min-width:0}
.slab-emp{font-family:var(--f-display);font-weight:400;font-size:8.5cqw;letter-spacing:.02em;color:var(--g);line-height:1}
.slab-nombre{font-weight:900;font-size:6cqw;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.slab-sub{font-size:5cqw;color:#4A4A4A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.slab-der{display:grid;justify-items:end;gap:.4cqw}
.slab-txt{font-weight:900;font-size:4.8cqw;letter-spacing:.03em;white-space:nowrap}
.slab-nota{font-family:var(--f-display);font-weight:400;font-size:15cqw;line-height:.9;color:#121212}
.slab-cert{position:absolute;left:4cqw;bottom:1.2cqw;font-family:var(--f-tag);font-size:4.2cqw;letter-spacing:.06em;color:#555}
.slab-ventana{flex:1;min-height:0;display:grid;place-items:center;border-radius:2cqw;background:rgba(5,9,11,.55);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3),inset 0 4px 10px rgba(0,0,0,.5);padding:3cqw}
.slab-ventana img,.slab-sin{width:auto;height:100%;max-width:100%;aspect-ratio:63/88;object-fit:cover;border-radius:3.2cqw;display:block}
.slab-sin{background:linear-gradient(135deg,#1F2D35,#0D1317)}
.slab .sello-vendida{top:60%}
.slab-hueco.vendida .sello-vendida{display:block}
.slab-hueco.vendida .slab-ventana img{filter:grayscale(.7) brightness(.6)}
/* precio: etiqueta colgada del canto de la balda */
.slab-precio{order:3;margin-top:-8px;z-index:2;font-family:var(--f-display);font-size:clamp(12px,1.4vw,14px);background:var(--silver);color:#05090B;border:2px solid #000;padding:2px 10px;box-shadow:3px 3px 0 var(--neon);white-space:nowrap}
.slab-hueco.vendida .slab-precio{background:#3A4650;color:#FF9AA6;box-shadow:none}
.slab-hueco.vacio .slab{opacity:.22;border-style:dashed;box-shadow:none;background:none}
.slab-hueco.vacio .slab::after{display:none}
.slab-hueco.vacio::before{content:"";order:3;height:22px}
.expositor.mini{max-width:760px;margin-top:18px}
@media (prefers-reduced-motion:reduce){.slab,.slab::after{transition:none}}

/* Portada: una balda del expositor (solo si hay gradeadas), sin huecos vacíos */
.expo-portada{margin-top:clamp(36px,5vw,60px)}
.expo-portada-cab{display:grid;justify-items:center;text-align:center;gap:8px;margin-bottom:18px}
.expo-portada-cab h3{font-size:clamp(22px,3vw,32px);margin-top:8px}
.expositor.portada{max-width:calc(var(--n) * 245px + 60px)}
.expositor.portada .expositor-baldas{grid-template-columns:repeat(var(--n),minmax(0,1fr))}
@media (max-width:700px){.expositor.portada{max-width:none}.expositor.portada .expositor-baldas{grid-template-columns:repeat(min(var(--n),2),minmax(0,1fr))}}
