/*
Theme Name: City-hall Enfant
Description: Theme enfant de City-hall. Vous pouvez maintenant effectuer vos modifications en toute sécurité.
Author: WPMarmite
Author URI: https://wpmarmite.com
Template: city-hall
Version: 1.0
*/

/*
 * Vert : #00a000
 * Rouge : #bf1522   a50006
 * Bleu : #0066cc
 * Jaune :  #ec900f
 * Violet : #7b2398
 * 
 * Vert bon : #40a196
 * 
 * 
 * */

@import url('https://fonts.googleapis.com/css2?family=Elms+Sans:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

:root {
    --color-rouge: #a50006; /* 88171b;*/
    --color-bleu: #0066cc;
    --color-jaune: #ec900f; /*#ec900f;*/
    --color-violet: #7b2398;
    --color-vert: #40a196; /*#40a196;416f50 6ec280 */
}


body{
	font-family: "Open Sans", sans-serif;
	background-color: #fff;
}


a[href^="tel:"] {
    white-space: nowrap;
}
a[href^="mailto:"] {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.site-wrapper-frame {
	 width: 1220px;
}

@media screen and (max-width: 1220px) {
    .site-wrapper-frame {
        width: 100%;
    }
}

#site-page-columns {
    gap: 25px;
}

h1, h2, h3, h4, #site-primary-menu  {	
	font-family:  "Elms Sans", sans-serif; 
	position: relative;

}

h1, h2, h3 {		
    display: table;
    clear: none;
    margin-bottom: 35px;
}

.bsui h2 a {
	color: #000;
    margin-bottom: 25px;
    display: block;
}

.bsui h2 a:hover {
	color: var(--color-rouge);
    text-decoration:none;
}


#post_content .bsui  h2{
	margin-top: 50px !important;
	font-size: 1.75rem !important;
}

   #post_content  .bsui h3, #post_content .bsui .h3 {
        font-size: 1.4rem;
        margin-top: 30px;
    }


h1::after, h2::after, h3::after{
    content: "";
    height: 5px;
    width: 80px;
    position: absolute;
    left: -10px;
    bottom: -10px;
    z-index: 1;
    background: var(--color-rouge);
}

h2::after{
    background: var(--color-violet);
}

h3::after{
    background: var(--color-vert);
    width: 50px;
    height: 3px;
    bottom: -4px;
}

.entry-content > h2.wp-block-heading {
	margin-top:2em;
}

h2.entry-title a {
	text-decoration:none;
	color: #121212;
	font-size: 1.3rem;
}
.entry-content h2 {
    font-size: 1.5rem;
}

.entry-content h3 a {
	text-decoration : none;
	color : #333;
	font-weight:bold;
}
.entry-content h3 a:hover {
    color: var(--color-rouge);
}

:where(.wp-block-columns) {
    margin-bottom: 10px;
}

.single .page-title, .page .page-title {
    letter-spacing: 0px; 
}
.entry-content .aligncenter {
    display: table;
}

.entry-content a{
	
	text-decoration:none;
	font-weight:500;
	color: var(--color-bleu);
}


.entry-content a:hover{
	color: var(--color-rouge);
}
.bsui a:focus-visible ,
.entry-content a:focus-visible {
	outline: 2px dashed #900 !important;
    outline-offset: 5px;
    border-radius: 1px;
}

.entry-content  img {
	max-width: 100%;
    height: auto;
}

.entry-content figure img {
	margin-bottom:0;
}

.entry-content ul:last-child {
  margin-bottom: 2rem;
}

.entry-content li > ul, .entry-content li > ol, .entry-content ul {
	margin-top : 5px;
}
.entry-content p {
    margin-bottom: 1rem;
}


.wp-block-button.btn a {
	padding:10px 30px;
	color:#FFF;
	background : var(--color-bleu);
	display:inline-block;
	margin-top:30px;
}



.wp-block-button.btn a:hover,
.wp-block-button.btn a:focus{
	background : var(--color-rouge);
}

.wp-block-button.btn-actu a {
	background : #0006;
}
  
#site-header-widgets {
	font-size:0.8em;
}


.wp-block-file a.wp-block-file__button  {
	background: var(--color-vert);
    color: white;
}


.wp-block-file a.wp-block-file__button:hover  {
	background: var(--color-rouge);
}


/* Images avec légende */
figure.wp-caption {
    max-width: 100% !important;
    height: auto;
    box-sizing: border-box;
}

