.tribe-events-notices{
	display: none !important;
}

.single-tribe_events .tribe-events-single-event-title, .single-tribe_events .tribe-events-schedule{
	display: block !important;
}

.tribe-common{
	order: 2 !important;
}
.tribe-events-content{
	order: 1 !important;
}

.tribe-events-single, #tribe-events-content{
	width: 70% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* ================================
   BELAR - FORMULARIO DE EVENTO
================================ */

#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px;
    background: #ffffff;
    border-radius: 20px;
    box-sizing: border-box;
}

/* Grid del formulario */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 28px;
}

/* Los elementos que no queremos dividir */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf > br, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 > br, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e > br {
    display: none;
}

/* Campos */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-field-wrap, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field-wrap, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field-wrap {
    margin: 0;
    padding: 0;
}

/* Labels */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-field-label, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field-label, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field-label {
    display: block;
    margin-bottom: 8px;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
    color: #173b31;
}

/* Obligatorio */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-label-required, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-label-required, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-label-required {
    font-weight: 400;
    opacity: .65;
}

/* Inputs y selects */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-field,
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf select, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 select, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e select {
    width: 100%;
    min-height: 52px;
    padding: 13px 16px;
    border: 1px solid #d8d8d8;
    border-radius: 10px;
    background: #ffffff;
    color: #173b31;
    font-size: 16px;
    font-family: inherit;
    box-sizing: border-box;
    transition: border-color .2s ease,
                box-shadow .2s ease,
                background .2s ease;
}

/* Textarea / inputs */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf input.grunion-field, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 input.grunion-field, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e input.grunion-field {
    appearance: none;
}

/* Focus */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-field:focus,
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf select:focus, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field:focus, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e select:focus, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field:focus {
    outline: none;
    border-color: #c16bbb;
    box-shadow: 0 0 0 3px rgba(193, 107, 187, .15);
}

/* Placeholder */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-field::placeholder, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field::placeholder, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field::placeholder {
    color: #999;
}

/* Select */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .contact-form__select-wrapper, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .contact-form__select-wrapper, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .contact-form__select-wrapper {
    width: 100%;
}

#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf select, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 select, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e select {
    cursor: pointer;
    appearance: none;
}

/* Campos largos */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf
.grunion-field-text-wrap:nth-of-type(5),
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf
.grunion-field-text-wrap:nth-of-type(6), #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field-text-wrap:nth-of-type(5), #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field-text-wrap:nth-of-type(6), #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field-text-wrap:nth-last-of-type(5), #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field-text-wrap:nth-last-of-type(6) {
    grid-column: span 1;
}

/* ================================
   BOTÓN - ANCHO COMPLETO
================================ */

#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .contact-submit, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .contact-submit, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .contact-submit {
    grid-column: 1 / -1 !important;
    width: 100%;
    margin: 0;
    padding: 0;
}

/* El botón ocupa todo el ancho */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf
.contact-submit button[type="submit"], #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .contact-submit button[type="submit"], #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .contact-submit button[type="submit"] {
    display: block;
    width: 100%;
}

/* Botón enviar */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf button[type="submit"], #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 button[type="submit"], #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e button[type="submit"] {
    width: 100%;
    min-height: 56px;
    padding: 14px 24px;
    border: 0;
    border-radius: 999px;
    background: #c16bbb;
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: transform .2s ease,
                background .2s ease,
                opacity .2s ease;
}

#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf button[type="submit"]:hover, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 button [type="submit"]:hover, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e button[type="submit"]:hover {
    background: #a957a5;
    transform: translateY(-1px);
}

#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf button[type="submit"]:active, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 button[type="submit"]:active , #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e button[type="submit"]:active {
    transform: translateY(0);
}

/* ================================
   MÓVIL
================================ */

@media (max-width: 767px) {

    #jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e {
        display: block;
        padding: 25px 20px;
        border-radius: 16px;
    }

    #jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-field-wrap, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field-wrap, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field-wrap {
        margin-bottom: 20px;
    }

    #jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf .grunion-field,
    #jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf select, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .grunion-field, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 select, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e .grunion-field, #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e select {
        min-height: 50px;
        font-size: 16px;
    }

    #jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf button[type="submit"], #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 button [type="submit"], #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e button[type="submit"] {
        margin-top: 5px;
    }
}
.contact-form__select-wrapper{
	padding: 0 10px !important;
}

/* Botón y mensajes ocupan las 2 columnas */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf
.contact-submit,
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf
.contact-form__error,
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf
button[type="submit"], #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 .contact-submit, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 contact-form__error, #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 button[type="submit"] {
    grid-column: 1 / -1 !important;
}

/* Botón */
#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf
button[type="submit"], #jp-form-28cabc89cc46d0de9c8cb5949b7a985862020f12 button[type="submit"], #jp-form-33139ca6b6cdafc29bd0c04cc2715e98c374af3e button[type="submit"] {
    width: 100%;
    display: block;
}

/* =========================================
   BELAR - EVENT TICKETS
========================================= */

/* Contenedor general del calendario */
.tribe-events.tribe-common {
    max-width: 900px;
    margin: 0 auto 30px;
    padding: 0;
    box-sizing: border-box;
}

/* =========================================
   AÑADIR AL CALENDARIO
========================================= */

.tribe-events-c-subscribe-dropdown__container {
    margin: 0 0 24px !important;
}

.tribe-events-c-subscribe-dropdown {
    margin: 0 !important;
}

/* Botón */
.tribe-events-c-subscribe-dropdown__button {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;

    min-height: 50px;
    padding: 0 18px !important;

    border: 1px solid #c16bbb !important;
    border-radius: 10px !important;

    background: #ffffff !important;
    color: #c16bbb !important;

    font-size: 15px;
    font-weight: 600;

    box-sizing: border-box;

    transition:
        background .2s ease,
        color .2s ease,
        transform .2s ease;
}

.tribe-events-c-subscribe-dropdown__button:hover {
    background: #c16bbb !important;
    color: #ffffff !important;
    transform: translateY(-1px);
}

/* Texto del botón */
.tribe-events-c-subscribe-dropdown__button-text {
    color: inherit !important;
    font-weight: 600;
}

/* Iconos */
.tribe-events-c-subscribe-dropdown__button-icon,
.tribe-events-c-subscribe-dropdown__export-icon {
    color: inherit !important;
    fill: currentColor;
}

/* Dropdown */
.tribe-events-c-subscribe-dropdown__content {
    margin-top: 8px !important;
    border-radius: 10px !important;
    overflow: hidden;
}


/* =========================================
   CONTENEDOR DE ENTRADAS
========================================= */

.event-tickets.tribe-tickets__tickets-wrapper {
    width: 100%;
    max-width: 900px;
    margin: 0 auto !important;
    padding: 0;
    box-sizing: border-box;
}

/* Formulario de entradas */
#tribe-tickets__tickets-form {
    width: 100%;
    max-width: 100%;
    margin: 0 !important;
    padding: 32px !important;

    background: #ffffff;

    border: 0;
    border-radius: 14px;

    box-sizing: border-box;

    box-shadow: none;
}


/* =========================================
   TÍTULO
========================================= */

#tribe-tickets__tickets-form
.tribe-tickets__tickets-title {
    margin: 0 0 24px !important;

    color: #173b31 !important;

    font-size: 26px;
    line-height: 1.2;
    font-weight: 600;
}


/* =========================================
   PRODUCTO / ENTRADA
========================================= */

#tribe-tickets__tickets-form
.tribe-tickets__tickets-item {
    display: grid;

    grid-template-columns: minmax(0, 1fr) auto auto;

    align-items: center;

    gap: 25px;

    margin: 0 !important;
    padding: 0 0 24px !important;

    border-bottom: 1px solid #e4e4e4;
}


/* Nombre */
#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-content-title {
    color: #173b31 !important;

    font-size: 18px;
    font-weight: 700;
}


/* =========================================
   PRECIO
========================================= */

#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-extra-price {
    margin: 0 !important;

    color: #173b31 !important;

    font-size: 20px;
    font-weight: 700;
}

#tribe-tickets__tickets-form
.tribe-tickets__tickets-sale-price {
    color: #173b31 !important;
}


/* =========================================
   CANTIDAD
========================================= */

#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-quantity {
    display: flex !important;
    align-items: center;
    gap: 12px;

    margin: 0 !important;
}

/* Botones + y - */
#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-quantity-remove,

#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-quantity-add {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 32px;
    height: 32px;

    padding: 0;

    border: 0;
    background: transparent;

    color: #c16bbb;

    font-size: 25px;
    line-height: 1;

    cursor: pointer;

    transition: transform .15s ease, color .15s ease;
}

#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-quantity-remove:hover,

#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-quantity-add:hover {
    color: #a957a5;
    transform: scale(1.1);
}


/* Número */
#tribe-tickets__tickets-form
.tribe-tickets__tickets-item-quantity-number-input {
    width: 40px !important;
    min-width: 40px;

    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;

    color: #173b31 !important;

    font-size: 25px !important;
    font-weight: 700;

    text-align: center;

    box-shadow: none !important;
}


/* Ocultar flechas del input number */
#tribe-tickets__tickets-form
input[type="number"]::-webkit-inner-spin-button,

#tribe-tickets__tickets-form
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#tribe-tickets__tickets-form
input[type="number"] {
    appearance: textfield;
}


/* =========================================
   FOOTER DEL TICKET
========================================= */

#tribe-tickets__tickets-form
.tribe-tickets__tickets-footer {
    display: flex;

    align-items: center;

    margin: 0 !important;
    padding: 24px 0 0 !important;

    border: 0 !important;
}


/* Ocultar cantidad y total del footer
   porque ya mostramos el precio arriba */
#tribe-tickets__tickets-form
.tribe-tickets__tickets-footer-quantity,

#tribe-tickets__tickets-form
.tribe-tickets__tickets-footer-total {
    display: none;
}


/* =========================================
   BOTÓN ADQUIRIR ENTRADAS
========================================= */

#tribe-tickets__tickets-form
.tribe-tickets__tickets-buy {
    width: 100%;

    min-height: 54px;

    margin: 0 !important;
    padding: 14px 24px !important;

    border: 0 !important;
    border-radius: 10px !important;

    background: #c16bbb !important;
    color: #ffffff !important;

    font-family: inherit;
    font-size: 16px;
    font-weight: 700;

    cursor: pointer;

    transition:
        background .2s ease,
        transform .2s ease,
        opacity .2s ease;
}


/* Hover */
#tribe-tickets__tickets-form
.tribe-tickets__tickets-buy:not(:disabled):hover {
    background: #a957a5 !important;
    transform: translateY(-1px);
}


/* Deshabilitado */
#tribe-tickets__tickets-form
.tribe-tickets__tickets-buy:disabled {
    background: #dda4e8 !important;
    color: #ffffff !important;
    opacity: .7;
    cursor: not-allowed;
}


