/* =============================================================================
   ECR — Events (client feedback, September 2026)
   ========================================================================== */

/* =============================================================================
   THE EVENTS VIEWS — header, toolbar, list (refinements, 30/09/2026)
   ========================================================================== */

/* The visible title (tribe/events/v2/components/content-title.php) uses the
   section header of Working Groups and Publications; here it only has to sit
   full width above the search bar, with no section padding of its own. */
.tribe-events .tribe-events-header .ecr-events-head {
	order: -1;
	flex: 0 0 100%;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.tribe-events .ecr-events-head .ecr-st__header { margin-bottom: 28px; }

/* The Events Calendar gives each event article the negative margins of its
   grid gutter. Invisible on the plugin's own flat design, they pushed our
   bordered card 24px past the right edge of the search bar and the month
   separators. The card now sits inside its column, both edges aligned with
   the bar above; its inner columns keep their own padding. */
.tribe-events .tribe-events-calendar-list__event-wrapper > .tribe-events-calendar-list__event,
.tribe-events .tribe-events-calendar-latest-past__event-wrapper > .tribe-events-calendar-latest-past__event,
.tribe-events .tribe-events-calendar-day .tribe-events-calendar-day__event {
	margin-left: 0;
	margin-right: 0;
}

/* Month view: the weekday row is a 7-column grid (The Events Calendar), but
   each header cell also kept the plugin's `width: 1/7` of the older table
   layout — resolved against its own grid cell, so "M", "T", "W"… sat in a
   23px box and their borders drifted away from the day columns below. The
   cell now fills its column, and its text lines up with the day numbers. */
.tribe-events .tribe-events-calendar-month__header-column {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	justify-self: stretch;
	padding: 10px 10px 8px;
	text-align: left;
}

/* "Use same vertical hight block for all blocks (date and text block are not
   the same)". In each row the date column fills the row, but the event card
   carried 35px of bottom margin INSIDE the row, so the date pill measured
   359px beside a 324px card. The card now has no outer margin: the two blocks
   share the same top and bottom, and the space between rows is set once, in
   "the row rhythm" below. Content is never clipped — both simply take the
   height of the taller one. Upcoming list and "Latest Past Events" use the
   same markup pattern, so both are covered. */
.tribe-events-calendar-latest-past__event-row,
.tribe-events-calendar-list__event-row {
	align-items: stretch;
}

.tribe-events-calendar-latest-past__event-wrapper,
.tribe-events-calendar-list__event-wrapper {
	display: flex;
	flex-direction: column;
}

.tribe-events-calendar-latest-past__event-wrapper > article,
.tribe-events-calendar-list__event-wrapper > article {
	margin-bottom: 0 !important;
	flex: 1 1 auto;
}

.tribe-events-calendar-latest-past__event-date-tag,
.tribe-events-calendar-list__event-date-tag {
	display: flex;
}

/* Side by side (768px and up): the pill fills the column. Its own 15px bottom
   margin was the remaining gap. Below 768px the date sits above the card, as
   The Events Calendar lays it out, and is left alone. */
@media (min-width: 768px) {
	.tribe-events-calendar-latest-past__event-date-tag-datetime,
	.tribe-events-calendar-list__event-date-tag-datetime {
		height: auto !important;
		margin-bottom: 0 !important;
		flex: 1 1 auto;
		align-self: stretch;
	}
}

/* "Take out the yellow/orange block with 'This event is out of date'. Just
   leave a grey text line." The Events Calendar's notice on a past event
   ("This event has passed.") loses its box, border and fill; the sentence
   stays, in the site's muted grey. Which events count as past is still The
   Events Calendar's own decision. */
.tribe-events-notices,
.tribe-events-single .tribe-events-notices,
.tribe-events-notices ul,
.tribe-events-notices li {
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	color: #667085 !important;
	font-weight: 400 !important;
	list-style: none !important;
}

.tribe-events-notices {
	margin: 0 0 16px !important;
	font-size: 1rem;
}

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

/* =============================================================================
   LIST / DAY / LATEST PAST — the cards (reworked 30/09/2026, second pass)

   Client: "contenuti, padding interni e margini fra i box risultano troppo
   compressi". Measured in Chrome at 1440 px before this pass:
     - the card (TEC's <article>) had NO padding of its own: the date pill sat
       0 px under the top border and the last line of text on the bottom one;
       the only horizontal space came from TEC's column gutters (24 px);
     - the picture was flush with the card's top and bottom edges;
     - `height: 240px` on the picture never applied (Salient's
       `.main-content img { height: auto }` is more specific), so it was a dead
       rule — and cropping the invitations, which carry text, would be wrong;
     - the rows stacked three margins: TEC's 48 top + 40 bottom, and the theme's
       35 px `!important` on top of that (row to row: 113 px with a separator).
   Now: the card has one padding, the two columns one gap, the header one
   vertical rhythm, and the rows one margin, all set here. Values follow the
   site's other cards (Working Groups: 22/24 px padding, 10 px gap, 18 px
   radius). Specificity is raised with TEC's own container classes rather than
   with !important, so it wins over views-skeleton.css by selector, not force.
   ========================================================================== */
.tribe-events-calendar-list__event,
.tribe-events-calendar-latest-past__event,
.tribe-events-calendar-day__event {
	background: #FFFFFF;
	border: 1px solid var(--ecr-border, #E2E8F0);
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 12px 40px rgba(15, 23, 42, .08);
	transition: transform .35s ease, box-shadow .35s ease;
}

.tribe-events-calendar-list__event:hover,
.tribe-events-calendar-latest-past__event:hover,
.tribe-events-calendar-day__event:hover {
	transform: translateY(-3px);
	box-shadow: var(--ecr-shadow-hover, 0 20px 60px rgba(15, 23, 42, .12));
}

@media (prefers-reduced-motion: reduce) {
	.tribe-events-calendar-list__event,
	.tribe-events-calendar-latest-past__event,
	.tribe-events-calendar-day__event { transition: none; }
	.tribe-events-calendar-list__event:hover,
	.tribe-events-calendar-latest-past__event:hover,
	.tribe-events-calendar-day__event:hover { transform: none; }
}

/* --- inside the card: one padding, one gap -------------------------------- */
.tribe-common.tribe-events .tribe-events-calendar-list__event.tribe-common-g-row,
.tribe-common.tribe-events .tribe-events-calendar-latest-past__event.tribe-common-g-row,
.tribe-common.tribe-events .tribe-events-calendar-day__event .tribe-events-calendar-day__event-content {
	flex-wrap: nowrap;
	gap: 16px;
	margin: 0;
}

.tribe-common.tribe-events .tribe-events-calendar-list__event.tribe-common-g-row,
.tribe-common.tribe-events .tribe-events-calendar-latest-past__event.tribe-common-g-row,
.tribe-common.tribe-events .tribe-events-calendar-day__event {
	padding: 18px 18px 20px;
}

/* Day view below TEC's "medium" breakpoint: the content box is a plain block,
   so the gap above would not apply — make it the same column as the list's. */
.tribe-common.tribe-events:not(.tribe-common--breakpoint-medium) .tribe-events-calendar-day__event-content {
	display: flex;
	flex-direction: column;
}

/* TEC's column gutters were the only inner spacing; the card padding and the
   gap replace them. */
.tribe-common.tribe-events .tribe-events-calendar-list__event > .tribe-common-g-col,
.tribe-common.tribe-events .tribe-events-calendar-latest-past__event > .tribe-common-g-col,
.tribe-common.tribe-events .tribe-events-calendar-day__event-content > * {
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 0;
}

.tribe-events-calendar-list__event-featured-image,
.tribe-events-calendar-latest-past__event-featured-image,
.tribe-events-calendar-day__event-featured-image {
	display: block;
	width: 100%;
	border-radius: 12px;
}

/* --- the header: date, title, venue, room / Working Group, text ----------- */
/* TEC orders the header as a flex column: date (1) -> title (2). */
.tribe-events-calendar-list__event-venue,
.tribe-events-calendar-latest-past__event-venue,
.tribe-events-calendar-day__event-venue { order: 3; }

.tribe-common.tribe-events .tribe-events-calendar-list__event-title,
.tribe-common.tribe-events .tribe-events-calendar-latest-past__event-title,
.tribe-common.tribe-events .tribe-events-calendar-day__event-title {
	margin: 12px 0 0;
	line-height: 1.3;
	overflow-wrap: break-word;
	hyphens: manual;
}

.tribe-events-calendar-list__event-title a,
.tribe-events-calendar-latest-past__event-title a,
.tribe-events-calendar-day__event-title a {
	font-weight: 700;
	text-decoration: none;
}

.tribe-common.tribe-events .tribe-events-calendar-list__event-venue,
.tribe-common.tribe-events .tribe-events-calendar-latest-past__event-venue,
.tribe-common.tribe-events .tribe-events-calendar-day__event-venue {
	margin: 8px 0 0;
	line-height: 1.5;
}

.tribe-common.tribe-events .tribe-events-calendar-list__event-description,
.tribe-common.tribe-events .tribe-events-calendar-latest-past__event-description,
.tribe-common.tribe-events .tribe-events-calendar-day__event-description {
	margin-top: 14px;
	line-height: 1.6;
}

.tribe-events-calendar-list__event-description > :last-child,
.tribe-events-calendar-latest-past__event-description > :last-child,
.tribe-events-calendar-day__event-description > :last-child { margin-bottom: 0; }

/* The date inside the card, as a pill. */
.tribe-events-calendar-list__event-datetime-wrapper time,
.tribe-events-calendar-latest-past__event-datetime-wrapper time,
.tribe-events-calendar-day__event-datetime-wrapper time {
	display: inline-block;
	padding: 6px 12px;
	border-radius: 14px; /* a pill on one line, still tidy when a long range wraps */
	background: #EFF6FF;
	color: var(--ecr-primary, #1866A5);
	font-weight: 700;
	line-height: 1.4;
}

.tribe-events-calendar-list__event-date-tag-datetime,
.tribe-events-calendar-latest-past__event-date-tag-datetime {
	background: #EFF6FF;
	border-radius: 999px;
	padding: 14px 0;
}

.tribe-events .tribe-events-c-search__button {
	background: var(--ecr-primary, #1866A5) !important;
	border-radius: 12px !important;
}

/* The room and Working Group line under the venue (inc/events/events.php). */
.ecr-event-card-extra {
	order: 4;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 14px;
	margin: 8px 0 0;
	color: var(--ecr-text, #1E293B);
	line-height: 1.5;
}

.ecr-event-card-extra__wg {
	font-weight: 600;
	color: var(--ecr-primary, #1866A5);
}

.ecr-event-room__label {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #667085;
	margin-right: 4px;
}

/* --- the row rhythm -------------------------------------------------------- */
/* One margin between two cards of the same month, one between a month heading
   and its first card (TEC: 48 + 40 + the old 35 px). */
.tribe-common.tribe-events .tribe-events-calendar-list__event-row.tribe-common-g-row,
.tribe-common.tribe-events .tribe-events-calendar-latest-past__event-row.tribe-common-g-row {
	margin-top: 28px;
	margin-bottom: 0;
}

.tribe-common.tribe-events .tribe-events-calendar-list__month-separator + .tribe-events-calendar-list__event-row.tribe-common-g-row {
	margin-top: 20px;
}

.tribe-common.tribe-events .tribe-events-calendar-list__month-separator {
	margin-top: 44px;
}

.tribe-common.tribe-events .tribe-events-calendar-list > .tribe-events-calendar-list__month-separator:first-child {
	margin-top: 0;
}

.tribe-common.tribe-events .tribe-events-calendar-day .tribe-events-calendar-day__event {
	margin-top: 20px;
	margin-bottom: 0;
}

/* The list, then the Previous / Next links: the same breathing space. */
.tribe-common.tribe-events .tribe-events-calendar-list-nav,
.tribe-common.tribe-events .tribe-events-calendar-day-nav,
.tribe-common.tribe-events .tribe-events-calendar-latest-past + * {
	margin-top: 40px;
}

/* --- 768 px and up: picture on the right, text on the left ---------------- */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event.tribe-common-g-row,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-latest-past__event.tribe-common-g-row,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-day__event .tribe-events-calendar-day__event-content {
	gap: 28px;
	align-items: flex-start;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event.tribe-common-g-row,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-latest-past__event.tribe-common-g-row,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-day__event {
	padding: 24px;
}

/* TEC sizes the two columns as 5/8 + 3/8 of the row with `flex: none`, which
   leaves no room for a gap: the text column takes what the picture leaves. */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-details,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-latest-past__event-details,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-day__event-details {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-featured-image-wrapper,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-latest-past__event-featured-image-wrapper,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-day__event-featured-image-wrapper {
	flex: 0 0 36%;
	width: 36%;
	max-width: 360px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-title,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-latest-past__event-title,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-day__event-title {
	font-size: 1.375rem;
}

/* Side by side: the date column keeps a clear gutter from the card. */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row > .tribe-events-calendar-list__event-date-tag,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-latest-past__event-row > .tribe-events-calendar-latest-past__event-date-tag {
	padding-right: 8px;
}

/* Below TEC's own "medium" breakpoint (it measures the calendar container, so
   it is still off on a 768 px tablet) TEC sets titles at 16 px: too small next
   to the site's other cards. */
.tribe-common.tribe-events:not(.tribe-common--breakpoint-medium) .tribe-events-calendar-list__event-title,
.tribe-common.tribe-events:not(.tribe-common--breakpoint-medium) .tribe-events-calendar-latest-past__event-title,
.tribe-common.tribe-events:not(.tribe-common--breakpoint-medium) .tribe-events-calendar-day__event-title {
	font-size: 1.1875rem;
}

/* --- below 768 px: date line, then the card with the picture on top -------- */
@media (max-width: 767px) {
	.tribe-events .tribe-events-calendar-list__event-row,
	.tribe-events .tribe-events-calendar-latest-past__event-row { flex-direction: column; }
	.tribe-events .tribe-events-calendar-list__event-row > .tribe-events-calendar-list__event-date-tag,
	.tribe-events .tribe-events-calendar-latest-past__event-row > .tribe-events-calendar-latest-past__event-date-tag,
	.tribe-events .tribe-events-calendar-list__event-row > .tribe-events-calendar-list__event-wrapper,
	.tribe-events .tribe-events-calendar-latest-past__event-row > .tribe-events-calendar-latest-past__event-wrapper { width: 100%; max-width: 100%; flex: 0 0 auto; }
	.tribe-events .tribe-events-calendar-list__event-row > .tribe-events-calendar-list__event-date-tag,
	.tribe-events .tribe-events-calendar-latest-past__event-row > .tribe-events-calendar-latest-past__event-date-tag { margin: 0 0 12px; }
	.tribe-events .tribe-events-calendar-list__event-wrapper > .tribe-events-calendar-list__event,
	.tribe-events .tribe-events-calendar-latest-past__event-wrapper > .tribe-events-calendar-latest-past__event { margin-left: 0; margin-right: 0; }
	.tribe-events .tribe-events-calendar-list__event-date-tag-datetime,
	.tribe-events .tribe-events-calendar-latest-past__event-date-tag-datetime { flex-direction: row !important; width: auto !important; }
	.tribe-events-calendar-list__event-date-tag-datetime,
	.tribe-events-calendar-latest-past__event-date-tag-datetime {
		display: flex;
		flex-direction: row;
		gap: 8px;
		align-items: baseline;
		justify-content: flex-start;
		padding: 8px 14px;
		height: auto !important;
	}
	.tribe-common.tribe-events .tribe-events-calendar-list__event-row.tribe-common-g-row,
	.tribe-common.tribe-events .tribe-events-calendar-latest-past__event-row.tribe-common-g-row { margin-top: 24px; }
	.tribe-common.tribe-events .tribe-events-calendar-list__month-separator { margin-top: 36px; }
}

/* Month view on a phone: an event whose time is unknown prints no time
   (inc/events/time-status.php); its now-empty line takes no space. */
.tribe-events-calendar-month-mobile-events__mobile-event-datetime:not(:has(*)) { display: none; }

/* =============================================================================
   A SINGLE EVENT (tribe-events/single-event.php)
   ========================================================================== */
.single-tribe_events #tribe-events-content.ecr-event {
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 0 80px;
	color: var(--ecr-text, #1E293B);
}

/* "Back to Events" is the shared .ecr-back component (css/section-spacing.css),
   and the top step is that file's --ecr-section-top. */

/* The title is BLUE (client, September 2026), the same blue as a Working Group. */
body.single-tribe_events .ecr-event h1.tribe-events-single-event-title {
	font-size: clamp(2rem, 3.4vw, 2.75rem);
	line-height: 1.15;
	font-weight: 700;
	letter-spacing: 0;
	color: var(--ecr-primary, #1866A5);
	margin: 0 0 24px;
}

/* --- summary: When · Venue + ROOM · Working Groups ------------------------- */
.ecr-event__top {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	gap: 20px;
	margin: 0 0 32px;
	align-items: start;
}

.ecr-event__top > :only-child { grid-column: 1 / -1; }

.ecr-event-summary,
.ecr-event-organizers {
	background: #FFFFFF;
	border: 1px solid var(--ecr-border, #E2E8F0);
	border-radius: 18px;
	padding: 22px 24px;
}

.ecr-event-summary__list { margin: 0; }

.ecr-event-summary__row {
	display: grid;
	/* 140px: "Working Groups" fits on one line, like "When" and "Venue". */
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 12px;
	padding: 12px 0;
	border-top: 1px solid #EEF2F7;
}

.ecr-event-summary__row:first-child { border-top: 0; padding-top: 0; }
.ecr-event-summary__row:last-child { padding-bottom: 0; }

.ecr-event-summary__row dt,
.ecr-event-organizers__title {
	margin: 0;
	font-size: .75rem;
	line-height: 1.6;
	font-weight: 700;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--ecr-primary, #1866A5);
}

.ecr-event-summary__row dd {
	margin: 0;
	font-weight: 400;
	line-height: 1.55;
}

.ecr-event-summary__row--venue dd { display: flex; flex-direction: column; gap: 4px; }

/* ROOM: the one thing a visitor walking into the Parliament needs. */
.ecr-event-room {
	display: inline-flex;
	align-self: flex-start;
	align-items: baseline;
	gap: 8px;
	padding: 6px 14px;
	border-radius: 999px;
	background: var(--ecr-primary, #1866A5);
	color: #FFFFFF;
	font-weight: 700;
}

.ecr-event-room .ecr-event-room__label { color: rgba(255, 255, 255, .8); margin: 0; }
.ecr-event-venue__name { font-weight: 600; }
.ecr-event-venue__address { color: #667085; font-size: .9375rem; }

.ecr-event-summary__groups { display: flex; flex-wrap: wrap; gap: 8px; }

.ecr-event-chip {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 999px;
	background: #EFF6FF;
	color: var(--ecr-primary, #1866A5);
	font-weight: 600;
	font-size: .875rem;
	text-decoration: none;
}

.ecr-event-chip:hover,
.ecr-event-chip:focus-visible { background: var(--ecr-primary, #1866A5); color: #FFFFFF; }

/* --- Organizers ------------------------------------------------------------ */
.ecr-event-organizers__title { margin-bottom: 12px; }

.ecr-event-organizers__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.ecr-event-organizers__list li { list-style: none; margin: 0; }

.ecr-event-organizer {
	display: flex;
	align-items: center;
	gap: 14px;
	text-decoration: none;
	color: var(--ecr-text, #1E293B);
}

.ecr-event-organizer__portrait {
	flex: 0 0 56px;
	width: 56px;
	height: 56px;
	border-radius: 12px;
	overflow: hidden;
	background: #EFF6FF;
}

.ecr-event-organizer__portrait img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; margin: 0; }
.ecr-event-organizer__body { display: flex; flex-direction: column; min-width: 0; }
.ecr-event-organizer__name { font-weight: 700; color: var(--ecr-primary, #1866A5); overflow-wrap: anywhere; }
.ecr-event-organizer:hover .ecr-event-organizer__name,
.ecr-event-organizer:focus-visible .ecr-event-organizer__name { text-decoration: underline; }
.ecr-event-organizer__origin { font-size: .8125rem; color: #667085; line-height: 1.4; }
.ecr-event-organizers__parties { margin: 12px 0 0; }

/* --- picture and text ------------------------------------------------------ */
.ecr-event__media { margin: 0 0 32px; border-radius: 18px; overflow: hidden; }
.ecr-event__media .ecr-event__img { display: block; width: 100%; height: auto; margin: 0; }

/* Normal text in normal weight. The text itself was the cause of "always bold"
   (whole paragraphs saved as <h4> and wrapped in <strong>); the migration
   restored the source's paragraphs, and the theme adds no weight of its own:
   <strong>/<b> stay bold, headings keep theirs. */
.ecr-event__text {
	font-size: 1.0625rem;
	line-height: 1.75;
}

.ecr-event__text p,
.ecr-event__text li { font-weight: 400; }
.ecr-event__text > * + * { margin-top: 1em; }
.ecr-event__text img { max-width: 100%; height: auto; border-radius: 14px; }

/* Space between paragraphs = the News (css/articles.css): 16px at every width
   (client, 11 November 2026). It was 45px (40 on mobile): Salient's 1.5em
   bottom padding on every <p> (27px) plus the 1em top margin above. A
   paragraph now ends with 16px and no margin, and the next paragraph adds
   none; a heading, list or image after it keeps its own 1em. The selectors
   need .single-tribe_events to outweigh TEC's `.tribe-events-content p`,
   which loads after this file. Empty paragraphs: ecr_event_text_tidy(). */
.single-tribe_events .ecr-event__text p { margin-bottom: 0; padding-bottom: 16px; }
.single-tribe_events .ecr-event__text p + p { margin-top: 0; }

/* --- Add to calendar ------------------------------------------------------- */
.single-tribe_events .ecr-event .tribe-events-c-subscribe-dropdown__container { margin: 32px 0 0; }
.single-tribe_events .ecr-event .tribe-events-c-subscribe-dropdown__button {
	border: 2px solid var(--ecr-primary, #1866A5) !important;
	border-radius: 12px !important;
	background: #FFFFFF !important;
}
.single-tribe_events .ecr-event .tribe-events-c-subscribe-dropdown__button-text { color: var(--ecr-primary, #1866A5) !important; font-weight: 700; }
.single-tribe_events .ecr-event .tribe-events-c-subscribe-dropdown__button:hover,
.single-tribe_events .ecr-event .tribe-events-c-subscribe-dropdown__button:focus-within { background: var(--ecr-primary, #1866A5) !important; }
.single-tribe_events .ecr-event .tribe-events-c-subscribe-dropdown__button:hover .tribe-events-c-subscribe-dropdown__button-text,
.single-tribe_events .ecr-event .tribe-events-c-subscribe-dropdown__button:focus-within .tribe-events-c-subscribe-dropdown__button-text { color: #FFFFFF !important; }

/* --- previous / next event ------------------------------------------------- */
.single-tribe_events .ecr-event .tribe-events-sub-nav {
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin: 56px 0 0;
	padding: 0;
}
.single-tribe_events .ecr-event .tribe-events-sub-nav li { list-style: none; flex: 1 1 0; min-width: 0; }
.single-tribe_events .ecr-event .tribe-events-nav-next { text-align: right; }
.single-tribe_events .ecr-event .tribe-events-sub-nav a {
	display: inline-block;
	max-width: 100%;
	color: var(--ecr-primary, #1866A5);
	font-weight: 600;
	text-decoration: none;
	overflow-wrap: anywhere;
}
.single-tribe_events .ecr-event .tribe-events-sub-nav a:hover { text-decoration: underline; }

@media (max-width: 860px) {
	.ecr-event__top { grid-template-columns: 1fr; }
}

@media (max-width: 690px) {
	.single-tribe_events #tribe-events-content.ecr-event { padding: 24px 0 56px; }
	.ecr-event-summary__row { grid-template-columns: 1fr; gap: 4px; }
	.single-tribe_events .ecr-event .tribe-events-sub-nav { flex-direction: column; }
	.single-tribe_events .ecr-event .tribe-events-nav-next { text-align: left; }
}

/* --- round 2: text-only organisers, speakers -------------------------------- */

.ecr-event-organizers__others {
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
	display: grid;
	gap: 6px;
}

.ecr-event-organizers__others li {
	list-style: none;
	margin: 0;
	font-weight: 700;
	color: var(--ecr-text, #1E293B);
}

.ecr-event-organizers__title--speakers { margin-top: 18px; }
.ecr-event-organizers__title--speakers:first-child { margin-top: 0; }
