/* CSS Standard Artifica version 10.4 */

/******** SOMMAIRE ************/
/*
/* 00 = FONTS
/* 01 = RESET
/* 02 = STYLES GLOBAUX à tous les sites
/* 03 = STRUCTURE
/* 04 = HEADER
/* 05 = FOOTER
/* ==== PAGES ====
/* 06 = ACCUEIL
/* 07 = PAGE INTERNE
/* 08 = ACTUALITÉS
/* 09 = AGENDA
/* 10 = ANNUAIRE
/* 11 = RECHERCHE
/* 12 = MÉDIATHÈQUE
/* 13 = VIDÉOTHÈQUE
/* 14 = SOMMAIRE
/* 15 = PUBLICATIONS
/* ==== MODULES ====
/* 16 = BREADCRUMBS
/* 17 = OUTILS ET PARTAGE
/* 18 = FORMULAIRE
/* 19 = PAGINATION
/* 20 = DIAPORAMA & GABARITS DE FICHIERS
/* 21 = MODALES
/* 22 = LOGIN
/* 23 = PROFILS
/* 24 = MÉTÉO
/* 25 = LEAFLET
/* 26 = MENUS
/* 27 = FAQ
/* 28 = COOKIE CONSENT
/* 29 = PRINT
/*
/* RESPONSIVE
/*
/******************************/


:root {/* À mettre en premier dans les CSS ! */
    --box-shadow: 0 0 15px rgb(0 0 0 / 10%);
    --border-radius: 5px;
    /* SWITCH */    
    --switch-length: 60px;
    --switch-border: 4px;
    --switch-height: calc((var(--switch-length) / 2) + var(--switch-border));
    --switch-border-radius: calc((var(--switch-height) / 2));
}


/* 00 = FONTS */
.rte-content .encart::before,
.rte-content .frame-encart::before,
.blueimp-gallery>.play-pause::before,
.blueimp-gallery-playing>.play-pause::before,
.ui-datepicker .ui-datepicker-prev span::before,
.ui-datepicker .ui-datepicker-next span::before,
.frame-type-textmedia .external-link-new-window::after,
.form-fileupload-gallery-container .form-fileinput-element::before,
.fa {
    font-family: "Font Awesome 6 Pro";
    text-rendering: auto;
}


/* 01 = RESET : vérifier la pertinence de chaque ligne !!!!! */
/* BOOTSTRAP */
.navbar-mainnavigation .dropdown-toggle:after {
    display: none;
}
.frame-container {
    padding-right: var(--bs-gutter-x,15px);
    padding-left: var(--bs-gutter-x,15px);
}
.row {
    --bs-gutter-x: 30px;
}
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto {
    padding-left: 15px;
    padding-right: 15px;
}
figure .picture {
    display: inline;
}
/* Éléments colonne de droite */
.col-right .frame + .frame {/* Même style que pour les blocs dans l'article */
    --frame-outer-spacing-before: calc(-1 * var(--frame-spacing));
}
/* Accessibilité */
.sr-only { /* Pour Asqatasun */
    background-color: #fff;
    color: #000;
}
h2.sr-only,
.rte-content h2.sr-only {
    margin: 0;
    padding: 0;
}
/* Modales */
.modal-header {
    /*flex-direction: row-reverse;*/
}
    .modal-header .close {
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px solid #e1e1e1;
        height: 50px;
        margin: 0;
        width: 50px;
        font-size: 24px;
    }
/* Blocs text & media */
.textmedia,
.textpic {
    gap: 30px; /* Anciennes marges */
}
/* Listes avec images */
.card-img-top picture,
.card-img-top .picture {
    height: 100%;
}
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,main,pre,form,fieldset,input,textarea,p,blockquote,th,td {
    margin: 0; 
    padding: 0;
}
html {
    min-height: 100%;
    max-width: 100%;
    -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
    font-size: 100%;
    overflow-x: hidden;
    scroll-behavior: smooth; /* Défilement de la page */
}
    /* Taille texte */
    body {
        color: #333; 
        font-size: 1em;
    }
        form,fieldset {
            border: none;
        }
            input:-webkit-autofill { /* Enlève le fond jaune sur Chrome */
                -webkit-box-shadow:0 0 0px 1000px white inset;
            }
            /**
            * 1. Correct the text wrapping in Edge and IE.
            * 2. Correct the color inheritance from `fieldset` elements in IE.
            * 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
            */
            legend {
                display: table; /* 1 */
                padding: 0; /* 3 */
                max-width: 100%; /* 1 */
                color: inherit; /* 2 */
                box-sizing: border-box; /* 1 */
                white-space: normal; /* 1 */
            }
        img {
            -ms-interpolation-mode: bicubic; 
            vertical-align: middle;
        }
        abbr[title] {  
            text-decoration: underline; /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
            text-decoration: underline dotted; /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
        }
        button,
        [type="button"],
        [type="reset"],
        [type="submit"] { /* Correct the inability to style clickable types in iOS and Safari */
            -webkit-appearance: button;
        }
        button::-moz-focus-inner,
        [type="button"]::-moz-focus-inner,
        [type="reset"]::-moz-focus-inner,
        [type="submit"]::-moz-focus-inner { /* Remove the inner border and padding in Firefox */
            border-style: none;
            padding: 0;
        }
        /**
         * Add the correct vertical alignment in Chrome, Firefox, and Opera.
         */
        progress {
            vertical-align: baseline;
        }


