/*
Theme Name: Liliana Margarita
Theme URI: https://lilianamargarita.com
Description: Child theme de Twenty Twenty-Five para Liliana Margarita — tienda de calzado y complementos de lujo en Monforte de Lemos.
Author: Liliana Margarita
Template: twentytwentyfive
Version: 1.0.1
Text Domain: liliana-margarita
*/

/* ============================================
   HEADER
============================================ */

/* Sticky applies to the template-part wrapper — the inner .lm-header is only
   as tall as the header itself so sticky on it alone has no containing-block
   room to work. Targeting the outer <header.wp-block-template-part> fixes it. */
header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 200;
}

.lm-header {
	transition: background-color 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.lm-header.is-scrolled {
	box-shadow: 0 4px 24px rgba(42, 61, 48, 0.08);
}

/* ── Contenedor interior — grid 3 columnas para centrado perfecto del nav ── */
.lm-header-inner {
	height: 76px;
	display: grid !important;
	grid-template-columns: 1fr auto 1fr !important;
	align-items: center !important;
	gap: 0 !important;
}
.lm-header-inner .lm-logo {
	justify-self: start;
}
.lm-header-inner .lm-header-icons {
	justify-self: end;
}

/* ── Logo ── */
.lm-logo img {
	filter: brightness(0);
	transition: filter 0.4s ease, opacity 0.2s ease;
	max-height: 64px;
	width: auto;
	object-fit: contain;
}
.lm-logo img:hover {
	opacity: 0.55;
}

/* ── Nav: columna central del grid, contenido centrado ── */
nav.lm-main-nav.wp-block-navigation {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
}
.lm-main-nav .wp-block-navigation__container {
	gap: 0 !important;
}

/* ── Nav links: selector correcto es __content, no > a ── */
.lm-main-nav .wp-block-navigation-item__content {
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.68rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	color: #3A3A3A !important;
	text-decoration: none !important;
	padding: 0 1.2rem !important;
	height: 76px;
	display: flex !important;
	align-items: center !important;
	position: relative;
	transition: color 0.2s ease;
}
.lm-main-nav .wp-block-navigation-item__content::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 1.2rem;
	right: 1.2rem;
	height: 2px;
	background-color: #3D5A45;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.25s ease;
}
.lm-main-nav .wp-block-navigation-item__content:hover {
	color: #2A3D30 !important;
}
.lm-main-nav .wp-block-navigation-item__content:hover::after,
.current-menu-item .wp-block-navigation-item__content::after {
	transform: scaleX(1);
}

/* ── Dropdown ── */
.lm-main-nav .wp-block-navigation__submenu-container {
	background-color: #F5EDD6 !important;
	border: none !important;
	border-top: 2px solid #3D5A45 !important;
	border-radius: 0 !important;
	box-shadow: 0 16px 48px rgba(42, 61, 48, 0.13) !important;
	padding: 0.6rem 0 !important;
	min-width: 190px !important;
}
.lm-main-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font-size: 0.7rem !important;
	padding: 0.75rem 1.75rem !important;
	height: auto !important;
	color: #1A1A1A !important;
	transition: none !important;
}
.lm-main-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after {
	display: none !important;
}
.lm-main-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background-color: rgba(61, 90, 69, 0.07) !important;
	color: #2A3D30 !important;
}

/* Dropdown siempre negro — sobreescribe el blanco del estado transparente en home */
.home .lm-header .lm-main-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: #1A1A1A !important;
}

/* ── Iconos WooCommerce: __link (correcto), no __account-link ── */
.lm-header-icons {
	min-width: 90px;
}
.lm-header-icons .wc-block-customer-account__link,
.lm-header-icons .wc-block-mini-cart__button {
	color: #3A3A3A !important;
	transition: color 0.2s ease;
}
.lm-header-icons .wc-block-customer-account__link:hover,
.lm-header-icons .wc-block-mini-cart__button:hover {
	color: #3D5A45 !important;
}
.lm-header-icons .wc-block-mini-cart__badge {
	background-color: #8B2635 !important;
}

/* ── HOMEPAGE: transparente sobre el hero ── */

/* Pull main content up so the hero fills from y=0 and sits behind the
   transparent sticky header. The sticky template-part still occupies 76px
   in the normal flow, so we compensate with a negative margin.
   !important is needed to override the inline style="margin-top:0" from the template. */
.home .wp-site-blocks > main {
	margin-top: -76px !important;
}

.home .lm-header {
	background-color: transparent !important;
	border-bottom: none !important;
	box-shadow: none !important;
}