figure.wp-caption img {
    display: block;
    max-width: 100% !important;
    height: auto !important;
}

/* Légende */
figure.wp-caption .wp-caption-text {
    max-width: 100%;
    box-sizing: border-box;
}
@media screen and (max-width: 768px) {

    figure.wp-caption {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    figure.wp-caption img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        box-sizing: border-box !important;
    }
}

/*=====================================================================================
 * =====================================================================================*/

button:hover, button:focus , input[type="button"]:hover, input[type="button"]:focus , input[type="submit"]:hover, input[type="submit"]:focus  {
	background-color: #0066cc26;
}



.page-header-left #site-logo {
    flex: 0 0 40%;
}


.cityhall-full {
    position: relative;
    padding: 60px 0;
    background-color: #40a196;
	color:#FFF;

    /* Étend visuellement le fond sans élargir le bloc */
    box-shadow: 0 0 0 100vmax #40a196;
    clip-path: inset(0 -100vmax);
}

.cityhall-full h2 {
	color:#000;
	
}
.cityhall-full h2.wp-block-heading::after {
	background:#00000066;
}

.cityhall-full a {
	color:#000;
}


.cityhall-full ul {
	margin: 0;
}


.cityhall-full ul li {
	background:#FFF;
	border:1px solid #ccc;
	color:#000;

}

/*search header */
.cityhall-header-search .cityhall-header-search {
    max-width: 350px;
}

.cityhall-header-search .cityhall-search-form {
    display: flex;
    align-items: stretch;
    width: 100%;
	margin:5px 0;
}

.cityhall-header-search .cityhall-search-input {
    flex: 1;
    min-width: 0;
    padding: 10px 15px;
    border: 1px solid #CCC;
    border-right: 0;
    border-radius: 5px 0 0 5px;
    font-size: 1rem;
}

.cityhall-header-search .cityhall-search-button {
    padding: 10px 15px;
    border: 0;
    border-radius: 0 5px 5px 0;
    background: #0066cc;
    color: #fff;
    cursor: pointer;
}

.cityhall-header-search .cityhall-search-button:focus-visible,
.cityhall-header-search .cityhall-search-input:focus-visible {
    
    border: 1px solid #000;
}

.cityhall-header-search .cityhall-search-button:hover {
    background: #004f9e;
}




/*====================*/

.wp-block-latest-posts__featured-image img {
	margin:0;
}

.wp-block-latest-posts__post-title,
.wp-block-latest-posts__post-date,
.wp-block-latest-posts__post-excerpt{
	padding:0 25px;
	display: block;
}
/* 
.large-nav li:nth-child(5n + 1) > a,
#site-primary-nav .large-nav .green > a {
  border-top-color: var(--color-vert);
} */

/*================= NAV Secondaire ==============*/
#site-secondary-nav a::before {
    content: "";
    display: inline-block;

    width: 24px;
    height: 24px;

    background-color: currentColor;
	margin: -6px 5px -6px 0;

    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;

    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
}


/* =========================
   URGENCES
   ========================= */

#site-secondary-nav li.menu-urgence a {
    color: #bf1522;
}

#site-secondary-nav li.menu-urgence a::before {
    mask-image: url("/wp-content/uploads/2026/09/urgences.svg");
    -webkit-mask-image: url("/wp-content/uploads/2026/09/urgences.svg");
}


/* =========================
   ADRESSES UTILES
   ========================= */

#site-secondary-nav li.menu-adresse a {
    color: #0066cc;
}

#site-secondary-nav li.menu-adresse a::before {
    mask-image: url("/wp-content/uploads/2026/09/adresses-utiles.svg");
    -webkit-mask-image: url("/wp-content/uploads/2026/09/adresses-utiles.svg");
}


/* =========================
   ÉVÈNEMENTS
   ========================= */

#site-secondary-nav li.menu-event a {
    color: #ec900f;
}

#site-secondary-nav li.menu-event a::before {
    mask-image: url("/wp-content/uploads/2026/09/evenements.svg");
    -webkit-mask-image: url("/wp-content/uploads/2026/09/evenements.svg");
}


/* =========================
   FACEBOOK
   ========================= */

#site-secondary-nav li.menu-fb a {
    color: transparent;
	font-size: 0px;
}

#site-secondary-nav li.menu-fb a::before {
    background-image: url("/wp-content/uploads/2026/09/facebook-v2.svg");
}

/* =========================
   PANNEAUPOCKET
   ========================= */

