
::selection {
  background : grey;
}

body {
  font-family : 'ClashDisplay-Regular', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-display: swap;

}

body, html {
    height: 100%;
    margin: 0;
}


p {
  word-wrap: break-word;
}

p::after {
  content: "\00a0";
}


.sidebar-thematiques,
.them-container {
  display: none;
}

.main-category-btn[data-parent="1"] {
    display : none;
}

/* SITE-MAIN  */

.home .site-main,
.search .site-main {
  width : calc(100vw - 400px);
}

.search .site-main {
  padding-left : 15px;
  padding-right : 15px;
}



.archive .site-content,
.search .site-content {
  position: relative;
  top : 55px;
}

.search .page-title {
  margin-top : 0;
  font-family : 'FenulCondensed-Regular', sans-serif;
  color : #eb212e;
  font-size : 18px;
}

.search-section h3 {
  margin : 0;
  color : #eb212e;
}

.search-section form {
  max-width : 500px;
  color : #eb212e;
}

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

.search-section {
  margin-bottom : 20px;
  padding-bottom : 20px;
  margin-top : 20px;
}

/* Page wrapper */
#page {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* Main + Sidebar container */
.site-content {
    display: flex;
    width: 100%;
    align-items: flex-start;
    padding-bottom : 40px;
    position: relative;
    padding-bottom : 55px;

}

.site-footer-copyright {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}


.site-footer-copyright img {
  height : 25px;
  width : auto;
}
#content {
    position: relative;
    z-index: 1;
    background: #fff;
}

#masthead {
  position: relative;
  z-index: 2;
}

#colophon {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 0;
    height : 55px;
    padding : 15px;
    font-family : 'ClashDisplay-Regular', sans-serif;
    font-size : 14px;
    background-color : rgba(0, 0, 0, 0.8);
}


.error404 .page-title {
  margin-top : 80px;
  margin-left : 30px;
}

.footer-text,
.site-footer-copyright {
  color : #fff;

}

.lienveyre,
.lienveyre:hover,
.lienveyre:visited {
  display: inline-block;
  color : #fff;
}

.site-main {
    flex: 1;
    min-width : 0;
    z-index: 1;
    background: #fff;    /* independent scroll */
}






/* HOME HEADER */

.home-catchphrase {
  font-family : 'FenulCondensed-Regular', sans-serif;
  color : #eb212e;
  font-size : 26px;
  max-width : 60vw;
  line-height : 1.1;
}

.home-header {
  height : 100vh;
  width : 100vw;
  background-color : #ebebeb;
}

.home-header-wrap {
  height : 30vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.home-header-top {
  padding : 15px;
  display: flex;
  justify-content: space-between;
  font-family : 'ClashDisplay-Medium', sans-serif;
  font-size : 18px;

}

.home-header-bot {
  display: flex;
  justify-content: space-between;
  padding : 15px;
  align-items: flex-end;
}


.home-header .mega-menu-open {
  z-index: 5;

}

.mega-menu-h3 {
  font-size : 16px;
}

#mega-menu {
    z-index: 4;
}

li.menu-item a[title="espace"] {
  line-height : 3;
  font-size : 18px;
}

.menu-informations-container {
  margin-top : 15px;
}


.home .main-navigation ul li a,
.home .main-navigation ul li a:hover,
.home .main-navigation ul li a:visited {
  color : #eb212e;
}

.home .main-navigation ul li a:hover {
  text-decoration: underline;
}

.home .main-navigation ul li {
  margin-left : 30px;
}

.home-header-wrap .logo-wrap img {
  width : 30vw;
  height : auto;
}

.logo-wrap {
  line-height: 0.7;
}

.site-bar .logo-wrap img {
  width : 20vw;
  height : auto;
}


.site-header input:-webkit-autofill,
.site-header input:-webkit-autofill:hover,
.site-header input:-webkit-autofill:focus,
.site-header input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0px 1000px transparent inset; /* override yellow bg */
    -webkit-text-fill-color: #fff;                /* force text color */
    transition: background-color 5000s ease-in-out 0s;
    font-family: 'ClashDisplay-Regular', sans-serif;
    caret-color: #fff;

}

/* Autofill fix for Firefox */
.site-header input:-moz-autofill {
    box-shadow: 0 0 0px 1000px transparent inset;
    -moz-text-fill-color: #fff;
    font-family: 'ClashDisplay-Regular', sans-serif;
    caret-color: #fff;

}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0px 1000px transparent inset; /* override yellow bg */
    -webkit-text-fill-color: rgba(0, 0, 0, 0.6);                /* force text color */
    transition: background-color 5000s ease-in-out 0s; /* prevent flicker */
    font-family: 'ClashDisplay-Regular', sans-serif;
    caret-color: rgba(0, 0, 0, 0.6);

}

/* Autofill fix for Firefox */
.site-header input:-moz-autofill {
    box-shadow: 0 0 0px 1000px transparent inset;
    -moz-text-fill-color: rgba(0, 0, 0, 0.6);
    font-family: 'ClashDisplay-Regular', sans-serif;
    caret-color: rgba(0, 0, 0, 0.6);

}

#sib_signup_form_3 input:-webkit-autofill,
#sib_signup_form_3 input:-webkit-autofill:focus,
#sib_signup_form_3 input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0px 1000px transparent inset; /* override yellow bg */
    -webkit-text-fill-color: #eb212e;                /* force text color */
    transition: background-color 5000s ease-in-out 0s; /* prevent flicker */
    font-family: 'ClashDisplay-Regular', sans-serif;
    caret-color: #eb212e;

}

/* Autofill fix for Firefox */
#sib_signup_form_3 input:-moz-autofill {
    box-shadow: 0 0 0px 1000px transparent inset;
    -moz-text-fill-color: #eb212e;
    font-family: 'ClashDisplay-Regular', sans-serif;
    caret-color: #eb212e;

}

.sib_signup_box_inside_3 {
  display: flex;
  background-color : #fff;
  padding-left : 10px;
  padding-right : 10px;
}



form#sib_signup_form_3 input[type=text], form#sib_signup_form_3 input[type=email], form#sib_signup_form_3 select {
  border : 0px!important;
  border-radius : 0px!important;
}

form#sib_signup_form_3 {
    display: inline-block!important;
    width: auto!important;
}

form#sib_signup_form_3 input[type=email] {
    width: auto!important;
    color : #eb212e;
}
form#sib_signup_form_3 p {
  margin : 0!important;
}

form#sib_signup_form_3 input[type=email]:focus {
    outline: none;
    border: 0.5px solid #eb212e;
    /* box-shadow: 0 0 0 2px rgba(0,0,0,0.1); */
}

form#sib_signup_form_3 input[type=email]::placeholder {
    font-family: 'ClashDisplay-Regular', sans-serif;
    color: #eb212e;
    opacity: 1; /* makes sure it's fully visible */
}

input[name="sib_form_alert_notice"],
input[name="sib_form_invalid_email_notice"] {
    border: 0px solid #eb212e;
    background-color: #fff;
    color: rgba(0, 0, 0, 0.6);;
    font-family: 'ClashDisplay-Regular', sans-serif;
    width: 100%;
    font-size: 12px;
    padding-bottom : 10px;

}
form#sib_signup_form_4 p.sib-alert-message {
  border-radius : 0px!important;
}


/* ============================
   ARTICLE UNE
   ============================ */

.art-une-wrap {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 70vh;
    display: flex;
    justify-content: flex-end;  /* keeps card on the right */
    align-items: center;         /* vertical centering */
    padding: 40px;
    text-decoration: none;       /* ensures link wrapper doesn't underline text */
    color: inherit;              /* inherit text color inside link */
}

