/*
Theme Name: CDE-VRA-THEME
Author: Valence Romans Agglo
Version: 4.0.2
Author URI: communaute-capdemat.fr
Description: Thème personnalisé - CDE-VRA-THEME (modernisation visuelle)
Template: CDE-PACK-PORTAIL-THEME2
*/


:root{
    --font-title: gothamBlack !important;
    --font-body: gothamMedium !important;
    --font-nav: gothamMedium !important;
}

/* Fonts personnalisées */
@font-face {
font-family: "NeonAgglae";
    src: url('Neon.ttf');
}

@font-face {
font-family: "gothamBlack";
    src: url('fonts/Gotham_Black.otf') format('opentype');
}
@font-face {
font-family: "gothamBold";
    src: url('fonts/Gotham_Bold.otf') format('opentype');
}
@font-face {
font-family: "gothamMedium";
    src: url('fonts/Gotham_Medium.otf')  format('opentype');
}

html {
    scroll-padding-top: 235px;
}

ul {
    list-style-type:none;
}

a {
    text-decoration: none;
    color: #000;
}

h2 {
    text-decoration: none;
    font-weight: 600;
    border-bottom: none;
}

h3 {
    text-decoration:none;
    font-family: 'gothamMedium', sans-serif !important;
    padding-left : 0.5em;
}

.colonneTs {
    gap: 0 ;
}

.Fonds {
    background-color: #d9d9d9;
    padding-top: 14px;
    padding-bottom: 14px;
}
.Fonds:hover {
    background-color:#a9a9a9 !important
}
.Fonds p {
    margin-bottom: 0px !important;
}
.Fonds a {
    color: #000 !important;
}
.Fonds a:hover {
    color:#F0381F !important;
    text-decoration : none !important;
    border-bottom: 3px solid #f0381f;
}


a:hover{
    text-decoration:none !important;
}

.blocLienExterne  a::after{
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: ' \f35d';
}

.blocLienMairie a::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: ' \f66f';
}
.ligneAvecIcon {
    gap: 1rem;
    width: 100%;
    align-items: center !important;
}

.ligneAvecIcon .colonnePicto {
    text-align: right;
}
.ligneAvecIcon p {
    margin: 0;
}


.titreCategorie{
    font-family: 'gothamBold', sans-serif;
    font-size: 26px;
    text-transform: uppercase;
    color: #111;
    margin: 60px 0 20px;
    padding-bottom: 10px;
    position: relative;
}

/* ligne rouge moderne */
.titreCategorie::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 80px;
    height: 3px;
    background-color: #F0381F;
    border-radius: 2px;
}

body:before {
    content: "";
    background: url(img/background1.svg);
    /* background-size: 113px 500px; */
    /*background-size: 100% 100%;*/
    opacity: 0.1;
    top: 200px;
    left: 15px;
    bottom: 0;
    right: 0;
    position: fixed;
    z-index: -1;
    background-repeat: no-repeat;
    display: none;
}

body:after {
    /*content: "";
    background: url(img  background2.svg);*/
    /* background-size: 113px 500px; */
    /*background-size: 100% 100%;
    opacity: 0.1;
    top: 200px;
    left: 600px;
    bottom: 0;
    right: 0;
    position: fixed;
    z-index: -1;
    background-repeat: no-repeat;*/
}

/* suppression des éléments de formulaire inutiles en V1*/
.liaison_individu {
    display: none !important;
}
.fondNavigWhite {
    background-color:#ffffff;
    position: absolute;
    top: 0;
    height: 125px;
    width: -webkit-fill-available;
    width: -moz-available;
    z-index: -90;
}

#label_foyer {
    display : none !important;
}

label[for="label_foyer"]
{
    display:none !important;
}
/* fin suppression */

.form-control {
    color: #000000 !important;
}


html {
    height: 100%;
    background-color: white !important;
}
body {
    min-height: 100%;
    background-color: transparent;
}

#main_nav .has-submenu button {
    background-color: transparent;
    border: none;
    line-height: 1;
    padding: 0;
    margin-left: 7px;
}

#main_nav .has-submenu button > span {
    display: block!important;
    background: none!important;
}

#main_nav .has-submenu button > span:after{
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f107";
    color: white;
    font-size: 20px;
}

#main_nav .has-submenu button:focus {
    /*outline: 1px dashed black;
    outline-offset: 0.2em;*/
}

/*HEADER*/
/*menu*/
#main_nav{
    padding: 45px 0 3px!important;
    /*font-family: 'Lato', sans-serif!important;*/
    font-family: 'NeonAgglae', sans-serif!important;
}


#main_nav{
    display: flex!important;
    justify-content: flex-end;
    border-bottom: none!important;
    position: fixed;
    width: unset !important;
    right: 0;
    top: 0;
    padding-top: 70px !important;
    z-index: 1000 !important;
    /*margin-right: 5px;*/
}

/*A SUPPRIMER */
#main_nav > ul > li{
    font-family: 'gothamBlack';
    font-size: 18pt;
    color: black !important;
}

#main_nav > ul > li:nth-child(1):after{
    background-image: url(img/header1.png);
    background-size: 40px 40px;
    display: inline-block;
    width: 40px;
    height: 40px;
    content: "";
    /*vertical-align: middle;*/
    margin-right: 10px;
    margin-left: 10px;
    margin-top: -10px
}

#main_nav > ul > li:nth-child(2):after{
    background-image: url(img/header2.png);
    background-size: 40px 40px;
    display: inline-block;
    width: 40px;
    height: 40px;
    content: "";
    vertical-align: super;
    margin-right: 10px;
    margin-left: 10px;
    margin-top: -10px
}

#main_nav > ul > li:nth-child(3):after{
    background-image: url(img/header3.png);
    background-size: 40px 40px;
    display: inline-block;
    width: 40px;
    height: 40px;
    content: "";
    /*vertical-align: middle;*/
    margin-right: 10px;
    margin-left: 10px;
    margin-top: -10px
}

#main_nav > ul > li:nth-child(4){
}

#main_nav #menu-primary-menu > li > a {
    border-bottom: 5px solid transparent !important;
    color: #000 !important;
    vertical-align: top;
    text-decoration: none !important;

}

#main_nav #menu-primary-menu > li > a:hover, #main_nav #menu-primary-menu > li > a:focus {
    border-bottom: 5px solid #F0381F !important;
    color: #F0381F !important;
}

#main_nav > ul {
    background-color: transparent !important;
    height: 65px !important;
    /*margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    background-color: transparent !important;
    color: #fff;
    height: 81px !important;
    font-size: medium;
    justify-content: center;
    margin-top: 4px !important;
    position: initial!important;*/
}

#main_nav > ul > li{
    /*margin: 0!important;
    padding: 3px 45px 2px!important;
    height: 81px !important;
    margin-top: 8px !important;*/
}

#main_nav > ul > li {
    display: unset !important;
    text-align: unset !important;
    position: unset !important;
    align-self: unset !important;
    text-transform: uppercase;
    margin: unset !important;
    padding: unset !important;
    width: unset !important;
}

#main_nav .has-submenu button > span{
    display: none!important;
}

#main_nav #menu-primary-menu > li > a {
    line-height: unset !important;
    border: unset !important;
    border-bottom: unset !important;
    font-size: unset !important;
}
#menu-primary-menu a{
    /*color: white!important;
    text-transform: none;*/
}
#main_nav .menu-right > span > div {
    height: 40px;
    position: relative;
}


#main_nav .menu-right > span > div > a > br{
    display: none !important;
}

#main_nav .menu-right span i.fas, #main_nav .menu-right span i.fa {
    display: none;
}

#main_nav .menu-right{
    /*position: initial!important;
    background-color: var(--colorRose);
    padding: 0 53px!important;
    height: 81px !important;
    margin-top: 8px;*/
    position: relative !important;
    margin: 0;
    padding: unset !important;
    display: unset !important;
    background-color: #FFF;
    color: #fff;
    height: 40px;
    font-size: medium;
    justify-content: center;
    margin: 0 !important;
    padding: 0 !important;
    top: -4px !important;
}

.nav-connexion{
    font-family: 'gothamBlack';
    font-size: 18pt;
    color: black!important;
    padding: 0 !important;
    margin: 0 !important;
    text-transform: uppercase;
    line-height: initial;
}

.nav-connexion:hover, .nav-connexion:focus{
    border-bottom: 5px solid #F0381F !important;
    color: #F0381F !important;
}

.fa-sign-out-alt:before {
    display: none;
    background-color: transparent;
}


.nav-connexion i{
    color: white!important;
    font-size: 1.2em!important;
    margin: 0!important;
    display: none !important;
}

#main_nav .menu-right span{
    margin-right: 0!important;
}

#main_nav a, #main_nav .current{
    /*display: initial!important;
    padding: 0;
    margin: 0;
    font-size: 18px;*/
}

#main_nav a, #main_nav .current {
    flex: unset !important;
    display: unset !important;
}

#main_nav #menu-primary-menu > li > a{
    /*border-bottom: none!important;*/
}

#main_nav #menu-primary-menu > li > a:hover, #main_nav #menu-primary-menu > li > a:focus{
    /*border-bottom: none!important;*/
}

/*sous menu*/
#main_nav .ctg-childs li a{
    color: white!important;
}

#main_nav .ctg-childs{
    margin: 45px 0 0!important;
}

#main_nav .ctg-childs li a:hover, #main_nav .ctg-childs li a:focus{
    border-bottom: none!important;
    color: red!important;
}


#top form {
    font-size: 12pt !important;
}

#top label {
    font-weight: unset !important;
    font-size: 12px !important;
}

.form-control {
    font-size: 12pt !important;
}

.sloganAgglae {
}

.logoLink {
    content:url(img/logoAgglaeFull.png);
    width: 175px;
    margin-left: 5px;
}

.lienAccueilAgglae {
    font-family: 'gothamBlack';
    font-size: 40pt;
    color: #F0381F;
    margin-left: auto;
    position: absolute;
    top: 60px;
    left: 145px;
    text-align: left;
    text-transform: uppercase;
    text-decoration: none;
}

.lienAccueilAgglae:hover {
    font-family: 'gothamBlack';
    font-size: 40pt;
    color: #F0381F;
    margin-left: auto;
    position: absolute;
    bottom: 40px;
    left: 145px;
    text-align: left;
    text-transform: uppercase;
    text-decoration: none;
}


.titreAgglae {
    font-family: 'gothamBlack';
    font-size: 40pt;
    color: #F0381F;
    margin-left: auto;
    text-transform: uppercase;
    position: absolute;
    bottom: 40px;
    left: 145px;
    text-align: left;
    text-transform: uppercase;
}

.sousTitreAgglae {
    font-family: 'gothamBlack';
    font-size: 7pt;
    color: #F0381F;
    margin-left: auto;
    text-transform: uppercase;
    position: absolute;
    bottom: 5px;
    text-align: left;
    display:none;
}

/* Barre orange sous menu */
.barreOrange {
    position: inherit;
    z-index: 2222;
    top: 120px;
    left: 0;
    padding: 0;
    margin: 0;
    width: -webkit-fill-available;
    width: -moz-available;
    background-color: #F0381F;
    height: 55px;
}

