/*
 * intro/texte-photo — transposition de `.duo` (maquette Astro ADJ) : deux colonnes egales,
 * la photo prend la hauteur du texte. Une liste du corps devient une liste a coches.
 * Engagement 5 : aucun hexadecimal.
 */
.ivy-intro--texte-photo {
	--ivy-page-gutter: clamp( 20px, 5vw, 64px );
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp( 32px, 5vw, 72px );
	align-items: stretch;
	padding: clamp( 80px, 9vw, 120px ) max( var( --ivy-page-gutter ), calc( ( 100% - 1280px ) / 2 ) );
}
.ivy-intro--texte-photo.ivy-intro--sans-photo { grid-template-columns: 1fr; }
.ivy-intro--texte-photo.ivy-intro--media-left .ivy-intro__media { order: -1; }

.ivy-intro--texte-photo .ivy-intro__content { display: flex; flex-direction: column; justify-content: center; gap: 18px; }
.ivy-intro--texte-photo .ivy-intro__eyebrow {
	display: block;
	margin-bottom: 14px;
	color: var( --ivy-eyebrow-color, var( --ivy-accent-text, var( --ivy-accent, currentcolor ) ) );
	font-size: var( --ivy-font-label );
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.ivy-intro--texte-photo .ivy-intro__title { margin: 0; color: var( --ivy-title-color, var( --ivy-accent, currentcolor ) ); font-family: var( --ivy-font-titre, inherit ); font-weight: 400; line-height: 1.12; }
.ivy-intro--texte-photo .ivy-intro__text { color: var( --ivy-text-color, var( --ivy-ink, currentcolor ) ); }
.ivy-intro--texte-photo .ivy-intro__text > * { margin: 0 0 18px; }
.ivy-intro--texte-photo .ivy-intro__text > :last-child { margin-bottom: 0; }
.ivy-intro--texte-photo .ivy-intro__text p { font-size: inherit; }

.ivy-intro--texte-photo .ivy-intro__text ul { display: grid; gap: 10px; padding: 0; list-style: none; }
.ivy-intro--texte-photo .ivy-intro__text li { color: var( --ivy-text_list-color, inherit ); display: grid; grid-template-columns: 20px 1fr; gap: 10px; margin: 0; line-height: 1.6; }
.ivy-intro--texte-photo .ivy-intro__text li::before {
	content: '';
	width: 14px;
	height: 8px;
	margin-top: 7px;
	border-bottom: 1.5px solid var( --ivy-support, currentcolor );
	border-left: 1.5px solid var( --ivy-support, currentcolor );
	transform: rotate( -45deg );
}

.ivy-intro--texte-photo .ivy-intro__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 26px; }
.ivy-intro--texte-photo .ivy-intro__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px 24px;
	border-radius: var( --ivy-radius-action, 999px );
	background: var( --ivy-cta-background-color, var( --ivy-accent, currentcolor ) );
	color: var( --ivy-cta-color, var( --ivy-on-accent, rgb( 255 255 255 ) ) );
	font-size: var( --ivy-font-body );
	font-weight: 500;
	line-height: 1.6;
	text-decoration: none;
}
.ivy-intro--texte-photo .ivy-intro__cta--secondary { min-height: 44px; padding: 0; background: linear-gradient( var( --ivy-support, currentcolor ), var( --ivy-support, currentcolor ) ) left calc( 100% - 9px ) / 100% 1px no-repeat; color: var( --ivy-cta_secondary-color, var( --ivy-accent, currentcolor ) ); }
.ivy-intro--texte-photo .ivy-intro__cta:focus-visible { outline: 2px solid currentcolor; outline-offset: 3px; }

.ivy-intro--texte-photo .ivy-intro__media { min-height: 360px; overflow: hidden; border-radius: calc( var( --ivy-radius-surface, 22px ) * 10 / 11 ); }
.ivy-intro--texte-photo .ivy-intro__image { display: block; width: 100%; height: 100%; object-fit: cover; }

@media ( max-width: 960px ) {
	.ivy-intro--texte-photo { grid-template-columns: 1fr; }
	.ivy-intro--texte-photo .ivy-intro__media { min-height: 260px; }
}
