/**
 * La Ricura: la base del sitio.
 *
 * Los colores, radios y sombras NO se escriben aquí: salen de tokens.css del
 * plugin (--llr-*), que es la única fuente del sistema de diseño y la comparten
 * el carrito, el checkout y los canales que no pasan por este tema.
 *
 * Reglas del sistema que esta hoja hace cumplir:
 *   - Figtree en todo. Mayúsculas gruesas SOLO en titulares.
 *   - El rojo manda en tres sitios: el encabezado, la parte alta de la portada
 *     y el botón de pedir.
 *   - Botones en píldora, de 50 px de alto como mínimo.
 *   - El vino solo como acento: selección, destacados y el pie.
 */

/* ============================== Letra ============================== */

/* Figtree la declara el plugin (tokens.css): la usan también el carrito, el
   pago y el Centro de configuración, que no pasan por este tema. */

/* ============================== Base ============================== */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

/* El pie siempre abajo, aunque la página sea corta. */
body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	min-height: 100dvh;
	margin: 0;
	font-family: var(--llr-titular);
	font-size: 16px;
	line-height: 1.6;
	font-weight: 500;
	color: var(--llr-tinta);
	background: var(--llr-lienzo);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img,
svg,
video {
	max-width: 100%;
	height: auto;
}

a {
	color: var(--llr-rojo);
	text-underline-offset: 3px;
}

a:hover {
	color: var(--llr-rojo-osc);
}

:focus-visible {
	outline: 3px solid var(--llr-tinta);
	outline-offset: 3px;
	border-radius: 6px;
}

h1,
h2,
h3,
h4 {
	margin: 0 0 .5em;
	line-height: 1.1;
	font-weight: 800;
	color: var(--llr-tinta);
	text-wrap: balance;
}

p {
	margin: 0 0 1em;
}

/* La clase que usan WordPress y WooCommerce para lo que solo oyen los lectores
   de pantalla. La definía la hoja de Woo, que ya no se carga en el menú. */
