/* -------------------------------------------------------------------------- */
/* UTILITY CLASSES */
/* -------------------------------------------------------------------------- */

:root {
	--drop-shadow: 0 0 1rem rgb(0 0 0 / 0.15);
	--svg-shadow: 0.25rem 0.25rem 0.25rem rgb(0 0 0 / 0.25);
}

.sr-only {
	border: 0 !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	clip-path: inset(50%) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	white-space: nowrap !important;
}

.sr-only-focusable:focus-visible,
.sr-only-focusable:active {
	clip: auto !important;
	clip-path: none !important;
	height: auto !important;
	margin: auto !important;
	overflow: visible !important;
	width: auto !important;
	white-space: normal !important;
}

/* Display exclusions */

.small-screen {
	display: block;

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

.mobile-only {
	display: block;

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

.large-screen {
	display: none;

	@media (min-width: 1024px) {
		display: block;
	}
}

.tablet-plus {
	display: none;

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

html {
	scroll-padding: 4rem !important;
}

a:not(.wp-block-button a):hover {
	text-underline-offset: 3px;
	text-decoration-thickness: 2px;
}

/* Focus-visible styles for certain links in #post-content and footer */
#post-content {
	a:not(a.custom-logo-link, a.back-to-top, .wp-block-button a):focus-visible {
		border-radius: 3px;
		outline: 2px solid currentColor;
		outline-offset: 2px;
		text-decoration: none;
	}
}

footer {
	a:not(a.back-to-top):focus-visible {
		border-radius: 3px;
		outline: 2px solid currentColor;
		outline-offset: 2px;
		text-decoration: none;
	}

	a.back-to-top {
		border-radius: 3px;
		border: 2px solid var(--wp--preset--color--transparent);

		&:is(:hover, :focus-visible) {
			border: 2px solid var(--wp--preset--color--white);
			outline: 3px solid var(--wp--preset--color--black);
			outline-offset: 0px;
			opacity: 1 !important;
		}
	}
}

/* Heading balance text-wrap under 781px */
@media (max-width: 781px) {

	h1,
	h2,
	h3 {
		text-wrap: balance;
	}
}

.balance {
	text-wrap: balance;
}

.gap-6.gap-6 {
	gap: 6rem;
}

.gap-2.gap-2,
.double-gap.double-gap {
	gap: 2rem;
}

.gap-1.gap-1,
.single-gap.single-gap {
	gap: 1rem;
}

.half-gap.half-gap {
	gap: 0.5rem;
}

.hidden {
	display: none !important;
}

.is-flex {
	display: flex;
}

/* Combine overflow-hidden from multiple places */
.overflow-hidden {
	overflow: hidden;
	/* .overflow-hidden height merged here: */
	height: auto;
}

/* Round images for .rounded-image .wp-block-media-text__media */
.rounded-image {
	.wp-block-media-text__media {
		border-radius: 1rem;
		overflow: hidden;
	}
}

/* Hide or show on mobile/desktop */
@media (max-width: 600px) {
	.hide-on-mobile {
		display: none !important;
	}
}

@media (min-width: 601px) {
	.hide-on-desktop {
		display: none !important;
	}
}

/* -------------------------------------------------------------------------- */
/* HEADER CLASSES */
/* -------------------------------------------------------------------------- */

.wp-block-site-logo {
	img {
		object-fit: contain;
	}
}

a.custom-logo-link {
	&:focus-visible {
		border-radius: 3px;
		outline: 2px solid var(--wp--preset--color--custom-dark-blue);
		outline-offset: 2px;
	}
}

/* #main-menu margin */
#main-menu {
	margin: 1rem;
}

/* Focus styles on navigation items when using .alpha-v3.has-ribbon-menu */
body.alpha-v3.has-ribbon-menu {
	header {
		nav {
			.wp-block-navigation {
				a.wp-block-navigation-item__content {
					&:focus-visible {
						background-color: hsla(0, 0%, 7%, 0.05);
						outline: none;
						text-underline-offset: 3px;
						text-decoration-thickness: 2px;
						text-decoration-line: underline;
						text-decoration-style: solid;
					}
				}
			}
		}
	}
}

/* -------------------------------------------------------------------------- */
/* CARD COLOUR CLASSES */
/* -------------------------------------------------------------------------- */

.cards-grid > .wp-block-group *,
.cards-grid > .wp-block-group .wp-block-button.is-style-outline .wp-block-button__link,
html body.wp-admin .editor-styles-wrapper .cards-grid > .wp-block-group .wp-block-button.is-style-outline .wp-block-button__link {
	color: var(--wp--preset--color--white);
}

.cards-grid > .wp-block-group:nth-of-type(6n + 1) {
	background-color: var(--wp--preset--color--custom-dark-pink);

	.wp-block-button.is-style-outline .wp-block-button__link {
		background-color: var(--wp--preset--color--custom-dark-blue);
	}
}

.cards-grid > .wp-block-group:nth-of-type(6n + 2) {
	background-color: var(--wp--preset--color--custom-dark-blue);

	.wp-block-button.is-style-outline .wp-block-button__link {
		background-color: var(--wp--preset--color--custom-purple);
	}
}

.cards-grid > .wp-block-group:nth-of-type(6n + 3) {
	background-color: var(--wp--preset--color--custom-purple);

	.wp-block-button.is-style-outline .wp-block-button__link {
		background-color: var(--wp--preset--color--custom-dark-blue);
	}
}

.cards-grid > .wp-block-group:nth-of-type(6n + 4) {
	background-color: var(--wp--preset--color--custom-blue);

	.wp-block-button.is-style-outline .wp-block-button__link {
		background-color: var(--wp--preset--color--primary-brand);
	}
}

.cards-grid > .wp-block-group:nth-of-type(6n + 5) {
	background-color: var(--wp--preset--color--custom-coastal-health);

	.wp-block-button.is-style-outline .wp-block-button__link {
		background-color: #004f4a;
	}
}

.cards-grid > .wp-block-group:nth-of-type(6n + 6) {
	background-color: var(--wp--preset--color--custom-testimonial-bg);

	.wp-block-button.is-style-outline .wp-block-button__link {
		background-color: var(--wp--preset--color--custom-coastal-health);
	}
}


/* -------------------------------------------------------------------------- */
/* FOOTER CLASSES (already nested above for a.back-to-top) */
/* -------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------- */
/* BUTTON CLASSES */
/* -------------------------------------------------------------------------- */

.light.wp-block-button {
	.wp-block-button__link:is(:hover, :focus-visible) {
		outline: 2px solid #fff;
	}
}

/* "has-arrow" button with an inline arrow */
.has-arrow.wp-block-button {
	.wp-block-button__link::after {
		content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxNSAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNy40MjA1NGUtMDcgNi43NjYzN0wxMS4yNzQ4IDYuNzY2MzdMNi44OTU2OCAyLjIxMDRMOC4yNzE3IDAuNzc4ODA4TDE1IDcuNzc4ODFMOC4yNzE3IDE0Ljc3ODhMNi44OTU2OCAxMy4zNDcyTDExLjI3NDggOC43OTEyNUw2LjcwNDg3ZS0wNyA4Ljc5MTI1TDcuNDIwNTRlLTA3IDYuNzY2MzdaIiBmaWxsPSIjM0I1QTk0Ii8+PC9zdmc+);
		width: 1rem;
		visibility: visible;
		overflow: visible;
		display: inline-block;
		pointer-events: all;
		padding-left: 0.5rem;
		position: relative;
		top: 0.15rem;
	}
}