/* 02 = STYLES GLOBAUX à tous les sites */
*:focus, 
*:active {
    outline: revert;
}
/* Tailles polices */
.typo_size1 .rte-content {
    font-size: 100%;
} 
.typo_size2 .rte-content {
    font-size: 120%;
}
.typo_size3 .rte-content {
    font-size: 140%;
}
/* Utilisé régulièrement sans effets de bord de Bootstrap */
.hidden {/* équivaut à [hidden] utilisé par Bootstrap ! */
    display: none !important;
}
.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}
.object-fit {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
/* LOADING */ /* VOIR SI ON PEUT FAIRE QUELQUE CHOSE POUR CETTE TAILLE ! */
/*** Reprend les styles de "fa fa-spinner fa-spin" // Changer le "background-color" et le "color" selon le projet,voire aussi le "content" */
.loading {
    position: relative;
    display: block;
    height: 250px;
    max-height: 100%; 
    margin: 0 auto; 
    max-width: 100%;
    width: 710px;
    background: #f5f5f5 url("../Assets/blueimp/img/loading.gif") no-repeat center center;
    overflow: hidden;
}
.navbar-visible {/* Enlève l'ascenseur sur le body */
    height: 100vh; /* Si on ne veut pas de saut en haut de page : height: auto;*/
    overflow-y: hidden;
}


/* 03 = STRUCTURE */
html, body {
    height: 100%;/*Pour l'overflow: hidden de la page avec le cookie consent */
}
    #wrap {
        position: relative;/* Sinon ascenseur sur .modal-cookie-consent-scroll-visible */
    }
        .rte-content .lead {
            --frame-spacing: var(--frame-spacing-xl);
            padding-top: var(--frame-spacing);
        }
        .rte-content .last-update {
            --frame-spacing: var(--frame-spacing-xl);
            padding-bottom: var(--frame-spacing);
        }

/* 04 = HEADER */
/* Skip links */
.skip-links {
    position: absolute; 
    left: 0;
    top: 0;
    list-style-type: none;
}
    .skip-item {
        position: absolute;
        left: 0; 
        top: -200px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px 20px;
        background: #000;
        color: #fff;/* Pour tests accessibilité */
        line-height: 1;
        white-space: nowrap;
    }
    .skip-item:focus {
        top: 0; 
        z-index: 10000;
        color: #fff; 
    }
/* Header du site */
/* BOOTSTRAP */
/* Header fixe */
/* LOGO */
.navbar-brand {
    margin: 0;
    padding: 0;
}
    .navbar-mainnavigation.navbar-default-transition .logo .navbar-brand {
        display: block;
        border: 0;
        height: 100%;
        margin: 0;
        padding: 0;
    }
        .navbar-mainnavigation .navbar-brand-image img {
            top: 0;
            max-height: inherit;
            height: 100%;
            transform: none; 
        }
/* 1er niveau */
.header-menu .navbar-collapse {
    position: absolute;
    left: 0;
    right: 0;
    top: 50px;
    height: calc(100vh - 51px);
    background-color: rgba(0,0,0,.75);
}
    .header-menu .navigation {
        flex-direction: column;
        border-radius: 0;
    }
        .header-menu .list-group-item {
            position: static;
            border: 0;
            border-radius: 0;
            padding: 0;
        }
        .header-menu .list-group-item.active {/*Surcharge BS */
            border: 0;
            margin: 0;
            background: transparent;
        }
            .header-menu .list-group-item .link {
                display: flex;
                align-items: center;
                min-height: 50px;
                padding: 13px 15px;
                text-decoration: none;
                transition: all .3s;
            }
            .header-menu .list-group-item .link:focus,
            .header-menu .list-group-item .link:hover,
            .header-menu .list-group-item .link:active,
            .header-menu .current .link {
                outline: none;
            }
                /* 2ème niveau */
                .header-menu .dropdown-menu {
                    top: 75px!important;
                    border: 0;
                    border-radius: 0;
                    padding: 0;
                    width: 100%;
                    transition: top .3s;
                    transform: none!important;
                }
                .navbar-transition .header-menu .dropdown-menu {
                    top: 50px!important;
                }
                    .header-menu .dropdown-menu .container {
                        padding: 50px var(--bs-gutter-x,20px);
                    }
                /* Header de la page */
                .site-main .page-header {
                    
                }


/* 05 = FOOTER */
.site-footer {
    position: relative;
}
    /* Retour haut de page*/
    .to-page-top {
        position: fixed;
        right: 30px;
        bottom: 15px;
        z-index: 1000;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        height: 50px;
        width: 50px;
        transition: all .3s;
    }
        .to-page-top,
        .to-page-top:hover,
        .to-page-top:active,
        .to-page-top:focus {
            background-color: #000;
            color: #fff;
            text-decoration: none;
        }
            .to-page-top .fa-arrow-up {
            	font-size: 1.3rem;    	
            }
            .to-page-top:hover .fa-arrow-up {
            	transform: translateY(-3px);
            }


/* 06 = Accueil */


