﻿@charset "UTF-8";
/*
  ==============================================================================================
  --------------------------|                                        |--------------------------
  --------------------------|          CSS / Key4events 2020         |--------------------------
  --------------------------|              Thème général             |--------------------------
  --------------------------|                                        |--------------------------
  ==============================================================================================
*/
/* -------------------- Global -------------------- */
/*
  ==============================================================================================
  --------------------------|                                        |--------------------------
  --------------------------|          CSS / Key4events 2020         |--------------------------
  --------------------------|           Variables et mixins          |--------------------------
  --------------------------|                                        |--------------------------
  ==============================================================================================
*/
/* -------------------- Typographies -------------------- */
/* -------------------- Transitions -------------------- */
/* -------------------- Mixins -------------------- */
/* Modifs KWW début */
/* Modifs KWW fin */
/* -------------------- Fonts --------------------*/
@font-face {
    font-family: 'Arquitecta-regular';
    src: url("../fonts/arquitecta/arquitecta-regular.woff2") format("woff2"), url("../fonts/arquitecta/arquitecta-regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Arquitecta-bold';
    src: url("../fonts/arquitecta/arquitecta-bold.woff2") format("woff2"), url("../fonts/arquitecta/arquitecta-bold.woff") format("woff");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Arquitecta-heavy';
    src: url("../fonts/arquitecta/arquitecta-heavy.woff2") format("woff2"), url("../fonts/arquitecta/arquitecta-heavy.woff") format("woff");
    font-weight: normal;
    font-style: normal;
}

/* -------------------- SVG -------------------- */
svg {
    fill: #000;
}

    svg use {
        stroke: rgb(0, 0, 102);
        stroke-width: 2;
        transition: all 0.3s ease;
    }

    svg.blue {
        fill: #3e64c1;
    }

        svg.blue use {
            stroke: #3e64c1;
        }

    svg.indigo {
        fill: #743ad2;
    }

        svg.indigo use {
            stroke: #743ad2;
        }

    svg.purple {
        fill: #9b369b;
    }

        svg.purple use {
            stroke: #9b369b;
        }

    svg.pink {
        fill: #e83e8c;
    }

        svg.pink use {
            stroke: #e83e8c;
        }

    svg.red {
        fill: #e8192c;
    }

        svg.red use {
            stroke: #e8192c;
        }

    svg.orange {
        fill: #ff6000;
    }

        svg.orange use {
            stroke: #ff6000;
        }

    svg.yellow {
        fill: #f5ba1b;
    }

        svg.yellow use {
            stroke: #f5ba1b;
        }

    svg.green {
        fill: #409c6a;
    }

        svg.green use {
            stroke: #409c6a;
        }

    svg.k4green use {
        stroke: rgb(72, 219, 0);
    }

    svg.teal {
        fill: #0eb7a9;
    }

        svg.teal use {
            stroke: #0eb7a9;
        }

    svg.cyan {
        fill: #0088db;
    }

        svg.cyan use {
            stroke: #0088db;
        }

    svg.cyan-light {
        fill: #88cef6;
    }

        svg.cyan-light use {
            stroke: #88cef6;
        }

    svg.skyblue {
        fill: #2f85b3;
    }

        svg.skyblue use {
            stroke: #2f85b3;
        }

    svg.skyblue-medium {
        fill: #6daed4;
    }

        svg.skyblue-medium use {
            stroke: #6daed4;
        }

    svg.skyblue-light {
        fill: #cbe5f4;
    }

        svg.skyblue-light use {
            stroke: #cbe5f4;
        }

    svg.nightblue {
        fill: #264c95;
    }

        svg.nightblue use {
            stroke: #264c95;
        }

    svg.primary-dark {
        fill: #394466;
    }

        svg.primary-dark use {
            stroke: #394466;
        }

    svg.white {
        fill: #fff;
    }

        svg.white use {
            stroke: #fff;
        }

    svg.black {
        fill: #000;
    }

        svg.black use {
            stroke: #000;
        }

    svg.gray-light {
        fill: #ced4da;
    }

        svg.gray-light use {
            stroke: #ced4da;
        }

    svg.gray {
        fill: #6c757d;
    }

        svg.gray use {
            stroke: #6c757d;
        }

    svg.gray-dark {
        fill: #343a40;
    }

        svg.gray-dark use {
            stroke: #343a40;
        }

    svg.original {
        fill: #2c4698;
    }

        svg.original use {
            stroke: #2c4698;
        }

    svg.primary {
        fill: #394466;
    }

        svg.primary use {
            stroke: #3e64c1;
        }

    svg.secondary {
        fill: #333;
    }

        svg.secondary use {
            stroke: #333;
        }

    svg.success {
        fill: #74be4b;
    }

        svg.success use {
            stroke: #74be4b;
        }

    svg.info {
        fill: #2ec3ea;
    }

        svg.info use {
            stroke: #2ec3ea;
        }

    svg.warning {
        fill: #ff6000;
    }

        svg.warning use {
            stroke: #ff6000;
        }

    svg.danger {
        fill: #e8192c;
    }

        svg.danger use {
            stroke: #e8192c;
        }

    svg.skyblue {
        fill: #2f85b3;
    }

        svg.skyblue use {
            stroke: #2f85b3;
        }

    svg.white {
        fill: #fff;
    }

        svg.white use {
            stroke: #fff;
        }

    svg.light {
        fill: #aaa;
    }

        svg.light use {
            stroke: #aaa;
        }

    svg.dark {
        fill: #343a40;
    }

        svg.dark use {
            stroke: #343a40;
        }

/* -------------------- Icônes custom -------------------- */
i.icon {
    display: inline-block;
}

    i.icon.icon-sm {
        width: 28px;
        height: 28px;
        min-width: 28px;
        min-height: 28px;
    }

    i.icon.icon-md {
        width: 36px;
        height: 36px;
        min-width: 36px;
        min-height: 36px;
    }

    i.icon.icon-lg {
        width: 56px;
        height: 56px;
        min-width: 56px;
        min-height: 56px;
    }

        i.icon.icon-lg use {
            stroke-width: 1.32;
        }

    i.icon.icon-bg {
        position: absolute;
        z-index: 1;
        width: auto;
        height: 50vw;
        overflow: hidden;
        opacity: .04;
    }

        i.icon.icon-bg svg {
            transform: translate(28%, 0);
        }

    i.icon > svg {
        width: 100%;
        height: 100%;
    }

@media (max-width: 767px) {
    i.icon.icon-bg {
        top: 0;
        right: 0;
        top: 163px;
    }
}

@media (min-width: 768px) {
    i.icon.icon-bg {
        bottom: 0;
        right: 0;
        width: 680px;
        height: 680px;
    }

        i.icon.icon-bg svg {
            transform: translate(7.5%, 32%);
        }
}

/* -------------------- Titres -------------------- */
.line {
    position: relative;
    padding-bottom: 10px;
}

    .line::after {
        display: block;
        position: absolute;
        content: '';
        z-index: 1;
        bottom: 0;
        left: 0;
        width: 50px;
        height: 2px;
        background-color: #000066;
    }

    .line.line-white-30::after {
        background-color: rgba(255, 255, 255, 0.3);
    }

    .line.line-gray-ligth::after {
        background-color: #ddd;
    }

    .line.line-blue::after {
        background-color: #3e64c1 !important;
    }

    .line.line-indigo::after {
        background-color: #743ad2 !important;
    }

    .line.line-purple::after {
        background-color: #9b369b !important;
    }

    .line.line-pink::after {
        background-color: #e83e8c !important;
    }

    .line.line-red::after {
        background-color: #e8192c !important;
    }

    .line.line-orange::after {
        background-color: #ff6000 !important;
    }

    .line.line-yellow::after {
        background-color: #f5ba1b !important;
    }

    .line.line-green::after {
        background-color: #409c6a !important;
    }

    .line.line-teal::after {
        background-color: #0eb7a9 !important;
    }

    .line.line-cyan::after {
        background-color: #0088db !important;
    }

    .line.line-cyan-light::after {
        background-color: #88cef6 !important;
    }

    .line.line-skyblue::after {
        background-color: #2f85b3 !important;
    }

    .line.line-skyblue-medium::after {
        background-color: #6daed4 !important;
    }

    .line.line-skyblue-light::after {
        background-color: #cbe5f4 !important;
    }

    .line.line-nightblue::after {
        background-color: #264c95 !important;
    }

    .line.line-primary-dark::after {
        background-color: #394466 !important;
    }

    .line.line-white::after {
        background-color: #fff !important;
    }

    .line.line-black::after {
        background-color: #000 !important;
    }

    .line.line-gray-light::after {
        background-color: #ced4da !important;
    }

    .line.line-gray::after {
        background-color: #6c757d !important;
    }

    .line.line-gray-dark::after {
        background-color: #343a40 !important;
    }

    .line.line-original::after {
        background-color: #2c4698 !important;
    }

/* -------------------- Liens -------------------- */
a {
    transition: all 0.15s ease;
}

.no-ul {
    text-decoration: none;
}

a.link-under {
    position: relative;
    text-decoration: none;
    padding-bottom: 2px;
    background-image: linear-gradient(to bottom, transparent 0, transparent calc(100% - 1px), #3e64c1 calc(100% - 1px), #3e64c1 100%);
    background-size: 0 auto;
    background-position: bottom center;
    background-repeat: no-repeat;
    transition: all 0.3s ease;
}

    a.link-under:hover {
        background-image: linear-gradient(to bottom, transparent 0, transparent calc(100% - 1px), #3e64c1 calc(100% - 1px), #3e64c1 100%);
        background-size: 100% auto;
    }

/* -------------------- Opacités -------------------- */
.op-0 {
    opacity: .0;
    transition: all 0.3s ease;
}

.op-1 {
    opacity: .1;
    transition: all 0.3s ease;
}

.op-2 {
    opacity: .2;
    transition: all 0.3s ease;
}

.op-3 {
    opacity: .3;
    transition: all 0.3s ease;
}

.op-4 {
    opacity: .4;
    transition: all 0.3s ease;
}

.op-5 {
    opacity: .5;
    transition: all 0.3s ease;
}

.op-6 {
    opacity: .6;
    transition: all 0.3s ease;
}

.op-7 {
    opacity: .7;
    transition: all 0.3s ease;
}

.op-8 {
    opacity: .8;
    transition: all 0.3s ease;
}

.op-9 {
    opacity: .9;
    transition: all 0.3s ease;
}

.op-10 {
    opacity: 1;
    transition: all 0.3s ease;
}

.op-h-0:hover {
    opacity: .0;
}

.op-h-1:hover {
    opacity: .1;
}

.op-h-2:hover {
    opacity: .2;
}

.op-h-3:hover {
    opacity: .3;
}

.op-h-4:hover {
    opacity: .4;
}

.op-h-5:hover {
    opacity: .5;
}

.op-h-6:hover {
    opacity: .6;
}

.op-h-7:hover {
    opacity: .7;
}

.op-h-8:hover {
    opacity: .8;
}

.op-h-9:hover {
    opacity: .9;
}

.op-h-10:hover {
    opacity: 1;
}

/* -------------------- Scrollbars custom pour Webkit -------------------- */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: #888;
}

    ::-webkit-scrollbar-thumb:hover {
        background: #555;
    }

div[class*="table-responsive"]::-webkit-scrollbar,
.scrollable::-webkit-scrollbar {
    height: 4px;
}

div[class*="table-responsive"]::-webkit-scrollbar-track,
.scrollable::-webkit-scrollbar-track {
    background: #f1f1f1;
}

div[class*="table-responsive"]::-webkit-scrollbar-thumb,
.scrollable::-webkit-scrollbar-thumb {
    background: #888;
}

    div[class*="table-responsive"]::-webkit-scrollbar-thumb:hover,
    .scrollable::-webkit-scrollbar-thumb:hover {
        background: #555;
    }

.popover .popover-body::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}

.popover .popover-body::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.popover .popover-body::-webkit-scrollbar-thumb {
    background: #999;
}

    .popover .popover-body::-webkit-scrollbar-thumb:hover {
        background: #777;
    }

#scrollnav > div {
    scrollbar-color: #888 #f1f1f1;
    scrollbar-width: thin !important;
}

    #scrollnav > div::-webkit-scrollbar {
        width: 0;
    }

/* -------------------- Scrollbars custom pour Firefox -------------------- */
:root {
    scrollbar-color: #888 #f1f1f1;
    scrollbar-width: thin !important;
}

/* -------------------- Couleur de texte sélectionné -------------------- */
::selection {
    color: #fff;
    background-color: #3e64c1;
}

/* -------------------- Spinner -------------------- */
.loader {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1;
    text-align: left;
}

    .loader .spin {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 22px;
        height: 22px;
        margin-top: -11px;
        margin-left: -11px;
        border-radius: 50%;
    }

        .loader .spin::before, .loader .spin::after {
            display: block;
            position: absolute;
            content: '';
            z-index: 1;
            border-radius: 50%;
        }

        .loader .spin::before {
            width: 100%;
            height: 100%;
            background: linear-gradient(#3e64c1, #fff 50%);
            animation: spin .6s infinite linear;
        }

        .loader .spin:after {
            width: calc(100% - 2px);
            height: calc(100% - 2px);
            top: 6%;
            left: 6%;
            background-color: #fff;
        }

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* -------------------- Animations -------------------- */
@media screen and (orientation: portrait) {
    @keyframes kenburns-top {
        0% {
            background-size: auto 100%;
        }

        100% {
            background-size: auto 125%;
        }
    }
}

@media screen and (orientation: landscape) {
    @keyframes kenburns-top {
        0% {
            background-size: 100% auto;
        }

        100% {
            background-size: 125% auto;
        }
    }
}

@keyframes slide-in-elliptic-top-fwd {
    0% {
        transform: translateY(-600px) rotateX(-30deg) scale(0);
        transform-origin: 50% 100%;
        opacity: 0;
    }

    100% {
        transform: translateY(0) rotateX(0) scale(1);
        transform-origin: 50% 1400px;
        opacity: 1;
    }
}

@keyframes shake-horizontal {
    0%, 100% {
        transform: translateX(0);
    }

    10%, 30%, 50%, 70% {
        transform: translateX(-10px);
    }

    20%, 40%, 60% {
        transform: translateX(10px);
    }

    80% {
        transform: translateX(8px);
    }

    90% {
        transform: translateX(-8px);
    }
}

@keyframes fade-in {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes zoom-in {
    0% {
        transform: scale(0);
        opacity: 0;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes Showinfo-top {
    0% {
        opacity: 0;
        top: -100px;
        max-height: 0;
    }

    100% {
        opacity: 1;
        top: 0;
        max-height: 200px;
    }
}

@keyframes Hideinfo-top {
    0% {
        opacity: 1;
        top: 0;
        max-height: 200px;
    }

    100% {
        opacity: 0;
        top: -100px;
        max-height: 0;
    }
}

@keyframes Showinfo-bottom {
    0% {
        opacity: 0;
        top: 100px;
        max-height: 0;
    }

    100% {
        opacity: 1;
        top: 0;
        max-height: 200px;
    }
}

@keyframes Hideinfo-bottom {
    0% {
        opacity: 1;
        top: 0;
        max-height: 200px;
    }

    100% {
        opacity: 0;
        top: 100px;
        max-height: 0;
    }
}

/* -------------------- Layout -------------------- */
/* General */
/* -------------------- Layout -------------------- */
html, body {
    position: relative;
    width: 100%;
    min-height: 100vh;
    font-family: Verdana, sans-serif;
    font-size: 14px;
}

body {
    overflow-x: hidden;
}

.wrapper {
    display: flex;
    position: unset !important;
    flex-direction: column;
    min-height: calc(100vh - 111px);
    transition: all 0.3s ease;
}

    .wrapper.framed {
        min-height: calc(100vh - 111px);
        box-shadow: 0 16px 44px rgba(0, 0, 0, 0.08);
    }

@media (min-width: 768px) {
    .wrapper.framed {
        padding: 30px;
    }
}

@media (min-width: 992px) {
    .wrapper {
        min-height: calc(100vh - 78px);
    }

        .wrapper.framed {
            min-height: calc(100vh - 78px);
            padding: 60px;
        }
}

/* -------------------- Effets de flou (menus mobile ouverts) -------------------- */
@media (max-width: 991px) {
    body.show-menu-left::before, body.show-menu-left::after,
    body.show-params-left::before,
    body.show-params-left::after,
    body.show-profile::before,
    body.show-profile::after {
        display: none !important;
    }

    body.show-menu-left header,
    body.show-menu-left .subheader,
    body.show-menu-left main article,
    body.show-menu-left #scrollnav,
    body.show-menu-left footer,
    body.show-params-left header,
    body.show-params-left .subheader,
    body.show-params-left main article,
    body.show-params-left #scrollnav,
    body.show-params-left footer,
    body.show-profile header,
    body.show-profile .subheader,
    body.show-profile main article,
    body.show-profile #scrollnav,
    body.show-profile footer {
        filter: blur(8px);
    }
}

/* -------------------- Désactivation de la sélection sur mobile/longtap (ordonnancement des favoris) -------------------- */
html:not(.no-touchevents) body.sorting * {
    -webkit-touch-callout: none !important;
    -webkit-user-select: none !important;
}

/* -------------------- Visuels de fond -------------------- */
body.background-visuel::before, body.background-visuel::after {
    display: block;
    position: absolute;
    content: '';
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-position: top center;
    background-size: cover;
}

body.background-visuel::before {
    background: linear-gradient(to bottom, #000066 0, #c3f8ff 55%, #fff 100%) top center no-repeat;
}

body.background-visuel::after {
    position: fixed;
    opacity: .25;
    mix-blend-mode: multiply;
}

body.background-visuel-A::after {
    background-image: url("../images/visuel-bg_A.jpg");
    -webkit-mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
}

body.background-visuel-B::after {
    background-image: url("../images/visuel-bg_B.jpg");
    -webkit-mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
}

@media (max-width: 575px) {
    body:not(.login) {
        background-color: #f8f8f8;
    }

        body:not(.login).background-visuel::before, body:not(.login).background-visuel::after {
            display: none;
        }
}

/* Headers */
/* -------------------- Header -------------------- */
header {
    display: flex;
    position: fixed;
    z-index: 1000;
    align-content: stretch;
    justify-content: space-between;
    width: 100%;
    height: 70px;
    box-shadow: 0 1px 0 rgba(94, 94, 94, 0.06);
    padding: 10px;
    background-color: rgb(0, 0, 102);
    transition: transform 0.3s ease;
    transition-delay: .3s;
}

body.hideheader header {
    transform: translateY(-110%);
    transition-delay: 0s;
}

header > a.menu-left-trigger {
    display: flex;
    align-items: center;
}

header > a.logo {
    display: inline-block;
    position: absolute;
    left: 50%;
    margin-left: -20px;
    width: 43px;
    height: 54px;
    overflow: hidden;
}

    header > a.logo svg {
        height: 49px;
    }

header > ul.user-infos {
    display: flex;
    align-items: center;
}

    header > ul.user-infos .profile {
        order: 2;
        font-family: "Arquitecta-heavy", Sans-serif;
        text-transform: uppercase;
    }

        header > ul.user-infos .profile a i {
            color: #bbb;
            transition: all 0.3s ease;
        }

body.show-profile header > ul.user-infos .profile a i:not(.icon) {
    transform: rotate(180deg);
}

header > ul.user-infos .profile a span {
    max-width: calc(200px - 30px);
}

header > ul.user-infos .profile a.d-lg-none i {
    transform: scale(1.2);
}

    header > ul.user-infos .profile a.d-lg-none i use {
        stroke-width: 1.75;
    }

header > ul.user-infos .cart {
    position: relative;
    order: 1;
}

    header > ul.user-infos .cart .badge {
        position: absolute;
        z-index: 1;
        top: -5px;
        right: -7px;
    }

header > ul.user-options {
    display: flex;
    align-items: center;
    border-left: 1px solid #f4f4f4;
}

header > ul > li {
    display: inline-block;
}

@media (min-width: 768px) {
    .wrapper.framed header {
        position: relative;
    }
}

@media (min-width: 992px) {
    header {
        position: relative;
        transform: translateY(0) !important;
    }

        header .navheader {
            display: flex;
            position: unset;
            width: auto;
            height: auto;
            margin: 0;
            align-items: center;
            flex: 1;
            color: rgb(72, 219, 0);
        }

        header > a.logo {
            display: flex;
            position: unset;
            width: auto;
            height: auto;
            margin: 0;
            align-items: center;
        }

        header > .navheader .navbarv3 {
            display: flex;
            position: unset;
            width: auto;
            height: auto;
            margin: 0;
            align-items: center;
            font-family: "Arquitecta-heavy", Sans-serif;
            text-transform: uppercase;
            font-size: 20px;
            margin-left: 10px;
        }

            header > .navheader .navbarv3 a {
                text-decoration: none;
                color: white;
                margin: 0 10px;
            }

        header > a.logo svg {
            height: 54px;
            margin: 8px 27px;
        }

        header > ul.user-infos .profile {
            order: 1;
        }

            header > ul.user-infos .profile a:hover i.icon,
            body.show-profile header > ul.user-infos .profile a i.icon {
                background-color: rgb(72, 219, 0) !important;
                color: rgb(0, 0, 102);
            }

        header > ul .cart {
            order: 2;
        }
}

/* -------------------- Sub-header (ERP) -------------------- */
.subheader {
    position: fixed;
    z-index: 995;
    width: 100%;
    max-width: 100%;
    padding: 86px 20px 16px 20px;
    background-color: #fcfcfc;
    transition: all 0.3s ease, transform 0.3s ease 0.3s;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.14);
}

body.hideheader .subheader {
    transform: translateY(-110%);
    transition: all 0.3s ease, transform 0.3s ease;
}

.subheader a.params {
    position: absolute;
    top: 90px;
    left: 14px;
}

body.dashboard .subheader a.params {
    top: 92px;
}

.subheader a.params i svg use {
    stroke: rgb(0, 0, 102);
}

.subheader h1 {
    font-family: "Arquitecta-bold", Sans-serif;
    font-size: 1.6rem;
    line-height: 1.5rem;
}

    .subheader h1 a {
        display: inline-block;
        max-height: 60px;
        font-family: "Arquitecta-heavy", Sans-serif;
        overflow: hidden;
    }

body[class*='rub-'] .subheader h1 a {
    display: inline;
}

.subheader .date,
.subheader .lieu {
    font-family: "Arquitecta-regular", Sans-serif;
    letter-spacing: .02em;
    text-transform: uppercase;
}

body.erp:not(.dashboard) .subheader .date, body.erp:not(.dashboard)
.subheader .lieu {
    display: none !important;
}

.subheader .date {
    color: #727272;
    line-height: 1.2rem;
}

.subheader .lieu {
    padding: 3px 6px;
    font-size: .87rem;
    line-height: .8rem;
}

.subheader .options-toggle {
    display: block;
    position: absolute;
    top: 83px;
    right: 17px;
    transition: all 0.15s ease;
}

.subheader #options:not(.show).collapsing + .options-toggle, .subheader #options.show + .options-toggle {
    transform: rotate(90deg);
}

@media (min-width: 576px) {
    .subheader h1 {
        font-size: 1.6rem;
        line-height: 1em;
    }

    body.dashboard .subheader h1 {
        font-size: 2.2rem;
    }

        body.dashboard .subheader h1 a {
            max-height: 86px;
        }

    .subheader .date {
        padding: 6px 0 4px 0;
        font-size: 1.15rem;
        line-height: 1.1em;
    }

    .subheader .lieu {
        font-size: 1rem;
        line-height: 1em;
    }

    .subheader .options-toggle {
        top: 83px;
    }

    body.dashboard .subheader .options-toggle {
        top: 86px;
    }
}

@media (min-width: 768px) {
    .subheader {
        padding: 96px 20px 26px 14px;
    }

        .subheader h1 {
            margin-right: 240px !important;
        }

        .subheader .date {
            width: calc(100% - 75px) !important;
        }

        .subheader #options {
            display: block;
        }

            .subheader #options ul {
                position: absolute;
                top: 75px;
                right: 13px;
            }

    body.dashboard .subheader #options ul {
        top: 78px;
    }
}

