/*
 * pricing/trois-formules — transposition de `.intendance` et `.carte-formule` (maquette
 * Astro ADJ). La formule mise en avant prend un filet plus epais et un repere.
 * Engagement 5 : aucun hexadecimal.
 */
.ivy-pricing--trois-formules {
	--ivy-page-gutter: clamp( 20px, 5vw, 64px );
	box-sizing: border-box;
	padding: clamp( 80px, 9vw, 120px ) max( var( --ivy-page-gutter ), calc( ( 100% - 1280px ) / 2 ) );
}

.ivy-pricing--trois-formules .ivy-pricing__header { display: grid; grid-template-columns: 1.1fr .9fr; gap: 48px; align-items: end; margin-bottom: 40px; }
.ivy-pricing--trois-formules .ivy-pricing__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-pricing--trois-formules .ivy-pricing__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; }
/* Le texte de l'en-tete se cale en bas, comme le titre : le socle l'etire (`__text`), la maquette l'aligne en bas. */
.ivy-pricing--trois-formules .ivy-pricing__header > .ivy-pricing__text { align-self: end; }
.ivy-pricing--trois-formules .ivy-pricing__text { color: var( --ivy-text-color, var( --ivy-ink, currentcolor ) ); }
.ivy-pricing--trois-formules .ivy-pricing__text p { margin: 0; font-size: inherit; }

.ivy-pricing--trois-formules .ivy-pricing__plans { display: grid; grid-template-columns: repeat( 3, 1fr ); gap: 48px; }
.ivy-pricing--trois-formules .ivy-pricing__plan { position: relative; display: flex; flex-direction: column; gap: 18px; padding: 32px 0 0; border-top: 1px solid var( --ivy-line, currentcolor ); }
.ivy-pricing--trois-formules .ivy-pricing__plan.is-featured { border-top: 2px solid var( --ivy-support, currentcolor ); }

.ivy-pricing--trois-formules .ivy-pricing__badge {
	position: absolute;
	top: 30px;
	right: 0;
	padding: 2px 12px;
	border-radius: var( --ivy-radius-action, 999px );
	background: var( --ivy-plan_badge-background-color, var( --ivy-accent-on-deep, currentcolor ) );
	color: var( --ivy-plan_badge-color, var( --ivy-accent, currentcolor ) );
	font-size: var( --ivy-font-label );
	font-weight: 600;
	line-height: 1.6;
}

.ivy-pricing--trois-formules .ivy-pricing__plan-title { margin: 0; color: var( --ivy-plan_title-color, var( --ivy-accent, currentcolor ) ); font-family: var( --ivy-font-titre, inherit ); font-weight: 400; line-height: 1.2; }
.ivy-pricing--trois-formules .ivy-pricing__price { display: flex; align-items: baseline; gap: 8px; padding-bottom: 18px; border-bottom: 1px solid var( --ivy-line, currentcolor ); }
.ivy-pricing--trois-formules .ivy-pricing__value {
	color: var( --ivy-plan_value-color, var( --ivy-support, currentcolor ) );
	font-family: var( --ivy-font-titre, inherit );
	font-size: var( --ivy-font-h2 );
	font-weight: 400;
	line-height: 1;
	word-spacing: -.18em;
	-webkit-text-stroke: var( --ivy-title-stroke, 0 ) currentcolor;
	paint-order: stroke fill;
}
.ivy-pricing--trois-formules .ivy-pricing__unit { color: var( --ivy-plan_unit-color, var( --ivy-muted, currentcolor ) ); font-size: var( --ivy-font-body ); line-height: 1.6; }
.ivy-pricing--trois-formules .ivy-pricing__rhythm { margin: 0; color: var( --ivy-plan_label-color, var( --ivy-accent, currentcolor ) ); font-weight: 600; }
.ivy-pricing--trois-formules .ivy-pricing__plan-text { margin: 0; color: var( --ivy-plan_text-color, inherit ); }

.ivy-pricing--trois-formules .ivy-pricing__includes { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.ivy-pricing--trois-formules .ivy-pricing__includes li { display: grid; grid-template-columns: 20px 1fr; gap: 10px; margin: 0; color: var( --ivy-plan_includes-color, inherit ); font-size: var( --ivy-font-body ); line-height: 1.6; }
.ivy-pricing--trois-formules .ivy-pricing__includes 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-pricing--trois-formules .ivy-pricing__plan-cta {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin-top: auto;
	padding: 12px 24px;
	border: 1px solid var( --ivy-plan_cta-color, var( --ivy-accent, currentcolor ) );
	border-radius: var( --ivy-radius-action, 999px );
	background: var( --ivy-plan_cta-background-color, transparent );
	color: var( --ivy-plan_cta-color, var( --ivy-accent, currentcolor ) );
	font-size: var( --ivy-font-body );
	font-weight: 500;
	line-height: 1.6;
	text-decoration: none;
	transition: background-color 200ms ease, color 200ms ease, transform 200ms cubic-bezier( .22, 1, .36, 1 );
}
.ivy-pricing--trois-formules .ivy-pricing__plan-cta:hover { background: var( --ivy-accent, currentcolor ); color: var( --ivy-on-accent, rgb( 255 255 255 ) ); }
.ivy-pricing--trois-formules .ivy-pricing__plan-cta:active { transform: scale( .98 ); }
.ivy-pricing--trois-formules .ivy-pricing__plan-cta:focus-visible { outline: 2px solid currentcolor; outline-offset: 3px; }

@media ( max-width: 960px ) {
	.ivy-pricing--trois-formules .ivy-pricing__header { grid-template-columns: 1fr; gap: 16px; }
	.ivy-pricing--trois-formules .ivy-pricing__plans { grid-template-columns: 1fr; }
}
