/* ==========================================================================
   Sitio — Cecinas Serrot: cabecera, pie, portada y páginas de contenido.
   Colores y medidas: variables de style.css.
   ========================================================================== */

/* --- Aviso superior ------------------------------------------------------- */
.serrot-aviso {
	background: var(--serrot-acento);
	color: var(--serrot-blanco);
	font-size: var(--serrot-texto-sm);
	font-weight: 600;
}
.serrot-aviso-fila {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--serrot-esp-4);
	min-height: 36px;
}
.serrot-aviso p { margin: 0; }
.serrot-aviso a { color: var(--serrot-blanco); text-decoration-color: rgba(255, 255, 255, 0.6); white-space: nowrap; }
.serrot-aviso a:hover { color: var(--serrot-blanco); }

/* --- Cabecera ------------------------------------------------------------- */
.serrot-cabecera {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: var(--serrot-tinta);
	color: var(--serrot-texto-claro);
}
.admin-bar .serrot-cabecera { top: 32px; }
@media (max-width: 782px) { .admin-bar .serrot-cabecera { top: 0; } }
.serrot-cabecera-fila {
	display: flex;
	align-items: center;
	gap: var(--serrot-esp-6);
	min-height: 72px;
}
.serrot-marca { display: flex; flex-direction: column; text-decoration: none; color: var(--serrot-texto-claro); margin-right: auto; }
.serrot-marca:hover { color: var(--serrot-texto-claro); }
.serrot-marca-nombre {
	font-family: var(--serrot-fuente-titulos);
	font-weight: 800;
	font-size: 1.375rem;
	letter-spacing: -0.02em;
	line-height: 1.1;
	margin: 0;
}
.serrot-marca-bajada { font-size: 0.6875rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--serrot-texto-claro-2); }

.serrot-menu { display: flex; align-items: center; }
.serrot-menu-lista { display: flex; gap: var(--serrot-esp-6); list-style: none; margin: 0; padding: 0; }
.serrot-menu-lista a {
	display: inline-flex;
	align-items: center;
	min-height: var(--serrot-toque);
	color: var(--serrot-texto-claro);
	font-weight: 500;
	text-decoration: none;
	border-bottom: 2px solid transparent;
}
.serrot-menu-lista a:hover,
.serrot-menu-lista a[aria-current="page"],
.serrot-menu-lista .current-menu-item > a { color: var(--serrot-blanco); border-bottom-color: var(--serrot-acento); }
.serrot-menu-wa { display: none !important; }

.serrot-cabecera-acciones { display: flex; align-items: center; gap: var(--serrot-esp-3); }
.serrot-cabecera-carrito {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--serrot-toque);
	height: var(--serrot-toque);
	color: var(--serrot-texto-claro);
}
.serrot-cabecera-carrito:hover { color: var(--serrot-blanco); }
.serrot-carrito-cuenta {
	position: absolute;
	top: 2px;
	right: 0;
	min-width: 20px;
	height: 20px;
	padding: 0 5px;
	border-radius: 10px;
	background: var(--serrot-acento);
	color: var(--serrot-blanco);
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 20px;
	text-align: center;
}
.serrot-carrito-cuenta[hidden] { display: none; }
.serrot-cabecera-wa { min-height: 42px; padding: 0 var(--serrot-esp-4); font-size: 0.9375rem; }
.serrot-icono { width: 22px; height: 22px; flex: none; }
.serrot-menu-boton {
	display: none;
	width: var(--serrot-toque);
	height: var(--serrot-toque);
	align-items: center;
	justify-content: center;
	border: 0;
	background: transparent;
	color: var(--serrot-texto-claro);
	cursor: pointer;
}
.serrot-menu-cerrar { display: none; }
.serrot-menu-boton[aria-expanded="true"] .serrot-menu-abrir { display: none; }
.serrot-menu-boton[aria-expanded="true"] .serrot-menu-cerrar { display: inline-flex; }

@media (max-width: 980px) {
	.serrot-menu-boton { display: inline-flex; }
	.serrot-cabecera-wa span { display: none; }
	.serrot-cabecera-wa { width: var(--serrot-toque); padding: 0; }
	.serrot-menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		flex-direction: column;
		align-items: stretch;
		padding: var(--serrot-esp-4) var(--serrot-esp-4) var(--serrot-esp-6);
		background: var(--serrot-tinta);
		border-top: 1px solid var(--serrot-oscuro-2);
		box-shadow: 0 12px 24px rgba(0, 0, 0, 0.25);
	}
	.serrot-menu.is-abierto { display: flex; }
	.serrot-menu-lista { flex-direction: column; gap: 0; }
	.serrot-menu-lista a { width: 100%; font-size: 1.125rem; border-bottom: 1px solid var(--serrot-oscuro-2); }
	.serrot-menu-wa { display: inline-flex !important; margin-top: var(--serrot-esp-4); }
}
@media (max-width: 420px) {
	.serrot-marca-bajada { display: none; }
	.serrot-aviso-fila a { display: none; }
}

