/*
 * LIYU IMPORT — styles.css
 * Todo el CSS del tema vive en este archivo (sitio público y editor).
 * Solo mejora la presentación de bloques nativos; colores, tipografías y
 * espaciados base se definen en theme.json.
 *
 * Índice
 *  1. Variables y base
 *  2. Estructura de página
 *  3. Botones
 *  4. Encabezado y navegación
 *  5. Marcadores de imagen
 *  6. Hero
 *  7. Tarjetas y categorías
 *  8. Productos (WooCommerce)
 *  9. Beneficios y proceso de compra
 * 10. Secciones por categoría
 * 11. Compra por mayor
 * 12. Galería
 * 13. Testimonios
 * 14. Preguntas frecuentes
 * 15. Llamado a la acción y contacto
 * 16. Pie de página
 * 17. Tienda y ficha de producto
 * 18. Responsive
 * 19. Accesibilidad y movimiento reducido
 */

/* ==========================================================================
   1. Variables y base
   ========================================================================== */
:root {
	--liyu-cream: var(--wp--preset--color--cream);
	--liyu-sand: var(--wp--preset--color--sand);
	--liyu-stone: var(--wp--preset--color--stone);
	--liyu-mocha: var(--wp--preset--color--mocha);
	--liyu-bronze: var(--wp--preset--color--bronze);
	--liyu-gold: var(--wp--preset--color--gold);
	--liyu-white: var(--wp--preset--color--white);
	--liyu-radius: var(--wp--custom--radius--medium);
	--liyu-radius-sm: var(--wp--custom--radius--small);
	--liyu-shadow: var(--wp--custom--shadow);
	--liyu-gutter: clamp(1rem, 5vw, 2rem);
	--liyu-section-y: clamp(3.5rem, 8vw, 6rem);
}

body {
	-webkit-font-smoothing: antialiased;
}

img {
	height: auto;
}

.has-cream-color a,
.has-cream-color .wp-element-button.has-cream-color {
	color: inherit;
}

.liyu-eyebrow {
	margin-bottom: 0.5rem;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
}

.liyu-lead {
	max-width: 36rem;
	margin-inline: auto;
}

.liyu-placeholder-text {
	opacity: 0.9;
	font-style: italic;
}

/* ==========================================================================
   2. Estructura de página
   ========================================================================== */
.wp-site-blocks > * + * {
	margin-block-start: 0;
}

.liyu-main > * {
	margin-block: 0;
}

.liyu-section {
	padding: var(--liyu-section-y) var(--liyu-gutter);
}

.liyu-section > .wp-block-heading,
.liyu-section > .liyu-eyebrow {
	text-align: center;
}

.liyu-section > .alignwide + .alignwide,
.liyu-section > .alignwide + .wp-block-buttons {
	margin-top: clamp(2rem, 4vw, 3rem);
}

.liyu-section > .wp-block-heading + .alignwide,
.liyu-section > .liyu-lead + .alignwide {
	margin-top: clamp(2rem, 4vw, 3rem);
}

.liyu-page,
.liyu-shop,
.liyu-product {
	padding: clamp(2rem, 5vw, 3.5rem) var(--liyu-gutter) clamp(3.5rem, 8vw, 6rem);
}

.liyu-page > .wp-block-post-title,
.liyu-page > .wp-block-heading {
	margin-bottom: 1.5rem;
}

.liyu-page--wide > .wp-block-post-content {
	max-width: var(--wp--style--global--wide-size);
}

/* ==========================================================================
   3. Botones
   ========================================================================== */
.wp-element-button,
.wp-block-button__link {
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	border: 1px solid currentColor;
	background: transparent;
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
	color: var(--liyu-mocha);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: var(--liyu-mocha);
	border-color: var(--liyu-mocha);
	color: var(--liyu-cream);
}

.has-cream-color .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: var(--liyu-cream);
	border-color: var(--liyu-cream);
	color: var(--liyu-mocha);
}

.wp-block-button__link.has-cream-background-color:hover {
	background-color: var(--liyu-sand);
	color: var(--liyu-mocha);
}

.wp-block-buttons {
	gap: 0.75rem;
}

/* ==========================================================================
   4. Encabezado y navegación
   ========================================================================== */
.liyu-topbar {
	padding: 0.5rem var(--liyu-gutter);
	letter-spacing: 0.08em;
}

.liyu-topbar p {
	margin: 0;
}

.liyu-header {
	padding: 0.75rem var(--liyu-gutter);
	border-bottom: 1px solid var(--liyu-sand);
}

.liyu-header__row {
	align-items: center;
	gap: 1.5rem;
}

.liyu-brand {
	align-items: center;
	gap: 0.75rem;
}

.liyu-brand .wp-block-site-title {
	margin: 0;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.375rem;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1.1;
}

.liyu-brand .wp-block-site-title a {
	color: var(--liyu-mocha);
	text-decoration: none;
}

/* Con logo subido, el nombre del sitio queda solo para lectores de pantalla. */
.liyu-brand .wp-block-site-logo:has(img) ~ .wp-block-site-title {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.liyu-actions {
	align-items: center;
	gap: 0.5rem;
}

.liyu-nav {
	margin-right: 1rem;
}

.liyu-nav .wp-block-navigation-item__content {
	padding: 0.5rem 0;
	color: var(--liyu-mocha);
	text-decoration: none;
}

.liyu-nav .wp-block-navigation-item__content:hover {
	color: var(--liyu-bronze);
}

.liyu-nav .wp-block-navigation__responsive-container-open,
.liyu-nav .wp-block-navigation__responsive-container-close {
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	color: var(--liyu-mocha);
}

.liyu-nav .wp-block-navigation__responsive-container.is-menu-open {
	padding: 2rem var(--liyu-gutter);
	background-color: var(--liyu-cream);
	color: var(--liyu-mocha);
}

.liyu-nav .is-menu-open .wp-block-navigation__container {
	gap: 0.5rem;
	font-size: var(--wp--preset--font-size--large);
}

.liyu-actions .wp-block-search__button,
.liyu-actions .wc-block-mini-cart__button,
.liyu-actions .wc-block-customer-account a {
	min-width: 44px;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--liyu-mocha);
	background: transparent;
	border: 0;
}

.liyu-actions .wp-block-search__input {
	min-height: 44px;
	border: 1px solid var(--liyu-stone);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-white);
	color: var(--liyu-mocha);
}

/* ==========================================================================
   5. Marcadores de imagen (reemplazar desde el editor)
   ========================================================================== */
.liyu-ph {
	min-height: 0;
	padding: 1rem;
	border: 1px dashed var(--liyu-stone);
	border-radius: var(--liyu-radius);
	overflow: hidden;
}

.liyu-ph__label {
	max-width: 16rem;
	margin-inline: auto;
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--liyu-mocha);
}

.liyu-ph--hero {
	min-height: clamp(26rem, 60vw, 40rem);
}

