/*---------Event Popup (Figma: Symposium_Website_PopUp > Popup)----------------*/
html.event_popup_open {
	overflow: hidden;
}

.event_popup[hidden] {
	display: none;
}

.event_popup {
	position: fixed;
	inset: 0;
	z-index: 1000000; /* above the theme header (999999), below CookieYes's preference centre */
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.event_popup.is_visible {
	opacity: 1;
}
/* While fading out, let clicks reach the page underneath */
.event_popup:not(.is_visible) {
	pointer-events: none;
}

.event_popup .event_popup_overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(63, 63, 63, 0.8);
}

.event_popup .event_popup_dialog {
	position: relative;
	display: flex;
	align-items: flex-start;
	width: 100%;
	max-width: 714px;
	max-height: 100%;
	overflow-y: auto;
	background-color: #fff;
	border-radius: 12px;
	box-shadow: -3px 6px 53px rgba(0, 0, 0, 0.39);
	transform: translateY(10px) scale(0.98);
	transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.event_popup.is_visible .event_popup_dialog {
	transform: none;
}
.event_popup .event_popup_dialog:focus {
	outline: none;
}

.event_popup .event_popup_close {
	position: absolute;
	top: 16px;
	left: 22px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #004580;
	cursor: pointer;
}
.event_popup .event_popup_close:hover {
	color: #00AFD7;
}
.event_popup .event_popup_close:focus-visible {
	outline: 2px solid #00AFD7;
	outline-offset: 2px;
}

.event_popup .event_popup_content {
	flex: 1 1 auto;
	min-width: 0;
	padding: 100px 24px 60px 36px;
}

.event_popup .event_popup_title {
	margin: 0 0 0 -2px;
	font-size: 44px;
	font-weight: 400;
	line-height: 49px;
	letter-spacing: -0.05em;
	text-transform: uppercase;
	color: #000;
}
.event_popup .event_popup_eyebrow {
	display: block;
	font-size: 27px;
	font-weight: 300;
	line-height: 34px;
	letter-spacing: -0.01em;
	margin-bottom: -10px;
}

.event_popup .event_popup_date {
	margin: 9px 0 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 18px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #004580;
}
.event_popup .event_popup_divider {
	display: inline-block;
	width: 1.3px;
	height: 11.4px;
	margin: 0 3px;
	overflow: hidden;
	vertical-align: -1px;
	background-color: #00AFD7;
	color: transparent;
}

.event_popup .event_popup_rule {
	width: 35px;
	height: 2px;
	margin: 30px 0 22px;
	background-color: #00AFD7;
}

.event_popup .event_popup_sub_title {
	margin: 0 0 3px;
	font-size: 26.36px;
	font-weight: 400;
	line-height: 29px;
	letter-spacing: -0.03em;
	color: #000;
}

.event_popup .event_popup_description {
	margin: 0 0 27px;
	font-size: 12px;
	font-weight: 400;
	line-height: 15.8px;
	color: #000;
}

.event_popup .event_popup_button .qbutton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 275px;
	height: 39.5px;
	padding: 0 25px;
	font-size: 16px;
	font-weight: 400;
	line-height: 19px;
	letter-spacing: -0.01em;
	border-radius: 6px;
	background-color: #00AFD7;
	border-color: #00AFD7;
}
.event_popup .event_popup_button .qbutton:hover,
.event_popup .event_popup_button .qbutton:focus-visible {
	background-color: #91C73D;
	border-color: #91C73D;
	color: #fff;
}
.event_popup .event_popup_arrow {
	position: relative;
	top: 1.5px;
	flex: 0 0 auto;
	transition: transform 0.2s ease;
}
.event_popup .event_popup_button .qbutton:hover .event_popup_arrow {
	transform: translateX(3px);
}

.event_popup .event_popup_media {
	position: relative;
	flex: 0 0 270px;
	height: 422.5px;
	margin: 19px 22px 23px 0;
	border-radius: 10px;
	overflow: hidden;
}
.event_popup .event_popup_media .event_popup_image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.event_popup .event_popup_badge {
	position: absolute;
	top: 13px;
	right: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 105px;
	height: 105px;
	padding: 10px;
	border-radius: 50%;
	background-color: #00AFD7;
	color: #fff;
	font-size: 21px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0.03em;
	text-align: center;
	text-transform: uppercase;
}

/*---------Tablet: shrink the type a little----------------*/
@media only screen and (max-width: 767px) {
	.event_popup .event_popup_content { padding: 80px 20px 40px 28px; }
	.event_popup .event_popup_title { font-size: 36px; line-height: 40px; }
	.event_popup .event_popup_eyebrow { font-size: 22px; line-height: 28px; margin-bottom: -6px; }
	.event_popup .event_popup_media { flex-basis: 220px; height: 380px; }
	.event_popup .event_popup_button .qbutton { min-width: 0; }
}

/*---------Mobile: stack image above content----------------*/
@media only screen and (max-width: 600px) {
	.event_popup { padding: 15px; }
	.event_popup .event_popup_dialog {
		flex-direction: column-reverse;
		align-items: stretch;
		max-width: 420px;
	}
	.event_popup .event_popup_media {
		flex: 0 0 auto;
		height: 220px;
		margin: 15px 15px 0;
	}
	.event_popup .event_popup_media .event_popup_image { object-position: center 45%; }
	.event_popup .event_popup_badge {
		top: 12px;
		right: 12px;
		width: 80px;
		height: 80px;
		font-size: 16px;
	}
	.event_popup .event_popup_close {
		top: 23px;
		left: 23px;
		background-color: rgba(255, 255, 255, 0.9);
	}
	.event_popup.no_image .event_popup_close { background-color: transparent; }
	.event_popup .event_popup_content { padding: 25px 20px 30px; }
	.event_popup.no_image .event_popup_content { padding-top: 60px; }
	.event_popup .event_popup_title { font-size: 34px; line-height: 38px; }
	.event_popup .event_popup_eyebrow { font-size: 21px; line-height: 27px; margin-bottom: -5px; }
	.event_popup .event_popup_date { font-size: 12px; letter-spacing: 0.12em; }
	.event_popup .event_popup_rule { margin: 22px 0 18px; }
	.event_popup .event_popup_sub_title { font-size: 22px; line-height: 26px; }
	.event_popup .event_popup_description { font-size: 13px; line-height: 17px; }
	.event_popup .event_popup_button .qbutton { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.event_popup,
	.event_popup .event_popup_dialog,
	.event_popup .event_popup_arrow { transition: none; }
}