#site-secondary-nav li.menu-panneau a {
    color: transparent;
	font-size: 0px;
}

#site-secondary-nav li.menu-panneau a::before {
    background-image: url("/wp-content/uploads/2026/09/panneaupocket.svg");
}



#site-secondary-nav li.menu-panneau a::before,
#site-secondary-nav li.menu-fb a::before
{
	
	width: 40px;
    height: 40px;
	margin: -6px -5px -6px 0;

}

#site-secondary-nav li.menu-panneau a:focus-visible::before,
#site-secondary-nav li.menu-fb a:focus-visible::before
{

    outline: 2px dashed  #bf1522;
    outline-offset: 2px;

}



@media screen and (max-width: 480px) {
    #site-secondary-nav {
        display: block;
    }
	
}
@media screen and (max-width: 768px) {
	.page-header-left #site-header-widgets {
		align-self: center;
	}
}

/*=========== Fil d'ariane ================*/
.cityhall-breadcrumb {
    width: 100%;
}

.cityhall-breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0;
    padding: 0;
    list-style: none;
    margin: 0px auto 30px;
	padding-left: 25px;
    font-weight: 500;
}

.cityhall-breadcrumb-item {
    display: inline-flex;
    align-items: center;
}

/*
 * Séparateur purement décoratif :
 * il n’est pas lu par les lecteurs d’écran.
 */
.cityhall-breadcrumb-item + .cityhall-breadcrumb-item::before {
    content: "›";
    display: inline-block;
    margin: 0 0.5rem;
    speak: never;
}

.cityhall-breadcrumb a {
    color: #40a196;
    text-underline-offset: 0.15em;
}

.cityhall-breadcrumb a:hover {
    text-decoration-thickness: 0.15em;
    text-decoration: underline;
}

.cityhall-breadcrumb a:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 3px;
}
.cityhall-breadcrumb .fil-categorie-annuaire a,
.cityhall-breadcrumb .fil-commune a,
.cityhall-breadcrumb .fil-evenements a,
.cityhall-breadcrumb .fil-1542 a,
 .cityhall-breadcrumb .fil-actualites a
{
	color:var(--color-rouge);
}
.cityhall-breadcrumb .fil-vie-quotidienne a,
.cityhall-breadcrumb .fil-1001 a {
	color:var(--color-bleu);
}

.cityhall-breadcrumb .fil-demarches a,
.cityhall-breadcrumb .fil-616 a {
	color:var(--color-jaune);
}

.cityhall-breadcrumb .fil-annuaire a,
.cityhall-breadcrumb .fil-1523 a, 
.cityhall-breadcrumb .fil-gd_place a{
	color:var(--color-violet);
}

/*=========================================
 * menu secondaire
 * ================================*/

#site-secondary-nav a {
	    color: red;
	    font-size: 1rem;
}

/* ==========================================
   RECHERCHE
   ========================================== */
#primary {
	text-align:left;
}

.cityhall-search-form {
    margin: 30px 0;
}

.cityhall-search-form label {
    display: block;
    font-weight: 700;
    margin-bottom: 8px;
}

.cityhall-search-fields {
    display: flex;
    gap: 10px;
}

.cityhall-search-fields input[type="search"] {
    flex: 1;
    min-height: 48px;
    padding: 10px 15px;
    border: 1px solid #767676;
    border-radius: 4px;
}

.cityhall-search-fields button {
    min-height: 48px;
    padding: 10px 22px;
    border: 0;
    border-radius: 4px;
    background: #0066cc;
    color: #fff;
    font-weight: 700;
    cursor: pointer;
}

.cityhall-search-fields button:hover,
.cityhall-search-fields button:focus-visible {
    text-decoration: underline;
}

.cityhall-search-count {
    margin: 25px 0;
    font-weight: 600;
}


/* Résultat */