.liyu-ph--tall {
	min-height: clamp(22rem, 50vw, 34rem);
}

.liyu-ph--card {
	aspect-ratio: 4 / 5;
	margin-bottom: 1rem;
}

.liyu-ph--gallery {
	min-height: 16rem;
	height: 100%;
}

/* ==========================================================================
   6. Hero
   ========================================================================== */
.liyu-hero {
	padding-top: clamp(2rem, 5vw, 4rem);
}

.liyu-hero__cols {
	gap: clamp(2rem, 5vw, 4.5rem);
}

.liyu-hero__text > * + * {
	margin-top: 1.25rem;
}

.liyu-hero__text .wp-block-heading {
	margin-block: 0.25rem 0.5rem;
}

.liyu-hero__text .wp-block-buttons {
	margin-top: 2rem;
}

/* ==========================================================================
   7. Tarjetas y categorías
   ========================================================================== */
.liyu-card {
	position: relative;
	padding: 1rem;
	border: 1px solid var(--liyu-sand);
	border-radius: var(--liyu-radius);
	background-color: var(--liyu-white);
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.has-white-background-color .liyu-card {
	background-color: var(--liyu-cream);
}

.liyu-cat-grid {
	gap: 1.25rem;
}

.liyu-cat-card:hover,
.liyu-cat-card:focus-within {
	box-shadow: var(--liyu-shadow);
	transform: translateY(-2px);
}

.liyu-card__title {
	margin: 0 0 0.25rem;
}

.liyu-cat-card p {
	margin-block: 0.25rem 0;
}

.liyu-card__link {
	margin-top: 0.75rem;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.liyu-card__link a {
	text-decoration: underline;
	text-underline-offset: 4px;
}

/* Toda la tarjeta es clicable a través de un único enlace. */
.liyu-card__link a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.liyu-card__img {
	margin: 0 0 1rem;
}

.liyu-card__img img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border-radius: var(--liyu-radius);
}

/* ==========================================================================
   8. Productos (WooCommerce)
   ========================================================================== */
.wp-block-woocommerce-product-collection.liyu-products ul.wc-block-product-template {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 2rem 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.wp-block-woocommerce-product-collection.liyu-products--2 ul.wc-block-product-template {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem 1rem;
}

.liyu-products ul.wc-block-product-template > li {
	width: auto;
	margin: 0;
	text-align: center;
}

.liyu-products .wc-block-components-product-image {
	margin-bottom: 0.75rem;
}

.liyu-products .wc-block-components-product-image img {
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	border-radius: var(--liyu-radius);
	background-color: var(--liyu-sand);
	transition: transform 0.3s ease;
}

.liyu-products .wc-block-components-product-image a {
	display: block;
	overflow: hidden;
	border-radius: var(--liyu-radius);
}

.liyu-products .wc-block-components-product-image a:hover img {
	transform: scale(1.03);
}

.liyu-products .wp-block-post-title {
	margin: 0 0 0.25rem;
	font-family: var(--wp--preset--font-family--body);
	font-weight: 400;
	line-height: 1.35;
}

.liyu-products .wp-block-post-title a {
	color: var(--liyu-mocha);
	text-decoration: none;
}

.liyu-products .wp-block-post-title a:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}

.wc-block-components-product-price {
	color: var(--liyu-mocha);
	font-weight: 600;
}

.wc-block-components-product-price del {
	font-weight: 400;
	opacity: 0.75;
}

.wc-block-components-product-price ins {
	text-decoration: none;
}

.wc-block-components-product-sale-badge {
	padding: 0.25rem 0.75rem;
	border: 0;
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-pastel-amarillo);
	color: var(--liyu-mocha);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
	min-height: 0;
	min-width: 0;
	position: absolute;
	top: 0.75rem;
	left: 0.75rem;
	right: auto;
	z-index: 1;
	display: inline-block;
	margin: 0;
	padding: 0.3rem 0.8rem;
	border-radius: 999px;
	background-color: var(--liyu-pastel-amarillo);
	color: var(--liyu-mocha);
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.liyu-products .wp-block-button__link {
	padding: 0.7rem 1.1rem;
	font-size: 0.75rem;
}

/* ==========================================================================
   9. Beneficios y proceso de compra
   ========================================================================== */
.liyu-benefits-grid,
.liyu-steps-grid,
.liyu-testimonials-grid,
.liyu-contact-grid {
	gap: 1.5rem;
}

.liyu-benefit {
	padding: 2rem 1.5rem;
}

.liyu-benefit h3,
.liyu-benefit p {
	margin-block: 0.5rem 0;
}

.liyu-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.5rem;
	height: 3.5rem;
	margin: 0 auto 0.75rem;
	border: 1px solid var(--liyu-gold);
	border-radius: 50%;
	font-size: 1.375rem;
	line-height: 1;
}

.liyu-steps-grid {
	gap: 2rem;
}

.liyu-step {
	padding-top: 1.25rem;
	border-top: 1px solid var(--liyu-gold);
}

.liyu-step__num {
	margin: 0 0 0.5rem;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 2.5rem;
	line-height: 1;
	color: var(--liyu-bronze);
}

.liyu-step__title {
	margin: 0 0 0.5rem;
	font-size: var(--wp--preset--font-size--medium);
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.liyu-step p {
	margin: 0;
}

/* ==========================================================================
   10. Secciones por categoría
   ========================================================================== */
.liyu-cat-section__cols {
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: flex-start;
}

.liyu-cat-section__media .liyu-ph,
.liyu-cat-section__media .liyu-fade {
	position: sticky;
	top: 1.5rem;
}

.liyu-cat-section__body > * + * {
	margin-top: 1.25rem;
}

.liyu-cat-section__body .wp-block-heading {
	margin-block: 0.25rem 0.5rem;
}

.liyu-cat-section--juguetes .liyu-ph {
	border-style: solid;
	border-color: var(--liyu-gold);
	border-radius: 2rem;
}

.liyu-cat-section--juguetes .liyu-eyebrow {
	display: inline-block;
	padding: 0.25rem 0.9rem;
	border: 1px solid var(--liyu-gold);
	border-radius: 999px;
}

/* Vitrina rotativa: crossfade automático con CSS puro (sin JavaScript). */
.liyu-fade {
	position: relative;
	overflow: hidden;
	border-radius: var(--liyu-radius);
	background-color: var(--liyu-sand);
}

.liyu-fade__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	animation: liyu-fade-cycle 8s infinite;
}

.liyu-fade__img:nth-child(1) {
	animation-delay: 0s;
}

.liyu-fade__img:nth-child(2) {
	animation-delay: 2s;
}

.liyu-fade__img:nth-child(3) {
	animation-delay: 4s;
}

.liyu-fade__img:nth-child(4) {
	animation-delay: 6s;
}

