/* GLOBAL CSS STABILIZER — Isabella V2 */

/* Sécurité globale */
*,
*::before,
*::after{
    box-sizing:border-box;
}

html,
body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
    background:#050505;
}

/* Header : éviter l’écrasement horizontal */
.site-header nav{
    gap:28px;
}

.site-header nav a{
    white-space:nowrap;
}

/* ROAD TO USA — correction complète des cartes */
.road-usa{
    width:100%;
    overflow:hidden;
}

.road-inner{
    width:100%;
    max-width:1420px;
}

.road-steps{
    width:100%;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(300px, 1fr)) !important;
    gap:32px !important;
    align-items:stretch;
}

.road-step{
    width:100%;
    min-width:0;
    overflow:visible !important;
    padding:42px 42px 46px !important;
}

.road-step span{
    display:block;
    margin-bottom:48px !important;
}

.road-step strong{
    display:block;
    width:100%;
    max-width:100%;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
    font-size:clamp(31px, 2.7vw, 46px) !important;
    line-height:1.02 !important;
}

.road-step p{
    width:100%;
    max-width:100%;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
    font-size:17px !important;
    line-height:1.75 !important;
}

/* Correction si un ancien style limite les contenus */
.road-step *,
.road-steps *{
    max-width:100% !important;
}

/* Cartes premium plus respirantes */
.road-step::before{
    top:96px !important;
    left:42px !important;
}

/* Desktop large */
@media(min-width:1300px){
    .road-steps{
        grid-template-columns:repeat(3, minmax(360px, 1fr)) !important;
    }
}

/* Tablette */
@media(max-width:1180px){
    .road-steps{
        grid-template-columns:1fr !important;
        max-width:760px;
    }

    .road-step{
        min-height:auto;
    }
}

/* Mobile */
@media(max-width:720px){
    .site-header nav{
        gap:16px;
    }

    .road-usa{
        padding-left:22px !important;
        padding-right:22px !important;
    }

    .road-step{
        padding:32px 28px 36px !important;
    }

    .road-step strong{
        font-size:34px !important;
    }

    .road-step p{
        font-size:16px !important;
    }
}