/* =========================================
   MENSAJES DEL PLUGIN
========================================= */

#tribe-tickets__tickets-form
.tribe-tickets__notice {
    margin: 0 0 20px !important;
    padding: 12px 16px;

    border-radius: 8px;

    background: #f7edf8;
    color: #173b31;

    font-size: 14px;
}


/* =========================================
   TABLET / MÓVIL
========================================= */

@media (max-width: 767px) {

    .tribe-events.tribe-common,
    .event-tickets.tribe-tickets__tickets-wrapper {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
	.tribe-tickets__commerce-checkout{
		width: 85% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

    .tribe-events-c-subscribe-dropdown__container {
        margin-bottom: 18px !important;
    }

    .tribe-events-c-subscribe-dropdown__button {
        width: 100%;
        justify-content: center;
    }

    #tribe-tickets__tickets-form {
        padding: 24px 20px !important;
        border-radius: 14px;
    }

    #tribe-tickets__tickets-form
    .tribe-tickets__tickets-title {
        font-size: 23px;
    }

    #tribe-tickets__tickets-form
    .tribe-tickets__tickets-item {
        grid-template-columns: 1fr auto;
        gap: 15px;
    }

    #tribe-tickets__tickets-form
    .tribe-tickets__tickets-item-content-title-container {
        grid-column: 1;
    }

    #tribe-tickets__tickets-form
    .tribe-tickets__tickets-item-extra {
        grid-column: 1;
    }

    #tribe-tickets__tickets-form
    .tribe-tickets__tickets-item-quantity {
        grid-column: 2;
        grid-row: 1 / span 2;
    }

    #tribe-tickets__tickets-form
    .tribe-tickets__tickets-item-extra-price {
        font-size: 18px;
    }
}

/* =========================================
   BELAR - INFORMACIÓN DEL EVENTO
========================================= */

/* -----------------------------------------
   SECCIÓN PRINCIPAL
----------------------------------------- */

.tribe-events-single-section.tribe-events-event-meta.primary {
    display: inline-block !important;
    vertical-align: top;

    width: 66.6667% !important;
    max-width: none !important;

    margin: 50px 0 0 !important;
    padding: 35px 40px 45px 0 !important;

    border-top: 1px solid rgba(255, 255, 255, 0.65);
    border-bottom: 1px solid rgba(255, 255, 255, 0.65);

    box-sizing: border-box;

    /* Importante */
    float: none !important;
}


/* -----------------------------------------
   SECCIÓN RECINTO
----------------------------------------- */

.tribe-events-single-section.tribe-events-event-meta.secondary {
    display: inline-block !important;
    vertical-align: top;

    width: 33.3333% !important;
    max-width: none !important;

    margin: 50px 0 0 !important;
    padding: 35px 0 45px 40px !important;

    border-top: 1px solid rgba(255, 255, 255, 0.65);
    border-bottom: 1px solid rgba(255, 255, 255, 0.65);

    box-sizing: border-box;

    float: none !important;
}


/* -----------------------------------------
   QUITAR ESPACIOS / ANCHOS DEL PLUGIN
----------------------------------------- */

.tribe-events-meta-group {
    width: auto !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box;
}


/* -----------------------------------------
   GRID INTERNO DE PRIMARY
   DETALLES | ORGANIZADOR
----------------------------------------- */

.tribe-events-single-section.primary {
    font-size: 16px;
}

.tribe-events-single-section.primary
.tribe-events-meta-group-details {

    display: inline-block;
    vertical-align: top;

    width: 48% !important;

    margin: 0 !important;
    padding: 0 30px 0 0 !important;

    box-sizing: border-box;
}


.tribe-events-single-section.primary
.tribe-events-meta-group-organizer {

    display: inline-block;
    vertical-align: top;

    width: 48% !important;

    margin: 0 !important;
    padding: 0 0 0 20px !important;

    box-sizing: border-box;
}


/* -----------------------------------------
   TÍTULOS
----------------------------------------- */

.tribe-events-single-section
.tribe-events-single-section-title {

    margin: 0 0 25px !important;

    padding: 0 !important;

    color: #ffffff !important;

    font-size: 20px !important;
    line-height: 1.2 !important;

    font-weight: 700 !important;

    text-transform: uppercase;
    letter-spacing: 0.04em;
}


/* -----------------------------------------
   LISTAS
----------------------------------------- */

.tribe-events-single-section
.tribe-events-meta-list {

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


/* -----------------------------------------
   ITEMS
----------------------------------------- */

.tribe-events-single-section
.tribe-events-meta-item {

    margin: 0 0 18px !important;
    padding: 0 !important;

    list-style: none !important;

    color: #ffffff !important;

    font-size: 16px;
    line-height: 1.5;
}


/* -----------------------------------------
   LABELS
----------------------------------------- */

.tribe-events-single-section
.tribe-events-meta-label {

    display: block;

    margin: 0 0 4px !important;

    color: #ffffff !important;

    font-size: 15px;
    line-height: 1.4;

    font-weight: 700 !important;
}


/* -----------------------------------------
   VALORES
----------------------------------------- */

.tribe-events-single-section
.tribe-events-meta-value {

    display: block;

    margin: 0 !important;

    color: rgba(255, 255, 255, 0.9) !important;

    font-size: 16px;
    line-height: 1.5;

    font-weight: 400;
}


/* -----------------------------------------
   ORGANIZADOR
----------------------------------------- */

.tribe-events-single-section
.tribe-events-meta-group-organizer
.tribe-organizer {

    margin: 0 0 18px !important;

    color: #ffffff !important;

    font-size: 17px;

    font-weight: 500;
}


/* -----------------------------------------
   RECINTO
----------------------------------------- */

.tribe-events-single-section.secondary
.tribe-events-meta-group-venue
.tribe-events-meta-item {

    margin: 0 !important;

    color: rgba(255, 255, 255, 0.9) !important;

    font-size: 17px;
    line-height: 1.5;
}


/* -----------------------------------------
   ENLACES
----------------------------------------- */

.tribe-events-single-section
.tribe-events-meta-value a {

    color: #d98ae0 !important;

    text-decoration: underline !important;

    text-decoration-thickness: 1px;
    text-underline-offset: 4px;

    transition:
        color 0.2s ease,
        opacity 0.2s ease;
}


.tribe-events-single-section
.tribe-events-meta-value a:hover {

    color: #ffffff !important;

    opacity: 0.9;
}


/* -----------------------------------------
   FECHA
----------------------------------------- */

.tribe-events-start-date {

    color: rgba(255, 255, 255, 0.9) !important;

    text-transform: capitalize;
}


/* -----------------------------------------
   HORA
----------------------------------------- */

.tribe-events-start-time {

    color: rgba(255, 255, 255, 0.9) !important;
}


/* -----------------------------------------
   COSTE
----------------------------------------- */

.tribe-events-event-cost {

    color: rgba(255, 255, 255, 0.9) !important;

    font-size: 16px;
}


/* -----------------------------------------
   ETIQUETAS / CATEGORÍAS
----------------------------------------- */

.tribe-events-event-categories a,
.tribe-event-tags a {

    color: #d98ae0 !important;

    text-decoration: underline !important;

    text-underline-offset: 4px;
}


/* -----------------------------------------
   LIMPIEZA DEL CLEARFIX DEL PLUGIN
----------------------------------------- */

.tribe-events-single-section.tribe-events-event-meta::after {

    display: none !important;

    content: none !important;
}


/* =========================================
   MÓVIL
========================================= */

@media (max-width: 767px) {

    /* PRIMARY */
    .tribe-events-single-section.tribe-events-event-meta.primary {

        display: block !important;

        width: 100% !important;

        margin: 40px 0 0 !important;

        padding: 30px 20px !important;

        border-bottom: 0;
    }


    /* SECONDARY */
    .tribe-events-single-section.tribe-events-event-meta.secondary {

        display: block !important;

        width: 100% !important;

        margin: 0 !important;

        padding: 0 20px 30px !important;

        border-top: 0;
    }


    /* DETALLES */
    .tribe-events-single-section.primary
    .tribe-events-meta-group-details {

        display: block;

        width: 100% !important;

        padding: 0 !important;

        margin-bottom: 35px !important;
    }


    /* ORGANIZADOR */
    .tribe-events-single-section.primary
    .tribe-events-meta-group-organizer {

        display: block;

        width: 100% !important;

        padding: 0 !important;
    }


    /* TÍTULOS */
    .tribe-events-single-section
    .tribe-events-single-section-title {

        font-size: 18px !important;

        margin-bottom: 20px !important;
    }


    /* ITEMS */
    .tribe-events-single-section
    .tribe-events-meta-item {

        margin-bottom: 17px !important;

        font-size: 15px;
    }


    /* VALORES */
    .tribe-events-single-section
    .tribe-events-meta-value {

        font-size: 15px;
    }
	.tribe-events-single, #tribe-events-content{
		width: 85% !important;
	}

}

.tribe-events-event-meta:before{
	display: none !important; 
}

.tribe-events-cost{
	color: white !important;
}

#wp--skip-link--target{
	margin-top: 0 !important;
}
#pagar-evento{
	background: white !important;
	padding: 5% 0 !important;
}

#jp-form-43fb485ee9a743a29ca8db1ebf95a064123dbbaf, .event-tickets.tribe-tickets__tickets-wrapper, .tribe-events tribe-common{
	max-width: 100% initial !important
}

.tribe-events-single-section.tribe-events-event-meta.primary, .tribe-events-single-section.tribe-events-event-meta.secondary{
	display: none !important;
}

.community-section{
	margin-top: 0 !important;
}

/* =========================================================
   BELAR — CSS global
   Pegar en: Elementor → Ajustes del sitio → CSS personalizado
   Todas las clases van con prefijo "belar-" para no chocar
   con el tema ni con otros plugins.
========================================================= */

:root {
    --belar-verde: #30483b;
    --belar-rosa: #e2a9f1;
    --belar-crema: #f4f2ea;
    --belar-crema-2: #faf9f5;
    --belar-texto: #5a6e63;
    --belar-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* ---------- Base de las secciones ---------- */
.belar-sec {
    --kit-widget-spacing: 0px;
    -webkit-font-smoothing: antialiased;
    color: #fff;
}
.belar-sec .elementor-heading-title,
.belar-sec .elementor-button,
.belar-sec .elementor-counter,
.belar-sec .elementor-widget-text-editor,
.belar-sec .elementor-icon-list-text {
    font-family: var(--belar-font) !important;
}
.belar-sec .elementor-widget-text-editor p { margin: 0; }
.belar-sec .highlight { color: var(--belar-rosa); font-style: italic; }

/* ---------- 1. HERO ---------- */
.belar-sec.belar-hero,
.belar-sec.belar-hero .e-con-inner { text-align: center; }

.belar-sec .elementor-widget.belar-pill { margin-bottom: 40px; }
.belar-sec .belar-pill .elementor-heading-title {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    background-color: rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 8px 24px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    color: #fff;
    letter-spacing: 2px;
}
.belar-sec .belar-pill .elementor-heading-title span { color: var(--belar-rosa); }

.belar-sec .elementor-widget.belar-hero-title { margin-bottom: 30px; }
.belar-sec .belar-hero-title .elementor-heading-title {
    font-weight: 800;
    line-height: 1;
    letter-spacing: -2px;
    text-transform: uppercase;
    color: #fff;
}
.belar-hero-title .l1 { display: block; font-size: clamp(40px, 6vw, 70px); }
.belar-hero-title .l2 {
    display: block;
    font-size: clamp(60px, 9vw, 110px);
    color: var(--belar-rosa);
    font-style: italic;
    letter-spacing: -4px;
    margin-top: -10px;
    text-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);
}
.belar-hero-title .l3 { display: block; font-size: clamp(35px, 5vw, 60px); margin-top: 10px; }