@keyframes liyu-fade-cycle {
	0%,
	100% {
		opacity: 0;
	}
	3% {
		opacity: 1;
	}
	22% {
		opacity: 1;
	}
	25% {
		opacity: 0;
	}
}

/* ==========================================================================
   11. Compra por mayor
   ========================================================================== */
.liyu-wholesale__cols {
	gap: clamp(2rem, 5vw, 4.5rem);
}

.liyu-wholesale__text > * + * {
	margin-top: 1.25rem;
}

.liyu-wholesale__card {
	padding: clamp(1.5rem, 4vw, 2.5rem);
	border: 1px solid rgba(245, 241, 236, 0.4);
	border-radius: var(--liyu-radius);
}

.liyu-wholesale__card > * + * {
	margin-top: 1rem;
}

.liyu-check-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.liyu-check-list li {
	padding: 0.5rem 0 0.5rem 1.75rem;
	border-bottom: 1px solid rgba(245, 241, 236, 0.25);
	position: relative;
}

.liyu-check-list li::before {
	content: "✓";
	position: absolute;
	left: 0;
	color: var(--liyu-gold);
}

/* ==========================================================================
   12. Galería
   ========================================================================== */
.liyu-gallery {
	gap: 1rem;
}

.liyu-gallery > :first-child {
	grid-row: span 2;
}

/* ==========================================================================
   13. Testimonios
   ========================================================================== */
.liyu-testimonial {
	padding: 1.75rem;
}

.liyu-tag {
	display: inline-block;
	margin: 0 0 1rem;
	padding: 0.2rem 0.75rem;
	border: 1px dashed var(--liyu-stone);
	border-radius: 999px;
	font-size: 0.75rem;
	letter-spacing: 0.12em;
}

.liyu-testimonial .wp-block-quote {
	margin: 0;
	padding: 0;
}

.liyu-testimonial .wp-block-quote cite {
	display: block;
	margin-top: 1rem;
	font-size: var(--wp--preset--font-size--small);
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0.06em;
}

/* ==========================================================================
   14. Preguntas frecuentes
   ========================================================================== */
.liyu-faq {
	border-top: 1px solid var(--liyu-stone);
}

.liyu-faq .wp-block-details {
	margin: 0;
	border-bottom: 1px solid var(--liyu-stone);
}

.liyu-faq .wp-block-details summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 2.5rem;
	padding: 0.5rem 0;
	font-size: 0.9rem;
	font-weight: 500;
	list-style: none;
	cursor: pointer;
}

.liyu-faq .wp-block-details summary::-webkit-details-marker {
	display: none;
}

.liyu-faq .wp-block-details summary::after {
	content: "+";
	font-size: 1.5rem;
	line-height: 1;
	color: var(--liyu-bronze);
}

.liyu-faq .wp-block-details[open] summary::after {
	content: "–";
}

.liyu-faq .wp-block-details > :not(summary) {
	margin: 0 0 0.75rem;
	font-size: 0.85rem;
	line-height: 1.5;
}

/* ==========================================================================
   15. Llamado a la acción y contacto
   ========================================================================== */
.liyu-cta__box {
	padding: clamp(2.5rem, 7vw, 5rem) clamp(1.25rem, 5vw, 3rem);
	border: 1px solid var(--liyu-sand);
	border-radius: var(--liyu-radius);
	box-shadow: var(--liyu-shadow);
}

.liyu-cta__box > * + * {
	margin-top: 1.25rem;
}

.liyu-contact-card {
	padding: 1.5rem;
}

.liyu-contact-card h3 {
	margin: 0 0 0.5rem;
	font-size: var(--wp--preset--font-size--medium);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.liyu-contact-card p {
	margin: 0 0 1rem;
}

/* ==========================================================================
   16. Pie de página
   ========================================================================== */
.liyu-footer {
	padding: clamp(2rem, 5vw, 3rem) var(--liyu-gutter) clamp(1.5rem, 4vw, 2rem);
	border-top: 1px solid var(--liyu-gold);
}

.liyu-footer__grid {
	gap: 1.75rem 1.5rem;
}

.liyu-footer__brand > * + * {
	margin-top: 0.75rem;
}

.liyu-footer__meta {
	margin-block: 0.25rem;
}

.liyu-footer__title {
	margin: 0 0 0.65rem;
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.liyu-link-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.liyu-link-list li {
	margin: 0 0 0.4rem;
}

.liyu-link-list a {
	display: inline-block;
	padding: 0.1rem 0;
	font-size: 0.8125rem;
	text-decoration: none;
}

.liyu-link-list a:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}

.wp-block-social-links.liyu-social {
	flex-direction: row;
	align-items: center;
	gap: 0.9rem;
	margin: 0;
}

.wp-block-social-links.liyu-social .wp-social-link {
	width: 3.5rem;
	height: 3.5rem;
}

.wp-block-social-links.liyu-social .wp-social-link svg {
	width: 1.85rem;
	height: 1.85rem;
}

.wp-block-social-links.liyu-social .wp-social-link.wp-social-link {
	background: transparent;
	color: var(--liyu-mocha);
}

.liyu-footer__bar {
	padding: 1rem var(--liyu-gutter);
	letter-spacing: 0.04em;
}

.liyu-footer__bar p {
	margin: 0;
}

/* ==========================================================================
   17. Tienda y ficha de producto
   ========================================================================== */
.liyu-shop .wp-block-query-title {
	margin-block: 1rem 1.5rem;
}

.liyu-shop .wp-block-term-description {
	max-width: 40rem;
	margin-bottom: 1.5rem;
}

.liyu-chips {
	gap: 0.5rem;
	margin-bottom: 1.5rem;
}

.liyu-chips .wp-block-button__link {
	padding: 0.55rem 1.1rem;
	font-size: 0.75rem;
}

.liyu-shop__bar {
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 1.5rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--liyu-sand);
}

.liyu-shop__bar .woocommerce-ordering select,
.liyu-shop__bar select {
	min-height: 44px;
	padding: 0.5rem 0.75rem;
	border: 1px solid var(--liyu-stone);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-white);
	color: var(--liyu-mocha);
}

.wp-block-woocommerce-product-collection .wp-block-query-pagination {
	margin-top: 3rem;
}

.liyu-product__top {
	gap: clamp(2rem, 5vw, 4rem);
	margin-bottom: 3rem;
}

.liyu-product__info > * + * {
	margin-top: 1.25rem;
}

.liyu-product__info .wp-block-post-title {
	margin-bottom: 0.5rem;
	text-transform: none;
	font-size: var(--wp--preset--font-size--x-large);
}

.liyu-product__gallery img {
	border-radius: var(--liyu-radius);
}

.liyu-product__info .single_add_to_cart_button,
.liyu-product__info .wp-element-button {
	min-height: 48px;
}

.liyu-product__info .variations select,
.liyu-product__info .quantity .qty {
	min-height: 44px;
	padding: 0.5rem 0.75rem;
	border: 1px solid var(--liyu-stone);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-white);
	color: var(--liyu-mocha);
}

