.gIcone {
    display: flex;
    align-items: center;
}

/********************************************************************************************************* Joindre ***/

.gJoindre-Liste {
    display: flex;
    flex-direction: column;
}

.gJoindre-Item-Image {
  min-width: 25%;
  max-width: 25%;
  float: left;
  margin: 0 1em 0.5em 0;
}

.gJoindre-Item-Image img {
    width: 100%;
    height: auto;    
}

.gJoindre-Item {
    display: flex;
    flex-direction: column;
    width: 60%;
    padding: 2em 1em;
    border: solid thin #c5cad2;
    margin-bottom: 4em;
    font-size: 1.2em;
}

.gJoindre-Item-Infos {
    display: flex;
    flex-direction: row;
    padding-bottom: 1em;
}

.gJoindre-Item-Nom {
    font-size: 1.4em;
    font-weight: bold;
    padding-bottom: 0.5em;
}

.gJoindre-Item-Nom-Individu {
    font-weight: 400;
    display: flex;
    flex-direction: column;
    width: 60%;
}
.gJoindre-Item-Nom > p{
    margin-top: 0em;
}
.gJoindre-Item-Horaire:not(:has(.gJoindre-Item-Element)),
.gJoindre-Item-Adresses:not(:has(.gJoindre-Item-Element)){
    margin-top: -1em;
}
.gJoindre-Item-Nom-Individu .gJoindre-Item-Element:not(:first-child) .gIcone{
    visibility: hidden;
}

.gJoindre-Item-Contenu {
    display: flex;
    flex-direction: column;
}

.gJoindre-Item-Element {
    display: flex;
    flex-direction: row;
    line-height: 2.5em;
}

.gJoindre-Item-Element .gIcone {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2.5em;
    margin-right: 0.5em;
}

.gJoindre-Item-Element-Contenu {
    display: flex;
    flex-direction: row;
}

.gJoindre-Item-Libelle {
    font-weight: bold;
    margin-right: 0.5em;
}

.gJoindre-Item-Valeur {
    display: flex;
    justify-content: flex-end;
}

.gJoindre-Item-Valeur sup {
    line-height: 1.2em;
}

.gJoindre-Item-Lien {
    color: #223654;
    text-decoration: none;
}

.gJoindre-Item-Adresses .gJoindre-Item-Valeur {
    display: flex;
    flex-direction: column;
}

.gJoindre-Item-Telephones .gJoindre-Item-Element:not(:first-child) .gIcone,
.gJoindre-Item-Courriels .gJoindre-Item-Element:not(:first-child) .gIcone {
    visibility: hidden;
}

.gJoindre-Item-Reseaux {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    padding-top: 2em;
}

.gJoindre-Item-Reseaux a {
    height: 2em;
    width: auto;
    margin-left: 2em;
}

.gJoindre-Item-Reseaux a img {
    height: 100%;
    width: auto;
}

/******************************************************************************************************** Contacts ***/

.gContacts-Item-Contenant {
    display: flex;
    flex-direction: column;
}

.gContacts-Item-Contenant a {
    display: flex;
    flex-direction: row;
}

.gContacts-Item-Contenu {
    display: flex;
    flex-direction: column;
}

.gContacts-Liste {
    padding: 1em 0 2em 0;
}

.gContacts-LienListe {
    display: flex;
}

.gContacts-LienListe a {
    font-size: 1.2em;
    text-decoration: none;
}

.gContacts-LienListe:hover {
    text-decoration: underline;
  }

.gContacts-Elements {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    font-size: 1.125em;
    font-weight: 600;
    line-height: 1.75em;
    text-align: left;    
    border-bottom: 0.063em solid #223654;
}

.gContacts-Options {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 1.5em 0;
    border-bottom: 0.063em solid #c5cad2;
}

.gContacts-Options-Item label {
    font-size: 0.8em;
    font-weight: bold;
}

.gContacts-Options-Item input {
    font-size: 1em;
    width: 2em;
}

.gContacts-Options-Item select {
    font-size: 1em;
    height: 2.5em;
    -webkit-border-radius: 0;
    border-radius: 0;
    padding: 0.5em 0 0.5em 0.5em;
    background-color: transparent;
    border: 0.1em solid #6B778A;
    box-sizing: border-box;
}

.gContacts-Item {
    padding-bottom: 0.5em;
    border-bottom: 0.063em solid #c5cad2;
    margin-bottom: 1em;
}

.gContacts-Item a {
    color: #223654;
    text-decoration: none;
}

.gContacts-Item-Image {
    min-width: 15%;
    max-width: 15%;
    padding-right: 1em;
    float: left;
}

.gContacts-Item-Image img {
    width: 100%;
    height: auto;
}

.gContacts-Item-Contenu {
    color: #223654;
    width: 100%;
}

.gContacts-Item-Date {
    font-size: 0.875em;
    line-height: 1.5em;
}

.gContacts-Item-Nom {
    font-weight: bold;
}

.gContacts-Item-Genre {
    font-size: 0.875em;
    line-height: 1.5em;
}

.gContacts-Item-Sujet {
    font-size: 0.9em;
    font-weight: bold;
}

.gContacts-Item-Titre h4 {
    color: #095797;
    font-size: 1.2em;
    font-weight: bold;
    margin-block-start: 0;
    margin-block-end: 0.5em;
}

.gContacts-Item-Telephones span {
    font-style: italic;
    padding-right: 0.5em;
}