.belar-sec .elementor-widget.belar-hero-sub { max-width: 700px; margin-bottom: 50px; }
.belar-sec .belar-hero-sub .elementor-heading-title {
    font-size: clamp(18px, 2.5vw, 24px);
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.5;
}

.belar-sec .belar-btn .elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 22px 48px;
    border-radius: 50px;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-shadow: 0 10px 20px rgba(226, 169, 241, 0.2);
}
.belar-sec .belar-btn .elementor-button:hover,
.belar-sec .belar-btn .elementor-button:focus-visible {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 20px 30px rgba(226, 169, 241, 0.4);
    background-color: #fff;
    color: var(--belar-rosa);
}

/* ---------- 2. CINTA ANIMADA ---------- */
.belar-sec.belar-marquee-sec { overflow: hidden; }
.belar-marquee-outer {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: clamp(40px, 5vw, 80px) 0;
}
.belar-marquee-wrapper {
    position: relative;
    width: 110%;
    margin-left: -5%;
    background-color: var(--belar-rosa);
    transform: rotate(-2deg);
    display: flex;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    z-index: 2;
}
.belar-marquee-content {
    display: flex;
    flex-shrink: 0;
    width: max-content;
    white-space: nowrap;
    animation: belarMarquee 30s linear infinite;
}
.belar-marquee-text {
    font-family: var(--belar-font);
    font-size: 16px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--belar-verde);
    padding: 15px 0;
    letter-spacing: 2px;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.belar-marquee-text span { margin: 0 30px; }
@keyframes belarMarquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* ---------- 3. STATS ---------- */
.belar-sec.belar-stats { position: relative; overflow-x: clip; }
.belar-sec .e-con.belar-stats-header {
    max-width: 800px;
    margin: 0 auto 60px auto;
    text-align: center;
}
.belar-sec .elementor-widget.belar-stats-title { margin-bottom: 20px; }
.belar-sec .belar-stats-title .elementor-heading-title {
    font-size: clamp(32px, 7vw, 54px);
    font-weight: 800;
    color: #fff;
    line-height: 1.15;
    letter-spacing: -1px;
}
.belar-sec .belar-stats-sub .elementor-heading-title {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.6;
}

.belar-sec .e-con.belar-stat-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(226, 169, 241, 0.15);
    border-radius: 24px;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.belar-sec .e-con.belar-stat-card:hover {
    transform: translateY(-10px);
    border-color: rgba(226, 169, 241, 0.5);
    background: rgba(255, 255, 255, 0.05);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}
