/*
 * cards/portes — transposition de `.lp-portes` et `.lp-porte` (maquette Les Jolies Clés, archive des secteurs) : portes côte à
 * côte sur fond brun, photo plein cadre sous un voile, texte en bas ; au survol (pointeur fin) la porte visée s'élargit.
 * Sous 900 px : une porte par ligne, 68svh. Engagement 5 : aucun hexadécimal, valeurs de repli comprises.
 */
.ivy-cards--portes { display: flex; min-block-size: min( 86svh, 780px ); background: var( --ivy-section-background-color, var( --ivy-deep, rgb( 37 29 23 ) ) ); }
.ivy-cards--portes .ivy-cards__door { position: relative; flex: 1 1 0; min-inline-size: 0; overflow: hidden; transition: flex-grow 600ms cubic-bezier( .2, .7, .2, 1 ); }
.ivy-cards--portes .ivy-cards__door-link { position: relative; display: flex; align-items: flex-end; block-size: 100%; min-block-size: inherit; color: var( --ivy-on-deep, rgb( 251 248 242 ) ); text-decoration: none; }
.ivy-cards--portes .ivy-cards__door-photo { position: absolute; inset: 0; display: block; transition: transform 900ms cubic-bezier( .2, .7, .2, 1 ); }
.ivy-cards--portes .ivy-cards__door-photo img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; object-position: var( --ivy-portes-focus, 50% 50% ); }
.ivy-cards--portes .ivy-cards__veil { position: absolute; inset: 0; background: linear-gradient( 0deg, rgb( 37 29 23 / 90% ) 0%, rgb( 37 29 23 / 62% ) 42%, rgb( 37 29 23 / 12% ) 100% ); }
.ivy-cards--portes .ivy-cards__door-body { position: relative; display: grid; gap: 16px; justify-items: start; padding: clamp( 28px, 4vw, 64px ); }
.ivy-cards--portes .ivy-cards__person { display: flex; align-items: center; gap: 14px; line-height: 1.35; color: var( --ivy-item_person-color, inherit ); }
.ivy-cards--portes .ivy-cards__face { inline-size: 56px; block-size: 56px; border: 2px solid var( --ivy-accent, rgb( 184 151 90 ) ); border-radius: 50%; object-fit: cover; object-position: 50% 20%; }
.ivy-cards--portes .ivy-cards__person strong { display: block; font-weight: 600; }
.ivy-cards--portes .ivy-cards__role { display: block; font-size: var( --ivy-font-label ); letter-spacing: .06em; color: rgb( 249 246 241 / 82% ); }
.ivy-cards--portes .ivy-cards__door-title { margin: 0; line-height: 1.08; color: var( --ivy-item_title-color, var( --ivy-on-deep, rgb( 251 248 242 ) ) ); }
.ivy-cards--portes .ivy-cards__door-text { max-inline-size: 460px; line-height: 1.55; color: var( --ivy-item_text-color, rgb( 249 246 241 / 92% ) ); }
.ivy-cards--portes .ivy-cards__door-cta { padding-bottom: 4px; border-bottom: 1px solid var( --ivy-accent, rgb( 184 151 90 ) ); font-size: var( --ivy-font-label ); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var( --ivy-item_cta-color, inherit ); }
.ivy-cards--portes .ivy-cards__door-link:focus-visible { outline: 2px solid var( --ivy-gold-light, rgb( 230 214 168 ) ); outline-offset: -6px; }
@media ( hover: hover ) and ( pointer: fine ) {
	.ivy-cards--portes:has( .ivy-cards__door:hover ) .ivy-cards__door:not( :hover ) { flex-grow: .7; }
	.ivy-cards--portes .ivy-cards__door:hover { flex-grow: 1.45; }
	.ivy-cards--portes .ivy-cards__door:hover .ivy-cards__door-photo { transform: scale( 1.04 ); }
}
@media ( max-width: 899px ) {
	.ivy-cards--portes { flex-direction: column; min-block-size: 0; }
	.ivy-cards--portes .ivy-cards__door,
	.ivy-cards--portes .ivy-cards__door-link { min-block-size: 68svh; }
}
@media ( prefers-reduced-motion: reduce ) { .ivy-cards--portes .ivy-cards__door, .ivy-cards--portes .ivy-cards__door-photo { transition: none; } }