.article-une {
    height: 70vh;
}

.art-une-card {
    margin-right: 75px;          /* spacing from right of container */
    display: flex;
    flex-direction: column;
    max-width: 30%;
    background-color: #fff;
    color: #eb212e;
    padding: 15px;
    height: auto;                /* shrink to fit content */
}

.art-une-titre:hover {
  text-decoration: underline;
  cursor: pointer;
}

.art-une-extrait:hover .art-une-titre {
  text-decoration: underline;
  cursor: pointer;
}

/* Optional: style any links inside the card */
.art-une-card a {
    color: #eb212e;
    text-decoration: none;
    transition : all 0.2s ease;

}

/* Top section: author + date */
.art-une-auteur,
.art-une-date {
    text-transform: uppercase;
    font-size: 14px;
}

.art-une-auteur a:hover {
  text-decoration: underline;
}

.art-une-top {
    display: flex;
    justify-content: space-between;
}

/* Article title */
.art-une-titre {
    font-size: 48px;
    font-family: 'ClashDisplay-Semibold', sans-serif;
    line-height: 0.9;
    margin-top: 5px;
}

/* Article excerpt */
.art-une-extrait {
    font-size: 14px;
    line-height: 1;
}

/* Categories section */
.art-une-categories {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 5px; /* spacing between category boxes */
}

/* Each category as a span box */
.art-cat {
    display: inline-block;
    border: 0.5px solid #eb212e;
    padding: 4px 8px;
    text-transform: uppercase;
    font-family: 'FenulCondensed-Regular', sans-serif;
    color: #eb212e;
    font-size: 12px;
    text-decoration: none;
}

/* Optional hover effect for category spans */
.art-cat:hover {
    background-color: #eb212e;
    color: #fff;
}

.art-cat a:hover {
    color: #fff;
}

/* Home header hover state */
.home-header-wrap:hover {
    background-color: #eb212e; /* #eb212e background */
}

/* Logo becomes white */
.home-header-wrap:hover .logo-wrap img,
.home-header-wrap:hover .site-logo img {
    filter: brightness(0) invert(1); /* turns logo white */
}

/* Main menu links */
.home-header-wrap:hover .main-navigation ul li a,
.home-header-wrap:hover .main-navigation ul li a:visited {
    color: #ffffff; /* white links */
}

/* Catchphrase */
.home-header-wrap:hover .home-catchphrase {
    color: #ffffff;
}

/* Mega menu sections (optional) */
.home-header-wrap:hover #mega-menu .mega-menu-section h3,
.home-header-wrap:hover #mega-menu .mega-menu-section a {
    color: #ffffff;
}

/* Optional: newsletter form placeholder/text */
.home-header-wrap:hover .home-newsletter input::placeholder,
.home-header-wrap:hover .home-newsletter input {
    color: #ffffff;
}

/* Optional: clear hover link underline */
.home-header-wrap:hover .main-navigation ul li a:hover {
    text-decoration: underline; /* can keep underline on hover */
}

.home-header-wrap,
.home-header-wrap .home-catchphrase,
.home-header-wrap .main-navigation ul li a,
.home-header-wrap .logo-wrap img {
    transition: all 0.3s ease;
}


/* MENU BARRE */

.site-bar .main-navigation ul li a,
.site-bar .main-navigation ul li a:hover,
.site-bar .main-navigation ul li a:visited {
  color : #eb212e;
  font-family: 'ClashDisplay-Medium', sans-serif;
}

.site-bar {
  padding : 15px;
  display: flex;
  justify-content: space-between;
  font-family : 'ClashDisplay-Medium', sans-serif;
  background-color : #ebebeb;
  position: fixed;          /* fixed so it appears at the top on scroll */
  left: 0;
  z-index: 10000;
  top : 0;
  width: 100%;
  transition : all 0.3s ease;
  font-size : 18px;
}

/* Hover effect on the site-bar */
.site-bar:hover {
    background-color: #eb212e;       /* #eb212e background on hover */
}

/* Links turn white on hover of the bar */
.site-bar:hover .main-navigation ul li a {
    color: #fff;
    text-decoration: none; /* no underline until link hover */
}

/* Link underline on hover over link */
.site-bar:hover .main-navigation ul li a:hover {
    text-decoration: underline;
}

.site-bar img.logo-desktop {
  display: block;
}

.site-bar img.logo-mobile {
  display: none;
}

.site-bar img.logo-desktop {
  transition: filter 0.3s ease;
}

.logo-white {
  filter: brightness(0) invert(1);

}

.site-bar:hover img.logo-desktop {
  filter: brightness(0) invert(1);
}

.mega-menu-categs {
  display: none;
}

.site-bar:hover .mega-menu-toggle span {
    background-color: #fff;
}

.site-bar .main-navigation {
    display: flex;
    width: auto;
    align-items: center;
}

.site-bar .main-navigation ul.menu {
    display: flex;         /* optional: keep menu items in a row */
    flex-wrap: nowrap;
    padding: 0;
    margin: 0;
    list-style: none;
}

.site-bar .main-navigation ul.menu li {
    margin-right: 30px;    /* space between menu items */
}

.site-bar .main-navigation ul.menu li:last-child {
    margin-right: 0;       /* remove spacing for last item */
}

.site-bar .site-logo {
    display: inline-block;  /* shrink-wrap the image */
    line-height: 0;         /* remove extra vertical space */
}

.site-bar .main-navigation ul li a:hover {
  text-decoration: underline;
}

.home-site-bar {
    top: -100px;
    transition: all 0.4s ease;
    z-index : 4;       /* hidden initially */
}

.home-site-bar.show {
    top: 0;
}

.site-logo img {
  display: block;
    transition: opacity 0.4s ease;
}

.site-logo img.white-logo {
    position: absolute;
    top: 15px;
    opacity: 0;
    pointer-events: none;
}
.site-logo.menu-open img.white-logo {
    opacity: 1;
}
.site-logo.menu-open img.default-logo {
    opacity: 0;
}

/* Mega menu hidden by default */

/* Mega menu base state: hidden above */
.mega-menu {
    position: fixed;       /* stays under the site-bar */
    top: 0;                /* will be adjusted dynamically via JS if needed */
    left: 0;
    width: 100%;
    background-color: #eb212e;
    color: white;
    transform: translateY(-200%);
    opacity: 1;
    transition: transform 0.4s ease, opacity 0.4s ease;
    z-index: 9999;
}

/* When active */
.mega-menu.show-menu {
    transform: translateY(-2px);
    opacity: 1;
}

/* Reset list styling inside mega-menu */
#mega-menu ul {
    list-style: none;    /* remove bullets */
    padding: 0;          /* remove default padding */
    margin: 0;           /* remove default margin */
}

/* Keep hover underline for links */
#mega-menu a {
    text-decoration: none;  /* normal links without underline */
    color: inherit;         /* inherit text color */
}

#mega-menu a:hover {
    text-decoration: underline; /* only underline on hover */
}

.mega-menu.show-menu {
    display: block;
}

/* Flex grid for mega menu sections */
.mega-menu-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    position: relative;
}

.mega-menu h3 {
  font-size : 16px;
  margin-bottom : 10px;
  margin-top : 15px;
}

.mega-menu li a {
  font-size : 14px;
}

.mega-menu-informations li a {
  font-size : 16px;
}

.mega-menu-section li {
  line-height : 1;
}