.belar-sec .elementor-widget.belar-stat-value { margin-bottom: 16px; }
.belar-sec .belar-stat-value .elementor-counter-number-wrapper,
.belar-sec .belar-stat-value .elementor-heading-title {
    font-size: clamp(30px, 8vw, 52px);
    font-weight: 900;
    color: var(--belar-rosa);
    letter-spacing: -1px;
    line-height: 1.1;
    text-transform: uppercase;
    overflow-wrap: anywhere;
    justify-content: center;
}
.belar-sec .belar-stat-value .elementor-counter-title { display: none; }
.belar-sec .belar-stat-desc,
.belar-sec .belar-stat-desc p {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.5;
    font-weight: 500;
}
.belar-sec .belar-stat-desc strong { color: #fff; font-weight: 700; }

.belar-glow .elementor-heading-title { animation: belarPulse 2s ease-in-out infinite; }
@keyframes belarPulse {
    0%   { text-shadow: 0 0 0 rgba(226, 169, 241, 0); }
    50%  { text-shadow: 0 0 15px rgba(226, 169, 241, 0.6); }
    100% { text-shadow: 0 0 0 rgba(226, 169, 241, 0); }
}

/* ---------- Títulos de sección compartidos ---------- */
.belar-sec .belar-sec-title .elementor-heading-title {
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1px;
    text-transform: uppercase;
}

/* ---------- 4. EVENTOS ---------- */
.belar-sec .elementor-widget.belar-events-title { margin-bottom: 60px; }
.belar-sec .belar-events-title .elementor-heading-title {
    font-size: clamp(36px, 5vw, 54px);
    color: var(--belar-verde);
}

.belar-sec .e-con.belar-event-card {
    background-color: var(--belar-verde);
    border-radius: 24px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 15px 35px rgba(48, 72, 59, 0.15);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.belar-sec .e-con.belar-event-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(48, 72, 59, 0.25);
}

.belar-sec .e-con.belar-ticket-media {
    --width: 45%;
    width: 45%;
    min-height: 250px;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
}
.belar-ticket-media .elementor-widget.belar-ticket-img {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100%;
    max-width: none;
    margin: 0 !important;
}
.belar-ticket-media .belar-ticket-img .elementor-widget-container,
.belar-ticket-media .belar-ticket-img img {
    width: 100%;
    height: 100%;
}
.belar-ticket-media .belar-ticket-img img {
    display: block;
    max-width: none;
    object-fit: cover;
    border-radius: 0;
    transition: transform 0.6s ease;
}
.belar-event-card:hover .belar-ticket-img img { transform: scale(1.08); }

.belar-ticket-media .elementor-widget.belar-date-badge {
    position: absolute !important;
    top: 15px;
    left: 15px;
    z-index: 2;
    width: auto !important;
    margin: 0 !important;
}
.belar-sec .belar-date-badge .elementor-heading-title {
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    padding: 8px 16px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}
.belar-date-badge .day {
    display: block;
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -1px;
}
.belar-date-badge .month {
    display: block;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    margin-top: 2px;
}

.belar-sec .e-con.belar-ticket-info { flex: 1; }

.belar-sec .elementor-widget.belar-event-cat { margin-bottom: 8px; }
.belar-sec .belar-event-cat .elementor-heading-title {
    display: inline-block;
    color: var(--belar-rosa);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.belar-sec .elementor-widget.belar-event-title { margin-bottom: 6px; }
.belar-sec .belar-event-title .elementor-heading-title {
    font-size: 24px;
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
}

.belar-sec .elementor-widget.belar-event-sub { margin: 4px 0 8px; width: auto; }
.belar-sec .belar-event-sub .elementor-heading-title {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    font-style: italic;
    line-height: 1.4;
    color: var(--belar-rosa);
    background-color: rgba(226, 169, 241, 0.12);
    border: 1px solid rgba(226, 169, 241, 0.3);
    padding: 5px 12px;
    border-radius: 20px;
    letter-spacing: 0.2px;
}

.belar-sec .elementor-widget.belar-event-details { margin: 10px 0 24px; }
.belar-sec .belar-event-details .elementor-icon-list-text {
    color: rgba(255, 255, 255, 0.7);
    font-size: 14px;
    font-weight: 500;
}
.belar-sec .belar-event-details .elementor-icon-list-icon i { color: rgba(255, 255, 255, 0.7); font-size: 14px; }
.belar-sec .belar-event-details .elementor-icon-list-icon svg { fill: rgba(255, 255, 255, 0.7); width: 14px; height: 14px; }

.belar-sec .belar-ticket-btn .elementor-button {
    display: inline-flex;
    align-items: center;
    background-color: transparent;
    color: var(--belar-rosa);
    border: 2px solid var(--belar-rosa);
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 12px 24px;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.belar-sec .belar-ticket-btn .elementor-button:hover,
.belar-sec .belar-ticket-btn .elementor-button:focus-visible {
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
}
.belar-ticket-btn .elementor-button-text::after {
    content: "→";
    display: inline-block;
    margin-left: 10px;
    transition: transform 0.2s;
}
.belar-ticket-btn .elementor-button:hover .elementor-button-text::after { transform: translateX(4px); }

/* ---------- 5. EMPRESAS B2B ---------- */
.belar-sec.belar-corp { position: relative; overflow: hidden; }
.belar-sec .e-con.belar-corp-content { flex: 1; max-width: 550px; }

.belar-sec .elementor-widget.belar-corp-label { margin-bottom: 20px; }
.belar-sec .belar-corp-label .elementor-heading-title {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    color: var(--belar-verde);
    text-transform: uppercase;
    letter-spacing: 2px;
    border-bottom: 2px solid var(--belar-rosa);
    padding-bottom: 5px;
}

.belar-sec .elementor-widget.belar-corp-title { margin-bottom: 24px; }
.belar-sec .belar-corp-title .elementor-heading-title {
    font-size: clamp(36px, 4vw, 56px);
    font-weight: 800;
    color: var(--belar-verde);
    line-height: 1.15;
    letter-spacing: -1px;
}
.belar-corp-title .highlight { display: inline-block; margin-top: 5px; }

.belar-sec .elementor-widget.belar-corp-text { margin-bottom: 40px; }
.belar-sec .belar-corp-text .elementor-heading-title {
    font-size: clamp(16px, 1.5vw, 18px);
    font-weight: 400;
    color: var(--belar-texto);
    line-height: 1.6;
}

.belar-sec .belar-corp-btn .elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 18px 36px;
    border-radius: 50px;
    transition: all 0.3s ease;
    box-shadow: 0 10px 20px rgba(226, 169, 241, 0.25);
}
.belar-sec .belar-corp-btn .elementor-button:hover,
.belar-sec .belar-corp-btn .elementor-button:focus-visible {
    transform: translateY(-4px);
    background-color: var(--belar-verde);
    color: #fff;
    box-shadow: 0 15px 25px rgba(48, 72, 59, 0.2);
}

.belar-sec .e-con.belar-corp-media { flex: 1; width: 100%; position: relative; }
.belar-sec .e-con.belar-corp-media::before {
    content: '';
    position: absolute;
    top: -20px;
    right: -20px;
    bottom: auto;
    left: auto;
    width: 80%;
    height: 80%;
    background: var(--belar-rosa);
    border: 0;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.25;
    z-index: 0;
    pointer-events: none;
}
.belar-sec .elementor-widget.belar-corp-img { position: relative; z-index: 1; width: 100%; }
.belar-sec .belar-corp-img img {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 24px;
    box-shadow: 0 20px 50px rgba(48, 72, 59, 0.15);
    transform: rotate(2deg);
    transition: transform 0.5s ease;
}
.belar-sec .belar-corp-img img:hover { transform: rotate(0deg) scale(1.02); }

/* ---------- 6. TESTIMONIOS ---------- */
.belar-sec.belar-testimonials { position: relative; overflow: hidden; }
.belar-sec.belar-testimonials::before,
.belar-sec.belar-testimonials::after {
    content: '';
    position: absolute;
    border: 0;
    border-radius: 50%;
    filter: blur(120px);
    opacity: 1;
    z-index: 0;
    pointer-events: none;
}
.belar-sec.belar-testimonials::before {
    width: 400px;
    height: 400px;
    background: rgba(226, 169, 241, 0.15);
    top: -150px;
    right: -150px;
    bottom: auto;
    left: auto;
}
.belar-sec.belar-testimonials::after {
    width: 500px;
    height: 500px;
    background: rgba(255, 255, 255, 0.05);
    bottom: -200px;
    left: -200px;
    top: auto;
    right: auto;
}
.belar-sec.belar-testimonials > .e-con-inner { position: relative; z-index: 2; }

.belar-sec .elementor-widget.belar-testi-title { margin-bottom: 60px; }
.belar-sec .belar-testi-title .elementor-heading-title {
    font-size: clamp(32px, 5vw, 48px);
    color: #fff;
}
.belar-sec .elementor-widget.belar-testi-plugin { width: 100%; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
    /* iOS no soporta bien el fondo fijo */
    .belar-sec.belar-hero { background-attachment: scroll !important; }
}

@media (max-width: 767px) {
    .belar-sec .belar-pill .elementor-heading-title {
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }
    .belar-hero-title .l2 { letter-spacing: -1px; }
    .belar-marquee-text { font-size: 14px; }

    .belar-sec .e-con.belar-ticket-media {
        --width: 100%;
        width: 100%;
        min-height: 0;
        aspect-ratio: 4 / 3;
    }
}

@media (prefers-reduced-motion: reduce) {
    .belar-marquee-content,
    .belar-glow .elementor-heading-title { animation: none; }
    .belar-sec .e-con.belar-stat-card:hover,
    .belar-sec .e-con.belar-event-card:hover,
    .belar-sec .belar-btn .elementor-button:hover,
    .belar-sec .belar-corp-btn .elementor-button:hover { transform: none; }
}

/* ---------- 7. SPONSORS ---------- */
.belar-sec.belar-sponsors { --belar-sponsors-gap: 24px; overflow: hidden; }

.belar-sec .elementor-widget.belar-sponsors-title { margin-bottom: 50px; }
.belar-sec .belar-sponsors-title .elementor-heading-title {
    font-size: clamp(28px, 4vw, 40px);
    font-weight: 800;
    color: #fff;
    letter-spacing: -1px;
}

.belar-sec .elementor-widget.belar-sponsors-logos { width: 100%; }
.belar-sponsors-marquee {
    width: 100%;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to right, transparent, #000 15%, #000 85%, transparent);
    mask-image: linear-gradient(to right, transparent, #000 15%, #000 85%, transparent);
}
.belar-sponsors-track {
    display: flex;
    align-items: center;
    width: max-content;
    animation: belarSponsors 25s linear infinite;
}
.belar-sponsors-track:hover { animation-play-state: paused; }

/* El espacio va como padding de cada imagen (no como gap) para que el
   desplazamiento del -50% coincida exacto y el bucle no "salte". */
.belar-sponsors .belar-sponsors-strip {
    height: 45px;
    width: auto;
    max-width: none;
    box-sizing: content-box;
    padding-right: var(--belar-sponsors-gap);
    object-fit: contain;
    filter: brightness(0) invert(1);
    opacity: 0.6;
    transition: opacity 0.4s ease;
}
.belar-sponsors-track:hover .belar-sponsors-strip { opacity: 1; }

@keyframes belarSponsors {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

@media (max-width: 767px) {
    .belar-sponsors .belar-sponsors-strip { height: 30px; }
}
@media (prefers-reduced-motion: reduce) {
    .belar-sponsors-track { animation: none; }
}

/* ---------- PÁGINA CIUDADES ---------- */
html:not(.lenis) { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.belar-sec .e-con.belar-cities-header { margin-bottom: 60px; text-align: center; }
.belar-sec .elementor-widget.belar-cities-prefix { margin-bottom: 15px; }
.belar-sec .belar-cities-prefix .elementor-heading-title {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    color: var(--belar-verde);
    text-transform: uppercase;
    letter-spacing: 2px;
    border-bottom: 2px solid var(--belar-rosa);
    padding-bottom: 5px;
}
.belar-sec .belar-cities-title .elementor-heading-title {
    font-size: clamp(36px, 5vw, 48px);
    font-weight: 800;
    color: var(--belar-verde);
    line-height: 1.1;
    letter-spacing: -1px;
}

/* Tarjeta */
.belar-sec .e-con.belar-city-card {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    box-shadow: 0 20px 40px rgba(48, 72, 59, 0.1);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.belar-sec .e-con.belar-city-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 50px rgba(48, 72, 59, 0.2);
}

/* Imagen de fondo (widget Imagen, editable) */
.belar-city-card .elementor-widget.belar-city-img {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100%;
    max-width: none;
    margin: 0 !important;
    z-index: 1;
}
.belar-city-card .belar-city-img .elementor-widget-container,
.belar-city-card .belar-city-img img { width: 100%; height: 100%; }
.belar-city-card .belar-city-img img {
    display: block;
    max-width: none;
    object-fit: cover;
    border-radius: 0;
    transition: transform 0.8s ease;
}
.belar-city-card:hover .belar-city-img img { transform: scale(1.06); }

/* Degradado oscuro */
.belar-sec .e-con.belar-city-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(15, 25, 20, 0.95) 0%, rgba(15, 25, 20, 0.75) 50%, rgba(15, 25, 20, 0.4) 100%);
    z-index: 2;
    pointer-events: none;
}

/* Etiqueta */
.belar-city-card .elementor-widget.belar-city-badge {
    position: absolute !important;
    top: 30px;
    left: 30px;
    width: auto !important;
    margin: 0 !important;
    z-index: 3;
}
.belar-sec .belar-city-badge .elementor-heading-title {
    display: inline-block;
    background-color: rgba(226, 169, 241, 0.9);
    color: var(--belar-verde);
    font-size: 11px;
    font-weight: 800;
    line-height: 1.4;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 6px 14px;
    border-radius: 50px;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}

/* Contenido */
.belar-sec .e-con.belar-city-content { position: relative; z-index: 3; }
.belar-sec .elementor-widget.belar-city-name { margin-bottom: 10px; }
.belar-sec .belar-city-name .elementor-heading-title {
    font-size: clamp(40px, 4vw, 56px);
    font-weight: 900;
    color: #fff;
    line-height: 1;
    letter-spacing: -1px;
}
.belar-sec .elementor-widget.belar-city-desc { margin-bottom: 30px; max-width: 90%; }
.belar-sec .belar-city-desc .elementor-heading-title {
    font-size: 16px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.5;
}

/* Botones */
.belar-sec .belar-city-btn-wa .elementor-button,
.belar-sec .belar-city-btn-events .elementor-button {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    line-height: 1.2;
    padding: 14px 24px;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.belar-sec .belar-city-btn-wa .elementor-button {
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    font-weight: 800;
}
.belar-sec .belar-city-btn-wa .elementor-button-content-wrapper { gap: 10px; align-items: center; }
.belar-sec .belar-city-btn-wa .elementor-button-icon svg { width: 20px; height: 20px; fill: currentColor; }
.belar-sec .belar-city-btn-wa .elementor-button-icon i { font-size: 20px; }

.belar-sec .belar-city-btn-events .elementor-button {
    background-color: rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    color: #fff;
    font-weight: 700;
}
.belar-sec .belar-city-btn-wa .elementor-button:hover,
.belar-sec .belar-city-btn-wa .elementor-button:focus-visible {
    background-color: #fff;
    color: var(--belar-verde);
    transform: translateY(-2px);
}
.belar-sec .belar-city-btn-events .elementor-button:hover,
.belar-sec .belar-city-btn-events .elementor-button:focus-visible {
    background-color: #fff;
    color: var(--belar-verde);
    border-color: #fff;
    transform: translateY(-2px);
}

@media (max-width: 767px) {
    .belar-sec .e-con.belar-city-actions { width: 100%; align-items: stretch; }
    .belar-city-actions .elementor-widget { width: 100%; }
    .belar-sec .belar-city-actions .elementor-button { width: 100%; justify-content: center; }
    .belar-city-card .elementor-widget.belar-city-badge { top: 20px; left: 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .belar-sec .e-con.belar-city-card:hover,
    .belar-city-card:hover .belar-city-img img { transform: none; }
}

/* =========================================================
   PÁGINA EMPRESAS
========================================================= */

/* ---------- 1. Hero ---------- */
.belar-sec.belar-emp-hero { position: relative; }
.belar-sec.belar-emp-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.05) 100%);
    opacity: 1;
    z-index: 1;
    pointer-events: none;
}
.belar-sec.belar-emp-hero > .e-con-inner { position: relative; z-index: 2; }
.belar-sec .e-con.belar-emp-hero-content { max-width: 700px; }

.belar-sec .elementor-widget.belar-emp-label { margin-bottom: 20px; }
.belar-sec .belar-emp-label .elementor-heading-title {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    color: var(--belar-rosa);
    text-transform: uppercase;
    letter-spacing: 2px;
}
.belar-sec .elementor-widget.belar-emp-hero-title { margin-bottom: 24px; }
.belar-sec .belar-emp-hero-title .elementor-heading-title {
    font-size: clamp(36px, 5vw, 64px);
    font-weight: 800;
    color: #fff;
    line-height: 1.1;
    letter-spacing: -1px;
}
.belar-sec .elementor-widget.belar-emp-hero-sub { margin-bottom: 40px; max-width: 600px; }
.belar-sec .belar-emp-hero-sub .elementor-heading-title {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 400;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.6;
}
.belar-sec .belar-emp-btn .elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    padding: 18px 36px;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.belar-sec .belar-emp-btn .elementor-button:hover,
.belar-sec .belar-emp-btn .elementor-button:focus-visible {
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(226, 169, 241, 0.4);
    background-color: #ebbcfa;
    color: var(--belar-verde);
}
.belar-sec .elementor-widget.belar-emp-tags { margin-top: 30px; }
.belar-sec .belar-emp-tags .elementor-heading-title {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-weight: 400;
}
.belar-emp-tags .belar-tag {
    font-size: 13px;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.3);
    padding: 6px 16px;
    border-radius: 20px;
    transition: all 0.2s ease;
}
.belar-emp-tags .belar-tag:hover { border-color: var(--belar-rosa); color: var(--belar-rosa); }

/* ---------- 2. Intro ---------- */
.belar-sec .e-con.belar-emp-intro-side { --width: 200px; width: 200px; flex: 0 0 200px; }
.belar-sec .e-con.belar-emp-intro-main { flex: 1; }
.belar-sec .belar-emp-intro-label .elementor-heading-title {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7);
    letter-spacing: 1.5px;
    text-transform: uppercase;
}
.belar-sec .belar-emp-intro-label .elementor-heading-title::before {
    content: '';
    display: block;
    width: 35px;
    height: 2px;
    background-color: var(--belar-rosa);
    margin-bottom: 15px;
}
.belar-sec .belar-emp-intro-title .elementor-heading-title {
    font-size: clamp(28px, 4vw, 54px);
    line-height: 1.15;
    font-weight: 700;
    color: #fff;
}
.belar-emp-intro-title .italic-text {
    display: block;
    font-style: italic;
    color: var(--belar-rosa);
    margin-top: 5px;
}