/* -------------------------------------------------------------------------- */
/* "JOB SEARCH" / EMPLOYER BUTTONS & MAP */
/* -------------------------------------------------------------------------- */

@media (max-width: 1024px) {

	.employer-buttons-column,
	.employer-map-column {
		flex-basis: 50% !important;
	}
}

.employer-buttons.employer-buttons {
	.wp-block-button__link {
		text-align: left;
		position: relative;
		margin-bottom: 0.5rem;
		font-size: 1rem;
		padding-right: 2.66rem;
	}

	/* Circle with the link */
	.circle {
		.wp-block-button__link::after {
			content: "";
			display: inline-block;
			border-radius: 50%;
			height: 2rem;
			width: 2rem;
			right: 0.5rem;
			position: absolute;
			top: 0.5rem;
		}

		&.northern-health .wp-block-button__link::after {
			background-color: var(--wp--preset--color--custom-northern-health);
		}

		&.interior-health .wp-block-button__link::after {
			background-color: var(--wp--preset--color--custom-interior-health);
		}

		&.coastal-health .wp-block-button__link::after {
			background-color: var(--wp--preset--color--custom-coastal-health);
		}

		&.island-health .wp-block-button__link::after {
			background-color: var(--wp--preset--color--custom-island-health);
		}

		&.fraser-health .wp-block-button__link::after {
			background-color: var(--wp--preset--color--custom-fraser-health);
		}

		/* Active state (striped background) */
		&.northern-health .wp-block-button__link.active::after,
		&.interior-health .wp-block-button__link.active::after,
		&.island-health .wp-block-button__link.active::after,
		&.fraser-health .wp-block-button__link.active::after {
			background-image: repeating-linear-gradient(45deg,
					#333 0,
					#333 1.5px,
					transparent 0,
					transparent 50%);
			background-size: 11px 11px;
		}

		&.coastal-health .wp-block-button__link.active::after {
			background-image: repeating-linear-gradient(45deg,
					#95efc9 0,
					#95efc9 1.5px,
					transparent 0,
					transparent 50%);
			background-size: 11px 11px;
		}

		.wp-block-button__link:is(:hover, :focus-visible) {
			filter: contrast(100%);
			background-image: repeating-linear-gradient(-45deg,
					#fff,
					#fff 1.5px,
					transparent 1.5px,
					transparent);
			background-size: 8px 8px;
			background-color: transparent;
		}
	}
}