/* --- Pie ------------------------------------------------------------------ */
.serrot-pie { padding: var(--serrot-esp-12) 0 var(--serrot-esp-6); font-size: var(--serrot-texto-sm); }
.serrot-pie-grilla { display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: var(--serrot-esp-8); }
.serrot-pie-titulo { font-family: var(--serrot-fuente-texto); font-size: var(--serrot-etiqueta); font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--serrot-acento-claro); margin-bottom: var(--serrot-esp-3); }
.serrot-pie p { color: var(--serrot-texto-claro-2); }
.serrot-pie .serrot-marca-nombre { color: var(--serrot-texto-claro); margin-bottom: var(--serrot-esp-2); }
.serrot-pie-lista { list-style: none; margin: 0; padding: 0; }
.serrot-pie-lista li { padding: 3px 0; }
.serrot-pie a { color: var(--serrot-texto-claro); }
.serrot-pie-final {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: var(--serrot-esp-2);
	margin-top: var(--serrot-esp-8);
	padding-top: var(--serrot-esp-4);
	border-top: 1px solid var(--serrot-oscuro-2);
	font-size: 0.8125rem;
}
.serrot-pie-final p { margin: 0; }
@media (max-width: 860px) { .serrot-pie-grilla { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .serrot-pie-grilla { grid-template-columns: 1fr; } }

/* --- Páginas de contenido (condiciones, recetas, etc.) -------------------- */
.serrot-pagina { padding: var(--serrot-esp-8) 0 var(--serrot-esp-24); }
.serrot-pagina-cabecera { padding-top: var(--serrot-esp-6); padding-bottom: var(--serrot-esp-4); }
.serrot-pagina-cabecera h1 { font-size: clamp(2rem, 1.4rem + 2.4vw, 3rem); max-width: 22ch; }
/* Texto legible: 720 px; las secciones anchas usan alignwide / alignfull */
.serrot-contenido > * {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--serrot-esp-8);
	padding-right: var(--serrot-esp-8);
	box-sizing: content-box;
}
.serrot-contenido > .alignwide { max-width: var(--serrot-ancho); }
.serrot-contenido > .alignfull { max-width: none; padding-left: 0; padding-right: 0; }
@media (max-width: 600px) {
	.serrot-contenido > * { padding-left: var(--serrot-esp-4); padding-right: var(--serrot-esp-4); }
}
.serrot-contenido h2 { font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2rem); margin-top: var(--serrot-esp-8); }
.serrot-contenido h3 { font-size: 1.25rem; margin-top: var(--serrot-esp-6); }
.serrot-contenido li { margin-bottom: var(--serrot-esp-1); }
.serrot-contenido img { display: block; }
.serrot-contenido .wp-block-image { margin-bottom: var(--serrot-esp-6); }
/* Fotos verticales recortadas a un alto razonable */
.serrot-contenido .wp-block-image img { width: 100%; max-height: 520px; object-fit: cover; }
/* El título de las páginas alineado con el texto */
.serrot-articulo .serrot-pagina-cabecera { max-width: 760px; box-sizing: content-box; }
@media (min-width: 601px) { .serrot-articulo .serrot-pagina-cabecera { padding-left: var(--serrot-esp-8); padding-right: var(--serrot-esp-8); } }
.serrot-contenido .wp-block-image figcaption { font-size: var(--serrot-texto-sm); color: var(--serrot-gris-500); margin-top: var(--serrot-esp-2); }
.serrot-listado { display: grid; gap: var(--serrot-esp-4); }
.serrot-listado-item { padding: var(--serrot-esp-6); }

/* --- Portada: secciones ----------------------------------------------------- */
.serrot-portada > .wp-block-group { margin: 0; }
.serrot-seccion { padding: var(--serrot-esp-24) 0; }
.serrot-seccion > .wp-block-group__inner-container,
.serrot-seccion > .serrot-contenedor,
.serrot-franja > .wp-block-group__inner-container,
.serrot-cierre > .wp-block-group__inner-container,
.serrot-ancho {
	width: 100%;
	max-width: calc(var(--serrot-ancho) + 2 * var(--serrot-esp-8));
	margin: 0 auto;
	padding: 0 var(--serrot-esp-8);
}
@media (max-width: 600px) {
	.serrot-seccion { padding: var(--serrot-esp-12) 0; }
	.serrot-seccion > .wp-block-group__inner-container,
	.serrot-seccion > .serrot-contenedor,
	.serrot-franja > .wp-block-group__inner-container,
	.serrot-cierre > .wp-block-group__inner-container,
	.serrot-ancho { padding: 0 var(--serrot-esp-4); }
}
.serrot-seccion-intro { max-width: 640px; }
.serrot-seccion-intro p:last-child { color: var(--serrot-gris-500); font-size: var(--serrot-texto-lg); }
.serrot-oscuro .serrot-seccion-intro p:last-child { color: var(--serrot-texto-claro-2); }
.serrot-seccion h2 { margin-bottom: var(--serrot-esp-4); }
.serrot-seccion .serrot-etiqueta { margin-bottom: var(--serrot-esp-2); }

/* Columnas del editor */
.wp-block-columns { display: flex; flex-wrap: wrap; gap: var(--serrot-esp-8); margin-bottom: 0; }
.wp-block-column { flex: 1 1 0; min-width: 0; }
@media (max-width: 781px) { .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 100% !important; } }

/* Hero */
.serrot-hero { padding: var(--serrot-esp-12) 0 var(--serrot-esp-24); }
.serrot-hero h1 { color: var(--serrot-texto-claro); font-size: var(--serrot-h1); max-width: 13ch; }
.serrot-hero .wp-block-columns { align-items: center; }
.serrot-hero p { color: var(--serrot-texto-claro-2); font-size: var(--serrot-texto-lg); max-width: 34rem; }
.serrot-hero .serrot-hero-nota { font-size: var(--serrot-texto-sm); margin-top: var(--serrot-esp-4); }
.serrot-hero .serrot-etiqueta { font-size: var(--serrot-etiqueta); }
.serrot-hero-foto img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
@media (max-width: 781px) { .serrot-hero { padding-top: var(--serrot-esp-6); } }

