.maple-odel-popup:not([open]) {
	display: none;
}

html:has(.maple-odel-popup[open]) {
	overflow: hidden;
}

.maple-odel-popup {
	box-sizing: border-box;
	width: min(44rem, calc(100% - 2rem));
	max-height: calc(100% - 2rem);
	max-height: calc(100dvh - 2rem);
	margin: auto;
	padding: clamp(1rem, 4vw, 2rem);
	overflow: auto;
	overscroll-behavior: contain;
	border: 0;
	border-top: 0.375rem solid var(--maple-popup-accent, #135d7f);
	border-radius: 5px;
	background: var(--bs-body-bg, #fff);
	color: var(--bs-body-color, #212529);
	box-shadow: 0 0.75rem 2.5rem rgb(0 0 0 / 25%);
	font: inherit;
}

.maple-odel-popup::backdrop {
	background: rgb(0 0 0 / 58%);
}

.maple-odel-popup__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.maple-odel-popup__header h2 {
	margin: 0;
	overflow-wrap: anywhere;
}

.maple-odel-popup .maple-odel-popup__close {
	flex: 0 0 2.75rem;
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 0;
	border-radius: 5px;
	background: var(--maple-popup-accent, #135d7f);
	color: #fff;
	font: inherit;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
}

.maple-odel-popup .maple-odel-popup__close:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: -4px;
}

.maple-odel-popup__content {
	overflow-wrap: anywhere;
}

.maple-odel-popup__content img,
.maple-odel-popup__content video {
	max-width: 100%;
	height: auto;
}

/* WPBakery stretches these rows to the viewport by default. */
.maple-odel-popup .vc_row[data-vc-full-width="true"] {
	left: auto !important;
	right: auto !important;
	width: auto !important;
	max-width: 100%;
	margin-inline: 0;
	padding-inline: 0 !important;
}
