/*
Theme Name: mdj25
Theme URI: http://www.mdjneuville.fr/
Author: compilot
Author URI: http://www.compilot.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: mdj25
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL. mdj25 is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc. Underscores is distributed under the terms of the GNU GPL v2 or later.
Normalizing styles have been helped along thanks to the fine work of Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1. Light and dark styles
2. Normalize
2. Typography
3. Elements
	a. Basic layout
4. Forms
5. Navigation
	a. Links
	b. Menus
6. Accessibility
7. Alignments
8. Clearings
9. Widgets
10. Content
	a. Posts and pages
	b. LIST | template-parts/content.php
	c. Comments
	d. wp-block
11. Infinite scroll
12. Media
	a. Captions
	b. Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
1. Light and dark styles
--------------------------------------------------------------*/

/* light */
html.theme-light {
  --color: hsla(258,85%,8%,1);
  --background-color: hsla(0,0%,98%,1);
  --card-background-color: hsla(0,0%,100%,1);
	--link-color: hsla(229,57%,34%,1);
	--link-color-visited : hsla(229,57%,59%,1);
	--link-color-hover: hsla(25,88%,52%,1);
	--main-headline-color: hsla(228,29%,33%,1);
  --accent-color: hsla(51,100%,50%,1);
  --accent-background-color: hsla(257,37%,96%,1);
  --metadata-color: hsla(228,17%,55%,1); /* post metadatas */
	--metadata-color-30percent: hsla(240, 1%, 28%, 0.3);
	--mark-background-color: hsla(60,100%,74%,1); /* underlined content */
	--input-background: hsla(220,33%,96%,1);
	--button-background-color: hsla(219, 79%, 66%,1);
	--notification-background-color:hsl(50.6, 100%, 93.7%);
}

/* dark */
html.theme-dark {
  --color: hsla(0,0%,98%,1);
  --background-color: hsla(258,85%,8%,1);
	--card-background-color: hsla(260,100%,5%,1);
  --link-color: hsla(220,100%,60%,1);
	--link-color-visited : hsla(220,71%,60%,1);
	--link-color-hover: hsla(25,88%,52%,1);
  --main-headline-color: hsla(248,64%,88%,1);
  --accent-color: hsla(51,100%,50%,1);
  --accent-background-color: hsla(239,66%,13%,1);
  --metadata-color: hsla(228,17%,55%,1);
	--metadata-color-30percent: hsla(228,17%,55%,.3);
	--mark-background-color: hsla(257,97%,24%,1);
	--input-background:hsla(238, 25%, 25%,1);
  --button-background-color: hsla(219, 79%, 66%,1);
	--notification-background-color:hsla(239,66%,13%,1);

  --image-filter: grayscale(50%);
}

/* Global colors */
html {
	--mdj-logo-color: hsla(318,78%,37%,1);
  --white: hsla(0,0%,100%,1);
	--50percent-white: hsla(0,0%,100%,0.50);
	--blackrock: hsla(258,85%,8%,1);	
}

.theme-button {display: none;}
.theme-button.enabled {display: inline;}
.theme-change-active body{--duration: 0.25s;--timing: ease-out;transition:color var(--duration) var(--timing),background-color var(--duration) var(--timing);}
img:not([src*=".svg"]) {filter: var(--image-filter);}

/* -------------------------------------------------------------- */
/* Color Scheme Icon                                              */
/* -------------------------------------------------------------- */
.theme-selector{width: 54px;height: auto;padding: 12px;}
#theme-light-button.theme-button, #theme-dark-button.theme-button {display: none;padding:0;background: transparent;}
#theme-light-button.theme-button.enabled, #theme-dark-button.theme-button.enabled {display: inline;color:var(--white);}
#theme-light-button .icon-sun, #theme-dark-button .icon-moon{width: 30px;height: 30px;}

/*--------------------------------------------------------------
2. Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {line-height: 1.15;-webkit-text-size-adjust: 100%;}
body {margin: 0;}
main {display: block;}
hr {box-sizing: content-box; height: 0; overflow: visible;}
pre {font-family: monospace, monospace;font-size: 1em;}
a {background-color: transparent;}
abbr[title] {border-bottom: none;text-decoration: underline; text-decoration: underline dotted;}
b, strong {font-weight: bolder;}
code, kbd, samp {font-family: monospace, monospace;font-size: 1em;}
small {font-size: 80%;}
sub, sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
sub {bottom: -0.25em;}
sup {top: -0.5em;}
img {border-style: none;}
button, input, optgroup, select, textarea {font-family: inherit;font-size: 100%;line-height: 1.15;margin: 0;}
button, input {overflow: visible;}
button, select {text-transform: none;}
button, [type="button"], [type="reset"], [type="submit"] {appearance: button; -webkit-appearance: button;}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {border-style: none;padding: 0;}
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {outline: 1px dotted ButtonText;}
fieldset {padding: 0.35em 0.75em 0.625em;}
legend {box-sizing: border-box;color: inherit;display: table;max-width: 100%;padding: 0;white-space: normal;}
progress {vertical-align: baseline;}
textarea {overflow: auto;}
[type="checkbox"], [type="radio"] {box-sizing: border-box;padding: 0;}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {height: auto;}
[type="search"] {appearance: textfield;-webkit-appearance: textfield;outline-offset: -2px;}
[type="search"]::-webkit-search-decoration {appearance: none;-webkit-appearance: none;}
::-webkit-file-upload-button {appearance: button;-webkit-appearance: button;font: inherit;}
details {display: block;}
summary {display: list-item;}
template {display: none;}
[hidden] {display: none;}

/* -------------------------------------------------------------- */
/* Generic style based on variables                                          */
/* -------------------------------------------------------------- */
:root {color-scheme: light dark;}
body {color: var(--color);background-color: var(--background-color);}
a{color:var(--link-color);}
img {height: auto;/* Make sure images are scaled correctly. */max-width: 100%;/* Adhere to container width. */}
img[src*=".svg"]:hover {filter: var(--icon-filter_hover);}

/*--------------------------------------------------------------
2. Typography
--------------------------------------------------------------*/
body,button,input,select,optgroup,textarea{font-optical-sizing: auto;font-style: normal; font-size:100%;font-size:1rem;line-height:1.6}
p{margin-bottom:1.5rem}
dfn,cite,em,i{font-style:italic}
blockquote {font-style:italic;border-color:var(--accent-color);border-style: solid;border-width: 0 0 0 .2rem;color: inherit;font-size: 1.1rem;margin: 1rem 3rem !important;padding: .5rem 0 .5rem 2rem;}
blockquote > *{margin: 0!important;}
address{margin:0 0 1.5rem}
pre{background:var(--accent-background-color);font-size:15px;font-size:.9375rem;line-height:1.6;margin-bottom:1.6rem;max-width:100%;overflow:auto;padding:1.6rem}
code,kbd,tt,var{font-size:15px;font-size:.9375rem}
abbr,acronym{border-bottom:1px dotted #666;cursor:help}
mark,ins{background:#fff9c0;text-decoration:none}
big{font-size:125%}
h1,h2,h3,h4,h5,h6 {clear:both;line-height: 1.1;color: var(--main-headline-color);margin:3rem auto 2rem;width:100%;}
h1{font-size:2rem;font-weight: 600;margin: 0.67em 0;}
h2{font-size:1.5rem;font-weight: 600;}
h3{font-size:1.17rem;}
h4{font-size:1rem;}
h5{font-size:.83rem;margin:1.5rem auto 1rem}
h6{font-size:.67rem;}
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a {text-decoration: none;}

@media screen and (min-width: 962px){
	body,button,input,select,optgroup,textarea{font-size:1.125rem;}
	h1{font-size:3rem;line-height: 1.1;}
	h2{font-size:2.25rem;line-height: 1;}
	h3{font-size:1.5rem;}
	h4{font-size:1.25rem;}
	h5{font-size:.83rem;}
	h6{font-size:.67rem;}
}
.has-drop-cap:not(:focus)::first-letter {font-weight: 700;font-size: 4.1em!important;}
.highlight-underline{position: relative;display: inline-block;z-index: -10;}
.highlight-underline::after {content: '';position: absolute;left: 50%;transform: translateX(-50%);bottom: -5%;width: 101%;height: 70%;background-color: var(--mark-background-color);border-radius: 0;z-index: -10;}

/* a. Font-family
--------------------------------------------------------------*/
body,button,input,select,optgroup,textarea,.has-drop-cap:not(:focus)::first-letter, .top-nav, .wp-block-quote cite, .wp-block-pullquote cite, .list_layout-category {font-family:"DM Sans", Verdana, Arial, Helvetica, sans-serif;}
h1,h2,h3,h4,h5,h6, blockquote, .entry-footer, .list_layout-title, .top-nav .container .nav-search input[type=text] {font-family:"Lexend", Verdana, Arial, Helvetica, sans-serif;}
blockquote{}
pre{font-family:"Courier 10 Pitch",Courier,monospace;}
code,kbd,tt,var{font-family:Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace;}

/*--------------------------------------------------------------
3. Elements
--------------------------------------------------------------*/
html {box-sizing: border-box;}
*, *::before, *::after {/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */box-sizing: inherit;}
body{}
hr{background-color:var(--accent-background-color);border:0;height:1px;margin-bottom:1.5em}
ul,ol{margin:1rem auto 1.25rem;padding:0 1.25rem;}
ul{list-style:disc}
ol{list-style:decimal}
li > ul,li > ol{margin:0 auto;padding:0 0 0 2rem;}
dt{font-weight:bold}
dd{margin:0 1.5rem 1.5rem}
figure {margin: 1rem 0;/* Extra wide images within figure tags don't overflow the content area. */}
table {margin: 0 0 1.5rem;width: 100%;}


/*--------------------------------------------------------------
3. Images
--------------------------------------------------------------*/
/* .post-thumbnail */
.post-thumbnail{position:relative;overflow:hidden;border-radius:14px;cursor:pointer;isolation:isolate;}
.post-thumbnail img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1);transition:transform .65s cubic-bezier(.2,.6,.2,1),filter .65s cubic-bezier(.2,.6,.2,1);will-change:transform;}
.post-thumbnail::after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,hsl(229.1,58.5%,59.4%,0.75) 0%,hsl(229.1,58.5%,59.4%,0.45) 35%,hsl(229.1,58.5%,59.4%,0.15) 60%,transparent 100%);transition:opacity .5s ease;z-index:1;pointer-events: none;}
.post-thumbnail::before {content: "";position: absolute;width: 200%;height: 200%;left: -100%;bottom: -100%;background: linear-gradient(45deg,transparent 35%, rgba(255,255,255,0.22) 50%,transparent 65%);opacity: 0;transform: translate(0,0) rotate(25deg);transition:transform 0.9s cubic-bezier(.2,.6,.2,1),opacity 0.45s ease;z-index: 2;pointer-events: none;}
.post-thumbnail:hover img{transform:scale(1.05) rotate(0.35deg);filter:saturate(1.05) contrast(1.05);}
.post-thumbnail:hover::after{opacity:0;}
.post-thumbnail:hover::before {opacity: 1;transform: translate(80%, -80%) rotate(25deg);opacity: 0.9;}