.serrot-calendario { background: var(--serrot-crema); color: var(--serrot-tinta); padding: var(--serrot-esp-6); }
.serrot-calendario ul { list-style: none; margin: var(--serrot-esp-2) 0 0; padding: 0; }
.serrot-calendario li { display: flex; justify-content: space-between; gap: var(--serrot-esp-3); padding: var(--serrot-esp-3) 0; border-bottom: 1px solid var(--serrot-gris-200); font-size: 0.9375rem; flex-wrap: wrap; }
.serrot-calendario-nota { margin: var(--serrot-esp-3) 0 0 !important; font-size: 0.8125rem !important; color: var(--serrot-gris-500) !important; }

/* Franja de confianza */
.serrot-franja { padding: var(--serrot-esp-8) 0; border-bottom: 1px solid var(--serrot-gris-200); }
.serrot-franja .wp-block-columns { gap: var(--serrot-esp-6); }
.serrot-franja h3 { font-family: var(--serrot-fuente-texto); font-size: 1rem; font-weight: 700; letter-spacing: 0; margin: 0 0 var(--serrot-esp-1); }
.serrot-franja p { margin: 0; font-size: var(--serrot-texto-sm); color: var(--serrot-gris-500); }

/* Las 3 longanizas */
.serrot-longanizas { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--serrot-esp-6); margin-top: var(--serrot-esp-8); }
.serrot-longaniza { display: flex; flex-direction: column; background: var(--serrot-blanco); border: 1px solid var(--serrot-gris-200); }
.serrot-longaniza-foto { display: block; aspect-ratio: 4 / 3; background: var(--serrot-foto-vacia); overflow: hidden; }
.serrot-longaniza-foto img { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease; }
.serrot-longaniza:hover .serrot-longaniza-foto img { transform: scale(1.03); }
.serrot-longaniza-cuerpo { display: flex; flex-direction: column; flex: 1; padding: var(--serrot-esp-6); }
.serrot-longaniza h3 { font-size: 1.75rem; margin-bottom: var(--serrot-esp-2); }
.serrot-longaniza p { color: var(--serrot-gris-700); }
.serrot-longaniza-desde { margin-top: auto !important; font-size: var(--serrot-texto-sm); color: var(--serrot-gris-500) !important; }
.serrot-longaniza-desde strong { font-family: var(--serrot-fuente-titulos); font-size: 1.75rem; color: var(--serrot-tinta); }
.serrot-longaniza .serrot-boton { width: 100%; margin-top: var(--serrot-esp-2); }
@media (max-width: 860px) { .serrot-longanizas { grid-template-columns: minmax(0, 1fr); } }

/* Tabla de precios */
.serrot-tabla-scroll { overflow-x: auto; margin: var(--serrot-esp-8) 0; border: 1px solid var(--serrot-gris-200); background: var(--serrot-blanco); }
.serrot-tabla { min-width: 680px; font-size: 0.9375rem; }
.serrot-tabla th, .serrot-tabla td { padding: var(--serrot-esp-4); text-align: left; border-bottom: 1px solid var(--serrot-gris-200); vertical-align: top; }
.serrot-tabla thead th { background: var(--serrot-tinta); color: var(--serrot-texto-claro); font-weight: 600; font-size: var(--serrot-texto-sm); }
.serrot-tabla tbody th { font-weight: 700; }
.serrot-tabla td a { font-weight: 700; text-decoration: none; }
.serrot-tabla td a:hover { text-decoration: underline; }
.serrot-tabla-kilo { display: block; font-size: 0.75rem; color: var(--serrot-gris-500); }
.serrot-tabla tbody tr:last-child > * { border-bottom: 0; }

.serrot-caja { padding: var(--serrot-esp-6); height: 100%; }
.serrot-caja.serrot-oscuro { color: var(--serrot-texto-claro); }
.serrot-caja h3 { font-size: 1.375rem; }
.serrot-caja p { margin-bottom: var(--serrot-esp-3); }
.serrot-oscuro .serrot-ahorro-ejemplo { color: var(--serrot-texto-claro-2); }
.serrot-oscuro .serrot-ahorro-ejemplo strong { color: var(--serrot-texto-claro); }

/* Cómo pedir */
.serrot-pasos-grilla .wp-block-column { border-top: 2px solid var(--serrot-tinta); padding-top: var(--serrot-esp-4); }
.serrot-paso-numero {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	margin-bottom: var(--serrot-esp-3) !important;
	background: var(--serrot-acento);
	color: var(--serrot-blanco);
	font-family: var(--serrot-fuente-titulos);
	font-weight: 800;
	font-size: 1.25rem;
}
.serrot-pasos-grilla h3 { font-size: 1.375rem; margin-bottom: var(--serrot-esp-2); }
.serrot-pasos-grilla p { color: var(--serrot-gris-700); }
.serrot-pasos-grilla p.serrot-paso-numero { color: var(--serrot-blanco); }
.serrot-pasos-grilla + .wp-block-buttons { margin-top: var(--serrot-esp-6); }

