.ivy-intro--fendue {
	padding: clamp( 72px, 11vw, 160px ) clamp( 20px, 5vw, 72px );
}

.ivy-intro--fendue .ivy-intro__inner {
	display: grid;
	--ivy-gap: clamp( 40px, 9vw, 152px );
	column-gap: var( --ivy-gap );
	row-gap: var( --ivy-row-gap, clamp( 40px, 9vw, 152px ) );
	grid-template-columns:
		minmax( 0, calc( ( 100% - var( --ivy-gap ) ) * var( --ivy-columns, 53.93 ) / 100 ) )
		minmax( 0, 1fr );
	max-width: 1280px;
	margin-inline: auto;
}

.ivy-intro--fendue .ivy-intro__eyebrow {
	display: block;
	margin-bottom: 18px;
	color: var( --ivy-eyebrow-color, var( --ivy-muted, rgb( 82 82 82 ) ) );
	font-size: var( --ivy-font-label );
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.ivy-intro--fendue .ivy-intro__media {
	align-self: start;
	margin: 0;
	border-radius: var( --ivy-media-border-radius, 2px );
}

.ivy-intro--fendue .ivy-intro__media img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border-radius: inherit;
}

.ivy-intro--fendue .ivy-intro__caption {
	display: block;
	margin-top: 12px;
	color: var( --ivy-caption-color, var( --ivy-muted, rgb( 82 82 82 ) ) );
	font-size: var( --ivy-font-body );
	line-height: 1.45;
}

.ivy-intro--fendue .ivy-intro__content {
	align-self: center;
	padding-block: clamp( 12px, 4vw, 72px );
}

.ivy-intro--fendue .ivy-intro__title {
	margin: 0;
	color: var( --ivy-title-color, var( --ivy-ink, rgb( 17 17 17 ) ) );
	line-height: 1.04;
}

.ivy-intro--fendue .ivy-intro__text {
	max-width: 53ch;
	margin: 28px 0 0;
	color: var( --ivy-text-color, var( --ivy-muted, rgb( 82 82 82 ) ) );
	font-size: var( --ivy-font-body );
	line-height: 1.7;
}

.ivy-intro--fendue .ivy-intro__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}

.ivy-intro--fendue .ivy-intro__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: .75em 1.5em;
	border-radius: var( --ivy-radius-action, 999px );
	background: var( --ivy-cta-background-color, var( --ivy-accent, rgb( 17 17 17 ) ) );
	color: var( --ivy-cta-color, var( --ivy-surface, rgb( 255 255 255 ) ) );
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: transform 180ms ease, opacity 180ms ease;
}

.ivy-intro--fendue .ivy-intro__cta--secondary {
	border: var( --ivy-cta_secondary-border-width, 1px ) solid var( --ivy-cta_secondary-border-color, var( --ivy-ink, rgb( 17 17 17 ) ) );
	background: var( --ivy-cta_secondary-background-color, transparent );
	color: var( --ivy-cta_secondary-color, var( --ivy-ink, rgb( 17 17 17 ) ) );
}

.ivy-intro--fendue .ivy-intro__cta:hover {
	transform: translateY( -2px );
}

.ivy-intro--fendue .ivy-intro__cta:focus-visible {
	outline: 3px solid currentcolor;
	outline-offset: 4px;
}

.ivy-intro--fendue.ivy-intro--media-right .ivy-intro__media { order: 1; }

@media ( max-width: 767px ) {
	.ivy-intro--fendue.ivy-intro--media-right .ivy-intro__media { order: 0; }
}

@media ( min-width: 1024px ) {
	.ivy-intro--fendue .ivy-intro__media {
		position: sticky;
		top: clamp( 24px, 8vh, 96px );
	}
}

@media ( max-width: 767px ) {
	.ivy-intro--fendue .ivy-intro__inner {
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.ivy-intro--fendue .ivy-intro__media img {
		aspect-ratio: 4 / 3;
	}

	.ivy-intro--fendue .ivy-intro__content {
		padding-block: 0;
	}
}

@media ( prefers-reduced-motion: reduce ) {
	.ivy-intro--fendue .ivy-intro__cta {
		transition: none;
	}
}
