/* Import du séparateur réutilisable */
@import url('../../css/partials/separator.css');

/* ========================================
   BLOC IMAGE / TEXTE
   ======================================== */

.blocImageTexte {
    position: relative;
    width: 100%;
    top: 1px;
    overflow: hidden;
    &.alignwide{
        overflow: visible;
    }
    &.top-right img{
        object-position: 90% center;
        height: 100px;
    }
    &.top-left img{
        object-position: 10% center;
        height: 100px;
    }
}

.blocImageTexte .block-separator {
    @media (max-width: 768px){
        top: 2px!important;
    }
}

/* Assurer que la grille puisse déborder pour atteindre les bords */
@media (min-width: 992px) {
    .blocImageTexte {
        margin-left: calc(-1 * (100vw - 100%) / 2);
        margin-right: calc(-1 * (100vw - 100%) / 2);
        width: 100vw;
    }
    
    /* Annuler pour alignwide qui a déjà sa propre gestion */
    .blocImageTexte.alignwide {
        margin-left: 0;
        margin-right: 0;
        width: 100%;
        img, .blocImageTexte__image-inner{
            border-radius: 30px!important;
        }
    }
}

/* ========================================
   GRILLE CSS GRID
   ======================================== */

.blocImageTexte__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    width: 100%;
    position: relative;
}

/* Desktop : grille avec image bord à bord */
@media (min-width: 992px) {
    .blocImageTexte__grid {
        display: grid;
        gap: 0;
    }
    
    /* Position gauche : 
       - Image : de 0 à 45% de l'écran (bord gauche)
       - Contenu : de 45% au centre avec padding */
    .blocImageTexte--left .blocImageTexte__grid {
        grid-template-columns: 45% 1fr;
    }
    
    /* Position droite : 
       - Contenu : du début au centre avec padding
       - Image : de 55% à 100% de l'écran (bord droit) */
    .blocImageTexte--right .blocImageTexte__grid {
        grid-template-columns: 1fr 45%;
    }
}

@media (min-width: 1200px) {
    .blocImageTexte--left .blocImageTexte__grid {
        grid-template-columns: 40% 1fr;
    }
    
    .blocImageTexte--right .blocImageTexte__grid {
        grid-template-columns: 1fr 40%;
    }
}

/* ========================================
   COULEURS DE FOND
   ======================================== */

