
.bloc-contenu-alternance .alternance-inner {display: flex; flex-direction: column; gap: 8rem;}
.bloc-contenu-alternance .alternance-placeholder {text-align: center; color: #999; font-style: italic;}

/* scroll-margin : compense le header fixe lors d'un saut vers une ancre */
.bloc-contenu-alternance .alternance-item {display: flex; row-gap: 2.5rem; flex-direction: column; scroll-margin-top: 10rem;}


.bloc-contenu-alternance .alternance-image-wrap {height: 22rem; overflow: hidden; border-radius: 1rem;}
.bloc-contenu-alternance .alternance-image {width: 100%; height: 100%; object-fit: cover; border-radius: 1rem; display: block; transition: transform 500ms ease;}
.bloc-contenu-alternance .alternance-image--placeholder {background-color: #e0e0e0;}

.bloc-contenu-alternance .alternance-content {flex: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 1rem;}
.bloc-contenu-alternance .alternance-content .btn-cta {margin-top: 1.5rem;}
.bloc-contenu-alternance h2 {font-size: 2.5rem; line-height: 1.2; margin: 0; text-wrap: balance;}
.bloc-contenu-alternance .alternance-texte {font-size: 1.6rem; line-height: 1.8; margin: 0;}
.bloc-contenu-alternance .alternance-texte p {margin-bottom: 1.5rem; }
.bloc-contenu-alternance .alternance-texte p:last-child {margin-bottom: 0;}

.bloc-contenu-alternance .alternance-liens {flex-direction: column; row-gap: 1.5rem; margin-top: 2rem; width: 100%; max-width: 70rem;}
.bloc-contenu-alternance .alternance-lien {flex-direction: column; align-items: flex-start; gap: 1rem; width: 100%; border: .1rem solid rgba(0,0,0,.08); border-radius: var(--border-radius); padding: 1rem 2rem;}
.bloc-contenu-alternance .alternance-lien .alternance-lien-txt {align-items: baseline; column-gap: 1rem;}
.bloc-contenu-alternance .alternance-lien i {color: var(--couleur-principale);}
.bloc-contenu-alternance .alternance-lien .btn-cta {margin-top: 0; margin-left: auto; border-radius: 999px; font-size: 1.3rem; padding: .8rem 2rem; transition: box-shadow 350ms ease-in-out, color 200ms ease-in-out, background-color 450ms ease-in-out;}
.bloc-contenu-alternance .alternance-lien p {margin: 0;}
.bloc-contenu-alternance .alternance-lien p strong {text-transform: uppercase;}

.bloc-contenu-alternance .localisation {font-size: 1.4rem; color: var(--couleur-texte-light); margin: 0 0 1rem; text-transform: uppercase; margin-bottom: 0;}
.bloc-contenu-alternance .localisation  i {color: var(--couleur-cta); font-size: 1.1rem; margin-right: .6rem; }

@media (min-width: 768px) {
    .bloc-contenu-alternance .alternance-item {row-gap: 4rem;}
    .bloc-contenu-alternance h2 {font-size: 3.5rem;}
    .bloc-contenu-alternance .alternance-image-wrap {height: 32rem;}
    .bloc-contenu-alternance .alternance-lien {flex-direction: row; align-items: center;}
}

@media (min-width: 1025px) {
    .bloc-contenu-alternance .alternance-item {scroll-margin-top: 12rem;}
    .bloc-contenu-alternance .alternance-inner {row-gap: 12rem;}
    .bloc-contenu-alternance .alternance-content {gap: 1.5rem; justify-content: center;}
    .bloc-contenu-alternance .alternance-image-wrap {max-height: 90vh; flex: 0 0 50%; max-width: 50%; height: inherit;}
    .bloc-contenu-alternance.page-experiences .alternance-image-wrap {max-height: 50rem; aspect-ratio: 4 / 3; width: 40rem; height: auto;}
    .bloc-contenu-alternance .alternance-item {flex-direction: row; column-gap: 8rem;}
    .bloc-contenu-alternance .alternance-item.is-inverse {flex-direction: row-reverse;}
}

@media (min-width: 1400px) {
    .bloc-contenu-alternance .alternance-inner {row-gap: 15rem;}
    .bloc-contenu-alternance h2 {font-size: 4.5rem;}
    .bloc-contenu-alternance.page-experiences .alternance-image-wrap {width: 45rem;}
}

/* === SANS IMAGE : pleine largeur centrée === */
.bloc-contenu-alternance .alternance-item.no-image .alternance-image-wrap {display: none;}
.bloc-contenu-alternance .alternance-item.no-image .alternance-content {width: 100%; padding: 0; text-align: center; align-items: center;}

/* === HOVER IMAGE === */
@media (hover: hover) {
    .bloc-contenu-alternance .alternance-item:hover .alternance-image {transform: scale(1.04);}
    .bloc-contenu-alternance .alternance-lien .btn-cta:hover {background-color: var(--couleur-secondaire);}
}

/* === REVEAL DIRECTIONNEL (desktop uniquement) === */
@media (prefers-reduced-motion: no-preference) and (min-width: 1025px) {
    .bloc-contenu-alternance .alternance-item.reveal-anim {transform: translateX(-40px);}
    .bloc-contenu-alternance .alternance-item.is-inverse.reveal-anim {transform: translateX(40px);}
}