.cityhall-search-result {
    position: relative;
    margin-bottom: 20px;
    padding: 25px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.cityhall-search-type {
    display: inline-block;
    margin-bottom: 8px;
    padding: 4px 10px;
    background: #0066cc;
    color: #fff;
    border-radius: 3px;
    font-size: 0.875rem;
    font-weight: 700;
}

.cityhall-search-title {
    margin: 5px 0 15px;
}

.cityhall-search-title a {
    color: inherit;
	 text-decoration: none;
}

.cityhall-search-excerpt {
    margin-bottom: 15px;
}

.cityhall-search-read-more {
    display: inline-block;
    font-weight: 700;
}


/* Pagination */

.cityhall-search-pagination {
    margin: 30px 0;
}

.cityhall-search-pagination .page-numbers {
    display: inline-block;
    margin: 3px;
    padding: 8px 12px;
}

.cityhall-search-pagination .current {
    font-weight: 700;
    border: 2px solid currentColor;
}


/* Mobile */

@media (max-width: 600px) {

    .cityhall-search-fields {
        display: block;
    }

    .cityhall-search-fields input[type="search"],
    .cityhall-search-fields button {
        width: 100%;
    }

    .cityhall-search-fields button {
        margin-top: 10px;
    }
}


/*============ FORMULAIRE  =============*/

.nf-response-msg {
	border:1px solid var(--color-rouge);
	padding:15px;
	background:#a5000633;
	margin-top:40px;
}

/*=========== PAGES ================*/

#site-aside-primary, #site-aside-secondary
 {
    font-size: 0.9375em;
    margin-bottom: 2rem;
    flex-basis: 0;
}

.entry-content > .wp-block-group {
	padding : 20px 0;
}

.wp-block-image>a, .wp-block-image>figure>a {
    display: block;
}

@media screen and (max-width: 768px) {
    #site-aside-secondary {
        flex-basis: 100%;
    }
}

.wp-block-media-text {
	padding:5px;
       box-shadow: 1px 1px 10px #ccc;
    border-radius: 10px;
	margin-bottom: 30px;
}

.wp-block-media-text:hover,
.wp-block-media-text:focus-visible  {
	background-color : #40a196; /*#117639*/
	color:#FFF;
	
}
.wp-block-media-text:hover h2: {
	background: #000;
}

.wp-block-media-text:hover h2::after {
	background: #00000078;
}



.widget-title {
    font-size: 1.2em;
	text-transform : inherit;
	position:relative;
	padding-left:20px;
}

.widget-title::after {
    content: "";
    height: 4px;
    width: 40px;
    position: absolute;
    left: 10px;
    bottom: -10px;
    z-index: 1;
    background: var(--color-rouge);
}

/*-----page elus   -------*/

.tmm .tmm_member .tmm_textblock {

    min-height: 175px;
}
.tmm_15 .tmm_member .tmm_textblock {

    min-height: 215px;
	
	
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	
}

/*----------- SOUS PAGE ----------*/

.site-column-aside .widget:not(.widget_nav_menu) {
    border-top: solid 10px #970db3;
    padding: 20px 0 0 20px;
    border-left: 1px solid #970db3;
}

#site-aside-secondary .widget-title {
	    min-width: 275px;
}
.page-id-1523 #site-aside-secondary .widget-title,
.parent-pageid-1523  #site-aside-secondary .widget-title {
	    min-width: 200px;
}


.site-column-aside .widget:not(.widget_nav_menu) {
    border-top: 0px;
    padding: 20px 0 0 0px;
    border-left: 0px;
    box-shadow: 1px 1px 10px #ccc;
    border-radius: 10px;
}

.academia-related-pages .academia-related-page {
    padding: 5px 20px 5px 20px;
    position: relative;
}
.academia-related-pages li.academia-related-page a,
.academia-related-pages li.academia-related-page a:hover,
 .academia-related-pages .academia-related-page a:focus-visible {
	background: transparent ;
}


.academia-related-pages li.academia-related-page a:hover,
.academia-related-pages li.academia-related-page.current-menu-item a,
 .academia-related-pages .academia-related-page a:focus-visible {
	color: #FFF ;
	text-decoration:none;
	
}

.academia-related-pages li.academia-related-page:hover,
.academia-related-pages li.academia-related-page:focus-visible ,
.academia-related-pages li.academia-related-page a:focus-visible  ,
.academia-related-pages li.academia-related-page.current-menu-item{
	background: #40a196 ;
	color:#FFF;
}

.academia-related-pages li.academia-related-page:hover a{
	color:#FFF;
}

.academia-related-pages li.academia-related-page::after {
    content: "";
    display: inline-block;
    position: absolute;
    right: 12px;
    top: 30%;
    width: 16px;
    height: 16px;	
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 6 15 12 9 18'/%3E%3C/svg%3E");
}


.academia-related-pages li.academia-related-page:hover::after,
.academia-related-pages li.academia-related-page.current-menu-item::after {
    color:#c61b2d;      /* Rouge de votre thème */
    transform:translateX(3px);
	
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 6 15 12 9 18'/%3E%3C/svg%3E");
}

