/* =========================================
   SOMOUEST - MENUS REFERENCE - SHARED UI
========================================= */

.menu-reference-somouest-wrap,
.menu-reference-somouest-wrap *,
.menu-ref-lvl2,
.menu-ref-lvl2 *{
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    text-rendering:optimizeLegibility;
}

.menu-reference-somouest-wrap a,
.menu-ref-lvl2 a{
    text-decoration:none;
    outline:none;
}

.menu-reference-somouest-wrap,
.menu-ref-lvl2{
    width:100%;
    margin:0;
    position:relative;
    overflow:visible;
}

.menu-reference-somouest-inner,
.menu-ref-lvl2-inner{
    width:100%;
    margin:0;
    position:relative;
    overflow:visible;
}

.menu-reference-somouest-list,
.menu-ref-lvl2-list{
    list-style:none;
    margin:0;
    width:100%;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    position:relative;
    overflow-x:auto;
    overflow-y:visible;
}

.menu-reference-somouest-list::-webkit-scrollbar,
.menu-ref-lvl2-list::-webkit-scrollbar{
    display:none;
}

.menu-reference-somouest-list li,
.menu-ref-lvl2-list li{
    list-style:none;
    margin:0;
    padding:0;
    background:transparent;
    border:0;
}

.menu-reference-somouest-list a,
.menu-ref-lvl2-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    white-space:nowrap;
    line-height:1;
    border:1px solid transparent;
    background:transparent;
    box-shadow:none;
    transition:
        background .18s ease,
        color .18s ease,
        border-color .18s ease,
        transform .18s ease,
        box-shadow .18s ease;
}

.menu-reference-somouest-list a:hover,
.menu-ref-lvl2-link:hover{
    transform:translateY(-1px);
}

.menu-reference-somouest-list a.menu-reference-somouest-selemenu,
.menu-ref-lvl2-link.active{
    background:#ffffff;
    color:#173a76;
    border-color:rgba(23,58,118,.15);
    box-shadow:
        0 8px 16px rgba(16,42,91,.06),
        inset 0 0 0 1px rgba(23,58,118,.03);
}

.menu-reference-somouest-list a.menu-reference-somouest-selemenu:hover,
.menu-ref-lvl2-link.active:hover{
    background:#ffffff;
    color:#173a76;
    border-color:rgba(23,58,118,.17);
    transform:none;
}

.menu-reference-somouest-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.menu-reference-somouest-icon img,
.menu-reference-somouest-toggle-picto img{
    display:block;
    width:auto;
    height:auto;
    border:0;
}

#menu-reference-somouest-check,
#menu-reference-somouest-check-modeles-tetes{
    position:absolute;
    left:-9999px;
    opacity:0;
    pointer-events:none;
}

.menu-reference-somouest-toggle{
    display:none;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    width:100%;
    margin:0;
    border:0;
    cursor:pointer;
}

.menu-reference-somouest-toggle-left{
    min-width:0;
    flex:1 1 auto;
    display:flex;
    align-items:center;
    gap:10px;
}

.menu-reference-somouest-toggle-picto{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.menu-reference-somouest-toggle-title{
    display:block;
    min-width:0;
    flex:1 1 auto;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    text-align:left;
}

.menu-reference-somouest-burger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:background .18s ease, transform .18s ease;
}

.menu-reference-somouest-burger svg{
    display:block;
}

.menu-reference-somouest-wrap{
    z-index:10;
}

.menu-reference-somouest-inner{
    z-index:11;
}

.menu-reference-somouest-list{
    z-index:12;
}

.menu-ref-lvl2{
    z-index:8;
}

.menu-ref-lvl2-inner{
    z-index:9;
}

.menu-ref-lvl2-list{
    z-index:10;
}

@media (max-width: 980px){
    .menu-reference-somouest-wrap,
    .menu-reference-somouest-inner,
    .menu-reference-somouest-list,
    .menu-ref-lvl2,
    .menu-ref-lvl2-inner,
    .menu-ref-lvl2-list{
        overflow:visible;
    }
}