/*
Theme Name: Tienda Online ContraEntrega
Theme URI: https://tiendaonlinecontraentrega.com
Author: Tienda Online ContraEntrega
Description: Tienda llamativa para vender contra entrega (dropshipping con Dropi): inicio con ofertas y reloj, categorías con íconos, página de producto tipo Amazon con fotos y videos, "Comprar ahora", barra inferior en el celular. Hecho para el plugin "Tienda Online ContraEntrega".
Version: 1.7.1
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: toce-tema
*/

:root{
	--n:#14123A;--n2:#2A2470;--a:#FF5A1F;--a1:#FF7A00;--a2:#FF2E63;--g:linear-gradient(120deg,#FF7A00,#FF2E63);
	--v:#12B76A;--y:#FFC72C;--t:#14123A;--m:#4B4870;--mm:#77748F;--b:#ECEAF5;--bg:#FFFFFF;--bg2:#F7F6FC;--s:#FFF1E8;
	--r:20px;--sh:0 14px 40px rgba(20,18,58,.08);--f:'Poppins',-apple-system,'Segoe UI',Roboto,Arial,sans-serif;--fh:'Montserrat','Poppins',Arial,sans-serif;
}
*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--f);font-size:16px;line-height:1.55;color:var(--t);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.tt-sin{overflow:hidden}
img,video{max-width:100%;height:auto}
a{color:var(--a);text-decoration:none}
a:hover{color:var(--a2)}
h1,h2,h3,h4{font-family:var(--fh);font-weight:800;line-height:1.15;letter-spacing:-.015em;color:var(--n);margin:0 0 .5em}
button,input,select,textarea{font:inherit}
.tt-wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 16px}
.tt-saltar{position:absolute;left:-999px}.tt-saltar:focus{left:10px;top:10px;z-index:9999;background:#fff;padding:8px 12px;border-radius:8px}
.tt-ic{display:block;flex:0 0 auto}
.tt-centro{text-align:center;margin:26px 0 0}

/* ---------- botones ---------- */
.tt-btn,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.wp-element-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border:0;border-radius:14px;background:var(--g);color:#fff !important;font-family:var(--f);font-weight:700;font-size:15px;line-height:1.2;text-decoration:none;cursor:pointer;box-shadow:0 10px 24px rgba(255,46,99,.28);transition:transform .12s,box-shadow .2s,filter .2s}
.tt-btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 14px 30px rgba(255,46,99,.35);color:#fff}
.tt-btn.grande{padding:16px 28px;font-size:17px;border-radius:16px}
.tt-btn.claro{background:#fff;color:var(--n) !important;box-shadow:0 8px 22px rgba(20,18,58,.1);border:1.5px solid var(--b)}
.tt-btn.blanco{background:#fff;color:var(--a2) !important;box-shadow:none}
.tt-btn.wa{background:#25D366;box-shadow:0 10px 24px rgba(37,211,102,.3);width:100%;margin-top:18px}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--g)}
.woocommerce a.button.disabled,.woocommerce button.button:disabled,.woocommerce button.button.disabled{opacity:.5;cursor:not-allowed}

/* ---------- barra de anuncios ---------- */
.tt-anuncio{overflow:hidden;background:var(--n);color:#fff;font-size:13px;font-weight:600;white-space:nowrap}
.tt-anuncio-in{display:inline-flex;gap:56px;padding:8px 0;animation:ttMarq 32s linear infinite}
.tt-anuncio span{display:inline-block}
.tt-anuncio:hover .tt-anuncio-in{animation-play-state:paused}
@keyframes ttMarq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- cabecera ---------- */
.tt-cab{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--b);transition:box-shadow .2s}
.tt-cab.mini{box-shadow:0 8px 30px rgba(20,18,58,.08)}
.tt-cab-in{display:flex;align-items:center;gap:18px;max-width:1240px;margin:0 auto;padding:12px 16px}
.tt-marca{display:flex;align-items:center;flex:0 0 auto}
.tt-logo,.woocommerce .tt-logo,.tt-marca img.tt-logo{display:block;height:54px !important;width:auto !important;max-width:240px !important;object-fit:contain;transition:height .2s}
.tt-cab.mini .tt-logo{height:44px !important}
.tt-busca{flex:1;display:flex;align-items:center;max-width:620px;margin:0 auto;padding:4px;border:2px solid var(--b);border-radius:999px;background:var(--bg2);transition:.15s}
.tt-busca:focus-within{border-color:var(--a);background:#fff;box-shadow:0 0 0 5px rgba(255,90,31,.12)}
.tt-busca input{flex:1;min-width:0;padding:9px 16px;border:0;background:transparent;outline:0;font-size:15px;color:var(--t)}
.tt-busca button{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;border-radius:50%;background:var(--g);color:#fff;cursor:pointer}
.tt-acc{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.tt-ib{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-width:46px;height:46px;padding:0 10px;border:0;border-radius:14px;background:transparent;color:var(--n);cursor:pointer;font-weight:600;font-size:14px;transition:.15s}
.tt-ib:hover{background:var(--bg2);color:var(--n)}
.tt-carro{background:var(--n);color:#fff}
.tt-carro:hover{background:var(--n2);color:#fff}
.tt-cart-n{position:absolute;top:-5px;right:-5px;display:flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--g);color:#fff;font-size:12px;font-weight:800;border:2px solid #fff;animation:ttPop .4s}
.tt-cart-n.cero{display:none}
@keyframes ttPop{0%{transform:scale(.4)}70%{transform:scale(1.2)}100%{transform:none}}
.tt-abrir-menu.tt-ib{display:none}
.tt-cats{border-top:1px solid var(--b)}
.tt-cats-in{display:flex;gap:8px;max-width:1240px;margin:0 auto;padding:9px 16px;overflow-x:auto;scrollbar-width:none}
.tt-cats-in::-webkit-scrollbar{display:none}
.tt-cat-chip{flex:0 0 auto;padding:7px 14px;border-radius:999px;background:var(--bg2);color:var(--n);font-size:13.5px;font-weight:600;white-space:nowrap;transition:.15s}
.tt-cat-chip:hover,.tt-cat-chip.act{background:var(--n);color:#fff}
.tt-cat-chip.hot{background:var(--g);color:#fff;box-shadow:0 6px 16px rgba(255,46,99,.3)}

/* menú lateral */
.tt-cajon{position:fixed;inset:0;z-index:1000;background:rgba(20,18,58,.5);backdrop-filter:blur(3px)}
.tt-cajon[hidden]{display:none}
.tt-cajon-c{position:absolute;left:0;top:0;bottom:0;width:min(360px,88vw);padding:16px 18px 30px;background:#fff;overflow-y:auto;animation:ttIzq .25s ease-out}
@keyframes ttIzq{from{transform:translateX(-100%)}to{transform:none}}
.tt-cajon-h{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px}
.tt-cajon-h .tt-logo{height:46px !important}
.tt-menu{list-style:none;margin:0;padding:0}
.tt-menu li a{display:block;padding:13px 6px;border-bottom:1px solid var(--b);color:var(--n);font-weight:600}
.tt-cajon-t{display:block;margin:20px 0 10px;font-family:var(--fh);font-size:15px;color:var(--mm);text-transform:uppercase;letter-spacing:.06em}
.tt-cajon-cats{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tt-cajon-cats a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border-radius:16px;background:var(--bg2);color:var(--n);font-size:13px;font-weight:600;text-align:center}
.tt-cajon-ic{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;overflow:hidden;background:#fff;font-size:24px}
.tt-cajon-ic img{width:100%;height:100%;object-fit:cover}

/* ---------- portada ---------- */
.tt-hero{position:relative;overflow:hidden;background:radial-gradient(1000px 520px at 85% 10%,rgba(255,46,99,.45),transparent 60%),radial-gradient(800px 500px at 0% 100%,rgba(255,122,0,.35),transparent 60%),linear-gradient(135deg,#14123A 0%,#221D5E 60%,#2E1F66 100%);background:radial-gradient(1000px 520px at 85% 10%,color-mix(in srgb,var(--a2) 45%,transparent),transparent 60%),radial-gradient(800px 500px at 0% 100%,color-mix(in srgb,var(--a1) 35%,transparent),transparent 60%),linear-gradient(135deg,var(--n) 0%,color-mix(in srgb,var(--n) 80%,#4b3fd1) 60%,color-mix(in srgb,var(--n) 70%,#6b3fa0) 100%);color:#fff}
.tt-hero:after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:22px 22px;pointer-events:none;mask-image:linear-gradient(#000,transparent)}
.tt-hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;padding-top:56px;padding-bottom:64px}
.tt-kick{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:13.5px;font-weight:700}
.tt-kick.claro{background:var(--s);border-color:#FFD4BE;color:#C2410C}
.tt-hero h1{margin:18px 0 14px;color:#fff;font-size:clamp(36px,5.4vw,64px);font-weight:900;line-height:1.02;letter-spacing:-.03em}
.tt-hero h1 em{font-style:normal;background:linear-gradient(120deg,#FFC72C,var(--a1) 45%,var(--a2));-webkit-background-clip:text;background-clip:text;color:transparent}
.tt-hero p{max-width:540px;margin:0 0 26px;font-size:18px;color:rgba(255,255,255,.85)}
.tt-hero p b{color:#fff}
.tt-hero-b{display:flex;flex-wrap:wrap;gap:12px}
.tt-hero-l{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;margin:26px 0 0;padding:0;font-weight:600;font-size:14.5px;color:rgba(255,255,255,.9)}
.tt-hero-v{position:relative;min-height:420px;display:flex;align-items:center;justify-content:center}
.tt-blob{position:absolute;border-radius:50%;filter:blur(10px);opacity:.9}
.tt-blob.a{width:360px;height:360px;background:var(--g);right:6%;top:6%;animation:ttFlota 8s ease-in-out infinite}
.tt-blob.b{width:160px;height:160px;background:#FFC72C;left:8%;bottom:6%;opacity:.55;animation:ttFlota 6s ease-in-out infinite reverse}
@keyframes ttFlota{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.tt-col{position:relative;width:100%;max-width:470px;height:420px}
.tt-col-i{position:absolute;display:block;overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 30px 60px rgba(0,0,0,.35);border:5px solid #fff;transition:transform .3s}
.tt-col-i img{display:block;width:100%;height:100%;object-fit:cover}
.tt-col-i.i0{z-index:3;left:18%;top:6%;width:62%;height:78%;transform:rotate(-2deg)}
.tt-col-i.i1{z-index:2;left:0;top:44%;width:38%;height:44%;transform:rotate(-8deg)}
.tt-col-i.i2{z-index:2;right:0;top:0;width:36%;height:40%;transform:rotate(7deg)}
.tt-col.n1 .tt-col-i.i0{left:12%;width:76%}
.tt-col-i:hover{transform:rotate(0) scale(1.03);z-index:4}
.tt-col-p{position:absolute;left:10px;right:10px;bottom:10px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.95);color:var(--n);font-size:13px;line-height:1.3;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.tt-col-p b{display:block;margin-bottom:2px}
.tt-col-p .price,.tt-col-p span{font-weight:800;color:var(--a2)}
.tt-col-p del{color:var(--mm);font-weight:500;font-size:12px}
.tt-col-p ins{text-decoration:none}
.tt-col-d{position:absolute;top:10px;left:10px;padding:5px 10px;border-radius:999px;background:var(--g);color:#fff;font-weight:800;font-size:13px}
.tt-hero-ic img{width:260px;filter:drop-shadow(0 30px 50px rgba(0,0,0,.4));animation:ttFlota 5s ease-in-out infinite}
.tt-hero-pill{position:absolute;z-index:5;padding:10px 16px;border-radius:999px;background:#fff;color:var(--n);font-weight:800;font-size:14px;box-shadow:0 16px 36px rgba(0,0,0,.25);animation:ttFlota 5s ease-in-out infinite}
.tt-hero-pill.p1{left:-4%;top:12%}
.tt-hero-pill.p2{right:2%;bottom:6%;animation-delay:-2.5s}

/* imagen o video propio en la portada */
.tt-hero.con-fondo{background-image:linear-gradient(120deg,rgba(20,18,58,.88),rgba(20,18,58,.55)),var(--tt-fondo);background-size:cover;background-position:center}
.tt-hero-img{position:relative;z-index:2;width:100%;max-width:500px;border-radius:30px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.35);border:5px solid #fff;background:#fff}
.tt-hero-img img,.tt-hero-img video{display:block;width:100%;height:auto;max-height:480px;object-fit:cover}
.tt-logo-caja{display:inline-flex;padding:8px 12px;border-radius:14px;background:#fff}
/* estilos de portada */
.tt-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.tt-hero.con-video:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,9,30,.35),rgba(10,9,30,.75))}
.tt-hero.est-video{min-height:min(86vh,760px);display:flex;align-items:center}
.tt-hero.est-video .tt-hero-in{grid-template-columns:1fr;text-align:center;justify-items:center;z-index:2}
.tt-hero.est-video .tt-hero-v{display:none}
.tt-hero.est-video p{margin-left:auto;margin-right:auto}
.tt-hero.est-video .tt-hero-b,.tt-hero.est-video .tt-hero-l{justify-content:center}
.tt-hero.est-video h1{font-size:clamp(40px,7vw,86px)}
.tt-hero.est-centrado .tt-hero-in{grid-template-columns:1fr;text-align:center;justify-items:center}
.tt-hero.est-centrado p{margin-left:auto;margin-right:auto}
.tt-hero.est-centrado .tt-hero-b,.tt-hero.est-centrado .tt-hero-l{justify-content:center}
.tt-hero.est-centrado .tt-hero-v{min-height:340px;width:100%}
.tt-hero.est-producto .tt-hero-pill.p2{bottom:auto;top:2%;right:0}
.tt-hero.est-producto .tt-hero-pill.p1{top:auto;bottom:18%}
.tt-hero-prod{position:relative;z-index:3;display:grid;grid-template-columns:1fr;width:100%;max-width:440px;border-radius:30px;overflow:hidden;background:#fff;color:var(--n);box-shadow:0 30px 70px rgba(0,0,0,.4);transform:rotate(-1.5deg);transition:transform .3s}
.tt-hero-prod:hover{transform:rotate(0) scale(1.02);color:var(--n)}
.tt-hero-prod .ph{position:relative;display:block;aspect-ratio:1;background:var(--bg2)}
.tt-hero-prod .ph img{width:100%;height:100%;object-fit:cover;display:block}
.tt-hero-prod .ph .tt-b{position:absolute;top:14px;left:14px;font-size:18px;padding:6px 14px}
.tt-hero-prod .pi{display:grid;gap:8px;padding:16px 18px 18px}
.tt-hero-prod .pi b{font-family:var(--fh);font-size:20px;line-height:1.2}
.tt-hero-prod .price{display:flex;gap:10px;align-items:baseline;color:var(--a2);font-family:var(--fh);font-size:30px;font-weight:900}
.tt-hero-prod .price del{font-size:16px;color:var(--mm);font-weight:500}
.tt-hero-prod .price ins{text-decoration:none}
.tt-hero-prod .tt-btn{width:100%;font-size:17px;padding:15px}

/* estilo de tarjetas */
body.tt-tar-sombra .tt-card{border-color:transparent;box-shadow:0 10px 30px rgba(20,18,58,.1)}
body.tt-tar-borde .tt-card{border:2px solid var(--n);box-shadow:4px 4px 0 var(--n);border-radius:16px}
body.tt-tar-borde .tt-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--a2)}
/* animaciones al bajar */
body.tt-anim .tt-sec .tt-sec-h,body.tt-anim .tt-card,body.tt-anim .tt-cat-ic,body.tt-anim .tt-pasos-l>div,body.tt-anim .tt-rv,body.tt-anim .tt-banda,body.tt-anim .tt-reg{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
body.tt-anim .vis{opacity:1 !important;transform:none !important}
@keyframes ttBrillo{0%{background-position:-200% 0}100%{background-position:200% 0}}
body.tt-anim .tt-b.off{background:linear-gradient(110deg,var(--a1) 30%,#fff3 45%,var(--a2) 60%);background-size:200% 100%;animation:ttBrillo 3s linear infinite}

/* banners */
.tt-sec-ban{padding:26px 0 0}
.tt-ban{position:relative;border-radius:26px;overflow:hidden;box-shadow:var(--sh)}
.tt-ban-in{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}
.tt-ban-in::-webkit-scrollbar{display:none}
.tt-ban-i{position:relative;flex:0 0 100%;scroll-snap-align:start;display:block;background:var(--bg2)}
.tt-ban-i img,.tt-ban-i video{display:block;width:100%;height:auto;max-height:440px;object-fit:cover}
.tt-ban-i span{position:absolute;left:18px;bottom:18px;padding:10px 16px;border-radius:14px;background:rgba(20,18,58,.85);color:#fff;font-family:var(--fh);font-weight:800;font-size:clamp(15px,2.2vw,22px)}
.tt-ban-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px}
.tt-ban-dots button{width:9px;height:9px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.6);cursor:pointer;transition:.2s}
.tt-ban-dots button.act{width:24px;background:#fff}

/* secciones */
.tt-sec{padding:56px 0}
.tt-sec-pad0{padding:0}
.tt-sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 22px}
.tt-sec-h h2{margin:0;font-size:clamp(26px,3.4vw,38px)}
.tt-sec-h h2 span,.tt-reg h2 em{background:var(--g);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal}
.tt-sec-h>a{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--n)}
.tt-sec-h>a:hover{color:var(--a)}
.tt-sec-h p{margin:6px 0 0;color:var(--m);width:100%}
.tt-sec-h.c{flex-direction:column;align-items:center;text-align:center}
.tt-sec-cats{padding-bottom:20px}
.tt-cat-ics{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}
.tt-cat-ic{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 10px 16px;border-radius:24px;background:var(--bg2);text-align:center;color:var(--n);transition:.2s}
.tt-cat-ic:hover{transform:translateY(-4px);box-shadow:var(--sh);background:#fff;color:var(--n)}
.tt-cat-ic .o{display:flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:50%;overflow:hidden;font-size:40px;box-shadow:0 10px 24px rgba(20,18,58,.12)}
.tt-cat-ic .o img{width:100%;height:100%;object-fit:cover}
.tt-cat-ic.c0 .o{background:linear-gradient(135deg,#FFE3D1,#FFB892)}.tt-cat-ic.c1 .o{background:linear-gradient(135deg,#FFE0EA,#FF9EBB)}.tt-cat-ic.c2 .o{background:linear-gradient(135deg,#DDF8EA,#8FE3B9)}.tt-cat-ic.c3 .o{background:linear-gradient(135deg,#FFF3C4,#FFD45C)}.tt-cat-ic.c4 .o{background:linear-gradient(135deg,#E3E1FF,#A9A2FF)}.tt-cat-ic.c5 .o{background:linear-gradient(135deg,#D8F3FF,#8AD5F5)}
.tt-cat-ic b{font-size:14.5px;line-height:1.25}
.tt-cat-ic small{color:var(--mm);font-size:12px}
.tt-sec-of{background:linear-gradient(180deg,var(--s),#fff 70%)}
.tt-of-h{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 22px}
.tt-of-h h2{margin:10px 0 0;font-size:clamp(26px,3.4vw,38px)}
.tt-of-h .toce-reloj-g{margin:0}
.tt-pasos{background:var(--bg2)}
.tt-pasos-l{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;counter-reset:p}
.tt-pasos-l>div{position:relative;padding:26px 20px 22px;border-radius:24px;background:#fff;box-shadow:var(--sh);text-align:center}
.tt-pasos-l i{position:absolute;top:14px;left:16px;font-style:normal;font-family:var(--fh);font-weight:900;font-size:40px;line-height:1;background:var(--g);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.35}
.tt-pasos-l span{display:block;font-size:42px;margin:0 0 8px}
.tt-pasos-l b{display:block;font-family:var(--fh);font-size:18px;color:var(--n)}
.tt-pasos-l p{margin:6px 0 0;color:var(--m);font-size:14.5px}
.tt-banda{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:28px 32px;border-radius:28px;background:var(--g);color:#fff;box-shadow:0 24px 50px rgba(255,46,99,.3)}
.tt-banda b{display:block;font-family:var(--fh);font-size:clamp(20px,2.6vw,28px);line-height:1.2}
.tt-banda b span{color:var(--y)}
.tt-banda p{margin:6px 0 0;opacity:.92}
.tt-rvs{columns:3 300px;column-gap:16px}
.tt-rv{break-inside:avoid;display:block;margin:0 0 16px;border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--sh);border:1px solid var(--b)}
.tt-rv img,.tt-rv video{display:block;width:100%;max-height:340px;object-fit:cover}
.tt-rv-b{padding:16px 18px}
.tt-rv-s{color:#FFB020;letter-spacing:2px;font-size:18px}
.tt-rv-s i{color:#E2E0EC;font-style:normal}
.tt-rv p{margin:6px 0 10px;color:var(--m)}
.tt-rv small{color:var(--v);font-weight:700}
.tt-rv a{display:block;margin-top:6px;font-weight:600;font-size:14px}
.tt-reg{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center;padding:40px;border-radius:32px;background:linear-gradient(135deg,#14123A,#2A2470);color:#fff;overflow:hidden;position:relative}
.tt-reg:before{content:"";position:absolute;right:-80px;top:-80px;width:300px;height:300px;border-radius:50%;background:var(--g);opacity:.5;filter:blur(30px)}
.tt-reg-tx{position:relative}
.tt-reg h2{color:#fff;font-size:clamp(26px,3.6vw,40px);margin:14px 0 10px}
.tt-reg p{color:rgba(255,255,255,.85);margin:0 0 22px}
.tt-reg-l{position:relative;list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tt-reg-l li{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-weight:600}
.tt-reg-l span{font-size:24px}
.tt-faq-in{display:grid;grid-template-columns:1fr 1.6fr;gap:30px;align-items:start}
.tt-faq-in .tt-sec-h{flex-direction:column;align-items:flex-start}
.tt-faq-l{display:grid;gap:10px}
.tt-faq-l details{border-radius:18px;background:var(--bg2);border:1px solid var(--b);overflow:hidden}
.tt-faq-l details[open]{background:#fff;box-shadow:var(--sh)}
.tt-faq-l summary{position:relative;padding:16px 50px 16px 18px;font-weight:700;color:var(--n);cursor:pointer;list-style:none}
.tt-faq-l summary::-webkit-details-marker{display:none}
.tt-faq-l summary:after{content:"+";position:absolute;right:16px;top:50%;display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:var(--g);color:#fff;font-weight:800;transition:.2s}
.tt-faq-l details[open] summary:after{transform:rotate(45deg)}
.tt-faq-l details p{margin:0;padding:0 18px 16px;color:var(--m)}

/* ---------- confianza y pie ---------- */
.tt-conf{padding:34px 0;background:var(--bg2);border-top:1px solid var(--b)}
.tt-conf-in{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tt-conf-in>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center}
.tt-conf-in span{grid-row:1/3;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;background:#fff;font-size:26px;box-shadow:0 8px 20px rgba(20,18,58,.08)}
.tt-conf-in b{font-size:15px;color:var(--n)}
.tt-conf-in small{color:var(--mm);font-size:13px;line-height:1.3}
.tt-pie{background:var(--n);color:rgba(255,255,255,.78);font-size:14.5px}
.tt-pie-in{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:30px;padding-top:50px;padding-bottom:40px}
.tt-pie .tt-logo{height:58px !important}
.tt-pie-m p{margin:14px 0}
.tt-pie-t{display:block;margin:6px 0 12px;color:#fff;font-family:var(--fh);font-size:16px}
.tt-pie ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tt-pie a{color:rgba(255,255,255,.85)}
.tt-pie a:hover{color:#FFC72C}
.tt-redes{display:flex;gap:8px;flex-wrap:wrap}
.tt-redes a{padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.08);font-size:13px;font-weight:600}
.tt-pie-b{padding:16px 0;border-top:1px solid rgba(255,255,255,.08);font-size:13px;text-align:center}
.tt-barra{display:none}

/* ---------- títulos de página ---------- */
.tt-tit{padding:34px 0 24px;background:linear-gradient(180deg,var(--s),#fff)}
.tt-tit h1{margin:0;font-size:clamp(28px,4vw,42px)}
.tt-tit p,.tt-tit-d{margin:6px 0 0;color:var(--m)}
.tt-tit.chico{padding:22px 0 8px}
.tt-tit.chico h1{font-size:clamp(24px,3vw,32px)}
.tt-pag{padding-top:10px;padding-bottom:60px}
.tt-woo{padding-bottom:60px}
.tt-vacio,.tt-404{text-align:center;padding:60px 0}
.tt-404 b{display:block;font-family:var(--fh);font-size:120px;line-height:1;background:var(--g);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- grilla de productos ---------- */
.woocommerce ul.products,.tt-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;margin:0 0 20px !important;padding:0 !important}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none !important}
.woocommerce ul.products li.product,.tt-card{position:relative;display:flex;flex-direction:column;width:auto !important;margin:0 !important;padding:0 !important;float:none !important;border-radius:var(--r);background:#fff;border:1px solid var(--b);overflow:hidden;transition:transform .2s,box-shadow .2s}
.tt-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,18,58,.12);border-color:transparent}
.tt-card-img{position:relative;display:block;aspect-ratio:1;background:var(--bg2);overflow:hidden}
.tt-card-img img{width:100% !important;height:100% !important;object-fit:cover;margin:0 !important;transition:transform .4s}
.tt-card:hover .tt-card-img img{transform:scale(1.05)}
.tt-badges{position:absolute;top:10px;left:10px;right:10px;z-index:2;display:flex;flex-wrap:wrap;gap:6px;pointer-events:none}
.tt-b{padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;line-height:1.3;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.tt-b.off{background:var(--g);color:#fff}
.tt-b.promo{background:var(--y);color:var(--n)}
.tt-card-r{position:absolute;left:10px;bottom:10px;z-index:2}
.tt-card-x{position:absolute;inset:auto 10px 10px;z-index:2;padding:7px;border-radius:12px;background:rgba(20,18,58,.85);color:#fff;font-weight:700;font-size:13px;text-align:center}
.tt-card.agotado .tt-card-img img{filter:grayscale(.7);opacity:.75}
.tt-card-b{display:flex;flex-direction:column;gap:4px;flex:1;padding:12px 14px 14px}
.tt-card-t{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;color:var(--n);font-weight:600;font-size:14.5px;line-height:1.3}
.tt-card-t:hover{color:var(--a)}
.tt-card .price,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .price ins{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:2px 0 0 !important;color:var(--a2) !important;font-weight:800;font-size:19px !important}
.tt-card .price del,.tt-precio .price del,.tt-fija .price del{order:2;color:var(--mm);font-weight:500;font-size:13px;opacity:1}
.tt-card .price ins,.tt-precio .price ins,.tt-fija .price ins{text-decoration:none}
.tt-card-cod{color:var(--v);font-weight:700;font-size:12px}
.tt-card-b .button{margin-top:auto !important;width:100%;white-space:nowrap;padding:11px 12px !important;font-size:14px !important;border-radius:12px !important}
.tt-card-b .added_to_cart{display:block;margin-top:6px;text-align:center;font-size:13px;font-weight:700}
.tt-st{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--mm)}
.tt-st .e{position:relative;display:inline-block;color:#E2E0EC;letter-spacing:1px;font-size:13px;line-height:1}
.tt-st .e:before{content:"★★★★★"}
.tt-st .e i{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#FFB020}
.tt-st .e i:before{content:"★★★★★"}

/* barra de orden y conteo */
.woocommerce .woocommerce-result-count{margin:6px 0 18px;color:var(--mm);font-size:14px}
.woocommerce .woocommerce-ordering select{padding:10px 14px;border:1.5px solid var(--b);border-radius:12px;background:#fff}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:6px;justify-content:center}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:42px;padding:10px;border-radius:12px;background:var(--bg2);font-weight:700}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--n);color:#fff}

/* ---------- página del producto ---------- */
.tt-prod{padding:14px 0 40px}
.tt-migas{margin:0 0 14px;font-size:13.5px;color:var(--mm)}
.tt-migas a{color:var(--m)}
.tt-pg{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:40px;align-items:start}
.tt-gal{position:sticky;top:130px}
.tt-gal-st{position:relative;aspect-ratio:1;border-radius:28px;overflow:hidden;background:var(--bg2);box-shadow:var(--sh)}
.tt-gal-it{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .3s}
.tt-gal-it.act{opacity:1;visibility:visible}
.tt-gal-it a{display:block;width:100%;height:100%;cursor:zoom-in}
.tt-gal-it img,.tt-gal-it video{display:block;width:100%;height:100%;object-fit:cover;background:#000}
.tt-gal-it img{background:transparent}
.tt-gal-st .tt-badges{top:14px;left:14px}
.tt-gal-st .tt-b{font-size:14px;padding:6px 12px}
.tt-gal-a,.tt-gal-s{position:absolute;top:50%;z-index:3;width:44px;height:44px;margin-top:-22px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--n);font-size:26px;line-height:1;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.15)}
.tt-gal-a{left:12px}.tt-gal-s{right:12px}
.tt-gal-n{position:absolute;right:14px;bottom:14px;z-index:3;padding:4px 10px;border-radius:999px;background:rgba(20,18,58,.75);color:#fff;font-size:12.5px}
.tt-gal-th{display:flex;gap:10px;margin:12px 0 0;overflow-x:auto;scrollbar-width:none;padding:2px}
.tt-gal-th::-webkit-scrollbar{display:none}
.tt-gal-th button{position:relative;flex:0 0 auto;width:76px;height:76px;padding:0;border:2.5px solid transparent;border-radius:16px;overflow:hidden;background:var(--bg2);cursor:pointer;transition:.15s}
.tt-gal-th button.act{border-color:var(--a);box-shadow:0 6px 16px rgba(255,90,31,.25)}
.tt-gal-th img{width:100%;height:100%;object-fit:cover;display:block}
.tt-gal-th i{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(20,18,58,.45);color:#fff;font-style:normal;font-size:22px}
.tt-info-cat{display:inline-block;margin:0 0 8px;padding:5px 12px;border-radius:999px;background:var(--s);color:#C2410C;font-size:13px;font-weight:700}
.tt-info h1{margin:0 0 8px;font-size:clamp(25px,3vw,36px);line-height:1.15}
.tt-info-st{display:inline-flex;align-items:center;gap:8px;color:var(--m);font-size:14px}
.tt-info-st .tt-st small{display:none}
.tt-info-st .tt-st .e{font-size:17px}
.tt-precio{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:14px 0 4px;padding:14px 18px;border-radius:20px;background:var(--s)}
.tt-precio .price,.woocommerce .tt-precio p.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 !important;color:var(--a2) !important;font-family:var(--fh) !important;font-size:38px !important;font-weight:900 !important;line-height:1.1}
.tt-precio .price ins,.tt-precio .price ins .amount,.tt-precio .price>.amount,.tt-precio .price>.woocommerce-Price-amount{color:var(--a2) !important;font-weight:900}
.tt-precio .price del,.tt-precio .price del .amount{color:var(--mm) !important;font-size:18px !important;font-weight:500 !important}
html body .tt-prod .tt-compra>p.stock,html body .tt-prod .tt-compra>.stock{display:none !important}
.tt-precio .price del{font-family:var(--f);font-size:18px}
.tt-ahorro{padding:5px 12px;border-radius:999px;background:var(--v);color:#fff;font-weight:700;font-size:13.5px}
.tt-disp{display:flex;align-items:center;gap:6px;margin:10px 0;font-weight:700;color:var(--v)}
.tt-disp small{color:var(--mm);font-weight:500}
.tt-disp.out-of-stock{color:#DC2626}
.tt-corta{color:var(--m);font-size:15.5px}
.tt-corta ul{padding-left:0;list-style:none}
.tt-corta ul li{position:relative;padding:3px 0 3px 26px}
.tt-corta ul li:before{content:"✓";position:absolute;left:0;top:4px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--v);color:#fff;font-size:11px;font-weight:800}
.tt-compra{margin:16px 0 0}
.tt-compra form.cart{display:flex;flex-wrap:wrap;gap:10px;margin:0 !important}
.tt-compra form.cart .quantity{display:flex;align-items:center;margin:0 !important;border:2px solid var(--b);border-radius:14px;overflow:hidden;background:#fff}
.tt-compra .quantity input.qty{width:54px;height:52px;border:0;text-align:center;font-weight:800;font-size:17px;-moz-appearance:textfield;background:transparent}
.tt-compra .quantity input::-webkit-outer-spin-button,.tt-compra .quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tt-q{width:42px;height:52px;border:0;background:var(--bg2);font-size:20px;font-weight:700;color:var(--n);cursor:pointer}
.tt-compra .single_add_to_cart_button{flex:1 1 180px;min-height:56px;background:var(--n) !important;box-shadow:0 10px 24px rgba(20,18,58,.25) !important;font-size:16px !important;border-radius:14px !important}
.tt-ya{flex:1 1 100%;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:62px;padding:10px 18px;border:0;border-radius:16px;background:var(--g);color:#fff;font-family:var(--fh);font-weight:900;font-size:19px;line-height:1.15;cursor:pointer;box-shadow:0 14px 30px rgba(255,46,99,.35);animation:ttLate 2.6s infinite}
.tt-ya small{font-family:var(--f);font-weight:600;font-size:12.5px;opacity:.92}
.tt-ya:hover{filter:brightness(1.06)}
@keyframes ttLate{0%,80%,100%{transform:none}86%{transform:scale(1.025)}92%{transform:scale(.99)}}
.tt-compra .variations_form{display:block !important}
.tt-compra table.variations{width:100%;margin:0 0 10px;border:0}
.tt-compra table.variations th,.tt-compra table.variations td{display:block;padding:4px 0;border:0;text-align:left}
.tt-compra table.variations select{width:100%;padding:12px 14px;border:2px solid var(--b);border-radius:14px;background:#fff;font-weight:600}
.tt-compra .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:10px}
.tt-compra .reset_variations{font-size:13px}
.tt-fin{padding:14px 16px;border-radius:16px;background:#F1F0F6;color:var(--m)}
.tt-extra:empty{display:none}
.tt-extra{margin:10px 0 0}
.tt-trf{margin:12px 0 0;padding:12px 14px;border-radius:16px;background:#E3F9EE;color:#065F46;font-size:14.5px}
.tt-garant{display:grid;grid-template-columns:1fr 1fr;gap:10px;list-style:none;margin:16px 0 0;padding:0}
.tt-garant li{display:flex;align-items:center;gap:10px;padding:12px;border-radius:16px;border:1px solid var(--b);background:#fff}
.tt-garant li span{font-size:24px}
.tt-garant b{display:block;font-size:13.5px;line-height:1.25;color:var(--n)}
.tt-garant small{display:block;color:var(--mm);font-size:12px;line-height:1.3}
.tt-ayuda{display:flex;align-items:center;justify-content:center;gap:6px;margin:14px 0 0;padding:13px;border-radius:16px;background:#E9FBEF;color:#166534;font-size:14.5px;text-align:center}
.tt-ayuda:hover{color:#14532D;background:#DCF7E5}
.tt-desc{max-width:900px;margin:40px auto}
.tt-desc-c{color:var(--m);font-size:16px}
.tt-desc-c img{border-radius:18px}
.tt-seria{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:center;margin:40px 0;padding:28px;border-radius:28px;background:linear-gradient(135deg,#14123A,#2A2470);color:#fff}
.tt-seria>div>b{display:block;font-family:var(--fh);font-size:24px;margin:0 0 6px}.tt-seria p b{color:#FFC72C}
.tt-seria p{margin:0;color:rgba(255,255,255,.85)}
.tt-seria-l{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tt-seria-l span{padding:12px;border-radius:14px;background:rgba(255,255,255,.08);font-weight:600;font-size:14px}
.tt-rel h2{font-size:clamp(24px,3vw,32px)}
.tt-rel .related{margin-top:30px}
.tt-fija{display:none}
.woocommerce div.product .tt-fija span.price,.woocommerce div.product .tt-fija .price ins{color:var(--a2) !important}
.woocommerce div.product .tt-fija .price del{color:var(--mm) !important}
.spv-gana{margin:10px 0 0}

/* ---------- carrito, pagar y mi cuenta ---------- */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-page form .form-row input.input-text,.select2-container--default .select2-selection--single{padding:12px 14px;border:1.5px solid var(--b);border-radius:14px;background:#fff;font-size:15.5px;min-height:48px}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:22px;padding:0}
.select2-container--default .select2-selection--single .select2-selection__arrow{top:11px;right:8px}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{border-color:var(--a);outline:0;box-shadow:0 0 0 4px rgba(255,90,31,.12)}
.woocommerce form .form-row label{font-weight:600;font-size:14px;color:var(--n)}
.woocommerce-checkout #payment{border-radius:var(--r);background:var(--bg2)}
.woocommerce-checkout #payment div.payment_box{border-radius:16px;background:#fff;color:var(--t);box-shadow:var(--sh)}
.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#fff}
.woocommerce-checkout #payment ul.payment_methods li{padding:6px 0}
.woocommerce-checkout #payment ul.payment_methods li label{font-weight:700;font-size:16px;color:var(--n)}
#place_order{width:100%;min-height:60px;font-size:18px !important;font-family:var(--fh);font-weight:900}
.woocommerce table.shop_table{border-radius:var(--r);border:1px solid var(--b);overflow:hidden}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:16px;border-top:0;background:var(--bg2);box-shadow:var(--sh)}
.woocommerce-message{border-left:5px solid var(--v)}.woocommerce-info{border-left:5px solid var(--a)}.woocommerce-error{border-left:5px solid #DC2626}
.woocommerce-message:before,.woocommerce-info:before{color:var(--a)}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a{display:block;padding:12px 14px;border-radius:14px;background:var(--bg2);color:var(--n);font-weight:600}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a{background:var(--n);color:#fff}

/* ---------- posts ---------- */
.tt-posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.tt-post{border-radius:var(--r);overflow:hidden;border:1px solid var(--b);padding:0 0 14px}
.tt-post img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.tt-post h2{margin:12px 16px 4px;font-size:20px}
.tt-post p{margin:0 16px;color:var(--m)}
.tt-art{max-width:820px}

/* ---------- tablet ---------- */
@media (max-width:1080px){
	.woocommerce ul.products,.tt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
	.tt-pie-in{grid-template-columns:1fr 1fr}
	.tt-pasos-l{grid-template-columns:1fr 1fr}
	.tt-conf-in{grid-template-columns:1fr 1fr}
	.tt-ib-t span{display:none}
}
@media (max-width:900px){
	.tt-hero-in{grid-template-columns:1fr;padding-top:34px;padding-bottom:40px;text-align:center}
	.tt-hero p{margin-left:auto;margin-right:auto}
	.tt-hero-b,.tt-hero-l{justify-content:center}
	.tt-hero-v{min-height:340px}
	.tt-col{height:340px;max-width:400px}
	.tt-pg{grid-template-columns:1fr;gap:20px}
	.tt-gal{position:relative;top:0}
	.tt-reg{grid-template-columns:1fr;padding:30px 22px}
	.tt-faq-in{grid-template-columns:1fr}
	.tt-seria{grid-template-columns:1fr}
}
/* ---------- celular ---------- */
@media (max-width:760px){
	body{font-size:15px;padding-bottom:calc(64px + env(safe-area-inset-bottom))}
	.tt-cab-in{flex-wrap:wrap;gap:6px 8px;padding:8px 12px 10px}
	.tt-abrir-menu.tt-ib{display:flex;min-width:42px;height:42px;padding:0}
	.tt-marca{flex:1;justify-content:center}
	.tt-logo,.tt-marca img.tt-logo{height:42px !important;max-width:190px !important}
	.tt-cab.mini .tt-logo{height:36px !important}
	.tt-busca{order:5;flex:1 1 100%;max-width:none;padding:3px}
	.tt-busca input{padding:7px 12px;font-size:15px}
	.tt-busca button{width:38px;height:38px}
	.tt-cab.mini .tt-busca{display:none}
	.tt-ib-t{display:none}
	.tt-acc .tt-carro{min-width:42px;height:42px}
	.tt-cats-in{padding:7px 12px}
	.tt-sec{padding:38px 0}
	.tt-hero h1{font-size:38px}
	.tt-hero p{font-size:16px}
	.tt-hero-v{min-height:300px}
	.tt-col{height:290px;max-width:330px}
	.tt-hero-pill{font-size:12.5px;padding:8px 12px}
	.tt-hero-pill.p1{left:0;top:4%}
	.tt-blob.a{width:240px;height:240px}
	.woocommerce ul.products,.tt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
	.tt-card{border-radius:16px}
	.tt-card-b{padding:10px 10px 12px}
	.tt-card-t{font-size:13.5px}
	.tt-card .price,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .price ins{font-size:16.5px !important}
	.tt-b{font-size:11px;padding:3px 8px}
	.tt-badges{top:7px;left:7px;right:7px;gap:4px}
	.tt-card-r{left:7px;bottom:7px}
	.tt-card-b .button{padding:10px 8px !important;font-size:13px !important}
	.tt-cat-ics{display:flex;overflow-x:auto;gap:10px;margin:0 -16px;padding:4px 16px 10px;scrollbar-width:none}
	.tt-cat-ics::-webkit-scrollbar{display:none}
	.tt-cat-ic{flex:0 0 104px;padding:14px 6px 12px;border-radius:20px}
	.tt-cat-ic .o{width:66px;height:66px;font-size:32px}
	.tt-cat-ic b{font-size:13px}
	.tt-pasos-l{grid-template-columns:1fr 1fr;gap:10px}
	.tt-pasos-l>div{padding:20px 12px 16px}
	.tt-pasos-l span{font-size:34px}
	.tt-pasos-l b{font-size:15px}
	.tt-pasos-l p{font-size:13px}
	.tt-banda{padding:22px 20px}
	.tt-banda .tt-btn{width:100%}
	.tt-conf-in{gap:14px 10px}
	.tt-conf-in>div{grid-template-columns:1fr;text-align:center;justify-items:center;row-gap:4px}
	.tt-conf-in span{grid-row:auto}
	.tt-pie-in{grid-template-columns:1fr;gap:22px;padding-top:36px}
	.tt-prod{padding-top:6px}
	.tt-migas{display:none}
	.tt-prod>.tt-wrap:first-child{padding:0}
	.tt-gal-st{border-radius:0;box-shadow:none}
	.tt-gal-th{padding:0 12px}
	.tt-gal-th button{width:62px;height:62px;border-radius:12px}
	.tt-info{padding:0 16px}
	.tt-precio .price,.woocommerce .tt-precio p.price{font-size:31px !important}
	.tt-garant{grid-template-columns:1fr 1fr;gap:8px}
	.tt-garant li{flex-direction:column;text-align:center;gap:4px;padding:10px 8px}
	.tt-seria{padding:22px 18px}
	.tt-seria-l{grid-template-columns:1fr}
	/* barra fija de compra */
	.tt-fija{position:fixed;left:0;right:0;bottom:calc(60px + env(safe-area-inset-bottom));z-index:90;display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fff;border-top:1px solid var(--b);box-shadow:0 -10px 30px rgba(20,18,58,.12);transform:translateY(130%);transition:transform .25s}
	.tt-fija.on{transform:none}
	.tt-fija-p{flex:1;min-width:0;line-height:1.2}
	.tt-fija-p small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mm);font-size:12px}
	.tt-fija .price{display:flex;flex-wrap:wrap;gap:0 6px;align-items:baseline;color:var(--a2);font-weight:800;font-size:18px}
	.tt-fija .price del{font-size:12px}
	.tt-fija-b{flex:0 0 auto;padding:13px 18px;border:0;border-radius:14px;background:var(--g);color:#fff;font-weight:800;font-size:15.5px;box-shadow:0 8px 20px rgba(255,46,99,.3)}
	body.tt-con-fija .toce-ay{bottom:calc(140px + env(safe-area-inset-bottom))}
	/* barra inferior */
	.tt-barra{position:fixed;left:0;right:0;bottom:0;z-index:95;display:grid;grid-template-columns:repeat(5,1fr);padding:4px 4px calc(4px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--b);box-shadow:0 -6px 24px rgba(20,18,58,.08)}
	.tt-barra a,.tt-barra button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:52px;border:0;background:none;color:var(--mm);font-size:11px;font-weight:600;cursor:pointer;padding:0}
	.tt-barra a.act,.tt-barra a:hover{color:var(--n)}
	.tt-barra .tt-barra-hot{color:var(--a2)}
	.tt-barra .tt-barra-hot .tt-ic{width:26px;height:26px;padding:4px;border-radius:50%;background:var(--g);color:#fff;stroke-width:2.4}
	.tt-barra .tt-carro{background:none}
	.tt-barra .tt-cart-n{top:2px;right:calc(50% - 22px);min-width:18px;height:18px;font-size:10.5px}
	.tt-faq-in .tt-sec-h{align-items:flex-start}
	.tt-reg-l li{padding:12px}
}
@media (max-width:380px){
	.tt-cab-in{width:100%;min-width:0;box-sizing:border-box}
	.tt-busca{width:100%;min-width:0;box-sizing:border-box}
	.tt-hero h1{font-size:33px}
	.tt-marca img.tt-logo{max-width:160px !important}
	.tt-precio .price,.woocommerce .tt-precio p.price{font-size:27px !important}
}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}

/* ===== Pantalla de carga con el logo ===== */
#tt-cargando{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#fff 0,#fff 35%,#f6f4fb 100%);transition:opacity .55s ease,visibility .55s}
#tt-cargando.fuera{opacity:0;visibility:hidden}
.tt-ld-c{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px;padding:24px;animation:ttLdIn .7s cubic-bezier(.2,.8,.2,1) both}
.tt-ld-halo{position:absolute;top:50%;left:50%;width:300px;height:300px;margin:-170px 0 0 -150px;border-radius:50%;background:var(--g,linear-gradient(120deg,#FF7A00,#FF2E63));opacity:.16;filter:blur(40px);animation:ttLdHalo 2.2s ease-in-out infinite}
.tt-ld-c img{position:relative;max-width:min(260px,70vw);max-height:120px;width:auto;height:auto;object-fit:contain;animation:ttLdLat 1.8s ease-in-out infinite}
.tt-ld-bar{position:relative;width:min(180px,50vw);height:5px;border-radius:99px;background:rgba(0,0,0,.07);overflow:hidden}
.tt-ld-bar i{position:absolute;inset:0;width:40%;border-radius:99px;background:var(--g,linear-gradient(120deg,#FF7A00,#FF2E63));animation:ttLdBar 1.1s ease-in-out infinite}
.tt-ld-c p{position:relative;margin:0;font-weight:600;font-size:14px;color:var(--n,#14123A);opacity:.75;letter-spacing:.2px;text-align:center}
@keyframes ttLdIn{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
@keyframes ttLdLat{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@keyframes ttLdHalo{0%,100%{transform:scale(.9);opacity:.12}50%{transform:scale(1.1);opacity:.22}}
@keyframes ttLdBar{0%{left:-40%}100%{left:100%}}
@media (prefers-reduced-motion:reduce){.tt-ld-c,.tt-ld-c img,.tt-ld-halo,.tt-ld-bar i{animation:none}}

/* ===== v1.3 · tarjetas que venden más ===== */
.tt-card-img{position:relative}
.tt-card-img .tt-card-img2{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s ease}
@media (hover:hover){.tt-card:hover .tt-card-img2{opacity:1}}
.tt-card-img img{transition:transform .5s ease}
@media (hover:hover){.tt-card:hover .tt-card-img>img:first-child{transform:scale(1.05)}}
.tt-b.hot{background:linear-gradient(120deg,#F59E0B,#EF4444);color:#fff}
.tt-card-ah{display:inline-block;margin:2px 0 0;padding:2px 8px;border-radius:999px;background:#ECFDF3;color:#067647;font-weight:700;font-size:12px}
.tt-card-st{display:block;margin-top:3px;color:#C2410C;font-weight:700;font-size:12px;animation:ttLat 1.6s ease-in-out infinite}
@keyframes ttLat{0%,100%{opacity:1}50%{opacity:.55}}

/* ===== carrusel de destacados ===== */
.tt-carru .tt-sec-h{align-items:flex-end}
.tt-carru .tt-sec-h .tt-kick{margin-bottom:8px}
.tt-carru-nav{display:flex;gap:8px}
.tt-carru-b{width:46px;height:46px;border-radius:50%;border:0;background:#fff;color:var(--n);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(20,18,58,.14);transition:.2s}
.tt-carru-b:hover{background:var(--g);color:#fff;transform:translateY(-2px)}
.tt-carru-v{position:relative;margin:0 -6px}
.tt-carru-v:after{content:"";position:absolute;top:0;right:0;bottom:0;width:40px;background:linear-gradient(90deg,transparent,var(--bg,#F7F6FB));pointer-events:none}
ul.products.tt-grid.tt-carru-t{display:flex!important;grid-template-columns:none!important;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 6px 18px;margin:0;scrollbar-width:none}
ul.products.tt-grid.tt-carru-t::-webkit-scrollbar{display:none}
ul.products.tt-grid.tt-carru-t>li{flex:0 0 calc((100% - 48px)/4);max-width:none;scroll-snap-align:start;margin:0}
@media (max-width:1024px){ul.products.tt-grid.tt-carru-t>li{flex-basis:calc((100% - 32px)/3)}}
@media (max-width:720px){ul.products.tt-grid.tt-carru-t>li{flex-basis:72%}.tt-carru-nav{display:none}}

/* ===== bloques personalizados ===== */
.tt-blq .tt-blq-in{border-radius:28px;overflow:hidden}
.tt-blq-promo .tt-blq-in{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;padding:clamp(22px,4vw,44px);background:linear-gradient(135deg,#fff,var(--s,#FFF1E8));border:1px solid rgba(0,0,0,.05);box-shadow:0 20px 50px rgba(20,18,58,.08)}
.tt-blq-promo .tt-blq-in.sin{grid-template-columns:1fr;text-align:center}
.tt-blq h2{margin:10px 0 10px;font-size:clamp(26px,3.6vw,42px);line-height:1.12}
.tt-blq p{margin:0 0 18px;font-size:clamp(15px,1.6vw,18px);opacity:.85;line-height:1.55}
.tt-blq-m img,.tt-blq-m video{display:block;width:100%;height:auto;max-height:420px;object-fit:cover;border-radius:22px;box-shadow:0 18px 40px rgba(20,18,58,.18)}
.tt-blq-aviso .tt-blq-in{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:clamp(20px,3vw,34px);background:var(--g);color:#fff}
.tt-blq-aviso h2{color:#fff;margin:6px 0}
.tt-blq-aviso p{margin:0;color:#fff}
.tt-blq-aviso .tt-btn{background:#fff;color:var(--n)}
.tt-blq-texto .tt-blq-in{max-width:820px;margin:0 auto;text-align:center;padding:clamp(10px,2vw,20px)}
.tt-blq-img{position:relative;display:block;border-radius:28px;overflow:hidden}
.tt-blq-img img,.tt-blq-img video{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.tt-blq-cap{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:clamp(18px,3vw,32px);background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff}
.tt-blq-cap h2{color:#fff;margin:0}
@media (max-width:720px){.tt-blq-promo .tt-blq-in{grid-template-columns:1fr}.tt-blq-m{order:-1}}
body.tt-anim .tt-carru .tt-card{opacity:1;transform:none}

/* ===== bloque dentro de los productos ===== */
.tt-card-promo{position:relative;border-radius:18px;overflow:hidden;background:var(--g);color:#fff;box-shadow:0 14px 30px rgba(20,18,58,.18)}
.tt-card-promo>a{display:flex;flex-direction:column;height:100%;color:#fff;text-decoration:none}
.tt-cp-m{display:block;aspect-ratio:1;overflow:hidden}
.tt-cp-m img,.tt-cp-m video{width:100%;height:100%;object-fit:cover;display:block}
.tt-cp-t{display:flex;flex-direction:column;gap:6px;padding:14px;flex:1;justify-content:center}
.tt-card-promo:not(.con-img) .tt-cp-t{min-height:100%;text-align:center;align-items:center}
.tt-cp-t em{font-style:normal;font-weight:800;font-size:12px;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.2);align-self:flex-start}
.tt-card-promo:not(.con-img) .tt-cp-t em{align-self:center}
.tt-cp-t b{font-size:clamp(16px,1.8vw,20px);line-height:1.2}
.tt-cp-t small{font-size:13px;opacity:.92;line-height:1.4}
.tt-cp-t .tt-btn{background:#fff;color:var(--n);align-self:flex-start;margin-top:4px;padding:9px 14px;font-size:13.5px}
.tt-card-promo:not(.con-img) .tt-cp-t .tt-btn{align-self:center}
body.tt-anim .tt-card-promo{opacity:1;transform:none}
.tt-card-promo .tt-cp-t .tt-btn{color:var(--n)!important;-webkit-text-fill-color:var(--n);background:#fff!important;box-shadow:0 6px 14px rgba(0,0,0,.15)}

/* ===== v1.5: marcos llamativos de los productos (Panel → Ajustes → Diseño rápido) ===== */
@property --tt-ang{syntax:"<angle>";inherits:false;initial-value:0deg}
body.tt-marco-neon .tt-card,body.tt-marco-oro .tt-card,body.tt-marco-arcoiris .tt-card,body.tt-marco-pulso .tt-card{border-color:transparent}
body[class*="tt-marco-"]:not(.tt-marco-ninguno) .tt-card:before,body[class*="tt-marco-"]:not(.tt-marco-ninguno) .tt-gal-st:before{content:"";position:absolute;inset:0;z-index:4;border-radius:inherit;padding:2px;pointer-events:none;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
body.tt-marco-neon .tt-card:before,body.tt-marco-neon .tt-gal-st:before{background:linear-gradient(135deg,var(--a1),var(--a2),var(--a1))}
body.tt-marco-neon .tt-card{box-shadow:0 0 0 1px rgba(255,255,255,.6),0 8px 26px rgba(255,46,99,.14),0 0 22px rgba(255,122,0,.1)}
body.tt-marco-neon .tt-card:hover{box-shadow:0 0 18px rgba(255,46,99,.35),0 0 38px rgba(255,122,0,.25),0 14px 34px rgba(20,18,58,.12)}
@supports (color:color-mix(in srgb,red 50%,transparent)){
	body.tt-marco-neon .tt-card{box-shadow:0 8px 26px color-mix(in srgb,var(--a2) 16%,transparent),0 0 22px color-mix(in srgb,var(--a1) 14%,transparent)}
	body.tt-marco-neon .tt-card:hover{box-shadow:0 0 18px color-mix(in srgb,var(--a2) 45%,transparent),0 0 40px color-mix(in srgb,var(--a1) 30%,transparent),0 14px 34px rgba(20,18,58,.12)}
	body.tt-marco-neon .tt-gal-st{box-shadow:0 0 30px color-mix(in srgb,var(--a2) 28%,transparent),0 20px 50px rgba(20,18,58,.12)}
}
body.tt-marco-oro .tt-card:before,body.tt-marco-oro .tt-gal-st:before{padding:2.5px;background:linear-gradient(135deg,#8A6A1E,#F3D27A,#D4AF37,#FFF1B8,#B8860B)}
body.tt-marco-oro .tt-card{box-shadow:0 10px 30px rgba(184,134,11,.18)}
body.tt-marco-oro .tt-card:hover{box-shadow:0 0 24px rgba(212,175,55,.45),0 14px 34px rgba(20,18,58,.12)}
body.tt-marco-arcoiris .tt-card:before,body.tt-marco-arcoiris .tt-gal-st:before{padding:2.5px;background:conic-gradient(from var(--tt-ang),#FF2E63,#FF7A00,#FFD60A,#22C55E,#06B6D4,#8B5CF6,#FF2E63);animation:ttGira 4s linear infinite}
body.tt-marco-arcoiris .tt-card:hover{box-shadow:0 0 26px rgba(139,92,246,.35),0 14px 34px rgba(20,18,58,.12)}
@keyframes ttGira{to{--tt-ang:360deg}}
body.tt-marco-pulso .tt-card:before,body.tt-marco-pulso .tt-gal-st:before{background:var(--g)}
body.tt-marco-pulso .tt-card{animation:ttLate 2.8s ease-in-out infinite}
@keyframes ttLate{0%,100%{box-shadow:0 6px 18px rgba(255,46,99,.10)}50%{box-shadow:0 0 0 3px rgba(255,90,31,.16),0 0 30px rgba(255,46,99,.32)}}
@media (prefers-reduced-motion:reduce){body.tt-marco-arcoiris .tt-card:before,body.tt-marco-pulso .tt-card{animation:none}}
@media (max-width:720px){body[class*="tt-marco-"] .tt-gal-st:before{display:none}}
/* el reloj chico de la tarjeta, siempre pequeño y en la esquina */
.tt-card-r{max-width:calc(100% - 20px);white-space:nowrap}
.tt-card-img img.emoji{width:1em!important;height:1em!important;position:static!important}
/* carrusel de relacionados en la página del producto */
.tt-rel-c{margin-top:34px}

/* ===== botones de compra más llamativos ===== */
.tt-ya{position:relative;overflow:hidden;font-size:19px!important;letter-spacing:.02em;box-shadow:0 14px 30px rgba(255,46,99,.4)!important;animation:ttLateBtn 2.4s ease-in-out infinite}
.tt-ya:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:ttBrillo 2.8s ease-in-out infinite}
@keyframes ttBrillo{0%,55%{left:-60%}100%{left:130%}}
@keyframes ttLateBtn{0%,100%{transform:scale(1)}50%{transform:scale(1.02)}}
.tt-compra .single_add_to_cart_button{text-transform:uppercase;letter-spacing:.04em;font-weight:900!important}
.tt-fija-b{animation:ttLateBtn 2.4s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.tt-ya,.tt-ya:after,.tt-fija-b{animation:none}}

/* =====================================================================
   v1.6 · todo completo y bien adaptado al celular
   ===================================================================== */
/* nada puede ensanchar la página (antes 9 miniaturas la estiraban a 950 px y todo salía cortado) */
html,body{max-width:100%;overflow-x:clip}
.tt-pg{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}
.tt-pg>*,.tt-info,.tt-gal,.tt-compra,.tt-compra form.cart>*{min-width:0}
.tt-gal-th{max-width:100%}
.tt-prod img,.tt-prod video,.tt-prod iframe,.tt-prod embed{max-width:100%}
.tt-desc-c img,.tt-corta img,.tt-desc-c video,.toce-bl-p img{height:auto}
.tt-prod iframe{width:100%}
.tt-prod table{max-width:100%}
.tt-info,.tt-desc-c,.toce-bl-tx,.toce-lp{overflow-wrap:break-word;word-break:break-word}
.tt-corta img,.tt-desc-c img{display:block;margin:10px auto;border-radius:14px}
/* galería: la foto se ve COMPLETA (sin cortar), con un fondo difuminado de la misma foto */
.tt-gal-st{aspect-ratio:var(--tt-ar,1)}
.tt-gal-it{overflow:hidden;background:#fff}
.tt-gal-it:before{content:"";position:absolute;inset:-30px;background:var(--tt-bg,none) center/cover no-repeat;filter:blur(26px) saturate(1.15);opacity:.55;transform:scale(1.1)}
.tt-gal-it a,.tt-gal-it video{position:relative;z-index:1}
.tt-gal-it a{height:100%}
.tt-gal-it img,.tt-gal-it video{width:100% !important;height:100% !important;max-height:none;object-fit:contain !important;background:transparent !important}
.tt-gal-it.es-video{background:#000}
.tt-gal-it.es-video:before{opacity:.45}
.tt-lp-media img,.tt-lp-media video{object-fit:contain}
@media (max-width:900px){
	.tt-pg{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
	.tt-gal-st{aspect-ratio:var(--tt-ar,1);max-height:78vh}
	/* en celular las flechas van en una franja inferior: la foto nunca queda tapada */
	.tt-gal-it{inset:0 0 46px 0}
	.tt-gal-a,.tt-gal-s{top:auto;bottom:4px;margin-top:0;width:40px;height:40px;font-size:22px}
	.tt-gal-a{left:10px}.tt-gal-s{right:10px}
	.tt-gal-n{right:50%;bottom:14px;transform:translateX(50%)}
	.tt-gal-th{gap:8px;padding:0 12px 2px}
	.tt-gal-th button{width:58px;height:58px}
	.tt-info h1,.tt-info .product_title{font-size:clamp(22px,6.4vw,28px) !important;line-height:1.15;margin-top:4px}
	.tt-precio{flex-wrap:wrap;row-gap:6px}
	.tt-precio .price,.woocommerce .tt-precio p.price{font-size:clamp(26px,8vw,31px) !important}
	.tt-corta{font-size:15.5px}
	.tt-compra form.cart{gap:8px}
	.tt-compra .single_add_to_cart_button{flex:1 1 150px;min-height:54px;font-size:14.5px !important;padding:10px 12px !important;line-height:1.15 !important;white-space:normal}
	.tt-ya{min-height:60px;font-size:18px !important;padding:10px 14px}
	.tt-garant li b{font-size:13.5px}
	.tt-garant li small{font-size:12px}
	.tt-desc h2,.toce-sec-t{font-size:22px}
}
@media (max-width:360px){
	.tt-compra .single_add_to_cart_button{flex-basis:100%}
	.tt-gal-th button{width:52px;height:52px}
}
/* v1.6 · categorías con emoji o imagen redonda */
.tt-cat-chip{display:inline-flex;align-items:center;gap:7px}
.tt-cat-chip .tt-cat-im{width:26px;height:26px;margin:-3px 0 -3px -8px;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 0 0 2px #fff,0 2px 6px rgba(20,18,58,.18);flex:0 0 auto}
.tt-cat-e{font-size:1.05em;line-height:1}
.tt-info-cat{display:inline-flex;align-items:center;gap:6px}
.tt-info-cat .tt-cat-im{width:22px;height:22px;margin-left:-6px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px #fff}
.tt-tit h1 .tt-cat-im{width:46px;height:46px;border-radius:50%;object-fit:cover;vertical-align:middle;box-shadow:0 0 0 3px #fff,0 6px 16px rgba(20,18,58,.15)}
.tt-cat-ic .o img,.tt-cajon-ic img{border-radius:50%;object-fit:cover;width:100%;height:100%}
/* v1.6 · tarjetas de productos: la foto completa, sin recortar */
.tt-card-img{background:#fff}
.tt-card-img img,.tt-card-img .tt-card-img2{object-fit:contain !important;background:#fff}

/* v1.7: carrusel de ofertas centrado en celular (la tarjeta y su foto quedan en el medio) */
@media (max-width:720px){
	ul.products.tt-grid.tt-carru-t{padding:6px 13% 18px !important;scroll-padding-inline:13%}
	ul.products.tt-grid.tt-carru-t>li{flex-basis:74%;scroll-snap-align:center}
}
