/**
 * Portada y pestaña Maquinaria.
 *
 * Paleta tomada del sitio: el azul del panel del formulario (#3B5D7F) y el rojo de los
 * enlaces del menú (#BE0A0A) como acento.
 */

:root {
	--rm-azul: #3b5d7f;
	--rm-azul-oscuro: #2c465f;
	--rm-acento: #be0a0a;
	--rm-texto: #1a1a1a;
	--rm-suave: #5b6470;
	--rm-borde: #e2e5e9;
	--rm-fondo: #f6f7f9;
	--rm-radio: 6px;
}

/* `width: 100%` no sobra: el contenedor del tema (.site) es flex, y sin ancho explícito
   cada sección se encoge a su contenido — la de categorías quedaba 300 px más angosta
   que la de máquinas. */
.rm-ancho,
.rm-hero {
	width: 100%;
	box-sizing: border-box;
}

.rm-ancho {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
}

.rm-seccion {
	margin: 48px auto;
}

/*
 * Sección apoyada sobre un fondo propio, para cortar la monotonía.
 *
 * La portada venía blanco-blanco-blanco: categorías, máquinas y servicios usaban
 * exactamente el mismo tratamiento —tarjeta blanca, borde #e2e5e9, radio 6— así
 * que se leían como un solo muro largo de cajas iguales y nada indicaba dónde
 * terminaba un tema y empezaba otro.
 *
 * Servicios es lo que cambia de ground: no es maquinaria en venta, es otra cosa,
 * y además cierra la página antes del pie. El padding horizontal se deja en los
 * mismos 20 px que .rm-ancho para que el contenido del panel siga alineado con
 * el de las secciones de arriba; solo crece en vertical.
 *
 * No se usa una banda a ancho completo (100vw) a propósito: ese truco suma la
 * barra de scroll y reintroduce desborde horizontal, que es justo lo que se
 * acaba de corregir en la cabecera.
 */
.rm-seccion--panel {
	padding-top: 34px;
	padding-bottom: 34px;
	border-radius: 10px;
	background: var( --rm-fondo );
}

/* Sobre el fondo gris el borde sobra: la tarjeta ya se recorta sola por
   contraste. Sin él dejan de leerse como una repetición de las de categorías. */
.rm-seccion--panel .rm-categoria {
	border-color: transparent;
}

/*
 * Cabecera de sección: título a la izquierda, botón «Ver todas…» a la derecha.
 *
 * Antes el enlace era texto rojo de 14 px alineado a la línea base, con 15 px de alto de zona
 * táctil, y en el teléfono pasaba a una línea propia bajo el título. Ahora es el botón
 * secundario del sistema (rm-btn--linea, que trae color, borde, hover y foco) y la fila se
 * centra en vertical, para que título y botón compartan eje aunque el título ocupe dos líneas.
 *
 * El título toma el ancho que sobra (flex: 1 1 0) y el botón no se encoge: si el título no
 * cabe, es él quien parte en dos líneas, no el botón el que baja. Por eso no hay flex-wrap,
 * salvo en los títulos muy largos (--larga, más abajo).
 */
.rm-seccion__cabecera {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px 24px;
	/* 16 y no 20: el botón (40 px) es más alto que el título (31 px) y ya aporta ~5 px de
	   aire arriba y abajo, así que la distancia visible al contenido sigue siendo ~20 px. */
	margin-bottom: 16px;
}

.rm-seccion__titulo {
	margin: 0 0 20px;
	font-size: 26px;
	font-weight: 700;
	color: var( --rm-texto );
}

/* Dentro de la cabecera el aire de abajo lo pone la propia cabecera. */
.rm-seccion__cabecera .rm-seccion__titulo {
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
}

/* Enlace de cabecera sin el botón (lo imprime rm-servicios.php en `[rm_servicios_portada]`,
   que la portada ya no usa): conserva el aspecto anterior de texto rojo para que, si algún
   día se vuelve a usar, no quede como un enlace crudo. */