/* ---------- 3. Estadísticas (fondo rosa) ---------- */
.belar-sec.belar-emp-stats { position: relative; overflow: hidden; }
.belar-sec.belar-emp-stats::before,
.belar-sec.belar-emp-stats::after {
    content: '';
    position: absolute;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.18);
    opacity: 1;
    pointer-events: none;
    z-index: 0;
}
.belar-sec.belar-emp-stats::before { width: 420px; height: 420px; top: -210px; left: -120px; right: auto; bottom: auto; }
.belar-sec.belar-emp-stats::after  { width: 320px; height: 320px; bottom: -160px; right: -80px; top: auto; left: auto; }
.belar-sec.belar-emp-stats > .e-con-inner { position: relative; z-index: 1; }

.belar-sec .e-con.belar-emp-stat { text-align: center; }
@media (min-width: 768px) {
    .belar-sec .e-con.belar-emp-stat + .e-con.belar-emp-stat { border-left: 1px solid rgba(48, 72, 59, 0.2); }
}

.belar-sec .elementor-widget.belar-emp-stat-icon { margin-bottom: 20px; }
.belar-sec .belar-emp-stat .elementor-widget-icon .elementor-icon {
    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: var(--belar-verde);
    color: var(--belar-rosa);
    font-size: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.35s ease;
}
.belar-sec .belar-emp-stat .elementor-widget-icon .elementor-icon svg { width: 26px; height: 26px; fill: var(--belar-rosa); }
.belar-sec .belar-emp-stat .elementor-widget-icon .elementor-icon i { color: var(--belar-rosa); }
.belar-sec .belar-emp-stat .elementor-icon::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid var(--belar-verde);
    animation: belarStatPulse 2.8s ease-out infinite;
}
@keyframes belarStatPulse {
    0%   { transform: scale(1);   opacity: 0.45; }
    100% { transform: scale(1.6); opacity: 0; }
}
.belar-emp-stat:hover .elementor-icon { transform: translateY(-5px) rotate(-8deg); }

.belar-sec .belar-emp-counter .elementor-counter { flex-direction: column; align-items: center; }
.belar-sec .belar-emp-counter .elementor-counter-number-wrapper {
    justify-content: center;
    font-size: clamp(28px, 4.5vw, 60px);
    font-weight: 800;
    color: #fff;
    letter-spacing: -0.5px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    text-shadow: 0 3px 0 rgba(48, 72, 59, 0.18);
    margin-bottom: 12px;
}
.belar-sec .belar-emp-counter .elementor-counter-title {
    font-size: 12px;
    font-weight: 700;
    color: var(--belar-verde);
    letter-spacing: 0.5px;
    text-transform: uppercase;
    line-height: 1.4;
    text-align: center;
}

/* ---------- Títulos de sección ---------- */
.belar-sec .elementor-widget.belar-emp-h2 { max-width: 800px; margin: 0 auto 60px; }
.belar-sec .belar-emp-h2 .elementor-heading-title {
    font-size: clamp(28px, 4vw, 46px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    color: #fff;
}

/* ---------- 4. Diferenciadores ---------- */
.belar-sec .e-con.belar-emp-card {
    background-color: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(226, 169, 241, 0.2);
    border-radius: 16px;
    transition: all 0.3s ease;
}
.belar-sec .e-con.belar-emp-card:hover {
    transform: translateY(-6px);
    border-color: var(--belar-rosa);
    background-color: rgba(255, 255, 255, 0.07);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
}
.belar-sec .elementor-widget.belar-emp-card-num { margin-bottom: 16px; }
.belar-sec .belar-emp-card-num .elementor-heading-title {
    display: inline-block;
    font-size: 22px;
    font-weight: 800;
    color: var(--belar-rosa);
    letter-spacing: 1px;
}
.belar-sec .elementor-widget.belar-emp-card-title { margin-bottom: 12px; }
.belar-sec .belar-emp-card-title .elementor-heading-title {
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
}
.belar-sec .belar-emp-card-desc .elementor-heading-title {
    font-size: 16px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.6;
}

/* ---------- 5. Carrusel de tipos de evento ---------- */
.belar-sec.belar-emp-events { overflow: hidden; }
.belar-sec .e-con.belar-emp-carousel {
    flex-wrap: nowrap;
    gap: 24px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 0 20px 30px;
    scrollbar-width: thin;
    scrollbar-color: var(--belar-rosa) rgba(255, 255, 255, 0.1);
}
.belar-emp-carousel::-webkit-scrollbar { height: 6px; }
.belar-emp-carousel::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.1); border-radius: 10px; }
.belar-emp-carousel::-webkit-scrollbar-thumb { background: var(--belar-rosa); border-radius: 10px; }

.belar-sec .e-con.belar-emp-evcard {
    --width: auto;
    width: auto;
    flex: 0 0 85%;
    height: 480px;
    position: relative;
    overflow: hidden;
    border-radius: 16px;
    scroll-snap-align: start;
    padding: 40px 30px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.belar-sec .e-con.belar-emp-evcard::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.3) 40%, rgba(0,0,0,0) 100%);
    opacity: 1;
    z-index: 1;
    pointer-events: none;
}
.belar-emp-evcard > .elementor-widget { position: relative; z-index: 2; width: 100%; }
.belar-sec .elementor-widget.belar-emp-evtitle { padding-bottom: 10px; }
.belar-sec .belar-emp-evtitle .elementor-heading-title {
    font-size: clamp(24px, 2.5vw, 30px);
    font-weight: 700;
    color: #fff;
    line-height: 1.15;
}
@media (min-width: 768px) and (max-width: 1023px) {
    .belar-sec .e-con.belar-emp-evcard { flex: 0 0 340px; }
}
@media (min-width: 1024px) {
    .belar-sec .e-con.belar-emp-carousel {
        justify-content: center;
        padding: 0 40px;
        overflow-x: hidden;
        scrollbar-width: none;
    }
    .belar-emp-carousel::-webkit-scrollbar { display: none; }
    .belar-sec .e-con.belar-emp-evcard { flex: 1 1 0; max-width: 380px; height: 520px; }
    .belar-sec .e-con.belar-emp-evcard:hover {
        transform: translateY(-8px);
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.4);
    }
}

/* ---------- 6. Timeline ---------- */
.belar-sec.belar-emp-timeline { color: var(--belar-verde); }
.belar-sec .elementor-widget.belar-emp-tl-title { margin-bottom: 60px; }
.belar-sec .belar-emp-tl-title .elementor-heading-title {
    font-size: clamp(28px, 4vw, 48px);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -1px;
    color: var(--belar-verde);
}
.belar-sec .e-con.belar-emp-tl-grid { position: relative; }
.belar-sec .e-con.belar-emp-tl-grid::before {
    content: '';
    position: absolute;
    top: 15px;
    left: 0;
    right: auto;
    bottom: auto;
    width: 100%;
    height: 2px;
    border: 0;
    border-radius: 0;
    background: rgba(48, 72, 59, 0.1);
    opacity: 1;
    z-index: 1;
    pointer-events: none;
}
.belar-sec .e-con.belar-emp-step { position: relative; z-index: 2; padding-top: 56px; }
.belar-sec .e-con.belar-emp-step::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
    width: 32px;
    height: 32px;
    box-sizing: border-box;
    background: var(--belar-rosa);
    border: 6px solid #fff;
    border-radius: 50%;
    opacity: 1;
}
.belar-sec .elementor-widget.belar-emp-step-title { margin-bottom: 12px; }
.belar-sec .belar-emp-step-title .elementor-heading-title {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 1px;
    color: var(--belar-verde);
}
.belar-sec .belar-emp-step-text .elementor-heading-title {
    font-size: 15px;
    line-height: 1.7;
    color: #4a5c52;
    font-weight: 500;
}

/* ---------- 7. CTA + Patrocinio ---------- */
.belar-sec .e-con.belar-emp-cta-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1.5px solid rgba(226, 169, 241, 0.25);
    border-radius: 20px;
    transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease;
}
.belar-sec .e-con.belar-emp-cta-card:hover {
    transform: translateY(-4px);
    border-color: var(--belar-rosa);
    background: rgba(255, 255, 255, 0.06);
}
.belar-sec .elementor-widget.belar-emp-cta-tag { margin-bottom: 12px; }
.belar-sec .belar-emp-cta-tag .elementor-heading-title {
    display: inline-block;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--belar-rosa);
}
.belar-sec .elementor-widget.belar-emp-cta-title { margin-bottom: 10px; }
.belar-sec .belar-emp-cta-title .elementor-heading-title {
    font-size: clamp(20px, 2.2vw, 26px);
    font-weight: 800;
    color: #fff;
    line-height: 1.25;
}
.belar-emp-cta-title .elementor-heading-title span { color: var(--belar-rosa); font-style: italic; }
.belar-sec .elementor-widget.belar-emp-cta-desc { margin-bottom: 28px; }
.belar-sec .belar-emp-cta-desc .elementor-heading-title {
    font-size: 14px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.5;
}
.belar-sec .elementor-widget.belar-emp-cta-btn { width: 100%; }
.belar-sec .belar-emp-cta-btn .elementor-button {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 16px 28px;
    border-radius: 50px;
    box-shadow: 0 6px 18px rgba(226, 169, 241, 0.2);
    transition: all 0.3s ease;
}
.belar-sec .belar-emp-cta-btn .elementor-button:hover,
.belar-sec .belar-emp-cta-btn .elementor-button:focus-visible {
    background-color: #fff;
    color: var(--belar-verde);
    box-shadow: 0 10px 22px rgba(255, 255, 255, 0.35);
}
.belar-emp-cta-btn.belar-arrow .elementor-button-text::after {
    content: "→";
    display: inline-block;
    margin-left: 8px;
    transition: transform 0.2s;
}
.belar-emp-cta-btn.belar-arrow .elementor-button:hover .elementor-button-text::after { transform: translateX(4px); }