/*============ ACCUEIL ==============*/
.entry-content ul.wp-block-latest-posts__list li { 
	list-style: none;
	} 
	
.wpem-event-listings-header {
		display:none;
	}

.wpem-event-listing-type-page .wpem-event-listing-type-page-wrapper .wpem-
-listing-type-page-title .wpem-heading-text {
 
    text-align: left; 
}



.wp-block-latest-posts__featured-image {
	margin: 0;
    width: 100%;
}
}

.wp-block-latest-posts__featured-image a {
    display: block;
    width: 100%;
}

.wp-block-latest-posts__featured-image img {
    display: block;
    width: 100%;
    object-fit: cover;
}

/*==============================================
 * 			Actualités municipales
 * =============================================*/

h3.titre-home-actu {
	background: linear-gradient(180deg, rgb(38, 97, 90) 68%, rgb(64, 161, 150) 100%);
    padding:15px 0 30px;
    margin-bottom: 5px;
	color:#FFF;
	border-radius: 15px 15px 0 0;
	display:block;
}

.home iframe  {
	width: 650px;
    height: 763px;
	border:none;
    margin: -7px;
}

/*======== Derniers articles ======*/


.cityhall-latest-posts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

/* Carte */
.cityhall-latest-posts__item {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border-radius: 10px;
    background: #fff;
	
    color:#000;
}

/* Image */
.cityhall-latest-posts__image {
    display: block;
    flex-shrink: 0;
}

.cityhall-latest-posts__image img {
    display: block;
    width: 100%;
    height: 225px;
    object-fit: cover;
	 margin-bottom: 0rem;
	
	border-radius: 10px 10px 0 0;
}

/* Partie blanche de la carte */
.cityhall-latest-posts__content {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
    padding: 0px 16px 16px;
    overflow: hidden;
}

.cityhall-latest-posts__content h2 {
	margin-top:10px;
}


/* Évite que les mots ou URL dépassent */
.cityhall-latest-posts__title,
.cityhall-latest-posts__date,
.cityhall-latest-posts__categories,
.cityhall-latest-posts__excerpt {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
}

/* Extrait limité pour ne jamais sortir de la carte */
.cityhall-latest-posts__excerpt {
    display: -webkit-box;
    margin-top: 24px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 8;
    line-clamp: 8;
}

/* Lien toujours en bas à droite */
.cityhall-latest-posts__more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    align-self: flex-end;
    margin-top: auto;
    padding-top: 20px;
    flex-shrink: 0;
}

/* Responsive */
@media screen and (max-width: 768px) {
    .cityhall-latest-posts {
        grid-template-columns: 1fr;
    }

    .cityhall-latest-posts__item {
        width: 100%;
    }

    .cityhall-latest-posts__image img {
        height: 200px;
    }

    .cityhall-latest-posts__excerpt {
        -webkit-line-clamp: 7;
        line-clamp: 7;
    }
}

@media screen and (max-width: 480px) {
    .cityhall-latest-posts__content {
        padding: 18px 14px 14px;
    }

    .cityhall-latest-posts__image img {
        height: 180px;
    }

    .cityhall-latest-posts__excerpt {
        -webkit-line-clamp: 6;
        line-clamp: 6;
    }
}


/* =====================================================
   WP EVENT MANAGER — FOCUS CLAVIER VISIBLE
   ===================================================== */

.wpem-event-listings.wpem-event-listing-box-view .wpem-event-layout-wrapper:hover
{
	border: 1px solid #000;
}
.wpem-event-listings.wpem-event-listing-box-view .wpem-event-layout-wrapper:hover .wpem-event-infomation .wpem-event-details .wpem-event-title h3.wpem-heading-text
{
	color: var(--color-rouge);
}

/* Focus sur tous les liens des cartes d'évènements */
.event_listings_main a:focus-visible {
    outline: 4px solid #000;
    outline-offset: 4px;
    border-radius: 3px;
}

/* Met en évidence toute la carte lorsque l'un de ses liens
   reçoit le focus */
.event_listings_main .wpem-event-layout-wrapper:has(a:focus-visible) {
    outline: 4px solid #000;
    outline-offset: 4px;
    border-radius: 4px;
}

/* Focus particulier sur le lien de catégorie */
.event_listings_main .wpem-event-type a:focus-visible {
    outline: 4px solid #000;
    outline-offset: 3px;
}

/* Compatibilité pour les navigateurs ne gérant pas :focus-visible */
@supports not selector(:focus-visible) {
    .event_listings_main a:focus {
        outline: 4px solid #000;
        outline-offset: 4px;
    }
}