.liyu-product__info .variations th,
.liyu-product__info .variations td {
	padding: 0.35rem 0.75rem 0.35rem 0;
	text-align: left;
}

.liyu-shipping {
	padding: 1rem 1.25rem;
	border: 1px solid var(--liyu-sand);
	border-radius: var(--liyu-radius);
	background: var(--liyu-white);
}

.liyu-shipping h3 {
	margin: 0 0 0.5rem;
	font-size: var(--wp--preset--font-size--small);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.liyu-shipping p {
	margin: 0.25rem 0 0;
}

.liyu-product__meta {
	font-size: var(--wp--preset--font-size--small);
}

.liyu-related {
	margin-top: clamp(3rem, 7vw, 5rem);
}

.liyu-related > .wp-block-heading {
	margin-bottom: 2rem;
}

/* Entradas del blog (index, archive, search) */
.wp-block-post-template .wp-block-post-featured-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--liyu-radius);
}

.wp-block-post-template .wp-block-post-title a {
	color: var(--liyu-mocha);
	text-decoration: none;
}

/* ==========================================================================
   18. Responsive
   ========================================================================== */
@media (min-width: 1101px) {
	.liyu-footer__grid.is-layout-grid {
		grid-template-columns: 1.7fr repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 1100px) {
	.liyu-cat-grid.is-layout-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1024px) {
	.wp-block-woocommerce-product-collection.liyu-products ul.wc-block-product-template {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.wp-block-woocommerce-product-collection.liyu-products--2 ul.wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* El menú de categorías pasa a hamburguesa por debajo de 900px. */
@media (min-width: 600px) and (max-width: 899px) {
	.wp-block-navigation.liyu-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none;
	}

	.wp-block-navigation.liyu-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}
}

@media (max-width: 900px) {
	.liyu-benefits-grid.is-layout-grid,
	.liyu-steps-grid.is-layout-grid,
	.liyu-contact-grid.is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.liyu-testimonials-grid.is-layout-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 781px) {
	.liyu-cat-section__media .liyu-ph,
	.liyu-cat-section__media .liyu-fade {
		position: static;
	}

	.liyu-cat-section__media {
		order: -1;
	}
}

@media (max-width: 640px) {
	.liyu-brand .wp-block-site-title {
		font-size: 1.125rem;
	}

	.liyu-header__row {
		gap: 0.5rem;
	}

	.liyu-nav {
		margin-right: 0;
	}

	.liyu-cat-grid.is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.875rem;
	}

	.liyu-cat-grid > :last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}

	.wp-block-woocommerce-product-collection.liyu-products ul.wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.5rem 0.75rem;
	}

	.liyu-products .wp-block-button__link {
		padding: 0.65rem 0.75rem;
	}

	.liyu-gallery.is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.75rem;
	}

	.liyu-gallery > :first-child {
		grid-column: 1 / -1;
		grid-row: auto;
	}

	.liyu-ph--gallery {
		min-height: 11rem;
	}

	.wp-block-buttons > .wp-block-button,
	.wp-block-buttons > .wp-block-button .wp-block-button__link {
		width: 100%;
		text-align: center;
	}

	.liyu-chips > .wp-block-button,
	.liyu-chips > .wp-block-button .wp-block-button__link {
		width: auto;
	}
}

@media (max-width: 520px) {
	.liyu-benefits-grid.is-layout-grid,
	.liyu-steps-grid.is-layout-grid,
	.liyu-contact-grid.is-layout-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   19. Accesibilidad y movimiento reducido
   ========================================================================== */
:where(a, button, summary, input, select, textarea):focus-visible {
	outline: 2px solid var(--liyu-bronze);
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}


/* ==========================================================================
   Medios de pago (insignias hechas con CSS, sin archivos de logo)
   ========================================================================== */
.liyu-pay-grid {
	gap: 1.25rem;
}

.liyu-pay-card {
	padding: 1.75rem 1.5rem;
	text-align: center;
}

.liyu-pay-card p {
	margin: 0;
}

.liyu-pay-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 5rem;
	padding: 0.5rem 1rem;
	margin-bottom: 0.75rem;
	border-radius: var(--liyu-radius-sm);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fff;
}

.liyu-pay-badge--yape {
	background-color: #742284;
}

.liyu-pay-badge--plin {
	background-color: #00b8a9;
}

.liyu-pay-badge--bcp {
	background-color: var(--liyu-mocha);
}

.liyu-pay-badge--visa {
	background-color: #1a1f71;
	font-style: italic;
}

.liyu-pay-cards {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.75rem;
}

.liyu-pay-mastercard {
	position: relative;
	width: 2.75rem;
	height: 1.75rem;
}

.liyu-pay-mastercard span {
	position: absolute;
	top: 0;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 50%;
	opacity: 0.9;
}

.liyu-pay-mastercard span:first-child {
	left: 0;
	background-color: #eb001b;
}

.liyu-pay-mastercard span:last-child {
	right: 0;
	background-color: #f79e1b;
	mix-blend-mode: multiply;
}

.liyu-pay-logo {
	display: block;
	height: 2.25rem;
	max-width: 100%;
	margin: 0 auto 0.75rem;
	object-fit: contain;
}

.liyu-pay-cards-row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.25rem;
	margin-bottom: 0.75rem;
}

.liyu-pay-cards-row .liyu-pay-logo {
	margin-bottom: 0;
}

.liyu-footer__book {
	display: inline-block;
	line-height: 0;
	border-radius: var(--liyu-radius-sm);
	overflow: hidden;
}

.liyu-footer__bar p {
	margin: 0;
}

/* ==========================================================================
   Libro de Reclamaciones: formulario por secciones, en la misma página
   ========================================================================== */
.liyu-reclamo-form {
	max-width: 720px;
	margin: 1.5rem 0;
	display: grid;
	gap: 2rem;
}

.liyu-reclamo-section {
	display: grid;
	gap: 1rem;
	padding-top: 2rem;
	border-top: 1px solid var(--liyu-sand);
}

.liyu-reclamo-section:first-child {
	padding-top: 0;
	border-top: 0;
}

.liyu-reclamo-section__head {
	display: flex;
	align-items: flex-start;
	gap: 0.9rem;
}

.liyu-reclamo-section__num {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: var(--liyu-mocha);
	color: var(--liyu-cream);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1rem;
}

.liyu-reclamo-section__title {
	margin: 0 0 0.2rem;
	font-size: var(--wp--preset--font-size--medium);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.liyu-reclamo-section__desc {
	margin: 0;
	font-size: var(--wp--preset--font-size--small);
	opacity: 0.75;
}

.liyu-reclamo-provider {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.75rem 1.5rem;
	padding: 1.1rem 1.25rem;
	border: 1px solid var(--liyu-sand);
	border-radius: var(--liyu-radius);
	background: var(--liyu-white);
}

.liyu-reclamo-provider span {
	display: block;
}

.liyu-reclamo-provider .liyu-reclamo-label {
	margin-bottom: 0.2rem;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.6;
}

.liyu-reclamo-form label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	letter-spacing: 0.04em;
}

