﻿@charset "utf-8";
/* CSS Document */

/************************************************ICOMOON**********************************************************************/

.popover__title {
    font-size: 24px;
    line-height: 36px;
    text-decoration: none;
    color: rgb(228, 68, 68);
    text-align: center;
    padding: 15px 0;
}

.popover__content {
    position: fixed;
    z-index: 10;
    transform: translate(0, 10px);
    background-color: #f5f5f5;
    padding: 1.5rem;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
}

.popover__content:before {
    position: absolute;
    z-index: -1;
    content: "";
    right: calc(50% - 10px);
    top: -8px;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #bfbfbf transparent;
    transition-duration: 0.3s;
    transition-property: transform;
}

.popover__wrapper:hover .popover__content {
    z-index: 10;
    position: absolute;
    opacity: 1;
    visibility: visible;
    transform: translate(0, -20px);
    transition: all 0.5s cubic-bezier(0.75, -0.02, 0.2, 0.97);
}

.popover__message {
    text-align: left;
}

.icon {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: "icomoon" !important;
    font-size: 25px;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

:host,
:root {
    --fa-style-family-classic: "Font Awesome 6 Free";
    --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free"
}

@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url(../fonts/fa-solid-900.woff2) format("woff2"), url(../fonts/fa-solid-900.ttf) format("truetype")
}

.fa-solid,
.fas {
    font-weight: 900
}

:host,
:root {
    --fa-style-family-classic: "Font Awesome 6 Free";
    --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free"
}

@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url(../fonts/fa-regular-400.woff2) format("woff2"), url(../fonts/fa-regular-400.ttf) format("truetype")
}

.fa-regular,
.far {
    font-weight: 400
}

:host,
:root {
    --fa-style-family-brands: "Font Awesome 6 Brands";
    --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands"
}

@font-face {
    font-family: "Font Awesome 6 Brands";
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url(../fonts/fa-brands-400.woff2) format("woff2"), url(../fonts/fa-brands-400.ttf) format("truetype")
}

.fa-brands,
.fab {
    font-weight: 400
}

.fa-solid,
.fas {
    font-weight: 900
}

.icon-file-powerpoint:before {
    content: "\e90f";
}

.icon-file-pdf:before {
    content: "\e910";
}

.icon-file-excel:before {
    content: "\e911";
}

.icon-file-video:before {
    content: "\e912";
}

.icon-file-word:before {
    content: "\e913";
    vertical-align: middle;
}

.icon-file-zip:before {
    content: "\e914";
}

.icon-plus-square:before {
    content: "\e915";
}

.icon-minus-square:before {
    content: "\e916";
}

.icon-link:before {
    content: "\e9cb";
}

.icon-new-tab:before {
    content: "\ea7e";
}

.icon-search:before {
    content: "\e90d";
    font-size: 20px;
    vertical-align: middle;
}

.icon-return-button:before {
    content: "\e919";
}

.icon-breadcrumb-arrow:before {
    content: "\e900";
    color: #fff;
}

.icon-info:before {
    content: "\e901";
    color: #337ab7;
}

.icon-tick:before {
    content: "\e902";
    color: #2d7db5;
    vertical-align: middle;
}

.icon-quorum:before {
    content: "\e906";
    color: #999;
}

.icon-majorite:before {
    content: "\e90c";
    color: #999;
}

.icon-sieges:before {
    content: "\e905";
    color: #999;
}

.icon-participation:before {
    content: "\e903";
    color: #999;
}

.icon-inscrits:before {
    content: "\e904";
    color: #999;
}

.icon-votes:before {
    content: "\e907";
    color: #999;
}

.icon-twitter-square,
.icon-linkedin-square,
.icon-facebook-square {
    font-family: "Font Awesome 6 Brands" !important;
}

.icon-onePeople:before {
    content: "\e917";
    color: #999;
}

.icon-twoPeople:before {
    content: "\e91a";
    color: #999;
}

.icon-threePeople:before {
    content: "\e918";
    color: #999;
}

.icon-twitter-square:before {
    content: "\e61a";
}

.icon-linkedin-square:before {
    content: "\f08c";
}

.icon-facebook-square:before {
    content: "\f082";
}

.list-socialurl .icon {
    font-size: 2em;
}

.list-inline.list-socialurl>li {
    padding: 0 0 0 5px;
}

/**********************************************************************************************************************
                                   .__
   ____   ____   ____   ___________|__| ____   ______
  / ___\_/ __ \ /    \_/ __ \_  __ \  |/ ___\ /  ___/
 / /_/  >  ___/|   |  \  ___/|  | \/  \  \___ \___ \
 \___  / \___  >___|  /\___  >__|  |__|\___  >____  >
/_____/      \/     \/     \/              \/     \/
***********************************************************************************************************************/
body {
    font-size: 16px;
}

body.animations {
    font-size: 28px;
    cursor: none;
	overflow: hidden;
}

body.animations #top7 .partie_container .progress-bar-bg,
body.animations a {
    cursor: none;
}

h1 {
    margin-top: 0;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 50px;
    margin-bottom: 22px;
}

h2 {
    margin: 0 0 50px 0;
}

@media (max-width: 970px) {
    h1 {
        font-size: 30px;
		line-height: 1.5;
		margin-top: -20px;
    }

    h2 {
        font-size: 25px;
    }
}

h3 {
    color: #333;
    margin-top: 50px;
    margin-bottom: 30px;
}

h3 .small {
    font-weight: bold;
    color: #333;
    margin-top: 0;
}

.candidat h3,
.candidat h5 {
    margin-top: 0;
    margin-bottom: 10px;
    line-height: 25px;
}

h4 {
    margin-top: 50px;
    margin-bottom: 30px;
}

table {
    font-size: 15px;
}

.big {
    font-size: 70px;
}

.text-normal {
    font-weight: normal;
}

.text-gris {
    color: #666666;
}

.text-bleu {
    color: #257fb2;
}

.well {
    border: none;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.label {
    font-size: inherit;
    line-height: 2;
}

.label-info {
    background-color: #257fb2;
}

.text-evidence {
    padding: 10px 20px;
    margin: 10px 0px 10px;
    font-size: 16px;
    border-left: 5px solid #2c7bb8;
}

/***** Définition Liste ******/
dt {
    margin-top: 20px;
    font-size: 18px;
}

dd {
    padding: 10px 0;
    border-bottom: 1px solid #b2b2b2;
}

/*************** PADDING ***************/
.padding-0 {
    padding: 0;
}

/*************** PADDING-LEFT ***************/

.padding-left-0 {
    padding-left: 0 !important;
}

.padding-left-50 {
    padding-left: 50px;
}

/*************** PADDING-RIGHT ***************/

.padding-right-50 {
    padding-right: 50px;
}

/*************** PADDING-TOP ***************/

.padding-top-10 {
    padding-top: 10px;
}

.padding-top-20 {
    padding-top: 20px;
}

.padding-top-30 {
    padding-top: 30px;
}

.padding-top-40 {
    padding-top: 40px;
}

.padding-top-50 {
    padding-top: 50px;
}

.padding-top-100 {
    padding-top: 100px;
}

/*************** PADDING-BOTTOM ***************/

.padding-bottom-10 {
    padding-bottom: 10px;
}

.padding-bottom-20 {
    padding-bottom: 20px;
}

.padding-bottom-30 {
    padding-bottom: 30px;
}

.padding-bottom-40 {
    padding-bottom: 40px;
}

.padding-bottom-50 {
    padding-bottom: 50px;
}

.padding-bottom-100 {
    padding-bottom: 100px;
}

/*************** MARGIN ***************/

.margin-0 {
    margin: 0 !important;
}

/*************** MARGIN-TOP ***************/

.margin-top-0 {
    margin-top: 0;
}

.margin-top-10 {
    margin-top: 10px;
}

.margin-top-20 {
    margin-top: 20px;
}

.margin-top-30 {
    margin-top: 30px;
}

.margin-top-40 {
    margin-top: 40px;
}

.margin-top-50 {
    margin-top: 50px;
}

.margin-top-100 {
    margin-top: 100px;
}

/*************** MARGIN-BOTTOM ***************/

.margin-bottom-10 {
    margin-bottom: 10px;
}

.margin-bottom-20 {
    margin-bottom: 20px;
}

.margin-bottom-30 {
    margin-bottom: 30px;
}

.margin-bottom-40 {
    margin-bottom: 40px;
}

.margin-bottom-50 {
    margin-bottom: 50px;
}

.margin-bottom-100 {
    margin-bottom: 100px !important;
}

/*************** MARGIN-LEFT ***************/

.margin-left-10 {
    margin-left: 10px;
}

.margin-left-20 {
    margin-left: 20px;
}

.margin-left-50 {
    margin-left: 50px;
}

/*************** MARGIN-RIGHT ***************/

.margin-right-10 {
    margin-right: 10px;
}

.margin-right-20 {
    margin-right: 20px;
}

.margin-right-50 {
    margin-right: 50px;
}

/*************** VERTICAL-ALIGN ***************/

.vertical-align-top {
    vertical-align: top !important;
}

.vertical-align-middle {
    vertical-align: middle !important;
}

.vertical-align-bottom {
    vertical-align: bottom !important;
}

/*************** DISPLAY ***************/

.display-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: stretch;
}

.display-none {
    display: none;
}

.display-block {
    display: block;
}

/**************** OVERFLOW **********************/
.scrollable {
    overflow-y: scroll;
}

/**
 * Markup free clearing.
 *
 * @see http://perishablepress.com/press/2009/12/06/new-clearfix-hack
 */
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/* IE6 */
* html .clearfix {
    height: 1%;
}

/* IE7 */
*:first-child+html .clearfix {
    min-height: 1%;
}

/*************** LOADER *****************************************************************************/
.loader.desactivated {
    display: none;
}