@media (min-width: 992px) {
    .subheader {
        position: relative;
        padding-top: 22px;
        transform: translateY(0) !important;
        box-shadow: 0 1px 0 rgba(94, 94, 94, 0.06);
    }

        .subheader a.params {
            top: 17px;
            left: 42px;
        }

    body.dashboard .subheader a.params {
        top: 22px;
    }

    .subheader h1,
    .subheader .date,
    .subheader .lieu {
        margin-left: 75px !important;
    }

    .subheader h1 {
        font-size: 1.8rem;
    }

    body.dashboard .subheader h1 {
        font-size: 2.7rem;
    }

    .subheader #options ul {
        top: 3px;
        right: 25px;
    }

    body.dashboard .subheader #options ul {
        top: 8px;
    }
}

@media (min-width: 1024px) {
    body.dashboard .subheader h1 a {
        max-height: unset;
    }
}

@media (min-width: 1200px) {
    body.dashboard .subheader {
        padding-top: 36px;
        padding-bottom: 36px;
    }

        body.dashboard .subheader a.params {
            top: 36px;
        }

        body.dashboard .subheader #options ul {
            top: 22px;
        }
}

/* Contents */
/* -------------------- Contenus -------------------- */
.page {
    display: flex;
    flex: 1;
    flex-direction: column;
}

@media (min-width: 992px) {
    .page {
        position: relative;
    }
}

main {
    display: flex;
    flex: 1;
    padding-top: 70px;
    transition: all 0.3s ease;
}

.subheader + main {
    padding-top: 0;
}

main > nav {
    position: fixed;
    z-index: 2000;
    top: 0;
    left: 0;
    width: calc(100vw - 60px);
    max-width: 320px;
    height: 100vh;
    background-color: #fff;
    transition: all 0.3s ease;
    transform: translateX(-100%);
}

body.show-menu-left main > nav {
    transform: translateX(0);
}

main > nav a.close-menu-left {
    position: fixed;
    top: 20px;
    right: 0;
    width: 48px;
    height: 48px;
}

body.show-menu-left main > nav a.close-menu-left {
    right: -48px;
    opacity: 1;
}

main > article {
    position: relative;
    flex: 1;
    order: 2;
    padding: 30px !important;
    background-size: 100%;
    background-repeat: no-repeat;
    background-color: rgb(248, 248, 250);
}

    main > article > * {
        position: relative;
        z-index: 2;
    }

    main > article .breadcrumbs a {
        position: relative;
        top: 3px;
        color: #adb5bd;
        font-family: "Arquitecta-heavy", Sans-serif;
        font-size: 1.15rem;
        letter-spacing: .04em;
        text-decoration: none;
        text-transform: uppercase;
        transition: all 0.15s ease;
    }

        main > article .breadcrumbs a:hover {
            color: #3e64c1;
        }

    main > article .breadcrumbs i {
        padding: 0 2px;
        color: #ccc;
    }

    main > article .title {
        font-size: 0;
    }

        main > article .title .linkback {
            display: inline-block;
            width: 30px;
            margin-left: -30px;
            color: #b0b0b0;
            font-size: .7rem;
            transition: all 0.15s ease;
        }

            main > article .title .linkback:hover {
                color: #777;
            }

main::before {
    display: block;
    position: absolute;
    content: '';
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1900;
    background-color: rgba(77, 82, 95, 0.7);
    width: 0;
    opacity: 0;
    transition: width 0s ease .3s, opacity .3s ease;
}

body.show-menu-left main::before,
body.show-params-left main::before,
body.show-profile main::before {
    width: 100%;
    opacity: 1;
    transition: width 0s ease, opacity .3s ease;
}

@media (min-width: 576px) {
    main > article {
        padding: 46px 60px !important;
    }

        main > article .title .linkback {
            width: 42px;
            margin-left: -42px;
        }
}

@media (min-width: 768px) {
    .wrapper.framed main {
        padding-top: 0;
    }
}

@media (min-width: 992px) {
    main {
        position: relative;
        padding-top: 0;
    }

        main > nav {
            position: relative;
            flex: 0 0 280px;
            height: auto;
            order: 0;
            width: 320px;
            background-color: rgba(255, 255, 255, 0.8);
            transform: translateX(0);
        }

    body.esp-cl main > nav {
        flex: 0 0 240px;
    }

    main > article .title .linkback {
        font-size: 1rem;
    }

    main::before {
        display: none;
    }
}

@media (min-width: 1200px) {
    main > nav {
        flex: 0 0 280px !important;
    }
}

/* Left menu */
/* -------------------- Menu gauche (généralités) -------------------- */
body nav.menu-left > div {
    height: auto !important;
    max-height: 100vh !important;
    padding-bottom: 20px;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-color: #6daed4 rgba(255, 255, 255, 0.25);
    scrollbar-width: thin !important;
}

    body nav.menu-left > div::-webkit-scrollbar {
        width: 4px;
    }

    body nav.menu-left > div::-webkit-scrollbar-track {
        background: rgba(255, 255, 255, 0.25);
    }

    body nav.menu-left > div::-webkit-scrollbar-thumb {
        background: #6daed4;
    }

        body nav.menu-left > div::-webkit-scrollbar-thumb:hover {
            background: #2f85b3;
        }

body nav.menu-left a.logo {
    max-width: calc(100% - 60px);
}

    body nav.menu-left a.logo svg {
        max-width: calc(100% - 30px);
        height: 48px;
        margin: 38px 0 0 30px;
    }

body nav.menu-left a.params {
    position: relative;
    top: 20px;
    -webkit-transform: translate3d(0, 0, 0);
}

body nav.menu-left ul {
    position: relative;
    z-index: 2;
}

    body nav.menu-left ul li a {
        display: inline-block;
        position: relative;
    }

body nav.menu-left .toggler {
    display: block;
    position: absolute;
    content: '';
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    z-index: 2;
    width: 14px;
    cursor: w-resize;
    background-color: rgba(62, 100, 193, 0);
    transition: all 0.3s ease;
}

    body nav.menu-left .toggler:hover {
        background-color: rgba(52, 58, 64, 0.05);
    }

@media (min-width: 992px) {
    body nav.menu-left > div {
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 0;
        max-height: unset !important;
        overflow: inherit;
    }
}

/* -------------------- Menu gauche (Espace client) -------------------- */
body.esp-cl nav.menu-left ul {
    margin: 22px 0 0 2px;
}

    body.esp-cl nav.menu-left ul li {
        transform: translateX(16px);
    }

        body.esp-cl nav.menu-left ul li a {
            width: calc(100% - 32px);
            min-height: 62px;
            margin-bottom: 8px;
            padding: 1.45rem 2rem 1.45rem 5.2rem;
            text-align: left;
            font-size: 16px;
            line-height: 1.5rem;
            transition: all 0.15s ease;
        }

            body.esp-cl nav.menu-left ul li a:not(.bg-gradient) {
                box-shadow: none !important;
            }

                body.esp-cl nav.menu-left ul li a:not(.bg-gradient) > .icon {
                    opacity: .7;
                }

                body.esp-cl nav.menu-left ul li a:not(.bg-gradient)::before {
                    display: block;
                    position: absolute;
                    content: '';
                    z-index: 1;
                    width: 100%;
                    height: 100%;
                    top: 0;
                    left: 0;
                    z-index: -1;
                    width: 0;
                    background-color: #6daed4;
                    opacity: 0;
                    box-shadow: 0 16px 44px rgba(0, 0, 0, 0.08) !important;
                    transition: all 0.3s ease;
                }

                body.esp-cl nav.menu-left ul li a:not(.bg-gradient):hover {
                    color: #2c4698 !important;
                }

                    body.esp-cl nav.menu-left ul li a:not(.bg-gradient):hover > .icon {
                        opacity: 1;
                        transform: translateY(-1px);
                    }

                    body.esp-cl nav.menu-left ul li a:not(.bg-gradient):hover::before {
                        width: 100%;
                        opacity: .25;
                    }

            body.esp-cl nav.menu-left ul li a .icon {
                position: absolute;
                top: 12px;
                left: 24px;
                transition: all 0.3s ease;
            }

@media (min-width: 992px) {
    body.esp-cl nav.menu-left ul {
        margin-top: 0;
    }

        body.esp-cl nav.menu-left ul li a {
            width: 100%;
            max-width: 240px;
        }

            body.esp-cl nav.menu-left ul li a:not(.bg-gradient)::before {
                background-color: #fff;
            }

            body.esp-cl nav.menu-left ul li a:not(.bg-gradient):hover::before {
                opacity: .85;
            }

    body.esp-cl.reduced-menu-left nav.menu-left {
        flex: 0 0 98px !important;
    }

        body.esp-cl.reduced-menu-left nav.menu-left ul li a {
            max-width: 62px;
            padding: 1.45rem;
        }

            body.esp-cl.reduced-menu-left nav.menu-left ul li a, body.esp-cl.reduced-menu-left nav.menu-left ul li a:not(.bg-gradient):hover {
                color: transparent !important;
            }

                body.esp-cl.reduced-menu-left nav.menu-left ul li a .icon {
                    left: 14px;
                }
}

@media (min-width: 1200px) {
    body.esp-cl nav.menu-left ul li a {
        max-width: 320px;
    }
}

/* -------------------- Menu gauche (ERP) -------------------- */
body.erp nav.menu-left *:not(input) {
    -webkit-touch-callout: none !important;
    -webkit-user-select: none !important;
}

body.erp nav.menu-left a.params {
    position: absolute;
    top: 45px;
    right: 16px;
}

    body.erp nav.menu-left a.params i svg use {
        stroke: #6c757d;
    }

body.erp nav.menu-left form.search {
    -webkit-transform: translate3d(0, 0, 0);
}

    body.erp nav.menu-left form.search a {
        text-decoration: none;
    }

    body.erp nav.menu-left form.search .input-group input {
        height: 44px;
        padding-left: 1.5rem;
        font-size: 1rem;
        background-color: #f7f7f7;
    }

    body.erp nav.menu-left form.search .input-group .icon {
        position: absolute;
        right: 0;
        width: 36px;
        height: 36px;
        margin-top: 3px;
    }

        body.erp nav.menu-left form.search .input-group .icon::before {
            left: auto;
        }

body.erp nav.menu-left .toggle-favorites a {
    font-family: "Arquitecta-heavy", Sans-serif;
    font-size: .95rem;
    text-transform: uppercase;
    color: #333;
}

    body.erp nav.menu-left .toggle-favorites a i {
        margin-top: -2px;
        transform: scaleX(1);
    }

body.erp nav.menu-left .favorites {
    position: absolute;
    top: 200px;
    width: calc(100% - 2rem);
    min-width: calc(280px - 2rem);
    margin-right: 14px;
    opacity: 0;
    transform-origin: top right;
    transform: scaleX(0) skew(0, -5deg);
    transition: all 0.3s ease;
}

    body.erp nav.menu-left .favorites.empty::before {
        display: block;
        position: absolute;
        content: '';
        z-index: 1;
        content: attr(text-empty-list);
        top: 10px;
        width: 100%;
        height: 50px;
        text-align: center;
        font-size: .9rem;
    }

    body.erp nav.menu-left .favorites li {
        display: flex;
        font-size: 0;
        transition: background-color 0.3s ease;
    }

        body.erp nav.menu-left .favorites li:not(:last-child) {
            border-bottom: 1px solid rgba(0, 0, 0, 0.06);
        }

        body.erp nav.menu-left .favorites li:hover {
            background-color: #f7f7f7;
        }

            body.erp nav.menu-left .favorites li:hover a span {
                color: inherit !important;
            }

        body.erp nav.menu-left .favorites li.ui-sortable-helper, body.erp nav.menu-left .favorites li.sorting {
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
            border: 2px dashed rgba(46, 195, 234, 0.8);
            background-color: rgba(185, 235, 248, 0.8);
        }

        body.erp nav.menu-left .favorites li a:not(.favicon) {
            display: inline-block;
            position: relative;
            width: 100%;
            padding: 13px 20px 13px 46px;
            font-family: "Arquitecta-bold", Sans-serif;
            font-size: 1rem;
            line-height: 1.25em;
            letter-spacing: .02em;
            text-transform: uppercase;
            overflow: hidden;
            background-color: transparent;
            transition: all 0.3s ease;
        }

            body.erp nav.menu-left .favorites li a:not(.favicon).hover span {
                margin-left: -40px;
            }

            body.erp nav.menu-left .favorites li a:not(.favicon).hover ~ a.favicon {
                z-index: 3;
                flex: 0 0 44px;
                background-color: #e8192c;
            }

            body.erp nav.menu-left .favorites li a:not(.favicon) span {
                display: inline-block;
                position: relative;
                color: #333;
                transition: margin 0.3s ease !important;
            }

                body.erp nav.menu-left .favorites li a:not(.favicon) span i {
                    position: absolute;
                    top: -6px;
                    left: -34px;
                    width: 24px;
                    text-align: center;
                }

        body.erp nav.menu-left .favorites li a.favicon {
            position: relative;
            flex: 0 0 0;
            right: 0;
            transition: all 0.3s ease;
            overflow: hidden;
            background-color: rgba(0, 0, 0, 0);
        }

            body.erp nav.menu-left .favorites li a.favicon i {
                position: absolute;
                top: calc(50% - 8px);
                margin-left: -6px;
                font-size: 1.2rem;
                transition: all 0.15s ease;
            }

body.erp nav.menu-left > div {
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 100vh !important;
}

    body.erp nav.menu-left > div .menuhead {
        position: absolute;
        top: 10px;
        width: 100%;
        transform: translateX(100%);
        transition: all 0.3s ease;
        opacity: 0;
    }

        body.erp nav.menu-left > div .menuhead.show {
            transform: translateX(0) skew(0, 0);
            opacity: 1;
        }

        body.erp nav.menu-left > div .menuhead i.fa-chevron-left {
            font-size: 1.8em;
        }

        body.erp nav.menu-left > div .menuhead i.icon {
            margin-left: 10px;
        }

        body.erp nav.menu-left > div .menuhead .title {
            display: block;
            max-width: calc(100% - 70px);
            margin-left: 30px;
            color: inherit;
            font-family: "Arquitecta-heavy", Sans-serif;
            font-size: 22px;
            letter-spacing: .03em;
            text-overflow: ellipsis;
            text-transform: uppercase;
            white-space: nowrap;
            overflow: hidden;
        }

            body.erp nav.menu-left > div .menuhead .title::after {
                opacity: .5;
            }

body.erp nav.menu-left .slidemenu {
    overflow: hidden;
    opacity: 1;
    transform-origin: top left;
    transform: scaleX(1);
    transition: all 0.3s ease;
}

    body.erp nav.menu-left .slidemenu ul {
        min-width: calc(280px - 2rem);
    }

    body.erp nav.menu-left .slidemenu > ul {
        display: inline-block;
        position: relative;
        font-size: 0;
        transition: all 0.3s ease;
    }

        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) {
            display: inline-block;
            width: 50%;
            border: 1px solid rgba(0, 0, 0, 0.06);
            border-top: 0;
        }

            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a {
                position: relative;
                padding: 20px 0;
            }

                body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a svg,
                body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a span {
                    position: relative;
                    transition: all 0.6s ease;
                }

                body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a .over {
                    position: absolute;
                    z-index: -1;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    border-radius: 50%;
                    transform-origin: 50% 50%;
                    transform: scale(0.2);
                    transition: all 1s ease;
                    opacity: 0;
                }

                body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a.active,
                html.no-touchevents body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a:hover {
                    color: #fff;
                }

                    body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a.active .over,
                    html.no-touchevents body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a:hover .over {
                        border-radius: 0;
                        transform: scale(5);
                        opacity: 1;
                    }

                    body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a.active svg,
                    html.no-touchevents body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a:hover svg {
                        transform: translateY(-3px);
                    }

                        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a.active svg use,
                        html.no-touchevents body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a:hover svg use {
                            stroke: #fff;
                        }

                    body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a.active span,
                    html.no-touchevents body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > a:hover span {
                        transform: translateY(3px);
                    }

            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support):nth-child(n) {
                border-left: 0;
            }

            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support):nth-child(2n) {
                border-right: 0;
            }

            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support):nth-last-child(1), body.erp nav.menu-left .slidemenu > ul > li:not(.link-support):nth-last-child(2) {
                border-bottom: 0;
            }

            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) a {
                color: inherit;
                font-family: "Arquitecta-bold", Sans-serif;
                text-align: center;
                font-size: 1rem;
                letter-spacing: .02em;
                text-transform: uppercase;
                overflow: hidden;
                transition: all 0.3s ease;
            }

                body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) a i.icon {
                    width: 100%;
                    margin: 0 auto;
                }

            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) ul {
                position: absolute;
                top: 0;
                left: 100%;
                width: 100%;
                padding-left: 30px;
            }

            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul {
                margin-top: 115px;
            }

                body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li {
                    display: flex;
                }

                    body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li:not(:last-child) {
                        border-bottom: 1px solid rgba(0, 0, 0, 0.06);
                    }

                    body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li.active i.fa-angle-right, body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li:hover i.fa-angle-right {
                        color: #fff !important;
                    }

                    body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a:not(.favicon) {
                        position: relative;
                        z-index: 2;
                        left: -16px;
                        flex: 0 0 calc(100% + 16px);
                        padding: 10px 0 13px 0;
                        text-align: left;
                    }

                        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a:not(.favicon).hover span {
                            margin-left: -40px;
                        }

                        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a:not(.favicon).hover ~ a.favicon {
                            z-index: 3;
                            flex: 0 0 44px;
                            right: 60px;
                            background-color: rgba(0, 0, 0, 0.12);
                        }

                        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a:not(.favicon).isfavorite ~ a.favicon {
                            background-color: #e8192c;
                        }

                            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a:not(.favicon).isfavorite ~ a.favicon i::after {
                                display: block;
                                position: relative;
                                content: '';
                                z-index: 4;
                                top: -7px;
                                width: 24px;
                                height: 1px;
                                transform: rotate(-45deg);
                                background-color: #fff;
                                box-shadow: 0 0 0 1.5px #e8192c;
                            }

                        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a:not(.favicon) span {
                            display: inline-block;
                            position: relative;
                            left: 16px;
                            width: calc(100% - 42px);
                            line-height: 1.25rem;
                            transition: margin 0.3s ease;
                        }

                        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a:not(.favicon) i.fa-angle-right {
                            margin-left: 24px;
                            line-height: .5rem;
                        }

                    body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a.favicon {
                        position: relative;
                        flex: 0 0 0;
                        right: 17px;
                        transition: all 0.3s ease;
                        background-color: rgba(0, 0, 0, 0);
                    }

                        body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a.favicon i {
                            margin-top: 15px;
                            color: #fff;
                            font-size: 1.05rem;
                            transition: all 0.15s ease;
                        }

                            body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a.favicon i[class*="-star"] {
                                opacity: .6;
                            }

                        html:not(.no-touchevents) body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a.favicon i[class*="-star"], body.erp nav.menu-left .slidemenu > ul > li:not(.link-support) > ul li a.favicon:hover i[class*="-star"] {
                            opacity: 1;
                        }

body.erp nav.menu-left.show-favorites .toggle-favorites a {
    opacity: 1;
    color: #2ec3ea;
}

    body.erp nav.menu-left.show-favorites .toggle-favorites a i {
        opacity: 1;
        color: #2ec3ea;
        transform: scaleX(-1);
    }

body.erp nav.menu-left.show-favorites .favorites {
    opacity: 1;
    transform: scaleX(1) skew(0, 0);
}

body.erp nav.menu-left.show-favorites .slidemenu {
    opacity: 0;
    transform: scaleX(0) skew(0, 5deg);
}

body.erp nav.menu-left .link-support a {
    width: calc(100% - 28px);
    margin-left: 14px;
    margin-right: 14px;
    text-align: left;
}