/* Eliminar gap entre header y hero */
header.wp-block-template-part + * {
	margin-block-start: 0 !important;
	margin-top: 0 !important;
}
.home .lm-header .lm-logo img {
	filter: brightness(0) invert(1); /* logo blanco sobre hero */
}
.home .lm-header .lm-main-nav .wp-block-navigation-item__content {
	color: rgba(255, 255, 255, 0.88) !important;
	transition: color 0.4s ease;
}
.home .lm-header .lm-main-nav .wp-block-navigation-item__content::after {
	background-color: rgba(255, 255, 255, 0.7);
}
.home .lm-header .lm-header-icons .wc-block-customer-account__link,
.home .lm-header .lm-header-icons .wc-block-mini-cart__button {
	color: rgba(255, 255, 255, 0.88) !important;
	transition: color 0.4s ease;
}

/* ── HOMEPAGE scrolled: sólido beige con blur ── */
.home .lm-header.is-scrolled {
	background-color: rgba(245, 237, 214, 0.97) !important;
	border-bottom-color: rgba(61, 90, 69, 0.14) !important;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}
.home .lm-header.is-scrolled .lm-logo img {
	filter: brightness(0);
}
.home .lm-header.is-scrolled .lm-main-nav .wp-block-navigation-item__content {
	color: #3A3A3A !important;
}
.home .lm-header.is-scrolled .lm-main-nav .wp-block-navigation-item__content::after {
	background-color: #3D5A45;
}
.home .lm-header.is-scrolled .lm-header-icons .wc-block-customer-account__link,
.home .lm-header.is-scrolled .lm-header-icons .wc-block-mini-cart__button {
	color: #3A3A3A !important;
}

/* ============================================
   PÁGINAS DE CATEGORÍA — HEROES ÚNICOS
============================================ */

/* Bolsos: columna derecha con imagen via CSS (el wp:column vacío actúa de canvas) */
.lm-cat-hero-bolsos__img {
	background-image: url('https://lilianamargarita.com/wp-content/uploads/2026/05/store-photo-2.jpg');
	background-size: cover;
	background-position: center;
	min-height: 65vh !important;
}

/* Paralax suave en todos los heroes de categoría */
.tax-product_cat .wp-block-cover__image-background {
	will-change: transform;
}

/* Ajuste de margin-top para que el hero de categoría quede bajo el header sticky */
.tax-product_cat .wp-site-blocks > main {
	margin-top: -76px !important;
}

/* ============================================
   HOME — CARDS DE CATEGORÍAS
============================================ */

.lm-categories-grid .wp-block-cover {
	overflow: hidden;
	cursor: pointer;
}

/* Zoom de la imagen al hover */
.lm-categories-grid .wp-block-cover .wp-block-cover__image-background {
	transition: transform 0.7s ease !important;
}
.lm-categories-grid .wp-block-cover:hover .wp-block-cover__image-background {
	transform: scale(1.07) !important;
}

/* Overlay más oscuro al hover */
.lm-categories-grid .wp-block-cover .wp-block-cover__background {
	transition: opacity 0.4s ease !important;
}
.lm-categories-grid .wp-block-cover:hover .wp-block-cover__background {
	opacity: 0.55 !important;
}

/* Subida del texto al hover */
.lm-categories-grid .wp-block-cover .wp-block-cover__inner-container {
	transition: transform 0.4s ease;
}
.lm-categories-grid .wp-block-cover:hover .wp-block-cover__inner-container {
	transform: translateY(-8px);
}

/* ============================================
   TIENDA — CARDS DE CATEGORÍA (fila única)
============================================ */

.lm-shop-cats {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 1rem !important;
}

.lm-shop-cats .wp-block-cover {
	min-height: 150px !important;
	overflow: hidden;
	cursor: pointer;
	border-radius: 16px !important;
	box-shadow: 0 4px 20px rgba(0,0,0,0.12);
	transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}

.lm-shop-cats .wp-block-cover:hover {
	transform: translateY(-6px) !important;
	box-shadow: 0 12px 36px rgba(0,0,0,0.22) !important;
}

.lm-shop-cats .wp-block-cover .wp-block-cover__background {
	border-radius: 16px !important;
	transition: opacity 0.35s ease !important;
	opacity: 0.52 !important;
}
.lm-shop-cats .wp-block-cover:hover .wp-block-cover__background {
	opacity: 0.65 !important;
}

.lm-shop-cats .wp-block-cover .wp-block-cover__image-background {
	border-radius: 16px !important;
	transition: transform 0.6s ease !important;
}
.lm-shop-cats .wp-block-cover:hover .wp-block-cover__image-background {
	transform: scale(1.06) !important;
}

.lm-shop-cats .wp-block-cover .wp-block-cover__inner-container {
	transition: transform 0.35s ease;
}
.lm-shop-cats .wp-block-cover:hover .wp-block-cover__inner-container {
	transform: translateY(-4px);
}

