/* =========================================================
   Linea Hogar — glue styles on top of the reference stylesheet.
   Only what the WordPress templates need (no visual redesign).
   ========================================================= */

/* ---------- shell ---------- */
body.lh-body { background: #fff; }
.lh-site { width: 100%; }
.lh-main { width: 100%; display: block; }
.lh-main > * { width: 100%; }

/* WordPress wraps post content in <p>; the reference storefront does not
   add the default 1.5em paragraph gap inside cards. */
.tarjeta-producto-favoritos-troncoso p,
.tarjeta-coleccion-troncoso p { margin: 0; }

/* ---------- announcement bar: stays pinned while scrolling ---------- */
.franja-superior-header.lh-pinned {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
}
body.lh-has-pinned-bar { padding-top: var(--lh-bar-h, 40px); }

/* ---------- cart counter ---------- */
.contenedor-carrito-header { position: relative; }
.lh-cart-count {
	position: absolute;
	top: -4px;
	right: -6px;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	border-radius: 9px;
	background: #de0a14;
	color: #fff;
	font-size: 10px;
	line-height: 18px;
	font-weight: 700;
	text-align: center;
}
.lh-cart-count.is-empty { display: none; }

/* ---------- home grid heading (reference has h2 + sub inside one wrapper) ---------- */
.lh-nuevos .contenedor-h2-secciones-index { flex-direction: column; align-items: center; gap: 10px; }
.lh-nuevos .descripcion-seccion-favoritos {
	color: #666;
	font-size: clamp(12px, 1vw, 15px);
	letter-spacing: 0.5px;
	text-transform: uppercase;
	text-align: center;
	margin: 0;
}
.lh-empty { color: #666; padding: 40px 0; text-align: center; }

/* ---------- collection pagination ---------- */
.lh-pager { width: 100%; display: flex; justify-content: center; gap: 8px; margin: 40px 0 0; }
.lh-pager .page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 38px; height: 38px; padding: 0 10px;
	background: #fff; color: #111; border-radius: 8px;
	font-weight: 600; font-size: 14px;
}
.lh-pager .page-numbers.current { background: #de0a14; color: #fff; }

/* =========================================================
   PRODUCT PAGE (reference layout, inline styles moved here)
   ========================================================= */
.seccion-producto { margin-top: 150px; width: 100%; }
.contenedor-producto {
	display: flex; flex-wrap: wrap; gap: 40px; justify-content: center;
	align-items: flex-start; max-width: 1400px; margin: 0 auto; padding: 30px 20px;
}
.columna-galeria-producto { flex: 1.2; min-width: 320px; max-width: 750px; width: 100%; }
.contenedor-titulo-tags-celular { display: none; }
.contenedor-galeria-interno { display: flex; gap: 20px; align-items: flex-start; width: 100%; }
.lh-thumbs-col { flex-shrink: 0; }
.contenedor-miniaturas {
	display: flex; flex-direction: column; gap: 14px;
	max-height: 454px; overflow-y: auto; padding-right: 6px;
}
.contenedor-miniaturas::-webkit-scrollbar { width: 5px; }
.contenedor-miniaturas::-webkit-scrollbar-thumb { background: #ccc; border-radius: 10px; }
.boton-miniatura-producto {
	background: #fff; border: 2px solid #ddd; padding: 4px; cursor: pointer;
	border-radius: 8px; transition: border-color .2s; flex-shrink: 0; display: block;
}
.boton-miniatura-producto.active { border-color: #000; }
.img-miniatura-archivo { width: 100px; height: 100px; object-fit: cover; display: block; border-radius: 6px; }
.lh-main-image { flex-grow: 1; min-width: 0; position: relative; }
.wrap-lupa-efecto {
	position: relative; width: 100%; border-radius: 8px; overflow: hidden;
	background: #fff; box-shadow: 0 4px 15px rgba(0,0,0,.06); cursor: default;
}
.img-lupa-base { width: 100%; height: auto; max-height: 850px; object-fit: contain; display: block; margin: 0 auto; }
.lh-legal-notice { margin: 8px 0 0 2px; font-size: 11px; color: #999; font-style: italic; letter-spacing: .2px; }

.contenedor-informacion-producto {
	flex: 0.8; min-width: 300px; max-width: 480px; width: 100%;
	display: flex; flex-direction: column; gap: 16px; background: #fff; padding: 10px 0;
}
.lh-info__label { font-size: 11px; text-transform: uppercase; letter-spacing: 1px; color: #777; display: block; margin-bottom: 4px; font-weight: 600; }
.nombre-producto { font-size: 1.5rem; line-height: 1.25; margin: 0 0 10px; font-weight: 700; color: #111; }
.lh-sku-row { display: flex; justify-content: flex-end; }
.lh-sku { font-size: 13px; font-weight: 600; color: #555; background: #f0f0f0; padding: 4px 9px; border-radius: 4px; letter-spacing: .5px; }

.lh-price-box { padding: 12px 14px; background: #fcfcfc; border: 1px solid #eaeaea; border-radius: 8px; border-top: 1px solid #eee; }
.lh-price-line { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.lh-price-main { font-size: 1.7rem; font-weight: 800; color: #111; }
.lh-price-old { font-size: 1rem; text-decoration: line-through; color: #999; }
.lh-price-saving { font-size: 11px; background: #e6f4ea; color: #137333; padding: 2px 6px; border-radius: 4px; font-weight: 600; }

.lh-shipping { display: flex; flex-direction: column; gap: 6px; font-size: 12px; color: #555; padding-top: 4px; }
.lh-shipping__row { display: flex; align-items: center; gap: 8px; }
.lh-shipping__ico { font-size: 14px; }

.lh-description { border-top: 1px solid #eee; padding-top: 12px; }
.lh-description__title { font-size: 12px; font-weight: 700; color: #111; margin: 0 0 4px; }
.lh-description__body { font-size: 12px; color: #666; line-height: 1.5; max-height: 110px; overflow-y: auto; }
.lh-description__body table { width: 100%; border-collapse: collapse; }
.lh-description__body td { font-size: 12px; }
.lh-description__body p { margin: 0 0 6px; }

.lh-buy-area { width: 100%; padding-top: 6px; }
.lh-buy-buttons { display: flex; gap: 10px; }
.lh-add-to-cart {
	flex: 1; background: #111; color: #fff; border: none; border-radius: 6px;
	padding: 15px; font-size: 14px; font-weight: 600; cursor: pointer;
	box-shadow: 0 4px 12px rgba(0,0,0,.15); transition: background .2s;
}
.lh-add-to-cart:hover:not([disabled]) { background: #333; }
.lh-add-to-cart[disabled] { opacity: .5; cursor: not-allowed; }
.lh-buy-now {
	flex: 0 0 42%; background: #de0a14; color: #fff; border: none; border-radius: 6px;
	padding: 15px; font-size: 14px; font-weight: 600; cursor: pointer;
	box-shadow: 0 4px 12px rgba(0,0,0,.15); transition: background .2s;
}
.lh-buy-now:hover:not([disabled]) { background: #b31114; }
.lh-buy-now[disabled] { opacity: .5; cursor: not-allowed; }
.lh-variations { display: flex; flex-direction: column; gap: 10px; margin-bottom: 10px; }
.lh-variation { display: flex; align-items: center; gap: 10px; font-size: 13px; color: #333; }
.lh-variation select { padding: 8px 10px; border: 1px solid #ddd; border-radius: 6px; background: #fff; }

/* =========================================================
   CART / CHECKOUT / ACCOUNT keep the default Woo markup,
   just clear the absolute header.
   ========================================================= */
.lh-body.woocommerce-cart .lh-page,
.lh-body.woocommerce-checkout .lh-page,
.lh-body.woocommerce-account .lh-page {
	width: 100%; max-width: 1200px; margin: 0 auto; padding: 170px 20px 80px;
}
.lh-page h1 { font-size: 32px; font-weight: 700; margin: 0 0 24px; }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media screen and (max-width: 1024px) {
	.productos-coleccion-troncoso { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.contenedor-productos-favoritos-troncoso { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.coleccion-troncoso-wrapper { padding: 110px 14px 30px; }
	.coleccion-troncoso { padding: 32px 18px 42px; }
}

@media screen and (max-width: 768px) {
	.seccion-producto { margin-top: 96px; }
	.contenedor-producto { gap: 20px; padding: 10px 14px 30px; }
	.columna-galeria-producto { display: flex; flex-direction: column-reverse; }
	.contenedor-titulo-tags-celular { display: block; margin-bottom: 6px; }
	.contenedor-tag-producto-celular { display: flex; align-items: center; gap: 8px; }
	.nombre-producto { display: none; }
	.nombre-producto-celular { font-size: 1.2rem; line-height: 1.3; margin: 6px 0 10px; font-weight: 700; }
	.tag-producto { background: #111; color: #fff; font-size: 10px; padding: 3px 8px; border-radius: 3px; letter-spacing: .5px; margin: 0; }
	.tag-producto-secundario { color: #777; font-size: 11px; margin: 0; }
	.lh-thumbs-col { display: none; }
	.contenedor-galeria-interno { display: block; }
	.lh-info { margin-top: 10px; }
	.lh-buy-buttons { flex-direction: column; }
	.lh-buy-now { flex: 1; }
	.lh-body.woocommerce-cart .lh-page,
	.lh-body.woocommerce-checkout .lh-page,
	.lh-body.woocommerce-account .lh-page { padding: 120px 16px 60px; }
}

@media screen and (max-width: 480px) {
	.productos-coleccion-troncoso { gap: 14px; }
	.contenedor-productos-favoritos-troncoso { gap: 20px 12px; }
}

/* ---------- “Nuevos productos” panel (reference gray card) ---------- */
.lh-nuevos { background-color: #e0dddd; }
.lh-nuevos .h2-secciones-index { color: #1e2822; font-size: 35px; font-weight: 700; }
.lh-nuevos .descripcion-seccion-favoritos { color: #6c706b; font-size: 16px; }
.lh-nuevos .producto-favoritos-troncoso-titulo { font-size: 15px; font-weight: 700; }
.lh-nuevos .producto-favoritos-troncoso-precio { font-size: 16px; font-weight: 400; }
.lh-nuevos .producto-favoritos-troncoso-precio-tachado { font-size: 13px; }
.lh-nuevos .tarjeta-producto-favoritos-troncoso { background: transparent; }

/* Empty cart keeps the header identical to the reference (two icons). */
.contenedor-carrito-header.lh-cart-empty { display: none; }