body.erp nav.menu-left .toggler {
    right: 0;
    cursor: pointer;
}

    body.erp nav.menu-left .toggler::after {
        display: block;
        position: absolute;
        content: '';
        z-index: 1;
        content: '\f08d';
        padding: 5px 0 0 8px;
        top: 83px;
        right: 5px;
        width: 25px;
        height: 25px;
        color: #6c757d;
        font-family: 'Font Awesome 5 Pro';
        font-size: .85rem;
        font-weight: 400;
        cursor: pointer;
        border-radius: 50%;
        background-color: rgba(108, 117, 125, 0.08);
        transform: rotate(45deg);
        transition: all 0.15s ease;
    }

    body.erp nav.menu-left .toggler:hover::after {
        color: #fff;
    }

@media (min-width: 992px) {
    body.erp:not(.reduced-menu-left) .toggler:hover::after {
        background-color: rgba(108, 117, 125, 0.5);
    }

    body.erp.pinned-menu-left nav.menu-left .toggler::after {
        color: #fff;
        font-weight: 900;
        background-color: #6c757d;
    }

    body.erp:not(.pinned-menu-left) nav.menu-left {
        position: absolute;
        width: 280px;
        background-color: #e1e8f5;
        height: 100%;
    }

    body.erp:not(.pinned-menu-left).reduced-menu-left nav.menu-left {
        width: 18px;
        background-color: rgb(0, 0, 102);
    }

        body.erp:not(.pinned-menu-left).reduced-menu-left nav.menu-left > div {
            width: 14px;
            min-width: auto !important;
            overflow-y: hidden;
        }

            body.erp:not(.pinned-menu-left).reduced-menu-left nav.menu-left > div.menu-ctn > *:not(.toggler) {
                opacity: 0;
            }

        body.erp:not(.pinned-menu-left).reduced-menu-left nav.menu-left .toggler::after {
            padding: 6px 0 0 17px;
            color: #fff;
            content: '\f7a5';
            transform: rotate(0);
            font-size: 1rem;
        }

    body.erp nav.menu-left > div {
        width: 280px;
        transition: width 0.3s ease;
    }

    body.erp nav.menu-left .menu-ctn {
        min-width: 280px;
    }

    body.erp nav.menu-left form.search .input-group input {
        background-color: #fff !important;
    }

    body.erp nav.menu-left .favorites {
        top: 115px !important;
    }

        body.erp nav.menu-left .favorites li.ui-sortable-helper, body.erp nav.menu-left .favorites li.sorting, body.erp nav.menu-left .favorites li:hover {
            background-color: #fff !important;
        }
}

/* -------------------- Menu gauche (paramètres) -------------------- */
nav.menu-params {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2100;
    width: calc(100vw - 60px);
    max-width: 320px;
    height: 100vh;
    padding: 0 !important;
    background-color: rgba(40, 68, 85, 0.97);
    transition: all 0.3s ease;
    transform: translateX(-100%);
}

body.show-params-left nav.menu-params {
    transform: translateX(0);
}

nav.menu-params > div {
    top: 0;
    height: auto !important;
    padding-left: 3rem !important;
    padding-right: 3rem !important;
    max-height: 100vh;
    overflow: auto;
}

    nav.menu-params > div::-webkit-scrollbar {
        width: 4px;
    }

    nav.menu-params > div::-webkit-scrollbar-track {
        background: rgba(40, 68, 85, 0.97);
    }

    nav.menu-params > div::-webkit-scrollbar-thumb {
        background: #6daed4;
    }

        nav.menu-params > div::-webkit-scrollbar-thumb:hover {
            background: #2f85b3;
        }

nav.menu-params a.close-params-left {
    position: fixed;
    top: 14px;
    right: 14px;
    width: 48px;
    height: 48px;
}

body.show-menu-left nav.menu-params a.close-params-left {
    right: -48px;
    opacity: 1;
}

nav.menu-params a.params {
    position: relative;
    left: -4px;
}

    nav.menu-params a.params i.fa-chevron-left {
        position: absolute;
        top: 12px;
        left: -16px;
    }

nav.menu-params h3 {
    font-size: 1.65rem;
    border-bottom: 2px solid rgba(255, 255, 255, 0.2);
}

nav.menu-params ul li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

nav.menu-params ul li a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 9px 0;
    color: #fff;
    font-size: 1.05rem;
    text-decoration: none;
}

    nav.menu-params ul li a:hover {
        color: #88cef6;
    }

nav.menu-params {
    padding-bottom: 80px !important;
}

ul.bottomcontact {
    padding-bottom: 0px !important;
}

nav.menu-params ul.contact li {
    padding: 10px 0;
}

    nav.menu-params ul.contact li a {
        position: relative;
        padding-left: 40px;
        color: #0088db;
        font-family: "Arquitecta-bold", Sans-serif;
        font-size: 1rem;
        line-height: 1.25rem;
        text-transform: uppercase;
        letter-spacing: .04em;
    }

        nav.menu-params ul.contact li a i {
            position: absolute;
            top: -2px;
            left: 0;
        }

        nav.menu-params ul.contact li a:hover {
            color: #fff !important;
        }

            nav.menu-params ul.contact li a:hover i use {
                stroke: #fff;
            }

/* -------------------- Lien support -------------------- */
body nav.menu-left ul li.link-support {
    margin-top: 80px;
}

    body nav.menu-left ul li.link-support a {
        font-size: .95rem;
        padding: 1.45rem 2rem 1.45rem 4.7rem;
        box-shadow: none !important;
    }

        body nav.menu-left ul li.link-support a > .icon {
            position: absolute;
            top: 12px;
            left: 24px;
            transition: all 0.3s ease;
            opacity: 1 !important;
        }

        body nav.menu-left ul li.link-support a::before {
            border-radius: 10px;
            display: block;
            position: absolute;
            content: '';
            z-index: 1;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            z-index: -1;
            width: 0;
            background-color: #33ff00 !important;
            opacity: 0;
            box-shadow: 0 16px 44px rgba(0, 0, 0, 0.08) !important;
            transition: all 0.3s ease;
        }

        body nav.menu-left ul li.link-support a::after {
            display: block;
            position: absolute;
            content: '';
            z-index: 1;
            top: 0;
            left: 0;
            width: 100%;
            height: 1px;
            background-color: rgba(0, 0, 0, 0.06);
        }

        body nav.menu-left ul li.link-support a:not(.bg-gradient):hover {
            color: #000 !important;
        }

            body nav.menu-left ul li.link-support a:not(.bg-gradient):hover > .icon use {
                stroke: #000;
            }

            body nav.menu-left ul li.link-support a:not(.bg-gradient):hover::before {
                width: 100%;
                opacity: .85;
            }

@media (min-width: 992px) {
    body nav.menu-left ul li.link-support {
        padding-bottom: 0 !important;
    }

    body.esp-cl nav.menu-left ul li.link-support a::after {
        width: calc(100% - 40px);
    }

    body:not(.erp).reduced-menu-left nav.menu-left ul li.link-support a {
        padding-left: 0;
    }

        body:not(.erp).reduced-menu-left nav.menu-left ul li.link-support a::after {
            width: 100%;
        }
}

/* Right menu */
/* -------------------- Panneau "Profil" -------------------- */
aside.profile {
    display: block;
    position: fixed;
    z-index: 1995;
    top: 0;
    right: 0;
    width: 0;
    max-width: 320px;
    height: 100%;
    background-color: #cbe5f4;
    transition: width 0.3s ease;
}

    aside.profile > div {
        width: 100%;
        height: auto !important;
        max-height: calc(100vh - 117px);
        padding: 30px;
        padding-top: 25px !important;
        padding-bottom: 80px !important;
        scrollbar-color: #6daed4 rgba(255, 255, 255, 0.25);
        scrollbar-width: thin !important;
    }

        aside.profile > div::-webkit-scrollbar {
            width: 4px;
        }

        aside.profile > div::-webkit-scrollbar-track {
            background: rgba(255, 255, 255, 0.25);
        }

        aside.profile > div::-webkit-scrollbar-thumb {
            background: #6daed4;
        }

            aside.profile > div::-webkit-scrollbar-thumb:hover {
                background: #2f85b3;
            }

    aside.profile .mobile-header {
        position: relative;
        height: 117px;
        background-color: #fff;
    }

        aside.profile .mobile-header::after {
            display: block;
            position: absolute;
            content: '';
            z-index: 1;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 18px;
            opacity: .4;
            background-color: #cbe5f4;
        }

        aside.profile .mobile-header > ul.user-options {
            position: relative;
            z-index: 2;
            padding: 18px 5px 0 0 !important;
            text-align: right;
        }

            aside.profile .mobile-header > ul.user-options > li {
                display: inline-block;
            }

                aside.profile .mobile-header > ul.user-options > li .dropdown-menu a {
                    opacity: 1;
                }

        aside.profile .mobile-header > ul.user-infos {
            margin: 7px 0 0 60px !important;
        }

            aside.profile .mobile-header > ul.user-infos a i.icon {
                transform-origin: 110% 50%;
                transform: scale(1.7);
            }

            aside.profile .mobile-header > ul.user-infos a i:not(.icon) {
                display: none;
            }

            aside.profile .mobile-header > ul.user-infos a span {
                font-family: 'Arquitecta-heavy';
                font-size: 1.4rem;
                text-transform: uppercase;
                letter-spacing: .04em;
                max-width: 190px;
            }

            aside.profile .mobile-header > ul.user-infos a, aside.profile .mobile-header > ul.user-infos a:hover {
                cursor: default;
                color: #2f85b3 !important;
            }

    aside.profile ul.nav-tabs {
        align-items: baseline;
    }

        aside.profile ul.nav-tabs li {
            margin-top: 0 !important;
        }

            aside.profile ul.nav-tabs li a {
                padding: 0 1rem 0 .5rem;
                border: 0;
                background-color: transparent !important;
            }

                aside.profile ul.nav-tabs li a:not(.active) {
                    opacity: .5;
                }

                    aside.profile ul.nav-tabs li a:not(.active) h4::after {
                        display: none;
                    }

                aside.profile ul.nav-tabs li a::after {
                    display: none !important;
                }

                aside.profile ul.nav-tabs li a h4 {
                    margin-top: 0 !important;
                    font-size: 1.15rem;
                }

    aside.profile a.close-profile, aside.profile a.add-address {
        display: inline-block;
    }

    aside.profile a.close-profile {
        position: absolute;
        top: 20px;
        left: 0;
        width: 48px;
        height: 48px;
        opacity: 0;
        transition: all 0.3s ease;
    }

body.show-profile aside.profile a.close-profile {
    opacity: 1;
}

aside.profile a.add-address {
    width: 26px;
    height: 26px;
    padding-top: 2px;
}

aside.profile form label {
    color: #2f85b3;
    opacity: .65;
}

aside.profile form.readonly label {
    padding-bottom: 0;
}

aside.profile form.readonly .edit {
    display: block;
}

aside.profile form.readonly .validate {
    display: none;
}

aside.profile form:not(.readonly) .edit {
    display: none;
}

aside.profile form:not(.readonly) .validate {
    display: block;
}

aside.profile hr {
    border-top: 1px solid rgba(0, 0, 0, 0.07);
}

aside.profile .pagination .page-item .page-link {
    background-color: #2f85b3;
}

aside.profile .pagination .page-item:not(.disabled) .page-link {
    color: #2f85b3 !important;
    background-color: #fff;
}

body.show-profile aside.profile {
    width: 440px;
    max-width: calc(100vw - 60px);
    box-shadow: 0 0 36px rgba(0, 0, 0, 0.1);
}

    body.show-profile aside.profile a.close-profile {
        left: -48px;
    }

@media (min-width: 576px) {
    aside.profile {
        max-width: none;
    }

        aside.profile > div {
            width: 440px !important;
        }

        aside.profile .mobile-header {
            width: 440px !important;
        }

            aside.profile .mobile-header > ul.user-infos a span {
                max-width: 310px;
            }
}

@media (min-width: 768px) {
    aside.profile section#infos, aside.profile section#addresses {
        display: block !important;
        opacity: 1 !important;
    }
}

@media (min-width: 992px) {
    aside.profile {
        position: absolute;
        z-index: 995;
        overflow: hidden;
    }

    body.show-profile aside.profile {
        overflow: auto;
    }

        body.show-profile aside.profile.opened {
            overflow: inherit !important;
        }

    aside.profile > div {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        max-height: 100vh;
        height: 100% !important;
    }

    aside.profile a.close-profile {
        position: absolute;
        right: 20px;
        left: auto !important;
        opacity: .5 !important;
    }

        aside.profile a.close-profile:hover {
            opacity: .8 !important;
        }

        aside.profile a.close-profile i {
            color: #2f85b3 !important;
        }
}

/* Footer */
/* -------------------- Footer -------------------- */
footer {
    z-index: 900;
    width: 100%;
    padding: 20px 30px;
    color: #fff;
    font-size: 10px;
    background-color: #394466;
    transition: all 0.3s ease;
}

    footer a,
    footer a:hover {
        color: #fff;
    }

        footer a.link-under,
        footer a:hover.link-under {
            background-image: linear-gradient(to bottom, transparent 0, transparent calc(100% - 1px), #fff calc(100% - 1px), #fff 100%);
        }

    footer .copy {
        color: #cacaca;
    }

        footer .copy svg.logo {
            width: 32px;
            margin-right: 10px;
        }

        footer .copy strong {
            color: #fff;
        }

    footer .links span {
        color: #8d8d8d;
    }

    footer .menu-reminder {
        font-family: "Arquitecta-regular", Sans-serif;
        font-size: 13px;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

        footer .menu-reminder a:not(:last-child) {
            margin-right: 20px;
        }

/* -------------------- Utils -------------------- */
/* -------------------- Sélecteur de langues -------------------- */
.lang-selector li {
    display: inline-block;
}

.lang-selector a {
    display: inline-block;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-family: 'Arquitecta-heavy';
    text-align: center;
    line-height: 2.2em;
    color: rgb(0, 0, 102) !important;
    font-size: .95em;
    text-decoration: none;
    opacity: .5;
    background-color: white;
    transition: all 0.3s ease;
}

    .lang-selector a.active, .lang-selector a:hover {
        opacity: .7;
    }

.lang-selector > a {
    opacity: 1;
}

.lang-selector.show > a {
    position: relative;
    z-index: 2;
    opacity: 1;
    background-color: white;
    box-shadow: 0 0 14px -2px white;
}

.lang-selector .dropdown-menu {
    min-width: 28px;
    border: 0;
    background-color: transparent;
    box-shadow: none;
    z-index: 1;
    opacity: 0;
    transform-origin: 12px 0;
    transform: scale(0.6, 0.2) translateY(-32px);
    transition: all 0.15s ease;
}

.lang-selector #chooseCulture a {
    background-color: rgb(72, 219, 0);
}

.lang-selector .dropdown-menu.show {
    opacity: 1;
}

.lang-selector .dropdown-menu li {
    display: block;
    margin: 4px 0;
}

    .lang-selector .dropdown-menu li a.active {
        display: none;
    }

/* -------------------- Caroussels Flickity -------------------- */
.x-carousel {
    opacity: 0;
    transition: all 0.3s ease;
}

    .x-carousel.flickity-ready {
        opacity: 1;
    }

    .x-carousel.flickity-showall .flickity-viewport {
        overflow: visible;
    }

    .x-carousel.flickity-noarrows .flickity-prev-next-button, .x-carousel.flickity-disabled .flickity-prev-next-button {
        display: none !important;
    }

    .x-carousel.flickity-disabled .flickity-viewport {
        height: auto !important;
    }

        .x-carousel.flickity-disabled .flickity-viewport .flickity-slider {
            position: relative;
        }

            .x-carousel.flickity-disabled .flickity-viewport .flickity-slider .carousel-cell {
                position: relative !important;
                left: 0 !important;
            }

    .x-carousel .isflickity.flickity-autoheight .carousel-cell {
        min-height: 100%;
    }

    .x-carousel .flickity-prev-next-button {
        width: 30px;
        height: 100%;
        color: #777 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background-color: transparent !important;
    }

        .x-carousel .flickity-prev-next-button:hover {
            background-color: rgba(255, 255, 255, 0.9);
        }

        .x-carousel .flickity-prev-next-button.previous {
            left: 5px;
        }

        .x-carousel .flickity-prev-next-button.next {
            right: 5px;
        }

        .x-carousel .flickity-prev-next-button:disabled {
            display: none !important;
            pointer-events: none !important;
        }

    .x-carousel.flickity-array {
        width: calc(100% + 60px);
        margin-left: -30px;
        padding-left: 30px;
        padding-right: 30px;
    }

html.noadvancedSticky .x-carousel.flickity-array {
    overflow-x: hidden;
}

.x-carousel.flickity-array table {
    position: relative;
}

/* -------------------- Infopanel -------------------- */
#infopanel {
    position: fixed;
    z-index: 1000000;
    width: 100%;
    color: #fff !important;
    opacity: .94;
}

    #infopanel.top {
        top: 0;
    }

        #infopanel.top .infoitem {
            animation: Hideinfo-top .6s forwards;
        }

            #infopanel.top .infoitem.show {
                animation: Showinfo-top .4s;
            }

    #infopanel.bottom {
        bottom: 0;
    }

        #infopanel.bottom .infoitem {
            animation: Hideinfo-bottom .6s forwards;
        }

            #infopanel.bottom .infoitem.show {
                animation: Showinfo-bottom .4s;
            }

    #infopanel .infoitem {
        position: relative;
        overflow: hidden;
        box-shadow: inset 0 1px 0 0px rgba(255, 255, 255, 0.2);
    }

        #infopanel .infoitem .close-panel {
            position: absolute;
            z-index: 1;
            top: 2px;
            right: 0;
            width: 40px;
            height: 40px;
            opacity: .6;
            transition: all 0.15s ease;
        }

            #infopanel .infoitem .close-panel:hover {
                opacity: 1;
            }

        #infopanel .infoitem .content {
            padding: 7px 40px 8px 14px;
            text-align: center;
        }

            #infopanel .infoitem .content.size-sm {
                font-size: .85rem;
            }

                #infopanel .infoitem .content.size-sm .text h5 {
                    font-size: 1.1rem;
                }

                #infopanel .infoitem .content.size-sm .btn {
                    padding: .5rem 1rem;
                }

            #infopanel .infoitem .content.size-md {
                font-size: .95rem;
            }

                #infopanel .infoitem .content.size-md .btn {
                    padding: .75rem 1.5rem;
                }

            #infopanel .infoitem .content.size-lg {
                font-size: 1.1rem;
            }

                #infopanel .infoitem .content.size-lg .text h5 {
                    font-size: 1.5rem;
                }

                #infopanel .infoitem .content.size-lg .btn {
                    padding: .9rem 1.9rem;
                }

            #infopanel .infoitem .content > span {
                display: inline-block;
                vertical-align: middle;
            }

            #infopanel .infoitem .content .text {
                margin-right: 25px;
                text-align: left;
            }

                #infopanel .infoitem .content .text.hasicon {
                    margin-left: 36px;
                }

                #infopanel .infoitem .content .text h5 {
                    color: #fff;
                }

                #infopanel .infoitem .content .text a {
                    color: #fff;
                }

@media (max-width: 575px) {
    #infopanel .infoitem .content {
        padding-right: 14px;
    }

        #infopanel .infoitem .content .text {
            max-width: calc(100% - 30px) !important;
            text-align: center;
        }

        #infopanel .infoitem .content .buttons {
            margin-top: 6px;
            margin-bottom: 6px;
        }
}

