.cxhub-events{--cx-accent:#e31b23;--cx-ink:#111318;--cx-muted:#68707d;display:flex;flex-direction:column;gap:8px;font-family:inherit}.cxhub-event-card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:13px;background:#fff;border:1px solid #e7e9ed;border-radius:12px;padding:10px 13px;box-shadow:0 5px 18px rgba(17,19,24,.055);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.cxhub-event-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cx-accent)}.cxhub-event-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(17,19,24,.10);border-color:#d9dce2}.cxhub-event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:62px;background:var(--cx-ink);color:#fff;border-radius:8px;text-transform:uppercase}.cxhub-event-day{font-size:26px;line-height:.95;font-weight:900;letter-spacing:-.04em}.cxhub-event-month{font-size:10px;font-weight:800;letter-spacing:.14em;margin-top:5px}.cxhub-event-year{font-size:8px;opacity:.65;font-weight:700;letter-spacing:.1em;margin-top:3px}.cxhub-event-main{min-width:0}.cxhub-event-topline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:4px}.cxhub-event-country{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#424954;text-transform:uppercase;letter-spacing:.035em}.cxhub-flag-img{display:block;width:23px;height:15px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}.cxhub-event-series{display:inline-flex;align-items:center;font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;background:#f1f2f4;color:#4e5662;padding:4px 7px;border-radius:4px}.cxhub-event-title{margin:0!important;color:var(--cx-ink)!important;font-size:17px!important;line-height:1.16!important;font-weight:900!important;letter-spacing:-.025em}.cxhub-event-venue{font-size:12px;color:var(--cx-muted);margin-top:4px;font-weight:600}.cxhub-event-range{display:inline-block;font-size:10px;color:#7b838f;margin-top:3px}.cxhub-event-action{align-self:center}.cxhub-event-button{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none!important;background:var(--cx-accent);color:#fff!important;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;padding:9px 11px;border-radius:5px;transition:filter .18s ease,transform .18s ease}.cxhub-event-button:hover{filter:brightness(.92);transform:translateX(1px)}.cxhub-events-empty{padding:18px;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280}.cxhub-events--grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.cxhub-events--grid .cxhub-event-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 13px 13px}.cxhub-events--grid .cxhub-event-card:before{left:0;right:0;top:0;bottom:auto;width:auto;height:4px}.cxhub-events--grid .cxhub-event-image{height:154px;margin:0 -13px 11px;background-size:cover;background-position:center}.cxhub-events--grid .cxhub-event-date{position:absolute;top:113px;left:13px;width:60px;min-height:62px;box-shadow:0 4px 14px rgba(0,0,0,.18);border:3px solid #fff}.cxhub-events--grid .cxhub-event-main{padding-top:2px}.cxhub-events--grid .cxhub-event-image+.cxhub-event-date+.cxhub-event-main{padding-top:6px}.cxhub-events--grid .cxhub-event-title{font-size:17px!important}.cxhub-events--grid .cxhub-event-action{margin-top:10px}.cxhub-events--grid .cxhub-event-button{width:100%}.cxhub-events--grid .cxhub-event-card:not(:has(.cxhub-event-image)) .cxhub-event-date{position:static;width:60px;margin-top:12px;margin-bottom:9px;border:0;box-shadow:none}.cxhub-events--compact .cxhub-event-card{grid-template-columns:56px minmax(0,1fr);gap:9px;padding:8px 10px}.cxhub-events--compact .cxhub-event-date{min-height:50px}.cxhub-events--compact .cxhub-event-day{font-size:21px}.cxhub-events--compact .cxhub-event-year,.cxhub-events--compact .cxhub-event-action,.cxhub-events--compact .cxhub-event-range{display:none}.cxhub-events--compact .cxhub-event-title{font-size:15px!important}.cxhub-events--compact .cxhub-event-country{font-size:10px}.cxhub-events--compact .cxhub-flag-img{width:22px;height:14px}.cxhub-events--compact .cxhub-event-series{font-size:9px;padding:4px 6px}@media(max-width:900px){.cxhub-events--grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.cxhub-event-card{grid-template-columns:60px minmax(0,1fr);gap:10px;padding:9px 10px}.cxhub-event-action{grid-column:1/-1}.cxhub-event-button{width:100%}.cxhub-event-title{font-size:17px!important}.cxhub-event-day{font-size:23px}.cxhub-events--grid{grid-template-columns:1fr}.cxhub-events--grid .cxhub-event-image{height:168px}.cxhub-events--grid .cxhub-event-date{top:125px}}
.cxhub-events-wrap{--cx-accent:#e31b23}.cxhub-country-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.cxhub-country-filter{appearance:none;border:1px solid #dfe2e7;background:#fff;color:#222831;border-radius:7px;min-height:36px;padding:7px 10px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:11px;font-weight:800;line-height:1;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.cxhub-country-filter img{display:block;width:22px;height:14px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}.cxhub-country-filter:hover{border-color:#bfc4cc;transform:translateY(-1px)}.cxhub-country-filter.is-active{background:var(--cx-accent);border-color:var(--cx-accent);color:#fff}.cxhub-country-filter:focus-visible{outline:3px solid color-mix(in srgb,var(--cx-accent) 28%,transparent);outline-offset:2px}.cxhub-event-card[hidden]{display:none!important}.cxhub-filter-empty{margin:14px 0 0;padding:16px;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280}.cxhub-filter-empty[hidden]{display:none!important}@media(max-width:640px){.cxhub-country-filters{gap:5px;margin-bottom:10px}.cxhub-country-filter{flex:1 1 auto;min-height:38px;padding:7px 9px;font-size:10px}}

.cxhub-country-filter--other .cxhub-other-icon{font-size:18px;line-height:1}.cxhub-country-filter--other.is-active .cxhub-other-icon{filter:grayscale(1) brightness(3)}


.cxhub-month-heading{margin:16px 0 2px!important;padding:0 0 7px;color:#111318!important;font-size:18px!important;line-height:1.2!important;font-weight:900!important;letter-spacing:-.02em}.cxhub-month-heading:first-child{margin-top:0!important}.cxhub-month-heading[hidden]{display:none!important}.cxhub-events--grid .cxhub-month-heading{grid-column:1/-1;margin-top:13px!important}.cxhub-events--grid .cxhub-month-heading:first-child{margin-top:0!important}@media(max-width:640px){.cxhub-month-heading{font-size:16px!important;margin-top:13px!important;padding-bottom:6px}}

/* v3.5.2: optically centre and evenly space date-box text. */
.cxhub-event-date {
    box-sizing:border-box;
    gap:3px;
    padding:4px;
    text-align:center;
}
.cxhub-event-day,
.cxhub-event-month,
.cxhub-event-year {
    display:block;
    width:100%;
    margin-top:0;
    line-height:1;
    text-align:center;
}
.cxhub-event-month { text-indent:.14em; }
.cxhub-event-year { text-indent:.1em; }

/* v3.5.3: match the listing page's header gap to the CXHUB home page. */
body.cxhub-events-listing-page .jeg_main {
    margin-top:0!important;
    padding-top:0!important;
}
body.cxhub-events-listing-page .jeg_content {
    margin-top:0!important;
    padding-top:10px!important;
}

/* WPBakery fallback: detect the rendered Events plugin directly. */
.jeg_main:has(.cxhub-events-wrap) {
    margin-top:0!important;
    padding-top:0!important;
}
.jeg_content:has(.cxhub-events-wrap) {
    margin-top:0!important;
    padding-top:10px!important;
}

/* v3.5.5: the remaining gap is outside the content padding in JNews. */
body.cxhub-events-listing-page .jeg_main,
.jeg_main:has(.cxhub-events-wrap) {
    margin-top:-35px!important;
}

/* v3.6.0: clickable series/category filtering. */
button.cxhub-event-series {
    appearance:none;
    border:0;
    margin:0;
    font-family:inherit;
    line-height:1;
    text-align:left;
    cursor:pointer;
    transition:background-color .16s ease,color .16s ease,transform .16s ease;
}
button.cxhub-event-series:hover {
    background:#e2e4e8;
    color:#222831;
    transform:translateY(-1px);
}
button.cxhub-event-series.is-active {
    background:var(--cx-accent);
    color:#fff;
}
button.cxhub-event-series:focus-visible,
.cxhub-series-filter-clear:focus-visible {
    outline:3px solid color-mix(in srgb,var(--cx-accent) 28%,transparent);
    outline-offset:2px;
}
.cxhub-series-filter-status {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:8px 12px;
    margin:0 0 10px;
    padding:8px 10px;
    border-left:4px solid var(--cx-accent);
    border-radius:5px;
    background:#f5f6f8;
    color:#424954;
    font-size:11px;
    font-weight:700;
}
.cxhub-series-filter-status[hidden] {
    display:none!important;
}
.cxhub-series-filter-label {
    color:#111318;
    font-weight:900;
}
.cxhub-series-filter-clear {
    appearance:none;
    border:0;
    border-radius:4px;
    margin:0;
    padding:6px 8px;
    background:var(--cx-accent);
    color:#fff;
    font-family:inherit;
    font-size:10px;
    font-weight:900;
    line-height:1;
    text-transform:uppercase;
    cursor:pointer;
}
.cxhub-series-filter-clear:hover {
    filter:brightness(.92);
}
@media(max-width:640px) {
    .cxhub-series-filter-status {
        align-items:flex-start;
        flex-direction:column;
    }
}

/* v3.8: optional event entry button and closing-date notice. */
.cxhub-event-action {
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:5px;
}
.cxhub-event-action-buttons {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:7px;
}
.cxhub-event-entry-button {
    background:#d9dce1;
    color:#24282e!important;
}
.cxhub-event-entry-button:hover {
    background:#c9cdd3;
    color:#111318!important;
    filter:none;
}
.cxhub-event-entry-closing {
    align-self:flex-start;
    color:#737b86;
    font-size:9px;
    font-weight:700;
    line-height:1.2;
    text-align:left;
    white-space:nowrap;
}
.cxhub-events--grid .cxhub-event-action-buttons {
    width:100%;
}
.cxhub-events--grid .cxhub-event-action-buttons .cxhub-event-button {
    flex:1 1 0;
    width:auto;
}
@media(max-width:640px) {
    .cxhub-event-action {
        align-items:stretch;
    }
    .cxhub-event-action-buttons {
        width:100%;
    }
    .cxhub-event-action-buttons .cxhub-event-button {
        flex:1 1 0;
        width:auto;
    }
    .cxhub-event-entry-closing {
        align-self:flex-start;
    }
}
