/* ═══════════════════════════════════════════════════════════════════════════
   EVENTS (live events sprint, phase A, 2026-10-27): the event page.

   Handle 'hm-events', enqueued after 'hm-extra' (functions.php) on the single
   event page and on the pages that draw the events panel's cards. No build
   step: this file is what the sites load. Every selector is new or scoped to
   the event page's own wrappers; nothing here restyles a class another page
   uses.

   The poster header (section E of EventHeaderOptions2), the body in the
   directory listing's prose, the per-day list, the organiser line, the cards,
   the live-state vocabulary (MapStates) and the phone's bottom bar.
   ═══════════════════════════════════════════════════════════════════════════ */

:root {
	/* The approved directory look (SPEC section 3). */
	--ev-cream: #FAFAF8;
	--ev-panel: #EEF1EC;
	--ev-paper: #FFFFFF;
	--ev-ink: #15221B;
	--ev-ink-2: #5F6B62;
	--ev-line: #D9DED7;
	--ev-hl: #FFC21A;
	--ev-hl-2: #7A5200;
	--ev-brand: #1B7A50;
	--ev-bark: #16311F;
	--ev-bronze: #A9885A;
	--ev-on-soft: #E4EFE7;
	--ev-later: #7A857D;
	--ev-chrome-ink: #CFE0D5;
	--ev-chrome-dim: #A9BDB0;
	--ev-chrome-dot: #5FB98A;
	/* Shapes: curved, like the site's controls. */
	--ev-r-chip: 100px;
	--ev-r-btn: 10px;
	--ev-r-card: 14px;
	--ev-r-photo: 12px;
	--ev-shadow-pop: 0 18px 40px -16px rgba(21,34,27,.35);
}