.rm-seccion__link:not( .rm-btn ) {
	color: var( --rm-acento );
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.rm-seccion__link:not( .rm-btn ):hover {
	text-decoration: underline;
}

/* Solo la geometría: color, borde, hover y foco vienen de .rm-btn--linea (diseno.css). Con
   `body .rm-seccion__cabecera` para ganarle a `body .rm-btn` (min-height 44, 15 px) sin
   depender del orden en que carguen las hojas. */
body .rm-seccion__cabecera .rm-seccion__link.rm-btn {
	position: relative;
	flex: none;
	box-sizing: border-box;
	gap: 8px;
	min-height: 40px;
	padding: 0 16px;
	font-size: 14px;
}

body .rm-seccion__cabecera .rm-seccion__link.rm-btn svg {
	width: 16px;
	height: 16px;
	transition: transform 0.12s ease;
}

/* La flecha se adelanta un poco: dice «esto avanza» sin necesidad de un símbolo pegado al texto. */
body .rm-seccion__cabecera .rm-seccion__link.rm-btn:hover svg,
body .rm-seccion__cabecera .rm-seccion__link.rm-btn:focus-visible svg {
	transform: translateX( 3px );
}

/* Desde tablet el botón dice a dónde lleva; en el teléfono queda «Ver todas» y el resto se
   oculta solo a la vista (clip), para que el lector de pantalla lo lea igual. */
.rm-seccion__link-resto {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect( 0 0 0 0 );
	white-space: nowrap;
}

@media ( min-width: 600px ) {
	.rm-seccion__link-resto {
		position: static;
		width: auto;
		height: auto;
		margin: 0;
		overflow: visible;
		clip: auto;
	}
}

/* Teléfono: zona táctil de 44 px y título un punto más chico para que «Máquinas destacadas»
   siga en una línea junto al botón. */
@media ( max-width: 599px ) {
	.rm-seccion__titulo {
		font-size: 22px;
	}

	body .rm-seccion__cabecera .rm-seccion__link.rm-btn {
		min-height: 44px;
		padding: 0 14px;
	}

	/* Título largo (el de noticias, 60 caracteres): junto al botón quedaba en cuatro líneas
	   angostas, así que el botón baja a su propia fila, alineado a la izquierda. */
	.rm-seccion__cabecera--larga {
		flex-wrap: wrap;
	}

	.rm-seccion__cabecera--larga .rm-seccion__titulo {
		flex-basis: 100%;
	}
}

@media ( prefers-reduced-motion: reduce ) {
	body .rm-seccion__cabecera .rm-seccion__link.rm-btn svg {
		transition: none;
	}

	body .rm-seccion__cabecera .rm-seccion__link.rm-btn:hover svg,
	body .rm-seccion__cabecera .rm-seccion__link.rm-btn:focus-visible svg {
		transform: none;
	}
}

/* -------------------------------------------------------------------------
 * Portada: buscador
 *
 * Dos columnas: a la izquierda el azul Acero con el titular y el buscador; a la derecha
 * una foto de un tractor trabajando (subida por ustedes a la biblioteca, de Pexels, sin
 * obligación de atribución). El azul es plano —sin el degradado de antes— porque es el
 * tono de referencia del resto del sitio: el dueño pidió que todo el azul sea este.
 *
 * El borde izquierdo del contenido se alinea con el de las secciones de abajo (1240 px
 * centrados + 20 px de margen), aunque la foto llegue hasta el borde de la pantalla.
 * ---------------------------------------------------------------------- */

.rm-hero {
	display: grid;
	grid-template-columns: minmax( 0, 1fr );
	background: var( --rm-acero );
	color: #fff;
}

/* Con foto: la imagen va de lado a lado (comentario del dueño: «que la imagen de fondo vaya
   de lado a lado en la página, con el buscador encima») y el contenido encima, alineado con
   las secciones de abajo. */
.rm-hero--foto {
	position: relative;
	display: block;
	min-height: 560px;
	overflow: hidden;
}

.rm-hero__contenido {
	box-sizing: border-box;
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding: 52px 20px 60px;
}

.rm-hero--foto .rm-hero__contenido {
	position: relative;
	z-index: 1;
	padding: 56px 20px 64px;
}

/* El buscador ocupa todo el ancho del contenido (comentario del dueño: «estirar el buscador
   para que esté mejor centrado»), con los cuatro filtros en una sola fila en escritorio. */
/* Con `.rm-hero` delante: la regla base de dos columnas está más abajo en este archivo y, a
   igual especificidad, ganaba ella. */
@media ( min-width: 1000px ) {
	.rm-hero .rm-buscador__filtros {
		grid-template-columns: repeat( 4, minmax( 0, 1fr ) );
	}

	.rm-hero .rm-buscador__filtros--dos {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	}
}

.rm-hero__titulo {
	max-width: 15em;
	margin: 0 0 10px;
	color: #fff !important;
	font-size: clamp( 34px, 4.1vw, 56px ) !important;
	font-weight: 800 !important;
	font-stretch: 76% !important;
	line-height: 1.02 !important;
	letter-spacing: -0.01em;
}

.rm-hero__bajada {
	margin: 0 0 30px;
	color: rgba( 255, 255, 255, 0.82 );
	font-size: 18px;
}

.rm-hero__foto {
	position: absolute;
	inset: 0;
	z-index: 0;
}

/* Velo azul Acero a la izquierda, donde van el titular y el buscador, que se desvanece hacia la
   derecha, donde está el tractor: es lo que hace legible el texto blanco sobre el cielo. */
.rm-hero__foto::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient( 90deg, rgba( 27, 58, 79, 0.94 ) 0%, rgba( 27, 58, 79, 0.82 ) 38%, rgba( 27, 58, 79, 0.25 ) 68%, rgba( 27, 58, 79, 0 ) 100% );
}

.rm-hero__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	/* El tractor está algo a la derecha del centro de la foto y el cielo arriba: así queda
	   la máquina entera y no una franja de cielo. */
	object-position: 55% 75%;
}

/* Pestañas pegadas al panel, como las de una carpeta: la activa es del mismo blanco que el
   panel y se funde con él. */
.rm-buscador__pestanas {
	display: flex;
	gap: 4px;
}

body .rm-buscador__pestanas [ role="tab" ] {
	min-height: 46px;
	margin: 0;
	padding: 0 22px;
	border: 0;
	border-radius: 4px 4px 0 0;
	/* Sólida y clara, no translúcida: sobre la foto, el blanco al 14 % no se distinguía del
	   fondo y la pestaña de Servicios pasaba inadvertida. La activa queda en blanco puro,
	   pegada al panel. */
	background: var( --rm-acero-claro );
	color: var( --rm-acero );
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
}

body .rm-buscador__pestanas [ role="tab" ]:hover {
	background: #fff;
}

body .rm-buscador__pestanas [ aria-selected="true" ],
body .rm-buscador__pestanas [ aria-selected="true" ]:hover {
	background: #fff;
	color: var( --rm-acero );
}

.rm-buscador__panel {
	display: grid;
	gap: 16px;
	padding: 22px;
	border-radius: 0 4px 4px 4px;
	background: #fff;
	color: var( --rm-tinta );
}

.rm-buscador__panel[ hidden ] {
	display: none;
}