.texteIntro {
    font-family: 'gothamBold';
    font-size: 14pt;
    color: #FFF;
    text-align: center;
    line-height: 55px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

.site-content {
    margin-right: auto;
    position: relative;
    width: 90%;
    margin-left: auto;
    margin-bottom:5rem;
}

.imgContent {
    text-align: -webkit-center;
}

.sectionAgglae{
    display: flex;
    height: 25px;
}

.sectionAgglaeTitre {
    font-family: 'gothamBlack';
    color: #000;
    font-size: 16pt;
    line-height: 25px;
    position: relative;
    z-index: 10;
}

.sectionAgglaeTitre:after {
    /*background-image: url(img  header2.png);
    background-size: 38px 20px;
    display: inline-block;
    width: 38px;
    height: 20px;
    content: "";
    vertical-align: middle;
    margin-right: 10px;
    margin-left: 5px;*/
}

.sectionAgglaeTitre:before {
    background-image: url(img/header2.png);
    background-size: 120px 40px;
    /* display: block; */
    width: 120px;
    height: 40px;
    content: "";
    vertical-align: middle;
    margin-right: 10px;
    margin-left: 5px;
    top: -5px;
    left: -20px;
    position: absolute;
    z-index: -10;
    opacity: 0.1;
}

.sectionAgglaeSousTitre {
    font-family: 'gothamMedium';
    color: #000;
    font-size: 14pt;
    line-height: 25px;
    font-style: italic;
    margin-left: 20px;
}

.hidden {
    display: none!important;
}

.sectionAgglaeSousTitreRetour {
    font-family: 'gothamMedium';
    color: #000;
    font-size: 14pt;
    line-height: 25px;
    background-color: #d9d9d9;
    padding: 5px;
    line-height: 15px;
    margin-left: 20px;
}

.sectionAgglaeSousTitreRetour:hover {
    cursor: pointer;
    color: #F0381F;
    background-color: #a9a9a9;
    border-bottom: 2px solid #F0381F !important;

}

.listeCategories {
    display: flex;
    flex-wrap: wrap;
    margin-top: 25px;
    margin-bottom: 25px;
}

.listeCategories>* {
    flex: 1 1 50%;
}

.categorie {
    display: flex;
    /* flex-wrap: wrap; */
    /* padding: 5px; */
    /* background-color: #e9e9e9; */
    cursor: pointer;
    font-family: 'gothamMedium';
    font-size: 16pt;
    line-height: 80px;
    /* pointer-events: unset; */
    padding: 0 !important;
    margin: 0 !important;
    text-align-last: left;
    height: 80px !important;
    pointer-events: all !important;
    flex: 1 49%;
    /*max-width: 49% !important;*/
    background-color: #d9d9d9;
    margin-right: 5px !important;
    margin-bottom: 5px !important;
    padding-left: 30px;
    border-bottom: 2px solid #d9d9d9 !important;
}

.categorie:hover {
    color: #F0381F;
    background-color: #a9a9a9;
    border-bottom: 2px solid #F0381F !important;
}

.categorieSelected {
    color: #F0381F;
    background-color: #a9a9a9;
    pointer-events: none !important;
}


.pictoCategorie {
    width: 80px;
    height: 80px;
}


.listeInitiales {
    display: flex;
    flex-wrap: wrap;
    margin-top: 25px;
}
.initiale {
    flex: 1 1 11%;
    font-family: 'gothamMedium';
    font-size: 16pt;
    background-color: #d9d9d9;
    width: 87%;
    line-height: 30px;
    height: 30px !important;
    color: #000;
    margin-bottom: 5px;
    margin-left: 5px;
    text-align: center;
    cursor : pointer;
    -webkit-border-top-left-radius: 10px;
    -moz-border-radius-topleft: 10px;
    border-top-left-radius: 10px;
}

.initiale:hover {
    color: #F0381F;
    background-color: #a9a9a9;
    border-bottom: 2px solid #F0381F !important;
}

.initialeSelected {
    background-color: #a9a9a9;
    color: #F0381F;
    cursor : unset;
}

.initialeHidden {
    display: none;
}

.listeVilles {
    margin-top: 25px;
    display: flex;
    flex-wrap: wrap;
}

.ville {
    flex: 1 1 auto;
    font-family: 'gothamMedium';
    font-size: 16pt;
    background-color: #d9d9d9;
    line-height: 45px;
    height: 45px !important;
    color: #000;
    margin-bottom: 5px;
    margin-left: 5px;
    padding-left: 7px;
    padding-right: 7px;
    text-align: center;
    cursor : pointer;
}

.ville:hover {
    color: #F0381F;
    background-color: #a9a9a9;
    border-bottom: 2px solid #F0381F !important;
}

.villeSelected {
    background-color: #a9a9a9;
    color: #F0381F;
    cursor : unset;
    margin-left: 0px;
    pointer-events: none !important;
}

.villeHidden {
    display: none;
}

.btnAccesServices {
    width: 100%;
    font-family: 'gothamBold';
    font-size: 16pt;
    text-align: center;
    color: #000;
    cursor: pointer;
}

.btnAccesServices:hover {
    color: #F0381F;
    /*background-color: #a9a9a9;*/
}

.btnAccesServicesDisable {
    color: #7d7d7d;
}

.btnAccesServicesDisable:hover {
    color: #7d7d7d;
    cursor: not-allowed;
}

.jconfirm .jconfirm-box .jconfirm-buttons button.btn-blue {
    background-color: #F0381F !important;
    color: #FFF !important;
    text-shadow: none !important;
    -webkit-transition: background .2s !important;
    transition: background .2s !important;
}

.jconfirm .jconfirm-box .jconfirm-buttons button.btn-blue:hover {
    background-color: #A9A9A9 !important;
    color: #F0381F !important;
}

.btn-info:hover {
    color: #F0381F;
    background-color: #A9A9A9;
    border-color: #f0381F;
}

.btn-primary {
    color: #fff;
    background-color: #F0381F;
    border-color: #F0381F;
}

.btn-primary:hover {
    color: #f0381F;
    background-color: #A9A9A9;
    border-color: #F0381F;
}

.zoneAccesServices{
    width: 50%;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    background-color: #d9d9d9;
    padding: 5px;
    pointer-events: all;
    border-bottom: 2px solid #d9d9d9 !important;
}

.zoneAccesServices:hover {
    color: #F0381f;
    background-color: #a9a9a9;
    border-bottom: 2px solid #F0381F !important;
}

.zoneAccesServicesDisable{
    background-color: #d9d9d9;
    text-decoration: none !important;
    pointer-events: bounding-box;
    cursor: not-allowed;
}

.zoneAccesServicesDisable:hover{
    color: #000;
    background-color: #d9d9d9;
    border-bottom: 2px solid #d9d9d9 !important;

}

.listeAlerte {
    margin-bottom: 0px !important;
}

.alerteAccesServices {
    font-family: 'gothamMedium';
    font-size: 12pt;
    margin-right: auto;
    align-items: center;
    text-align: center;
    background-color: #F0381F;
    color: #FFF;
    width: 450px;
    /*height: 100px;*/
    padding: 10px;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -225px;
    margin-top: -50px;
}

.alerteAccesServicesDisable {
    display: none;
}

.elementAlerte {
    text-align: left;
    padding-left: 25px;
}

.elementAlerte:before {
    content: "• ";
    color: white;
}

.elementAlerteDisable {
    display: none;
}

/* brique TS */
#gestion-page-gru-content.gru-content .element-gru, #gestion-page-gru-content.gru-content .element-gru-text {
    /*background-repeat: no-repeat !important;
    background-size: cover !important;
    height: 8vh !important;
    background-size: contain !important;
    min-height: 180px !important;
    background-position-x: center !important;
    background-position-y: bottom;*/
    position: relative !important;
}

#gestion-page-gru-content.gru-content .element-gru .back .help_close_button {
    display: none;
}

.fa-window-close:before {
    content: "\f410";
    display: none;
}


#gestion-page-gru-content.gru-content .section > h2 {
    font-family: 'gothamBlack' !important;
    color: #000 !important;
    font-size: 18pt !important;
    text-transform: uppercase;
    text-align: left;
    margin: 0 !important;
    padding-left: 20%;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
    margin-bottom: 15px !important;
    position: relative;
    z-index: 10;
    /* margin-top: 10px !important; */
    /* padding-bottom: 15px !important; */
}

#gestion-page-gru-content.gru-content .section > h2:after {
    /*background-image: url(img pictoSectionBas.png);
    background-size: 38px 20px;
    display: inline-block;
    width: 38px;
    height: 20px;
    content: "";
    vertical-align: middle;
    margin-right: 10px;
    margin-left: 5px;*/
}

#gestion-page-gru-content.gru-content .section > h2:before {
    background-image: url(img/header2.png);
    background-size: 120px 40px;
    background-repeat: no-repeat;
    /* display: block; */
    width: 120px;
    height: 40px;
    content: "";
    vertical-align: middle;
    margin-right: 10px;
    margin-left: 20%;
    top: 0px;
    left: -20px;
    position: absolute;
    z-index: -10;
    opacity: 0.1;
    display: none;
}

#gestion-page-gru-content.gru-content .section > h2 i {
    display: none;
}

#gestion-page-gru-content.gru-content .content-notif {
    padding: 0 !important;
    margin: 0 !important;
    margin-bottom: 15px !important;
}

#gestion-page-gru-content.gru-content .content-notif > h2 {
    font-family: 'gothamMedium', sans-serif!important;
    color: #000 !important;
    font-size: 14pt !important;
    text-transform: uppercase;
    text-align: left;
    display: block !important;
    padding: 0 !important;
    margin-left: 0;
    margin-right: 0;
    margin-top: 10px !important;
    margin-bottom: 15px !important;
}

button.bouttontooltip {
    display: none;
}

/* affichage du logo de la commune */
.goMairie {
    color: #000;
    text-decoration: none !important;
}

.goMairie:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: '  \f66f';
}

.goMairie:hover {
    /*border-bottom: 3px solid #F0381F !important;*/
    color: #F0381F !important;
    text-decoration: none !important;
}

.iconAddress:after{
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: ' \f5a0';
    font-size: 18pt;
    color: #F0381F;
    vertical-align: middle;
}

.iconPhone:after{
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: ' \f095';
    font-size: 18pt;
    color: #F0381F;
    vertical-align: middle;
}

.iconHour:after{
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: ' \f017';
    font-size: 18pt;
    color: #F0381F;
    vertical-align: middle;
}


.iconWeb:after{
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: ' \f5fc';
    font-size: 18pt;
    color: #F0381F;
    vertical-align: middle;
}

.ligneMairie {
    clear:both;
    display: flex;
    margin-bottom: 10px;
}

.cellIconMairie {
    padding:0;
    width: 10%;
    vertical-align: middle;
    float: left;
    margin: auto;
    text-align: right;
    padding-right: 10px;
}

.cellTextMairie {
    padding:0;
    width: 90%;
    font-family: 'gothamMedium';
    font-size: 12pt;
    color: #000;
    text-align: left;
}

.lienCommune {
    color: #000;
    text-decoration: none !important;
    width: fit-content;
}

.lienCommune:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: '  \f35d';
}

.lienCommune:hover {
    border-bottom: 3px solid #F0381F !important;
    color: #F0381F !important;

}

.lienCommune > a:hover {
    color:#F0381F !important;
    text-decoration : none !important;
}

.lienExterne {
    color: #000;
    text-decoration: none !important;
}

.lienExterne:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: '  \f35d';
}

.lienExterne:hover {
    border-bottom: 3px solid #F0381F !important;
    color: #F0381F !important;

}

.logoCommune{
    right: 40px;
    position: fixed;
    z-index: 9999;
    top: 95px;
}

.imgLogoCommune{
    width: 100px;
    height: 100px;
}

.logoCommuneSection{
    width: 100%;
    text-align: -webkit-center;
}

.imgLogoCommuneSection{
    /*max-width: 300px;
    width: 100%;
    max-height: 150px;
    height: 160px;*/
    max-height: 150px;
}


/* style affichage des TS dans les pages accueil communal */
#gestion-page-gru-content.gru-content .element-gru-notif .element-gru-header {
    display: none !important;
}

#gestion-page-gru-content.gru-content .element-gru-flipandflop .element-gru-header {
    display: block !important;
}

.element-gru-notif-content-clone {
    display: none !important;
}

.content-link-notif {
    display: block !important;
    width: 100%;
}

.section .container .row .col-lg-12 {
    padding: 0 !important;
    margin: 0 !important;
}

#gestion-page-gru-content.gru-content .element-gru, #gestion-page-gru-content.gru-content .element-gru-text {
    background-size: 100% 100%;
    min-height: unset;
    display: flex;
    align-items: center;
    position: relative;
    text-align: center;
}

#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-flipandflop) .element-gru-header {
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
    /* background-position-y: center !important; */
    /* position: absolute !important; */
    vertical-align: bottom !important;
    /* margin-top: 75%; */
    /* min-height: 25%;*/
}

#gestion-page-gru-content.gru-content .content-link-notif .notif-category-content .element-gru-flipandflop {
    padding: 0 !important;
    margin: 0 !important;
    text-align-last: left;
    height: 60px !important;
    pointer-events: all;
    flex: 1 50%;
    max-width: 49% !important;
    background-color: #d9d9d9;
    margin-right: 2px !important;
    margin-bottom: 2px !important;
    padding-left: 30px;
    border-bottom: 2px solid #d9d9d9 !important;
}

#gestion-page-gru-content.gru-content .content-link-notif .notif-category-content .element-gru-flipandflop:hover {
   
    border-bottom: 2px solid #F0381F !important;
    color: #F0381F !important;
}

.leaflet-container {
    z-index: 0;
}

.content-notif .row {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-text) {
    display: flex !important;
    align-items: center;
    text-align: center;
    width: -webkit-fill-available !important;
    pointer-events: none;

    width: 100% !important;
}

.element-gru-notif-content-clone {
    display: none !important;
}

.element-gru-header .title .gestion-page-gru-element-title:hover {
    /*border-bottom: 2px solid #F0381F !important;
    color: #F0381F !important;*/
}

.element-gru-header .title .gestion-page-gru-element-title {
    font-family: 'gothamMedium' !important;
    font-size: 14pt !important;
    color: inherit !important;
    font-weight: normal !important;
    /*line-height: 60px;*/
    /*padding-left: 65px;*/
}

.cartoucheMairie {
}

.cartoucheMairie .element-gru-header {
    display: none;
}

.noTS {
    position: relative;
    width: 100%;
    display: block;
    /*height: 50px;*/
    font-family: "gothamMedium";
    width: 98%;
    text-align-last: center;
}

noTS:hover {
    background-color: #a9a9a9;
    /*border-bottom: 2px solid #F0381F !important;*/
    color: #F0381F !important;
}

.noTS .element-gru-header {
    display: none;
}

.noTS .grid-element-gru-content {
    background-color: #d9d9d9 !important;
    padding-top: 16px;
    padding-bottom: 15px;
}

.noTS .grid-element-gru-content:hover {
    background-color: #a9a9a9 !important;
    /*border-bottom: 6px solid #F0381F !important;*/
    padding-top: 16px;
    padding-bottom: 15px;
}

.textNoTS {
    font-size: 14pt;
    font-weight: unset;
    font-family: 'gothamMedium';
    padding-bottom: 15px;
}

.noTS .grid-element-gru-content p {
    font-family: 'gothamMedium' !important;
    font-size: 14pt !important;
    text-align: left;
    /* padding: 0 !important;*/
}

/* gestion de liens directs vers une autre application */

.tuileRedirect {
    height: 60px
}

.contentLienTS {
    position: relative;
    top: -68px;
    background: none;
    background-color: transparent !important;
    padding: 0;
    margin: 0;
    border: 0;
    font-size: unset;
    font-weight: unset;
    color: inherit !important;
    padding-left: 65px;
    text-align: left;
    font-family: 'gothamMedium' !important;
    display: flex;
    align-items: center;
    background-size: inherit;
    background-repeat: no-repeat;
    overflow: hidden;
    backface-visibility: hidden;
    transform-style: preserve-3d;
    z-index: 1;
    height: 60px;
    width: 100%;
    transition: all 0.5s ease-out 0s;
}

.lienTS {
    font-size: 14pt !important;
    color: inherit !important;
    text-decoration: none !important;
    font-weight: unset;
}

.lienTS:hover {
    text-decoration : none !important;
}

.lienTS:not(.agglaeTS)::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: ' \f35d';
}

#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-text) .element-gru-header {
    width: unset;
}