/* Despacho */
.serrot-despacho { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: var(--serrot-esp-8); margin-top: var(--serrot-esp-8); }
.serrot-despacho-datos { margin: 0; }
/* Sobre fondo claro (condiciones) y sobre oscuro (portada) */
.serrot-despacho-datos > div { padding: var(--serrot-esp-3) 0; border-bottom: 1px solid var(--serrot-gris-200); }
.serrot-despacho-datos dt { font-size: var(--serrot-etiqueta); letter-spacing: 0.12em; text-transform: uppercase; color: var(--serrot-acento-texto); font-weight: 600; }
.serrot-despacho-datos dd { margin: 2px 0 0; color: var(--serrot-tinta); }
.serrot-despacho-comunas { display: grid; gap: var(--serrot-esp-3); }
.serrot-despacho-grupo { display: grid; grid-template-columns: 6rem 1fr; gap: var(--serrot-esp-4); padding: var(--serrot-esp-4); background: var(--serrot-blanco); border: 1px solid var(--serrot-gris-200); }
.serrot-despacho-grupo p { margin: 0; color: var(--serrot-gris-700); }
.serrot-despacho-costo { font-family: var(--serrot-fuente-titulos); font-weight: 800; font-size: 1.375rem; color: var(--serrot-tinta) !important; }
.serrot-oscuro .serrot-despacho-datos > div { border-bottom-color: var(--serrot-oscuro-2); }
.serrot-oscuro .serrot-despacho-datos dt { color: var(--serrot-acento-claro); }
.serrot-oscuro .serrot-despacho-datos dd { color: var(--serrot-texto-claro); }
.serrot-oscuro .serrot-despacho-grupo { background: var(--serrot-oscuro-2); border-color: var(--serrot-oscuro-2); }
.serrot-oscuro .serrot-despacho-grupo p { color: var(--serrot-texto-claro-2); }
.serrot-oscuro .serrot-despacho-costo { color: var(--serrot-texto-claro) !important; }
.serrot-contenido > .serrot-despacho { max-width: 760px; }
@media (max-width: 1100px) { .serrot-contenido .serrot-despacho { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 860px) { .serrot-despacho { grid-template-columns: minmax(0, 1fr); } }

/* Para la casa / para tu negocio */
.serrot-publico { background: var(--serrot-blanco); border: 1px solid var(--serrot-gris-200); height: 100%; display: flex; flex-direction: column; }
.serrot-publico .wp-block-image { margin: 0; }
.serrot-publico .wp-block-image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.serrot-publico-cuerpo { padding: var(--serrot-esp-6); display: flex; flex-direction: column; flex: 1; }
.serrot-publico h3 { font-size: 1.75rem; }
.serrot-publico ul { padding-left: 1.1em; color: var(--serrot-gris-700); }
.serrot-publico .wp-block-buttons { margin-top: auto; }

/* Preguntas frecuentes (bloque "Detalles") */
.serrot-preguntas .wp-block-details {
	background: var(--serrot-blanco);
	border: 1px solid var(--serrot-gris-200);
	margin: 0 0 var(--serrot-esp-2);
	padding: 0;
}
.serrot-preguntas .wp-block-details summary {
	cursor: pointer;
	list-style: none;
	padding: var(--serrot-esp-4) var(--serrot-esp-12) var(--serrot-esp-4) var(--serrot-esp-6);
	font-weight: 700;
	position: relative;
	min-height: var(--serrot-toque);
}
.serrot-preguntas .wp-block-details summary::-webkit-details-marker { display: none; }
.serrot-preguntas .wp-block-details summary::after {
	content: "+";
	position: absolute;
	right: var(--serrot-esp-6);
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.5rem;
	font-weight: 400;
	color: var(--serrot-acento);
}
.serrot-preguntas .wp-block-details[open] summary::after { content: "−"; }
.serrot-preguntas .wp-block-details > *:not(summary) { padding: 0 var(--serrot-esp-6); color: var(--serrot-gris-700); }
.serrot-preguntas .wp-block-details > p:last-child { padding-bottom: var(--serrot-esp-4); }
.serrot-preguntas-lista { max-width: 860px; margin-top: var(--serrot-esp-8); }

/* Cierre */
.serrot-cierre { padding: var(--serrot-esp-12) 0; }
.serrot-cierre > .wp-block-group__inner-container { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--serrot-esp-6); }
.serrot-cierre h2 { margin: 0; color: var(--serrot-texto-claro); font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem); max-width: 22ch; }
.serrot-cierre p { margin: 0; }

/* Contenido en fondo oscuro */
.serrot-oscuro h1, .serrot-oscuro h2, .serrot-oscuro h3 { color: var(--serrot-texto-claro); }
.serrot-oscuro p { color: var(--serrot-texto-claro-2); }

