/**
 * Media and text — structure only. Gaps, pad, and radius are hub tokens.
 */

[data-section="media_text"] .tw-media-text,
[data-section="media_text"] .tw-media-text__copy,
[data-section="media_text"] .tw-media-text__media,
[data-section="media_text"] .tw-media-text__copy-inner {
	min-width: 0;
}

[data-section="media_text"] .tw-media-text {
	display: grid;
}

[data-section="media_text"] .tw-media-text__copy,
[data-section="media_text"] .tw-media-text__copy-inner,
[data-section="media_text"] .tw-section-intro {
	display: flex;
	flex-direction: column;
}

[data-section="media_text"] .tw-media-text__copy,
[data-section="media_text"] .tw-media-text__media,
[data-section="media_text"] .tw-media-text__overlap-card,
[data-section="media_text"] .tw-media-text__card-shell {
	position: relative;
}

[data-section="media_text"] .tw-media-text__frame,
[data-section="media_text"] .tw-media-text__shot,
[data-section="media_text"] .tw-media-text__card-shell,
[data-section="media_text"] .tw-media-text__overlap-card {
	overflow: hidden;
}

[data-section="media_text"] [data-tw-radius="theme"] .tw-media-text__frame,
[data-section="media_text"] [data-tw-radius="theme"] .tw-media-text__shot {
	border-radius: var(--tw-radius-card);
}

[data-section="media_text"] [data-tw-radius="none"] .tw-media-text__frame,
[data-section="media_text"] [data-tw-radius="none"] .tw-media-text__shot,
[data-section="media_text"] [data-tw-radius="none"] .tw-media-text__card-shell,
[data-section="media_text"] [data-tw-radius="none"] .tw-media-text__overlap-card {
	border-radius: 0;
}

[data-section="media_text"] .tw-media-text__frame img,
[data-section="media_text"] .tw-media-text__shot img,
[data-section="media_text"] .tw-media-text__frame video,
[data-section="media_text"] .tw-media-text__video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

[data-section="media_text"] [data-tw-fit="contain"] img,
[data-section="media_text"] [data-tw-fit="contain"] video {
	object-fit: contain;
}

[data-section="media_text"] [data-tw-zone-pad="sm"] .tw-media-text__frame,
[data-section="media_text"] [data-tw-zone-pad="sm"] .tw-media-text__gallery {
	padding: var(--tw-content-gap, 1rem);
}

[data-section="media_text"] [data-tw-zone-pad="lg"] .tw-media-text__frame,
[data-section="media_text"] [data-tw-zone-pad="lg"] .tw-media-text__gallery {
	padding: var(--tw-card-padding, 1.5rem);
}

[data-section="media_text"] [data-tw-aspect="1_1"] .tw-media-text__frame { aspect-ratio: 1 / 1; }
[data-section="media_text"] [data-tw-aspect="4_5"] .tw-media-text__frame { aspect-ratio: 4 / 5; }
[data-section="media_text"] [data-tw-aspect="4_3"] .tw-media-text__frame { aspect-ratio: 4 / 3; }
[data-section="media_text"] [data-tw-aspect="16_9"] .tw-media-text__frame { aspect-ratio: 16 / 9; }
[data-section="media_text"] [data-tw-aspect="3_4"] .tw-media-text__frame { aspect-ratio: 3 / 4; }

[data-section="media_text"] [data-tw-aspect="auto"] .tw-media-text__frame {
	aspect-ratio: 4 / 3;
}

[data-section="media_text"] .tw-media-text__point {
	display: flex;
	align-items: flex-start;
}

[data-section="media_text"] .tw-media-text__point svg {
	width: var(--tw-button-icon-size, 1.125rem);
	height: var(--tw-button-icon-size, 1.125rem);
	flex: 0 0 auto;
}