.mega-menu-section {
  padding-bottom : 15px;
  padding-left: 20px;
  padding-right: 20px;
  border-right: 0.5px solid white;
}

.mega-menu-informations {
  border-right: 0px solid white;

}

/* Add a vertical border between each column except the last */
.mega-menu-container > *:not(:last-child) {
    position: relative;
}

.mega-menu-container > *:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 0;
    right: -20px; /* half of the gap so border sits in middle */
    height: 100%;
    width: 0px;
    background-color: white;
}

/* Toggle button on right */
.mega-menu-toggle {
    position: relative;
    width: 24px;
    height: 16px;              /* #eb212euced height */
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-left: 30px;
}

/* The 3 lines */
.mega-menu-toggle span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;             /* thinner lines */
    background: #eb212e;       /* force #eb212e */
    transition: transform 0.3s ease, opacity 0.3s ease;
    transform-origin: center;
}

.mega-menu-toggle span:nth-child(1) {
    top: 0;
}

.mega-menu-toggle span:nth-child(2) {
    top: 7px;   /* cente#eb212e */
}

.mega-menu-toggle span:nth-child(3) {
    bottom: 0;
}

.site-bar.mega-menu-open .mega-menu-toggle span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
    background: #fff;
}

.site-bar.mega-menu-open .mega-menu-toggle span:nth-child(2) {
    opacity: 0;

}

.site-bar.mega-menu-open .mega-menu-toggle span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
    background: #fff;

}

.site-bar.mega-menu-open .site-logo img.default-logo {
    opacity: 0;
}
.site-bar.mega-menu-open .site-logo img.white-logo {
    opacity: 1;
}

.site-bar.mega-menu-open:hover {
    background-color: #eb212e;
}

.mega-menu-toggle span {
    transform-origin: center;
}

.mega-menu-toggle {
    transition: transform 0.2s ease;
}

/* When mega menu is open, change site-bar background */
.site-bar.mega-menu-open {
    background-color: #eb212e;
    border-bottom : white 0.2px solid;
}

.site-bar.mega-menu-open .main-navigation ul li a {
    color: #fff; /* text becomes white */
}

.site-bar.mega-menu-open .mega-menu-toggle {
    color: #fff;
}


.mega-menu form#sib_signup_form_4,
.mega-menu .sib_signup_box_inside_4 {
  padding : 0;
}

.mega-menu form#sib_signup_form_4 p {
  margin : 0;
}


.mega-menu form#sib_signup_form_4 .sib_signup_box_inside_4 {
    display: flex !important;
    gap: 0px;
    width: 100%;
    border-bottom : 0.5px solid #fff;
}

.mega-menu form#sib_signup_form_4 .sib-email-area {
    flex: 1;
}

.mega-menu form#sib_signup_form_4 .sib-email-area input[type="email"] {
    width: 100% !important;  /* will be corrected by JS */
    height: 40px;
    padding-left: 0;
    padding-right : 15px;
    border: 0px solid #fff;
    border-radius: 0px;
    box-sizing: border-box;
    background-color: transparent;
    color : #fff;
    font-family: 'ClashDisplay-Regular', sans-serif;

}

.mega-menu form#sib_signup_form_4 .sib-email-area input[type="email"]::placeholder {
  color : #fff;
  font-family : 'ClashDisplay-Regular', sans-serif;
  padding-left : 0;
  margin-left : 0;
}
.mega-menu form#sib_signup_form_4 .custom-newsletter-btn {
    width: 40px;
    height: auto;
    padding : 0;
    border: none !important;
    background: url('https://manifesto-21.com/wp-content/uploads/2026/03/newsletter_white.png') no-repeat center center !important;
    background-size: contain !important;
    cursor: pointer;
    text-indent: -9999px;
    color: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

/* Hide the default clear '×' in search inputs */
.mega-menu input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}

.mega-menu input[type="search"]::-ms-clear {
    display: none;
    width: 0;
    height: 0;
}

.mega-menu input[type="search"]::-moz-search-clear {
    display: none;
}

.mega-menu .custom-search-form {
    position: relative;
    display: flex;
    align-items: center;
    border-bottom: 0.5px solid #fff;
    padding: 4px 0;
}

.mega-menu .custom-search-form input[type="search"] {
    border: none;
    outline: none;
    flex: 1;
    font-size: 16px;
    padding: 4px;
    background-color: transparent;
    color : #fff;
    font-family: 'ClashDisplay-Regular', sans-serif;


}

.mega-menu .custom-search-form input[type="search"]::placeholder {
  color : #fff;
  font-family : 'ClashDisplay-Regular', sans-serif;
  padding-left : 0;
  margin-left : 0;
}


.mega-menu .custom-search-form .search-button {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    width : 35px;
}

.mega-menu .custom-search-form .clear-button {
    position: absolute;
    right: 30px; /* adjust depending on search icon */
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
}

.mega-menu .custom-search-form button img {
    width: 20px;
    height: 20px;
}





/* CATEGORY PAGE */


.filter-btn {
    margin: 0 .5rem .5rem 0;
    padding: .5rem 1rem;
    cursor: pointer;
}

.filter-btn:visited {
  color : #eb212e;
}

.filter-btn.active {
    background: black!important;
    color: white!important;
}

.tax-thematique .filters-container {
  margin-left : 15px;
  padding-bottom : 15px;
}

.tax-thematique .filter-wrapper {
  margin-bottom : 30px;
  border-bottom : 0.5px solid #eb212e;
}

.tax-thematique .filters-wrapper-inner {
  padding-left : 0;
}

.post-grid,
.author-posts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.author .site-main {
  padding : 15px;
}

.main-categories-wrap {
  margin-bottom: 20px;
  padding-left : 15px;
  padding-right : 15px;
  margin-left: 15px;
  margin-right: 15px;
  border-left: 0.5px solid #eb212e;
  margin-top : 15px;

}

.main-categories-nav {
    display: flex;

}

#filters-wrapper {
  border-bottom: 0.5px solid #eb212e;
  margin-bottom: 30px;
  position: relative;
}

.filters-wrapper-inner {
  padding-right : 15px;
  padding-left : 15px;
  display : flex;
}



/* Base style for ALL filter buttons */
.main-category-btn,
.filter-btn {
    background: transparent;
    text-decoration: none;
    text-transform: uppercase;
    color: #eb212e!important; /* your #eb212e */
    background-color : #fff!important;
    border: 0.5px solid #eb212e!important;
    padding: 8px 16px;
    margin: 5px 5px 5px 0;
    font-family : 'FenulCondensed-Regular', sans-serif;
    font-size: 14px;
    cursor: pointer;
    border-radius : 0px;
    transition: all 0.3s ease;
}

/* Hover state */
.main-category-btn:hover,
.filter-btn:hover {
    background: #eb212e!important;
    color: #ffffff!important;
}

/* Active state */
.main-category-btn.active,
.filter-btn.active {
    background: #eb212e!important;
    color: #ffffff!important;
}

/* Optional: remove default button styles */
.main-category-btn:focus,
.filter-btn:focus {
    outline: none!important;
    border : #eb212e 0.5px solid!important;
}

/* Optional: nice wrapping */
.main-categories-nav,
.filters {
    display: flex;
    flex-wrap: wrap;

}

.filters-container {
  margin-bottom : 20px;
  padding-left : 15px;
  padding-right : 15px;
  border-left : 0.5px solid #eb212e;

}



#ajax-content-wrapper {
    transition: opacity 0.2s ease;
}

.filters-title {
  font-size : 11px;
  color : #eb212e;
  margin-top : 0;
}