.loader {
    margin: auto;
    border: 10px solid #f3f3f3;
    border-radius: 50%;
    border-top: 10px solid #3498db;
    width: 80px;
    height: 80px;
    -webkit-animation: spin 2s linear infinite;
    /* Safari */
    animation: spin 2s linear infinite;
}

/* Safari */
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/**********************************************************************************************************************
.__                       .___
|  |__   ____ _____     __| _/___________
|  |  \_/ __ \\__  \   / __ |/ __ \_  __ \
|   Y  \  ___/ / __ \_/ /_/ \  ___/|  | \/
|___|  /\___  >____  /\____ |\___  >__|
     \/     \/     \/      \/    \/
 */
/**********************************************************************************************************************/

.lead {
    height: 70px;
    margin-top: 23px;
    margin: 0;
    font-size: 18px;
    line-height: 70px;
    font-weight: 400;
}

.lead span {
    display: inline-block;
    vertical-align: middle;
}

@media (max-width: 480px) {
    .lead span {
        float: left;
        font-size: 14px;
    }
}

/**********************************************************/
.navigation {
    text-align: right;
}

.menu-toggle {
    /*hamburger*/
    width: 15px;
    height: 15px;
    display: inline-block;
    margin: 0 20px;
    color: #888888;
}

/***********************************************************/
.navigation2 {
    padding: 0;
    margin-bottom: 20px;
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
}

.navigation2 a {
    text-decoration: none;
    font-weight: bold;
}

.navigation2 a.active {
    color: rgb(51, 51, 51);
}

.navigation2 ul.list-links {
    font-size: 16.5px;
    text-transform: uppercase;
    line-height: 60px;
    margin: 0;
}

.navigation2 ul.list-links li {
    margin-right: 5px;
}

.navigation2 ul.list-socialurl {
    margin: 0;
    font-size: 14px;
}

.navigation2 ul.list-socialurl>lh {
    line-height: 60px;
    margin-right: 10px;
}

.navigation2 ul.list-socialurl>li {
    padding: 0;
    vertical-align: middle;
}

.navigation2 ul.list-socialurl>li i {
    font-size: 32px;
    margin-right: 1px;
}

@media (max-width: 480px) {
    .navigation2 ul.list-links {
        line-height: 45px;
        margin: 0;
    }

    .navigation2 ul.list-links li {
        margin-right: 0;
        border-bottom: 1px solid #cccccc;
        display: block;
        padding: 0;
    }
}

/***********************************************************/

.switch {
    font-size: 20px;
    background: #e1e1e1;
    color: #337ab7;
    padding-top: 45px;
    margin-bottom: 25px;
}

.switch a {
    color: #337ab7;
    font-weight: bold;
    text-decoration: none;
    margin-right: 40px;
    padding-bottom: 10px;
    display: inline-block;
    border-bottom: 10px solid #e1e1e1;
}

.switch a:last-child {
    margin-right: 0;
}

.switch a:hover {
    color: #285f8f;
}

.switch a.active {
    border-bottom: 10px solid #b2b2b2;
}

@media (max-width: 480px) {
    .switch {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .switch a {
        margin-right: 20px;
    }
}

#geviweb-status {
    margin-bottom: 5px;
}

.status-target {
    font-size: 16px;
    font-weight: bold;
}

/*************************** PAGE D'ACCUEIL : SPLASH SCREEN ********************************/

.splash-screen {
    color: #ffffff;
    background-color: #257fb2;
    padding: 150px 0;
    margin: 0;
}

.splash-screen h1 {
    padding-bottom: 80px;
}

.splash-screen .btn-default {
    font-size: 35px;
    font-weight: normal;
    border: 1px solid #ffffff;
    padding: 30px;
}

.splash-screen .btn-default:hover {
    color: #257fb2;
    text-decoration: none;
}

@media (max-width: 480px) {
    .splash-screen {
        padding: 50px 0;
    }

    .splash-screen h1 {
        padding-bottom: 20px;
    }

    .splash-screen .btn-default {
        font-size: 20px;
        padding: 10px;
    }
}

/******************** ZONE DE RECHERCHE ***************************************/

.zone-recherche {
    padding-bottom: 20px;
}

.zone-recherche .filtre-elu {
    font-size: 16px;
    line-height: 40px;
    white-space: nowrap;
}

.form-control {
    font-size: 16px;
    line-height: 40px;
    color: #555;
    height: 40px;
    padding: 0 22px;
    border: 1px solid #cccccc;
    background-color: #fff;
    border-radius: 0;
    margin-bottom: 10px;
}

.form-control:-moz-placeholder {
    color: #999;
}

.btn-default {
    font-weight: bold;
    color: #ffffff;
    line-height: 40px;
    background-color: #257fb2;
    border: none;
    padding: 0 22px;
    margin-bottom: 10px;
    display: inline-block;
}

.btn-default .icon-search {
    margin-left: 10px;
}

/********************************************************************************************************************

*/
ul.gevi-tab {
    border-bottom: 5px solid #257fb2;
    padding-bottom: 8px;
    margin-left: 0;
}

ul.gevi-tab li {
    padding: 0;
    display: inline-block;
    margin-right: 10px;
}

ul.gevi-tab li a {
    display: inline-block;
    padding: 10px 15px;
    background: #e7e7e7;
    color: #257fb2;
    text-decoration: none;
    font-weight: bold;
    font-size: 20px;
}

ul.gevi-tab li a.active {
    background: #257fb2;
    color: #ffffff;
}

.tab-nominatifs,
.tab-suffrages {
    min-height: 600px;
}

.nav-commune {
    display: flex;
}

.nav-commune #libelle-liste,
.nav-commune #libelle-plan {
    background-color: #ededed;
    border: 1px solid #ededed;
    color: #0c6ba8;
    font-weight: 400;
    padding: 6px 22px;
    cursor: pointer;
    user-select: none;
}

.nav-commune #libelle-liste:hover,
.nav-commune #libelle-plan:hover {
    background-color: white;
}

.nav-commune label.active {
    background-color: white !important;
    color: black !important;
}

/* The switch - the box around the slider */
.switch-checkbox {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 30px;
    margin: 0 15px;
    vertical-align: middle;
}

/* Hide default HTML checkbox */
.switch-checkbox input {
    display: none;
}

/* The slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 24px;
    width: 24px;
    left: 4px;
    bottom: 3px;
    background-color: white;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

input:checked+.slider {
    background-color: #257fb2;
}

input:focus+.slider {
    box-shadow: 0 0 1px #2196f3;
}

input:checked+.slider:before {
    -webkit-transform: translateX(28px);
    -ms-transform: translateX(28px);
    transform: translateX(28px);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}

/**********************************************************************************************************************

  _____________   ____________               _____      _____ __________
 /   _____/\   \ /   /  _____/              /     \    /  _  \\______   \
 \_____  \  \   Y   /   \  ___    ______   /  \ /  \  /  /_\  \|     ___/
 /        \  \     /\    \_\  \  /_____/  /    Y    \/    |    \    |
/_______  /   \___/  \______  /           \____|__  /\____|__  /____|
        \/                  \/                    \/         \/
/**************** SVG AND MAPS ***********************/

#gevi-map {}

#gevi-map svg {
    min-height: 600px;
    /** set height for IE. GC communes map */
}

#map-select {
    margin-top: 0;
}

#gevi-map-highlight

/* legend ou le nom de la commune s'affiche */
    {
    z-index: 1;
    margin: 0;
    padding: 5px 15px;
    text-align: left;
    background: white;
    border: 1px solid #efefef;
    font-size: 1.1em;
}

#gevi-map-highlight ul,
#gevi-map-highlight ul li {
    list-style: none;
    margin: 0;
    padding: 3px 0 0 5px;
}

#gevi-map-highlight ul li a {
    font-weight: normal;
}

#gevi-map-highlight a {
    text-decoration: none;
}

#gevi-map svg .communes

/* commune path element */
    {
    stroke-linejoin: round;
    stroke: #333333;
    stroke-linecap: round;
    stroke-miterlimit: 10;
    stroke-width: 0.35;
    fill: #ececec;
}

#gevi-map svg .communes.nontraite,
#gevi-map-legend .legend.nontraite::before {
    fill: #faf7f4;
    background: #faf7f4;
}

#gevi-map svg .communes.avancement_6 {
    fill: #95cbe9;
    fill: url(#resAnticipes);
    background: #95cbe9;
}

#gevi-map-legend .legend.anticipes::before {
    /*fill: #dcd6d5;
        background: #dcd6d5;*/
    fill: #95cbe9;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 4 4'%3E%3Cpolygon points='0,0 2,0 0,2' fill='%23cce8f7'/%3E%3Cpolygon points='0,4 4,0 4,2 2,4' fill='%23cce8f7'/%3E%3Cpolygon points='0,2 0,4 4,0 2,0' fill='%2394cce9'/%3E%3Cpolygon points='2,4 4,4 4,2' fill='%2394cce9'/%3E%3C/svg%3E");
    background-repeat: repeat;
}

#gevi-map svg .communes.avancement_7,
#gevi-map-legend .legend.provisoires::before {
    /*fill: #b6b2b2;
        background: #b6b2b2;*/
    fill: #41a1d8;
    background: #41a1d8;
}

#gevi-map svg .communes.avancement_8,
#gevi-map-legend .legend.definitifs::before {
    /*fill: #656569;
        background: #656569;*/
    fill: #164c6a;
    background: #164c6a;
    stroke: #ffffff;
}

#gevi-map svg .communes.tour_1,
#gevi-map-legend .legend.tour_1::before {
    fill: #fbed0d;
    background: #fbed0d;
}

#gevi-map svg .communes.percent75,
#gevi-map-legend .legend.percent75::before {
    fill: #d7f0fe;
    background: #d7f0fe;
}