/* --- Recetas ---------------------------------------------------------------- */
.serrot-recetas-cabecera { margin-bottom: var(--serrot-esp-8) !important; }
.serrot-recetas-cabecera h1 { font-size: clamp(2rem, 1.4rem + 2.4vw, 3rem); max-width: 18ch; }
.serrot-recetas-bajada { font-size: var(--serrot-texto-lg); color: var(--serrot-gris-500); max-width: 40rem; }
.serrot-contenido > .serrot-recetas { max-width: var(--serrot-ancho); }
.serrot-recetas { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--serrot-esp-6); margin-bottom: var(--serrot-esp-12); }
.serrot-receta-tarjeta { display: flex; flex-direction: column; background: var(--serrot-blanco); border: 1px solid var(--serrot-gris-200); text-decoration: none; color: var(--serrot-tinta); transition: box-shadow var(--serrot-transicion); }
.serrot-receta-tarjeta:hover { box-shadow: var(--serrot-sombra); color: var(--serrot-tinta); }
.serrot-receta-tarjeta.is-destacada:first-child { grid-column: span 2; }
.serrot-receta-tarjeta-foto { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--serrot-foto-vacia); }
.serrot-receta-tarjeta-foto img { width: 100%; height: 100%; object-fit: cover; }
.serrot-receta-categoria { position: absolute; top: var(--serrot-esp-3); left: var(--serrot-esp-3); padding: var(--serrot-esp-1) var(--serrot-esp-2); background: var(--serrot-acento); color: var(--serrot-blanco); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.serrot-receta-tarjeta-cuerpo { display: flex; flex-direction: column; gap: var(--serrot-esp-2); padding: var(--serrot-esp-6); flex: 1; }
.serrot-receta-tarjeta-titulo { font-family: var(--serrot-fuente-titulos); font-weight: 800; font-size: 1.375rem; line-height: 1.15; letter-spacing: -0.01em; }
.serrot-receta-tarjeta-datos { font-size: var(--serrot-texto-sm); color: var(--serrot-gris-500); }
.serrot-receta-tarjeta-resumen { color: var(--serrot-gris-700); font-size: 0.9375rem; }
.serrot-receta-tarjeta .serrot-enlace-flecha { margin-top: auto; font-weight: 700; text-decoration: underline; text-decoration-color: var(--serrot-acento); }
.serrot-enlace-flecha::after { content: " →"; }
@media (max-width: 860px) {
	.serrot-recetas { grid-template-columns: minmax(0, 1fr); }
	.serrot-receta-tarjeta.is-destacada,
	.serrot-receta-tarjeta.is-destacada:first-child { grid-column: auto; }
}

.serrot-contenido > .serrot-receta-portada { max-width: 960px; }
.serrot-receta-portada img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.serrot-receta-bajada { font-size: var(--serrot-texto-lg); color: var(--serrot-gris-700); }
.serrot-receta-datos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; list-style: none; padding-top: 0 !important; padding-bottom: 0 !important; background: var(--serrot-gris-200); }
.serrot-contenido > .serrot-receta-datos { padding-left: 0; padding-right: 0; border: 1px solid var(--serrot-gris-200); box-sizing: border-box; max-width: 760px; }
.serrot-receta-datos li { margin: 0 !important; padding: var(--serrot-esp-3); background: var(--serrot-blanco); font-size: var(--serrot-texto-sm); color: var(--serrot-gris-500); text-align: center; }
.serrot-receta-datos strong { display: block; font-family: var(--serrot-fuente-titulos); font-size: 1.125rem; color: var(--serrot-tinta); }
@media (max-width: 520px) { .serrot-receta-datos { grid-template-columns: 1fr 1fr; } }
.serrot-receta-ingredientes { background: var(--serrot-blanco); border: 1px solid var(--serrot-gris-200); padding-top: var(--serrot-esp-6) !important; padding-bottom: var(--serrot-esp-4) !important; margin-top: var(--serrot-esp-8); margin-bottom: var(--serrot-esp-6); }
.serrot-receta-ingredientes h2 { margin-top: 0; }
.serrot-receta-ingredientes h2 span { font-family: var(--serrot-fuente-texto); font-size: 1rem; font-weight: 500; color: var(--serrot-gris-500); letter-spacing: 0; }
.serrot-receta-ingredientes h3 { font-size: 1rem; margin-top: var(--serrot-esp-4); }
.serrot-receta-pasos { list-style: none; counter-reset: paso; }
.serrot-receta-pasos li { counter-increment: paso; position: relative; padding-left: 3rem; margin-bottom: var(--serrot-esp-4) !important; color: var(--serrot-gris-700); }
.serrot-receta-pasos li::before { content: counter(paso); position: absolute; left: 0; top: 0; width: 2rem; height: 2rem; display: flex; align-items: center; justify-content: center; background: var(--serrot-acento); color: var(--serrot-blanco); font-family: var(--serrot-fuente-titulos); font-weight: 800; }
.serrot-receta-pasos strong { color: var(--serrot-tinta); }
.serrot-receta-tip { background: var(--serrot-crema-2); border-left: 4px solid var(--serrot-acento); padding-top: var(--serrot-esp-4) !important; padding-bottom: var(--serrot-esp-2) !important; margin-top: var(--serrot-esp-6); margin-bottom: var(--serrot-esp-6); }
.serrot-receta-cta { background: var(--serrot-tinta); color: var(--serrot-texto-claro); padding-top: var(--serrot-esp-8) !important; padding-bottom: var(--serrot-esp-8) !important; margin-top: var(--serrot-esp-12); }
.serrot-receta-cta h2 { color: var(--serrot-texto-claro); margin-top: 0; }
.serrot-receta-cta p { color: var(--serrot-texto-claro-2); }
.serrot-receta-cta .is-style-outline .wp-block-button__link { color: var(--serrot-texto-claro); border-color: var(--serrot-texto-claro); }
.serrot-receta-cta .is-style-outline .wp-block-button__link:hover { color: var(--serrot-tinta); background: var(--serrot-texto-claro); }
.serrot-longanizas-mini { list-style: none; padding: 0 !important; margin: var(--serrot-esp-4) 0 var(--serrot-esp-6); display: grid; gap: var(--serrot-esp-2); }
.serrot-longanizas-mini a { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--serrot-esp-2); padding: var(--serrot-esp-3) var(--serrot-esp-4); background: var(--serrot-oscuro-2); color: var(--serrot-texto-claro); text-decoration: none; }
.serrot-longanizas-mini a:hover { color: var(--serrot-blanco); background: var(--serrot-oscuro-3); }
.serrot-longanizas-mini span { color: var(--serrot-texto-claro-2); font-size: var(--serrot-texto-sm); }