/* icônes devants les catégories au sens catdemat : le style doit être appliqué au niveau des tuiles catgéorie */
.tuileEnfance:not(.element-ctg):before{
    background-image: url(img/famille.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileDechets:not(.element-ctg):before{
    background-image: url(img/propreteDechets.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileAssoEntreprises:not(.element-ctg):before{
    background-image: url(img/entrepriseCommerceAssociation.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}


.tuileVieAsso:not(.element-ctg):before{
    background-image: url(img/vieAsso.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuilePetiteEnfance:not(.element-ctg):before{
    background-image: url(img/famille.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileFamille:not(.element-ctg):before{
    background-image: url(img/famille.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileVEP:not(.element-ctg):before{
    background-image: url(img/voirieEspaceVertEclairage.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileUrba:not(.element-ctg):before{
    background-image: url(img/urbanisme.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileEtatCivil:not(.element-ctg):before{
    background-image: url(img/etatCivil.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileEauAssainissement:not(.element-ctg):before{
    background-image: url(img/eauPotablePluvialeUsee.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileSportCulture:not(.element-ctg):before{
    background-image: url(img/sportCulture.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileMobilite:not(.element-ctg):before{
    background-image: url(img/mobilite.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileEducation:not(.element-ctg):before{
    background-image: url(img/education.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}


.tuilePE:not(.element-ctg):before{
    background-image: url(img/petiteEnfance.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileE:not(.element-ctg):before{
    background-image: url(img/enfance.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileEau:not(.element-ctg):before{
    background-image: url(img/eau.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileAssainissement:not(.element-ctg):before{
    background-image: url(img/assainissement.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileTheatre:not(.element-ctg):before{
    background-image: url(img/theatre.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileMediatheque:not(.element-ctg):before{
    background-image: url(img/mediatheque.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileTransport:not(.element-ctg):before{
    background-image: url(img/transport.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileBac:not(.element-ctg):before{
    background-image: url(img/bac.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileRecycle:not(.element-ctg):before{
    background-image: url(img/recycle.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileCCAS:not(.element-ctg):before{
    background-image: url(img/ccas.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileSante:not(.element-ctg):before{
    background-image: url(img/sante.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileRDVSante:not(.element-ctg):before{
    background-image: url(img/rdvSP.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileMoustique:not(.element-ctg):before{
    background-image: url(img/moustique.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileAir:not(.element-ctg):before{
    background-image: url(img/air.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileAmbroisie:not(.element-ctg):before{
    background-image: url(img/ambroisie.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileInsalubrite:not(.element-ctg):before{
    background-image: url(img/insalubrite.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileEcrireElu:not(.element-ctg):before{
    background-image: url(img/ecrireElu.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}


.tuileParking:not(.element-ctg):before{
    background-image: url(img/parking.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}


.tuileVoirie:not(.element-ctg):before{
    background-image: url(img/voirie.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileCimetiere:not(.element-ctg):before{
    background-image: url(img/cimetiere.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileEspaceVert:not(.element-ctg):before{
    background-image: url(img/espaceVert.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileTranquillite:not(.element-ctg):before{
    background-image: url(img/tranquillite.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}


.tuileEclairagePublic:not(.element-ctg):before{
    background-image: url(img/eclairage.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileUrbanisme:not(.element-ctg):before{
    background-image: url(img/urbanisme.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileRenovation:not(.element-ctg):before{
    background-image: url(img/renovation.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileDocument:not(.element-ctg):before{
    background-image: url(img/document.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileDocumentEspaceVert:not(.element-ctg):before{
    background-image: url(img/documentEspaceVert.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.tuileRdvEC:not(.element-ctg):before{
    background-image: url(img/rdvEC.svg);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.iconeDechets:not(.element-ctg):before{
    background-image: url(img/propreteDechets.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}

.iconeVEP:not(.element-ctg):before{
    background-image: url(img/voirieEspaceVertEclairage.png);
    background-size: 3.6rem 3.6rem;
    display: inline-block;
    width: 0.5rem;
    height: 3.6rem;
    content: "";
    /* vertical-align: middle; */
    margin-right: 0px;
    margin-left: 0.05rem;
    padding-right: 50px;
    margin-top: 1px;
}


/* fin style affichage des TS dans les pages accueil communal */


/* =========================
   MENU GAUCHE – NAVIGATION ANCRES
   ========================= */

.tuileAncre .element-gru-header{
    display: none;
}

/* SUPPRESSION TOTALE DE LA BARRE ROUGE GAUCHE */
.bordureNavigationAncres{
    border-left: none !important;
    padding-left: 0 !important;
}

/* sécurité si WP injecte un fond ou pseudo-élément */
.bordureNavigationAncres::before,
.bordureNavigationAncres::after{
    content: none !important;
}

/* bouton mobile inutilisé ici */
.openNavigationAncres{
    display: none;
}

/* liste */
.navigationAncres{
    margin: 0;
    padding: 0;
    list-style: none;
}

/* liens */
.navigationAncres a{
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    border-radius: 0;
    font-family: 'gothamMedium' !important;
    font-size: 12pt;
    color: #000;
}

/* hover */
.navigationAncres a:hover{
    color: #F0381F;
    text-decoration: underline;
}

/* lien actif */
.lienVersAncreSelected{
    color: #F0381F;
    font-weight: normal;
}

/* compat widgets */
.ui-widget.ui-widget-content{
    font-size: 12pt;
}

/* fin Style pour le zone de navigation entre les ancres */

.p-2 {
    padding: 0!important;
    height: 100%;
    width: 100%
}
.body_form {
    /*display: none;*/
}

.body_form .head_form {
    border: 0 !important;
    border-bottom: 2px #C0C0C0 solid !important;
    margin: 0;
    padding: 0 !important;
    background-color: #E0E0E0 !important;
}

.body_form .head_form p {
    display: none;
}

.nom_demande {
    color: #F0381F;
    text-align: center;
}

.panel .panel-default .h4 {
    display: none;
}

.tuileAgglae {
    /*max-height: 300px !important;*/
    /*font-family: 'NeonAgglae', sans-serif!important;*/
}

.tuile {
    width: 100%;
}

.tuileCategorie {
    width: 100%;
}

.imageCategorie {
    width : 175px;
    height : 175xp;
}

.imageTuile {
    width: 175px;
    padding: 0;
    margin: 0;
}

.titreTuile {
    /*display: none !important;
    font-size: 20px !important;
    color: black !important;
    font-weight: bold;
    font-family: 'NeonAgglae', sans-serif!important;
    background-color: rgba(255, 255, 255, 0.75);
    text-align: center;
    width: 175px;
    position: absolute;
    margin-top: -23%;*/
}

.categorieTS {
    text-align: center !important;
    width: 250px;
}
/* masquage du plus d'information sur les tuiles TS */
#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-text) .grid-element-gru-content {
    width: 100%;
    display: none;
}

.tab-focus-btn {
    display: none;
}

.tuileTS {
    /*height: 45px !important;
    position: relative !important;
    min-height: unset !important;
    text-align: left !important;
    margin-left: 50px !important;
    min-width: -webkit-fill-available;
    width: -moz-available;
    margin-bottom: 15px;*/
    pointer-events: unset;
    padding: 0 !important;
    margin: 0 !important;
    text-align-last: left;
    height: 60px !important;
    pointer-events: all !important;
    flex: 1 50%;
    /*max-width: 49% !important;*/
    background-color: #d9d9d9;
    margin-right: 2px !important;
    margin-bottom: 2px !important;
    padding-left: 30px;
    border-bottom: 2px solid #d9d9d9 !important;
}

.tuileTS:hover {
    background-color: #a9a9a9;
    border-bottom: 2px solid #F0381F !important;
    color: #F0381F !important;
}

.tuileTSUnique {
    pointer-events: unset;
    padding: 0 !important;
    margin: 0 !important;
    text-align-last: center;
    height: 60px !important;
    pointer-events: all !important;
    flex: 1 100%;
    max-width: 100% !important;
    background-color: #d9d9d9;
    margin-right: 2px !important;
    margin-bottom: 2px !important;
    padding-left: 30px;
    border-bottom: 2px solid #d9d9d9 !important;
}

.tuileTSUnique:hover {
    background-color: #a9a9a9;
    border-bottom: 2px solid #F0381F !important;
    color: #F0381F !important;
}

.blocTSDirect {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

.postIt {
    top: 260px;
    display: block;
    position: fixed;
    width: 15%;
    display: none;
}

#gestion-page-gru-content.blocTSDirect .gru-content .element-gru:not(.element-gru-text) {
    pointer-events: unset;
}

#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-text) .element-gru-header {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    padding: 15px 5px;
    color: inherit !important;
    background-color: transparent !important;
}

#gestion-page-gru-content.gru-content .element-gru .back .back_body {
    /*width: 100%;
    height: 100%;
    padding-top: 10%;*/
    display: none;
}

#gestion-page-gru-content.gru-content .element-gru .front, #gestion-page-gru-content.gru-content .element-gru .back {
    /* width: 100% !important;
    height: 100% !important;
    position: relative!important;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;*/
}

#gestion-page-gru-content.gru-content .element-gru .back {
    display: none !important;
}

#gestion-page-gru-content.gru-content .element-gru .back .back_header {
    /*width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    font-weight: bold;
    text-align: right;*/
    display: none;
}

.categorieTS .grid-element-gru-content .title {
    text-align: center !important;
}

#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-text) .element-gru-header {
    background-color: white;
    padding: 0px;
    position: relative;
    padding-left: 5px;
}

#gestion-page-gru-content.gru-content .element-gru .element-gru-header .title, #gestion-page-gru-content.gru-content .element-gru .element-gru-header .title .gestion-page-gru-element-title, #gestion-page-gru-content.gru-content .element-gru-text .content-text .element-gru-header .title .gestion-page-gru-element-title {
    /*font-size: 20px !important;
    color: black !important;
    background: transparent !important;
    font-weight: bold;
    text-align: inherit;
    font-family: 'Lato', sans-serif!important;*/
    text-align: left;
}

#gestion-page-gru-content.gru-content .element-gru .element-gru-header .title .gestion-page-gru-element-title:hover {
    /*text-decoration: underline;*/
}

#gestion-page-gru-content.gru-content .element-gru button:focus, #gestion-page-gru-content.gru-content a:hover {
    /*text-decoration: underline !important;*/
}
#gestion-page-gru-content.gru-content .element-gru button:focus, #gestion-page-gru-content.gru-content a:focus {
    /*outline: 0px dashed black !important;
    outline-offset: 0em !important;*/
}

#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-flipandflop) .element-gru-header .title:hover{
    /*font-size: 20px !important;
    color: red !important;
    background: transparent !important;
    font-weight: bold;
    text-align: center;
    font-family: 'Lato', sans-serif!important;*/
}
#gestion-page-gru-content.gru-content .element-gru:not(.element-gru-flipandflop) .element-gru-header .title{
    background: none;
    background-color: transparent !important;
    padding: 0;
    margin: 0;
    border: 0;
    font-size: unset;
    font-weight: unset;
    text-align: unset;
    color: inherit !important;
    padding-left: 5px;
    text-align: left;
}

gestion-page-gru-content.gru-content .element-gru .element-gru-header .title, #gestion-page-gru-content.gru-content .element-gru .element-gru-header .title .gestion-page-gru-element-title, #gestion-page-gru-content.gru-content .element-gru-text .content-text .element-gru-header .title .gestion-page-gru-element-title {
    /*font-size: 18px;
    font-weight: bold;
    text-align: left;*/
}

.section {
    display: inline-block;
    width: 100%;
    scroll-margin-top: 2em !important;
    background-color: transparent;
}

.row {
    margin-left: 0;
    margin-right: 0;
    /*margin-bottom: -10px !important;*/
    width: -webkit-fill-available;
    width: -moz-available;
}

.container_formulaire .panel-default {
    margin-top: 10px;
    float: left;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    border-left: 1px solid #c0c0c0;
    /* border-bottom: 1px solid #1C6EA4; */
    /* border-radius: 16px; */
    /*border-radius: 0px 0px 0px 16px;*/
    border-radius: 0px 0px 0px 0px;
    border-bottom: 1px solid #c0c0c0;
}

.custom-combobox {
    position: relative;
    display: unset !important;
}

/* Carte leaflet */
.leaflet-container.leaflet-touch-drag {
    /*height: 300px !important;*/
    margin-bottom: 15px;
}

.col-sm-2 {
    font-family: 'Lato', sans-serif;
}

.help-block {
    font-style: italic;
}

hr {
    border: none;
}

/*logo*/
.logoAgglae{
    z-index: 10000;
    position: fixed;
    z-index: 10000;
    top: 5px;
    width: 300px;
    display: flex;
}

.logoAgglae img{
    height: 160px;
    /*width: 247px;*/
}

.logo-background{
    background-color: #e52713;
    width: 368px;
    height: 81px;
    display: block;
    top: 11px !important;
    position: relative;
    z-index: -22;
    width: 25%;
}

.logo-background h1{
    /*font-size: 50px;
    font-family: 'Lato', sans-serif!important;
    font-family: 'NeonAgglae', sans-serif!important;*/
}

.logo-background h1 a{
    color: white!important;
    text-decoration: none;
}

.ctg-childs {
    background-color: inherit !important;
}

.logo-container{
    position: fixed;
    z-index: 150;
    top: 0;
    left: 0;
    padding: 0;
    margin: 0;
    width: 100%;
}

.col-xs-2 {
    font-family: 'gothamMedium' !important;
}

.sticky {
    position: fixed;
    top: 0;
    /* width: 100%; */
    right: 0;
}

/*menu sticky*/
.sticky + .site{
    padding: 0!important;
}

.container {
    margin-left: 0px !important;
    margin-right: 0px !important;
    padding: 0;
    max-width: 100%;
}
/*MAIN SECTION*/
#gestion-page-gru-content h1, #gestion-page-gru-content h2, #gestion-page-gru-content h3, #gestion-page-gru-content h4, #gestion-page-gru-content h5, #gestion-page-gru-content h6,
#gestion-page-gru-content span, #gestion-page-gru-content p, #gestion-page-gru-content a, #gestion-page-gru-content input, #gestion-page-gru-content label, #gestion-page-gru-content button{
    /*font-family: 'Lato', sans-serif;*/
    font-family: 'gothamMedium' !important;
}
#gestion-page-gru-content.gru-content .section > .container > .row {
    margin-bottom: 0px;
}

.site-main-header{
    /*margin-top: 10rem!important;*/
    margin-right: 0px;
    margin-left: 0px;
    padding: 0px 0px 0px 0px !important;
    /*margin-bottom: 4.1rem !important;*/
    margin-top: 180px !important;
}

.site-main{
    margin-top: 0rem!important;
    margin-right: 0px;
    margin-left: 0px;
    padding: 0px 0px 0px 0px !important;
    /*margin-bottom: 4.1rem !important;*/
}

section.section{
    /*background-color: white!important;*/
}

.entry-header{
    display: none;
}

.default-date-picker {
    width: 95px !important;
    min-width: 125px;
}

.form-group {
    float: left;
    width: 100%;
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    margin-top: 0px !important;
    margin-bottom: 20px !important;

}

.control-label {
    /*white-space: nowrap;*/
    padding-bottom: 3px;
}

#FormDmd .col-lg-4 {
    width: 100% !important;
    min-width: 100%!important;
}

.detail-label {
    /*white-space: nowrap;*/
}

.detail-champ {
    font-family: 'gothamMedium';
    font-size: 12pt;
}

.container_formulaire .btn-info {
    /*float: unset !important;*/
    margin-left: 10px !important;
}

#gestion-page-gru-content.gru-content .section{
    /*padding: 0; */
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 45px;
}

#gestion-page-gru-content .box-shadow-gru{
    box-shadow: 0px 0px 0px!important;
}

/* 1) Phrase d'aide */
#agg-status{
  font-size: 1.2rem;     /* ajuste si besoin */
  font-weight: 700;
  margin: 0 0 14px 0;    /* espace sous la phrase */
}

/* 2) Remonter la liste déroulante (et l’éloigner de “Thématiques”) */
.agg-commune-select-wrapper{
  margin-top: -12px;     /* remonte le bloc select */
  margin-bottom: 24px;   /* espace avant Thématiques */
}

/* optionnel, pour un rendu plus propre du select */
#agg-commune-select{
  display: block;
  width: 100%;
}



/*EN-TETE ACCUEIL*/
#gestion-page-gru-content.gru-content .element-gru, #gestion-page-gru-content.gru-content .element-gru-text{
    background-repeat: no-repeat;
    background-size: cover;
    /*height: 68vh;*/
    /*width: 250px;*/
}



.color-red{
    content: "";
    color: red;
    widows: 50px;
    height: 2px;
}

.texteAgglae{
    font-family: 'gothamMedium';
    width: 100%;
    font-weight: 500!important;
    font-size: 11pt!important;
    text-align: justify;
}

.lienMention {
    color: var(--colorRouge);
    font-weight: bold;
}

.lienMention:after {
    content : " \f0a9";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    font-size: 15px;
}

.lienUp {
    color: var(--colorRouge);
    text-decoration: none;
}

.lienUp:hover {
    color: var(--colorRouge);
    text-decoration: none;
}

.lienUp:after {
    content : "[\f3bf]";
    font-family: "Font Awesome 5 Free";
    color: #e52713;
    font-weight: 600;
    font-size: 27px;
}

.lienRetour {
    font-size: 20px !important;
    color: black !important;
    background: transparent !important;
    font-weight: bold;
    text-align: inherit;
    font-family: 'Lato', sans-serif!important;
}

.lienRetour:hover {
    text-decoration: underline;
}

.lienDeco {
    font-size: 20px !important;
    color: black !important;
    background: transparent !important;
    font-weight: bold;
    text-align: inherit;
    font-family: 'Lato', sans-serif!important;
}

.lienDeco:hover {
    text-decoration: underline;
}

i.fas.fa-arrow-circle-left {
    position: relative;
    /*vertical-align: text-top;*/
    font-size: 20px;
}

i.fas.fa-sign-out-alt {
    /*position: relative;
    vertical-align: text-top;
    font-size: 20px;*/
}

.enteteAgglae {
    position: relative;
    top: -22px!important;
    display: block;
    margin-left: -15px;
    margin-right: -15px;
    max-height: 300px;
}

.contentImageAgglae{
    max-height: 300px;
    background-repeat: no-repeat;
    /* background-size: auto; */
    background-size: cover;
    min-height: 300px;
}

.imageAgglae{
    max-height: 300px;
    min-width: 100%;
}

.imgAgglaeLien {
    padding: 0px 0px 0px 0px;
    background-size: 0px 0px!important;
    width: 175px!important;
    height: 175px!important;
    max-width: unset;
}

.imgAgglaeLien:hover {
    background-size: 175px 175px !important;
    width: 0px!important;
    height: 0px!important;
    padding: 175px 175px 0px 0px;
    max-width: unset;
}

.fondAgglae{
    background-color: rgba(255, 255, 255, 0.30);
    width: 484px;
    position: absolute;
    top: 0;
    display: block;
    padding-top: 20px;
    padding-right: 5px;
    height: -webkit-fill-available;
    height: -moz-available;
    /*top: -5px;*/
    max-width: 25%;
    min-width: 25%;
}

.accrocheAgglae{
    font-family: 'Lato', sans-serif!important;
    width: 100%;
    font-weight: 500!important;
    font-size: 15px!important;
    text-align: right;
}

/* Box d'alerte */
#gestion-page-gru-content #gestion-gru-ajax-msg {
    position: unset;
}

#gestion-gru-ajax-msg {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    /*margin: auto !important;
    top: 0;
    bottom: 0;*/
    top:50%;
    height: fit-content;
    height: -moz-fit-content;
}
#gestion-page-gru-content #gestion-gru-ajax-msg div.notice {
    /* width: 500px; */
    font-size: 14pt;
    text-align: center;
    border-radius: 5px;
    color: white;
    /* right: 0; */
    /* top: 7%; */
    /* position: fixed; */
    /*z-index: 10000000000;
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 450px ! important;*/
    height: fit-content;
    /*margin: auto !important;
    max-height: fit-content;*/
    height: -moz-max-content;
    right: unset;
    top: unset;
}

#gestion-page-gru-content #check_connexion_response_infos div.notice.error, #gestion-page-gru-content #gestion-gru-ajax-msg div.notice.error {
    background: #dd3d36;
    border-color: #dd3d36;
    position: absolute;
}

#gestion-page-gru-content #check_connexion_response_infos div.notice.updated, #gestion-page-gru-content #gestion-gru-ajax-msg div.notice.updated {
    background: #69b133;
    border-color: #69b133;
    position: absolute;
}

#gestion-page-gru-content #gestion-gru-ajax-msg div.notice.infos {
    background: #ffba00;
    border-color: #ffba00;
    position: absolute;
}


#gestion-page-gru-content #gestion-gru-ajax-msg div.notice.infos:has(> p:empty) {
    display:none;
}

/* Formulaire TS */
form#creer_individu .gru-icon-button {
    background-color: var(--colorRouge)!important;
    color: white !important;
    border-radius: 10px 10px 10px 10px !important;
    height: 40px!important;
    width: 100px !important;
    font-weight: bold;
}

form#creer_individu .gru-icon-button:hover {
    text-decoration : underline !important;
}

.col-lg-8 {
    min-width: 100%;
}

.container_formulaire h3 {
    padding-top: 10px;
    text-decoration: none !important;
    /*text-align: center;
    color: #F0381F;*/
}

.required {
    color: red !important;
    font-family: "gothamBlack";
}

#gestion-page-gru-content.gru-content .panel.panel-default#step_container, #gestion-page-gru-content.gru-content .container_formulaire .head_form, #gestion-page-gru-content.gru-content .iconbox_content, #gestion-page-gru-content.gru-content form#creer_compte, #gestion-page-gru-content.gru-content form#creer_entite, #gestion-page-gru-content.gru-content form#creer_individu, #gestion-page-gru-content.gru-content form#modifier_compte, #gestion-page-gru-content.gru-content form#mot_de_passe_oublie, #gestion-page-gru-content.gru-content form#modifier_mot_de_passe {
    -webkit-box-shadow: 0px 0px 0px 0px var(--colorJaune) !important;
    -moz-box-shadow: 0px 0px 0px 0px var(--colorJaune) !important;
    box-shadow: 0px 0px 0px 0px var(--colorJaune) !important;
    border: solid 1px black;
    /*margin-top: 2%;
    padding: 20px 20px 20px 20px;*/
    margin-top: 0%;
    padding: 0px 20px 20px 20px;
    background-color: #FFF;
}

.btn-info {
    color: #fff;
    background-color: #F0381F;
    border-color: #F01800;
}

.col-lg-6 {
    font-family: 'Lato', sans-serif!important;
}

label[for="etat_individu"] {
    display:none;
}
select#etat_individu {
    display: none !important;
}


.panel-title {
    display: block !important;
    /*font-family: 'Lato', sans-serif !important;*/
    font-size: 12pt !important;
    margin-left: 5px;
    /*margin-top: -18px !important;*/
    text-decoration: underline;
}
div#step_container h4 {
    display: none;
    /* position: absolute; */
}

.return_link {
    display: none;
    position: absolute;
}
.panel-body {
    /*color: var(--colorBleu);*/
    /*font-weight: 600;*/
    /*font-family: 'Lato', sans-serif!important;*/
    font-family: 'NeonAgglae', sans-serif!important;
    /*display: none;*/
    /*position: absolute;*/
    /*margin-top: -20px;*/

}

.container_formulaire {
    /*margin-top: 60px !important;*/
}

.communeLink a {
    color: #aaa;
}

.communeLink a:hover {
    color: var(--colorBleu);
}

.carte-nav polygon.com {
    fill: #aaa;
    transition: fill .3s ease-out;
    position: relative;
}

.carte-nav polygon.com:hover {
    fill: #e52713;
    transition: fill .5s ease-out;
}


.iconbox_icon {
    background-color: var(--colorRose)!important;
    color: #ffffff!important;
    border-color: var(--colorRose)!important;
    padding: 9px !important;
}

.iconbox_content {
    border-color: var(--colorRose) !important;
}

.iconbox_content_container h2 {
    color: var(--colorRose) !important;
    margin-top: 30px !important;
}

.iconbox_content h2 {
    color: var(--colorRose) !important;
    margin-top: 30px !important;
}

.btn-secondaire {
    color: white !important;
    padding: 12px 25px 12px 25px!important;
    font-weight: bold;
}

.btn-secondaire:hover {
    color: black !important;
    font-weight: bold;
}
.fa-bars {
    color: #FFF !important;
    font-size: 35pt !important;
}

.button {
    /*background-color: var(--colorRouge)!important;
    color: white !important;
    border-radius: 10px 10px 10px 10px !important;
    height: 40px!important;
    width: 100px !important;
    font-weight: bold;*/
    background-color: #d9d9d9 !important;
    width: 30% !important;
    font-family: 'gothamMedium' !important;
    color: #000 !important;
    border-bottom: 2px solid #d9d9d9 !important;
    font-weight: unset ! important;
    text-decoration: none;
}

.button:hover {
    /*text-decoration : underline !important;*/
    color: #F0381F !important;
    text-decoration: none;
    border-bottom: 2px solid #F0381F;
    background-color: #a9a9a9 !important;
    border-color: unset !important;
    font-weight: unset ! important;
}



.login-submit .button {
    /*width: 150px !important;*/
}

.iconbox_content .button {
    /*background-color: var(--colorRose) !important;*/
}

a:focus {
    outline: 0px !important;
    outline-offset: 0em !important;
}


.lien_mdp_oublie {
    color: #000 !important;
}

.lien_mdp_oublie:hover {
    color: #F0381F !important;
    text-decoration: underline;
}


.lien_creer_compte {
    color: #000 !important;
}

.lien_creer_compte:hover {
    color: #F0381F !important;
    text-decoration: underline;
}

.fa-user:before {
    content: "\f007";
    color: #F0381F;
}

.creer_compte {
    border-color: var(--colorRose) !important;
}

/* masquage des titres h3 dans le cas de la création de compte notamment */
.col-lg-9 h3 {
    display: none;
}

























.icon-foot{
    margin-right: 3px;
}







@media screen and (max-width: 1500px){
.bordureNavigationAncres {
        left: 80px;
    }
}

@media screen and (max-width: 1350px){
.entry .entry-content, .entry .entry-summary {
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .col-lg-1 {
        display: none;
    }

    .texteIntro {
        font-size: 13pt;
    }
    #main_nav > ul > li {
        font-size: 13pt;
    }
    .nav-connexion {
        font-size: 13pt;
    }
    #main_nav .menu-right {
        top: 0px !important;
    }

    #main_nav > ul > li:nth-child(1):after {
        background-size: 30px 30px;
        width: 30px;
        height: 30px;
        margin-right: 1px;
        margin-left: 1px;
        margin-top: -5px;
    }
    #main_nav > ul > li:nth-child(2):after {
        background-size: 30px 30px;
        width: 30px;
        height: 30px;
        margin-right: 1px;
        margin-left: 1px;
        margin-top: -5px;
    }

    #main_nav > ul > li:nth-child(3):after {
        background-size: 30px 30px;
        width: 30px;
        height: 30px;
        margin-right: 1px;
        margin-left: 1px;
        margin-top: -5px;
    }
    .lienAccueilAgglae {
        font-size: 30pt;
    }
    .lienVersAncre {
        font-size: 11pt;
    }
}

@media screen and (max-width: 1250px){
.categorie {
        font-size: 13pt;
        line-height: 50px;
        height: 50px !important;
    }

    .pictoCategorie {
        width: 50px;
        height: 50px;
    }

    .initiale {
        font-size: 13pt;
    }
    .ville {
        font-size: 13pt;
    }

    .entry .entry-content, .entry .entry-summary {
        max-width: 100%;
        margin: 0 0;
        padding: 0px 5px !important;
    }

    .bordureNavigationAncres {
        left: 15px;
    }
}

@media screen and (max-width: 1030px){
.texteIntro {
        font-size: 13pt;
    }
    #main_nav > ul > li {
        font-size: 13pt;
    }
    .nav-connexion {
        font-size: 13pt;
    }
    #main_nav .menu-right {
        top: 0px !important;
    }

    #main_nav > ul > li:nth-child(1):after {
        background-size: 30px 30px;
        width: 30px;
        height: 30px;
        margin-right: 1px;
        margin-left: 1px;
        margin-top: -5px;
    }
    #main_nav > ul > li:nth-child(2):after {
        background-size: 30px 30px;
        width: 30px;
        height: 30px;
        margin-right: 1px;
        margin-left: 1px;
        margin-top: -5px;
    }

    #main_nav > ul > li:nth-child(3):after {
        background-size: 30px 30px;
        width: 30px;
        height: 30px;
        margin-right: 1px;
        margin-left: 1px;
        margin-top: -5px;
    }
    .lienAccueilAgglae {
        font-size: 25pt;
    }
}

@media screen and (max-width: 991px) {
#gestion-page-gru-content.gru-content .element-gru {
        margin-top: 0px !important;
    }
}
@media screen and (max-width: 970px){
.lienAccueilAgglae {
        display: none;
    }

    .texteIntro {
        font-size: 11pt;
    }
}

@media screen and (max-width: 930px){
.categorie {
        font-size: 12pt;
        line-height: 40px;
        height: 40px !important;
        flex: 0 49%;
        margin-right: 5px !important;
        margin-bottom: 5px !important;
    }
    .pictoCategorie {
        width: 40px;
        height: 40px;
    }

    .listeCategories {
        margin-top: 0px;
    }

    .listeInitiales {
        margin-top: 0px;
    }
}




@media screen and (max-width: 830px){
#main_nav > ul > li {
        font-size: 11pt;
    }
    .nav-connexion {
        font-size: 11pt;
    }
    #main_nav .menu-right {
        top: 0px !important;
    }

    .lienAccueilAgglae {
        display: none;
    }
}

@media screen and (max-width: 768px){
body:before {
        content: "";
        background: none;
        opacity: unset;
        top: unset;
        left: unset;
        bottom: 0;
        right: 0;
        position: unset;
        background-repeat: unset;
    }

    .sectionAgglaeTitre {
        display: none;
    }

    .sectionAgglae {
        margin-bottom:25px;
    }

    .sectionAgglaeSousTitre {
        margin-left: 0px;
    }

    .listeCategories {
        margin-top: 0px;
    }

    .listeInitiales {
        margin-top: 0px;
    }

    .col-lg-1 {
        display: none;
    }

    .tuileTS {
        flex: 1 100%;
        max-width: 100% !important;
    }

    #gestion-page-gru-content.gru-content .content-link-notif .notif-category-content .element-gru-flipandflop {
        flex: 1 100%;
        max-width: 100% !important;
    }

    #gestion-page-gru-content.gru-content .section > h2 {
        padding-left: 5px;
    }

    #gestion-page-gru-content.gru-content .section > h2:before {
        margin-left: 5px;
    }

    content.gru-content .element-gru {
        margin-top: 0px !important;
    }

    .sectionAgglaeSousTitreRetour {
        margin-left: 0px;
    }

    .logoAgglae {
        position: fixed;
        z-index: 9999;
        top: 0px;
        background-color: #F0381F;
        margin-left: 15% !important;
        margin-right: 15% !important;
        width: 70%;
        text-align: -webkit-center;
    }

    .logoAgglae a {
        margin-right: auto;
        margin-left: auto;
    }

    .logoLink {
        content:url(img/logoAgglaeResponsive.png);
        width: 94px;
        margin-left: 0px;
        padding-top: 3px;
        padding-bottom: 3px;
    }

    .sloganAgglae {
        display: none;
    }

    .barreOrange {
        display: none;
    }
    .categorie {
        font-size: 12pt;
        line-height: 40px;
        height: 40px !important;
        flex: 0 98%;
        margin-right: 5px !important;
        margin-bottom: 5px !important;
    }
    .pictoCategorie {
        width: 40px;
        height: 40px;
    }
    .site-content {
        margin-right: auto;
        top: -75px;
        position: relative;
        width: 100%;
        margin-left: auto;
    }

    .entry .entry-content, .entry .entry-summary {
        max-width: calc(100% - (1 * 1rem)) !important;
        margin: 0 0.5rem !important;
    }

    .col-lg-10 {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0;
        margin: 0;
    }

    #main_nav {
        position: fixed !important;
        /* display: flex; */
        width: 100% !important;
        z-index: 1000;
        border-bottom: 1px solid grey;
        justify-content: center;
        height: 90px !important;
        background-color: #F0381F;
    }

    #menu-primary-menu {
        display: block;
        position: absolute;
        left: 0;
        top: 84px !important;
        width: 100%;
    }

    #main_nav .icon {
        position: fixed;
        left: 5px;
        display: block !important;
        font-size: 18pt !important;
        padding-top: 0px !important;
        color: #FFF;
        align-self: center;
    }

    .nav-connexion {
        font-size: 0pt;
    }

    .nav-connexion i {
        color: #FFF !important;
        font-size: 35pt !important;
        margin: 0!important;
        display: block !important;
        position: fixed;
        right: 5px;
        margin-top: 22px !important;
        margin-bottom: 22px !important;
    }

    #main_nav .menu-right > span > div >div {
        display: none;
    }

    .fondNavigWhite {
        height: 82px;
    }

    #main_nav ul {
        display: none !important;
    }

    #main_nav.responsive ul {
        display: block !important;
        position: fixed;
    }

    #main_nav.responsive ul li {
        float: left !important;
        background-color: #F0381F !important;
        margin: 0;
        padding: 0 20px !important;
        border-bottom: 1px solid #fff;
        width: 100% !important;
    }

    #main_nav #menu-primary-menu > li > a {
        border-bottom: 5px solid transparent !important;
        color: #FFF !important;
        vertical-align: middle;
        line-height: 30px !important;
    }

    #main_nav #menu-primary-menu > li > a:hover {
        border-bottom: 5px solid transparent !important;
        color: #999999 !important;
        vertical-align: middle;
        line-height: 30px !important;
        border-bottom: unset !important;
    }

    #main_nav > ul {
        background-color: transparent !important;
        height: unset !important;
        border-top: 1px solid #FFF;
    }

    #main_nav > ul > li:nth-child(2):after {
        background-image: unset;
        background-size: unset;
        display: unset;
        width: unset;
        height: unset;
        content: "";
        vertical-align: unset;
        margin-right: unset;
        margin-left: unset;
    }

    #main_nav > ul > li:nth-child(1):after {
        background-image: unset;
        background-size: unset;
        display: unset;
        width: unset;
        height: unset;
        content: "";
        vertical-align: unset;
        margin-right: unset;
        margin-left: unset;
    }

    #main_nav > ul > li:nth-child(3):after {
        background-image: unset;
        background-size: unset;
        display: unset;
        width: unset;
        height: unset;
        content: "";
        vertical-align: unset;
        margin-right: unset;
        margin-left: unset;
    }

    .fa-power-off:before {
        content: "\f2f6";
    }
    .fa-sign-out-alt:before {
        display:block;
        content: "\f2f5";
    }
  
    #main_nav .menu-right {
        top: unset !important;
    }

    .lienAccueilAgglae {
        display: none;
    }

    .bordureNavigationAncres {
        left: 35px;
        background-color: #FFF;
        width: 45%;
        top: 130px;
        display: none;
    }

    .openNavigationAncres {
        font-family: "Font Awesome 5 Free";
        color: #FFF;
        font-weight: 900;
        font-size: 15pt;
        background-color: #F0381F;
        border-radius: 18px;
        width: 35px;
        height: 35px;
        display: block;
        text-align: -webkit-center;
        position: fixed;
        top: 95px;
        z-index: 101;
    }

    .hide-mobile {
        display: none;
    }
}

@media screen and (max-width:  480px){
.site-content {
        margin-right: auto;
        top: -75px;
        position: relative;
        width: 396px;
        margin-left: auto;
    }

    .logoAgglae {
        position: fixed;
        z-index: 9999;
        top: 0px;
        background-color: #F0381F;
        margin-left: 35% !important;
        margin-right: 35% !important;
        width: 30%;
        text-align: -webkit-center;
    }
}


/* Start Accessibility CSS*/

#main_nav .has-submenu button {
    background-color: transparent;
    border: none;
    line-height: 1;
    padding: 0;
    margin-left: 7px;
}

#main_nav .has-submenu button > span {
    display:inline-block;
    width: 8em !important;
    height: 8em !important;
    background: url(./../images/dropdown-active.png) #fff;
}

#main_nav .has-submenu button:focus {
    outline: 1px dashed black;
    outline-offset: 0.2em;
}


/*
Donner de la marge à une page de contenu
*/
select#list_piece:focus, .btn.btn-default:focus{
    outline: solid 2px #3498db;
}
.icon button:focus {
    outline: dashed;
}

.icon button {
    border: none;
    background: #ffffff;
}
.site-main {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 5rem;
    margin-bottom: 5rem;
}
.entry .entry-header {
    margin: calc(3 * 1rem) 1rem 1rem;
    position: relative;
}

@media only screen and (min-width: 768px) {
.entry .entry-header {
        margin: calc(3 * 1rem) calc(10% + 60px) 1rem;
    }
}

.entry .entry-content,
.entry .entry-summary {
    max-width: calc(100% - (2 * 1rem));
    margin: 0 1rem;
}

@media only screen and (min-width: 768px) {
.entry .entry-content,
    .entry .entry-summary {
        max-width: 100%;
        margin: 0 0;
        padding: 0 60px;
    }
}


/* Accessibility */
/* Text meant only for screen readers. */
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: relative !important;
    width: 1px;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 0;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: 99%;
    margin: 0 auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

div.screen-reader {
    height: 0px;
}

/* Do not show the outline on the skip link target. */
#top[tabindex="-1"]:focus {
    outline: 0;
}

/* Menu */
.gestion-page-gru-ctg-menu a:focus,
.menu-right a:focus {
    outline: 2px dotted #4b4b4b;
}


a.button:focus, input.button:focus {
    background-color:  #c3512f;
    color: #ffffff;
    border-color: #a1300d;
    text-decoration: underline;
}

a:focus {
    color: #c3512f;
    text-decoration: underline;
}

/* visually hidden */



/* FO main menu */

#main_nav {
    display:table;
    width:100%;
    z-index: 1000;
    border-bottom: 1px solid grey;
}
#main_nav > ul {
    margin: 0;
    padding: 0;
    display:flex;
    background-color: #FFF;
    color: #fff;
    height: 90px;
    font-size: medium;
    justify-content: center;
}
#main_nav > ul > li {
    display:flex;
    text-align: center;
    position:relative;
    align-self: center;
    text-transform: uppercase;
    margin: 0 18px;
    padding: 0 0px;
    width: auto;
}

/*
Fix IE11
 */
@media all and (-ms-high-contrast:none)
{
/* IE11 */
    *::-ms-backdrop, #main_nav #menu-primary-menu > li > a {
        border: 0;
        border-bottom: 5px solid transparent;
        font-size: 18px;
    }
}

#main_nav #menu-primary-menu > li > a {
    line-height: 85px;
    border: 0;
    border-bottom: 5px solid transparent;
    font-size: 18px;
}
#main_nav #menu-primary-menu > li > a:hover,
#main_nav #menu-primary-menu > li > a:focus {
    border-bottom: 5px solid #047cc3;
    color: #000 !important;
}
#main_nav #menu-primary-menu a.selected {
    border-bottom: 5px solid #047cc3;
    color: #047cc3;
}
#main_nav a,
#main_nav .current {
    flex:1;
    display: block;
}
#main_nav a {
    color: #000000;
    text-decoration: none;
}
#main_nav a:focus {
    outline: 1px dashed black;
    outline-offset: 0.2em;
}
#main_nav .current {
    background-color: #bbb;
    color: #000 !important;
    border-color: #444;
}
/*submenu*/
#main_nav .ctg-childs {
    display: none;
    width: 100%;
    height: 88px;
    border-top: 2px solid #efefef;
    position: fixed;
    left: 0;
    background: white;
    z-index: 100;
    margin: 0;
    top: 90px;
    -webkit-box-shadow: 0px 20px 20px -15px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 20px 20px -15px rgba(0,0,0,0.75);
    box-shadow: 0px 20px 20px -15px
    rgba(0,0,0,0.75);
    transition: 0.3s ease;
}
#main_nav > ul > li .ctg-childs.show {
    display: flex;
    justify-content: center;
    align-items: center;
}
#main_nav .ctg-childs  li {
    margin: 0;
    padding: 0 30px;
}
#main_nav .ctg-childs  li a {
    line-height: 83px;
    border: 0;
    border-bottom: 5px solid transparent;
    font-size: 18px;
}
#main_nav .ctg-childs  li a:hover,
#main_nav .ctg-childs  li a:focus {
    border-bottom: 5px solid #047cc3;
    color: #000 !important;
}
#main_nav .ctg-childs  li a.selected {
    border-bottom: 5px solid #047cc3;
    color: #047cc3;
}