/* 07 = PAGE INTERNE */
/* TITRES ET ELEMENTS En relatif car A+/A- ! */
.rte-content .page-title {
    margin-bottom: 1em;
    font-size: 3em;
}
.rte-content .lead {
    font-size: 1.25em;
}
/* RTE */ 
/*.rte-content h2, 
.rte-content .h2,
.rte-content h2:last-child,
.rte-content h3,
.rte-content .h3, 
.rte-content h3:last-child,
.rte-content h4,
.rte-content .h4, 
.rte-content h4:last-child,
.rte-content h5,
.rte-content .h5, 
.rte-content h5:last-child,
.rte-content h6,
.rte-content .h6,
.rte-content h6:last-child {
    margin-bottom: 1em;
}*/
.rte-content h2 {
    font-size: 1.75em;
}
.rte-content h3 {
    font-size: 1.55em;
}
.rte-content h4 {
    font-size: 1.125em;
}
.rte-content h5 {
    font-size: 1em;
}
.rte-content h6 {
    font-size: .875em;
}
    /* Classes RTE */
    .text-important {
        color: #c00!important;
        font-weight: bold;
    }
    .text-strike {
        text-decoration: line-through;
    }
    .text-small {
        font-size: .8em;
    }
    .text-big {
        font-size: 1.2em;
    }
    .rte-content .phone {
        color: #333;
        font-weight: 700;
    }
    /* Icône lien externe */
    .frame-type-textmedia .external-link-new-window::after {
        content: '\f08e';
        margin-left: 0.25em;
    }
    .rte-content p {
        margin-bottom: 1em;
    }
    .rte-content p,
    .rte-content .list-normal li,
    .rte-content ol li  {
        font-size: 1em;
    }
    .rte-content blockquote {
        position: relative;
        border-left: 4px solid rgba(0,0,0,0.125);
        margin-bottom: 2em;
        padding: 1.25rem 1.5rem;
        font-size: 1.25rem;
    }
.page-picture .picture-desc {

}
    .page-picture .picture-desc small {/* Mêmes styles que "figure .caption" de Bootstrap Package */
        padding-top: 0.25rem;
        font-size: 0.85rem;
        opacity: 0.8;
        word-wrap: break-word;
    }
.rte-content .encart,
.frame-encart .frame-group-container {
    position: relative;  
    margin-bottom: 1em;
    padding: 50px 60px;
}
.rte-content .frame-encart {
    margin-top: 0;
}
    .frame-encart .frame-group-container {
        margin: 0;
    }
    .rte-content .encart::before,
    .rte-content .frame-encart::before {
        position: absolute;
        left: 20px;
        top: 0;
        z-index: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        content: '\f129';
        border-radius: 40px;
        height: 80px;
        width: 80px;
        background-color: #fff;
        color: var(--colordark);
        font-size: 50px;
    }
.rte-content p {
    hyphens: auto;
}
/* Listes */
.rte-content ul:not(.list-unstyled),
.rte-content ol:not(.list-unstyled) {
    margin-bottom: 2em;
    padding-left: 40px;
}
    .rte-content ul ul,
    .rte-content ol ol,
    .rte-content ul ol,
    .rte-content ol ul {
        margin-bottom: 0;
    }
        .rte-content .list-normal li li,
        .rte-content ol li li {
            font-size: 1em;
        }

.embed-responsive-16by9 {
    margin-bottom: 2em;
}
.rte-content .last-update {
    display: block;
    margin-bottom: 1em;
    color: #737373;
    font-size: .875em;
}

/* Tableaux *//* Vu avec Raoul : on change seulement quelques détails sur les 4 tableaux possibles avec TYPO3*/

/* Accordéon */
.rte-content .frame-type-accordion .accordion-header {
    margin-bottom: 0;
}
/* Colonne de droite */
.frame-siblings .list-unstyled {
    margin: 0;
    padding: 0;
}

/* Liste de fichiers */
.media-list-default .media {
    display: flex;
}
    .media-list-default .media-left {
        width: 20px;
    }
/* Colonne de droite */
.rte-content .col-droite h2 {
    margin-bottom: 10px;
}


/* 08 = ACTUALITÉS */
/* Catégories */
.category {/* Style général pour toutes les catégories */
    display: inline-flex;
}


/* 09 = AGENDA */
/* Filtres */
.filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    background-color: #fff;
}
    .filters .row {
        align-items: center;
        border-radius: var(--border-radius);
        margin: 0;
        padding: 15px 0;
        width: 100%;
        background: #fff;
        box-shadow: var(--box-shadow);
    }
        .filters .form-group {
            margin-bottom: 10px;
        }
            .filters .calendar .form-control,
            .filters select.form-control {
                height: 40px;
                box-shadow: none;
            }
                .filters .calendar .dropdown-toggle::after {
                    margin-left: auto;
                }
            .filters .calendar .form-control {
                display: flex;
                align-items: center;
                gap: 5px;
            }
                .filters .calendar .time {
                    color: inherit;
                }
        .filters .form-group:last-child {
            margin-bottom: 0;
        }
        .filters .control-label .far,
        .filters .control-label .fa, 
        .filters .control-label .fas {
            margin-right: 5px;
        }
.filters .col-xs-12,
.filters .filters-search {
    padding: 0;
}
.filters .col-md-3 {
    max-width: inherit;
}

/* Switch */
.filters .switch {
    height: 34px;
}
    .filters .switch input + label {
        position: relative;
        margin: 0;
        padding-right: calc(10px + var(--switch-length));
        font-weight: 400;
        cursor: pointer;
    }
    .filters .switch input + label::before,
    .switch input + label::after {
        position: absolute;
        display: block;    
        content: "";
    }
    .filters .switch input + label::before {
        right: 0;
        top: 0;
        z-index: 1;
        border: 2px solid #ccc;
        border-radius: var(--switch-border-radius); 
        height: var(--switch-height);
        width: var(--switch-length);
        background-color: #ccc;
        transition-property: background-color;
    }
    .filters .switch input:checked + label::before {

    }
    .filters .switch input + label::after {
        right: calc(var(--switch-length) - (var(--switch-height) - var(--switch-border)));
        top: var(--switch-border);
        z-index: 2;
        border-radius: 50%;
        height: calc(var(--switch-height) - (2 * (var(--switch-border))));
        width: calc(var(--switch-height) - (2 * (var(--switch-border))));
        background-color: #fff;
        transition-property: background-color,left;
    }
    .filters .switch input:checked + label::after {
        right: calc(var(--switch-border));
    }
    .filters .switch input:checked + label::before,
    .filters .switch input:checked + label::after {
        color: #30a1c0;
    }