/* ==========================================================================
   Estilo "ahumadero" de la portada
   El fondo es el ahumadero: oscuro, con grano de humo; la foto manda;
   el calendario y la tabla son "papeles" crema clavados encima.
   Misma paleta y tipografías de la marca, a fuerza completa.
   ========================================================================== */

:root {
	--b-fondo: #150F0C;         /* = --serrot-oscuro-3 */
	--b-superficie: #211915;    /* un tono sobre el fondo, para tarjetas */
	--b-linea: #3A2E26;         /* bordes sobre oscuro (placeholder de foto de los mockups) */
	--b-humo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .9 0 0 0 0 .8 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* Superficies del navegador */
::selection { background: var(--serrot-acento); color: var(--serrot-blanco); }
input, textarea { caret-color: var(--serrot-acento); }
html { scrollbar-color: var(--b-linea) var(--b-fondo); }
.serrot-tabla td, .serrot-precio, .serrot-tipo-opcion-precio { font-variant-numeric: tabular-nums; }

/* Marca con el logo del chancho */
.serrot-marca { flex-direction: row; align-items: center; gap: var(--serrot-esp-3); }
.serrot-marca-logo { width: 84px; height: auto; display: block; }
.serrot-marca-textos { display: flex; flex-direction: column; }
.serrot-pie-logo { width: 160px; height: auto; margin-bottom: var(--serrot-esp-3); }
@media (max-width: 520px) { .serrot-marca-logo { width: 64px; } .serrot-marca-nombre { font-size: 1.125rem; } }

/* El suelo del sitio: el ahumadero */
body.home,
.serrot-portada { background: var(--b-fondo) var(--b-humo); color: var(--serrot-texto-claro); }
.serrot-cabecera { background: rgba(21, 15, 12, 0.92); backdrop-filter: saturate(1.2) blur(6px); border-bottom: 1px solid var(--b-linea); }
.serrot-pie { background: #0E0A08 var(--b-humo) !important; }

/* Sin rótulos sobre los títulos */
.serrot-seccion-intro > .serrot-etiqueta,
.serrot-hero .wp-block-column > .serrot-etiqueta:first-child,
.serrot-recetas-cabecera > .serrot-etiqueta,
.serrot-comparacion > .serrot-etiqueta { display: none; }

/* Portada: todas las secciones sobre el oscuro; los fondos claros pasan a ser
   papeles (tabla, calendario, preguntas) */
.serrot-portada .serrot-seccion,
.serrot-portada .serrot-franja,
.serrot-portada .serrot-fondo-crema-2 { background: transparent !important; color: var(--serrot-texto-claro); }
.serrot-portada h1, .serrot-portada h2, .serrot-portada h3 { color: var(--serrot-texto-claro); }
.serrot-portada p, .serrot-portada li { color: var(--serrot-texto-claro-2); }
.serrot-portada a:not(.wp-block-button__link):not(.serrot-boton) { color: var(--serrot-texto-claro); }
.serrot-portada .serrot-etiqueta { color: var(--serrot-acento-claro); }
.serrot-portada .is-style-outline .wp-block-button__link,
.serrot-portada .serrot-boton-borde { color: var(--serrot-texto-claro); border-color: var(--serrot-texto-claro); }
.serrot-portada .is-style-outline .wp-block-button__link:hover,
.serrot-portada .serrot-boton-borde:hover { color: var(--serrot-tinta); background: var(--serrot-texto-claro); }
.serrot-portada h2 { font-size: clamp(2.25rem, 1.3rem + 3.4vw, 3.75rem); max-width: 18ch; letter-spacing: -0.03em; }

/* Hero: la foto del ahumadero a todo el ancho; el texto encima; el calendario
   es un papel clavado abajo a la derecha */
.serrot-hero { position: relative; min-height: min(92vh, 860px); display: flex; align-items: flex-end; padding: var(--serrot-esp-24) 0 var(--serrot-esp-12) !important; overflow: hidden; isolation: isolate; }
.serrot-hero > .wp-block-group__inner-container { position: static; }
.serrot-hero .serrot-hero-foto { position: absolute; inset: 0; margin: 0; z-index: -2; }
.serrot-hero .serrot-hero-foto img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; object-position: 60% 40%; animation: b-humo-entra 1600ms cubic-bezier(.16, 1, .3, 1) both; }
.serrot-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(21, 15, 12, 0.92) 0%, rgba(21, 15, 12, 0.72) 42%, rgba(21, 15, 12, 0.15) 75%), linear-gradient(0deg, rgba(21, 15, 12, 0.9) 0%, rgba(21, 15, 12, 0) 45%); }
@keyframes b-humo-entra { from { transform: scale(1.08); filter: blur(6px) brightness(.7); } to { transform: none; filter: none; } }
@media (prefers-reduced-motion: reduce) { .serrot-hero .serrot-hero-foto img { animation: none; } }
.serrot-hero .wp-block-columns { align-items: flex-end; }
.serrot-hero h1 { font-size: clamp(2.75rem, 1.4rem + 5.4vw, 5.75rem); max-width: 12ch; letter-spacing: -0.035em; line-height: 0.98; text-wrap: balance; }
.serrot-hero p { color: var(--serrot-texto-claro); }
.serrot-hero .serrot-calendario { position: relative; background: var(--serrot-crema) var(--b-humo); transform: rotate(-1.5deg); box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45); max-width: 420px; margin-left: auto; }
.serrot-hero .serrot-calendario::before { content: ""; position: absolute; top: -9px; left: 50%; width: 18px; height: 18px; margin-left: -9px; border-radius: 50%; background: var(--serrot-acento); box-shadow: 0 2px 4px rgba(0, 0, 0, .4); }
.serrot-hero .serrot-calendario p, .serrot-hero .serrot-calendario li { color: var(--serrot-tinta); }
.serrot-hero .serrot-calendario .serrot-etiqueta { color: var(--serrot-acento-texto); }
@media (max-width: 781px) {
	.serrot-hero { min-height: 0; padding-top: 52vw !important; }
	.serrot-hero .serrot-hero-foto { bottom: auto; height: 70vw; }
	.serrot-hero::after { background: linear-gradient(0deg, var(--b-fondo) 0%, var(--b-fondo) calc(100% - 70vw), rgba(21, 15, 12, 0.2) 100%); }
	.serrot-hero .serrot-calendario { transform: none; margin-top: var(--serrot-esp-6); }
}