/* ---------- 8. Confían en nosotros ---------- */
.belar-sec .elementor-widget.belar-emp-trust-title { margin-bottom: 40px; }
.belar-sec .belar-emp-trust-title .elementor-heading-title {
    font-size: clamp(28px, 4vw, 44px);
    font-weight: 700;
    color: var(--belar-verde);
    letter-spacing: -0.5px;
}
.belar-sec .e-con.belar-emp-logos { width: 100%; }
.belar-sec .elementor-widget.belar-emp-logo { width: auto; }
.belar-sec .belar-emp-logo img {
    height: 40px;
    width: auto;
    max-width: 180px;
    object-fit: contain;
    filter: brightness(0) invert(1);   /* todos los logos en blanco */
    transition: transform 0.3s ease;
}
.belar-sec .belar-emp-logo img:hover { transform: scale(1.05); }

/* ---------- 9. Preguntas frecuentes ---------- */
.belar-sec .elementor-widget.belar-faq-title { margin-bottom: 60px; }
.belar-sec .belar-faq-title .elementor-heading-title {
    font-size: clamp(32px, 4vw, 46px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    color: #fff;
}
.belar-sec .elementor-widget.belar-faq-widget { width: 100%; }
.belar-faq-list {
    display: flex;
    flex-direction: column;
    border-top: 1px solid rgba(226, 169, 241, 0.3);
    font-family: var(--belar-font);
}
.belar-faq-item { border-bottom: 1px solid rgba(226, 169, 241, 0.3); }
.belar-faq-q {
    font-size: clamp(18px, 2vw, 22px);
    font-weight: 700;
    color: #fff;
    padding: 30px 0;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    list-style: none;
    transition: color 0.3s ease;
}
.belar-faq-q::-webkit-details-marker { display: none; }
.belar-faq-q:hover,
.belar-faq-item[open] .belar-faq-q { color: var(--belar-rosa); }
.belar-faq-q:focus-visible { outline: 2px solid var(--belar-rosa); outline-offset: 4px; border-radius: 4px; }
.belar-faq-icon {
    flex-shrink: 0;
    font-size: 28px;
    font-weight: 300;
    color: var(--belar-rosa);
    margin-left: 20px;
    line-height: 1;
    transition: transform 0.3s ease;
}
.belar-faq-item[open] .belar-faq-icon { transform: rotate(45deg); }
.belar-faq-a {
    font-size: 16px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    padding: 0 40px 30px 0;
}
.belar-faq-a p { margin: 0; }

/* ---------- 10. Contacto ---------- */
.belar-sec.belar-contact { color: var(--belar-verde); scroll-margin-top: 20px; }
.belar-sec .e-con.belar-ct-head { max-width: 720px; text-align: center; }

.belar-sec .elementor-widget.belar-ct-label { margin-bottom: 22px; }
.belar-sec .belar-ct-label .elementor-heading-title {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--belar-verde);
}
.belar-sec .belar-ct-label .elementor-heading-title::before,
.belar-sec .belar-ct-label .elementor-heading-title::after {
    content: '';
    width: 28px;
    height: 2px;
    background-color: var(--belar-verde);
    opacity: 0.6;
}
.belar-sec .elementor-widget.belar-ct-title { margin-bottom: 22px; }
.belar-sec .belar-ct-title .elementor-heading-title {
    font-size: clamp(36px, 6vw, 60px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -1.5px;
    color: var(--belar-verde);
}
.belar-ct-title em { font-style: italic; color: #fff; text-shadow: 0 3px 0 rgba(48, 72, 59, 0.15); }
.belar-sec .elementor-widget.belar-ct-text { max-width: 560px; margin: 0 auto; }
.belar-sec .belar-ct-text .elementor-heading-title {
    font-size: clamp(16px, 2vw, 19px);
    font-weight: 400;
    line-height: 1.65;
    color: rgba(48, 72, 59, 0.9);
}
.belar-ct-text strong { color: var(--belar-verde); font-weight: 700; }

.belar-sec .elementor-widget.belar-ct-arrow { margin-top: 34px; }
.belar-sec .belar-ct-arrow .elementor-icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: var(--belar-verde);
    color: var(--belar-rosa);
    font-size: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    animation: belarBounce 2s ease-in-out infinite;
}
.belar-sec .belar-ct-arrow .elementor-icon svg { width: 18px; height: 18px; fill: var(--belar-rosa); }
.belar-sec .belar-ct-arrow .elementor-icon i { color: var(--belar-rosa); }
@keyframes belarBounce {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(7px); }
}

/* Formulario (Elementor Pro Form) */
.belar-sec .elementor-widget.belar-form { width: 100%; max-width: 680px; margin: 40px auto 0; }
.belar-sec .belar-form .elementor-field-label {
    color: #fff;
    font-family: var(--belar-font);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 6px;
}
.belar-sec .belar-form .elementor-mark-required .elementor-field-label::after {
    content: " (obligatorio)";
    color: rgba(255, 255, 255, 0.85);
    font-size: 11px;
    font-weight: 400;
    padding-left: 2px;
}
.belar-sec .belar-form .elementor-field-group .elementor-field-textual {
    background-color: #fff;
    border: 2px solid transparent;
    border-radius: 12px;
    padding: 13px 16px;
    font-family: var(--belar-font);
    font-size: 14px;
    line-height: 1.4;
    color: var(--belar-verde);
    min-height: 50px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.belar-sec .belar-form .elementor-field-group textarea.elementor-field-textual { min-height: 140px; resize: vertical; }
.belar-sec .belar-form .elementor-field-textual::placeholder { color: rgba(48, 72, 59, 0.45); }
.belar-sec .belar-form .elementor-field-group .elementor-field-textual:focus {
    outline: none;
    border-color: var(--belar-verde);
    box-shadow: 0 0 0 4px rgba(48, 72, 59, 0.15);
}
.belar-sec .belar-form .elementor-select-wrapper .select-caret-down-wrapper { color: var(--belar-verde); inset-inline-end: 16px; }
.belar-sec .belar-form .elementor-select-wrapper .select-caret-down-wrapper svg { fill: var(--belar-verde); }

.belar-sec .belar-form .elementor-field-type-submit { margin-top: 6px; }
.belar-sec .belar-form .elementor-button {
    width: 100%;
    justify-content: center;
    background-color: var(--belar-verde);
    color: #fff;
    font-family: var(--belar-font);
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    padding: 18px 24px;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.belar-sec .belar-form .elementor-button:hover,
.belar-sec .belar-form .elementor-button:focus-visible {
    background-color: #233a2e;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(48, 72, 59, 0.25);
}
.belar-sec .belar-form .elementor-message { font-family: var(--belar-font); color: var(--belar-verde); font-weight: 600; margin-top: 14px; }

/* ---------- Responsive Empresas ---------- */
@media (max-width: 1024px) {
    .belar-sec.belar-emp-hero { background-position: 70% center !important; }
}
@media (max-width: 767px) {
    .belar-sec.belar-emp-hero::after {
        background: linear-gradient(to top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.35) 100%);
    }
    .belar-sec .e-con.belar-emp-intro-side { --width: 100%; width: 100%; flex: none; }

    .belar-sec .belar-emp-counter .elementor-counter-number-wrapper { font-size: clamp(26px, 6.5vw, 36px); }
    .belar-sec .belar-emp-counter .elementor-counter-title { font-size: 11px; }

    .belar-sec .elementor-widget.belar-emp-h2 { margin-bottom: 40px; }

    .belar-sec .elementor-widget.belar-emp-tl-title { margin-bottom: 40px; }
    .belar-sec .e-con.belar-emp-tl-grid::before {
        top: 14px;
        left: 15px;
        width: 2px;
        height: calc(100% - 28px);
        background: rgba(48, 72, 59, 0.15);
    }
    .belar-sec .e-con.belar-emp-step { padding-top: 0; padding-left: 48px; }
    .belar-sec .e-con.belar-emp-step::before { top: 2px; }

    .belar-sec .belar-emp-logo img { height: 30px; }
    .belar-sec .elementor-widget.belar-ct-arrow { margin-top: 26px; }
}
@media (prefers-reduced-motion: reduce) {
    .belar-sec .belar-emp-stat .elementor-icon::after,
    .belar-sec .belar-ct-arrow .elementor-icon { animation: none; }
    .belar-sec .e-con.belar-emp-card:hover,
    .belar-sec .e-con.belar-emp-cta-card:hover,
    .belar-sec .e-con.belar-emp-evcard:hover { transform: none; }
}

/* =========================================================
   PÁGINA CONTACTO
   (reutiliza .belar-ct-* y .belar-form de Empresas)
========================================================= */
.belar-sec.belar-contact-page { min-height: 80vh; }

.belar-sec .e-con.belar-ct-quick { margin-top: 34px; }
.belar-sec .belar-ct-quick-btn .elementor-button {
    display: inline-flex;
    align-items: center;
    background-color: #fff;
    color: var(--belar-verde);
    font-family: var(--belar-font);
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    padding: 14px 22px;
    border-radius: 50px;
    box-shadow: 0 6px 16px rgba(48, 72, 59, 0.1);
    transition: all 0.3s ease;
}
.belar-sec .belar-ct-quick-btn .elementor-button-content-wrapper { gap: 8px; align-items: center; }
.belar-sec .belar-ct-quick-btn .elementor-button-icon svg { width: 18px; height: 18px; fill: currentColor; }
.belar-sec .belar-ct-quick-btn .elementor-button-icon i { font-size: 18px; }
.belar-sec .belar-ct-quick-btn .elementor-button:hover,
.belar-sec .belar-ct-quick-btn .elementor-button:focus-visible {
    background-color: var(--belar-verde);
    color: #fff;
    transform: translateY(-2px);
}

.belar-sec .elementor-widget.belar-ct-divider { margin-top: 44px; }
.belar-sec .belar-ct-divider .elementor-heading-title {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: rgba(48, 72, 59, 0.75);
}
.belar-sec .belar-ct-divider .elementor-heading-title::before,
.belar-sec .belar-ct-divider .elementor-heading-title::after {
    content: '';
    width: 40px;
    height: 1px;
    background-color: rgba(48, 72, 59, 0.4);
}
.belar-sec.belar-contact-page .elementor-widget.belar-form { margin-top: 24px; }

/* Casilla de privacidad (sirve también para el formulario de Empresas) */
.belar-sec .belar-form .elementor-field-type-acceptance .elementor-field-option {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.belar-sec .belar-form .elementor-field-type-acceptance input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: var(--belar-verde);
}
.belar-sec .belar-form .elementor-field-type-acceptance label {
    font-family: var(--belar-font);
    font-size: 13px;
    line-height: 1.5;
    color: #fff;
    font-weight: 500;
}
.belar-sec .belar-form .elementor-field-type-acceptance a {
    color: var(--belar-verde);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 2px;
}

@media (max-width: 767px) {
    .belar-sec .e-con.belar-ct-quick { margin-top: 26px; }
    .belar-sec .elementor-widget.belar-ct-divider { margin-top: 34px; }
}

/* =========================================================
   PÁGINAS LEGALES
========================================================= */
.belar-sec .elementor-widget.belar-legal-title { margin-bottom: 14px; }
.belar-sec .belar-legal-title .elementor-heading-title {
    font-size: clamp(36px, 5vw, 56px);
    font-weight: 800;
    color: #fff;
    line-height: 1.1;
    letter-spacing: -1px;
}
.belar-sec .belar-legal-date .elementor-heading-title {
    font-size: 14px;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.65);
}