/* Calendrier */
.calendar .dropdown-menu {
    padding: 0;
}
    .calendar-render .thosedates {
        display: flex;
        align-items: center;
        flex-direction: column;
        gap: 5px;
        padding: 5px;
    }
        .thosedates .checkbox {
            position: relative;
            padding: 0;
            overflow: hidden;
        }
            .checkbox input[type="checkbox"].sr-only {
                position: absolute;
                top: -50px;
            }
            .checkbox .btn-thosedates {
                white-space: nowrap;
            }
.calendar-render .ui-datepicker {
    border: 0;
    padding: 0;
    width: auto;
}
    .ui-datepicker .ui-datepicker-header {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 40px;
        padding: 0;
    }
        .ui-datepicker .ui-datepicker-title {
            font-size: 1.125em;
            line-height: 1;
            text-transform: initial;
        }
        .ui-datepicker .ui-datepicker-prev, 
        .ui-datepicker .ui-datepicker-next {
            left: 0;
            top: 0;
            border: 2px solid transparent;
            height: 40px;
            width: 40px;
        }
        .ui-datepicker .ui-datepicker-next {
            left: auto;
            right: 0;
        }
            .ui-datepicker .ui-datepicker-prev span, 
            .ui-datepicker .ui-datepicker-next span {
                background: none;
                position: static;
                margin: -2px 0 0 -2px;/* On récupère la marge sur le parent */
                display: inline-flex;
                height: 40px;
                width: 40px;
                text-indent: 100px;
            }
                .ui-datepicker .ui-datepicker-prev span::before,
                .ui-datepicker .ui-datepicker-next span::before {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    text-indent: 0;
                    height: 40px;
                    min-width: 40px;
                    font-size: 18px;
                    font-weight: 600;
                    cursor: pointer;
                }
                .ui-datepicker .ui-datepicker-prev span::before {
                    content: '\f053';
                }
                .ui-datepicker .ui-datepicker-next span::before {
                    content: '\f054';
                }
    /* Tableau */
    .ui-datepicker table {
        margin: 0 auto;
        width: auto;
    }
        .ui-datepicker td span, .ui-datepicker td a {
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            height: 40px;
            width: 40px;
            padding: 0;
            text-align: center;
            text-decoration: none;
        }
    /* Boutons bas de panel */
    .ui-datepicker .ui-datepicker-buttonpane button {

    }
    .ui-datepicker .ui-datepicker-buttonpane .ui-datepicker-current,
    .ui-datepicker .ui-datepicker-buttonpane .ui-datepicker-submit {
        border-radius: 20px;
        height: 36px;
        padding-top: 0.5em;
        font-size: .75em;
        font-weight: 600;
        text-transform: uppercase;
        opacity: 1;
        transition: all .3s;
    }

/* Critères */
.criteria-total {
    margin: 15px 0;
}
    .criteria-total .totalresults {
        margin-bottom: 10px;
    }
    .criteria-total .criteria {
        display: flex;
        flex-wrap: wrap;
        gap: 5px;
    }
        .criteria .btn-primary {
            display: inline-flex;
        }

/* Liste */
.events-item .item-link:focus,
.events-item .item-link:hover,
.events-item .item-link:active,
.news-item .item-link:focus,
.news-item .item-link:hover,
.news-item .item-link:active {
    text-decoration: none;
}
/* Single */
.col-droite .events-dates {
    margin-bottom: 1em;
}
#modalShareAgenda .modal-footer {
    flex-wrap: wrap;
    justify-content: flex-start;
}
    #modalShareAgenda .modal-footer .btn-primary {
        padding: 0 10px;
        min-width: calc(33.3333334% - 10px);
        font-weight: normal;
        line-height: 1;
        text-transform: inherit;
        white-space: nowrap;
    }
        #modalShareAgenda .modal-footer .fa-calendar-plus {
            margin-right: 5px;
        }