/* Franja de confianza: una línea de "sellos" sobre el humo */
.serrot-portada .serrot-franja { border-top: 1px solid var(--b-linea); border-bottom: 1px solid var(--b-linea); }
.serrot-portada .serrot-franja h3 { color: var(--serrot-acento-claro); }

/* Longanizas: fotos grandes, sin cajas */
.serrot-portada .serrot-longaniza { background: transparent; border: 0; }
.serrot-portada .serrot-longaniza-foto { aspect-ratio: 3 / 4; }
.serrot-portada .serrot-longaniza-cuerpo { padding: var(--serrot-esp-4) 0 0; }
.serrot-portada .serrot-longaniza h3 { font-size: 2.25rem; }
.serrot-portada .serrot-longaniza-desde strong { color: var(--serrot-texto-claro); }
.serrot-portada .serrot-longaniza-desde { color: var(--serrot-texto-claro-2) !important; }

/* Tabla de precios: un papel crema */
.serrot-portada .serrot-tabla-scroll { background: var(--serrot-crema); border: 0; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.4); }
.serrot-portada .serrot-tabla th, .serrot-portada .serrot-tabla td { color: var(--serrot-tinta); }
.serrot-portada .serrot-tabla td a { color: var(--serrot-tinta); }
.serrot-portada .serrot-tabla thead th { background: var(--serrot-acento); color: var(--serrot-blanco); }
.serrot-portada .serrot-caja.serrot-fondo-blanco { background: var(--b-superficie) !important; border: 1px solid var(--b-linea); }
.serrot-portada .serrot-caja.serrot-oscuro { background: var(--serrot-acento) !important; }
.serrot-portada .serrot-caja.serrot-oscuro .serrot-etiqueta { color: var(--serrot-blanco); }
.serrot-portada .serrot-caja.serrot-oscuro .serrot-ahorro-ejemplo, .serrot-portada .serrot-caja.serrot-oscuro .serrot-ahorro-ejemplo strong { color: var(--serrot-blanco); }

/* Cómo pedir: tres números grandes de brasa */
.serrot-portada .serrot-pasos-grilla .wp-block-column { border-top: 1px solid var(--b-linea); }
.serrot-portada .serrot-paso-numero { width: auto; height: auto; background: transparent; color: var(--serrot-acento-claro) !important; font-size: 4rem; line-height: 1; }
.serrot-portada .serrot-pasos-grilla p { color: var(--serrot-texto-claro-2); }

/* Despacho */
.serrot-portada #despacho { border-top: 1px solid var(--b-linea); }

/* Casa / negocio: dos mitades sin cajas */
.serrot-portada .serrot-publico { background: transparent; border: 0; }
.serrot-portada .serrot-publico-cuerpo { padding: var(--serrot-esp-6) 0 0; }
.serrot-portada .serrot-publico ul { color: var(--serrot-texto-claro-2); }

/* Preguntas: papel crema con separadores */
.serrot-portada .serrot-preguntas-lista { background: var(--serrot-crema); padding: var(--serrot-esp-2) var(--serrot-esp-6) !important; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35); }
.serrot-portada .serrot-preguntas .wp-block-details { background: transparent; border: 0; border-bottom: 1px solid var(--serrot-gris-200); margin: 0; }
.serrot-portada .serrot-preguntas .wp-block-details:last-child { border-bottom: 0; }
.serrot-portada .serrot-preguntas .wp-block-details summary { padding-left: 0; color: var(--serrot-tinta); }
.serrot-portada .serrot-preguntas .wp-block-details summary::after { right: 0; }
.serrot-portada .serrot-preguntas .wp-block-details > *:not(summary) { padding-left: 0; }
.serrot-portada .serrot-preguntas .wp-block-details p { color: var(--serrot-gris-700); }

/* Cierre: una banda de brasa */
.serrot-portada .serrot-cierre { background: var(--serrot-acento) !important; }
.serrot-portada .serrot-cierre .wp-block-button__link { background: var(--serrot-tinta); border-color: var(--serrot-tinta); }
.serrot-portada .serrot-cierre .is-style-outline .wp-block-button__link { background: transparent; border-color: var(--serrot-blanco); color: var(--serrot-blanco); }

/* Corrección: los rótulos van dentro del contenedor interno del grupo */
.serrot-seccion-intro .serrot-etiqueta { display: none; }
/* Corrección B: textos de introducción y precios de la tabla legibles */
.serrot-portada .serrot-seccion-intro p { color: var(--serrot-texto-claro-2) !important; }
.serrot-portada .serrot-tabla-scroll .serrot-tabla td a { color: var(--serrot-tinta); }
.serrot-portada .serrot-tabla-scroll .serrot-tabla-kilo { color: var(--serrot-gris-500); }