.belar-sec .belar-legal-content {
    font-family: var(--belar-font);
    font-size: 16px;
    line-height: 1.75;
    color: var(--belar-texto);
}
.belar-sec .belar-legal-content h2 {
    font-family: var(--belar-font);
    font-size: clamp(20px, 2.4vw, 24px);
    font-weight: 800;
    line-height: 1.3;
    color: var(--belar-verde);
    margin: 48px 0 14px;
    padding-top: 28px;
    border-top: 1px solid rgba(48, 72, 59, 0.12);
}
.belar-sec .belar-legal-content h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.belar-sec .belar-legal-content p { margin: 0 0 16px; }
.belar-sec .belar-legal-content p:last-child { margin-bottom: 0; }
.belar-sec .belar-legal-content .belar-legal-lead { font-size: 18px; color: var(--belar-verde); font-weight: 500; margin-bottom: 40px; }
.belar-sec .belar-legal-content strong { color: var(--belar-verde); font-weight: 700; }
.belar-sec .belar-legal-content ul { margin: 0 0 16px; padding-left: 0; list-style: none; }
.belar-sec .belar-legal-content li { position: relative; padding-left: 22px; margin-bottom: 8px; }
.belar-sec .belar-legal-content li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--belar-rosa);
}
.belar-sec .belar-legal-content a {
    color: var(--belar-verde);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: var(--belar-rosa);
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}
.belar-sec .belar-legal-content a:hover { color: #000; }

/* Marca visible para datos pendientes — borrar cuando se completen */
.belar-todo {
    background-color: #fff3b0;
    color: var(--belar-verde);
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 4px;
}

/* =========================================================
   HEADER Y FOOTER
   (pegar al final del CSS de Ajustes del sitio)
========================================================= */

/* Logo en blanco sobre el verde. Si el logo tiene colores que quieras conservar,
   quita la clase "belar-logo-blanco" del widget (Avanzado → Clases CSS). */
/* .belar-logo-blanco img { filter: brightness(0) invert(1); } */

/* ---------- HEADER ---------- */
.belar-hdr {
    --kit-widget-spacing: 0px;
    font-family: var(--belar-font);
    transition: box-shadow 0.3s ease, padding 0.3s ease;
    z-index: 999;
}
.belar-hdr.elementor-sticky--effects { box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18); }

.belar-hdr .elementor-widget.belar-hdr-logo { width: auto; flex-shrink: 0; }
.belar-hdr .belar-hdr-logo img {
    display: block;
    height: 44px;
    width: auto;
    max-width: 200px;
    object-fit: contain;
}
.belar-hdr .e-con.belar-hdr-right { width: auto; flex: 1 1 auto; }

/* Menú */
.belar-hdr .belar-hdr-nav .elementor-nav-menu--main .elementor-item {
    font-family: var(--belar-font);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.3px;
    color: #fff;
    padding: 10px 4px;
    margin: 0 10px;
}
.belar-hdr .belar-hdr-nav .elementor-nav-menu--main .elementor-item:hover,
.belar-hdr .belar-hdr-nav .elementor-nav-menu--main .elementor-item.elementor-item-active,
.belar-hdr .belar-hdr-nav .elementor-nav-menu--main .elementor-item:focus-visible { color: var(--belar-rosa); }
.belar-hdr .belar-hdr-nav .e--pointer-underline .elementor-item::after {
    background-color: var(--belar-rosa);
    height: 2px;
}

