/* TACTIKA KIDS · rediseño visual v2.
   Se carga DESPUÉS de style.css y redesign.css. Solo estilos: no cambia funciones ni IDs.
   Reversible: borrar este archivo y su <link> en index.html. */
:root{
  --deep:#1b2e27;--ink:#253e36;--cream:#fffaf0;--sand:#f6efe0;--coral:#f4a08b;--coral-d:#d9674d;
  --mint:#c0e2d5;--yellow:#f6d879;--line:#e4e0d2;
  --serif:Georgia,'Iowan Old Style','Palatino Linotype',Palatino,'Times New Roman',serif;
  --r-lg:28px;--r-md:18px;--sh-1:0 1px 2px rgba(27,46,39,.06),0 8px 24px rgba(27,46,39,.07);--sh-2:0 18px 48px rgba(27,46,39,.14);
  --wrap:1280px;
}
body{background:var(--cream);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3{font-family:var(--serif);font-weight:700;letter-spacing:-.02em;color:var(--deep)}
:focus-visible{outline:3px solid var(--coral-d);outline-offset:3px}

/* ---------- Franja superior ---------- */
.announcement{background:var(--deep);color:var(--yellow);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:9px 16px;text-align:center}

/* ---------- Cabecera ---------- */
header{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:28px;padding:12px max(20px,calc((100vw - var(--wrap))/2));background:rgba(255,250,240,.92);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}
header .brand{width:auto;flex:0 0 auto}
header .brand img{display:block;width:210px;height:auto}
header nav{display:flex;align-items:center;gap:clamp(14px,2vw,32px);margin-left:auto;margin-right:8px}
header nav a{position:relative;font-size:14px;font-weight:700;color:var(--deep);padding:8px 0;opacity:.88}
header nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--coral-d);transform:scaleX(0);transform-origin:left;transition:transform .2s}
header nav a:hover{opacity:1}header nav a:hover::after{transform:scaleX(1)}
.cart-trigger{margin-left:0;background:var(--deep);border-color:var(--deep);color:#fff}
.cart-trigger:hover{background:var(--ink)}
.cart-trigger .cart-count{background:var(--coral-d);border-color:var(--cream)}
.cart-trigger .cart-count[data-empty="true"]{background:var(--yellow);color:var(--deep)}

/* ---------- Barra de mercado (compacta) ---------- */
.market-bar{max-width:none;padding:8px max(20px,calc((100vw - var(--wrap))/2));background:var(--sand);border-bottom:1px solid var(--line);backdrop-filter:none;gap:14px}
.market-summary{display:none}
.market-controls{margin-left:0;width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.market-switch{display:flex;gap:6px;width:auto}
.market-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;min-height:36px;border-radius:999px;background:#fff;border:1.5px solid var(--line);color:var(--deep);box-shadow:none;transition:border-color .15s,background .15s}
.market-pill>span{display:none}
.market-pill b{font-size:13px}.market-pill small{font-size:11px;opacity:.65;font-weight:700}
.market-pill:hover{border-color:var(--deep)}
.market-pill.active,.market-pill[aria-current="page"]{background:var(--deep);border-color:var(--deep);color:#fff}
.market-pill.active small,.market-pill[aria-current="page"] small{opacity:.8}
.currency-switch{display:flex;align-items:center;gap:8px;margin-left:auto}
.currency-label{font-size:12px;font-weight:700;color:#4a5a50}
.currency-select,.language-menu select,.language-menu button{min-height:36px;border-radius:999px;font-size:13px}
.language-menu{margin-left:0}

/* ---------- Formas de pago (una sola fila) ---------- */
.pay-strip{max-width:none;padding:8px max(20px,calc((100vw - var(--wrap))/2));background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:6px 16px;flex-wrap:nowrap}
.pay-strip-head{flex:0 0 auto}
.pay-strip-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--deep)}
.pay-strip-line,.pay-strip-note,.pay-chip small{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.pay-chips{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px}
.pay-chips::-webkit-scrollbar{display:none}
.pay-chip{flex:0 0 auto;background:var(--cream);border-color:var(--line);min-height:36px}
.pay-chip.is-local{background:#fff;border-color:var(--deep);box-shadow:0 0 0 1px var(--deep) inset}

/* ---------- Categorías ---------- */
.cat-nav{max-width:var(--wrap);padding:18px 20px 6px}
.cat-pill{min-height:42px;padding:0 20px;font-size:14px;border-color:var(--line)}
.cat-pill[aria-pressed="true"]{background:var(--deep);border-color:var(--deep)}

/* ---------- Portada ---------- */
.hero-editorial{max-width:var(--wrap);margin:0 auto;padding:18px 20px 48px;gap:clamp(28px,5vw,72px);grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center}
.hero-editorial .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:var(--mint);color:var(--deep);font-size:11px;font-weight:800;letter-spacing:.12em}
.hero-editorial .eyebrow .dot{background:var(--coral-d)}
.hero-editorial h1{font-size:clamp(46px,6.2vw,92px);line-height:.98;letter-spacing:-.035em;margin:18px 0 20px}
.hero-editorial h1 em{font-style:italic;color:var(--coral-d);font-weight:700}
.hero-editorial .hero-copy>p:not(.eyebrow){font-size:clamp(16px,1.3vw,19px);line-height:1.65;color:#41564c;max-width:520px}
.hero-actions{margin-top:28px;gap:12px}
.button{border-radius:999px;font-weight:800;min-height:54px;padding:0 28px;transition:transform .15s,box-shadow .15s,background .15s}
.button.dark{background:var(--deep);color:#fff;box-shadow:0 10px 24px rgba(27,46,39,.25)}
.button.dark:hover{transform:translateY(-2px);background:var(--ink)}
.button.soft{background:#fff;border:1.5px solid var(--deep);color:var(--deep)}
.button.soft:hover{background:var(--yellow)}
.hero-points{list-style:none;margin:34px 0 0;padding:26px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hero-points strong{display:block;font-size:14px;color:var(--deep);margin-bottom:3px}
.hero-points span{display:block;font-size:12.5px;color:#5a6b61;line-height:1.4}
.hero-collage{max-height:600px;aspect-ratio:5/5.6}
.hero-collage::before{content:"";position:absolute;inset:6% -4% -4% 12%;background:var(--yellow);border-radius:220px 220px 36px 36px;z-index:0}
.hero-collage img{z-index:1}
.hero-collage .hero-main{border-radius:220px 220px 32px 32px;box-shadow:var(--sh-2)}
.hero-collage .hero-side{border-width:6px;border-radius:24px;box-shadow:var(--sh-1)}

/* ---------- Cinta ---------- */
.ribbon{background:var(--deep);color:var(--yellow);padding:16px 20px;display:flex;justify-content:center;flex-wrap:wrap;gap:6px 22px;font-size:12px;font-weight:800;letter-spacing:.2em}

/* ---------- Secciones ---------- */
.section{max-width:var(--wrap);margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
.section-head{align-items:flex-end;gap:18px;margin-bottom:30px}
.section-head h2{font-size:clamp(30px,4vw,52px);line-height:1.04;margin:10px 0 0}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--coral-d)}
.text-link{font-weight:800;color:var(--deep);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:var(--coral)}
.muted{color:#5a6b61}

.editorial-grid{gap:20px}
.editorial-card{border-radius:var(--r-lg);box-shadow:var(--sh-1);border:1px solid var(--line);transition:transform .25s,box-shadow .25s}
.editorial-card:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.editorial-media img{transition:transform .6s}.editorial-card:hover .editorial-media img{transform:scale(1.04)}
.editorial-copy h3{font-size:clamp(22px,2.2vw,30px)}
.tone-1,.tone-2,.tone-3{background:#fff}

.family-banner{border-radius:34px;overflow:hidden;box-shadow:var(--sh-2)}
.family-banner-copy h3{color:#fff;font-size:clamp(30px,3.6vw,48px)}
.family-banner-copy .eyebrow{color:var(--yellow)}
.lookbook-card{border-radius:var(--r-lg);overflow:hidden}
.lookbook-card h3{font-size:22px}

.category-tile{border-radius:var(--r-lg);transition:transform .25s,box-shadow .25s}
.category-tile:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}

/* ---------- Catálogo ---------- */
#catalogo{padding-top:64px}
.demo-note{border-radius:12px;background:var(--sand);border:1px solid var(--line);border-left:4px solid var(--coral-d);color:#41564c;font-size:13px}
.filters{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:16px;box-shadow:var(--sh-1);gap:14px}
.filters label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5a6b61}
.filters input,.filters select{border-radius:12px;border:1.5px solid var(--line);background:var(--cream);min-height:46px;font-size:15px;color:var(--deep);text-transform:none;letter-spacing:0;font-weight:600}
.product-grid{gap:38px 24px}
.product-card{position:relative;transition:transform .25s}
.product-card:hover{transform:translateY(-4px)}
.product-card .product-image{border-radius:var(--r-md);background:var(--sand);box-shadow:var(--sh-1)}
.product-card .product-meta h3{font-family:var(--serif);font-size:18px;font-weight:700}
.product-card .product-meta p{color:#7a8a80;font-weight:700}
.price-now{font-size:18px;font-weight:800}
.quick-add{border-radius:999px;background:var(--deep);min-height:46px}
a.quick-add{border-radius:999px}

/* ---------- Ficha ---------- */
.detail-layout{gap:clamp(24px,4vw,64px)}
.detail-image{border-radius:var(--r-lg);box-shadow:var(--sh-1);border:1px solid var(--line)}
.detail-copy h1{font-size:clamp(32px,4vw,52px);letter-spacing:-.03em}
.variant{border-radius:999px;border:1.5px solid var(--line);font-weight:700}
.variant[aria-pressed="true"],.variant.active,.variant.selected{background:var(--deep);border-color:var(--deep);color:#fff}
#add-cart{border-radius:999px}

/* ---------- Cómo pagar / contacto / universo ---------- */
.pay-guide h2,.contact-copy h2,.brand-story h2{font-size:clamp(30px,4vw,52px)}
.pay-step-n{background:var(--deep);color:var(--yellow)}
.contact-shell{border-radius:34px;background:var(--sand);box-shadow:none;border:1px solid var(--line)}
.contact-card,.local-pay-card,.crypto-card,.payment-card{border-radius:var(--r-md);transition:transform .2s,box-shadow .2s}
a.contact-card:hover,.crypto-card:hover{transform:translateY(-2px);box-shadow:var(--sh-1)}
.brand-story{border-radius:36px;max-width:var(--wrap);margin:40px auto 72px;width:calc(100% - 40px);background:linear-gradient(135deg,var(--mint),#d9ecdf)}
.brand-story h2{color:var(--deep)}

/* ---------- Pie ---------- */
footer{background:var(--deep);color:#d6e3dc;margin-top:0;padding-top:56px;padding-bottom:40px}
footer .footer-brand{color:#fff;font-family:var(--serif)}
footer .footer-brand span{color:var(--yellow)}
footer a{color:var(--yellow);font-weight:700}
footer small,footer .footer-links,footer .footer-links span{color:#9fb5aa}

/* ---------- Carrito ---------- */
dialog#cart{border-radius:24px 0 0 24px;box-shadow:var(--sh-2)}
dialog#cart::backdrop{background:rgba(27,46,39,.45);backdrop-filter:blur(3px)}
.drawer-head h2{font-size:26px}
.cart-line>img{border-radius:12px;background:var(--sand)}
#checkout{background:var(--deep);border-radius:999px}
#checkout:disabled{background:#97a69d}

/* ================= Móvil ================= */
@media(max-width:1000px){
  header{position:sticky;flex-wrap:wrap;gap:6px 12px;padding:8px 16px 0}
  header .brand{order:1}.cart-trigger{order:2;margin-left:auto;width:44px;height:44px;min-width:44px}
  header nav{order:3;flex:1 0 100%;margin:0;gap:22px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;padding:2px 0 0;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  header nav::-webkit-scrollbar{display:none}
  header nav a{padding:10px 0;font-size:14px}
  html{scroll-padding-top:110px}
  .market-bar{padding:8px 16px}
  .market-controls{gap:8px;flex-wrap:wrap}
  .market-switch{flex:1 1 100%}
  .market-switch .market-pill{flex:1 1 0;justify-content:center}
  .market-bar .currency-switch{margin-left:0;flex:1 1 0;min-width:0}
  .market-bar .currency-switch .currency-label{display:none}
  .market-bar .currency-select-wrap,.market-bar .currency-select{width:100%}
  .language-menu{flex:0 0 auto}
  .pay-strip{padding:8px 16px;gap:10px}
  .pay-strip{position:relative}
  .pay-strip-head{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
  .pay-chips{-webkit-mask-image:linear-gradient(90deg,#000 90%,transparent);mask-image:linear-gradient(90deg,#000 90%,transparent);padding-right:24px}
  .hero-editorial{grid-template-columns:1fr;padding:16px 16px 40px;gap:26px}
  .hero-collage{order:2;aspect-ratio:1/1.02;max-height:none}
  .hero-editorial .hero-copy{order:1}
  .hero-editorial h1{font-size:clamp(42px,12.5vw,58px);margin:14px 0 14px}
  .hero-actions{margin-top:20px}
  .hero-actions .button{flex:1 1 100%}
  .hero-points{display:none}
}
@media(max-width:700px){
  .section{padding-left:16px;padding-right:16px}
  .section-head{flex-direction:column;align-items:flex-start;gap:8px}
  .cat-nav{padding:14px 16px 4px}
  .ribbon{font-size:10.5px;letter-spacing:.16em;gap:4px 14px;padding:13px 16px}
  .filters{padding:12px}
  .brand-story{width:calc(100% - 32px);border-radius:26px;margin:28px auto 48px}
  .family-banner,.contact-shell{border-radius:26px}
  dialog#cart{border-radius:0}
  .product-card .product-meta h3{font-size:15px}
  footer{padding-top:44px}
}
@media(prefers-reduced-motion:reduce){.product-card,.editorial-card,.category-tile{transition:none}.product-card:hover,.editorial-card:hover,.category-tile:hover{transform:none}}

/* ---------- Ajustes tras revisión visual ---------- */
.filters select,.filters input{padding:0 34px 0 12px;font-size:14px;text-overflow:ellipsis}
.filters input{padding-right:12px}
.market-bar .currency-select{min-width:0}
.market-bar .currency-select-wrap{display:block}
@media(max-width:1000px){
  .market-bar .currency-switch{flex:1 1 0}
  .market-bar .language-menu{flex:0 0 auto}
  .market-bar .market-controls{align-items:stretch}
}

@media(max-width:650px){header .brand img{width:160px;height:auto}}

/* ---------- Corrección de desbordes (tablet / portátil pequeño) ---------- */
.hero-editorial{overflow-x:clip}
@media(max-width:1240px){
  header{flex-wrap:wrap;gap:6px 12px;padding:8px 16px 0}
  header .brand{order:1}.cart-trigger{order:2;margin-left:auto;width:44px;height:44px;min-width:44px}
  header nav{order:3;flex:1 0 100%;margin:0;gap:22px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;padding:2px 0 0;-webkit-mask-image:linear-gradient(90deg,#000 92%,transparent);mask-image:linear-gradient(90deg,#000 92%,transparent)}
  header nav::-webkit-scrollbar{display:none}
  header nav a{padding:10px 0}
  html{scroll-padding-top:110px}
}

/* Móvil: formas de pago visibles sin deslizar */
@media(max-width:650px){
  .pay-chips{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none;padding:0;gap:6px;width:100%}
  .pay-chip{min-height:34px}
}

/* Móvil: moneda e idioma en una sola fila */
@media(max-width:1000px){
  .market-bar .currency-switch{width:auto;order:0;justify-content:flex-start}
  .market-bar .currency-select-wrap{flex:1;max-width:none;min-width:0}
  .market-bar .language-menu{width:auto;flex:0 0 auto}
}

/* Filtros legibles en móvil y botón de pago desactivado con contraste */
@media(max-width:700px){
  .filters select{padding:0 26px 0 10px;font-size:13px}
  .filters label{letter-spacing:.04em}
}
#checkout:disabled{background:#6b7f75;color:#fff;opacity:1}
@media(max-width:480px){
  #filters label{flex:1 1 100%}
  #filters select{font-size:14px}
}

/* Métodos aún sin verificar (Tarjetas, PayPal): etiqueta «por confirmar» visible */
.pay-chip.pay-pending small{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;clip-path:none;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--coral-d)}
.pay-chip.pay-pending{border-style:dashed}

/* ================= Menú hamburguesa ================= */
.menu-toggle{display:none;position:relative;width:44px;height:44px;min-width:44px;border-radius:50%;border:1.5px solid var(--deep);background:#fff;cursor:pointer;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.menu-toggle:hover{background:var(--yellow)}
.menu-bar{display:block;width:18px;height:2px;border-radius:2px;background:var(--deep);transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded="true"] .menu-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-bar:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .menu-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1240px){
  header{flex-wrap:nowrap;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line)}
  header .brand{order:1}
  .cart-trigger{order:2;margin-left:auto}
  .menu-toggle{order:3;display:inline-flex}
  header nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:50;flex-direction:column;align-items:stretch;flex:none;order:4;gap:0;margin:0;padding:6px 16px 14px;overflow:auto;max-height:calc(100vh - 72px);white-space:normal;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:var(--sh-2);-webkit-mask-image:none;mask-image:none}
  header.menu-open nav{display:flex}
  header nav a{display:block;padding:15px 4px;font-size:17px;border-bottom:1px solid var(--line);opacity:1}
  header nav a:last-child{border-bottom:0}
  header nav a::after{display:none}
  html{scroll-padding-top:84px}
}

/* ================= Banner de cookies ================= */
.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:760px;margin:0 auto;background:#fff;border:1.5px solid var(--deep);border-radius:var(--r-md);box-shadow:var(--sh-2);padding:18px 20px;display:flex;flex-direction:column;gap:14px}
.cookie-banner[hidden]{display:none}
.cookie-banner h2{font-size:18px;margin:0 0 4px}
.cookie-banner p{margin:0;font-size:13.5px;line-height:1.55;color:#41564c}
.cookie-banner a{font-weight:800;text-decoration:underline;text-underline-offset:3px}
.cookie-draft{display:block;margin-top:4px;font-size:11.5px;color:var(--coral-d);font-weight:700}
.cookie-config{display:flex;flex-direction:column;gap:10px;padding:12px 0 2px;border-top:1px solid var(--line)}
.cookie-config[hidden]{display:none}
.cookie-row{display:flex;gap:12px;align-items:flex-start;font-size:13px}
.cookie-row input{width:20px;height:20px;margin-top:2px;accent-color:var(--deep);flex:0 0 auto}
.cookie-row strong{display:block}.cookie-row small{display:block;color:#5a6b61;font-size:12px}
.cookie-actions{display:flex;flex-wrap:wrap;gap:10px}
.cookie-btn{flex:1 1 150px;min-height:46px;padding:0 18px;border-radius:999px;border:1.5px solid var(--deep);background:#fff;color:var(--deep);font:inherit;font-size:14px;font-weight:800;cursor:pointer}
.cookie-btn:hover{background:var(--yellow)}
.cookie-accept,.cookie-reject{background:var(--deep);color:#fff}
.cookie-accept:hover,.cookie-reject:hover{background:var(--ink);color:#fff}
.cookie-config-btn{border-style:dashed}
.has-cookie-banner{padding-bottom:210px}
@media(max-width:700px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:14px;gap:10px;max-height:calc(100vh - 20px);overflow:auto}.cookie-banner p{font-size:12.5px}.cookie-btn{flex:1 1 100%;min-height:44px}.has-cookie-banner{padding-bottom:300px}}

/* ================= Páginas legales ================= */
.legal-page{max-width:820px;margin:0 auto;padding:12px 0 40px}
.legal-page h1{font-size:clamp(32px,5vw,52px);margin:8px 0 18px}
.legal-page h2{font-size:clamp(20px,2.4vw,26px);margin:30px 0 10px}
.legal-page p,.legal-page li,.legal-page dd{font-size:16px;line-height:1.7;color:#33493f}
.legal-draft{background:var(--sand);border:1px solid var(--line);border-left:4px solid var(--coral-d);border-radius:12px;padding:14px 16px;margin:0 0 8px}
mark.pending{background:var(--yellow);color:var(--deep);padding:2px 8px;border-radius:6px;font-weight:700;font-size:.92em}
.legal-dl{margin:0;display:grid;gap:8px}
.legal-dl div{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:6px 16px;padding:10px 0;border-bottom:1px solid var(--line)}
.legal-dl dt{font-weight:800;color:var(--deep);font-size:14px}.legal-dl dd{margin:0}
.legal-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.legal-table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.legal-table th,.legal-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.legal-table th{background:var(--sand);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.legal-table code{font-size:12.5px;word-break:break-all}
.legal-missing{background:#fff;border:1.5px dashed var(--coral-d);border-radius:var(--r-md);padding:4px 22px 18px;margin-top:34px}
@media(max-width:700px){.legal-dl div{grid-template-columns:1fr}.legal-page p,.legal-page li,.legal-page dd{font-size:15px}}

/* ================= Pie: enlaces legales ================= */
.legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 22px;font-size:12.5px;padding-top:14px;border-top:1px solid rgba(255,255,255,.14)}
.legal-links a,.legal-links button{color:var(--yellow);font:inherit;font-weight:700;background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:none}
.legal-links a:hover,.legal-links button:hover{text-decoration:underline}
.cart-legal{margin:2px 0 10px;font-size:12.5px;line-height:1.5;color:#41564c}.cart-legal a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

/* ---------- Ajustes tras segunda revisión ---------- */
/* «Original: …» en su propia línea bajo el precio convertido (antes se pegaba al importe) */
.price-now small.price-original,.price-was small.price-original{display:block;margin:2px 0 0;font-size:11px;font-weight:600;color:#5a6b61;text-decoration:none}
.price-was small.price-original{display:none}
/* Las páginas legales no necesitan la fila de categorías de la tienda */
body:has(#info-page:not([hidden])) .cat-nav{display:none}
/* Banner de cookies más compacto en móvil: Rechazar y Aceptar con el mismo peso, lado a lado */
@media(max-width:700px){
  .cookie-banner{padding:12px 14px;gap:8px}
  .cookie-banner h2{font-size:16px}
  .cookie-draft{margin-top:2px}
  .cookie-actions{gap:8px}
  .cookie-reject,.cookie-accept{flex:1 1 calc(50% - 4px);padding:0 8px;font-size:13px}
  .cookie-config-btn{flex:1 1 100%;min-height:44px}
  .has-cookie-banner{padding-bottom:250px}
}
@media(max-width:700px){.cookie-reject,.cookie-accept{padding:0 4px;font-size:12.5px;letter-spacing:-.1px}}

/* ================= Etiquetas de país (sustituyen a las banderas emoji) ================= */
.country-tag{display:inline-flex;align-items:center;padding:2px 11px;border-radius:999px;background:var(--mint);color:var(--deep);font-size:.84em;font-weight:800;letter-spacing:.03em;line-height:1.5;vertical-align:baseline}
.family-banner .country-tag{background:rgba(255,255,255,.16);color:#fff}
.family-contact-strip .country-tag{background:rgba(255,255,255,.16);color:inherit}
.contact-card .country-code,.market-flag{display:inline-grid;place-items:center;font-weight:800;letter-spacing:.08em;color:var(--deep)}
.contact-card .country-code{font-size:14px}
.market-flag{min-width:34px;height:26px;padding:0 8px;border-radius:999px;background:var(--mint);font-size:12px}
.market-flag.large{width:48px;height:48px;min-width:48px;border-radius:50%;font-size:14px}
.language-trigger{display:inline-flex;align-items:center;gap:6px}
.globe-icon{flex:0 0 auto;display:block}

/* ================= Banner de cookies compacto ================= */
.cookie-banner .lbl-short{display:none}
.cookie-banner{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 18px;max-width:980px;padding:12px 16px}
.cookie-main{flex:1 1 380px;min-width:0}
.cookie-banner h2{display:inline;font-size:14px;margin:0 6px 0 0}
.cookie-banner p{display:inline;font-size:12.5px;line-height:1.5}
.cookie-draft{display:inline;margin:0;font-size:11.5px}
.cookie-actions{flex:0 0 auto;gap:8px;flex-wrap:nowrap}
.cookie-btn{flex:0 0 auto;min-height:44px;padding:0 18px;font-size:13.5px;white-space:nowrap}
.cookie-config{order:3;flex:1 1 100%}
.has-cookie-banner{padding-bottom:calc(var(--cookie-h,90px) + 24px)}
@media(max-width:700px){
  .cookie-banner{left:8px;right:8px;bottom:8px;padding:10px 12px;gap:8px;flex-direction:column;align-items:stretch}
  .cookie-main{flex:0 0 auto}
  .cookie-banner h2{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%)}
  .cookie-banner p{display:block;font-size:12px;line-height:1.4}
  .cookie-actions{width:100%;gap:6px}
  .cookie-btn,.cookie-reject,.cookie-accept,.cookie-config-btn{flex:1 1 0;min-width:0;padding:0 4px;font-size:12.5px;letter-spacing:0}
  .cookie-banner .lbl-long{display:none}.cookie-banner .lbl-short{display:inline}
  .has-cookie-banner{padding-bottom:calc(var(--cookie-h,150px) + 16px)}
  body.has-cookie-banner #add-cart{bottom:calc(var(--cookie-h,0px) + 16px)}
}
@media(min-width:701px){.cookie-banner{max-width:1120px}.cookie-main{flex:1 1 520px}}

/* Catálogo real: grupos de categorías, subcategorías y tallas por confirmar */
.cat-sub{padding:0 0 14px;max-width:none;margin:0}
.cat-sub .cat-pill{min-height:36px;padding:0 14px;font-size:13px;font-weight:600}
.cat-sub .cat-pill[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.size-chip{display:inline-block;padding:1px 7px;border-radius:999px;background:#fff3d6;color:#6b4a00;font-size:11px;font-weight:700;line-height:1.3;max-width:100%;white-space:normal}
.size-pending{margin:10px 0;padding:9px 12px;border-radius:10px;background:#fff3d6;color:#6b4a00;font-weight:700;font-size:14px}
body:has(#info-page:not([hidden])) .cat-sub{display:none}

/* Cómo pagar: grupos (transferencia manual / pasarela automática) */
.pay-group-title{margin:6px 2px 0;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#5d6c61}
.pay-group-title small{display:block;margin-top:2px;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}
.pay-group-title:first-child{margin-top:0}
.pay-cards .pay-group-title{grid-column:1/-1}
.family-service-grid{grid-template-columns:repeat(2,1fr)}@media(max-width:700px){.family-service-grid{grid-template-columns:1fr}}

/* Simulación visual del -50% (solo vista previa privada): etiqueta pequeña, nunca un precio real */
.sim-chip{display:inline-block;margin:0 0 4px;padding:2px 7px;border:1px dashed #8a6d00;border-radius:6px;background:#fff6d6;color:#6b5300;font-size:10px;font-weight:800;letter-spacing:.03em}

/* Ficha: insignia -50 % arriba a la izquierda, logotipo TACTIKA KIDS (ya incluido en la foto) arriba a la derecha, cuadro de pagos bajo «Agregar al carrito» */
.product-image,.detail-image{position:relative}
.discount-badge,.detail-price .discount-badge{position:absolute;left:10px;right:auto;top:10px}
.product-card .badge{left:10px}
.price-was{display:block;color:#5a6b61}
.price-row{flex-direction:column;align-items:flex-start;gap:0}
.product-pay{margin:16px 0 0;padding:14px 16px 12px;border:1px solid var(--line);border-radius:16px;background:#fff}
.product-pay-title{margin:0 0 10px;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#5d6c61;text-align:center}
.product-pay-logos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 22px}
.product-pay-logos .pay-logo-item{display:flex;align-items:center;justify-content:center;height:30px}
.product-pay-logos .pay-logo{display:block;height:22px;width:auto;max-width:100%;object-fit:contain}
.product-pay-logos .pay-logo[src$="visa.svg"]{height:20px}
.product-pay-logos .pay-logo[src$="nequi.svg"]{height:18px}
.product-pay-logos .pay-logo[src$="mastercard.svg"],.product-pay-logos .pay-logo[src$="amex.svg"]{height:24px}
.product-pay-note{margin:10px 0 0;text-align:center;font-size:11.5px;line-height:1.4;color:#6b7a70}
@media(max-width:380px){.product-pay{padding:12px 10px}.product-pay-logos{gap:8px 16px}}

/* Carrito: misma insignia -50 % arriba a la izquierda de la miniatura */
.cart-thumb{position:relative;flex:0 0 84px;width:84px;height:104px}
.cart-thumb img{width:84px;height:104px;object-fit:cover;border-radius:12px;background:var(--sand)}
.cart-thumb .discount-badge{left:4px;top:4px;font-size:10.5px;padding:4px 6px}

/* MODO CATÁLOGO (fail-closed: el HTML nace con data-ventas="no"; solo "si" cuando el servidor declara sales:true).
   Sin carrito, pago ni compra rápida. La ficha SÍ muestra el diseño final: botón «Agregar al carrito» INHABILITADO con aviso claro, franja informativa de pagos y descuentos. */
html[data-carrito="no"] .cart-trigger,html[data-carrito="no"] dialog#cart,html[data-ventas="no"] .sales-only,html[data-carrito="no"] .quick-add[data-quick]{display:none!important}
.soon-note{margin:.8rem 0;padding:.7rem 1rem;border-radius:14px;background:var(--cream,#fbf6ea);border:1px dashed currentColor;font-size:.95rem}

/* Formularios de vista previa ocultos hasta que existan con destino real (fail-closed). */
html[data-formularios="no"] .forms-only{display:none!important}

/* Etiqueta de descuento a la IZQUIERDA del precio actual (decisión del 24/10/2026): una sola etiqueta, ya no sobre la foto */
.price-main{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 8px}
.discount-badge,.detail-price .discount-badge{position:static;flex:0 0 auto}
.product-card .discount-badge{font-size:12px;padding:5px 8px}
/* Móvil (2 columnas): etiqueta + precio en COP caben en la misma línea; el precio en oferta se ajusta al ancho de la tarjeta (máx. 16 px) */
.product-card .product-meta{container-type:inline-size}
@media(max-width:700px){
  .product-card .discount-badge{font-size:11px;padding:4px 6px}
  .product-card .price-main{gap:5px}
  .product-card .price-now.on-sale{font-size:min(16px,8.6cqi)}
}

/* Compra desde la ficha: selector de cantidad + botón grande (solo visibles con ventas activas; ver MODO CATÁLOGO) */
.qty-row{display:flex;align-items:center;gap:14px;margin:14px 0 8px}
.qty-row[hidden]{display:none}
.qty-row #qty-label{font-weight:700}
.qty-pick{display:inline-flex;align-items:center;gap:6px}
.qty-pick output{min-width:36px;text-align:center;font-weight:800;font-size:18px}
.qty-pick button:disabled{opacity:.4}
#add-cart{display:block;width:100%;min-height:58px;font-size:17px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}
#add-cart[hidden]{display:none}
.line-total{margin:4px 0 0;font-size:14px}
.cart-savings{margin:0 0 6px;color:var(--red,#c0392b);font-weight:700}
.cart-savings[hidden]{display:none}
html[data-carrito="no"] .cart-savings{display:none!important}

/* Botón inhabilitado en modo catálogo: claramente no operativo, sin parecer un error */
#add-cart:disabled{background:#3a5a4d;border-color:#3a5a4d;color:#fff;cursor:not-allowed;opacity:1;box-shadow:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
#add-cart .btn-sub{display:block;font-size:12px;font-weight:700;letter-spacing:.2px;text-transform:none;opacity:.95}
.soon-note[id="sales-off-note"]{margin:12px 0 0;padding:.6rem .9rem;font-size:.86rem;line-height:1.45;font-weight:600;color:var(--deep,#1c2f28)}

/* ====== FICHA V3 (24/10/2026): cabecera con contactos y banderas, ficha de boutique y «FORMAS DE PAGO». Componente compartido por TODAS las fichas ====== */
.contact-bar{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:4px 24px;padding:6px max(20px,calc((100vw - var(--wrap))/2));background:#f3ecd9;border-bottom:1px solid var(--line)}
.contact-chip{display:inline-flex;align-items:center;gap:9px;min-height:32px;font-size:14px;color:var(--deep);text-decoration:none}
.contact-chip b{font-weight:800;margin-right:2px}
.contact-chip:hover .contact-chip-text{text-decoration:underline}
.flag{display:block;flex:0 0 auto;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.14)}
header .brand img{width:clamp(220px,20vw,290px);height:auto}
@media(max-width:650px){
  .contact-bar{justify-content:space-between;gap:2px 8px;padding:4px 16px}
  .contact-chip{min-height:40px;font-size:13.5px;gap:7px}.contact-chip b{display:none}
  header .brand img{width:196px}
}
/* ficha: dos columnas, foto grande a la izquierda (fija al desplazarse) y todo el contenido de compra a la derecha */
#product-detail{padding-top:4px}
#product-detail .breadcrumb{display:inline-block;margin:6px 0 16px}
.detail-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(28px,4.2vw,68px);align-items:start}
.detail-layout>div:first-child{position:sticky;top:104px}
.detail-image{aspect-ratio:4/5;max-height:none;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1)}
.detail-image img{width:100%;height:100%;object-fit:contain}
.thumbnails{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.thumbnails button{width:86px;height:86px;padding:0;border:2px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;cursor:pointer}
.thumbnails button:hover,.thumbnails button:focus-visible{border-color:var(--deep)}
.thumbnails button img{width:100%;height:100%;object-fit:cover;display:block}
.detail-copy{display:flex;flex-direction:column;align-items:stretch}
.detail-copy .eyebrow{margin:2px 0 8px}
.detail-copy h1{font-size:clamp(28px,3vw,42px);line-height:1.12;letter-spacing:-.02em;margin:0 0 14px;overflow-wrap:anywhere}
.detail-copy .detail-price{margin:0 0 14px}
.detail-copy .description{font-size:17px;line-height:1.7;color:#44564c;margin:0 0 16px}
.detail-copy fieldset{margin:0 0 6px;padding:0;border:0}
.detail-copy legend{font-size:15px;font-weight:800;color:var(--deep);margin-bottom:10px;padding:0}
.variant-grid{display:flex;flex-wrap:wrap;gap:10px}
.variant{min-height:48px;padding:0 20px;font-size:15px}
#stock{margin:12px 0 4px;font-weight:700;color:var(--deep)}
.qty-row{margin:10px 0 14px}
/* FORMAS DE PAGO */
.product-pay{margin:20px 0 0;padding:18px 16px 14px;border:1px solid var(--line);border-radius:20px;background:#fff}
.product-pay-title{margin:0 0 14px;font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--deep);text-align:center}
.formas-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.forma{display:flex;flex-direction:column;align-items:center;gap:9px;padding:2px 10px;text-align:center}
.forma+.forma{border-left:1px solid var(--line)}
.forma-title{margin:0;font-size:14px;font-weight:800;color:var(--deep)}
.forma-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 10px}
.forma .pay-logo{display:block;height:24px;width:auto;max-width:100%}
.forma .pay-logo[src$="visa.svg"]{height:21px}.forma .pay-logo[src$="nequi.svg"]{height:19px}.forma .pay-logo[src$="mastercard.svg"],.forma .pay-logo[src$="amex.svg"]{height:26px}
.forma-num{font-size:16px;font-weight:800;letter-spacing:.02em;white-space:nowrap;color:var(--deep)}
.forma-only{font-size:12.5px;line-height:1.3;color:#5d6c61}
.forma.is-otro .pay-logo,.forma.is-otro .forma-num{opacity:.55}
.product-pay-note{margin:14px 0 0;text-align:center;font-size:12.5px;line-height:1.45;color:#5d6c61}
@media(max-width:900px){.detail-layout{grid-template-columns:1fr;gap:20px}.detail-layout>div:first-child{position:static}.detail-copy h1{font-size:30px}.thumbnails button{width:72px;height:72px}}
@media(max-width:560px){
  .product-pay{padding:16px 14px 12px}
  .formas-grid{grid-template-columns:1fr}
  .forma{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px 14px;padding:12px 0}
  .forma+.forma{border-left:0;border-top:1px solid var(--line)}
  .forma-title{flex:0 0 78px;text-align:left}
  .forma .pay-logo{height:26px}.forma-num{margin-left:auto;font-size:17px}
  .forma-logos{justify-content:flex-start;gap:10px 14px}
  .forma-only{flex:1 0 100%;padding-left:92px}
}
/* ficha: legibilidad y menos huecos */
#product-detail{padding-bottom:12px}
#product-detail:not([hidden])~#contacto{padding-top:28px}
.detail-copy{padding-top:0}
.detail-copy .eyebrow{font-size:13px}
#product-detail .breadcrumb{font-size:14px}
#stock{font-size:15px}

/* TACTIKA KIDS - Tarjeta de pagos V3 (V3 final: Tarjetas + SOLO el método local del mercado → 2 columnas; el borde entre columnas lo da la regla base .forma+.forma) */
.product-pay {
  padding: 22px;
  border-radius: 24px;
}
.product-pay-title {
  font-size: 20px;
  letter-spacing: .04em;
}
.forma {
  padding: 12px;
}
.forma-title {
  font-size: 15px;
}
.forma-nequi .forma-logos,
.forma-bizum .forma-logos {
  flex-direction: column;
  align-items: center;
}
.forma-num {
  font-size: 20px;
  font-weight: 800;
}
.forma-tipo {
  font-size: 12.5px;
  line-height: 1.3;
  color: #5d6c61;
}

/* CONTACTOS COMPACTOS V5 */
.contact-section .contact-shell {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  align-items: center;
  gap: 20px;
  padding: 24px;
}

.contact-section .contact-copy h2 {
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.15;
}

.contact-section .contact-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: center;
}

.contact-section .contact-card {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 82px !important;
  height: auto !important;
  padding: 12px !important;
  border-radius: 14px;
  grid-template-columns: none !important;
}

.contact-section .contact-card .country-code {
  display: block !important;
  flex: 0 0 36px;
  width: 36px !important;
  height: 24px !important;
  min-width: 36px;
  border-radius: 4px;
  font-size: 0 !important;
  letter-spacing: 0;
  overflow: hidden;
  box-shadow: 0 0 0 1px #0002;
}

.contact-section .contact-card:nth-child(1) .country-code {
  background: linear-gradient(to bottom,
    #aa151b 0% 25%, #f1bf00 25% 75%, #aa151b 75% 100%) !important;
}

.contact-section .contact-card:nth-child(2) .country-code {
  background: linear-gradient(to bottom,
    #fcd116 0% 50%, #003893 50% 75%, #ce1126 75% 100%) !important;
}

.contact-section .contact-card div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 3px;
  min-width: 0;
}

.contact-section .contact-card strong {
  font-size: 14px;
}

.contact-section .contact-card small {
  font-size: 11px;
}

.contact-section .contact-card div b {
  font-size: 13px;
  overflow-wrap: anywhere;
}

.contact-section .contact-card > b {
  margin-left: auto;
  font-size: 14px;
}

@media (max-width: 800px) {
  .contact-section .contact-shell {
    grid-template-columns: 1fr;
    padding: 18px;
  }
}

@media (max-width: 520px) {
  .contact-section .contact-links {
    grid-template-columns: 1fr;
  }
}

/* Mercado España: aviso de entrega exclusivamente en Colombia + nota de moneda del checkout */
.entrega-aviso{margin:0;padding:10px max(20px,calc((100vw - var(--wrap))/2));background:var(--sand);border-bottom:1px solid var(--line);font-weight:600;text-align:center;line-height:1.4}
.entrega-cart-note{margin:8px 0;font-size:.9rem;line-height:1.4}
@media (max-width: 520px){.entrega-aviso{padding:10px 16px;font-size:.92rem}}

/* Opción A (España): moneda de cobro y subtotal definitivo en COP dentro del carrito */
.cart-cobro{margin:6px 0 10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--sand);font-size:.9rem;line-height:1.4}