/* Texto de las cards de categoría en tienda */
.lm-shop-cats h3 {
	color: #FFFFFF !important;
	text-shadow: 0 2px 12px rgba(0,0,0,0.5) !important;
	font-size: 1.25rem !important;
	margin-bottom: 0.2rem !important;
}

.lm-shop-cats p,
.lm-shop-cats p a {
	color: rgba(255,255,255,0.85) !important;
	text-shadow: 0 1px 6px rgba(0,0,0,0.4) !important;
}

/* ============================================
   SECCIÓN "VEN A VISITARNOS"
============================================ */

.lm-visit-section iframe {
	border-radius: 12px;
	display: block;
	width: 100%;
	min-height: 420px;
}

/* ============================================================
   PANTALLAS MEDIANAS — 1280px
============================================================ */
@media (max-width: 1280px) {

	/* Nav: reducir padding lateral de los links */
	.lm-main-nav .wp-block-navigation-item__content {
		padding: 0 0.75rem !important;
		font-size: 0.62rem !important;
	}

	/* Producto: título más compacto */
	.single-product .wp-block-post-title,
	.single-product h1.product_title {
		font-size: clamp(1.8rem, 3vw, 2.8rem) !important;
	}

	/* Producto: info padding lateral más estrecho */
	.lm-sp-info {
		padding-left: 2rem !important;
		padding-right: 2rem !important;
	}
}

@media (max-width: 768px) {
	.lm-visit-section iframe {
		min-height: 280px;
	}
}

/* ============================================
   FOOTER
============================================ */

.lm-footer a.lm-footer-link:hover {
	color: #F5EDD6 !important;
	text-decoration: none;
}

.lm-footer-logo {
	max-height: 72px;
	width: auto !important;
	max-width: 180px !important;
	object-fit: contain;
	display: block;
}

.lm-footer .wp-block-site-title a {
	color: #F5EDD6 !important;
	text-decoration: none !important;
	font-family: "Cormorant Garamond", Georgia, serif !important;
}

/* ============================================
   WOOCOMMERCE — TARJETAS DE PRODUCTO
============================================ */

.lm-product-card {
	background-color: #FFFFFF !important;
	border-radius: 16px !important;
	overflow: hidden;
	box-shadow: 0 2px 12px rgba(0,0,0,0.07);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	border-bottom: none !important;
	padding-bottom: 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

.lm-product-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 16px 48px rgba(42, 61, 48, 0.14);
}

/* Product image */
.lm-product-card .wp-block-woocommerce-product-image,
.lm-product-card .wc-block-components-product-image {
	overflow: hidden;
	background-color: #FFFFFF;
	border-radius: 16px 16px 0 0 !important;
	flex-shrink: 0;
}

.lm-product-card .wp-block-woocommerce-product-image img,
.lm-product-card .wc-block-components-product-image img,
.lm-product-card img[data-testid="product-image"] {
	transition: transform 0.5s ease;
	object-fit: contain !important;
	background-color: #FFFFFF;
	padding: 0.75rem;
}

.lm-product-card:hover .wp-block-woocommerce-product-image img,
.lm-product-card:hover img[data-testid="product-image"] {
	transform: scale(1.05);
}

/* Info area — fondo blanco, rellena el resto de la card */
.lm-product-card > .wp-block-group:last-child {
	background-color: #FFFFFF !important;
	flex: 1 !important;
	padding: 0.85rem 1rem 1.25rem !important;
}

/* Product name */
.lm-product-card .wp-block-woocommerce-product-name a {
	color: #1A1A1A !important;
	text-decoration: none !important;
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 300 !important;
	font-size: 1.1rem !important;
	letter-spacing: 0.02em !important;
	transition: color 0.2s ease;
}

.lm-product-card .wp-block-woocommerce-product-name a:hover {
	color: #3D5A45 !important;
}

/* Price */
.lm-product-card .wp-block-woocommerce-product-price .price {
	color: #3D5A45 !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.04em;
}

.lm-product-card .wp-block-woocommerce-product-price del {
	color: #AAAAAA !important;
	font-size: 0.8rem !important;
}

.lm-product-card .wp-block-woocommerce-product-price ins {
	color: #8B2635 !important;
	text-decoration: none !important;
}

/* Add to cart button */
.lm-add-to-cart .wp-block-button__link,
.lm-product-card .wp-block-woocommerce-product-button .wp-block-button__link {
	background-color: #3D5A45 !important;
	color: #FFFFFF !important;
	border-radius: 0 !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	padding: 0.75rem 1.5rem !important;
	transition: background-color 0.2s ease !important;
	width: 100%;
	text-align: center;
	display: block;
}

.lm-add-to-cart .wp-block-button__link:hover,
.lm-product-card .wp-block-woocommerce-product-button .wp-block-button__link:hover {
	background-color: #2A3D30 !important;
}

