/* ==========================================================================
   Carnival Meat Lab — Premium (P1 «Sobria» + precios y horario de P2), ajustes estáticos. 2026-11-03.
   Se encola después de global-d3.css (y de home-d3.css en la portada). Tres bloques, para cargarlos por separado:
     1. HOME D3        solo en la portada D3 (cml_d3_pagina_actual()).
     2. TARJETAS       home, tienda, categorías, búsqueda y sugeridos (donde haya .cml-d3-cards).
     3. FICHA          body.single-product.
   Mismo sistema: granate #630d16, crema #f6f1ea, línea #e6e1da, Saira (títulos y cifras), Alfa Slab (solo H1),
   Montserrat (texto). La portada (H1, entrega, foto, franja del costillar) no cambia.
   Los selectores de tarjeta llevan :not(#cml-p) de más para ganar a los de home-d3/global-d3, que ya usan
   :not(#cml-grid):not(#cml-x) con !important.
   ========================================================================== */

/* ==========================================================================
   1. HOME D3
   ========================================================================== */
/* Titulares de sección más grandes y con un poco más de aire entre letras (no índice ni marcas). */
body .cml-d3 h2.cml-t { letter-spacing: .02em; }
body .cml-d3.cml-sec:not(.cml-indice):not(.cml-marcas) h2.cml-t, body .cml-d3.cml-como-d3 h2.cml-t, body .cml-d3.cml-casa h2.cml-t { font-size: 26px; }
body .cml-d3 .cml-sec__bajada { font-size: 14.5px; }
/* Móvil: más separación entre secciones y entre la bajada y las tarjetas. */
@media (max-width: 599px) {
	body .cml-d3.cml-sec:not(.cml-indice):not(.cml-marcas), body .cml-d3.cml-como-d3 { padding-top: 64px !important; }
	body .cml-d3 .cml-sec__bajada, body .cml-d3 .cml-como-d3__intro { margin-bottom: 28px !important; }
	body .cml-d3.cml-casa { margin-top: 56px; padding: 40px 0; }
}
/* Tableta y PC: secciones a 84 px, titulares a 32 px, la casa con más aire y la foto a 380 px. */
@media (min-width: 600px) {
	body .cml-d3.cml-sec:not(.cml-indice):not(.cml-marcas) { padding-top: 84px; }
	body .cml-d3.cml-como-d3 { margin-top: 72px; padding-top: 64px; border-top-color: var(--cml-linea); }
	body .cml-d3.cml-sec:not(.cml-indice):not(.cml-marcas) h2.cml-t, body .cml-d3.cml-como-d3 h2.cml-t, body .cml-d3.cml-casa h2.cml-t { font-size: 32px; }
	body .cml-d3 .cml-sec__bajada { margin-top: 12px !important; }
	body .cml-d3 .cml-sec__ver { margin-top: 40px !important; }
	body .cml-d3.cml-casa { margin-top: 84px; padding: 64px 0; }
	body .cml-d3 .cml-casa__w { gap: 56px; grid-template-columns: 380px 1fr; }
}
/* Horario de «La carnicería» (de P2): la tabla en todos los anchos (antes, en PC, una línea con «·»).
   Días en versalitas (mayúscula pequeña espaciada), horas en Saira con cifras tabulares, filetes de 1 px. */
body .cml-d3 .cml-casa__hor { display: none; }
body .cml-d3 .cml-casa__tabla { display: block; max-width: 380px; margin: 22px 0 0; }
body .cml-d3 .cml-casa__tabla > div { display: flex; justify-content: space-between; align-items: baseline; padding: 10px 0; border-top: 1px solid var(--cml-linea); }
body .cml-d3 .cml-casa__tabla > div:last-child { border-bottom: 1px solid var(--cml-linea); }
body .cml-d3 .cml-casa__tabla dt { font: 600 11.5px/1.2 Montserrat, sans-serif; text-transform: uppercase; letter-spacing: .14em; color: var(--cml-gris); }
body .cml-d3 .cml-casa__tabla dd { margin: 0; font: 800 20px/1 "CML Saira Semi Condensed", "Saira Semi Condensed", "Arial Narrow", sans-serif; font-variant-numeric: tabular-nums lining-nums; color: var(--cml-negro); }

/* ==========================================================================
   2. TARJETAS (.cml-d3-cards ul.products li.product: home, tienda, categorías, búsqueda, sugeridos)
   ========================================================================== */