/* ARTICLE CARD */

.post-card {
    position: relative;
}



.post-thumbnail {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 2; /* adjust as needed */
    overflow: hidden;
    background-color: #e0e0e0; /* light grey fallback */
}

.post-thumb-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.post-meta-row {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
    font-size: 0.75rem;
    text-transform: uppercase;
}


.post-title {
    margin: 3px 0;
    margin-bottom: 8px;
    font-size: 1.3rem;
    line-height: 1.2;
    color: rgba(0, 0, 0, 0.8);

}

.post-extract {
  font-size : 14px;
  line-height : 1.3;
  margin-bottom : 10px;
}

.post-categories {
    display: flex;
    justify-content: flex-end;
    gap: 6px;
    margin-top: 8px;
    flex-wrap: wrap;
    margin-top : auto;
}


.post-category {
    font-size: 0.7rem;
    text-transform: uppercase;
    padding: 3px 6px;
    border: 0.5px solid rgba(0, 0, 0, 0.7);
    font-family : 'FenulCondensed-Regular', sans-serif;

}



.art-main-grid,
#post-grid {
    display: grid;
    gap: 20px;
    margin-left: 15px;
    margin-right: 15px;
}

.art-main-grid::-webkit-scrollbar {
  display: none;
}

.art-main-grid {
  overflow: auto;           /* allow scrolling */
  scrollbar-width: none;    /* Firefox */
  -ms-overflow-style: none;
}

#post-grid {
  grid-template-columns: repeat(4, 1fr);
  grid-auto-flow: row;

}

.art-main-grid.grid-art {
  grid-template-columns: repeat(3, 1fr);

}

.art-main-grid.grid-pod,
.art-main-grid.grid-vid {
  grid-template-columns: repeat(2, 1fr);

}

.post-thumbnail {
    transition: transform 0.6s ease;
}

/* .post-card:hover .post-thumbnail {
    transform: scale(1.05);
} */

.post-card:hover .post-meta-row,
.post-card:hover .post-title,
.post-card:hover .post-date,
.post-card:hover .post-extract,
.post-card:hover a.post-author,
.post-card:hover .post-author,
.post-author:hover {
  color : #eb212e;
}

a.post-author:hover {
  text-decoration: underline;
  color : #eb212e;
}

.post-author a:active,
.post-card:active .post-author,
.post-card:active .post-author a,
.post-card:focus-within .post-author,
.post-title:active .post-author,
.post-title:active .post-author a {
  color : #eb212e;
}

.post-card:hover .post-category {
  color: #eb212e;
  border : #eb212e solid 0.5px;
}



.post-card a,
.post-card a:visited {
    color: rgba(0, 0, 0, 0.9);
    text-decoration: none;
}

.post-title {
    text-decoration: none;
    transition: text-decoration 0.2s ease;
    font-family: 'ClashDisplay-Medium', sans-serif;
}

.post-category {
  transition : all 0.2s ease;
}

.post-title:hover {
    text-decoration: underline;
}

.post-category:hover {
    background-color: #eb212e;
    color: #fff;
    border : #fff solid 0.5px;
}

.post-category:hover  {
  color : #fff!important;
}

#post-grid .post-card {
  position: relative;
  overflow: hidden;
  display: flex;
    flex-direction: column;
}

/* the white curtain overlay */
#post-grid .post-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #ffffff;
  transform: scaleY(1);         /* fully covering initially */
  transform-origin: top;        /* always top → bottom for reveal/hide */
  z-index: 5;
  pointer-events: none;
  transition: transform 0.4s ease;
}

/* Reveal: shrink overlay top → bottom to show card */
#post-grid .post-card.is-revealed::after {
  transform: scaleY(0);
}

/* Hide: grow overlay top → bottom to cover card */
#post-grid .post-card.is-hiding::after {
  transform: scaleY(1);
}


.loading {
  padding: 15px 0;
  font-size: 1rem;
  letter-spacing: 0.05em;
}

@keyframes pulse {
  0% { opacity: 0.4; }
  50% { opacity: 1; }
  100% { opacity: 0.4; }
}




section.site-main {
  margin-top : 70px;
  margin-bottom : 70px;
}

section.main-evenements {
  margin-top : 0px;
}

.main-evenements .section-title {
  margin-top : 0px;
}

.load-more-btn {
  color: #000;
    z-index: 500000;
    position: absolute;
    background-color: #FFF;
    border: 0px solid;
    left: 15px;
    margin: 0px;
    padding: 0px;
    font-size: 22px;
    font-family: 'ClashDisplay-Semibold', sans-serif;
    font-weight: normal;
}
/* .section-title {
  font-family : 'FenulCondensed-Regular', sans-serif;
  text-transform : uppercase;
  color : #eb212e;
  font-size : 1.7rem;
  display: flex;
  align-items: center;
  letter-spacing: 0.05em;
  padding-right : 15px;
  padding-left : 15px;
}


.section-title::before {
    flex: 1;
    content: "";
    height: 1px;
    background: #eb212e;
    margin-right: 20px;
}

.section-title::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #eb212e;
    margin-left: 20px;
} */

.section-title {
  font-family: 'ClashDisplay-Semibold', sans-serif;
  color: #eb212e;
  font-size: 2rem;
  letter-spacing: 0.05em;
  padding-left: 15px;
  margin-bottom: 3px;

  display: flex;
  align-items: center;
  gap: 20px; /* space between text and line */
}

/* Remove left line completely */
.section-title::before {
  display: none;
}

/* Right line only */
.section-title::after {
  content: "";
  flex: 1;
  height: 0px;
  background: #eb212e;
}

.art-main-button a {
    display: block;                 /* prend toute la largeur */
    width: calc(100% - 15px);
    padding: 10px;
    margin-left : 15px;
    margin-right : 15px;
    font-family : 'FenulCondensed-Regular', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background-color: #f2f2f2;
    color: #000;
    text-decoration: none;
    text-align: center;
    transition: all 0.3s ease;
}

.art-main-button a:hover {
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
}

.main-arch-jour {
  color : #eb212e;
}

.arch-jour {
  border-top : #eb212e solid 0.5px;
  border-bottom : #eb212e solid 0.5px;
  margin-left : 15px;
  margin-top : 20px;

}

.featured-post-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
}

.featured-left {
    display: flex;
    flex-direction: column;
    margin-right : 30px;
    justify-content: space-between; /* Push archive top, info bottom */
}

.featured-left-top {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
    border-bottom : 0.5px solid #eb212e;
}

.featured-left-top .featured-date {
  font-family: 'ClashDisplay-Semibold', sans-serif;
  text-transform: uppercase;
  font-size : 15px;
  align-self : center;
}

.featured-archive {
    font-family: 'ClashDisplay-Semibold', sans-serif;
    font-size: 1.5rem;
    color: #eb212e;
    margin-bottom: 10px;
    margin-top : 10px;

}

.featured-info {
    display: flex;
    flex-direction: column;
}

.featured-author-date {
    display: flex;
    justify-content: space-between;
    text-transform: uppercase;
    font-family: 'ClashDisplay-Medium', sans-serif;
}

.featured-title {
    font-size: 2.4rem;
    line-height: 1.1;
    font-family: 'FenulCondensed-Regular', sans-serif;
    margin-bottom: 20px;
    margin-top : 10px;
}

.featured-title a {
    text-decoration: none;
    color: #eb212e;
}

.featured-title a:hover {
    text-decoration: underline;
}

.featured-categories {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 5px;
}