/* Sale badge */
.wc-block-components-product-sale-badge {
	background-color: #8B2635 !important;
	border-radius: 0 !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.65rem !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
}

/* Product grid spacing */
.wp-block-woocommerce-product-collection.alignwide {
	gap: 2rem !important;
}

/* ============================================
   WOOCOMMERCE — PÁGINA SINGLE PRODUCTO
============================================ */

.woocommerce div.product .woocommerce-product-gallery {
	border-radius: 0 !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: #3D5A45 !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 1.3rem !important;
	font-weight: 400 !important;
}

.woocommerce div.product .product_title {
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 300 !important;
	letter-spacing: 0.03em !important;
	font-size: clamp(2rem, 3.5vw, 2.8rem) !important;
	color: #1A1A1A !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
	font-family: "Jost", Arial, sans-serif !important;
	font-weight: 300 !important;
	font-size: 0.92rem !important;
	line-height: 1.75 !important;
	color: #5A5A5A !important;
}

/* Add to cart — single product */
.woocommerce div.product .cart .single_add_to_cart_button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button {
	background-color: #3D5A45 !important;
	color: #FFFFFF !important;
	border-radius: 0 !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.75rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	padding: 1rem 2.5rem !important;
	transition: background-color 0.2s ease !important;
	border: none !important;
}

.woocommerce div.product .cart .single_add_to_cart_button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover {
	background-color: #2A3D30 !important;
}

/* Variation swatches / selects */
.woocommerce div.product .variations select {
	border: 1px solid rgba(61, 90, 69, 0.3) !important;
	border-radius: 0 !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.85rem !important;
	padding: 0.6rem 1rem !important;
	color: #1A1A1A !important;
}

/* ============================================
   WOOCOMMERCE — CARRITO Y CHECKOUT
============================================ */

.woocommerce-cart table.cart td,
.woocommerce-cart table.cart th {
	border-color: rgba(61, 90, 69, 0.1) !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-weight: 300 !important;
}

.woocommerce-cart .cart-collaterals .cart_totals h2,
.woocommerce-checkout h3 {
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 300 !important;
	letter-spacing: 0.04em !important;
	color: #1A1A1A !important;
}

/* ============================================
   PAGINACIÓN
============================================ */

.wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers {
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.8rem !important;
	letter-spacing: 0.08em !important;
	color: #3A3A3A !important;
	text-decoration: none !important;
	padding: 0.5rem 0.85rem;
	transition: color 0.2s ease, background-color 0.2s ease;
}

.wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers.current,
.wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers:hover {
	background-color: #3D5A45 !important;
	color: #FFFFFF !important;
}

/* ============================================
   UTILIDADES GLOBALES
============================================ */

/* Smooth scroll */
html {
	scroll-behavior: smooth;
}

/* Selection color */
::selection {
	background-color: rgba(61, 90, 69, 0.2);
	color: #1A1A1A;
}

/* Focus outline brand */
:focus-visible {
	outline: 2px solid #3D5A45;
	outline-offset: 3px;
}

/* ============================================================
   CATEGORY HERO — MÁSCARA GRADIENTE
============================================================ */

/* Overlay uniforme más oscuro para mayor legibilidad del texto */
.tax-product_cat main > .wp-block-cover .wp-block-cover__background {
	opacity: 0.72 !important;
}

/* Text shadow en los textos del hero para máximo contraste */
.tax-product_cat main > .wp-block-cover h1,
.tax-product_cat main > .wp-block-cover .wp-block-heading {
	text-shadow: 0 2px 24px rgba(0, 0, 0, 0.55), 0 1px 4px rgba(0, 0, 0, 0.35) !important;
}
.tax-product_cat main > .wp-block-cover p {
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.45) !important;
}

/* ============================================================
   SINGLE PRODUCT — SPLIT LAYOUT EDITORIAL
============================================================ */

/* ── Fondo de página de producto ── */
.single-product main.lm-single-product {
	background-color: #FFFFFF !important;
}

/* ── Split wrapper ── */
.lm-sp-split .wp-block-columns {
	gap: 0 !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
}

/* ── Gallery column ── */
.lm-sp-gallery-col {
	background-color: #FFFFFF !important;
	padding: 4rem clamp(3rem, 11vw, 17rem) !important;
}

/* Ocultar lupa de WooCommerce */
.lm-sp-gallery-col .woocommerce-product-gallery__trigger { display: none !important; }

.lm-sp-gallery-col .wp-block-woocommerce-product-image-gallery,
.lm-sp-gallery-col .woocommerce-product-gallery {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	opacity: 1 !important;
}