/* Ajouter à mon agenda */
#modalShareAgenda .modal-dialog {

}
    #modalShareAgenda .modal-content {
        border: 0;
        border-radius: 5px;
        /*min-width: 630px;*/
        background-color: #f9f9f9;
        box-shadow: 0 0 20px rgba(0,0,0,.35);
    }
        #modalShareAgenda .modal-header {
            align-items: center;
            /*flex-direction: row;*/
            padding: 10px 1rem;
            text-align: center;
        }
            #modalShareAgenda .title {
                font-size: 1.125em;
                font-weight: 600;
            }
    #modalShareAgenda .modal-body {
        /*padding: 0 30px 30px;*/
    }
        .modal-body .modal-list-item .legend,
        .modal-body .modal-date .legend,
        .modal-body .modal-item .legend {
            margin-bottom: 15px;
            font-weight: bold;
        }
        .modal-body .modal-item .legend {
            margin: 0;
        }
            .modal-body .modal-item .modal-date {
                margin-bottom: 15px;
            }
        #modalShareAgenda .modal-body_title {
            color: #333;
            font-size: .875em;
            font-weight: 600;
            margin-bottom: 15px;
        }
        #modalShareAgenda .share-links {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 50px;
        }
            #modalShareAgenda .btn-adds {
                display: flex;
                flex-direction: column;
                flex-wrap: wrap;
                justify-content: space-between;
            }
                #modalShareAgenda .btn-primary {
                    display: inline-flex;
                    align-items: center;
                    justify-content: flex-start;
                    border: 1px solid #e5e5e5;
                    border-radius: 5px;
                    height: 50px;
                    margin: 0 0 10px;
                    padding: 0 12px;
                    width: 50%;
                    background-color: #fff;
                    color: #000;
                    font-size: .875em;
                }
                    #modalShareAgenda .share-icon {
                        display: inline-block;
                        height: 32px;
                        margin-right: 15px;
                        min-width: 32px;
                        background-position: center center;
                        background-repeat: no-repeat;
                        background-size: 32px auto;
                    }
                    #modalShareAgenda .googleCalendar .share-icon {
                        background-image: url("../Img/modalShareAgenda/google.svg");
                    }
                    #modalShareAgenda .windowsLive .share-icon {
                        background-image: url("../Img/modalShareAgenda/outlook.svg");
                    }
                    #modalShareAgenda .yahooCalendar .share-icon {
                        background-image: url("../Img/modalShareAgenda/yahoo.svg");
                    }
                    #modalShareAgenda .iCal .share-icon {
                        background-image: url("../Img/modalShareAgenda/iCal.svg");
                    }
    #modalShareAgenda .modal-footer {        
        background-color: #fff;
        border-radius: 0 0 5px 5px;
    }
        #modalShareAgenda .close {
            border: 1px solid #e5e5e5;
            border-radius: 3px;            
            padding: 0px 15px;
            background-color: #fff;
            color: #737373;
            opacity: 1;
        }
        #modalShareAgenda .btn-default {
            margin-left: auto;
        }

/* 11 = RECHERCHE */
/* Filtres */
.col-droite .search-filters-list {
    padding: 0;
}
    .search-filters-list .link,
    .search-type .link {
        display: flex;
        align-items: center;
        min-height: 50px;
        margin-bottom: 10px;
    }
    .search-filters-list .link:hover,
    .search-filters-list .link:focus,
    .search-filters-list .link:active,
    .search-type .link:hover,
    .search-type .link:focus,
    .search-type .link:active,
    .start-point .item .link:hover,
    .start-point .item .link:focus,
    .start-point .item .link:active {
        color: var(--blue);
        text-decoration: none;
    }
        .search-filters-list .icon,
        .search-type .icon {
            border: 1px solid var(--blue);
            border-radius: 50%;
            height: 50px;
            margin-right: 10px;
            width: 50px;
            font-size: 18px;
            transition: all .3s;
        }        
        .search-filters-list .link:hover .icon,
        .search-filters-list .link:focus .icon,
        .search-filters-list .link:active .icon {
            background-color: var(--blue);
            color: #fff;
        }
/* Liste */
.start-point .item {
    border-bottom: 1px solid #e3e3e3;
    padding: 30px 0;
    cursor: pointer;
}
.start-point .item:last-child {
    border: 0;
}
    .item .search-body {
        display: flex;
        align-items: center;
        width: 100%;
    }
        .start-point .item .search-rating {
            width: auto;
            margin: 0 0 10px 0;
            color: #333;
            font-size: .75em;
            font-weight: 300;
            text-transform: uppercase;
        }
            .search-rating .progressBar {
                margin-right: 10px;
                height: 10px;
                width: 75px;
                appearance: none;
            }
        .start-point .item .title {
            margin-bottom: 10px;
        }
        .start-point .abstract p {
            margin-bottom: 0;
        }


/* 16 = BREADCRUMBS */ /* RENOMMER ET REFAIRE PROPREMENT ! */
.breadcrumb {
    padding: 10px 0;
    background-color: transparent;
    color: #737373;
}
    .breadcrumb .item {
        padding: 0 5px;
    }
    .breadcrumb .link {
        color: #737373;
    }
    .breadcrumb .first:hover,
    .breadcrumb .first:active,
    .breadcrumb .first:focus {
        color: #333;
        text-decoration: none;
    }  
    .breadcrumb .separator {
        padding: 0 5px;
        line-height: 1.3;
    }
    .breadcrumb .last {
        
    }


