.elementor-kit-8726{--e-global-color-primary:#D20A11;--e-global-color-secondary:#000000;--e-global-color-text:#5C5C5C;--e-global-color-accent:#A8080E;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-size:32px;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Archivo";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:800;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.1em;}.elementor-kit-8726 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8726{--e-global-typography-primary-font-size:28px;--e-global-typography-secondary-font-size:19px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8726{--e-global-typography-primary-font-size:24px;--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --color-negro:#000000; --color-carbon:#1A1A1A; --color-blanco:#FFFFFF; --color-rojo:#D20A11; --color-rojo-hondo:#A8080E; --color-rojo-luz:#FF3B41; --color-gris-texto:#A3A3A3; --color-gris-claro:#F4F4F4; --color-tinta:#5C5C5C; --color-borde:#2E2E2E; --color-borde-claro:#E3E3E3; --color-velo:rgba(0,0,0,0.72); --font-titulos:Archivo; --font-texto:Manrope; --fs-hero:clamp(2.625rem, 1.6rem + 4.5vw, 5.5rem); --fs-titulo:clamp(2rem, 1.4rem + 2.6vw, 3.5rem); --fs-subtitulo:clamp(1.375rem, 1.1rem + 1.1vw, 2rem); --fs-tarjeta:clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem); --fs-cifra:clamp(2.5rem, 2rem + 2.5vw, 4rem); --fs-entradilla:clamp(1.0625rem, 1rem + 0.4vw, 1.25rem); --fs-cuerpo:clamp(1rem, 0.96rem + 0.2vw, 1.0625rem); --fs-pequeno:0.875rem; --fs-antetitulo:0.8125rem; --fs-boton:1rem; --esp-ritmo:clamp(56px, 7vw, 112px); --esp-lateral:clamp(16px, 4vw, 40px); --ancho-max:1200px; --esp-xs:8px; --esp-s:12px; --esp-m:16px; --esp-l:24px; --esp-xl:40px; --radio-s:8px; --radio-m:16px; --radio-l:28px; --radio-pill:999px; }
/* Start custom CSS *//* =====================================================================
   pex · Tarjeta de evento (Loop V4 de portada y /eventos/) — estados.
   El chip lleva [pex_estado_tarjeta]. El párrafo V4 quita los class del HTML
   dinámico, así que el estado llega como etiqueta: span = a la venta,
   em = últimas plazas, strong = sold out, b = próximamente/cerrada/otros.
   Todo es aditivo: sin este CSS la tarjeta se ve igual, solo sin variantes.
   ===================================================================== */
.elementor .pe-chip > * { font: inherit; font-style: normal; text-decoration: none; }
.elementor .pe-chip:empty { display: none; }
.elementor .pe-chip:has(> span)::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--color-rojo); }
.elementor .pe-chip:has(> em) { background-color: var(--color-rojo); color: var(--color-blanco); }
.elementor .pe-chip:has(> strong) { background-color: var(--color-rojo); color: var(--color-blanco); letter-spacing: .18em; box-shadow: 0 8px 20px -6px rgba(0,0,0,.8); }
.elementor .pe-chip:has(> b) { background-color: var(--color-velo); color: var(--color-blanco); box-shadow: inset 0 0 0 1.5px var(--color-blanco); }
.elementor .pe-tarjeta-evento:has(.pe-chip > strong) .pe-evento-img { filter: grayscale(1); opacity: .55; }
.elementor .pe-tarjeta-evento:has(.pe-chip > strong) .pe-precio-cifra { color: var(--color-gris-texto); text-decoration: line-through; }
.elementor .pe-tarjeta-evento:has(.pe-chip > strong) .pe-tarjeta-titulo,
.elementor .pe-tarjeta-evento:has(.pe-chip > strong) .pe-antetitulo { color: var(--color-gris-texto); }
.elementor .pe-tarjeta-evento:has(.pe-chip > strong) .pe-boton,
.elementor .pe-tarjeta-evento:has(.pe-chip > strong) .pe-boton:hover { background-color: var(--color-carbon); color: var(--color-gris-texto); box-shadow: inset 0 0 0 1.5px var(--color-borde); transform: none; }
.elementor .pe-tarjeta-evento:has(.pe-chip > b) .pe-boton { background-color: transparent; box-shadow: inset 0 0 0 1.5px var(--color-blanco); }
.elementor .pe-tarjeta-evento:has(.pe-chip > b) .pe-boton:hover { background-color: var(--color-blanco); color: var(--color-negro); }
.elementor .pe-precio:has(.pe-precio-cifra:empty) { display: none; }
/* El enlace del cartel ocupa todo el marco 4:5 para que el cartel se vea completo (contain). */
.elementor .pe-evento-media > a { display: block; width: 100%; height: 100%; }
/* Precio a la izquierda y botón a la derecha en la misma línea cuando cabe. */
.elementor .pe-evento-pie > .pe-precio { width: auto; flex: 0 1 auto; }
@media (prefers-reduced-motion: reduce) {
	.pe-tarjeta-evento, .pe-tarjeta-evento *, .pe-boton { transition: none !important; transform: none !important; } /* !important: pisa las transiciones de las clases globales V4, que no admiten media queries de movimiento. */
}

