.krea3-sommaire {
    background: #fff;
    border: none;
    padding: 20px;
    border-radius: 6px;
    position: sticky;
    top: 100px;
}

.krea3-sommaire-titre {
    font-weight: 700;
    margin-bottom: 10px;
    font-size: 18px;
}

.krea3-sommaire ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.krea3-sommaire li {
    margin-bottom: 8px;
}

.krea3-sommaire li.niveau-3 {
    margin-left: 15px;
    display:none;
}

.krea3-sommaire a {
    color: var(--couleur-principale, #017879);
    text-decoration: none;
}

.krea3-sommaire a.active, .krea3-sommaire a:hover {
    font-weight: bold;
    text-decoration: underline;
    color:#1a5484;
}



/* ----- SOMMAIRE DESKTOP ----- */
#krea3-sommaire-wrapper {
    display: block;
    float: left;
    width: 25%;
    padding: 10px 0 10px 10px;
    margin: 0 0 20px 0;
}

#content.has_sommaire{
    float: right;
    width: 73%;
}

/* ----- SOMMAIRE STICKY ----- */
#krea3-sommaire-wrapper {
    position: sticky;
    top: 100px;  /* à ajuster selon la hauteur de ton header */
    align-self: flex-start;
    height: auto;
}

/* Compatibilité desktop */
@media screen and (min-width: 891px) {
    #krea3-sommaire-wrapper {
        float: left;
        width: 22%;
    }
}



/* ----- SOMMAIRE MOBILE / TABLETTE ----- */
@media screen and (max-width: 890px) {

    #krea3-sommaire-wrapper {
    	position:relative;
        float: none;
        width: 100%;
        margin: 0 0 20px 0;
        padding: 10px;
        order: 1; /* si flex plus tard */
    }

    #content.has_sommaire{
        float: none;
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        order: 2;
    }
}


#krea3-sommaire-wrapper .krea3-sommaire {
    background: #fff;
    padding: 20px;
    border-radius: 6px;
}

#krea3-sommaire-wrapper .krea3-sommaire ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