/* Ancho completo solo en el enlace/img — dejar que FlexSlider gestione ul.slides y li */
.lm-sp-gallery-col .woocommerce-product-gallery__image a {
	display: block;
	width: 100%;
}
.lm-sp-gallery-col .woocommerce-product-gallery__image img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	object-fit: contain !important;
	filter: none !important;
	-webkit-filter: none !important;
}

/* Ocultar overlay de zoom */
.lm-sp-gallery-col .zoomContainer,
.lm-sp-gallery-col .zoomImg { display: none !important; }

/* Thumbnail strip */
.lm-sp-gallery-col .flex-control-nav.flex-control-thumbs {
	display: flex !important;
	gap: 1rem;
	padding: 1.25rem 1.5rem 1.5rem;
	background-color: #FFFFFF;
	margin: 0;
	list-style: none;
	flex-wrap: nowrap;
	overflow-x: auto;
	border-top: 1px solid rgba(61,90,69,0.08);
}
.lm-sp-gallery-col .flex-control-thumbs li {
	flex: 0 0 110px;
}
.lm-sp-gallery-col .flex-control-thumbs img {
	width: 110px !important;
	height: 135px !important;
	object-fit: contain !important;
	background-color: #FFFFFF;
	opacity: 0.6;
	transition: opacity 0.25s ease;
	cursor: pointer;
	border: 1.5px solid transparent;
}
.lm-sp-gallery-col .flex-control-thumbs li.flex-active img {
	opacity: 1;
	border-color: #3D5A45;
}