a.featured-category {
    font-size: 0.85rem;
    text-transform: uppercase;
    color: #eb212e;
    border: 0.5px solid #eb212e;
    padding: 2px 6px;
    font-family : 'FenulCondensed-Regular', sans-serif;
    text-decoration: none;
    transition : all 0.2s ease;
}

a.featured-category:visited {
  color: #eb212e;
}

a.featured-category:hover {
  color: #fff;
  background-color : #eb212e;

}



.featured-right {
    display: flex;
    align-items: stretch;
    margin-top : 15px;
}

.featured-thumbnail {
    width: 100%;
    height: 100%;
    aspect-ratio : 5/4;
    background-size: cover; /* Cover the whole div */
    background-position: center; /* Center the image */
    background-color: #e0e0e0;
}

.event-featured-grid {
  padding-left : 15px;
}

.event-featured-grid .post-thumbnail {
  aspect-ratio : 16/6;
}

/* SIDEBAR  */



.site-sidebar {
    padding-top : 30px;
    width : 400px;
    color : rgba(0, 0, 0, 0.5);
    position: sticky;
    z-index : 1;
    top: 55px;
    max-height: calc(100vh - 40px);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom : 50px;
    overflow: auto;           /* allow scrolling */
    scrollbar-width: none;    /* Firefox */
    -ms-overflow-style: none;
}

.site-sidebar::-webkit-scrollbar {
  display: none;
}

.sidebar-color {
  height : 700px;
  width : 30px;
  background-color: #eb212e;
}

.site-sidebar a,
.site-sidebar a:hover,
.site-sidebar a:visited {
    color : rgba(0, 0, 0, 0.5);
    text-decoration: none;

}

/* Section spacing */
.sidebar-section {
    margin-bottom: 25px;
    padding-bottom : 25px;
    /* border-bottom : 0.5px solid #666666; */
    width: 220px;
}

/* Titles */
.sidebar-title {
    font-family: 'ClashDisplay-Medium', sans-serif;
    font-size: 1.1rem;
    margin-bottom: 5px;
    margin-top : 0px;
    line-height : 1;
}

.sidebar-section .menu-informations-container {
  margin-top : 0;
}

/* Social links */
.sidebar-social-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar-social-list li {
    line-height: 1.1;
}


.sidebar-social-list a:hover {
    text-decoration: underline;
}

/* Thematique boxes */
.sidebar-thematiques-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.thematique-link {
    font-family: 'FenulCondensed-Regular', sans-serif;
    text-transform: uppercase;
    font-size: 0.85rem;
    padding: 4px 10px;
    border: 0.5px solid #000;
    text-decoration: none;
    color: rgba(0,0,0,0.9);
    transition: all 0.2s ease;
}

.thematique-link:hover {
    background: rgba(0,0,0,0.6);
    color: #fff!important;
}

/* Informations menu list */
.sidebar-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar-menu li {
  line-height: 1.1;


}


.sidebar-menu a {
    text-decoration: none;
    color: rgba(0,0,0,0.5);
    font-family: 'ClashDisplay-Regular', sans-serif;
    font-size: 1rem;
}

.sidebar-menu a:hover {
    text-decoration: underline;
}


input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

input[type="search"]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

input[type="search"]::-moz-search-clear {
  display: none;
}



/* Custom search form container */
.custom-search-form {
    position: relative;
    display: flex;
    align-items: center;
    border-bottom: 0.5px solid #666666;
    padding: 4px 0;
    justify-content: space-between;
}

/* Search input */
.custom-search-form input[type="search"] {
    border: none;
    outline: none;
    flex: 1;
    font-size: 16px;
    padding: 4px;
    color: rgba(0, 0, 0, 0.7);
    font-family: 'ClashDisplay-Regular', sans-serif;
    height: 28px;            /* fixed height to prevent stretching */
    line-height: 1;
    max-width: calc(100% - 50px);
}

/* Buttons */
.custom-search-form button {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0 4px;
    height: auto;             /* prevent vertical stretching */
}


.custom-search-form .search-button {
    display: inline-flex;       /* use inline-flex so it sizes to content */
    align-items: center;
    justify-content: center;
    padding: 0;                 /* no extra padding shrinking it */
    width: auto;                /* important: allow width to grow with img */
    height: auto;
    z-index : 5;               /* allow height to adjust with img */
}

/* Clear button */
.custom-search-form .clear-button {
    position: absolute;
    right: 4px;       /* space from right edge of input */
    top: 50%;
    transform: translateY(-50%);
    display: none;    /* toggled via JS */
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 2;
}

.custom-search-form .search-button img {
    height: 20px;
    display: block;
    max-width: none;
    object-fit: contain;
    right: 3px;
    position: relative;
}

/* Clear button icon */
.custom-search-form .clear-button img {
    height: 20px;
    margin-right: 6px;
    width: auto;
    display: block;
    max-width: none;
    object-fit: contain;
}

.site-content .custom-search-form .clear-button img {
  margin-right: 25px;

}


.sidebar-section form#sib_signup_form_4,
.sidebar-section .sib_signup_box_inside_4 {
  padding : 0;
}

.sidebar-section form#sib_signup_form_4 p {
  margin : 0;
}


.sidebar-section form#sib_signup_form_4 .sib_signup_box_inside_4 {
    display: flex !important;
    gap: 0px;
    width: 100%;
    border-bottom : 0.5px solid #666666;
}

.sidebar-section form#sib_signup_form_4 .sib-email-area {
    flex: 1;
}

.sidebar-section form#sib_signup_form_4 .sib-email-area input[type="email"] {
    width: 100% !important;  /* will be corrected by JS */
    height: 40px;
    padding-left: 0px;
    padding-right : 15px;
    border: 0px solid #bbb;
    border-radius: 0px;
    box-sizing: border-box;
    font-family : 'ClashDisplay-Regular', sans-serif;

}

.sidebar-section form#sib_signup_form_4 .sib-email-area input[type="email"]::placeholder {
  font-family : 'ClashDisplay-Regular', sans-serif;

}


.sidebar-section form#sib_signup_form_4 .custom-newsletter-btn {
    width: 40px;
    height: auto;
    padding : 0;
    border: none !important;
    background: url('https://manifesto-21.com/wp-content/uploads/2026/03/newsletter_grey.png') no-repeat center center !important;
    background-size: contain !important;
    cursor: pointer;
    text-indent: -9999px;
    color: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

form#sib_signup_form_4 input[type="email"]:focus {
    outline: none !important;
    box-shadow: none !important;
}


/* SINGLE */

/* --------------------------
   Layout
--------------------------- */
.single-nav-posts {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 55px;
  padding: 40px 15px;
  max-width: 75%;
  margin-top: 75px;
  border-top: 0.5px solid #eb212e;
  border-bottom: 0.5px solid #eb212e;
  gap : 30px;
}

.single-nav-posts a {
  display: flex;
  align-items: center; /* vertically center arrow & text */
  color: #eb212e;
  font-family: 'ClashDisplay-Medium', sans-serif;
  font-size: 18px;
  text-decoration: none;
  margin : 0;
}

.single-nav-posts a:hover {
  text-decoration: underline;
}

.single-nav-posts a.prev-post:hover,
.single-nav-posts a.next-post:hover {
  text-decoration: none;

}

.single-nav-posts .post-title,
.single-nav-posts .post-meta  {
  color: #eb212e;
}



.single-nav-posts .next-post {
  text-align : right;
}

.single-nav-posts .prev-post .arrow {
  margin-right: 15px;
  font-family : 'ClashDisplay-Regular', sans-serif;
  font-size : 32px;

}