#main_nav .has-submenu button {
    background-color: transparent;
    border: none;
    line-height: 1;
    padding: 0;
    margin-left: 7px;
}

#main_nav .has-submenu button > span {
    display:inline-block;
    width: .8em;
    height: .8em;
    background: url(./../images/dropdown-active.png) #fff;
}

#main_nav .has-submenu button:focus {
    outline: 1px dashed black;
    outline-offset: 0.2em;
}



/* menu icon for small sceen */


#main_nav .icon {
    display: none;
}

@media screen and (max-width: 768px) {
#main_nav ul li {display: none;}

    #main_nav .icon {
        float: right;
        display: block;
        font-size: 27px;
        padding-top: 30px;
    }

    #main_nav {
        position: relative;
        display: flex;
        width: 100%;
        z-index: 1000;
        border-bottom: 1px solid grey;
        height: 90px;
        justify-content: center;
    }

    #main_nav > ul > li > ul {
        display: none;
        position: relative;
        top:100%;
        padding:0;
        margin:0;
        background-color: #FFF;
        z-index: 1000;
    }

    #main_nav .site-logo {
        padding: 0 !important;
        top: -3px !important;
    }

    /* set vertical spacing for blocks displayed in flex with "row" and "col-*" */
    section.section > div.container > div.row {
        padding: 5px;
    }

    section.section > div.container > div.row > div[class^="col-"] {
        margin: 5px;
    }
}