.load_more_events_loader {
	text-align:center;
}
button.load_more_events {
	background-color: #607285;
	border-radius: 10px;
    font-size: 17px;
    padding: 15px 30px;
    font-weight: 400;
}

button.load_more_events:hover,
button.load_more_events:focus-visible{
	background:var(--color-rouge);
}

/*========= COMPTE RENDU ============*/
#filebird-document-library {
	margin-top: 70px;
	margin-bottom: 70px;	
    margin-left: 30px;
}

#filebird-document-library div.fbdl-layout-control {
    display: none;
}

#filebird-document-library div.fbdl-gridview-container {
    margin-left: 35px !important;
    padding-left: 25px;
    margin-right: auto;
    border-left: 4px solid #007cba;
}

/*===============ACTUALITES==============*/

.actualite-lire-suite {
	text-align:right;
}

.site-archive-posts .site-archive-post + .site-archive-post {
	padding-top : 0;
}


/* Liste des actualités */
.site-archive-post {
    list-style: none;
    margin: 0 0 30px;
    padding: 0;
    overflow: hidden;

    background: #fff;
    border: 1px solid #d5d9dd;
    border-radius: 18px;
}

/* Carte horizontale */
.site-archive-post .site-column-widget-wrapper {
    display: flex;
    align-items: stretch;
    min-height: 220px;
}

/* Bloc image */
.site-archive-post .entry-thumbnail {
    width: 200px;
    min-width: 200px;
    margin: 0;
}

.site-archive-post .entry-thumbnail-wrapper {
    width: 100%;
    height: 100%;
}

.site-archive-post .entry-thumbnail-wrapper a {
    display: block;
    width: 100%;
    height: 100%;
}

/* Image sur toute la hauteur de la carte */
.site-archive-post .entry-thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 220px;
    object-fit: cover;
}

/* Partie texte */
.site-archive-post .entry-preview {
    flex: 1;
    min-width: 0;
}

.site-archive-post .entry-preview-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 20px 20px 20px 0;
    box-sizing: border-box;
}

/* Titre */
.site-archive-post .entry-title {
    margin: 0 0 15px;
    overflow-wrap: anywhere;
}

.site-archive-post .entry-title a {
    color: #111;
    text-decoration: none;
}

.site-archive-post .entry-title a:hover,
.site-archive-post .entry-title a:focus-visible {
   color:var(--color-rouge);
}

/* Métadonnées */
.site-archive-post .actualite-meta {

    margin-bottom: 20px;
}

/* Date */
.site-archive-post .actualite-date {
    width: 100%;
    color: #333;
}

/* Catégories en badges */
.site-archive-post .actualite-meta .post-categories  {
	 display: inline;
	padding-left:20px;
}
.site-archive-post .actualite-meta .post-categories li {
	
    display: inline-flex;
    align-items: center;
	padding-right:20px;
}
.site-archive-post .actualite-meta .post-categories a {
    padding: 5px 12px;

    background: var(--color-bleu);
    color: #fff;
    border-radius: 10px;

    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.3;
    text-decoration: none;
}

.site-archive-post .actualite-meta .post-categories a:hover,
.site-archive-post .actualite-meta .post-categories a:focus-visible {
    background: var(--color-rouge);
    color: #fff;
    text-decoration: none;
}

/* Extrait */
.site-archive-post .entry-excerpt {
    margin: 0 0 20px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

/* Lire la suite toujours en bas à droite */
.site-archive-post .actualite-lire-suite {
    margin: auto 0 0;
    text-align: right;
}

.site-archive-post .actualite-lire-suite a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--color-rouge);
    font-weight: 500;
    text-decoration: none;
}

/* Petite flèche à gauche */
.site-archive-post .actualite-lire-suite a::after {
    content: "→";
    display: inline-block;
    font-size: 1.1em;
    line-height: 1;
}

.site-archive-post .actualite-lire-suite a:hover,
.site-archive-post .actualite-lire-suite a:focus-visible {
    text-decoration: underline;
}

/* Focus accessible */
.site-archive-post a:focus-visible {
    outline: 3px solid #ec900f;
    outline-offset: 3px;
}


@media screen and (max-width: 700px) {

    .site-archive-post .site-column-widget-wrapper {
        flex-direction: column;
        min-height: 0;
    }

    .site-archive-post .entry-thumbnail {
        width: 100%;
        min-width: 100%;
        height: 220px;
    }

    .site-archive-post .entry-thumbnail img {
        width: 100%;
        height: 220px;
        min-height: 220px;
    }

    .site-archive-post .entry-preview-wrapper {
        padding: 22px 20px;
    }
}