.single-nav-posts .next-post .arrow {
  margin-left: 15px;
  font-family : 'ClashDisplay-Regular', sans-serif;
  font-size : 32px;
}

.single-nav-posts .post-info {
  display: flex;
  flex-direction: column;
}

.single-nav-posts .post-title {
  font-weight: 600;
}

.single-nav-posts .post-meta {
  font-size: 14px;
  color: #eb212e;
  text-transform: uppercase;
  font-family : 'ClashDisplay-Regular', sans-serif;
}

.single-nav-posts .post-author {
  font-size : 12px;
  text-transform : uppercase;
}

.single-nav-prev,
.single-nav-next {
  width : 50%;
  display: flex;
}

.single-nav-next {
  text-align: right;
  justify-content: flex-end;
}

.single-nav-next .post-author {
  justify-content : flex-end;
}



.single-page {
    display: flex;
    gap: 20px;
    max-width: 100vw;
}

.single-article-container {
    flex: 1 1 calc(100vw - 400px); /* leaves 400px for sidebar */
}

/* --------------------------
   featured Image + Overlay
--------------------------- */
.single-thumbnail-wrapper {
    position: relative;
    width: 100%;
}

.single-thumbnail {
    width: 100%;
}

.single-thumb-img {
    width: 100%;
    height: auto;             /* maintain aspect ratio */
    display: block;
    object-fit: cover;        /* fills container while cropping */
    object-position: top;     /* align top instead of center */
    max-height: 70vh;         /* optional max height */
}

/* --------------------------
   Overlay Info Box
--------------------------- */
.single-info-box {
    position: absolute;
    bottom: 0; /* bottom of image */
    left: 50%;
    transform: translateX(-50%) translateY(80%);
    width: 75%;
    background: #fff;
    padding: 20px;
}

/* --------------------------
   Author / Date
--------------------------- */
.single-meta {
    display: flex;
    justify-content: space-between;
    color: #eb212e;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.single-author a,
.single-author a:visited,
.featured-author a,
.featured-author a:visited {
  color: #eb212e!important;
  text-decoration: none;
}

.single-author a:hover,
.featured-author a:hover,
.single-author:hover,
.featured-author:hover {
  color: #eb212e!important;
  text-decoration: underline!important;
}

.author-name {
  font-size : 22px;
}

/* --------------------------
   Title
--------------------------- */
.single-title {
    color: #eb212e;
    margin: 0 0 10px 0;
    font-size : 42px;
    line-height: 1.1;
    font-family : 'ClashDisplay-Medium', sans-serif;
}

/* --------------------------
   Categories
--------------------------- */
.single-categories {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.single-category {
    border: 0.5px solid #eb212e;
    font-family : 'FenulCondensed-Regular', sans-serif;
    text-transform: uppercase;
    padding: 4px 8px;
    color: #eb212e;
    font-size: 12px;
    text-decoration: none;
    transition : all 0.2s ease;
}

a.single-category:visited {
  color: #eb212e;
  text-decoration : none!important;
}

a.single-category:hover {
  background-color: #eb212e;
  color : #fff;
}

/* --------------------------
   Content
--------------------------- */
.single-content,
.page-content {
    max-width: 75%;
    margin: 0 auto;
    line-height: 1.4;
    font-family : 'Roboto', sans-serif;
}

.single-content p,
.page-content p {
    font-size : 18px;
    font-weight: 300;
}
.single .page-content li,
.page .page-content li {
  font-size : 16px;
}

.single .page-content ul,
.page .page-content ul {
  margin-left : 0!important;
  padding-left: 5px;
}

.single h6,
.page h6 {
  font-size : 15px;
  font-family : 'ClashDisplay-Medium', sans-serif;
  line-height : 1.4;
}


.single h5,
.page h5 {
  font-size : 20px;
  font-family : 'ClashDisplay-Medium', sans-serif;
  line-height : 1.4;
}

.single h4,
.page h4 {
  font-size : 22px;
  font-family : 'ClashDisplay-Medium', sans-serif;
  line-height : 1.4;
}

.single h3,
.page h3 {
  font-size : 26px;
  font-family : 'ClashDisplay-Medium', sans-serif;
  line-height : 1.4;
}

.single h2,
.page h2 {
  font-size : 30px;
  font-family : 'ClashDisplay-Medium', sans-serif;
  line-height : 1.4;
}


.single .wp-element-caption,
.page .wp-element-caption {
  font-size : 13px;
  font-weight : lighter;
}

.single-page {
  position: relative;
}

.single-content a,
.single-content a:visited,
.page-content a,
.page-content a:visited {
  color : #404040;
}

.single-content a:hover,
.page-content a:hover {
  text-decoration: none;
}

.single blockquote,
.page blockquote {
  color : #eb212e;
  margin-top : 30px;
  margin-bottom : 30px;
  font-size : 20px;
  font-family : 'FenulCondensed-Regular', serif;
  position: relative;
  padding-left: 60px;
}

.single blockquote p,
.page blockquote p {
  font-size : 24px!important;
  line-height : 1.3;
  margin-bottom : 15px;
}

.single blockquote::before,
.page blockquote::before {
    content: '“'; /* fancy opening quote */
    position: absolute;
    left: 0;
    top: -10px; /* adjust vertically if needed */
    font-size: 160px; /* make it big */
    color: #eb212e; /* matches your editorial theme */
    font-family : 'ClashDisplay-Regular', sans-serif;
    line-height: 1;
    z-index: 1;
}

.single strong,
.page strong {
  /* font-family : 'ClashDisplay-Medium', sans-serif; */
}

.single .wp-block-separator,
.page .wp-block-separator {
  border-top : 0px;
  margin-top : 2em;
  margin-bottom : 2em;
}

.sidebar-related .related-posts {
    display: flex;
    flex-direction: column;
}

.sidebar-related .related-card {
    padding-bottom: 30px;
    margin-bottom : 30px;
}



.related-meta {
  display:flex;
  justify-content:space-between;
  font-size:12px;
  text-transform: uppercase;
}

h4.related-title {
  color : rgba(0, 0, 0, 0.5);
  line-height : 1.2;
  margin : 0;
  font-family : 'ClashDisplay-Regular', sans-serif;
  font-size : 18px;
}

h4.related-title a,
h4.related-title a:visited {
  color : rgba(0, 0, 0, 0.5);
  line-height : 1.2;
  text-decoration : none;
}
h4.related-title a:active {
  color : #eb212e!important;

}

.related-card:hover a,
.related-card:hover {
  color : #eb212e!important;
}

h4.related-title a:hover {
  text-decoration: underline;
}

.related-title:hover a,
.related-author:hover {
  text-decoration: underline!important;
}

.single .sidebar-related {
  padding-right : 10px;
  margin-bottom : 0;
  padding-bottom : 0;
}

.sidebar-related .related-posts .related-card:last-child {
    padding-bottom: 0;
}


.single .sidebar-informations {
  margin-top : 25px;
  font-size : 18px;
  padding-bottom : 0;
  margin-bottom : 0;
  border-bottom : 0px;

}

.single .site-sidebar {
  padding-right : 30px;
}

/* ========================= */
/* PAGE LAYOUT */
/* ========================= */
.page #content,
.single #content,
.home #content {
  margin-bottom : 75px;
}



.page-main {
    display: flex;
}

.page-content {
    max-width: 75%;
    margin: 0 auto;
    line-height: 1.4;
}
/* Main content wrapper */
.page-content-wrapper {
    flex: 1;
    width: calc(100vw - 400px);
    position: relative;
}

/* featured image */
.page-thumbnail {
    width: 100%;
    height: 400px;
    background-size: cover;
    background-position: center;
    position: relative;
}

/* Info box over image */
.page-info-box {
    width: 75%;
    background: #fff;
    margin: -80px auto 40px auto;
    padding: 20px;
    position: relative;
    z-index: 2;
    text-align: center;
}

/* Page title inside info box */
.page-info-box .page-title {
    color: #eb212e;
    margin: 0;
}

/* Page title if no thumbnail */
.page-title-no-thumb {
    color: #eb212e;
    margin-bottom: 40px;
    text-align: center;
}

/* Page content */
.page-content {
    margin-top: 20px;
}

.page-title-no-thumb {
  margin-top : 50px;
}



.home .site-main .art-main-wrap:first-of-type {
  margin-top : 10px;
}

/* --------------------------
   Responsive (Tablet & Mobile)
--------------------------- */

h3.mega-menu-h3 {
  font-size : 18px;
  font-family : 'ClashDisplay-Regular', sans-serif;
}

.art-main-wrap:first-of-type .section-title {
    margin-top : 0;
}

.search .post-card,
.author .post-card {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 1370px) {
  .site-sidebar {
    padding-top : 45px;
  }

  .single-info-box,
  .single-content,
  .page-info-box,
  .page-content {
    max-width : 750px;
  }

  .single-title {
    max-width : 680px;
  }

  .main-categories-wrap {
  }

  .search-section {
  }

}

@media screen and (max-width: 1070px) {
  .site-bar {
    font-size : 16px;
  }
}


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

  .mega-menu-informations li a {
    font-size : 14px;
  }

  .featured-title {
    font-size : 1.7rem;
  }

  .art-main-grid.grid-art {
    grid-template-columns: repeat(2, 1fr);
  }

  #post-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-auto-flow: row;
  }

  .mega-menu-section h3 {
    line-height : 1;
  }

  .single-page,
  .page #content {
      flex-direction: column;
  }

  .single-article-container {
      flex: 1 1 100%;
  }
  .page .site-content {
    display: block;
  }

  .page-content-wrapper {
    max-width : 100%;
  }

  .home .site-main,
  .search .site-main {
    width : 100%
  }


  .single-content,
  .page-content {
      padding-top: 20px;
  }

  .single .site-sidebar,
  .page .site-sidebar,
  .home .site-sidebar,
  .search .site-sidebar {
    display: none;
  }
  .event-featured-grid  {
    padding-right : 15px;
  }

  .arch-jour {
    margin-right: 15px;
  }