/* -------------------- Onglets -------------------- */
.nav .nav-item .nav-link {
    color: #343a40;
    font-family: "Arquitecta-regular", Sans-serif;
    font-size: 1.3rem;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

    .nav .nav-item .nav-link.active {
        font-family: "Arquitecta-bold", Sans-serif;
    }

    .nav .nav-item .nav-link.active, .nav .nav-item .nav-link:hover {
        color: #3e64c1;
    }

.nav.nav-pills .nav-item, .nav.nav-tabs .nav-item {
    margin-top: .7rem;
}

    .nav.nav-pills .nav-item .nav-link, .nav.nav-tabs .nav-item .nav-link {
        position: relative;
    }

    .nav.nav-pills .nav-item .nav-link {
        padding-top: .6rem;
        padding-bottom: .6rem;
    }

        .nav.nav-pills .nav-item .nav-link.active {
            margin: 0 .4rem;
            color: #fff !important;
        }

html.no-touchevents .nav.nav-pills .nav-item .nav-link:hover {
    background-color: #ececec;
}

.nav.nav-pills .nav-item:first-child .nav-link.active {
    margin-left: 0;
}

.nav.nav-tabs .nav-item .nav-link::after {
    display: block;
    position: absolute;
    content: '';
    z-index: 1;
    bottom: 0;
    left: 1rem;
    width: calc(100% - 2rem);
    height: 2px;
    background-color: #3e64c1;
    transform-origin: right;
    transform: scaleX(0);
    transition: transform 0.3s ease, opacity 0.3s ease;
    opacity: .5;
}

.nav.nav-tabs .nav-item .nav-link.active::after,
html.no-touchevents .nav.nav-tabs .nav-item .nav-link:hover::after {
    transform-origin: left;
    transform: scaleX(1);
    opacity: 1;
}

.nav.nav-tabs::after {
    display: block;
    position: absolute;
    content: '';
    z-index: 1;
    bottom: 2px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #dee2e6;
}

.x-carousel .nav .nav-item a {
    white-space: nowrap;
}

.x-carousel .nav .flickity-prev-next-button.previous {
    left: -27px;
}

.x-carousel .nav .flickity-prev-next-button.next {
    right: -27px;
}

.x-carousel .nav.nav-tabs .flickity-prev-next-button, .x-carousel .nav.nav-pills .flickity-prev-next-button {
    margin-top: 5px;
}

.sticky-nav .x-carousel:not(.bottom-actions) {
    margin-right: 2rem;
}

/* -------------------- Blocs sticky zone de contenus (titres et action bottom) -------------------- */
article .has-sticky {
    position: relative;
}

article .sticky-observer {
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    height: 40px;
    visibility: hidden;
}

    article .sticky-observer.sticky-observer--top.sticky-top {
        top: -40px;
    }

    article .sticky-observer.sticky-observer--top.sticky-bottom {
        top: 0;
    }

    article .sticky-observer.sticky-observer--bottom.sticky-top {
        top: inherit;
        bottom: 97px;
    }

    article .sticky-observer.sticky-observer--bottom.sticky-bottom {
        bottom: 0;
    }

article .sticky {
    position: -webkit-sticky;
    position: sticky;
}

    article .sticky.sticky-top {
        z-index: 1020;
        top: 0;
    }

        article .sticky.sticky-top:not(thead) {
            margin: -30px 0 0 0 !important;
            padding: 20px 0 30px 0;
            background: linear-gradient(to bottom, #f8f8f8 0, #f8f8f8 calc(100% - 20px), rgba(248, 248, 248, 0) 100%) top center no-repeat;
        }

        article .sticky.sticky-top + * {
            margin-top: 0 !important;
            padding-top: 0 !important;
        }

    article .sticky.sticky-bottom {
        z-index: 1021;
        bottom: -150px;
        width: 100%;
        margin-left: 0;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0);
        white-space: nowrap;
    }

        article .sticky.sticky-bottom a.btn {
            min-height: 52px;
            color: #495057;
            font-size: 1.15em !important;
            letter-spacing: 0 !important;
            background-color: #fff;
        }

            article .sticky.sticky-bottom a.btn:not(:first-child) {
                border-left: 1px solid #ececec;
            }

            article .sticky.sticky-bottom a.btn:hover {
                color: #212529;
            }

        article .sticky.sticky-bottom > * {
            opacity: 1;
            transition: all 0.3s ease;
        }

        article .sticky.sticky-bottom .flickity-slider > div:first-child {
            padding: .6em 1.6em 1.4em 1.6em;
        }

        article .sticky.sticky-bottom.is-stuck {
            width: calc(100% + 60px);
            margin-left: -30px;
            background-color: #fff;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.14);
            transition: all 0.6s ease 0.3s;
        }

body.hideheader article .sticky.sticky-bottom.is-stuck {
    bottom: 0;
}

body.noiOSbottombar article .sticky.sticky-bottom.is-stuck {
    bottom: -34px;
}

    body.noiOSbottombar article .sticky.sticky-bottom.is-stuck::before {
        display: block;
        position: absolute;
        content: '';
        z-index: 1;
        content: '\f058';
        top: 3px;
        left: 60px;
        width: 20px;
        color: #3e64c1;
        text-align: center;
        font-family: 'Font Awesome 5 Pro';
        font-size: 1.3rem;
        font-weight: 700;
    }

    body.noiOSbottombar article .sticky.sticky-bottom.is-stuck > * {
        opacity: 0;
    }

body:not(.hideheader) article .sticky.sticky-bottom.is-stuck {
    transform: translateY(100%);
}

article .sticky.sticky-bottom.is-stuck a.btn {
    box-shadow: none !important;
}

article .sticky.sticky-bottom.is-stuck .flickity-slider > div:first-child {
    padding: .6em 1.6em;
}

body.hideheader article .sticky.sticky-bottom {
    transition: all 0.6s ease, transform 0.6s ease;
}

article .flickity-array table thead {
    position: relative !important;
}

    article .flickity-array table thead th {
        position: -webkit-sticky;
        position: sticky;
        top: 120px;
        background-color: transparent;
        transition: all 0.3s ease 0.3s;
    }

body.hideheader article .flickity-array table thead th {
    top: -2px;
    transition: all 0.3s ease;
}

article .flickity-array table thead.is-stuck th {
    z-index: 1;
    background-color: rgba(170, 170, 170, 0.9);
}

html.noadvancedSticky article .flickity-array table thead th {
    position: unset;
    background-color: inherit;
}

article .flickity-array table .sticky-observer.sticky-observer--bottom.sticky-top {
    bottom: 0;
}

@media (min-width: 576px) {
    article .sticky.sticky-bottom.is-stuck {
        width: calc(100% + 120px);
        margin-left: -60px;
    }
}

@media (min-width: 768px) {
    article .flickity-array table thead th {
        top: 142px;
    }
}

@media (min-width: 992px) {
    article .sticky.sticky-top {
        margin: -50px 0 0 0 !important;
        padding: 40px 0 30px;
    }

    article .sticky.sticky-bottom.is-stuck {
        bottom: 0 !important;
        transform: translateY(0) !important;
        background-color: #fff;
        box-shadow: 0 -1px 0 rgba(94, 94, 94, 0.14);
    }

        article .sticky.sticky-bottom.is-stuck .flickity-slider > div:first-child {
            padding: 1em 4.2em;
        }

    article .sticky.sticky-bottom:not(.is-stuck) .flickity-slider > div:first-child {
        padding: 1em 0 1.6em 0;
    }

    article .flickity-array table thead th {
        top: -2px;
        transition: all 0.3s ease;
    }
}

/* -------------------- Navigation par suivi scrolling -------------------- */
#scrollnav {
    display: flex;
    position: fixed;
    z-index: 500;
    top: 0;
    right: 0;
    width: 30px;
    height: calc(100vh - 76px);
    padding-top: 38px;
    justify-content: center;
    flex-direction: column;
    font-size: .95rem;
    background-color: transparent;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

    #scrollnav::before, #scrollnav::after {
        display: block;
        position: absolute;
        content: '';
        z-index: 1;
        top: 0;
        width: 100%;
        height: 20%;
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.04) 0, rgba(0, 0, 0, 0) 100%) top center no-repeat;
        opacity: 0;
        transition: all 0.3s ease;
    }

    #scrollnav::after {
        top: unset;
        bottom: 0;
        transform: rotate(180deg);
    }

    #scrollnav > .close-scrollnav {
        position: absolute;
        display: none;
        z-index: 2;
        top: 10px;
        right: -20px;
    }

html.touchevents #scrollnav > .close-scrollnav {
    display: block;
}

#scrollnav > div {
    padding: 0 0 0 1rem;
    z-index: 2;
}

    #scrollnav > div > nav {
        position: relative;
        border-left: 2px solid transparent;
        margin-bottom: 2rem;
    }

        #scrollnav > div > nav a.nav-link {
            max-height: 0;
            min-width: 172px;
            padding: .65rem 1.4rem;
            color: #6c757d;
            transition: all 0.3s ease;
        }

            #scrollnav > div > nav a.nav-link > span {
                max-height: 0;
                opacity: 0;
                overflow: hidden;
                transition: all 0.3s ease;
            }

            #scrollnav > div > nav a.nav-link::before {
                display: block;
                position: absolute;
                content: '';
                z-index: 1;
                left: -5px;
                width: 12px;
                height: 12px;
                margin-top: calc(.65em - 4px);
                border: 3px solid #f8f8f8;
                border-radius: 50%;
                background-color: #adb5bd;
                transform: scale(1);
                transition: all 0.3s ease;
                transform-origin: center center;
            }

            #scrollnav > div > nav a.nav-link.active {
                padding: 1.1rem 1.4rem !important;
                color: #3e64c1;
            }

                #scrollnav > div > nav a.nav-link.active::before {
                    transform: scale(1.4);
                    border: 2px solid #f8f8f8;
                    box-shadow: 0 0 0 2px rgba(62, 100, 193, 0.2);
                    background-color: #3e64c1;
                }

        #scrollnav > div > nav nav {
            padding-left: .6rem;
            font-size: .9em;
        }

        #scrollnav > div > nav > a.nav-link {
            font-weight: bold;
        }

        #scrollnav > div > nav > a,
        #scrollnav > div > nav > nav {
            position: relative;
            left: -2px;
        }

#scrollnav.hover {
    z-index: 1050;
    width: 230px;
    height: 100vh;
    padding-top: 0;
    font-size: .95rem;
    background-color: #fff;
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.1);
}

    #scrollnav.hover::before, #scrollnav.hover::after {
        opacity: 1;
    }

    #scrollnav.hover > .close-scrollnav {
        right: 20px;
    }

    #scrollnav.hover > div {
        overflow-x: hidden;
        overflow-y: auto;
        padding: 2rem;
    }

        #scrollnav.hover > div > nav {
            border-left: 2px solid #f8f9fa;
        }

            #scrollnav.hover > div > nav a.nav-link {
                padding: .4rem 1.4rem !important;
                max-height: 100px;
            }

                #scrollnav.hover > div > nav a.nav-link > span {
                    max-height: 30%;
                    opacity: 1;
                }

                #scrollnav.hover > div > nav a.nav-link.active {
                    padding: 1rem 1.4rem !important;
                }

            #scrollnav.hover > div > nav > a.nav-link {
                padding: .6rem 1.4rem !important;
            }

@media (min-width: 576px) {
    #scrollnav {
        width: 40px;
    }

        #scrollnav > div {
            padding: 0 0 0 1.4rem;
        }

        #scrollnav.hover {
            width: 280px;
        }

            #scrollnav.hover > div {
                padding: 3rem;
            }
}

/* -------------------- Thème couleur des grandes rubriques -------------------- */
body.erp.rub-publication {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-publication main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-publication main > article .breadcrumb-item a:hover {
            color: #9b369b !important;
        }

        body.erp.rub-publication main > article .nav .nav-item .nav-link.active, body.erp.rub-publication main > article .nav .nav-item .nav-link:hover {
            color: #9b369b;
        }

        body.erp.rub-publication main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #9b369b;
        }

        body.erp.rub-publication main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #9b369b;
        }

        body.erp.rub-publication main > article .sticky.sticky-bottom.is-stuck::before {
            color: #9b369b;
        }

        body.erp.rub-publication main > article .form-control:focus,
        body.erp.rub-publication main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(155, 54, 155, 0), 0 16px 44px rgba(155, 54, 155, 0.08), 0 0 0 3px rgba(155, 54, 155, 0.3), 0 8px 30px rgba(155, 54, 155, 0.12);
        }

            body.erp.rub-publication main > article .form-control:focus.disabled,
            body.erp.rub-publication main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-publication main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #9b369b !important;
            background-color: #9b369b !important;
        }

        body.erp.rub-publication main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(155, 54, 155, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-publication main > article .bootstrap-select .dropdown-item:active, body.erp.rub-publication main > article .bootstrap-select .dropdown-item.active, body.erp.rub-publication main > article .bootstrap-select .dropdown-item.selected {
            background-color: #9b369b !important;
        }

        body.erp.rub-publication main > article .pagination .page-item.prev .page-link, body.erp.rub-publication main > article .pagination .page-item.next .page-link {
            color: #9b369b !important;
        }

        body.erp.rub-publication main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-publication main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(155, 54, 155, 0.4) !important;
        }

        body.erp.rub-publication main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(155, 54, 155, 0.5) !important;
        }

        body.erp.rub-publication main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #9b369b !important;
        }

    body.erp.rub-publication #scrollnav > div > nav a.nav-link.active {
        color: #9b369b;
    }

        body.erp.rub-publication #scrollnav > div > nav a.nav-link.active::before {
            background-color: #9b369b;
            box-shadow: 0 0 0 2px rgba(155, 54, 155, 0.2);
        }

    body.erp.rub-publication main > article a:not(.btn),
    body.erp.rub-publication .popover a:not(.btn) {
        color: #9b369b;
    }

    body.erp.rub-publication main > article ul.savedsearcheslist li:hover, body.erp.rub-publication main > article ul.savedsearcheslist li.import,
    body.erp.rub-publication .popover ul.savedsearcheslist li:hover,
    body.erp.rub-publication .popover ul.savedsearcheslist li.import {
        background-color: #9b369b;
    }

    body.erp.rub-publication main > article h2, body.erp.rub-publication main > article h3, body.erp.rub-publication main > article h4, body.erp.rub-publication main > article h5, body.erp.rub-publication main > article h6,
    body.erp.rub-publication .modal h2,
    body.erp.rub-publication .modal h3,
    body.erp.rub-publication .modal h4,
    body.erp.rub-publication .modal h5,
    body.erp.rub-publication .modal h6 {
        color: #9b369b;
    }

        body.erp.rub-publication main > article h2 i svg use, body.erp.rub-publication main > article h3 i svg use, body.erp.rub-publication main > article h4 i svg use, body.erp.rub-publication main > article h5 i svg use, body.erp.rub-publication main > article h6 i svg use,
        body.erp.rub-publication .modal h2 i svg use,
        body.erp.rub-publication .modal h3 i svg use,
        body.erp.rub-publication .modal h4 i svg use,
        body.erp.rub-publication .modal h5 i svg use,
        body.erp.rub-publication .modal h6 i svg use {
            stroke: #9b369b;
        }

    body.erp.rub-publication .modal a:not(.btn) {
        color: #9b369b;
    }

    body.erp.rub-publication .loader .spin::before {
        background: linear-gradient(#9b369b, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-publication.reduced-menu-left nav.menu-left {
            background: rgba(155, 54, 155, 0.6);
        }
}

body.erp.rub-abstracts {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-abstracts main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-abstracts main > article .breadcrumb-item a:hover {
            color: #f5ba1b !important;
        }

        body.erp.rub-abstracts main > article .nav .nav-item .nav-link.active, body.erp.rub-abstracts main > article .nav .nav-item .nav-link:hover {
            color: #f5ba1b;
        }

        body.erp.rub-abstracts main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #f5ba1b;
        }

        body.erp.rub-abstracts main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #f5ba1b;
        }

        body.erp.rub-abstracts main > article .sticky.sticky-bottom.is-stuck::before {
            color: #f5ba1b;
        }

        body.erp.rub-abstracts main > article .form-control:focus,
        body.erp.rub-abstracts main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(245, 186, 27, 0), 0 16px 44px rgba(245, 186, 27, 0.08), 0 0 0 3px rgba(245, 186, 27, 0.3), 0 8px 30px rgba(245, 186, 27, 0.12);
        }

            body.erp.rub-abstracts main > article .form-control:focus.disabled,
            body.erp.rub-abstracts main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-abstracts main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #f5ba1b !important;
            background-color: #f5ba1b !important;
        }

        body.erp.rub-abstracts main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(245, 186, 27, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-abstracts main > article .bootstrap-select .dropdown-item:active, body.erp.rub-abstracts main > article .bootstrap-select .dropdown-item.active, body.erp.rub-abstracts main > article .bootstrap-select .dropdown-item.selected {
            background-color: #f5ba1b !important;
        }

        body.erp.rub-abstracts main > article .pagination .page-item.prev .page-link, body.erp.rub-abstracts main > article .pagination .page-item.next .page-link {
            color: #f5ba1b !important;
        }

        body.erp.rub-abstracts main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-abstracts main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(245, 186, 27, 0.4) !important;
        }

        body.erp.rub-abstracts main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(245, 186, 27, 0.5) !important;
        }

        body.erp.rub-abstracts main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #f5ba1b !important;
        }

    body.erp.rub-abstracts #scrollnav > div > nav a.nav-link.active {
        color: #f5ba1b;
    }

        body.erp.rub-abstracts #scrollnav > div > nav a.nav-link.active::before {
            background-color: #f5ba1b;
            box-shadow: 0 0 0 2px rgba(245, 186, 27, 0.2);
        }

    body.erp.rub-abstracts main > article a:not(.btn),
    body.erp.rub-abstracts .popover a:not(.btn) {
        color: #f5ba1b;
    }

    body.erp.rub-abstracts main > article ul.savedsearcheslist li:hover, body.erp.rub-abstracts main > article ul.savedsearcheslist li.import,
    body.erp.rub-abstracts .popover ul.savedsearcheslist li:hover,
    body.erp.rub-abstracts .popover ul.savedsearcheslist li.import {
        background-color: #f5ba1b;
    }

    body.erp.rub-abstracts main > article h2, body.erp.rub-abstracts main > article h3, body.erp.rub-abstracts main > article h4, body.erp.rub-abstracts main > article h5, body.erp.rub-abstracts main > article h6,
    body.erp.rub-abstracts .modal h2,
    body.erp.rub-abstracts .modal h3,
    body.erp.rub-abstracts .modal h4,
    body.erp.rub-abstracts .modal h5,
    body.erp.rub-abstracts .modal h6 {
        color: #f5ba1b;
    }

        body.erp.rub-abstracts main > article h2 i svg use, body.erp.rub-abstracts main > article h3 i svg use, body.erp.rub-abstracts main > article h4 i svg use, body.erp.rub-abstracts main > article h5 i svg use, body.erp.rub-abstracts main > article h6 i svg use,
        body.erp.rub-abstracts .modal h2 i svg use,
        body.erp.rub-abstracts .modal h3 i svg use,
        body.erp.rub-abstracts .modal h4 i svg use,
        body.erp.rub-abstracts .modal h5 i svg use,
        body.erp.rub-abstracts .modal h6 i svg use {
            stroke: #f5ba1b;
        }

    body.erp.rub-abstracts .modal a:not(.btn) {
        color: #f5ba1b;
    }

    body.erp.rub-abstracts .loader .spin::before {
        background: linear-gradient(#f5ba1b, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-abstracts.reduced-menu-left nav.menu-left {
            background: rgba(245, 186, 27, 0.6);
        }
}

body.erp.rub-groupes {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-groupes main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-groupes main > article .breadcrumb-item a:hover {
            color: #409c6a !important;
        }

        body.erp.rub-groupes main > article .nav .nav-item .nav-link.active, body.erp.rub-groupes main > article .nav .nav-item .nav-link:hover {
            color: #409c6a;
        }

        body.erp.rub-groupes main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #409c6a;
        }

        body.erp.rub-groupes main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #409c6a;
        }

        body.erp.rub-groupes main > article .sticky.sticky-bottom.is-stuck::before {
            color: #409c6a;
        }

        body.erp.rub-groupes main > article .form-control:focus,
        body.erp.rub-groupes main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(64, 156, 106, 0), 0 16px 44px rgba(64, 156, 106, 0.08), 0 0 0 3px rgba(64, 156, 106, 0.3), 0 8px 30px rgba(64, 156, 106, 0.12);
        }

            body.erp.rub-groupes main > article .form-control:focus.disabled,
            body.erp.rub-groupes main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-groupes main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #409c6a !important;
            background-color: #409c6a !important;
        }

        body.erp.rub-groupes main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(64, 156, 106, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-groupes main > article .bootstrap-select .dropdown-item:active, body.erp.rub-groupes main > article .bootstrap-select .dropdown-item.active, body.erp.rub-groupes main > article .bootstrap-select .dropdown-item.selected {
            background-color: #409c6a !important;
        }

        body.erp.rub-groupes main > article .pagination .page-item.prev .page-link, body.erp.rub-groupes main > article .pagination .page-item.next .page-link {
            color: #409c6a !important;
        }

        body.erp.rub-groupes main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-groupes main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(64, 156, 106, 0.4) !important;
        }

        body.erp.rub-groupes main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(64, 156, 106, 0.5) !important;
        }

        body.erp.rub-groupes main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #409c6a !important;
        }

    body.erp.rub-groupes #scrollnav > div > nav a.nav-link.active {
        color: #409c6a;
    }

        body.erp.rub-groupes #scrollnav > div > nav a.nav-link.active::before {
            background-color: #409c6a;
            box-shadow: 0 0 0 2px rgba(64, 156, 106, 0.2);
        }

    body.erp.rub-groupes main > article a:not(.btn),
    body.erp.rub-groupes .popover a:not(.btn) {
        color: #409c6a;
    }

    body.erp.rub-groupes main > article ul.savedsearcheslist li:hover, body.erp.rub-groupes main > article ul.savedsearcheslist li.import,
    body.erp.rub-groupes .popover ul.savedsearcheslist li:hover,
    body.erp.rub-groupes .popover ul.savedsearcheslist li.import {
        background-color: #409c6a;
    }

    body.erp.rub-groupes main > article h2, body.erp.rub-groupes main > article h3, body.erp.rub-groupes main > article h4, body.erp.rub-groupes main > article h5, body.erp.rub-groupes main > article h6,
    body.erp.rub-groupes .modal h2,
    body.erp.rub-groupes .modal h3,
    body.erp.rub-groupes .modal h4,
    body.erp.rub-groupes .modal h5,
    body.erp.rub-groupes .modal h6 {
        color: #409c6a;
    }

        body.erp.rub-groupes main > article h2 i svg use, body.erp.rub-groupes main > article h3 i svg use, body.erp.rub-groupes main > article h4 i svg use, body.erp.rub-groupes main > article h5 i svg use, body.erp.rub-groupes main > article h6 i svg use,
        body.erp.rub-groupes .modal h2 i svg use,
        body.erp.rub-groupes .modal h3 i svg use,
        body.erp.rub-groupes .modal h4 i svg use,
        body.erp.rub-groupes .modal h5 i svg use,
        body.erp.rub-groupes .modal h6 i svg use {
            stroke: #409c6a;
        }

    body.erp.rub-groupes .modal a:not(.btn) {
        color: #409c6a;
    }

    body.erp.rub-groupes .loader .spin::before {
        background: linear-gradient(#409c6a, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-groupes.reduced-menu-left nav.menu-left {
            background: rgba(64, 156, 106, 0.6);
        }
}