.rm-buscador__texto input {
	box-sizing: border-box;
	width: 100%;
	height: 54px;
	padding: 0 16px 0 48px;
	border: 1px solid var( --rm-linea );
	border-radius: 4px;
	color: var( --rm-tinta );
	font-size: 17px;
	background: #fff url( "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cg fill='none' stroke='%235e6975' stroke-width='2'%3E%3Ccircle cx='8.5' cy='8.5' r='6'/%3E%3Cpath d='M13 13l5 5'/%3E%3C/g%3E%3C/svg%3E" ) no-repeat 16px center;
	background-size: 19px 19px;
}

.rm-buscador__texto input:focus {
	border-color: var( --rm-acero );
}

.rm-buscador__filtros {
	display: grid;
	grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	gap: 14px 12px;
}

.rm-buscador__campo label {
	display: block;
	margin-bottom: 5px;
	color: var( --rm-gris );
	font-size: 13px;
	font-weight: 600;
}

.rm-buscador select {
	box-sizing: border-box;
	width: 100%;
	height: 46px;
	padding: 0 36px 0 12px;
	border: 1px solid var( --rm-linea );
	border-radius: 4px;
	background-color: #fff;
	background-image: url( "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%235e6975' stroke-width='1.5' d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E" );
	background-repeat: no-repeat;
	background-position: right 13px center;
	background-size: 12px 8px;
	color: var( --rm-tinta );
	font-size: 15px;
	appearance: none;
}

.rm-buscador select:focus {
	border-color: var( --rm-acero );
}

.rm-buscador select:disabled {
	background-color: var( --rm-hormigon );
	color: var( --rm-gris );
	cursor: not-allowed;
}

.rm-buscador__pie {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 22px;
	margin-top: 2px;
}

body .rm-buscador__enviar {
	min-height: 52px;
	padding: 0 30px;
	font-size: 16px;
}