@media (min-width: 1250px) {
	.employer-buttons.employer-buttons {
		.wp-block-button__link {
			font-size: 1.25rem;
			max-width: 425px;
		}

		.circle {
			.wp-block-button__link::after {
				height: 2.665rem;
				width: 2.665rem;
			}
		}
	}
}

#job-search {
	h2 {
		font-size: clamp(1.502rem, 1.502rem + ((1vw - 0.2rem) * 1.426), 2rem);
	}

	.mapSVG {
		filter: drop-shadow(var(--svg-shadow));
	}

	@media (max-width: 600px) {
		& {
			padding-top: 2rem !important;
		}

		h2 {
			margin-bottom: 2rem !important;
		}
	}

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

/* -------------------------------------------------------------------------- */
/* MEDIA-TEXT CLASSES */
/* -------------------------------------------------------------------------- */

.banner {
	.wp-block-media-text {
		.wp-block-media-text__media {
			align-self: end;
		}
	}

	@media (max-width: 600px) {

		/* Add border to .banner .wp-block-media-text__media if needed. 
		 If also needed in .media-block-container, nest that separately. */
		& .wp-block-media-text__media {
			border-bottom: 4px solid white;
		}
	}
}

.media-block-container {
	display: flex;
	width: 100%;

	.wp-block-media-text__media {

		/* Also gets the border under 600px if required: */
		@media (max-width: 600px) {
			border-bottom: 4px solid white;
		}
	}
}

/* -------------------------------------------------------------------------- */
/* PULL-QUOTE CLASSES */
/* -------------------------------------------------------------------------- */

.pull-quote-container {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	grid-column-gap: 2rem;
	grid-row-gap: 2rem;

	.pull-quote {
		box-shadow: var(--drop-shadow);
		display: grid;
		justify-content: center;
		align-items: center;

		cite {
			display: inline-block;
			line-height: 1.5;
		}
	}

	@media (min-width: 800px) {
		& {
			grid-template-columns: repeat(2, 1fr);
			grid-template-rows: repeat(2, 1fr);
		}

		.pull-quote.pq1 {
			grid-area: 1 / 1 / 3 / 2;
		}

		.pull-quote.pq2 {
			grid-area: 1 / 2 / 2 / 3;
		}

		.pull-quote.pq3 {
			grid-area: 2 / 2 / 3 / 3;
		}
	}
}