body.erp.rub-financiers {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-financiers main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-financiers main > article .breadcrumb-item a:hover {
            color: #e8192c !important;
        }

        body.erp.rub-financiers main > article .nav .nav-item .nav-link.active, body.erp.rub-financiers main > article .nav .nav-item .nav-link:hover {
            color: #e8192c;
        }

        body.erp.rub-financiers main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #e8192c;
        }

        body.erp.rub-financiers main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #e8192c;
        }

        body.erp.rub-financiers main > article .sticky.sticky-bottom.is-stuck::before {
            color: #e8192c;
        }

        body.erp.rub-financiers main > article .form-control:focus,
        body.erp.rub-financiers main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(232, 25, 44, 0), 0 16px 44px rgba(232, 25, 44, 0.08), 0 0 0 3px rgba(232, 25, 44, 0.3), 0 8px 30px rgba(232, 25, 44, 0.12);
        }

            body.erp.rub-financiers main > article .form-control:focus.disabled,
            body.erp.rub-financiers main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-financiers main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #e8192c !important;
            background-color: #e8192c !important;
        }

        body.erp.rub-financiers main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(232, 25, 44, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-financiers main > article .bootstrap-select .dropdown-item:active, body.erp.rub-financiers main > article .bootstrap-select .dropdown-item.active, body.erp.rub-financiers main > article .bootstrap-select .dropdown-item.selected {
            background-color: #e8192c !important;
        }

        body.erp.rub-financiers main > article .pagination .page-item.prev .page-link, body.erp.rub-financiers main > article .pagination .page-item.next .page-link {
            color: #e8192c !important;
        }

        body.erp.rub-financiers main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-financiers main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(232, 25, 44, 0.4) !important;
        }

        body.erp.rub-financiers main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(232, 25, 44, 0.5) !important;
        }

        body.erp.rub-financiers main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #e8192c !important;
        }

    body.erp.rub-financiers #scrollnav > div > nav a.nav-link.active {
        color: #e8192c;
    }

        body.erp.rub-financiers #scrollnav > div > nav a.nav-link.active::before {
            background-color: #e8192c;
            box-shadow: 0 0 0 2px rgba(232, 25, 44, 0.2);
        }

    body.erp.rub-financiers main > article a:not(.btn),
    body.erp.rub-financiers .popover a:not(.btn) {
        color: #e8192c;
    }

    body.erp.rub-financiers main > article ul.savedsearcheslist li:hover, body.erp.rub-financiers main > article ul.savedsearcheslist li.import,
    body.erp.rub-financiers .popover ul.savedsearcheslist li:hover,
    body.erp.rub-financiers .popover ul.savedsearcheslist li.import {
        background-color: #e8192c;
    }

    body.erp.rub-financiers main > article h2, body.erp.rub-financiers main > article h3, body.erp.rub-financiers main > article h4, body.erp.rub-financiers main > article h5, body.erp.rub-financiers main > article h6,
    body.erp.rub-financiers .modal h2,
    body.erp.rub-financiers .modal h3,
    body.erp.rub-financiers .modal h4,
    body.erp.rub-financiers .modal h5,
    body.erp.rub-financiers .modal h6 {
        color: #e8192c;
    }

        body.erp.rub-financiers main > article h2 i svg use, body.erp.rub-financiers main > article h3 i svg use, body.erp.rub-financiers main > article h4 i svg use, body.erp.rub-financiers main > article h5 i svg use, body.erp.rub-financiers main > article h6 i svg use,
        body.erp.rub-financiers .modal h2 i svg use,
        body.erp.rub-financiers .modal h3 i svg use,
        body.erp.rub-financiers .modal h4 i svg use,
        body.erp.rub-financiers .modal h5 i svg use,
        body.erp.rub-financiers .modal h6 i svg use {
            stroke: #e8192c;
        }

    body.erp.rub-financiers .modal a:not(.btn) {
        color: #e8192c;
    }

    body.erp.rub-financiers .loader .spin::before {
        background: linear-gradient(#e8192c, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-financiers.reduced-menu-left nav.menu-left {
            background: rgba(232, 25, 44, 0.6);
        }
}

body.erp.rub-hebergement {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-hebergement main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-hebergement main > article .breadcrumb-item a:hover {
            color: #264c95 !important;
        }

        body.erp.rub-hebergement main > article .nav .nav-item .nav-link.active, body.erp.rub-hebergement main > article .nav .nav-item .nav-link:hover {
            color: #264c95;
        }

        body.erp.rub-hebergement main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #264c95;
        }

        body.erp.rub-hebergement main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #264c95;
        }

        body.erp.rub-hebergement main > article .sticky.sticky-bottom.is-stuck::before {
            color: #264c95;
        }

        body.erp.rub-hebergement main > article .form-control:focus,
        body.erp.rub-hebergement main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(38, 76, 149, 0), 0 16px 44px rgba(38, 76, 149, 0.08), 0 0 0 3px rgba(38, 76, 149, 0.3), 0 8px 30px rgba(38, 76, 149, 0.12);
        }

            body.erp.rub-hebergement main > article .form-control:focus.disabled,
            body.erp.rub-hebergement main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-hebergement main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #264c95 !important;
            background-color: #264c95 !important;
        }

        body.erp.rub-hebergement main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(38, 76, 149, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-hebergement main > article .bootstrap-select .dropdown-item:active, body.erp.rub-hebergement main > article .bootstrap-select .dropdown-item.active, body.erp.rub-hebergement main > article .bootstrap-select .dropdown-item.selected {
            background-color: #264c95 !important;
        }

        body.erp.rub-hebergement main > article .pagination .page-item.prev .page-link, body.erp.rub-hebergement main > article .pagination .page-item.next .page-link {
            color: #264c95 !important;
        }

        body.erp.rub-hebergement main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-hebergement main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(38, 76, 149, 0.4) !important;
        }

        body.erp.rub-hebergement main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(38, 76, 149, 0.5) !important;
        }

        body.erp.rub-hebergement main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #264c95 !important;
        }

    body.erp.rub-hebergement #scrollnav > div > nav a.nav-link.active {
        color: #264c95;
    }

        body.erp.rub-hebergement #scrollnav > div > nav a.nav-link.active::before {
            background-color: #264c95;
            box-shadow: 0 0 0 2px rgba(38, 76, 149, 0.2);
        }

    body.erp.rub-hebergement main > article a:not(.btn),
    body.erp.rub-hebergement .popover a:not(.btn) {
        color: #264c95;
    }

    body.erp.rub-hebergement main > article ul.savedsearcheslist li:hover, body.erp.rub-hebergement main > article ul.savedsearcheslist li.import,
    body.erp.rub-hebergement .popover ul.savedsearcheslist li:hover,
    body.erp.rub-hebergement .popover ul.savedsearcheslist li.import {
        background-color: #264c95;
    }

    body.erp.rub-hebergement main > article h2, body.erp.rub-hebergement main > article h3, body.erp.rub-hebergement main > article h4, body.erp.rub-hebergement main > article h5, body.erp.rub-hebergement main > article h6,
    body.erp.rub-hebergement .modal h2,
    body.erp.rub-hebergement .modal h3,
    body.erp.rub-hebergement .modal h4,
    body.erp.rub-hebergement .modal h5,
    body.erp.rub-hebergement .modal h6 {
        color: #264c95;
    }

        body.erp.rub-hebergement main > article h2 i svg use, body.erp.rub-hebergement main > article h3 i svg use, body.erp.rub-hebergement main > article h4 i svg use, body.erp.rub-hebergement main > article h5 i svg use, body.erp.rub-hebergement main > article h6 i svg use,
        body.erp.rub-hebergement .modal h2 i svg use,
        body.erp.rub-hebergement .modal h3 i svg use,
        body.erp.rub-hebergement .modal h4 i svg use,
        body.erp.rub-hebergement .modal h5 i svg use,
        body.erp.rub-hebergement .modal h6 i svg use {
            stroke: #264c95;
        }

    body.erp.rub-hebergement .modal a:not(.btn) {
        color: #264c95;
    }

    body.erp.rub-hebergement .loader .spin::before {
        background: linear-gradient(#264c95, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-hebergement.reduced-menu-left nav.menu-left {
            background: rgba(38, 76, 149, 0.6);
        }
}

body.erp.rub-inscriptions {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-inscriptions main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-inscriptions main > article .breadcrumb-item a:hover {
            color: #0088db !important;
        }

        body.erp.rub-inscriptions main > article .nav .nav-item .nav-link.active, body.erp.rub-inscriptions main > article .nav .nav-item .nav-link:hover {
            color: #0088db;
        }

        body.erp.rub-inscriptions main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #0088db;
        }

        body.erp.rub-inscriptions main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #0088db;
        }

        body.erp.rub-inscriptions main > article .sticky.sticky-bottom.is-stuck::before {
            color: #0088db;
        }

        body.erp.rub-inscriptions main > article .form-control:focus,
        body.erp.rub-inscriptions main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(0, 136, 219, 0), 0 16px 44px rgba(0, 136, 219, 0.08), 0 0 0 3px rgba(0, 136, 219, 0.3), 0 8px 30px rgba(0, 136, 219, 0.12);
        }

            body.erp.rub-inscriptions main > article .form-control:focus.disabled,
            body.erp.rub-inscriptions main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-inscriptions main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #0088db !important;
            background-color: #0088db !important;
        }

        body.erp.rub-inscriptions main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(0, 136, 219, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-inscriptions main > article .bootstrap-select .dropdown-item:active, body.erp.rub-inscriptions main > article .bootstrap-select .dropdown-item.active, body.erp.rub-inscriptions main > article .bootstrap-select .dropdown-item.selected {
            background-color: #0088db !important;
        }

        body.erp.rub-inscriptions main > article .pagination .page-item.prev .page-link, body.erp.rub-inscriptions main > article .pagination .page-item.next .page-link {
            color: #0088db !important;
        }

        body.erp.rub-inscriptions main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-inscriptions main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(0, 136, 219, 0.4) !important;
        }

        body.erp.rub-inscriptions main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(0, 136, 219, 0.5) !important;
        }

        body.erp.rub-inscriptions main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #0088db !important;
        }

    body.erp.rub-inscriptions #scrollnav > div > nav a.nav-link.active {
        color: #0088db;
    }

        body.erp.rub-inscriptions #scrollnav > div > nav a.nav-link.active::before {
            background-color: #0088db;
            box-shadow: 0 0 0 2px rgba(0, 136, 219, 0.2);
        }

    body.erp.rub-inscriptions main > article a:not(.btn),
    body.erp.rub-inscriptions .popover a:not(.btn) {
        color: #0088db;
    }

    body.erp.rub-inscriptions main > article ul.savedsearcheslist li:hover, body.erp.rub-inscriptions main > article ul.savedsearcheslist li.import,
    body.erp.rub-inscriptions .popover ul.savedsearcheslist li:hover,
    body.erp.rub-inscriptions .popover ul.savedsearcheslist li.import {
        background-color: #0088db;
    }

    body.erp.rub-inscriptions main > article h2, body.erp.rub-inscriptions main > article h3, body.erp.rub-inscriptions main > article h4, body.erp.rub-inscriptions main > article h5, body.erp.rub-inscriptions main > article h6,
    body.erp.rub-inscriptions .modal h2,
    body.erp.rub-inscriptions .modal h3,
    body.erp.rub-inscriptions .modal h4,
    body.erp.rub-inscriptions .modal h5,
    body.erp.rub-inscriptions .modal h6 {
        color: #0088db;
    }

        body.erp.rub-inscriptions main > article h2 i svg use, body.erp.rub-inscriptions main > article h3 i svg use, body.erp.rub-inscriptions main > article h4 i svg use, body.erp.rub-inscriptions main > article h5 i svg use, body.erp.rub-inscriptions main > article h6 i svg use,
        body.erp.rub-inscriptions .modal h2 i svg use,
        body.erp.rub-inscriptions .modal h3 i svg use,
        body.erp.rub-inscriptions .modal h4 i svg use,
        body.erp.rub-inscriptions .modal h5 i svg use,
        body.erp.rub-inscriptions .modal h6 i svg use {
            stroke: #0088db;
        }

    body.erp.rub-inscriptions .modal a:not(.btn) {
        color: #0088db;
    }

    body.erp.rub-inscriptions .loader .spin::before {
        background: linear-gradient(#0088db, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-inscriptions.reduced-menu-left nav.menu-left {
            background: rgba(0, 136, 219, 0.6);
        }
}

body.erp.rub-emailing {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-emailing main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-emailing main > article .breadcrumb-item a:hover {
            color: #ff6000 !important;
        }

        body.erp.rub-emailing main > article .nav .nav-item .nav-link.active, body.erp.rub-emailing main > article .nav .nav-item .nav-link:hover {
            color: #ff6000;
        }

        body.erp.rub-emailing main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #ff6000;
        }

        body.erp.rub-emailing main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #ff6000;
        }

        body.erp.rub-emailing main > article .sticky.sticky-bottom.is-stuck::before {
            color: #ff6000;
        }

        body.erp.rub-emailing main > article .form-control:focus,
        body.erp.rub-emailing main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(255, 96, 0, 0), 0 16px 44px rgba(255, 96, 0, 0.08), 0 0 0 3px rgba(255, 96, 0, 0.3), 0 8px 30px rgba(255, 96, 0, 0.12);
        }

            body.erp.rub-emailing main > article .form-control:focus.disabled,
            body.erp.rub-emailing main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-emailing main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #ff6000 !important;
            background-color: #ff6000 !important;
        }

        body.erp.rub-emailing main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(255, 96, 0, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-emailing main > article .bootstrap-select .dropdown-item:active, body.erp.rub-emailing main > article .bootstrap-select .dropdown-item.active, body.erp.rub-emailing main > article .bootstrap-select .dropdown-item.selected {
            background-color: #ff6000 !important;
        }

        body.erp.rub-emailing main > article .pagination .page-item.prev .page-link, body.erp.rub-emailing main > article .pagination .page-item.next .page-link {
            color: #ff6000 !important;
        }

        body.erp.rub-emailing main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-emailing main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(255, 96, 0, 0.4) !important;
        }

        body.erp.rub-emailing main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(255, 96, 0, 0.5) !important;
        }

        body.erp.rub-emailing main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #ff6000 !important;
        }

    body.erp.rub-emailing #scrollnav > div > nav a.nav-link.active {
        color: #ff6000;
    }

        body.erp.rub-emailing #scrollnav > div > nav a.nav-link.active::before {
            background-color: #ff6000;
            box-shadow: 0 0 0 2px rgba(255, 96, 0, 0.2);
        }

    body.erp.rub-emailing main > article a:not(.btn),
    body.erp.rub-emailing .popover a:not(.btn) {
        color: #ff6000;
    }

    body.erp.rub-emailing main > article ul.savedsearcheslist li:hover, body.erp.rub-emailing main > article ul.savedsearcheslist li.import,
    body.erp.rub-emailing .popover ul.savedsearcheslist li:hover,
    body.erp.rub-emailing .popover ul.savedsearcheslist li.import {
        background-color: #ff6000;
    }

    body.erp.rub-emailing main > article h2, body.erp.rub-emailing main > article h3, body.erp.rub-emailing main > article h4, body.erp.rub-emailing main > article h5, body.erp.rub-emailing main > article h6,
    body.erp.rub-emailing .modal h2,
    body.erp.rub-emailing .modal h3,
    body.erp.rub-emailing .modal h4,
    body.erp.rub-emailing .modal h5,
    body.erp.rub-emailing .modal h6 {
        color: #ff6000;
    }

        body.erp.rub-emailing main > article h2 i svg use, body.erp.rub-emailing main > article h3 i svg use, body.erp.rub-emailing main > article h4 i svg use, body.erp.rub-emailing main > article h5 i svg use, body.erp.rub-emailing main > article h6 i svg use,
        body.erp.rub-emailing .modal h2 i svg use,
        body.erp.rub-emailing .modal h3 i svg use,
        body.erp.rub-emailing .modal h4 i svg use,
        body.erp.rub-emailing .modal h5 i svg use,
        body.erp.rub-emailing .modal h6 i svg use {
            stroke: #ff6000;
        }

    body.erp.rub-emailing .modal a:not(.btn) {
        color: #ff6000;
    }

    body.erp.rub-emailing .loader .spin::before {
        background: linear-gradient(#ff6000, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-emailing.reduced-menu-left nav.menu-left {
            background: rgba(255, 96, 0, 0.6);
        }
}

body.erp.rub-statistiques {
    /* Navigation par suivi scrolling */
    /* Liens */
    /* Titres */
    /* Spinner */
}

    body.erp.rub-statistiques main > article {
        /* Breadcrump */
        /* Onglets */
        /* Blocs sticky */
        /* Formulaires */
        /* Pagination */
    }

        body.erp.rub-statistiques main > article .breadcrumb-item a:hover {
            color: #0eb7a9 !important;
        }

        body.erp.rub-statistiques main > article .nav .nav-item .nav-link.active, body.erp.rub-statistiques main > article .nav .nav-item .nav-link:hover {
            color: #0eb7a9;
        }

        body.erp.rub-statistiques main > article .nav.nav-tabs .nav-item .nav-link::after {
            background-color: #0eb7a9;
        }

        body.erp.rub-statistiques main > article .nav.nav-pills .nav-item .nav-link.active {
            background-color: #0eb7a9;
        }

        body.erp.rub-statistiques main > article .sticky.sticky-bottom.is-stuck::before {
            color: #0eb7a9;
        }

        body.erp.rub-statistiques main > article .form-control:focus,
        body.erp.rub-statistiques main > article .custom-select:focus {
            box-shadow: 0 0 0 3px rgba(14, 183, 169, 0), 0 16px 44px rgba(14, 183, 169, 0.08), 0 0 0 3px rgba(14, 183, 169, 0.3), 0 8px 30px rgba(14, 183, 169, 0.12);
        }

            body.erp.rub-statistiques main > article .form-control:focus.disabled,
            body.erp.rub-statistiques main > article .custom-select:focus.disabled {
                box-shadow: none !important;
            }

        body.erp.rub-statistiques main > article .custom-control-input:checked ~ .custom-control-label::before {
            border-color: #0eb7a9 !important;
            background-color: #0eb7a9 !important;
        }

        body.erp.rub-statistiques main > article .custom-control-input:focus ~ .custom-control-label::before {
            box-shadow: 0 0 0 0.2rem rgba(14, 183, 169, 0.25), 0 3px 14px rgba(0, 0, 0, 0.08) !important;
        }

        body.erp.rub-statistiques main > article .bootstrap-select .dropdown-item:active, body.erp.rub-statistiques main > article .bootstrap-select .dropdown-item.active, body.erp.rub-statistiques main > article .bootstrap-select .dropdown-item.selected {
            background-color: #0eb7a9 !important;
        }

        body.erp.rub-statistiques main > article .pagination .page-item.prev .page-link, body.erp.rub-statistiques main > article .pagination .page-item.next .page-link {
            color: #0eb7a9 !important;
        }

        body.erp.rub-statistiques main > article .pagination .page-item.prev.disabled .page-link, body.erp.rub-statistiques main > article .pagination .page-item.next.disabled .page-link {
            color: rgba(14, 183, 169, 0.4) !important;
        }

        body.erp.rub-statistiques main > article .pagination .page-item:not(.prev):not(.next) .page-link {
            background-color: rgba(14, 183, 169, 0.5) !important;
        }

        body.erp.rub-statistiques main > article .pagination .page-item:not(.prev):not(.next).active .page-link {
            background-color: #0eb7a9 !important;
        }

    body.erp.rub-statistiques #scrollnav > div > nav a.nav-link.active {
        color: #0eb7a9;
    }

        body.erp.rub-statistiques #scrollnav > div > nav a.nav-link.active::before {
            background-color: #0eb7a9;
            box-shadow: 0 0 0 2px rgba(14, 183, 169, 0.2);
        }

    body.erp.rub-statistiques main > article a:not(.btn),
    body.erp.rub-statistiques .popover a:not(.btn) {
        color: #0eb7a9;
    }

    body.erp.rub-statistiques main > article ul.savedsearcheslist li:hover, body.erp.rub-statistiques main > article ul.savedsearcheslist li.import,
    body.erp.rub-statistiques .popover ul.savedsearcheslist li:hover,
    body.erp.rub-statistiques .popover ul.savedsearcheslist li.import {
        background-color: #0eb7a9;
    }

    body.erp.rub-statistiques main > article h2, body.erp.rub-statistiques main > article h3, body.erp.rub-statistiques main > article h4, body.erp.rub-statistiques main > article h5, body.erp.rub-statistiques main > article h6,
    body.erp.rub-statistiques .modal h2,
    body.erp.rub-statistiques .modal h3,
    body.erp.rub-statistiques .modal h4,
    body.erp.rub-statistiques .modal h5,
    body.erp.rub-statistiques .modal h6 {
        color: #0eb7a9;
    }

        body.erp.rub-statistiques main > article h2 i svg use, body.erp.rub-statistiques main > article h3 i svg use, body.erp.rub-statistiques main > article h4 i svg use, body.erp.rub-statistiques main > article h5 i svg use, body.erp.rub-statistiques main > article h6 i svg use,
        body.erp.rub-statistiques .modal h2 i svg use,
        body.erp.rub-statistiques .modal h3 i svg use,
        body.erp.rub-statistiques .modal h4 i svg use,
        body.erp.rub-statistiques .modal h5 i svg use,
        body.erp.rub-statistiques .modal h6 i svg use {
            stroke: #0eb7a9;
        }

    body.erp.rub-statistiques .modal a:not(.btn) {
        color: #0eb7a9;
    }

    body.erp.rub-statistiques .loader .spin::before {
        background: linear-gradient(#0eb7a9, #fff 50%);
    }

@media (min-width: 992px) {
    body.erp {
        /* Fond menu gauche (réduit) */
    }

        body.erp:not(.pinned-menu-left).rub-statistiques.reduced-menu-left nav.menu-left {
            background: rgba(14, 183, 169, 0.6);
        }
}

/* -------------------- Popover des recherches sauvegardées -------------------- */
ul.savedsearcheslist li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    padding: .5em 0 .5em 1em;
    transition: all 0.3s ease;
}

    ul.savedsearcheslist li:not(:last-child) {
        border-bottom: 1px solid #e9ecef;
    }

    ul.savedsearcheslist li a.item {
        flex-grow: 1;
        width: calc(100% - 34px);
        line-height: 1rem;
    }

        ul.savedsearcheslist li a.item small {
            color: #adb5bd;
        }

    ul.savedsearcheslist li a.delete {
        flex: 0 0 34px;
        transition: all 0.3s ease;
        text-align: center;
        opacity: .7;
    }

html.no-touchevents ul.savedsearcheslist li a.delete {
    opacity: 0;
}