#gevi-map svg .communes.percent7590,
#gevi-map-legend .legend.percent7590::before {
    fill: #9fd7f7;
    background: #9fd7f7;
}

#gevi-map svg .communes.percent90110,
#gevi-map-legend .legend.percent90110::before {
    fill: #58baf2;
    background: #58baf2;
}

#gevi-map svg .communes.percent110125,
#gevi-map-legend .legend.percent110125::before {
    fill: #257fb2;
    background: #257fb2;
}

#gevi-map svg .communes.percent125,
#gevi-map-legend .legend.percent125::before {
    fill: #0d4c6f;
    background: #0d4c6f;
    stroke: #ffffff;
}

#gevi-map.gevi-navigation-map svg .communes {
    cursor: pointer;
}

#gevi-map-legend {
    padding-top: 150px;
}

#gevi-map-legend .legend {
    margin-bottom: 15px;
}

#gevi-map-legend .legend::before {
    content: " ";
    display: inline-block;
    width: 40px;
    height: 30px;
    margin-right: 10px;
    vertical-align: middle;
    border: 1px solid #333333;
}

@media (max-width: 970px) {
    #gevi-map-legend {
        padding-top: 30px;
    }
}

@media only screen and (max-width: 640px) {
    #tab-liste-commune {
        display: block !important;
    }
}

ul.liste_communeslocaux {
    -moz-column-count: 3;
    -webkit-column-count: 3;
    padding: 0;
    column-count: 3;
    column-gap: 10px;
}

ul.liste_communeslocaux .info_result_communelocal {
    display: none;
}

ul .liste_communeslocaux.liste_2col {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
}

ul.liste_communeslocaux.liste_1col {
    -moz-column-count: 1;
    -webkit-column-count: 1;
    column-count: 1;
}

ul.liste_communeslocaux li,
.info_canton {
    list-style: none;
    font-size: 18px;
    margin: 0 10px 0 0;
    padding: 3px 0;
    border-bottom: 1px solid #b2b2b2;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

ul.liste_communeslocaux li .info_communelocal {
    font-weight: bold;
}

ul.liste_communeslocaux.liste_gd_espacement li {
    padding: 10px 0;
}

ul.liste_communeslocaux li a {
    font-weight: bold;
    text-decoration: none;
}

ul.liste_communeslocaux li a.selected,
.info_canton.selected {
    background: #addef7;
}

ul.liste_communeslocaux li ul,
ul.liste_communeslocaux li ul li {
    list-style: none;
    font-weight: normal;
    line-height: 20px;
    margin: 0;
    padding: 0;
    border: none;
}

ul.liste_communeslocaux li ul li a.info_communelocal {
    font-weight: normal;
    text-decoration: none;
}

/* screen-xs < 640 */
@media only screen and (max-width: 640px) {

    ul.liste_communeslocaux,
    ul.liste_communeslocaux.liste_2col {
        -moz-column-count: 1!important;
        -webkit-column-count: 1!important;
        column-count: 1!important;
    }
}

/***********************************************************************************************************************
                                                  .__
  _________  ______      ________________  ______ |  |__   ______
 /  ___/\  \/ / ___\    / ___\_  __ \__  \ \____ \|  |  \ /  ___/
 \___ \  \   / /_/  >  / /_/  >  | \// __ \|  |_> >   Y  \\___ \
/____  >  \_/\___  /   \___  /|__|  (____  /   __/|___|  /____  >
     \/     /_____/   /_____/            \/|__|        \/     \/
 SVG GRAPHS*/

#canvas_container_hemicycle {
    #canvas_container,
    margin-bottom: 70px;
}

#canvas_container .hemisector,
#canvas_container_hemicycle .hemisector {
    cursor: pointer;
    width: 100%;
    stroke: #ffffff;
    stroke-width: 3px;
}

#canvas_container svg,
#canvas_container_hemicycle svg {
    height: 100%;
    width: 100%;
}

/* Small Devices < 480 */
@media only screen and (max-width: 480px) {

    #canvas_container,
    #canvas_container_hemicycle {
        height: 300px;
        width: 100%;
    }

    #canvas_container text,
    #canvas_container_hemicycle text,
    #canvas_container rect,
    #canvas_container_hemicycle rect {
        display: none;
    }
}

/* screen-xs < 640 */
@media only screen and (min-width: 480px) and (max-width: 640px) {

    #canvas_container,
    #canvas_container_hemicycle {
        height: 340px;
        margin: auto;
    }

    #canvas_container text,
    #canvas_container_hemicycle text,
    #canvas_container rect,
    #canvas_container_hemicycle rect {
        display: none;
    }
}

/* screen-sm 640 - 970 */
@media only screen and (min-width: 640px) and (max-width: 970px) {

    #canvas_container,
    #canvas_container_hemicycle {
        width: 600px;
        height: 340px;
        margin: auto;
    }

    #top7 .top7-candidat .big-number {
        font-size: 20px !important;
    }
}

/* screen-md 970 - 1170 */
@media only screen and (min-width: 970px) and (max-width: 1168px) {

    #canvas_container,
    #canvas_container_hemicycle {
        height: 400px;
    }
}

/* screen-lg > 1170 */
@media only screen and (min-width: 1168px) {

    #canvas_container,
    #canvas_container_hemicycle {
        height: 450px;
    }
}

/*****************Legend **************************************************************************/
#canvas_legend {}

#canvas_legend .color {
    width: 12px;
    height: 12px;
    display: inline-block;
}

.canvas_legend .nbsieges {}

.columnColor {
    width: 42px;
    border-bottom: 2px solid white;
}

.columnLabel {
    width: 70%;
}

.columnPercent {
    text-align: right;
    font-size: xx-large;
    font-weight: bold;
}

.lineSpace {
    height: 25px;
}

.pastilleEcartSieges {
    position: absolute;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    text-align: center;
    line-height: 43px;
    bottom: 5px;
    font-weight: 700;
}

.nbSieges {
    text-align: right;
}

/*************** TOP 7 ***************************************************************************************************/
#top7 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 70px;
    margin-top: 50px;
    justify-content: center;
    margin-top: 20px;
}

#top7 .top7-separator {
    border-right: 3px solid #257fb2;
}

#top7 .top7-fonction {
    width: 100%;
    text-align: center;
    font-size: 24px;
    padding: 0px 0 10px 0;
}

#top7 .top7-candidat {
    margin: 0 12px;
    text-align: center;
    -width: calc(14.28% - 30px);
    -width: -moz-calc(14.28% - 30px);
    -width: -webkit-calc(14.28% - 30px);
}

#top7 .top7-candidat {}



/*#top7 .top7-candidat .position {
    font-weight: bold;
    color: #ffffff;
    line-height: 28px;
    background-color: #333333;
    display: inline-block;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-bottom: 10px;
}*/

#top7 .top7-candidat .suffrage {
    line-height: 1.1;
    margin-bottom: 20px;
}

#top7 .top7-candidat .big-number {
    font-size: 20px;
}

#top7 .top7-candidat .libelle-suffrages {
    text-transform: uppercase;
}

/*************** BARRE HORIZONTALE ***************************************************************************************************/

.graphicbar {
    background: #ededed;
    padding: 20px 30px 20px 30px;
    margin-top: 20px;
    margin-bottom: 50px;
    text-decoration: none;
}

@media (max-width: 480px) {
    .graphicbar {
        margin-bottom: 30px;
    }
}

a.graphicbar {
    color: inherit;
    display: block;
    text-decoration: none;
}

.graphicbar .response_oui,
.graphicbar .response_non {
    text-transform: uppercase;
}

.graphicbar .response_oui {
    color: #059966;
}

.graphicbar .response_non {
    color: #cc3300;
}

.graphicbar .bar_container {
    margin: 10px 0;
    padding: 0;
    width: 100%;
    background: none;
    position: relative;
    clear: both;
    height: 130px;
}

.graphicbar .bar_container .bar_sieges {
    height: 130px;
    line-height: 40px;
    width: 1px;
    color: #fff;
    padding: 20px 10px 20px 15px;
    font-size: 1.1em;
    font-weight: bold;
    float: left;
    border-right: solid 3px #ededed;
}

.graphicbar .bar_container .bar_sieges:last-child {
    border-right: 0;
}

.graphicbar .bar_container .bar_sieges div.desc {
    line-height: 25px;
    font-size: 0.9em;
    font-weight: normal;
}

.graphicbar .bar_container a.bar_sieges:hover {
    opacity: 0.9;
    text-decoration: none !important;
}

.graphicbar .bar_container .bar_oui {
    left: 0;
    text-align: left;
    background: #059966;
    transition: width 1s ease;
}

.graphicbar .bar_container .bar_non {
    right: 0;
    text-align: right;
    background: #cc3300;
    transition: width 1s ease;
}

.graphicbar .bar_container .bar_non .numbers {
    position: absolute;
    right: 20px;
    z-index: 1;
}

.graphicbar .bar_container .bar_oui .numbers {
    position: absolute;
    left: 20px;
    z-index: 1;
}

/*************** TOP 3 CC ***************************************************************************************************/
#top3 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 60px;
}

#top3 .top3-candidat {
    margin: 0 12px;
    text-align: center;
}

#top3 .top3-candidat {}

#top3 .top3-candidat .content {
    padding: 20px;
    height: 100%;
}

#top3 .top3-candidat .flipper {
    transform: rotateY(180deg);
    backface-visibility: hidden;
}

#top3 .top3-candidat .flipper.flip {
    transform: rotateY(0);
    animation-duration: 500ms;
    animation-timing-function: ease-out;
    animation-name: flipAnimation;
}

#top3 .top3-candidat.elu .content {
    background-color: #dfecf4;
}

@keyframes flipAnimation {
    from {
        transform: rotateY(180deg);
    }

    to {
        transform: rotateY(0);
    }
}