/* ── Info column — sticky ── */
.lm-sp-info-col {
	align-self: flex-start !important;
	position: sticky !important;
	top: 76px;
	background-color: #FFFFFF !important;
	box-shadow: -6px 0 32px rgba(0, 0, 0, 0.07) !important;
}
.lm-sp-info {
	overflow-y: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.lm-sp-info::-webkit-scrollbar { display: none; }

/* ── Category breadcrumb ── */
.single-product .wp-block-post-terms {
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.65rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.3em !important;
	text-transform: uppercase !important;
	color: #3D5A45 !important;
	display: block;
	margin-bottom: 1rem;
}
.single-product .wp-block-post-terms a {
	color: #3D5A45 !important;
	text-decoration: none !important;
}

/* ── Product title ── */
.single-product .wp-block-post-title,
.single-product h1.product_title {
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 300 !important;
	font-size: clamp(2.5rem, 3.5vw, 4rem) !important;
	letter-spacing: 0.04em !important;
	line-height: 1.05 !important;
	color: #1A1A1A !important;
	margin-top: 0 !important;
	margin-bottom: 1.25rem !important;
}

/* ── Rating ── */
.single-product .wp-block-woocommerce-product-rating {
	margin-bottom: 1.25rem;
}
.single-product .wc-block-components-product-rating__stars svg {
	color: #3D5A45 !important;
}
.single-product .star-rating::before,
.single-product .star-rating span::before {
	color: #3D5A45 !important;
}

/* ── Price ── */
.single-product .wp-block-woocommerce-product-price .price,
.single-product .wc-block-components-product-price,
.single-product p.price,
.single-product span.price {
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 1.4rem !important;
	font-weight: 400 !important;
	color: #3D5A45 !important;
	margin-bottom: 1.5rem;
}
.single-product .wp-block-woocommerce-product-price del,
.single-product p.price del { color: #AAAAAA !important; font-size: 1.1rem !important; }
.single-product .wp-block-woocommerce-product-price ins,
.single-product p.price ins { color: #8B2635 !important; text-decoration: none !important; }

/* ── Short description ── */
.single-product .wp-block-post-excerpt__excerpt,
.single-product .woocommerce-product-details__short-description {
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-style: italic !important;
	font-weight: 400 !important;
	font-size: 1.05rem !important;
	line-height: 1.7 !important;
	color: #5A5A5A !important;
	margin-bottom: 2rem;
}

/* ── Add to cart form — layout general ── */
.lm-sp-atc form.cart,
.lm-sp-atc form.variations_form {
	display: block !important;
	margin-bottom: 0 !important;
}

/* ── Tabla de variaciones: label alineado con swatches ── */
.lm-sp-atc table.variations {
	width: 100%;
	border: none;
	border-collapse: collapse;
	display: block !important;
	margin-bottom: 1.5rem;
}
.lm-sp-atc table.variations tbody { display: block !important; }
.lm-sp-atc table.variations tr {
	display: flex !important;
	align-items: flex-start !important;
	gap: 1rem;
	margin-bottom: 1rem;
}
.lm-sp-atc table.variations th.label {
	flex: 0 0 54px;
	padding-top: 0.55rem;
	text-align: left;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: #3A3A3A !important;
}
.lm-sp-atc table.variations td.value {
	flex: 1;
	min-width: 0;
}
.lm-sp-atc .variations select {
	display: none; /* oculto — reemplazado por swatches JS */
}
.lm-sp-atc a.reset_variations { display: none !important; }

/* ── Fila cantidad + botón ── */
.lm-sp-atc .variations_button,
.lm-sp-atc .cart:not(.variations_form) {
	display: flex !important;
	gap: 0.75rem !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
}
.lm-sp-atc .variations_button .quantity,
.lm-sp-atc .cart .quantity { flex: 0 0 auto; }
.lm-sp-atc .quantity input {
	border: 1px solid rgba(61,90,69,0.3) !important;
	border-radius: 0 !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.9rem !important;
	text-align: center;
	width: 56px;
	height: 44px;
	padding: 0 0.5rem;
}
.lm-sp-atc .variations_button .single_add_to_cart_button,
.lm-sp-atc .cart .single_add_to_cart_button,
.lm-sp-atc .wc-block-components-product-add-to-cart-button {
	flex: 1 1 auto;
	background-color: #3D5A45 !important;
	color: #FFFFFF !important;
	border-radius: 0 !important;
	border: none !important;
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.78rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	padding: 0.75rem 1.5rem !important;
	height: 44px;
	line-height: 1 !important;
	white-space: nowrap;
	transition: background-color 0.2s ease !important;
	cursor: pointer;
}
.lm-sp-atc .variations_button .single_add_to_cart_button:hover,
.lm-sp-atc .cart .single_add_to_cart_button:hover,
.lm-sp-atc .wc-block-components-product-add-to-cart-button:hover {
	background-color: #2A3D30 !important;
}

/* ── Trust signals ── */
.lm-sp-trust p { display: flex !important; align-items: center !important; }

/* ── Product meta ── */
.single-product .wp-block-woocommerce-product-meta,
.single-product .product_meta {
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.78rem !important;
	font-weight: 300 !important;
	color: #8A8A8A !important;
	letter-spacing: 0.04em;
}
.single-product .wp-block-woocommerce-product-meta a,
.single-product .product_meta a {
	color: #3D5A45 !important;
	text-decoration: none !important;
}

/* ============================================================
   SINGLE PRODUCT — TABS
============================================================ */

.lm-sp-tabs .woocommerce-tabs ul.tabs,
.lm-sp-tabs .wc-tabs {
	border-bottom: 2px solid rgba(61,90,69,0.15) !important;
	padding: 0 !important;
	margin: 0 0 2.5rem 0 !important;
	display: flex !important;
	gap: 0 !important;
	background: transparent !important;
	list-style: none;
}
.lm-sp-tabs .woocommerce-tabs ul.tabs li,
.lm-sp-tabs .wc-tabs li {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	margin: 0 !important;
}
.lm-sp-tabs .woocommerce-tabs ul.tabs li a,
.lm-sp-tabs .wc-tabs li a {
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	color: #8A8A8A !important;
	padding: 0.9rem 1.75rem !important;
	display: block;
	text-decoration: none !important;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	transition: color 0.2s, border-color 0.2s;
	background: transparent !important;
}
.lm-sp-tabs .woocommerce-tabs ul.tabs li.active a,
.lm-sp-tabs .wc-tabs li.active a {
	color: #3D5A45 !important;
	border-bottom-color: #3D5A45 !important;
}
.lm-sp-tabs .woocommerce-tabs ul.tabs li a:hover { color: #2A3D30 !important; }

.lm-sp-tabs .woocommerce-Tabs-panel,
.lm-sp-tabs .wc-tab {
	font-family: "Jost", Arial, sans-serif !important;
	font-size: 0.9rem !important;
	font-weight: 300 !important;
	line-height: 1.75 !important;
	color: #3A3A3A !important;
	border: none !important;
}
.lm-sp-tabs .woocommerce-Tabs-panel h2,
.lm-sp-tabs .wc-tab h2 {
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 300 !important;
	font-size: 1.5rem !important;
	letter-spacing: 0.04em !important;
	color: #1A1A1A !important;
	margin-bottom: 1.25rem !important;
}

/* ============================================================
   SINGLE PRODUCT — BREADCRUMB
============================================================ */

.lm-sp-breadcrumb {
	background-color: #F8F4EF;
	padding: 0 max(2rem, calc((100% - 1340px) / 2)) !important;
	height: 40px;
	display: flex !important;
	align-items: center;
	border-bottom: 1px solid rgba(61,90,69,0.08);
	font-family: "Jost", Arial, sans-serif;
	font-size: 0.72rem;
	font-weight: 300;
	letter-spacing: 0.04em;
	color: #8A8A8A;
}
.lm-sp-breadcrumb .wc-block-breadcrumbs,
.lm-sp-breadcrumb .wp-block-breadcrumbs {
	display: flex !important;
	align-items: center !important;
	line-height: 1 !important;
	margin: 0 !important;
	max-width: none !important;
	font-size: 0.72rem !important;
}
.lm-sp-breadcrumb .woocommerce-breadcrumb {
	display: flex !important;
	align-items: center !important;
	line-height: 1 !important;
	margin: 0 !important;
	max-width: none !important;
}
.lm-sp-breadcrumb a {
	color: #8A8A8A;
	text-decoration: none;
	transition: color 0.2s ease;
}
.lm-sp-breadcrumb a:hover { color: #3D5A45; }
.lm-sp-breadcrumb .breadcrumb_last { color: #3A3A3A; }
.lm-sp-breadcrumb .woocommerce-breadcrumb span.separator { color: #C9A87A; margin: 0 0.4rem; }

/* ============================================================
   SINGLE PRODUCT — VARIATION SWATCHES
============================================================ */

.lm-swatches-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 1.25rem;
}
.lm-swatch-talla {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 0.65rem;
	border: 1px solid rgba(61,90,69,0.3);
	font-family: "Jost", Arial, sans-serif;
	font-size: 0.8rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	color: #1A1A1A;
	background: transparent;
	cursor: pointer;
	transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}
.lm-swatch-talla:hover { border-color: #3D5A45; }
.lm-swatch-talla.is-selected {
	background-color: #3D5A45;
	border-color: #3D5A45;
	color: #FFFFFF;
}
.lm-swatch-talla.is-disabled {
	opacity: 0.35;
	cursor: not-allowed;
	text-decoration: line-through;
}
.lm-swatch-color {
	display: inline-block;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1.5px solid rgba(0,0,0,0.12);
	cursor: pointer;
	transition: transform 0.2s ease, outline 0.2s ease;
	position: relative;
}
.lm-swatch-color:hover { transform: scale(1.12); }
.lm-swatch-color.is-selected {
	outline: 2px solid #3D5A45;
	outline-offset: 2px;
}
.lm-swatch-color[title]:hover::after {
	content: attr(title);
	position: absolute;
	bottom: 130%;
	left: 50%;
	transform: translateX(-50%);
	background: #2A3D30;
	color: #F5EDD6;
	font-family: "Jost", Arial, sans-serif;
	font-size: 0.65rem;
	letter-spacing: 0.06em;
	white-space: nowrap;
	padding: 0.25rem 0.5rem;
	pointer-events: none;
	z-index: 10;
}

/* ============================================================
   SINGLE PRODUCT — RELATED PRODUCTS
============================================================ */

/* Espaciado reducido entre precio y botón en cards de relacionados */
.single-product .lm-product-card .wp-block-spacer {
	height: 0.1rem !important;
}

/* Nombre del producto en todas las cards (post-title reemplaza woocommerce/product-name) */
.lm-product-card .wp-block-post-title {
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 300 !important;
	font-size: 1.05rem !important;
	letter-spacing: 0.02em !important;
	line-height: 1.3 !important;
	color: #1A1A1A !important;
	margin-top: 0 !important;
	margin-bottom: 0.3rem !important;
}
.lm-product-card .wp-block-post-title a {
	color: #1A1A1A !important;
	text-decoration: none !important;
}

/* ============================================================
   SINGLE PRODUCT — RESPONSIVE
============================================================ */

@media (max-width: 768px) {

	/* ── Header: logo izquierda, hamburguesa + carrito derecha ── */
	.lm-header-inner {
		display: flex !important;
		justify-content: flex-start !important;
		align-items: center !important;
	}
	.lm-header-inner .lm-logo {
		flex: 1 !important;
		justify-self: unset;
	}
	nav.lm-main-nav {
		flex: none !important;
		margin-right: 0.75rem !important;
	}
	.lm-header-inner .lm-header-icons {
		flex: none !important;
		justify-self: unset;
		min-width: 0 !important;
	}
	/* Forzar el menú hamburguesa hasta 768px.
	   El core de WordPress solo colapsa el nav por debajo de 600px, por lo que
	   entre 600 y 768px se mostraba el menú horizontal completo (8 ítems)
	   amontonado junto a los iconos. Replicamos el comportamiento mobile del core. */
	.lm-main-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex !important;
	}
	.lm-main-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	/* Hamburguesa: color visible sobre fondo beige */
	.lm-main-nav .wp-block-navigation__responsive-container-open,
	.lm-main-nav .wp-block-navigation__responsive-container-close {
		color: #2A3D30 !important;
	}

	/* ── Página de producto ── */
	.lm-sp-split .wp-block-columns {
		flex-wrap: wrap !important;
		min-height: auto;
	}
	.lm-sp-gallery-col, .lm-sp-info-col {
		flex-basis: 100% !important;
		width: 100% !important;
		min-width: 0;
	}
	/* Eliminar el padding 4rem 17rem que aplasta la imagen en mobile */
	.lm-sp-gallery-col {
		padding: 0 !important;
	}
	/* Dejar que la imagen tome su alto natural */
	.lm-sp-gallery-col .woocommerce-product-gallery,
	.lm-sp-gallery-col .wp-block-woocommerce-product-image-gallery {
		min-height: unset !important;
		height: auto !important;
	}
	.lm-sp-info {
		position: static !important;
		max-height: none !important;
		overflow-y: visible !important;
		padding: 2rem 1.25rem !important;
	}
	.single-product .wp-block-post-title,
	.single-product h1.product_title {
		font-size: clamp(2rem, 7vw, 2.8rem) !important;
	}
	.lm-sp-atc .cart, .lm-sp-atc form.cart { flex-wrap: wrap !important; }
	.wp-block-woocommerce-related-products ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	/* ── /tienda — hero ── */
	.lm-shop-hero {
		padding-top: 2rem !important;
		padding-bottom: 2rem !important;
	}

	/* ── /tienda — cards de categoría: 4 columnas → 2×2 ── */
	.lm-shop-cats {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 0.75rem !important;
	}
	.lm-shop-cats .wp-block-cover {
		min-height: 130px !important;
	}

	/* ── Cards de producto — grid gap ── */
	.wp-block-woocommerce-product-collection.alignwide {
		gap: 0.75rem !important;
	}

	/* ── Cards de producto — imagen: altura fija, imagen completa sin recorte ── */
	.lm-product-card .wp-block-woocommerce-product-image,
	.lm-product-card .wc-block-components-product-image {
		height: 175px !important;
		max-height: 175px !important;
		overflow: hidden !important;
	}
	/* Propagar la altura al <a> y <figure> intermedios */
	.lm-product-card .wp-block-woocommerce-product-image a,
	.lm-product-card .wp-block-woocommerce-product-image figure,
	.lm-product-card .wc-block-components-product-image a,
	.lm-product-card .wc-block-components-product-image figure {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		margin: 0 !important;
	}
	/* Anular el aspect-ratio 3/4 que WC inyecta inline, mostrar imagen completa */
	.lm-product-card .wp-block-woocommerce-product-image img,
	.lm-product-card .wc-block-components-product-image img {
		aspect-ratio: auto !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
		padding: 0.4rem !important;
	}

	/* ── Cards de producto — info area: flex para alinear botón al fondo ── */
	.lm-product-card > .wp-block-group:last-child {
		display: flex !important;
		flex-direction: column !important;
		padding: 0.75rem 0.75rem 1rem !important;
	}
	/* Botón siempre al fondo de la card */
	.lm-product-card .wp-block-woocommerce-product-button,
	.lm-product-card .lm-add-to-cart {
		margin-top: auto !important;
	}

	/* ── Cards de producto — tipografía igual que desktop ── */
	.lm-product-card .wp-block-post-title {
		font-size: 1rem !important;
		line-height: 1.3 !important;
		margin-bottom: 0.2rem !important;
		/* Reservar siempre 2 líneas: cards de misma altura aunque el título varíe */
		min-height: 2.6rem !important;
		display: -webkit-box !important;
		-webkit-line-clamp: 2 !important;
		-webkit-box-orient: vertical !important;
		overflow: hidden !important;
	}
	.lm-product-card .wp-block-woocommerce-product-price .price {
		font-size: 0.88rem !important;
	}

	/* ── Cards de producto — botón ── */
	.lm-add-to-cart .wp-block-button__link,
	.lm-product-card .wp-block-woocommerce-product-button .wp-block-button__link {
		font-size: 0.68rem !important;
		letter-spacing: 0.1em !important;
		padding: 0.65rem 0.5rem !important;
		line-height: 1.3 !important;
	}
}


/* ── Botones de subcategoría en hero de categoría ── */
.lm-subcat-btn .wp-block-button__link {
	transition: background-color 0.2s ease, color 0.2s ease !important;
}
.lm-subcat-btn .wp-block-button__link:hover {
	background-color: rgba(245,237,214,0.15) !important;
	border-color: #F5EDD6 !important;
	color: #F5EDD6 !important;
}

/* ── Empty state de colecciones sin productos ── */
.lm-no-results {
	background-color: #FAFAF8;
}
.lm-no-results .wp-block-buttons {
	justify-content: center;
}

/* ── Historia section — zoom en imagen ── */
#nuestra-historia .wp-block-image {
	overflow: hidden;
}
#nuestra-historia .wp-block-image img {
	transform: scale(1.22);
	transform-origin: center center;
	transition: transform 0.6s ease;
	display: block;
	width: 100%;
}
#nuestra-historia .wp-block-image:hover img {
	transform: scale(1.27);
}