ul.savedsearcheslist li:hover {
    background-color: #3e64c1;
}

    ul.savedsearcheslist li:hover a,
    ul.savedsearcheslist li:hover a small {
        color: #fff !important;
    }

        ul.savedsearcheslist li:hover a.delete {
            opacity: .7 !important;
            color: #fff !important;
        }

            ul.savedsearcheslist li:hover a.delete:hover {
                opacity: 1 !important;
            }

ul.savedsearcheslist li.import {
    padding: .7em 1em;
    background-color: #3e64c1;
}

    ul.savedsearcheslist li.import a {
        flex-grow: 1;
        width: 100%;
        color: #fff !important;
    }

/* -------------------- Popover du choix d'affichage des colonnes -------------------- */
.columnslist {
    position: relative;
}

    .columnslist h6 {
        width: calc(100% + 20px);
        padding: .3em .8em;
        margin: .4rem 0 .8rem -10px;
        background-color: #f3f3f3;
    }

    .columnslist label input:disabled + span {
        opacity: .5;
    }

    .columnslist label .custom-control-label {
        font-size: .85rem !important;
    }

/* -------------------- Popover des filtres sur liste de recherche -------------------- */
.filterslist {
    position: relative;
}

    .filterslist a:not(.FilterCriteriaClear) {
        display: block;
        position: relative;
        padding: 0 0 .7em 2em;
        color: #495057 !important;
    }

        .filterslist a:not(.FilterCriteriaClear) i {
            position: absolute;
            top: .2em;
            left: .1em;
        }

            .filterslist a:not(.FilterCriteriaClear) i::before, .filterslist a:not(.FilterCriteriaClear) i::after {
                color: #adb5bd;
            }

            .filterslist a:not(.FilterCriteriaClear) i::before {
                content: '\f111';
                opacity: .5;
            }

            .filterslist a:not(.FilterCriteriaClear) i::after {
                content: '\10f111';
                opacity: .3;
            }

        .filterslist a:not(.FilterCriteriaClear).FilterCriteriaSelected {
            color: #212529 !important;
            text-decoration: none !important;
            font-weight: bold;
        }

            .filterslist a:not(.FilterCriteriaClear).FilterCriteriaSelected i::before, .filterslist a:not(.FilterCriteriaClear).FilterCriteriaSelected i::after {
                opacity: 1;
            }

            .filterslist a:not(.FilterCriteriaClear).FilterCriteriaSelected i::before {
                content: '\f058';
                color: #fff;
            }

            .filterslist a:not(.FilterCriteriaClear).FilterCriteriaSelected i::after {
                content: '\10f058';
                color: #74be4b;
            }

    .filterslist a.FilterCriteriaClear {
        position: relative;
        padding: 0 0 0 1.75em;
    }

        .filterslist a.FilterCriteriaClear i {
            position: absolute;
            top: .35em;
            left: .25em;
        }

        .filterslist a.FilterCriteriaClear span {
            color: #343a40 !important;
            font-size: 1.1em;
            line-height: .9em;
        }

/* -------------------- Popover de la bulle-info "co-auteurs" -------------------- */
.abstractcomment table thead th {
    font-size: 1em;
}

.flag {
    width: 20px;
}

    .flag.flag_be {
        width: 18px;
    }

    .flag.flag_ch {
        width: 15px;
    }

    .flag.flag_mc {
        width: 19px;
    }

    .flag.flag_ne {
        width: 18px;
    }

    .flag.flag_np {
        width: 13px;
    }

    .flag.flag_va {
        width: 15px;
    }

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .flag {
        background-size: 5652px 15px;
    }
}

.flag.flag_ac {
    height: 10px;
    background-position: 0px 0px;
}

.flag.flag_ad {
    height: 14px;
    background-position: -22px 0px;
}

.flag.flag_ae {
    height: 10px;
    background-position: -44px 0px;
}

.flag.flag_af {
    height: 14px;
    background-position: -66px 0px;
}

.flag.flag_ag {
    height: 14px;
    background-position: -88px 0px;
}

.flag.flag_ai {
    height: 10px;
    background-position: -110px 0px;
}

.flag.flag_al {
    height: 15px;
    background-position: -132px 0px;
}

.flag.flag_am {
    height: 10px;
    background-position: -154px 0px;
}

.flag.flag_ao {
    height: 14px;
    background-position: -176px 0px;
}

.flag.flag_aq {
    height: 14px;
    background-position: -198px 0px;
}

.flag.flag_ar {
    height: 13px;
    background-position: -220px 0px;
}

.flag.flag_as {
    height: 10px;
    background-position: -242px 0px;
}

.flag.flag_at {
    height: 14px;
    background-position: -264px 0px;
}

.flag.flag_au {
    height: 10px;
    background-position: -286px 0px;
}

.flag.flag_aw {
    height: 14px;
    background-position: -308px 0px;
}

.flag.flag_ax {
    height: 13px;
    background-position: -330px 0px;
}

.flag.flag_az {
    height: 10px;
    background-position: -352px 0px;
}

.flag.flag_ba {
    height: 10px;
    background-position: -374px 0px;
}

.flag.flag_bb {
    height: 14px;
    background-position: -396px 0px;
}

.flag.flag_bd {
    height: 12px;
    background-position: -418px 0px;
}

.flag.flag_be {
    height: 15px;
    background-position: -440px 0px;
}

.flag.flag_bf {
    height: 14px;
    background-position: -460px 0px;
}

.flag.flag_bg {
    height: 12px;
    background-position: -482px 0px;
}

.flag.flag_bh {
    height: 12px;
    background-position: -504px 0px;
}

.flag.flag_bi {
    height: 12px;
    background-position: -526px 0px;
}

.flag.flag_bj {
    height: 14px;
    background-position: -548px 0px;
}

.flag.flag_bl {
    height: 14px;
    background-position: -570px 0px;
}

.flag.flag_bm {
    height: 10px;
    background-position: -592px 0px;
}

.flag.flag_bn {
    height: 10px;
    background-position: -614px 0px;
}

.flag.flag_bo {
    height: 14px;
    background-position: -636px 0px;
}

.flag.flag_bq {
    height: 14px;
    background-position: -658px 0px;
}

.flag.flag_br {
    height: 14px;
    background-position: -680px 0px;
}

.flag.flag_bs {
    height: 10px;
    background-position: -702px 0px;
}

.flag.flag_bt {
    height: 14px;
    background-position: -724px 0px;
}

.flag.flag_bv {
    height: 15px;
    background-position: -746px 0px;
}

.flag.flag_bw {
    height: 14px;
    background-position: -768px 0px;
}

.flag.flag_by {
    height: 10px;
    background-position: -790px 0px;
}

.flag.flag_bz {
    height: 14px;
    background-position: -812px 0px;
}

.flag.flag_ca {
    height: 10px;
    background-position: -834px 0px;
}

.flag.flag_cc {
    height: 10px;
    background-position: -856px 0px;
}

.flag.flag_cd {
    height: 15px;
    background-position: -878px 0px;
}

.flag.flag_cf {
    height: 14px;
    background-position: -900px 0px;
}

.flag.flag_cg {
    height: 14px;
    background-position: -922px 0px;
}

.flag.flag_ch {
    height: 15px;
    background-position: -944px 0px;
}

.flag.flag_ci {
    height: 14px;
    background-position: -961px 0px;
}

.flag.flag_ck {
    height: 10px;
    background-position: -983px 0px;
}

.flag.flag_cl {
    height: 14px;
    background-position: -1005px 0px;
}

.flag.flag_cm {
    height: 14px;
    background-position: -1027px 0px;
}

.flag.flag_cn {
    height: 14px;
    background-position: -1049px 0px;
}

.flag.flag_co {
    height: 14px;
    background-position: -1071px 0px;
}

.flag.flag_cp {
    height: 14px;
    background-position: -1093px 0px;
}

.flag.flag_cr {
    height: 12px;
    background-position: -1115px 0px;
}

.flag.flag_cu {
    height: 10px;
    background-position: -1137px 0px;
}

.flag.flag_cv {
    height: 12px;
    background-position: -1159px 0px;
}

.flag.flag_cw {
    height: 14px;
    background-position: -1181px 0px;
}

.flag.flag_cx {
    height: 10px;
    background-position: -1203px 0px;
}

.flag.flag_cy {
    height: 14px;
    background-position: -1225px 0px;
}

.flag.flag_cz {
    height: 14px;
    background-position: -1247px 0px;
}

.flag.flag_de {
    height: 12px;
    background-position: -1269px 0px;
}

.flag.flag_dg {
    height: 10px;
    background-position: -1291px 0px;
}

.flag.flag_dj {
    height: 14px;
    background-position: -1313px 0px;
}

.flag.flag_dk {
    height: 15px;
    background-position: -1335px 0px;
}

.flag.flag_dm {
    height: 10px;
    background-position: -1357px 0px;
}

.flag.flag_do {
    height: 14px;
    background-position: -1379px 0px;
}

.flag.flag_dz {
    height: 14px;
    background-position: -1401px 0px;
}

.flag.flag_ea {
    height: 14px;
    background-position: -1423px 0px;
}

.flag.flag_ec {
    height: 14px;
    background-position: -1445px 0px;
}

.flag.flag_ee {
    height: 13px;
    background-position: -1467px 0px;
}

.flag.flag_eg {
    height: 14px;
    background-position: -1489px 0px;
}

.flag.flag_eh {
    height: 10px;
    background-position: -1511px 0px;
}

.flag.flag_er {
    height: 10px;
    background-position: -1533px 0px;
}

.flag.flag_es {
    height: 14px;
    background-position: -1555px 0px;
}

.flag.flag_et {
    height: 10px;
    background-position: -1577px 0px;
}

.flag.flag_eu {
    height: 14px;
    background-position: -1599px 0px;
}

.flag.flag_fi {
    height: 12px;
    background-position: -1621px 0px;
}

.flag.flag_fj {
    height: 10px;
    background-position: -1643px 0px;
}

.flag.flag_fk {
    height: 10px;
    background-position: -1665px 0px;
}

.flag.flag_fm {
    height: 11px;
    background-position: -1687px 0px;
}

.flag.flag_fo {
    height: 15px;
    background-position: -1709px 0px;
}

.flag.flag_fr {
    height: 14px;
    background-position: -1731px 0px;
}

.flag.flag_ga {
    height: 15px;
    background-position: -1753px 0px;
}

.flag.flag_gb {
    height: 10px;
    background-position: -1775px 0px;
}

.flag.flag_gd {
    height: 12px;
    background-position: -1797px 0px;
}

.flag.flag_ge {
    height: 14px;
    background-position: -1819px 0px;
}

.flag.flag_gf {
    height: 14px;
    background-position: -1841px 0px;
}

.flag.flag_gg {
    height: 14px;
    background-position: -1863px 0px;
}

.flag.flag_gh {
    height: 14px;
    background-position: -1885px 0px;
}

.flag.flag_gi {
    height: 10px;
    background-position: -1907px 0px;
}

.flag.flag_gl {
    height: 14px;
    background-position: -1929px 0px;
}

.flag.flag_gm {
    height: 14px;
    background-position: -1951px 0px;
}

.flag.flag_gn {
    height: 14px;
    background-position: -1973px 0px;
}

.flag.flag_gp {
    height: 14px;
    background-position: -1995px 0px;
}

.flag.flag_gq {
    height: 14px;
    background-position: -2017px 0px;
}

.flag.flag_gr {
    height: 14px;
    background-position: -2039px 0px;
}

.flag.flag_gs {
    height: 10px;
    background-position: -2061px 0px;
}

.flag.flag_gt {
    height: 13px;
    background-position: -2083px 0px;
}

.flag.flag_gu {
    height: 11px;
    background-position: -2105px 0px;
}

.flag.flag_gw {
    height: 10px;
    background-position: -2127px 0px;
}

.flag.flag_gy {
    height: 12px;
    background-position: -2149px 0px;
}

.flag.flag_hk {
    height: 14px;
    background-position: -2171px 0px;
}

.flag.flag_hm {
    height: 10px;
    background-position: -2193px 0px;
}

.flag.flag_hn {
    height: 10px;
    background-position: -2215px 0px;
}

.flag.flag_hr {
    height: 10px;
    background-position: -2237px 0px;
}

.flag.flag_ht {
    height: 12px;
    background-position: -2259px 0px;
}

.flag.flag_hu {
    height: 10px;
    background-position: -2281px 0px;
}

.flag.flag_ic {
    height: 14px;
    background-position: -2303px 0px;
}

.flag.flag_id {
    height: 14px;
    background-position: -2325px 0px;
}

.flag.flag_ie {
    height: 10px;
    background-position: -2347px 0px;
}

.flag.flag_il {
    height: 15px;
    background-position: -2369px 0px;
}

.flag.flag_im {
    height: 10px;
    background-position: -2391px 0px;
}

.flag.flag_in {
    height: 14px;
    background-position: -2413px 0px;
}

.flag.flag_io {
    height: 10px;
    background-position: -2435px 0px;
}

.flag.flag_iq {
    height: 14px;
    background-position: -2457px 0px;
}

.flag.flag_ir {
    height: 12px;
    background-position: -2479px 0px;
}

.flag.flag_is {
    height: 15px;
    background-position: -2501px 0px;
}

.flag.flag_it {
    height: 14px;
    background-position: -2523px 0px;
}

.flag.flag_je {
    height: 12px;
    background-position: -2545px 0px;
}

.flag.flag_jm {
    height: 10px;
    background-position: -2567px 0px;
}

.flag.flag_jo {
    height: 10px;
    background-position: -2589px 0px;
}

.flag.flag_jp {
    height: 14px;
    background-position: -2611px 0px;
}

.flag.flag_ke {
    height: 14px;
    background-position: -2633px 0px;
}

.flag.flag_kg {
    height: 12px;
    background-position: -2655px 0px;
}

.flag.flag_kh {
    height: 13px;
    background-position: -2677px 0px;
}

.flag.flag_ki {
    height: 10px;
    background-position: -2699px 0px;
}

.flag.flag_km {
    height: 12px;
    background-position: -2721px 0px;
}

.flag.flag_kn {
    height: 14px;
    background-position: -2743px 0px;
}

.flag.flag_kp {
    height: 10px;
    background-position: -2765px 0px;
}

.flag.flag_kr {
    height: 14px;
    background-position: -2787px 0px;
}

.flag.flag_kw {
    height: 10px;
    background-position: -2809px 0px;
}

.flag.flag_ky {
    height: 10px;
    background-position: -2831px 0px;
}

.flag.flag_kz {
    height: 10px;
    background-position: -2853px 0px;
}

.flag.flag_la {
    height: 14px;
    background-position: -2875px 0px;
}

.flag.flag_lb {
    height: 14px;
    background-position: -2897px 0px;
}

.flag.flag_lc {
    height: 10px;
    background-position: -2919px 0px;
}

.flag.flag_li {
    height: 12px;
    background-position: -2941px 0px;
}

.flag.flag_lk {
    height: 10px;
    background-position: -2963px 0px;
}

.flag.flag_lr {
    height: 11px;
    background-position: -2985px 0px;
}

.flag.flag_ls {
    height: 14px;
    background-position: -3007px 0px;
}

.flag.flag_lt {
    height: 12px;
    background-position: -3029px 0px;
}

.flag.flag_lu {
    height: 12px;
    background-position: -3051px 0px;
}

.flag.flag_lv {
    height: 10px;
    background-position: -3073px 0px;
}

.flag.flag_ly {
    height: 10px;
    background-position: -3095px 0px;
}

.flag.flag_ma {
    height: 14px;
    background-position: -3117px 0px;
}

.flag.flag_mc {
    height: 15px;
    background-position: -3139px 0px;
}

.flag.flag_md {
    height: 10px;
    background-position: -3160px 0px;
}

.flag.flag_me {
    height: 10px;
    background-position: -3182px 0px;
}

.flag.flag_mf {
    height: 14px;
    background-position: -3204px 0px;
}

.flag.flag_mg {
    height: 14px;
    background-position: -3226px 0px;
}

.flag.flag_mh {
    height: 11px;
    background-position: -3248px 0px;
}

.flag.flag_mk {
    height: 10px;
    background-position: -3270px 0px;
}

.flag.flag_ml {
    height: 14px;
    background-position: -3292px 0px;
}

.flag.flag_mm {
    height: 14px;
    background-position: -3314px 0px;
}

.flag.flag_mn {
    height: 10px;
    background-position: -3336px 0px;
}

.flag.flag_mo {
    height: 14px;
    background-position: -3358px 0px;
}

.flag.flag_mp {
    height: 10px;
    background-position: -3380px 0px;
}

.flag.flag_mq {
    height: 14px;
    background-position: -3402px 0px;
}

.flag.flag_mr {
    height: 14px;
    background-position: -3424px 0px;
}

.flag.flag_ms {
    height: 10px;
    background-position: -3446px 0px;
}

.flag.flag_mt {
    height: 14px;
    background-position: -3468px 0px;
}

.flag.flag_mu {
    height: 14px;
    background-position: -3490px 0px;
}

.flag.flag_mv {
    height: 14px;
    background-position: -3512px 0px;
}

.flag.flag_mw {
    height: 14px;
    background-position: -3534px 0px;
}

.flag.flag_mx {
    height: 12px;
    background-position: -3556px 0px;
}

.flag.flag_my {
    height: 10px;
    background-position: -3578px 0px;
}

.flag.flag_mz {
    height: 14px;
    background-position: -3600px 0px;
}

.flag.flag_na {
    height: 14px;
    background-position: -3622px 0px;
}

.flag.flag_nc {
    height: 10px;
    background-position: -3644px 0px;
}

.flag.flag_ne {
    height: 15px;
    background-position: -3666px 0px;
}

.flag.flag_nf {
    height: 10px;
    background-position: -3686px 0px;
}

.flag.flag_ng {
    height: 10px;
    background-position: -3708px 0px;
}

.flag.flag_ni {
    height: 12px;
    background-position: -3730px 0px;
}

.flag.flag_nl {
    height: 14px;
    background-position: -3752px 0px;
}

.flag.flag_no {
    height: 15px;
    background-position: -3774px 0px;
}

.flag.flag_np {
    height: 15px;
    background-position: -3796px 0px;
}

.flag.flag_nr {
    height: 10px;
    background-position: -3811px 0px;
}

.flag.flag_nu {
    height: 10px;
    background-position: -3833px 0px;
}

.flag.flag_nz {
    height: 10px;
    background-position: -3855px 0px;
}

.flag.flag_om {
    height: 10px;
    background-position: -3877px 0px;
}

.flag.flag_pa {
    height: 14px;
    background-position: -3899px 0px;
}

.flag.flag_pe {
    height: 14px;
    background-position: -3921px 0px;
}

.flag.flag_pf {
    height: 14px;
    background-position: -3943px 0px;
}

.flag.flag_pg {
    height: 15px;
    background-position: -3965px 0px;
}

.flag.flag_ph {
    height: 10px;
    background-position: -3987px 0px;
}

.flag.flag_pk {
    height: 14px;
    background-position: -4009px 0px;
}

.flag.flag_pl {
    height: 13px;
    background-position: -4031px 0px;
}

.flag.flag_pm {
    height: 14px;
    background-position: -4053px 0px;
}

.flag.flag_pn {
    height: 10px;
    background-position: -4075px 0px;
}

.flag.flag_pr {
    height: 14px;
    background-position: -4097px 0px;
}

.flag.flag_ps {
    height: 10px;
    background-position: -4119px 0px;
}

.flag.flag_pt {
    height: 14px;
    background-position: -4141px 0px;
}

.flag.flag_pw {
    height: 13px;
    background-position: -4163px 0px;
}

.flag.flag_py {
    height: 11px;
    background-position: -4185px 0px;
}

.flag.flag_qa {
    height: 8px;
    background-position: -4207px 0px;
}

.flag.flag_re {
    height: 14px;
    background-position: -4229px 0px;
}

.flag.flag_ro {
    height: 14px;
    background-position: -4251px 0px;
}

.flag.flag_rs {
    height: 14px;
    background-position: -4273px 0px;
}

.flag.flag_ru {
    height: 14px;
    background-position: -4295px 0px;
}

.flag.flag_rw {
    height: 14px;
    background-position: -4317px 0px;
}

.flag.flag_sa {
    height: 14px;
    background-position: -4339px 0px;
}

.flag.flag_sb {
    height: 10px;
    background-position: -4361px 0px;
}

.flag.flag_sc {
    height: 10px;
    background-position: -4383px 0px;
}

.flag.flag_sd {
    height: 10px;
    background-position: -4405px 0px;
}

.flag.flag_se {
    height: 13px;
    background-position: -4427px 0px;
}

.flag.flag_sg {
    height: 14px;
    background-position: -4449px 0px;
}

.flag.flag_sh {
    height: 10px;
    background-position: -4471px 0px;
}

.flag.flag_si {
    height: 10px;
    background-position: -4493px 0px;
}

.flag.flag_sj {
    height: 15px;
    background-position: -4515px 0px;
}

.flag.flag_sk {
    height: 14px;
    background-position: -4537px 0px;
}

.flag.flag_sl {
    height: 14px;
    background-position: -4559px 0px;
}

.flag.flag_sm {
    height: 15px;
    background-position: -4581px 0px;
}

.flag.flag_sn {
    height: 14px;
    background-position: -4603px 0px;
}

.flag.flag_so {
    height: 14px;
    background-position: -4625px 0px;
}

.flag.flag_sr {
    height: 14px;
    background-position: -4647px 0px;
}

.flag.flag_ss {
    height: 10px;
    background-position: -4669px 0px;
}

.flag.flag_st {
    height: 10px;
    background-position: -4691px 0px;
}

.flag.flag_sv {
    height: 12px;
    background-position: -4713px 0px;
}

.flag.flag_sx {
    height: 14px;
    background-position: -4735px 0px;
}

.flag.flag_sy {
    height: 14px;
    background-position: -4757px 0px;
}

.flag.flag_sz {
    height: 14px;
    background-position: -4779px 0px;
}

.flag.flag_ta {
    height: 10px;
    background-position: -4801px 0px;
}