[data-section="media_text"] .tw-media-text__point > span:last-child {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

[data-section="media_text"] .tw-media-text__pairs .tw-media-text__point {
	justify-content: space-between;
	border-block-end: 1px solid var(--tw-color-border);
}

[data-section="media_text"] .tw-media-text__stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

[data-section="media_text"] .tw-media-text__stat + .tw-media-text__stat {
	border-inline-start: 1px solid var(--tw-color-border);
}

[data-section="media_text"] .tw-media-text__link {
	text-underline-offset: 0.2em;
}

[data-section="media_text"] .tw-media-text__gallery[data-tw-gallery="mosaic"] {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	grid-template-rows: 1fr 1fr;
	min-height: 18rem;
}

[data-section="media_text"] .tw-media-text__gallery[data-tw-gallery="mosaic"] > :first-child {
	grid-row: span 2;
}

[data-section="media_text"] .tw-media-text__gallery[data-tw-gallery="grid"] {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

[data-section="media_text"] .tw-media-text__gallery[data-tw-gallery="stack"] {
	display: flex;
	flex-direction: column;
}

[data-section="media_text"] .tw-media-text__gallery[data-tw-gallery="stack"] .tw-media-text__shot:nth-child(odd) {
	aspect-ratio: 16 / 10;
}

[data-section="media_text"] .tw-media-text__gallery[data-tw-gallery="stack"] .tw-media-text__shot:nth-child(even) {
	aspect-ratio: 4 / 5;
	width: 60%;
	margin-inline-start: auto;
}

[data-section="media_text"] .tw-media-text__frame figure,
[data-section="media_text"] .tw-media-text__shot {
	height: 100%;
	margin: 0;
}

[data-section="media_text"] [data-tw-carousel-place="on_media"] .tw-carousel {
	position: relative;
}

[data-section="media_text"] [data-tw-carousel-place="on_media"] .tw-carousel__arrows,
[data-section="media_text"] [data-tw-carousel-place="on_media"] .tw-carousel__pagination {
	position: absolute;
	z-index: 2;
	inset-inline: var(--tw-content-gap, 1rem);
	inset-block-end: var(--tw-content-gap, 1rem);
}

[data-section="media_text"] .tw-media-text__caption {
	position: absolute;
	z-index: 2;
	inset-inline-start: var(--tw-content-gap, 1rem);
	inset-block-end: var(--tw-content-gap, 1rem);
}

[data-section="media_text"] .tw-media-text__arch-wrap {
	position: relative;
	max-width: 24rem;
	margin-inline: auto;
}

[data-section="media_text"] .tw-media-text__offset {
	position: absolute;
	z-index: 0;
	inset-inline-start: var(--tw-content-gap, 1rem);
	inset-block-start: var(--tw-content-gap, 1rem);
	inset-inline-end: calc(var(--tw-content-gap, 1rem) * -1);
	inset-block-end: calc(var(--tw-content-gap, 1rem) * -1);
	background: var(--tw-color-brand-accent);
	border-start-start-radius: 999px;
	border-start-end-radius: 999px;
}

[data-section="media_text"] .tw-media-text__frame[data-tw-frame="frame"] {
	position: relative;
	z-index: 1;
	aspect-ratio: 4 / 5;
}

[data-section="media_text"][data-style="card"] .tw-media-text__card-shell {
	display: block;
}

[data-section="media_text"][data-style="bleed"] > .tw-container,
[data-section="media_text"][data-style="bleed"] .tw-container {
	max-width: none;
	width: 100%;
	padding-inline: 0;
}

[data-section="media_text"][data-style="bleed"] .tw-media-text__frame {
	border-radius: 0;
}

[data-section="media_text"][data-style="bleed"] {
	position: relative;
	--tw-bleed-pad: var(--tw-section-padding-y, 0px);
}

[data-section="media_text"][data-style="bleed"][data-section-density="compact"] {
	--tw-bleed-pad: var(--tw-section-padding-compact, 0px);
}

[data-section="media_text"][data-style="bleed"][data-section-density="roomy"] {
	--tw-bleed-pad: var(--tw-section-padding-roomy, 0px);
}

[data-section="media_text"][data-style="bleed"] .tw-media-text__copy > .tw-section-bg {
	z-index: 0;
}

[data-section="media_text"][data-style="overlap"] .tw-media-text {
	gap: 0;
}

[data-section="media_text"][data-style="overlap"] .tw-media-text__media {
	z-index: 0;
}

[data-section="media_text"][data-style="overlap"] .tw-media-text__overlap-card {
	z-index: 2;
}

[data-section="media_text"][data-style="panel"] {
	position: relative;
}

[data-section="media_text"][data-style="panel"] .tw-container {
	position: static;
}

@media (min-width: 768px) and (max-width: 1023.98px) {
	[data-section="media_text"] [data-tw-aspect="auto"] .tw-media-text__frame {
		aspect-ratio: 16 / 9;
	}
}

@media (max-width: 1023.98px) {
	[data-section="media_text"] [data-tw-stack="above"] .tw-media-text__media {
		order: -1;
	}

	[data-section="media_text"][data-style="overlap"] .tw-media-text[data-tw-stack="above"] > .tw-media-text__overlap-card,
	[data-section="media_text"][data-style="panel"] .tw-media-text[data-tw-stack="above"] > .tw-media-text__copy {
		margin-block-start: calc(var(--tw-content-gap, 1rem) * -3);
		position: relative;
		z-index: 1;
	}

	[data-section="media_text"][data-style="panel"] .tw-media-text__slab {
		display: none;
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text__copy {
		padding-inline: var(--tw-container-padding-x, 1.5rem);
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text[data-tw-stack="above"] .tw-media-text__copy > .tw-section-bg {
		top: 0;
		bottom: calc(var(--tw-bleed-pad) * -1);
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text[data-tw-stack="below"] .tw-media-text__copy > .tw-section-bg {
		top: calc(var(--tw-bleed-pad) * -1);
		bottom: 0;
	}
}

@media (min-width: 1024px) {
	[data-section="media_text"] .tw-media-text {
		grid-template-columns: 1fr 1fr;
		align-items: center;
	}

	[data-section="media_text"] [data-tw-media-side="start"] .tw-media-text__media {
		order: -1;
	}

	[data-section="media_text"] [data-tw-valign="start"] .tw-media-text {
		align-items: start;
	}

	[data-section="media_text"] [data-tw-valign="end"] .tw-media-text {
		align-items: end;
	}

	[data-section="media_text"] [data-tw-valign="between"] .tw-media-text {
		align-items: stretch;
	}

	[data-section="media_text"] [data-tw-valign="between"] .tw-media-text__copy-inner {
		height: 100%;
		justify-content: space-between;
	}

	[data-section="media_text"][data-style="split"] [data-tw-split-ratio="5_7"][data-tw-media-side="end"] {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	}

	[data-section="media_text"][data-style="split"] [data-tw-split-ratio="5_7"][data-tw-media-side="start"] {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}

	[data-section="media_text"][data-style="split"] [data-tw-split-ratio="7_5"][data-tw-media-side="end"] {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}

	[data-section="media_text"][data-style="split"] [data-tw-split-ratio="7_5"][data-tw-media-side="start"] {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	}

	[data-section="media_text"] [data-tw-aspect="auto"] .tw-media-text__frame {
		aspect-ratio: auto;
		min-height: 20rem;
		height: 100%;
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text {
		min-height: 36rem;
		align-items: stretch;
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text__media,
	[data-section="media_text"][data-style="bleed"] .tw-media-text__media-inner,
	[data-section="media_text"][data-style="bleed"] .tw-media-text__frame {
		height: 100%;
		min-height: 100%;
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text__frame {
		border-radius: 0;
		aspect-ratio: auto;
		height: 100%;
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text__copy > .tw-section-bg {
		top: calc(var(--tw-bleed-pad) * -1);
		bottom: calc(var(--tw-bleed-pad) * -1);
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text[data-tw-media-side="end"] .tw-media-text__copy {
		padding-inline-start: max(var(--tw-container-padding-x, 1.5rem), calc((100vw - min(100vw, var(--tw-container-max-width, 80rem))) / 2));
		padding-inline-end: var(--tw-container-padding-x, 1.5rem);
	}

	[data-section="media_text"][data-style="bleed"] .tw-media-text[data-tw-media-side="start"] .tw-media-text__copy {
		padding-inline-end: max(var(--tw-container-padding-x, 1.5rem), calc((100vw - min(100vw, var(--tw-container-max-width, 80rem))) / 2));
		padding-inline-start: var(--tw-container-padding-x, 1.5rem);
	}

	[data-section="media_text"][data-style="overlap"] .tw-media-text {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		align-items: center;
	}

	[data-section="media_text"][data-style="overlap"] .tw-media-text[data-tw-media-side="end"] > .tw-media-text__overlap-card {
		grid-column: 1 / span 5;
		grid-row: 1;
	}

	[data-section="media_text"][data-style="overlap"] .tw-media-text[data-tw-media-side="end"] > .tw-media-text__media {
		grid-column: 4 / span 9;
		grid-row: 1;
	}

	[data-section="media_text"][data-style="overlap"] .tw-media-text[data-tw-media-side="start"] > .tw-media-text__media {
		grid-column: 1 / span 9;
		grid-row: 1;
		order: 0;
	}

	[data-section="media_text"][data-style="overlap"] .tw-media-text[data-tw-media-side="start"] > .tw-media-text__overlap-card {
		grid-column: 8 / span 5;
		grid-row: 1;
	}

	[data-section="media_text"][data-style="sticky"] .tw-media-text {
		align-items: start;
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	}

	[data-section="media_text"][data-style="sticky"] .tw-media-text[data-tw-media-side="start"] {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}

	[data-section="media_text"][data-style="sticky"] .tw-media-text__copy {
		position: sticky;
		top: calc(var(--tw-content-gap, 1rem) * 3);
		align-self: start;
	}

	[data-section="media_text"][data-style="panel"] .tw-media-text {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
		align-items: center;
	}

	[data-section="media_text"][data-style="panel"] .tw-media-text[data-tw-media-side="start"] {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}

	[data-section="media_text"][data-style="panel"] .tw-media-text__copy > .tw-section-bg {
		display: none;
	}

	[data-section="media_text"][data-style="panel"] .tw-media-text__slab {
		position: absolute;
		z-index: 0;
		inset-block: calc(var(--tw-content-gap, 1rem) * 3);
		inset-inline-start: 0;
		width: calc(50vw + (var(--tw-content-gap, 1rem) * 8));
		overflow: hidden;
		border-start-end-radius: var(--tw-radius-card);
		border-end-end-radius: var(--tw-radius-card);
	}

	[data-section="media_text"][data-style="panel"]:has(.tw-media-text[data-tw-media-side="start"]) .tw-media-text__slab {
		inset-inline-start: auto;
		inset-inline-end: 0;
		border-start-end-radius: 0;
		border-end-end-radius: 0;
		border-start-start-radius: var(--tw-radius-card);
		border-end-start-radius: var(--tw-radius-card);
	}

	[data-section="media_text"][data-style="panel"] .tw-media-text,
	[data-section="media_text"][data-style="panel"] .tw-media-text__media {
		position: relative;
		z-index: 1;
	}
}