/* 17 = OUTILS ET PARTAGE */
.site-main .site-tools {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
    .site-tools .tools-share {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 40px;
        padding: 0 12px;
        width: 40px;
    }


/* 18 = FORMULAIRE */
.form-horizontal .container-fluid {
    padding: 0;
}
    .form-horizontal .obligatoires {
        margin: 1em 0; 
        color: red;
        font-size: .875em;
    }
    .form-horizontal .form-group {

    }
        .form-horizontal abbr[title] {
            color: red;
            text-decoration: none;
        }
        .form-group .row {
            margin: 0;
        }
            .input-group {
                justify-content: space-between;
            }
                .input-group .form-control {
                    min-height: 40px;
                    line-height: 1.2;
                }
                .input-group .form-control,
                .form-group input[type="file"] {
                    box-shadow: none;
                }
                .input-group-addon, 
                .input-group-btn, 
                .input-group .form-control {

                }
                .input-group-addon, 
                .input-group-btn {
                    width: 40px;
                    white-space: nowrap;
                    vertical-align: middle;
                }
                .input-group-addon {
                    display: flex;
                    align-items: center;
                    border: 1px solid #ccc;
                    border-radius: 0.25rem;
                    padding: 6px 12px;
                    background-color: #eee;
                    color: #555;
                    line-height: 1;
                }
                .input-group-addon:last-child {
                    border-left: 0;
                }
                .input-group:not(.has-validation) > .input-group-addon:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) {
                    border-top-right-radius: 0.25rem;
                    border-bottom-right-radius: 0.25rem;
                }
                .input-group > span:not(.input-group-addon) {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    height: 40px;
                    min-width: 20px;
                }

        .form-group select.form-control {
            appearance: auto;
            box-shadow: none;
        }
            .checkbox, .radio {
                display: block;
                min-height: 1.5rem;
                padding-left: 0;
                margin-bottom: 0.125rem;
            }
            .checkbox-unique {
                display: flex;
                align-items: flex-start;
            }
                .form-group .checkbox-unique input[type="checkbox"] {
                    margin-top: 8px;
                }
            .radio label, 
            .checkbox label {
                margin-bottom: 0;
                cursor: pointer;
            }
                .radio input[type="radio"], 
                .radio-inline input[type="radio"], 
                .checkbox input[type="checkbox"], 
                .checkbox-inline input[type="checkbox"] {
                    position: static;  
                    display: inline-block;
                    margin: 0 .5rem 0 0;
                }
        .form-group .date .col-xs-12 {
            padding: 0;
        }
        .form-group .date .col-sm-4 {
            width: calc(33.3333334% - 10px);
        }
        input[type="file"] {
            display: block;
        }
        .help-block {
            display: block;
            color: #737373;
        }
        .form-group .comments {
            padding: 6px 12px;
            background-color: #e1e1e1;
        }
            /* Date-picker */
            .ui-datepicker {
                width: auto;
            }
        /* Photo */
        .form-fileupload-gallery-container .form-fileinput-element {
            position: relative;
            border: 1px solid #000000;
            height: 83px;
            padding: 0px;
            width: 83px;
        }
            .form-fileupload-gallery-container .form-fileinput-element::before {
                position: absolute;
                right: 0;
                top: 0;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                content: '\f2ed';
                border: 0;
                height: 24px;
                width: 24px;
                background: transparent;
                color: #fff;
                font-size: 16px;
                text-shadow: 1px 1px 5px black;
            }

/* Captcha */
.captcha .todo {
    margin-bottom: 2em; 
    font-size: 1.25em;
}
.captcha .serie {}
.captcha .serie li {
    position: relative;
    overflow: hidden;
}
.captcha .serie .control-label {
    border: 2px dashed #b5b7ba;
    border-radius: 5px;
    padding-top: 0;
    width: 40px;
    background-color: #fff;
    color: #333; 
    font-size: 25px;
    line-height: 40px;
    text-align: center;
    cursor: pointer;
}
.captcha .serie input:checked ~ label {
    border: 2px solid #333;
}
.captcha .serie input {
    position: absolute;
    left: -20px;
    top: -20px;
}
.captcha .serie input:checked {
    height: 40px;
}
/* Erreurs */
.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
    color:#f00;
}


/* 19 = PAGINATION */
.pagination {
    display: flex;
    justify-content: center;
    margin: 2em 0;
    padding-left: 0;
    list-style: none;
}
    .pagination .btn-light {
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 25px;
        height: 50px;
        padding: 0;
        width: 50px;
        background-color: var(--lightblue);
        font-size: 1.125em;
        box-shadow: none;
        transition: all .3s;
    }
    .pagination .current {
        font-weight: bold;
    }

/* pagination Load More */
.load-more {
    position: relative;
    z-index: 1;
    display: inline-block;
    border: 1px solid #999;
    padding: 1em;
    background-color: transparent;
    color: #333;
}
.load-more:hover {
    border: 1px solid #999;
}
.load-more.sweep::before {
    
}
.load-more.sweep:hover::before {
  
}


/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
/* Téléchargement de fichiers */
.files-list-default .list-unstyled {
    margin: 0;
    padding: 0;
}
    .files-list-default a {
        display: flex;
        align-items: center;
        border-bottom: 1px solid #e1e1e1;
        min-height: 60px;
        text-decoration: none;
    }
    .files-list-default li:first-child a {
        border-top: 1px solid #e1e1e1;
    }
        .files-list-default .media-left {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
            height: 50px;
            min-width: 80px;
            font-size: 24px;
            transition: .3s ease;
        }
        .files-list-default .media-body {
            padding: 13px 0;
        }
            .files-list-default .media-title {
                display: inline-block;
                margin-right: 5px;
            }

/* GALERIE */
.rte-content .files-list-gallery {

}
    .files-list-gallery .gallery-item {
        --gallery-columns: 1;
        --gallery-gap: 0px;/* Important pour ne garder QUE les paddings */
        margin-bottom: 30px;
    }
        .gallery-item .gallery-artifica-picture {
            display: block;
            border-radius: 10px;
            overflow: hidden;
        }