#top3 .top3-candidat .position {
    font-weight: bold;
    color: #ffffff;
    line-height: 28px;
    background-color: #333333;
    display: inline-block;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-bottom: 10px;
}

#top3 .top3-candidat .suffrage {
    line-height: 1.1;
    margin-bottom: 20px;
}

#top3 .top3-candidat .big-number {
    font-size: 20px;
}

#top3 .top3-candidat .libelle-suffrages {
    text-transform: uppercase;
}

@media (max-width: 970px) {
    #top3 .top3-candidat {
        width: calc(25% - 30px);
        width: -moz-calc(25% - 30px);
        width: -webkit-calc(25% - 30px);
    }
}

/*************** CARTOUCHE ********************************************************************************************/
#gevi-cartouche {
    font-size: 18px;
    background-color: #f4f4f4;
    padding: 30px 15px;
    margin-bottom: 50px;
}

#gevi-cartouche .row1 {}

#gevi-cartouche .row1 .icon {
    font-size: 60px;
}

#gevi-cartouche .icon.icon-info {
    font-size: 21px;
}

#gevi-cartouche .row2 {
    border-top: 1px solid #d3d3d3;
    padding-top: 30px;
    margin-top: 30px;
}

#gevi-cartouche.cartouche-commune .col-sm-2 {
    width: 14.2857%;
}

#gevi-cartouche.cartouche-commune-gc .col-sm-2 {
    width: 12.5%;
}

#gevi-cartouche.cartouche-local-cm .col-sm-2 {
    width: 12.5% !important;
}

#gevi-cartouche.cartouche-local-ca .col-sm-2 {
    width: 12.5% !important;
}

#gevi-cartouche .data-row.data-big {
    font-size: 24px;
    text-align: center;
    border: none;
    font-weight: 400;
    background-position: center 25px;
    background-repeat: no-repeat;
}

#gevi-cartouche .data-row.data-big .big-number {
    font-size: 35px;
    line-height: 1.2;
}

#gevi-cartouche .data-geviweb {
    font-weight: bold;
    font-size: 24px;
}

@media (max-width: 480px) {
    #gevi-cartouche .data-row.data-big {
        font-size: 13px;
        line-height: 1.2;
    }

    #gevi-cartouche .data-row.data-big .big-number {
        font-size: 30px;
    }

    #gevi-cartouche .data-row {
        padding-bottom: 20px;
    }

    #gevi-cartouche .row1 .icon {
        font-size: 40px;
    }

    #gevi-cartouche .icon.icon-info {
        font-size: 21px;
    }
}

/*************** TABLE suffrages ***************************************************************************************/
.gevi-table-suffrages {
    width: 100%;
}

.gevi-table-suffrages th {
    vertical-align: top;
}

.gevi-table-suffrages td {
    padding: 10px;
    vertical-align: top;
}

.gevi-table-suffrages .totalBulletin {
    display: block;
    text-align: center;
    font-weight: bold;
}

.gevi-table-suffrages .bulletinCompacts {
    display: block;
    font-size: 0.9em;
    float: left;
    text-align: right;
    width: 45%;
}

.gevi-table-suffrages .bulletinModifies {
    display: block;
    font-size: 0.9em;
    float: right;
    text-align: left;
    width: 45%;
}

.gevi-table-suffrages .bulletinPanaches {
    font-weight: bold;
}

.gevi-table-suffrages .suffragePourcent {
    font-weight: bold;
}

.gevi-table-suffrages .ecartPourcent {
    font-weight: bold;
}

.gevi-table-suffrages .nbSieges {
    font-weight: bold;
}

/*************** résultats NOMINATIFS ***************************************************************************************/

.cartouche-candidat {
    margin-top: 10px;
}

.cartouche-candidat .bloc-candidat {
    margin-bottom: 6px;
    padding-top: 5px;
    background-color: #f4f4f4;
    min-height: 150px;
    height: 100%;
    width: 100%;
}

.noPhoto {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: row-reverse;
    min-width: 92vw;
    padding: 0px 10px 5px 10px;
    border-bottom: 5px solid #b2b2b2;
}

.cartouche-candidat .bloc-candidat .libelle-elu {
    display: block;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 10px;
}

.cartouche-candidat .bloc-candidat .info-candidat {
    padding-left: 18px;
    margin-top: 6px;
}

.cartouche-candidat.ce .bloc-candidat .info-candidat {
    margin-top: 0;
}

.cartouche-candidat .bloc-candidat .big-number {
    font-size: 30px;
}

.cartouche-candidat .bloc-candidat .libelle-suffrages {
    text-transform: uppercase;
}

.cartouche-candidat .histo-candidat {
    border: 1px solid #b2b2b2;
}

.cartouche-candidat .histo-candidat .histo-longueur {
    height: 11px;
    background-color: #b2b2b2;
}

.cartouche-candidat.elu .bloc-candidat {
    background-color: #dfecf4;
}

/*.row-candidat.elu {
    background-color: #dfecf4 !important;
}*/

.liste_candidat_GC .cartouche-candidat .bloc-candidat {
    border-bottom: 5px solid #b2b2b2;
    width: 100%;
}

.liste_candidat_GC .cartouche-candidat.elu .bloc-candidat {
    border-bottom: 5px solid #257fb2;
}

.liste_candidat_GC .cartouche-candidat.egalite .bloc-candidat {
    border: none;
    background: #f4f4f4 url(../strip_border.png) bottom left repeat-x;
}

.histo-longueur.histo-egalite {
    background: #257fb2 url(../strip_border.png) bottom left repeat-x;
    height: 5px !important;
}

.egalite {
    background: url(../strip_border.png) left bottom repeat-x;
}

.cartouche-candidat.elu .histo-candidat {
    border-color: #257fb2;
}

.cartouche-candidat.elu .histo-candidat .histo-longueur {
    background-color: #257fb2;
}

@media (max-width: 480px) {
    .cartouche-candidat .bloc-candidat .info-candidat {
        margin-top: 0;
    }
	
	.hist .cartouche-candidat.ce .bloc-candidat .info-candidat{
		padding-left: 10px;
		padding-right:0;
	}
	
	.hist .cartouche-candidat.ce .bloc-candidat .info-candidat .info-suffrage strong{
		float:left;
	}
	
	.hist .cartouche-candidat .bloc-candidat .libelle-suffrages{
		line-height: 53px!important;
		float:left;
		margin-left: 5px;
	}

    .cartouche-candidat .bloc-candidat .big-number {
        font-size: 20px;
    }
}

/*************** GENERAL ***************************************************************************************/
.center-content {
    display: flex;
    justify-content: center;
}

.center-local-cartouche {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.center-content-vertical-horizontal {
    display: flex;
    justify-content: center;
    align-items: center;
}

.center-top {
    display: flex !important;
    flex-direction: column;
    align-items: center;
}

.blue-btn {
    padding: 10px;
    font-size: 20px;
    background: #257fb2;
    color: #ffffff;
    font-weight: bold;
}

.italic {
    font-style: italic;
}

.commune-title-container-web {
    font-weight: bold;
    display: flex;
    flex-direction: column;
}

.commune-title-container-mobile {
    font-weight: bold;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    margin-left: 15px;
}

.armoirie-container {
    display: flex;
    flex: 1;
    justify-content: flex-end;
    padding-right: 15px;
}

.image-responsive {
    display: block;
    max-width: 100%;
}

@media (max-width: 639px) {
    .wrap-xs {
        display: flex !important;
        flex-wrap: wrap !important;
    }
}

table.new_table tbody tr:hover {
    cursor: pointer;
}

table.new_table {
    box-shadow: 0px 0px 20px 0px #88898b;
    border-radius: 10px;
}

table.new_table thead th:last-child {
    border-top-right-radius: 10px;
}

table.new_table thead th:first-child {
    border-top-left-radius: 10px;
}

table.new_table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 10px;
}

table.new_table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 10px;
}

table.new_table tr td:first-child {
    font-weight: bold;
    text-align: center;
}

table.new_table tbody tr:hover {
    box-shadow: 0px 9px 15px 0px grey;
    cursor: pointer;
    mix-blend-mode: darken;
}