.screen-reader-text,
.solo-lectores {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

.saltar {
	position: absolute;
	left: 16px;
	top: -100px;
	z-index: 1000;
	padding: 12px 18px;
	border-radius: 99px;
	background: var(--llr-tinta);
	color: var(--llr-blanco);
	font-weight: 800;
	text-decoration: none;
}

.saltar:focus {
	top: 16px;
	color: var(--llr-blanco);
}

/* ============================== Titulares ============================== */

.titular {
	margin: 0 0 24px;
	font-size: clamp(34px, 6.4vw, 64px);
	line-height: .92;
	font-weight: 900;
	letter-spacing: -.035em;
	text-transform: uppercase;
}

/* ============================== Botones ============================== */

.boton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 50px;
	padding: 0 26px;
	border: 2px solid transparent;
	border-radius: 999px;
	font: inherit;
	font-size: 16px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

.boton--rojo {
	background: var(--llr-rojo);
	color: var(--llr-blanco);
}

.boton--rojo:hover {
	background: var(--llr-rojo-osc);
	color: var(--llr-blanco);
}

.boton--sobre-rojo {
	background: var(--llr-blanco);
	color: var(--llr-rojo);
}

.boton--sobre-rojo:hover {
	background: var(--llr-rojo-suave);
	color: var(--llr-rojo-osc);
}

.boton--borde {
	border-color: var(--llr-linea);
	background: transparent;
	color: var(--llr-tinta);
}

.boton--borde:hover {
	border-color: var(--llr-tinta);
	color: var(--llr-tinta);
}

.acciones {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

/* ============================== Encabezado ============================== */

/* El aviso del día: vino sobre el rojo del encabezado, una línea, y se va al
   bajar (el encabezado sí se queda). */
.aviso {
	margin: 0;
	padding: 9px 16px;
	background: var(--llr-tinta);
	color: var(--llr-blanco);
	font-size: 14.5px;
	font-weight: 700;
	line-height: 1.35;
	text-align: center;
	text-wrap: balance;
}

.aviso__enlace {
	color: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 3px;
}

.aviso__enlace:hover {
	color: inherit;
	text-decoration-thickness: 2.5px;
}

.aviso__enlace:focus-visible {
	outline: 2px solid var(--llr-blanco);
	outline-offset: 3px;
	border-radius: 4px;
}

.encabezado {
	position: sticky;
	top: 0;
	z-index: 100;
	background: var(--llr-rojo);
	color: var(--llr-blanco);
}

/* La barra de administración de WordPress es fija desde 601 px; debajo de eso
   se desplaza con la página y el encabezado puede pegarse arriba del todo. */
@media (min-width: 601px) {
	.admin-bar .encabezado {
		top: 46px;
	}
}

@media (min-width: 783px) {
	.admin-bar .encabezado {
		top: 32px;
	}
}

.encabezado__barra {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 62px;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 12px;
}

.encabezado__icono {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--llr-blanco);
	cursor: pointer;
}

.encabezado__icono:hover {
	color: var(--llr-blanco);
	background: rgba(255, 255, 255, .12);
}

.encabezado__icono:focus-visible,
.encabezado__logo:focus-visible,
.encabezado .boton:focus-visible,
.encabezado__nav a:focus-visible {
	outline-color: var(--llr-blanco);
}

.encabezado__cuenta {
	position: absolute;
	top: 4px;
	right: 2px;
	min-width: 19px;
	height: 19px;
	padding: 0 5px;
	border-radius: 99px;
	background: var(--llr-blanco);
	color: var(--llr-rojo);
	font-size: 11.5px;
	font-weight: 800;
	line-height: 19px;
	text-align: center;
	font-variant-numeric: tabular-nums;
}

.encabezado__cuenta[hidden] {
	display: none;
}

/* El logo va en un círculo blanco que se sale de la barra: es la marca
   siempre a la vista. */
.encabezado__logo {
	position: absolute;
	left: 50%;
	top: 6px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 76px;
	height: 76px;
	border-radius: 50%;
	background: var(--llr-blanco);
	box-shadow: 0 6px 18px rgba(59, 15, 10, .18);
	transform: translateX(-50%);
}

.encabezado__logo-img {
	width: 84%;
	height: 84%;
	object-fit: contain;
}

.encabezado__nav,
.encabezado__pedir {
	display: none;
}

.encabezado__acciones {
	display: flex;
	align-items: center;
	gap: 14px;
}

@media (min-width: 1024px) {
	.encabezado__barra {
		height: 84px;
		padding: 0 56px;
	}

	.encabezado__abrir-menu {
		display: none;
	}

	.encabezado__nav,
	.encabezado__pedir {
		display: flex;
	}

	.encabezado__logo {
		top: 10px;
		width: 124px;
		height: 124px;
		box-shadow: 0 10px 28px rgba(59, 15, 10, .2);
	}

	.encabezado__pedir {
		min-height: 48px;
	}
}

.encabezado__nav .nav {
	display: flex;
	gap: 34px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.encabezado__nav a {
	color: var(--llr-blanco);
	font-size: 15.5px;
	font-weight: 700;
	text-decoration: none;
}

.encabezado__nav a:hover,
.encabezado__nav .current-menu-item > a {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 8px;
	color: var(--llr-blanco);
}

/* ============================== Menú del celular ============================== */

.menu-movil {
	position: fixed;
	inset: 0;
	z-index: 200;
	background: rgba(59, 15, 10, .45);
}

.menu-movil[hidden] {
	display: none;
}

.menu-movil__panel {
	display: flex;
	flex-direction: column;
	gap: 28px;
	width: min(86vw, 380px);
	height: 100%;
	padding: calc(14px + env(safe-area-inset-top, 0px)) 20px calc(24px + env(safe-area-inset-bottom, 0px));
	overflow-y: auto;
	background: var(--llr-rojo);
	color: var(--llr-blanco);
	animation: laricura-entrar .22s ease-out;
}

@keyframes laricura-entrar {
	from {
		transform: translateX(-24px);
		opacity: 0;
	}
}

.menu-movil__lista {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.menu-movil__lista a {
	display: block;
	padding: 10px 0;
	color: var(--llr-blanco);
	font-size: 34px;
	line-height: 1;
	font-weight: 900;
	letter-spacing: -.03em;
	text-transform: uppercase;
	text-decoration: none;
}

.menu-movil__pedir {
	margin-top: auto;
	background: var(--llr-blanco);
	color: var(--llr-rojo);
}

.menu-movil__pedir:hover {
	background: var(--llr-rojo-suave);
	color: var(--llr-rojo-osc);
}

body.menu-abierto {
	overflow: hidden;
}

/* ============================== Contenido ============================== */

/* El círculo del logo se sale 20 px de la barra en el celular y 50 px en
   escritorio: el contenido empieza por debajo. */
.contenido {
	display: block;
	flex: 1 0 auto;
	padding: 44px 0 72px;
}

/* En la portada y en "Para eventos" la última sección o la barra del celular
   cierran la página; el espacio de abajo lo ponen ellas. */
.contenido:has(> .franja-roja) {
	padding-bottom: 0;
}

@media (min-width: 1024px) {
	.contenido:has(> .franja-roja) > .seccion:last-of-type {
		padding-bottom: 96px;
	}
}

@media (min-width: 1024px) {
	.contenido {
		padding: 88px 0 96px;
	}
}

.envoltura {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding-inline: 20px;
}

@media (min-width: 1024px) {
	.envoltura {
		padding-inline: 56px;
	}
}

.envoltura--texto {
	max-width: 860px;
}

.prosa {
	font-size: 17px;
	line-height: 1.65;
	color: var(--llr-tinta-2);
}

.prosa h2,
.prosa h3 {
	margin-top: 1.6em;
}

.prosa img {
	border-radius: var(--llr-radio);
}

/* ----- Las piezas del editor de páginas (patterns/) ----- */

.prosa .pieza {
	margin-block: 48px;
}

.prosa .pieza__antetitulo {
	margin: 0 0 8px;
	color: var(--llr-rojo);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.prosa .pieza__titular {
	margin: 0 0 14px;
	color: var(--llr-tinta);
	font-size: clamp(30px, 5vw, 46px);
	font-weight: 900;
	line-height: .95;
	letter-spacing: -.03em;
	text-transform: uppercase;
	text-wrap: balance;
}

.prosa .pieza-texto-foto {
	gap: 28px;
	align-items: center;
}

.prosa .pieza-texto-foto .wp-block-media-text__media img {
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: var(--llr-radio-g);
}

.prosa .pieza-texto-foto .wp-block-media-text__content {
	padding: 0;
}

.prosa .pieza-preguntas {
	display: grid;
	gap: 10px;
}

.prosa .pieza__pregunta {
	padding: 16px 20px;
	border-radius: var(--llr-radio);
	background: var(--llr-blanco);
}

.prosa .pieza__pregunta summary {
	color: var(--llr-tinta);
	font-weight: 800;
	cursor: pointer;
}

.prosa .pieza__pregunta[open] summary {
	margin-bottom: 8px;
}

.prosa .pieza__pregunta p {
	margin: 0;
}

.prosa .pieza-llamado {
	padding: clamp(28px, 5vw, 48px);
	border-radius: var(--llr-radio-g);
	background: var(--llr-rojo);
	color: var(--llr-blanco);
	text-align: center;
}

.prosa .pieza-llamado .pieza__titular {
	color: var(--llr-blanco);
}

.prosa .pieza-llamado .wp-block-buttons {
	justify-content: center;
}

.prosa .pieza__boton .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	min-height: 52px;
	padding: 12px 28px;
	border-radius: 999px;
	background: var(--llr-blanco);
	color: var(--llr-rojo);
	font-weight: 800;
	text-decoration: none;
}

.prosa .pieza__boton .wp-block-button__link:hover {
	background: var(--llr-lienzo);
	color: var(--llr-rojo-osc);
}

.entrada + .entrada {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 2px solid var(--llr-linea);
}

.entrada__titulo a {
	color: var(--llr-tinta);
	text-decoration: none;
}

.no-existe .acciones {
	margin-top: 28px;
}

/* ============================== Pie ============================== */

.pie {
	background: var(--llr-tinta);
	color: #f3dcd3;
}

.pie__interior {
	display: grid;
	gap: 28px;
	max-width: 1440px;
	margin: 0 auto;
	padding: 40px 20px 24px;
}

@media (min-width: 768px) {
	.pie__interior {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 56px 56px 32px;
	}
}

/* La marca y hasta tres columnas: dónde, cómo escribir y los enlaces. Las que
   no tienen datos no se pintan, y las que quedan reparten el ancho. */
@media (min-width: 1100px) {
	.pie__interior {
		grid-template-columns: minmax(0, 1.4fr);
		grid-auto-columns: minmax(0, 1fr);
		grid-auto-flow: column;
	}
}

.pie__marca {
	display: flex;
	align-items: center;
	gap: 14px;
	color: var(--llr-blanco);
	text-decoration: none;
}

.pie__marca:hover {
	color: var(--llr-blanco);
}

.pie__insignia {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: var(--llr-blanco);
}

.pie__logo {
	width: 84%;
	height: 84%;
	object-fit: contain;
}

.pie__nombre {
	font-size: 22px;
	line-height: .95;
	font-weight: 900;
	letter-spacing: -.02em;
	text-transform: uppercase;
}

.pie__columna {
	display: flex;
	flex-direction: column;
	gap: 6px;
	font-size: 15px;
}

.pie__rotulo {
	margin-bottom: 4px;
	color: var(--llr-blanco);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.pie__lista {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pie__direccion {
	font-style: normal;
}

.pie__horario {
	display: grid;
	gap: 6px;
	margin: 8px 0 0;
}

.pie__horario dt {
	color: var(--llr-blanco);
	font-weight: 700;
}

.pie__horario dd {
	margin: 0;
}

/* En el pie nada va subrayado: se sabe que es un enlace por el ícono y porque
   se ilumina al pasar. */
.pie a {
	color: #f3dcd3;
	text-decoration: none;
	transition: color .15s ease;
}

.pie a:hover {
	color: var(--llr-blanco);
}

.pie a:focus-visible {
	outline: 2px solid var(--llr-blanco);
	outline-offset: 3px;
	border-radius: 8px;
}

.pie__icono {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .08);
	color: var(--llr-blanco);
	transition: background-color .15s ease, color .15s ease;
}

.pie a:hover .pie__icono {
	background: var(--llr-blanco);
	color: var(--llr-tinta);
}

/* Cómo escribirnos: ícono, y al lado qué es y el dato. */
.pie__contacto {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pie__contacto a {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}

.pie__dato {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

.pie__dato small {
	color: #d9b8ad;
	font-size: 12px;
	letter-spacing: .02em;
}


.pie__legal {
	max-width: 1440px;
	margin: 0 auto;
	text-align: center;
	padding: 18px 20px calc(24px + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid rgba(255, 255, 255, .12);
	font-size: 13px;
	color: #d9b8ad;
}

@media (min-width: 768px) {
	.pie__legal {
		padding-inline: 56px;
	}
}

/* ============================== WooCommerce: el marco mínimo ==============================
 * El diseño propio del menú, la ficha, el carrito y el pago llega en los bloques
 * 3 y 4. Aquí solo se alinea lo de Woo con la letra, los colores y los botones
 * del sistema, para que todo siga funcionando y se vea de la misma familia.
 */

.woo .button,
.woo button.button,
.woo a.button,
.woo input.button,
.woo #respond input#submit,
.woo .single_add_to_cart_button,
.woo .checkout-button,
.woo #place_order {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 12px 20px;
	border: 0;
	border-radius: 999px;
	background: var(--llr-rojo);
	color: var(--llr-blanco);
	font-family: inherit;
	font-size: 15.5px;
	font-weight: 800;
	line-height: 1.15;
	text-align: center;
	text-decoration: none;
}

/* Woo pinta de morado el botón que aún no se puede pulsar (falta elegir
   variación). Aquí sigue siendo el rojo, apagado. */
.woo .button.alt.disabled,
.woo .button.alt:disabled,
.woo .single_add_to_cart_button.disabled {
	background: var(--llr-rojo);
	color: var(--llr-blanco);
	opacity: .45;
}

.woo .price,
.woo .price ins,
.woo .summary .price,
.woo ul.products li.product .price {
	color: var(--llr-tinta-2);
}

.woo .button:hover,
.woo .single_add_to_cart_button:hover,
.woo .checkout-button:hover,
.woo #place_order:hover {
	background: var(--llr-rojo-osc);
	color: var(--llr-blanco);
}

.woo .button:disabled,
.woo .button.disabled {
	opacity: .5;
}

.woo input[type="text"],
.woo input[type="email"],
.woo input[type="tel"],
.woo input[type="number"],
.woo input[type="password"],
.woo select,
.woo textarea {
	min-height: 50px;
	padding: 10px 16px;
	border: 2px solid var(--llr-linea);
	border-radius: var(--llr-radio-s);
	background: var(--llr-blanco);
	color: var(--llr-tinta);
	font: inherit;
}

.woo input:focus,
.woo select:focus,
.woo textarea:focus {
	border-color: var(--llr-tinta);
	outline: none;
}

.woo .woocommerce-message,
.woo .woocommerce-info,
.woo .woocommerce-error {
	border-top-color: var(--llr-rojo);
	border-radius: var(--llr-radio-s);
	background: var(--llr-blanco);
	color: var(--llr-tinta);
}

.woo .woocommerce-breadcrumb {
	color: var(--llr-tinta-3);
	font-size: 14px;
}

.woo .woocommerce-breadcrumb a {
	color: var(--llr-tinta-2);
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .01ms !important;
		transition-duration: .01ms !important;
	}
}

/* ============================== Escríbanos ============================== */
/* page-contactenos.php: los datos a un lado, el formulario al otro, el mapa
   abajo. El formulario es del plugin de formularios (WPForms); aquí se viste
   con el sistema: mismos campos y mismo botón que el pago. */

.contacto {
	max-width: 1180px;
}

.contacto__rejilla {
	display: grid;
	gap: 20px;
}

@media (min-width: 900px) {
	.contacto__rejilla {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
		gap: 28px;
		align-items: start;
	}
}

.contacto__datos,
.contacto__formulario {
	padding: clamp(20px, 3vw, 32px);
	border-radius: var(--llr-radio-g);
	background: var(--llr-blanco);
}

.contacto__datos {
	display: grid;
	gap: 18px;
	align-content: start;
}

.contacto__whatsapp {
	width: 100%;
}

.contacto__lista {
	display: grid;
	gap: 14px;
	margin: 0;
}

.contacto__lista dt {
	margin-bottom: 2px;
	color: var(--llr-tinta);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.contacto__lista dd {
	margin: 0;
	color: var(--llr-tinta-2);
	font-size: 16px;
}

.contacto__llegar {
	display: inline-block;
	margin-left: 8px;
	font-weight: 800;
	white-space: nowrap;
}

.contacto__subtitulo {
	margin: 0 0 18px;
	font-size: clamp(22px, 2.6vw, 28px);
	font-weight: 900;
	line-height: 1;
	letter-spacing: -.02em;
	text-transform: uppercase;
}

.contacto__mapa {
	margin-top: 20px;
	overflow: hidden;
	border-radius: var(--llr-radio-g);
	background: var(--llr-blanco);
	aspect-ratio: 16 / 7;
	min-height: 260px;
}

.contacto__mapa iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

/* El formulario, con los campos y el botón del sistema */
.contacto .wpforms-container {
	--wpforms-field-border-radius: 14px;
	--wpforms-field-border-color: var(--llr-linea);
	--wpforms-field-size-input-height: 50px;
	--wpforms-button-background-color: var(--llr-rojo);
	--wpforms-button-border-radius: 999px;
	margin: 0 !important;
}

.contacto .wpforms-container .wpforms-title,
.contacto .wpforms-container .wpforms-description {
	display: none;
}

.contacto div.wpforms-container .wpforms-form .wpforms-field {
	padding: 0 0 16px;
}

.contacto div.wpforms-container .wpforms-form .wpforms-field-label {
	margin: 0 0 6px;
	color: var(--llr-tinta);
	font-size: 14px;
	font-weight: 700;
}

.contacto div.wpforms-container .wpforms-form .wpforms-required-label {
	color: var(--llr-rojo);
}

.contacto div.wpforms-container .wpforms-form input[type="text"],
.contacto div.wpforms-container .wpforms-form input[type="email"],
.contacto div.wpforms-container .wpforms-form input[type="tel"],
.contacto div.wpforms-container .wpforms-form textarea {
	width: 100%;
	max-width: 100%;
	min-height: 50px;
	padding: 12px 16px;
	border: 2px solid var(--llr-linea);
	border-radius: 14px;
	background: var(--llr-blanco);
	box-shadow: none;
	color: var(--llr-tinta);
	font: inherit;
	font-size: 16px;
}

.contacto div.wpforms-container .wpforms-form textarea {
	min-height: 140px;
	resize: vertical;
}

.contacto div.wpforms-container .wpforms-form input:focus,
.contacto div.wpforms-container .wpforms-form textarea:focus {
	border-color: var(--llr-tinta);
	outline: none;
	box-shadow: none;
}

.contacto div.wpforms-container .wpforms-form .wpforms-submit-container {
	padding: 4px 0 0;
}

.contacto div.wpforms-container .wpforms-form button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	padding: 0 28px;
	border: 0;
	border-radius: 999px;
	background: var(--llr-rojo);
	color: var(--llr-blanco);
	font: inherit;
	font-size: 16px;
	font-weight: 800;
	cursor: pointer;
}

.contacto div.wpforms-container .wpforms-form button[type="submit"]:hover {
	background: var(--llr-rojo-osc);
}

.contacto div.wpforms-container .wpforms-form .wpforms-error,
.contacto div.wpforms-container .wpforms-form label.wpforms-error {
	color: var(--llr-rojo-osc);
	font-size: 13px;
}

.contacto div.wpforms-container .wpforms-confirmation-container-full {
	margin: 0;
	padding: 16px 18px;
	border: 0;
	border-radius: 16px;
	background: var(--llr-lienzo);
	color: var(--llr-tinta);
}