/* .mdj25_post_image-fallback */
.mdj25_post_image-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--link-color-visited);}
.mdj25_post_image-fallback svg{width:50%;height:50%;opacity:.5;}
.post-thumbnail svg{transform:scale(1);transition:transform .65s cubic-bezier(.2,.6,.2,1),filter .65s cubic-bezier(.2,.6,.2,1);will-change:transform;}
.post-thumbnail:hover svg{transform:scale(1.05);}

/*--------------------------------------------------------------
3. Sticky footer "Grid edition"
--------------------------------------------------------------*/
body {display: grid;grid-template-rows: auto 1fr auto;min-height: 100vh; }
/* a. Basic layout
website structure is :
	<body>
		<header id="siteHeader">
			<nav id="siteNav"></nav>
		</header>
		<main id="siteMain"></main>
		<footer id="siteFooter"></footer
	</body>
--------------------------------------------------------------*/

.site-header{width: 100%;height:60px;position:sticky;top:0;z-index: 990;background: var(--card-background-color);box-shadow: 0 1px 4px 0px var(--metadata-color-30percent);}
.site-navigation{height: 60px;max-width:80rem;width: 100%;margin:0 auto;display:flex;align-items: center;position: relative; color:var(--color);}
.site-content{max-width:80rem;margin: 0 auto;display:grid;margin: 0 auto 0;}
.site-content-wrapper{width:100%;}

.full-width{width:100%;}
.site-footer{background: var(--accent-background-color);}

.entry-header, .entry-content > *, .entry-summary, .entry-footer, .post-navigation, .comments-area, .page-title, .page-header, .item-wrap, .widget-area, .not-found, .side-padding {padding-left: 1.25rem;padding-right:1.25rem;}
.entry-header, .entry-content > *, .entry-footer, .post-navigation, .comments-area, .item-wrap {margin: 2rem auto;}
.entry-content .size-full, .wp-block-file, .not-found .page-header, .not-found .page-header .page-title {padding:0;}

.entry-category{margin:0 0 .5rem 0;color:var(--metadata-color);}

@media screen and (min-width: 962px){
	.site-header{height:80px;}
	.site-navigation{height:80px;}
}

/* b. Header
--------------------------------------------------------------*/

/* c. Main
--------------------------------------------------------------*/

/* d. Footer
--------------------------------------------------------------*/
.site-footer{}
.site-footer-content{font-size:0.9rem;width: 100%;max-width: 80em;margin: 0 auto;align-items: center;color:var(--metadata-color);padding: 2rem 1.25rem 0 1.25rem;display: flex; flex-wrap: wrap; flex-direction:column;align-items: start;}
@media screen and (min-width: 962px){
	.site-footer-content {flex-direction:row;}
}
.site-footer-content .button{color: var(--background-color);background-color: var(--link-color-visited);border: none;border-radius: 0;color: var(--white);font-weight: 700;letter-spacing: .0333rem;line-height: 1.25;margin: 1rem 0;opacity: 1;padding: .75rem 1.25rem;text-align: center;text-decoration: none;transition: .15s linear;border-radius: 10em;}
 
/* .footer-branding */
.footer-branding {padding: 1rem 0;flex: 1 1 1;}
.footer-branding svg{max-width:250px;color:var(--link-color); }
.footer-branding p{ margin: .5rem 0 0 0;}
.footer-branding .social-navigation ul.social-links-menu{justify-content: start;margin: 1rem 0;}
.footer-branding .social-navigation ul.social-links-menu li a{}
@media screen and (min-width: 962px){
	.footer-branding{flex: 1 1 250px; min-width: 250px;max-width: 300px;flex-direction: row; padding: 2rem 2rem 2rem 0;}
}

/* .menu-footer */
.menu-footer {padding: 1rem 0;flex: 1 1 1; }
.menu-footer h4{margin:0 0 1rem 0;color:var(--link-color-visited);}
.menu-footer-menu-container ul.menu{list-style: none;padding:0;}
.menu-footer-menu-container ul.menu li.menu-item a{text-decoration: none;}
.menu-footer-menu-container ul.menu li.menu-item a:hover{color:var(--);}
@media screen and (min-width: 962px){
	.menu-footer{flex: 1 1 1; min-width: 0;padding: 2rem;}
}

/* .footer-adresse */
.footer-adresse{padding: 1rem 0;flex: 1 1 1; }
.footer-adresse h4{margin:0 0 1rem 0;color:var(--link-color-visited);}
.footer-adresse p{margin:0;}
@media screen and (min-width: 962px){
	.footer-adresse{flex: 1 1 0; min-width: 0;padding: 2rem;}
}

/* .footer-horaires */
.footer-horaires{padding: 1rem 0;flex: 1 1 1; }
.footer-horaires h4{margin:0 0 1rem 0;color:var(--link-color-visited);}
.footer-horaires ul{margin:0;padding: 0 0 0 .75rem;}
@media screen and (min-width: 962px){
	.footer-horaires{flex: 1 1 2; min-width: 0;padding: 2rem 0 2rem 2rem;}
}

/* .site-info & .colophon */
.site-footer-content .site-info{flex: 1 1 100%;min-width: 0;width:100%;margin: 0 auto;display:flex;flex-direction: column;text-align: center;font-size: .8rem;color: var(--metadata-color); border-top:1px solid var(--metadata-color-30percent);padding: 1rem 0;}
.site-footer-content .site-info > * {flex:1;}
@media screen and (min-width: 962px){
	.site-footer-content .site-info{flex-direction: row;}
}
.site-footer-content .site-info .colophon{display: flex;flex-direction: column;justify-content: center;}


.sep::before{content: '';position: relative;left: 5px;top: -3px;width: 4px;height: 4px;border-radius:100%; background:var(--accent-color); font-size: 30px; display: inline-block; margin: 0 .6rem 0 0;}

.social-navigation ul.social-links-menu{display:flex;list-style: none;padding: 0;margin: 0;align-items: center; justify-content: center;}
.social-navigation ul.social-links-menu li {margin: 0 1rem 0 0;}
.social-navigation ul.social-links-menu li a{padding:0;display: flex; display: -webkit-box; display: -webkit-flex;justify-content: center;align-items: center;border-radius: 100%;background:rgba(255,255,255,.1);}
.social-navigation ul.social-links-menu li a .icon{width: 2rem;height: 2rem;fill:var(--link-color);}