/*==========EVENEMENTS ==============*/

.chosen-choices .search-field input.default {
	width: 246.562px !important;
}

img:is([sizes=auto i],[sizes^="auto," i]) {
    contain-intrinsic-size: 500px 500px;
}


/*==========ANNUAIRE ==============*/
/*bouton categorie dans liste annuaire*/
.geodir-categories-container .gd-cptcat-parent > .card > .btn {
    color: #ffffff !important;
    background-color: #40a196 !important;
	    border: 1px solid #40a196;
	
}

.geodir-categories-container .gd-cptcat-parent > .card > .btn:hover {
    background-color: var(--color-rouge) !important;
	    border: 1px solid var(--color-rouge);
}

.geodir-categories-container .gd-cptcat-parent > .card > .btn a:hover {
    text-decoration:none;
}


.geodir-categories-container .gd-cptcat-parent > .card > .btn .position-absolute {
	position:relative ! important;
}

.bsui .btn-primary:hover, .bsui .btn-primary:focus, .bsui .btn-primary:active, .bsui .btn-primary.active, .bsui .btn-primary.show {
    box-shadow: 0 0.25rem 0.25rem 0.125rem #cccccc7a, 0 0.375rem 0.75rem -0.125rem #cccccc !important;
}
/* ------------------------------
   Widget images GeoDirectory
------------------------------ */

.bsui .geodir-category .text-bg-dark {
	margin-top:20px;
    color: #fff !important;
    background-color: var(--color-bleu) !important;
}
.bsui .geodir-category .text-bg-dark:hover {
    background-color: var(--color-rouge) !important;
	text-decoration:none;
}

.bsui .geodir-category.float-start {
	    float: none !important;
} 
/*--------------------*/

.bsui .clearfix::after {
    display: inline-block !important;
}
.bsui .navbar-expand {
	display: none;
}
.bsui .clear-both {
    clear: none !important;
}




.bsui .card-footer {
	min-height:60px;
}
.bsui .text-reset {
        padding-right: 10px;
}
.bsui .text-reset:hover {
	text-decoration:none;
}

.bsui .badge.bg-secondary {
    background-color: var(--color-bleu) !important;
	color:#FFF !important;
	padding: 10px 15px;
	    margin-top: 50px;
}

/* Catégories sur liste annuaire */

.wp-block-buttons .wp-block-button__link {
    padding: 5px;
}


/*--------- ANNUAIRE ------------------*/
 .card  .geodir-output-location {
	display : none;
} 

/*  .row-cols-md-3  .card  .geodir-post-meta-container.bsui .gv-hide-s-2 .gv-secondary{
	display : inline-block;
}  */

/*---------- Fiche annuaire --------------*/


/* catégorie*/
.bsui .text-bg-dark {
    color: #ffffff !important;
    background-color: var(--color-bleu) !important;
    font-weight: 500;
    font-size: 1rem;
}


/*Retirer les numéro sous les images*/
li.my-1.mx-1.bg-dark {
    list-style: none;
}



/*========================================
/* Galeries dans les fiches GeoDirectory */
/*========================================*/


.single-gd_place .gallery {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 15px;
    margin: 20px 0;
}
.single-gd_place .gallery-columns-2 {
    grid-template-columns: repeat(2, 1fr);
	
}
.single-gd_place .gallery-columns-3 {
    grid-template-columns: repeat(3, 1fr);
	
}

.single-gd_place .gallery-columns-4 {
    grid-template-columns: repeat(4, 1fr);
	
}

/* Chaque élément de la galerie */
.single-gd_place .gallery .gallery-item {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Conteneur de l'image */
.single-gd_place .gallery .gallery-icon {
    aspect-ratio: 3 / 4;
    overflow: hidden;
}

/* Lien */
.single-gd_place .gallery .gallery-icon a {
    display: block;
    width: 100%;
    height: 100%;
}

/* Image */
.single-gd_place .gallery .gallery-icon img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    object-position: center;
    border: 0 !important;
}