/* =====================================================================
   WooCommerce (carrito 36, finalizar compra 37, mi cuenta 38): widgets V3 de
   Elementor Pro con la clase .pe-woo. Se tiñen con sus propias variables CSS
   (las que leen los widget-woocommerce-*.css) apuntando a los tokens del kit.
   ===================================================================== */
.elementor .pe-woo {
	--sections-background-color: var(--color-gris-claro);
	--sections-border-color: transparent;
	--sections-border-radius: var(--radio-m);
	--sections-padding: var(--esp-l);
	--sections-title-color: var(--color-negro);
	--sections-secondary-title-color: var(--color-negro);
	--sections-descriptions-color: var(--color-tinta);
	--sections-messages-color: var(--color-tinta);
	--sections-checkboxes-color: var(--color-rojo);
	--sections-radio-buttons-color: var(--color-rojo);
	--typography-section-titles-color: var(--color-negro);
	--general-text-color: var(--color-tinta);
	--forms-labels-color: var(--color-negro);
	--forms-fields-normal-color: var(--color-negro);
	--forms-fields-focus-color: var(--color-negro);
	--forms-fields-focus-border-color: var(--color-rojo);
	--forms-fields-normal-background-color: var(--color-blanco);
	--forms-fields-focus-background-color: var(--color-blanco);
	--forms-fields-border-radius: var(--radio-s);
	--forms-buttons-normal-text-color: var(--color-negro);
	--forms-buttons-hover-text-color: var(--color-blanco);
	--forms-buttons-hover-background-color: var(--color-negro);
	--forms-buttons-border-color: var(--color-negro);
	--forms-buttons-border-radius: var(--radio-pill);
	--links-normal-color: var(--color-rojo);
	--links-hover-color: var(--color-rojo-hondo);
	--product-link-normal-color: var(--color-negro);
	--product-link-hover-color: var(--color-rojo);
	--order-summary-color: var(--color-negro);
	--order-summary-title-color: var(--color-negro);
	--order-summary-items-color: var(--color-negro);
	--order-summary-totals-color: var(--color-negro);
	--order-summary-variations-color: var(--color-tinta);
	--order-summary-items-divider-color: var(--color-borde-claro);
	--order-summary-totals-divider-color: var(--color-borde-claro);
	--order-summary-remove-icon-normal-color: var(--color-tinta);
	--order-summary-remove-icon-hover-color: var(--color-rojo);
	--order-summary-quantity-border-color: var(--color-borde-claro);
	--variations-color: var(--color-tinta);
	--totals-color: var(--color-negro);
	--totals-divider-color: var(--color-borde-claro);
	--checkout-button-normal-text-color: var(--color-blanco);
	--checkout-button-hover-text-color: var(--color-blanco);
	--checkout-button-border-radius: var(--radio-pill);
	--purchase-button-normal-text-color: var(--color-blanco);
	--purchase-button-hover-text-color: var(--color-blanco);
	--purchase-button-border-radius: var(--radio-pill);
	--tabs-normal-color: var(--color-negro);
	--tabs-hover-color: var(--color-rojo);
	--tabs-active-color: var(--color-rojo);
	--tabs-border-color: var(--color-borde-claro);
	--tabs-active-border-color: var(--color-rojo);
	--tabs-border-radius: var(--radio-s);
	--tables-title-color: var(--color-negro);
	--tables-items-color: var(--color-tinta);
	--tables-links-normal-color: var(--color-rojo);
	--tables-divider-border-color: var(--color-borde-claro);
	--tables-button-normal-text-color: var(--color-blanco);
	--tables-button-border-radius: var(--radio-pill);
	font-family: var(--font-texto);
	color: var(--color-tinta);
}
.elementor .pe-woo h2, .elementor .pe-woo h3, .elementor .pe-woo #order_review_heading {
	font-family: var(--font-titulos); font-weight: 800; color: var(--color-negro); letter-spacing: 0; text-transform: none;
}
/* Campos: 48 px táctiles y 16 px de letra para que iOS no haga zoom. */
.elementor .pe-woo input.input-text, .elementor .pe-woo select, .elementor .pe-woo textarea,
.elementor .pe-woo .select2-container .select2-selection--single {
	min-height: 48px; font-size: 16px; font-family: var(--font-texto); color: var(--color-negro);
	background: var(--color-blanco); border: 1.5px solid var(--color-borde-claro); border-radius: var(--radio-s);
	transition: border-color 200ms, box-shadow 200ms;
}
.elementor .pe-woo .select2-container .select2-selection--single .select2-selection__rendered { line-height: 45px; }
.elementor .pe-woo .select2-container .select2-selection--single .select2-selection__arrow { height: 46px; }
.elementor .pe-woo input.input-text:focus, .elementor .pe-woo select:focus, .elementor .pe-woo textarea:focus {
	border-color: var(--color-rojo); box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-rojo) 18%, transparent); outline: none;
}
.elementor .pe-woo label { font-weight: 600; color: var(--color-negro); }
.elementor .pe-woo .required { color: var(--color-rojo); text-decoration: none; }
/* Botón principal (Proceder al pago / Realizar el pedido / Acceder).
   !important: los widgets Woo de Elementor Pro escriben color y tipografía del botón en su CSS por widget con más especificidad. */