@media screen and (max-width: 768px) {
.mobile {
        display:flex!important;
        background-color: transparent!important;
    }
    .burger {
        z-index:1000;
    }
    #main_nav.responsive {
        position: relative;
        display: flex!important;
        width: 100%;
        z-index: 1000;
        border-bottom: 1px solid grey;
        justify-content: center;
        height: 90px;
        flex-direction:column;
    }

    #main_nav.responsive > ul{
        display: contents!important;
    }
    #main_nav.responsive .icon {
        float: right;
        display: block;
    }



    #main_nav.responsive ul li {
        float: none;
        display: flex;
        flex-wrap: wrap;
        text-align: left;
        width: 100%;
        background-color: #ffffff;
        margin: 0;
        padding: 0 20px;
        border-bottom: 1px solid #fff;
    }

    /* a link first level */
    #main_nav.responsive  > ul > li  > a {
        flex: 1 1 90%;
        /*width: 90px;*/
        line-height: 30px;
        padding: 10px 0;
        border: 0;
        color: #fff;
    }
    #main_nav #menu-primary-menu > li > a:hover, #main_nav #menu-primary-menu > li > a:focus {
        background: transparent;
        border: 0;
        color: #fff;
    }

    /* button for access sub menu */
    #main_nav.responsive  > ul > li  > button {
        /*width: 10%;*/
        flex: 1 1 5%;

        margin: 1px;
    }

    /* block sub menu */
    #main_nav.responsive  > ul > li  > ul {
        flex: 0 0 100%;
        border: 0;
        box-shadow: none;
        margin: 1px;
    }

    /* bloc sub menu */
    #main_nav.responsive > ul > li > ul {
        display: none;
        position: relative;
        /*flex-direction: column;
        flex-basis: 100%;*/
        top:100%;
        padding: 0 0 15px;
        margin:0;
        background: transparent;
        z-index: 1000;
    }

    #main_nav.responsive > ul > li > ul > li {
        border: 0;
    }
    #main_nav.responsive > ul > li > ul a{
        line-height: normal;
        padding: 15px 0;
        text-transform: none;
        border: 0;
        color: #fff;
    }
    #main_nav.responsive .has-submenu > a:after {
        margin-left: 5px;
        line-height: 14px;
        content: '';
    }
    #main_nav.responsive .has-submenu:hover > a:hover:after,
    #main_nav.responsive .has-submenu > a:focus:after {
        content: '';
    }

    #main_nav.responsive .has-submenu button {
        background-color: transparent;
        border: none;
        line-height: 1;
        padding: 3px;
    }

    #main_nav.responsive .has-submenu button > span {
        display:inline-block;
        width: .8em;
        height: .8em;
        background: url(./../images/dropdown-inactive.png) center no-repeat;
    }

    #main_nav.responsive .has-submenu:hover button > span,
    #main_nav.responsive .has-submenu button:focus > span {
        background: url(./../images/dropdown-active.png);
    }

    #main_nav.responsive .has-submenu button,
    #main_nav.responsive .has-submenu a:focus + button {
    }
    #main_nav.responsive .has-submenu:hover button,
    #main_nav.responsive .has-submenu button:hover,
    #main_nav.responsive .has-submenu button:focus {
        border: 0;
    }
}