table.new_table tbody tr:last-child:hover {
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

table.new_table tbody td {
    transition: all 0.2s cubic-bezier(0.29, 0.6, 1, 0.98);
}

table.new_table tbody tr {
    transition: all 0.2s ease-in-out;
}

table.new_table tr.colored_row {
    background-color: #eaf5fb;
}

@media (max-width: 639px) {
    .switch_mobile_display {
        flex-direction: column;
    }
}

@media (min-width: 640px) {
    .switch_mobile_display {
        flex-direction: row;
    }
}

.container-switch-com-avancement {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-left: 15px;
}

.container-lst-switch {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.label-smaller {
    font-size: 18px !important;
}

.back-avancement-container {
    display: flex;
    align-items: center;
    justify-content: end;
    width: 100%;
    margin-top: 24px;
}

.container-ecusson {
    display: flex;
    margin: 30px 0px 0px 15px;
}

@media (min-width: 640px) {
    .candidat-switch-mobile-display {
        display: flex;
        align-items: center;
    }
}

@media (max-width: 639px) {
    .photo-ecusson-switch-mobile-display {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
		
	.row:has(.back-avancement-container){
		display: flex;
		flex-direction: column-reverse;
	}
	
	.back-avancement-container {
		display: flex;
		align-items: center;
		justify-content: start;
		width: 100%;
		margin-top: 0;
	}
}

.container-infos-ecusson-liste {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media (max-width: 639px) {
    .img-height-responsive {
        height: 70px;
    }
}

@media (min-width: 640px) {
    .img-height-responsive {
        height: 100px;
    }
}

.flip-effect {
    transform: rotateY(0);
    animation-duration: 500ms;
    animation-timing-function: ease-out;
    animation-name: flipAnimation;
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-200px);
        transform: translateX(-200px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-200px);
        -ms-transform: translateX(-200px);
        transform: translateX(-200px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft;
}

@-webkit-keyframes fadeOpacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeOpacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.fadeOpacity {
    -webkit-animation-name: fadeOpacity;
    animation-name: fadeOpacity;
}

.logo-sits {
    justify-content: center;
    flex-direction: column;
    margin-top: 25px;
}

.flex-column {
    display: flex;
    flex-direction: column;
}

/*************** FOOTER ***************************************************************************************/
.footer {
    margin-top: 80px;
    background: #333;
    color: #fff;
}

.footer .nav {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
    -moz-column-gap: 25px;
    -webkit-column-gap: 25px;
    column-gap: 25px;
    padding: 0;
}

.footer .nav>li {
    display: inline-block;
    width: 100%;
    word-wrap: break-word;
    -moz-page-break-after: always;
    -webkit-column-break-after: always;
    break-after: always;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -o-hyphens: auto;
    hyphens: auto;
    color: #fff;
}

.footer .nav>li a {
    padding: 10px 0;
    color: #fff;
    border-bottom: 1px solid #999;
    background: none;
    -webkit-transition: all;
    -o-transition: all;
    transition: all;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
}

.footer .nav>li a:hover,
.footer .nav>li a:focus,
.footer .nav>li a.active {
    color: #b2b2b2;
}

.footer .nav>li a:before {
    content: "\e900";
    margin-right: 10px;
    font-family: "icomoon";
    font-size: 10px;
}

.footer .footer_haut {
    padding-top: 44px;
    padding-bottom: 44px;
    background: #ededed;
    color: #333;
}

.footer .footer_bas {
    padding-top: 44px;
    padding-bottom: 44px;
    background: #333;
    clear: both;
}

@media (max-width: 970px) {
    .footer .footer_bas .region-footer-bas {
        padding-bottom: 22px;
    }

    .footer .nav {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }
}

.footer-logo {
    display: block;
    width: 128px;
    height: 100px;
    text-indent: -9999em;
    background: url("../footer-logo.svg") no-repeat center;
    -moz-background-size: contain;
    -o-background-size: contain;
    -webkit-background-size: contain;
    background-size: contain;
}

@media (max-width: 970px) {
    .footer-logo {
        margin: auto;
    }
}

/************************************* SIDEDRAWER ******************************************/
#gevi-sidedrawer {
    position: fixed;
    right: -450px;
    top: 0;
    background-color: #575757;
    height: 100%;
    width: 450px;
}

#gevi-sidedrawer.active {
    right: -450px;
    animation-duration: 200ms;
    animation-name: slideout;
}

#gevi-sidedrawer.active.opened {
    right: 0;
    animation-duration: 300ms;
    animation-name: slidein;
}

@keyframes slidein {
    from {
        right: -450px;
    }

    to {
        right: 0;
    }
}

@keyframes slideout {
    from {
        right: 0;
    }

    to {
        right: -450px;
    }
}

#gevi-sidedrawer #gevi-sidedrawer-drawer {
    position: absolute;
    top: 50%;
    width: 350px;
    text-align: center;
    cursor: pointer;
    visibility: hidden;
}

#gevi-sidedrawer #gevi-sidedrawer-drawer span {
    color: #ffffff;
    display: block;
    padding: 10px;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: translate(-196px, 0) rotate(-90deg);
    background-color: #6c6c6c;
    visibility: visible;
}

#gevi-sidedrawer #gevi-sidedrawer-content {
    font-size: 14px;
    color: #ffffff;
    background-color: #575757;
}

#gevi-sidedrawer #gevi-sidedrawer-content a {
    color: #ffffff;
}

#gevi-sidedrawer #gevi-sidedrawer-content h3 {
    font-size: 20px;
    font-weight: normal;
    color: #ffffff;
    text-transform: uppercase;
    margin: 0;
    padding: 27px 45px;
    background-color: #454545;
    line-height: 35px;
}

#gevi-sidedrawer #gevi-sidedrawer-content .taux-participation {
    font-weight: bold;
    padding: 5px 15px;
    margin-left: 15px;
    background-color: #c90000;
    border-radius: 20px;
}

#gevi-sidedrawer #gevi-sidedrawer-content .message {
    padding: 20px 45px;
}

#gevi-sidedrawer #gevi-sidedrawer-content .content {
    padding: 45px;
}

#gevi-sidedrawer #gevi-sidedrawer-content ul {
    padding: 0;
    font-weight: bold;
}

#gevi-sidedrawer #gevi-sidedrawer-content ul li {
    padding: 12px 0;
    border-bottom: 1px solid #818181;
    list-style: none;
}

#gevi-sidedrawer #gevi-sidedrawer-content .twitter-cha {
    bottom: 0;
    text-transform: uppercase;
    padding: 45px;
    margin-top: auto;
}

#gevi-sidedrawer #gevi-sidedrawer-content .twitter-cha .icon-twitter {
    vertical-align: middle;
}

@media (max-width: 480px) {
    #gevi-sidedrawer {
        position: relative;
        top: auto;
        right: 0;
        bottom: -2px;
        height: 45px;
        width: 100%;
    }

    #gevi-sidedrawer.active {
        top: auto;
        right: 0;
        bottom: -2px;
        height: 45px;
    }

    #gevi-sidedrawer.active.opened {
        top: 0;
        right: 0;
        height: 100%;
    }

    #gevi-sidedrawer #gevi-sidedrawer-drawer {
        position: fixed;
        top: auto;
        bottom: 0;
        width: 100%;
    }

    #gevi-sidedrawer.active.opened #gevi-sidedrawer-drawer {
        position: relative;
    }

    #gevi-sidedrawer #gevi-sidedrawer-drawer span {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: translate(0, 0) rotate(0deg);
    }

    #gevi-sidedrawer #gevi-sidedrawer-content {
        display: none;
        position: relative;
    }

    #gevi-sidedrawer.active.opened #gevi-sidedrawer-content {
        display: block;
        position: relative;
    }

    @keyframes slidein {
        from {
            right: 0;
            height: 45px;
        }

        to {
            right: 0;
            height: 100%;
        }
    }

    @keyframes slideout {
        from {
            right: 0;
            height: 100%;
        }

        to {
            right: 0;
            height: 45px;
        }
    }
}

/************************************ ANIMATIONS ************************************************/
.animations .status {
    text-align: center;
    padding: 10px;
    font-size: 20px;
    background: #257fb2;
    color: #ffffff;
    width: 100%;
    font-weight: bold;
}

.animation .legend {
    font-size: 25px;
}

.animations h1 {
    text-align: center;
    margin-bottom: 80px;
}

.animations h2 {
    margin-top: 30px;
    font-size: 27px;
}


.animations #canvas_container_hemicycle {
    width: 1000px;
    height: 600px;
    margin-bottom: 25px;
}

.animations #canvas_legend {
    /*padding: 0 40px 0 10px;*/
    display: flex;
    justify-content: center;
}

.animations #canvas_legend .color {
    width: 30px;
    height: 30px;
    vertical-align: middle;
    margin-top: -4px;
    margin-right: 5px;
    position: absolute;
    bottom: -3px;
}

.animations #canvas_legend table td {
    padding: 0;
    /*text-transform: uppercase;*/
    line-height: 45px;
}


.animations #canvas_legend tr {
    opacity: 0;
}

.animations #canvas_legend tr.flip {
    opacity: 1;
    transition: opacity 1s ease-in-out;
    border-bottom: 2px solid #262626;
    position: relative;
}

/*.animations #canvas_legend tr.flip:first-child {
                border-top: 1px solid #656569;
}*/

.animations .logo {
    position: fixed;
    bottom: 20px;
    right: 40px;
}

/*.container h2 {
	font-size: 25px;
}*/

.animations .container.barre {
    width: 100%;
}

.animations .bar_sieges {
    opacity: 0;
}

.animations .bar_sieges.show {
    opacity: 1;
    transition: opacity 1s ease-in-out;
}

.animations .barre {
    margin-bottom: 40px;
}

