/*
 * cta/barre — transposition de `.lp-barre` (maquette Les Jolies Clés) : barre fixe brune en bas d'écran, texte et bouton
 * centrés. Cachée par transform, révélée par la classe que le runtime bascule (`data-ivy-stick`). Sous 600 px, le
 * bouton occupe toute la largeur et le texte disparaît. Engagement 5 : aucun hexadécimal, replis compris.
 */
.ivy-cta--barre { position: fixed; inset: auto 0 0; z-index: 30; display: flex; align-items: center; justify-content: center; gap: 24px; box-sizing: border-box; padding: 12px max( clamp( 20px, 5vw, 64px ), calc( ( 100% - 1240px ) / 2 ) ); background: var( --ivy-section-background-color, var( --ivy-deep, rgb( 37 29 23 ) ) ); transform: translateY( 105% ); transition: transform 350ms cubic-bezier( .2, .7, .2, 1 ); }
.ivy-cta--barre.ivy-stuck { transform: none; }
.ivy-cta--barre.ivy-stuck.ivy-avoid { transform: translateY( 105% ); }
.ivy-cta--barre .ivy-cta__mention p { margin: 0; }
.ivy-cta--barre .ivy-cta__mention { color: var( --ivy-text-color, rgb( 249 246 241 / 90% ) ); }
:where( .ivy-cta--barre ) .ivy-cta__button { color: var( --ivy-cta-color, var( --ivy-on-accent, rgb( 37 29 23 ) ) ); background: var( --ivy-cta-background-color, var( --ivy-accent, rgb( 184 151 90 ) ) ); border: 1px solid var( --ivy-cta-border-color, var( --ivy-accent, rgb( 184 151 90 ) ) ); display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-block-size: 44px; padding-block: 10px; text-align: center; text-decoration: none; }
:where( .ivy-cta--barre ) .ivy-cta__button:focus-visible { outline: 2px solid currentcolor; outline-offset: 3px; }
@media ( max-width: 599px ) {
	.ivy-cta--barre .ivy-cta__mention { display: none; }
	.ivy-cta--barre .ivy-cta__button { inline-size: 100%; }
}
@media ( prefers-reduced-motion: reduce ) { .ivy-cta--barre { transition: none; } }