.gContacts-Item-Reseaux {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

.gContacts-Item-Reseaux-Contenu {
    display: flex;
    flex-direction: row;
}

.gContacts-Item-Reseau {
    width: 1.5em;
    height: auto;
    padding: 0.5em;
}

.gContacts-Item-Reseau:first-child {
    padding-left: 0;
}

.gContacts-Item-Reseau img {
    width: 100%;
    height: auto;
}

/********************************************************************************************************* Contact ***/

.gContact {
    display: flex;
    flex-direction: column;
    font-size: 1.2em;
}

.gContact .gIcoContact {
    width: 100%;
	height: auto;
}

.gContact-Nom {
    font-size: 1.4em;
    font-weight: bold;
}

.gContact-Contact span {
    font-weight: bold;
}

.gContact-Organisme {
    font-weight: bold;
}

.gContact-Emploi span,
.gContact-Organisme span {
    display: none;
}

.gContact-Infos {
    display: flex;
    flex-direction: row;
    margin-bottom: 1em;
}

.gContact-Info {
    display: flex;
    flex-direction: column;
}

.gContact-Image {
    min-width: 25%;
    max-width: 25%;
    float: left;
    margin: 0 1em 0.5em 0;
}

.gContact-Image img {
    width: 100%;
    height: auto;
}

.gContact-Image-Vide {
    max-width: 100%;
    height: auto;
}

.gContact-Image-Vide svg {
    width: 100%;
    max-width: 100%;
    height: auto;
}

.gContact-Titre h2 {
    font-size: 2em;
}

.gContact-Date {
    font-weight: bold;
}

.gContact-Type {
    font-style: italic;
}

.gContact-Icone {
    display: flex;
    justify-content: center;
    align-items: center;
    /*height: 1.5em;*/
    width: 1em;
    margin-left: 0.75em;
}

.gContact-Adresse {
    padding: 0.25em 0;
}

.gContact-Courriels header,
.gContact-Telephones header,
.gContact-Events header {
    font-weight: bold;
}

.gContact-Courriel,
.gContact-Telephone {
    display: flex;
    flex-direction: row;
    align-items: center;
    line-height: 1.5em;
}

.gContact-Courriel span,
.gContact-Telephone span {
    font-style: italic;
    padding-right: 1em;
}

.gContact-Courriel a,
.gContact-Telephone a {
    display: flex;
    flex-direction: row;
    color: currentColor;
    text-decoration: none;
}

.gContact-Telephone .gContact-Telephone-SMS {
    display: none;
}

.gContact-Liens h2.gContact-Liens-Titre{
    font-size: 2.25em;
    font-weight: 700;
    line-height: 1.5em;
}
.gContact-Liens-Contenu{
    display: flex;
    flex-direction: column;
    gap: 1.5em;
    max-width: max-content;
}
.gContact-Liens-Contenu > a{
    padding-left: 2em;
    font-size: 1em;
    font-weight: 400;
    line-height: 1.5em;
    text-align: left;
}
.gContact-Liens-Contenu > a::before{
    content: '';
    background: url(../Icons/icone_docs.svg);
    width: 1.5em;
    height: 1.5em;
    position: absolute;
    background-position: center;
    background-size: 1.5em;
    margin-left: -2em;
    background-repeat: no-repeat;
}

.gContact-Reseaux {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

.gContact-Reseau {
    display: flex;
    width: 3em;
    height: auto;
    padding: 1em;
}

.gContact-Reseau:first-child {
    padding-left: 0;
}

.gContact-Reseau img {
    width: 100%;
    height: auto;
}

.gContact-Events {
    margin-top: 1em;
}

/********************************************************************************************************* Teasers ***/

.gContacts-Teasers {
    display: flex;
    flex-direction: column;
}

.gContacts-Teasers-Liste {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: #223654;
}

.gContacts-Teasers-Item {
    padding-bottom: 2em;
}

.gContacts-Teasers-Item a {
    text-decoration: none;
}

.gContacts-Teasers-Item a:hover {
    background-color: #f5f5f5;
}

.gContacts-Teasers-Item-Contenu {
    color: #223654;
}

.gContacts-Teasers-Item-Image {
    min-width: 18%!important;
    max-width: 18%!important;
    padding-right: 1em;    
    float: left;
}

.gContacts-Teasers-Item-Image img {
    width: 100%!important;
    height: auto;
}

.gContacts-Teasers-Item-Date {
    font-size: 0.9em;
    line-height: 2.5em;
}

.gContacts-Teasers-Item-Genre {
    font-size: 0.9em;
    line-height: 1.5em;
}

.gContacts-Teasers-Item-Sujet {
    font-size: 0.9em;
    font-weight: bold;
}

.gContacts-Teasers-Item-Titre h4 {
    font-size: 1.2em;
    font-weight: bold;
    color: #095797;
    margin-block-start: 0;
    margin-block-end: 0.5em;
}

.hide-error {
    display: none;
}

.show-error {
    display: block;
    margin-top: 0.4em;
    font-weight: bold;
    color: #cb381f;
    font-size: 0.8em;
}

.champ-texte-error,
.champ-items-par-page-error {
    border: 0.2em solid #cb381f !important;
}

.hide-bloc-resultat {
    display: none !important;
}

/*********************************************************************************************************************/
/****************************************************************************************************** media 1024 ***/
/*********************************************************************************************************************/

@media (max-width: 1024px) {
    .gJoindre-Item {
        width: 90%;
    }    
}

/*********************************************************************************************************************/
/******************************************************************************************************* media 640 ***/
/*********************************************************************************************************************/

@media (max-width: 640px) {

    .gContact-Telephone .gContact-Telephone-SMS {
        display: flex;
    }

    .gJoindre-Item-Element-Contenu {
        flex-direction: column;
    }

    .gIcone {
        height: 2em;
    }
    .gJoindre-Item-Element {
        line-height: 2em;
    }
    
    .gJoindre-Item-Valeur {
        justify-content: flex-start;
    }
}