.art-une-titre {
    font-size: 36px;
  }

  .art-une-auteur, .art-une-date {
    font-size: 11px;
  }

  .art-main-button a {
    width: calc(100% - 30px);
  }

  .post-meta-row {
    font-size : 0.70rem;
  }

  h3.mega-menu-h3 {
    font-size: 16px;
  }

  .mega-menu-section {
    font-size : 14px;
  }


}


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

  .mega-menu-newsletter,
  .mega-menu-informations {
    border-left : 0.5px solid #fff;
  }

  .mega-menu-social,
  .mega-menu-search,
  .mega-menu-newsletter {
    border-right : 0px solid white;
  }

  .mega-menu-social,
  .mega-menu-newsletter {
    border-bottom : 0.5px solid #fff;
  }

  .art-une-extrait {
    /* display: none; */
  }

  .home-catchphrase {
      font-size: 20px;
      max-width : 80vw;
    }

  .home-newsletter {
    display: none;
  }

  img.logo-desktop {
        display: none!important;
    }

  img.logo-mobile {
      display: block!important;
      max-height: 50px; /* adjust if needed */
  }

  .site-bar img.logo-mobile {
    transition: filter 0.3s ease;
  }

  .site-bar:hover img.logo-mobile {
      filter: brightness(0) invert(1);
  }
  .author-posts-grid {
    grid-template-columns: repeat(2, 1fr);
    gap : 1rem;
  }

  /* .home .main-navigation ul li a,
  .home .main-navigation ul li a:hover,
  .home .main-navigation ul li a:visited {
    font-size : 13px;
  } */

  .art-une-card {
    max-width: 60%;
  }

  .art-une-titre {
        font-size: 32px;
    }

  .art-cat {
      font-size: 10px;
  }

  .section-title {
    font-size: 1.7rem;
  }

  .art-main-button a {
    font-size : 13px;
  }

  .post-category,
  .featured-category  {
    font-size : 0.7rem;
  }

  .featured-author-date {
    font-size : 12px;
  }

  .post-title {
    font-size: 1.1rem;
  }

  .site-bar .logo-wrap img {
    width : auto;
    height : 22px;
  }

  .mega-menu-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 0px; /* horizontal and vertical gap */
    padding : 0;
  }
  .mega-menu-container > *:not(:last-child)::after {
      content: "";
      position: absolute;
      top: 0;
      right: 0px; /* half of the gap so border sits in middle */
      height: 100%;
      width: 0px;
      background-color: white;
  }

  .mega-menu-container > *:nth-child(2n)::after {
    /* remove vertical border for the last column in the row */
    background: none;
  }

  /* Horizontal divider */
  .mega-menu-container > *:nth-child(n + 3) {
    position: relative;
  }

  .mega-menu-container > *:nth-child(n + 3)::before {
    content: "";
    position: absolute;
    top: 0px; /* half of vertical gap */
    left: 0;
    width: 100%;
    height: 0px; /* thickness of line */
    background-color: white;
  }
  .mega-menu-section {
    padding-left : 15px;
    padding-right : 15px;
    }

    #post-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .search .post-grid {
      grid-template-columns: repeat(2, 1fr);
      gap : 1rem;
    }

    .post-extract {
      font-size : 12px;
    }

}

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

  .single-content .wp-block-list,
  .page-content .wp-block-list {
    margin-left : 0;
  }

  .page-title-no-thumb {
    margin : 0 auto;
    margin-top : 75px;
    max-width : 75%;
  }
  .art-main-grid, #post-grid {
    gap: 15px;
  }

  #filters-wrapper {
    border-bottom: 0.5px solid #eb212e;
  }

  .home-header-wrap .logo-wrap img {
    width : 50vw;
  }

  .single .page-content li,
  .page .page-content li {
    font-size : 12px;
  }

  .single h4 {
    font-size : 22px;
    line-height : 1.1;
  }

  .single h5 {
    font-size : 18px;
    line-height : 1.1;
  }

  .single p {
    font-size : 15px;
  }
  .single blockquote p, .page blockquote p {
    font-size : 18px!important;
  }

  .single blockquote::before, .page blockquote::before {
    top : -20px;
  }

  .single blockquote, .page blockquote {
    margin-left : 0;
    margin-right : 0;
  }

  .single-category {
    font-size : 10px;
    padding : 3px 6px;
  }

  .single .wp-element-caption {
    font-size : 11px;
  }

  .featured-left {
    margin-right : 0;
  }

  .featured-thumbnail {
        aspect-ratio: 4 / 3;
    }
  .art-main-grid.grid-art {
    grid-template-columns: repeat(2, 1fr);
  }

  .art-main-grid.grid-pod, .art-main-grid.grid-vid {
    grid-template-columns: repeat(2, 1fr);
  }

  #post-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-flow: row;
  }

  .art-une-extrait {
    font-size : 12px;
  }

  .featured-thumbnail {
    aspect-ratio: 4 / 3;
  }

  .event-featured-grid .post-thumbnail {
    aspect-ratio: 4 / 3;
  }

  .featured-post-grid {
    grid-template-columns: 1fr;
  }

  .site-bar .main-navigation ul li a,
  .site-bar .main-navigation ul li a:hover,
  .site-bar .main-navigation ul li a:visited {
    font-size : 14px;


  }

  .home-header-top .main-navigation ul li a,
  .home-header-top .main-navigation ul li a:hover,
  .home-header-top .main-navigation ul li a:visited {
    line-height : 1.1;
    font-size : 18px;
  }

  .home .main-navigation ul li,
  .site-bar .main-navigation ul.menu li  {
    margin-right : 10px;
    margin-left : 10px;
  }

  .home-header-top .main-navigation ul li {
    margin-left : 0;
    margin-right : 0;
  }

  .home-header-top .main-navigation ul {
    display: flex!important;
    flex-direction: column;
    align-items: flex-end;
  }

  .home-header-top {
  }

  .home-header .main-navigation ul li:first-child {
    margin-left : 0;
  }

  .home-header-wrap {
    height : 35vh;
  }

  .article-une,
  .art-une-wrap {
    height : 65vh;
  }

  .art-une-wrap {
    align-items: flex-end;
  }
  .home #content {
    margin-bottom: 75px;
  }

  .single-title {
    font-size : 32px;
  }

  .single-meta {
    margin-bottom : 4px;
  }

  .single-content, .page-content {
    padding-top : 30px;
  }

  .site-footer-copyright img {
    height: 15px;
  }
  #colophon {
    font-size: 11px;
    padding-left : 15px;
    padding-right : 15px;
    padding: 9px;
    height : 35px;

  }
  .site-footer-copyright {
    align-items: center;
  }



}

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

  .art-une-extrait {
    display: none;
  }
  .art-une-card {
    max-width : 100%;
    margin-right : 0;
  }
  .art-une-titre {
    margin-bottom : 15px;
  }
  .mega-menu-newsletter,
  .mega-menu-informations,
  .mega-menu-categs {
    border-left : 0px solid #fff;
    border-right : 0px solid #fff;
  }

  .single-nav-posts {
    display: flex;
    flex-direction: column;
    gap : 40px;
  }
  .single-nav-prev, .single-nav-next {
    width : 100%;
  }
  .single-nav-posts a {
    max-width : 90%;

  }

  .single-nav-next .post-info {
    align-items: flex-end;
  }

  .single blockquote::before, .page blockquote::before {
    font-size: 120px;
    top : -10px;
  }

  .single blockquote, .page blockquote {
    padding-left: 45px;
  }

  .main-category-btn, .filter-btn {
    padding: 5px 10px;
    font-size: 12px;
  }
  .post-title {
        font-size: 0.9rem;
        margin-top : 0;
    }
    .post-meta-row {
        font-size: 0.60rem;
    }

    .post-category, .featured-category {
        font-size: 0.6rem;
    }


    .site-bar .menu-newmenu-container {
      display: none;
    }

    .mega-menu-categs,
    .mega-menu-search {
      display: block;
      border-bottom : 0.5px solid #fff;
    }

    .mega-menu-categs .main-navigation ul {
      display: block;
    }
    .mega-menu-categs .main-navigation ul li {
      margin-left : 0px!important;
      font-size : 14px;
    }

    .mega-menu-categs .main-navigation ul li a{
      font-size : 24px;
    }

    .mega-menu-container {
    grid-template-columns: repeat(1, 1fr);
  }

  .mega-menu-section {
    padding-top: 22px;
    padding-bottom : 22px;
  }

  .mega-menu h3 {
    margin-top : 0;
  }

  .menu-informations-container {
    margin-top : 0;
  }

  #colophon {
    display: none;
  }

}

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

  .archive .post-categories {
    display: none;
  }
  .single .page-content li,
  .page .page-content li {
    font-size : 12px;
  }



  .single h2,
  .page h2 {
      font-size: 24px;
      line-height: 1.1;
    }

  .single h3,
  .page h3 {
      font-size: 20px;
      line-height: 1.1;
    }

  .single h4,
  .page h4 {
      font-size: 18px;
      line-height: 1.1;
    }

  .single h5,
  .page h5 {
      font-size: 16px;
      line-height: 1.1;
    }

    .single h6,
    .page h6 {
        font-size: 15px;
      }

      .single blockquote p, .page blockquote p {
        font-size : 18px!important;
      }

    .single p,
    .page p {
      font-size: 15px;
    }

  .home-header-wrap {
    height : 40vh;
  }

  .article-une,
  .art-une-wrap {
    height : 60vh;
  }

  .home-catchphrase {
    font-size : 16px;
  }

  .art-une-titre {
    font-size: 16px;
  }

  .art-une-auteur, .art-une-date {
        font-size: 9px;
    }

    .art-une-extrait {
        font-size: 9px;
    }

    .art-cat {
        font-size: 9px;
        padding: 3px 6px;
    }

    .home #content {
        margin-bottom:75px;
      }

      section.site-main {
      margin-top: 40px;
      margin-bottom: 40px;
      }

      .post-category {
        font-size: 0.6rem;
        padding: 2px 5px;
        border: 0.5px solid rgba(0, 0, 0, 0.5);
  }

  .featured-category {
      font-size: 0.65rem;
      border: 0.5px solid #eb212e;
    }

    .featured-author-date {
      font-family: 'ClashDisplay-Regular', sans-serif;
      }


      .mega-menu-categs .main-navigation ul li a {
        font-size: 20px;
      }

      .mega-menu h3 {
        font-size: 14px;
      }
      .mega-menu li a {
        font-size: 12px;
      }

      .mega-menu-section {
            padding-top: 15px;
            padding-bottom: 15px;
        }

        .year-container {
          /* display: none; */
        }

      .main-category-btn, .filter-btn {
        padding: 4px 8px!important;
        font-size: 10px!important;
        border: 0.5px solid #eb212e!important;
      }

      .main-categories-wrap {
        border-left: 0.5px solid #eb212e;
      }

    .single-meta {
      font-size: 11px;
    }
    .single-title {
        font-size: 26px;
    }

    .single-category {
      border: 0.5px solid #eb212e;
    }


      .single .wp-element-caption {
          font-size: 9px;
      }

      .home .site-main .art-main-wrap .art-main-grid {
          display: flex;              /* horizontal row */
          overflow-x: auto;           /* allow horizontal scrolling */
          scroll-snap-type: x mandatory; /* snap to slides */
          -webkit-overflow-scrolling: touch; /* smooth on iOS */
          gap: 25px;                  /* spacing between items */
      }

      .home .site-main .art-main-wrap .art-main-grid .post-card {
          flex: 0 0 80%;              /* each item takes 80% of viewport width */
          scroll-snap-align: start;   /* snap start of item */
      }

      /* Optional: hide scrollbar */
      .home .site-main .art-main-wrap .art-main-grid::-webkit-scrollbar {
          display: none;
      }

      .featured-archive {
        font-size : 1rem;
      }

      .featured-left-top .featured-date {
        font-size : 12px;
      }

      .featured-author {
        margin-top : 15px;
      }

}


@media (max-height: 700px) {
  .home-catchphrase {
    font-size : 15px;
  }

  .art-une-extrait {
    display: none;
  }
}

@media (max-height: 500px) {
  .home-catchphrase {
    display: none;
  }

  .home-newsletter {
    display: none;
  }

  .art-une-extrait {
    display: none;
  }
}