/*--------------------------------------------------------------
4. Forms
--------------------------------------------------------------*/
button,input[type="button"],input[type="reset"],input[type="submit"]{border:1px solid;border-color:#ccc #ccc #bbb;border-radius:3px;background:#e6e6e6;color:rgba(0,0,0,0.8);font-size:12px;font-size:.75rem;line-height:1;padding:.6rem 1rem .4rem}
button:hover,input[type="button"]:hover,input[type="reset"]:hover,input[type="submit"]:hover{border-color:#ccc #bbb #aaa}
button:active,button:focus,input[type="button"]:active,input[type="button"]:focus,input[type="reset"]:active,input[type="reset"]:focus,input[type="submit"]:active,input[type="submit"]:focus{border-color:#aaa #bbb #bbb}
input[type="text"],input[type="email"],input[type="url"],input[type="password"],input[type="search"],input[type="number"],input[type="tel"],input[type="range"],input[type="date"],input[type="month"],input[type="week"],input[type="time"],input[type="datetime"],input[type="datetime-local"],input[type="color"],textarea{color:var(--color);border:1px solid #ccc;border-radius:3px;padding:3px;background: var(--accent-background-color);}
input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="search"]:focus,input[type="number"]:focus,input[type="tel"]:focus,input[type="range"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="week"]:focus,input[type="time"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="color"]:focus,textarea:focus{color:#111}
select{border:1px solid #ccc}
textarea{width:100%;background:var(--accent-background-color);}

/* Search form
--------------------------------------------------------------*/
.search-bar form{display: flex;align-items: center;background-color: var(--input-background);border-radius: 50px;padding: 12px;}
.search-bar form input.search-field {width: 100%;border: none;background: transparent;outline: none;flex: 1;padding: 8px 12px;font-size: 16px;color: var(--color);}
.search-bar form button.search-submit {background: none;border: none;cursor: pointer;padding: 8px;display: flex;align-items: center;justify-content: center;}
.search-bar form button.search-submit svg {width: 32px;height: 32px;stroke: var(--color);position: relative;top: -2px;}

/*--------------------------------------------------------------
5. Navigation
--------------------------------------------------------------*/

/* a. Links
--------------------------------------------------------------*/
a{color:var(--link-color);display: inline-block;}
a:visited{color:var(--link-color-visited);}
a:hover,a:focus,a:active{color:var(--link-color-hover);}
a:focus{outline:thin dotted}
a:hover,a:active{outline:0}

.entry-content p a, .entry-content li a {position: relative;z-index: 1;text-decoration:none;display:inline;}
.entry-content p a:hover, .entry-content li a:hover {color:var(--background-color);}
.entry-content p a:not(:has(img))::before, .entry-content li a:not(:has(img))::before {content: '';position: absolute;z-index: -1;top: 0;bottom: 0;left: -0.2em;right: -0.2em;background-color: var(--link-color-visited);transform-origin: center 100%;transform: scaleY(0.1);transition: all 0.1s ease-in-out;}
.entry-content p a:hover::before, .entry-content li a:hover::before {transform: scaleY(1);background-color: var(--link-color-visited);}
.entry-content p sup a::before, .entry-content li sup a::before  {content: '';position: absolute;z-index: -1;top: 0;bottom: 0;left: -0.2em;right: -0.2em;background-color: var(--link-color-visited);transform-origin: center 110%;transform: scaleY(0.0);transition: all 0.1s ease-in-out;}
.entry-content p img {margin: 0 0 1rem 0;}


/* b. Logo
--------------------------------------------------------------*/
.logo {color: var(--color);font-size: 24px;font-weight: bold;padding-left: 20px;}
.site-header .mdj_logo-subtitle {display:none;}
.site-footer-content .icon-mdj_logo{width: 16px;height: 16px;margin: 0 auto;fill: var(--link-color-visited);} 


@media screen and (min-width: 962px){
  .site-header .mdj_logo-subtitle {display:block;}
}

/* c. Menus
--------------------------------------------------------------*/
.site-content .comment-navigation,.site-content .posts-navigation,.site-content .post-navigation{margin:0 0 1.5rem;overflow:hidden}
.comment-navigation .nav-previous,.posts-navigation .nav-previous,.post-navigation .nav-previous{float:left;width:50%}
.comment-navigation .nav-next,.posts-navigation .nav-next,.post-navigation .nav-next{float:right;text-align:right;width:50%}
.site-branding{display:none;}

.top-nav {height: 60px;background:var(--background-color);position: fixed;top: 0;left: 0;width: 100%;z-index: 998;transition: all 0.5s;box-shadow: 0px -2px 5px 0px rgba(0,0,0,0.5);}
.top-nav .container{margin: 0 auto;height: 60px;max-width: 962px;clear: both; display: flex;align-items: center;}

@media screen and (min-width: 962px){
	.top-nav {height:80px;}
	.top-nav .container{max-width: 80em;height: 80px;position:relative;}
}









.switcher {position: relative;display: flex;justify-content: space-between;align-items: center;width: 100px;height: 50px;padding: 0 8px;border-radius: 50px;box-shadow: inset 0 0 3px rgba(0,0,0,0.2);cursor: pointer;gap: 8px;}
html.theme-light .switcher{background: var(--accent-background-color);}
html.theme-dark .switcher{background:var(--accent-background-color);}

#logoSwitcher .selector {transition: right 0.3s ease;}
.selector {position: absolute;top: 4px;right: 5px;width: 42px;height: 42px;background: var(--white);border-radius: 50%;box-shadow: 0 0 5px rgba(0,0,0,0.08), 3px 3px 10px rgba(0,0,0,0.08);transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1);}
.switcher svg { z-index: 1; }

.switcher .icon-mosaique_logo { width: 28px; height: 28px; position: relative; left: 3px; z-index: 999; }
.switcher .icon-mdj_logo { width: 34px; height: 34px; position: relative; right: 1px; z-index: 999; }

/* Transition douce pour toutes les couleurs des SVG */
.switcher svg .mosaique_logo-fill0, .switcher svg .mosaique_logo-fill1, .switcher svg .mosaique_logo-fill2, .switcher svg .mosaique_logo-fill3, .switcher svg .mosaique_logo-fill4, .switcher svg .mosaique_logo-fill5, .switcher svg .mosaique_logo-fill6, .switcher svg .mosaique_logo-fill7, .switcher svg .mosaique_logo-fill8 {opacity:.5;transition: opacity 0.35s ease;}

/* Quand le selector est sur icon-mdj_logo */
.switcher.active .icon-mosaique_logo svg .mosaique_logo-fill0, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill1, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill2, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill3, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill4, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill5, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill6, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill7, .switcher.active .icon-mosaique_logo svg .mosaique_logo-fill8 {opacity:1;}

.switcher .icon-mdj_logo svg .mdj_logo-fill0 {opacity:.5;transition: opacity 0.35s ease;}
.switcher:not(.active) .icon-mdj_logo svg .mdj_logo-fill0 {opacity:1;}
.switcher.active .icon-mdj_logo svg .mdj_logo-fill0 {fill: #253788;}


@media screen and (min-width: 962px){
	.switcher {width: 130px;height: 64px;}
  .selector {top: 4px;right: 5px;width: 56px;height: 56px;}
	.switcher .icon-mosaique_logo { width: 38px; height: 38px; left: 6px; }
	.switcher .icon-mdj_logo { width: 45px; height: 45px; right: 2px; }

}








/* = Burger icons
---------------------------------------------------------------- */
/* burger */
.burger{width:40px;height:40px;cursor:pointer;display:flex;justify-content:center;align-items:center;border:2px solid transparent;border-radius:50%;transition:border .3s ease-in-out;margin:0 0 0 3px;}
.burger span{background:var(--link-color);transition:all .3s cubic-bezier(0.4,0,0.2,1);}
.burger.activated span{background:var(--link-color);}
/* burger burger-site-navigation*/
.burger-site-navigation-container{padding:20px 15px;}
.burger.burger-site-navigation{flex-direction:column;gap:6px;}
.burger.burger-site-navigation span{width:30px;height:3px;border-radius:3px;}
.burger.burger-site-navigation.activated span:nth-child(1){width:22px;transform:translateX(0px);}
.burger.burger-site-navigation.activated span:nth-child(2){width:16px;transform:translateX(6px);}
.burger.burger-site-navigation.activated span:nth-child(3){width:22px;transform:translateX(-3px);}
@media screen and (max-width: 962px) {
  .burger-site-navigation-container{padding:11px;}
}
/* burger burger-mobile-menu*/
.burger.burger-mobile-menu{margin: 8px 14px;padding: 20px;width: 24px;height: 24px;position:relative}
.burger.burger-mobile-menu.activated{background: rgba(0,0,0,0);transition: .3s ease-in-out;}
.burger.burger-mobile-menu.activated:hover{background: rgba(0,0,0,0.05);}
.burger.burger-mobile-menu span{position:absolute;top:50%;left:50%;width:24px;height:3px;border-radius:3px;background:var(--white);transform-origin:center;transform:translate(-50%,-50%);}
.burger.burger-mobile-menu.activated span:nth-child(1){transform:translate(-50%,-50%) rotate(45deg);}
.burger.burger-mobile-menu.activated span:nth-child(2){opacity:0;}
.burger.burger-mobile-menu.activated span:nth-child(3){transform:translate(-50%,-50%) rotate(-45deg);}
@media screen and (min-width: 962px) {
  .burger.burger-mobile-menu{margin: 16px 17px 12px 17px;padding: 24px;}
}

/* = Large menu, mobile menu and submenu
---------------------------------------------------------------- */
/* Large menu -> menu */
.large-menu {display: flex;justify-content: space-between;align-items: center;width: 100%;}
.large-menu .large-nav-links {display: flex;list-style: none;height: 80px;padding: 0;margin: 0;flex-wrap: nowrap;}
.large-menu .large-nav-links li {position: relative;}
.large-menu .large-nav-links a {color: var(--color);text-decoration: none;font-size: 16px;font-weight:bold;height: 80px;display: flex;align-items: center;padding:0 10px;text-align: center;transition: .3s ease;}
.large-menu .large-nav-links a:hover {background-color:var(--accent-background-color);color: var(--color);transition: background .3s ease;}
/* Large menu -> sub-menu */
.large-menu .large-nav-links li.menu-item-has-children > a::after {content: "";display: inline-block;width: 12px;height: 12px;position:relative;top:1px;margin:0 0 0 6px;background-color: var(--color);  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M10.65 18.36a1.9 1.9 0 0 0 1.71.52c.36-.07.71-.24.99-.52L23.39 8.32a1.895 1.895 0 0 0-2.68-2.68L12 14.35 3.29 5.64A1.895 1.895 0 0 0 .61 8.32l10.04 10.04Z'/></svg>") no-repeat center / contain;transition: transform 0.3s ease;}
.large-menu .large-nav-links li.menu-item-has-children > a:hover::after {}

.large-menu .large-nav-links li .sub-menu {opacity: 0;visibility: hidden;transform: translateY(-10px);transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;position: absolute;z-index: 1000;top: 100%;left: 0;background-color: var(--accent-background-color);list-style: none;padding: 0;margin: 0;border-radius:0 0 10px 10px;box-shadow: 2px 2px 1px 0px hsla(219, 19.6%, 60%,.5);}
.large-menu .large-nav-links li:hover .sub-menu {opacity: 1;visibility: visible;transform: translateY(0);}
.large-menu .large-nav-links li:last-child .sub-menu {right: 0;left:auto;}
.large-menu .large-nav-links li .sub-menu li:last-child a{border-radius:0 0 10px 10px;}
.large-menu .large-nav-links .sub-menu a {min-width:300px;max-width:400px;height: auto;text-align: left;font-weight: normal;padding: 1rem;font-size: 1rem;line-height: 1.5;transition: all 0.2s ease-in-out;}
.large-menu .large-nav-links .sub-menu a:hover {background: var(--link-color-visited);color: var(--white);}
.sub-menu a {color: var(--color);text-decoration: none;font-size: 16px;height: auto;}

body.mobile-menu-open, body.notification-panel-open, body.events-panel-open, html.mobile-menu-open, html.notification-panel-open, html.events-panel-open {overflow: hidden;height: 100%;overscroll-behavior: none;}
.mobile-menu {position: fixed;opacity:0.3;top: 0;transform: translateX(-100%);left: 0;width: 500px;height:100vh ;display: flex;flex-direction: column;transition: transform .3s ease, opacity .3s ease-in-out;overflow: auto;z-index: 1000;align-items: flex-start;background-color: var(--background-color);}
.mobile-menu.active {transform: translateX(0);opacity:1;overflow-x: hidden;}
.mobile-menu-items{position: fixed;height:100vh; width:100%; overflow-y: auto;padding: 0;}
.mobile-menu-items .search-bar, .mobile-menu-items .mobile-links, .mobile-menu-items .mobile-branding{padding:1.25rem;}
.mobile-menu-items .mobile-branding{padding-top:3rem;padding-bottom:8rem;}
/* .mobile-menu-items .mobile-branding */
.mobile-menu-items .mobile-branding svg{max-width:250px;color:var(--link-color-visited); margin: 0;}
.mobile-menu-items .mobile-branding #mdj-logo_horizontal {margin: 0 0 .5em 0;}

.mobile-menu-items .mobile-branding p{ margin: 0;color:var(--metadata-color);font-size: 1rem;}
.mobile-menu-items .mobile-branding .social-navigation ul.social-links-menu{justify-content: start;margin: 1rem 0 0 0;}
.mobile-menu-items .mobile-branding .social-navigation ul.social-links-menu li a{}
.mobile-menu-items .mobile-branding .social-navigation ul.social-links-menu li a .icon{fill:var(--metadata-color);}


.mobile-menu ul {list-style: none;margin: 0;}
.mobile-menu a, .overlay-page a {color: var(--color);padding: 0.5rem 1rem;text-decoration: none;font-size: 18px;display: block;text-align: left;}
@media screen and (max-width: 962px) {
  .mobile-menu {width: 100%;}
}
/* Pour styler le titre des menus ajouté par le custom walker dans functions.php*/
.menu-section-title {font-weight: bold;padding: 0.5em 1em;display: block;color: var(--color);}

/* sub-menu */
.mobile-menu .sub-menu {position: fixed;top: 0;right: 0;transform: translateX(100%);width: 500px;height: 100vh;background: var(--link-color);display: flex;flex-direction: column;transition: transform .3s ease-in-out,opacity .3s ease;overflow:scroll ;z-index: 1000;align-items: flex-start;padding: 60px 0 0 0;;background-color: var(--background-color);opacity:.3;}
.mobile-menu .sub-menu.active {opacity: 1;visibility: visible;transform: translateX(0);}

.mobile-menu .sub-menu .menu-header {position:sticky;top:0;display: flex;align-items: center;padding: 1em;border-bottom: 1px solid #ddd;}
.mobile-menu .sub-menu .menu-header .return-button {color: var(--link-color);transition: transform 0.3s ease-in-out;transform: rotate(90deg);}
.mobile-menu .sub-menu .menu-header .return-button:hover {transform: rotate(90deg) translateY(5px);}
.mobile-menu .sub-menu .menu-header .menu-section-title {font-size: 1.1em;font-weight: bold;}

.mobile-menu .sub-menu li {padding: 0;width: 100%;}
.mobile-menu .sub-menu li:last-child {padding-bottom: 8rem;}
.mobile-menu .sub-menu a {text-decoration: none;}
@media screen and (max-width: 962px) {
  .sub-menu {display: none;}
  .mobile-menu .sub-menu {width: 100%;}
}

.menu-item-has-children > a{display: flex;justify-content: space-between;align-items: center;}
.menu-item-has-children > a .icon-arrow-down {transition: transform 0.3s ease-in-out;transform: rotate(-90deg);}
.menu-item-has-children > a:hover .icon-arrow-down {transform: rotate(-90deg) translateY(5px);}
.menu-item-has-children:hover > a {background-color: var(--accent-background-color);}

/* overlay */
.overlay {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 1);z-index: 999;opacity: 0;visibility: hidden;transition: opacity 0.3s ease-in-out, visibility 0.3s ease;}
.overlay.active {opacity: 0.3;visibility: visible;}

/* menu links */
.return-button a {color: var(--color);padding: 10px;text-decoration: none;font-size: 18px;display: block;text-align: left;cursor: pointer;}
.mobile-menu .mobile-nav-links {display: none;padding: 0;}
.mobile-menu .mobile-fixed-links {display: flex;flex-direction: column;align-items: start;padding: 0;}


@media screen and (max-width: 962px) {
  .mobile-menu .mobile-nav-links {display: block;}
  .large-menu .large-nav-links {display: none;}
}


/* = Top navigation general icons
---------------------------------------------------------------- */
.mobile-menu .top-nav-icons{display: flex;width: 100%;background: var(--link-color);position: sticky;top: 0;z-index: 1001;}
.large-menu .top-nav-icons{display: flex;}
.mobile-menu .top-nav-icons button, .large-menu .top-nav-icons button{background:unset;margin: 0;padding: 0;opacity: 1;border-radius: 0;color: unset;border: none;border-radius: 0;cursor: pointer;display: inline-block;font-weight: 700;letter-spacing: 1;line-height: 1;text-align: unset;text-decoration: none;text-transform: unset;transition: unset;}
.mobile-menu .top-function-icons, .large-menu .top-function-icons{height:60px;width: 100%;display:flex;justify-content: flex-end;align-items: center ;margin: 0 14px 0 0;}
.mobile-menu .top-function-icons .top-nav-user, .large-menu .top-function-icons .top-nav-notifications, .large-menu .top-function-icons .top-nav-events {width: 54px;height: auto;padding: 12px;}
.mobile-menu .top-function-icons .top-nav-user a, .large-menu .top-function-icons .top-nav-notifications a, .large-menu .top-function-icons .top-nav-events a{padding: 0;}
@media screen and (min-width: 962px) {
  .mobile-menu .top-function-icons, .large-menu .top-function-icons{height:80px;}
}



/* = Top navigation notifications icon
---------------------------------------------------------------- */
.top-nav-notifications{position: relative;right:0;top: 0;color:var(--link-color);}
.top-nav-notifications .icon-top_nav_notification_bell{width:30px;height:30px;}
@media screen and (min-width: 962px){
	.top-nav-notifications{height: 80px;}
}

/* = Top navigation upcoming events icon
---------------------------------------------------------------- */
.top-nav-events {position: relative;right:0;top: 0;color:var(--link-color);}
.top-nav-events .icon-top_nav_calendar{width:30px;height:30px;}
@media screen and (min-width: 962px){
	.top-nav-events {height: 80px;}
}




.notification-panel, .events-panel{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--background-color);transform:translateY(-100%);transition:transform .4s ease,opacity .4s ease;z-index:9999;opacity:0;pointer-events:none;overflow-y:auto;padding: 2rem;}
.notification-panel.active, .events-panel.active{transform:translateY(0);opacity:1;pointer-events:auto;}

button.notification-close, button.events-close {margin: 16px 17px 12px 17px!important;padding: 24px!important;}
.notification-close, .events-close {position: fixed;top:0;right:0;width: 24px;height: 24px;}
.notification-close span, .events-close span {position: absolute;top: 50%;left: 50%;width: 24px;height: 3px; /* épaisseur de la croix */background: var(--color);border-radius: 3px;transform: translate(-50%, -50%);}
.notification-close span:first-child , .events-close span:first-child {transform: translate(-50%, -50%) rotate(45deg);}
.notification-close span:last-child , .events-close span:last-child {transform: translate(-50%, -50%) rotate(-45deg);}

.events-panel .button {padding:1rem!important;}


body.notification-open,body.events-open{overflow:hidden}
@media screen and (min-width: 962px){
	.notification-panel, .events-panel{position:fixed;top:0;right:0;left:100%;width:500px;height:100%;background:var(--background-color);transform:translateX(0);transition:transform .4s ease,opacity .4s ease;z-index:9999;opacity:0;pointer-events:none}
	.notification-panel.active, .events-panel.active{transform:translateX(-100%);opacity:1;pointer-events:auto}
}





/* = Top navigation notifications count
---------------------------------------------------------------- */
.top-nav-notifications-count, .top-nav-events-count{color:var(--white);padding: 3px 4px;border-radius: 2px;position: absolute;line-height: .8;right: 8px;top: 12px;font-size: .8rem;font-weight: 700;}
.top-nav-notifications .top-nav-notifications-count, .top-nav-notifications .top-nav-events-count{background:#E80041;}
.top-nav-events .top-nav-notifications-count, .top-nav-events .top-nav-events-count{background:#E89300;}

/* = Top navigation user icon
---------------------------------------------------------------- */
.top-nav-user{position: relative;color: var(--white);}
@media screen and (min-width: 962px){
	.top-nav-user{height: 80px;}
}
.top-nav-user .icon-top_nav_user{width:30px;height:30px;color:var(--white);}
/* = Top navigation logged in user status
---------------------------------------------------------------- */
.top-nav-user .logged-status{width: 14px;height: 14px;border-radius: 50%;position: absolute;right: 8px;top: 11px;border: 3px solid var(--link-color);background:#e80000;}
.logged-in .top-nav-user .logged-status{background:#00E837;}








/*--------------------------------------------------------------
6. 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: absolute !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: 14px;font-size: 0.875rem;font-weight: bold;height: auto;left: 5px;line-height: normal;padding: 15px 23px 14px;text-decoration: none;top: 5px;width: auto;z-index: 1000;/* Above WP toolbar. */}
/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {outline: 0;}

/*--------------------------------------------------------------
7. Alignments
--------------------------------------------------------------*/
.alignleft{display:inline;float:left;margin-right:1.5rem!important;width: 100%;}
.alignright{display:inline;float:right;margin-left:1.5rem!important;width: 100%;}
.aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto}
.alignwide{margin: 4rem auto;}
.alignfull {max-width: 100vw;position: relative;width: 100%;margin: 5rem auto;}
@media screen and (min-width: 762px){
	.alignleft{width: auto;}
	.alignright{width: auto;}
}
/*--------------------------------------------------------------
9. Widgets
--------------------------------------------------------------*/
.widget {margin: 0 0 1.5rem;/* Make sure select elements fit in widgets. */border-top: 1px solid var(--accent-background-color);padding-top: 0;}
.widget select {max-width: 100%;}

@media screen and (min-width: 962px){
	.widget {margin: 2rem 0 1.5rem;padding-top: 2rem;}
}

.widget-infos_contact p{margin:0;}

.widget-opening_hours .wp-block-table{width:100%;margin-top: 0;}
.widget-opening_hours table tr {border-bottom: 1px solid var(--accent-background-color);border-top: 0px solid transparent;}
.widget-opening_hours table tr td{border: 0px solid transparent;}
.widget-opening_hours table tr td:first-child{font-weight: 700;text-align: right;padding-right:1rem;}
.widget-opening_hours table tr td:last-child{font-size: .83rem;}

/*--------------------------------------------------------------
10. Content
--------------------------------------------------------------*/

/* a. Posts and pages
--------------------------------------------------------------*/
.sticky{display:block}
.post,.page{margin:0}
.updated:not(.published){display:none}
.entry-meta, .entry-footer{display:flex;font-size: 1rem;color:var(--metadata-color);}
.entry-meta {display: flex;flex-direction: row;justify-content: center;align-items: center;flex-wrap: wrap;margin:2rem 0; padding: .5rem 0;border-top: 1px solid var(--accent-background-color);border-bottom: 1px solid var(--accent-background-color);}
@media screen and (min-width: 962px){
	.entry-meta {justify-content: space-between;}
}
.entry-footer {display: flex;flex-direction: column;justify-content: center;align-items: center;}

.entry-meta a, .entry-footer a{text-decoration: none;color:var(--metadata-color);}
.entry-meta a:hover, .entry-footer a:hover{text-decoration: underline;}

.entry-meta .posted-by, .entry-meta .posted-on, .entry-meta .compilot-share-container {display:flex;align-items: center;margin: .5rem 1rem .5rem 0;}
.entry-meta .author-avatar {justify-content: center;align-items: center;display: flex;}
.entry-meta .author-avatar img{border-radius:100%;margin: 0 .4rem 0 0;}

.page-content, .entry-content, .entry-summary{margin:1.5rem 0}
.entry-content ul, .entry-content ol{margin: 2rem auto;padding: 0 2rem 0 2.5rem;}
.entry-content ul ul, .entry-content ol ol{padding: 0 2rem;}
.post .entry-title {}
.entry-header .entry-title::after{background: var(--link-color);border-radius: 1em;content: "";display: block;height:.30rem;width:14%;margin-top: .75rem;}
.entry-title a{text-decoration: none;}
.page-links{clear:both;margin:0 0 1.5rem}
.post-pagination{width:calc(100% - 4rem);margin:0 auto;display:flex;border-top:1px solid #eee;border-bottom: 1px solid #eee;padding:1rem 0;}

.previous-post{flex:1;text-align: left;}
.next-post{flex:1;text-align: right;}

.posted-on-by-container{display: flex;}
.share_buttons-container{display: flex;}

/*--------------------------------------------------------------
11. Index
--------------------------------------------------------------*/


/* .featured-area
-------------------------------------------------------- */
.test-layout{display: grid;grid-template-columns: repeat(6, minmax(0, 1fr));gap:1rem 0;}
.test-layout article{display:grid;grid-column: 1/span 6;}

/* Grid area names | site-main article ----------------- */
.test-layout article .post-thumbnail{ grid-area: post-thumbnail; }
.test-layout article .entry-header{ grid-area: entry-header; }

@media screen and (min-width: 480px){
  .test-layout{gap:1rem;}
	.test-layout article:nth-child(odd) {grid-column: 1/span 3;}
	.test-layout article:nth-child(even) {grid-column: 4/span 3;}
}

@media screen and (min-width: 962px){
	.test-layout{gap:2rem;margin: 0 0 2rem 0;}
	.test-layout article:nth-child(1){grid-column: 1/span 3;grid-row: 1/span 3;}
  .test-layout article:nth-child(-n + 4):not(:nth-child(1)){grid-column: 4/span 3;}
	.test-layout article:nth-child(n+5){grid-column: span 2;}
}

.test-layout article{grid-template-columns: minmax(100px, 20%) 1fr; /* Image size = 150px minimum and 30% maximum + Entry = 1fr */grid-template-rows: 1fr; gap: 0 1rem;grid-template-areas: 
    "post-thumbnail entry-header";
}
.test-layout article:nth-child(1){ grid-template-columns: 1fr; grid-template-rows: auto 1fr;gap: 1rem 0;grid-template-areas:
    "post-thumbnail"
    "entry-header";
}
@media screen and (min-width: 480px){
  .test-layout article{grid-template-columns: 1fr; grid-template-rows: auto 1fr;gap: 1rem 0;grid-template-areas: 
    	"post-thumbnail"
			"entry-header";
	}
}
@media screen and (min-width: 962px){
  .test-layout article:nth-child(-n + 4):not(:nth-child(1)){grid-template-columns: minmax(100px, 20%) 1fr; /* Image size = 100px minimum and 20% maximum + Entry = 1fr, only on the 2nd to 4th article */grid-template-rows: 1fr;gap: 0 1rem;grid-template-areas: 
    	"post-thumbnail entry-header";
	}
	.test-layout article:nth-child(n+5){grid-template-columns: 1fr; /* Image size = 100% only on the 5th to 10th article */grid-template-rows: auto 1fr;gap: 1rem 0;grid-template-areas: 
    	"post-thumbnail"
			"entry-header";
	}
}

.test-layout article .post-thumbnail{padding-top: 100% /* 1/1 aspect ratio ((1/1)*100%=100%) */;}
.test-layout article .post-thumbnail a{display: flex;min-width: 100%;}

@media screen and (min-width: 962px){
	.test-layout article .post-thumbnail{padding-top: 56.25% /* 16/9 aspect ratio ((9/16)*100%=56,25%) */;}
}

.test-layout article .entry-header{padding:0;margin:0;}
.test-layout article .entry-header .entry-category{padding:0;}
.test-layout article .entry-header .entry-title{padding:0;margin:0;}
.test-layout article .entry-header .entry-title a{color:var(--main-headline-color);}
.test-layout article .entry-header .entry-meta{padding:0;}


/* .tp-accueil
-------------------------------------------------------- */
.tp-accueil .welcome-header-container{grid-area: welcome-header;}
.tp-accueil .featured-post-container {grid-area: featured-post;}
.tp-accueil .welcome-description-container {grid-area: welcome-description;}

 .tp-accueil{margin-top:2em; margin-bottom:2em;display: grid;align-content: start;grid-template-columns: minmax(0, 1fr);gap:1rem 0;
	grid-template-areas: 
    "welcome-header"
		"featured-post"
    "welcome-description";
}

/* .welcome-header-container ----------------------------------------------------------------------- */
.tp-accueil .welcome-header-container{max-width: 80rem;margin:0 auto;display:flex;flex-direction: column;flex-wrap: wrap;padding :0 2rem 2rem;}
.tp-accueil .welcome-header-content {width:100%;flex:1;order:2;}
.tp-accueil .welcome-header-content h1{color:var(--link-color);}
.tp-accueil .welcome-header-image{width:100%;flex:1;order:1;display:flex;justify-content:center;align-items:center;}
.tp-accueil .welcome-header-image img{position: relative;z-index: -1;}

@media screen and (min-width: 962px){
	.tp-accueil .welcome-header-container{flex-direction: row;}
	.tp-accueil .welcome-header-content {width:100%;flex:50;order:1;}
	.tp-accueil .welcome-header-image{width:100%;flex:50;order:2;}
	.tp-accueil .welcome-header-image img{position: relative;z-index: -1;}
	}

/* .featured-post-container ----------------------------------------------------------------------- */
.tp-accueil .featured-post-container {background: var(--accent-background-color);}
.tp-accueil .featured-post {max-width: 80rem;margin:0 auto;display: grid;grid-template-columns: repeat(3, 1fr); /* 3 colonnes pour les articles du bas */gap: 20px;width: 100%;}

.tp-accueil .featured-post article{gap: 2rem; padding: 0.5rem 2rem; align-items: start; border-radius: 1rem;overflow: hidden;display: grid;grid-template-columns: repeat(3, 1fr);align-content: flex-start;}
.tp-accueil .featured-post article:first-child{ padding: 2rem 2rem 0 2rem;}

/* article:first-child */
.tp-accueil .featured-post article:first-child {grid-column: span 3;grid-template-areas:
	"thumbnail thumbnail thumbnail" 
	"content content content";}
/* article:not(:first-child) */
.tp-accueil .featured-post article:not(:first-child) {grid-column: span 3;grid-template-areas:
	"thumbnail content content";}

@media screen and (min-width: 962px){
	/* article:first-child */
	.tp-accueil .featured-post article:first-child {grid-column: span 3;grid-template-areas:
		"thumbnail thumbnail content";}
	/* article:not(:first-child) */	
	.tp-accueil .featured-post article:not(:first-child) {grid-column: span 1;grid-template-areas:
	"thumbnail thumbnail thumbnail" 
	"content content content";}
}

/* .post-thumbnail */
.tp-accueil .featured-post article .post-thumbnail{grid-area: thumbnail;aspect-ratio: 16 / 9;width: 100%; height: auto; display: flex;border-radius: 10px;overflow:hidden;}
.tp-accueil .featured-post article .post-thumbnail a{width: 100%;height: auto;display: flex;justify-content: center;align-items: center;background: var(--metadata-color-30percent);}
.tp-accueil .featured-post article .post-thumbnail a img{min-width: 100%;min-height: 100%;object-fit: cover;}

/* .post-content */
.tp-accueil .featured-post article .post-content{grid-area: content;}
.tp-accueil .featured-post article .post-category{grid-area: category;}
.tp-accueil .featured-post article .post-category a{background: var(--link-color-visited);border-radius: 1rem;font-size: .75rem;font-weight: bold;padding: .2rem .5rem;color: white;text-decoration: none;margin: 0 .2rem 1rem 0;}
.tp-accueil .featured-post article .post-category a:hover{background: var(--link-color-hover);}
.tp-accueil .featured-post article .post-title{grid-area: title;}
.tp-accueil .featured-post article .post-title h3{margin:0;}
.tp-accueil .featured-post article .post-excerpt{}
.tp-accueil .featured-post article:not(:first-child) .post-excerpt{display:none;}

@media screen and (min-width: 962px){
	/* article:not(:first-child) */	
	.tp-accueil .featured-post article:not(:first-child) .post-excerpt{display:block;}
}

/* .welcome-description-container ----------------------------------------------------------------------- */
.tp-accueil .welcome-description-container {max-width: 80rem;margin:0 auto;display:flex;flex-wrap: wrap;padding :0 2rem 2rem;}
.tp-accueil .welcome-description {flex-direction: column;}
.tp-accueil .welcome-description article {display:flex;flex-direction: column;}
.tp-accueil .welcome-description article .welcome-description-content {width:100%;flex:1;}
.tp-accueil .welcome-description article:nth-child(odd) .welcome-description-content {order:2;}
.tp-accueil .welcome-description article:nth-child(even) .welcome-description-content {order:2;}
.tp-accueil .welcome-description article .welcome-description-content h2{color:var(--link-color);}
.tp-accueil .welcome-description article .welcome-description-image {width:100%;flex:1;order:1;display:flex;justify-content:center;align-items:center;}
.tp-accueil .welcome-description article:nth-child(odd) .welcome-description-image {order:1;}
.tp-accueil .welcome-description article:nth-child(even) .welcome-description-image {order:1;}
.tp-accueil .welcome-description article .welcome-description-image img{position: relative;z-index: -1;padding: 0rem 2rem;}


@media screen and (min-width: 962px){
	.tp-accueil .welcome-description {flex-direction: row;}
	.tp-accueil .welcome-description article {flex-direction: row;}
	.tp-accueil .welcome-description article .welcome-description-content {width:100%;flex:50;}
	.tp-accueil .welcome-description article:nth-child(odd) .welcome-description-content {order:1;}
	.tp-accueil .welcome-description article:nth-child(even) .welcome-description-content {order:2;}
	.tp-accueil .welcome-description article .welcome-description-content h2{color:var(--link-color);}
	.tp-accueil .welcome-description article .welcome-description-image {width:100%;flex:50;}
	.tp-accueil .welcome-description article:nth-child(odd) .welcome-description-image {order:2;}
	.tp-accueil .welcome-description article:nth-child(even) .welcome-description-image {order:1;}
	.tp-accueil .welcome-description article:nth-child(1) .welcome-description-image {flex:70;}
	.tp-accueil .welcome-description article:nth-child(2) .welcome-description-image {flex:44;}
	.tp-accueil .welcome-description article:nth-child(3) .welcome-description-image {flex:90;}
	.tp-accueil .welcome-description article .welcome-description-image img{position: relative;z-index: -1;padding: 2rem 4rem;}
}

.tp-accueil .more-posts-btn{grid-column: span 3;justify-content: start;align-items: center;display: flex;margin: 0;position: relative;top: -2rem;padding: 0 2rem;}
@media screen and (min-width: 962px){
	.tp-accueil .more-posts-btn {justify-content: center;align-items: center;}
}

.tp-accueil svg.icon-right-post-nav {width: 2rem;height: 2rem;}

/* .blog
-------------------------------------------------------- */


/*--------------------------------------------------------------
12. Posts and pages (single.php & page.php)
--------------------------------------------------------------*/

.single .site-content, .page .site-content, .author .site-content, .page-template-tp-agenda .site-content,  .page-template-tp-accueil .site-content, .blog .site-content, .archive .site-content, .search .site-content {display: grid;align-content: start;grid-template-columns: repeat(3, minmax(0, 1fr));gap:1rem 0;}

/* Pour avoir la largeur 100% sur certaines pages */
.page-template-tp-agenda .site-content, .page-template-tp-accueil .site-content, .blog .site-content, .archive .site-content, .search .site-content{grid-template-areas: 
  "content-area content-area content-area"
	"widget-area widget-area widget-area";
}

/* Pour avoir la sidebar sur la gauche sur les pages Auteur */
.single .site-content, .page .site-content{grid-template-areas: 
  "content-area content-area content-area"
	"widget-area widget-area widget-area";
}
.author .site-content {grid-template-areas: 
  "widget-area widget-area widget-area"
  "content-area content-area content-area";
}

.single .fullwidth.site-content{grid-template-areas: 
  "content-area content-area content-area";}

.single .content-area, .page .content-area, .author .content-area, .page-template-tp-agenda .content-area, .page-template-tp-accueil .content-area, .blog .content-area, .archive .content-area, .search .content-area {grid-area: content-area;}
.single .content-area article, .page .content-area article, .page-template .content-area article, .author .content-area article, .blog .content-area article, .archive .content-area article, .search .content-area article {padding: 0;}

.single .widget-area, .page .widget-area, .author .widget-area, .blog .widget-area, .archive .widget-area, .search .widget-area {grid-area: widget-area;padding:0 1.25rem;margin-bottom: 1.25rem;position: relative;top: 0;height: auto;}
.single .widget-area .posts-area, .page .widget-area .posts-area, .author .widget-area .posts-area, .blog .widget-area .posts-area, .archive .widget-area .posts-area, .search .widget-area .posts-area  {grid-template-columns: 1fr;gap:0;}
.single .widget-area .posts-area article, .page .widget-area .posts-area article, .author .widget-area .posts-area article, .blog .widget-area .posts-area article, .archive .widget-area .posts-area article, .search .widget-area .posts-area article{grid-template-columns: minmax(64px, 10%) 1fr; /* Image size = 64px minimum and 10% maximum + Entry = 1fr */}
.single .widget-area .widget-title, .page .widget-area .widget-title, .author .widget-area .widget-title, .blog .widget-area .widget-title, .archive .widget-area .widget-title, .search .widget-area .widget-title {display: grid;grid-template-columns: auto 1fr;}

@media screen and (min-width: 962px){
	.page.page-template-tp-agenda .site-content, .home .site-content{width: 100%;grid-template-areas: 
		"content-area content-area content-area";}
	.single .site-content, .page .site-content, .blog .site-content, .archive .site-content, .search .site-content{grid-template-areas: 
    "content-area content-area widget-area";}
  .author .site-content{grid-template-areas: 
    "widget-area content-area content-area";}

	.single .content-area, .page .content-area, .author .content-area, .blog .content-area, .archive .content-area{}
	.single .widget-area, .page .widget-area, .blog .widget-area, .archive .widget-area, .search .widget-area {border-left: 1px solid var(--accent-background-color);padding:5rem 2rem 0;margin-bottom: 1.25rem;position: sticky;top: 0; height: fit-content;}
  .author .widget-area{border-right: 1px solid var(--accent-background-color);padding:3rem 2rem 0;margin-bottom: 1.25rem;position: sticky;top: 0; height: fit-content;}
}



/* single-category-notification.php */
.single-notification.site-content{width: 100%;grid-template-areas: 
    "content-area content-area content-area";}
.single-notification.site-content .content-area article{padding: 2rem;border-radius: .75rem;margin: 2rem 0;background: var(--card-background-color);}
.single-notification.site-content .content-area article img.mdj25_post_image {border-radius: .75rem;}

@media screen and (min-width: 962px){
	.single-notification.site-content{max-width:40rem;grid-template-areas: 
		"content-area content-area content-area";}
}

/* tp-infos_pratiques.php */
ul.partenaires-liste {display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 2rem;list-style: none;padding: 0 1.25rem;}
.partenaire-logo {aspect-ratio: 2 / 1; /* largeur / hauteur */display: flex;align-items: center;justify-content: center;background: #fff; padding: 1rem;margin: 0;}
.partenaire-logo img {max-width: 100%;max-height: 100%;object-fit: contain;}
.partenaire-nom {text-align: center;}
.partenaire-lien {text-decoration: none;min-width: 100%;}

/* tp-adultes.php */

/* tp-familles.php */

/* tp-projets_actions.php */

/* tp-ressources.php */


/*--------------------------------------------------------------
13. article.general-post_layout
--------------------------------------------------------------*/
article.general-post_layout{display: grid;grid-template-columns: minmax(75px, 20%) 1fr; grid-template-rows: auto;
  gap: 1rem;align-items: start;max-width: 100%;border-bottom: 1px solid var(--accent-background-color);margin: 2rem 0;padding: 1rem 0!important;overflow: hidden;grid-template-areas: 
    "thumbnail content";
  }

article.general-post_layout .post-thumbnail {grid-area: thumbnail;aspect-ratio: 1 / 1;width: 100%; height: auto; display: flex;border-radius: 8px;overflow:hidden;}
article.general-post_layout .post-thumbnail a{width: 100%;height: auto;display: flex;justify-content: center;align-items: center;background: var(--metadata-color-30percent);}
article.general-post_layout .post-thumbnail a img{width: 100%;}

article.general-post_layout .post-content{grid-area: content;}
article.general-post_layout .post-content .post-category{}
article.general-post_layout .post-content .post-title h2{margin:0;}
article.general-post_layout .post-content .post-title h2 a{text-decoration: none;}




/* c. Comments
--------------------------------------------------------------*/
.comment-reply-title, .logged-in-as{text-align: center;}
.comment-content a {word-wrap: break-word;}
.comment-list{margin:0;padding:0;}

.comment-list .parent > .children {padding:0 0 0 1rem;}

.bypostauthor {display: block;}
.comment{padding-top: 2rem;margin-bottom: 2rem;width: 100%;float: left;}
.comment-meta {position: relative;margin: 0 0 1em 0;padding:0 0 0 5rem;}
.comment-meta .avatar {display: block;position: absolute;left: 0;top: 0;width: 60px;height: 60px;}
.comment-author .fn {font-size: 1.2rem;font-weight: 700;}
.comment-author .says {border: 0;clip: rect(1px,1px,1px,1px);-webkit-clip-path: inset(50%);clip-path: inset(50%);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute !important;width: 1px;word-wrap: normal !important;word-break: normal;}
.comment-metadata a{font-size: .9rem;font-weight: 400;color:#999;text-decoration: none;}
.comment-metadata a:hover{text-decoration: underline;}
a.comment-reply-link{font-size: .8rem;font-weight: 700; color:var(--white); text-transform: uppercase; background: rgba(49,39,131,1);padding:0.5rem;text-decoration: none;}
@media screen and (min-width: 962px){
	.comment{width: calc(100% - 1rem);float: right;}
	.comment-meta {padding:0;}
	.comment-meta .avatar {left: -5rem;}
	.comment-list{margin:0;padding:0;}

}


/* d. entry-footer (content-single.php)
--------------------------------------------------------------*/
.entry-footer .footer-categories {}
.entry-footer .footer-tags {}
.entry-footer .footer-author {text-align: center;border-bottom: 1px solid var(--accent-background-color);margin: 1rem 0; padding: 0 0 2rem 0;}
.widget-area .footer-author {text-align: center;border-bottom: 1px solid var(--accent-background-color);margin: 1rem 0; padding: 1rem 0 2rem 0;}
.entry-footer .footer-author .author-avatar, .widget-area .footer-author .author-avatar {text-align: center;position:relative;}
.entry-footer .footer-author .author-avatar::before, .entry-footer .footer-author .author-avatar::after, .widget-area .footer-author .author-avatar::before, .widget-area .footer-author .author-avatar::after {content: '';position: absolute;width: calc(50% - 60px);top: 50%;margin-top: -1px;height: 1px;background: var(--accent-background-color);}
.entry-footer .footer-author .author-avatar::before, .widget-area .footer-author .author-avatar::before {left: 0;}
.entry-footer .footer-author .author-avatar::after, .widget-area .footer-author .author-avatar::after {right: 0;}
.entry-footer .footer-author .author-avatar img, .widget-area .footer-author .author-avatar img {border-radius: 100%;}

@media screen and (min-width: 962px){
	.widget-area .footer-author {padding: 3rem 0 2rem 0;}
}

/* d. "mdj25_categories_list" & "mdj25_tags_list" in "functions.php"
--------------------------------------------------------------*/
.entry-footer .cat-links, .entry-footer .tags-links {}
.entry-footer .cat-links a, .entry-footer .tags-links a{font-size: 1rem;font-weight:bold;text-decoration:none;background-color: var(--accent-background-color);padding:0 0.75rem;margin:0.5rem 0.25rem 0 0.25rem;border-radius:2rem;}
.cat-links a {text-decoration: none;text-transform: uppercase;font-size: .8rem;font-weight: 700;}

/* d. wp-block
--------------------------------------------------------------*/
.wp-block-image {overflow:auto;}
.wp-block-image figcaption{font-size:0.75rem;color:rgba(70,100,124,.75);line-height: 1.4;}
.wp-block-image img {border-radius:0.5rem;}
.wp-block-image .alignleft{float: left;margin: .5em 1em .5em 0;}
.wp-block-image .alignright{float: right;margin: .5em 0 .5em 1em;}
.wp-block-image .aligncenter {margin-left: auto;margin-right: auto;}

.wp-block-button__link{background:rgba(49,39,131,1);border-radius:0;}

/* Responsive video container added via javascript (responsive-video-container.js) */
.wp-block-embed__wrapper {position: unset;}
.wp-block-embed.is-type-video {position: relative;padding-bottom: 56.25%;padding-top: 30px;height: 0;overflow: hidden;}
.wp-block-embed.is-type-video iframe, .wp-block-embed.is-type-video object, .wp-block-embed.is-type-video embed {position: absolute;top: 0;left: 0;width: 100%;height: 100%;padding-left: 2rem;padding-right: 2rem;}

.wp-block-embed-twitter twitter-widget {width:100%!important;}
.wp-block-group.has-background {padding: 4rem;margin-top: 0;margin-bottom: 0;}
.wp-block-quote{margin:0 auto;width:calc(100% - 6rem);}

:where(.wp-block-latest-comments:not([style*="line-height"] .wp-block-latest-comments__comment-excerpt p)){line-height: 1.6;}
.wp-block-file {width:calc(100% - 4rem);margin:0 auto;align-items: center;display: flex; display: -webkit-box; display: -webkit-flex;flex-wrap: wrap;justify-content: space-between;padding: 1rem;background:rgba(0,0,0,0.05);}

ul.blocks-gallery-grid{padding:0;}

/* Buttons */
button, .button, .button:visited, .faux-button, .wp-block-button__link, .wp-block-file .wp-block-file__button, input[type="button"], input[type="reset"], input[type="submit"] {color: var(--white);background-color: var(--link-color);border: none;border-radius: 0;cursor: pointer;display: inline-block;font-weight: 700;letter-spacing: .0333rem;line-height: 1.25;margin: 0;opacity: 1;padding: 1.1rem 1.44rem;text-align: center;text-decoration: none;transition: .15s linear;border-radius: 10em;}
button:hover, .button:hover, .faux-button:hover, .wp-block-button__link:hover, .wp-block-file .wp-block-file__button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {color:var(--background-color);background-color: var(--link-color-hover);}

mark {background-color: var(--mark-background-color)!important;color: var(--color);padding: .2em;border-radius: .2em;}

.has-background {background-color:var(--accent-background-color);}
.has-small-font-size, .has-small-font-size, .has-large-font-size, .has-x-large-font-size{color:var(--main-headline-color)!important;}
.has-small-font-size{font-size: .83rem;line-height: 1.5;}
.has-medium-font-size{font-size: 1rem;line-height: 1.5;}
.has-large-font-size{font-size: 1.5rem;line-height: 1.25;font-weight: 700;}
.has-x-large-font-size{font-size: 3rem;line-height: 1;font-weight: 900;}

.is-layout-flex {display: flex;}
.is-layout-flow{margin-left:0;margin-right:0;}
.is-layout-flow:first-child{margin-left:0;}
.is-layout-flow:last-child{margin-right:0;}
.is-nowrap{flex-wrap: wrap!important;}
@media screen and (min-width: 962px){
	.is-layout-flow{margin-left:1em;margin-right:1em;}
	.is-nowrap{flex-wrap: nowrap!important;}
}

.wp-block-button a{}
.wp-block-button a:hover{}
.wp-block-code{background-color:var(--accent-background-color);}
.wp-block-preformatted{background-color:var(--accent-background-color);}
.wp-block-separator {border-top: 1px var(--accent-background-color);}
.wp-block-cover{color:var(--color);background-color:var(--accent-background-color);}
.wp-block-quote cite, .wp-block-pullquote cite{font-size: .83em;font-style: normal;}
.wp-block-quote cite::before, .wp-block-pullquote cite::before{content: '~';position: relative;left: 5px; display: inline-block; margin: 0 .6rem 0 0;}
.wp-block-footnotes{font-size: .83em;}
.wp-block-footnotes li:first-child{border-top: 1px solid var(--metadata-color);padding-top:1em;}

/*--------------------------------------------------------------
11. Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, .infinite-scroll.neverending .site-footer {/* Theme Footer (when set to scrolling) */display: none;}
/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {display: block;}

/*--------------------------------------------------------------
12. Media
--------------------------------------------------------------*/
.page-content .wp-smiley,.entry-content .wp-smiley,.comment-content .wp-smiley{border:none;margin-bottom:0;margin-top:0;padding:0}
/* Make sure embeds and iframes fit their containers. */
embed, iframe, object {max-width: 100%;}
video {min-width: 100%;height: auto;}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {display: inline-block;}

/* a. Captions
--------------------------------------------------------------*/
.wp-caption{margin-bottom:1.5rem;max-width:100%}
.wp-caption img[class*="wp-image-"]{display:block;margin-left:auto;margin-right:auto}
.wp-caption .wp-caption-text{margin:.8075rem 0}
.wp-caption-text{text-align: center;position: absolute;width: 100%;bottom: 0;padding: 1rem 1rem .5rem 1rem;background: var(--color);background: linear-gradient(0deg, rgba(12, 0, 22, 0.7) 50%, rgba(255, 255, 255, 0) 100%);color: var(--background-color);font-size: .75rem;}

/* b. Galleries
--------------------------------------------------------------*/
.wp-block-gallery{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0 2rem;margin-bottom:1.5rem}
.wp-block-gallery.columns-2{flex:2;}
.wp-block-gallery.columns-3{flex:3;}
.wp-block-gallery.columns-4{flex:4;}
.wp-block-gallery.columns-5{flex:5;}
.wp-block-gallery.columns-6{flex:6;}
.wp-block-gallery.columns-7{flex:7;}
.wp-block-gallery.columns-8{flex:8;}
.wp-block-gallery.columns-9{flex:9;}
.wp-block-gallery.caption{display:block}

.wp-block-gallery figure.wp-block-image{height:20vh;flex-grow:1;overflow:hidden;display:flex;}
.wp-block-gallery figure.wp-block-image div{flex-grow: inherit;}
.wp-block-gallery a{flex-direction:row;display:initial;padding:0!important;}
.wp-block-gallery.has-nested-images figure.wp-block-image > a, .wp-block-gallery.has-nested-images figure.wp-block-image > div {flex-direction: row;}
.wp-block-gallery img{min-width:100%;max-height:100%;object-fit:cover;}
/* Landscape */
@media screen and (max-width: 952px) and (orientation: landscape) {
  .wp-block-gallery figure.wp-block-image{height:40vh;flex-grow:1;overflow:hidden;display:flex;}
}


/* Classic editor gallery
--------------------------------------------------------------*/
/* Reset du CSS WordPress natif sur la galerie */
.gallery {display: flex !important;flex-wrap: wrap !important;gap: 1rem !important;margin: 0 !important;}
.gallery-item {display: flex !important;height: 16vh !important;flex-grow: 1 !important;width: auto !important;max-width: none !important;  /* ← annule le gallery-columns-N */padding: 0 !important;margin: 0 !important;text-align: unset !important;vertical-align: unset !important;position:relative;}
.gallery-item:last-child {flex-grow: 5 !important;}
/* Le div.gallery-icon qui enveloppe les images dans WP */
.gallery-item .gallery-icon {display: flex !important;height: 100% !important;width: 100% !important;}
.gallery-item:has(.gallery-icon.portrait) {flex-grow: 0.5625; /* 9/16 */}
.gallery-item:has(.gallery-icon.landscape) {flex-grow: 1.7778; /* 16/9 */}
.gallery-item a {flex-grow: 1!important;}
.gallery-item img {width: 100% !important;height: 100% !important;border-radius: .5rem;max-height: 100% !important;min-width: 100% !important;object-fit: cover !important;vertical-align: bottom !important;height: auto !important;  /* reset WP img auto-sizes */max-width: none !important;}

/* Responsive portrait */

@media (max-aspect-ratio: 1/1) and (max-width: 480px) {
  .gallery { flex-direction: row !important;gap: .5rem !important; }
  .gallery-item { height: auto !important; }
  .gallery-item img { width: 100% !important; max-height: 15vh !important; min-width: 0 !important; }
}


/* c. SVG Icons
--------------------------------------------------------------*/
.icon {display: inline-block;fill: currentColor;height: 1rem;vertical-align: middle;width: 1rem;position: relative;}

/* metadata icons */
.posted-on, .cat-links, .edit-link, .comments-link {display: inline-block;margin-right: 1rem;}

.entry-meta .icon {top:0;width:16px;height:18px;}
.entry-meta .icon-calendar {top:-0.15rem;}
.entry-meta .icon-comment {top:-0.05rem;}
.post-edit-link {position: relative;top: 2px;margin: 0 0 0 5px;}
.compilot-events-calendar-card .icon {height: 1.2rem;width: 1.2rem;top: -2px;margin: 0 .3rem 0;}

/* .entry-meta icons*/



/* d. ACF field "Ajout de documents/ressources" / Documents list
--------------------------------------------------------------*/
.documents-list {display: flex;flex-direction: column;gap: 16px;}
/* carte */
.document-card {display: flex;align-items: center;width: 100%;padding: 20px;border-radius: 14px;background: var(--card-background-color);border: 1px solid var(--accent-background-color);gap: 12px;transition: all .25s ease;text-decoration: none;color: inherit;}
/* hover premium */
.document-card:hover {transform: translateY(-2px);box-shadow: 0 12px 30px rgba(0,0,0,0.06);border-color: transparent;}
/* image */
.doc-image {max-width: 20%;}
.doc-image img {width: 100%;height: auto;border-radius: 10px;display: block;background: var(--accent-background-color);
  padding: 10px;}
/* contenu */
.doc-content {flex: 1;}
.doc-title {display: flex;align-items: center;gap: 10px;margin: 0 0 6px;font-size: 18px;font-weight: 600;color:var(--link-color);}
.doc-description {margin: 0;color: var(--metadata-color);font-size:.9rem;line-height: 1.5;}
.doc-size {font-size: 13px;color: #999;white-space: nowrap;}
/* bouton */
.doc-action {flex: 0 0 auto;}
.doc-btn {padding: 10px 18px;border-radius: 10px;background: var(--link-color);color: #fff;font-size: 14px;white-space: nowrap;transition: background .2s ease;}
.document-card:hover .doc-btn {background:var(--link-color-hover);}
/* icône SVG */
.file-icon {width: 28px;height: 28px;flex-shrink: 0;margin:0 10px 0 0;}
.file-details{margin: 10px 0;display: flex;align-items: center;justify-content: right;}
/* responsive */
@media (max-width: 768px) {
  .document-card {flex-direction: column;align-items: flex-start;}
  .doc-image {max-width: 100%;}
	.file-details{justify-content: left;}
}

/*--------------------------------------------------------------
>>> mdj25 TABLE OF CONTENTS:
----------------------------------------------------------------
13. mdj logo
14. Getting Sticky Headers and the WordPress Admin Bar (wp-admin-bar) to Behave
15. Photoswipe overrides
17. Scroll to top button || scroll-top.js
18. Touch ripple button || touch-ripple.js
19. The events calendar style overrides
20. Ninja Forms style overrides
21. ACF Openmap Leaflet
--------------------------------------------------------------*/

/*--------------------------------------------------------------
13. mdj logo
--------------------------------------------------------------*/

/*--------------------------------------------------------------
14. Getting Sticky Headers and the WordPress Admin Bar (wp-admin-bar) to Behave
--------------------------------------------------------------*/
#wpadminbar{position:fixed!important;}
.admin-bar #siteHeader, .admin-bar #siteMain, .admin-bar #siteFooter, .admin-bar .pswp, .admin-bar .mobile-menu, .admin-bar .events-panel, .admin-bar .notification-panel {top: 32px;}
@media screen and (max-width: 767px) {
	.admin-bar #siteHeader, .admin-bar #siteMain, .admin-bar #siteFooter, .admin-bar .pswp, .admin-bar .mobile-menu, .admin-bar .events-panel, .admin-bar .notification-panel {top: 46px;}
}

/*--------------------------------------------------------------
15. Photoswipe overrides (https://photoswipe.com/) Wordpress plugin : https://fr.wordpress.org/plugins/lightbox-photoswipe/
--------------------------------------------------------------*/
.pswp__bg {background: var(--blackrock)!important;background: linear-gradient(0deg, rgba(3,4,35,.95) 0%, rgba(32, 32, 68, 0.95) 100%) !important}
.pswp__dynamic-caption--overlay {padding: 1rem 2rem;top: 90vh;background:var(--blackrock);}
.pswp__caption{background: var(--blackrock)!important;padding:1rem 2rem;}


/*--------------------------------------------------------------
17. Scroll to top button || scroll-top.js
--------------------------------------------------------------*/
.scroll-top-wrapper {position: fixed;opacity: 0;visibility: hidden;z-index: 998;background: var(--link-color);width: 50px;height: 48px;right: 2rem;bottom: 30px;border-radius: 5px;transition: all 0.5s ease-in-out;}
.scroll-top-wrapper:hover {background-color: var(--link-color-visited);}
.scroll-top-wrapper.show {visibility:visible;cursor:pointer;opacity: 1;}
.scroll-top-wrapper .chevron-up{width: 32px;height: 32px;}
.scroll-top-wrapper .chevron-up svg{fill:rgba(255,255,255,.5);}

/*--------------------------------------------------------------
18. Touch ripple button || touch-ripple.js
--------------------------------------------------------------*/
.touch_ripple {position: relative;overflow: hidden;display: inline-block;background-color: #ccc;border: none;text-align: center;box-sizing: border-box;padding: 20px 40px;min-width: 10vw;font-size: 20px;font-family: sans-serif;color: black;}
.touch_ripple span {position: absolute;border-radius: 50%;background-color: rgba(0, 0, 0, 0.3);width: 100px;height: 100px;margin-top: -50px;margin-left: -50px;animation: ripple 1s;opacity: 0;}
@keyframes ripple {
  from {opacity: 1;transform: scale(0);}
  to {opacity: 0;transform: scale(10);}
}
	
/*--------------------------------------------------------------
19. compilot Social Share : Social Sharing Buttons
--------------------------------------------------------------*/
.social-share {margin: 20px 0;}
.social-share a, .social-share button {fill:var(--link-color);padding: 10px;margin: 5px;border-radius: 50%;border: 1px solid var(--accent-background-color);background-color: var(--background-color);}
.social-share a:hover, .social-share button:hover {background-color: var(--accent-background-color);}
.social-share .compilot-social-sharing-icon{width:18px;height:18px;}

/*--------------------------------------------------------------
20. compilot-notifications
--------------------------------------------------------------*/
.compilot-notifications-list{display:flex;flex-direction:column;gap:15px}
.notification-item,.notification-item.custom-theme{border:1px solid #ddd;padding:15px;border-radius:5px;background:#fff;box-shadow:0 1px 3px #0000000d;position:relative;transition:transform .2s ease,box-shadow .2s ease}
.notification-item:hover,.notification-item.custom-theme:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0000001a}
.notification-item h2,.notification-item.custom-theme h2{margin:0 0 5px;display:flex;align-items:center;justify-content:space-between;font-size:18px;font-weight:600}
.notification-item h2 span + span,.notification-item.custom-theme h2 span + span{color:#fff;background:#c00;padding:2px 6px;border-radius:3px;font-size:12px}
.notification-item .notification-dates,.notification-item.custom-theme .notification-dates{font-size:13px;color:#555;margin-bottom:10px}
.notification-item .notification-content,.notification-item.custom-theme .notification-content{font-size:14px;line-height:1.5}
@media (max-width: 768px) {
	.notification-item h2,.notification-item.custom-theme h2{flex-direction:column;align-items:flex-start}
	.notification-item h2 span + span,.notification-item.custom-theme h2 span + span{margin-top:5px}
}

/*--------------------------------------------------------------
21. ACF Openmap Leaflet
--------------------------------------------------------------*/
.leaflet-container {z-index: 996;max-width: calc(100% - 2.5rem);z-index: 1;}

/*--------------------------------------------------------------
22. Ninja forms
--------------------------------------------------------------*/
.nf-form-fields-required{display:none;}
.nf-response-msg {background: var(--mark-background-color);padding: 1px 1rem;border-radius: 1rem;margin: 0 0 2rem 0;}

/*--------------------------------------------------------------
23. Tableau des horaires sur la page Infos pratiques (.horaires-infos_pratiques) 
--------------------------------------------------------------*/
.horaires-infos_pratiques table {width: 100%;border-collapse: collapse;margin-bottom: 30px;background-color: var(--card-background-color);box-shadow: 0 2px 5px rgba(0,0,0,0.1);}
.horaires-infos_pratiques th, .horaires-infos_pratiques td {padding: 12px 15px;text-align: center;}
.horaires-infos_pratiques th {background-color: var(--link-color-visited);color: var(--card-background-color);text-transform: uppercase;letter-spacing: 0.05em;}
.horaires-infos_pratiques tr:nth-child(even) {background-color: var(--accent-background-color);}
.horaires-infos_pratiques tr:hover {background-color: var(--mark-background-color);}

@media (max-width: 600px) {
  .horaires-infos_pratiques table, .horaires-infos_pratiques thead, .horaires-infos_pratiques tbody, .horaires-infos_pratiques th, .horaires-infos_pratiques td, .horaires-infos_pratiques tr {display: block;}
  .horaires-infos_pratiques th {text-align: left;}
  .horaires-infos_pratiques td {text-align: left;padding-left: 50%;position: relative;}
  .horaires-infos_pratiques td::before {content: attr(data-label);position: absolute;left: 15px;width: calc(50% - 30px);font-weight: bold;text-transform: uppercase;}
  .horaires-infos_pratiques tr {margin-bottom: 15px;}
}

/*--------------------------------------------------------------
24. Pagination numérotée 
--------------------------------------------------------------*/
ul.page-numbers{display:flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 12px;border-radius:10px;text-decoration:none;font-size:14px;font-weight:500;transition:all .2s ease;list-style: none;}
a.page-numbers, span.page-numbers{padding: 1rem;border-radius: .5rem;color:var(--link-color);background: var(--accent-background-color);text-decoration: none;font-weight: 700;margin: .2rem;transition: .15s linear;}
a.page-numbers:hover, span.page-numbers:hover{color:var(--white);background:var(--link-color-hover);transform:translateY(-1px)}
a.page-numbers.current, span.page-numbers.current{color:var(--white);background:var(--link-color);box-shadow:0 4px 10px rgba(0,0,0,.15)}
a.page-numbers.dots, span.page-numbers.dots{color:var(--link-color);background:transparent;box-shadow:none}
a.page-numbers.dots:hover, span.page-numbers.dots:hover{color:var(--link-color);}


/*--------------------------------------------------------------
mdj25 | Quickly identify padding & margin inconsistencies
--------------------------------------------------------------*/
/*
* {background-color: rgba(255,0,0,.2);}
* * {background-color: rgba(0,255,0,.2);}
* * * {background-color: rgba(0,0,255,.2);}
* * * * {background-color: rgba(255,0,255,.2);}
* * * * * {background-color: rgba(0,255,255,.2);}
* * * * * * {background-color: rgba(255,255,0,.2);}
* * * * * * * {background-color: rgba(255,0,0,.2);}
* * * * * * * * {background-color: rgba(0,255,0,.2);}
* * * * * * * * * {background-color: rgba(0,0,255,.2);}
*/