/* Tablette */
@media (max-width: 768px) {
    .single-gd_place .gallery {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Mobile */
@media (max-width: 480px) {
    .single-gd_place .gallery {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   GEODIRECTORY - GALERIE PHOTOS
   ======================================== */

/* Désactive visuellement l'effet Masonry */
.wp-block-geodirectory-geodir-widget-post-images
.geodir-images-masonry {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;

    /* Annule la hauteur calculée par Masonry */
    height: auto !important;
}

/* Annule le positionnement injecté par Masonry */
.wp-block-geodirectory-geodir-widget-post-images
.geodir-masonry-item {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
}

/* Carte contenant l'image */
.wp-block-geodirectory-geodir-widget-post-images
.geodir-masonry-item .card {
    width: 100%;
    height: 100%;
	min-height: 240px;
    max-height: 500px;
    overflow: hidden;
}

/* Images */
.wp-block-geodirectory-geodir-widget-post-images
.geodir-masonry-item img {
    display: block;
    width: 100% !important;
    height: 100% !important;

    /* Affiche toute l'image sans la couper */
    object-fit: cover !important;

    /* Évite les déformations */
    object-position: center;
}

@media (max-width: 768px) {

    .wp-block-geodirectory-geodir-widget-post-images
    .geodir-images-masonry {
        grid-template-columns: 1fr;
    }

    .wp-block-geodirectory-geodir-widget-post-images
    .geodir-masonry-item .card {
        height: auto;
    }

    .wp-block-geodirectory-geodir-widget-post-images
    .geodir-masonry-item img {
        height: auto !important;
        object-fit: contain !important;
    }
}

/*---------------------------------------------*/

/* horaires */
/* GeoDirectory - disparaitre les horaires  liste déroulante */
.wp-block-geodirectory-geodir-widget-single-tabs  a.text-reset.dropdown-toggle.d-block.text-truncate {
    display: none !important;
}

/* afficher les horaires */
.wp-block-geodirectory-geodir-widget-single-tabs .gd-bh-open-hours.dropdown-menu.dropdown-caret-0.my-3 {
	max-width: 250px;
    position: relative;
    display: block;
	box-shadow: none;
}
.dropdown-item.py-1.gd-bh-days-list::after {
    content: "";
    display: block;
    clear: both;
}
.bsui .float-end {
    text-align: right;
}
.wp-block-geodirectory-geodir-widget-single-tabs .gd-bh-open-hours.dropdown-menu.dropdown-caret-0.my-3 > div {
	border-bottom : 1px solid #CCC;
}

.precisions-horaires{
    margin-top:10px;
    font-size:.9rem;
    font-style:italic;
    color:#666;
}

/*pagination annuaire */

.entry-content ul.pagination li {
    list-style-type: none;
}
.bsui .mx-0 {
    margin-top: 4px;
}

/*======= Demarches administratives ==========*/

.gb-block-profile .gb-profile-image-wrap {
    background: transparent; 
}
h2.gb-profile-name::after {
	display : none;
}

/*** panneau pocket======*/

.panneaupocket-float-right {
	    float: right;
    width: 335px;
    margin-left: 20px;
}

/*======= FOOTER ===========*/
#site-prefooter {
    background-color: var(--color-rouge);
	color:#fff;
}
#site-prefooter a {
	color:#fff;
}

@media screen and (min-width: 1220px) {

	#site-prefooter .site-section-wrapper-footer{
		display: flex;
		justify-content: space-between;
	}
	#site-prefooter .site-section-wrapper-footer > div {
		width: 33%;
	}
} 


@media screen and (max-width: 1220px) {

	#site-prefooter .site-section-wrapper-footer > div{
		padding:30px 15px;
		border-bottom: 1px solid #FFF;
	}
}

	#site-prefooter  .widget-title {
	padding-left:0px;
}

	#site-prefooter  .widget-title::after {
    width: 60px;
    left: 0px;
}

#site-prefooter ul {
	list-style:circle;
	margin-left:35px;
}

#site-prefooter  .widget-title::after {
	background: #00000077;
}
#site-prefooter .textwidget p {
	margin-top: 15px;
}

#site-footer {
	padding:10px 0;
}



/*=============== Plan du site ===============*/

.plan-du-site ul,
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu{
	margin-top:0;
}

.plan-du-site .wp-block-navigation .has-child.open-always .wp-block-navigation__submenu-container, 
.plan-du-site .wp-block-navigation .has-child.open-always.wp-block-navigation-submenu {
	gap:0;
}

.entry-content ul.dernieres-actus li {
	    list-style: circle;
	margin-left:30px;
}

.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {
     color: var(--color-bleu); 
}
.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:hover {
     color: var(--color-rouge); 
}