/* Sticky menu */
/* The sticky class is added to the main_nav with JS when it reaches its scroll position */
.sticky {
    position: fixed;
    top: 0;
    width: 100%;
}

.sticky + .site {
    padding-top: 60px;
}

/* menu right */
#main_nav .menu-right{
    padding: 16px 5px;
    float: right;
    display: flex;
    align-items: center;
    text-align: center;
    text-transform: uppercase;
    position: absolute;
    right: 0;
    top: 0;
}

#main_nav .menu-right span a {color: black; text-decoration: none; max-width:none;}
#main_nav .menu-right span i.fas,
#main_nav .menu-right span i.fa {font-size: 1.5em; color: #047cc3;}

/* logo */
#main_nav .site-logo {
    padding: 0 20px;
    float: left;
    /*display: flex;*/
    align-items: center;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
}

/* tuiles */
#gestion-page-gru-content.gru-content .element-gru p:focus {
    outline: dotted 2px;
}
#gestion-page-gru-content.gru-content .element-gru button {
    width: 100%;
    border: none;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: transparent;
}
#gestion-page-gru-content.gru-content .element-gru button:focus,
#gestion-page-gru-content.gru-content a:focus  {
    outline: 2px dashed black;
    outline-offset: 0.2em;
}


/* specific style for button close in tuile (case flip tuile) */
#gestion-page-gru-content.gru-content .element-gru .back_header {
    height: 100%;
    border: none;
    right: 0;
    background: transparent;
}
#gestion-page-gru-content.gru-content .element-gru .help_content {
    height: 80%;
    margin-top: 3rem;
}

#gestion-page-gru-content.gru-content .element-gru .link_aide_ts {
    position: relative;
    width: auto;
    left: auto;
    top: auto;
    z-index: 1;
}

/* lists action icones */
button.gru-icon-button,
button.add_document {
    border: none;
    background-color: #ffffff;
}

/* improve constrast on text color of form buttons */
.button:hover {
    color: white;
}

footer.site-footer {
  --primary-color: #ffffff;
  box-shadow: none !important;
}

/* improve constrast of links on focus of footer */
.socket_color a:focus, .socket_color h1 a:focus, .socket_color h2 a:focus,
.socket_color h3 a:focus, .socket_color h4 a:focus, .socket_color h5 a:focus,
.socket_color h6 a:focus, .socket_color .template-search a.news-content:focus,
.socket_color .wp-playlist-item .wp-playlist-caption:focus {
    color: white;
}


div.colonne-lien-ts {
    gap: 0 !important;
}

/*AJOUT SPECIFIQUE DANS LE FICHIER */
.colLienMairie  .lienCommune > a:hover {
	color:#F0381F !important; 
	text-decoration : none !important;
}

.contentLienTS .lienTS:hover{
	text-decoration:none !important;
}

.Fonds .blocLien a:hover {
	color:#F0381F !important; 
	text-decoration : none !important;
	border-bottom: 3px solid #f0381f;
}

.titreSousCategorie{
    font-family: 'gothamMedium', sans-serif;
    font-size: 18px;
    color: #222;
    margin: 35px 0 15px;
    padding-left: 14px;
    position: relative;
}

/* repère discret à gauche */
.titreSousCategorie::before{
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 4px;
    height: 70%;
    background-color: #F0381F;
    border-radius: 2px;
}

#nomVille {
	display:none;
}

.panel-body {
	width: 100%;
	display: inline-block;
}

/*****  surcouche spécifique *****/
/* ===== BANNIÈRE MODERNISÉE ===== */
.barreOrange {
    background: #E63422;
    height: 28px !important;          /* hauteur exacte */
    padding: 0 !important;            /* enlève tout l’air autour */
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;   /* centre verticalement */
    justify-content: center !important;
    border-bottom: 1px solid rgba(0,0,0,0.10);
    box-shadow: 0 1px 4px rgba(0,0,0,0.05);
}

/* Texte centré et ajusté */
.barreOrange .texteIntro {
    margin: 0 auto !important;
    padding: 0 !important;
    line-height: 28px !important;     /* texte exactement centré */
    height: 28px !important;          /* aligné à la hauteur du bandeau */
    font-size: 13px !important;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0.5px;
    text-align: center !important;
    display: block !important;
}


/* Empêcher que le texte soit tiré à gauche si d'autres éléments flottent */
#texteIntro {
    width: 100%;
    text-align: center !important;
}


/*************************************************
 * Pages communes Agglae (ville)
 * Mise en page moderne + sidebar + tuiles
 *************************************************/

/* Conteneur général de la page ville */
#nomVille {
    display: block;
    max-width: 1200px;
    margin: 30px auto 10px;
    padding: 0 20px;
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: none;
    color: #222;
}

/* La grosse colonne 2 blocs (menu gauche + contenu droite) */
#nomVille + .wp-block-columns {
    max-width: 1200px;
    margin: 0 auto 40px;
    padding: 0 20px;
    gap: 32px;
    align-items: flex-start;
}

/* Sidebar gauche */
#nomVille + .wp-block-columns > .wp-block-column:first-child {
    flex: 0 0 240px;
    max-width: 260px;
}

/* Colonne contenu droite */
#nomVille + .wp-block-columns > .wp-block-column:last-child {
    flex: 1;
}

/* ===== MENU DES ANCRES (sidebar) ===== */

.bordureNavigationAncres {
    background: #ffffff;
    border-radius: 10px;
    padding: 16px 20px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06);
    position: sticky;
    top: 140px;
}

.navigationAncres {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 14px;
}

.navigationAncres li + li {
    margin-top: 4px;
}

.navigationAncres a {
    display: block;
    padding: 6px 4px;
    border-left: 3px solid transparent;
    color: #222;
    text-decoration: none;
    line-height: 1.3;
}

.navigationAncres a:hover {
    border-left-color: #F0381F;
    background: #fff4f2;
    color: #111;
}

/* Bouton d’ouverture du menu (pour mobile) */
.openNavigationAncres {
    margin-top: 10px;
    cursor: pointer;
    font-size: 18px;
    color: #F0381F;
    display: none; /* caché sur desktop */
}

/* ===== CONTENU PRINCIPAL ===== */

/* Titre de section (Signalements, Proprete, etc.) */
h2.titreCategorie {
    margin: 40px 0 8px;
    font-size: 22px;
    font-weight: 700;
    color: #222;
    border-bottom: 2px solid #F0381F;
    padding-bottom: 4px;
}

/* Sous titres (Gestion des dechets, Eclairage public, etc.) */
h3.titreSousCategorie {
    margin: 22px 0 10px;
    font-size: 18px;
    font-weight: 600;
    color: #444;
}

/* Amélioration du layout des rangées de tuiles */
.colonneTs {
    gap: 16px;
}
.wp-block-spacer{
    margin-bottom: 20px;
}
/* ===== TUILES DE TELE-SERVICES ===== */

.tuileTS {
    border-radius: 8px;
    overflow: hidden;
    background: #f5f5f5; /* base, sera recolorée par les classes existantes */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transition: transform 0.12s ease, box-shadow 0.12s ease, background 0.12s ease;
    margin-bottom: 14px;
}

.tuileTS .contentLienTS {
    padding: 12px 16px;
}

/* Liens dans les tuiles */
.tuileTS .lienTS,
.tuileTS .lienTS.agglaeTS {
    display: block;
    font-size: 15px;
    font-weight: 500;
    color: #222;
    text-decoration: none;
}

/* Effet survol tuile */
.tuileTS:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14);
    background: #ffffff;
}

.tuileTS:hover .lienTS {
    text-decoration: underline;
}

/* Tuiles "lien externe" (Fonds / blocLienExterne) */
.blocLienExterne.blocLienMairie,
.blocLienExterne.blocLien {
    font-size: 14px;
}

.blocLienExterne a {
    color: #F0381F;
    font-weight: 600;
    text-decoration: none;
}

.blocLienExterne a:hover {
    text-decoration: underline;
}

/* Bloc mairie (adresse, tel, horaires, site) */
.ligneMairie,
.LigneMairie {
    margin-bottom: 10px;
}

/* Lien vers site mairie */
.lienCommune a {
    color: #F0381F;
    font-weight: 600;
    text-decoration: none;
}
.lienCommune a:hover {
    text-decoration: underline;
}

/* ===== THEMES : couleurs centralisées (remplace tous tes blocs par thème) ===== */
#agg-teleservices .agg-theme { --theme-color: #F0381F; } /* fallback */

/* 1 couleur = 1 ligne */
#agg-teleservices .agg-theme[data-theme="signalements"]               { --theme-color:#f0381f; }
#agg-teleservices .agg-theme[data-theme="etat-civil"]                 { --theme-color:#127BCA; }
#agg-teleservices .agg-theme[data-theme="enfance-jeunesse"]           { --theme-color:#F24CAF; }
#agg-teleservices .agg-theme[data-theme="proprete-dechets"]           { --theme-color:#F57215; }
#agg-teleservices .agg-theme[data-theme="espace-public"]              { --theme-color:#39b54a; }
#agg-teleservices .agg-theme[data-theme="urbanisme-habitat-logement"] { --theme-color:#98158F; }
#agg-teleservices .agg-theme[data-theme="eau-assainissement"]         { --theme-color:#51C8F5; }
#agg-teleservices .agg-theme[data-theme="vie-associative-entreprise"] { --theme-color:#F28B4A; }
#agg-teleservices .agg-theme[data-theme="mobilite"]                   { --theme-color:#8cc63f; }
#agg-teleservices .agg-theme[data-theme="sport-culture"]              { --theme-color:#3DBDA1; }

/* applique la couleur au bloc picto */
#agg-teleservices .agg-theme .agg-theme-icon{
  background: var(--theme-color);
}

/* survol + sélection : fond du label = couleur du picto */
#agg-teleservices .agg-theme:hover .agg-theme-label,

#agg-teleservices .agg-theme.selected .agg-theme-label{
  background: var(--theme-color)!important;
  color: #fff;
  font-size: 18px;
}


/* Evite les liserés : on "coupe" tout ce qui dépasse et on enlève bordures/ombres */
#agg-teleservices .agg-theme{
  overflow: hidden;
}

#agg-teleservices .agg-theme,
#agg-teleservices .agg-theme-icon,
#agg-teleservices .agg-theme-icon img{
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Empêche un filet dû aux pixels flottants */
#agg-teleservices .agg-theme-icon{
  margin-right: -1px;          /* “colle” le bloc picto au reste */
}

