dialog.strategic-plan-modal {
	--modal-max-height: calc(100vh - var(--wp--preset--spacing--30) * 2);
	max-width: min(1296px, 100vw - calc(var(--wp--preset--spacing--30) * 2));
	max-height: var(--modal-max-height);

	/**
	 * Alternate scroll container for desktop
	 */
	@media (min-width: 782px) {
		overflow: hidden;

		.modal-content {
			max-height: var(--modal-max-height);
			overflow: hidden;
			padding-left: 0 !important;
			padding-right: 0 !important;
			padding-top: 0 !important;

			.modal-desktop-scroll-container {
				--slider-navigation-height: calc(66px + var(--wp--preset--spacing--40) + 1px);

				padding-top: var(--wp--preset--spacing--40);
				padding-left: var(--wp--preset--spacing--40);
				padding-right: var(--wp--preset--spacing--40);
				max-height: calc(var(--modal-max-height) - (var(--wp--preset--spacing--40) * 4) - var(--slider-navigation-height));
				overflow: auto;
				padding-bottom: var(--wp--preset--spacing--50);

				> .wp-block-columns {
					margin-bottom: 0 !important;
				}
			}

			.slider-navigation {
				margin-top: 0 !important;
				margin-left: var(--wp--preset--spacing--40);
				margin-right: var(--wp--preset--spacing--40);
			}
		}
	}

	form.close {
		button {
			border: none;
			padding: 0 !important;
		}

		@media (max-width: 781px) {
			position: absolute;
		}
	}

	.modal-content {
		padding: var(--wp--preset--spacing--40);

		.modal-top-of-content {
			scroll-margin-top: var(--wp--preset--spacing--40);
		}

		.mobile-menu-group {
			font-size: var(--wp--preset--font-size--small);
			margin-bottom: var(--wp--preset--spacing--40);
			display: grid;
			grid-template-rows: auto 0fr;
			transition: grid-template-rows 0.4s ease-in-out;
			overflow: hidden;
			align-items: start;

			&.open {
				grid-template-rows: auto 1fr;

				.mobile-menu-toggle svg {
					transform: rotate(180deg);
				}
			}

			@media (min-width: 782px) {
				display: none;
			}

			.mobile-menu-toggle {
				display: flex;
				align-items: center;
				gap: var(--wp--preset--spacing--10);
				font-weight: 400;

				svg {
					width: 0.75em;
					height: auto;
					transition: transform 0.3s ease-in-out;
				}
			}

			nav {
				min-height: 0;
			}

			ul {
				margin-bottom: 0;
				margin-top: 0;
				padding-left: 0;
				list-style: none;
				padding-top: var(--wp--preset--spacing--40);
				padding-bottom: var(--wp--preset--spacing--40);
				border-bottom: solid 1px var(--wp--preset--color--blue);
			}

			a {
				color: var(--wp--preset--color--light-grey);
			}
		}

		.section-label-wrapper {
			justify-content: flex-end;
			scroll-margin-top: var(--wp--preset--spacing--40);

			@media (max-width: 781px) {
				margin-bottom: var(--wp--preset--spacing--40) !important;
				justify-content: flex-start;
			}

			p {
				font-weight: 900;
			}
		}

		.modal-desktop-scroll-container > .wp-block-columns {
			column-gap: var(--wp--preset--spacing--40);
			row-gap: var(--wp--preset--spacing--60);

			> .wp-block-column:first-child {
				@media (max-width: 781px) {
					display: none;
				}
			}
		}

		.swiper-slide {
			.title-row {
				align-items: baseline;
				column-gap: var(--wp--preset--spacing--20);
				row-gap: var(--wp--preset--spacing--10);

				svg.arrow-up {
					transform: scaleY(-1);
				}

				svg {
					height: var(--wp--preset--font-size--h-5);
					width: auto;
					align-self: center;
				}
			}
		}

		.swiper-slide:not(.swiper-slide-active) {
			opacity: 0 !important;
		}

		.slider-navigation {
			margin-top: var(--wp--preset--spacing--60);
			padding-top: var(--wp--preset--spacing--40);
			border-top: solid 1px var(--wp--preset--color--blue);
			justify-content: space-between;
			gap: var(--wp--preset--spacing--40);

			.slider-button-group {
				&.hidden {
					display: none;
				}

				&.next,
				&.close {
					margin-left: auto;

					p {
						text-align: right;
					}
				}

				.labels {
					@media (max-width: 781px) {
						display: none;
					}
				}

				/**
				 * Hide close button unless the next button is hidden
				 */
				&.next:not(.hidden) ~ .close {
					display: none;
				}
			}

			.previous-button,
			.next-button,
			.close-button {
				width: var(--wp--preset--spacing--60);
				height: var(--wp--preset--spacing--60);
				display: flex;
				align-items: center;
				justify-content: center;
				background-color: var(--wp--preset--color--white);
				border-radius: 100%;
				border: solid 1px var(--wp--preset--color--light-grey);
				color: var(--wp--preset--color--dark-blue);
				transition: all 0.3s ease-in-out;
				cursor: pointer;

				&:hover,
				&:focus {
					background-color: var(--wp--preset--color--light-grey);
				}
			}

			.next-title,
			.previous-title,
			.close-title {
				font-size: 14px !important;
			}
		}

		#navigation-svg {
			width: min(100%, 515px);
			height: auto;

			.house-segment {
				fill: #074F82;
				cursor: pointer;
				transition: fill 0.3s ease-in-out;
			}

			.segment-text {
				fill: var(--wp--preset--color--sky-blue);
				pointer-events: none;
				transition: fill 0.3s ease-in-out;

				@media (max-width: 781px) {
					display: none;
				}
			}

			.house-segment:hover ~ .segment-text,
			g.active .segment-text {
				fill: var(--wp--preset--color--navy-blue);
			}
		}
	}
}

/**
 * Language-specific labels
 */
html[lang="en-US"] .strategic-plan-modal #navigation-svg .segment-text.fr {
	display: none;
}

html[lang="fr-FR"] .strategic-plan-modal #navigation-svg .segment-text.en {
	display: none;
}