.elementor .pe-woo .checkout-button, .elementor .pe-woo #place_order, .elementor .pe-woo .woocommerce-form-login__submit,
.elementor .pe-woo .woocommerce-form-register__submit, .elementor .pe-woo .woocommerce-Button {
	min-height: 56px; border: 0 !important; border-radius: var(--radio-pill) !important; background-color: var(--color-rojo) !important; color: var(--color-blanco) !important;
	font-family: var(--font-titulos) !important; font-weight: 800 !important; font-size: var(--fs-boton) !important; letter-spacing: .06em; text-transform: uppercase;
	transition: background-color 200ms, transform 200ms, box-shadow 200ms;
}
.elementor .pe-woo .checkout-button:hover, .elementor .pe-woo #place_order:hover, .elementor .pe-woo .woocommerce-form-login__submit:hover,
.elementor .pe-woo .woocommerce-Button:hover {
	background-color: var(--color-rojo-hondo) !important; box-shadow: 0 10px 24px -8px rgba(210,10,17,.6); transform: translateY(-2px);
}
.elementor .pe-woo button[name="apply_coupon"], .elementor .pe-woo .pex-copiar-comprador {
	min-height: 48px; border-radius: var(--radio-pill); border: 1.5px solid var(--color-negro); background: transparent; color: var(--color-negro);
	font-family: var(--font-titulos); font-weight: 800; font-size: var(--fs-pequeno); letter-spacing: .04em; text-transform: uppercase; padding: 0 20px;
	transition: background-color 200ms, color 200ms;
}
.elementor .pe-woo button[name="apply_coupon"]:hover, .elementor .pe-woo .pex-copiar-comprador:hover { background: var(--color-negro); color: var(--color-blanco); }
.elementor .pe-woo .cart_item .product-name a { font-family: var(--font-titulos); font-weight: 800; color: var(--color-negro); text-decoration: none; }
.elementor .pe-woo .cart_item .product-name a:hover { color: var(--color-rojo); }
.elementor .pe-woo .order-total .amount { font-family: var(--font-titulos); font-weight: 800; font-size: var(--fs-tarjeta); color: var(--color-negro); }
.elementor .pe-woo .woocommerce-info, .elementor .pe-woo .woocommerce-message, .elementor .pe-woo .woocommerce-error {
	border-radius: var(--radio-s); border-top-color: var(--color-rojo); background: var(--color-gris-claro); color: var(--color-negro);
}
.elementor .pe-woo .woocommerce-info::before, .elementor .pe-woo .woocommerce-message::before { color: var(--color-rojo); }