.liyu-reclamo-form input[type=text],
.liyu-reclamo-form input[type=email],
.liyu-reclamo-form input[type=tel],
.liyu-reclamo-form input[type=date],
.liyu-reclamo-form input[type=number],
.liyu-reclamo-form select,
.liyu-reclamo-form textarea {
	width: 100%;
	padding: 0.7rem 0.9rem;
	border: 1px solid var(--liyu-stone);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-white);
	color: var(--liyu-mocha);
	font-family: inherit;
	font-size: 1rem;
}

.liyu-reclamo-form textarea {
	min-height: 7rem;
	resize: vertical;
}

.liyu-reclamo-form .liyu-reclamo-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.liyu-reclamo-form .liyu-reclamo-row--3 {
	grid-template-columns: 1fr 1fr 1fr;
}

.liyu-reclamo-form .liyu-reclamo-type {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
}

.liyu-reclamo-form .liyu-reclamo-type label {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin-bottom: 0;
	font-weight: 400;
	cursor: pointer;
}

.liyu-reclamo-form .liyu-reclamo-type-desc {
	margin: 0.35rem 0 0;
	font-size: var(--wp--preset--font-size--small);
	opacity: 0.7;
}

.liyu-reclamo-check {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	margin-bottom: 0.35rem;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400;
	cursor: pointer;
}

.liyu-reclamo-check input {
	margin-top: 0.2rem;
}

.liyu-reclamo-apoderado {
	display: none;
}

.liyu-reclamo-apoderado.is-visible {
	display: block;
}

.liyu-reclamo-counter {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.75rem;
	text-align: right;
	opacity: 0.6;
}

.liyu-reclamo-form input[type=file] {
	width: 100%;
	padding: 0.6rem;
	border: 1px dashed var(--liyu-stone);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-white);
	font-size: 0.875rem;
}

.liyu-reclamo-legal {
	margin: 0;
	font-size: 0.8125rem;
	opacity: 0.7;
}

.liyu-reclamo-honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.liyu-reclamo-note {
	margin-top: 0.25rem;
	opacity: 0.75;
}

.liyu-reclamo-ok,
.liyu-reclamo-error {
	display: none;
	max-width: 720px;
	padding: 1rem 1.25rem;
	margin: 1.5rem 0;
	border-radius: var(--liyu-radius);
}

.liyu-reclamo-ok {
	background: var(--liyu-sand);
}

.liyu-reclamo-error {
	background: var(--wp--preset--color--blush);
}

@media (max-width: 640px) {
	.liyu-reclamo-form .liyu-reclamo-row,
	.liyu-reclamo-form .liyu-reclamo-row--3,
	.liyu-reclamo-provider {
		grid-template-columns: 1fr;
	}
}

/* ==========================================================================
   Botón flotante de WhatsApp (visible en todo el sitio)
   ========================================================================== */
.liyu-wa-float {
	position: fixed;
	right: 1.25rem;
	bottom: 1.25rem;
	z-index: 999;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 50%;
	background-color: #25D366;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
	transition: transform 0.2s ease;
}

.liyu-wa-float:hover {
	transform: scale(1.08);
}

.liyu-wa-float svg {
	width: 1.75rem;
	height: 1.75rem;
	fill: #fff;
}

@media (max-width: 640px) {
	.liyu-wa-float {
		right: 1rem;
		bottom: 1rem;
		width: 3.25rem;
		height: 3.25rem;
	}
}

/* ==========================================================================
   Rediseño: portada de marca, categorías deslizables y secciones compactas
   ========================================================================== */
.liyu-hero-cover {
	position: relative;
	overflow: hidden;
	height: clamp(260px, 42vh, 420px);
}

.liyu-hero-cover .liyu-fade {
	position: absolute;
	inset: 0;
	min-height: 0;
	border-radius: 0;
}

.liyu-hero-cover::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(30, 26, 20, 0.15) 0%, rgba(30, 26, 20, 0.55) 100%);
	pointer-events: none;
}

.liyu-hero-cover__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 1.5rem var(--liyu-gutter);
	text-align: center;
}

.liyu-hero-cover__content h1 {
	margin: 0.5rem 0 1.25rem;
	font-size: clamp(1.75rem, 5vw, 2.75rem);
}

.liyu-hero-cover .liyu-eyebrow,
.liyu-hero-cover__content h1 {
	color: var(--liyu-cream);
}

.liyu-hero-cover .wp-block-button__link {
	background-color: var(--liyu-cream);
	color: var(--liyu-mocha);
}

.liyu-hero-cover .wp-block-button__link:hover {
	background-color: var(--liyu-bronze);
	color: var(--liyu-cream);
}

/* Categorías: fila pequeña y deslizable */
.liyu-cat-slider {
	display: flex;
	justify-content: center;
	gap: 2rem;
	overflow-x: auto;
	padding: 0.5rem 0.25rem 1rem;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
}

.liyu-cat-slider::-webkit-scrollbar {
	height: 6px;
}

.liyu-cat-slider::-webkit-scrollbar-thumb {
	background-color: var(--liyu-stone);
	border-radius: 999px;
}

.liyu-cat-slider__item {
	flex: 0 0 auto;
	width: 7.5rem;
	scroll-snap-align: start;
	text-align: center;
	text-decoration: none;
	color: var(--liyu-mocha);
}

.liyu-cat-slider__img {
	display: block;
	width: 6.5rem;
	height: 6.5rem;
	margin: 0 auto 0.6rem;
	border-radius: 50%;
	object-fit: cover;
	background-color: var(--liyu-sand);
	transition: transform 0.2s ease;
}

.liyu-cat-slider__item:hover .liyu-cat-slider__img {
	transform: scale(1.05);
}

.liyu-cat-slider__img--ph {
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px dashed var(--liyu-stone);
	font-size: 0.6875rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--liyu-mocha);
	opacity: 0.7;
}

.liyu-cat-slider__label {
	display: block;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
}

/* Secciones compactas */
.liyu-section--tight {
	padding-top: clamp(1.75rem, 4vw, 2.75rem);
	padding-bottom: clamp(1.75rem, 4vw, 2.75rem);
}

.liyu-steps-section .liyu-steps-grid {
	gap: 1.25rem;
}

.liyu-steps-section .liyu-step {
	padding-top: 0.75rem;
}

.liyu-steps-section .liyu-step__num {
	margin-bottom: 0.25rem;
	font-size: 1.75rem;
}

.liyu-steps-section .liyu-step__title {
	margin-bottom: 0.25rem;
	font-size: var(--wp--preset--font-size--small);
}

.liyu-wholesale__card {
	padding: clamp(1rem, 3vw, 1.5rem);
}