/* Más aire alrededor y entre tarjetas */
@media (max-width: 599px) {
	body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) { gap: 28px 14px !important; }
}
@media (min-width: 600px) {
	body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) { margin-top: 40px !important; gap: 44px 28px !important; }
}
/* Hueco de la foto en crema (mientras carga o si la foto no es cuadrada) */
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-d3-foto,
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product img { background: #f3eee7 !important; }
/* Nombre a 16 px; nota con un poco más de aire */
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .woocommerce-loop-product__title { margin-top: 14px !important; font-size: 16px !important; letter-spacing: .02em; }
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-d3-nota { margin-top: 4px !important; }
/* Precio en Saira con cifras tabulares (de P2); la unidad («/kg») sigue pequeña, en Montserrat */
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .price.cml-d3-precio {
	margin-bottom: 14px !important;
	padding-top: 6px !important;
	font: 800 19px/1.2 "CML Saira Semi Condensed", "Saira Semi Condensed", "Arial Narrow", sans-serif !important;
	font-variant-numeric: tabular-nums lining-nums;
	letter-spacing: .01em;
}
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .price.cml-d3-precio .cml-price-unit,
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .price.cml-d3-precio del,
body .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-d3-desde { font-family: Montserrat, sans-serif !important; letter-spacing: 0; }
/* El botón de la tarjeta se queda como está (relleno granate).
   OPCIONAL, para probar más adelante: contorno fino que se rellena de granate al pasar el ratón.
   Se activa poniendo la clase .cml-btn-contorno en <body> (filtro body_class) o en el contenedor .cml-d3-cards. */
body.cml-btn-contorno .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-btn,
body .cml-d3-cards.cml-d3-cards.cml-btn-contorno ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-btn {
	border: 1px solid var(--cml-negro) !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--cml-negro) !important;
	letter-spacing: .02em !important;
}
body.cml-btn-contorno .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-btn:hover,
body.cml-btn-contorno .cml-d3-cards.cml-d3-cards ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-btn:focus-visible,
body .cml-d3-cards.cml-d3-cards.cml-btn-contorno ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-btn:hover,
body .cml-d3-cards.cml-d3-cards.cml-btn-contorno ul.products:not(#cml-grid):not(#cml-x):not(#cml-p) > li.product .cml-btn:focus-visible {
	border-color: var(--cml-granate) !important;
	background: var(--cml-granate) !important;
	color: #fff !important;
}

/* ==========================================================================
   3. FICHA (body.single-product)
   ========================================================================== */
/* Título en Saira mayúsculas, como en la home */
body.single-product div.product .product_title { font: 800 30px/1.08 "CML Saira Semi Condensed", "Saira Semi Condensed", "Arial Narrow", sans-serif !important; text-transform: uppercase; letter-spacing: .02em; color: var(--cml-negro) !important; }
/* Precio en Saira grande (de P2); la unidad en Montserrat */
body.single-product div.product .summary .price { font: 800 34px/1.1 "CML Saira Semi Condensed", "Saira Semi Condensed", "Arial Narrow", sans-serif !important; font-variant-numeric: tabular-nums lining-nums; letter-spacing: .01em; }
body.single-product div.product .summary .price .cml-price-unit { font: 400 15px Montserrat, sans-serif !important; }
/* Descripción corta más legible */
body.single-product div.product .woocommerce-product-details__short-description p { max-width: 34em; line-height: 1.75; }
/* Cantidad y botón rectos; el botón algo más alto */
body.single-product div.product form.cart .quantity input { border: 1px solid var(--cml-negro) !important; border-radius: 0 !important; }
body.single-product div.product form.cart .single_add_to_cart_button { min-height: 52px !important; padding: 0 30px !important; border-radius: 0 !important; letter-spacing: .02em; }
/* Caja «cómo cobramos»: sin redondeos ni relleno; números en círculo de línea fina */
body.single-product div.product .cml-buy-info { border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
body.single-product div.product .cml-buy-info__pasos li::before { box-sizing: border-box; border: 1px solid var(--cml-granate); background: transparent !important; color: var(--cml-granate) !important; font-weight: 600 !important; line-height: 20px !important; }
body.single-product div.product .cml-buy-info__sello { border-top-style: solid !important; }
@media (min-width: 900px) { body.single-product div.product .product_title { font-size: 38px !important; } }