/* Bloques de asistentes del plugin pex (uno por plaza) dentro del checkout. */
.elementor .pe-woo .pex-asistentes { margin: 0 0 var(--esp-m); padding: var(--esp-l); border-radius: var(--radio-m); background: var(--color-gris-claro); }
.elementor .pe-woo .pex-asistentes__titulo { margin: 0 0 6px; font-family: var(--font-titulos); font-weight: 800; font-size: var(--fs-tarjeta); color: var(--color-negro); }
.elementor .pe-woo .pex-asistentes__intro { margin: 0 0 var(--esp-m); font-size: var(--fs-pequeno); color: var(--color-tinta); max-width: 60ch; }
.elementor .pe-woo .pex-asistente {
	margin: 0 0 var(--esp-s); padding: var(--esp-m); border: 1px solid var(--color-borde-claro);
	border-inline-start: 4px solid var(--color-rojo); border-radius: var(--radio-m); background: var(--color-blanco);
}
.elementor .pe-woo .pex-asistente__titulo { float: left; width: 100%; margin: 0 0 var(--esp-s); padding: 0; display: flex; flex-direction: column; gap: 2px; }
.elementor .pe-woo .pex-asistente__titulo + * { clear: both; }
.elementor .pe-woo .pex-asistente__numero { font-family: var(--font-titulos); font-weight: 800; font-size: var(--fs-cuerpo); color: var(--color-negro); text-transform: uppercase; letter-spacing: .04em; }
.elementor .pe-woo .pex-asistente__detalle { font-size: var(--fs-pequeno); color: var(--color-tinta); opacity: 1; }
.elementor .pe-woo .pex-asistente__copiar { margin: 0 0 var(--esp-s); }
.elementor .pe-woo .pex-asistente .form-row { margin-bottom: var(--esp-s); }
/* Las entradas son productos ocultos sin foto: la miniatura solo enseñaría el marcador de WooCommerce. */
.elementor .pe-woo .product-thumbnail { display: none; }
.elementor .pe-woo .woocommerce-billing-fields input.input-text, .elementor .pe-woo .woocommerce-account-fields input.input-text { background: var(--color-blanco); }
/* Mi cuenta: pestañas en una fila que salta de línea sin partir las palabras. */
.elementor .pe-woo-cuenta .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 8px; }
.elementor .pe-woo-cuenta .woocommerce-MyAccount-navigation ul li { flex: 0 0 auto; margin: 0; white-space: nowrap; }
.elementor .pe-woo-cuenta .woocommerce-MyAccount-navigation ul li a { display: block; padding: 10px 16px; border-radius: var(--radio-pill); background: var(--color-gris-claro); color: var(--color-negro); font-weight: 600; transition: background-color 200ms, color 200ms; }
.elementor .pe-woo-cuenta .woocommerce-MyAccount-navigation ul li a:hover { background: var(--color-negro); color: var(--color-blanco); }
.elementor .pe-woo-cuenta .woocommerce-MyAccount-navigation ul li.is-active a { background: var(--color-rojo); color: var(--color-blanco); }
/* Móvil: un fieldset tiene min-width: min-content por defecto y la leyenda larga del asistente
   ensanchaba toda la columna del checkout (desbordaba a 390 px). */
.elementor .pe-woo .e-checkout__column, .elementor .pe-woo .pex-asistentes, .elementor .pe-woo .pex-asistente { min-width: 0; }
.elementor .pe-woo .pex-asistente__titulo, .elementor .pe-woo .pex-asistente__detalle { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 767px) {
	.elementor .pe-woo .pex-asistentes { padding: var(--esp-m) 12px; }
	.elementor .pe-woo .pex-asistente .form-row-first, .elementor .pe-woo .pex-asistente .form-row-last { float: none; width: 100%; }
}
.elementor .pe-woo .pex-copiar-comprador { max-width: 100%; white-space: normal; height: auto; padding-block: 10px; line-height: 1.2; text-align: center; }
/* Carrito: el botón «Ver próximos eventos» solo aparece cuando el carrito está vacío. */
.elementor .pe-panel-claro:not(:has(.cart-empty, .wc-empty-cart-message)) > .pe-solo-carrito-vacio { display: none; }/* End custom CSS */