/* -------------------------------------------------------------------------- */
/* TESTIMONIAL CLASSES */
/* -------------------------------------------------------------------------- */

.is-centred-vertical {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.media-block-container .media-block {
	flex: 1;
	width: 100%;
}

.next-step {
	background: linear-gradient(180deg,
			hsl(0, 59%, 69%) 0%,
			hsl(17, 89%, 76%) 13%,
			hsl(248, 67%, 24%) 13%);
	margin-top: 0rem;
	padding-top: 0;
	padding-bottom: 0;

	@media (max-width: 781px) {
		.wp-block-column {
			padding-bottom: 0 !important;
		}
	}
}

.doctor.wp-block-image {
	margin-block: 0;
}

/* -------------------------------------------------------------------------- */
/* HELP SECTION */
/* -------------------------------------------------------------------------- */

#help {
	.wp-block-column {
		box-shadow: var(--drop-shadow);
		border-radius: 1rem;
	}

	.is-flex {
		.wp-block-buttons {
			margin: auto auto 0 !important;
		}
	}

	.is-flex-column {
		display: flex;
		flex-direction: column;

		.wp-block-group {
			flex: 1;
			display: flex;
			flex-direction: column;
		}

		.wp-block-heading {
			margin: 0 !important;
		}
	}
}

/* Highlight outline if #banner-link is in URL fragment */
body:has(#banner-link:target) {
	#banner-link {
		div.overflow-hidden {
			outline: 2px solid currentColor;
		}
	}
}

/* Mobile & tablet classes */
.mobile-only {
	display: block !important;

	@media (min-width: 601px) {
		& {
			display: none !important;
		}
	}
}

.hide-on-tablet {
	display: none !important;

	@media (min-width: 1220px) {
		& {
			display: block !important;
		}
	}
}

/* Keep alpha-v3 has-modal-open fix together */
body.alpha-v3 .is-style-ribbon-menu .has-modal-open.has-modal-open {
	overflow: auto !important;
}

/* Balance headings globally */
.wp-block-heading {
	text-wrap: balance;
}

/* No margin */
.no-margin.no-margin {
	margin: 0;
}

/* Tag row styling */
.wp-block-group.tags-row.tags-row {
	flex-direction: row;
	gap: 0.5rem;
	white-space: nowrap;
}

/* Link box-decoration-break fix */
a {
	box-decoration-break: clone;
}

/* Media-text alignment fix */
.wp-block-media-text.has-media-on-the-right {
	.wp-block-media-text__content {
		padding-left: 0;
	}
}

/* Column flex helpers */
.is-flex-column {
	display: flex;
	flex-direction: column;

	.wp-block-group {
		display: flex;
		flex-direction: column;
		flex: 1;

		.wp-block-buttons:not(.described) {
			margin-top: auto;
		}
	}
}

/* Constrained group width */
.is-constrained-group {
	width: 600px;
}

/* Pointer none on .pointer-none media container */
.pointer-none {
	.wp-block-media-text__media {
		pointer-events: none;
	}
}

/* Divider line */
.divide-down {
	border-bottom: 2px solid var(--wp--preset--color--custom-careers-gray);
}

/* Reverse children on mobile */
@media (max-width: 600px) {
	.mobile-reverse {
		display: flex;
		flex-direction: column;

		:last-child {
			order: 1;
		}

		:first-child {
			order: 2;
		}
	}
}