.liyu-cta__box {
	padding: clamp(1.5rem, 4vw, 2.25rem) clamp(1rem, 4vw, 1.75rem);
}

.liyu-contact-grid {
	gap: 0.75rem;
}

.liyu-contact-card {
	padding: 0.75rem 1rem;
}

.liyu-contact-card h3 {
	margin: 0 0 0.25rem;
	font-size: 0.75rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.liyu-contact-card p {
	margin: 0;
	font-size: var(--wp--preset--font-size--small);
}

@media (max-width: 640px) {
	.liyu-cat-slider__item {
		width: 5.5rem;
	}

	.liyu-cat-slider__img {
		width: 4.5rem;
		height: 4.5rem;
	}
}

/* Portada: mostrar la foto completa (sin recorte tipo zoom) */
.liyu-hero-cover .liyu-fade__img {
	object-fit: contain;
	background-color: var(--liyu-sand);
}

/* Tienda y categorías: productos más grandes (3 por fila en vez de 4) */
.wp-block-woocommerce-product-collection.liyu-products--shop ul.wc-block-product-template {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 640px) {
	.wp-block-woocommerce-product-collection.liyu-products--shop ul.wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* ==========================================================================
   Acentos pastel bebé (Opción E): solo en zonas de niños y juguetes
   ========================================================================== */
:root {
	--liyu-pastel-rosa: #EFD6DC;
	--liyu-pastel-celeste: #D7E7ED;
	--liyu-pastel-amarillo: #F3E8C9;
	--liyu-pastel-azul: #D2DEEC;
}

.liyu-cat-slider__item--ninas .liyu-cat-slider__img {
	box-sizing: border-box;
	border: 3px solid var(--liyu-pastel-rosa);
}

.liyu-cat-slider__item--ninos .liyu-cat-slider__img {
	box-sizing: border-box;
	border: 3px solid var(--liyu-pastel-azul);
}

.liyu-cat-slider__item--juguetes .liyu-cat-slider__img {
	box-sizing: border-box;
	border: 3px solid var(--liyu-pastel-amarillo);
}

.liyu-eyebrow--pastel {
	display: inline-block;
	padding: 0.3rem 0.9rem;
	border-radius: 999px;
	margin-bottom: 0.75rem;
}

.liyu-eyebrow--celeste {
	background-color: var(--liyu-pastel-celeste);
	color: var(--liyu-mocha);
}

.liyu-eyebrow--amarillo {
	background-color: var(--liyu-pastel-amarillo);
	color: var(--liyu-mocha);
}

/* ==========================================================================
   Acentos pastel al entrar a cada categoría (Niños, Niñas, Juguetes)
   ========================================================================== */
body.term-ninos .wp-block-query-title,
body.term-ninas .wp-block-query-title,
body.term-juguetes .wp-block-query-title {
	position: relative;
	display: inline-block;
}

body.term-ninos .wp-block-query-title::after,
body.term-ninas .wp-block-query-title::after,
body.term-juguetes .wp-block-query-title::after {
	content: "";
	display: block;
	width: 4.5rem;
	height: 5px;
	margin-top: 0.6rem;
	border-radius: 999px;
}

body.term-ninos .wp-block-query-title::after {
	background: var(--liyu-pastel-azul);
}

body.term-ninas .wp-block-query-title::after {
	background: var(--liyu-pastel-rosa);
}

body.term-juguetes .wp-block-query-title::after {
	background: var(--liyu-pastel-amarillo);
}

/* Resalta el chip de la categoría activa con su color */
body.term-ninos .liyu-chips .wp-block-button:nth-child(3) .wp-block-button__link {
	background-color: var(--liyu-pastel-azul);
	border-color: var(--liyu-pastel-azul);
	color: var(--liyu-mocha);
}

body.term-ninas .liyu-chips .wp-block-button:nth-child(4) .wp-block-button__link {
	background-color: var(--liyu-pastel-rosa);
	border-color: var(--liyu-pastel-rosa);
	color: var(--liyu-mocha);
}

body.term-juguetes .liyu-chips .wp-block-button:nth-child(5) .wp-block-button__link {
	background-color: var(--liyu-pastel-amarillo);
	border-color: var(--liyu-pastel-amarillo);
	color: var(--liyu-mocha);
}

/* Aros de color de la paleta original para Dama y Fajas */
.liyu-cat-slider__item--dama .liyu-cat-slider__img {
	box-sizing: border-box;
	border: 3px solid var(--liyu-gold);
}

.liyu-cat-slider__item--fajas .liyu-cat-slider__img {
	box-sizing: border-box;
	border: 3px solid var(--liyu-bronze);
}

/* Compra con confianza: tarjetas más compactas */
.liyu-benefits-grid {
	gap: 0.75rem;
}

.liyu-benefit {
	padding: 0.85rem 0.75rem;
}

.liyu-icon {
	width: 2rem;
	height: 2rem;
	margin-bottom: 0.35rem;
	font-size: 0.875rem;
}

.liyu-benefit h3 {
	margin: 0 0 0.15rem;
	font-size: var(--wp--preset--font-size--small);
}

.liyu-benefit p {
	margin: 0;
}

/* Selector de modalidad: por unidad / por mayor */
.liyu-modalidad {
	margin-bottom: 1rem;
	padding: 0.9rem 1rem;
	border: 1px solid var(--liyu-sand);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-white);
}

.liyu-modalidad__label {
	margin: 0 0 0.5rem;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.7;
}

.liyu-modalidad__option {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	margin-bottom: 0.5rem;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400;
	cursor: pointer;
}

.liyu-modalidad__option:last-child {
	margin-bottom: 0;
}

.liyu-modalidad__option input {
	margin-top: 0.2rem;
}

/* Precios de preventa: etiquetas claras + nota del 50% de adelanto */
.liyu-price-preventa,
.liyu-price-stock {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	margin-right: 1rem;
	vertical-align: top;
}

.liyu-price-stock {
	opacity: 0.65;
}

.liyu-price-stock .woocommerce-Price-amount {
	text-decoration: line-through;
}

.liyu-price-tag {
	margin-top: 0.25rem;
	padding: 0.15rem 0.5rem;
	border-radius: 999px;
	font-size: 0.6875rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.liyu-price-preventa .liyu-price-tag {
	background: var(--liyu-pastel-rosa);
	color: var(--liyu-mocha);
}

.liyu-price-stock .liyu-price-tag {
	background: var(--liyu-pastel-celeste);
	color: var(--liyu-mocha);
	opacity: 0.85;
}

.liyu-preventa-nota {
	padding: 1rem 1.15rem;
	margin: 1rem 0 1.25rem;
	border: 1px solid var(--liyu-pastel-rosa);
	border-left: 5px solid var(--liyu-gold);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-pastel-rosa);
	font-size: 0.95rem;
	line-height: 1.5;
	color: var(--liyu-mocha);
	box-shadow: 0 2px 10px rgba(143, 112, 74, 0.12);
}

/* Ahorro visible + título de la nota de preventa */
.liyu-price-savings {
	display: inline-block;
	padding: 0.2rem 0.6rem;
	vertical-align: middle;
	border-radius: 999px;
	background: var(--liyu-pastel-amarillo);
	color: var(--liyu-mocha);
	font-size: 0.75rem;
	font-weight: 600;
}

.liyu-preventa-nota__title {
	margin: 0 0 0.4rem;
	font-size: 0.9rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--liyu-bronze);
}

