/* Native Core gallery/shortcode integration boundary. Core's ID-specific
 * column/crop rules and authored dimensions must not resize individual slides.
 * These scoped important layout declarations do not change any source image. */
.nxs-gallery[data-nxs-gallery] {
	--nxs-gallery-bg: var(--mth-brand, #e9f8f3);
	--nxs-gallery-text: var(--mth-ink, #10231b);
	container-type: inline-size;
	display: block !important;
	box-sizing: border-box;
	width: 100% !important;
	max-width: 54rem !important;
	min-width: 0;
	padding: clamp(.5rem, 1.4vw, 1rem) !important;
	border: 1px solid var(--mth-line, #087a67);
	border-radius: 1rem;
	color: var(--nxs-gallery-text);
	background: var(--nxs-gallery-bg);
	box-shadow: none;
	float: none;
}
.nxs-gallery[data-nxs-gallery] > .nxs-gallery__track {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: stretch;
	gap: 0 !important;
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	border: 0;
	border-radius: .65rem;
	list-style: none;
	overflow-x: auto;
	overflow-y: hidden;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	scrollbar-color: var(--mth-accent) var(--nxs-gallery-bg);
}
.nxs-gallery[data-nxs-gallery] > .nxs-gallery__track::-webkit-scrollbar { display: none; }
.nxs-gallery[data-nxs-gallery] > .nxs-gallery__track > .nxs-gallery__slide {
	position: relative;
	display: block !important;
	flex: 0 0 100% !important;
	align-self: stretch !important;
	min-width: 0;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0;
	background: transparent;
	box-shadow: none;
	scroll-snap-align: start;
	scroll-snap-stop: always;
}
.nxs-gallery[data-nxs-gallery] .nxs-gallery__slide :is(figure, .gallery-icon, picture, a:has(img)) {
	display: block !important;
	position: relative;
	flex: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0;
}
.nxs-gallery[data-nxs-gallery] .nxs-gallery__slide img {
	display: block !important;
	flex: none !important;
	width: auto !important;
	max-width: 100% !important;
	height: clamp(10rem, 48vw, 24rem) !important;
	height: clamp(10rem, 48cqi, 24rem) !important;
	max-height: none !important;
	margin: 0 auto !important;
	border-radius: .6rem;
	object-fit: contain !important;
	object-position: center;
}
.nxs-gallery[data-nxs-gallery] .nxs-gallery__slide:before,
.nxs-gallery[data-nxs-gallery] .nxs-gallery__slide figure:before { content: none !important; }
.nxs-gallery[data-nxs-gallery] :is(figcaption, .gallery-caption) {
	position: static !important;
	flex: none;
	width: auto;
	max-height: 8rem !important;
	margin: 0 !important;
	padding: .75rem .5rem !important;
	color: var(--nxs-gallery-text) !important;
	background: transparent !important;
	font: inherit;
	font-size: .875rem;
	line-height: 1.55;
	text-align: center;
	text-shadow: none;
	overflow: auto;
	overflow-wrap: anywhere;
}
.nxs-gallery[data-nxs-gallery] > .nxs-gallery__bar {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) 44px;
	align-items: center;
	gap: .75rem;
	min-height: 56px;
	padding-top: .75rem;
}
.nxs-gallery__status { grid-column: 2; grid-row: 1; text-align: center; font: 600 .875rem/1.5 system-ui, sans-serif; font-variant-numeric: tabular-nums; }
.nxs-gallery__hint { font-weight: 400; }
.nxs-gallery[data-nxs-gallery-ready] .nxs-gallery__hint { display: none; }
.nxs-gallery[data-nxs-gallery] .nxs-gallery__button {
	display: grid;
	place-items: center;
	grid-row: 1;
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
	margin: 0;
	padding: 0;
	border: 1px solid currentColor;
	border-radius: 50%;
	color: var(--nxs-gallery-text);
	background: var(--nxs-gallery-bg);
	font: 400 1.5rem/1 system-ui, sans-serif;
	box-shadow: none;
	text-shadow: none;
	cursor: pointer;
}
.nxs-gallery__button[data-nxs-gallery-prev] { grid-column: 1; }
.nxs-gallery__button[data-nxs-gallery-next] { grid-column: 3; }
.nxs-gallery[data-nxs-gallery] .nxs-gallery__button:hover:not(:disabled) { color: var(--nxs-gallery-bg); background: var(--nxs-gallery-text); }
.nxs-gallery[data-nxs-gallery] .nxs-gallery__button:disabled { color: color-mix(in srgb, var(--nxs-gallery-text) 45%, var(--nxs-gallery-bg)); cursor: default; border-style: dashed; }
.nxs-gallery[data-nxs-gallery] :is(.nxs-gallery__button, .nxs-gallery__track):focus-visible { outline: 3px solid var(--nxs-gallery-text); outline-offset: 3px; }
.nxs-gallery[data-nxs-gallery] [hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) {
	.nxs-gallery__track { scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
	.nxs-gallery[data-nxs-gallery] { --nxs-gallery-bg: Canvas; --nxs-gallery-text: CanvasText; border-color: CanvasText; }
	.nxs-gallery[data-nxs-gallery] .nxs-gallery__button:disabled { color: GrayText; }
}