/* Image bien “pleine”, sans espace inline */
#agg-teleservices .agg-theme-icon img{
  display: block;
  background: transparent !important;
}

/* Couleur dynamique au hover */
.agg-theme:hover .agg-theme-label {
    background: var(--theme-color);
    color: #fff;
}

/* Couleur dynamique au clic */
.agg-theme.selected .agg-theme-label {
    background: var(--theme-color);
    color: #fff;
}


/*************************************************
 * Corrections mise en page pages communes
 *************************************************/

/* 1) Corriger la grosse barre rouge verticale à gauche
   (ancienne bordure de .bordureNavigationAncres) */
.bordureNavigationAncres {
    position: sticky;
    top: 180px;              /* ajuste si besoin (120–140) */
    margin-top: 16px;        /* décale le bloc sous le bandeau rouge */
    border: none !important; /* on supprime l’ancienne bordure */
    padding: 16px 20px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06);
}

/* petite barre rouge décorative, uniquement autour du menu */
.bordureNavigationAncres::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    bottom: 10px;
    width: 3px;
    border-radius: 999px;
    background: #F0381F;
}

/* on décale un peu le texte du menu pour ne pas être collé à la barre rouge */
.bordureNavigationAncres .navigationAncres {
    padding-left: 10px;
}

/* 2) Le conteneur de la colonne gauche ne doit pas coller tout en haut */
#nomVille + .wp-block-columns > .wp-block-column:first-child {
    padding-top: 4px;   /* léger décalage sous le logo */
}

/* 3) Laisser respirer le premier titre (SIGNALMENTS) sous le bloc mairie */
h2.titreCategorie:first-of-type {
    margin-top: 32px;
}
/*************************************************
 * Pages communes : titre & tuiles de téléservices
 *************************************************/

/* 1) Cacher le titre de la ville (DE CHATUZANGE-LE-GOUBET…) */
#nomVille {
    display: none;
}

/* 2) Empêcher les pictos de se superposer au texte des tuiles */
.tuileTS {
    position: relative;
    min-height: 64px;              /* assure une hauteur suffisante pour le picto */
}

/* On décale le texte vers la droite pour laisser la place au picto */
.tuileTS .contentLienTS {
    padding: 14px 18px 14px 80px;  /* 80px = largeur réservée au picto à gauche */
    display: flex;
    align-items: center;           /* texte centré verticalement par rapport au picto */
}

/* Petit confort visuel pour le lien */
.tuileTS .lienTS {
    display: inline-block;
    line-height: 1.4;
}


/*************************************************
 * Responsive
 *************************************************/

@media (max-width: 900px) {
#nomVille {
        margin-top: 20px;
        margin-bottom: 12px;
        padding: 0 16px;
        font-size: 22px;
        text-align: center;
    }

    #nomVille + .wp-block-columns {
        flex-direction: column;
        padding: 0 12px;
        gap: 18px;
    }

    #nomVille + .wp-block-columns > .wp-block-column:first-child {
        flex: 0 0 auto;
        max-width: 100%;
    }

    #nomVille + .wp-block-columns > .wp-block-column:last-child {
        flex: 1;
        width: 100%;
    }

    .bordureNavigationAncres {
        position: static;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
        margin-bottom: 0px;
    }
  


    /* On affiche le bouton pour éventuellement cacher/afficher le menu via ton JS */
    .openNavigationAncres {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 14px;
    }

    .openNavigationAncres i {
        transform: rotate(90deg);
    }

    /* Les tuiles prennent toute la largeur */
    .colonneTs {
        gap: 10px;
    }
}

/* =========================
   FOOTER 2025 MINIMAL
   ========================= */

/* Supprime toute ombre éventuelle sur le footer du thème */
footer.site-footer{
  box-shadow: none !important;
  margin-top: 0 !important;
}

/* SOCIAL BAR, intégrée visuellement au footer */
.agg-socialbar{
  background: #E63422 !important;
  border-top: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.agg-socialbar__inner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 12px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.agg-socialbar__label{
  font-weight: 700;
  color: rgba(255,255,255,0.92);
  font-size: 13px;
  letter-spacing: 0.2px;
}

.agg-socialbar__links{
  display: flex;
  gap: 10px;
}

.agg-social{
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.22);
  color: #fff !important;
  text-decoration: none;

  transition: transform 0.12s ease, background 0.12s ease, border-color 0.12s ease;
}

.agg-social:hover{
  background: rgba(255,255,255,0.22);
  border-color: rgba(255,255,255,0.34);
  transform: translateY(-1px);
}

.agg-social:focus{
  outline: 3px solid rgba(255,255,255,0.45);
  outline-offset: 2px;
}

/* BARRE FOOTER */
.barreFooter.agg-footerbar,
.barreFooter.agg-footerbar *{
  box-sizing: border-box;
}

.barreFooter.agg-footerbar{
  background: #E63422 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important; /* plus d’ombre au dessus */
}

/* conteneur principal */
.barreFooter.agg-footerbar .agg-footerbar__inner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 12px 20px 18px;
}

