.z5ev {
	color: var(--z5ev-ink, #171214);
	font-family: var(--e-global-typography-text-font-family, "Blender Pro", "Helvetica Neue", Arial, sans-serif);
	box-sizing: border-box;
}

.z5ev *,
.z5ev *::before,
.z5ev *::after { box-sizing: border-box; }
.z5ev button,
.z5ev input,
.z5ev textarea,
.z5ev select { font: inherit; }
.z5ev button,
.z5ev a { box-shadow: none !important; }

.z5ev-eyebrow {
	display: block;
	margin: 0 0 14px;
	padding-left: 18px;
	position: relative;
	color: var(--z5ev-red, #cb2525);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .2em;
	line-height: 1.2;
	text-transform: uppercase;
}
.z5ev-eyebrow::before {
	content: "";
	position: absolute;
	left: 0;
	top: .05em;
	width: 4px;
	height: 1.1em;
	background: var(--z5ev-red, #cb2525);
}
.z5ev-heading {
	max-width: 13ch;
	margin: 0 0 20px;
	color: var(--z5ev-ink, #171214);
	font-size: clamp(42px, 6.4vw, 92px);
	font-weight: 900;
	letter-spacing: -.045em;
	line-height: .88;
	text-transform: uppercase;
}
.z5ev-title {
	margin: 0;
	color: var(--z5ev-ink, #171214);
	font-size: clamp(28px, 4vw, 54px);
	font-weight: 900;
	letter-spacing: -.03em;
	line-height: .94;
	text-transform: uppercase;
}
.z5ev-summary,
.z5ev-body {
	color: var(--z5ev-muted, #68615a);
	font-size: clamp(16px, 1.2vw, 19px);
	line-height: 1.6;
}
.z5ev-summary { max-width: 43rem; margin: 0 0 22px; }
.z5ev-body { max-width: 43rem; }
.z5ev-body p { margin: 0 0 18px; }

/* Zone5 pill button: compact label, full-radius shell and a clean line arrow. */
.z5ev .z5ev-button,
.z5ev .z5ev-button:visited {
	min-height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 14px 24px;
	border: 1px solid var(--z5ev-ink, #171214) !important;
	border-radius: 999px !important;
	background-color: var(--z5ev-ink, #171214);
	color: #fff;
	font-family: var(--e-global-typography-accent-font-family, "Lexend Deca", Arial, sans-serif);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	line-height: 1;
	text-align: left;
	text-decoration: none !important;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
}
.z5ev .z5ev-button:hover,
.z5ev .z5ev-button:focus-visible {
	background-color: var(--z5ev-red, #cb2525);
	border-color: var(--z5ev-red, #cb2525) !important;
	color: #fff;
	transform: translateY(-2px);
	outline: none;
}
.z5ev-button__label { display: block; }
.z5ev-button__icon {
	width: 24px;
	height: 24px;
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	margin-left: auto;
	color: currentColor;
}
.z5ev-button__icon svg,
.z5ev-route__icon svg,
.z5ev-card-arrow svg {
	width: 100%;
	height: 100%;
	display: block;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: square;
	stroke-linejoin: miter;
}
.z5ev-button__icon svg { transition: transform .25s ease; }
.z5ev-button:hover .z5ev-button__icon svg,
.z5ev-button:focus-visible .z5ev-button__icon svg { transform: translateX(3px); }
.z5ev-text-link {
	border: 0 !important;
	background: transparent !important;
	color: var(--z5ev-ink, #171214) !important;
	text-decoration: underline !important;
	text-underline-offset: 4px;
	cursor: pointer;
	padding: 8px 0 !important;
}

.z5ev-experience {
	overflow: hidden;
	border-radius: var(--z5ev-radius, 24px);
	background: var(--z5ev-paper, #f4f1ee);
}
.z5ev-experience__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
	min-height: 720px;
}
.z5ev-experience__media {
	--z5ev-image-x: 50%;
	--z5ev-image-y: 50%;
	position: relative;
	height: 640px;
	min-height: 640px;
	overflow: hidden;
	background: #222;
}
.z5ev-experience__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 55%, rgba(0, 0, 0, .42));
}
.z5ev-experience__media img {
	width: 100%;
	height: 100%;
	min-height: 0;
	display: block;
	object-fit: cover;
	object-position: var(--z5ev-image-x, 50%) var(--z5ev-image-y, 50%);
	transition: transform 1s cubic-bezier(.2, .7, .2, 1);
}
.z5ev-experience:hover .z5ev-experience__media img { transform: scale(1.025); }
.z5ev-media-index {
	position: absolute;
	z-index: 2;
	left: 28px;
	bottom: 26px;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .2em;
}
.z5ev-experience__content {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: clamp(34px, 5vw, 76px);
}
.z5ev-experience__content .z5ev-heading { font-size: clamp(48px, 6vw, 88px); }
.z5ev-experience__content .z5ev-button { align-self: flex-start; margin-top: 26px; }
.z5ev-switch { padding: clamp(32px, 4.5vw, 64px); }
.z5ev-switch__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 30px;
	margin-bottom: 32px;
}
.z5ev-switch__head .z5ev-title { max-width: 15ch; }
.z5ev-switch__options {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--z5ev-gap, 24px);
}
.z5ev-route {
	position: relative;
	min-height: 270px;
	display: flex !important;
	flex-direction: column;
	align-items: flex-start !important;
	text-align: left !important;
	padding: 30px !important;
	border: 1px solid var(--z5ev-line, rgba(23, 18, 20, .16)) !important;
	border-radius: calc(var(--z5ev-radius, 24px) * .75) !important;
	background: transparent !important;
	color: var(--z5ev-ink, #171214) !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background .35s ease, color .35s ease, border-color .35s ease, transform .35s ease;
}
.z5ev-route:hover,
.z5ev-route:focus-visible {
	transform: translateY(-4px);
	border-color: var(--z5ev-ink, #171214) !important;
	outline: none;
}
.z5ev-route.is-active {
	background: var(--z5ev-ink, #171214) !important;
	border-color: var(--z5ev-ink, #171214) !important;
	color: var(--z5ev-paper, #f4f1ee) !important;
}
.z5ev-route__number { font-size: 12px; opacity: .58; }
.z5ev-route__label {
	margin-top: auto;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .16em;
	color: var(--z5ev-red, #cb2525);
}
.z5ev-route strong {
	max-width: 13ch;
	margin-top: 12px;
	font-size: clamp(25px, 3vw, 42px);
	font-weight: 900;
	letter-spacing: -.035em;
	line-height: .95;
	text-transform: uppercase;
}
.z5ev-route > span[data-z5ev-route-time] { margin-top: 16px; font-size: 14px; opacity: .7; }
.z5ev-route__icon {
	position: absolute;
	right: 26px;
	top: 26px;
	width: 36px;
	height: 36px;
	display: grid;
	place-items: center;
	padding: 8px;
	border: 1px solid currentColor;
	border-radius: 50%;
}

.z5ev-registration {
	width: 100%;
	min-width: 0;
	display: grid;
	grid-template-columns: minmax(300px, .72fr) minmax(480px, 1.28fr);
	gap: clamp(30px, 6vw, 100px);
	align-items: start;
}
.z5ev-registration > * { min-width: 0; }
.z5ev-registration__intro {
	position: sticky;
	top: 120px;
	max-width: 560px;
}
.z5ev-registration__eyebrow { color: var(--z5ev-reg-intro-eyebrow, var(--z5ev-red, #cb2525)); }
.z5ev-registration__eyebrow::before { background: var(--z5ev-reg-intro-eyebrow, var(--z5ev-red, #cb2525)); }
.z5ev-registration__heading { color: var(--z5ev-reg-intro-heading, var(--z5ev-paper, #f4f1ee)); }
.z5ev-registration__summary { color: var(--z5ev-reg-intro-text, #a9a3a0); }
.z5ev-registration__panel {
	overflow: hidden;
	border: 1px solid var(--z5ev-reg-panel-border, var(--z5ev-line, rgba(23, 18, 20, .16)));
	border-radius: var(--z5ev-reg-panel-radius, var(--z5ev-radius, 24px));
	background: var(--z5ev-reg-form-bg, var(--z5ev-paper, #f4f1ee));
	color: var(--z5ev-ink, #171214);
}
.z5ev-date-section,
.z5ev-form,
.z5ev-success { padding: clamp(26px, 4vw, 52px); }
.z5ev-date-section {
	border-bottom: 1px solid var(--z5ev-reg-section-divider, var(--z5ev-line, rgba(23, 18, 20, .16)));
	background: var(--z5ev-reg-calendar-bg, var(--z5ev-paper, #f4f1ee));
}
.z5ev-form,
.z5ev-success { background: var(--z5ev-reg-form-bg, var(--z5ev-paper, #f4f1ee)); }
.z5ev-step-label {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 22px;
	color: var(--z5ev-ink, #171214);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.z5ev-date-section__label { color: var(--z5ev-reg-calendar-label, #171214); }
.z5ev-form__label { color: var(--z5ev-reg-form-section-label, #171214); }
.z5ev-step-label i {
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--z5ev-ink, #171214);
	color: var(--z5ev-paper, #f4f1ee);
	font-size: 11px;
	font-style: normal;
}
.z5ev-date-section__label i {
	background: var(--z5ev-reg-calendar-badge-bg, #171214);
	color: var(--z5ev-reg-calendar-badge-text, #f4f1ee);
}
.z5ev-form__label i {
	background: var(--z5ev-reg-form-badge-bg, #171214);
	color: var(--z5ev-reg-form-badge-text, #f4f1ee);
}
.z5ev-dates {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}
.z5ev-date {
	position: relative;
	min-height: 138px;
	padding: 17px 12px !important;
	border: 1px solid var(--z5ev-reg-date-border, var(--z5ev-line, rgba(23, 18, 20, .16))) !important;
	border-radius: 14px !important;
	background: var(--z5ev-reg-date-bg, transparent) !important;
	color: var(--z5ev-reg-date-text, #171214) !important;
	text-align: left !important;
	box-shadow: none !important;
	cursor: pointer;
}
.z5ev-date:hover,
.z5ev-date:focus-visible {
	border-color: var(--z5ev-reg-date-hover-border, #171214) !important;
	background: var(--z5ev-reg-date-hover-bg, #fff) !important;
	color: var(--z5ev-reg-date-hover-text, #171214) !important;
	outline: none;
}
.z5ev-date.is-active {
	background: var(--z5ev-reg-date-active-bg, #171214) !important;
	border-color: var(--z5ev-reg-date-active-border, #171214) !important;
	color: var(--z5ev-reg-date-active-text, #f4f1ee) !important;
}
.z5ev-date:disabled { opacity: .38; cursor: not-allowed; }
.z5ev-date__month,
.z5ev-date__weekday { display: block; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.z5ev-date__day { display: block; margin: 6px 0; font-size: 34px; line-height: 1; }
.z5ev-date__availability {
	display: block;
	margin-top: 10px;
	color: var(--z5ev-reg-date-accent, var(--z5ev-red, #cb2525));
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
}
.z5ev-date.is-active .z5ev-date__availability { color: var(--z5ev-reg-date-active-accent, var(--z5ev-red, #cb2525)); }
.z5ev-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.z5ev-field { min-width: 0; display: block; color: var(--z5ev-reg-field-label, #171214); }
.z5ev-field--wide { grid-column: 1 / -1; }
.z5ev-field__label { display: block; margin: 0 0 8px; color: var(--z5ev-reg-field-label, #171214); font-size: 12px; font-weight: 800; letter-spacing: .05em; }
.z5ev-field input,
.z5ev-field textarea {
	width: 100% !important;
	min-height: 54px;
	padding: 14px 15px !important;
	border: 1px solid var(--z5ev-reg-input-border, var(--z5ev-line, rgba(23, 18, 20, .24))) !important;
	border-radius: 10px !important;
	background: var(--z5ev-reg-input-bg, #fff) !important;
	color: var(--z5ev-reg-input-text, #171214) !important;
	caret-color: var(--z5ev-reg-input-focus, var(--z5ev-red, #cb2525));
	box-shadow: none !important;
	outline: none !important;
}
.z5ev-field input::placeholder,
.z5ev-field textarea::placeholder { color: color-mix(in srgb, var(--z5ev-reg-input-text, #171214) 48%, transparent); opacity: 1; }
.z5ev-field textarea { resize: vertical; }
.z5ev-field input:hover,
.z5ev-field textarea:hover { border-color: var(--z5ev-reg-input-focus, var(--z5ev-red, #cb2525)) !important; }
.z5ev-field input:focus,
.z5ev-field textarea:focus {
	border-color: var(--z5ev-reg-input-focus, var(--z5ev-red, #cb2525)) !important;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--z5ev-reg-input-focus, #cb2525) 12%, transparent) !important;
}
.z5ev-member-only { display: none; }
.z5ev[data-audience="member"] .z5ev-member-only { display: block; }
.z5ev[data-audience="member"] .z5ev-public-only { display: none; }
.z5ev-check {
	display: flex;
	gap: 11px;
	align-items: flex-start;
	margin: 18px 0;
	color: var(--z5ev-reg-checkbox-text, var(--z5ev-muted, #68615a));
	font-size: 13px;
	line-height: 1.5;
}
.z5ev-check input { margin-top: 3px; accent-color: var(--z5ev-red, #cb2525); }
.z5ev-check__text { min-width: 0; }
.z5ev-form-message { min-height: 22px; margin: 14px 0; color: var(--z5ev-reg-message, var(--z5ev-red, #cb2525)); font-weight: 700; }
.z5ev-submit { width: 100%; margin-top: 4px; }
.z5ev-submit[disabled] { opacity: .55; cursor: wait; transform: none; }
.z5ev-microcopy { margin: 13px 0 0; color: var(--z5ev-reg-microcopy, var(--z5ev-muted, #68615a)); font-size: 11px; line-height: 1.5; }
.z5ev-hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; }
.z5ev-success { background: var(--z5ev-reg-success-bg, var(--z5ev-reg-form-bg, var(--z5ev-paper, #f4f1ee))); text-align: left; }
.z5ev-success__mark {
	width: 58px;
	height: 58px;
	display: grid;
	place-items: center;
	margin-bottom: 32px;
	border-radius: 50%;
	background: var(--z5ev-reg-success-marker-bg, var(--z5ev-red, #cb2525));
	color: var(--z5ev-reg-success-marker-text, #fff);
	font-size: 24px;
}
.z5ev-success__eyebrow { color: var(--z5ev-reg-success-eyebrow, var(--z5ev-red, #cb2525)); }
.z5ev-success__eyebrow::before { background: var(--z5ev-reg-success-eyebrow, var(--z5ev-red, #cb2525)); }
.z5ev-success__heading { color: var(--z5ev-reg-success-heading, #171214); }
.z5ev-success__text { color: var(--z5ev-reg-success-text, var(--z5ev-muted, #68615a)); font-size: 17px; line-height: 1.6; }
.z5ev-success__actions { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; margin-top: 30px; }

.z5ev-info {
	padding: clamp(34px, 5vw, 74px);
	border-radius: var(--z5ev-radius, 24px);
	background: var(--z5ev-ink, #171214);
	color: var(--z5ev-paper, #f4f1ee);
}
.z5ev-info .z5ev-heading { color: var(--z5ev-paper, #f4f1ee); }
.z5ev-info__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 46px;
	border-top: 1px solid color-mix(in srgb, var(--z5ev-paper, #f4f1ee) 20%, transparent);
}
.z5ev-info__grid article {
	min-height: 220px;
	padding: 24px;
	border-right: 1px solid color-mix(in srgb, var(--z5ev-paper, #f4f1ee) 20%, transparent);
}
.z5ev-info__grid article:last-child { border-right: 0; }
.z5ev-info__grid article > span { display: block; margin-bottom: 52px; color: var(--z5ev-red, #cb2525); font-size: 12px; }
.z5ev-info__grid small {
	display: block;
	margin-bottom: 12px;
	color: color-mix(in srgb, var(--z5ev-paper, #f4f1ee) 68%, transparent);
	font-weight: 800;
	letter-spacing: .13em;
}
.z5ev-info__grid strong { display: block; color: var(--z5ev-paper, #f4f1ee); font-size: 21px; line-height: 1.15; }
.z5ev-info__grid p {
	margin: 9px 0 0;
	color: color-mix(in srgb, var(--z5ev-paper, #f4f1ee) 68%, transparent);
	font-size: 14px;
	line-height: 1.5;
}

.z5ev-upcoming__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--z5ev-gap, 24px);
	margin-top: 44px;
}
.z5ev-event-card {
	min-height: 190px;
	display: grid;
	grid-template-columns: 90px 1fr 38px;
	gap: 24px;
	align-items: center;
	padding: 24px;
	border: 1px solid var(--z5ev-line, rgba(23, 18, 20, .16));
	border-radius: calc(var(--z5ev-radius, 24px) * .75);
	color: var(--z5ev-ink, #171214) !important;
	text-decoration: none !important;
	transition: transform .3s, border-color .3s;
}
.z5ev-event-card:hover { transform: translateY(-4px); border-color: var(--z5ev-ink, #171214); }
.z5ev-event-card time {
	display: grid;
	place-items: center;
	padding: 18px;
	border-radius: 12px;
	background: var(--z5ev-ink, #171214);
	color: var(--z5ev-paper, #f4f1ee);
}
.z5ev-event-card time strong { font-size: 34px; line-height: 1; }
.z5ev-event-card time span,
.z5ev-event-card small { font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.z5ev-event-card h3 { margin: 8px 0; color: var(--z5ev-ink, #171214); font-size: 24px; line-height: 1; text-transform: uppercase; }
.z5ev-event-card p { margin: 0; color: var(--z5ev-muted, #68615a); }
.z5ev-card-arrow {
	width: 36px;
	height: 36px;
	display: grid;
	place-items: center;
	padding: 7px;
	border: 1px solid currentColor;
	border-radius: 50%;
}

.z5ev-fallback {
	position: fixed;
	z-index: 999999;
	inset: 0;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	padding: 28px;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s, visibility .3s;
}
.z5ev-fallback.is-open,
.z5ev-fallback.is-preview { visibility: visible; opacity: 1; pointer-events: auto; }
.z5ev-fallback__backdrop {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0 !important;
	background: rgba(0, 0, 0, .58) !important;
	backdrop-filter: blur(6px);
	cursor: default;
}
.z5ev-fallback__dialog {
	position: relative;
	width: min(920px, calc(100vw - 56px));
	max-height: calc(100vh - 56px);
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	overflow: auto;
	border-radius: var(--z5ev-radius, 24px);
	background: var(--z5ev-paper, #f4f1ee);
	box-shadow: 0 30px 100px rgba(0, 0, 0, .34);
	transform: translateY(24px);
	transition: transform .35s;
}
.z5ev-fallback.is-open .z5ev-fallback__dialog,
.z5ev-fallback.is-preview .z5ev-fallback__dialog { transform: none; }
.z5ev-fallback__image {
	--z5ev-image-x: 50%;
	--z5ev-image-y: 50%;
	height: 520px;
	min-height: 520px;
	overflow: hidden;
}
.z5ev-fallback__image img {
	width: 100%;
	height: 100%;
	min-height: 0;
	display: block;
	object-fit: cover;
	object-position: var(--z5ev-image-x, 50%) var(--z5ev-image-y, 50%);
}
.z5ev-fallback__content { display: flex; flex-direction: column; justify-content: center; padding: clamp(32px, 5vw, 70px); }
.z5ev-fallback__content .z5ev-heading { font-size: clamp(38px, 5vw, 68px); }
.z5ev-fallback__content .z5ev-button { align-self: flex-start; margin-top: 18px; }
.z5ev-fallback__content > .z5ev-text-link { align-self: flex-start; margin-top: 14px; }
.z5ev-fallback__close {
	position: absolute;
	z-index: 3;
	top: 18px;
	right: 18px;
	width: 42px;
	height: 42px;
	display: grid !important;
	place-items: center !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--z5ev-ink, #171214) !important;
	color: var(--z5ev-paper, #f4f1ee) !important;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
}
.z5ev-fallback__close:hover { background: var(--z5ev-red, #cb2525) !important; }
.z5ev.is-loading { opacity: .64; }
.z5ev-load-error { padding: 22px; background: #fff1f0; color: #8b1e1e; }

@media (max-width: 1024px) {
	.z5ev-experience__grid { grid-template-columns: 1fr; min-height: 0; }
	.z5ev-experience__media { aspect-ratio: 16 / 10; }
	.z5ev-registration { grid-template-columns: minmax(0, 1fr); gap: 36px; }
	.z5ev-registration__intro { position: static; max-width: 720px; }
	.z5ev-registration__heading { max-width: 12ch; }
	.z5ev-info__grid { grid-template-columns: repeat(2, 1fr); }
	.z5ev-info__grid article:nth-child(2) { border-right: 0; }
	.z5ev-info__grid article:nth-child(-n+2) { border-bottom: 1px solid color-mix(in srgb, var(--z5ev-paper, #f4f1ee) 20%, transparent); }
}

@media (max-width: 767px) {
	.z5ev-heading { font-size: clamp(39px, 13vw, 62px); }
	.z5ev-experience { border-radius: calc(var(--z5ev-radius, 24px) * .75); }
	.z5ev-experience__media { aspect-ratio: 4 / 5; }
	.z5ev-experience__content,
	.z5ev-switch { padding: 28px 22px; }
	.z5ev-switch__head { display: block; }
	.z5ev-switch__head .z5ev-title { margin-top: 10px; }
	.z5ev-switch__options { grid-template-columns: 1fr; gap: 12px; }
	.z5ev-route { min-height: 205px; padding: 24px !important; }
	.z5ev-registration { gap: 24px; overflow: visible; }
	.z5ev-registration__intro { width: 100%; max-width: none; }
	.z5ev-registration__eyebrow { margin-bottom: 11px; }
	.z5ev-registration__heading { max-width: 11ch; margin-bottom: 16px; font-size: clamp(38px, 12vw, 58px); line-height: .9; }
	.z5ev-registration__summary { max-width: 34rem; margin-bottom: 0; font-size: 16px; line-height: 1.55; }
	.z5ev-registration__panel {
		width: 100%;
		min-width: 0;
		overflow: hidden;
		border-radius: var(--z5ev-reg-panel-radius, 18px);
	}
	.z5ev-date-section,
	.z5ev-form,
	.z5ev-success { padding: 24px 18px; }
	.z5ev-step-label { gap: 10px; margin-bottom: 18px; font-size: 10px; letter-spacing: .12em; }
	.z5ev-step-label i { width: 26px; height: 26px; flex: 0 0 26px; }
	.z5ev-dates {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: minmax(116px, 42%);
		grid-template-columns: none;
		gap: 10px;
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-inline: contain;
		scroll-snap-type: inline mandatory;
		scroll-padding-inline: 1px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		padding: 1px 1px 8px;
	}
	.z5ev-dates::-webkit-scrollbar { display: none; }
	.z5ev-date { width: 100%; min-width: 0; min-height: 122px; scroll-snap-align: start; touch-action: pan-x; }
	.z5ev-date__day { font-size: 31px; }
	.z5ev-fields { grid-template-columns: 1fr; }
	.z5ev-field--wide { grid-column: auto; }
	.z5ev-field input,
	.z5ev-field textarea { min-width: 0; font-size: 16px; }
	.z5ev-field input { min-height: 52px; }
	.z5ev-field textarea { min-height: 112px; }
	.z5ev-check { gap: 12px; margin: 20px 0; font-size: 13px; }
	.z5ev-check input { width: 20px; height: 20px; flex: 0 0 20px; margin-top: 1px; }
	.z5ev-submit { position: static; min-height: 58px; margin-top: 8px; }
	.z5ev-submit .z5ev-button__label { white-space: normal; line-height: 1.25; }
	.z5ev-microcopy { max-width: 30rem; margin-top: 12px; line-height: 1.55; }
	.z5ev-success__actions { align-items: stretch; flex-direction: column; }
	.z5ev-success__actions .z5ev-button { width: 100%; }
	.z5ev-info { padding: 34px 22px; }
	.z5ev-info__grid { grid-template-columns: 1fr; }
	.z5ev-info__grid article {
		min-height: 0;
		padding: 24px 4px;
		border-right: 0;
		border-bottom: 1px solid color-mix(in srgb, var(--z5ev-paper, #f4f1ee) 20%, transparent) !important;
	}
	.z5ev-info__grid article > span { margin-bottom: 30px; }
	.z5ev-upcoming__grid { grid-template-columns: 1fr; }
	.z5ev-event-card { grid-template-columns: 72px 1fr 32px; gap: 15px; padding: 16px; }
	.z5ev-fallback { padding: 12px; }
	.z5ev-fallback__dialog {
		width: calc(100vw - 24px);
		max-height: calc(100vh - 24px);
		grid-template-columns: 1fr;
	}
	.z5ev-fallback__image { height: 210px; min-height: 210px; }
	.z5ev-fallback__content { padding: 30px 22px; }
	.z5ev-fallback__content .z5ev-heading { font-size: 40px; }
	.z5ev-fallback__close { top: 12px; right: 12px; }
}

@media (max-width: 420px) {
	.z5ev-registration__heading { font-size: clamp(34px, 11vw, 46px); }
	.z5ev-date-section,
	.z5ev-form,
	.z5ev-success { padding: 22px 14px; }
	.z5ev-dates { grid-auto-columns: minmax(112px, 46%); }
	.z5ev-date { padding: 15px 11px !important; }
	.z5ev .z5ev-submit { gap: 14px; padding-left: 18px !important; padding-right: 18px !important; }
	.z5ev-submit .z5ev-button__icon { width: 20px; height: 20px; }
}