/* Hamburguesa y menú desplegable (tablet y móvil) */
.belar-hdr .belar-hdr-nav .elementor-menu-toggle {
    background: transparent;
    color: #fff;
    font-size: 26px;
    padding: 6px;
    border-radius: 8px;
}
.belar-hdr .belar-hdr-nav .elementor-menu-toggle svg { fill: #fff; }
.belar-hdr .belar-hdr-nav .elementor-menu-toggle:hover { background: rgba(255, 255, 255, 0.1); }
.belar-hdr .belar-hdr-nav .elementor-nav-menu--dropdown {
    background-color: var(--belar-verde);
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 20px 30px rgba(0, 0, 0, 0.2);
}
.belar-hdr .belar-hdr-nav .elementor-nav-menu--dropdown a {
    font-family: var(--belar-font);
    font-size: 17px;
    font-weight: 700;
    color: #fff;
    padding: 16px 24px;
    border-left: 3px solid transparent;
}
.belar-hdr .belar-hdr-nav .elementor-nav-menu--dropdown a:hover,
.belar-hdr .belar-hdr-nav .elementor-nav-menu--dropdown a.elementor-item-active {
    background: rgba(255, 255, 255, 0.06);
    color: var(--belar-rosa);
    border-left-color: var(--belar-rosa);
}

/* Botón "Quiero unirme" */
.belar-hdr .belar-hdr-cta .elementor-button {
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    font-family: var(--belar-font);
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 14px 24px;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.belar-hdr .belar-hdr-cta .elementor-button:hover,
.belar-hdr .belar-hdr-cta .elementor-button:focus-visible {
    background-color: #fff;
    color: var(--belar-verde);
    transform: translateY(-2px);
}

@media (max-width: 767px) {
    .belar-hdr .belar-hdr-logo img { height: 34px; max-width: 150px; }
}

/* Anclas (#inscripcion, #contacto, #ciudades) sin quedar tapadas por el header fijo */
#inscripcion, #contacto, #ciudades { scroll-margin-top: 90px; }

/* ---------- FOOTER ---------- */
.belar-sec.belar-ftr { position: relative; overflow: hidden; }
.belar-sec.belar-ftr::before {
    content: '';
    position: absolute;
    top: -180px;
    right: -120px;
    bottom: auto;
    left: auto;
    width: 420px;
    height: 420px;
    border: 0;
    border-radius: 50%;
    background: rgba(226, 169, 241, 0.12);
    filter: blur(110px);
    opacity: 1;
    pointer-events: none;
    z-index: 0;
}
.belar-sec.belar-ftr > .e-con-inner { position: relative; z-index: 1; }

.belar-sec .belar-ftr-logo img { height: 48px; width: auto; max-width: 220px; object-fit: contain; }
.belar-sec .elementor-widget.belar-ftr-logo { margin-bottom: 18px; width: auto; }
.belar-sec .elementor-widget.belar-ftr-tag { margin-bottom: 22px; max-width: 300px; }
.belar-sec .belar-ftr-tag .elementor-heading-title,
.belar-sec .belar-ftr-text .elementor-heading-title {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.75);
}

.belar-sec .belar-ftr-social .elementor-social-icon {
    background: transparent;
    border: 1.5px solid rgba(255, 255, 255, 0.35);
    width: 42px;
    height: 42px;
    font-size: 17px;
    margin-right: 6px;
    transition: all 0.3s ease;
}
.belar-sec .belar-ftr-social .elementor-social-icon svg { fill: #fff; }
.belar-sec .belar-ftr-social .elementor-social-icon i { color: #fff; }
.belar-sec .belar-ftr-social .elementor-social-icon:hover { background: var(--belar-rosa); border-color: var(--belar-rosa); transform: translateY(-2px); }
.belar-sec .belar-ftr-social .elementor-social-icon:hover svg { fill: var(--belar-verde); }
.belar-sec .belar-ftr-social .elementor-social-icon:hover i { color: var(--belar-verde); }

.belar-sec .elementor-widget.belar-ftr-h { margin-bottom: 18px; }
.belar-sec .belar-ftr-h .elementor-heading-title {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--belar-rosa);
}

.belar-sec .belar-ftr-links .elementor-icon-list-item { padding: 0 0 12px !important; margin: 0 !important; }
.belar-sec .belar-ftr-links .elementor-icon-list-icon { display: none; }
.belar-sec .belar-ftr-links .elementor-icon-list-text {
    font-size: 15px;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.85);
    padding-left: 0 !important;
    transition: color 0.2s ease;
}
.belar-sec .belar-ftr-links a:hover .elementor-icon-list-text { color: var(--belar-rosa); }

.belar-sec .elementor-widget.belar-ftr-text { margin-bottom: 18px; }
.belar-sec .belar-ftr-wa .elementor-button {
    display: inline-flex;
    align-items: center;
    background-color: var(--belar-rosa);
    color: var(--belar-verde);
    font-family: var(--belar-font);
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 13px 22px;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.belar-sec .belar-ftr-wa .elementor-button-content-wrapper { gap: 8px; align-items: center; }
.belar-sec .belar-ftr-wa .elementor-button-icon svg { width: 17px; height: 17px; fill: currentColor; }
.belar-sec .belar-ftr-wa .elementor-button:hover { background: #fff; transform: translateY(-2px); }
.belar-sec .elementor-widget.belar-ftr-mail { margin-top: 14px; }
.belar-sec .belar-ftr-mail .elementor-heading-title { font-size: 14px; font-weight: 600; }
.belar-sec .belar-ftr-mail a { color: #fff; text-decoration: underline; text-decoration-color: var(--belar-rosa); text-underline-offset: 3px; }
.belar-sec .belar-ftr-mail a:hover { color: var(--belar-rosa); }

.belar-sec .e-con.belar-ftr-bottom { padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, 0.12); }
.belar-sec .belar-ftr-copy .elementor-heading-title {
    font-size: 13px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.55);
}
.belar-sec .belar-ftr-claim .elementor-heading-title { letter-spacing: 2px; text-transform: uppercase; font-size: 11px; font-weight: 700; }

@media (max-width: 767px) {
    .belar-sec .e-con.belar-ftr-bottom { align-items: flex-start; }
}

/* =========================================================
   FIX iPhone / Safari: columnas que se desbordan hacia los lados
========================================================= */

/* Red de seguridad: nunca permitir scroll horizontal (clip no rompe el header fijo) */
html, body { overflow-x: clip; }

/* Página de evento */
.belar-evp .e-con.belar-evp-main { flex-wrap: nowrap; }
@media (max-width: 1024px) {
    .belar-evp .e-con.belar-evp-main,
    .belar-evp .e-con.belar-evp-side { flex: 0 0 auto !important; width: 100% !important; }

    /* Home: sección B2B */
    .belar-sec .e-con.belar-corp-content,
    .belar-sec .e-con.belar-corp-media { flex: 0 0 auto; width: 100%; }
}

@media (max-width: 767px) {
    /* Home: tarjetas de evento · Empresas: intro */
    .belar-sec .e-con.belar-ticket-info { flex: 0 0 auto; width: 100%; }
    .belar-sec .e-con.belar-emp-intro-main { flex: 0 0 auto; width: 100%; }
}

/* Listado de eventos (tarjetas) */
@media (max-width: 599px) {
    .belar-evl-info { flex: 0 0 auto; }
}

/* ---------- Tablas en páginas legales (política de cookies) ---------- */
.belar-sec .belar-legal-table { width: 100%; overflow-x: auto; margin: 0 0 18px; border: 1px solid rgba(48, 72, 59, 0.12); border-radius: 14px; background: #fff; }
.belar-sec .belar-legal-content table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 14px; line-height: 1.5; margin: 0; }
.belar-sec .belar-legal-content th {
    text-align: left;
    padding: 12px 14px;
    background: var(--belar-verde);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.belar-sec .belar-legal-content td { padding: 12px 14px; border-top: 1px solid rgba(48, 72, 59, 0.1); vertical-align: top; color: var(--belar-texto); }
.belar-sec .belar-legal-content td:first-child { font-weight: 700; color: var(--belar-verde); }
.belar-sec .belar-legal-content tbody tr:nth-child(even) td { background: rgba(244, 242, 234, 0.6); }

/* =========================================================
   PÁGINA "QUIÉN SOY"
   (pegar al final del CSS de Ajustes del sitio)
========================================================= */

/* ---------- Cabecera ---------- */
.belar-sec .elementor-widget.belar-quien-title { margin-bottom: 26px; }
.belar-sec .belar-quien-title .elementor-heading-title {
    font-size: clamp(44px, 7vw, 86px);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -2px;
    color: #fff;
    text-transform: uppercase;
    text-shadow: 0 16px 36px rgba(0, 0, 0, 0.4);
}
.belar-quien-title .highlight { color: var(--belar-rosa); font-style: italic; }
.belar-sec .elementor-widget.belar-quien-lead { max-width: 680px; margin: 0 auto; }
.belar-sec .belar-quien-lead .elementor-heading-title {
    font-size: clamp(18px, 2.3vw, 23px);
    font-weight: 400;
    font-style: italic;
    line-height: 1.55;
    color: rgba(255, 255, 255, 0.88);
}

/* ---------- Columnas (en escritorio; en móvil una debajo de otra) ---------- */
@media (min-width: 1025px) {
    .belar-sec .e-con.belar-quien-texto { flex: 1 1 0; min-width: 0; }
    .belar-sec .e-con.belar-quien-historia .belar-corp-media { flex: 0 0 44%; }
    .belar-sec .e-con.belar-quien-foto { flex: 0 0 40%; }
}
@media (max-width: 1024px) {
    .belar-sec .e-con.belar-quien-col { flex: 0 0 auto; width: 100%; }
}

/* ---------- Títulos y textos ---------- */
.belar-sec .elementor-widget.belar-quien-h2 { margin: 16px 0 26px; }
.belar-sec .belar-quien-h2 .elementor-heading-title {
    font-size: clamp(32px, 4.4vw, 52px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -1px;
    color: var(--belar-verde);
}
.belar-quien-h2 .highlight { color: var(--belar-rosa); font-style: italic; }
.belar-sec .belar-quien-h2--dark .elementor-heading-title { color: #fff; }
.belar-sec .elementor-widget.belar-quien-h2--center { margin-top: 0; }

.belar-sec .belar-quien-parrafos,
.belar-sec .belar-quien-parrafos p {
    font-size: 17px;
    line-height: 1.75;
    color: var(--belar-texto);
}
.belar-sec .belar-quien-parrafos p { margin: 0 0 16px; }
.belar-sec .belar-quien-parrafos strong { color: var(--belar-verde); font-weight: 700; }
.belar-sec .belar-quien-parrafos--dark,
.belar-sec .belar-quien-parrafos--dark p { color: rgba(255, 255, 255, 0.82); }
.belar-sec .belar-quien-parrafos--dark strong { color: #fff; }

.belar-sec .elementor-widget.belar-quien-cita { margin-top: 10px; }
.belar-sec .belar-quien-cita .elementor-heading-title {
    padding-left: 20px;
    border-left: 4px solid var(--belar-rosa);
    font-size: clamp(18px, 2vw, 21px);
    font-weight: 600;
    font-style: italic;
    line-height: 1.5;
    color: var(--belar-verde);
}
.belar-sec .belar-quien-cita--dark .elementor-heading-title { color: var(--belar-rosa); }

/* ---------- La fundadora ---------- */
.belar-sec .e-con.belar-quien-foto { position: relative; }
.belar-sec .e-con.belar-quien-foto::before {
    content: '';
    position: absolute;
    top: -30px;
    left: -30px;
    right: auto;
    bottom: auto;
    width: 70%;
    height: 70%;
    border: 0;
    border-radius: 50%;
    background: var(--belar-rosa);
    filter: blur(90px);
    opacity: 0.22;
    z-index: 0;
    pointer-events: none;
}
.belar-sec .elementor-widget.belar-quien-foto-img { position: relative; z-index: 1; width: 100%; }
.belar-sec .belar-quien-foto-img img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border-radius: 26px;
    border: 6px solid rgba(226, 169, 241, 0.35);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.35);
    transform: rotate(-2deg);
    transition: transform 0.5s ease;
}
.belar-sec .belar-quien-foto-img img:hover { transform: rotate(0deg) scale(1.01); }
.belar-sec .elementor-widget.belar-quien-foto-badge {
    position: absolute !important;
    left: 24px;
    bottom: 24px;
    z-index: 2;
    width: auto !important;
    margin: 0 !important;
}
.belar-sec .belar-quien-foto-badge .elementor-heading-title {
    display: inline-block;
    padding: 9px 18px;
    border-radius: 50px;
    background: var(--belar-rosa);
    color: var(--belar-verde);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25);
}
.belar-sec .belar-quien-label-dark .elementor-heading-title {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--belar-rosa);
    border-bottom: 2px solid var(--belar-rosa);
    padding-bottom: 5px;
}
.belar-sec .elementor-widget.belar-quien-despedida { margin-top: 26px; }
.belar-sec .belar-quien-despedida .elementor-heading-title { font-size: 19px; font-weight: 700; color: #fff; }
.belar-sec .elementor-widget.belar-quien-firma { margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, 0.15); }
.belar-quien-firma-nombre { display: block; font-size: 21px; font-weight: 700; font-style: italic; color: #fff; }
.belar-quien-firma-cargo { display: block; margin-top: 4px; font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--belar-rosa); }

/* ---------- Cierre ---------- */
.belar-sec .elementor-widget.belar-quien-cierre-text { max-width: 560px; margin: 0 auto 32px; }
.belar-sec .belar-quien-cierre-text .elementor-heading-title { font-size: 18px; font-weight: 400; line-height: 1.6; color: var(--belar-texto); }
.belar-sec .belar-quien-btn-ghost .elementor-button {
    display: inline-flex;
    align-items: center;
    background: transparent;
    color: var(--belar-verde);
    border: 2px solid var(--belar-verde);
    font-family: var(--belar-font);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 20px 40px;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.belar-sec .belar-quien-btn-ghost .elementor-button:hover { background: var(--belar-verde); color: #fff; transform: translateY(-3px); }

@media (max-width: 767px) {
    .belar-sec .belar-quien-botones .elementor-widget,
    .belar-sec .belar-quien-botones .elementor-button { width: 100%; justify-content: center; }
    .belar-sec .elementor-widget.belar-quien-foto-badge { left: 16px; bottom: 16px; }
}
/* =========================================================
   PÁGINA GALERÍA (widget Galería de Elementor Pro)
   (pegar al final del CSS de Ajustes del sitio)
========================================================= */
.belar-sec.belar-gal-hero { min-height: 0; }

/* Pestañas de eventos */
.belar-sec .belar-gal .elementor-gallery__titles-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 34px;
}
.belar-sec .belar-gal .elementor-gallery-title {
    margin: 0 !important;
    padding: 10px 22px;
    border: 2px solid var(--belar-verde);
    border-radius: 50px;
    font-family: var(--belar-font);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.3px;
    color: var(--belar-verde);
    background: transparent;
    transition: all 0.2s ease;
}
.belar-sec .belar-gal .elementor-gallery-title::before,
.belar-sec .belar-gal .elementor-gallery-title::after { display: none !important; }
.belar-sec .belar-gal .elementor-gallery-title:hover,
.belar-sec .belar-gal .elementor-gallery-title.elementor-item-active {
    background: var(--belar-verde);
    color: #fff;
}

/* Fotos */
.belar-sec .belar-gal .e-gallery-item {
    border-radius: 14px;
    overflow: hidden;
    background: rgba(48, 72, 59, 0.08);
}
.belar-sec .belar-gal .elementor-gallery-item__overlay {
    background: linear-gradient(to top, rgba(48, 72, 59, 0.55), rgba(226, 169, 241, 0.15)) !important;
    opacity: 0;
    transition: opacity 0.35s ease;
}
.belar-sec .belar-gal .e-gallery-item:hover .elementor-gallery-item__overlay { opacity: 1; }
.belar-sec .belar-gal .e-gallery-item::after {
    content: '';
    position: absolute;
    right: 12px;
    bottom: 12px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--belar-rosa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2330483b' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7'/%3E%3C/svg%3E") center / 16px no-repeat;
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.3s ease;
    pointer-events: none;
}
.belar-sec .belar-gal .e-gallery-item:hover::after { opacity: 1; transform: scale(1); }

/* Visor (lightbox) con los colores de BELAR */
.elementor-lightbox { --lightbox-ui-color: #fff; --lightbox-ui-color-hover: var(--belar-rosa, #e2a9f1); }
.elementor-lightbox .elementor-swiper-button { background: rgba(48, 72, 59, 0.55); border-radius: 50%; width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; }
.elementor-lightbox .elementor-swiper-button:hover { background: var(--belar-verde, #30483b); }

@media (max-width: 767px) {
    .belar-sec .belar-gal .elementor-gallery__titles-container { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; -webkit-overflow-scrolling: touch; }
    .belar-sec .belar-gal .elementor-gallery-title { flex-shrink: 0; padding: 9px 18px; font-size: 13px; }
    .belar-sec .belar-gal .e-gallery-item { border-radius: 10px; }
    .belar-sec .belar-gal .e-gallery-item::after { display: none; }
}

/* ---------- Home: sección de galería (usa los estilos .belar-gal de la página Galería) ---------- */
.belar-sec .elementor-widget.belar-gal-home { width: 100%; margin-top: 10px; }
.belar-sec .elementor-widget.belar-gal-home-btn { margin-top: 40px; }
.belar-gal-home-sec .belar-corp-label .elementor-heading-title { display: inline-block; }