/* ligne contenu */
.barreFooter.agg-footerbar .coordinate-footer{
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

/* liens */
.barreFooter.agg-footerbar .info-coordinate.link-footer{
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

/* retire les séparateurs images */
.barreFooter.agg-footerbar .footerSeparator{
  display: none !important;
}

/* liens minimalistes */
.barreFooter.agg-footerbar .footerItem a{
  color: rgba(255,255,255,0.95) !important;
  text-decoration: none !important;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.2px;

  padding: 6px 10px;
  border-radius: 10px;
  background: transparent;
  border: 1px solid transparent;

  transition: background 0.12s ease, border-color 0.12s ease;
}

.barreFooter.agg-footerbar .footerItem a:hover{
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.18);
}

.barreFooter.agg-footerbar .footerItem a:focus{
  outline: 3px solid rgba(255,255,255,0.45);
  outline-offset: 2px;
}

/* logo */
.barreFooter.agg-footerbar .footerItemLogo,
.footerLogoResponsive{
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.barreFooter.agg-footerbar .logoFooter{
  height: 28px;
  width: auto;
  display: block;
  object-fit: contain;
  opacity: 0.95;
}

/* évite les règles globales parasites */
.coordinate-footer{ height: auto !important; }
.logoFooter{ width: auto; height: 28px; }

/* cache “entry-footer” si présent */
.entry-footer{ display: none; }

/* Responsive */
@media (max-width: 900px){
  .agg-socialbar__inner{
    justify-content: center;
    flex-wrap: wrap;
  }

  .barreFooter.agg-footerbar .coordinate-footer{
    flex-direction: column;
    justify-content: center;
    text-align: center;
  }

  .barreFooter.agg-footerbar .info-coordinate.link-footer{
    justify-content: center;
  }
}

/* =========================
   FUSION SOCIAL + LIENS FOOTER
   ========================= */

/* On transforme la socialbar en élément inline du footer */
.agg-socialbar{
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

/* On place la socialbar dans le flux de la ligne footer */
.barreFooter.agg-footerbar .coordinate-footer{
  justify-content: flex-end !important;
  gap: 14px;
}

/* Socialbar alignée avec les liens */
.agg-socialbar__inner{
  padding: 0 !important;
  margin: 0 !important;
  max-width: none;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Label plus discret */
.agg-socialbar__label{
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,0.9);
}

/* Icônes sociales compactes */
.agg-social{
  width: 34px;
  height: 34px;
  border-radius: 999px;
}

/* SOCIALBAR À GAUCHE */
.barreFooter.agg-footerbar .agg-socialbar{
  margin-right: auto;
  background: transparent !important;
  padding: 0 !important;
}

.agg-socialbar__inner{
  padding: 0 !important;
  margin: 0 !important;
  max-width: none;
  display: flex;
  align-items: center;
  gap: 10px;
}

.agg-socialbar__label{
  color: rgba(255,255,255,0.9);
  font-size: 13px;
  font-weight: 600;
}

/* =====================================================
   ALIGNEMENT FINAL FOOTER
   Socialbar à gauche, liens + logo à droite
   ===================================================== */

/* Ligne principale */
.barreFooter.agg-footerbar .coordinate-footer{
  display: flex;
  align-items: center;
  justify-content: space-between !important;
}

/* SOCIALBAR À GAUCHE */
.barreFooter.agg-footerbar .agg-socialbar{
  margin-right: auto;
  background: transparent !important;
  padding: 0 !important;
}

.barreFooter.agg-footerbar .agg-socialbar__inner{
  padding: 0 !important;
  margin: 0 !important;
  max-width: none;
  display: flex;
  align-items: center;
  gap: 10px;
}

.barreFooter.agg-footerbar .agg-socialbar__label{
  color: rgba(255,255,255,0.9);
  font-size: 13px;
  font-weight: 600;
}

/* Icônes sociales */
.barreFooter.agg-footerbar .agg-social{
  width: 34px;
  height: 34px;
  color: #fff !important;
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.22);
}

/* LIENS + LOGO À DROITE */
.barreFooter.agg-footerbar .info-coordinate.link-footer{
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Liens */
.barreFooter.agg-footerbar .footerItem a{
  padding: 6px 10px;
  font-size: 13px;
  font-weight: 600;
}

/* SUPPRESSION DU LOGO EN DOUBLE */
.footerLogoResponsive{
  display: none !important;
}

/* =====================================================
   FIX DESKTOP
   Médias à gauche, liens + logo à droite
   ===================================================== */

/* La ligne du footer doit occuper toute la largeur */
.barreFooter.agg-footerbar .coordinate-footer{
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

/* Bloc social : bien collé à gauche */
.barreFooter.agg-footerbar .agg-socialbar{
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.barreFooter.agg-footerbar .agg-socialbar__inner{
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}

/* Bloc liens+logo : collé à droite */
.barreFooter.agg-footerbar .info-coordinate.link-footer{
  flex: 1 1 auto !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
}

/* Enlève le doublon logo */
.footerLogoResponsive{
  display: none !important;
}

  /* =========================
    SUPPRESSION TOTALE DES OMBRES MENU GAUCHE
    ========================= */

    .bordureNavigationAncres,
    .bordureNavigationAncres *,
    .bordureNavigationAncres .wp-block-group,
    .bordureNavigationAncres .wp-block-group__inner-container{
        box-shadow: none !important;
        filter: none !important;
        -webkit-box-shadow: none !important;
    }

    /* sécurité absolue */
    .bordureNavigationAncres{
        background: #fff !important;
    }

   /* =========================
    PERSONNALISATION DES ECRANS DE TELESERVICES
    ========================= */   
/* =========================
   GRU - Téléservice (V2)
   ========================= */

/* Fond global de la zone contenu */
.content,
.content main,
.content .container{
  background: transparent !important;
}

.demande.creation{
  background:#fff !important;
}

/* Card principale */
.demande.creation{
  background:#fff;
  border:1px solid rgba(0,0,0,0.07);
  border-radius:18px;
  box-shadow:0 10px 26px rgba(0,0,0,0.08);
  overflow:hidden;
}

/* Padding interne cohérent */
.demande.creation .container_formulaire{
  padding: 18px 20px 20px 20px;
}

/* Titre */
.demande.creation h1.nom_demande{
  margin: 2px 0 14px 0;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

/* Bandeau infos dossier */
.demande.creation .demande_info{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 16px 0;
}

.demande.creation .demande_info .info{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:12px;
  background:#f6f7f9;
  border:1px solid rgba(0,0,0,0.06);
  font-size:14px;
}

.demande.creation .demande_info .info span{
  font-weight:800;
  margin-left:6px;
  max-width: 520px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Étape */
.demande.creation .step-title{
  margin: 10px 0 14px 0;
  padding: 14px 16px;
  border-radius: 14px;
  background: #F0381F;
  color:#fff;
  font-weight:900;
  font-size:16px;
}

/* Form layout (évite les floats injectés par les scripts inline) */
.demande.creation .col-lg-8{
  float: none !important;
}

/* Aligner label + champ sur desktop */
@media (min-width: 992px){
  .demande.creation .form-group.col-lg-12{
    display:flex;
    gap: 14px;
    align-items:flex-start;
  }
  .demande.creation .form-group.col-lg-12 > label.control-label.col-lg-4{
    width: 34%;
    max-width: 34%;
    margin: 0;
    padding-top: 10px;
  }
  .demande.creation .form-group.col-lg-12 > .col-lg-8{
    width: 66%;
    max-width: 66%;
  }
}

/* Champs */
.demande.creation input.form-control,
.demande.creation textarea.form-control{
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,0.14);
  padding: 10px 12px;
  box-shadow:none;
  background:#fff;
}

.demande.creation input.form-control:focus,
.demande.creation textarea.form-control:focus{
  outline:none;
  border-color:#F0381F;
}

/* Radios stylés */
.demande.creation .radio{
  margin: 8px 0;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 12px;
  background: #fff;
}
.demande.creation .radio label{
  margin:0;
  font-weight:600;
}

/* Groupe (panel) */
.demande.creation .panel.panel-default{
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,0.08);
  overflow:hidden;
  margin-top: 14px;
}
.demande.creation .panel.panel-default > .panel-heading{
  background: #f6f7f9;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  padding: 12px 14px;
}
.demande.creation .panel.panel-default > .panel-heading .panel-title{
  font-weight: 900;
  margin: 0;
}

/* Carte Leaflet */
.demande.creation #carteModif{
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,0.10);
}

/* Bouton suivant */
.demande.creation #step-form-buttons{
  display:flex;
  justify-content:flex-end;
  padding-top: 14px;
}
.demande.creation .action_button_primary{
  background:#F0381F;
  border:0;
  border-radius:999px;
  padding: 12px 18px;
  font-weight: 900;
}
.demande.creation .action_button_primary:hover{
  filter: brightness(0.95);
}

/* Mobile */
@media (max-width: 991px){
  .demande.creation .container_formulaire{
    padding: 14px 12px 14px 12px;
  }
  .demande.creation .demande_info .info span{
    max-width: 100%;
    white-space: normal;
  }
}

/* Typo commune sur la page téléservice */
/* Typo commune uniquement sur le texte, pas sur les icônes */
/* =========================
   FIX Font Awesome Duotone
   ========================= */

/* Restaure explicitement les fonts FA */
.demande.creation .fa,
.demande.creation .fas,
.demande.creation .far,
.demande.creation .fal,
.demande.creation .fab,
.demande.creation .fa-solid,
.demande.creation .fa-regular,
.demande.creation .fa-light,
.demande.creation .fa-brands,
.demande.creation .fa-duotone{
  font-family: "Font Awesome 6 Pro" !important;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
}

/* Duotone = 2 couches */
.demande.creation .fa-duotone::before{
  font-family: "Font Awesome 6 Duotone" !important;
  font-weight: 900;
}

.demande.creation .fa-duotone::after{
  font-family: "Font Awesome 6 Duotone" !important;
  font-weight: 400;
}

/* Typo commune SAFE */
.demande.creation{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.45;
  color: #1e1e1e;
}

/* Texte uniquement */
.demande.creation h1,
.demande.creation h2,
.demande.creation h3,
.demande.creation h4,
.demande.creation p,
.demande.creation span,
.demande.creation label,
.demande.creation input,
.demande.creation textarea,
.demande.creation select,
.demande.creation button{
  font-family: inherit;
}
/* =========================
   Téléservice : police unique partout (sans casser Font Awesome)
   ========================= */

/* Police commune sur la zone content */
.content,
.content *{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  letter-spacing: 0 !important;
}

/* On ne touche jamais aux icônes Font Awesome */
.content :is(i,.fa,.fas,.far,.fal,.fad,.fab,.fa-solid,.fa-regular,.fa-light,.fa-duotone,.fa-brands),
.content :is(i,.fa,.fas,.far,.fal,.fad,.fab,.fa-solid,.fa-regular,.fa-light,.fa-duotone,.fa-brands)::before,
.content :is(i,.fa,.fas,.far,.fal,.fad,.fab,.fa-solid,.fa-regular,.fa-light,.fa-duotone,.fa-brands)::after{
  font-family: var(--fa-font-family, "Font Awesome 6 Pro") !important;
  letter-spacing: unset !important;
}

/* Et on restaure les 2 couches duotone (si besoin) */
.content .fa-duotone::before{
  font-family: var(--fa-primary-font-family, "Font Awesome 6 Duotone") !important;
}
.content .fa-duotone::after{
  font-family: var(--fa-secondary-font-family, "Font Awesome 6 Duotone") !important;
}

/* =========================
   H3 panel-title = style H2 step-title
   ========================= */

.demande.creation .panel-title{
  background: #F0381F;
  color: #fff;
  font-weight: 900;
  font-size: 16px;
  padding: 14px 16px;
  border-radius: 14px;
  margin: 0;
}

/* Nettoyage du conteneur panel-heading */
.demande.creation .panel-heading{
  background: transparent;
  border: 0;
  padding: 0;
}

/* Espacement identique à l’étape */
.demande.creation .panel{
  margin-top: 14px;
}

/* Supprimer le fond gris sous le titre rouge */
.demande.creation .panel-body{
  background: #fff !important;
  border: 0;
}
.demande.creation .panel.panel-default{
  background: transparent;
}

/* =========================
   SUPPRESSION DEFINITIVE DU FOND GRIS DERRIERE LE TITRE
   ========================= */

/* Le conteneur du panel */
.demande.creation .panel,
.demande.creation .panel.panel-default{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Le header du panel (zone derrière le h3) */
.demande.creation .panel-heading{
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Le body juste sous le titre */
.demande.creation .panel-body{
  background: #fff !important;
  border: 0 !important;
  margin-top: 0 !important;
}
/* =========================
   Radios en 2 colonnes (téléservice)
   ========================= */

/* Conteneur des radios */
.demande.creation .col-lg-8 > .radio{
  width: 48%;
  display: inline-block;
  vertical-align: top;
}

/* =========================
   Radios en 2 colonnes (uniquement)
   ========================= */

/* On ne touche pas aux autres .col-lg-8 (carte Leaflet etc.) */
.demande.creation .form-group.col-lg-12 > .col-lg-8{
  display: block !important;
}

/* Conteneur des radios : uniquement quand il y a plusieurs .radio */
.demande.creation .form-group.col-lg-12 > .col-lg-8:has(> .radio){
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px 4%;
}

.demande.creation .form-group.col-lg-12 > .col-lg-8:has(> .radio) > .radio{
  width: 48%;
  margin: 0;
}

/* Mobile = 1 colonne */
@media (max-width: 768px){
  .demande.creation .form-group.col-lg-12 > .col-lg-8:has(> .radio) > .radio{
    width: 100%;
  }
}


/* Style carte cliquable */
.demande.creation .radio{
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 12px;
  padding: 10px 12px;
  background: #fff;
  cursor: pointer;
}

/* Clic sur toute la ligne */
.demande.creation .radio label{
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  cursor: pointer;
}

/* Mobile = 1 colonne */
@media (max-width: 768px){
  .demande.creation .col-lg-8 > .radio{
    width: 100%;
  }
}

/* =========================
   Carte Leaflet (adresse_geo) : typo alignée
   ========================= */

.demande.creation .leaflet-container ~ .row input.form-control,
.demande.creation .leaflet-container ~ .row textarea.form-control{
  font-family: inherit !important;
}

/* Typo commune sur le formulaire, sans toucher aux icônes FontAwesome */
#content-step-form,
#content-step-form h1,
#content-step-form h2,
#content-step-form h3,
#content-step-form h4,
#content-step-form h5,
#content-step-form h6,
#content-step-form label,
#content-step-form .control-label,
#content-step-form .radio label,
#content-step-form .panel-title,
#content-step-form .step-title,
#content-step-form .action_button,
#content-step-form input,
#content-step-form textarea,
#content-step-form select,
#content-step-form button,
#content-step-form .form-control,
#content-step-form .ui-widget,
#content-step-form .ui-widget input,
#content-step-form .ui-widget textarea,
#content-step-form .ui-widget select{
    font-family: inherit !important; /* prend la police “globale” de ton thème */
    font-size: 16px !important;
    font-weight: 600 !important;
}

/* Si besoin, force la police globale du thème UNE fois (choisis la tienne) */
body{
  font-family: Arial, sans-serif !important;
}

/* Important: ne pas écraser la font des icônes */
#content-step-form i[class*="fa"],
.demande_info i[class*="fa"]{
  font-family: "Font Awesome 6 Duotone" !important;
  font-style: normal;
}

/* Masquer Entité et Bénéficiaire dans le récap */
.demande_info .info_entite,
.demande_info .info_beneficiaire{
  display: none !important;
}

/* Titre principal de page */
h1.nom_demande{
  font-size: 26px;
  font-weight: 700;
  color: #F0381F;
  margin: 20px 0 24px;
  line-height: 1.3;
}
/* Titres d'étape */
.step_container > h2,
h2.step-title,
h2.panel-title,
h2.mb-0{
  background: #F0381F;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  padding: 14px 20px;
  border-radius: 14px;
  margin: 30px 0 20px;
}
/* Sous-sections */
.panel-heading{
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.panel-heading h3.panel-title{
  background: #F0381F;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  padding: 12px 18px;
  border-radius: 14px;
  margin: 24px 0 16px;
}
/* Nettoyage des fonds gris */
.panel,
.panel-default,
.panel-body{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
/* Titre "Confirmation de demande" */
.capdemat_demende_information_actions h2{
  background: #F0381F;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  padding: 14px 20px;
  border-radius: 14px;
  margin: 30px 0 12px;
  text-align: left;
}
.capdemat_demende_information_actions p{
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 20px;
}
/* =========================
   TITRE PRINCIPAL DE PAGE (H1)
   ========================= */

h1.nom_demande{
  font-size: 28px;
  font-weight: 800;
  color: #1e1e1e;
  line-height: 1.25;
  margin: 24px 0 28px;
  padding-left: 14px;
  border-left: 6px solid #F0381F;
}

/* Sous-titre éventuel (ligne 2) */
h1.nom_demande br{
  content: "";
}
/* Breadcrumb isolé */
h1{
  font-size: 14px;
  font-weight: 500;
  color: #6b7280;
  margin: 0 0 12px 0;
}

/* Liens */
h1 a{
  color: #6b7280;
  text-decoration: none;
}

h1 a:hover{
  color: #F0381F;
}

/* Séparateur > */
h1{
  word-spacing: 4px;
}
/* =========================
   Breadcrumb – cohérence typographique
   ========================= */

#main > h1{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #111827;
  margin: 0 0 14px 0;
}

/* Liens du breadcrumb */
#main > h1 a,
#main > h1 a:visited{
  font-family: inherit !important;
  color: #2563eb;
  text-decoration: none;
}

#main > h1 a:hover{
  text-decoration: underline;
}

/* Breadcrumb global (H1 qui ne contient que des liens) */
h1:has(> a):not(:has(*:not(a, br, span))){
  margin: 18px 0 26px !important;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size: 18px !important;        /* ← plus gros */
  font-weight: 600 !important;
  letter-spacing: .04em !important;  /* réduit pour éviter l’effet “caps” */
  text-transform: uppercase;
  color: #6b7280 !important;
  line-height: 1.4 !important;
}

/* Liens breadcrumb */
h1:has(> a):not(:has(*:not(a, br, span))) > a{
  color: inherit !important;
  text-decoration: none !important;
}

h1:has(> a):not(:has(*:not(a, br, span))) > a:hover{
  color: #F0381F !important;
  text-decoration: underline !important;
}

/* Gestion du séparateur */
h1:has(> a):not(:has(*:not(a, br, span))){
  word-spacing: .3em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 1) Les containers WP/Bootstrap internes ne doivent pas brider la largeur */
main .container.breadcrumb,
main .container.tableau-de-bord{
  max-width: none !important;
  width: 100% !important;
}

/* 2) Le bloc formulaire Capdemat doit pouvoir prendre toute la place */
.container.tableau-de-bord .demande.creation,
.container.tableau-de-bord .container_formulaire{
  max-width: none !important;
  width: 100% !important;
}

/* 3) Optionnel: garder un “confort” visuel avec une largeur maxi plus grande que 1200 */
.container.tableau-de-bord{
  max-width: 1600px !important;  /* mets none si tu veux vraiment full */
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 4) Ta carte est bloquée par un style inline max-width:1000px */
#carteModif{
  max-width: none !important;
  width: 100% !important;
}


/* Page communes: layout général */
.page-template-default main > .wp-block-group{
  display: flex;
  gap: 40px;
}

/* Élargir le menu des ancres vers la gauche */
.navigationAncres{
  width: 320px;                 /* largeur voulue */
  margin-left: -180px;           /* tire le bloc vers la gauche */
}

/* sécurité : le bloc parent ne doit pas limiter */
.navigationAncres{
  max-width: none;
}

/* optionnel : éviter le retour à la ligne moche */
.navigationAncres li a{
  white-space: normal;
}

.bordureNavigationAncres{
  margin-left: -70px; /* ajuste: -10 / -30 */
}

/* Resserre la liste */
.bordureNavigationAncres .navigationAncres{
  margin: 0;
  padding: 0;
}

.bordureNavigationAncres .navigationAncres li{
  margin: 0;
  padding: 3px 0;      /* espace vertical entre rubriques */
  line-height: 1.15;   /* interligne */
}

.bordureNavigationAncres .navigationAncres a{
  display: block;
  padding: 2px 6px;    /* zone cliquable, léger */
}

#votre-mairie p,
#votre-mairie .lienCommune a{
  font-weight: 700;
}

/* recapitulatif-demande : uniformiser la hauteur des champs */

/* 1) Chaque ligne devient un bloc flex, et on supprime les écarts irréguliers */
.row.detail-champ{
  display: flex;
  flex-wrap: wrap;          /* garde le responsive bootstrap */
  align-items: stretch;     /* label et valeur ont la même hauteur */
  margin-bottom: 12px;      /* espace régulier entre lignes */
}

/* 2) Même hauteur et même padding pour label et valeur */
.row.detail-champ > .detail-label,
.row.detail-champ > .col-lg-8.detail-champ{
  min-height: 52px;         /* ajuste si tu veux plus/moins haut */
  padding: 10px 12px;
  display: flex;
  align-items: center;      /* texte centré verticalement */
  line-height: 1.25;
}

/* 3) Valeur : si plusieurs lignes (<br>), on aligne en haut plutôt qu'au centre */
.row.detail-champ > .col-lg-8.detail-champ{
  align-items: flex-start;
}

/* 4) Cas textarea (description) : on le force à la hauteur standard */
.row.detail-champ > .col-lg-8.detail-champ textarea.form-control{
  min-height: 52px !important;
  height: 52px !important;
  resize: none;
  overflow: auto;
}

/* 5) Cas lien vide (photo) : éviter une hauteur "bizarre" */
.row.detail-champ > .col-lg-8.detail-champ a.tabDetailViewDFLink{
  display: inline-block;
  min-height: 20px;
}

.detail-champ{
    font-size: 12px;   
}

/* recapitulatif-demande : labels + champs homogènes */
#accordion .row.detail-champ{
  margin: 0 0 18px 0 !important;
}

/* Label (col-lg-4) : en gras, taille identique partout */
#accordion label.col-lg-4.detail-label{
  font-weight: 700 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  margin: 0 0 6px 0 !important;
  display: block !important;
}

/* Valeur (col-lg-8) : hauteur uniforme */
#accordion .col-lg-8.detail-champ{
  font-size: 14px !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 38px !important; /* homogénéise les champs simples */
}

/* Le textarea garde une hauteur propre (et ne subit pas le min-height “38px”) */
#accordion .col-lg-8.detail-champ textarea.form-control{
  min-height: 120px !important;
  height: auto !important;
  resize: none !important;
}

#accordion .col-lg-8.detail-champ{
    font-size: 12px !important;
}