/* BLUEIMP - GALLERY + CAROUSEL */
.blueimp-gallery-carousel {
    box-shadow: none;
}
.blueimp-gallery-carousel .title {
    font-size: 1rem; 
    font-weight: 700; 
    line-height: 1;
}
.blueimp-gallery-carousel .counter {
    position: absolute;
    bottom: 0; 
    left:5px;
    top: auto;
    color: #fff;
    font-size: 1.5rem;
    opacity:.5;
}
.blueimp-gallery-carousel .fullScreen {
    position: absolute;
    left: auto; 
    right: 0;
    top: 0;
    height: 50px;
    width: 50px;
    color: #fff; 
    font-size:1.3em;
    line-height:50px;
    text-align:center;
    cursor:pointer;  
    opacity:.5;     
    transition-property:opacity;
}
.blueimp-gallery-carousel .fullScreen:active,
.blueimp-gallery-carousel .fullScreen:focus,
.blueimp-gallery-carousel .fullScreen:hover,
.blueimp-gallery-carousel .play-payse:active,
.blueimp-gallery-carousel .play-payse:focus,
.blueimp-gallery-carousel .play-payse:hover {
    opacity:1;
}
body:last-child .blueimp-gallery>.play-pause { 
    bottom: 0;
    right: 0;
    height: 50px;
    width: 50px;
    background-image:none; 
    color:#fff; 
    font-size:1.5rem;
    line-height:50px;  
    text-align: center; 
    transition-property:opacity;
}
body:last-child .blueimp-gallery>.play-pause::before {
    content: "\f04b";
    display: inline-block;  
    font-size: inherit;
    font-weight: 700;
    text-rendering: auto;  
}
body:last-child .blueimp-gallery-playing>.play-pause::before { 
    content:"\f04c";
    font-weight: 700px;
}
.blueimp-gallery>.next,
.blueimp-gallery >.prev { 
    border-radius:50%; 
    height: 46px;
    width: 46px;
    line-height: 0;
    text-shadow: none;     
    transition-property: opacity;
}
.blueimp-gallery-controls > .next .fa,
.blueimp-gallery-controls > .prev .fa {
    color: #fff; 
    font-size: 30px; 
    line-height: 45px;
}

/* Vignettes */
.diaporama-controls {
    display: flex;
    align-items: center;
    justify-content: center;
}
    .diaporama-controls .indicator,
    .diaporama-controls .next,
    .diaporama-controls .prev {
        display: inline-block; 
        vertical-align: middle;
    }
    .diaporama-controls .next,
    .diaporama-controls .prev {
        display: flex;
        align-items: center;
        justify-content: center;
        border: 0 !important; 
        border-radius: 50% !important; 
        height: 40px;
        width: 40px;
        color: #222; 
        font-family: monospace; 
        font-size: 32px;
        line-height: 40px;
        text-decoration: none;
        cursor: pointer; 
        transition-property: background-color,color; 
    }
    .diaporama-controls .next:focus,
    .diaporama-controls .prev:focus,
    .diaporama-controls .next:hover,
    .diaporama-controls .prev:hover,
    .diaporama-controls .next:active,
    .diaporama-controls .prev:active {
        border-radius: 5px;
        background-color: #222; 
        color: #fff;
    }
        .diaporama-controls .next .fa,
        .diaporama-controls .prev .fa {
            line-height: 40px;
        }
    .diaporama-controls .indicator {
        position: relative;
        height: 60px;
        width: 80%;
        overflow: hidden;
    }
        .diaporama-controls ul { 
            position: absolute;
            left: 0; 
            top: 0;
            margin:0; 
            padding:0;
            white-space: nowrap;
            transition: left .2s ease-in;
        }
            .diaporama-controls ul .item {
                display: inline-block;
                border: 5px solid transparent; 
                border-radius: 0; 
                padding: 0;
                cursor: pointer;   
                transition: all 0.2s ease; 
                vertical-align: middle;
            }
            .blueimp-gallery .indicator .item {  
                border: 5px solid transparent; 
                border-radius: 0; 
                transition: all 0.2s ease;
            }
            .diaporama-controls ul .item.active,
            .diaporama-controls ul .item:hover {
                border-color: #222;
            }
                .diaporama-controls ul .item::before {/* Correction CSS client */
                    display: none;
                }
                .diaporama-controls ul .item img {
                    height: 50px; 
                    width: auto;
                }

/* Galerie full-page */
.blueimp-gallery>.indicator>li {
    background-size:cover;
}
.blueimp-gallery>.close {
    height: 50px;
    width: 50px;
    padding: 0; 
    line-height: 50px;
    text-align: center;
}
.blueimp-gallery>.close .fa-times {
    font-size: 1.5rem;
}


/* 26 = MENUS
/* plan du site */
.frame-type-menu_sitemap .frame-inner > ul  {
    padding: 0;
}
    .frame-type-menu_sitemap .frame-inner > ul > li {
        background: none;
    }
        .frame-type-menu_sitemap .frame-inner > ul > li > a {
            display: none;
        }
        .rte-content .frame-type-menu_sitemap ul ul {
            margin: 0 0 0 3px;  
            padding: 10px 0 0;
            background: url("../Img/icons/sitemap-dot.png") 0 bottom repeat-y;
            list-style: none outside;
        }
            .frame-type-menu_sitemap ul ul ul {
                margin: 0 0 0 10px;
                padding: 0;
            }
                .frame-type-menu_sitemap li {
                    display: block;  
                    margin-left: 1px;
                    padding: 0 0 0 10px;
                    background: url("../Img/icons/sitemap-dot.png") 0 12px repeat-x;
                }
                    .frame-type-menu_sitemap a {
                        display: block;
                        border: 0;  
                        padding: 0 0 5px 24px;
                        background: url("../Img/icons/ico-page.png") 5px 6px no-repeat #FFF;
                        color: #333;
                        font-size: 16px;
                        font-weight: 700;
                        line-height: 24px;
                        text-transform: uppercase;
                    }
                    .frame-type-menu_sitemap a:hover {
                        background-size: inherit;
                    }
                        .frame-type-menu_sitemap ul ul ul a {
                            font-style: italic;
                            font-weight: 400;
                            text-transform: none;
                        }
                            .frame-type-menu_sitemap ul ul ul ul a {
                                font-size: 12px;
                                font-style: normal;
                            }

/* Menu secondaire */
.frame-siblings {
   
}