/* GE CH */
@font-face {
    font-family: icomoon;
    src: url(../fonts/icomoon.eot);
    src: url(../fonts/icomoon.eot?#iefix) format("embedded-opentype"), url(../fonts/icomoon.ttf) format("truetype"), url(../fonts/icomoon.woff) format("woff"), url(../fonts/icomoon.svg#icomoon) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

.icon-arrow-left:before {
    content: "\e900";
}

.icon-arrow-right:before {
    content: "\e901";
}

.icon-breadcrumb-arrow:before {
    content: "\e902";
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    src: url(../fonts/roboto-v19-latin-300.eot);
    src: local("Roboto Light"), local("Roboto-Light"), url(../fonts/roboto-v19-latin-300.eot?#iefix) format("embedded-opentype"), url(../fonts/roboto-v19-latin-300.woff2) format("woff2"), url(../fonts/roboto-v19-latin-300.woff) format("woff"), url(../fonts/roboto-v19-latin-300.ttf) format("truetype"), url(../fonts/roboto-v19-latin-300.svg#Roboto) format("svg");
    font-display: swap;
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/roboto-v19-latin-regular.eot);
    src: local("Roboto"), local("Roboto-Regular"), url(../fonts/roboto-v19-latin-regular.eot?#iefix) format("embedded-opentype"), url(../fonts/roboto-v19-latin-regular.woff2) format("woff2"), url(../fonts/roboto-v19-latin-regular.woff) format("woff"), url(../fonts/roboto-v19-latin-regular.ttf) format("truetype"), url(../fonts/roboto-v19-latin-regular.svg#Roboto) format("svg");
    font-display: swap;
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/roboto-v19-latin-700.eot);
    src: local("Roboto Bold"), local("Roboto-Bold"), url(../fonts/roboto-v19-latin-700.eot?#iefix) format("embedded-opentype"), url(../fonts/roboto-v19-latin-700.woff2) format("woff2"), url(../fonts/roboto-v19-latin-700.woff) format("woff"), url(../fonts/roboto-v19-latin-700.ttf) format("truetype"), url(../fonts/roboto-v19-latin-700.svg#Roboto) format("svg");
    font-display: swap;
}

@font-face {
    font-family: "Roboto Slab";
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/roboto-slab-v8-latin-regular.eot);
    src: local("Roboto Slab Regular"), local("RobotoSlab-Regular"), url(../fonts/roboto-slab-v8-latin-regular.eot?#iefix) format("embedded-opentype"), url(../fonts/roboto-slab-v8-latin-regular.woff2) format("woff2"), url(../fonts/roboto-slab-v8-latin-regular.woff) format("woff"), url(../fonts/roboto-slab-v8-latin-regular.ttf) format("truetype"), url(../fonts/roboto-slab-v8-latin-regular.svg#RobotoSlab) format("svg");
    font-display: swap;
}

@font-face {
    font-family: "Roboto Slab";
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/roboto-slab-v8-latin-700.eot);
    src: local("Roboto Slab Bold"), local("RobotoSlab-Bold"), url(../fonts/roboto-slab-v8-latin-700.eot?#iefix) format("embedded-opentype"), url(../fonts/roboto-slab-v8-latin-700.woff2) format("woff2"), url(../fonts/roboto-slab-v8-latin-700.woff) format("woff"), url(../fonts/roboto-slab-v8-latin-700.ttf) format("truetype"), url(../fonts/roboto-slab-v8-latin-700.svg#RobotoSlab) format("svg");
    font-display: swap;
}

@font-face {
    font-family: "Roboto Slab";
    font-style: normal;
    font-weight: 300;
    src: url(../fonts/roboto-slab-v8-latin-300.eot);
    src: local("Roboto Slab Light"), local("RobotoSlab-Light"), url(../fonts/roboto-slab-v8-latin-300.eot?#iefix) format("embedded-opentype"), url(../fonts/roboto-slab-v8-latin-300.woff2) format("woff2"), url(../fonts/roboto-slab-v8-latin-300.woff) format("woff"), url(../fonts/roboto-slab-v8-latin-300.ttf) format("truetype"), url(../fonts/roboto-slab-v8-latin-300.svg#RobotoSlab) format("svg");
    font-display: swap;
}

body {
    font-family: Roboto, "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
    font-size: 100%;
    font-weight: 400;
    background-color: inherit;
    color: inherit;
    margin: 0;
}

main {
    padding-bottom: 44px;
}

*,
::after,
::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.col-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}

@media (min-width: 576px) {
    .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 720px;
    }

    .col-md-4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }

    .col-md-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%;
    }

    .col-md-12 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-md-2 {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .order-md-3 {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 960px;
    }

    .col-lg-3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-lg-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .order-lg-2 {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .order-lg-3 {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.navbar-collapse {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.navbar {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0.5rem 1rem;
}

.navbar>.container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.collapse:not(.show) {
    display: none;
}

.list-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
}

.list-group-item {
    position: relative;
    display: block;
    margin-bottom: -1px;
}

.btn {
    text-transform: initial;
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 0;
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    -o-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}

.btn-block+.btn-block {
    margin-top: 0.5rem;
}

.btn-block {
    display: block;
    width: 100%;
}

.btn-primary {
    color: #fff;
    background-color: #0c6ba8;
    border-color: #0c6ba8;
}

.btn-outline-primary {
    color: #0c6ba8;
    border-color: #0c6ba8;
}

.popover {
    position: absolute;
    z-index: 0;
    max-width: 276px;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    word-wrap: break-word;
    font-size: 0.875rem;
    line-height: 1.5;
}

.popover .popover-body {
    padding: 15px;
}

.breadcrumb {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    list-style: none;
    background-color: #e9ecef;
    border-radius: 0.25rem;
}

.breadcrumb-item+.breadcrumb-item {
    padding-left: .5rem
}

.breadcrumb-item+.breadcrumb-item::before {
    display: inline-block;
    padding-right: .5rem;
    color: #c9c9c9;
    content: "/"
}

.breadcrumb-item+.breadcrumb-item:hover::before {
    text-decoration: underline
}

.breadcrumb-item+.breadcrumb-item:hover::before {
    text-decoration: none
}

.breadcrumb-item.active {
    color: #c9c9c9
}

.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.hidden {
    display: none;
}

@media (max-width: 991.98px) {
    header#header .item {
        text-indent: -9999px;
        margin-left: 15px;
        height: 35px;
    }
}

@media (max-width: 991.98px) {
    header#header .item .arrow {
        bottom: 1px;
    }
}

header#header {
    padding: 0;
    border-bottom: 1px solid;
    z-index: 7;
    min-height: 76px;
    position: fixed;
}

header#header nav.navbar {
    padding-top: 0;
    padding-bottom: 0;
}

header#header #header-navigation {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

header#header #header-navigation .popover {
    top: 2px !important;
}

header#header #header-navigation .popover .title {
    font-weight: 600;
}

header#header #header-navigation .popover .whoami-email,
header#header #header-navigation .popover .whoami-name {
    display: block;
}

header#header #header-navigation .popover .whoami-email {
    padding-bottom: 5.5px;
}

header#header .item {
    display: inline-block;
    background-color: transparent;
    border: none;
    font-weight: 600;
    font-size: 12px;
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    min-width: 30px;
    height: 50px;
    background-repeat: no-repeat;
    background-position: top center;
    -webkit-background-size: 30px 35px;
    background-size: 30px 35px;
    padding: 37px 0 0 0;
    margin-left: 44px;
}

header#header .item:first-child {
    margin-left: 0;
}

header#header .item:focus,
header#header .item:hover {
    text-decoration: none;
}

header#header .item:focus .arrow,
header#header .item:hover .arrow {
    outline: 0;
}

header#header .item.item-menu {
    background-image: url(../icon-burger.svg);
}

header#header .item.item-search {
    background-image: url(../icon-search.svg);
}

header#header .item.item-edemarches {
    background-image: url(../logo-session-inactive.svg);
    min-width: 46px;
    padding-top: 35px;
    -webkit-background-size: 70px 30px;
    background-size: 70px 30px;
    background-position-y: 2px;
}

header#header .item .arrow:after,
header#header .item .arrow:before {
    position: absolute;
    display: block;
    content: "";
    border-color: transparent;
    border-style: solid;
    border-width: 0 0.5rem 0.5rem 0.5rem;
}

header#header .item .arrow:before {
    top: 0;
}

header#header .item .arrow:after {
    top: 1px;
}

header#header .item.collapsed .arrow {
    display: block;
}

header#header nav.navbar {
    height: 75px;
}

header#header a#brand-logo {
    display: block;
}

header#header a#brand-logo img {
    height: 53px !important;
    width: auto;
}

header#header #brand-title {
    padding: 11px 0;
}

header#header #brand-title #ge-name {
    display: none;
}

header#header #brand-title #ge-filigrane {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 34px;
    font-size: rem(34) rem;
    line-height: 46.5753424658px;
    padding-left: 22px;
}

header#header #brand-title #ge-filigrane a {
    color: inherit;
}

header#header #brand-title #ge-filigrane a:focus,
header#header #brand-title #ge-filigrane a:hover {
    text-decoration: none;
}

header#header #header-navigation {
    padding-top: 0;
    margin-left: auto;
}

header#header #header-navigation .popover .subtitle a {
    text-decoration: none;
}

header#header #header-navigation .popover .subtitle a:hover {
    text-decoration: underline;
}

header#header {
    background-color: #fff;
    border-color: #c9c9c9;
}

header#header #menu-wrapper .menu-title a {
    color: #0c6ba8;
}

header#header .item {
    color: #777;
    outline-color: #e1e1e1;
}

header#header .item .arrow:before {
    border-bottom-color: #c9c9c9;
}

header#header .item .arrow:after {
    border-bottom-color: #ededed;
}

header#header .item-menu {
    background-image: url(../icon-burger.svg);
}

header#header .item-menu:hover {
    background-image: url(../icon-burger-333.svg);
}

header#header .item-menu.collapsed {
    background-image: url(../icon-burger-close-333.svg);
}

header#header .item-search {
    background-image: url(../icon-search.svg);
}

header#header .item-search:hover {
    background-image: url(../icon-search-333.svg);
}

header#header .item-search.collapsed {
    background-image: url(../icon-search-333.svg);
}

header#header .item-edemarches {
    background-image: url(../logo-session-inactive.svg);
}

header#header .item-edemarches.active {
    background-image: url(../logo-session-active.svg);
}

header#header .item-edemarches.active:hover {
    background-image: url(../logo-session-active-333.svg);
}

header#header .item-edemarches.collapsed,
header#header .item-edemarches:hover {
    background-image: url(../logo-session-inactive-333.svg);
}

header#header #block-selecteurdelangue ul.links>li>a {
    color: #0c6ba8;
}

header#header #block-selecteurdelangue ul.links>li>a.is-active {
    color: #b2b2b2;
}

header#header #block-selecteurdelangue ul.links>li:not(:last-child)>a:after {
    color: #b2b2b2;
}

@media (max-width: 991.98px) {
    header#header .item {
        text-indent: -9999px;
        margin-left: 22px;
        height: 35px;
    }
}

@media (max-width: 991.98px) {
    header#header .item .arrow {
        bottom: 3px;
    }
}

header#header {
    position: relative;
}

header#header .btn {
    text-decoration: none;
}

header#header .btn:focus,
header#header .btn:hover {
    text-decoration: none;
}

header#header #menu-wrapper .menu-title a:hover {
    text-decoration: underline;
}

header#header #ge-filigrane a,
header#header #menu-wrapper a {
    text-decoration: none;
}