/* "In-page menu" highlight if :target is present */
body {

	&:has(#allied:target) li.allied-menu,
	&:has(#nursing:target) li.nursing-menu,
	&:has(#hmbc:target) li.hmbc-menu,
	&:has(#general:target) li.general-menu,
	&:has(#immigration:target) li.immigration-menu,
	&:has(#living:target) li.living-menu,
	&:has(#working:target) li.working-menu,
	&:has(#moving:target) li.moving-menu,
	&:has(#other:target) li.other-menu,
	&:has(#sonographers:target) li.sonographers-menu,
	&:has(#radiation-tech:target) li.radiation-tech-menu {
		background-color: var(--bcds-surface-brand-gray-30) !important;
		font-weight: 700 !important;
	}
}

/* Register page button */
body.register-page {
	.wp-block-button.register-btn {
		a {
			background-color: var(--wp--preset--color--primary-brand) !important;
			color: var(--wp--preset--color--white) !important;
			pointer-events: none;
		}
	}
}
.explore-jobs-link a {
	background-color: var(--wp--preset--color--primary-brand) !important;
	border-radius: 999px;
	color: var(--wp--preset--color--white) !important;
	margin-bottom: 2rem;
}


/* "On this page" adjustments */
.on-this-page.on-this-page {
	& .has-media-on-the-right {

		.wp-block-media-text__media,
		img {
			border-bottom-left-radius: 0 !important;
			border-bottom-right-radius: 0 !important;
		}

		&.is-image-fill.has-media-on-the-right {

			.wp-block-media-text__media,
			img {
				border-bottom-left-radius: 0 !important;
				border-bottom-right-radius: 0 !important;
			}
		}
	}
}

/* Arrowed containers */
.detail-with-number-container.detail-with-number-container {
	&:not(.last) {
		.wp-block-column:first-of-type::after {
			content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHZpZXdCb3g9IjAgMCAxNC43IDE4Ij48cGF0aCBkPSJNNi43IDE3LjdjLjQuNCAxIC40IDEuNCAwbDYuNC02LjRjLjQtLjQuNC0xIDAtMS40cy0xLS40LTEuNCAwbC01LjcgNS43LTUuNy01LjdjLS40LS40LTEtLjQtMS40IDBzLS40IDEgMCAxLjR6TTYuNCAwdjE3aDJWMHoiIHN0eWxlPSJmaWxsOiNmZmZmZmYiLz48L3N2Zz4=);
			pointer-events: none;
		}
	}

	.wp-block-column:first-of-type {
		border-radius: 0.66rem;
		min-height: 120px;
		padding: 0;
	}
}

/* Arrowed buttons and group p::after */
.has-arrow.wp-block-button {
	.wp-block-button__link::after {
		/* (Already defined above, repeated as needed) */
	}
}

.group-link {
	text-decoration: none;

	&:focus-visible {
		outline: 0 !important;
	}

	.wp-block-group {
		p {
			/* Add arrow after <p> inside .group-link .wp-block-group */
			display: flex;
			min-width: 100%;
			align-items: center;

			&::after {
				content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxNSAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNy40MjA1NGUtMDcgNi43NjYzN0wxMS4yNzQ4IDYuNzY2MzdMNi44OTU2OCAyLjIxMDRMOC4yNzE3IDAuNzc4ODA4TDE1IDcuNzc4ODFMOC4yNzE3IDE0Ljc3ODhMNi44OTU2OCAxMy4zNDcyTDExLjI3NDggOC43OTEyNUw2LjcwNDg3ZS0wNyA4Ljc5MTI1TDcuNDIwNTRlLTA3IDYuNzY2MzdaIiBmaWxsPSIjM0I1QTk0Ii8+PC9zdmc+);
				width: 1rem;
				visibility: visible;
				overflow: visible;
				pointer-events: all;
				padding-left: 0.5rem;
				position: relative;
				display: flex;
				justify-content: flex-end;
				align-items: start;
				flex: 1;
				padding-top: 5px;
				margin-left: auto;
			}
		}

		&:is(:hover, :focus-visible) {
			border-radius: 0.5rem;
			outline: 3px solid currentColor;
			outline-offset: 3px;
		}

		&.light:is(:hover, :focus-visible) {
			outline: 3px solid white;
		}
	}
}

/* FAQ icons if .has-faq */
.group-link {
	.has-arrow.has-faq.wp-block-button {
		.wp-block-button__link::after {
			content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgaGVpZ2h0PSIzMCIgd2lkdGg9IjMwIiB2aWV3Qm94PSIwIDAgMTUgMTUiPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE0LjEsNy41YzAtMy42LTIuOS02LjYtNi42LTYuNlMuOSwzLjkuOSw3LjVzMi45LDYuNiw2LjYsNi42LDYuNi0yLjksNi42LTYuNlpNMCw3LjVDMCwzLjQsMy40LDAsNy41LDBzNy41LDMuNCw3LjUsNy41LTMuNCw3LjUtNy41LDcuNVMwLDExLjYsMCw3LjVaTTQuOSw1Yy4yLS43LjgtMS4yLDEuNi0xLjJoMS43YzEsMCwxLjkuOCwxLjksMS45cy0uNCwxLjQtMSwxLjdsLTEuMS42di42YzAsLjMtLjIuNS0uNS41cy0uNS0uMi0uNS0uNXYtLjljMC0uMiwwLS4zLjMtLjRsMS4zLS43Yy4zLS4yLjUtLjUuNS0uOCwwLS41LS40LS45LS45LS45aC0xLjdjLS4zLDAtLjYuMi0uNy41aDBjMCwuMy0uMy40LS42LjRzLS40LS4zLS4zLS42aDBzMCwwLDAsMFpNNi44LDEwLjNjMC0uNC4zLS43LjctLjdzLjcuMy43LjctLjMuNy0uNy43LS43LS4zLS43LS43WiIgZmlsbD0iIzNiNWE5NCIvPjwvc3ZnPg==);
			max-width: 1.5rem;
			visibility: visible;
			overflow: visible;
			pointer-events: all;
			padding: 2px 0 0 0.5rem;
			position: relative;
			margin-left: auto;
		}
	}

	.wp-block-group.has-faq {
		p::after {
			content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgaGVpZ2h0PSIzMCIgd2lkdGg9IjMwIiB2aWV3Qm94PSIwIDAgMTUgMTUiPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE0LjEsNy41YzAtMy42LTIuOS02LjYtNi42LTYuNlMuOSwzLjkuOSw3LjVzMi45LDYuNiw2LjYsNi42LDYuNi0yLjksNi42LTYuNlpNMCw3LjVDMCwzLjQsMy40LDAsNy41LDBzNy41LDMuNCw3LjUsNy41LTMuNCw3LjUtNy41LDcuNVMwLDExLjYsMCw3LjVaTTQuOSw1Yy4yLS43LjgtMS4yLDEuNi0xLjJoMS43YzEsMCwxLjkuOCwxLjksMS45cy0uNCwxLjQtMSwxLjdsLTEuMS42di42YzAsLjMtLjIuNS0uNS41cy0uNS0uMi0uNS0uNXYtLjljMC0uMiwwLS4zLjMtLjRsMS4zLS43Yy4zLS4yLjUtLjUuNS0uOCwwLS41LS40LS45LS45LS45aC0xLjdjLS4zLDAtLjYuMi0uNy41aDBjMCwuMy0uMy40LS42LjRzLS40LS4zLS4zLS42aDBzMCwwLDAsMFpNNi44LDEwLjNjMC0uNC4zLS43LjctLjdzLjcuMy43LjctLjMuNy0uNy43LS43LS4zLS43LS43WiIgZmlsbD0iIzNiNWE5NCIvPjwvc3ZnPg==);
			/* same arrow as above, except different base64 */
			max-width: 1.5rem;
			visibility: visible;
			overflow: visible;
			pointer-events: all;
			padding: 2px 0 0 0.5rem;
			position: relative;
			margin-left: auto;
		}
	}
}

/* -------------------------------------------------------------------------- */
/* CARDS & GROUP LINKS (some rules already nested above) */
/* -------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------- */
/* COLLAPSE BLOCKS (Gravity / BCGov collapse style) */
/* -------------------------------------------------------------------------- */

.wp-block-bcgov-block-theme-collapse.is-style-bchc.is-style-bchc {
	.wp-block-bcgov-block-theme-collapse-item {
		.collapse-header {
			h3 {
				margin-top: 0.5rem;

				button {
					line-height: 1.5;
					border-bottom: 2px solid var(--wp--preset--color--custom-blue);
					padding-block: 1rem;

					&[aria-expanded="true"] {
						span {
							color: var(--wp--preset--color--custom-blue);
							font-weight: 500;
						}
					}

					&:is(:hover, :focus-visible, :focus) {
						background-color: rgba(var(--primary-brand-rgb), 0.025);
					}
				}
			}
		}
	}
}

/* -------------------------------------------------------------------------- */
/* "NAVIGATION TEAM" (new home) */
/* -------------------------------------------------------------------------- */

.navigation-team-container {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	gap: 2rem;
	grid-auto-flow: row;
	justify-content: center;
	align-items: center;
	grid-template-areas:
		"one"
		"two"
		"three"
		"four"
		"five"
		"six";

	@media (min-width: 1024px) {
		grid-template-columns: 1fr 1.5fr 1fr;
		grid-template-rows: 1fr 1fr 1fr;
		grid-auto-flow: row;
		grid-template-areas:
			"one centre four"
			"two centre five"
			"three centre six";
	}
}

.navigation-team-feature {
	&.one {
		grid-area: one;
	}

	&.two {
		grid-area: two;
	}

	&.three {
		grid-area: three;
	}

	&.four {
		grid-area: four;
	}

	&.five {
		grid-area: five;
	}

	&.six {
		grid-area: six;
	}

	&.centre {
		grid-area: centre;
		display: none;

		@media (min-width: 1024px) {
			& {
				display: block;
			}
		}
	}
}

@media (max-width: 1023px) {
	.navigation-team-feature {
		&.navigation-team-feature {
			.wp-block-media-text {
				.wp-block-media-text__media {
					justify-content: center;
					display: flex;

					img {
						max-width: 100px;
						text-align: center;
					}
				}

				.wp-block-media-text__content {
					padding-inline: 0;
					text-align: center;
				}
			}
		}
	}
}

/* -------------------------------------------------------------------------- */
/* "NEW HOME TESTIMONIALS" */
/* -------------------------------------------------------------------------- */

.testimonial-container {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	gap: 2rem;
	grid-template-areas:
		"one"
		"two"
		"three"
		"four";

	@media (min-width: 1024px) {
		& {
			grid-template-columns: 1fr 1fr 1fr 1fr;
			grid-template-rows: 1fr 1fr;
			grid-template-areas:
				"one one three four"
				"two two three four";
		}
	}

	.testimonial-quote {
		&.one {
			grid-area: one;
		}

		&.two {
			grid-area: two;
		}

		&.three {
			grid-area: three;
		}

		&.four {
			grid-area: four;
		}

		.wp-block-quote {
			padding: 0;
		}
	}
}

/* "register" column that overlaps testimonial area */
.testimonial-register {
	margin-top: -12rem;
	position: relative;
	z-index: 9;
	pointer-events: none;

	a {
		pointer-events: all;
	}

	&.background {
		@media (max-width: 600px) {
			margin-top: 0;
			position: relative;
			z-index: 9;

			.wp-block-media-text {
				display: flex;
				flex-direction: column;

				wp-block-media-text__media {
					order: 2;
				}

				wp-block-media-text__content {
					order: 1;
				}
			}
		}

		.wp-block-image {
			pointer-events: none;
		}
	}
}

/* -------------------------------------------------------------------------- */
/* GRAVITY FORMS */
/* -------------------------------------------------------------------------- */

.gform-theme--framework {

	.gform-theme-button--control,
	.gform_button {
		--gf-local-bg-color: var(--wp--preset--color--custom-testimonial-bg) !important;
	}

	.gfield:where(.gfield--type-fileupload, .gfield--input-type-fileupload) {
		.gform_drop_area.gform_drop_area::before {
			color: var(--wp--preset--color--custom-testimonial-bg);
		}
	}

	h3 {
		margin: 2.5rem 0 0;
	}

	input[type="checkbox"],
	input[type="radio"] {
		top: 4px;
		position: relative;
	}
}

/* Gravity label sizes */
.gfield_label.gfield_label.gfield_label,
.gform-field-label--type-sub.gform-field-label--type-sub.gform-field-label--type-sub,
.gform-field-label--type-inline.gform-field-label--type-inline.gform-field-label--type-inline {
	font-size: clamp(1rem, 1rem + ((1vw - 0.48rem) * 0.481), 1.15rem);
}

/* -------------------------------------------------------------------------- */
/* CUSTOM CHECKLIST */
/* -------------------------------------------------------------------------- */

.wp-block-list.checklist {
	padding: 0;
	margin: 0;
	list-style-type: none;
}

.checklist li {
	background:
		url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjMUIxNDY0IiBkPSJNMjU2IDUxMkEyNTYgMjU2IDAgMSAwIDI1NiAwYTI1NiAyNTYgMCAxIDAgMCA1MTJ6TTM2OSAyMDlMMjQxIDMzN2MtOS40IDkuNC0yNC42IDkuNC0zMy45IDBsLTY0LTY0Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNDcgNDdMMzM1IDE3NWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjl6Ii8+PC9zdmc+);
	background-repeat: repeat;
	background-size: auto;
	font-size: 1rem;
	list-style-type: none;
	margin-bottom: 1rem;
	background-repeat: no-repeat;
	background-size: 1.5rem;
	padding-inline-start: 2rem;
}

/* -------------------------------------------------------------------------- */
/* TABLES */
/* -------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------- */
/* Quick fix */
/* -------------------------------------------------------------------------- */

/* .wp-block-table {
	.has-fixed-layout {
		table-layout: fixed;
		width: 100%;
		overflow-x: auto;
		min-width: 840px;

		@media (max-width: 840px) {
			border-block: 1px solid lightgrey;
		}
	}
} */

/* -------------------------------------------------------------------------- */
/* Base table styling (desktop)  */
/* -------------------------------------------------------------------------- */




.wp-block-table:not(.no-mobile) {
	container-type: inline-size;

	&.is-style-stripes tbody tr:nth-child(2n+1) {
		background-color: #fff;
	}

	&.is-style-stripes tbody tr:nth-child(2n) {
		background-color: #efefef;
	}

	table[role="table"] {
		width: 100%;
		border-collapse: collapse;
	}

	thead[role="rowgroup"] tr[role="row"] {
		background-color: #f3f3f3;
	}

	th[role="columnheader"],
	td[role="cell"] {
		padding: 0.5rem;
	}




	/* -------------------------------------------------------------------------- */
	/*  Mobile layout @ <=600px:
	/*  Turn each row into a stacked "card".
	/* -------------------------------------------------------------------------- */
	@container (max-width: 600px) {

		table[role="table"] {
			border: 1px solid #ccc;
		}

		table[role="table"],
		thead[role="rowgroup"],
		tbody[role="rowgroup"],
		tr[role="row"],
		th[role="columnheader"],
		td[role="cell"] {
			display: block;
		}

		thead[role="rowgroup"] {
			/* Hide table headers (we'll rely on data-label) */
			position: absolute;
			width: 0;
			height: 0;
			overflow: clip;
			clip: rect(0, 0, 0, 0);
		}

		tr[role="row"] {
			padding: 0.5rem;
		}

		th[role="columnheader"],
		td[role="cell"] {
			&:not(:last-of-type) {
				border-bottom: 1px solid #ccc;
			}
		}

		td[role="cell"] {
			/* Show the column-header text via data-label in a pseudo-element */
			position: relative;
			margin-bottom: 0.5rem;
		}

		td[role="cell"]::before {
			content: attr(data-label);
			position: relative;
			font-weight: bold;
			color: #666;
			display: block;
		}
	}
}