/* 29 = PRINT // Boilerplate v8.0.0 */
@media print,
    (-webkit-min-device-pixel-ratio: 1.25),
    (min-resolution: 1.25dppx),
    (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *::before,
    *::after {
        background: #fff !important;
        color: #000 !important;
        /* Black prints faster */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]::after {
        content: " (" attr(href) ")";
    }

    abbr[title]::after {
        content: " (" attr(title) ")";
    }

    /*
    * Don't show links that are fragment identifiers,
    * or use the `javascript:` pseudo protocol
    */
    a[href^="#"]::after,
    a[href^="javascript:"]::after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
    * Printing Tables:
    * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
    */
    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


/* RESPONSIVE ********************************************************************************************* */
@media screen and (min-width: 425px) {/* MOBILE - Petit ************************************************ */



}


@media screen and (min-width: 576px) {/* MOBILE - Moyens  ************************************************ */

/* 04 = HEADER */
    /* 1er niveau */
    .header-menu .list-group-item .link {
        margin: 0 auto;
        max-width: 540px;
    }

/* 09 = AGENDA */
    /* Filtres */
    /* Calendrier */
    .calendar-render .thosedates {
        flex-direction: row;
    }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 2;
    }

}


@media screen and (min-width: 768px) {/* MOBILE - Grands  ************************************************ */

/* 01 = RESET : vérifier la pertinence de chaque ligne !!!!! */
    /* BOOTSTRAP */
    /* Blocs text & media */
    .textmedia-right .textmedia-item, .textmedia-right .textpic-item, .textmedia-left .textmedia-item, .textmedia-left .textpic-item, .textpic-right .textmedia-item, .textpic-right .textpic-item, .textpic-left .textmedia-item, .textpic-left .textpic-item {
        width: calc(50% - (30px / 2));/* Gap modifié à 30px */
    }

/* 04 = HEADER */
    /* 1er niveau */
    .header-menu .list-group-item .link {
        max-width: 720px;
    }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 3;
    }

/* 21 = MODALES */
    /* Ajouter à mon agenda */
    #modalShareAgenda .modal-dialog {
        position: absolute;
        left: 50%;
        top: 50%;
        margin: 0;
        max-width: inherit;
        transform: translate(-50%,-50%);
    }
        #modalShareAgenda .modal-content {
            min-width: 630px;
        }
            #modalShareAgenda .btn-adds {
                flex-direction: row;
            }
                #modalShareAgenda .btn-primary {
                    margin: 0;
                    width: calc(25% - 10px);
                }

}


@media (max-width: 991px) {/* Éléments sous-menu navigation */

/* 04 = HEADER */
    /* 2ème niveau */
    .header-menu .dropdown-menu {
        position: static!important;
        margin: 0;
        transform: none!important;
        width: 100%;
    }
    .navbar-mainnavigation.navbar-default .dropdown-menu a:not(.active), 
    .navbar-mainnavigation.navbar-default-transition .dropdown-menu a:not(.active), 
    .navbar-mainnavigation.navbar-default-transition.navbar-transition .dropdown-menu a:not(.active) {
        border-bottom: 0;
    }
    /*.navbar-mainnavigation.navbar-default .dropdown-menu .list:last-child a:not(.active), 
    .navbar-mainnavigation.navbar-default-transition .dropdown-menu .list:last-child a:not(.active), 
    .navbar-mainnavigation.navbar-default-transition.navbar-transition .dropdown-menu .list:last-child a:not(.active) {
        border-bottom: 1px solid #ddd;
    }*/

}


@media screen and (min-width: 992px) {/* TABLETTES  ************************************************ */

/* 04 = HEADER */
    .header-menu .navbar-collapse {
        height: auto;
        background-color: transparent;
    }
        .navigation .list-group-item .menu-background {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            top: 75px;
            display: none;
            content: '';
            background-color: rgba(0,0,0,.75);
            transition: top .3s;
        }
        .navigation .list-group-item .show + .menu-background {
            display: block;
        }
        .navbar-transition .navigation .list-group-item .menu-background {
            top: 50px;
        }

/* 06 = Accueil */
    /* Carousel */
    .carousel .carousel-control {
        display: flex;
    }

/* 07 = PAGE INTERNE */
    /* RTE */
    .rte-content h2 {
        font-size: 2.125em;
    }
    .rte-content h3 {
        font-size: 1.875em;
    }
    .rte-content h4 {
        font-size: 1.5em;
    }
    .rte-content h5 {
        font-size: 1.125em;
    }
    .rte-content h6 {
        font-size: 1em;
    }

/* 09 = AGENDA */
    /* Filtres */
    .filters .form-group {
        margin: 0;
        width: auto;
    }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 4;
    }

}


@media screen and (min-width: 1200px) {/* DESKTOP - Grands  ************************************************ */

/* 01 = RESET */
    /* BOOTSTRAP */
    .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
        max-width: 1200px;/* Identique min-width: 1200px; pour s'aligner sur la grille maquette */
    }
    .frame-container-default {
        max-width: 1200px;
    }

/* 09 = AGENDA */
    /* Filtres : à vérifier !!!!! */
    .filters .col-xs-12 {
    padding: 0 5px;
    }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 5;
    }

}

@media (min-width: 1400px) {/* DESKTOP - Très grands  ************************************************ */

/* 01 = RESET */
    /* BOOTSTRAP */
    .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
        max-width: 1200px;/* Identique min-width: 1200px; pour s'aligner sur la grille maquette */
    }
    .frame-container-default {
        max-width: 1200px;/* Identique min-width: 1200px; pour s'aligner sur la grille maquette */
    }

}