header#header #header-navigation #edemarches-popup {
    top: 75px !important;
    background-color: #fff;
    border: 1px solid #c9c9c9;
    border-radius: 0;
}

header#header .item:hover {
    cursor: pointer;
}

header#header .item.item-menu .arrow:after {
    border-bottom-color: #fff;
}

header#header .item .arrow {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    display: none;
    width: 1rem;
    height: 0.5rem;
    bottom: -5px;
    z-index: 1;
}

@media (max-width: 991.98px) {
    header#header .item .arrow {
        bottom: 1px;
    }
}

header#header .item .arrow:before {
    top: 0;
}

header#header .item .arrow:after {
    top: 1px;
    border-bottom-color: #fff;
}

.overlay {
    position: fixed;
    display: none;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 4;
}

.footer-bottom {
    padding: 44px 0;
    background-color: #333;
}

.footer-bottom h2 {
    margin: 0 0 22px;
}

.footer-bottom ul {
    margin: 0;
    padding: 0;
}

.footer-bottom ul li {
    list-style: none;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

.footer-bottom ul li a {
    display: block;
    padding: 12px 0;
    border-bottom: 1px solid;
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

.footer-bottom ul li a:hover {
    text-decoration: none;
}

.footer-bottom ul li a:before {
    content: "\e902";
    margin-right: 11px;
    font-family: icomoon;
    font-size: 10px;
    font-size: rem(10) rem;
    line-height: 13.698630137px;
}

.footer-logo {
    display: block;
    width: 128px;
    height: 100px;
    text-indent: -9999em;
    margin: 22px auto;
}

@media (min-width: 768px) {
    .footer-bottom ul {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }
}

@media (max-width: 767.98px) {
    .footer-bottom ul li a {
        font-size: 14px;
        font-size: rem(14) rem;
        line-height: 19.1780821918px;
    }
}

@media (min-width: 768px) {
    .footer-logo {
        margin: 0;
    }
}

.footer-bottom ul li a {
    color: #fff;
    border-color: #fff;
}

.footer-bottom ul li a:hover {
    color: #999;
}

footer a {
    text-decoration: none;
}

.footer-logo {
    background: url(../footer-logo.svg) no-repeat center;
}

.popover {
    top: 2px !important;
    border: 1px solid;
    border-radius: 0;
}

.popover .popover-body {
    padding: 15px;
}

.popover {
    border-color: #c9c9c9;
}

.popover-body .btn-primary {
    background-color: #0c6ba8;
    border-color: #0c6ba8;
    color: #fff;
    background-image: none !important;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-shadow: none;
    font-weight: 400;
    border-radius: 0;
}

.popover-body .btn-primary:hover {
    border-color: #085a8e;
    color: #fff;
    background-color: #085a8e;
}

.popover-body .btn-primary:focus,
.popover-body .btn-primary:not(.disabled).active {
    border-color: #6da6cb !important;
    color: #fff !important;
    background-color: #6da6cb !important;
}

.popover-body .btn-outline-primary {
    background-image: none !important;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-shadow: none;
    font-weight: 400;
    border-radius: 0;
    background-color: transparent;
    border-color: #0c6ba8;
    color: #0c6ba8;
}

.popover-body .btn-outline-primary:focus,
.popover-body .btn-outline-primary:hover {
    background-color: #ededed;
    border-color: #0c6ba8;
    color: #0c6ba8;
}

#header-navigation .popover .subtitle {
    color: #999;
}

#header-navigation .popover .subtitle a:not(.btn) {
    color: #0c6ba8;
}

.popover {
    border: 1px solid #c9c9c9;
    background-color: #fff;
}

.popover .popover-body {
    padding: 15px;
}

.popover-header:empty {
    display: none;
}

#navbarHeader {
    background-color: #fff;
    border-color: #c9c9c9;
}

#navbarHeader #search-wrapper {
    background-color: #ededed;
}

#navbarHeader #menu-wrapper {
    background-color: #fff;
}

#navbarHeader .menu-col .menu-title {
    border-color: #333;
}

@media (max-width: 767.98px) {
    #navbarHeader .double-list:not(:last-child) .list-group .list-group-item:last-child {
        border-color: #e1e1e1;
    }
}

#navbarHeader .list-group .list-group-item {
    border-color: #e1e1e1;
}

#navbarHeader .list-group .list-group-item a {
    color: #333;
}

#navbarHeader .list-group .list-group-item a:focus,
#navbarHeader .list-group .list-group-item a:hover {
    background-color: #ededed;
}

#navbarHeader {
    position: absolute;
    top: 76px;
    height: initial;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 200px;
    -webkit-transform: none;
    -o-transform: none;
    transform: none;
}

#navbarHeader #menu-wrapper {
    padding: 15px;
}

#navbarHeader .list-group {
    margin-top: 0;
}

#navbarHeader .list-group .list-group-item {
    border: 0;
    border-bottom: 1px solid #e1e1e1;
    margin-bottom: 0;
}

#navbarHeader .list-group .list-group-item:last-child {
    border-bottom: 0;
}

#navbarHeader .list-group .list-group-item a {
    display: block;
    padding: 7px 11px 5px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 19.1780821918px;
    position: relative;
}

.region-breadcrumb {
    padding: 11px 0;
}

.region-breadcrumb .breadcrumb {
    background-color: transparent;
    margin-bottom: 0;
    padding: 0;
    margin-top: 0;
}

.region-breadcrumb .breadcrumb a,
.region-breadcrumb .breadcrumb li {
    font-size: 14px;
    font-size: rem(14) rem;
    line-height: 19.1780821918px;
}

.region-breadcrumb .breadcrumb a {
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

.region-breadcrumb .breadcrumb a:focus,
.region-breadcrumb .breadcrumb a:hover {
    text-decoration: underline;
}

.region-breadcrumb .breadcrumb .breadcrumb-item {
    padding-left: 5px;
}

.region-breadcrumb .breadcrumb .breadcrumb-item+.breadcrumb-item::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
    content: "f105";
    font-weight: 900;
    content: "\f105";
    padding: 0 11px;
}

@media (max-width: 767.98px) {
    .region-breadcrumb .breadcrumb .breadcrumb-item:not(:nth-last-child(2)) {
        display: none;
    }

    .region-breadcrumb .breadcrumb .breadcrumb-item:nth-last-child(2) {
        padding-left: 0;
    }

    .region-breadcrumb .breadcrumb .breadcrumb-item:nth-last-child(2) a {
        padding-left: 5px;
    }

    .region-breadcrumb .breadcrumb .breadcrumb-item:nth-last-child(2):before {
        -webkit-transform: rotate(180deg);
        -o-transform: rotate(180deg);
        transform: rotate(180deg);
        padding: 0 !important;
    }
}

@media (max-width: 991.98px) {
    .region-breadcrumb .breadcrumb {
        display: block !important;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (max-width: 991.98px) {
    .region-breadcrumb .breadcrumb .breadcrumb-item {
        display: inline;
    }
}

.region-breadcrumb {
    background-color: #ededed;
}

.region-breadcrumb .breadcrumb a {
    color: #333;
}

.region-breadcrumb .breadcrumb a.active,
.region-breadcrumb .breadcrumb a:hover {
    color: #333;
}
.region-breadcrumb .row {
	margin-left:0;
	margin-right:0;
}

/*************** TOP 3 CC ***************************************************************************************************/
#top3 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 60px;
}

#top3 .top3-candidat {
    margin: 0 12px;
    text-align: center;
}

#top3 .top3-candidat {}

#top3 .top3-candidat .content {
    padding: 20px;
    height: 100%;
}

#top3 .top3-candidat .flipper {
    transform: rotateY(180deg);
    backface-visibility: hidden;
}

#top3 .top3-candidat .flipper.flip {
    transform: rotateY(0);
    animation-duration: 500ms;
    animation-timing-function: ease-out;
    animation-name: flipAnimation;
}

#top3 .top3-candidat.elu .content {
    background-color: #dfecf4;
}

@keyframes flipAnimation {
    from {
        transform: rotateY(180deg);
    }

    to {
        transform: rotateY(0);
    }
}

#top3 .top3-candidat .position {
    font-weight: bold;
    color: #ffffff;
    line-height: 28px;
    background-color: #333333;
    display: inline-block;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-bottom: 10px;
}

#top3 .top3-candidat .suffrage {
    line-height: 1.1;
    margin-bottom: 20px;
}

#top3 .top3-candidat .big-number {
    font-size: 20px;
}

#top3 .top3-candidat .libelle-suffrages {
    text-transform: uppercase;
}

@media (max-width: 970px) {
    #top3 .top3-candidat {
        width: calc(25% - 30px);
        width: -moz-calc(25% - 30px);
        width: -webkit-calc(25% - 30px);
    }
}

#top7 .siege_container .number {
    font-size: 25px;
    font-weight: 700;
}

#top7.animation .siege_container .number {
    font-size: 40px;
}

#top7 .siege_container .my_badge {
    border-radius: 30px;
    padding: 4px;
    width: 25px;
    height: 25px;
    line-height: 18px;
    display: inline-block;
    text-align: center;
    vertical-align: text-bottom;
    font-weight: 700;
}

#top7.animation .siege_container .my_badge {
    width: 40px;
    height: 40px;
    line-height: 35px;
}

#top7 .progress-bar-bg .partie {
    position: absolute;
    bottom: 5px;
    margin: auto;
    width: 100%;
    color: white;
    font-size: 34px;
    font-weight: 600;
}

#top7.animation .progress-bar-bg .partie {
    font-size: 50px;
}


#top7 .partie_container {
    margin: 0 5px;
    text-align: center;
    /*    width: calc(14.28% - 10px);
    width: -moz-calc(14.28% - 10px);
    width: -webkit-calc(14.28% - 10px); */
    height: 370px;
    flex: 1;
}

#top7 .partie_container:first-of-type {
    margin-left: 0px;
}

