/* TXK Events — mobile-first list + single styling. Scoped under .txk-events / .txk-event-single.
   Uses the site brand tokens from the theme's brand.css (with hard fallbacks). 2026-06-08 */

.txk-events, .txk-event-single{
	--ev-orange: var(--brand-orange, #ff9000);
	--ev-blue:   var(--brand-blue, #4db2ec);
	--ev-blued:  var(--brand-blue-dark, #2f97d4);
	--ev-ink:    var(--brand-ink, #32373c);
	--ev-line:   #e7e9ec;
	max-width: 920px; margin-inline: auto; padding-block: 1.5rem 3rem;
}

/* ---------- Archive head + filter ---------- */
.txk-events-head{ margin-bottom: 1.4rem; }
.txk-events-h1{ font-size: clamp(1.9rem, 5vw, 2.6rem); color: var(--ev-ink); margin: 0 0 .25rem; }
.txk-events-intro{ color: #5b636b; margin: 0 0 1rem; font-size: 1.05rem; }
.txk-events-filter{ display: flex; flex-wrap: wrap; gap: .5rem; }
.txk-events-filter .txk-chip{
	display: inline-block; padding: .35rem .8rem; border-radius: 999px;
	border: 1px solid var(--ev-line); background: #fff; color: var(--ev-ink);
	font-size: .85rem; font-weight: 600; text-decoration: none; line-height: 1.3;
}
.txk-events-filter .txk-chip:hover{ border-color: var(--ev-orange); color: var(--ev-blued); }
.txk-events-filter .txk-chip.is-active{ background: var(--ev-orange); border-color: var(--ev-orange); color: #fff; }

/* ---------- Day separators ---------- */
.txk-events-daysep{
	font-size: 1rem; text-transform: uppercase; letter-spacing: .04em; font-weight: 800;
	color: var(--ev-ink); margin: 1.6rem 0 .8rem; padding-bottom: .4rem;
	border-bottom: 2px solid var(--ev-orange);
}
.txk-events-list > .txk-events-daysep:first-child{ margin-top: .3rem; }

/* ---------- Event cards (list) ---------- */
.txk-event-card{
	display: flex; gap: 1rem; align-items: stretch;
	background: #fff; border: 1px solid var(--ev-line); border-radius: 10px;
	overflow: hidden; margin-bottom: .9rem;
}
.txk-event-thumb{ flex: 0 0 140px; display: block; }
.txk-event-thumb img{ width: 100%; height: 100%; object-fit: cover; display: block; min-height: 110px; }
.txk-event-body{ flex: 1 1 auto; min-width: 0; padding: .9rem 1.1rem; }
.txk-event-cardmeta{ display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin-bottom: .3rem; }
.txk-event-time{ font-weight: 700; color: var(--ev-blued); font-size: .9rem; }
.txk-event-type{
	display: inline-block; font-size: .7rem; font-weight: 700; text-transform: uppercase;
	letter-spacing: .04em; color: #fff; background: var(--ev-ink); padding: .15rem .5rem; border-radius: 4px;
}
.txk-event-cardtitle{ font-size: 1.2rem; line-height: 1.25; margin: .1rem 0 .3rem; }
.txk-event-cardtitle a{ color: var(--ev-ink); text-decoration: none; }
.txk-event-cardtitle a:hover{ color: var(--ev-blue); }
.txk-event-loc{ color: #5b636b; font-size: .92rem; margin-bottom: .3rem; }
.txk-event-excerpt{ color: #444b52; font-size: .95rem; line-height: 1.5; margin: 0; }

.txk-events-empty{ color: #5b636b; font-size: 1.1rem; padding: 2rem 0; }
.txk-events-pager{ margin-top: 1.5rem; }

/* ---------- Single event ---------- */
.txk-event-back{ display: inline-block; margin-bottom: 1rem; color: var(--ev-blued); font-weight: 600; text-decoration: none; }
.txk-event-back:hover{ text-decoration: underline; }
.txk-event-type-line{ display: flex; gap: .4rem; margin-bottom: .5rem; }
.txk-event-h1{ font-size: clamp(1.9rem, 5.5vw, 3rem); line-height: 1.1; color: var(--ev-ink); margin: 0 0 1rem; }

.txk-event-facts{
	background: #fbf8f4; border: 1px solid var(--ev-line); border-left: 4px solid var(--ev-orange);
	border-radius: 8px; padding: 1rem 1.2rem; margin-bottom: 1.2rem;
}
.txk-event-fact{ display: flex; gap: .8rem; padding: .35rem 0; border-bottom: 1px solid #efe9e1; }
.txk-event-fact:last-child{ border-bottom: 0; }
.txk-event-fact .lab{
	flex: 0 0 90px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em;
	font-size: .72rem; color: var(--ev-orange); padding-top: .15rem;
}
.txk-event-fact .val{ flex: 1 1 auto; color: var(--ev-ink); font-size: 1.02rem; }
.txk-event-fact .val a{ color: var(--ev-blued); }

.txk-event-actions{ display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 1.4rem; }
.txk-event-btn{
	display: inline-block; padding: .7rem 1.2rem; border-radius: 6px; font-weight: 700;
	text-decoration: none; font-size: .95rem; border: 2px solid var(--ev-blued); color: var(--ev-blued); background: #fff;
}
.txk-event-btn:hover{ background: #f2f8fc; }
.txk-event-btn.primary{ background: var(--ev-orange); border-color: var(--ev-orange); color: #fff; }
.txk-event-btn.primary:hover{ background: #e8830a; }

.txk-event-hero{ margin: 0 0 1.3rem; }
.txk-event-hero img{ width: 100%; height: auto; border-radius: 10px; display: block; }
.txk-event-content{ font-size: 1.07rem; line-height: 1.7; color: #2b3138; }
.txk-event-content p{ margin: 0 0 1.1rem; }

/* ---------- Mobile ---------- */
@media (max-width: 560px){
	.txk-event-card{ flex-direction: column; }
	.txk-event-thumb{ flex-basis: auto; }
	.txk-event-thumb img{ height: 180px; min-height: 0; }
	.txk-event-fact{ flex-direction: column; gap: .1rem; }
	.txk-event-fact .lab{ flex-basis: auto; }
}