/* --- Esquinas redondeadas (pedido del dueño) ------------------------------ */
.serrot-portada .serrot-longaniza-foto,
.serrot-portada .serrot-publico .wp-block-image img,
.serrot-receta-tarjeta, .serrot-receta-portada img, .serrot-contenido .wp-block-image img,
.serrot-tabla-scroll, .serrot-caja, .serrot-calendario, .serrot-despacho-grupo,
.serrot-preguntas-lista, .serrot-receta-ingredientes, .serrot-receta-cta, .serrot-receta-tip,
.serrot-longanizas-mini a, .serrot-bloque { border-radius: var(--serrot-radio); overflow: hidden; }
.serrot-tabla-scroll { overflow-x: auto; } /* la regla de arriba le quitaba el desplazamiento */

/* Tabla de precios en celular: una tarjeta por longaniza, una fila por presentación */
@media (max-width: 640px) {
	.serrot-tabla-scroll { background: transparent !important; border: 0; box-shadow: none !important; border-radius: 0; overflow: visible; }
	.serrot-tabla { min-width: 0; }
	.serrot-tabla thead { display: none; }
	.serrot-tabla, .serrot-tabla tbody, .serrot-tabla tr, .serrot-tabla th, .serrot-tabla td { display: block; width: 100%; }
	.serrot-tabla tr { margin-bottom: var(--serrot-esp-4); background: var(--serrot-crema); border-radius: var(--serrot-radio); overflow: hidden; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25); }
	.serrot-tabla tbody th { padding: var(--serrot-esp-3) var(--serrot-esp-4); background: var(--serrot-acento); color: var(--serrot-blanco) !important; font-size: 1.0625rem; }
	.serrot-tabla td { display: flex; align-items: baseline; justify-content: space-between; gap: var(--serrot-esp-3); padding: var(--serrot-esp-3) var(--serrot-esp-4); text-align: right; }
	.serrot-tabla td::before { content: attr(data-columna); margin-right: auto; text-align: left; font-size: var(--serrot-texto-sm); color: var(--serrot-gris-500); }
	.serrot-tabla td .serrot-tabla-kilo { display: inline; margin-left: var(--serrot-esp-2); }
	.serrot-tabla td.is-vacia { display: none; }
	.serrot-tabla tbody tr > td:last-child { border-bottom: 0; }
}
.serrot-receta-categoria { border-radius: 8px; }
.serrot-hero .serrot-calendario { overflow: visible; }
.serrot-portada .serrot-preguntas-lista { padding-top: var(--serrot-esp-2) !important; }
/* Poppins es más ancha que la tipografía anterior: titulares un poco menores */
.serrot-hero h1 { font-size: clamp(2.4rem, 1.4rem + 3.8vw, 4.25rem); max-width: 14ch; letter-spacing: -0.025em; line-height: 1.05; }
.serrot-portada h2 { font-size: clamp(2rem, 1.3rem + 2.6vw, 3rem); letter-spacing: -0.02em; }
.serrot-receta-datos { border-radius: var(--serrot-radio); overflow: hidden; }


/* --- Pack prueba (tienda y portada) ------------------------------------- */
.serrot-pack { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); margin: var(--serrot-esp-8) auto 0; max-width: var(--serrot-ancho); background: var(--serrot-tinta); color: var(--serrot-texto-claro); border: 1px solid #3A2E26; border-radius: var(--serrot-radio); overflow: hidden; box-shadow: 0 14px 34px rgba(30, 23, 19, 0.18); }
.serrot-pack-foto { display: block; background: var(--serrot-foto-vacia); }
.serrot-pack-foto img { display: block; width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.serrot-pack-cuerpo { display: flex; flex-direction: column; justify-content: center; gap: var(--serrot-esp-3); padding: var(--serrot-esp-8); }
.serrot-pack-cuerpo p { margin: 0; padding: 0; }
.serrot-pack .serrot-etiqueta { color: var(--serrot-acento-claro); }
.serrot-pack-titulo { margin: 0; color: var(--serrot-texto-claro); font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }
.serrot-pack-texto { color: var(--serrot-texto-claro-2); }
.serrot-pack-suelto, .serrot-pack-kilo { font-size: 0.8125rem; color: var(--serrot-texto-claro-2); }
.serrot-pack-total { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--serrot-esp-2); }
.serrot-pack-total .serrot-precio { font-family: var(--serrot-fuente-titulos); font-weight: 800; font-size: 2rem; line-height: 1.1; color: var(--serrot-texto-claro); }
.serrot-pack-total .serrot-ahorro { font-size: var(--serrot-texto-sm); font-weight: 600; color: var(--serrot-acento-claro); }
.serrot-pack-acciones { display: flex; align-items: center; gap: var(--serrot-esp-4); margin: var(--serrot-esp-2) 0 0; }
.serrot-pack-agregar { flex: 1; min-height: 52px; font-size: var(--serrot-texto-lg) !important; }
.serrot-pack-agregar::after { display: none !important; }
.serrot-pack-ficha { font-size: var(--serrot-texto-sm); font-weight: 600; white-space: nowrap; color: var(--serrot-texto-claro); text-decoration-color: var(--serrot-acento-claro); }
.serrot-pack-ficha:hover { color: var(--serrot-texto-claro); }
@media (max-width: 760px) {
	.serrot-pack { grid-template-columns: minmax(0, 1fr); }
	.serrot-pack-cuerpo { padding: var(--serrot-esp-6) var(--serrot-esp-4); }
}