.liyu-preventa-nota__title::before {
	content: "★ ";
}

.liyu-preventa-nota p:last-child {
	margin: 0;
}

/* Barra superior: texto en movimiento continuo con el WhatsApp incluido */
.liyu-topbar {
	padding: 0;
}

.liyu-topbar__marquee {
	overflow: hidden;
	width: 100%;
	max-width: none;
	padding: 0.5rem 0;
}

.liyu-topbar__track {
	display: inline-flex;
	width: max-content;
	align-items: center;
	gap: 0.6rem;
	white-space: nowrap;
	font-size: var(--wp--preset--font-size--small);
	letter-spacing: 0.06em;
	animation: liyu-topbar-scroll 22s linear infinite;
}

.liyu-topbar__track a {
	color: inherit;
	text-decoration: none;
	font-weight: 600;
}

.liyu-topbar__track a:hover {
	text-decoration: underline;
}

.liyu-topbar__dot {
	opacity: 0.6;
	padding: 0 0.4rem;
}

@keyframes liyu-topbar-scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

/* Nuevos ingresos: bloque a ancho completo, con relleno lateral */
.liyu-section > .alignfull,
.liyu-product > .alignfull {
	margin-inline: calc(-1 * var(--liyu-gutter));
}
.liyu-block-wide.alignfull {
	box-sizing: border-box;
}

/* Swatches de color y talla (un clic) */
.woocommerce div.product form.cart .variations select,
.variations select {
	display: none !important;
}
.liyu-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0.5rem 0 1rem;
}
.liyu-swatch {
	cursor: pointer;
	border: 2px solid var(--liyu-sand);
	background: var(--liyu-cream);
	transition: border-color 0.2s ease, transform 0.15s ease;
}
.liyu-swatches--color .liyu-swatch {
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	padding: 0;
}
.liyu-swatches--size .liyu-swatch {
	min-width: 2.75rem;
	height: 2.5rem;
	padding: 0 0.75rem;
	border-radius: 999px;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--liyu-mocha);
	background: var(--liyu-cream);
}
.liyu-swatch:hover {
	transform: translateY(-1px);
}
.liyu-swatch.is-active {
	border-color: var(--liyu-gold);
	box-shadow: 0 0 0 2px var(--liyu-gold);
}
.liyu-swatches--size .liyu-swatch.is-active {
	background: var(--liyu-mocha);
	color: #fff;
	border-color: var(--liyu-mocha);
}

/* Guia de tallas */
.liyu-size-guide-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0.25rem 0 1rem;
	padding: 0.5rem 1rem;
	border: 1px solid var(--liyu-mocha);
	border-radius: 999px;
	background: transparent;
	color: var(--liyu-mocha);
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
}
.liyu-size-guide {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: none;
	align-items: center;
	justify-content: center;
}
.liyu-size-guide.is-open {
	display: flex;
}
.liyu-size-guide__overlay {
	position: absolute;
	inset: 0;
	background: rgba(30, 24, 18, 0.55);
}
.liyu-size-guide__box {
	position: relative;
	background: #fff;
	border-radius: 12px;
	padding: 1.75rem;
	max-width: 460px;
	width: calc(100% - 2.5rem);
	max-height: 80vh;
	overflow-y: auto;
}
.liyu-size-guide__box h3 {
	margin-top: 0;
	color: var(--liyu-mocha);
	font-family: var(--wp--preset--font-family--heading);
}
.liyu-size-guide__box table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.875rem;
}
.liyu-size-guide__box th,
.liyu-size-guide__box td {
	padding: 0.5rem 0.6rem;
	text-align: center;
	border-bottom: 1px solid var(--liyu-sand);
}
.liyu-size-guide__box th {
	background: var(--liyu-cream);
	color: var(--liyu-mocha);
}
.liyu-size-guide__note {
	font-size: 0.75rem;
	color: var(--liyu-taupe);
	margin-top: 0.75rem;
}
.liyu-size-guide__close {
	position: absolute;
	top: 0.65rem;
	right: 0.9rem;
	background: none;
	border: none;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
	color: var(--liyu-mocha);
}
/* Productos relacionados: carrusel deslizable a todo el ancho */
.liyu-related.alignfull {
	padding-inline: 0;
	box-sizing: border-box;
}
.liyu-products--carousel {
	padding-inline: var(--liyu-gutter);
	box-sizing: border-box;
}
.liyu-products--carousel .wc-block-product-template {
	display: flex !important;
	flex-wrap: nowrap !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	gap: 1.25rem;
	padding-bottom: 0.75rem;
}
.liyu-products--carousel .wc-block-product-template::-webkit-scrollbar {
	height: 6px;
}
.liyu-products--carousel .wc-block-product-template::-webkit-scrollbar-thumb {
	background-color: var(--liyu-stone);
	border-radius: 999px;
}
.liyu-products--carousel .wc-block-product-template > li {
	flex: 0 0 auto !important;
	width: 210px !important;
	scroll-snap-align: start;
}
.liyu-carousel-nav {
	display: flex;
	justify-content: center;
	gap: 0.75rem;
	margin-top: 0.75rem;
}
.liyu-carousel-arrow {
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	border: 1px solid var(--liyu-mocha);
	background: var(--liyu-white);
	color: var(--liyu-mocha);
	cursor: pointer;
	font-size: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s ease;
}
.liyu-carousel-arrow:hover {
	background: var(--liyu-cream);
}

/* Pestanas del producto: letra mas compacta */
.woocommerce-tabs ul.tabs li a {
	font-size: 0.8125rem;
}
.woocommerce-tabs .panel,
.woocommerce-tabs .panel p,
.woocommerce-tabs .panel li {
	font-size: 0.8125rem;
	line-height: 1.6;
}
.woocommerce-tabs .panel h2,
.woocommerce-tabs .panel h3 {
	font-size: 0.9375rem;
}
.woocommerce-tabs table.shop_attributes,
.woocommerce-tabs table.shop_attributes th,
.woocommerce-tabs table.shop_attributes td {
	font-size: 0.8125rem;
}