.blocImageTexte.bg-primary {
    background-color: var(--color-primary, #5CBE95);
}

.blocImageTexte.bg-secondary {
    background-color: var(--color-secondary, #007FB4);
}

.blocImageTexte.bg-tertiary {
    background-color: var(--color-tertiary, #FCC100);
}

.blocImageTexte.bg-dark {
    background-color: var(--color-dark, #00283F);
}

.blocImageTexte.bg-white {
    background-color: #FFFFFF;
}

.blocImageTexte.bg-corail {
    background-color: var(--color-corail, #CB695F);
    p, h2, h3, li{
        color: white!important;
    }
}

.blocImageTexte.bg-light-green {
    background-color: #F2FAF7;
}

/* ========================================
   ALIGNWIDE - FOND PLEINE LARGEUR
   ======================================== */

.blocImageTexte.alignwide {
    margin: 0 auto;
}

.blocImageTexte.alignwide img,
.blocImageTexte.alignwide .blocImageTexte__image-inner {
    z-index: 11;
    position: relative;
}

@media (min-width: 767px) {
    .blocImageTexte.alignwide {
        width: 80%;
    }
}

@media (max-width: 992px) {
    .blocImageTexte.alignwide {
        padding-bottom: 50px!important;
    }
}

.blocImageTexte.alignwide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    z-index: -1;
}

.blocImageTexte.alignwide.bg-primary::before {
    background-color: var(--color-primary, #5CBE95);
}

.blocImageTexte.alignwide.bg-secondary::before {
    background-color: var(--color-secondary, #007FB4);
}

.blocImageTexte.alignwide.bg-tertiary::before {
    background-color: var(--color-tertiary, #FCC100);
}

.blocImageTexte.alignwide.bg-dark::before {
    background-color: var(--color-dark, #00283F);
}

.blocImageTexte.alignwide.bg-white::before {
    background-color: #FFFFFF;
}

.blocImageTexte.alignwide.bg-corail::before {
    background-color: var(--color-corail, #CB695F);
}

.blocImageTexte.alignwide.bg-light-green::before {
    background-color: #F2FAF7;
}

/* ========================================
   GESTION DES PADDINGS
   ======================================== */

.blocImageTexte.has-padding-top {
    padding-top: var(--bit-padding-top, 60px);
}

.blocImageTexte.has-padding-bottom {
    padding-bottom: var(--bit-padding-bottom, 60px);
}

/* Mode hauteur fixe : 500px pour l'image */
.blocImageTexte--fixed .blocImageTexte__image-wrapper {
    height: 500px;
    position: relative;
    display: flex;
    flex-direction: column;
    @media (-webkit-max-device-pixel-ratio: 0.75), (max-resolution: 0.75dppx) {
        aspect-ratio: 16 / 12;
        height: auto !important;
        min-height: 0;
    }
}

/* État bas du bloc : image en bas avec margin-top auto */
.blocImageTexte--fixed .blocImageTexte__image-wrapper.is-bottom {
    margin-top: auto;
}

/* État fixé par JS */
.blocImageTexte--fixed .blocImageTexte__image-wrapper.is-fixed .blocImageTexte__image-inner {
    position: fixed;
    top: 0;
    z-index: 1;
    overflow: hidden;
}

/* Assurer que l'image garde son object-fit en mode fixed */
.blocImageTexte--fixed .blocImageTexte__image-wrapper.is-fixed .blocImageTexte__image {
    width: 100%;
    height: 100%;
    /* object-fit: inherit; */
}

/* État déverrouillé (fin du scroll) - plus utilisé, remplacé par margin-top: auto */

/* Mode hauteur adaptative : hauteur automatique */
.blocImageTexte--adapt .blocImageTexte__image-wrapper {
    min-height: auto;
}

/* ========================================
   IMAGE WRAPPER - BORD À BORD
   ========================================== */

.blocImageTexte__image-wrapper {
    position: relative;
    overflow: hidden;
}

.blocImageTexte__image-inner {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.blocImageTexte__image {
    width: 100%;
    height: 100%;
    display: block;
}

.blocImageTexte--image-align-top-left .blocImageTexte__image {
    object-position: left top;
}

.blocImageTexte--image-align-top-center .blocImageTexte__image {
    object-position: center top;
}

.blocImageTexte--image-align-top-right .blocImageTexte__image {
    object-position: right top;
}

.blocImageTexte--image-align-center-left .blocImageTexte__image {
    object-position: left center;
}

.blocImageTexte--image-align-center .blocImageTexte__image {
    object-position: center center;
}

.blocImageTexte--image-align-center-right .blocImageTexte__image {
    object-position: right center;
}

.blocImageTexte--image-align-bottom-left .blocImageTexte__image {
    object-position: left bottom;
}

.blocImageTexte--image-align-bottom-center .blocImageTexte__image {
    object-position: center bottom;
}

.blocImageTexte--image-align-bottom-right .blocImageTexte__image {
    object-position: right bottom;
}

/* Mode cover : image recouvre tout l'espace */
.blocImageTexte--cover .blocImageTexte__image {
    object-fit: cover;
}

/* Mode contain : image contenue dans l'espace */
.blocImageTexte--contain .blocImageTexte__image {
    object-fit: contain;
}

/* ========================================
   COINS ARRONDIS SELON POSITION
   ======================================== */

/* Image à gauche */
.blocImageTexte--left .blocImageTexte__image,
.blocImageTexte--left .blocImageTexte__image-inner {
    border-top-right-radius: 100px;
    border-bottom-right-radius: 100px;
}

/* Image à droite : ordre via grid-column */
@media (min-width: 992px) {
    .blocImageTexte--right .blocImageTexte__image-wrapper {
        grid-column: 2;
    }
    
    .blocImageTexte--right .blocImageTexte__content-wrapper {
        grid-column: 1;
        grid-row: 1;
    }
}

.blocImageTexte--right .blocImageTexte__image,
.blocImageTexte--right .blocImageTexte__image-inner {
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
}

/* ========================================
   CONTENU TEXTE
   ======================================== */

.blocImageTexte__content-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
     @media (-webkit-max-device-pixel-ratio: 0.75), (max-resolution: 0.75dppx) {
        justify-content: flex-start;
    }
}

.blocImageTexte--y-top .blocImageTexte__content-wrapper {
    align-items: flex-start;
}

.blocImageTexte--y-center .blocImageTexte__content-wrapper {
    align-items: center;
}

.blocImageTexte--y-bottom .blocImageTexte__content-wrapper {
    align-items: flex-end;
}

@media (min-width: 992px) {
    .blocImageTexte__content-wrapper {
        padding: 50px 60px;
    }
    
    /* Ajuster le padding pour le contenu à gauche (image à droite) */
    .blocImageTexte--right .blocImageTexte__content-wrapper {
        padding-left: 80px;
        padding-right: 40px;
    }
    
    /* Ajuster le padding pour le contenu à droite (image à gauche) */
    .blocImageTexte--left .blocImageTexte__content-wrapper {
        padding-left: 40px;
        padding-right: 80px;
    }
}

@media (min-width: 1200px) {
    .blocImageTexte__content-wrapper {
        padding: 0 100px;
    }
    
    .blocImageTexte--right .blocImageTexte__content-wrapper {
        padding-left: 30%;
        padding-right: 60px;
    }
    
    .blocImageTexte--left .blocImageTexte__content-wrapper {
        padding-left: 60px;
        padding-right: 30%;
    }
}

@media (min-width: 1500px){
    .blocImageTexte--right .blocImageTexte__content-wrapper {
        padding-left: 35%;
        padding-right: 60px;
    }
    
    .blocImageTexte--left .blocImageTexte__content-wrapper {
        padding-left: 60px;
        padding-right: 15%;
        /* display: flex;
        align-items: center;
        justify-content: center; */
    }
}

.blocImageTexte__content {
    width: 100%;
    max-width: 800px;
}

.blocImageTexte__content-inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
    z-index: 11;
    position: relative;
}

/* ========================================
   TEXTE
   ======================================== */

.blocImageTexte__texte {
    color: var(--color-dark, #00283F);
}

.blocImageTexte__texte .btn{
    color: white!important;
}

.blocImageTexte__texte h3:not(.h3-alt):not(.encart-wysiwyg__title){
    font-style: italic!important;
}

.blocImageTexte__texte li::marker{
    font-size: 10px;
}

.blocImageTexte__texte h2 {
    font-family: 'Momo Trust Display', sans-serif;
    font-size: 32px!important;
    font-weight: 500!important;
    line-height: 1;
    color: var(--color-primary, #5CBE95);
    margin-bottom: 20px;
}

.blocImageTexte__texte h2 span{
    font-family: 'Momo Trust Display', sans-serif;
    font-weight: 500;
}

.blocImageTexte__texte h3:not(:first-of-type){
    padding-top: 35px;
}

.blocImageTexte p{
    line-height: 1.25;
    margin-bottom: 15px;
}

.blocImageTexte__texte ul {
    padding-left: 20px;
    margin-bottom: 15px;
}

.blocImageTexte__texte p,
.blocImageTexte__texte li {
    font-family: 'Be Vietnam Pro', sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: var(--color-dark, #00283F);
}

@media (max-width: 991px) {
    .blocImageTexte__texte li {
        font-size: 14px!important;
    }
}

.blocImageTexte__texte p:last-child {
    margin-bottom: 0;
}

.blocImageTexte__texte strong {
    font-weight: 600;
}

/* Texte en couleur */
.blocImageTexte__texte .text-blue {
    color: #007FB4;
}

/* Liens dans le contenu WYSIWYG */
.blocImageTexte__texte a:not(.btn) {
    text-decoration: underline;
    color: inherit;
    transition: opacity 0.3s ease;
}

.blocImageTexte__texte a:not(.btn):hover {
    opacity: 0.7;
}

/* ========================================
   BOUTONS
   ======================================== */

.blocImageTexte__boutons {
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: flex-start;
}

/* ========================================
   ZONE AVEC ICÔNES
   ======================================== */

.blocImageTexte__icon-zone {
    padding: 25px 0 0;
}

.blocImageTexte__icon-zone-title {
    font-family: 'Be Vietnam Pro', sans-serif;
    font-size: 22px;
    font-weight: 700;
    font-style: italic;
    line-height: 1.23;
    letter-spacing: 2.2px;
    color: var(--color-secondary, #007FB4);
    margin-bottom: 25px;
}

.blocImageTexte__icon-zone-items {
    display: flex;
    flex-direction: column;
    gap: 25px;
    width: 100%;
}

.blocImageTexte__icon-item {
    display: flex;
    flex-direction: row;
    gap: 25px;
    align-items: flex-start;
}

.blocImageTexte__icon-item-icon-wrapper {
    position: relative;
    width: 90px;
    height: 120px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.blocImageTexte__icon-item-icon-bg {
    display: none;
}

.blocImageTexte__icon-item-icon {
    position: relative;
    width: 120px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.blocImageTexte__icon-item-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.blocImageTexte__icon-item-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.blocImageTexte__icon-item-text ul{
    margin-left: 20px;
}

.blocImageTexte__icon-item-subtitle {
    font-family: 'Momo Trust Display', sans-serif;
    font-size: 28px!important;
    font-weight: 400;
    font-style: normal;
    line-height: 1;
    color: var(--color-secondary);
    margin: 0;
}

.blocImageTexte__icon-item-subtitle--white {
    color: #FFFFFF;
}

.blocImageTexte__icon-item-subtitle--primary {
    color: var(--color-primary);
}

.blocImageTexte__icon-item-subtitle--secondary {
    color: var(--color-secondary);
}

.blocImageTexte__icon-item-subtitle--tertiary {
    color: var(--color-tertiary);
}

.blocImageTexte__icon-item-subtitle--dark {
    color: var(--color-dark);
}

.blocImageTexte__icon-item-subtitle--corail {
    color: var(--color-corail);
}

.blocImageTexte__icon-item-subtitle--light-green {
    color: var(--color-primary);
}

.blocImageTexte__icon-item-content {
    font-family: 'Be Vietnam Pro', sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.25;
    color: var(--color-dark, #00283F);
}

.blocImageTexte__icon-item-content p {
    margin-bottom: 10px;
}

.blocImageTexte__icon-item-content p:first-child,
.blocImageTexte__icon-item-content p strong {
    font-weight: 600;
}

.blocImageTexte__icon-item-content p:last-child {
    margin-bottom: 0;
}

/* ========================================
   ACCORDÉON
   ======================================== */

.blocImageTexte__accordion {
    padding: 30px 0 0;
}

.blocImageTexte__accordion-title {
    color: var(--color-primary, #5CBE95);
    font-family: "Momo Trust Display";
    font-size: 32px!important;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.blocImageTexte__accordion-items {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 25px;
}

.blocImageTexte__accordion-item {
    background-color: rgba(0, 127, 180, 0.1);
    border-radius: 12px;
    overflow: hidden;
    transition: background-color 0.3s ease;
}

.blocImageTexte__accordion-item:hover {
    background-color: rgba(0, 127, 180, 0.15);
}

/* Question - Bouton déclencheur */
.blocImageTexte__accordion-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 10px 20px;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    transition: padding 0.3s ease;
}

.blocImageTexte__accordion-question:hover {
    padding: 12px 20px;
}

.blocImageTexte__accordion-question-text {
    flex: 1;
    font-family: 'Be Vietnam Pro', sans-serif;
    font-weight: 700;
    font-style: italic;
    font-size: 19px;
    line-height: 21px;
    letter-spacing: 1.9px;
    color: #00253E;
    padding-right: 20px;
}

.blocImageTexte__accordion-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    position: relative;
}

.blocImageTexte__accordion-icon-plus,
.blocImageTexte__accordion-icon-minus {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.blocImageTexte__accordion-icon-plus {
    opacity: 1;
    transform: scale(1) rotate(0deg);
}

.blocImageTexte__accordion-icon-minus {
    opacity: 0;
    transform: scale(0.8) rotate(-90deg);
}

/* Animation de l'icône quand l'accordéon est ouvert */
.blocImageTexte__accordion-question[aria-expanded="true"] .blocImageTexte__accordion-icon-plus {
    opacity: 0;
    transform: scale(0.8) rotate(90deg);
}

.blocImageTexte__accordion-question[aria-expanded="true"] .blocImageTexte__accordion-icon-minus {
    opacity: 1;
    transform: scale(1) rotate(0deg);
}

.blocImageTexte__accordion-question[aria-expanded="true"] .blocImageTexte__accordion-question-text{
    padding-bottom: 20px;
}
/* Réponse - Contenu */
.blocImageTexte__accordion-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-10px);
    transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s,
                transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.1s,
                padding 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.blocImageTexte__accordion-answer[aria-hidden="false"] {
    /* La hauteur exacte sera calculée dynamiquement en JavaScript */
    opacity: 1;
    transform: translateY(0);
    padding: 0 20px 20px;
}

.blocImageTexte__accordion-answer-content {
    font-family: 'Be Vietnam Pro', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.6;
    color: #00253E;
    a{
        color: var(--color-primary, #5CBE95);
    }
}

.blocImageTexte__accordion-answer-content p {
    margin: 0 0 15px 0;
}

.blocImageTexte__accordion-answer-content *{
    font-size: 16px!important;
}

.blocImageTexte__accordion-answer-content p:last-child {
    margin-bottom: 0;
}

.blocImageTexte__accordion-answer-content ul,
.blocImageTexte__accordion-answer-content ol {
    margin: 0 0 15px 20px;
    padding: 0;
}

.blocImageTexte__accordion-answer-content li {
    margin-bottom: 8px;
}

/* CTA - Bouton accordéon */
.blocImageTexte__accordion-cta {
    display: flex;
    justify-content: flex-start;
    margin-top: 15px;
}

/* ========================================
   MODE LOGO - DISPOSITION CLASSIQUE
   ======================================== */

/* Annuler le design bord à bord pour le mode logo */
.blocImageTexte.blocImageTexte--logo-mode {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
}

.blocImageTexte--logo-mode img{
    max-width: 300px;
    margin: 0 auto;
}

.blocImageTexte--logo-mode .blocImageTexte__content-wrapper{
    padding-top: 0!important;
}

/* Grille classique centrée avec max-width */
@media (min-width: 992px) {
    .blocImageTexte--logo-mode .blocImageTexte__grid {
        max-width: 1200px;
        margin: 0 auto;
        gap: 40px;
        padding: 0 40px;
    }
}

@media (min-width: 1400px) {
    .blocImageTexte--logo-mode .blocImageTexte__grid {
        max-width: 1400px;
        gap: 60px;
        padding: 0 60px;
    }
}

/* Grille 2 colonnes équilibrées */
@media (min-width: 992px) {
    .blocImageTexte--logo-mode.blocImageTexte--left .blocImageTexte__grid,
    .blocImageTexte--logo-mode.blocImageTexte--right .blocImageTexte__grid {
        grid-template-columns: 1fr 1fr;
    }
}

/* Annuler les coins arrondis pour le mode logo */
.blocImageTexte--logo-mode .blocImageTexte__image,
.blocImageTexte--logo-mode .blocImageTexte__image-inner {
    border-radius: 0 !important;
}

/* Image avec hauteur auto et ratio préservé */
.blocImageTexte--logo-mode .blocImageTexte__image-wrapper {
    height: auto;
    min-height: auto;
}

.blocImageTexte--logo-mode .blocImageTexte__image {
    width: 100%;
    height: auto;
    object-fit: contain;
    max-height: 500px;
}

/* Padding ajusté pour disposition classique */
@media (min-width: 992px) {
    .blocImageTexte--logo-mode .blocImageTexte__content-wrapper {
        padding: 40px;
    }
}

@media (min-width: 1200px) {
    .blocImageTexte--logo-mode .blocImageTexte__content-wrapper {
        padding: 60px 40px;
    }
    
    .blocImageTexte--logo-mode.blocImageTexte--right .blocImageTexte__content-wrapper,
    .blocImageTexte--logo-mode.blocImageTexte--left .blocImageTexte__content-wrapper {
        padding-left: 40px;
        padding-right: 40px;
    }
}

/* ========================================
   RESPONSIVE
   ======================================== */

/* Tablette et mobile */
@media (max-width: 991px) {
    .blocImageTexte__image-wrapper {
        order: 1 !important;
        min-height: 300px;
    }

    .blocImageTexte__content-wrapper,
    .blocImageTexte__content {
        padding-bottom: 0!important;
    }

    .blocImageTexte__content-wrapper {
        order: 2 !important;
    }

    /* Pas de coins arrondis sur mobile */
    /* .blocImageTexte__image,
    .blocImageTexte__image-inner {
        border-radius: 0 !important;
    } */

    .blocImageTexte__content {
        padding: 30px 0;
    }

    .blocImageTexte__texte h2 {
        font-size: 27px !important;
        line-height: 33px !important;
    }

    .blocImageTexte__texte p {
        font-size: 14px;
    }

    /* Paddings réduits sur tablette */
    .blocImageTexte.has-padding-top {
        padding-top: 30px;
    }

    .blocImageTexte.has-padding-bottom {
        padding-bottom: 30px;
    }

    /* Zone avec icônes - tablette */
    .blocImageTexte__icon-zone {
        padding: 20px 0 0;
    }

    .blocImageTexte__icon-zone-title {
        font-size: 20px;
        letter-spacing: 2px;
        margin-bottom: 20px;
    }

    .blocImageTexte__icon-zone-items {
        gap: 20px;
    }

    .blocImageTexte__icon-item {
        gap: 20px;
    }

    .blocImageTexte__icon-item-icon-wrapper {
        width: 100px;
        height: 100px;
    }

    .blocImageTexte__icon-item-icon {
        width: 100px;
        height: 100px;
    }

    .blocImageTexte__icon-item-subtitle {
        font-size: 24px;
    }

    .blocImageTexte__icon-item-content {
        font-size: 15px;
    }

    /* Accordéon - tablette */
    .blocImageTexte__accordion {
        padding: 25px 0 0;
    }

    .blocImageTexte__accordion-title {
        font-size: 20px!important;
        letter-spacing: 2px;
        margin-bottom: 20px!important;
    }

    .blocImageTexte__accordion-items {
        gap: 12px;
        margin-bottom: 20px;
    }

    .blocImageTexte__accordion-question-text {
        font-size: 14px;
        letter-spacing: 1.7px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .blocImageTexte__image-wrapper {
        height: 270px!important;
    }

    .blocImageTexte__content {
        padding: 25px 0;
    }

    .blocImageTexte__texte h2 {
        font-size: 24px!important;
        margin-bottom: 15px;
        line-height: 30px!important;
    }

    .blocImageTexte__content-inner {
        gap: 15px;
    }

    /* Paddings réduits sur mobile */
    .blocImageTexte.has-padding-top {
        padding-top: 25px;
    }

    .blocImageTexte.has-padding-bottom {
        padding-bottom: 25px;
    }

    /* Zone avec icônes - mobile */
    .blocImageTexte__icon-zone {
        padding: 20px 0 0;
    }

    .blocImageTexte__icon-zone-title {
        font-size: 18px;
        letter-spacing: 1.8px;
        margin-bottom: 20px;
    }

    .blocImageTexte__icon-zone-items {
        gap: 20px;
    }

    .blocImageTexte__icon-item {
        gap: 15px;
    }

    .blocImageTexte__icon-item-icon-wrapper {
        width: 90px;
        height: 90px;
    }

    .blocImageTexte__icon-item-icon {
        width: 90px;
        height: 90px;
    }



    .blocImageTexte__icon-item-subtitle {
        font-size: 20px;
    }

    .blocImageTexte__icon-item-content {
        font-size: 14px;
    }

    /* Accordéon - mobile */
    .blocImageTexte__accordion {
        padding: 20px 0 0;
    }

    .blocImageTexte__accordion-title {
        font-size: 18px;
        letter-spacing: 1.8px;
        margin-bottom: 15px;
    }

    .blocImageTexte__accordion-items {
        gap: 10px;
        margin-bottom: 15px;
    }

    .blocImageTexte__accordion-question {
        padding: 10px 15px;
    }

    .blocImageTexte__accordion-question:hover {
        padding: 10px 15px;
    }

    .blocImageTexte__accordion-question-text {
        font-size: 16px;
        line-height: 20px;
        letter-spacing: 1.6px;
        padding-right: 15px;
    }

    .blocImageTexte__accordion-icon {
        width: 20px;
        height: 20px;
    }

    .blocImageTexte__accordion-answer[aria-hidden="false"] {
        padding: 0 15px 15px;
    }

    .blocImageTexte__accordion-answer-content {
        font-size: 13px;
    }
}

/* Très petit mobile - disposition en colonne pour les icônes */
@media (max-width: 399px) {
    .blocImageTexte__icon-item {
        flex-direction: column;
    }
}

/* Desktop large */
/* @media (min-width: 1400px) {
    .blocImageTexte .row {
        min-height: 500px;
    }
} */


/*Image interne dans l'éditeur MCE*/
.blocImageTexte__texte img:not(.encart-wysiwyg__separator),
.blocImageTexte__accordion-answer img:not(.encart-wysiwyg__separator) {
    padding-top: 10px;
    padding-bottom: 10px;
    width: auto;
    height: 200px;
    @media (max-width: 1280px){
        max-width: 200px;
    }
    @media (max-width: 560px){
        max-width: 100%;
    }
}

/*Spécifique background corail*/
.bg-corail .blocImageTexte__texte a:not(.btn){
    color: var(--color-dark, #00283F)!important;
    border-bottom-color: var(--color-dark, #00283F)!important;
}

/*Spécifique newsletter*/
.block-image-texte-newsletter .blocImageTexte__image-inner {
    background: #08283f;
    z-index: 100;
    img{
        object-position: center!important;
    }
}
/*Classes personnalisées*/
.row-for-accordeons{
    .flex-row{
        gap: 20px;
        @media (max-width: 992px){
            flex-direction: column !important;
            .image{
                max-width: 200px;
                width: 80%;
                margin: 0 auto!important;
                img{
                    height: auto!important;
                }
            }
        }
    }
    img:not(.blocImageTexte__image):not(.blocImageTexte__accordion-icon-plus):not(.blocImageTexte__accordion-icon-minus){
        height: 150px;
    }
}

.pas-form{
    padding: 0!important;
}