/* ── The live-state vocabulary (MapStates): written by assets/js/ev-live.js ── */
.ev-dot[hidden],
.ev-chip[hidden] { display:none !important; }
.ev-dot {
	position:relative; display:inline-block; flex:none;
	width:10px; height:10px; border-radius:50%;
}
.ev-dot--on { background:var(--ev-brand); }
.ev-dot--soon { background:var(--ev-hl); box-shadow:inset 0 0 0 1px var(--ev-ink); }
.ev-dot--later { background:transparent; box-shadow:inset 0 0 0 1.5px var(--ev-later); }
.ev-dot.is-pulse::before {
	content:""; position:absolute; inset:0; border-radius:50%;
	background:inherit; animation:ev-ping 1.7s cubic-bezier(0,0,.2,1) infinite;
}
@keyframes ev-ping {
	0% { transform:scale(1); opacity:.6; }
	75%, 100% { transform:scale(2.7); opacity:0; }
}
.ev-chip {
	display:inline-flex; align-items:center; gap:8px;
	height:36px; padding:2px 14px 0; border-radius:var(--ev-r-chip);
	font-family:var(--font-display); font-size:17px; font-weight:400;
	letter-spacing:.08em; line-height:1; white-space:nowrap;
}
.ev-chip .ev-dot { margin-top:-2px; }
.ev-chip--on { border:1px solid var(--ev-chrome-dot); background:var(--ev-brand); color:var(--ev-cream); }
.ev-chip--on .ev-dot { background:#CFEBDB; }
.ev-chip--soon { border:1px solid var(--ev-hl); background:var(--ev-hl); color:var(--ev-ink); }
@media (prefers-reduced-motion: reduce) {
	.ev-dot.is-pulse::before { animation:none; opacity:0; }
	.ev-card__ph img, .ev-bar { transition:none !important; }
}

/* ── The poster header ─────────────────────────────────────────────────── */
.ev-poster {
	max-width:1200px; margin:0 auto; padding:4px 32px 0;
}
.ev-poster__frame {
	display:grid; grid-template-columns:minmax(0, 820fr) minmax(0, 460fr);
	border-radius:20px; overflow:hidden; background:var(--ev-bark);
	box-shadow:0 44px 84px -46px rgba(21,34,27,.7);
}
.ev-poster--solo .ev-poster__frame { grid-template-columns:minmax(0, 1fr); }
.ev-poster:has(> .hm-credit--eventbrite) .ev-poster__frame { border-radius:20px 20px 0 0; }
.ev-poster > .hm-credit--eventbrite {
	border-radius:0 0 20px 20px; padding:9px 34px; background:#0f2417;
}

/* The picture: the site's 3:2 size, contained, never cropped again. */
.ev-poster__ph {
	position:relative; align-self:start; margin:0; min-width:0;
	aspect-ratio:3 / 2; overflow:hidden; background:var(--ev-bark);
}
.ev-poster__ph img {
	position:absolute; inset:0; width:100%; height:100%;
	max-width:none; object-fit:contain; display:block;
}
.ev-poster .hm-credit--overlay {
	left:18px; right:auto; bottom:16px; max-width:calc(100% - 36px);
	padding:5px 11px; border-radius:var(--ev-r-chip);
	background:rgba(12,20,15,.55); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
}
.ev-poster .hm-credit--overlay .hm-credit__text {
	font-size:12px; font-style:normal; line-height:1.3; color:rgba(250,250,248,.92);
}

/* The bark panel, in cream type. */
.ev-poster__panel {
	min-width:0; display:flex; flex-direction:column;
	padding:30px 34px; color:var(--ev-cream);
	font-family:var(--font-body);
}
.ev-poster__top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ev-poster__cat {
	display:inline-flex; align-items:center; padding:3px 10px; border-radius:var(--ev-r-chip);
	font-size:11px; font-weight:700; letter-spacing:.06em; line-height:1.4;
	text-transform:uppercase; white-space:nowrap;
	color:#fff; background:rgba(255,255,255,.12);
	color:color-mix(in srgb, var(--ev-cat, #ec4899) 42%, #fff);
	background:color-mix(in srgb, var(--ev-cat, #ec4899) 22%, transparent);
}
.ev-poster__share {
	flex:none; width:44px; height:44px; display:grid; place-items:center; padding:0;
	border:1px solid rgba(207,224,213,.35); border-radius:50%;
	background:rgba(255,255,255,.06); color:var(--ev-cream); cursor:pointer;
	transition:border-color .13s;
}
.ev-poster__share:hover { border-color:var(--ev-cream); }
.ev-poster__share:focus-visible { outline:2px solid var(--ev-hl); outline-offset:3px; }
/* The date block, as board E draws it: the kicker, the giant numeral, the month and the line beside it. */
.ev-sr {
	position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
	overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.ev-poster__date { display:flex; flex-direction:column; margin:22px 0 0; }
.ev-poster__kicker {
	font-family:var(--font-display); font-size:18px; letter-spacing:.16em; line-height:1;
	color:var(--ev-chrome-ink);
}
.ev-poster__day {
	display:flex; align-items:flex-end; gap:16px; margin-top:6px;
}
.ev-poster__num {
	flex:none;
	font-family:var(--font-display); font-size:clamp(108px, 11vw, 164px);
	letter-spacing:-.01em; line-height:.8; color:var(--ev-bronze);
}
.ev-poster__side { display:flex; flex-direction:column; gap:8px; min-width:0; padding-bottom:4px; }
.ev-poster__mon {
	font-family:var(--font-display); font-size:clamp(36px, 3.4vw, 48px);
	letter-spacing:.06em; line-height:.86; color:var(--ev-cream); white-space:nowrap;
}
.ev-poster__line {
	display:flex; align-items:baseline; gap:8px;
	font-family:var(--font-display); font-size:24px; letter-spacing:.06em; line-height:1.05;
	color:var(--ev-cream);
}
.ev-poster__line::before {
	content:""; flex:none; width:6px; height:6px; border-radius:50%; background:var(--ev-bronze);
	transform:translateY(-5px);
}
.ev-poster__line--long { font-size:18px; }
.ev-poster__when {
	margin:18px 0 0;
	font-family:var(--font-display); font-size:22px; letter-spacing:.06em; line-height:1.1;
	color:var(--ev-chrome-ink);
}
.ev-poster__title {
	margin:16px 0 0;
	font-family:var(--font-serif); font-size:clamp(26px, 2.5vw, 34px); font-weight:500;
	line-height:1.12; letter-spacing:-.012em; color:var(--ev-cream);
	text-wrap:balance;
}
.ev-poster__where {
	display:flex; flex-wrap:wrap; align-items:center; gap:4px 8px;
	margin:12px 0 0; font-size:15.5px; line-height:1.45; color:var(--ev-chrome-ink);
}
.ev-poster__venue { color:var(--ev-cream); font-weight:600; }
.ev-poster a.ev-poster__venue,
.ev-poster a.ev-poster__hood {
	color:var(--ev-cream); font-weight:600;
	text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px;
	text-decoration-color:rgba(250,250,248,.45);
}
.ev-poster a.ev-poster__venue:hover,
.ev-poster a.ev-poster__hood:hover { color:#fff; text-decoration-color:var(--ev-hl); }
.ev-poster__hood { display:inline-flex; align-items:center; gap:4px; }
.ev-poster__hood .hm-hood-pin { flex:none; color:var(--ev-chrome-dim); }
.ev-poster__sep { color:var(--ev-chrome-dim); }
.ev-poster__next {
	display:flex; align-items:center; gap:7px; margin:6px 0 0;
	font-size:14px; line-height:1.4; color:var(--ev-chrome-ink);
}
.ev-poster__next svg { flex:none; }
.ev-poster__foot {
	display:flex; flex-wrap:wrap; align-items:center; gap:8px;
	margin-top:auto; padding-top:18px;
}
.ev-price {
	display:inline-flex; align-items:center; height:36px; padding:2px 16px 0;
	border:1px solid var(--ev-cream); border-radius:var(--ev-r-chip); background:var(--ev-cream);
	font-family:var(--font-display); font-size:19px; letter-spacing:.05em; line-height:1;
	color:var(--ev-ink); white-space:nowrap;
}
@media (max-width:880px) {
	/* The phone: the picture, then the panel (EventPhone). */
	.ev-poster__frame { grid-template-columns:minmax(0, 1fr); border-radius:16px; }
	.ev-poster:has(> .hm-credit--eventbrite) .ev-poster__frame { border-radius:16px 16px 0 0; }
	.ev-poster > .hm-credit--eventbrite { border-radius:0 0 16px 16px; }
	.ev-poster__panel { padding:22px 20px 24px; }
	.ev-poster__num { font-size:120px; }
	.ev-poster__mon { font-size:40px; }
	.ev-poster__title { font-size:28px; }
}
@media (max-width:639px) {
	.ev-poster { padding:0 16px; }
	.ev-poster > .hm-credit--eventbrite { padding:9px 20px; }
}

/* ── The body: the directory listing's prose, no cards ─────────────────── */
.ev-body { background:var(--ev-cream); }
.ev-body .event-detail-body__inner { padding-top:48px; }
@media (min-width:1024px) {
	.ev-body .event-detail-body__grid { grid-template-columns:minmax(0, 1fr) 340px; gap:40px; }
}
.ev-h2 {
	margin:0 0 16px;
	font-family:var(--font-serif); font-size:32px; font-weight:600;
	line-height:1.1; letter-spacing:-.015em; color:var(--ev-ink);
}
.ev-h3 {
	margin:0 0 14px;
	font-family:var(--font-serif); font-size:24px; font-weight:600;
	line-height:1.2; letter-spacing:-.01em; color:var(--ev-ink);
}
.ev-prose {
	max-width:68ch;
	font-family:var(--font-serif); font-size:18px; font-weight:400;
	line-height:1.7; color:var(--ev-ink);
}
.ev-prose p { margin:0 0 16px; font:inherit; color:var(--ev-ink); }
.ev-prose > :last-child { margin-bottom:0; }
.ev-prose a {
	color:var(--ev-ink);
	text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px;
}
.ev-prose a:hover { color:var(--ev-brand); }
.ev-prose strong,
.ev-prose b { font-weight:600; }
.ev-prose em,
.ev-prose i { font-style:italic; }
.ev-prose h2,
.ev-prose h3 {
	margin:28px 0 10px; font-family:var(--font-serif); font-weight:600;
	line-height:1.2; letter-spacing:-.01em; color:var(--ev-ink);
}
.ev-prose h2 { font-size:24px; }
.ev-prose h3 { font-size:20px; }
.ev-prose ul,
.ev-prose ol { margin:0 0 16px; padding-left:22px; }
.ev-prose li { margin:0 0 6px; }
.ev-prose blockquote {
	margin:18px 0; padding-left:16px; border-left:3px solid var(--ev-hl-2);
	font-style:italic;
}
.ev-prose figure { margin:18px 0; }
.ev-prose img { max-width:100%; height:auto; border-radius:var(--ev-r-photo); }
.ev-prose figcaption {
	margin-top:8px; font-family:var(--font-body); font-size:13px; line-height:1.45; color:var(--ev-ink-2);
}

/* "What to expect": the same prose, as ticked bullets. */
.ev-expect__list {
	list-style:none; margin:0; padding:0; max-width:68ch;
	display:grid; gap:12px;
}
.ev-expect__item {
	display:flex; align-items:flex-start; gap:12px; margin:0;
	font-family:var(--font-serif); font-size:18px; line-height:1.7; color:var(--ev-ink);
}
.ev-expect__item strong { font-weight:600; }
.ev-expect__tick {
	flex:none; width:22px; height:22px; margin-top:4px; border-radius:50%;
	display:grid; place-items:center; background:var(--ev-on-soft); color:var(--ev-brand);
}

/* "Dates & times": what the header cannot carry. */
.ev-dates__list {
	list-style:none; margin:0; padding:0; max-width:68ch;
	border-top:1px solid var(--ev-line);
}
.ev-dates__day {
	margin:0; padding:12px 0; border-bottom:1px solid var(--ev-line);
	font-family:var(--font-display); font-size:19px; letter-spacing:.05em; line-height:1.2;
	color:var(--ev-ink);
}
.ev-dates__day--tba { color:var(--ev-ink-2); }
.ev-dates__more {
	margin:12px 0 0;
	font-family:var(--font-body); font-size:13px; font-weight:700;
	letter-spacing:.08em; text-transform:uppercase; color:var(--ev-hl-2);
}

/* The organiser line, under the venue card. Each item wraps whole and carries its
   separator at its start, so a separator never dangles at the end of a line. */
.ev-org {
	margin:14px 0 0; font-family:var(--font-body); font-size:15.5px; line-height:1.55; color:var(--ev-ink);
}
.ev-org__item { display:inline-block; max-width:100%; margin-right:6px; vertical-align:top; }
.ev-org__label { font-weight:600; }
.ev-org__sep { margin-right:8px; color:var(--ev-ink-2); }
.ev-org__link {
	color:var(--ev-ink); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px;
	overflow-wrap:anywhere;
}
.ev-org__link svg { margin-right:7px; vertical-align:-3px; color:var(--ev-ink-2); }
.ev-org__link:hover { color:var(--ev-brand); }

/* The side ticket card, as Event.dc.html draws it: light, the green button. */
.ev-tix {
	padding:24px; border:1px solid var(--ev-line); border-radius:var(--ev-r-card);
	background:var(--ev-paper); box-shadow:var(--ev-shadow-pop); color:var(--ev-ink);
	font-family:var(--font-body);
}
.ev-tix__price {
	margin:0 0 16px; font-family:var(--font-display); font-size:34px; letter-spacing:.03em; line-height:1;
	color:var(--ev-ink);
}
.ev-tix__note { margin:-8px 0 16px; font-size:13px; line-height:1.45; color:var(--ev-ink-2); }
.ev-tix .ev-cta-card__btn {
	display:flex; align-items:center; justify-content:center; gap:10px;
	width:100%; height:52px; padding:2px 22px 0; border-radius:var(--ev-r-btn);
	background:var(--ev-brand); color:var(--ev-cream);
	font-family:var(--font-display); font-size:20px; font-weight:400; letter-spacing:.08em; line-height:1;
	text-transform:none; text-decoration:none; transition:background .13s;
}
.ev-tix .ev-cta-card__btn::after {
	content:""; flex:none; width:17px; height:17px; margin-top:-2px; background:currentColor;
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7'/%3E%3Cpath d='M7 7h10v10'/%3E%3C/svg%3E") center / contain no-repeat;
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7'/%3E%3Cpath d='M7 7h10v10'/%3E%3C/svg%3E") center / contain no-repeat;
}
.ev-tix .ev-cta-card__btn:hover { background:var(--ev-bark); color:var(--ev-cream); opacity:1; transform:none; }
.ev-tix__facts {
	list-style:none; margin:20px 0 0; padding:0; display:grid; gap:14px;
	font-size:15px; line-height:1.45; color:var(--ev-ink);
}
.ev-tix__facts li { display:flex; align-items:flex-start; gap:12px; margin:0; }
.ev-tix__facts svg { flex:none; margin-top:1px; color:var(--ev-ink-2); }
.ev-tix .ev-tix__link { color:var(--ev-brand); font-weight:600; text-decoration:none; }
.ev-tix .ev-tix__link:hover { color:var(--ev-bark); text-decoration:underline; text-underline-offset:3px; }
.ev-tix__link .hm-hood-pin { display:none; }
.ev-tix__fine {
	margin:20px 0 0; padding-top:16px; border-top:1px solid var(--ev-line);
	font-size:12.5px; line-height:1.5; color:var(--ev-ink-2);
}

/* The accessibility card stands alone now the contact card is gone. */
.ev-body .ev-info-pair { grid-template-columns:minmax(0, 1fr); }
.ev-body .ev-info-pair:not(:has(.ev-info-card)) { display:none; }

/* ── Sections under the body: related events, this venue, the digest ──── */
.ev-more { background:var(--ev-cream); padding:64px 0 0; }
.ev-more__inner { max-width:1200px; margin:0 auto; padding:0 32px; }
.ev-sec-head {
	display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:12px 24px;
}
.ev-sec-head__title {
	margin:0; font-family:var(--font-serif); font-size:30px; font-weight:600;
	line-height:1.05; letter-spacing:-.015em; color:var(--ev-ink);
}
.ev-sec-head__see {
	font-family:var(--font-body); font-size:13px; font-weight:700;
	letter-spacing:.08em; text-transform:uppercase; color:var(--ev-hl-2); text-decoration:none;
}
.ev-sec-head__see:hover { text-decoration:underline; text-decoration-color:var(--ev-hl); text-decoration-thickness:3px; text-underline-offset:4px; }
.ev-kicker {
	display:inline-block; margin:0 0 12px; padding:4px 7px 2px;
	background:var(--ev-hl); color:var(--ev-ink);
	font-family:var(--font-display); font-size:15px; letter-spacing:.14em; line-height:1;
}
.ev-rule { display:block; width:40px; height:3px; margin-top:18px; background:var(--ev-hl-2); }
.ev-cards {
	display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:24px; margin-top:30px;
}
.ev-cards--four { grid-template-columns:repeat(4, minmax(0, 1fr)); }
@media (max-width:1023px) {
	.ev-cards, .ev-cards--four { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width:639px) {
	.ev-more { padding-top:44px; }
	.ev-more__inner { padding:0 16px; }
	.ev-cards, .ev-cards--four { grid-template-columns:minmax(0, 1fr); }
	.ev-sec-head__title { font-size:26px; }
}

/* The card: the title's link covers the whole card through ::after; the
   neighbourhood is its own link above it, so no anchor nests in an anchor. */
.ev-card { position:relative; min-width:0; }
.ev-card__ph {
	position:relative; aspect-ratio:3 / 2; overflow:hidden;
	border-radius:var(--ev-r-photo); background:var(--ev-panel);
}
.ev-card__ph img {
	position:absolute; inset:0; width:100%; height:100%; max-width:none;
	object-fit:cover; display:block; transition:transform .45s ease;
}
.ev-card:hover .ev-card__ph img { transform:scale(1.045); }
.ev-card__ph-blank {
	position:absolute; inset:0; display:grid; place-items:center;
	font-family:var(--font-display); font-size:48px; color:var(--ev-ink-2);
}
.ev-card__when {
	display:flex; align-items:center; gap:8px; margin:14px 0 0;
	font-family:var(--font-display); font-size:17px; letter-spacing:.06em; line-height:1;
	color:var(--ev-ink);
}
.ev-card__when .ev-dot { margin-top:-2px; }
.ev-card__title {
	margin:8px 0 0; font-family:var(--font-serif); font-size:19px; font-weight:600; line-height:1.2;
}
.ev-card__link { color:var(--ev-ink); text-decoration:none; }
.ev-card__link::after { content:""; position:absolute; inset:0; z-index:1; }
.ev-card__link:focus-visible { outline:2px solid var(--ev-ink); outline-offset:3px; }
.ev-card:hover .ev-card__link {
	background-image:linear-gradient(var(--ev-hl), var(--ev-hl));
	background-size:100% 6px; background-position:0 92%; background-repeat:no-repeat;
	-webkit-box-decoration-break:clone; box-decoration-break:clone;
}
.ev-card__where {
	display:flex; flex-wrap:wrap; align-items:center; gap:2px 6px;
	margin:6px 0 0; font-family:var(--font-body); font-size:14px; line-height:1.45; color:var(--ev-ink-2);
}
.ev-card__sep { color:var(--ev-ink-2); }
.ev-card__venue {
	position:relative; z-index:2;
	color:var(--ev-brand); font-weight:600; text-decoration:none;
}
.ev-card__venue:hover { color:var(--ev-bark); text-decoration:underline; text-underline-offset:3px; }
.ev-card__hood {
	position:relative; z-index:2;
	display:inline-flex; align-items:center; gap:4px;
	color:var(--ev-brand); font-weight:600; text-decoration:none;
}
.ev-card__hood:hover { color:var(--ev-bark); text-decoration:underline; text-underline-offset:3px; }
.ev-cat {
	display:inline-flex; align-items:center; margin-top:12px; padding:3px 10px;
	border-radius:var(--ev-r-chip);
	font-family:var(--font-body); font-size:11px; font-weight:700; letter-spacing:.06em; line-height:1.4;
	text-transform:uppercase; white-space:nowrap;
	color:var(--ev-cat, var(--ev-ink-2)); background:var(--ev-panel);
	background:color-mix(in srgb, var(--ev-cat, #5F6B62) 18%, transparent);
}

/* The events panel's cards (functions.php hm_render_event_panel, the hub and the
   category archives): the card is a div, its title's link covers it through
   ::after, and the neighbourhood is its own link above that. */
.ev-stretch { position:relative; }
.ev-stretch__link { color:inherit; text-decoration:none; }
.ev-stretch__link::after { content:""; position:absolute; inset:0; z-index:1; }
.ev-stretch__link:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.ev-stretch:focus-within { box-shadow:0 0 0 2px var(--ev-ink); }
.ev-stretch__hood {
	position:relative; z-index:2;
	display:inline-flex; align-items:center; gap:3px;
	color:inherit; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px;
}
.ev-stretch__hood:hover { color:var(--ev-brand); }
.ev-stretch__hood .hm-hood-pin { flex:none; }

/* "In this weekend's digest": one band. */
.ev-digest { background:var(--ev-cream); padding:48px 0 0; }
.ev-digest__band {
	display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px;
	padding:20px 24px; border-radius:16px; background:var(--ev-bark);
	color:var(--ev-cream); text-decoration:none;
}
.ev-digest .ev-kicker { margin:0; }
.ev-digest__text { display:flex; flex-direction:column; gap:4px; min-width:0; }
.ev-digest__lead {
	font-family:var(--font-display); font-size:16px; letter-spacing:.1em; line-height:1;
	color:var(--ev-chrome-ink);
}
.ev-digest__title {
	font-family:var(--font-serif); font-size:22px; font-weight:600; line-height:1.15; color:var(--ev-cream);
}
.ev-digest__go {
	margin-left:auto; font-family:var(--font-body); font-size:14px; font-weight:700; color:var(--ev-chrome-dot);
}
.ev-digest__band:hover .ev-digest__title {
	background-image:linear-gradient(var(--ev-hl), var(--ev-hl));
	background-size:100% 4px; background-position:0 96%; background-repeat:no-repeat;
}

/* ── The phone's bottom bar (where the right rail is hidden) ───────────── */
.ev-bar { display:none; }
@media (max-width:1023px) {
	.ev-bar {
		display:block; position:sticky; bottom:0; z-index:40; margin-top:24px;
		background:var(--ev-paper); border-top:1px solid var(--ev-line);
		box-shadow:0 -10px 24px -14px rgba(21,34,27,.35);
		transition:transform .2s ease, opacity .2s ease;
	}
	.ev-bar.is-off { transform:translateY(110%); opacity:0; pointer-events:none; }
}
.ev-bar__inner {
	display:flex; align-items:center; gap:12px;
	max-width:1200px; margin:0 auto;
	padding:12px 16px calc(14px + env(safe-area-inset-bottom, 0px));
}
.ev-bar__facts { display:flex; flex-direction:column; flex:1; min-width:0; }
.ev-bar__price {
	font-family:var(--font-display); font-size:22px; letter-spacing:.04em; line-height:1; color:var(--ev-ink);
}
.ev-bar__when {
	margin-top:3px; font-family:var(--font-body); font-size:12.5px; line-height:1.35; color:var(--ev-ink-2);
	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.ev-bar__share {
	flex:none; width:44px; height:44px; display:grid; place-items:center; padding:0;
	border:1px solid var(--ev-line); border-radius:50%; background:var(--ev-paper); color:var(--ev-ink); cursor:pointer;
}
.ev-bar__share:hover { border-color:var(--ev-ink); }
.ev-bar__cta {
	flex:none; display:inline-flex; align-items:center; justify-content:center;
	height:48px; padding:2px 22px 0; border-radius:var(--ev-r-btn);
	background:var(--ev-brand); color:var(--ev-cream);
	font-family:var(--font-display); font-size:19px; letter-spacing:.08em; line-height:1;
	text-decoration:none; white-space:nowrap;
}
.ev-bar__cta:hover { background:var(--ev-bark); color:var(--ev-cream); }


/* ═══════════════════════════════════════════════════════════════════════════
   THE EVENTS HUB, TONIGHT AND THE MAP PAGE (live events sprint, phase C,
   2026-10-27): page-events.php, page-events-tonight.php, page-events-map.php
   and their parts (event-row, event-mapblock, event-digest-card,
   event-pic-card). Boards Hub, HubQuiet, HubPhone, Tonight and MapStates;
   SPEC section 3's tokens (the --ev-* set above). Every selector here is
   new (evh-*, ev-pin*, ev-pop*) or scoped under .evh / .evh-pick; the
   picture cards follow the directory home's mixed sizes, copied, not linked.
   ═══════════════════════════════════════════════════════════════════════════ */

.evh { background:var(--ev-cream); color:var(--ev-ink); font-family:var(--font-body); padding-bottom:8px; }
.evh *, .evh *::before, .evh *::after { box-sizing:border-box; }
.evh-wrap { width:100%; max-width:1360px; margin:0 auto; padding:0 40px; }
.evh-sec { padding-top:72px; }
.evh-anchor { display:block; position:relative; top:calc(-1 * var(--hm-sticky-top, 120px)); height:0; }
.evh .ev-kicker { margin:0; }
.evh-kick { align-self:flex-start; }

/* ── The title ── */
.evh-top { padding-top:56px; }
.evh-top__kick { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin:0; }
.evh-top__day {
	padding-top:2px; font-family:var(--font-display); font-size:15px; letter-spacing:.12em; line-height:1;
	color:var(--ev-ink-2);
}
.evh-h1 {
	margin:20px 0 0; font-family:var(--font-serif); font-size:clamp(40px, 5.3vw, 72px); font-weight:500;
	line-height:1.02; letter-spacing:-.022em; color:var(--ev-ink);
}
.evh-h1 em { font-style:italic; font-weight:500; }
.evh-lede { margin:18px 0 0; max-width:48ch; font-size:18px; line-height:1.5; color:var(--ev-ink-2); }
.evh-tabs { margin-top:32px; display:flex; flex-wrap:wrap; gap:10px; }
.evh-tab {
	display:inline-flex; align-items:center; gap:8px; height:42px; padding:2px 16px 0;
	border:1px solid var(--ev-line); border-radius:var(--ev-r-chip); background:var(--ev-paper); color:var(--ev-ink);
	font-family:var(--font-display); font-size:16px; font-weight:400; letter-spacing:.06em; line-height:1;
	text-decoration:none; white-space:nowrap; cursor:pointer;
}
.evh-tab:hover { border-color:var(--ev-ink); color:var(--ev-ink); }
.evh-tab.is-now { background:var(--ev-on-soft); border-color:var(--ev-brand); }
.evh-tab .ev-dot { margin-top:-2px; }
.evh-tab__n { color:var(--ev-brand); }
.evh-tab__n::before { content:"· "; color:var(--ev-ink); }
.evh-tab[hidden], .evh-tab__n[hidden] { display:none; }
.evh-tab[aria-pressed="false"] { opacity:.5; }
.evh-tab[aria-pressed="true"].is-on, .evh-tab.is-on { background:var(--ev-hl); border-color:var(--ev-hl); }

/* The pulsing green dot (MapStates' ON NOW). */
.evh-ping { position:relative; display:inline-block; flex:none; width:10px; height:10px; margin-top:-2px; }
.evh-ping span { position:absolute; inset:0; border-radius:50%; background:var(--ev-brand); }
.evh-ping span:first-child { animation:ev-ping 1.7s cubic-bezier(0,0,.2,1) infinite; }

/* ── The section heading: the yellow kicker, the title, one hook line, the amber rule, "See all" ── */
.evh-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px 24px; flex-wrap:wrap; }
.evh-head__text { display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.evh-h2 {
	margin:12px 0 0; font-family:var(--font-serif); font-size:clamp(30px, 3vw, 40px); font-weight:600;
	line-height:1.05; letter-spacing:-.015em; color:var(--ev-ink);
}
.evh-hook { margin:10px 0 0; max-width:48ch; font-size:17px; line-height:1.5; color:var(--ev-ink-2); }
.evh-head .ev-rule { margin-top:18px; }
.evh-see {
	display:inline-flex; align-items:center; gap:6px; font-family:var(--font-body); font-size:13px; font-weight:700;
	letter-spacing:.08em; line-height:1.4; text-transform:uppercase; color:var(--ev-hl-2); text-decoration:none; white-space:nowrap;
}
.evh-see:hover {
	color:var(--ev-hl-2); background-image:linear-gradient(var(--ev-hl), var(--ev-hl));
	background-size:100% 5px; background-position:0 95%; background-repeat:no-repeat;
}

/* ── Buttons, pills, the badge ── */
.evh-btn {
	display:inline-flex; align-items:center; justify-content:center; gap:10px; height:50px; padding:2px 22px 0;
	border:0; border-radius:var(--ev-r-btn); background:var(--ev-brand); color:var(--ev-cream);
	font-family:var(--font-display); font-size:19px; letter-spacing:.08em; line-height:1; text-decoration:none;
	white-space:nowrap; cursor:pointer;
}
.evh-btn:hover { background:var(--ev-bark); color:var(--ev-cream); }
.evh-btn svg, .evh-btn2 svg { flex:none; margin-top:-2px; }
.evh-btn2 {
	display:inline-flex; align-items:center; justify-content:center; gap:10px; height:50px; padding:2px 22px 0;
	border:1px solid var(--ev-line); border-radius:var(--ev-r-btn); background:var(--ev-paper); color:var(--ev-ink);
	font-family:var(--font-display); font-size:19px; letter-spacing:.08em; line-height:1; text-decoration:none; white-space:nowrap;
}
.evh-btn2:hover { border-color:var(--ev-ink); color:var(--ev-ink); }
.evh-more { margin:32px 0 0; display:flex; justify-content:center; }
.evh-pill {
	display:inline-flex; align-items:center; height:30px; padding:2px 12px 0; border:1px solid var(--ev-line);
	border-radius:var(--ev-r-chip); background:var(--ev-paper); color:var(--ev-ink);
	font-family:var(--font-display); font-size:16px; letter-spacing:.05em; line-height:1; white-space:nowrap;
}
.evh-go {
	display:inline-flex; align-items:center; justify-content:center; gap:6px; height:36px; padding:2px 13px 0;
	border-radius:var(--ev-r-btn); background:var(--ev-brand); color:var(--ev-cream);
	font-family:var(--font-display); font-size:16px; letter-spacing:.08em; line-height:1; text-decoration:none; white-space:nowrap;
}
.evh-go:hover { background:var(--ev-bark); color:var(--ev-cream); }
.evh-go svg { flex:none; margin-top:-2px; }
.evh-badge {
	display:inline-flex; align-items:center; padding:3px 10px 1px; border-radius:var(--ev-r-chip);
	background:var(--ev-hl); color:var(--ev-ink); font-family:var(--font-display); font-size:14px;
	letter-spacing:.1em; line-height:1.2; text-transform:uppercase; white-space:nowrap;
}

/* ── The rows (template-parts/event-row.php): the words beside the dot come from its class ── */
.evh-row { position:relative; min-width:0; }
.evh-row a { text-decoration:none; }
.evh-row__pic {
	position:relative; display:block; flex:none; overflow:hidden; background:var(--ev-panel); border-radius:10px;
}
.evh-row__pic img {
	position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; display:block;
	transition:transform .45s ease;
}
.evh-row:hover .evh-row__pic img { transform:scale(1.045); }
.evh-row__blank {
	position:absolute; inset:0; display:grid; place-items:center;
	font-family:var(--font-display); font-size:28px; color:var(--ev-ink-2);
}
.evh-row__title { color:var(--ev-ink); font-family:var(--font-serif); font-weight:600; line-height:1.22; }
.evh-row__title:hover { color:var(--ev-ink); }
.evh-row:hover .evh-row__title {
	background-image:linear-gradient(var(--ev-hl), var(--ev-hl)); background-size:100% 6px;
	background-position:0 92%; background-repeat:no-repeat; -webkit-box-decoration-break:clone; box-decoration-break:clone;
}
.evh-row__vlink, .evh-row__hood { color:var(--ev-brand); font-weight:500; }
.evh-row__vlink:hover, .evh-row__hood:hover { color:var(--ev-bark); text-decoration:underline; text-underline-offset:3px; }
.evh-row__hood .hm-hood-pin { display:none; }
.evh-sep { color:var(--ev-ink-2); }
.evh-row__run { color:var(--ev-ink-2); }
.evh-row__when { display:flex; align-items:center; flex-wrap:wrap; gap:6px 10px; margin:0; }
.evh-row .ev-cat { margin-top:0; }
.evh-state { font-family:var(--font-body); font-size:11px; font-weight:700; letter-spacing:.1em; line-height:1.3; text-transform:uppercase; color:var(--ev-ink-2); }
.evh-row:has(.ev-dot--on) .evh-state::before { content:"On now"; color:var(--ev-brand); }
.evh-row:has(.ev-dot--soon) .evh-state::before { content:"Starting soon"; color:var(--ev-ink); }
.evh-row:has(.ev-dot--later) .evh-state::before { content:"Later today"; }

/* The panel's row: the map's panel, the phone's list, the map page's list. */
.evh-row--panel {
	display:grid; grid-template-columns:72px minmax(0, 1fr); gap:12px; align-items:center;
	padding:6px 10px; border-radius:10px;
}
.evh-row--panel:hover { background:var(--ev-panel); }
.evh-row--panel .evh-row__pic { width:72px; height:72px; }
.evh-row--panel .evh-row__body { display:flex; flex-direction:column; min-width:0; }
.evh-row--panel .evh-row__title { font-size:15.5px; }
.evh-row--panel .evh-row__meta {
	display:flex; align-items:center; flex-wrap:wrap; gap:2px 7px; margin-top:3px;
	font-size:12.5px; line-height:1.35; color:var(--ev-ink-2);
}
.evh-row--panel .ev-dot { width:8px; height:8px; }
.evh-row--panel .evh-state { display:none; }
.evh-row--panel .evh-row__time {
	padding-top:2px; font-family:var(--font-display); font-size:15px; letter-spacing:.04em; line-height:1; color:var(--ev-ink);
}
.evh-row--panel .evh-row__foot { display:flex; align-items:center; gap:10px; margin-top:6px; }
.evh-row--panel .evh-pill { height:24px; padding:2px 9px 0; font-size:14px; }
.evh-row--panel .evh-go {
	height:auto; padding:0; background:none; color:var(--ev-hl-2);
	font-family:var(--font-body); font-size:11.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
}
.evh-row--panel .evh-go:hover { background:none; color:var(--ev-hl-2); text-decoration:underline; text-decoration-color:var(--ev-hl); text-decoration-thickness:3px; }
.evh-row--panel .evh-go svg { width:12px; height:12px; margin-top:0; }

/* The hub's Tonight: the line rows. */
.evh-list { list-style:none; margin:30px 0 0; padding:0; }
.evh-row--line {
	display:grid; grid-template-columns:120px 150px minmax(0, 1fr) auto; gap:24px; align-items:center;
	padding:22px 0; border-top:1px solid var(--ev-line);
}
.evh-row--line .evh-row__pic { width:120px; height:80px; }
.evh-row__clock { font-family:var(--font-display); line-height:1; color:var(--ev-ink); min-width:0; }
.evh-row__big { display:block; font-size:26px; letter-spacing:.01em; }
.evh-row__small { display:block; margin-top:5px; font-size:15px; letter-spacing:.12em; color:var(--ev-ink-2); }
.evh-row__body { min-width:0; }
.evh-row__h { margin:9px 0 0; font-family:var(--font-serif); font-size:20px; font-weight:600; line-height:1.2; letter-spacing:-.005em; }
.evh-row__meta {
	margin:5px 0 0; display:flex; flex-wrap:wrap; align-items:center; gap:2px 7px;
	font-size:15px; line-height:1.45; color:var(--ev-ink-2);
}
.evh-row__act { display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.evh-list__sub {
	margin:0; padding:30px 0 14px; border-top:1px solid var(--ev-line);
	font-family:var(--font-display); font-size:17px; font-weight:400; letter-spacing:.12em; line-height:1; color:var(--ev-ink-2);
}
.evh-list + .evh-more { padding-top:0; }
.evh-tonight .evh-list:last-of-type { border-bottom:1px solid var(--ev-line); }
.evh-list__ad { display:flex; justify-content:center; padding:28px 0; border-top:1px solid var(--ev-line); }

/* The Tonight page's cards. */
.evh-cards { list-style:none; margin:30px 0 0; padding:0; display:flex; flex-direction:column; gap:14px; }
.evh-row--card {
	display:grid; grid-template-columns:200px minmax(0, 1fr) auto; gap:0 26px; align-items:center;
	padding:14px 24px 14px 14px; border:1px solid var(--ev-line); border-radius:var(--ev-r-card); background:var(--ev-paper);
	transition:border-color .2s ease, box-shadow .2s ease;
}
.evh-row--card:hover { border-color:#C9D0C8; box-shadow:0 18px 40px -26px rgba(21,34,27,.42); }
.evh-row--card .evh-row__pic { width:200px; height:133px; border-radius:var(--ev-r-photo); }
.evh-row--card .evh-row__body { display:flex; flex-direction:column; gap:7px; }
.evh-row--card .evh-row__when { min-height:26px; }
.evh-row--card .evh-row__time {
	padding-top:2px; font-family:var(--font-display); font-size:24px; letter-spacing:.03em; line-height:1; color:var(--ev-ink);
}
.evh-row--card .evh-row__h { margin:0; font-size:22px; }
.evh-row--card .evh-row__meta { margin:0; font-size:14.5px; font-weight:500; }
.evh-row__desc { margin:0; font-size:15px; line-height:1.45; color:var(--ev-ink-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.evh-row--card .evh-row__act { justify-content:center; gap:12px; }
.evh-row--card .evh-go { height:46px; padding:2px 20px 0; font-size:19px; }

/* ── The digest hero cards ── */
.evh-digests { padding-top:40px; display:flex; flex-direction:column; gap:24px; }
.evh.is-quiet .evh-digests { padding-top:36px; }
.evh-digests__pair { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:24px; }
.evh-dcard {
	position:relative; display:flex; flex-direction:column; justify-content:flex-end; min-height:420px;
	overflow:hidden; border-radius:16px; background:var(--ev-bark); color:var(--ev-cream);
}
.evh-dcard--big { min-height:540px; }
.evh-dcard.is-plain { background:linear-gradient(160deg, #2C5A43, var(--ev-bark)); }
.evh-dcard__img { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; transition:transform .45s ease; }
.evh-dcard:hover .evh-dcard__img { transform:scale(1.03); }
.evh-dcard__scrim { position:absolute; inset:0; background:linear-gradient(180deg, rgba(21,34,27,0) 18%, rgba(21,34,27,.7) 50%, rgba(21,34,27,.9) 100%); }
.evh-dcard__text { position:relative; display:flex; flex-direction:column; align-items:flex-start; padding:0 30px 30px; }
.evh-dcard--big .evh-dcard__text { padding:0 48px 44px; }
.evh-dcard__date {
	display:inline-block; padding:7px 11px 3px; border-radius:7px; background:var(--ev-hl); color:var(--ev-ink);
	font-family:var(--font-display); font-size:28px; letter-spacing:.03em; line-height:1;
}
.evh-dcard--big .evh-dcard__date { padding:10px 15px 5px; border-radius:9px; font-size:48px; }
.evh-dcard__title {
	margin:14px 0 0; font-family:var(--font-serif); font-size:34px; font-weight:600; line-height:1.08; letter-spacing:-.015em;
}
.evh-dcard--big .evh-dcard__title { margin-top:18px; font-size:clamp(36px, 4.2vw, 56px); line-height:1.02; letter-spacing:-.02em; }
.evh-dcard__title a { color:var(--ev-cream); text-decoration:none; }
.evh-dcard__title a::after { content:""; position:absolute; inset:0; z-index:1; }
.evh-dcard:hover .evh-dcard__title a {
	background-image:linear-gradient(var(--ev-hl), var(--ev-hl)); background-size:100% 5px;
	background-position:0 94%; background-repeat:no-repeat;
}
.evh-dcard__dek { margin:8px 0 0; max-width:52ch; font-size:16px; line-height:1.5; color:var(--ev-cream); }
.evh-dcard--big .evh-dcard__dek { margin-top:14px; max-width:60ch; font-size:18px; }
.evh-dcard__foot { margin-top:16px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.evh-dcard--big .evh-dcard__foot { margin-top:24px; gap:20px; }
.evh-dcard__go {
	position:relative; z-index:2; display:inline-flex; align-items:center; gap:8px; height:40px; padding:2px 18px 0;
	border-radius:var(--ev-r-chip); background:var(--ev-paper); color:var(--ev-ink);
	font-family:var(--font-display); font-size:16px; letter-spacing:.08em; line-height:1; text-decoration:none;
}
.evh-dcard__go:hover { color:var(--ev-ink); background:var(--ev-hl); }
.evh-dcard--big .evh-dcard__go { height:48px; padding:2px 24px 0; gap:10px; font-size:19px; }
.evh-dcard__go svg { flex:none; margin-top:-2px; }
.evh-dcard__by { font-size:13px; line-height:1.4; color:var(--ev-chrome-ink); }
.evh-dcard--big .evh-dcard__by { font-size:14px; }

/* ── The map block: the live map on desktop, the still picture on a phone ── */
.evh-mapsec { padding-top:28px; }
.evh-digests + .evh-mapsec { padding-top:88px; }
.evh-mapsec .evh-head { margin-bottom:30px; }
.evh-mapblock { position:relative; }
.evh-mapblock__live, .evh-mapchips, .evh-mapblock__open { display:none; }
.evh-still {
	position:relative; margin:0; aspect-ratio:3 / 2; overflow:hidden;
	border:1px solid var(--ev-line); border-bottom:0; border-radius:14px 14px 0 0; background:#E9ECE7;
}
.evh-still__img { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; display:block; }
.evh-still__pin {
	position:absolute; z-index:2; width:16px; height:16px; margin:-8px 0 0 -8px; border-radius:50%;
	background:var(--ev-hl); box-shadow:0 0 0 1.5px var(--ev-ink);
}
.evh-still__pin .ev-dot { position:absolute; inset:0; width:auto; height:auto; }
.evh-still__pin .ev-dot--on { background:var(--ev-brand); box-shadow:0 0 0 2px var(--ev-paper); }
.evh-still__pin .ev-dot--soon { background:var(--ev-hl); box-shadow:inset 0 0 0 1.5px var(--ev-ink); }
.evh-still__pin .ev-dot--later { background:var(--ev-paper); box-shadow:inset 0 0 0 2px var(--ev-later); }
.evh-still__count {
	position:absolute; left:9px; top:-13px; min-width:17px; height:17px; padding:3px 4px 0;
	border:1px solid var(--ev-ink); border-radius:var(--ev-r-chip); background:var(--ev-hl); color:var(--ev-ink);
	font-family:var(--font-display); font-size:12px; line-height:1; text-align:center;
}
.evh-still__open { position:absolute; z-index:3; left:12px; right:12px; bottom:12px; box-shadow:var(--ev-shadow-pop); }
.evh-still__credit {
	position:absolute; z-index:3; top:6px; right:8px; padding:1px 6px; border-radius:4px;
	background:rgba(255,255,255,.78); font-size:10px; line-height:1.5; color:var(--ev-ink-2);
}
.evh-still__credit a { color:inherit; }
.evh-still__alone { display:flex; width:100%; margin-bottom:12px; }
.evh-panel {
	overflow:hidden; border:1px solid var(--ev-line); border-radius:0 0 14px 14px; background:var(--ev-paper);
}
.evh-still__alone + .evh-panel { border-radius:14px; }
.evh-panel__head { display:flex; align-items:center; gap:10px; padding:14px 18px 8px; }
.evh-panel__h {
	margin:0; padding-top:2px; font-family:var(--font-display); font-size:22px; font-weight:400;
	letter-spacing:.06em; line-height:1; color:var(--ev-ink);
}
.evh-panel__count {
	margin-left:auto; display:inline-flex; align-items:center; height:22px; padding:2px 9px 0;
	border:1px solid var(--ev-line); border-radius:var(--ev-r-chip); background:var(--ev-paper); color:var(--ev-ink);
	font-family:var(--font-display); font-size:14px; letter-spacing:.06em; line-height:1;
}
.evh-panel__count.is-now { border-color:var(--ev-brand); background:var(--ev-on-soft); color:var(--ev-brand); }
.evh-panel__count[hidden] { display:none; }
.evh-panel__body { padding:0 8px 8px; }
.evh-panel__sub {
	display:flex; align-items:center; gap:8px; margin:0; padding:10px 10px 4px;
	font-family:var(--font-display); font-size:16px; font-weight:400; letter-spacing:.08em; line-height:1; color:var(--ev-ink);
}
.evh-panel__sub span {
	font-family:var(--font-body); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--ev-ink-2);
}
.evh-panel__list { list-style:none; margin:0; padding:0; }
.evh-key { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.evh-key__item {
	display:inline-flex; align-items:center; gap:7px; height:32px; padding:2px 12px 0;
	border:1px solid var(--ev-line); border-radius:var(--ev-r-chip); background:var(--ev-paper); color:var(--ev-ink);
	font-family:var(--font-display); font-size:15px; letter-spacing:.06em; line-height:1; white-space:nowrap;
}
.evh-key__item .ev-dot { margin-top:-2px; }
@media (min-width:1024px) {
	.evh-mapblock {
		height:600px; overflow:hidden; border:1px solid var(--ev-line); border-radius:16px; background:#E9ECE7;
	}
	.evh-mapblock .evh-mapblock__live { display:block; position:absolute; inset:0; width:100%; height:100%; } /* over MapLibre's own .maplibregl-map { position:relative } */
	.evh-still, .evh-still__alone, .evh-key { display:none; }
	.evh-panel {
		position:absolute; z-index:5; top:24px; bottom:24px; left:24px; width:400px;
		display:flex; flex-direction:column; border-radius:var(--ev-r-card); box-shadow:var(--ev-shadow-pop);
	}
	.evh-still__alone + .evh-panel { border-radius:var(--ev-r-card); }
	.evh-panel__head { padding:12px 18px 6px; }
	.evh-panel__body { flex:1 1 auto; min-height:0; overflow:auto; }
	.evh-row--panel { grid-template-columns:60px minmax(0, 1fr); padding:5px 10px; }
	.evh-row--panel .evh-row__pic { width:60px; height:40px; }
	.evh-mapchips { display:flex; position:absolute; z-index:5; top:24px; left:448px; gap:8px; }
	.evh-mapchips .evh-tab { box-shadow:0 8px 18px -12px rgba(21,34,27,.45); }
	.evh-mapblock__open { display:inline-flex; position:absolute; z-index:5; right:24px; bottom:24px; box-shadow:var(--ev-shadow-pop); }
}

/* The pins on a live map (assets/js/ev-map.js), MapStates' vocabulary. */
.ev-pin {
	position:relative; display:block; width:16px; height:16px; padding:0; border:0; border-radius:50%;
	background:var(--ev-hl); box-shadow:0 0 0 1.5px var(--ev-ink); cursor:pointer;
}
.ev-pin[hidden] { display:none; }
.ev-pin--on { background:var(--ev-brand); box-shadow:0 0 0 2px var(--ev-paper), 0 0 0 3px rgba(21,34,27,.2); }
.ev-pin--on::before {
	content:""; position:absolute; inset:-2px; border-radius:50%; background:rgba(27,122,80,.45);
	animation:ev-pinring 2.2s cubic-bezier(0,0,.2,1) infinite;
}
@keyframes ev-pinring { 0% { transform:scale(1); opacity:.6; } 80%, 100% { transform:scale(2.9); opacity:0; } }
.ev-pin--soon { background:var(--ev-hl); box-shadow:inset 0 0 0 2px var(--ev-ink); }
.ev-pin--later { background:var(--ev-paper); box-shadow:inset 0 0 0 2px var(--ev-later); }
.ev-pin--today { background:var(--ev-ink-2); box-shadow:0 0 0 2px var(--ev-paper); }
.ev-pin.is-active { z-index:3; width:22px; height:22px; background:var(--ev-ink); box-shadow:0 0 0 2px var(--ev-hl), 0 3px 8px rgba(21,34,27,.35); }
.ev-pin.is-active::before { display:none; }
.ev-pin:focus-visible { outline:2px solid var(--ev-ink); outline-offset:3px; }
.ev-pin__n {
	position:absolute; left:9px; top:-13px; min-width:17px; height:17px; padding:3px 4px 0;
	border-radius:var(--ev-r-chip); background:var(--ev-ink); color:var(--ev-cream); box-shadow:0 0 0 1.5px #E9ECE7;
	font-family:var(--font-display); font-size:12px; line-height:1; text-align:center; pointer-events:none;
}
.ev-pintag {
	position:relative; padding:5px 10px 3px; border:1px solid var(--ev-ink); border-radius:6px;
	background:var(--ev-hl); color:var(--ev-ink); font-family:var(--font-display); font-size:13px;
	letter-spacing:.06em; line-height:1; white-space:nowrap; pointer-events:none;
}
.ev-pintag::after {
	content:""; position:absolute; left:50%; bottom:-5px; width:8px; height:8px; margin-left:-4px;
	background:var(--ev-hl); border-right:1px solid var(--ev-ink); border-bottom:1px solid var(--ev-ink); transform:rotate(45deg);
}
/* The pin's card (a MapLibre popup). */
.ev-pop .maplibregl-popup-content {
	padding:14px; border:1px solid var(--ev-line); border-radius:var(--ev-r-card); background:var(--ev-paper);
	box-shadow:var(--ev-shadow-pop); font-family:var(--font-body);
}
.ev-pop .maplibregl-popup-close-button { width:28px; height:28px; font-size:20px; color:var(--ev-ink-2); border-radius:50%; }
.ev-popcard { width:260px; max-width:100%; }
.ev-popcard__pic { position:relative; display:block; aspect-ratio:3 / 2; overflow:hidden; border-radius:10px; background:var(--ev-panel); }
.ev-popcard__pic img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ev-popcard__when {
	display:flex; align-items:center; gap:7px; margin:10px 0 0;
	font-family:var(--font-display); font-size:15px; letter-spacing:.05em; line-height:1.15; color:var(--ev-ink);
}
.ev-popcard__t { display:block; margin:6px 0 0; font-family:var(--font-serif); font-size:19px; font-weight:600; line-height:1.2; }
.ev-popcard__t a, a.ev-popcard__t { color:var(--ev-ink); text-decoration:none; }
.ev-popcard__t a:hover, a.ev-popcard__t:hover { text-decoration:underline; text-decoration-color:var(--ev-hl); text-decoration-thickness:3px; }
.ev-popcard__where { margin:4px 0 0; font-size:14px; line-height:1.45; color:var(--ev-ink-2); }
.ev-popcard__where a { color:var(--ev-brand); font-weight:600; text-decoration:none; }
.ev-popcard__foot { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:12px 0 0; }
.ev-popcard__venue { margin:0; font-family:var(--font-serif); font-size:19px; font-weight:600; line-height:1.2; color:var(--ev-ink); }
.ev-popcard__n { margin:2px 0 0; font-size:13.5px; color:var(--ev-ink-2); }
.ev-popcard__list { list-style:none; margin:10px 0 0; padding:0; border-top:1px solid var(--ev-line); }
.ev-popcard__list li { padding:9px 0; border-bottom:1px solid var(--ev-line); }
.ev-popcard__list .ev-popcard__when { margin:0; font-size:14px; }
.ev-popcard__list .ev-popcard__t { margin-top:4px; font-family:var(--font-body); font-size:14.5px; font-weight:600; }
.ev-popcard__price { font-size:13px; color:var(--ev-ink-2); }
@media (prefers-reduced-motion: reduce) {
	.evh-ping span:first-child, .ev-pin--on::before { animation:none; opacity:0; }
	.evh-row__pic img, .evh-dcard__img, .evh-pc img, .evh-hrow__pic img { transition:none; }
}

/* ── The weekend, day by day (#weekend) ── */
.evh-band { margin-top:72px; padding:64px 0; background:var(--ev-panel); }
.evh-days { margin-top:30px; display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:24px; }
.evh-day {
	display:flex; flex-direction:column; min-width:0; padding:26px 26px 22px;
	border:1px solid var(--ev-line); border-radius:var(--ev-r-card); background:var(--ev-paper);
}
.evh-day__head { display:flex; align-items:flex-end; gap:14px; padding-bottom:18px; border-bottom:1px solid var(--ev-line); }
.evh-day__num { font-family:var(--font-display); font-size:64px; line-height:.8; color:var(--ev-bronze); }
.evh-day__names { display:flex; flex-direction:column; gap:5px; }
.evh-day__wd { font-family:var(--font-serif); font-size:24px; font-weight:600; line-height:1; color:var(--ev-ink); }
.evh-day__mon { font-size:12px; font-weight:700; letter-spacing:.1em; line-height:1.2; text-transform:uppercase; color:var(--ev-ink-2); }
.evh-row--lead {
	display:grid; grid-template-columns:60% minmax(0, 1fr); gap:12px 16px; align-items:end;
	padding:18px 0 16px; border-bottom:1px solid var(--ev-line);
}
.evh-row--lead .evh-row__pic { width:100%; aspect-ratio:3 / 2; border-radius:var(--ev-r-photo); }
.evh-row--lead .evh-row__body { display:contents; }
.evh-row--lead .evh-row__when { grid-column:2; grid-row:1; align-self:end; flex-direction:column; align-items:flex-start; gap:8px; padding-bottom:2px; }
.evh-row--lead .evh-row__time { font-family:var(--font-display); font-size:24px; letter-spacing:.02em; line-height:1.05; color:var(--ev-ink); }
.evh-row--lead .evh-row__title { grid-column:1 / -1; font-size:22px; line-height:1.18; letter-spacing:-.01em; }
.evh-row--lead .evh-row__meta { grid-column:1 / -1; margin:-6px 0 0; font-size:14.5px; }
.evh-day__list { list-style:none; margin:0; padding:0; flex:1 1 auto; }
.evh-row--day {
	display:grid; grid-template-columns:96px minmax(0, 1fr); gap:14px; align-items:start;
	padding:14px 0; border-bottom:1px solid var(--ev-line);
}
.evh-row--day .evh-row__pic { width:96px; height:64px; }
.evh-row--day .evh-row__body { display:flex; flex-direction:column; min-width:0; }
.evh-row--day .evh-row__when { height:20px; flex-wrap:nowrap; gap:7px; }
.evh-row--day .evh-state { display:none; }
.evh-row--day .evh-row__time { font-family:var(--font-display); font-size:17px; letter-spacing:.02em; line-height:1; color:var(--ev-ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.evh-row--day .evh-row__title { display:block; margin-top:5px; font-size:17px; line-height:1.25; }
.evh-row--day .evh-row__meta { margin-top:3px; font-size:13.5px; line-height:1.4; }
.evh-day__all { margin-top:18px; align-self:flex-start; }
.evh-day__none { margin:18px 0 0; font-size:15px; color:var(--ev-ink-2); }

/* ── Pick a kind, Around town: the picture cards, mixed sizes ── */
.evh-kinds nav, .evh-hoods nav { margin-top:30px; }
.evh-mosaic { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); grid-template-rows:260px 260px; gap:16px; }
.evh-cards4 { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:16px; }
.evh-mosaic + .evh-cards4 { margin-top:16px; }
.evh-pc {
	position:relative; display:block; min-width:0; min-height:0; overflow:hidden; border-radius:var(--ev-r-photo);
	background:var(--ev-panel); color:var(--ev-cream); text-decoration:none;
}
.evh-pc:hover { color:var(--ev-cream); }
.evh-pc.is-plain { background:linear-gradient(160deg, #2C5A43, var(--ev-bark)); }
.evh-pc img { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; transition:transform .45s ease; }
.evh-pc:hover img { transform:scale(1.045); }
.evh-pc__scrim { position:absolute; inset:0; background:linear-gradient(180deg, rgba(21,34,27,0) 34%, rgba(21,34,27,.8) 100%); }
.evh-pc.is-plain .evh-pc__scrim { background:none; }
.evh-pc__text { position:absolute; left:20px; right:20px; bottom:18px; display:flex; flex-direction:column; align-items:flex-start; gap:9px; }
.evh-pc__name {
	font-family:var(--font-serif); font-size:28px; font-weight:600; line-height:1.04; letter-spacing:-.015em;
	color:var(--ev-cream); text-shadow:0 2px 14px rgba(21,34,27,.4);
}
.evh-pc:hover .evh-pc__name { text-decoration:underline; text-decoration-color:var(--ev-hl); text-decoration-thickness:4px; text-underline-offset:6px; }
.evh-mosaic .evh-pc--big { grid-column:1 / 3; grid-row:1 / 3; }
.evh-pc--big .evh-pc__text { left:30px; right:30px; bottom:28px; gap:14px; }
.evh-pc--big .evh-pc__name { font-size:clamp(36px, 4vw, 56px); }
.evh-pc--small { aspect-ratio:3 / 2; }
.evh-pc--small .evh-pc__text { left:16px; right:16px; bottom:14px; gap:7px; }
.evh-pc--small .evh-pc__name { font-size:21px; }
.evh-hoodpair { display:grid; grid-template-columns:minmax(0, 7fr) minmax(0, 5fr); gap:16px; }
.evh-hoodpair .evh-pc { height:440px; }
.evh-pc--wide .evh-pc__text { left:32px; right:32px; bottom:30px; gap:14px; }
.evh-pc--wide .evh-pc__name { font-size:clamp(40px, 4.4vw, 60px); }
.evh-hoodpair .evh-pc--big .evh-pc__text { left:28px; right:28px; bottom:26px; gap:12px; }
.evh-hoodpair .evh-pc--big .evh-pc__name { font-size:clamp(32px, 3.1vw, 42px); }
.evh-hoodrows { margin-top:28px; display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:24px 32px; }
.evh-hoodpair + .evh-hoodrows { margin-top:28px; }
.evh-hrow { display:flex; align-items:center; gap:18px; min-width:0; color:var(--ev-ink); text-decoration:none; }
.evh-hrow:hover { color:var(--ev-ink); }
.evh-hrow__pic { position:relative; flex:none; width:156px; height:104px; overflow:hidden; border-radius:var(--ev-r-photo); background:var(--ev-panel); }
.evh-hrow__pic.is-plain { background:linear-gradient(160deg, #2C5A43, var(--ev-bark)); }
.evh-hrow__pic img { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; transition:transform .45s ease; }
.evh-hrow:hover .evh-hrow__pic img { transform:scale(1.045); }
.evh-hrow__text { display:flex; flex-direction:column; align-items:flex-start; gap:10px; min-width:0; }
.evh-hrow__name { font-family:var(--font-serif); font-size:25px; font-weight:600; line-height:1.1; letter-spacing:-.01em; }
.evh-hrow:hover .evh-hrow__name {
	background-image:linear-gradient(var(--ev-hl), var(--ev-hl)); background-size:100% 6px;
	background-position:0 92%; background-repeat:no-repeat;
}

/* ── Pick a day: the day tabs, the panels and the calendar, restyled to the board ── */
.evh-pick .events-tabs-row { margin-top:30px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.evh-pick .events-day-tabs { display:flex; flex-wrap:wrap; gap:10px; flex:1 1 auto; }
.evh-pick .events-day-tab {
	height:42px; margin:0; padding:2px 16px 0; border:1px solid var(--ev-line); border-radius:var(--ev-r-chip);
	background:var(--ev-paper); color:var(--ev-ink); font-family:var(--font-display); font-size:16px; font-weight:400;
	letter-spacing:.06em; line-height:1; cursor:pointer;
}
.evh-pick .events-day-tab:hover { border-color:var(--ev-ink); }
.evh-pick .events-day-tab.active { background:var(--ev-hl); border-color:var(--ev-hl); color:var(--ev-ink); }
.evh-pick .events-nav-arrows { display:flex; gap:8px; }
.evh-pick .events-nav-arrow { width:40px; height:40px; border:1px solid var(--ev-line); border-radius:50%; background:var(--ev-paper); color:var(--ev-ink); }
.evh-pick .events-nav-arrow:disabled { background:var(--ev-panel); border-color:transparent; color:#A3ABA4; }
.evh-pick .events-main-layout { padding:28px 0 0; grid-template-columns:minmax(0, 1fr) 300px; gap:32px; }
.evh-pick .events-cal__rail { padding:0; top:calc(var(--hm-sticky-top, 0px) + 16px); }
.evh-pick .events-section__title { font-size:24px; letter-spacing:.06em; color:var(--ev-ink); }
.evh-pick .events-section__count { font-size:12px; color:var(--ev-ink-2); }
.evh-pick .blink-dot { background:var(--ev-brand); }
.evh-pick .event-row, .evh-pick .event-card-featured {
	border:1px solid var(--ev-line); border-radius:var(--ev-r-card); background:var(--ev-paper);
	transition:border-color .2s ease, box-shadow .2s ease;
}
.evh-pick .event-row:hover, .evh-pick .event-card-featured:hover { background:var(--ev-paper); border-color:#C9D0C8; box-shadow:0 18px 40px -26px rgba(21,34,27,.42); }
.evh-pick .event-row__title, .evh-pick .event-card-featured__title { font-family:var(--font-serif); font-weight:600; color:var(--ev-ink); }
.evh-pick .event-row:hover .event-row__title, .evh-pick .event-card-featured:hover .event-card-featured__title { color:var(--ev-ink); }
.evh-pick .mini-cal { border-color:var(--ev-line); border-radius:var(--ev-r-card); }
.evh-pick .mini-cal__header { background:var(--ev-bark); }
.evh-pick .mini-cal__cell--today { background:var(--ev-paper); color:var(--ev-ink); box-shadow:inset 0 0 0 2px var(--ev-ink); }
.evh-pick .mini-cal__cell--selected { background:var(--ev-hl); color:var(--ev-ink); }
.evh-pick .mini-cal__cell-dot { width:5px; height:5px; background:var(--ev-hl); box-shadow:inset 0 0 0 1px var(--ev-ink); }
.evh-pick .mini-cal__cell--today .mini-cal__cell-dot { background:var(--ev-hl); }
.evh-pick .rail-event-cats { border-color:var(--ev-line); border-radius:var(--ev-r-card); }
.evh-pick .rail-event-cats__btn.is-active { border-color:var(--ev-hl); background:color-mix(in srgb, var(--ev-hl) 22%, transparent); color:var(--ev-ink); }
.evh-pick .rail-event-cats__check { color:var(--ev-ink); }
.evh-pick .rail-submit-event { border-radius:var(--ev-r-card); background:var(--ev-bark); }
.evh-pick .rail-submit-event__desc { color:var(--ev-chrome-dim); }
.evh-pick .rail-submit-event__btn { border-radius:var(--ev-r-btn); background:var(--ev-brand); }
.evh-pick .events-mobile-cat-filter__select { border-color:var(--ev-line); border-radius:var(--ev-r-btn); }
.evh-pick .events-empty-cta__btn { border-radius:var(--ev-r-btn); background:var(--ev-brand); }
@media (max-width:1023px) {
	.evh-pick .events-main-layout { grid-template-columns:minmax(0, 1fr); padding-top:20px; }
}

/* ── The list-your-event band ── */
.evh-listyour {
	display:grid; grid-template-columns:auto minmax(0, 1fr) auto; gap:28px; align-items:center;
	padding:40px 44px; border-radius:16px; background:var(--ev-panel);
}
.evh-listyour__icon {
	display:grid; place-items:center; width:64px; height:64px; border:1px solid var(--ev-line); border-radius:50%;
	background:var(--ev-paper); color:var(--ev-brand);
}
.evh-listyour__h { margin:0; font-family:var(--font-serif); font-size:32px; font-weight:600; line-height:1.1; letter-spacing:-.012em; color:var(--ev-ink); }
.evh-listyour__p { margin:8px 0 0; font-size:17px; line-height:1.5; color:var(--ev-ink-2); }
.evh-nl { padding-top:24px; }

/* ── The ad slots (hm_event_ad_slot()): each device's at its own widths; never on a map ── */
.evh-ad { display:flex; justify-content:center; max-width:100%; }
.evh-ad--phone { display:none; }
.evh-cards .evh-list__ad { padding:4px 0; border-top:0; }
@media (min-width:720px) { .evh-list__ad--phone { display:none; } }
@media (max-width:719px) {
	.evh-ad--desktop { display:none; }
	.evh-ad--phone { display:flex; }
}

/* ── Tonight (/events/tonight/) ── */
.evh-crumbs { padding-top:22px; }
.evh-crumbs ol { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:13.5px; color:var(--ev-ink-2); }
.evh-crumbs a { color:var(--ev-brand); text-decoration:none; }
.evh-crumbs a:hover { text-decoration:underline; }
.evh-crumbs [aria-current] { color:var(--ev-ink); font-weight:600; }
.evh-tn-top { padding-top:36px; display:grid; grid-template-columns:minmax(0, 1fr) 300px; gap:40px 56px; align-items:end; }
.evh-tn-top .evh-h1 { margin-top:14px; font-size:clamp(42px, 4.7vw, 64px); }
.evh-tn-date {
	margin:12px 0 0; font-family:var(--font-display); font-size:22px; letter-spacing:.08em; line-height:1;
	text-transform:uppercase; color:var(--ev-ink-2);
}
.evh-tn-map {
	position:relative; display:block; width:300px; max-width:100%; aspect-ratio:3 / 2; overflow:hidden;
	border:1px solid var(--ev-line); border-radius:var(--ev-r-card); background:#E9ECE7; color:var(--ev-ink); text-decoration:none;
}
.evh-tn-map img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.evh-tn-map .evh-still__pin { width:12px; height:12px; margin:-6px 0 0 -6px; }
.evh-tn-map__count {
	position:absolute; top:12px; left:12px; display:inline-flex; align-items:center; gap:7px; height:28px; padding:2px 11px 0 9px;
	border-radius:var(--ev-r-chip); background:var(--ev-hl); color:var(--ev-ink); font-family:var(--font-display);
	font-size:15px; letter-spacing:.08em; line-height:1; text-transform:uppercase;
}
.evh-tn-map__count:has([data-ev-count][hidden]) { display:none; } /* shown once ev-live.js has counted something on now */
.evh-tn-map__go {
	position:absolute; right:10px; bottom:10px; display:inline-flex; align-items:center; gap:6px; height:32px; padding:2px 12px 0;
	border-radius:var(--ev-r-chip); background:var(--ev-paper); box-shadow:0 0 0 1px var(--ev-line); color:var(--ev-ink);
	font-family:var(--font-display); font-size:15px; letter-spacing:.08em; line-height:1; text-transform:uppercase;
}
.evh-tn-group .evh-head .ev-kicker { display:inline-flex; align-items:center; gap:8px; }
.evh-tn-ad { padding-top:56px; }
.evh-tn-none { margin:30px 0 0; font-size:17px; color:var(--ev-ink-2); }

/* ── The map page (/events/map/) ── */
.evh-mp-top { padding-top:48px; }
.evh-filters { margin-top:24px; display:flex; flex-wrap:wrap; gap:10px; }
.evh-filters .evh-tab[aria-pressed="true"] { background:var(--ev-hl); border-color:var(--ev-hl); opacity:1; }
.evh-filters .evh-tab[aria-pressed="false"] { opacity:1; }
.evh-mp { margin-top:24px; display:grid; grid-template-columns:minmax(0, 420px) minmax(0, 1fr); gap:24px; align-items:start; }
.evh-mp__map {
	position:sticky; top:calc(var(--hm-sticky-top, 0px) + 16px); grid-column:2; grid-row:1;
	height:calc(100vh - var(--hm-sticky-top, 0px) - 40px); min-height:480px; max-height:820px;
	overflow:hidden; border:1px solid var(--ev-line); border-radius:16px; background:#E9ECE7;
}
.evh-mp__map #ev-map { position:absolute; inset:0; width:100%; height:100%; }
.evh-mp__list { grid-column:1; grid-row:1; min-width:0; }
.evh-mp__list ol { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:4px; }
.evh-mp__list .evh-row--panel { border:1px solid transparent; }
.evh-mp__list .evh-row--panel:hover { border-color:var(--ev-line); background:var(--ev-paper); }
.evh-mp__list .evh-row[hidden] { display:none; }
.evh-mp__count { margin:0 0 8px; font-size:13.5px; color:var(--ev-ink-2); }
.evh-mp__empty { margin:16px 10px; font-size:15px; color:var(--ev-ink-2); }
.evh-mp__empty[hidden] { display:none; }
.evh-mp__day {
	margin:18px 10px 6px; font-family:var(--font-display); font-size:16px; font-weight:400; letter-spacing:.1em; line-height:1; color:var(--ev-ink-2);
}

/* ── Widths ── */
@media (max-width:1180px) {
	.evh-row--line { grid-template-columns:120px 120px minmax(0, 1fr) auto; gap:20px; }
	.evh-hoodrows { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width:1023px) {
	.evh-days { grid-template-columns:minmax(0, 1fr); }
	.evh-mp { grid-template-columns:minmax(0, 1fr); }
	.evh-mp__map { position:relative; top:auto; grid-column:1; grid-row:1; height:62vh; min-height:360px; max-height:560px; }
	.evh-mp__list { grid-row:2; }
	.evh-tn-top { grid-template-columns:minmax(0, 1fr); }
}
@media (max-width:719px) {
	.evh-wrap { padding:0 16px; }
	.evh-sec { padding-top:40px; }
	.evh-top { padding-top:36px; }
	.evh-h1 { margin-top:16px; }
	.evh-lede { font-size:16px; }
	.evh-tabs { flex-wrap:nowrap; overflow-x:auto; margin-right:-16px; padding-right:16px; padding-bottom:2px; }
	.evh-tab { flex:none; }
	.evh-mapsec { padding-top:22px; }
	.evh-digests + .evh-mapsec { padding-top:40px; }
	.evh-digests { padding-top:32px; gap:12px; }
	.evh-digests__pair { gap:10px; }
	.evh-dcard, .evh-dcard--big { min-height:0; }
	.evh-dcard--big { min-height:440px; }
	.evh-dcard--half { aspect-ratio:1 / 1; }
	.evh-dcard--big .evh-dcard__text { padding:0 20px 20px; }
	.evh-dcard--big .evh-dcard__date { padding:7px 11px 3px; border-radius:7px; font-size:26px; }
	.evh-dcard--big .evh-dcard__title { margin-top:12px; font-size:32px; }
	.evh-dcard--big .evh-dcard__dek { margin-top:8px; font-size:15px; }
	.evh-dcard--big .evh-dcard__foot { margin-top:14px; flex-direction:column; align-items:flex-start; gap:10px; }
	.evh-dcard--big .evh-dcard__go { height:44px; padding:2px 20px 0; font-size:18px; }
	.evh-dcard--half .evh-dcard__text { padding:0 12px 12px; }
	.evh-dcard--half .evh-dcard__date { padding:5px 7px 2px; border-radius:5px; font-size:15px; }
	.evh-dcard--half .evh-dcard__title { margin-top:8px; font-size:17px; line-height:1.15; }
	.evh-dcard--half .evh-dcard__dek, .evh-dcard--half .evh-dcard__foot { display:none; }
	.evh-row--line { grid-template-columns:72px minmax(0, 1fr); gap:14px; align-items:start; padding:14px 0; }
	.evh-row--line .evh-row__pic { width:72px; height:72px; }
	.evh-row--line .evh-row__clock { grid-column:2; grid-row:1; display:flex; align-items:baseline; gap:8px; }
	.evh-row--line .evh-row__big { font-size:19px; }
	.evh-row--line .evh-row__small { margin:0; font-size:13px; }
	.evh-row--line .evh-row__body { grid-column:2; }
	.evh-row--line .evh-row__pic { grid-row:1 / span 3; }
	.evh-row--line .evh-row__h { margin-top:6px; font-size:18px; }
	.evh-row--line .evh-row__meta { font-size:14px; }
	.evh-row--line .evh-row__act { grid-column:2; flex-direction:row; align-items:center; justify-content:space-between; }
	.evh-row--line .evh-go { height:34px; font-size:15px; }
	.evh-list__sub { padding:20px 0 10px; font-size:16px; }
	.evh-band { margin-top:40px; padding:40px 0; }
	.evh-day { padding:18px 16px 16px; }
	.evh-mosaic { grid-template-columns:repeat(2, minmax(0, 1fr)); grid-template-rows:none; gap:10px; }
	.evh-mosaic .evh-pc--big { grid-column:1 / -1; grid-row:auto; aspect-ratio:3 / 2; }
	.evh-mosaic .evh-pc--med { aspect-ratio:1 / 1; }
	.evh-cards4 { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
	.evh-mosaic + .evh-cards4 { margin-top:10px; }
	.evh-pc__text { left:12px; right:12px; bottom:12px; gap:7px; }
	.evh-pc__name, .evh-pc--small .evh-pc__name { font-size:19px; }
	.evh-pc--big .evh-pc__name { font-size:32px; }
	.evh-hoodpair { grid-template-columns:minmax(0, 1fr); gap:10px; }
	.evh-hoodpair .evh-pc { height:auto; aspect-ratio:3 / 2; }
	.evh-pc--wide .evh-pc__name, .evh-hoodpair .evh-pc--big .evh-pc__name { font-size:30px; }
	.evh-hoodrows { grid-template-columns:minmax(0, 1fr); gap:12px; margin-top:16px; }
	.evh-hrow__pic { width:112px; height:75px; }
	.evh-hrow__name { font-size:20px; }
	.evh-listyour { grid-template-columns:minmax(0, 1fr); gap:16px; padding:24px 20px; }
	.evh-listyour__icon { width:44px; height:44px; }
	.evh-listyour__h { font-size:24px; }
	.evh-row--card { grid-template-columns:minmax(0, 1fr); gap:12px; padding:12px; }
	.evh-row--card .evh-row__pic { width:100%; height:auto; aspect-ratio:3 / 2; }
	.evh-row--card .evh-row__act { flex-direction:row; align-items:center; justify-content:space-between; }
	.evh-row__desc { white-space:normal; }
	.evh-tn-top { padding-top:24px; gap:24px; }
	.evh-tn-map { width:100%; }
	.evh-mp-top { padding-top:28px; }
	.evh-filters { flex-wrap:nowrap; overflow-x:auto; margin-right:-16px; padding-right:16px; }
	.evh-filters .evh-tab { flex:none; }
}
/* Fix round 1 (F2): "See everything on now" under the panel's 8 rows. */
.evh-panel__more { margin:0; padding:6px 10px 10px; }

/* ═══════════════════════════════════════════════════════════════════════════
   THE DIGEST PAGE (live events sprint, phase D, 2026-10-28): single-digest.php
   at /digests/<slug>/ and at the weekend's fixed address. The FINAL board
   Weekend.dc.html: the breadcrumb, the glossy hero (the picture under the
   scrim, the credit chip, the cadence kicker, the yellow date block, the
   title, the dek, the byline), the intro, the desk's picks as a TIMELINE in
   the chain's parts ("All weekend" in its own panel, the rest on the rail:
   a ring for a whole day or days, the sun on yellow for the day, the moon on
   bark for the night), the band, the outro. The --ev-* tokens above and the
   rail's own below. Every selector new (evd-*).
   ═══════════════════════════════════════════════════════════════════════════ */

:root {
	--evd-mark: 48px;     /* the rail's marks */
	--evd-rail-x: 23px;   /* the rail's line, under the marks' centre */
	--evd-indent: 72px;   /* the cards' column, right of the rail */
	--evd-pic-w: 480px;   /* the rail card's picture, 3:2 */
	--evd-pic-h: 320px;
}

.evd { background:var(--ev-cream); color:var(--ev-ink); font-family:var(--font-body); padding-bottom:8px; }
.evd *, .evd *::before, .evd *::after { box-sizing:border-box; }
.evd-wrap { width:100%; max-width:1360px; margin:0 auto; padding:0 40px; }

/* ── The breadcrumb ── */
.evd-crumbs { padding-top:22px; }
.evd-crumbs ol {
	list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; align-items:center; gap:8px;
	font-size:13.5px; line-height:1.4; color:var(--ev-ink-2);
}
.evd-crumbs li { margin:0; }
.evd-crumbs a { color:var(--ev-brand); text-decoration:none; }
.evd-crumbs a:hover { color:var(--ev-bark); text-decoration:underline; }
.evd-crumbs [aria-current] { color:var(--ev-ink); font-weight:600; }

/* ── The hero ── */
.evd-herowrap { padding-top:24px; }
.evd-hero {
	position:relative; height:560px; border-radius:16px; overflow:hidden; display:flex; flex-direction:column;
	justify-content:flex-end; background:var(--ev-bark); color:var(--ev-cream);
}
.evd-hero.is-plain { height:auto; min-height:420px; background:linear-gradient(160deg, #2C5A43, var(--ev-bark)); }
.evd-hero__img { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; }
.evd-hero__scrim {
	position:absolute; inset:0;
	background:linear-gradient(180deg, rgba(21,34,27,0) 38%, rgba(21,34,27,.5) 100%),
		linear-gradient(75deg, rgba(21,34,27,.92) 0%, rgba(21,34,27,.72) 36%, rgba(21,34,27,.24) 64%, rgba(21,34,27,0) 82%);
}
.evd-hero__credit {
	position:absolute; top:18px; right:18px; z-index:1; max-width:calc(100% - 36px); margin:0;
	display:inline-flex; align-items:center; gap:7px; padding:6px 11px 6px 9px; border-radius:8px;
	background:rgba(21,34,27,.62); font-size:12.5px; font-weight:500; line-height:1.2; color:var(--ev-cream);
}
.evd-hero__credit svg { flex:none; }
.evd-hero__credit a { color:inherit; text-decoration:underline; text-underline-offset:2px; }
.evd-hero__text {
	position:relative; max-width:920px; padding:44px 48px 46px;
	display:flex; flex-direction:column; align-items:flex-start; gap:14px;
}
.evd-hero__kick {
	font-family:var(--font-display); font-size:18px; letter-spacing:.14em; line-height:1; text-transform:uppercase;
	color:var(--ev-chrome-dot);
}
.evd-hero__date {
	display:inline-flex; padding:9px 14px 4px; border-radius:10px; background:var(--ev-hl); color:var(--ev-ink);
	font-family:var(--font-display); font-size:40px; letter-spacing:.04em; line-height:1; text-transform:uppercase;
}
.evd-hero__title {
	margin:6px 0 0; font-family:var(--font-serif); font-size:56px; font-weight:500; line-height:1.04;
	letter-spacing:-.02em; color:var(--ev-cream);
}
.evd-hero__dek { margin:0; max-width:58ch; font-size:19px; line-height:1.5; color:#DCE5DE; }
.evd-hero__by { margin:2px 0 0; font-size:14px; font-weight:500; line-height:1.4; color:var(--ev-chrome-ink); }

/* ── The intro and the outro: the directory listing's prose ── */
.evd-intro { padding-top:56px; }
.evd-outro { padding-top:64px; }
.evd-prose { max-width:66ch; font-family:var(--font-serif); font-size:18px; font-weight:400; line-height:1.7; color:var(--ev-ink); }
.evd-prose p { margin:0 0 20px; }
.evd-prose > :last-child { margin-bottom:0; }
.evd-prose a { color:var(--ev-ink); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.evd-prose a:hover { color:var(--ev-ink); text-decoration-thickness:2px; }

/* ── The picks' heading ── */
.evd-picks { padding-top:72px; }
.evd-head { display:flex; flex-direction:column; align-items:flex-start; }
.evd-head .ev-kicker { margin:0; }
.evd-h2 {
	margin:12px 0 0; font-family:var(--font-serif); font-size:32px; font-weight:600; line-height:1.05;
	letter-spacing:-.015em; color:var(--ev-ink);
}
.evd-hook { margin:10px 0 0; max-width:48ch; font-size:17px; line-height:1.5; color:var(--ev-ink-2); }

/* ── A part: its mark, its name, its day or days ── */
.evd-part { position:relative; display:flex; flex-wrap:wrap; align-items:center; gap:6px 24px; min-height:var(--evd-mark); }
.evd-mark {
	position:relative; z-index:1; flex:none; display:grid; place-items:center;
	width:var(--evd-mark); height:var(--evd-mark); border-radius:50%;
}
.evd-mark--all { background:var(--ev-paper); color:var(--ev-ink); box-shadow:inset 0 0 0 2px var(--ev-ink); }
.evd-mark--day { background:var(--ev-hl); color:var(--ev-ink); }
.evd-mark--night { background:var(--ev-bark); color:var(--ev-cream); }
.evd-rail .evd-mark { box-shadow:0 0 0 6px var(--ev-cream); }
.evd-rail .evd-mark--all { box-shadow:inset 0 0 0 2px var(--ev-ink), 0 0 0 6px var(--ev-cream); }
.evd-part__name {
	margin:0; padding-top:4px; font-family:var(--font-display); font-size:34px; font-weight:400; letter-spacing:.05em;
	line-height:1; text-transform:uppercase; color:var(--ev-ink);
}
.evd-part__sub { font-size:15px; font-weight:600; line-height:1.4; color:var(--ev-ink-2); }

/* ── "All weekend": its own panel, the cards two by two ── */
.evd-aw { margin-top:30px; padding:28px 32px 32px; border-radius:18px; background:var(--ev-panel); }
.evd-aw__grid {
	list-style:none; margin:24px 0 0; padding:0; display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:24px;
}
.evd-aw__grid > li { min-width:0; margin:0; }

/* ── The ad slots (hm_event_ad_slot()): after the first part group, never in the hero ── */
.evd-ad { margin:56px auto 0; display:flex; justify-content:center; }
.evd-stop--ad { padding-left:var(--evd-indent); }

/* ── The rail ── */
.evd-rail { position:relative; list-style:none; margin:56px 0 0; padding:0; }
.evd-rail::before {
	content:""; position:absolute; left:var(--evd-rail-x); top:calc(var(--evd-mark) / 2); bottom:0;
	width:2px; border-radius:2px; background:var(--ev-line);
}
.evd-stop { position:relative; margin:0; padding:0 0 52px; }
.evd-stop:last-child { padding-bottom:0; }
.evd-rail__picks {
	list-style:none; margin:22px 0 0; padding:0 0 0 var(--evd-indent); display:flex; flex-direction:column; gap:22px;
}
.evd-rail__picks > li { position:relative; min-width:0; margin:0; }
.evd-rail__picks > li::before {
	content:""; position:absolute; left:-48px; top:50%; width:48px; height:2px; background:var(--ev-line);
}
.evd-rail__picks > li::after {
	content:""; position:absolute; left:-54px; top:50%; width:12px; height:12px; margin-top:-6px; border-radius:50%;
	background:var(--ev-cream); box-shadow:inset 0 0 0 2px #8E9A91;
}
.evd-rail__end { position:absolute; left:-62px; top:calc(50% + 7px); bottom:-1px; width:28px; background:var(--ev-cream); }

/* ── A card: the rail's (the picture beside the words) and the panel's tile (the picture on top) ── */
.evd-card {
	display:grid; grid-template-columns:var(--evd-pic-w) minmax(0, 1fr); gap:0 36px; align-items:center;
	padding:16px 32px 16px 16px; border:1px solid var(--ev-line); border-radius:16px; background:var(--ev-paper);
	transition:border-color .2s ease, box-shadow .2s ease;
}
.evd-card--nopic { grid-template-columns:minmax(0, 1fr); padding:24px 32px; }
.evd-card:hover { border-color:#C9D0C8; box-shadow:0 18px 40px -26px rgba(21,34,27,.42); }
.evd-card__pic {
	position:relative; overflow:hidden; width:var(--evd-pic-w); height:var(--evd-pic-h); border-radius:12px;
	background:var(--ev-panel);
}
.evd-card__pic img {
	display:block; width:100%; height:100%; max-width:none; object-fit:cover; transition:transform .45s ease;
}
.evd-card:hover .evd-card__pic img { transform:scale(1.045); }
.evd-card__body { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.evd-card__when {
	padding-top:3px; font-family:var(--font-display); font-size:34px; letter-spacing:.03em; line-height:1;
	text-transform:uppercase; white-space:nowrap; color:var(--ev-ink);
}
.evd-card__when.is-run { font-size:28px; }
.evd-card__title {
	margin:0; font-family:var(--font-serif); font-size:24px; font-weight:600; line-height:1.18; letter-spacing:-.01em;
	color:var(--ev-ink);
}
.evd-card__title a { color:var(--ev-ink); text-decoration:none; }
.evd-card:hover .evd-card__title a {
	background-image:linear-gradient(var(--ev-hl), var(--ev-hl)); background-size:100% 6px; background-position:0 92%;
	background-repeat:no-repeat; -webkit-box-decoration-break:clone; box-decoration-break:clone;
}
.evd-card__blurb {
	margin:2px 0 0; max-width:64ch; font-family:var(--font-serif); font-size:17px; font-weight:400; line-height:1.65;
	color:var(--ev-ink);
}
.evd-card__blurb p { margin:0 0 12px; }
.evd-card__blurb > :last-child { margin-bottom:0; }
.evd-card__blurb a { color:var(--ev-ink); text-decoration:underline; text-underline-offset:3px; }
.evd-card__foot {
	align-self:stretch; display:flex; flex-direction:column; align-items:flex-start; gap:14px; margin-top:6px;
	padding-top:16px; border-top:1px solid var(--ev-line);
}
.evd-facts {
	margin:0; display:flex; flex-wrap:wrap; align-items:center; gap:2px 9px; font-size:15px; font-weight:500;
	line-height:1.5; color:var(--ev-ink-2);
}
.evd-facts__item { display:inline-flex; align-items:center; gap:9px; min-width:0; max-width:100%; }
.evd-facts b { font-weight:700; color:var(--ev-ink); }
.evd-facts a { font-weight:600; color:var(--ev-brand); text-decoration:none; }
.evd-facts a:hover { color:var(--ev-bark); text-decoration:underline; }
.evd-facts .hm-hood-pin { display:none; }
.evd-card--tile {
	height:100%; display:flex; flex-direction:column; align-items:stretch; padding:0; overflow:hidden;
}
.evd-card--tile .evd-card__pic { width:100%; height:auto; aspect-ratio:3 / 2; border-radius:0; }
.evd-card--tile .evd-card__body { flex:1; padding:24px 28px 28px; }
.evd-card--tile .evd-card__foot { margin-top:auto; }

/* ── "See the event": the ticket card's green button (.ev-tix .ev-cta-card__btn), a right arrow ── */
.evd-go {
	display:inline-flex; align-items:center; justify-content:center; gap:8px; height:46px; padding:2px 20px 0;
	border-radius:var(--ev-r-btn); background:var(--ev-brand); color:var(--ev-cream);
	font-family:var(--font-display); font-size:19px; font-weight:400; letter-spacing:.08em; line-height:1;
	text-transform:none; text-decoration:none; white-space:nowrap; transition:background .13s;
}
.evd-go:hover { background:var(--ev-bark); color:var(--ev-cream); }
.evd-go svg { flex:none; margin-top:-2px; }
.evd-go--lg { height:54px; padding:2px 28px 0; font-size:21px; }

/* ── The band: "See everything on this weekend" ── */
.evd-more {
	margin-top:64px; padding:40px 40px 36px; border-radius:18px; background:var(--ev-panel);
	display:flex; flex-direction:column; align-items:center; gap:16px; text-align:center;
}
.evd-more__note { margin:0; max-width:56ch; font-size:15.5px; line-height:1.55; color:var(--ev-ink-2); }
.evd-nl { padding-top:64px; }

/* ── Widths ── */
@media (max-width:1180px) {
	:root { --evd-pic-w: 360px; --evd-pic-h: 240px; }
	.evd-card { gap:0 28px; padding-right:24px; }
}
@media (max-width:900px) {
	.evd-card { grid-template-columns:minmax(0, 1fr); gap:16px; padding:14px 14px 18px; }
	.evd-card__pic { width:100%; height:auto; aspect-ratio:3 / 2; }
}
@media (max-width:720px) {
	:root { --evd-mark: 32px; --evd-rail-x: 15px; --evd-indent: 34px; }
	.evd-wrap { padding:0 16px; }
	.evd-hero { height:auto; min-height:540px; }
	.evd-hero__scrim { background:linear-gradient(180deg, rgba(21,34,27,.15) 0%, rgba(21,34,27,.62) 30%, rgba(21,34,27,.9) 60%, rgba(21,34,27,.94) 100%); }
	.evd-hero__text { padding:24px 20px; }
	.evd-hero__title { font-size:42px; }
	.evd-hero__date { font-size:30px; }
	.evd-intro { padding-top:40px; }
	.evd-picks { padding-top:56px; }
	.evd-aw { padding:20px 16px 22px; }
	.evd-aw__grid { grid-template-columns:minmax(0, 1fr); }
	.evd-card { gap:14px; padding:12px 12px 16px; }
	.evd-card--nopic { padding:18px; }
	.evd-card--tile { padding:0; }
	.evd-card--tile .evd-card__body { padding:18px 18px 20px; }
	.evd-card__when { font-size:28px; }
	.evd-card__when.is-run { font-size:24px; }
	.evd-part { gap:6px 14px; }
	.evd-part__name { font-size:27px; }
	.evd-mark svg { width:16px; height:16px; }
	.evd-rail__picks > li::before { left:-18px; width:18px; }
	.evd-rail__picks > li::after { left:-24px; }
	.evd-rail__end { left:-30px; width:24px; }
	.evd-ad { margin-top:40px; }
	.evd-more { padding:28px 18px; }
}
/* ── The venue page's timeline (phase E) ──
 * template-parts/ev-venue-body.php: a directory listing's "What's on here", right after its About
 * (VenuePage.dc.html). Loaded on a listing only when the timeline renders (inc/event-venues.php). Every rule
 * sits under .evv; the rows are the Tonight page's cards (.evh-row--card) laid out as the board draws them. */
.evv { padding:8px 0 32px; color:var(--ev-ink); } /* padding, not margin: the Shortlist listing zeroes its main column's margins and spaces it by a 16px gap */
.evv .evv-head { display:flex; flex-direction:column; align-items:flex-start; }
.evv .evv-kick {
	display:inline-flex; align-items:center; padding:4px 7px 2px; background:var(--ev-hl); color:var(--ev-ink);
	font-family:var(--font-display); font-size:15px; letter-spacing:.14em; line-height:1.1; text-transform:uppercase;
}
.evv .evv-h2 {
	margin:12px 0 0; font-family:var(--font-serif); font-size:32px; font-weight:600; line-height:1.05;
	letter-spacing:-.015em; color:var(--ev-ink);
}
.evv .evv-hook { margin:10px 0 0; max-width:48ch; font-family:var(--font-body); font-size:17px; line-height:1.5; color:var(--ev-ink-2); }
.evv .evv-rule { display:block; width:40px; height:3px; margin-top:18px; background:var(--ev-hl-2); }
/* The rail: one slot per day, its head on a ring, its cards joined to the rail. */
.evv .evv-tl { position:relative; list-style:none; margin:28px 0 0; padding:0 0 0 46px; }
.evv .evv-tl::before {
	content:""; position:absolute; left:10px; top:16px; bottom:8px; width:2px; border-radius:2px; background:var(--ev-line);
}
.evv .evv-slot { position:relative; margin:0; padding:0 0 32px; }
.evv .evv-slot:last-child { padding-bottom:0; }
.evv .evv-slot__head { position:relative; display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; min-height:34px; }
.evv .evv-slot__head::before {
	content:""; position:absolute; left:-43px; top:50%; width:16px; height:16px; margin-top:-8px; border-radius:50%;
	background:var(--ev-cream); box-shadow:inset 0 0 0 2px var(--ev-ink);
}
.evv .evv-day {
	display:inline-flex; align-items:center; height:34px; padding:3px 15px 0; border:1px solid var(--ev-ink);
	border-radius:var(--ev-r-chip); background:var(--ev-cream); color:var(--ev-ink); font-family:var(--font-display);
	font-size:19px; letter-spacing:.12em; line-height:1; text-transform:uppercase; white-space:nowrap;
}
.evv .evv-slot--today .evv-day { background:var(--ev-hl); border-color:var(--ev-hl); }
.evv .evv-day-sub { font-family:var(--font-body); font-size:13.5px; font-weight:600; color:var(--ev-ink-2); }
.evv .evv-cards { list-style:none; margin:16px 0 0; padding:0; display:flex; flex-direction:column; gap:14px; }
.evv .evv-cards > li { margin:0; }
.evv .evv-cards > li::before { content:""; position:absolute; left:-34px; top:50%; width:34px; height:2px; background:var(--ev-line); }
/* The card: the picture beside the words, the price and "See the event" under them. */
.evv .evh-row--card { grid-template-columns:240px minmax(0, 1fr); grid-template-rows:auto 1fr; gap:0 22px; padding:14px 20px 14px 14px; }
.evv .evh-row--card .evh-row__pic { grid-column:1; grid-row:1 / span 2; align-self:center; width:240px; height:160px; }
.evv .evh-row--card .evh-row__body { grid-column:2; grid-row:1; align-self:start; }
.evv .evh-row--card .evh-row__act {
	grid-column:2; grid-row:2; align-self:end; flex-direction:row; align-items:center; justify-content:space-between;
	gap:10px 14px; margin-top:12px;
}
.evv .evh-row--card .evh-row__act .evh-go { margin-left:auto; }
@media (max-width:719px) {
	.evv { padding-bottom:24px; }
	.evv .evv-h2 { font-size:30px; }
	.evv .evv-hook { font-size:16px; }
	.evv .evv-tl { padding-left:30px; }
	.evv .evv-tl::before { left:6px; }
	.evv .evv-slot__head::before { left:-31px; }
	.evv .evv-cards > li::before { left:-22px; width:22px; }
	.evv .evh-row--card { grid-template-columns:minmax(0, 1fr); grid-template-rows:none; gap:12px; padding:12px; }
	.evv .evh-row--card .evh-row__pic { grid-row:auto; width:100%; height:auto; aspect-ratio:3 / 2; }
	.evv .evh-row--card .evh-row__body, .evv .evh-row--card .evh-row__act { grid-column:auto; grid-row:auto; }
	.evv .evh-row--card .evh-row__act { margin-top:0; }
}