#top7 .partie_container:last-of-type {
    margin-right: 0px;
}

#top7 .partie_container .progress-bar-bg {
    cursor: pointer;
    transition: opacity 0.3s;
}

#top7 .partie_container .progress-bar-bg:hover {
    opacity: 0.8;
}

#top7.animation .partie_container {
    height: 685px;
}

.partie_container .flipper.flip {
    transform: rotateY(0);
    animation-duration: 500ms;
    animation-timing-function: ease-out;
    animation-name: flipAnimation;
}

.partie_container .content {
    height: 100%;
}

#tab-suffrages .table-striped>tbody>tr:nth-of-type(odd) {
    background-color: #F4FBFE !important;
}

#tab-suffrages .table-striped>tbody>tr:hover {
    background-color: #e5f2f8 !important;
}

#tab-suffrages tbody * {
    font-size: 21px;
}

#tab-suffrages tbody tr>td p {
    font-size: 16px;
}

#tab-suffrages tbody tr>td:nth-child(2) .totalBulletin {
    height: 30px;
}

#tab-suffrages tbody tr>td:nth-child(2) .bulletinCompacts *,
#tab-suffrages tbody tr>td:nth-child(2) .bulletinModifies * {
    font-size: 15px;
}

.gevi-table-suffrages .bulletinPanaches,
#tab-suffrages tbody tr>td:nth-child(2) p {
    font-size: 13px !important;
    font-weight: initial;
}

#tab-suffrages tbody tr>td:nth-child(2) div {
    float: right;
    font-size: 13px;
    text-align: left;
    width: 45%;
}

.gevi-table-suffrages .bulletinPanaches {
    text-align: left;
}

.gevi-table-suffrages .bulletinCompacts {
    text-align: center !important;
}

#tab-suffrages .suffrages {
    font-size: 18px;
    display: block;
}

#tab-suffrages .table>thead>tr>th {
    border: 0;
}

#tab-suffrages .table>tbody>tr>td {
    border: 0;
}

#tab-suffrages .table>tbody>tr>td:first-child {
    padding-left: 16px;
}

#tab-suffrages tbody .ecart {
    font-size: 13px;
    display: inline;
}

@media only screen and (max-width: 640px) {
    #tab-suffrages tbody tr>td:nth-child(2) .totalBulletin {
        width: 250px;
    }
}
/*
#canvas_legend .legend > td:first-child{
    word-break: break-all;
}*/

/*Page candidats*/
#listeCandidats.liste_candidat_CN .display-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: stretch;
    margin-left: -7.5px;
    margin-right: -7.5px;
    margin-top: 10px;
}


#listeCandidats.liste_candidat_CN .cartouche-candidat.elu .bloc-candidat {
    background-image: linear-gradient(#73ABCB, rgba(2, 103, 161, 1));
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .bloc-candidat {
    background-image: linear-gradient(#E1EEF4, #95C0D8);
}

#listeCandidats.liste_candidat_CN .cartouche-candidat {
    margin-bottom: 20px;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .bloc-candidat {
    min-height: 110px !important;
    max-height: 110px !important;
    margin-bottom: 0;
    padding-top: 0px;
    overflow: hidden;
    position: relative;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat {
    padding: 0;
    padding-left: 7.5px;
    padding-right: 7.5px;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .bloc-candidat {
    border: 0 !important;
    border-bottom: 0 !important;
    width: 100%;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .info-candidat>p:first-child {
    font-weight: 500;
    margin: 0;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .info-candidat>p:nth-child(2) {
    height: 12px;
    font-size: 13px;
    line-height: 12px;
    margin-bottom: 0px;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .info-candidat>p:nth-child(3) {
    font-size: 11px;
    position: absolute;
    width: calc(100% - 142px);
    bottom: 0;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .info-candidat>p:nth-child(3) strong {
    font-size: 19px;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .icon-position {
    position: absolute;
    right: -50px;
    bottom: 0;
}



#listeCandidats.liste_candidat_CN .cartouche-candidat .bloc-candidat .libelle-elu {
    margin-bottom: 0;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .bloc-candidat .libelle-elu .icon {
    FONT-SIZE: 170px;
    line-height: 150px;
    height: 150px;
    display: block;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .bloc-candidat .label-elu {
    FONT-SIZE: 16px;
    position: absolute;
    text-transform: uppercase;
    font-weight: 500;
    bottom: 0;
    right: 0px;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat.elu .bloc-candidat * {
    color: white;
}

#listeCandidats.liste_candidat_CN .cartouche-candidat .bloc-candidat * {
    color: black;
    line-height: 16px;
}

.cartouche-candidat .bloc-candidat .info-candidat {
    margin-top: 10px;
    padding-right: 10px;
}

@media (max-width: 970px) {
    #listeCandidats .display-flex {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/*************** TOP 7 CE ***************************************************************************************************/
/*************** TOP 7 CE ***************************************************************************************************/
#top7 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin: auto;
    margin-bottom: 40px;
}

#top7.animation {
    width: 90%;
    padding-top:0!important
}

#top7 .top7-separator {
    border-right: 3px solid #257fb2;
}

#top7 .top7-fonction {
    width: 100%;
    text-align: center;
    font-size: 24px;
    padding: 0px 0 10px 0;
}

#top7 .top7-candidat {
    margin: 0 10px;
    text-align: center;
    width: calc(14.28% - 20px);
    width: -moz-calc(14.28% - 20px);
    width: -webkit-calc(14.28% - 20px);
    height: 550px;
}

#top7.animation .top7-candidat {
    height: 600px;

}

#top7 .top7-candidat {
    margin: 0 10px;
    text-align: center;
    width: calc(14.28% - 20px);
    width: -moz-calc(14.28% - 20px);
    width: -webkit-calc(14.28% - 20px);
    height: 550px;
}

#top7 .top7-candidat {
    margin: 0 5px;
    width: 18.9%;
}

#top7 .top7-candidat .content {

    height: 100%;
}

#top7 .top7-candidat .libelle-suffrages {
    font-size: 9px;
    line-height: 9px;
    display: block;
}

#top7 .top7-candidat .flipper {
    transform: rotateY(180deg);
    backface-visibility: hidden;
}

#top7 .top7-candidat .flipper.flip {
    transform: rotateY(0);
    animation-duration: 500ms;
    animation-timing-function: ease-out;
    animation-name: flipAnimation;
}

#top7 .top7-candidat.elu .content {
    /* background-color: #dfecf4;*/
}

#top7 .candidat_name {
    font-weight: bolder;
    color: initial;
}



#top7 .small {
    font-size: 90%;
}

#top7.animation .small {
    font-size: 75%;
}

#top7.animation .liste_acro.small {
    font-size: 50%;
    font-weight: 700;
}

@media (max-width: 970px) {
    #top7 .small {
        font-size: 80%;
    }
}

@media (max-width: 1170px) {
    #top7 .small {
        font-size: 85%;
    }
}



#top7 .progress-bar-bg {
    width: 100%;
    height: 0%;
    --height: 0%;
}

#top7 .color-elu {
    background-image: linear-gradient(rgba(2, 103, 161, 0), rgba(2, 103, 161, 1));
}

#top7 .color-nonelu {
    background-image: linear-gradient(#FFFFFF, #E1EEF4, #579AC1);
}

#top7 .progress-bar-bg.animation {

    animation: changeSize 2s linear forwards;
}



.opacity {
    opacity: 1;
    /* Fade in */
    transition: opacity 2s ease-out;
    -ms-transition: opacity 2s ease-out;
    -moz-transition: opacity 2s ease-out;
    -webkit-transition: opacity 2s ease-out;
}

.opacity.opacity_hide {
    opacity: 0;
}

/*
#top7 .icon-tick:before {
    content: "\e902";
    color: white;
    vertical-align: middle;
}*/

#top7 .icon-tick {
    font-size: 64px;
}

#top7 .stats_container {
    width: 100%;
}


.hist .cartouche-candidat .bloc-candidat .big-label {
    font-size: 24px;
    font-weight: 400;
}

@keyframes flipAnimation {
    from {
        transform: rotateY(180deg);
    }

    to {
        transform: rotateY(0);
    }
}

#top7 .top7-candidat .position {
    font-weight: bolder;
    color: rgba(255, 255, 255, 1);
    font-size: 80px;
    /*font-family: "Inter";*/
    position: absolute;
    bottom: 4px;
    line-height: 60px;
    height: 60px;
}

#top7.animation .top7-candidat .position {
    bottom: 8px;
    font-size: 100px;
    line-height: 50px;
	z-index: 999;
}

#top7 .top7-candidat .suffrage {
    line-height: 1.1;
    margin-bottom: 20px;
}

#top7 .top7-candidat .libelle-suffrages {
    font-size: 15px;
    line-height: 15px;
    display: block;
}

#top7.animation .top7-candidat .libelle-suffrages {
    font-size: 20px;
    line-height: 20px;
}

#top7.animation .top7-candidat .suffrage{
	z-index:9999999;
	position: relative;
}

#top7 .top7-candidat .big-number {
    font-size: 30px;
}

#top7.animation .top7-candidat .big-number {
    font-size: 40px;
    margin-top: 20px;
    display: block;
}

#top7 .libelle-elu {
    color: white;
    font-size: 100%;
    display: block;
    text-transform: uppercase;
    font-weight: 700;
}


@keyframes changeSize {
    0% {
        height: 0%;
    }

    100% {
        transition: height 3s;
        height: var(--height);
    }
}

.general-label {
    display: flex;
    gap: 10px;
    align-items: center;
}

.animations #canvas_legend .legend {
    font-size: 25px;
}

#gevi-map-highlight .info_commune_resultat {
    font-size: 0.8rem;
    line-height: 1rem;
    font-weight: normal;
}

.animation .img-responsive {
	width: 100%;
	max-width:auto;
}