.flag.flag_tc {
    height: 10px;
    background-position: -4823px 0px;
}

.flag.flag_td {
    height: 14px;
    background-position: -4845px 0px;
}

.flag.flag_tf {
    height: 14px;
    background-position: -4867px 0px;
}

.flag.flag_tg {
    height: 13px;
    background-position: -4889px 0px;
}

.flag.flag_th {
    height: 14px;
    background-position: -4911px 0px;
}

.flag.flag_tj {
    height: 10px;
    background-position: -4933px 0px;
}

.flag.flag_tk {
    height: 10px;
    background-position: -4955px 0px;
}

.flag.flag_tl {
    height: 10px;
    background-position: -4977px 0px;
}

.flag.flag_tm {
    height: 14px;
    background-position: -4999px 0px;
}

.flag.flag_tn {
    height: 14px;
    background-position: -5021px 0px;
}

.flag.flag_to {
    height: 10px;
    background-position: -5043px 0px;
}

.flag.flag_tr {
    height: 14px;
    background-position: -5065px 0px;
}

.flag.flag_tt {
    height: 12px;
    background-position: -5087px 0px;
}

.flag.flag_tv {
    height: 10px;
    background-position: -5109px 0px;
}

.flag.flag_tw {
    height: 14px;
    background-position: -5131px 0px;
}

.flag.flag_tz {
    height: 14px;
    background-position: -5153px 0px;
}

.flag.flag_ua {
    height: 14px;
    background-position: -5175px 0px;
}

.flag.flag_ug {
    height: 14px;
    background-position: -5197px 0px;
}

.flag.flag_um {
    height: 11px;
    background-position: -5219px 0px;
}

.flag.flag_un {
    height: 14px;
    background-position: -5241px 0px;
}

.flag.flag_us {
    height: 11px;
    background-position: -5263px 0px;
}

.flag.flag_uy {
    height: 14px;
    background-position: -5285px 0px;
}

.flag.flag_uz {
    height: 10px;
    background-position: -5307px 0px;
}

.flag.flag_va {
    height: 15px;
    background-position: -5329px 0px;
}

.flag.flag_vc {
    height: 14px;
    background-position: -5346px 0px;
}

.flag.flag_ve {
    height: 14px;
    background-position: -5368px 0px;
}

.flag.flag_vg {
    height: 10px;
    background-position: -5390px 0px;
}

.flag.flag_vi {
    height: 14px;
    background-position: -5412px 0px;
}

.flag.flag_vn {
    height: 14px;
    background-position: -5434px 0px;
}

.flag.flag_vu {
    height: 12px;
    background-position: -5456px 0px;
}

.flag.flag_wf {
    height: 14px;
    background-position: -5478px 0px;
}

.flag.flag_ws {
    height: 10px;
    background-position: -5500px 0px;
}

.flag.flag_xk {
    height: 15px;
    background-position: -5522px 0px;
}

.flag.flag_ye {
    height: 14px;
    background-position: -5544px 0px;
}

.flag.flag_yt {
    height: 14px;
    background-position: -5566px 0px;
}

.flag.flag_za {
    height: 14px;
    background-position: -5588px 0px;
}

.flag.flag_zm {
    height: 14px;
    background-position: -5610px 0px;
}

.flag.flag_zw {
    height: 10px;
    background-position: -5632px 0px;
}

.flag {
    display: inline-block;
    height: 15px;
    box-shadow: 0px 0px 1px 0px #888;
    background-image: url("../images/flags.png");
    background-repeat: no-repeat;
    background-color: #DBDBDB;
    background-position: 20px 0;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .flag {
        background-image: url("../images/flags@2x.png");
    }
}

.flag.flag_np {
    background-color: transparent;
}

/* -------------------- Page specific -------------------- */
/* -------------------- Page "Login" -------------------- */
body.login::after {
    animation: kenburns-top 30s ease-out both;
}

body.login .wrapper {
    max-width: 660px;
    min-height: 100vh;
    align-items: center;
    justify-content: center;
    padding: 30px 0;
    margin-left: auto;
    margin-right: auto;
}

body.login header {
    position: relative;
    justify-content: center;
    height: 100px;
    background-color: transparent;
    box-shadow: none;
    margin: 0;
    padding: 0;
}

    body.login header svg.logo {
        width: 230px;
        height: auto;
        animation: fade-in 1.4s ease-out both;
    }

body.login .lang-selector {
    align-self: flex-end;
    margin: 0 30px 1rem 30px;
}

    body.login .lang-selector li {
        animation: zoom-in .3s ease-out .8s both;
    }

body.login .card {
    border-radius: 10px;
    z-index: 1;
    padding: 32px 35px;
    margin: 0 30px;
    animation: slide-in-elliptic-top-fwd 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s both;
}

    body.login .card.haserror {
        animation: shake-horizontal .8s both;
    }

    body.login .card h2 {
        font-size: 1.8rem;
    }

body.login svg.logo-bg {
    position: fixed;
    bottom: 0;
    left: 60%;
    width: 670px;
    opacity: .08;
}

    body.login svg.logo-bg use {
        transform-origin: 50% 0;
        transform: scale(1.35);
    }

@media (min-width: 576px) {
    body.login .wrapper {
        padding: 60px 0 160px 0;
    }

    body.login header {
        margin: 0 0 40px 0;
    }

        body.login header svg.logo {
            width: 340px;
        }

    body.login footer {
        position: fixed;
        bottom: 0;
        left: 0;
    }
}

@media (min-width: 768px) {
    body.login .card {
        padding: 60px;
    }
}

/* -------------------- Page "Erreur" -------------------- */
body.error {
    background: linear-gradient(to bottom, #f1f1f1 0, #fff 100%) top center no-repeat;
}

    body.error .wrapper .page {
        margin: 0 30px;
    }

        body.error .wrapper .page .content {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: flex-start;
            min-height: calc(100vh - 100px - 8rem);
            margin: 4rem 0;
            text-align: center;
        }

            body.error .wrapper .page .content object {
                max-width: 320px;
                margin: 0 auto;
            }

            body.error .wrapper .page .content h1 {
                margin: 1.2rem 0 2.8rem;
                color: #e8192c;
                font-size: 1.85rem;
            }

                body.error .wrapper .page .content h1 strong {
                    display: block;
                    margin: 0;
                    font-size: 4rem;
                    letter-spacing: -.02em;
                }

            body.error .wrapper .page .content dl {
                text-align: left;
            }

                body.error .wrapper .page .content dl dt {
                    margin-bottom: .3rem;
                    color: #939393;
                    font-weight: normal;
                }

            body.error .wrapper .page .content span.version {
                display: inline-block;
                margin-top: 2rem;
                padding: .15rem .5rem;
                color: #fff;
                font-size: .9rem;
                text-align: left;
                background-color: #0b3c6e;
            }

        body.error .wrapper .page footer {
            background: none;
            padding: 20px 0;
        }

            body.error .wrapper .page footer > svg {
                display: block;
                height: 54px;
                margin: 0 auto;
            }

    body.error .wrapper svg.logo-bg {
        position: fixed;
        bottom: 0;
        left: 60%;
        width: 670px;
        opacity: .08;
    }

        body.error .wrapper svg.logo-bg use {
            transform-origin: 50% 0;
            transform: scale(1.35);
        }

@media (min-width: 576px) {
    body.error .wrapper .page {
        margin: 0 60px;
    }

        body.error .wrapper .page .content {
            text-align: left;
        }

            body.error .wrapper .page .content object {
                max-width: unset;
                margin-left: -70px;
            }

            body.error .wrapper .page .content h1 strong {
                margin: 0 0 -.1em -.05em;
                font-size: 5.4rem;
            }

        body.error .wrapper .page footer > svg {
            margin: 0;
        }
}

@media (min-width: 768px) {
    body.error .wrapper .page {
        margin: 0 100px;
    }
}

@media (min-width: 992px) {
    body.error .wrapper .page .content dl dt,
    body.error .wrapper .page .content dl dd {
        float: left;
    }

    body.error .wrapper .page .content dl dt {
        width: 140px;
    }

    body.error .wrapper .page .content dl dd {
        width: calc(100% - 140px);
    }
}

@media (min-width: 1200px) {
    body.error .wrapper .page {
        margin: 0 200px;
    }
}

/* -------------------- Page "Mes services"  -------------------- */
body.esp-cl ul.tiles > li {
    display: flex;
}

    body.esp-cl ul.tiles > li section {
        display: flex;
        flex-direction: column;
        flex: 1;
        align-items: stretch;
        padding: 20px;
    }

        body.esp-cl ul.tiles > li section > div {
            display: flex;
            flex: 1;
            padding: 0;
        }

            body.esp-cl ul.tiles > li section > div .row {
                flex: 1;
            }

        body.esp-cl ul.tiles > li section h3 {
            font-family: "Arquitecta-regular", Sans-serif;
            margin-left: 24px;
        }

            body.esp-cl ul.tiles > li section h3 strong {
                font-family: "Arquitecta-heavy", Sans-serif;
            }

        body.esp-cl ul.tiles > li section .isflickity .flickity-viewport {
            height: 360px !important;
        }

        body.esp-cl ul.tiles > li section .isflickity .flickity-prev-next-button {
            color: #fff !important;
        }

        body.esp-cl ul.tiles > li section .card {
            padding: 0;
            background-color: transparent;
            box-shadow: none;
            height: 100%;
        }

            body.esp-cl ul.tiles > li section .card a {
                display: inline-block;
                height: 100%;
                margin: 3px;
                padding: 24px 24px 12px 24px;
                background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.25) 100%);
                background-color: rgba(255, 255, 255, 0);
                transition: all 0.3s ease;
            }

                body.esp-cl ul.tiles > li section .card a .picto {
                    display: block;
                    position: relative;
                    margin-bottom: 16px;
                    transition: all 0.6s ease;
                }

html:not(.touchevents) body.esp-cl ul.tiles > li section .card a .picto {
    opacity: .75;
}

body.esp-cl ul.tiles > li section .card a .picto svg {
    position: relative;
    z-index: 2;
    width: 100%;
    transition: all 0.6s ease;
}

body.esp-cl ul.tiles > li section .card a .picto.picto-md svg {
    max-width: 160px;
}

body.esp-cl ul.tiles > li section .card a .picto.picto-lg svg {
    max-width: 200px;
}

body.esp-cl ul.tiles > li section .card a .picto::after {
    display: block;
    position: absolute;
    content: '';
    z-index: 1;
    z-index: 1;
    left: 50%;
    bottom: 0;
    margin-left: -70px;
    width: 140px;
    height: 40px;
    opacity: .12;
    background: radial-gradient(ellipse at center, black 0%, rgba(0, 0, 0, 0) 70%) center center no-repeat;
    background-size: cover;
    transition: all 0.6s ease;
}

body.esp-cl ul.tiles > li section .card a p {
    font-size: .95rem;
}

body.esp-cl ul.tiles > li section .card a:hover {
    background-color: rgba(255, 255, 255, 0.15);
}

    body.esp-cl ul.tiles > li section .card a:hover .picto {
        opacity: 1 !important;
    }

        body.esp-cl ul.tiles > li section .card a:hover .picto svg {
            transform: translateY(-8px);
        }

        body.esp-cl ul.tiles > li section .card a:hover .picto::after {
            opacity: .18;
        }

    body.esp-cl ul.tiles > li section .card a:hover p {
        opacity: 1;
    }

@media (min-width: 1660px) {
    body.esp-cl ul.tiles li.online {
        flex: 0 0 42%;
        max-width: 42%;
    }

    body.esp-cl ul.tiles li.onsite {
        flex: 0 0 58%;
        max-width: 58%;
    }
}

/* -------------------- Page "Gestion d'évènement" -------------------- */
body.event-mng .lastreg .title small {
    color: #737373;
    font-family: "Arquitecta-regular", Sans-serif;
    font-size: 1.15rem;
    text-transform: uppercase;
}

body.event-mng .lastreg ul li a {
    padding-top: 12px !important;
    padding-bottom: 10px !important;
    display: block;
    transition: all 0.15s ease;
}

    body.event-mng .lastreg ul li a i {
        position: absolute;
        top: 8px;
    }

    body.event-mng .lastreg ul li a h5,
    body.event-mng .lastreg ul li a span {
        padding-left: 44px;
        transition: all 0.15s ease;
    }

    body.event-mng .lastreg ul li a h5 {
        font-family: "Arquitecta-bold", Sans-serif;
    }

    body.event-mng .lastreg ul li a span {
        display: inline-block;
        font-size: .85em;
    }

    body.event-mng .lastreg ul li a:hover {
        background-color: #f8f8f8;
    }

        body.event-mng .lastreg ul li a:hover svg {
            opacity: 1;
        }

            body.event-mng .lastreg ul li a:hover svg use {
                fill: #3e64c1;
                stroke: #3e64c1;
            }

        body.event-mng .lastreg ul li a:hover h5,
        body.event-mng .lastreg ul li a:hover span {
            color: #3e64c1 !important;
        }

body.event-mng .RadCalendar {
    width: 100%;
    max-width: 94%;
}

body.event-mng .alertes {
    position: relative;
}

    body.event-mng .alertes i {
        position: absolute;
        top: 10px;
        right: 10px;
    }

    body.event-mng .alertes h3 {
        font-size: 2rem;
    }

        body.event-mng .alertes h3 small {
            color: #adadad;
            font-family: "Arquitecta-regular", Sans-serif;
            font-size: .6em;
        }

        body.event-mng .alertes h3 big {
            font-size: 2.2em;
            letter-spacing: -.02em;
            line-height: 3.5rem;
        }

    body.event-mng .alertes .content {
        position: relative;
        padding-top: 26px !important;
    }

        body.event-mng .alertes .content small {
            bottom: 20px;
            font-family: "Arquitecta-bold", Sans-serif;
            font-size: 1rem;
            letter-spacing: .04em;
            line-height: 1.2rem;
        }

        body.event-mng .alertes .content::before {
            display: block;
            position: absolute;
            content: '';
            z-index: 1;
            top: 0;
            left: 50%;
            margin-left: -11px;
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 11px 11px 0 11px;
            border-color: #fff transparent transparent transparent;
        }

body.event-mng .upcoming,
body.event-mng .stats {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
}

    body.event-mng .upcoming:hover i,
    body.event-mng .stats:hover i {
        opacity: 1;
    }

    body.event-mng .upcoming h4 {
        font-size: 1.3rem;
    }

        body.event-mng .upcoming h4 small {
            font-family: "Arquitecta-regular", Sans-serif;
            font-size: .8em;
        }

    body.event-mng .upcoming .date {
        font-family: "Arquitecta-regular", Sans-serif;
        font-size: 1.3em;
        letter-spacing: .04em;
        line-height: 2rem;
    }

        body.event-mng .upcoming .date strong {
            font-size: 2em;
        }

    body.event-mng .stats:hover i {
        opacity: 1;
    }

body.event-mng .search-events .form-group:nth-child(1) {
    width: 100%;
}

body.event-mng .search-events .form-group:nth-child(2) {
    width: calc(40% - 2px);
}

body.event-mng .search-events .form-group:nth-child(3) {
    width: calc(60% - 2px);
}

body.event-mng .search-events a#ClearFilterSearchEvents {
    width: 44px;
}

body.event-mng .results th.ref, body.event-mng .results th.lieu,
body.event-mng .results td.ref,
body.event-mng .results td.lieu {
    display: none;
}

body.event-mng .results tbody .libelle {
    position: relative;
    color: #3e64c1;
}

    body.event-mng .results tbody .libelle::after {
        display: block;
        position: relative;
        content: attr(data-ref) "\a" attr(data-lieu);
        margin: 4px 0;
        color: #333;
        font-size: .85em;
        opacity: .5;
        white-space: pre;
    }

body.event-mng .results tbody .date {
    min-width: 120px;
    font-size: .9em;
}

@media (min-width: 576px) {
    body.event-mng .search-events .form-group:nth-child(2) {
        width: calc(40% - 24px);
    }

    body.event-mng .search-events .form-group:nth-child(3) {
        width: calc(60% - 24px);
    }
}

@media (min-width: 768px) {
    body.event-mng .search-events .form-group:nth-child(1) {
        width: calc(100% - 320px - 54px);
    }

    body.event-mng .search-events .form-group:nth-child(2) {
        width: 140px;
    }

    body.event-mng .search-events .form-group:nth-child(3) {
        width: 180px;
    }

    body.event-mng .results th.ref, body.event-mng .results th.lieu,
    body.event-mng .results td.ref,
    body.event-mng .results td.lieu {
        display: table-cell;
    }

    body.event-mng .results tbody .libelle {
        color: inherit;
    }

        body.event-mng .results tbody .libelle::after {
            display: none;
        }
}

@media (min-width: 1440px) {
    body.event-mng .alertes i {
        top: 16px;
        right: 16px;
    }
}

/* -------------------- Tableau de bord -------------------- */
body.dashboard article aside .expandable {
    position: relative;
    max-height: 260px;
    overflow: hidden;
}

    body.dashboard article aside .expandable.showall {
        max-height: initial;
        padding-bottom: 40px !important;
        overflow: visible;
    }

        body.dashboard article aside .expandable.showall .toggle-fullH {
            height: 30px;
            padding-top: 2px;
            background: none;
        }

            body.dashboard article aside .expandable.showall .toggle-fullH span::before {
                display: inline;
            }

            body.dashboard article aside .expandable.showall .toggle-fullH span::after {
                display: none;
            }

body.dashboard article aside .toggle-fullH {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    padding-top: 52px;
    font-family: "Arquitecta-bold", Sans-serif;
    font-size: .9rem;
    background-color: rgba(255, 255, 255, 0.95);
    background: linear-gradient(0deg, #fff 0%, #fff 50%, rgba(255, 255, 255, 0) 100%);
}

    body.dashboard article aside .toggle-fullH span {
        border: 1px solid #e7e7e7;
    }

        body.dashboard article aside .toggle-fullH span::before {
            display: none;
            content: attr(data-text-less);
        }

        body.dashboard article aside .toggle-fullH span::after {
            display: inline;
            content: attr(data-text-more);
        }

body.dashboard article aside .upcoming dt span {
    font-size: .95em;
    padding-top: 2px;
    padding-bottom: 2px;
}

body.dashboard article aside .reportings ul li {
    position: relative;
    transition: all 0.3s ease;
}

    body.dashboard article aside .reportings ul li:hover {
        background-color: rgba(0, 0, 0, 0.04);
    }

        body.dashboard article aside .reportings ul li:hover a.directlink {
            opacity: 1 !important;
        }

    body.dashboard article aside .reportings ul li:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, 0.06);
    }

    body.dashboard article aside .reportings ul li:not(.checkbox) {
        padding-left: 32px !important;
        padding-right: 10px !important;
    }

        body.dashboard article aside .reportings ul li:not(.checkbox) a {
            width: 100% !important;
        }

    body.dashboard article aside .reportings ul li a:not(.directlink) {
        width: calc(100% - 60px);
        padding: 10px 0 12px 38px;
    }

        body.dashboard article aside .reportings ul li a:not(.directlink) i {
            position: absolute;
            margin-top: -2px;
            margin-left: -32px;
        }

            body.dashboard article aside .reportings ul li a:not(.directlink) i:not(.icon) {
                width: 28px;
                height: 28px;
                margin-top: 3px;
                text-align: center;
            }

    body.dashboard article aside .reportings ul li a.directlink {
        position: absolute;
        top: 4px;
        right: 6px;
        transition: all 0.3s ease;
    }

html.no-touchevents body.dashboard article aside .reportings ul li a.directlink {
    opacity: 0;
}

body.dashboard article aside .alerts ul li {
    position: relative;
    border-left: 2px solid #bababa;
    transition: all 0.3s ease;
}

    body.dashboard article aside .alerts ul li:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, 0.06);
    }

    body.dashboard article aside .alerts ul li:nth-child(odd) {
        background-color: #f3f3f3;
    }

    body.dashboard article aside .alerts ul li:nth-child(even) {
        background-color: #f9f9f9;
    }

    body.dashboard article aside .alerts ul li:hover {
        border-left: 2px solid #777;
        background-color: #e7e7e7;
    }

        body.dashboard article aside .alerts ul li:hover a {
            color: #333 !important;
        }

    body.dashboard article aside .alerts ul li a:not(.endtask) {
        width: calc(100% - 40px);
    }

    body.dashboard article aside .alerts ul li a.endtask {
        position: absolute;
        top: 8px;
        right: 8px;
    }

    body.dashboard article aside .alerts ul li.missed {
        border-left: 2px solid #ff6000;
        background-color: rgba(255, 96, 0, 0.15);
    }

        body.dashboard article aside .alerts ul li.missed a,
        body.dashboard article aside .alerts ul li.missed span {
            color: #ff6000 !important;
        }