/* Tabla de tallas dentro de especificaciones */
.liyu-size-table-wrap {
	margin-bottom: 1.25rem;
}
.liyu-size-table-wrap h3 {
	font-size: 0.9375rem;
	color: var(--liyu-mocha);
	margin-bottom: 0.5rem;
}
.liyu-size-table {
	width: 100%;
	max-width: 460px;
	border-collapse: collapse;
	font-size: 0.8125rem;
}
.liyu-size-table th,
.liyu-size-table td {
	padding: 0.4rem 0.6rem;
	text-align: center;
	border-bottom: 1px solid var(--liyu-sand);
}
.liyu-size-table th {
	background: var(--liyu-cream);
	color: var(--liyu-mocha);
}
/* Paginas de categoria/tienda: la grilla de productos a todo el ancho */
.liyu-shop .liyu-products--shop {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-inline: var(--liyu-gutter);
	box-sizing: border-box;
}
/* Ticket de pedido + boton de WhatsApp en la pagina de gracias */
.liyu-order-whatsapp {
	margin: 1.5rem 0;
	padding: 1.5rem;
	border-radius: var(--liyu-radius);
	background: var(--liyu-pastel-amarillo);
	text-align: center;
}
.liyu-order-whatsapp__ticket {
	font-size: 1.05rem;
	margin-bottom: 0.5rem;
}
.liyu-order-whatsapp__btn {
	display: inline-block;
	margin-top: 1rem;
	padding: 0.85rem 2rem;
	border-radius: 999px;
	background: #25D366;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}
/* Vitrina rotativa ampliada: 20 fotos sin fondo, ciclo de 40s */
.liyu-fade__img {
	animation-duration: 40s;
}
@keyframes liyu-fade-cycle {
	0%, 100% { opacity: 0; }
	0.6% { opacity: 1; }
	4.4% { opacity: 1; }
	5% { opacity: 0; }
}
.liyu-fade__img:nth-child(1) { animation-delay: 0s; }
.liyu-fade__img:nth-child(2) { animation-delay: 2s; }
.liyu-fade__img:nth-child(3) { animation-delay: 4s; }
.liyu-fade__img:nth-child(4) { animation-delay: 6s; }
.liyu-fade__img:nth-child(5) { animation-delay: 8s; }
.liyu-fade__img:nth-child(6) { animation-delay: 10s; }
.liyu-fade__img:nth-child(7) { animation-delay: 12s; }
.liyu-fade__img:nth-child(8) { animation-delay: 14s; }
.liyu-fade__img:nth-child(9) { animation-delay: 16s; }
.liyu-fade__img:nth-child(10) { animation-delay: 18s; }
.liyu-fade__img:nth-child(11) { animation-delay: 20s; }
.liyu-fade__img:nth-child(12) { animation-delay: 22s; }
.liyu-fade__img:nth-child(13) { animation-delay: 24s; }
.liyu-fade__img:nth-child(14) { animation-delay: 26s; }
.liyu-fade__img:nth-child(15) { animation-delay: 28s; }
.liyu-fade__img:nth-child(16) { animation-delay: 30s; }
.liyu-fade__img:nth-child(17) { animation-delay: 32s; }
.liyu-fade__img:nth-child(18) { animation-delay: 34s; }
.liyu-fade__img:nth-child(19) { animation-delay: 36s; }
.liyu-fade__img:nth-child(20) { animation-delay: 38s; }

/* Boton "Finalizar por WhatsApp" en el carrito */
.liyu-wa-order-btn {
	width: 100%;
	padding: 1rem;
	border: none;
	border-radius: 999px;
	background: #25D366;
	color: #fff;
	font-weight: 700;
	font-size: 1rem;
	cursor: pointer;
}
/* Formulario minimo en el carrito: solo telefono + pago por WhatsApp */
.liyu-wa-order-form {
	margin-top: 1rem;
	padding: 1.25rem;
	border: 1px solid var(--liyu-sand);
	border-radius: var(--liyu-radius);
	background: var(--liyu-white);
}
.liyu-wa-order-form__label {
	margin: 0 0 0.4rem;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--liyu-mocha);
}
.liyu-wa-order-form__phone {
	width: 100%;
	padding: 0.75rem 1rem;
	margin-bottom: 1rem;
	border: 1px solid var(--liyu-stone);
	border-radius: var(--liyu-radius-sm);
	font-size: 0.95rem;
}
.liyu-wa-order-form__payment {
	padding: 0.75rem 1rem;
	margin: 0 0 1rem;
	border: 1px solid var(--liyu-pastel-amarillo);
	border-radius: var(--liyu-radius-sm);
	background: var(--liyu-pastel-amarillo);
	font-weight: 600;
}
.liyu-order-whatsapp__auto {
	margin-top: 0.75rem;
	font-size: 0.8125rem;
	color: var(--liyu-taupe);
}
/* Carrito y ticket: adaptar a pantallas pequenas (celular) */
@media (max-width: 640px) {
	.wc-block-cart-item__image img,
	.wc-block-components-order-summary-item__image img {
		width: 56px !important;
		height: 56px !important;
		object-fit: cover;
	}
	.liyu-order-whatsapp {
		margin: 1rem 0;
		padding: 1rem;
	}
	.liyu-order-whatsapp__ticket {
		font-size: 0.95rem;
	}
	.liyu-order-whatsapp__btn {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 0.85rem 1rem;
		font-size: 0.95rem;
	}
	.liyu-wa-order-form {
		padding: 1rem;
		box-sizing: border-box;
	}
	.liyu-wa-order-form__phone {
		width: 100%;
		box-sizing: border-box;
		font-size: 1rem;
	}
	.liyu-wa-order-btn {
		width: 100%;
		box-sizing: border-box;
	}
}

.liyu-mayor-wa { margin: 0.75rem 0; }
.liyu-mayor-wa a { display: inline-block; padding: 0.6rem 1.1rem; border-radius: 999px; background: #25D366; color: #fff; font-weight: 700; text-decoration: none; font-size: 0.9rem; }

.liyu-mayor-wa strong { color: #756652; }
.liyu-mayor-wa a { margin-left: 0.5rem; }

/* Celular: tarjetas de producto con foto grande y menos texto */
@media (max-width: 640px) {
	.liyu-products .wc-block-components-product-image,
	.liyu-products .wc-block-components-product-image--aspect-ratio-1-1 {
		aspect-ratio: auto !important;
	}
	.liyu-products .wc-block-components-product-image img {
		aspect-ratio: 3 / 4 !important;
		height: auto !important;
		width: 100% !important;
		object-fit: cover;
	}
	.liyu-products .liyu-price-tag,
	.liyu-products .liyu-price-savings,
	.liyu-products .wc-block-components-product-button {
		display: none !important;
	}
	.liyu-products .wc-block-components-product-price {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: baseline;
		gap: 0.15rem 0.5rem;
	}
	.liyu-products .liyu-price-stock {
		font-size: 0.8rem;
		opacity: 0.6;
		text-decoration: line-through;
	}
	.liyu-products .liyu-price-preventa {
		font-weight: 700;
	}
	.liyu-products--carousel .wc-block-product-template > li {
		width: 230px !important;
	}
}