.rm-buscador__todas {
	color: var( --rm-acero ) !important;
	font-size: 15px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.rm-buscador__todas:hover {
	color: var( --rm-oxido ) !important;
}

/* Visible para el lector de pantalla, no para el ojo: el campo de texto se explica solo
   con su placeholder, pero sin etiqueta queda sin nombre accesible. */
.rm-oculto {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect( 0, 0, 0, 0 );
	white-space: nowrap;
	border: 0;
}

.rm-boton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 44px;
	padding: 0 28px;
	border: 0;
	border-radius: 4px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.rm-boton--grande {
	height: 54px;
	padding: 0 40px;
	font-size: 17px;
}

.rm-boton--principal {
	background: var( --rm-oxido );
	color: #fff;
}

.rm-boton--principal:hover {
	background: var( --rm-oxido-hover );
}

/* En tableta la foto roba ancho que el buscador necesita: se retira y el azul ocupa todo. */
@media ( max-width: 900px ) {
	.rm-hero--foto {
		min-height: 0;
	}

	/* En pantallas angostas el buscador tapa todo el ancho: la foto queda de fondo bajo un velo
	   parejo. */
	.rm-hero__foto::after {
		background: rgba( 27, 58, 79, 0.84 );
	}

	.rm-hero--foto .rm-hero__contenido,
	.rm-hero__contenido {
		padding: 32px 20px 36px;
	}

	.rm-hero__bajada {
		margin-bottom: 22px;
		font-size: 16px;
	}
}

@media ( max-width: 560px ) {
	.rm-hero--foto .rm-hero__contenido,
	.rm-hero__contenido {
		padding: 26px 12px 28px;
	}

	.rm-buscador__panel {
		padding: 16px;
	}

	.rm-buscador__filtros {
		grid-template-columns: minmax( 0, 1fr );
	}

	body .rm-buscador__pestanas [ role="tab" ] {
		flex: 1;
		padding: 0 12px;
	}

	body .rm-buscador__enviar {
		width: 100%;
	}
}

/* -------------------------------------------------------------------------
 * Barra de noticias (ticker)
 * ---------------------------------------------------------------------- */

.rm-ticker {
	display: flex;
	align-items: stretch;
	overflow: hidden;
	background: var( --rm-azul-oscuro );
}

.rm-ticker__etiqueta {
	display: flex;
	align-items: center;
	flex: none;
	padding: 10px 20px;
	background: var( --rm-acento );
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	white-space: nowrap;
}

.rm-ticker__pista-contenedor {
	flex: 1;
	min-width: 0;
	overflow: hidden;
}

.rm-ticker__pista {
	display: flex;
	width: max-content;
	animation-name: rm-ticker-desplazar;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

/* Se pausa al pasar el mouse: si algo llama la atención, da tiempo a hacer clic. */
.rm-ticker:hover .rm-ticker__pista {
	animation-play-state: paused;
}

.rm-ticker__item {
	display: flex;
	align-items: center;
	flex: none;
	padding: 10px 26px;
	border-right: 1px solid rgba( 255, 255, 255, 0.15 );
	color: rgba( 255, 255, 255, 0.92 );
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
}

.rm-ticker__item:hover {
	color: #fff;
	text-decoration: underline;
}

@keyframes rm-ticker-desplazar {
	from {
		transform: translateX( 0 );
	}
	to {
		/* La lista está duplicada en el HTML: -50% recorre exactamente una vuelta y
		   el corte cae en el mismo punto donde arranca la copia — sin salto visible. */
		transform: translateX( -50% );
	}
}

/* Quien pidió menos movimiento no ve una cinta corriendo sola: se cambia por una fila
   que se puede recorrer arrastrando o con el trackpad, a su propio ritmo. */
@media ( prefers-reduced-motion: reduce ) {
	.rm-ticker__pista {
		animation: none;
		overflow-x: auto;
	}
}

@media ( max-width: 600px ) {
	.rm-ticker__etiqueta {
		padding: 10px 14px;
		font-size: 11px;
	}

	.rm-ticker__item {
		padding: 10px 18px;
		font-size: 13px;
	}
}

/* -------------------------------------------------------------------------
 * Categorías (y rubros de servicio, con la misma tarjeta)
 *
 * Cada tarjeta empieza con una muestra de color —la pintura de esa familia de máquinas—
 * con el icono grande encima, como las cartas de colores de un catálogo. Después el
 * nombre en la grotesca condensada de los titulares, el conteo, tres subcategorías y el
 * enlace al resto. Toda la cabecera es un solo enlace: el blanco de clic es grande, que
 * importa en el teléfono.
 * ---------------------------------------------------------------------- */

.rm-grilla-categorias {
	display: grid;
	grid-template-columns: repeat( 6, minmax( 0, 1fr ) );
	gap: 14px;
}

/* Ocho rubros de servicio con nombres largos ("Insumos y Alimentación Animal"): en seis
   columnas el título se parte en cuatro líneas. */
.rm-grilla-categorias--servicios {
	grid-template-columns: repeat( 4, minmax( 0, 1fr ) );
}

.rm-categoria {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var( --rm-linea );
	border-radius: 4px;
	background: #fff;
	transition: border-color 0.12s ease;
}

.rm-categoria:hover {
	border-color: var( --rm-acero );
}

.rm-categoria__cabecera {
	display: flex;
	flex-direction: column;
	padding: 0 0 4px;
	color: var( --rm-tinta ) !important;
	text-decoration: none !important;
}

.rm-categoria__muestra {
	display: flex;
	align-items: flex-end;
	height: 84px;
	margin-bottom: 14px;
	padding: 0 16px 12px;
	background: var( --rm-pintura, var( --rm-acero ) );
	color: var( --rm-pintura-icono, #fff );
}

/* Sirve para las dos formas de icono: el glifo SVG propio y el <img> heredado de los
   términos que todavía traigan una imagen cargada a mano. */
.rm-categoria__muestra svg,
.rm-categoria__muestra img {
	width: 40px;
	height: 40px;
	object-fit: contain;
	flex: none;
}

.rm-categoria__muestra svg {
	color: inherit;
}

/* Con ilustración (Nano Banana): la imagen ocupa toda la muestra en 2:1. Su fondo se llevó al
   color exacto de la familia, así que se funde con la pintura de la tarjeta. */
.rm-categoria__muestra--ilustracion {
	display: block;
	height: auto;
	aspect-ratio: 2 / 1;
	padding: 0;
}

.rm-categoria__muestra--ilustracion .rm-categoria__ilustracion {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.rm-categoria__nombre {
	padding: 0 16px;
	font-size: 19px;
	font-weight: 750;
	font-stretch: 82%;
	line-height: 1.12;
}

.rm-categoria__cabecera:hover .rm-categoria__nombre {
	color: var( --rm-oxido );
}

.rm-categoria__conteo {
	margin-top: 4px;
	padding: 0 16px;
	color: var( --rm-gris );
	font-size: 14px;
	font-variant-numeric: tabular-nums;
}

.rm-categoria__ramas {
	flex: 1;
	margin: 10px 0 0;
	padding: 10px 16px 0;
	border-top: 1px solid var( --rm-hormigon );
	list-style: none;
}

.rm-categoria__ramas li {
	margin: 0 0 6px;
	line-height: 1.3;
}

.rm-categoria__ramas a {
	color: var( --rm-tinta ) !important;
	font-size: 14px;
	text-decoration: none;
}

.rm-categoria__ramas a:hover {
	color: var( --rm-oxido ) !important;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.rm-categoria__todas {
	margin: 6px 16px 16px;
	color: var( --rm-oxido ) !important;
	font-size: 14px;
	font-weight: 650;
	text-decoration: none;
}

.rm-categoria__todas:hover {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Las líneas bajo el título quedaban a distinta altura: unos nombres ocupan una línea y otros
   dos. Con subgrid, las tres partes de cada tarjeta (cabecera, subcategorías, enlace) usan las
   filas de la grilla y se alinean con las de las tarjetas vecinas. En el teléfono la tarjeta es
   una fila y no hace falta. */
@media ( min-width: 701px ) {
	.rm-categoria {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 3;
		row-gap: 0;
	}
}

@media ( max-width: 1100px ) {
	.rm-grilla-categorias {
		grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	}
}

/* En el teléfono la tarjeta pasa a ser una fila: muestra a la izquierda, texto a la
   derecha. Seis tarjetas de 300 px de alto una debajo de otra eran dos pantallas de
   scroll para llegar a las máquinas. */
@media ( max-width: 700px ) {
	.rm-grilla-categorias,
	.rm-grilla-categorias--servicios {
		grid-template-columns: minmax( 0, 1fr );
		gap: 8px;
	}

	.rm-categoria__cabecera {
		display: grid;
		grid-template-columns: 64px minmax( 0, 1fr );
		grid-template-rows: auto auto;
		column-gap: 14px;
		align-items: center;
		padding: 0;
	}

	.rm-categoria__muestra {
		grid-row: 1 / 3;
		justify-content: center;
		align-items: center;
		height: 64px;
		margin: 0;
		padding: 0;
	}

	.rm-categoria__muestra svg,
	.rm-categoria__muestra img {
		width: 32px;
		height: 32px;
	}

	.rm-categoria__nombre,
	.rm-categoria__conteo {
		padding: 0 12px 0 0;
	}

	.rm-categoria__nombre {
		align-self: end;
		font-size: 17px;
	}

	.rm-categoria__conteo {
		align-self: start;
		margin-top: 2px;
		font-size: 13px;
	}

	.rm-categoria__ramas,
	.rm-categoria__todas {
		display: none;
	}

	/* La ilustración es apaisada: en la fila del teléfono va a 112×56 en vez del cuadrado del
	   icono, para que la máquina se vea entera. */
	.rm-categoria__cabecera:has( .rm-categoria__muestra--ilustracion ) {
		grid-template-columns: 112px minmax( 0, 1fr );
	}

	.rm-categoria__muestra--ilustracion {
		height: 56px;
	}

	/* Sin conteo, el nombre se centra en la altura de la muestra. */
	.rm-categoria__cabecera:not( :has( .rm-categoria__conteo ) ) .rm-categoria__nombre {
		grid-row: 1 / 3;
		align-self: center;
	}
}

@media ( prefers-reduced-motion: reduce ) {
	.rm-categoria {
		transition: none;
	}
}

/* -------------------------------------------------------------------------
 * Tarjetas de máquina
 * ---------------------------------------------------------------------- */

.rm-grilla-tarjetas {
	display: grid;
	grid-template-columns: repeat( 4, minmax( 0, 1fr ) );
	gap: 18px;
}

.rm-tarjeta {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var( --rm-borde );
	border-radius: var( --rm-radio );
	background: #fff;
	color: var( --rm-texto );
	text-decoration: none;
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.rm-tarjeta:hover {
	box-shadow: 0 6px 18px rgba( 0, 0, 0, 0.09 );
	transform: translateY( -2px );
}

.rm-tarjeta__foto {
	position: relative;
	aspect-ratio: 4 / 3;
	background: var( --rm-fondo );
}

.rm-tarjeta__foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Todas las fotos del mismo tamaño: la imagen se saca del cálculo de alto de su caja (queda
   absoluta dentro de ella), porque con `aspect-ratio` una foto más alta que 4:3 estiraba la
   caja (medido: 285×236 en vez de 285×213). */
.rm-tarjeta .rm-tarjeta__foto {
	overflow: hidden;
}

.rm-tarjeta .rm-tarjeta__foto img {
	position: absolute;
	inset: 0;
}

.rm-tarjeta__sinfoto {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #a7aeb6;
	font-size: 14px;
}

.rm-tarjeta__cuerpo {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 14px;
}

.rm-tarjeta__titulo {
	margin: 0 0 6px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
}

.rm-tarjeta__precio {
	margin-bottom: 10px;
	font-size: 19px;
	font-weight: 700;
	color: var( --rm-azul );
}

.rm-tarjeta__precio--consultar {
	font-size: 15px;
	color: var( --rm-suave );
}

.rm-tarjeta__datos {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	margin: 0 0 10px;
	padding: 0;
	list-style: none;
	flex: 1;
}

.rm-tarjeta__datos li {
	padding: 2px 8px;
	border-radius: 3px;
	background: var( --rm-fondo );
	color: var( --rm-suave );
	font-size: 12px;
}

.rm-tarjeta__lugar {
	color: var( --rm-suave );
	font-size: 13px;
}

@media ( max-width: 1000px ) {
	.rm-grilla-tarjetas {
		grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	}
}

@media ( max-width: 760px ) {
	.rm-grilla-tarjetas {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	}
}

@media ( max-width: 460px ) {
	.rm-grilla-tarjetas {
		grid-template-columns: minmax( 0, 1fr );
	}
}

/* -------------------------------------------------------------------------
 * Anuncios
 * ---------------------------------------------------------------------- */

.rm-anuncios {
	display: grid;
	gap: 16px;
	margin: 36px auto;
	grid-template-columns: repeat( auto-fit, minmax( 280px, 1fr ) );
}

.rm-anuncios--listado {
	grid-template-columns: minmax( 0, 1fr );
	margin: 20px 0;
	padding: 0;
}

.rm-anuncio {
	position: relative;
	display: block;
	overflow: hidden;
	border: 1px solid var( --rm-borde );
	border-radius: var( --rm-radio );
	background: var( --rm-fondo );
}

.rm-anuncio img {
	width: 100%;
	height: auto;
	display: block;
}

/* Publicidad marcada como tal: es lo correcto y además evita reclamos. */
.rm-anuncios__etiqueta {
	position: absolute;
	top: 6px;
	right: 6px;
	padding: 2px 7px;
	border-radius: 3px;
	background: rgba( 0, 0, 0, 0.55 );
	color: #fff;
	font-size: 10px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

/* -------------------------------------------------------------------------
 * Noticias
 * ---------------------------------------------------------------------- */

.rm-grilla-noticias {
	display: grid;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: 18px;
}

.rm-nota {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var( --rm-borde );
	border-radius: var( --rm-radio );
	background: #fff;
	color: var( --rm-texto );
	text-decoration: none;
}

.rm-nota:hover {
	box-shadow: 0 6px 18px rgba( 0, 0, 0, 0.09 );
}

.rm-nota__foto {
	position: relative;
	aspect-ratio: 16 / 9;
	background: var( --rm-fondo );
}

.rm-nota__foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.rm-nota__cuerpo {
	padding: 16px;
}

.rm-nota__fecha {
	color: var( --rm-suave );
	font-size: 12px;
}

.rm-nota__titulo {
	margin: 6px 0 8px;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
}

.rm-nota__resumen {
	margin: 0;
	color: var( --rm-suave );
	font-size: 14px;
	line-height: 1.5;
}

@media ( max-width: 860px ) {
	.rm-grilla-noticias {
		grid-template-columns: minmax( 0, 1fr );
	}
}

/* -------------------------------------------------------------------------
 * Carrusel de noticias
 * ---------------------------------------------------------------------- */

.rm-carrusel {
	position: relative;
}

.rm-carrusel__pista {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: 300px;
	gap: 18px;
	margin: 0;
	/* El relleno vertical deja lugar a la sombra del hover, que si no queda cortada por
	   el propio overflow del carril. */
	padding: 4px 0 14px;
	list-style: none;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
}

.rm-carrusel__item {
	scroll-snap-align: start;
}

.rm-carrusel__item > .rm-nota {
	height: 100%;
}

.rm-nota--carrusel .rm-nota__cuerpo {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 14px;
}

.rm-nota__meta {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var( --rm-suave );
	font-size: 12px;
}

/* De dónde salió la nota, cuando el enlace va a un sitio externo: quien hace clic tiene
   derecho a saber que se va del sitio. */
.rm-nota__fuente {
	padding: 1px 7px;
	border-radius: 20px;
	background: var( --rm-fondo );
	font-weight: 600;
}

.rm-nota--carrusel .rm-nota__titulo {
	font-size: 16px;
}

.rm-nota--carrusel .rm-nota__resumen {
	flex: 1;
	font-size: 13px;
}

.rm-carrusel__flecha {
	position: absolute;
	top: 88px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 1px solid var( --rm-borde );
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 10px rgba( 0, 0, 0, 0.14 );
	color: var( --rm-texto );
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.rm-carrusel__flecha--atras {
	left: -14px;
}

.rm-carrusel__flecha--adelante {
	right: -14px;
}

.rm-carrusel__flecha:hover:not( [ disabled ] ) {
	border-color: var( --rm-acento );
	color: var( --rm-acento );
}

/* Sin JS los botones nunca se deshabilitan y siguen sirviendo; con JS desaparecen en los
   extremos y cuando las notas entran todas sin desplazar. */
.rm-carrusel__flecha[ disabled ],
.rm-carrusel.is-sin-desborde .rm-carrusel__flecha {
	opacity: 0;
	pointer-events: none;
}

@media ( max-width: 560px ) {
	.rm-carrusel__pista {
		grid-auto-columns: 82%;
	}

	.rm-carrusel__flecha {
		display: none;
	}
}

/* -------------------------------------------------------------------------
 * Publicidad de los costados
 * ---------------------------------------------------------------------- */

/* Por defecto no hay costados: recién aparecen cuando la ventana da para las dos torres
   más los 1240 px del contenido sin que nada se pise. El contenedor no existe siquiera en
   el HTML si nadie pagó (ver rm_laterales_en_la_portada). */
.rm-laterales {
	display: none;
}

.rm-lateral {
	position: fixed;
	top: 130px;
	z-index: 5;
	display: flex;
	flex-direction: column;
	gap: 14px;
	width: 120px;
}

.rm-lateral--portada-izquierda {
	left: 12px;
}

.rm-lateral--portada-derecha {
	right: 12px;
}

.rm-lateral__pieza {
	position: relative;
	display: block;
	overflow: hidden;
	border: 1px solid var( --rm-borde );
	border-radius: var( --rm-radio );
	background: #fff;
	color: var( --rm-texto );
	text-decoration: none;
}

.rm-lateral__pieza img {
	width: 100%;
	height: auto;
	display: block;
}

/* Un servicio que pagó puede no tener foto; el espacio se llena con su nombre antes que
   dejar un recuadro vacío. */
.rm-lateral__texto {
	display: block;
	padding: 14px 12px 22px;
	font-size: 13px;
	line-height: 1.35;
}

.rm-lateral__texto em {
	display: block;
	margin-top: 4px;
	color: var( --rm-suave );
	font-size: 12px;
	font-style: normal;
}

@media ( min-width: 1500px ) {
	.rm-laterales {
		display: block;
	}
}

@media ( min-width: 1620px ) {
	.rm-lateral {
		width: 160px;
	}

	.rm-lateral--portada-izquierda {
		left: 20px;
	}

	.rm-lateral--portada-derecha {
		right: 20px;
	}
}

/* Publicidad fija en pantallas bajas tapa contenido en vez de acompañarlo. */
@media ( max-height: 620px ) {
	.rm-laterales {
		display: none;
	}
}

@media print {
	.rm-laterales {
		display: none;
	}
}

/* -------------------------------------------------------------------------
 * Servicios
 * ---------------------------------------------------------------------- */

/* Misma disposición que el listado de maquinaria: filtros a la izquierda, resultados a
   la derecha. Dos pestañas con la misma forma se aprenden una sola vez. */
.rm-servicios {
	display: grid;
	grid-template-columns: 300px minmax( 0, 1fr );
	gap: 28px;
	align-items: start;
	margin: 32px auto 56px;
}

@media ( max-width: 900px ) {
	.rm-servicios {
		grid-template-columns: minmax( 0, 1fr );
	}
}

.rm-servicios__cabecera {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

/*
 * Panel de filtros de /servicios/: el mismo del listado de máquinas (filtros.css, que también
 * se carga aquí y da el encabezado, las etiquetas `.rm-f__titulo` y los controles blancos). Lo
 * propio del de máquinas cuelga de `.search-filter-form`; esto repite el fondo y el pie.
 */
.rm-panel--servicios {
	border-radius: var( --rm-radio, 4px );
	background: var( --rm-acero-claro );
	color: var( --rm-tinta );
	font-family: var( --rm-fuente );
}

.rm-panel--servicios .rm-panel__pie {
	padding: 12px 16px 14px;
	border-top: 1px solid var( --rm-linea );
}

/* `body` delante: el kit de Elementor pinta los <button> con más especificidad que una clase. */
body .rm-panel--servicios .rm-panel__ver {
	width: 100%;
	height: 44px;
	justify-content: center;
	font-size: 15px;
	font-variant-numeric: tabular-nums;
}

/* El <h1> de /servicios/: dos clases para ganarle al tamaño de títulos del kit de Elementor. */
.rm-servicios__cabecera .rm-servicios__titulo {
	margin: 0;
	color: var( --rm-texto );
	font-size: 24px;
	font-weight: 700;
	line-height: 1.15;
	text-transform: none;
}

.rm-servicios__cabecera .rm-servicios__total {
	margin: 2px 0 0;
	color: var( --rm-suave );
	font-size: 15px;
	font-variant-numeric: tabular-nums;
}

.rm-vacio {
	padding: 40px 20px;
	border: 1px dashed var( --rm-borde );
	border-radius: var( --rm-radio );
	color: var( --rm-suave );
	text-align: center;
}

/* Rubro y empresa, los dos datos que distinguen un servicio de otro en la grilla. */
.rm-tarjeta__rubro {
	margin-bottom: 4px;
	color: var( --rm-acento );
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.rm-tarjeta__empresa {
	margin-bottom: 6px;
	color: var( --rm-texto );
	font-size: 13px;
	font-weight: 600;
}

.rm-tarjeta__resumen {
	flex: 1;
	margin: 0 0 10px;
	color: var( --rm-suave );
	font-size: 13px;
	line-height: 1.5;
}

/* Servicios en lista (pedido del dueño): una fila por servicio, como la tarjeta en lista del
   listado de maquinaria. */
.rm-lista-servicios {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.rm-tarjeta--fila {
	flex-direction: row;
	border-color: var( --rm-linea );
	border-radius: 4px;
}

.rm-tarjeta--fila:hover {
	border-color: var( --rm-acero );
	box-shadow: none;
	transform: none;
}

.rm-tarjeta--fila .rm-tarjeta__foto {
	flex: 0 0 240px;
	aspect-ratio: 4 / 3;
	align-self: flex-start;
	background: var( --rm-hormigon );
}

.rm-tarjeta--fila .rm-tarjeta__cuerpo {
	min-width: 0;
	padding: 14px 18px;
}

.rm-tarjeta--fila .rm-tarjeta__titulo {
	color: var( --rm-acero );
	font-size: 18px;
}

.rm-tarjeta--fila .rm-tarjeta__resumen {
	font-size: 14px;
}

.rm-tarjeta__pie {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 18px;
	padding-top: 10px;
	border-top: 1px solid var( --rm-linea );
	font-size: 13px;
}

.rm-tarjeta__ver {
	margin-left: auto;
	color: var( --rm-oxido );
	font-weight: 700;
}

.rm-tarjeta--fila:hover .rm-tarjeta__ver {
	color: var( --rm-oxido-hover );
}

@media ( max-width: 600px ) {
	.rm-tarjeta--fila {
		flex-direction: column;
	}

	.rm-tarjeta--fila .rm-tarjeta__foto {
		flex-basis: auto;
		align-self: stretch;
	}
}

/* Atajos a los ocho rubros, para la portada. */
.rm-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.rm-chip {
	padding: 9px 16px;
	border: 1px solid var( --rm-borde );
	border-radius: 40px;
	background: #fff;
	color: var( --rm-texto );
	font-size: 14px;
	text-decoration: none;
}

.rm-chip:hover {
	border-color: var( --rm-acento );
	color: var( --rm-acento );
}

/* Contacto en la ficha del servicio. */
.rm-contacto {
	max-width: 520px;
	margin: 28px 0;
	padding: 18px 20px;
	border: 1px solid var( --rm-borde );
	border-radius: var( --rm-radio );
	background: var( --rm-fondo );
}

.rm-contacto h3 {
	margin: 0 0 12px;
	font-size: 16px;
	font-weight: 700;
}

.rm-contacto__fila {
	display: flex;
	gap: 12px;
	padding: 6px 0;
	font-size: 15px;
}

.rm-contacto__fila span {
	min-width: 90px;
	color: var( --rm-suave );
}

/* -------------------------------------------------------------------------
 * Formulario de publicar servicio
 * ---------------------------------------------------------------------- */

.rm-formulario {
	max-width: 720px;
	margin: 40px auto 64px;
}

.rm-formulario__titulo {
	margin: 0 0 6px;
	font-size: 28px;
	font-weight: 700;
}

.rm-formulario__bajada {
	margin: 0 0 28px;
	color: var( --rm-suave );
	font-size: 16px;
}

.rm-formulario .rm-f {
	padding: 0 0 20px;
	border: 0;
}

.rm-formulario .rm-f__titulo {
	display: block;
	margin-bottom: 8px;
	color: var( --rm-texto );
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
}

.rm-opcional {
	color: var( --rm-suave );
	font-weight: 400;
}

.rm-formulario input[ type="text" ],
.rm-formulario input[ type="tel" ],
.rm-formulario input[ type="email" ],
.rm-formulario input[ type="url" ],
.rm-formulario select,
.rm-formulario textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 11px 12px;
	border: 1px solid var( --rm-borde );
	border-radius: 4px;
	background: #fff;
	color: var( --rm-texto );
	font-size: 15px;
	line-height: 1.4;
}

.rm-formulario textarea {
	resize: vertical;
}

.rm-formulario input:focus,
.rm-formulario select:focus,
.rm-formulario textarea:focus {
	border-color: var( --rm-azul );
	outline: 2px solid rgba( 59, 93, 127, 0.2 );
}

/* Las 24 zonas en varias columnas y con tope de alto: en una sola lista ocupaban
   media pantalla y empujaban el resto del formulario. */
.rm-casillas {
	display: grid;
	grid-template-columns: repeat( auto-fill, minmax( 160px, 1fr ) );
	gap: 6px 14px;
	max-height: 220px;
	overflow-y: auto;
	padding: 12px;
	border: 1px solid var( --rm-borde );
	border-radius: 4px;
}

.rm-casillas label {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	cursor: pointer;
}

.rm-casillas input {
	margin: 0;
}

/* Campo trampa: fuera de la vista pero sin display:none, que algunos robots detectan. */
.rm-trampa {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.rm-nota-ok,
.rm-nota-error {
	margin-bottom: 24px;
	padding: 14px 18px;
	border-radius: var( --rm-radio );
	font-size: 15px;
}

.rm-nota-ok {
	border: 1px solid #b7d9b7;
	background: #eef7ee;
	color: #24601f;
}

.rm-nota-error {
	border: 1px solid #e6b3b3;
	background: #fdf0f0;
	color: #8a1f1f;
}

.rm-nota-error ul {
	margin: 8px 0 0;
	padding-left: 20px;
}

.rm-formulario .rm-vacio h2 {
	margin: 0 0 10px;
	font-size: 22px;
	color: var( --rm-texto );
}

/* -------------------------------------------------------------------------
 * "Mis avisos": vencimiento, renovar, video
 * ---------------------------------------------------------------------- */

.rm-listing-vence {
	background: var( --rm-fondo );
	color: var( --rm-suave );
}

.rm-listing-vence--pronto {
	background: #fdf0e6;
	color: #a6510a;
	font-weight: 600;
}

/* El botón de renovar es un enlace normal, pero vive entre los .action-btn de Motors:
   se le da el mismo alto y tipografía para que no desentone en la fila. */
.listing-owner-actions .rm-boton--principal {
	height: auto;
	padding: 8px 14px;
	font-size: 13px;
}

.rm-video-aviso {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	gap: 12px;
	max-width: 520px;
}

.rm-video-aviso label {
	display: block;
	margin-bottom: 6px;
	font-size: 14px;
	font-weight: 600;
}

.rm-video-aviso input[ type="url" ] {
	flex: 1 1 280px;
	box-sizing: border-box;
	height: 40px;
	padding: 0 12px;
	border: 1px solid var( --rm-borde );
	border-radius: 4px;
	font-size: 14px;
}

.rm-video-aviso__bloqueado {
	padding: 14px 18px;
	border: 1px dashed var( --rm-borde );
	border-radius: var( --rm-radio );
	color: var( --rm-suave );
}

.rm-video-aviso__embed {
	max-width: 640px;
	margin: 24px 0;
	aspect-ratio: 16 / 9;
}

.rm-video-aviso__embed iframe {
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: var( --rm-radio );
}

/* -------------------------------------------------------------------------
 * Árbol de categorías del listado
 * ---------------------------------------------------------------------- */

.rm-arbol {
	margin-bottom: 24px;
	border: 1px solid var( --rm-borde );
	border-radius: var( --rm-radio );
	background: #fff;
	font-size: 14px;
}

.rm-arbol__cabecera {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 14px;
	border-bottom: 1px solid var( --rm-borde );
	font-weight: 700;
}

.rm-arbol__limpiar {
	color: var( --rm-acento );
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.rm-arbol__lista {
	margin: 0;
	padding: 0;
	list-style: none;
}

.rm-arbol__lista--0 {
	padding: 6px 0;
}

.rm-arbol__lista--1 { padding-left: 14px; }
.rm-arbol__lista--2 { padding-left: 14px; }

.rm-arbol__item a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 6px 14px;
	color: var( --rm-texto );
	text-decoration: none;
}

.rm-arbol__item a:hover {
	color: var( --rm-acento );
}

.rm-arbol__item.is-activo > a,
.rm-arbol__item.is-activo > details > summary > a {
	color: var( --rm-acento );
	font-weight: 700;
}

.rm-arbol__conteo {
	color: var( --rm-suave );
	font-size: 12px;
}

.rm-arbol summary {
	cursor: pointer;
	list-style: none;
}

.rm-arbol summary::-webkit-details-marker {
	display: none;
}

/* El triángulo va antes del texto y gira al abrir: sin una señal visible, nadie
   descubre que las categorías tienen más adentro. */
.rm-arbol summary a::before {
	content: "";
	width: 0;
	height: 0;
	margin-right: 2px;
	border-left: 5px solid currentColor;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	opacity: 0.5;
	transition: transform 0.15s ease;
	order: -1;
}

.rm-arbol details[ open ] > summary a::before {
	transform: rotate( 90deg );
}

.rm-arbol__item a {
	justify-content: flex-start;
}

.rm-arbol__conteo {
	margin-left: auto;
}

/*
 * Siete familias de maquinaria (desde «Vehículos de trabajo», 2026-10-09): en seis columnas
 * la séptima quedaba sola en una segunda fila, y en tres columnas pasaba lo mismo. Con siete
 * tarjetas: una fila de siete en escritorio y 4 + 3 en tableta. En el teléfono siguen en una
 * columna (la regla de abajo repite la de 700 px porque esta tiene más especificidad).
 */
.rm-grilla-categorias:not( .rm-grilla-categorias--servicios ):has( > .rm-categoria:nth-child( 7 ):last-child ) {
	grid-template-columns: repeat( 7, minmax( 0, 1fr ) );
}

@media ( max-width: 1100px ) {
	.rm-grilla-categorias:not( .rm-grilla-categorias--servicios ):has( > .rm-categoria:nth-child( 7 ):last-child ) {
		grid-template-columns: repeat( 4, minmax( 0, 1fr ) );
	}
}

@media ( max-width: 700px ) {
	.rm-grilla-categorias:not( .rm-grilla-categorias--servicios ):has( > .rm-categoria:nth-child( 7 ):last-child ) {
		grid-template-columns: minmax( 0, 1fr );
	}
}
