/*
 * Estilo Tienda ("Renovada", 21/10/2026): conserva la estructura de una tienda con Kadence (cabecera simple,
 * portada a todo el ancho, categorías y productos en grilla con el nombre debajo, pie en columnas) y la
 * actualiza con terminaciones actuales. Cada sitio define sus colores de cabecera y pie:
 *   --vt-cabecera-fondo (y cabecera_oscura si es oscura), --vt-pie-fondo, --vt-pie-texto, --vt-seccion-fondo.
 */
:root { --vt-radio: 12px; --vt-sombra: 0 1px 2px rgba(0, 0, 0, .05), 0 10px 28px rgba(0, 0, 0, .08); --vt-pad: clamp(3rem, 6vw, 5rem); }
body { background: var(--vt-seccion-fondo, #fff); }

/* ---------- Cabecera ---------- */
.vt-cabecera-wrap, .vt-cabecera { background: var(--vt-cabecera-fondo, #fff); }
.vt-cabecera { padding-block: .55rem; }
.vt-cabecera .wp-block-navigation { font-weight: 500; font-size: 1rem; gap: 1.8rem; }
/* Subrayado que crece desde el centro al pasar el mouse (en lugar del borde fijo de la base) */
.vt-cabecera .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { position: relative; border-bottom: 0 !important; }
.vt-cabecera .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after {
	content: ""; position: absolute; left: 50%; right: 50%; bottom: 0; height: 2px; border-radius: 2px; background: var(--vt-subrayado, var(--vt-primario)); transition: left .25s, right .25s;
}
.vt-cabecera .wp-block-navigation__container > .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after,
.vt-cabecera .wp-block-navigation__container > .current-menu-item > .wp-block-navigation-item__content::after { left: 0; right: 0; }
.vt-cabecera .wp-block-navigation__submenu-container { border-radius: var(--vt-radio) !important; overflow: hidden; }
/* Sin botón de WhatsApp en la cabecera (como la tienda actual): queda la burbuja y el ítem del menú del celular */
.vt-cabecera .wp-block-buttons.vt-cabecera__cta { display: none !important; }
/* Buscador compacto, tipo píldora */
.vt-cabecera .vt-cabecera__buscar { display: flex; align-items: center; position: relative; flex: 0 1 300px; min-width: 0; }
.vt-cabecera__buscar input {
	width: 100%; height: 40px; box-sizing: border-box; margin: 0; padding: 0 2.8rem 0 1.1rem; font-size: .92rem; color: var(--vt-tinta);
	background: #fff; border: 1px solid var(--vt-linea); border-radius: 999px; -webkit-appearance: none; appearance: none; transition: border-color .2s, box-shadow .2s;
}
.vt-cabecera__buscar input::placeholder { color: var(--vt-suave); opacity: 1; }
.vt-cabecera__buscar input:focus { outline: 0; border-color: var(--vt-primario); box-shadow: 0 0 0 3px color-mix(in srgb, var(--vt-primario) 22%, transparent); }
.vt-cabecera__buscar button { position: absolute; right: 4px; top: 4px; width: 32px; height: 32px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: var(--vt-primario); color: #fff; cursor: pointer; }
.vt-cabecera__buscar svg { width: 16px; height: 16px; }
.vt-carrito__n { background: var(--vt-primario); }
@media (max-width: 899px) {
	.vt-cabecera .vt-cabecera__fila { flex-wrap: wrap !important; row-gap: .5rem; }
	.vt-cabecera .vt-cabecera__nav { order: 1; }
	.vt-cabecera .vt-cabecera__buscar { order: 2; flex: 0 0 100%; }
	:root { --vt-cabecera: 120px; }
}

/* ---------- Portada (video o foto) a todo el ancho, texto centrado ---------- */
.vt-hero:not(.vt-hero--chico) { min-height: min(80vh, 760px); text-align: center; justify-content: center; }
.vt-hero:not(.vt-hero--chico) > .alignwide > * { margin-inline: auto; }
.vt-hero:not(.vt-hero--chico) h1 { max-width: 18ch; margin-inline: auto; font-size: clamp(2.2rem, 5vw, 4rem); }
.vt-hero:not(.vt-hero--chico) .vt-bajada { margin-inline: auto; }
.vt-hero:not(.vt-hero--chico) .wp-block-buttons { justify-content: center; }
.vt-hero .vt-overline { display: inline-block; padding: .35rem .9rem; border: 1px solid rgba(255, 255, 255, .6); border-radius: 999px; letter-spacing: .18em; }
.vt-hero .vt-overline::before { display: none; }
.vt-hero__datos { opacity: .95; }

/* ---------- Títulos de sección: centrados, con un filete corto del color de marca ---------- */
.vt-cabeza { margin-inline: auto; text-align: center; margin-bottom: clamp(1.6rem, 3vw, 2.4rem); }
.vt-cabeza .vt-overline { margin-bottom: .3rem !important; }
.vt-cabeza .vt-overline::before { display: none; }
.vt-cabeza h2::after { content: ""; display: block; width: 44px; height: 3px; border-radius: 3px; margin: .8rem auto 0; background: var(--vt-filete, var(--vt-primario)); }
.vt-cabeza .vt-bajada { margin-inline: auto; }

/* ---------- Botones: píldora ---------- */
.wp-block-button__link { border-radius: 999px; padding: .8rem 1.7rem; }
.wp-block-button__link:hover { transform: translateY(-2px); box-shadow: 0 8px 18px color-mix(in srgb, var(--vt-primario) 30%, transparent); }
.vt-seccion > .alignwide > .wp-block-buttons { justify-content: center; }

/* ---------- Tarjetas: fondo blanco, sombra suave, sin borde; la foto se agranda al pasar ---------- */
.vt-card { border: 0; box-shadow: var(--vt-sombra); transition: box-shadow .3s, transform .3s; }
.vt-card:hover { transform: translateY(-4px); box-shadow: 0 2px 4px rgba(0, 0, 0, .05), 0 18px 40px rgba(0, 0, 0, .12); }
.vt-card .wp-block-image img { transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.vt-card:hover .wp-block-image img { transform: scale(1.07); }

/* Categorías: foto cuadrada y el nombre abajo (como "Comprar por categoría") */
.vt-grilla--categorias { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.6rem; }
.vt-grilla--categorias .vt-card .wp-block-image { aspect-ratio: 1; }
.vt-grilla--categorias .vt-card h3 { font-size: 1.08rem; padding: 1.05rem 1.2rem 0; }
.vt-grilla--categorias .vt-card h3 + p { padding: .2rem 1.2rem 0; font-size: .9rem; }
.vt-grilla--categorias .vt-card .vt-mas { padding: .55rem 1.2rem 1.1rem; font-size: .88rem; }

/* Productos: foto cuadrada, nombre, precio y "Agregar al carrito" en versalitas */
.vt-grilla--productos { gap: 1.6rem; }
@media (min-width: 1100px) {
	.vt-grilla--productos { grid-template-columns: repeat(var(--vt-por-fila, 4), minmax(0, 1fr)) !important; }
}
.vt-producto .wp-block-image { aspect-ratio: 1; }
.vt-producto h3 { font-size: 1rem; font-weight: 600; line-height: 1.3; padding: 1rem 1.2rem 0; }
.vt-producto > p:not(.vt-mas) { padding: .3rem 1.2rem 0; }
.vt-producto .vt-precio { font-size: 1.05rem; color: var(--vt-precio, var(--vt-tinta)); }
.vt-producto .vt-producto__detalle { font-size: .85rem; }
.vt-producto .vt-mas { padding: .8rem 1.2rem 1.2rem; }
.vt-producto .vt-mas a { font-size: .74rem; letter-spacing: .1em; text-transform: uppercase; color: var(--vt-tinta); }
.vt-producto .vt-mas a::after { content: " →"; transition: margin .2s; }
.vt-producto:hover .vt-mas a { color: var(--vt-primario); }
.vt-etiqueta { border-radius: 999px; padding: .28rem .7rem !important; font-size: .7rem; box-shadow: 0 2px 8px rgba(0, 0, 0, .15); }
@media (max-width: 1099px) { .vt-grilla--categorias { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 781px) { .vt-grilla--categorias { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; } }
@media (max-width: 600px) {
	.vt-grilla--productos { gap: .9rem; }
	.vt-producto h3 { font-size: .95rem; padding: .8rem .8rem 0; }
	.vt-producto > p:not(.vt-mas) { padding-inline: .8rem; }
	.vt-producto .vt-mas { padding: .6rem .8rem .9rem; }
}

/* ---------- Aparición suave al bajar (solo desplazamiento: las capturas completas no quedan en blanco) ---------- */
@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {
		.vt-grilla > .vt-card, .vt-cabeza { animation: vt-subir linear both; animation-timeline: view(); animation-range: entry 0% entry 40%; }
	}
}
@keyframes vt-subir { from { transform: translateY(28px); } to { transform: none; } }

/* ---------- Cinta de beneficios: marquesina (como la de spa) ---------- */
.vt-cinta { background: var(--vt-cinta-fondo, var(--vt-oscuro)); }
.vt-cinta__item::after { content: "✦"; margin-inline: 1.6rem; opacity: .6; }
.vt-cinta__item { display: flex; align-items: center; }
@media (prefers-reduced-motion: no-preference) {
	.vt-cinta.vt-cinta { display: flex; flex-wrap: nowrap; overflow: hidden; padding-inline: 0 !important; }
	.vt-cinta .vt-cinta__lista { flex: none; flex-wrap: nowrap; justify-content: flex-start; gap: 0; width: max-content; max-width: none !important; margin: 0 !important; animation: vt-cinta 50s linear infinite; }
	.vt-cinta .vt-cinta__copia { display: flex !important; }
	.vt-cinta .vt-cinta__item { white-space: nowrap; }
	.vt-cinta:hover .vt-cinta__lista { animation-play-state: paused; }
}
@keyframes vt-cinta { to { transform: translateX(-100%); } }

/* ---------- Pie ---------- */
.vt-pie { background: var(--vt-pie-fondo, var(--vt-oscuro)); color: var(--vt-pie-texto, rgba(255, 255, 255, .78)); }
.vt-pie a { color: inherit; }
.vt-pie__titulo { color: var(--vt-pie-titulo, #fff); letter-spacing: .08em; font-size: .85rem; }