body.dashboard article > div #stats-tiles ul li {
    color: #fff;
    overflow: hidden;
    transition: background-color 0.3s ease;
}

    body.dashboard article > div #stats-tiles ul li:hover a.edit,
    html:not(.no-touchevents) body.dashboard article > div #stats-tiles ul li a.edit {
        opacity: 1;
    }

    body.dashboard article > div #stats-tiles ul li.editing .edit {
        display: none;
    }

    body.dashboard article > div #stats-tiles ul li.editing .remove {
        display: block;
    }

    body.dashboard article > div #stats-tiles ul li.editing .order {
        display: flex;
    }

    body.dashboard article > div #stats-tiles ul li.editing .data {
        display: none;
    }

    body.dashboard article > div #stats-tiles ul li#tile-configurator {
        border: 2px dashed rgba(255, 255, 255, 0.7);
    }

        body.dashboard article > div #stats-tiles ul li#tile-configurator a.edit,
        body.dashboard article > div #stats-tiles ul li#tile-configurator a.remove,
        body.dashboard article > div #stats-tiles ul li#tile-configurator a.content {
            display: none;
        }

    body.dashboard article > div #stats-tiles ul li .content big {
        display: block;
        font-family: "Arquitecta-heavy", Sans-serif;
        font-size: 5rem;
        line-height: 5rem;
    }

    body.dashboard article > div #stats-tiles ul li .configurator.add-tile .order {
        display: none;
    }

    body.dashboard article > div #stats-tiles ul li .configurator.add-tile .data {
        display: flex;
    }

    body.dashboard article > div #stats-tiles ul li .configurator .form-group {
        position: relative;
        z-index: 3;
    }

    body.dashboard article > div #stats-tiles ul li .configurator .validate {
        position: absolute;
        bottom: 0;
        left: 15px;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.3);
    }

    body.dashboard article > div #stats-tiles ul li a.edit, body.dashboard article > div #stats-tiles ul li a.remove {
        position: absolute;
        z-index: 3;
    }

    body.dashboard article > div #stats-tiles ul li a.edit {
        top: 8px;
        right: 8px;
        opacity: 0;
    }

    body.dashboard article > div #stats-tiles ul li a.remove {
        display: none;
        top: 12px;
        right: 12px;
    }

    body.dashboard article > div #stats-tiles ul li a.content {
        display: inline-block;
        position: relative;
        z-index: 2;
        color: #fff;
    }

    body.dashboard article > div #stats-tiles ul li > i {
        position: absolute;
        z-index: 1;
        bottom: 20px;
        right: -5px;
        color: #fff;
        font-size: 7rem;
        opacity: .25;
    }

body.dashboard article > div #stats-tiles ul a#addtile {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 175px;
    border: 2px dashed rgba(0, 0, 0, 0.12);
    transition: all 0.3s ease;
}

    body.dashboard article > div #stats-tiles ul a#addtile:hover {
        border-color: rgba(0, 0, 0, 0.3);
    }

body.dashboard article > div .stats-reg .status ul li {
    position: relative;
}

    body.dashboard article > div .stats-reg .status ul li:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, 0.06);
    }

    body.dashboard article > div .stats-reg .status ul li a {
        position: relative;
    }

        body.dashboard article > div .stats-reg .status ul li a:not(.emailing) {
            position: relative;
            width: calc(100% - 40px);
            padding-left: 50px;
        }

            body.dashboard article > div .stats-reg .status ul li a:not(.emailing) i {
                position: absolute;
                top: calc(50% - 14px);
                left: 0;
                width: 40px;
                height: 40px;
            }

            body.dashboard article > div .stats-reg .status ul li a:not(.emailing) strong {
                font-family: "Arquitecta-heavy", Sans-serif;
                font-size: 2rem;
                line-height: 1.8rem;
            }

                body.dashboard article > div .stats-reg .status ul li a:not(.emailing) strong span {
                    position: relative;
                    top: -1px;
                    font-family: "Arquitecta-bold", Sans-serif;
                    font-size: .7em;
                }

        body.dashboard article > div .stats-reg .status ul li a.emailing {
            position: absolute;
            top: calc(50% - 14px);
            width: 40px;
            height: 40px;
        }

body.dashboard article > div .stats-reg .general ul li {
    background-color: #f1f1f1;
}

    body.dashboard article > div .stats-reg .general ul li:not(:last-child) {
        border-right: 1px solid #f8f8f8;
        border-bottom: 1px solid #f8f8f8;
    }

    body.dashboard article > div .stats-reg .general ul li a {
        position: absolute;
        top: 10px;
    }

        body.dashboard article > div .stats-reg .general ul li a.detail-xls {
            left: 10px;
        }

        body.dashboard article > div .stats-reg .general ul li a.detail {
            right: 10px;
            transform: scale(1.2);
        }

    body.dashboard article > div .stats-reg .general ul li big {
        font-family: "Arquitecta-heavy", Sans-serif;
        font-size: 2.9rem;
        line-height: 3rem;
    }

body.dashboard article > div .stats-acc .k-chart {
    position: relative;
}

    body.dashboard article > div .stats-acc .k-chart > div {
        position: absolute;
        top: 110px;
        left: calc(50% - 120px);
        width: 240px;
        font-family: "Arquitecta-heavy", Sans-serif;
        font-size: 5rem;
        line-height: .8em;
    }

        body.dashboard article > div .stats-acc .k-chart > div small {
            position: relative;
            top: -30px;
            font-family: "Arquitecta-regular", Sans-serif;
            font-size: 1.3rem;
        }

body.dashboard article > div .stats-acc dl dt {
    font-family: "Arquitecta-heavy", Sans-serif;
    font-size: 2rem;
    line-height: 1.8rem;
}

body.dashboard article > div .stats-pay table {
    font-size: 12px;
}

    body.dashboard article > div .stats-pay table th,
    body.dashboard article > div .stats-pay table td {
        padding: .75rem .5rem;
    }

        body.dashboard article > div .stats-pay table th:first-child {
            position: relative;
            display: block;
            position: absolute;
            width: calc(100% - 2.6rem);
            height: 40px;
            padding-left: 2.4rem;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

    body.dashboard article > div .stats-pay table .type {
        min-width: 70px;
    }

    body.dashboard article > div .stats-pay table .qty {
        min-width: 110px;
        padding-left: 1.15rem;
    }

        body.dashboard article > div .stats-pay table .qty span {
            display: block;
            font-size: .9rem;
        }

    body.dashboard article > div .stats-pay table .total-ht,
    body.dashboard article > div .stats-pay table .total-ttc {
        width: 160px;
        text-align: right;
        line-height: 1.2rem;
    }

        body.dashboard article > div .stats-pay table .total-ht span,
        body.dashboard article > div .stats-pay table .total-ttc span {
            display: block;
        }

    body.dashboard article > div .stats-pay table .level-0,
    body.dashboard article > div .stats-pay table .level-1 {
        height: 70px;
    }

        body.dashboard article > div .stats-pay table .level-0.level-0,
        body.dashboard article > div .stats-pay table .level-1.level-0 {
            color: #fff;
            border: 2px solid #7f8599;
            background-color: #7f8599;
        }

        body.dashboard article > div .stats-pay table .level-0 th,
        body.dashboard article > div .stats-pay table .level-0 td,
        body.dashboard article > div .stats-pay table .level-1 th,
        body.dashboard article > div .stats-pay table .level-1 td {
            vertical-align: bottom;
        }

            body.dashboard article > div .stats-pay table .level-0 th:first-child,
            body.dashboard article > div .stats-pay table .level-1 th:first-child {
                padding-right: 2.6rem;
            }

                body.dashboard article > div .stats-pay table .level-0 th:first-child::before,
                body.dashboard article > div .stats-pay table .level-1 th:first-child::before {
                    position: absolute;
                    left: 15px;
                    font-family: 'Font Awesome 5 Pro';
                }

            body.dashboard article > div .stats-pay table .level-0 th:first-child {
                border-top: 0 !important;
                font-size: 13px;
                font-weight: bold;
            }

                body.dashboard article > div .stats-pay table .level-0 th:first-child::before {
                    content: '\f078';
                    color: #fff;
                    font-size: .85em;
                    font-weight: 400;
                    margin-top: 2px;
                }

        body.dashboard article > div .stats-pay table .level-0 th,
        body.dashboard article > div .stats-pay table .level-0 td {
            padding-bottom: .95rem;
            border-bottom: 0 !important;
        }

        body.dashboard article > div .stats-pay table .level-0[aria-expanded="true"] th:first-child::before {
            content: '\f077';
        }

        body.dashboard article > div .stats-pay table .level-1[data-target] th:first-child::before {
            content: '\f067';
            margin-top: 3px;
            color: rgba(0, 0, 0, 0.3);
            font-size: .8rem;
        }

        body.dashboard article > div .stats-pay table .level-1[data-target] th:first-child:hover::before {
            color: rgba(0, 0, 0, 0.6) !important;
        }

        body.dashboard article > div .stats-pay table .level-1[data-target][aria-expanded="true"] th:first-child::before {
            content: '\f068';
        }

        body.dashboard article > div .stats-pay table .level-1:not([data-target]) th:first-child::before {
            content: '\f002';
            margin-top: 2px;
            color: rgba(0, 0, 0, 0.3);
            font-size: .95rem;
        }

        body.dashboard article > div .stats-pay table .level-1:not([data-target]) th:first-child:hover::before {
            color: rgba(0, 0, 0, 0.6) !important;
        }

        body.dashboard article > div .stats-pay table .level-1[aria-expanded="true"] {
            background-color: rgba(62, 100, 193, 0.25);
        }

        body.dashboard article > div .stats-pay table .level-1:hover a.excel {
            opacity: 1 !important;
        }

        body.dashboard article > div .stats-pay table .level-1 a.excel {
            position: absolute;
            top: 4px;
            right: 10px;
        }

html.no-touchevents body.dashboard article > div .stats-pay table .level-1 a.excel {
    opacity: 0;
}

body.dashboard article > div .stats-pay table .level-2 {
    background-color: rgba(62, 100, 193, 0.14);
}

    body.dashboard article > div .stats-pay table .level-2:hover {
        background-color: rgba(62, 100, 193, 0.08);
    }

    body.dashboard article > div .stats-pay table .level-2 td {
        border-bottom: 1px solid rgba(255, 255, 255, 0.6);
    }

    body.dashboard article > div .stats-pay table .level-2 th:first-child {
        border-top: 0;
    }

        body.dashboard article > div .stats-pay table .level-2 th:first-child span {
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            min-width: 0;
            height: 14px;
            padding: 0 2px;
            margin: 0;
            color: #fff;
            font-size: 10px;
            text-align: center;
            background-color: rgba(52, 58, 64, 0.3);
        }

body.dashboard article > div .quota h4 {
    position: relative;
    font-family: "Arquitecta-bold", Sans-serif;
    font-size: 1.5rem;
}

    body.dashboard article > div .quota h4::before {
        position: absolute;
        right: 15px;
        content: '\f067';
        font-family: 'Font Awesome 5 Pro';
        font-size: 1.3rem;
        opacity: .5;
    }

    body.dashboard article > div .quota h4[aria-expanded="true"]::before {
        content: '\f068';
    }

body.dashboard article > div .quota h5 {
    position: relative;
    font-family: "Arquitecta-heavy", Sans-serif;
    font-size: 2rem;
}

    body.dashboard article > div .quota h5::after {
        display: block;
        position: absolute;
        content: '';
        z-index: 1;
        position: relative;
        bottom: 8px;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: rgba(0, 0, 0, 0.1);
    }

    body.dashboard article > div .quota h5 span {
        display: inline-block;
        position: relative;
        z-index: 2;
        padding-right: 10px;
        background-color: #fff;
    }

body.dashboard article > div .quota .item {
    background-color: transparent;
    transition: all 0.3s ease;
}

    body.dashboard article > div .quota .item.full a,
    body.dashboard article > div .quota .item.full big {
        opacity: .4;
    }

    body.dashboard article > div .quota .item.full .progress {
        opacity: .2;
    }

    body.dashboard article > div .quota .item big {
        position: relative;
        font-family: "Arquitecta-heavy", Sans-serif;
        font-size: 1.5rem;
    }

        body.dashboard article > div .quota .item big span {
            display: inline-block;
            position: absolute;
            bottom: -8px;
            right: 18px;
            width: 100%;
        }

    body.dashboard article > div .quota .item .progress {
        background-color: #b5e482;
    }

body.dashboard article > div .abstracts ul.status li {
    position: relative;
    padding: 10px 100px 10px 40px;
}

    body.dashboard article > div .abstracts ul.status li:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, 0.06);
    }

    body.dashboard article > div .abstracts ul.status li.total {
        border-top: 1px solid rgba(0, 0, 0, 0.25);
    }

    body.dashboard article > div .abstracts ul.status li i {
        position: absolute;
        top: 15px;
        left: 8px;
        width: 30px;
        height: 30px;
    }

    body.dashboard article > div .abstracts ul.status li strong {
        position: absolute;
        top: 3px;
        right: 30px;
        font-family: "Arquitecta-heavy", Sans-serif;
        font-size: 1.65rem;
    }

@media (min-width: 768px) {
    body.dashboard article > div .stats-pay table {
        font-size: 1rem;
    }

        body.dashboard article > div .stats-pay table th,
        body.dashboard article > div .stats-pay table td {
            padding: .75rem;
        }

            body.dashboard article > div .stats-pay table th:first-child {
                display: table-cell;
                position: relative;
                width: auto;
                min-width: 220px;
                height: auto;
                overflow: visible;
                text-overflow: unset;
                white-space: unset;
            }

        body.dashboard article > div .stats-pay table .qty {
            min-width: 140px;
            padding-left: inherit;
        }

            body.dashboard article > div .stats-pay table .qty span {
                display: inline-block;
                font-size: 1rem;
            }

        body.dashboard article > div .stats-pay table .total-ht span,
        body.dashboard article > div .stats-pay table .total-ttc span {
            display: inline-block;
        }

        body.dashboard article > div .stats-pay table .level-0,
        body.dashboard article > div .stats-pay table .level-1 {
            height: auto;
        }

            body.dashboard article > div .stats-pay table .level-0 th,
            body.dashboard article > div .stats-pay table .level-0 td,
            body.dashboard article > div .stats-pay table .level-1 th,
            body.dashboard article > div .stats-pay table .level-1 td {
                vertical-align: top;
            }

            body.dashboard article > div .stats-pay table .level-0 th, body.dashboard article > div .stats-pay table .level-0 td {
                border-bottom: 2px solid #fff !important;
                vertical-align: middle !important;
            }

                body.dashboard article > div .stats-pay table .level-0 th:first-child {
                    font-size: 1rem;
                    font-weight: normal;
                }

            body.dashboard article > div .stats-pay table .level-1 a.excel {
                top: 7px;
                right: 14px;
            }

        body.dashboard article > div .stats-pay table .level-2 th:first-child {
            text-align: right;
            border-bottom: 1px solid rgba(255, 255, 255, 0.6);
        }

            body.dashboard article > div .stats-pay table .level-2 th:first-child span {
                display: inline-block;
                position: relative;
                height: auto;
                padding: 0;
                color: inherit;
                font-size: inherit;
                background-color: inherit;
            }
}

/* -------------------- Recherche (liste) -------------------- */
body.searchlist article .adv-search [data-target="#adv-search-content"] {
    padding-left: 20px;
}

    body.searchlist article .adv-search [data-target="#adv-search-content"]::before {
        content: '\f00e';
        margin-right: .4em;
        font-family: 'Font Awesome 5 Pro';
        font-weight: 400;
    }

    body.searchlist article .adv-search [data-target="#adv-search-content"][aria-expanded="true"]::before {
        content: '\f010';
    }

body.searchlist article .adv-search #adv-search-content > div {
    background-color: #efefef;
}

    body.searchlist article .adv-search #adv-search-content > div fieldset legend {
        position: relative;
    }

        body.searchlist article .adv-search #adv-search-content > div fieldset legend::after {
            position: absolute;
            top: 0;
            right: 0;
            content: '\f067';
            margin-right: .4em;
            font-family: 'Font Awesome 5 Pro';
            font-weight: 400;
            font-size: 1rem;
            opacity: .3;
        }

        body.searchlist article .adv-search #adv-search-content > div fieldset legend[aria-expanded="true"]::after {
            content: '\f068';
        }

    body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-dates label {
        width: 30px;
        justify-content: left;
    }

    body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .head,
    body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .critere {
        margin: 0 .5rem;
    }

    body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .head {
        margin-top: 1rem;
        background-color: #e0e0e0;
    }

    body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .critere {
        position: relative;
        padding: .7rem 0;
        background-color: #f5f5f5;
        border-bottom: 1px solid #fff;
    }

        body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .critere .delete {
            position: absolute;
            right: 1rem;
            top: .3rem;
        }

        body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .critere .bootstrap-select.disabled .dropdown-toggle,
        body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .critere .bootstrap-select > .disabled .dropdown-toggle {
            background: none;
        }

body.searchlist article .search-results {
    position: relative;
    z-index: 1010;
}

    body.searchlist article .search-results table .input-group > .form-control {
        height: calc(1.5em + .6rem + 2px) !important;
        padding: .3rem 1.05rem !important;
    }

    body.searchlist article .search-results table .dropdown-toggle {
        height: calc(1.5em + .6rem + 2px) !important;
        padding-top: .3rem !important;
        padding-bottom: .3rem !important;
    }

@media (min-width: 1200px) {
    body.searchlist article .adv-search #adv-search-content > div fieldset #adv-search-autre .critere .delete {
        position: relative;
        right: inherit;
        top: inherit;
    }
}

/* -------------------- Contenus (ERP) -------------------- */
body.erp main > article {
    padding-top: 170px !important;
    -webkit-clip-path: inset(0);
    clip-path: inset(0);
}

    body.erp main > article .breadcrumb-item,
    body.erp main > article .breadcrumb-item a {
        color: #adb5bd !important;
        font-family: "Arquitecta-bold", Sans-serif;
        text-transform: uppercase;
        text-decoration: none;
        transition: all 0.15s ease;
    }

        body.erp main > article .breadcrumb-item + .breadcrumb-item::before {
            margin-top: 2px;
            font-family: 'Font Awesome 5 Pro';
            font-weight: 400;
            font-size: .7rem;
        }

    body.erp main > article h2 i, body.erp main > article h3 i, body.erp main > article h4 i {
        width: 36px;
        height: 36px;
        min-width: 36px;
        min-height: 36px;
        text-align: center;
        font-size: 1.8rem !important;
    }

        body.erp main > article h2 i:not(.icon), body.erp main > article h3 i:not(.icon), body.erp main > article h4 i:not(.icon) {
            line-height: 1.5em;
        }

    body.erp main > article h2 i {
        margin-top: -.2rem !important;
    }

    body.erp main > article h3 i {
        margin-top: -.5rem !important;
    }

    body.erp main > article h4 i {
        margin-top: -.7rem !important;
    }

@media (min-width: 576px) {
    body.erp main > article {
        padding-top: 210px !important;
    }
}

@media (min-width: 768px) {
    body.erp main > article {
        padding-top: 280px !important;
    }
}

@media (min-width: 992px) {
    body.erp main > article {
        padding-top: 46px !important;
    }
}

body[class*='rub-'] main > article {
    padding-top: 156px !important;
}

@media (min-width: 576px) {
    body[class*='rub-'] main > article {
        padding-top: 170px !important;
    }
}

@media (min-width: 768px) {
    body[class*='rub-'] main > article {
        padding-top: 190px !important;
    }
}

@media (min-width: 992px) {
    body[class*='rub-'] main > article {
        padding-top: 46px !important;
    }
}

/* -------------------- Contenus (ERP > Scheduler) -------------------- */
body.scheduler main > article {
    max-height: 100vh;
    overflow-y: auto;
}

    body.scheduler main > article::-webkit-scrollbar {
        width: 10px;
        height: 10px;
    }

    body.scheduler main > article .schedulecontainer {
        width: calc(100% + 60px);
        margin-left: -30px;
        padding: 20px 30px 80px 30px;
        overflow: inherit;
    }

        body.scheduler main > article .schedulecontainer .BrowseTop {
            position: -webkit-sticky !important;
            position: sticky !important;
            z-index: 9999 !important;
            top: -156px !important;
        }

        body.scheduler main > article .schedulecontainer .RadScheduler,
        body.scheduler main > article .schedulecontainer .rsTopWrap {
            overflow: inherit;
        }

        body.scheduler main > article .schedulecontainer .rsHeader {
            position: -webkit-sticky;
            position: sticky;
            top: -156px;
            z-index: 999;
        }

        body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsSpacerCell,
        body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsHorizontalHeaderWrapper {
            position: -webkit-sticky;
            position: sticky;
            top: -124px;
            z-index: 999;
        }

        body.scheduler main > article .schedulecontainer .rsVerticalHeaderWrapper,
        body.scheduler main > article .schedulecontainer .rsAllDayHeader {
            position: -webkit-sticky;
            position: sticky;
            left: -30px;
            z-index: 998;
        }

html:not(.no-touchevents) body.scheduler main > article {
    padding-bottom: 0 !important;
}

body.scheduler footer {
    display: none;
}

@media (min-width: 576px) {
    body.scheduler main > article .schedulecontainer {
        width: calc(100% + 120px);
        margin-left: -60px;
        padding-left: 60px;
        padding-right: 60px;
    }

        body.scheduler main > article .schedulecontainer .BrowseTop,
        body.scheduler main > article .schedulecontainer .rsHeader {
            top: -173px !important;
        }

        body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsSpacerCell,
        body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsHorizontalHeaderWrapper {
            top: -141px;
        }

        body.scheduler main > article .schedulecontainer .rsVerticalHeaderWrapper,
        body.scheduler main > article .schedulecontainer .rsAllDayHeader {
            left: -60px;
        }
}

@media (min-width: 768px) {
    body.scheduler main > article .schedulecontainer .BrowseTop,
    body.scheduler main > article .schedulecontainer .rsHeader {
        top: -190px !important;
    }

    body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsSpacerCell,
    body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsHorizontalHeaderWrapper {
        top: -158px;
    }
}

@media (min-width: 992px) {
    html.no-touchevents body.scheduler nav.menu-left {
        overflow: hidden;
    }

        html.no-touchevents body.scheduler nav.menu-left .menu-ctn {
            max-height: calc(100vh - 251px) !important;
        }

    body.scheduler main > article .schedulecontainer .BrowseTop {
        top: -48px !important;
    }

    body.scheduler main > article .schedulecontainer .rsHeader {
        top: -46px !important;
    }

    body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsSpacerCell,
    body.scheduler main > article .schedulecontainer .rsContent tr:first-child .rsHorizontalHeaderWrapper {
        top: -17px;
    }

    body.scheduler main > article .schedulecontainer .rsVerticalHeaderWrapper,
    body.scheduler main > article .schedulecontainer .rsAllDayHeader {
        left: -42px;
    }
}

@media (min-width: 992px) {
    body.scheduler main > article {
        max-height: calc(100vh - 251px);
    }

    body.scheduler footer {
        display: block;
    }
}

th.dvHeader {
    background-color: #9b369b;
    color: white;
    text-align: left;
}

.text-k4green {
    color: rgb(72, 219, 0) !important;
}
